AT32F403 Firmwary Library: Introduction

AT32F403 Firmwary Library 2.0.8
AT32F403 Peripherals Driver Library
Introduction

The AT32F403 Firmware Library is a firmware package which contains the device drivers for all of the peripherals for AT32F403.

This library provides a set of examples for each peripheral and some application such as the IAP and sLib utilities.

The mamual is structured as follows:

  • AT32F403_periph_driver : device drivers
  • AT32F403_periph_examples : examples for AT32F403
  • AT32F403_periph_template : AT32F403 project template for Keil and IAR IDE tools
  • AT32F403_board : AT-START-F403 board setting functions
  • AT32F403_middlewares_i2c_application_library : middlewares for I2C application
  • AT32F403_middlewares_usbd_class : middlewares for different USB device class
  • AT32F403_middlewares_usbd_drivers : middlewares for USB device core driver
  • UTILITIES_examples : some applications such as FreeRTOS, sLib and IAP.
Generated by doxygen 1.9.2


AT32F403 Firmwary Library: Modules

Modules
Here is a list of all modules:
[detail level 1234]
► CMSIS |
► AT32F403 |
Library_configuration_section |
Configuration_section_for_CMSIS |
Exported_types |
Exported_macro |
Peripheral_memory_map |
► AT32F403_system |
AT32F403_system_clock_stable_definition |
AT32F403_system_exported_variables |
AT32F403_system_exported_functions |
AT32F403_system_private_defines |
AT32F403_system_private_variables |
AT32F403_system_private_functions |
► AT32F403_periph_driver |
► ADC | ADC driver modules
ADC_interrupts_definition | Adc interrupt
ADC_flags_definition | Adc flag
ADC_exported_types |
ADC_exported_functions |
ADC_private_functions |
► BPR | BPR driver modules
BPR_flags_definition | Bpr flag
BPR_exported_types |
BPR_exported_functions |
BPR_private_functions |
► CAN | CAN driver modules
CAN_timeout_count |
CAN_flags_definition | Can flag
CAN_interrupts_definition | Can interrupt
CAN_exported_types |
CAN_exported_functions |
CAN_private_functions |
► CRC | CRC driver modules
CRC_exported_types |
CRC_exported_functions |
CRC_private_functions |
► CRM | CRM driver modules
CRM_flags_definition | Crm flag
CRM_interrupts_definition | Crm interrupt
CRM_exported_types |
CRM_exported_functions |
CRM_private_functions |
► DAC | DAC driver modules
DAC_exported_types |
DAC_exported_functions |
DAC_private_functions |
► DEBUG | DEBUG driver modules
DEBUG_mode_definition |
DEBUG_exported_types |
DEBUG_exported_functions |
DEBUG_private_functions |
► DMA | DMA driver modules
DMA_interrupts_definition | Dma interrupt
DMA_flags_definition | Dma flag
DMA_exported_types |
DMA_exported_functions |
DMA_private_functions |
► EXINT | EXINT driver modules
EXINT_lines |
EXINT_exported_types |
EXINT_exported_functions |
EXINT_private_functions |
► FLASH | FLASH driver modules
FLASH_unlock_keys | Flash unlock keys
FLASH_bank_address | Flash bank address
FLASH_flags | Flash flag
FLASH_interrupts | Flash interrupts
FLASH_user_system_data | Flash user system data
FLASH_timeout_definition | Flash timeout definition
FLASH_exported_types |
FLASH_exported_functions |
FLASH_private_functions |
► GPIO | GPIO driver modules
GPIO_pins_number_definition |
IOMUX_map_definition | Iomux map definitions
IOMUX_map2_definition | Iomux map2 definitions
GPIO_exported_types |
GPIO_exported_functions |
GPIO_private_functions |
► I2C | I2C driver modules
I2C_sts1_flags_definition | I2c sts1 flag
I2C_sts2_flags_definition | I2c sts2 flag
I2C_interrupts_definition | I2c interrupt
I2C_exported_types |
I2C_exported_functions |
I2C_private_functions |
► MISC | MISC driver modules
MISC_vector_table_base_address |
MISC_exported_types |
MISC_exported_functions |
MISC_private_functions |
► PWC | PWC driver modules
PWC_flags_definition | Pwc flag
PWC_exported_types |
PWC_exported_functions |
PWC_private_functions |
► RTC | RTC driver modules
RTC_interrupts_definition | Rtc interrupt
RTC_flags_definition | Rtc flag
RTC_exported_types |
RTC_exported_functions |
RTC_private_functions |
► SDIO | SDIO driver modules
SDIO_interrupts_definition | Sdio interrupt
SDIO_flags_definition | Sdio flag
SDIO_exported_types |
SDIO_exported_functions |
SDIO_private_functions |
► SPI | SPI driver modules
SPI_I2S_flags_definition | Spi i2s flag
SPI_I2S_interrupts_definition | Spi i2s interrupt
SPI_exported_types |
SPI_exported_functions |
SPI_private_functions |
► TMR | TMR driver modules
TMR_flags_definition | Tmr flag
TMR_interrupt_select_type_definition | Tmr interrupt select type
TMR_exported_types |
TMR_exported_functions |
TMR_private_functions |
► USART | USART driver modules
USART_flags_definition | Usart flag
USART_interrupts_definition | Usart interrupt
USART_exported_types |
USART_exported_functions |
USART_private_functions |
► USB | USB driver modules
USB_interrupts_definition | Usb interrupt mask
USB_interrupt_flags_definition | Usb interrupt flag
USB_endpoint_register_bit_definition | Usb endpoint register bit define
USB_endpoint_tx_and_rx_status_definition | Usb endpoint tx and rx status
USB_device_endpoint_register_type_definition | Usb device endpoint register type define
USB_buffer_table_default_offset_address_definition | Usb buffer table default offset address
USB_packet_buffer_start_address_definition | Usb packet buffer start address
USB_exported_enum_types |
USB_macro_definition |
USB_exported_types |
USB_exported_functions |
USB_private_functions |
► WDT | WDT driver modules
WDT_flags_definition | Wdt flag
WDT_exported_types |
WDT_exported_functions |
WDT_private_functions |
► WWDT | WWDT driver modules
WWDT_enable_bit_definition | Wwdt enable bit
WWDT_exported_types |
WWDT_exported_functions |
WWDT_private_functions |
► XMC | XMC driver modules
XMC_exported_types |
XMC_exported_functions |
XMC_private_functions |
► AT32F403_middlewares_i2c_application_library |
I2C_library_event_check_flag |
I2C_library_memory_address_width_mode |
I2C_library_transmission_mode |
I2C_library_status_code |
I2C_library_handler |
I2C_library_exported_functions |
► AT32F403_middlewares_usbd_class |
► USB_audio_class | Usb device class audio demo
USB_audio_class_private_functions |
USB_audio_class_definition |
USB_device_audio_config_definition |
► USB_audio_desc | Usb device audio descriptor
USB_audio_desc_private_functions |
USB_audio_desc_definition |
► USB_audio_hid_class | Usb device class audio hid demo
USB_device_audio_hid_config_definition |
USB_audio_hid_class_private_functions |
USB_audio_hid_class_definition |
► USB_audio_hid_desc | Usb device audio hid descriptor
USB_audio_hid_desc_private_functions |
USB_audio_hid_desc_definition |
► USB_cdc_class | Usb device class cdc demo
USB_cdc_class_private_functions |
USB_cdc_class_definition |
► USB_cdc_class_exported_types |
USB_msc_bot_scsi_definition |
USB_cdc_msc_class_exported_functions |
USB_cdc_class_exported_functions |
► USB_cdc_desc | Usb device cdc descriptor
USB_cdc_desc_private_functions |
USB_cdc_desc_definition |
► USB_cdc_keyboard_class | Usb device class composite cdc and keyboard
USB_cdc_keyboard_class_private_functions |
USB_cdc_keyboard_class_definition |
► USB_cdc_class_exported_types |
USB_msc_bot_scsi_definition |
USB_cdc_msc_class_exported_functions |
USB_cdc_keyboar_class_exported_functions |
► USB_cdc_keyboard_desc | Usb device cdc keyboard descriptor
USB_cdc_keyboard_desc_private_functions |
USB_cdc_keyboard_desc_definition |
► USB_cdc_msc_class | Usb device class cdc msc demo
USB_cdc_msc_class_private_functions |
USB_cdc_class_definition |
► USB_cdc_class_exported_types |
USB_msc_bot_scsi_definition |
USB_cdc_msc_class_exported_functions |
► USB_cdc_msc_desc | Usb device cdc msc descriptor
USB_cdc_msc_desc_private_functions |
USB_cdc_desc_definition |
► USB_msc_bot_scsi | Usb device class mass storage demo
USB_msc_bot_functions |
USB_msc_bot_scsi_definition |
► USB_custom_hid_class | Usb device custom hid demo
USB_custom_hid_class_private_functions |
USB_custom_hid_class_endpoint_definition |
USB_custom_hid_class_request_code_definition |
USB_custom_hid_class_exported_functions |
► USB_custom_hid_desc | Usb device custom_hid descriptor
USB_custom_hid_desc_private_functions |
USB_custom_hid_desc_definition |
► USB_hid_iap_class | Usb device class hid iap demo
USB_hid_iap_class_private_functions |
USB_hid_iap_class_definition |
► USB_hid_iap_desc | Usb device hid_iap descriptor
USB_hid_iap_desc_private_functions |
USB_hid_iap_desc_definition |
► USB_keyboard_class | Usb device keyboard demo
USB_keyboard_class_private_functions |
USB_keyboard_class_endpoint_definition |
USB_hid_class_exported_functions |
► USB_keyboard_desc | Usb device keyboard descriptor
USB_keyboard_desc_private_functions |
USB_keyboard_desc_definition |
► USB_mouse_class | Usb device mouse demo
USB_mouse_class_private_functions |
USB_mouse_class_endpoint_definition |
USB_mouse_class_request_code_definition |
USB_hid_class_exported_functions |
► USB_mouse_desc | Usb device mouse descriptor
USB_mouse_desc_private_functions |
USB_mouse_desc_definition |
► USB_msc_class | Usb device class msc demo
USB_msc_class_private_functions |
USB_msc_class_definition |
► USB_msc_desc | Usb device msc descriptor
USB_msc_desc_private_functions |
USB_msc_desc_definition |
► USB_printer_class | Usb device class printer demo
USB_printer_class_private_functions |
USB_printer_class_definition |
► USB_printer_desc | Usb device printer descriptor
USB_printer_desc_private_functions |
USB_printer_desc_definition |
► AT32F403_middlewares_usbd_drivers |
► USBD_drivers_core | Usb device drivers core
USBD_core_exported_types |
USBD_core_exported_functions |
USBD_core_private_functions |
► USBD_drivers_interrupt | Usb device interrupt
USBD_int_exported_functions |
USBD_int_private_functions |
► USBD_drivers_standard_request | Usb device standard_request
USBD_sdr_exported_functions |
USBD_sdr_private_functions |
► USB_standard |
USB_standard_define |
USB_standard_exported_types |
► AT32F403_board |
► BOARD | Onboard periph driver
BOARD_pins_definition |
BOARD_exported_functions |
► AT32F403_periph_examples |
ADC_combine_mode_ordinary_simult |
ADC_current_vref_value_check |
ADC_exint_trigger_partitioned |
ADC_internal_temperature_sensor |
ADC_repeat_conversion_loop_transfer |
ADC_software_trigger_repeat |
ADC_tmr_trigger_automatic_preempted |
ADC_triple_adc_synchro_trigger |
ADC_voltage_monitoring |
BPR_data |
BPR_tamper |
CAN_communication_mode |
CAN_filter |
CAN_loopback_mode |
CORTEX_m4_bit_band |
CORTEX_m4_cmsis_dsp |
► CORTEX_m4_fpu |
JULIA_fpu_functions |
CORTEX_m4_systick_interrupt |
CRC_calculation |
CRM_clock_failure_detection |
CRM_sysclk_switch |
DAC_double_mode_dma_sinewave |
DAC_double_mode_dma_squarewave |
DAC_one_dac_dma_escalator |
DAC_one_dac_noisewave |
DAC_two_dac_trianglewave |
DEBUG_tmr |
DMA_data_to_gpio_flexible |
DMA_flash_to_sram |
EXINT_config |
EXINT_software_trigger |
FLASH_fap_enable |
► FLASH_write_read |
FLASH_write_read_functions |
► FLASH_operate_spim |
FLASH_operate_spim_functions |
FLASH_run_in_spim |
GPIO_io_toggle |
GPIO_led_toggle |
GPIO_swjtag_remap |
I2C_communication_dma |
I2C_communication_int |
I2C_communication_poll |
I2C_eeprom |
I2S_halfduplex_dma |
I2S_halfduplex_interrupt |
I2S_spii2s_switch_halfduplex_polling |
PWC_deepsleep_rtc |
PWC_power_voltage_monitor |
PWC_sleep_tmr2 |
PWC_sleep_usart1 |
PWC_standby_rtc |
PWC_standby_wakeup_pin |
► RTC_calendar |
RTC_calendar_type |
RTC_calendar_exported_functions |
RTC_lick_calibration |
► SDIO_sd_mmc_card |
SDIO_sd_mmc_card_instance_definition |
SDIO_sd_mmc_card_exported_types |
SDIO_sd_mmc_card_command_index_definition |
SDIO_sd_mmc_card_paremeters_definition |
SDIO_sd_mmc_card_response_definition |
SDIO_sd_mmc_card_command_class_definition |
SDIO_sd_mmc_card_cmd8_definition |
SDIO_sd_mmc_card_mmc_extend_definition |
SDIO_sd_mmc_card_interrupt_flags_definition |
SDIO_sd_mmc_card_exported_functions |
► SDIO_sdio_fatfs |
SDIO_sdio_fatfs_instance_definition |
SDIO_sdio_fatfs_exported_types |
SDIO_sdio_fatfs_command_index_definition |
SDIO_sdio_fatfs_paremeters_definition |
SDIO_sdio_fatfs_response_definition |
SDIO_sdio_fatfs_command_class_definition |
SDIO_sdio_fatfs_cmd8_definition |
SDIO_sdio_fatfs_mmc_extend_definition |
SDIO_sdio_fatfs_interrupt_flags_definition |
SDIO_sdio_fatfs_exported_functions |
SPI_crc_transfer_polling |
SPI_fullduplex_polling |
SPI_halfduplex_interrupt |
SPI_halfduplex_transceiver_switch |
SPI_only_receive_mode_polling |
SPI_use_jtagpin_hardwarecs_dma |
► SPI_w25q_flash |
SPI_flash_cs_pin_definition |
SPI_flash_id_definition |
SPI_flash_operation_definition |
SPI_flash_exported_functions |
TMR_6_steps |
TMR_7_pwm_output |
TMR_cascade_synchro |
TMR_complementary_signals |
TMR_dma |
TMR_dma_burst |
TMR_encoder_tmr2 |
TMR_external_clock |
TMR_hall_xor_tmr2 |
TMR_hang_mode |
TMR_input_capture |
TMR_oc_high |
TMR_oc_low |
TMR_oc_toggle_tmr3 |
TMR_oc_toggle_tmr9 |
TMR_one_cycle |
TMR_parallel_synchro |
TMR_pwm_input |
TMR_pwm_input_dma |
TMR_pwm_output_simulate |
TMR_pwm_output_tmr10 |
TMR_pwm_output_tmr3 |
TMR_timer_base |
TMR_tmr1_synchro |
TMR_tmr2_32bit |
USART_half_duplex |
USART_hw_flow_control |
USART_idle_detection |
USART_interrupt |
USART_irda |
USART_polling |
USART_printf |
USART_receiver_mute |
F403_USART_rs485 |
USART_smartcard |
USART_synchronous |
USART_transfer_by_dma_interrupt |
USART_transfer_by_dma_polling |
► USB_device_audio |
USB_device_audio_codec_reg_definition |
USB_device_audio_codec_pin_definition |
USB_device_audio_codec_exported_functions |
► _USB_device_audio_hid |
USB_device_audio_hid_codec_reg_definition |
USB_device_audio_hid_codec_pin_definition |
USB_device_audio_hid_codec_exported_functions |
USB_device_composite_vcp_keyboard |
_USB_device_vcp_msc |
USB_device_composite_vcp_msc |
USB_device_custom_hid |
USB_device_keyboard |
USB_device_mouse |
USB_device_msc |
USB_device_printer |
USB_device_vcp_loopback |
► USB_device_virtual_msc_iap |
USB_device_virtual_msc_iap_definition |
WDT_reset |
WDT_standby |
WWDT_reset |
► XMC_lcd_8bit |
XMC_lcd_8bit_address_of_data_and_command |
XMC_lcd_8bit_reset_line |
XMC_lcd_8bit_exported_functions |
► XMC_lcd_touch_16bit |
TOUCH_device_type |
TOUCH_exported_functions |
XMC_lcd_touch_16bit_device_type |
XMC_lcd_touch_16bit_address_of_data_and_command |
XMC_lcd_touch_16bit_reset_line |
XMC_lcd_touch_16bit_exported_functions |
► XMC_nand_ecc |
NAND_id_define |
NAND_address_define |
NAND_area_define |
XMC_nand_memory_command |
XMC_nand_status |
XMC_nand_parameters |
XMC_nand_address_computation |
XMC_nand_ecc_functions |
► XMC_nand |
NAND_id_define |
NAND_address_define |
NAND_area_define |
XMC_nand_memory_command |
XMC_nand_status |
XMC_nand_parameters |
XMC_nand_address_computation |
XMC_nand_functions |
► _XMC_nor |
XMC_nor_functions |
XMC_nor |
► XMC_CF_CARD |
PCCARD Private Constants |
► PCCARD Exported Functions |
Initialization and de-initialization functions | Initialization and Configuration functions
Input Output and memory functions | Input Output and memory control functions
Peripheral State functions | Peripheral State functions
PCCARD Exported Constant |
PCCARD Exported Types |
PCCARD Exported Macros |
_XMC_pc_card |
► XMC_psram |
XMC_psram_functions |
► AT32F403_periph_template |
Library_configuration |
System_clock_configuration |
LED_toggle |
► UTILITIES_examples |
FreeRTOS_demo |
► GEN_random_number_demo |
RTC_asseed_definition |
GEN_random_number_demo_exported_functions |
► USART_iap_app_led3_toggle |
App_led3_definition |
App_led3_exported_functions |
► USART_iap_app_led4_toggle |
App_led4_definition |
App_led4_exported_functions |
► USART_iap_bootloader |
Bootloader_definition |
Bootloader_exported_functions |
Bootloader_exported_types |
► USB_iap_app_led3_toggle |
App_led3_toggle_definition |
App_led3_toggle_exported_functions |
► USB_iap_app_led4_toggle |
App_led4_toggle_definition |
App_led4_toggle_exported_functions |
► USB_iap_bootloader |
Bootloader_definition |
Bootloader_exported_functions |


AT32F403 Firmwary Library: CMSIS

Modules
CMSIS

Modules

AT32F403
AT32F403_system

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: AT32F403

Modules
AT32F403
CMSIS

Modules

Library_configuration_section
Configuration_section_for_CMSIS
Exported_types
Exported_macro
Peripheral_memory_map

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: Library_configuration_section

Macros
Library_configuration_section
CMSIS » AT32F403

Macros

#define | __AT32F403_LIBRARY_VERSION_MAJOR (0x02)
at32f403 standard peripheral library version number More...
#define | __AT32F403_LIBRARY_VERSION_MIDDLE (0x00)
#define | __AT32F403_LIBRARY_VERSION_MINOR (0x08)
#define | __AT32F403_LIBRARY_VERSION_RC (0x00)
#define | __AT32F403_LIBRARY_VERSION

Detailed Description

Macro Definition Documentation

◆ __AT32F403_LIBRARY_VERSION

#define __AT32F403_LIBRARY_VERSION
Value:
((__AT32F403_LIBRARY_VERSION_MAJOR << 24) | \
(__AT32F403_LIBRARY_VERSION_MIDDLE << 16) | \
(__AT32F403_LIBRARY_VERSION_MINOR << 8) | \
(__AT32F403_LIBRARY_VERSION_RC))
__AT32F403_LIBRARY_VERSION_MINOR
#define __AT32F403_LIBRARY_VERSION_MINOR
Definition: at32f403.h:135
__AT32F403_LIBRARY_VERSION_MAJOR
#define __AT32F403_LIBRARY_VERSION_MAJOR
at32f403 standard peripheral library version number
Definition: at32f403.h:133
__AT32F403_LIBRARY_VERSION_RC
#define __AT32F403_LIBRARY_VERSION_RC
Definition: at32f403.h:136
__AT32F403_LIBRARY_VERSION_MIDDLE
#define __AT32F403_LIBRARY_VERSION_MIDDLE
Definition: at32f403.h:134

Definition at line 137 of file at32f403.h.

◆ __AT32F403_LIBRARY_VERSION_MAJOR

#define __AT32F403_LIBRARY_VERSION_MAJOR (0x02)

at32f403 standard peripheral library version number

tip: to avoid modifying this file each time you need to switch between these devices, you can define the device in your toolchain compiler preprocessor. define with package define with memory density [31:24] major version

Definition at line 133 of file at32f403.h.

◆ __AT32F403_LIBRARY_VERSION_MIDDLE

#define __AT32F403_LIBRARY_VERSION_MIDDLE (0x00)

[23:16] middle version

Definition at line 134 of file at32f403.h.

◆ __AT32F403_LIBRARY_VERSION_MINOR

#define __AT32F403_LIBRARY_VERSION_MINOR (0x08)

[15:8] minor version

Definition at line 135 of file at32f403.h.

◆ __AT32F403_LIBRARY_VERSION_RC

#define __AT32F403_LIBRARY_VERSION_RC (0x00)

[7:0] release candidate

Definition at line 136 of file at32f403.h.


AT32F403 Firmwary Library: Configuration_section_for_CMSIS

Macros | Typedefs | Enumerations
Configuration_section_for_CMSIS
CMSIS » AT32F403

Macros

#define | __CM4_REV 0x0001U
configuration of the cortex-m4 processor and core peripherals More...
#define | __MPU_PRESENT 1
#define | __NVIC_PRIO_BITS 4
#define | __Vendor_SysTickConfig 0
#define | __FPU_PRESENT 1U

Typedefs

typedef enum IRQn IRQn_Type
at32f403 interrupt number definition, according to the selected device in Library_configuration_section More...

Enumerations

enum IRQn {
Reset_IRQn = -15 , NonMaskableInt_IRQn = -14 , HardFault_IRQn = -13 , MemoryManagement_IRQn = -12 ,
BusFault_IRQn = -11 , UsageFault_IRQn = -10 , SVCall_IRQn = -5 , DebugMonitor_IRQn = -4 ,
PendSV_IRQn = -2 , SysTick_IRQn = -1 , WWDT_IRQn = 0 , PVM_IRQn = 1 ,
TAMPER_IRQn = 2 , RTC_IRQn = 3 , FLASH_IRQn = 4 , CRM_IRQn = 5 ,
EXINT0_IRQn = 6 , EXINT1_IRQn = 7 , EXINT2_IRQn = 8 , EXINT3_IRQn = 9 ,
EXINT4_IRQn = 10 , DMA1_Channel1_IRQn = 11 , DMA1_Channel2_IRQn = 12 , DMA1_Channel3_IRQn = 13 ,
DMA1_Channel4_IRQn = 14 , DMA1_Channel5_IRQn = 15 , DMA1_Channel6_IRQn = 16 , DMA1_Channel7_IRQn = 17 ,
ADC1_2_IRQn = 18 , USBFS_H_CAN1_TX_IRQn = 19 , USBFS_L_CAN1_RX0_IRQn = 20 , CAN1_RX1_IRQn = 21 ,
CAN1_SE_IRQn = 22 , EXINT9_5_IRQn = 23 , TMR1_BRK_TMR9_IRQn = 24 , TMR1_OVF_TMR10_IRQn = 25 ,
TMR1_TRG_HALL_TMR11_IRQn = 26 , TMR1_CH_IRQn = 27 , TMR2_GLOBAL_IRQn = 28 , TMR3_GLOBAL_IRQn = 29 ,
TMR4_GLOBAL_IRQn = 30 , I2C1_EVT_IRQn = 31 , I2C1_ERR_IRQn = 32 , I2C2_EVT_IRQn = 33 ,
I2C2_ERR_IRQn = 34 , SPI1_IRQn = 35 , SPI2_IRQn = 36 , USART1_IRQn = 37 ,
USART2_IRQn = 38 , USART3_IRQn = 39 , EXINT15_10_IRQn = 40 , RTCAlarm_IRQn = 41 ,
USBFSWakeUp_IRQn = 42 , TMR8_BRK_TMR12_IRQn = 43 , TMR8_OVF_TMR13_IRQn = 44 , TMR8_TRG_HALL_TMR14_IRQn = 45 ,
TMR8_CH_IRQn = 46 , ADC3_IRQn = 47 , XMC_IRQn = 48 , SDIO1_IRQn = 49 ,
TMR5_GLOBAL_IRQn = 50 , SPI3_IRQn = 51 , UART4_IRQn = 52 , UART5_IRQn = 53 ,
TMR6_GLOBAL_IRQn = 54 , TMR7_GLOBAL_IRQn = 55 , DMA2_Channel1_IRQn = 56 , DMA2_Channel2_IRQn = 57 ,
DMA2_Channel3_IRQn = 58 , DMA2_Channel4_5_IRQn = 59 , SDIO2_IRQn = 60 , I2C3_EVT_IRQn = 61 ,
I2C3_ERR_IRQn = 62 , SPI4_IRQn = 63 , TMR15_BRK_IRQn = 68 , TMR15_OVF_IRQn = 69 ,
TMR15_TRG_HALL_IRQn = 70 , TMR15_IRQn = 71
}
at32f403 interrupt number definition, according to the selected device in Library_configuration_section More...

Detailed Description

Macro Definition Documentation

◆ __CM4_REV

#define __CM4_REV 0x0001U

configuration of the cortex-m4 processor and core peripherals

core revision r0p1

Definition at line 153 of file at32f403.h.

◆ __FPU_PRESENT

#define __FPU_PRESENT 1U

fpu present

Definition at line 157 of file at32f403.h.

◆ __MPU_PRESENT

#define __MPU_PRESENT 1

mpu present

Definition at line 154 of file at32f403.h.

◆ __NVIC_PRIO_BITS

#define __NVIC_PRIO_BITS 4

at32 uses 4 bits for the priority levels

Definition at line 155 of file at32f403.h.

◆ __Vendor_SysTickConfig

#define __Vendor_SysTickConfig 0

set to 1 if different systick config is used

Definition at line 156 of file at32f403.h.

Typedef Documentation

◆ IRQn_Type

typedef enum IRQn IRQn_Type

at32f403 interrupt number definition, according to the selected device in Library_configuration_section

Enumeration Type Documentation

◆ IRQn

enum IRQn

at32f403 interrupt number definition, according to the selected device in Library_configuration_section

Enumerator
Reset_IRQn | 1 reset vector, invoked on power up and warm reset
NonMaskableInt_IRQn | 2 non maskable interrupt
HardFault_IRQn | 3 hard fault, all classes of fault
MemoryManagement_IRQn | 4 cortex-m4 memory management interrupt
BusFault_IRQn | 5 cortex-m4 bus fault interrupt
UsageFault_IRQn | 6 cortex-m4 usage fault interrupt
SVCall_IRQn | 11 cortex-m4 sv call interrupt
DebugMonitor_IRQn | 12 cortex-m4 debug monitor interrupt
PendSV_IRQn | 14 cortex-m4 pend sv interrupt
SysTick_IRQn | 15 cortex-m4 system tick interrupt
WWDT_IRQn | window watchdog timer interrupt
PVM_IRQn | pvm through exint line detection interrupt
TAMPER_IRQn | tamper interrupt
RTC_IRQn | rtc global interrupt
FLASH_IRQn | flash global interrupt
CRM_IRQn | crm global interrupt
EXINT0_IRQn | external line0 interrupt
EXINT1_IRQn | external line1 interrupt
EXINT2_IRQn | external line2 interrupt
EXINT3_IRQn | external line3 interrupt
EXINT4_IRQn | external line4 interrupt
DMA1_Channel1_IRQn | dma1 channel 1 global interrupt
DMA1_Channel2_IRQn | dma1 channel 2 global interrupt
DMA1_Channel3_IRQn | dma1 channel 3 global interrupt
DMA1_Channel4_IRQn | dma1 channel 4 global interrupt
DMA1_Channel5_IRQn | dma1 channel 5 global interrupt
DMA1_Channel6_IRQn | dma1 channel 6 global interrupt
DMA1_Channel7_IRQn | dma1 channel 7 global interrupt
ADC1_2_IRQn | adc1 and adc2 global interrupt
USBFS_H_CAN1_TX_IRQn | usb device high priority or can1 tx interrupts
USBFS_L_CAN1_RX0_IRQn | usb device low priority or can1 rx0 interrupts
CAN1_RX1_IRQn | can1 rx1 interrupt
CAN1_SE_IRQn | can1 se interrupt
EXINT9_5_IRQn | external line[9:5] interrupts
TMR1_BRK_TMR9_IRQn | tmr1 brake interrupt
TMR1_OVF_TMR10_IRQn | tmr1 overflow interrupt
TMR1_TRG_HALL_TMR11_IRQn | tmr1 trigger and hall interrupt
TMR1_CH_IRQn | tmr1 channel interrupt
TMR2_GLOBAL_IRQn | tmr2 global interrupt
TMR3_GLOBAL_IRQn | tmr3 global interrupt
TMR4_GLOBAL_IRQn | tmr4 global interrupt
I2C1_EVT_IRQn | i2c1 event interrupt
I2C1_ERR_IRQn | i2c1 error interrupt
I2C2_EVT_IRQn | i2c2 event interrupt
I2C2_ERR_IRQn | i2c2 error interrupt
SPI1_IRQn | spi1 global interrupt
SPI2_IRQn | spi2 global interrupt
USART1_IRQn | usart1 global interrupt
USART2_IRQn | usart2 global interrupt
USART3_IRQn | usart3 global interrupt
EXINT15_10_IRQn | external line[15:10] interrupts
RTCAlarm_IRQn | rtc alarm through exint line interrupt
USBFSWakeUp_IRQn | usb device wakeup from suspend through exint line interrupt
TMR8_BRK_TMR12_IRQn | tmr8 brake interrupt
TMR8_OVF_TMR13_IRQn | tmr8 overflow interrupt
TMR8_TRG_HALL_TMR14_IRQn | tmr8 trigger and hall interrupt
TMR8_CH_IRQn | tmr8 channel interrupt
ADC3_IRQn | adc3 global interrupt
XMC_IRQn | xmc global interrupt
SDIO1_IRQn | sdio1 global interrupt
TMR5_GLOBAL_IRQn | tmr5 global interrupt
SPI3_IRQn | spi3 global interrupt
UART4_IRQn | uart4 global interrupt
UART5_IRQn | uart5 global interrupt
TMR6_GLOBAL_IRQn | tmr6 global interrupt
TMR7_GLOBAL_IRQn | tmr7 global interrupt
DMA2_Channel1_IRQn | dma2 channel 1 global interrupt
DMA2_Channel2_IRQn | dma2 channel 2 global interrupt
DMA2_Channel3_IRQn | dma2 channel 3 global interrupt
DMA2_Channel4_5_IRQn | dma2 channel 4 and channel 5 global interrupt
SDIO2_IRQn | sdio2 global interrupt
I2C3_EVT_IRQn | i2c3 event interrupt
I2C3_ERR_IRQn | i2c3 error interrupt
SPI4_IRQn | spi4 global interrupt
TMR15_BRK_IRQn | tmr15 brake interrupt
TMR15_OVF_IRQn | tmr15 overflow interrupt
TMR15_TRG_HALL_IRQn | tmr15 trigger and hall interrupt
TMR15_IRQn | tmr15 channel interrupt

Definition at line 163 of file at32f403.h.


AT32F403 Firmwary Library: Exported_types

Typedefs | Enumerations
Exported_types
CMSIS » AT32F403

Typedefs

typedef int32_t | INT32
typedef int16_t | INT16
typedef int8_t | INT8
typedef uint32_t | UINT32
typedef uint16_t | UINT16
typedef uint8_t | UINT8
typedef int32_t | s32
typedef int16_t | s16
typedef int8_t | s8
typedef const int32_t | sc32
typedef const int16_t | sc16
typedef const int8_t | sc8
typedef __IO int32_t | vs32
typedef __IO int16_t | vs16
typedef __IO int8_t | vs8
typedef __I int32_t | vsc32
typedef __I int16_t | vsc16
typedef __I int8_t | vsc8
typedef uint32_t | u32
typedef uint16_t | u16
typedef uint8_t | u8
typedef const uint32_t | uc32
typedef const uint16_t | uc16
typedef const uint8_t | uc8
typedef __IO uint32_t | vu32
typedef __IO uint16_t | vu16
typedef __IO uint8_t | vu8
typedef __I uint32_t | vuc32
typedef __I uint16_t | vuc16
typedef __I uint8_t | vuc8

Enumerations

enum | flag_status { RESET = 0 , SET = !RESET }
flag status More...
enum | confirm_state { FALSE = 0 , TRUE = !FALSE }
confirm state More...
enum | error_status { ERROR = 0 , SUCCESS = !ERROR }
error status More...

Detailed Description

Typedef Documentation

◆ INT16

typedef int16_t INT16

Definition at line 263 of file at32f403.h.

◆ INT32

typedef int32_t INT32

Definition at line 262 of file at32f403.h.

◆ INT8

typedef int8_t INT8

Definition at line 264 of file at32f403.h.

◆ s16

typedef int16_t s16

Definition at line 270 of file at32f403.h.

◆ s32

typedef int32_t s32

Definition at line 269 of file at32f403.h.

◆ s8

typedef int8_t s8

Definition at line 271 of file at32f403.h.

◆ sc16

typedef const int16_t sc16

read only

Definition at line 274 of file at32f403.h.

◆ sc32

typedef const int32_t sc32

read only

Definition at line 273 of file at32f403.h.

◆ sc8

typedef const int8_t sc8

read only

Definition at line 275 of file at32f403.h.

◆ u16

typedef uint16_t u16

Definition at line 286 of file at32f403.h.

◆ u32

typedef uint32_t u32

Definition at line 285 of file at32f403.h.

◆ u8

typedef uint8_t u8

Definition at line 287 of file at32f403.h.

◆ uc16

typedef const uint16_t uc16

read only

Definition at line 290 of file at32f403.h.

◆ uc32

typedef const uint32_t uc32

read only

Definition at line 289 of file at32f403.h.

◆ uc8

typedef const uint8_t uc8

read only

Definition at line 291 of file at32f403.h.

◆ UINT16

typedef uint16_t UINT16

Definition at line 266 of file at32f403.h.

◆ UINT32

typedef uint32_t UINT32

Definition at line 265 of file at32f403.h.

◆ UINT8

typedef uint8_t UINT8

Definition at line 267 of file at32f403.h.

◆ vs16

typedef __IO int16_t vs16

Definition at line 278 of file at32f403.h.

◆ vs32

typedef __IO int32_t vs32

Definition at line 277 of file at32f403.h.

◆ vs8

typedef __IO int8_t vs8

Definition at line 279 of file at32f403.h.

◆ vsc16

typedef __I int16_t vsc16

read only

Definition at line 282 of file at32f403.h.

◆ vsc32

typedef __I int32_t vsc32

read only

Definition at line 281 of file at32f403.h.

◆ vsc8

typedef __I int8_t vsc8

read only

Definition at line 283 of file at32f403.h.

◆ vu16

typedef __IO uint16_t vu16

Definition at line 294 of file at32f403.h.

◆ vu32

typedef __IO uint32_t vu32

Definition at line 293 of file at32f403.h.

◆ vu8

typedef __IO uint8_t vu8

Definition at line 295 of file at32f403.h.

◆ vuc16

typedef __I uint16_t vuc16

read only

Definition at line 298 of file at32f403.h.

◆ vuc32

typedef __I uint32_t vuc32

read only

Definition at line 297 of file at32f403.h.

◆ vuc8

typedef __I uint8_t vuc8

read only

Definition at line 299 of file at32f403.h.

Enumeration Type Documentation

◆ confirm_state

enum confirm_state

confirm state

Enumerator
FALSE
TRUE

Definition at line 309 of file at32f403.h.

◆ error_status

enum error_status

error status

Enumerator
ERROR
SUCCESS

Definition at line 314 of file at32f403.h.

◆ flag_status

enum flag_status

flag status

Enumerator
RESET
SET

Definition at line 304 of file at32f403.h.


AT32F403 Firmwary Library: Exported_macro

Macros
Exported_macro
CMSIS » AT32F403

Macros

#define | REG8(addr) *(volatile uint8_t *)(addr)
#define | REG16(addr) *(volatile uint16_t *)(addr)
#define | REG32(addr) *(volatile uint32_t *)(addr)
#define | MAKE_VALUE(reg_offset, bit_num) (uint32_t)(((reg_offset) << 16) | (bit_num & 0x1F))
#define | PERIPH_REG(periph_base, value) REG32((periph_base + (value >> 16)))
#define | PERIPH_REG_BIT(value) (0x1U << (value & 0x1F))

Detailed Description

Macro Definition Documentation

◆ MAKE_VALUE

#define MAKE_VALUE | ( | reg_offset,
 |  | bit_num
 | ) | (uint32_t)(((reg_offset) << 16) | (bit_num & 0x1F))

Definition at line 328 of file at32f403.h.

◆ PERIPH_REG

#define PERIPH_REG | ( | periph_base,
 |  | value
 | ) | REG32((periph_base + (value >> 16)))

Definition at line 330 of file at32f403.h.

◆ PERIPH_REG_BIT

#define PERIPH_REG_BIT ( value ) (0x1U << (value & 0x1F))

Definition at line 331 of file at32f403.h.

◆ REG16

#define REG16 ( addr ) *(volatile uint16_t *)(addr)

Definition at line 325 of file at32f403.h.

◆ REG32

#define REG32 ( addr ) *(volatile uint32_t *)(addr)

Definition at line 326 of file at32f403.h.

◆ REG8

#define REG8 ( addr ) *(volatile uint8_t *)(addr)

Definition at line 324 of file at32f403.h.


AT32F403 Firmwary Library: Peripheral_memory_map

Macros
Peripheral_memory_map
CMSIS » AT32F403

Macros

#define | FLASH_BASE ((uint32_t)0x08000000)
#define | SPIM_FLASH_BASE ((uint32_t)0x08400000)
#define | USD_BASE ((uint32_t)0x1FFFF800)
#define | SRAM_BASE ((uint32_t)0x20000000)
#define | PERIPH_BASE ((uint32_t)0x40000000)
#define | XMC_REG_BASE ((uint32_t)0xA0000000)
#define | DEBUG_BASE ((uint32_t)0xE0042000)
#define | APB1PERIPH_BASE (PERIPH_BASE + 0x00000)
#define | APB2PERIPH_BASE (PERIPH_BASE + 0x10000)
#define | AHBPERIPH_BASE (PERIPH_BASE + 0x20000)
#define | TMR2_BASE (APB1PERIPH_BASE + 0x0000)
#define | TMR3_BASE (APB1PERIPH_BASE + 0x0400)
#define | TMR4_BASE (APB1PERIPH_BASE + 0x0800)
#define | TMR5_BASE (APB1PERIPH_BASE + 0x0C00)
#define | TMR6_BASE (APB1PERIPH_BASE + 0x1000)
#define | TMR7_BASE (APB1PERIPH_BASE + 0x1400)
#define | TMR12_BASE (APB1PERIPH_BASE + 0x1800)
#define | TMR13_BASE (APB1PERIPH_BASE + 0x1C00)
#define | TMR14_BASE (APB1PERIPH_BASE + 0x2000)
#define | RTC_BASE (APB1PERIPH_BASE + 0x2800)
#define | WWDT_BASE (APB1PERIPH_BASE + 0x2C00)
#define | WDT_BASE (APB1PERIPH_BASE + 0x3000)
#define | SPI2_BASE (APB1PERIPH_BASE + 0x3800)
#define | SPI3_BASE (APB1PERIPH_BASE + 0x3C00)
#define | SPI4_BASE (APB1PERIPH_BASE + 0x4000)
#define | USART2_BASE (APB1PERIPH_BASE + 0x4400)
#define | USART3_BASE (APB1PERIPH_BASE + 0x4800)
#define | UART4_BASE (APB1PERIPH_BASE + 0x4C00)
#define | UART5_BASE (APB1PERIPH_BASE + 0x5000)
#define | I2C1_BASE (APB1PERIPH_BASE + 0x5400)
#define | I2C2_BASE (APB1PERIPH_BASE + 0x5800)
#define | USBFS_BASE (APB1PERIPH_BASE + 0x5C00)
#define | CAN1_BASE (APB1PERIPH_BASE + 0x6400)
#define | I2C3_BASE (APB1PERIPH_BASE + 0x6800)
#define | BPR_BASE (APB1PERIPH_BASE + 0x6C00)
#define | PWC_BASE (APB1PERIPH_BASE + 0x7000)
#define | DAC_BASE (APB1PERIPH_BASE + 0x7400)
#define | IOMUX_BASE (APB2PERIPH_BASE + 0x0000)
#define | EXINT_BASE (APB2PERIPH_BASE + 0x0400)
#define | GPIOA_BASE (APB2PERIPH_BASE + 0x0800)
#define | GPIOB_BASE (APB2PERIPH_BASE + 0x0C00)
#define | GPIOC_BASE (APB2PERIPH_BASE + 0x1000)
#define | GPIOD_BASE (APB2PERIPH_BASE + 0x1400)
#define | GPIOE_BASE (APB2PERIPH_BASE + 0x1800)
#define | GPIOF_BASE (APB2PERIPH_BASE + 0x1C00)
#define | GPIOG_BASE (APB2PERIPH_BASE + 0x2000)
#define | ADC1_BASE (APB2PERIPH_BASE + 0x2400)
#define | ADC2_BASE (APB2PERIPH_BASE + 0x2800)
#define | TMR1_BASE (APB2PERIPH_BASE + 0x2C00)
#define | SPI1_BASE (APB2PERIPH_BASE + 0x3000)
#define | TMR8_BASE (APB2PERIPH_BASE + 0x3400)
#define | USART1_BASE (APB2PERIPH_BASE + 0x3800)
#define | ADC3_BASE (APB2PERIPH_BASE + 0x3C00)
#define | TMR15_BASE (APB2PERIPH_BASE + 0x4000)
#define | TMR9_BASE (APB2PERIPH_BASE + 0x4C00)
#define | TMR10_BASE (APB2PERIPH_BASE + 0x5000)
#define | TMR11_BASE (APB2PERIPH_BASE + 0x5400)
#define | SDIO1_BASE (APB2PERIPH_BASE + 0x8000)
#define | DMA1_BASE (AHBPERIPH_BASE + 0x0000)
#define | DMA1_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0008)
#define | DMA1_CHANNEL2_BASE (AHBPERIPH_BASE + 0x001C)
#define | DMA1_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0030)
#define | DMA1_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0044)
#define | DMA1_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0058)
#define | DMA1_CHANNEL6_BASE (AHBPERIPH_BASE + 0x006C)
#define | DMA1_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0080)
#define | DMA2_BASE (AHBPERIPH_BASE + 0x0400)
#define | DMA2_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0408)
#define | DMA2_CHANNEL2_BASE (AHBPERIPH_BASE + 0x041C)
#define | DMA2_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0430)
#define | DMA2_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0444)
#define | DMA2_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0458)
#define | DMA2_CHANNEL6_BASE (AHBPERIPH_BASE + 0x046C)
#define | DMA2_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0480)
#define | CRM_BASE (AHBPERIPH_BASE + 0x1000)
#define | FLASH_REG_BASE (AHBPERIPH_BASE + 0x2000)
#define | CRC_BASE (AHBPERIPH_BASE + 0x3000)
#define | SDIO2_BASE (AHBPERIPH_BASE + 0x3400)
#define | XMC_BANK1_REG_BASE (XMC_REG_BASE + 0x0000)
#define | XMC_BANK1E_REG_BASE (XMC_REG_BASE + 0x0104)
#define | XMC_BANK1E_H_BASE (XMC_REG_BASE + 0x0220)
#define | XMC_BANK2_REG_BASE (XMC_REG_BASE + 0x0060)
#define | XMC_BANK3_REG_BASE (XMC_REG_BASE + 0x0080)
#define | XMC_BANK4_REG_BASE (XMC_REG_BASE + 0x00A0)

Detailed Description

Macro Definition Documentation

◆ ADC1_BASE

#define ADC1_BASE (APB2PERIPH_BASE + 0x2400)

Definition at line 391 of file at32f403.h.

◆ ADC2_BASE

#define ADC2_BASE (APB2PERIPH_BASE + 0x2800)

Definition at line 392 of file at32f403.h.

◆ ADC3_BASE

#define ADC3_BASE (APB2PERIPH_BASE + 0x3C00)

Definition at line 397 of file at32f403.h.

◆ AHBPERIPH_BASE

#define AHBPERIPH_BASE (PERIPH_BASE + 0x20000)

Definition at line 351 of file at32f403.h.

◆ APB1PERIPH_BASE

#define APB1PERIPH_BASE (PERIPH_BASE + 0x00000)

Definition at line 349 of file at32f403.h.

◆ APB2PERIPH_BASE

#define APB2PERIPH_BASE (PERIPH_BASE + 0x10000)

Definition at line 350 of file at32f403.h.

◆ BPR_BASE

#define BPR_BASE (APB1PERIPH_BASE + 0x6C00)

Definition at line 378 of file at32f403.h.

◆ CAN1_BASE

#define CAN1_BASE (APB1PERIPH_BASE + 0x6400)

Definition at line 376 of file at32f403.h.

◆ CRC_BASE

#define CRC_BASE (AHBPERIPH_BASE + 0x3000)

Definition at line 422 of file at32f403.h.

◆ CRM_BASE

#define CRM_BASE (AHBPERIPH_BASE + 0x1000)

Definition at line 420 of file at32f403.h.

◆ DAC_BASE

#define DAC_BASE (APB1PERIPH_BASE + 0x7400)

Definition at line 380 of file at32f403.h.

◆ DEBUG_BASE

#define DEBUG_BASE ((uint32_t)0xE0042000)

Definition at line 347 of file at32f403.h.

◆ DMA1_BASE

#define DMA1_BASE (AHBPERIPH_BASE + 0x0000)

Definition at line 404 of file at32f403.h.

◆ DMA1_CHANNEL1_BASE

#define DMA1_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0008)

Definition at line 405 of file at32f403.h.

◆ DMA1_CHANNEL2_BASE

#define DMA1_CHANNEL2_BASE (AHBPERIPH_BASE + 0x001C)

Definition at line 406 of file at32f403.h.

◆ DMA1_CHANNEL3_BASE

#define DMA1_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0030)

Definition at line 407 of file at32f403.h.

◆ DMA1_CHANNEL4_BASE

#define DMA1_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0044)

Definition at line 408 of file at32f403.h.

◆ DMA1_CHANNEL5_BASE

#define DMA1_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0058)

Definition at line 409 of file at32f403.h.

◆ DMA1_CHANNEL6_BASE

#define DMA1_CHANNEL6_BASE (AHBPERIPH_BASE + 0x006C)

Definition at line 410 of file at32f403.h.

◆ DMA1_CHANNEL7_BASE

#define DMA1_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0080)

Definition at line 411 of file at32f403.h.

◆ DMA2_BASE

#define DMA2_BASE (AHBPERIPH_BASE + 0x0400)

Definition at line 412 of file at32f403.h.

◆ DMA2_CHANNEL1_BASE

#define DMA2_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0408)

Definition at line 413 of file at32f403.h.

◆ DMA2_CHANNEL2_BASE

#define DMA2_CHANNEL2_BASE (AHBPERIPH_BASE + 0x041C)

Definition at line 414 of file at32f403.h.

◆ DMA2_CHANNEL3_BASE

#define DMA2_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0430)

Definition at line 415 of file at32f403.h.

◆ DMA2_CHANNEL4_BASE

#define DMA2_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0444)

Definition at line 416 of file at32f403.h.

◆ DMA2_CHANNEL5_BASE

#define DMA2_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0458)

Definition at line 417 of file at32f403.h.

◆ DMA2_CHANNEL6_BASE

#define DMA2_CHANNEL6_BASE (AHBPERIPH_BASE + 0x046C)

Definition at line 418 of file at32f403.h.

◆ DMA2_CHANNEL7_BASE

#define DMA2_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0480)

Definition at line 419 of file at32f403.h.

◆ EXINT_BASE

#define EXINT_BASE (APB2PERIPH_BASE + 0x0400)

Definition at line 383 of file at32f403.h.

◆ FLASH_BASE

#define FLASH_BASE ((uint32_t)0x08000000)

Definition at line 341 of file at32f403.h.

◆ FLASH_REG_BASE

#define FLASH_REG_BASE (AHBPERIPH_BASE + 0x2000)

Definition at line 421 of file at32f403.h.

◆ GPIOA_BASE

#define GPIOA_BASE (APB2PERIPH_BASE + 0x0800)

Definition at line 384 of file at32f403.h.

◆ GPIOB_BASE

#define GPIOB_BASE (APB2PERIPH_BASE + 0x0C00)

Definition at line 385 of file at32f403.h.

◆ GPIOC_BASE

#define GPIOC_BASE (APB2PERIPH_BASE + 0x1000)

Definition at line 386 of file at32f403.h.

◆ GPIOD_BASE

#define GPIOD_BASE (APB2PERIPH_BASE + 0x1400)

Definition at line 387 of file at32f403.h.

◆ GPIOE_BASE

#define GPIOE_BASE (APB2PERIPH_BASE + 0x1800)

Definition at line 388 of file at32f403.h.

◆ GPIOF_BASE

#define GPIOF_BASE (APB2PERIPH_BASE + 0x1C00)

Definition at line 389 of file at32f403.h.

◆ GPIOG_BASE

#define GPIOG_BASE (APB2PERIPH_BASE + 0x2000)

Definition at line 390 of file at32f403.h.

◆ I2C1_BASE

#define I2C1_BASE (APB1PERIPH_BASE + 0x5400)

Definition at line 373 of file at32f403.h.

◆ I2C2_BASE

#define I2C2_BASE (APB1PERIPH_BASE + 0x5800)

Definition at line 374 of file at32f403.h.

◆ I2C3_BASE

#define I2C3_BASE (APB1PERIPH_BASE + 0x6800)

Definition at line 377 of file at32f403.h.

◆ IOMUX_BASE

#define IOMUX_BASE (APB2PERIPH_BASE + 0x0000)

Definition at line 382 of file at32f403.h.

◆ PERIPH_BASE

#define PERIPH_BASE ((uint32_t)0x40000000)

Definition at line 345 of file at32f403.h.

◆ PWC_BASE

#define PWC_BASE (APB1PERIPH_BASE + 0x7000)

Definition at line 379 of file at32f403.h.

◆ RTC_BASE

#define RTC_BASE (APB1PERIPH_BASE + 0x2800)

Definition at line 363 of file at32f403.h.

◆ SDIO1_BASE

#define SDIO1_BASE (APB2PERIPH_BASE + 0x8000)

Definition at line 402 of file at32f403.h.

◆ SDIO2_BASE

#define SDIO2_BASE (AHBPERIPH_BASE + 0x3400)

Definition at line 423 of file at32f403.h.

◆ SPI1_BASE

#define SPI1_BASE (APB2PERIPH_BASE + 0x3000)

Definition at line 394 of file at32f403.h.

◆ SPI2_BASE

#define SPI2_BASE (APB1PERIPH_BASE + 0x3800)

Definition at line 366 of file at32f403.h.

◆ SPI3_BASE

#define SPI3_BASE (APB1PERIPH_BASE + 0x3C00)

Definition at line 367 of file at32f403.h.

◆ SPI4_BASE

#define SPI4_BASE (APB1PERIPH_BASE + 0x4000)

Definition at line 368 of file at32f403.h.

◆ SPIM_FLASH_BASE

#define SPIM_FLASH_BASE ((uint32_t)0x08400000)

Definition at line 342 of file at32f403.h.

◆ SRAM_BASE

#define SRAM_BASE ((uint32_t)0x20000000)

Definition at line 344 of file at32f403.h.

◆ TMR10_BASE

#define TMR10_BASE (APB2PERIPH_BASE + 0x5000)

Definition at line 400 of file at32f403.h.

◆ TMR11_BASE

#define TMR11_BASE (APB2PERIPH_BASE + 0x5400)

Definition at line 401 of file at32f403.h.

◆ TMR12_BASE

#define TMR12_BASE (APB1PERIPH_BASE + 0x1800)

Definition at line 360 of file at32f403.h.

◆ TMR13_BASE

#define TMR13_BASE (APB1PERIPH_BASE + 0x1C00)

Definition at line 361 of file at32f403.h.

◆ TMR14_BASE

#define TMR14_BASE (APB1PERIPH_BASE + 0x2000)

Definition at line 362 of file at32f403.h.

◆ TMR15_BASE

#define TMR15_BASE (APB2PERIPH_BASE + 0x4000)

Definition at line 398 of file at32f403.h.

◆ TMR1_BASE

#define TMR1_BASE (APB2PERIPH_BASE + 0x2C00)

Definition at line 393 of file at32f403.h.

◆ TMR2_BASE

#define TMR2_BASE (APB1PERIPH_BASE + 0x0000)

Definition at line 354 of file at32f403.h.

◆ TMR3_BASE

#define TMR3_BASE (APB1PERIPH_BASE + 0x0400)

Definition at line 355 of file at32f403.h.

◆ TMR4_BASE

#define TMR4_BASE (APB1PERIPH_BASE + 0x0800)

Definition at line 356 of file at32f403.h.

◆ TMR5_BASE

#define TMR5_BASE (APB1PERIPH_BASE + 0x0C00)

Definition at line 357 of file at32f403.h.

◆ TMR6_BASE

#define TMR6_BASE (APB1PERIPH_BASE + 0x1000)

Definition at line 358 of file at32f403.h.

◆ TMR7_BASE

#define TMR7_BASE (APB1PERIPH_BASE + 0x1400)

Definition at line 359 of file at32f403.h.

◆ TMR8_BASE

#define TMR8_BASE (APB2PERIPH_BASE + 0x3400)

Definition at line 395 of file at32f403.h.

◆ TMR9_BASE

#define TMR9_BASE (APB2PERIPH_BASE + 0x4C00)

Definition at line 399 of file at32f403.h.

◆ UART4_BASE

#define UART4_BASE (APB1PERIPH_BASE + 0x4C00)

Definition at line 371 of file at32f403.h.

◆ UART5_BASE

#define UART5_BASE (APB1PERIPH_BASE + 0x5000)

Definition at line 372 of file at32f403.h.

◆ USART1_BASE

#define USART1_BASE (APB2PERIPH_BASE + 0x3800)

Definition at line 396 of file at32f403.h.

◆ USART2_BASE

#define USART2_BASE (APB1PERIPH_BASE + 0x4400)

Definition at line 369 of file at32f403.h.

◆ USART3_BASE

#define USART3_BASE (APB1PERIPH_BASE + 0x4800)

Definition at line 370 of file at32f403.h.

◆ USBFS_BASE

#define USBFS_BASE (APB1PERIPH_BASE + 0x5C00)

Definition at line 375 of file at32f403.h.

◆ USD_BASE

#define USD_BASE ((uint32_t)0x1FFFF800)

Definition at line 343 of file at32f403.h.

◆ WDT_BASE

#define WDT_BASE (APB1PERIPH_BASE + 0x3000)

Definition at line 365 of file at32f403.h.

◆ WWDT_BASE

#define WWDT_BASE (APB1PERIPH_BASE + 0x2C00)

Definition at line 364 of file at32f403.h.

◆ XMC_BANK1_REG_BASE

#define XMC_BANK1_REG_BASE (XMC_REG_BASE + 0x0000)

Definition at line 424 of file at32f403.h.

◆ XMC_BANK1E_H_BASE

#define XMC_BANK1E_H_BASE (XMC_REG_BASE + 0x0220)

Definition at line 426 of file at32f403.h.

◆ XMC_BANK1E_REG_BASE

#define XMC_BANK1E_REG_BASE (XMC_REG_BASE + 0x0104)

Definition at line 425 of file at32f403.h.

◆ XMC_BANK2_REG_BASE

#define XMC_BANK2_REG_BASE (XMC_REG_BASE + 0x0060)

Definition at line 427 of file at32f403.h.

◆ XMC_BANK3_REG_BASE

#define XMC_BANK3_REG_BASE (XMC_REG_BASE + 0x0080)

Definition at line 428 of file at32f403.h.

◆ XMC_BANK4_REG_BASE

#define XMC_BANK4_REG_BASE (XMC_REG_BASE + 0x00A0)

Definition at line 429 of file at32f403.h.

◆ XMC_REG_BASE

#define XMC_REG_BASE ((uint32_t)0xA0000000)

Definition at line 346 of file at32f403.h.


AT32F403 Firmwary Library: AT32F403_system

Modules
AT32F403_system
CMSIS

Modules

AT32F403_system_clock_stable_definition
AT32F403_system_exported_variables
AT32F403_system_exported_functions
AT32F403_system_private_defines
AT32F403_system_private_variables
AT32F403_system_private_functions

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: AT32F403_system_clock_stable_definition

Macros
AT32F403_system_clock_stable_definition
CMSIS » AT32F403_system

Macros

#define | HEXT_STABLE_DELAY (5000u)
#define | PLL_STABLE_DELAY (500u)
#define | SystemCoreClock system_core_clock

Detailed Description

Macro Definition Documentation

◆ HEXT_STABLE_DELAY

#define HEXT_STABLE_DELAY (5000u)

Definition at line 44 of file system_at32f403.h.

◆ PLL_STABLE_DELAY

#define PLL_STABLE_DELAY (500u)

Definition at line 45 of file system_at32f403.h.

◆ SystemCoreClock

#define SystemCoreClock system_core_clock

Definition at line 46 of file system_at32f403.h.


AT32F403 Firmwary Library: AT32F403_system_exported_variables

Variables
AT32F403_system_exported_variables
CMSIS » AT32F403_system

Variables

unsigned int system_core_clock

Detailed Description

Variable Documentation

◆ system_core_clock

unsigned int system_core_clock
extern

system clock frequency (core clock)

value of the high speed internal clock in hz system clock frequency (core clock)

Definition at line 46 of file system_at32f403.c.

Referenced by delay_init(), DMA1_Channel2_IRQHandler(), main(), mclk_tmr1_init(), sd_init(), sd_power_on(), system_core_clock_update(), tmr1_config(), TMR3_GLOBAL_IRQHandler(), and usb_clock48m_select().


AT32F403 Firmwary Library: AT32F403_system_exported_functions

Functions
AT32F403_system_exported_functions
CMSIS » AT32F403_system

Functions

void | SystemInit (void)
setup the microcontroller system initialize the flash interface. More...
void | system_core_clock_update (void)
update system_core_clock variable according to clock register values. the system_core_clock variable contains the core clock (hclk), it can be used by the user application to setup the systick timer or configure other parameters. More...

Detailed Description

Function Documentation

◆ system_core_clock_update()

void system_core_clock_update ( void )

update system_core_clock variable according to clock register values. the system_core_clock variable contains the core clock (hclk), it can be used by the user application to setup the systick timer or configure other parameters.

Parameters
none
Return values
none

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

Definition at line 113 of file system_at32f403.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ SystemInit()

void SystemInit ( void )

setup the microcontroller system initialize the flash interface.

Note
this function should be used only after reset.
Parameters
none
Return values
none

< vector table base offset field. this value must be a multiple of 0x200.

Definition at line 62 of file system_at32f403.c.


AT32F403 Firmwary Library: AT32F403_system_private_defines

Macros
AT32F403_system_private_defines
CMSIS » AT32F403_system

Macros

#define VECT_TAB_OFFSET 0x0

Detailed Description

Macro Definition Documentation

◆ VECT_TAB_OFFSET

#define VECT_TAB_OFFSET 0x0

vector table base offset field. this value must be a multiple of 0x200.

Definition at line 38 of file system_at32f403.c.


AT32F403 Firmwary Library: AT32F403_system_private_variables

Variables
AT32F403_system_private_variables
CMSIS » AT32F403_system

Variables

unsigned int system_core_clock = ((uint32_t)8000000)

Detailed Description

Variable Documentation

◆ system_core_clock

unsigned int system_core_clock = ((uint32_t)8000000)

value of the high speed internal clock in hz system clock frequency (core clock)

Definition at line 46 of file system_at32f403.c.

Referenced by delay_init(), DMA1_Channel2_IRQHandler(), main(), mclk_tmr1_init(), sd_init(), sd_power_on(), system_core_clock_update(), tmr1_config(), TMR3_GLOBAL_IRQHandler(), and usb_clock48m_select().


AT32F403 Firmwary Library: AT32F403_system_private_functions

Functions
AT32F403_system_private_functions
CMSIS » AT32F403_system

Functions

void | SystemInit (void)
setup the microcontroller system initialize the flash interface. More...
void | system_core_clock_update (void)
update system_core_clock variable according to clock register values. the system_core_clock variable contains the core clock (hclk), it can be used by the user application to setup the systick timer or configure other parameters. More...

Detailed Description

Function Documentation

◆ system_core_clock_update()

void system_core_clock_update ( void )

update system_core_clock variable according to clock register values. the system_core_clock variable contains the core clock (hclk), it can be used by the user application to setup the systick timer or configure other parameters.

Parameters
none
Return values
none

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

Definition at line 113 of file system_at32f403.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ SystemInit()

void SystemInit ( void )

setup the microcontroller system initialize the flash interface.

Note
this function should be used only after reset.
Parameters
none
Return values
none

< vector table base offset field. this value must be a multiple of 0x200.

Definition at line 62 of file system_at32f403.c.


AT32F403 Firmwary Library: AT32F403_periph_driver

Modules
AT32F403_periph_driver

Modules

ADC
ADC driver modules.
BPR
BPR driver modules.
CAN
CAN driver modules.
CRC
CRC driver modules.
CRM
CRM driver modules.
DAC
DAC driver modules.
DEBUG
DEBUG driver modules.
DMA
DMA driver modules.
EXINT
EXINT driver modules.
FLASH
FLASH driver modules.
GPIO
GPIO driver modules.
I2C
I2C driver modules.
MISC
MISC driver modules.
PWC
PWC driver modules.
RTC
RTC driver modules.
SDIO
SDIO driver modules.
SPI
SPI driver modules.
TMR
TMR driver modules.
USART
USART driver modules.
USB
USB driver modules.
WDT
WDT driver modules.
WWDT
WWDT driver modules.
XMC
XMC driver modules.

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: ADC

Modules | Macros
ADC
AT32F403_periph_driver

ADC driver modules. More...

Modules

ADC_interrupts_definition
adc interrupt
ADC_flags_definition
adc flag
ADC_exported_types
ADC_exported_functions
ADC_private_functions

Macros

#define | ADC1 ((adc_type *) ADC1_BASE)
#define | ADC2 ((adc_type *) ADC2_BASE)
#define | ADC3 ((adc_type *) ADC3_BASE)

Detailed Description

ADC driver modules.

Macro Definition Documentation

◆ ADC1

#define ADC1 ((adc_type *) ADC1_BASE)

Definition at line 601 of file at32f403_adc.h.

◆ ADC2

#define ADC2 ((adc_type *) ADC2_BASE)

Definition at line 602 of file at32f403_adc.h.

◆ ADC3

#define ADC3 ((adc_type *) ADC3_BASE)

Definition at line 603 of file at32f403_adc.h.


AT32F403 Firmwary Library: ADC_interrupts_definition

Macros
ADC_interrupts_definition
AT32F403_periph_driver » ADC

adc interrupt More...

Macros

#define | ADC_CCE_INT ((uint32_t)0x00000020)
#define | ADC_VMOR_INT ((uint32_t)0x00000040)
#define | ADC_PCCE_INT ((uint32_t)0x00000080)

Detailed Description

adc interrupt

Macro Definition Documentation

◆ ADC_CCE_INT

#define ADC_CCE_INT ((uint32_t)0x00000020)

channels conversion end interrupt

Definition at line 50 of file at32f403_adc.h.

◆ ADC_PCCE_INT

#define ADC_PCCE_INT ((uint32_t)0x00000080)

preempt channels conversion end interrupt

Definition at line 52 of file at32f403_adc.h.

◆ ADC_VMOR_INT

#define ADC_VMOR_INT ((uint32_t)0x00000040)

voltage monitoring out of range interrupt

Definition at line 51 of file at32f403_adc.h.


AT32F403 Firmwary Library: ADC_flags_definition

Macros
ADC_flags_definition
AT32F403_periph_driver » ADC

adc flag More...

Macros

#define | ADC_VMOR_FLAG ((uint8_t)0x01)
#define | ADC_CCE_FLAG ((uint8_t)0x02)
#define | ADC_PCCE_FLAG ((uint8_t)0x04)
#define | ADC_PCCS_FLAG ((uint8_t)0x08)
#define | ADC_OCCS_FLAG ((uint8_t)0x10)

Detailed Description

adc flag

Macro Definition Documentation

◆ ADC_CCE_FLAG

#define ADC_CCE_FLAG ((uint8_t)0x02)

channels conversion end flag

Definition at line 64 of file at32f403_adc.h.

◆ ADC_OCCS_FLAG

#define ADC_OCCS_FLAG ((uint8_t)0x10)

ordinary channel conversion start flag

Definition at line 67 of file at32f403_adc.h.

◆ ADC_PCCE_FLAG

#define ADC_PCCE_FLAG ((uint8_t)0x04)

preempt channels conversion end flag

Definition at line 65 of file at32f403_adc.h.

◆ ADC_PCCS_FLAG

#define ADC_PCCS_FLAG ((uint8_t)0x08)

preempt channel conversion start flag

Definition at line 66 of file at32f403_adc.h.

◆ ADC_VMOR_FLAG

#define ADC_VMOR_FLAG ((uint8_t)0x01)

voltage monitoring out of range flag

Definition at line 63 of file at32f403_adc.h.


AT32F403 Firmwary Library: ADC_exported_types

Data Structures | Enumerations
ADC_exported_types
AT32F403_periph_driver » ADC

Data Structures

struct | adc_base_config_type
adc base config type More...
struct | adc_type
type define adc register all More...

Enumerations

enum adc_combine_mode_type {
ADC_INDEPENDENT_MODE = 0x00 , ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE = 0x01 , ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE = 0x02 , ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE = 0x03 ,
ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE = 0x04 , ADC_PREEMPT_SMLT_ONLY_MODE = 0x05 , ADC_ORDINARY_SMLT_ONLY_MODE = 0x06 , ADC_ORDINARY_SHORTSHIFT_ONLY_MODE = 0x07 ,
ADC_ORDINARY_LONGSHIFT_ONLY_MODE = 0x08 , ADC_PREEMPT_INTERLTRIG_ONLY_MODE = 0x09
}
adc combine mode type(these options are reserved in adc2 and adc3) More...
enum | adc_data_align_type { ADC_RIGHT_ALIGNMENT = 0x00 , ADC_LEFT_ALIGNMENT = 0x01 }
adc data align type More...
enum adc_channel_select_type {
ADC_CHANNEL_0 = 0x00 , ADC_CHANNEL_1 = 0x01 , ADC_CHANNEL_2 = 0x02 , ADC_CHANNEL_3 = 0x03 ,
ADC_CHANNEL_4 = 0x04 , ADC_CHANNEL_5 = 0x05 , ADC_CHANNEL_6 = 0x06 , ADC_CHANNEL_7 = 0x07 ,
ADC_CHANNEL_8 = 0x08 , ADC_CHANNEL_9 = 0x09 , ADC_CHANNEL_10 = 0x0A , ADC_CHANNEL_11 = 0x0B ,
ADC_CHANNEL_12 = 0x0C , ADC_CHANNEL_13 = 0x0D , ADC_CHANNEL_14 = 0x0E , ADC_CHANNEL_15 = 0x0F ,
ADC_CHANNEL_16 = 0x10 , ADC_CHANNEL_17 = 0x11
}
adc channel select type More...
enum adc_sampletime_select_type {
ADC_SAMPLETIME_1_5 = 0x00 , ADC_SAMPLETIME_7_5 = 0x01 , ADC_SAMPLETIME_13_5 = 0x02 , ADC_SAMPLETIME_28_5 = 0x03 ,
ADC_SAMPLETIME_41_5 = 0x04 , ADC_SAMPLETIME_55_5 = 0x05 , ADC_SAMPLETIME_71_5 = 0x06 , ADC_SAMPLETIME_239_5 = 0x07
}
adc sampletime select type More...
enum adc_ordinary_trig_select_type {
ADC12_ORDINARY_TRIG_TMR1CH1 = 0x00 , ADC12_ORDINARY_TRIG_TMR1CH2 = 0x01 , ADC12_ORDINARY_TRIG_TMR1CH3 = 0x02 , ADC12_ORDINARY_TRIG_TMR2CH2 = 0x03 ,
ADC12_ORDINARY_TRIG_TMR3TRGOUT = 0x04 , ADC12_ORDINARY_TRIG_TMR4CH4 = 0x05 , ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT = 0x06 , ADC12_ORDINARY_TRIG_SOFTWARE = 0x07 ,
ADC12_ORDINARY_TRIG_TMR15CH1 = 0x08 , ADC12_ORDINARY_TRIG_TMR15CH2 = 0x09 , ADC12_ORDINARY_TRIG_TMR15CH3 = 0x0A , ADC12_ORDINARY_TRIG_TMR15CH4 = 0x0B ,
ADC12_ORDINARY_TRIG_TMR15TRGOUT = 0x0C , ADC12_ORDINARY_TRIG_TMR1TRGOUT = 0x0D , ADC12_ORDINARY_TRIG_TMR8CH1 = 0x0E , ADC12_ORDINARY_TRIG_TMR8CH2 = 0x0F ,
ADC3_ORDINARY_TRIG_TMR3CH1 = 0x00 , ADC3_ORDINARY_TRIG_TMR2CH3 = 0x01 , ADC3_ORDINARY_TRIG_TMR1CH3 = 0x02 , ADC3_ORDINARY_TRIG_TMR8CH1 = 0x03 ,
ADC3_ORDINARY_TRIG_TMR8TRGOUT = 0x04 , ADC3_ORDINARY_TRIG_TMR5CH1 = 0x05 , ADC3_ORDINARY_TRIG_TMR5CH3 = 0x06 , ADC3_ORDINARY_TRIG_SOFTWARE = 0x07 ,
ADC3_ORDINARY_TRIG_TMR15CH1 = 0x08 , ADC3_ORDINARY_TRIG_TMR15CH2 = 0x09 , ADC3_ORDINARY_TRIG_TMR15CH3 = 0x0A , ADC3_ORDINARY_TRIG_TMR15CH4 = 0x0B ,
ADC3_ORDINARY_TRIG_TMR15TRGOUT = 0x0C , ADC3_ORDINARY_TRIG_TMR1TRGOUT = 0x0D , ADC3_ORDINARY_TRIG_TMR1CH1 = 0x0E , ADC3_ORDINARY_TRIG_TMR8CH3 = 0x0F
}
adc ordinary group trigger event select type More...
enum adc_preempt_trig_select_type {
ADC12_PREEMPT_TRIG_TMR1TRGOUT = 0x00 , ADC12_PREEMPT_TRIG_TMR1CH4 = 0x01 , ADC12_PREEMPT_TRIG_TMR2TRGOUT = 0x02 , ADC12_PREEMPT_TRIG_TMR2CH1 = 0x03 ,
ADC12_PREEMPT_TRIG_TMR3CH4 = 0x04 , ADC12_PREEMPT_TRIG_TMR4TRGOUT = 0x05 , ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 = 0x06 , ADC12_PREEMPT_TRIG_SOFTWARE = 0x07 ,
ADC12_PREEMPT_TRIG_TMR15CH1 = 0x08 , ADC12_PREEMPT_TRIG_TMR15CH2 = 0x09 , ADC12_PREEMPT_TRIG_TMR15CH3 = 0x0A , ADC12_PREEMPT_TRIG_TMR15CH4 = 0x0B ,
ADC12_PREEMPT_TRIG_TMR15TRGOUT = 0x0C , ADC12_PREEMPT_TRIG_TMR1CH1 = 0x0D , ADC12_PREEMPT_TRIG_TMR8CH1 = 0x0E , ADC12_PREEMPT_TRIG_TMR8TRGOUT = 0x0F ,
ADC3_PREEMPT_TRIG_TMR1TRGOUT = 0x00 , ADC3_PREEMPT_TRIG_TMR1CH4 = 0x01 , ADC3_PREEMPT_TRIG_TMR4CH3 = 0x02 , ADC3_PREEMPT_TRIG_TMR8CH2 = 0x03 ,
ADC3_PREEMPT_TRIG_TMR8CH4 = 0x04 , ADC3_PREEMPT_TRIG_TMR5TRGOUT = 0x05 , ADC3_PREEMPT_TRIG_TMR5CH4 = 0x06 , ADC3_PREEMPT_TRIG_SOFTWARE = 0x07 ,
ADC3_PREEMPT_TRIG_TMR15CH1 = 0x08 , ADC3_PREEMPT_TRIG_TMR15CH2 = 0x09 , ADC3_PREEMPT_TRIG_TMR15CH3 = 0x0A , ADC3_PREEMPT_TRIG_TMR15CH4 = 0x0B ,
ADC3_PREEMPT_TRIG_TMR15TRGOUT = 0x0C , ADC3_PREEMPT_TRIG_TMR1CH1 = 0x0D , ADC3_PREEMPT_TRIG_TMR1CH2 = 0x0E , ADC3_PREEMPT_TRIG_TMR8TRGOUT = 0x0F
}
adc preempt group trigger event select type More...
enum | adc_preempt_channel_type { ADC_PREEMPT_CHANNEL_1 = 0x00 , ADC_PREEMPT_CHANNEL_2 = 0x01 , ADC_PREEMPT_CHANNEL_3 = 0x02 , ADC_PREEMPT_CHANNEL_4 = 0x03 }
adc preempt channel type More...
enum adc_voltage_monitoring_type {
ADC_VMONITOR_SINGLE_ORDINARY = 0x00800200 , ADC_VMONITOR_SINGLE_PREEMPT = 0x00400200 , ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT = 0x00C00200 , ADC_VMONITOR_ALL_ORDINARY = 0x00800000 ,
ADC_VMONITOR_ALL_PREEMPT = 0x00400000 , ADC_VMONITOR_ALL_ORDINARY_PREEMPT = 0x00C00000 , ADC_VMONITOR_NONE = 0x00000000
}
adc voltage_monitoring type More...

Detailed Description

Enumeration Type Documentation

◆ adc_channel_select_type

enum adc_channel_select_type

adc channel select type

Enumerator
ADC_CHANNEL_0 | adc channel 0
ADC_CHANNEL_1 | adc channel 1
ADC_CHANNEL_2 | adc channel 2
ADC_CHANNEL_3 | adc channel 3
ADC_CHANNEL_4 | adc channel 4
ADC_CHANNEL_5 | adc channel 5
ADC_CHANNEL_6 | adc channel 6
ADC_CHANNEL_7 | adc channel 7
ADC_CHANNEL_8 | adc channel 8
ADC_CHANNEL_9 | adc channel 9
ADC_CHANNEL_10 | adc channel 10
ADC_CHANNEL_11 | adc channel 11
ADC_CHANNEL_12 | adc channel 12
ADC_CHANNEL_13 | adc channel 13
ADC_CHANNEL_14 | adc channel 14
ADC_CHANNEL_15 | adc channel 15
ADC_CHANNEL_16 | adc channel 16
ADC_CHANNEL_17 | adc channel 17

Definition at line 106 of file at32f403_adc.h.

◆ adc_combine_mode_type

enum adc_combine_mode_type

adc combine mode type(these options are reserved in adc2 and adc3)

Enumerator
ADC_INDEPENDENT_MODE | independent mode
ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE | combined ordinary simultaneous + preempt simultaneous mode
ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE | combined ordinary simultaneous + preempt interleaved trigger mode
ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE | combined ordinary short shifting + preempt simultaneous mode
ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE | combined ordinary long shifting + preempt simultaneous mode
ADC_PREEMPT_SMLT_ONLY_MODE | preempt simultaneous mode only
ADC_ORDINARY_SMLT_ONLY_MODE | ordinary simultaneous mode only
ADC_ORDINARY_SHORTSHIFT_ONLY_MODE | ordinary short shifting mode only
ADC_ORDINARY_LONGSHIFT_ONLY_MODE | ordinary long shifting mode only
ADC_PREEMPT_INTERLTRIG_ONLY_MODE | preempt interleaved trigger mode only

Definition at line 80 of file at32f403_adc.h.

◆ adc_data_align_type

enum adc_data_align_type

adc data align type

Enumerator
ADC_RIGHT_ALIGNMENT | data right alignment
ADC_LEFT_ALIGNMENT | data left alignment

Definition at line 97 of file at32f403_adc.h.

◆ adc_ordinary_trig_select_type

enum adc_ordinary_trig_select_type

adc ordinary group trigger event select type

Enumerator
ADC12_ORDINARY_TRIG_TMR1CH1 | timer1 ch1 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR1CH2 | timer1 ch2 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR1CH3 | timer1 ch3 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR2CH2 | timer2 ch2 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR3TRGOUT | timer3 trgout event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR4CH4 | timer4 ch4 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT | exint line11/timer8 trgout event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_SOFTWARE | software(OCSWTRG) control bit as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR15CH1 | timer15 ch1 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR15CH2 | timer15 ch2 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR15CH3 | timer15 ch3 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR15CH4 | timer15 ch4 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR15TRGOUT | timer15 trgout event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR1TRGOUT | timer1 trgout event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR8CH1 | timer8 ch1 event as trigger source of adc1/adc2 ordinary sequence
ADC12_ORDINARY_TRIG_TMR8CH2 | timer8 ch2 event as trigger source of adc1/adc2 ordinary sequence
ADC3_ORDINARY_TRIG_TMR3CH1 | timer3 ch1 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR2CH3 | timer2 ch3 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR1CH3 | timer1 ch3 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR8CH1 | timer8 ch1 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR8TRGOUT | timer8 trgout event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR5CH1 | timer5 ch1 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR5CH3 | timer5 ch3 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_SOFTWARE | software(OCSWTRG) control bit as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR15CH1 | timer15 ch1 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR15CH2 | timer15 ch2 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR15CH3 | timer15 ch3 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR15CH4 | timer15 ch4 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR15TRGOUT | timer15 trgout event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR1TRGOUT | timer1 trgout event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR1CH1 | timer1 ch1 event as trigger source of adc3 ordinary sequence
ADC3_ORDINARY_TRIG_TMR8CH3 | timer8 ch3 event as trigger source of adc3 ordinary sequence

Definition at line 146 of file at32f403_adc.h.

◆ adc_preempt_channel_type

enum adc_preempt_channel_type

adc preempt channel type

Enumerator
ADC_PREEMPT_CHANNEL_1 | adc preempt channel 1
ADC_PREEMPT_CHANNEL_2 | adc preempt channel 2
ADC_PREEMPT_CHANNEL_3 | adc preempt channel 3
ADC_PREEMPT_CHANNEL_4 | adc preempt channel 4

Definition at line 228 of file at32f403_adc.h.

◆ adc_preempt_trig_select_type

enum adc_preempt_trig_select_type

adc preempt group trigger event select type

Enumerator
ADC12_PREEMPT_TRIG_TMR1TRGOUT | timer1 trgout event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR1CH4 | timer1 ch4 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR2TRGOUT | timer2 trgout event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR2CH1 | timer2 ch1 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR3CH4 | timer3 ch4 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR4TRGOUT | timer4 trgout event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 | exint line15/timer8 ch4 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_SOFTWARE | software(PCSWTRG) control bit as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR15CH1 | timer15 ch1 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR15CH2 | timer15 ch2 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR15CH3 | timer15 ch3 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR15CH4 | timer15 ch4 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR15TRGOUT | timer15 trgout event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR1CH1 | timer1 ch1 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR8CH1 | timer8 ch1 event as trigger source of adc1/adc2 preempt sequence
ADC12_PREEMPT_TRIG_TMR8TRGOUT | timer8 trgout event as trigger source of adc1/adc2 preempt sequence
ADC3_PREEMPT_TRIG_TMR1TRGOUT | timer1 trgout event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR1CH4 | timer1 ch4 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR4CH3 | timer4 ch3 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR8CH2 | timer8 ch2 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR8CH4 | timer8 ch4 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR5TRGOUT | timer5 trgout event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR5CH4 | timer5 ch4 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_SOFTWARE | software(PCSWTRG) control bit as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR15CH1 | timer15 ch1 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR15CH2 | timer15 ch2 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR15CH3 | timer15 ch3 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR15CH4 | timer15 ch4 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR15TRGOUT | timer15 trgout event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR1CH1 | timer1 ch1 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR1CH2 | timer1 ch2 event as trigger source of adc3 preempt sequence
ADC3_PREEMPT_TRIG_TMR8TRGOUT | timer8 trgout event as trigger source of adc3 preempt sequence

Definition at line 187 of file at32f403_adc.h.

◆ adc_sampletime_select_type

enum adc_sampletime_select_type

adc sampletime select type

Enumerator
ADC_SAMPLETIME_1_5 | adc sample time 1.5 cycle
ADC_SAMPLETIME_7_5 | adc sample time 7.5 cycle
ADC_SAMPLETIME_13_5 | adc sample time 13.5 cycle
ADC_SAMPLETIME_28_5 | adc sample time 28.5 cycle
ADC_SAMPLETIME_41_5 | adc sample time 41.5 cycle
ADC_SAMPLETIME_55_5 | adc sample time 55.5 cycle
ADC_SAMPLETIME_71_5 | adc sample time 71.5 cycle
ADC_SAMPLETIME_239_5 | adc sample time 239.5 cycle

Definition at line 131 of file at32f403_adc.h.

◆ adc_voltage_monitoring_type

enum adc_voltage_monitoring_type

adc voltage_monitoring type

Enumerator
ADC_VMONITOR_SINGLE_ORDINARY | voltage_monitoring on a single ordinary channel
ADC_VMONITOR_SINGLE_PREEMPT | voltage_monitoring on a single preempt channel
ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT | voltage_monitoring on a single ordinary or preempt channel
ADC_VMONITOR_ALL_ORDINARY | voltage_monitoring on all ordinary channel
ADC_VMONITOR_ALL_PREEMPT | voltage_monitoring on all preempt channel
ADC_VMONITOR_ALL_ORDINARY_PREEMPT | voltage_monitoring on all ordinary and preempt channel
ADC_VMONITOR_NONE | no channel guarded by the voltage_monitoring

Definition at line 239 of file at32f403_adc.h.


AT32F403 Firmwary Library: adc_base_config_type Struct Reference

Data Fields
adc_base_config_type Struct Reference
AT32F403_periph_driver » ADC » ADC_exported_types

adc base config type More...

#include <at32f403_adc.h>

Data Fields

confirm_state sequence_mode
confirm_state repeat_mode
adc_data_align_type data_align
uint8_t ordinary_channel_length

Detailed Description

adc base config type

Definition at line 253 of file at32f403_adc.h.

Field Documentation

◆ data_align

adc_data_align_type adc_base_config_type::data_align

adc data alignment

Definition at line 257 of file at32f403_adc.h.

Referenced by adc_base_config(), adc_base_default_para_init(), and adc_config().

◆ ordinary_channel_length

uint8_t adc_base_config_type::ordinary_channel_length

adc ordinary channel sequence length

Definition at line 258 of file at32f403_adc.h.

Referenced by adc_base_config(), adc_base_default_para_init(), and adc_config().

◆ repeat_mode

confirm_state adc_base_config_type::repeat_mode

adc repeat mode

Definition at line 256 of file at32f403_adc.h.

Referenced by adc_base_config(), adc_base_default_para_init(), and adc_config().

◆ sequence_mode

confirm_state adc_base_config_type::sequence_mode

adc sequence mode

Definition at line 255 of file at32f403_adc.h.

Referenced by adc_base_config(), adc_base_default_para_init(), and adc_config().

The documentation for this struct was generated from the following file:
  • at32f403_adc.h


AT32F403 Firmwary Library: adc_type Struct Reference

Data Fields
adc_type Struct Reference
AT32F403_periph_driver » ADC » ADC_exported_types

type define adc register all More...

#include <at32f403_adc.h>

Data Fields

union {
__IO uint32_t sts
struct {
__IO uint32_t vmor: 1
__IO uint32_t cce: 1
__IO uint32_t pcce: 1
__IO uint32_t pccs: 1
__IO uint32_t occs: 1
__IO uint32_t reserved1: 27
} sts_bit
};
adc sts register, offset:0x00 More...
union {
__IO uint32_t ctrl1
struct {
__IO uint32_t vmcsel: 5
__IO uint32_t cceien: 1
__IO uint32_t vmorien: 1
__IO uint32_t pcceien: 1
__IO uint32_t sqen: 1
__IO uint32_t vmsgen: 1
__IO uint32_t pcautoen: 1
__IO uint32_t ocpen: 1
__IO uint32_t pcpen: 1
__IO uint32_t ocpcnt: 3
__IO uint32_t mssel: 4
__IO uint32_t reserved1: 2
__IO uint32_t pcvmen: 1
__IO uint32_t ocvmen: 1
__IO uint32_t reserved2: 8
} ctrl1_bit
};
adc ctrl1 register, offset:0x04 More...
union {
__IO uint32_t ctrl2
struct {
__IO uint32_t adcen: 1
__IO uint32_t rpen: 1
__IO uint32_t adcal: 1
__IO uint32_t adcalinit: 1
__IO uint32_t reserved1: 4
__IO uint32_t ocdmaen: 1
__IO uint32_t reserved2: 2
__IO uint32_t dtalign: 1
__IO uint32_t pctesel_l: 3
__IO uint32_t pcten: 1
__IO uint32_t reserved3: 1
__IO uint32_t octesel_l: 3
__IO uint32_t octen: 1
__IO uint32_t pcswtrg: 1
__IO uint32_t ocswtrg: 1
__IO uint32_t itsrven: 1
__IO uint32_t pctesel_h: 1
__IO uint32_t octesel_h: 1
__IO uint32_t reserved4: 6
} ctrl2_bit
};
adc ctrl2 register, offset:0x08 More...
union {
__IO uint32_t spt1
struct {
__IO uint32_t cspt10: 3
__IO uint32_t cspt11: 3
__IO uint32_t cspt12: 3
__IO uint32_t cspt13: 3
__IO uint32_t cspt14: 3
__IO uint32_t cspt15: 3
__IO uint32_t cspt16: 3
__IO uint32_t cspt17: 3
__IO uint32_t reserved1: 8
} spt1_bit
};
adc spt1 register, offset:0x0C More...
union {
__IO uint32_t spt2
struct {
__IO uint32_t cspt0: 3
__IO uint32_t cspt1: 3
__IO uint32_t cspt2: 3
__IO uint32_t cspt3: 3
__IO uint32_t cspt4: 3
__IO uint32_t cspt5: 3
__IO uint32_t cspt6: 3
__IO uint32_t cspt7: 3
__IO uint32_t cspt8: 3
__IO uint32_t cspt9: 3
__IO uint32_t reserved1: 2
} spt2_bit
};
adc spt2 register, offset:0x10 More...
union {
__IO uint32_t pcdto1
struct {
__IO uint32_t pcdto1: 12
__IO uint32_t reserved1: 20
} pcdto1_bit
};
adc pcdto1 register, offset:0x14 More...
union {
__IO uint32_t pcdto2
struct {
__IO uint32_t pcdto2: 12
__IO uint32_t reserved1: 20
} pcdto2_bit
};
adc pcdto2 register, offset:0x18 More...
union {
__IO uint32_t pcdto3
struct {
__IO uint32_t pcdto3: 12
__IO uint32_t reserved1: 20
} pcdto3_bit
};
adc pcdto3 register, offset:0x1C More...
union {
__IO uint32_t pcdto4
struct {
__IO uint32_t pcdto4: 12
__IO uint32_t reserved1: 20
} pcdto4_bit
};
adc pcdto4 register, offset:0x20 More...
union {
__IO uint32_t vmhb
struct {
__IO uint32_t vmhb: 12
__IO uint32_t reserved1: 20
} vmhb_bit
};
adc vmhb register, offset:0x24 More...
union {
__IO uint32_t vmlb
struct {
__IO uint32_t vmlb: 12
__IO uint32_t reserved1: 20
} vmlb_bit
};
adc vmlb register, offset:0x28 More...
union {
__IO uint32_t osq1
struct {
__IO uint32_t osn13: 5
__IO uint32_t osn14: 5
__IO uint32_t osn15: 5
__IO uint32_t osn16: 5
__IO uint32_t oclen: 4
__IO uint32_t reserved1: 8
} osq1_bit
};
adc osq1 register, offset:0x2C More...
union {
__IO uint32_t osq2
struct {
__IO uint32_t osn7: 5
__IO uint32_t osn8: 5
__IO uint32_t osn9: 5
__IO uint32_t osn10: 5
__IO uint32_t osn11: 5
__IO uint32_t osn12: 5
__IO uint32_t reserved1: 2
} osq2_bit
};
adc osq2 register, offset:0x30 More...
union {
__IO uint32_t osq3
struct {
__IO uint32_t osn1: 5
__IO uint32_t osn2: 5
__IO uint32_t osn3: 5
__IO uint32_t osn4: 5
__IO uint32_t osn5: 5
__IO uint32_t osn6: 5
__IO uint32_t reserved1: 2
} osq3_bit
};
adc osq3 register, offset:0x34 More...
union {
__IO uint32_t psq
struct {
__IO uint32_t psn1: 5
__IO uint32_t psn2: 5
__IO uint32_t psn3: 5
__IO uint32_t psn4: 5
__IO uint32_t pclen: 2
__IO uint32_t reserved1: 10
} psq_bit
};
adc psq register, offset:0x38 More...
union {
__IO uint32_t pdt1
struct {
__IO uint32_t pdt1: 16
__IO uint32_t reserved1: 16
} pdt1_bit
};
adc pdt1 register, offset:0x3C More...
union {
__IO uint32_t pdt2
struct {
__IO uint32_t pdt2: 16
__IO uint32_t reserved1: 16
} pdt2_bit
};
adc pdt2 register, offset:0x40 More...
union {
__IO uint32_t pdt3
struct {
__IO uint32_t pdt3: 16
__IO uint32_t reserved1: 16
} pdt3_bit
};
adc pdt3 register, offset:0x44 More...
union {
__IO uint32_t pdt4
struct {
__IO uint32_t pdt4: 16
__IO uint32_t reserved1: 16
} pdt4_bit
};
adc pdt4 register, offset:0x48 More...
union {
__IO uint32_t odt
struct {
__IO uint32_t odt: 16
__IO uint32_t adc2odt: 16
} odt_bit
};
adc odt register, offset:0x4C More...

Detailed Description

type define adc register all

Definition at line 264 of file at32f403_adc.h.

Field Documentation

◆

union { ... } adc_type::@1

adc sts register, offset:0x00

◆

union { ... } adc_type::@11

adc pcdto1 register, offset:0x14

◆

union { ... } adc_type::@13

adc pcdto2 register, offset:0x18

◆

union { ... } adc_type::@15

adc pcdto3 register, offset:0x1C

◆

union { ... } adc_type::@17

adc pcdto4 register, offset:0x20

◆

union { ... } adc_type::@19

adc vmhb register, offset:0x24

◆

union { ... } adc_type::@21

adc vmlb register, offset:0x28

◆

union { ... } adc_type::@23

adc osq1 register, offset:0x2C

◆

union { ... } adc_type::@25

adc osq2 register, offset:0x30

◆

union { ... } adc_type::@27

adc osq3 register, offset:0x34

◆

union { ... } adc_type::@29

adc psq register, offset:0x38

◆

union { ... } adc_type::@3

adc ctrl1 register, offset:0x04

◆

union { ... } adc_type::@31

adc pdt1 register, offset:0x3C

◆

union { ... } adc_type::@33

adc pdt2 register, offset:0x40

◆

union { ... } adc_type::@35

adc pdt3 register, offset:0x44

◆

union { ... } adc_type::@37

adc pdt4 register, offset:0x48

◆

union { ... } adc_type::@39

adc odt register, offset:0x4C

◆

union { ... } adc_type::@5

adc ctrl2 register, offset:0x08

◆

union { ... } adc_type::@7

adc spt1 register, offset:0x0C

◆

union { ... } adc_type::@9

adc spt2 register, offset:0x10

◆ adc2odt

__IO uint32_t adc_type::adc2odt

Definition at line 591 of file at32f403_adc.h.

◆ adcal

__IO uint32_t adc_type::adcal

Definition at line 320 of file at32f403_adc.h.

Referenced by adc_calibration_start(), and adc_calibration_status_get().

◆ adcalinit

__IO uint32_t adc_type::adcalinit

Definition at line 321 of file at32f403_adc.h.

Referenced by adc_calibration_init(), and adc_calibration_init_status_get().

◆ adcen

__IO uint32_t adc_type::adcen

Definition at line 318 of file at32f403_adc.h.

Referenced by adc_enable().

◆ cce

__IO uint32_t adc_type::cce

Definition at line 276 of file at32f403_adc.h.

Referenced by adc_interrupt_flag_get().

◆ cceien

__IO uint32_t adc_type::cceien

Definition at line 293 of file at32f403_adc.h.

Referenced by adc_interrupt_flag_get().

◆ cspt0

__IO uint32_t adc_type::cspt0

Definition at line 368 of file at32f403_adc.h.

◆ cspt1

__IO uint32_t adc_type::cspt1

Definition at line 369 of file at32f403_adc.h.

◆ cspt10

__IO uint32_t adc_type::cspt10

Definition at line 348 of file at32f403_adc.h.

◆ cspt11

__IO uint32_t adc_type::cspt11

Definition at line 349 of file at32f403_adc.h.

◆ cspt12

__IO uint32_t adc_type::cspt12

Definition at line 350 of file at32f403_adc.h.

◆ cspt13

__IO uint32_t adc_type::cspt13

Definition at line 351 of file at32f403_adc.h.

◆ cspt14

__IO uint32_t adc_type::cspt14

Definition at line 352 of file at32f403_adc.h.

◆ cspt15

__IO uint32_t adc_type::cspt15

Definition at line 353 of file at32f403_adc.h.

◆ cspt16

__IO uint32_t adc_type::cspt16

Definition at line 354 of file at32f403_adc.h.

◆ cspt17

__IO uint32_t adc_type::cspt17

Definition at line 355 of file at32f403_adc.h.

◆ cspt2

__IO uint32_t adc_type::cspt2

Definition at line 370 of file at32f403_adc.h.

◆ cspt3

__IO uint32_t adc_type::cspt3

Definition at line 371 of file at32f403_adc.h.

◆ cspt4

__IO uint32_t adc_type::cspt4

Definition at line 372 of file at32f403_adc.h.

◆ cspt5

__IO uint32_t adc_type::cspt5

Definition at line 373 of file at32f403_adc.h.

◆ cspt6

__IO uint32_t adc_type::cspt6

Definition at line 374 of file at32f403_adc.h.

◆ cspt7

__IO uint32_t adc_type::cspt7

Definition at line 375 of file at32f403_adc.h.

◆ cspt8

__IO uint32_t adc_type::cspt8

Definition at line 376 of file at32f403_adc.h.

◆ cspt9

__IO uint32_t adc_type::cspt9

Definition at line 377 of file at32f403_adc.h.

◆ ctrl1

__IO uint32_t adc_type::ctrl1

Definition at line 289 of file at32f403_adc.h.

Referenced by adc_interrupt_enable(), and adc_voltage_monitor_enable().

◆

struct { ... } adc_type::ctrl1_bit

Referenced by adc_base_config(), adc_interrupt_flag_get(), adc_ordinary_part_count_set(), adc_ordinary_part_mode_enable(), adc_preempt_auto_mode_enable(), adc_preempt_part_mode_enable(), adc_voltage_monitor_enable(), and adc_voltage_monitor_single_channel_select().

◆ ctrl2

__IO uint32_t adc_type::ctrl2

Definition at line 315 of file at32f403_adc.h.

◆

struct { ... } adc_type::ctrl2_bit

Referenced by adc_base_config(), adc_calibration_init(), adc_calibration_init_status_get(), adc_calibration_start(), adc_calibration_status_get(), adc_dma_mode_enable(), adc_enable(), adc_ordinary_conversion_trigger_set(), adc_ordinary_software_trigger_enable(), adc_ordinary_software_trigger_status_get(), adc_preempt_conversion_trigger_set(), adc_preempt_software_trigger_enable(), and adc_preempt_software_trigger_status_get().

◆ dtalign

__IO uint32_t adc_type::dtalign

Definition at line 325 of file at32f403_adc.h.

Referenced by adc_base_config().

◆ itsrven

__IO uint32_t adc_type::itsrven

Definition at line 333 of file at32f403_adc.h.

◆ mssel

__IO uint32_t adc_type::mssel

Definition at line 302 of file at32f403_adc.h.

◆ occs

__IO uint32_t adc_type::occs

Definition at line 279 of file at32f403_adc.h.

◆ ocdmaen

__IO uint32_t adc_type::ocdmaen

Definition at line 323 of file at32f403_adc.h.

Referenced by adc_dma_mode_enable().

◆ oclen

__IO uint32_t adc_type::oclen

Definition at line 472 of file at32f403_adc.h.

Referenced by adc_base_config().

◆ ocpcnt

__IO uint32_t adc_type::ocpcnt

Definition at line 301 of file at32f403_adc.h.

Referenced by adc_ordinary_part_count_set().

◆ ocpen

__IO uint32_t adc_type::ocpen

Definition at line 299 of file at32f403_adc.h.

Referenced by adc_ordinary_part_mode_enable().

◆ ocswtrg

__IO uint32_t adc_type::ocswtrg

Definition at line 332 of file at32f403_adc.h.

Referenced by adc_ordinary_software_trigger_enable(), and adc_ordinary_software_trigger_status_get().

◆ octen

__IO uint32_t adc_type::octen

Definition at line 330 of file at32f403_adc.h.

Referenced by adc_ordinary_conversion_trigger_set().

◆ octesel_h

__IO uint32_t adc_type::octesel_h

Definition at line 335 of file at32f403_adc.h.

Referenced by adc_ordinary_conversion_trigger_set().

◆ octesel_l

__IO uint32_t adc_type::octesel_l

Definition at line 329 of file at32f403_adc.h.

Referenced by adc_ordinary_conversion_trigger_set().

◆ ocvmen

__IO uint32_t adc_type::ocvmen

Definition at line 305 of file at32f403_adc.h.

Referenced by adc_voltage_monitor_enable().

◆ odt

__IO uint32_t adc_type::odt

Definition at line 587 of file at32f403_adc.h.

Referenced by adc_ordinary_conversion_data_get().

◆

struct { ... } adc_type::odt_bit

Referenced by adc_ordinary_conversion_data_get().

◆ osn1

__IO uint32_t adc_type::osn1

Definition at line 503 of file at32f403_adc.h.

◆ osn10

__IO uint32_t adc_type::osn10

Definition at line 488 of file at32f403_adc.h.

◆ osn11

__IO uint32_t adc_type::osn11

Definition at line 489 of file at32f403_adc.h.

◆ osn12

__IO uint32_t adc_type::osn12

Definition at line 490 of file at32f403_adc.h.

◆ osn13

__IO uint32_t adc_type::osn13

Definition at line 468 of file at32f403_adc.h.

◆ osn14

__IO uint32_t adc_type::osn14

Definition at line 469 of file at32f403_adc.h.

◆ osn15

__IO uint32_t adc_type::osn15

Definition at line 470 of file at32f403_adc.h.

◆ osn16

__IO uint32_t adc_type::osn16

Definition at line 471 of file at32f403_adc.h.

◆ osn2

__IO uint32_t adc_type::osn2

Definition at line 504 of file at32f403_adc.h.

◆ osn3

__IO uint32_t adc_type::osn3

Definition at line 505 of file at32f403_adc.h.

◆ osn4

__IO uint32_t adc_type::osn4

Definition at line 506 of file at32f403_adc.h.

◆ osn5

__IO uint32_t adc_type::osn5

Definition at line 507 of file at32f403_adc.h.

◆ osn6

__IO uint32_t adc_type::osn6

Definition at line 508 of file at32f403_adc.h.

◆ osn7

__IO uint32_t adc_type::osn7

Definition at line 485 of file at32f403_adc.h.

◆ osn8

__IO uint32_t adc_type::osn8

Definition at line 486 of file at32f403_adc.h.

◆ osn9

__IO uint32_t adc_type::osn9

Definition at line 487 of file at32f403_adc.h.

◆ osq1

__IO uint32_t adc_type::osq1

Definition at line 465 of file at32f403_adc.h.

Referenced by adc_ordinary_channel_set().

◆

struct { ... } adc_type::osq1_bit

Referenced by adc_base_config().

◆ osq2

__IO uint32_t adc_type::osq2

Definition at line 482 of file at32f403_adc.h.

Referenced by adc_ordinary_channel_set().

◆

struct { ... } adc_type::osq2_bit

◆ osq3

__IO uint32_t adc_type::osq3

Definition at line 500 of file at32f403_adc.h.

Referenced by adc_ordinary_channel_set().

◆

struct { ... } adc_type::osq3_bit

◆ pcautoen

__IO uint32_t adc_type::pcautoen

Definition at line 298 of file at32f403_adc.h.

Referenced by adc_preempt_auto_mode_enable().

◆ pcce

__IO uint32_t adc_type::pcce

Definition at line 277 of file at32f403_adc.h.

Referenced by adc_interrupt_flag_get().

◆ pcceien

__IO uint32_t adc_type::pcceien

Definition at line 295 of file at32f403_adc.h.

Referenced by adc_interrupt_flag_get().

◆ pccs

__IO uint32_t adc_type::pccs

Definition at line 278 of file at32f403_adc.h.

◆ pcdto1

__IO uint32_t adc_type::pcdto1

Definition at line 387 of file at32f403_adc.h.

Referenced by adc_preempt_offset_value_set().

◆

struct { ... } adc_type::pcdto1_bit

Referenced by adc_preempt_offset_value_set().

◆ pcdto2

__IO uint32_t adc_type::pcdto2

Definition at line 400 of file at32f403_adc.h.

Referenced by adc_preempt_offset_value_set().

◆

struct { ... } adc_type::pcdto2_bit

Referenced by adc_preempt_offset_value_set().

◆ pcdto3

__IO uint32_t adc_type::pcdto3

Definition at line 413 of file at32f403_adc.h.

Referenced by adc_preempt_offset_value_set().

◆

struct { ... } adc_type::pcdto3_bit

Referenced by adc_preempt_offset_value_set().

◆ pcdto4

__IO uint32_t adc_type::pcdto4

Definition at line 426 of file at32f403_adc.h.

Referenced by adc_preempt_offset_value_set().

◆

struct { ... } adc_type::pcdto4_bit

Referenced by adc_preempt_offset_value_set().

◆ pclen

__IO uint32_t adc_type::pclen

Definition at line 525 of file at32f403_adc.h.

Referenced by adc_preempt_channel_length_set(), and adc_preempt_channel_set().

◆ pcpen

__IO uint32_t adc_type::pcpen

Definition at line 300 of file at32f403_adc.h.

Referenced by adc_preempt_part_mode_enable().

◆ pcswtrg

__IO uint32_t adc_type::pcswtrg

Definition at line 331 of file at32f403_adc.h.

Referenced by adc_preempt_software_trigger_enable(), and adc_preempt_software_trigger_status_get().

◆ pcten

__IO uint32_t adc_type::pcten

Definition at line 327 of file at32f403_adc.h.

Referenced by adc_preempt_conversion_trigger_set().

◆ pctesel_h

__IO uint32_t adc_type::pctesel_h

Definition at line 334 of file at32f403_adc.h.

Referenced by adc_preempt_conversion_trigger_set().

◆ pctesel_l

__IO uint32_t adc_type::pctesel_l

Definition at line 326 of file at32f403_adc.h.

Referenced by adc_preempt_conversion_trigger_set().

◆ pcvmen

__IO uint32_t adc_type::pcvmen

Definition at line 304 of file at32f403_adc.h.

Referenced by adc_voltage_monitor_enable().

◆ pdt1

__IO uint32_t adc_type::pdt1

Definition at line 535 of file at32f403_adc.h.

Referenced by adc_preempt_conversion_data_get().

◆

struct { ... } adc_type::pdt1_bit

Referenced by adc_preempt_conversion_data_get().

◆ pdt2

__IO uint32_t adc_type::pdt2

Definition at line 548 of file at32f403_adc.h.

Referenced by adc_preempt_conversion_data_get().

◆

struct { ... } adc_type::pdt2_bit

Referenced by adc_preempt_conversion_data_get().

◆ pdt3

__IO uint32_t adc_type::pdt3

Definition at line 561 of file at32f403_adc.h.

Referenced by adc_preempt_conversion_data_get().

◆

struct { ... } adc_type::pdt3_bit

Referenced by adc_preempt_conversion_data_get().

◆ pdt4

__IO uint32_t adc_type::pdt4

Definition at line 574 of file at32f403_adc.h.

Referenced by adc_preempt_conversion_data_get().

◆

struct { ... } adc_type::pdt4_bit

Referenced by adc_preempt_conversion_data_get().

◆ psn1

__IO uint32_t adc_type::psn1

Definition at line 521 of file at32f403_adc.h.

Referenced by adc_preempt_channel_set().

◆ psn2

__IO uint32_t adc_type::psn2

Definition at line 522 of file at32f403_adc.h.

Referenced by adc_preempt_channel_set().

◆ psn3

__IO uint32_t adc_type::psn3

Definition at line 523 of file at32f403_adc.h.

Referenced by adc_preempt_channel_set().

◆ psn4

__IO uint32_t adc_type::psn4

Definition at line 524 of file at32f403_adc.h.

Referenced by adc_preempt_channel_set().

◆ psq

__IO uint32_t adc_type::psq

Definition at line 518 of file at32f403_adc.h.

◆

struct { ... } adc_type::psq_bit

Referenced by adc_preempt_channel_length_set(), and adc_preempt_channel_set().

◆ reserved1

__IO uint32_t adc_type::reserved1

Definition at line 280 of file at32f403_adc.h.

◆ reserved2

__IO uint32_t adc_type::reserved2

Definition at line 306 of file at32f403_adc.h.

◆ reserved3

__IO uint32_t adc_type::reserved3

Definition at line 328 of file at32f403_adc.h.

◆ reserved4

__IO uint32_t adc_type::reserved4

Definition at line 336 of file at32f403_adc.h.

◆ rpen

__IO uint32_t adc_type::rpen

Definition at line 319 of file at32f403_adc.h.

Referenced by adc_base_config().

◆ spt1

__IO uint32_t adc_type::spt1

Definition at line 345 of file at32f403_adc.h.

Referenced by adc_ordinary_channel_set(), and adc_preempt_channel_set().

◆

struct { ... } adc_type::spt1_bit

◆ spt2

__IO uint32_t adc_type::spt2

Definition at line 365 of file at32f403_adc.h.

Referenced by adc_ordinary_channel_set(), and adc_preempt_channel_set().

◆

struct { ... } adc_type::spt2_bit

◆ sqen

__IO uint32_t adc_type::sqen

Definition at line 296 of file at32f403_adc.h.

Referenced by adc_base_config().

◆ sts

__IO uint32_t adc_type::sts

Definition at line 272 of file at32f403_adc.h.

Referenced by adc_flag_clear(), and adc_flag_get().

◆

struct { ... } adc_type::sts_bit

Referenced by adc_interrupt_flag_get().

◆ vmcsel

__IO uint32_t adc_type::vmcsel

Definition at line 292 of file at32f403_adc.h.

Referenced by adc_voltage_monitor_single_channel_select().

◆ vmhb

__IO uint32_t adc_type::vmhb

Definition at line 439 of file at32f403_adc.h.

Referenced by adc_voltage_monitor_threshold_value_set().

◆

struct { ... } adc_type::vmhb_bit

Referenced by adc_voltage_monitor_threshold_value_set().

◆ vmlb

__IO uint32_t adc_type::vmlb

Definition at line 452 of file at32f403_adc.h.

Referenced by adc_voltage_monitor_threshold_value_set().

◆

struct { ... } adc_type::vmlb_bit

Referenced by adc_voltage_monitor_threshold_value_set().

◆ vmor

__IO uint32_t adc_type::vmor

Definition at line 275 of file at32f403_adc.h.

Referenced by adc_interrupt_flag_get().

◆ vmorien

__IO uint32_t adc_type::vmorien

Definition at line 294 of file at32f403_adc.h.

Referenced by adc_interrupt_flag_get().

◆ vmsgen

__IO uint32_t adc_type::vmsgen

Definition at line 297 of file at32f403_adc.h.

Referenced by adc_voltage_monitor_enable().

The documentation for this struct was generated from the following file:
  • at32f403_adc.h


AT32F403 Firmwary Library: ADC_exported_functions

Functions
ADC_exported_functions
AT32F403_periph_driver » ADC

Functions

void | adc_reset (adc_type *adc_x)
deinitialize the adc peripheral registers to their default reset values. More...
void | adc_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral. More...
void | adc_combine_mode_select (adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral. More...
void | adc_base_default_para_init (adc_base_config_type *adc_base_struct)
adc base default para init. More...
void | adc_base_config (adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters. More...
void | adc_dma_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer. More...
void | adc_interrupt_enable (adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts. More...
void | adc_calibration_init (adc_type *adc_x)
initialize calibration register of the specified adc peripheral. More...
flag_status | adc_calibration_init_status_get (adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral. More...
void | adc_calibration_start (adc_type *adc_x)
start calibration process of the specified adc peripheral. More...
flag_status | adc_calibration_status_get (adc_type *adc_x)
get calibration status of the specified adc peripheral. More...
void | adc_voltage_monitor_enable (adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified adc peripheral. More...
void | adc_voltage_monitor_threshold_value_set (adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
set voltage monitoring's high and low thresholds value of the specified adc peripheral. More...
void | adc_voltage_monitor_single_channel_select (adc_type *adc_x, adc_channel_select_type adc_channel)
select the voltage monitoring's channel of the specified adc peripheral. More...
void | adc_ordinary_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_preempt_channel_length_set (adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral. More...
void | adc_preempt_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_ordinary_conversion_trigger_set (adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_conversion_trigger_set (adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_offset_value_set (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value)
set preempt channel's conversion value offset of the specified adc peripheral. More...
void | adc_ordinary_part_count_set (adc_type *adc_x, uint8_t adc_channel_count)
set partitioned mode channel count of the specified adc peripheral. More...
void | adc_ordinary_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on ordinary channel of the specified adc peripheral. More...
void | adc_preempt_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on preempt channel of the specified adc peripheral. More...
void | adc_preempt_auto_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable automatic preempt group conversion of the specified adc peripheral. More...
void | adc_tempersensor_vintrv_enable (confirm_state new_state)
enable or disable the temperature sensor and vintrv channel. More...
void | adc_ordinary_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral. More...
flag_status | adc_ordinary_software_trigger_status_get (adc_type *adc_x)
get ordinary software start conversion status of the specified adc peripheral. More...
void | adc_preempt_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable preempt software start conversion of the specified adc peripheral. More...
flag_status | adc_preempt_software_trigger_status_get (adc_type *adc_x)
get preempt software start conversion status of the specified adc peripheral. More...
uint16_t | adc_ordinary_conversion_data_get (adc_type *adc_x)
return the last conversion data for ordinary channel of the specified adc peripheral. More...
uint32_t | adc_combine_ordinary_conversion_data_get (void)
return the last conversion data for ordinary channel of combine adc(adc1 and adc2). More...
uint16_t | adc_preempt_conversion_data_get (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral. More...
flag_status | adc_flag_get (adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral. More...
flag_status | adc_interrupt_flag_get (adc_type *adc_x, uint8_t adc_flag)
get interrupt flag of the specified adc peripheral. More...
void | adc_flag_clear (adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral. More...

Detailed Description

Function Documentation

◆ adc_base_config()

void adc_base_config | ( | adc_type * | adc_x,
 |  | adc_base_config_type * | adc_base_struct
 | ) |  |

initialize the adc peripheral according to the specified parameters.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
sequence_mode | set the state of adc sequence mode. this parameter can be:TRUE or FALSE
repeat_mode | set the state of adc repeat conversion mode. this parameter can be:TRUE or FALSE
data_align set the state of adc data alignment. this parameter can be one of the following values:
  • ADC_RIGHT_ALIGNMENT
  • ADC_LEFT_ALIGNMENT
ordinary_channel_length configure the adc ordinary channel sequence length. this parameter can be:
  • (0x1~0x10)
Return values
none

Definition at line 146 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_base_default_para_init()

void adc_base_default_para_init ( adc_base_config_type * adc_base_struct )

adc base default para init.

Parameters
sequence_mode | set the state of adc sequence mode. this parameter can be:TRUE or FALSE
repeat_mode | set the state of adc repeat conversion mode. this parameter can be:TRUE or FALSE
data_align set the state of adc data alignment. this parameter can be one of the following values:
  • ADC_RIGHT_ALIGNMENT
  • ADC_LEFT_ALIGNMENT
ordinary_channel_length configure the adc ordinary channel sequence length. this parameter can be:
  • (0x1~0x10)
Return values
none

Definition at line 120 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_init()

void adc_calibration_init ( adc_type * adc_x )

initialize calibration register of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
none

Definition at line 202 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_init_status_get()

flag_status adc_calibration_init_status_get ( adc_type * adc_x )

get calibration register's initialize status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of reset calibration register status(SET or RESET).

Definition at line 214 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_start()

void adc_calibration_start ( adc_type * adc_x )

start calibration process of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
none

Definition at line 233 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_status_get()

flag_status adc_calibration_status_get ( adc_type * adc_x )

get calibration status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of calibration status(SET or RESET).

Definition at line 245 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_combine_mode_select()

void adc_combine_mode_select ( adc_combine_mode_type combine_mode )

select combine mode of the specified adc peripheral.

Parameters
combine_mode select the adc combine mode. this parameter can be one of the following values:
  • ADC_INDEPENDENT_MODE
  • ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE
  • ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE
  • ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE
  • ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE
  • ADC_PREEMPT_SMLT_ONLY_MODE
  • ADC_ORDINARY_SMLT_ONLY_MODE
  • ADC_ORDINARY_SHORTSHIFT_ONLY_MODE
  • ADC_ORDINARY_LONGSHIFT_ONLY_MODE
  • ADC_PREEMPT_INTERLTRIG_ONLY_MODE note:these bits are reserved in adc2 and adc3
Return values
none

Definition at line 100 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_combine_ordinary_conversion_data_get()

uint32_t adc_combine_ordinary_conversion_data_get ( void )

return the last conversion data for ordinary channel of combine adc(adc1 and adc2).

Return values
the last conversion data for ordinary channel.

Definition at line 732 of file at32f403_adc.c.

◆ adc_dma_mode_enable()

void adc_dma_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the adc dma transfer.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC3. note:this bit is reserved in adc2
new_state | new state of the adc dma transfer. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 164 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_enable()

void adc_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of a/d converter. this parameter can be: TRUE or FALSE. note:after adc ready,user set adcen bit will cause ordinary conversion
Return values
none

Definition at line 78 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_flag_clear()

void adc_flag_clear | ( | adc_type * | adc_x,
 |  | uint32_t | adc_flag
 | ) |  |

clear flag of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_flag select the adc flag. this parameter can be any combination of the following values:
  • ADC_VMOR_FLAG
  • ADC_CCE_FLAG(also can clear by reading the adc_x->odt)
  • ADC_PCCE_FLAG
  • ADC_PCCS_FLAG
  • ADC_OCCS_FLAG
Return values
none

Definition at line 857 of file at32f403_adc.c.

Referenced by ADC1_2_IRQHandler().

◆ adc_flag_get()

flag_status adc_flag_get | ( | adc_type * | adc_x,
 |  | uint8_t | adc_flag
 | ) |  |

get flag of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_flag select the adc flag. this parameter can be one of the following values:
  • ADC_VMOR_FLAG
  • ADC_CCE_FLAG
  • ADC_PCCE_FLAG
  • ADC_PCCS_FLAG(no interrupt associated)
  • ADC_OCCS_FLAG(no interrupt associated)
Return values
the new state of adc flag status(SET or RESET).

Definition at line 787 of file at32f403_adc.c.

Referenced by ADC1_2_IRQHandler().

◆ adc_interrupt_enable()

void adc_interrupt_enable | ( | adc_type * | adc_x,
 |  | uint32_t | adc_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified adc interrupts.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_int specifies the adc interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • ADC_VMOR_INT
  • ADC_CCE_INT
  • ADC_PCCE_INT
new_state | new state of the specified adc interrupts. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 183 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_interrupt_flag_get()

flag_status adc_interrupt_flag_get | ( | adc_type * | adc_x,
 |  | uint8_t | adc_flag
 | ) |  |

get interrupt flag of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_flag select the adc flag. this parameter can be one of the following values:
  • ADC_VMOR_FLAG
  • ADC_CCE_FLAG
  • ADC_PCCE_FLAG
Return values
the new state of adc flag status(SET or RESET).

< voltage monitoring out of range flag

< channels conversion end flag

< preempt channels conversion end flag

Definition at line 814 of file at32f403_adc.c.

◆ adc_ordinary_channel_set()

void adc_ordinary_channel_set | ( | adc_type * | adc_x,
 |  | adc_channel_select_type | adc_channel,
 |  | uint8_t | adc_sequence,
 |  | adc_sampletime_select_type | adc_sampletime
 | ) |  |

set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel select the channel. this parameter can be one of the following values:
  • ADC_CHANNEL_0 - ADC_CHANNEL_1 - ADC_CHANNEL_2 - ADC_CHANNEL_3
  • ADC_CHANNEL_4 - ADC_CHANNEL_5 - ADC_CHANNEL_6 - ADC_CHANNEL_7
  • ADC_CHANNEL_8 - ADC_CHANNEL_9 - ADC_CHANNEL_10 - ADC_CHANNEL_11
  • ADC_CHANNEL_12 - ADC_CHANNEL_13 - ADC_CHANNEL_14 - ADC_CHANNEL_15
  • ADC_CHANNEL_16 - ADC_CHANNEL_17
adc_sequence set rank in the ordinary group sequencer. this parameter must be:
  • between 1 to 16
adc_sampletime set the sampletime of adc channel. this parameter can be one of the following values:
  • ADC_SAMPLETIME_1_5
  • ADC_SAMPLETIME_7_5
  • ADC_SAMPLETIME_13_5
  • ADC_SAMPLETIME_28_5
  • ADC_SAMPLETIME_41_5
  • ADC_SAMPLETIME_55_5
  • ADC_SAMPLETIME_71_5
  • ADC_SAMPLETIME_239_5
Return values
none

Definition at line 346 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_conversion_data_get()

uint16_t adc_ordinary_conversion_data_get ( adc_type * adc_x )

return the last conversion data for ordinary channel of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the last conversion data for ordinary channel.

Definition at line 723 of file at32f403_adc.c.

◆ adc_ordinary_conversion_trigger_set()

void adc_ordinary_conversion_trigger_set | ( | adc_type * | adc_x,
 |  | adc_ordinary_trig_select_type | adc_ordinary_trig,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the ordinary channel's external trigger and set external trigger event of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_ordinary_trig select the external trigger event. this parameter can be one of the following values: adc1 & adc2
  • ADC12_ORDINARY_TRIG_TMR1CH1 - ADC12_ORDINARY_TRIG_TMR1CH2 - ADC12_ORDINARY_TRIG_TMR1CH3 - ADC12_ORDINARY_TRIG_TMR2CH2
  • ADC12_ORDINARY_TRIG_TMR3TRGOUT - ADC12_ORDINARY_TRIG_TMR4CH4 - ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT - ADC12_ORDINARY_TRIG_SOFTWARE
  • ADC12_ORDINARY_TRIG_TMR15CH1 - ADC12_ORDINARY_TRIG_TMR15CH2 - ADC12_ORDINARY_TRIG_TMR15CH3 - ADC12_ORDINARY_TRIG_TMR15CH4
  • ADC12_ORDINARY_TRIG_TMR15TRGOUT - ADC12_ORDINARY_TRIG_TMR1TRGOUT - ADC12_ORDINARY_TRIG_TMR8CH1 - ADC12_ORDINARY_TRIG_TMR8CH2 adc3
  • ADC3_ORDINARY_TRIG_TMR3CH1 - ADC3_ORDINARY_TRIG_TMR2CH3 - ADC3_ORDINARY_TRIG_TMR1CH3 - ADC3_ORDINARY_TRIG_TMR8CH1
  • ADC3_ORDINARY_TRIG_TMR8TRGOUT - ADC3_ORDINARY_TRIG_TMR5CH1 - ADC3_ORDINARY_TRIG_TMR5CH3 - ADC3_ORDINARY_TRIG_SOFTWARE
  • ADC3_ORDINARY_TRIG_TMR15CH1 - ADC3_ORDINARY_TRIG_TMR15CH2 - ADC3_ORDINARY_TRIG_TMR15CH3 - ADC3_ORDINARY_TRIG_TMR15CH4
  • ADC3_ORDINARY_TRIG_TMR15TRGOUT - ADC3_ORDINARY_TRIG_TMR1TRGOUT - ADC3_ORDINARY_TRIG_TMR1CH1 - ADC3_ORDINARY_TRIG_TMR8CH3
new_state | new state of ordinary channel's external trigger. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 490 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_part_count_set()

void adc_ordinary_part_count_set | ( | adc_type * | adc_x,
 |  | uint8_t | adc_channel_count
 | ) |  |

set partitioned mode channel count of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel_count configure the adc partitioned mode channel count. this parameter can be:
  • (0x1~0x8)
Return values
none

Definition at line 590 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_part_mode_enable()

void adc_ordinary_part_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the partitioned mode on ordinary channel of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of ordinary channel's partitioned mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 605 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_software_trigger_enable()

void adc_ordinary_software_trigger_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable ordinary software start conversion of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of ordinary software start conversion. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 659 of file at32f403_adc.c.

Referenced by main().

◆ adc_ordinary_software_trigger_status_get()

flag_status adc_ordinary_software_trigger_status_get ( adc_type * adc_x )

get ordinary software start conversion status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of ordinary software start conversion status(SET or RESET).

Definition at line 671 of file at32f403_adc.c.

◆ adc_preempt_auto_mode_enable()

void adc_preempt_auto_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable automatic preempt group conversion of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of automatic preempt group conversion. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 633 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_channel_length_set()

void adc_preempt_channel_length_set | ( | adc_type * | adc_x,
 |  | uint8_t | adc_channel_lenght
 | ) |  |

set preempt channel lenghth of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel_lenght set the adc preempt channel lenghth. this parameter can be:
  • (0x1~0x4)
Return values
none

Definition at line 397 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_channel_set()

void adc_preempt_channel_set | ( | adc_type * | adc_x,
 |  | adc_channel_select_type | adc_channel,
 |  | uint8_t | adc_sequence,
 |  | adc_sampletime_select_type | adc_sampletime
 | ) |  |

configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel select the channel. this parameter can be one of the following values:
  • ADC_CHANNEL_0 - ADC_CHANNEL_1 - ADC_CHANNEL_2 - ADC_CHANNEL_3
  • ADC_CHANNEL_4 - ADC_CHANNEL_5 - ADC_CHANNEL_6 - ADC_CHANNEL_7
  • ADC_CHANNEL_8 - ADC_CHANNEL_9 - ADC_CHANNEL_10 - ADC_CHANNEL_11
  • ADC_CHANNEL_12 - ADC_CHANNEL_13 - ADC_CHANNEL_14 - ADC_CHANNEL_15
  • ADC_CHANNEL_16 - ADC_CHANNEL_17
adc_sequence set rank in the preempt group sequencer. this parameter must be:
  • between 1 to 4
adc_sampletime config the sampletime of adc channel. this parameter can be one of the following values:
  • ADC_SAMPLETIME_1_5
  • ADC_SAMPLETIME_7_5
  • ADC_SAMPLETIME_13_5
  • ADC_SAMPLETIME_28_5
  • ADC_SAMPLETIME_41_5
  • ADC_SAMPLETIME_55_5
  • ADC_SAMPLETIME_71_5
  • ADC_SAMPLETIME_239_5
Return values
none

Definition at line 429 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_conversion_data_get()

uint16_t adc_preempt_conversion_data_get | ( | adc_type * | adc_x,
 |  | adc_preempt_channel_type | adc_preempt_channel
 | ) |  |

return the conversion data for selection preempt channel of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_preempt_channel select the preempt channel. this parameter can be one of the following values:
  • ADC_PREEMPTED_CHANNEL_1
  • ADC_PREEMPTED_CHANNEL_2
  • ADC_PREEMPTED_CHANNEL_3
  • ADC_PREEMPTED_CHANNEL_4
Return values
the conversion data for selection preempt channel.

Definition at line 750 of file at32f403_adc.c.

Referenced by ADC1_2_IRQHandler().

◆ adc_preempt_conversion_trigger_set()

void adc_preempt_conversion_trigger_set | ( | adc_type * | adc_x,
 |  | adc_preempt_trig_select_type | adc_preempt_trig,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the preempt channel's external trigger and set external trigger event of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_preempt_trig select the external trigger event. this parameter can be one of the following values: adc1 & adc2
  • ADC12_PREEMPT_TRIG_TMR1TRGOUT - ADC12_PREEMPT_TRIG_TMR1CH4 - ADC12_PREEMPT_TRIG_TMR2TRGOUT - ADC12_PREEMPT_TRIG_TMR2CH1
  • ADC12_PREEMPT_TRIG_TMR3CH4 - ADC12_PREEMPT_TRIG_TMR4TRGOUT - ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 - ADC12_PREEMPT_TRIG_SOFTWARE
  • ADC12_PREEMPT_TRIG_TMR15CH1 - ADC12_PREEMPT_TRIG_TMR15CH2 - ADC12_PREEMPT_TRIG_TMR15CH3 - ADC12_PREEMPT_TRIG_TMR15CH4
  • ADC12_PREEMPT_TRIG_TMR15TRGOUT - ADC12_PREEMPT_TRIG_TMR1CH1 - ADC12_PREEMPT_TRIG_TMR8CH1 - ADC12_PREEMPT_TRIG_TMR8TRGOUT adc3
  • ADC3_PREEMPT_TRIG_TMR1TRGOUT - ADC3_PREEMPT_TRIG_TMR1CH4 - ADC3_PREEMPT_TRIG_TMR4CH3 - ADC3_PREEMPT_TRIG_TMR8CH2
  • ADC3_PREEMPT_TRIG_TMR8CH4 - ADC3_PREEMPT_TRIG_TMR5TRGOUT - ADC3_PREEMPT_TRIG_TMR5CH4 - ADC3_PREEMPT_TRIG_SOFTWARE
  • ADC3_PREEMPT_TRIG_TMR15CH1 - ADC3_PREEMPT_TRIG_TMR15CH2 - ADC3_PREEMPT_TRIG_TMR15CH3 - ADC3_PREEMPT_TRIG_TMR15CH4
  • ADC3_PREEMPT_TRIG_TMR15TRGOUT - ADC3_PREEMPT_TRIG_TMR1CH1 - ADC3_PREEMPT_TRIG_TMR1CH2 - ADC3_PREEMPT_TRIG_TMR8TRGOUT
new_state | new state of preempt channel's external trigger. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 527 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_offset_value_set()

void adc_preempt_offset_value_set | ( | adc_type * | adc_x,
 |  | adc_preempt_channel_type | adc_preempt_channel,
 |  | uint16_t | adc_offset_value
 | ) |  |

set preempt channel's conversion value offset of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_preempt_channel select the preempt channel. this parameter can be one of the following values:
  • ADC_PREEMPT_CHANNEL_1
  • ADC_PREEMPT_CHANNEL_2
  • ADC_PREEMPT_CHANNEL_3
  • ADC_PREEMPT_CHANNEL_4
adc_offset_value set the adc preempt channel's conversion value offset. this parameter can be:
  • (0x000~0xFFF)
Return values
none

Definition at line 559 of file at32f403_adc.c.

◆ adc_preempt_part_mode_enable()

void adc_preempt_part_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the partitioned mode on preempt channel of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of preempt channel's partitioned mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 619 of file at32f403_adc.c.

◆ adc_preempt_software_trigger_enable()

void adc_preempt_software_trigger_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable preempt software start conversion of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of preempt software start conversion. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 692 of file at32f403_adc.c.

◆ adc_preempt_software_trigger_status_get()

flag_status adc_preempt_software_trigger_status_get ( adc_type * adc_x )

get preempt software start conversion status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of preempt software start conversion status(SET or RESET).

Definition at line 704 of file at32f403_adc.c.

◆ adc_reset()

void adc_reset ( adc_type * adc_x )

deinitialize the adc peripheral registers to their default reset values.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
none

Definition at line 49 of file at32f403_adc.c.

◆ adc_tempersensor_vintrv_enable()

void adc_tempersensor_vintrv_enable ( confirm_state new_state )

enable or disable the temperature sensor and vintrv channel.

Parameters
new_state new state of Internal temperature sensor and vintrv. this parameter can be: TRUE or FALSE. note:this bit is present only in adc1
Return values
none

Definition at line 645 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_voltage_monitor_enable()

void adc_voltage_monitor_enable | ( | adc_type * | adc_x,
 |  | adc_voltage_monitoring_type | adc_voltage_monitoring
 | ) |  |

enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_voltage_monitoring choose the adc_voltage_monitoring config. this parameter can be one of the following values:
  • ADC_VMONITOR_SINGLE_ORDINARY
  • ADC_VMONITOR_SINGLE_PREEMPT
  • ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT
  • ADC_VMONITOR_ALL_ORDINARY
  • ADC_VMONITOR_ALL_PREEMPT
  • ADC_VMONITOR_ALL_ORDINARY_PREEMPT
  • ADC_VMONITOR_NONE
Return values
none

Definition at line 273 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_voltage_monitor_single_channel_select()

void adc_voltage_monitor_single_channel_select | ( | adc_type * | adc_x,
 |  | adc_channel_select_type | adc_channel
 | ) |  |

select the voltage monitoring's channel of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel select the channel. this parameter can be one of the following values:
  • ADC_CHANNEL_0 - ADC_CHANNEL_1 - ADC_CHANNEL_2 - ADC_CHANNEL_3
  • ADC_CHANNEL_4 - ADC_CHANNEL_5 - ADC_CHANNEL_6 - ADC_CHANNEL_7
  • ADC_CHANNEL_8 - ADC_CHANNEL_9 - ADC_CHANNEL_10 - ADC_CHANNEL_11
  • ADC_CHANNEL_12 - ADC_CHANNEL_13 - ADC_CHANNEL_14 - ADC_CHANNEL_15
  • ADC_CHANNEL_16 - ADC_CHANNEL_17
Return values
none

Definition at line 314 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_voltage_monitor_threshold_value_set()

void adc_voltage_monitor_threshold_value_set | ( | adc_type * | adc_x,
 |  | uint16_t | adc_high_threshold,
 |  | uint16_t | adc_low_threshold
 | ) |  |

set voltage monitoring's high and low thresholds value of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_high_threshold voltage monitoring's high thresholds value. this parameter can be:
  • (0x000~0xFFF)
adc_low_threshold voltage monitoring's low thresholds value. this parameter can be:
  • (0x000~0xFFF)
Return values
none

Definition at line 294 of file at32f403_adc.c.

Referenced by adc_config().


AT32F403 Firmwary Library: ADC_private_functions

Functions
ADC_private_functions
AT32F403_periph_driver » ADC

Functions

void | adc_reset (adc_type *adc_x)
deinitialize the adc peripheral registers to their default reset values. More...
void | adc_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral. More...
void | adc_combine_mode_select (adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral. More...
void | adc_base_default_para_init (adc_base_config_type *adc_base_struct)
adc base default para init. More...
void | adc_base_config (adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters. More...
void | adc_dma_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer. More...
void | adc_interrupt_enable (adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts. More...
void | adc_calibration_init (adc_type *adc_x)
initialize calibration register of the specified adc peripheral. More...
flag_status | adc_calibration_init_status_get (adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral. More...
void | adc_calibration_start (adc_type *adc_x)
start calibration process of the specified adc peripheral. More...
flag_status | adc_calibration_status_get (adc_type *adc_x)
get calibration status of the specified adc peripheral. More...
void | adc_voltage_monitor_enable (adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified adc peripheral. More...
void | adc_voltage_monitor_threshold_value_set (adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
set voltage monitoring's high and low thresholds value of the specified adc peripheral. More...
void | adc_voltage_monitor_single_channel_select (adc_type *adc_x, adc_channel_select_type adc_channel)
select the voltage monitoring's channel of the specified adc peripheral. More...
void | adc_ordinary_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_preempt_channel_length_set (adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral. More...
void | adc_preempt_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_ordinary_conversion_trigger_set (adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_conversion_trigger_set (adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_offset_value_set (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value)
set preempt channel's conversion value offset of the specified adc peripheral. More...
void | adc_ordinary_part_count_set (adc_type *adc_x, uint8_t adc_channel_count)
set partitioned mode channel count of the specified adc peripheral. More...
void | adc_ordinary_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on ordinary channel of the specified adc peripheral. More...
void | adc_preempt_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on preempt channel of the specified adc peripheral. More...
void | adc_preempt_auto_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable automatic preempt group conversion of the specified adc peripheral. More...
void | adc_tempersensor_vintrv_enable (confirm_state new_state)
enable or disable the temperature sensor and vintrv channel. More...
void | adc_ordinary_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral. More...
flag_status | adc_ordinary_software_trigger_status_get (adc_type *adc_x)
get ordinary software start conversion status of the specified adc peripheral. More...
void | adc_preempt_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable preempt software start conversion of the specified adc peripheral. More...
flag_status | adc_preempt_software_trigger_status_get (adc_type *adc_x)
get preempt software start conversion status of the specified adc peripheral. More...
uint16_t | adc_ordinary_conversion_data_get (adc_type *adc_x)
return the last conversion data for ordinary channel of the specified adc peripheral. More...
uint32_t | adc_combine_ordinary_conversion_data_get (void)
return the last conversion data for ordinary channel of combine adc(adc1 and adc2). More...
uint16_t | adc_preempt_conversion_data_get (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral. More...
flag_status | adc_flag_get (adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral. More...
flag_status | adc_interrupt_flag_get (adc_type *adc_x, uint8_t adc_flag)
get interrupt flag of the specified adc peripheral. More...
void | adc_flag_clear (adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral. More...

Detailed Description

Function Documentation

◆ adc_base_config()

void adc_base_config | ( | adc_type * | adc_x,
 |  | adc_base_config_type * | adc_base_struct
 | ) |  |

initialize the adc peripheral according to the specified parameters.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
sequence_mode | set the state of adc sequence mode. this parameter can be:TRUE or FALSE
repeat_mode | set the state of adc repeat conversion mode. this parameter can be:TRUE or FALSE
data_align set the state of adc data alignment. this parameter can be one of the following values:
  • ADC_RIGHT_ALIGNMENT
  • ADC_LEFT_ALIGNMENT
ordinary_channel_length configure the adc ordinary channel sequence length. this parameter can be:
  • (0x1~0x10)
Return values
none

Definition at line 146 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_base_default_para_init()

void adc_base_default_para_init ( adc_base_config_type * adc_base_struct )

adc base default para init.

Parameters
sequence_mode | set the state of adc sequence mode. this parameter can be:TRUE or FALSE
repeat_mode | set the state of adc repeat conversion mode. this parameter can be:TRUE or FALSE
data_align set the state of adc data alignment. this parameter can be one of the following values:
  • ADC_RIGHT_ALIGNMENT
  • ADC_LEFT_ALIGNMENT
ordinary_channel_length configure the adc ordinary channel sequence length. this parameter can be:
  • (0x1~0x10)
Return values
none

Definition at line 120 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_init()

void adc_calibration_init ( adc_type * adc_x )

initialize calibration register of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
none

Definition at line 202 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_init_status_get()

flag_status adc_calibration_init_status_get ( adc_type * adc_x )

get calibration register's initialize status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of reset calibration register status(SET or RESET).

Definition at line 214 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_start()

void adc_calibration_start ( adc_type * adc_x )

start calibration process of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
none

Definition at line 233 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_calibration_status_get()

flag_status adc_calibration_status_get ( adc_type * adc_x )

get calibration status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of calibration status(SET or RESET).

Definition at line 245 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_combine_mode_select()

void adc_combine_mode_select ( adc_combine_mode_type combine_mode )

select combine mode of the specified adc peripheral.

Parameters
combine_mode select the adc combine mode. this parameter can be one of the following values:
  • ADC_INDEPENDENT_MODE
  • ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE
  • ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE
  • ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE
  • ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE
  • ADC_PREEMPT_SMLT_ONLY_MODE
  • ADC_ORDINARY_SMLT_ONLY_MODE
  • ADC_ORDINARY_SHORTSHIFT_ONLY_MODE
  • ADC_ORDINARY_LONGSHIFT_ONLY_MODE
  • ADC_PREEMPT_INTERLTRIG_ONLY_MODE note:these bits are reserved in adc2 and adc3
Return values
none

Definition at line 100 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_combine_ordinary_conversion_data_get()

uint32_t adc_combine_ordinary_conversion_data_get ( void )

return the last conversion data for ordinary channel of combine adc(adc1 and adc2).

Return values
the last conversion data for ordinary channel.

Definition at line 732 of file at32f403_adc.c.

◆ adc_dma_mode_enable()

void adc_dma_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the adc dma transfer.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC3. note:this bit is reserved in adc2
new_state | new state of the adc dma transfer. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 164 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_enable()

void adc_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of a/d converter. this parameter can be: TRUE or FALSE. note:after adc ready,user set adcen bit will cause ordinary conversion
Return values
none

Definition at line 78 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_flag_clear()

void adc_flag_clear | ( | adc_type * | adc_x,
 |  | uint32_t | adc_flag
 | ) |  |

clear flag of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_flag select the adc flag. this parameter can be any combination of the following values:
  • ADC_VMOR_FLAG
  • ADC_CCE_FLAG(also can clear by reading the adc_x->odt)
  • ADC_PCCE_FLAG
  • ADC_PCCS_FLAG
  • ADC_OCCS_FLAG
Return values
none

Definition at line 857 of file at32f403_adc.c.

Referenced by ADC1_2_IRQHandler().

◆ adc_flag_get()

flag_status adc_flag_get | ( | adc_type * | adc_x,
 |  | uint8_t | adc_flag
 | ) |  |

get flag of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_flag select the adc flag. this parameter can be one of the following values:
  • ADC_VMOR_FLAG
  • ADC_CCE_FLAG
  • ADC_PCCE_FLAG
  • ADC_PCCS_FLAG(no interrupt associated)
  • ADC_OCCS_FLAG(no interrupt associated)
Return values
the new state of adc flag status(SET or RESET).

Definition at line 787 of file at32f403_adc.c.

Referenced by ADC1_2_IRQHandler().

◆ adc_interrupt_enable()

void adc_interrupt_enable | ( | adc_type * | adc_x,
 |  | uint32_t | adc_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified adc interrupts.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_int specifies the adc interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • ADC_VMOR_INT
  • ADC_CCE_INT
  • ADC_PCCE_INT
new_state | new state of the specified adc interrupts. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 183 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_interrupt_flag_get()

flag_status adc_interrupt_flag_get | ( | adc_type * | adc_x,
 |  | uint8_t | adc_flag
 | ) |  |

get interrupt flag of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_flag select the adc flag. this parameter can be one of the following values:
  • ADC_VMOR_FLAG
  • ADC_CCE_FLAG
  • ADC_PCCE_FLAG
Return values
the new state of adc flag status(SET or RESET).

< voltage monitoring out of range flag

< channels conversion end flag

< preempt channels conversion end flag

Definition at line 814 of file at32f403_adc.c.

◆ adc_ordinary_channel_set()

void adc_ordinary_channel_set | ( | adc_type * | adc_x,
 |  | adc_channel_select_type | adc_channel,
 |  | uint8_t | adc_sequence,
 |  | adc_sampletime_select_type | adc_sampletime
 | ) |  |

set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel select the channel. this parameter can be one of the following values:
  • ADC_CHANNEL_0 - ADC_CHANNEL_1 - ADC_CHANNEL_2 - ADC_CHANNEL_3
  • ADC_CHANNEL_4 - ADC_CHANNEL_5 - ADC_CHANNEL_6 - ADC_CHANNEL_7
  • ADC_CHANNEL_8 - ADC_CHANNEL_9 - ADC_CHANNEL_10 - ADC_CHANNEL_11
  • ADC_CHANNEL_12 - ADC_CHANNEL_13 - ADC_CHANNEL_14 - ADC_CHANNEL_15
  • ADC_CHANNEL_16 - ADC_CHANNEL_17
adc_sequence set rank in the ordinary group sequencer. this parameter must be:
  • between 1 to 16
adc_sampletime set the sampletime of adc channel. this parameter can be one of the following values:
  • ADC_SAMPLETIME_1_5
  • ADC_SAMPLETIME_7_5
  • ADC_SAMPLETIME_13_5
  • ADC_SAMPLETIME_28_5
  • ADC_SAMPLETIME_41_5
  • ADC_SAMPLETIME_55_5
  • ADC_SAMPLETIME_71_5
  • ADC_SAMPLETIME_239_5
Return values
none

Definition at line 346 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_conversion_data_get()

uint16_t adc_ordinary_conversion_data_get ( adc_type * adc_x )

return the last conversion data for ordinary channel of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the last conversion data for ordinary channel.

Definition at line 723 of file at32f403_adc.c.

◆ adc_ordinary_conversion_trigger_set()

void adc_ordinary_conversion_trigger_set | ( | adc_type * | adc_x,
 |  | adc_ordinary_trig_select_type | adc_ordinary_trig,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the ordinary channel's external trigger and set external trigger event of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_ordinary_trig select the external trigger event. this parameter can be one of the following values: adc1 & adc2
  • ADC12_ORDINARY_TRIG_TMR1CH1 - ADC12_ORDINARY_TRIG_TMR1CH2 - ADC12_ORDINARY_TRIG_TMR1CH3 - ADC12_ORDINARY_TRIG_TMR2CH2
  • ADC12_ORDINARY_TRIG_TMR3TRGOUT - ADC12_ORDINARY_TRIG_TMR4CH4 - ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT - ADC12_ORDINARY_TRIG_SOFTWARE
  • ADC12_ORDINARY_TRIG_TMR15CH1 - ADC12_ORDINARY_TRIG_TMR15CH2 - ADC12_ORDINARY_TRIG_TMR15CH3 - ADC12_ORDINARY_TRIG_TMR15CH4
  • ADC12_ORDINARY_TRIG_TMR15TRGOUT - ADC12_ORDINARY_TRIG_TMR1TRGOUT - ADC12_ORDINARY_TRIG_TMR8CH1 - ADC12_ORDINARY_TRIG_TMR8CH2 adc3
  • ADC3_ORDINARY_TRIG_TMR3CH1 - ADC3_ORDINARY_TRIG_TMR2CH3 - ADC3_ORDINARY_TRIG_TMR1CH3 - ADC3_ORDINARY_TRIG_TMR8CH1
  • ADC3_ORDINARY_TRIG_TMR8TRGOUT - ADC3_ORDINARY_TRIG_TMR5CH1 - ADC3_ORDINARY_TRIG_TMR5CH3 - ADC3_ORDINARY_TRIG_SOFTWARE
  • ADC3_ORDINARY_TRIG_TMR15CH1 - ADC3_ORDINARY_TRIG_TMR15CH2 - ADC3_ORDINARY_TRIG_TMR15CH3 - ADC3_ORDINARY_TRIG_TMR15CH4
  • ADC3_ORDINARY_TRIG_TMR15TRGOUT - ADC3_ORDINARY_TRIG_TMR1TRGOUT - ADC3_ORDINARY_TRIG_TMR1CH1 - ADC3_ORDINARY_TRIG_TMR8CH3
new_state | new state of ordinary channel's external trigger. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 490 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_part_count_set()

void adc_ordinary_part_count_set | ( | adc_type * | adc_x,
 |  | uint8_t | adc_channel_count
 | ) |  |

set partitioned mode channel count of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel_count configure the adc partitioned mode channel count. this parameter can be:
  • (0x1~0x8)
Return values
none

Definition at line 590 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_part_mode_enable()

void adc_ordinary_part_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the partitioned mode on ordinary channel of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of ordinary channel's partitioned mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 605 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_ordinary_software_trigger_enable()

void adc_ordinary_software_trigger_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable ordinary software start conversion of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of ordinary software start conversion. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 659 of file at32f403_adc.c.

Referenced by main().

◆ adc_ordinary_software_trigger_status_get()

flag_status adc_ordinary_software_trigger_status_get ( adc_type * adc_x )

get ordinary software start conversion status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of ordinary software start conversion status(SET or RESET).

Definition at line 671 of file at32f403_adc.c.

◆ adc_preempt_auto_mode_enable()

void adc_preempt_auto_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable automatic preempt group conversion of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of automatic preempt group conversion. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 633 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_channel_length_set()

void adc_preempt_channel_length_set | ( | adc_type * | adc_x,
 |  | uint8_t | adc_channel_lenght
 | ) |  |

set preempt channel lenghth of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel_lenght set the adc preempt channel lenghth. this parameter can be:
  • (0x1~0x4)
Return values
none

Definition at line 397 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_channel_set()

void adc_preempt_channel_set | ( | adc_type * | adc_x,
 |  | adc_channel_select_type | adc_channel,
 |  | uint8_t | adc_sequence,
 |  | adc_sampletime_select_type | adc_sampletime
 | ) |  |

configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel select the channel. this parameter can be one of the following values:
  • ADC_CHANNEL_0 - ADC_CHANNEL_1 - ADC_CHANNEL_2 - ADC_CHANNEL_3
  • ADC_CHANNEL_4 - ADC_CHANNEL_5 - ADC_CHANNEL_6 - ADC_CHANNEL_7
  • ADC_CHANNEL_8 - ADC_CHANNEL_9 - ADC_CHANNEL_10 - ADC_CHANNEL_11
  • ADC_CHANNEL_12 - ADC_CHANNEL_13 - ADC_CHANNEL_14 - ADC_CHANNEL_15
  • ADC_CHANNEL_16 - ADC_CHANNEL_17
adc_sequence set rank in the preempt group sequencer. this parameter must be:
  • between 1 to 4
adc_sampletime config the sampletime of adc channel. this parameter can be one of the following values:
  • ADC_SAMPLETIME_1_5
  • ADC_SAMPLETIME_7_5
  • ADC_SAMPLETIME_13_5
  • ADC_SAMPLETIME_28_5
  • ADC_SAMPLETIME_41_5
  • ADC_SAMPLETIME_55_5
  • ADC_SAMPLETIME_71_5
  • ADC_SAMPLETIME_239_5
Return values
none

Definition at line 429 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_conversion_data_get()

uint16_t adc_preempt_conversion_data_get | ( | adc_type * | adc_x,
 |  | adc_preempt_channel_type | adc_preempt_channel
 | ) |  |

return the conversion data for selection preempt channel of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_preempt_channel select the preempt channel. this parameter can be one of the following values:
  • ADC_PREEMPTED_CHANNEL_1
  • ADC_PREEMPTED_CHANNEL_2
  • ADC_PREEMPTED_CHANNEL_3
  • ADC_PREEMPTED_CHANNEL_4
Return values
the conversion data for selection preempt channel.

Definition at line 750 of file at32f403_adc.c.

Referenced by ADC1_2_IRQHandler().

◆ adc_preempt_conversion_trigger_set()

void adc_preempt_conversion_trigger_set | ( | adc_type * | adc_x,
 |  | adc_preempt_trig_select_type | adc_preempt_trig,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the preempt channel's external trigger and set external trigger event of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_preempt_trig select the external trigger event. this parameter can be one of the following values: adc1 & adc2
  • ADC12_PREEMPT_TRIG_TMR1TRGOUT - ADC12_PREEMPT_TRIG_TMR1CH4 - ADC12_PREEMPT_TRIG_TMR2TRGOUT - ADC12_PREEMPT_TRIG_TMR2CH1
  • ADC12_PREEMPT_TRIG_TMR3CH4 - ADC12_PREEMPT_TRIG_TMR4TRGOUT - ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 - ADC12_PREEMPT_TRIG_SOFTWARE
  • ADC12_PREEMPT_TRIG_TMR15CH1 - ADC12_PREEMPT_TRIG_TMR15CH2 - ADC12_PREEMPT_TRIG_TMR15CH3 - ADC12_PREEMPT_TRIG_TMR15CH4
  • ADC12_PREEMPT_TRIG_TMR15TRGOUT - ADC12_PREEMPT_TRIG_TMR1CH1 - ADC12_PREEMPT_TRIG_TMR8CH1 - ADC12_PREEMPT_TRIG_TMR8TRGOUT adc3
  • ADC3_PREEMPT_TRIG_TMR1TRGOUT - ADC3_PREEMPT_TRIG_TMR1CH4 - ADC3_PREEMPT_TRIG_TMR4CH3 - ADC3_PREEMPT_TRIG_TMR8CH2
  • ADC3_PREEMPT_TRIG_TMR8CH4 - ADC3_PREEMPT_TRIG_TMR5TRGOUT - ADC3_PREEMPT_TRIG_TMR5CH4 - ADC3_PREEMPT_TRIG_SOFTWARE
  • ADC3_PREEMPT_TRIG_TMR15CH1 - ADC3_PREEMPT_TRIG_TMR15CH2 - ADC3_PREEMPT_TRIG_TMR15CH3 - ADC3_PREEMPT_TRIG_TMR15CH4
  • ADC3_PREEMPT_TRIG_TMR15TRGOUT - ADC3_PREEMPT_TRIG_TMR1CH1 - ADC3_PREEMPT_TRIG_TMR1CH2 - ADC3_PREEMPT_TRIG_TMR8TRGOUT
new_state | new state of preempt channel's external trigger. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 527 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_preempt_offset_value_set()

void adc_preempt_offset_value_set | ( | adc_type * | adc_x,
 |  | adc_preempt_channel_type | adc_preempt_channel,
 |  | uint16_t | adc_offset_value
 | ) |  |

set preempt channel's conversion value offset of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_preempt_channel select the preempt channel. this parameter can be one of the following values:
  • ADC_PREEMPT_CHANNEL_1
  • ADC_PREEMPT_CHANNEL_2
  • ADC_PREEMPT_CHANNEL_3
  • ADC_PREEMPT_CHANNEL_4
adc_offset_value set the adc preempt channel's conversion value offset. this parameter can be:
  • (0x000~0xFFF)
Return values
none

Definition at line 559 of file at32f403_adc.c.

◆ adc_preempt_part_mode_enable()

void adc_preempt_part_mode_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the partitioned mode on preempt channel of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of preempt channel's partitioned mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 619 of file at32f403_adc.c.

◆ adc_preempt_software_trigger_enable()

void adc_preempt_software_trigger_enable | ( | adc_type * | adc_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable preempt software start conversion of the specified adc peripheral.

Parameters
adc_x | select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
new_state | new state of preempt software start conversion. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 692 of file at32f403_adc.c.

◆ adc_preempt_software_trigger_status_get()

flag_status adc_preempt_software_trigger_status_get ( adc_type * adc_x )

get preempt software start conversion status of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
the new state of preempt software start conversion status(SET or RESET).

Definition at line 704 of file at32f403_adc.c.

◆ adc_reset()

void adc_reset ( adc_type * adc_x )

deinitialize the adc peripheral registers to their default reset values.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
Return values
none

Definition at line 49 of file at32f403_adc.c.

◆ adc_tempersensor_vintrv_enable()

void adc_tempersensor_vintrv_enable ( confirm_state new_state )

enable or disable the temperature sensor and vintrv channel.

Parameters
new_state new state of Internal temperature sensor and vintrv. this parameter can be: TRUE or FALSE. note:this bit is present only in adc1
Return values
none

Definition at line 645 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_voltage_monitor_enable()

void adc_voltage_monitor_enable | ( | adc_type * | adc_x,
 |  | adc_voltage_monitoring_type | adc_voltage_monitoring
 | ) |  |

enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_voltage_monitoring choose the adc_voltage_monitoring config. this parameter can be one of the following values:
  • ADC_VMONITOR_SINGLE_ORDINARY
  • ADC_VMONITOR_SINGLE_PREEMPT
  • ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT
  • ADC_VMONITOR_ALL_ORDINARY
  • ADC_VMONITOR_ALL_PREEMPT
  • ADC_VMONITOR_ALL_ORDINARY_PREEMPT
  • ADC_VMONITOR_NONE
Return values
none

Definition at line 273 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_voltage_monitor_single_channel_select()

void adc_voltage_monitor_single_channel_select | ( | adc_type * | adc_x,
 |  | adc_channel_select_type | adc_channel
 | ) |  |

select the voltage monitoring's channel of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_channel select the channel. this parameter can be one of the following values:
  • ADC_CHANNEL_0 - ADC_CHANNEL_1 - ADC_CHANNEL_2 - ADC_CHANNEL_3
  • ADC_CHANNEL_4 - ADC_CHANNEL_5 - ADC_CHANNEL_6 - ADC_CHANNEL_7
  • ADC_CHANNEL_8 - ADC_CHANNEL_9 - ADC_CHANNEL_10 - ADC_CHANNEL_11
  • ADC_CHANNEL_12 - ADC_CHANNEL_13 - ADC_CHANNEL_14 - ADC_CHANNEL_15
  • ADC_CHANNEL_16 - ADC_CHANNEL_17
Return values
none

Definition at line 314 of file at32f403_adc.c.

Referenced by adc_config().

◆ adc_voltage_monitor_threshold_value_set()

void adc_voltage_monitor_threshold_value_set | ( | adc_type * | adc_x,
 |  | uint16_t | adc_high_threshold,
 |  | uint16_t | adc_low_threshold
 | ) |  |

set voltage monitoring's high and low thresholds value of the specified adc peripheral.

Parameters
adc_x select the adc peripheral. this parameter can be one of the following values: ADC1, ADC2, ADC3.
adc_high_threshold voltage monitoring's high thresholds value. this parameter can be:
  • (0x000~0xFFF)
adc_low_threshold voltage monitoring's low thresholds value. this parameter can be:
  • (0x000~0xFFF)
Return values
none

Definition at line 294 of file at32f403_adc.c.

Referenced by adc_config().


AT32F403 Firmwary Library: BPR

Modules | Macros
BPR
AT32F403_periph_driver

BPR driver modules. More...

Modules

BPR_flags_definition
bpr flag
BPR_exported_types
BPR_exported_functions
BPR_private_functions

Macros

#define BPR ((bpr_type *) BPR_BASE)

Detailed Description

BPR driver modules.

Macro Definition Documentation

◆ BPR

#define BPR ((bpr_type *) BPR_BASE)

Definition at line 752 of file at32f403_bpr.h.


AT32F403 Firmwary Library: BPR_flags_definition

Macros
BPR_flags_definition
AT32F403_periph_driver » BPR

bpr flag More...

Macros

#define | BPR_TAMPER_INTERRUPT_FLAG ((uint32_t)0x00000001)
#define | BPR_TAMPER_EVENT_FLAG ((uint32_t)0x00000002)

Detailed Description

bpr flag

Macro Definition Documentation

◆ BPR_TAMPER_EVENT_FLAG

#define BPR_TAMPER_EVENT_FLAG ((uint32_t)0x00000002)

bpr tamper event flag

Definition at line 51 of file at32f403_bpr.h.

◆ BPR_TAMPER_INTERRUPT_FLAG

#define BPR_TAMPER_INTERRUPT_FLAG ((uint32_t)0x00000001)

bpr tamper interrupt flag

Definition at line 50 of file at32f403_bpr.h.


AT32F403 Firmwary Library: BPR_exported_types

Data Structures | Enumerations
BPR_exported_types
AT32F403_periph_driver » BPR

Data Structures

struct bpr_type
type define bpr register all More...

Enumerations

enum bpr_data_type {
BPR_DATA1 = 0x04 , BPR_DATA2 = 0x08 , BPR_DATA3 = 0x0C , BPR_DATA4 = 0x10 ,
BPR_DATA5 = 0x14 , BPR_DATA6 = 0x18 , BPR_DATA7 = 0x1C , BPR_DATA8 = 0x20 ,
BPR_DATA9 = 0x24 , BPR_DATA10 = 0x28 , BPR_DATA11 = 0x40 , BPR_DATA12 = 0x44 ,
BPR_DATA13 = 0x48 , BPR_DATA14 = 0x4C , BPR_DATA15 = 0x50 , BPR_DATA16 = 0x54 ,
BPR_DATA17 = 0x58 , BPR_DATA18 = 0x5C , BPR_DATA19 = 0x60 , BPR_DATA20 = 0x64 ,
BPR_DATA21 = 0x68 , BPR_DATA22 = 0x6C , BPR_DATA23 = 0x70 , BPR_DATA24 = 0x74 ,
BPR_DATA25 = 0x78 , BPR_DATA26 = 0x7C , BPR_DATA27 = 0x80 , BPR_DATA28 = 0x84 ,
BPR_DATA29 = 0x88 , BPR_DATA30 = 0x8C , BPR_DATA31 = 0x90 , BPR_DATA32 = 0x94 ,
BPR_DATA33 = 0x98 , BPR_DATA34 = 0x9C , BPR_DATA35 = 0xA0 , BPR_DATA36 = 0xA4 ,
BPR_DATA37 = 0xA8 , BPR_DATA38 = 0xAC , BPR_DATA39 = 0xB0 , BPR_DATA40 = 0xB4 ,
BPR_DATA41 = 0xB8 , BPR_DATA42 = 0xBC
}
battery powered register data type More...
enum bpr_rtc_output_type {
BPR_RTC_OUTPUT_NONE = 0x000 , BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE = 0x080 , BPR_RTC_OUTPUT_ALARM = 0x100 , BPR_RTC_OUTPUT_SECOND = 0x300 ,
BPR_RTC_OUTPUT_CLOCK_CAL_AFTER = 0x480
}
bpr rtc output type More...
enum bpr_tamper_pin_active_level_type { BPR_TAMPER_PIN_ACTIVE_HIGH = 0x00 , BPR_TAMPER_PIN_ACTIVE_LOW = 0x01 }
tamper pin active level type More...

Detailed Description

Enumeration Type Documentation

◆ bpr_data_type

enum bpr_data_type

battery powered register data type

Enumerator
BPR_DATA1 | bpr data register 1
BPR_DATA2 | bpr data register 2
BPR_DATA3 | bpr data register 3
BPR_DATA4 | bpr data register 4
BPR_DATA5 | bpr data register 5
BPR_DATA6 | bpr data register 6
BPR_DATA7 | bpr data register 7
BPR_DATA8 | bpr data register 8
BPR_DATA9 | bpr data register 9
BPR_DATA10 | bpr data register 10
BPR_DATA11 | bpr data register 11
BPR_DATA12 | bpr data register 12
BPR_DATA13 | bpr data register 13
BPR_DATA14 | bpr data register 14
BPR_DATA15 | bpr data register 15
BPR_DATA16 | bpr data register 16
BPR_DATA17 | bpr data register 17
BPR_DATA18 | bpr data register 18
BPR_DATA19 | bpr data register 19
BPR_DATA20 | bpr data register 20
BPR_DATA21 | bpr data register 21
BPR_DATA22 | bpr data register 22
BPR_DATA23 | bpr data register 23
BPR_DATA24 | bpr data register 24
BPR_DATA25 | bpr data register 25
BPR_DATA26 | bpr data register 26
BPR_DATA27 | bpr data register 27
BPR_DATA28 | bpr data register 28
BPR_DATA29 | bpr data register 29
BPR_DATA30 | bpr data register 30
BPR_DATA31 | bpr data register 31
BPR_DATA32 | bpr data register 32
BPR_DATA33 | bpr data register 33
BPR_DATA34 | bpr data register 34
BPR_DATA35 | bpr data register 35
BPR_DATA36 | bpr data register 36
BPR_DATA37 | bpr data register 37
BPR_DATA38 | bpr data register 38
BPR_DATA39 | bpr data register 39
BPR_DATA40 | bpr data register 40
BPR_DATA41 | bpr data register 41
BPR_DATA42 | bpr data register 42

Definition at line 64 of file at32f403_bpr.h.

◆ bpr_rtc_output_type

enum bpr_rtc_output_type

bpr rtc output type

Enumerator
BPR_RTC_OUTPUT_NONE | output disable
BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE | output clock before calibration
BPR_RTC_OUTPUT_ALARM | output alarm event with pluse mode
BPR_RTC_OUTPUT_SECOND | output second event with pluse mode
BPR_RTC_OUTPUT_CLOCK_CAL_AFTER | output clock after calibration

Definition at line 113 of file at32f403_bpr.h.

◆ bpr_tamper_pin_active_level_type

enum bpr_tamper_pin_active_level_type

tamper pin active level type

Enumerator
BPR_TAMPER_PIN_ACTIVE_HIGH | tamper pin input active level is high
BPR_TAMPER_PIN_ACTIVE_LOW | tamper pin input active level is low

Definition at line 125 of file at32f403_bpr.h.


AT32F403 Firmwary Library: bpr_type Struct Reference

Data Fields
bpr_type Struct Reference
AT32F403_periph_driver » BPR » BPR_exported_types

type define bpr register all More...

#include <at32f403_bpr.h>

Data Fields

__IO uint32_t | reserved1
reserved, offset:0x00 More...
union {
__IO uint32_t dt1
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt1_bit
};
bpr dt1 register, offset:0x04 More...
union {
__IO uint32_t dt2
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt2_bit
};
bpr dt2 register, offset:0x08 More...
union {
__IO uint32_t dt3
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt3_bit
};
bpr dt3 register, offset:0x0C More...
union {
__IO uint32_t dt4
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt4_bit
};
bpr dt4 register, offset:0x10 More...
union {
__IO uint32_t dt5
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt5_bit
};
bpr dt5 register, offset:0x14 More...
union {
__IO uint32_t dt6
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt6_bit
};
bpr dt6 register, offset:0x18 More...
union {
__IO uint32_t dt7
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt7_bit
};
bpr dt7 register, offset:0x1C More...
union {
__IO uint32_t dt8
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt8_bit
};
bpr dt8 register, offset:0x20 More...
union {
__IO uint32_t dt9
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt9_bit
};
bpr dt9 register, offset:0x24 More...
union {
__IO uint32_t dt10
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt10_bit
};
bpr dt10 register, offset:0x28 More...
union {
__IO uint32_t rtccal
struct {
__IO uint32_t calval: 7
__IO uint32_t calout: 1
__IO uint32_t outen: 1
__IO uint32_t outsel: 1
__IO uint32_t ccos: 1
__IO uint32_t outm: 1
__IO uint32_t reserved1: 20
} rtccal_bit
};
bpr rtccal register, offset:0x2C More...
union {
__IO uint32_t ctrl
struct {
__IO uint32_t tpen: 1
__IO uint32_t tpp: 1
__IO uint32_t reserved1: 30
} ctrl_bit
};
bpr ctrl register, offset:0x30 More...
union {
__IO uint32_t ctrlsts
struct {
__IO uint32_t tpefclr: 1
__IO uint32_t tpifclr: 1
__IO uint32_t tpien: 1
__IO uint32_t reserved1: 5
__IO uint32_t tpef: 1
__IO uint32_t tpif: 1
__IO uint32_t reserved2: 22
} ctrlsts_bit
};
bpr ctrlsts register, offset:0x34 More...
__IO uint32_t | reserved3
reserved, offset:0x3C More...
union {
__IO uint32_t dt11
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt11_bit
};
bpr dt11 register, offset:0x40 More...
union {
__IO uint32_t dt12
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt12_bit
};
bpr dt12 register, offset:0x44 More...
union {
__IO uint32_t dt13
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt13_bit
};
bpr dt13 register, offset:0x48 More...
union {
__IO uint32_t dt14
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt14_bit
};
bpr dt14 register, offset:0x4C More...
union {
__IO uint32_t dt15
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt15_bit
};
bpr dt15 register, offset:0x50 More...
union {
__IO uint32_t dt16
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt16_bit
};
bpr dt16 register, offset:0x54 More...
union {
__IO uint32_t dt17
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt17_bit
};
bpr dt17 register, offset:0x58 More...
union {
__IO uint32_t dt18
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt18_bit
};
bpr dt18 register, offset:0x5C More...
union {
__IO uint32_t dt19
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt19_bit
};
bpr dt19 register, offset:0x60 More...
union {
__IO uint32_t dt20
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt20_bit
};
bpr dt20 register, offset:0x64 More...
union {
__IO uint32_t dt21
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt21_bit
};
bpr dt21 register, offset:0x68 More...
union {
__IO uint32_t dt22
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt22_bit
};
bpr dt22 register, offset:6C More...
union {
__IO uint32_t dt23
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt23_bit
};
bpr dt23 register, offset:0x70 More...
union {
__IO uint32_t dt24
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt24_bit
};
bpr dt24 register, offset:0x74 More...
union {
__IO uint32_t dt25
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt25_bit
};
bpr dt25 register, offset:0x78 More...
union {
__IO uint32_t dt26
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt26_bit
};
bpr dt26 register, offset:0x7C More...
union {
__IO uint32_t dt27
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt27_bit
};
bpr dt27 register, offset:0x80 More...
union {
__IO uint32_t dt28
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt28_bit
};
bpr dt28 register, offset:0x84 More...
union {
__IO uint32_t dt29
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt29_bit
};
bpr dt29 register, offset:0x88 More...
union {
__IO uint32_t dt30
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt30_bit
};
bpr dt30 register, offset:0x8C More...
union {
__IO uint32_t dt31
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt31_bit
};
bpr dt31 register, offset:0x90 More...
union {
__IO uint32_t dt32
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt32_bit
};
bpr dt32 register, offset:0x94 More...
union {
__IO uint32_t dt33
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt33_bit
};
bpr dt33 register, offset:0x98 More...
union {
__IO uint32_t dt34
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt34_bit
};
bpr dt34 register, offset:0x9C More...
union {
__IO uint32_t dt35
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt35_bit
};
bpr dt35 register, offset:0xA0 More...
union {
__IO uint32_t dt36
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt36_bit
};
bpr dt36 register, offset:0xA4 More...
union {
__IO uint32_t dt37
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt37_bit
};
bpr dt37 register, offset:0xA8 More...
union {
__IO uint32_t dt38
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt38_bit
};
bpr dt38 register, offset:0xAC More...
union {
__IO uint32_t dt39
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt39_bit
};
bpr dt39 register, offset:0xB0 More...
union {
__IO uint32_t dt40
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt40_bit
};
bpr dt40 register, offset:0xB4 More...
union {
__IO uint32_t dt41
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt41_bit
};
bpr dt41 register, offset:0xB8 More...
union {
__IO uint32_t dt42
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt42_bit
};
bpr dt42 register, offset:0xBC More...

Detailed Description

type define bpr register all

Definition at line 134 of file at32f403_bpr.h.

Field Documentation

◆

union { ... } bpr_type::@101

bpr dt18 register, offset:0x5C

◆

union { ... } bpr_type::@103

bpr dt19 register, offset:0x60

◆

union { ... } bpr_type::@105

bpr dt20 register, offset:0x64

◆

union { ... } bpr_type::@107

bpr dt21 register, offset:0x68

◆

union { ... } bpr_type::@109

bpr dt22 register, offset:6C

◆

union { ... } bpr_type::@111

bpr dt23 register, offset:0x70

◆

union { ... } bpr_type::@113

bpr dt24 register, offset:0x74

◆

union { ... } bpr_type::@115

bpr dt25 register, offset:0x78

◆

union { ... } bpr_type::@117

bpr dt26 register, offset:0x7C

◆

union { ... } bpr_type::@119

bpr dt27 register, offset:0x80

◆

union { ... } bpr_type::@121

bpr dt28 register, offset:0x84

◆

union { ... } bpr_type::@123

bpr dt29 register, offset:0x88

◆

union { ... } bpr_type::@125

bpr dt30 register, offset:0x8C

◆

union { ... } bpr_type::@127

bpr dt31 register, offset:0x90

◆

union { ... } bpr_type::@129

bpr dt32 register, offset:0x94

◆

union { ... } bpr_type::@131

bpr dt33 register, offset:0x98

◆

union { ... } bpr_type::@133

bpr dt34 register, offset:0x9C

◆

union { ... } bpr_type::@135

bpr dt35 register, offset:0xA0

◆

union { ... } bpr_type::@137

bpr dt36 register, offset:0xA4

◆

union { ... } bpr_type::@139

bpr dt37 register, offset:0xA8

◆

union { ... } bpr_type::@141

bpr dt38 register, offset:0xAC

◆

union { ... } bpr_type::@143

bpr dt39 register, offset:0xB0

◆

union { ... } bpr_type::@145

bpr dt40 register, offset:0xB4

◆

union { ... } bpr_type::@147

bpr dt41 register, offset:0xB8

◆

union { ... } bpr_type::@149

bpr dt42 register, offset:0xBC

◆

union { ... } bpr_type::@61

bpr dt1 register, offset:0x04

◆

union { ... } bpr_type::@63

bpr dt2 register, offset:0x08

◆

union { ... } bpr_type::@65

bpr dt3 register, offset:0x0C

◆

union { ... } bpr_type::@67

bpr dt4 register, offset:0x10

◆

union { ... } bpr_type::@69

bpr dt5 register, offset:0x14

◆

union { ... } bpr_type::@71

bpr dt6 register, offset:0x18

◆

union { ... } bpr_type::@73

bpr dt7 register, offset:0x1C

◆

union { ... } bpr_type::@75

bpr dt8 register, offset:0x20

◆

union { ... } bpr_type::@77

bpr dt9 register, offset:0x24

◆

union { ... } bpr_type::@79

bpr dt10 register, offset:0x28

◆

union { ... } bpr_type::@81

bpr rtccal register, offset:0x2C

◆

union { ... } bpr_type::@83

bpr ctrl register, offset:0x30

◆

union { ... } bpr_type::@85

bpr ctrlsts register, offset:0x34

◆

union { ... } bpr_type::@87

bpr dt11 register, offset:0x40

◆

union { ... } bpr_type::@89

bpr dt12 register, offset:0x44

◆

union { ... } bpr_type::@91

bpr dt13 register, offset:0x48

◆

union { ... } bpr_type::@93

bpr dt14 register, offset:0x4C

◆

union { ... } bpr_type::@95

bpr dt15 register, offset:0x50

◆

union { ... } bpr_type::@97

bpr dt16 register, offset:0x54

◆

union { ... } bpr_type::@99

bpr dt17 register, offset:0x58

◆ calout

__IO uint32_t bpr_type::calout

Definition at line 280 of file at32f403_bpr.h.

◆ calval

__IO uint32_t bpr_type::calval

Definition at line 279 of file at32f403_bpr.h.

◆ ccos

__IO uint32_t bpr_type::ccos

Definition at line 283 of file at32f403_bpr.h.

◆ ctrl

__IO uint32_t bpr_type::ctrl

Definition at line 294 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::ctrl_bit

◆ ctrlsts

__IO uint32_t bpr_type::ctrlsts

Definition at line 308 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::ctrlsts_bit

◆ dt

__IO uint32_t bpr_type::dt

Definition at line 149 of file at32f403_bpr.h.

◆ dt1

__IO uint32_t bpr_type::dt1

Definition at line 146 of file at32f403_bpr.h.

◆ dt10

__IO uint32_t bpr_type::dt10

Definition at line 263 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt10_bit

◆ dt11

__IO uint32_t bpr_type::dt11

Definition at line 336 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt11_bit

◆ dt12

__IO uint32_t bpr_type::dt12

Definition at line 349 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt12_bit

◆ dt13

__IO uint32_t bpr_type::dt13

Definition at line 362 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt13_bit

◆ dt14

__IO uint32_t bpr_type::dt14

Definition at line 375 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt14_bit

◆ dt15

__IO uint32_t bpr_type::dt15

Definition at line 388 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt15_bit

◆ dt16

__IO uint32_t bpr_type::dt16

Definition at line 401 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt16_bit

◆ dt17

__IO uint32_t bpr_type::dt17

Definition at line 414 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt17_bit

◆ dt18

__IO uint32_t bpr_type::dt18

Definition at line 427 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt18_bit

◆ dt19

__IO uint32_t bpr_type::dt19

Definition at line 440 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt19_bit

◆

struct { ... } bpr_type::dt1_bit

◆ dt2

__IO uint32_t bpr_type::dt2

Definition at line 159 of file at32f403_bpr.h.

◆ dt20

__IO uint32_t bpr_type::dt20

Definition at line 453 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt20_bit

◆ dt21

__IO uint32_t bpr_type::dt21

Definition at line 466 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt21_bit

◆ dt22

__IO uint32_t bpr_type::dt22

Definition at line 479 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt22_bit

◆ dt23

__IO uint32_t bpr_type::dt23

Definition at line 492 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt23_bit

◆ dt24

__IO uint32_t bpr_type::dt24

Definition at line 505 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt24_bit

◆ dt25

__IO uint32_t bpr_type::dt25

Definition at line 518 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt25_bit

◆ dt26

__IO uint32_t bpr_type::dt26

Definition at line 531 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt26_bit

◆ dt27

__IO uint32_t bpr_type::dt27

Definition at line 544 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt27_bit

◆ dt28

__IO uint32_t bpr_type::dt28

Definition at line 557 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt28_bit

◆ dt29

__IO uint32_t bpr_type::dt29

Definition at line 570 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt29_bit

◆

struct { ... } bpr_type::dt2_bit

◆ dt3

__IO uint32_t bpr_type::dt3

Definition at line 172 of file at32f403_bpr.h.

◆ dt30

__IO uint32_t bpr_type::dt30

Definition at line 583 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt30_bit

◆ dt31

__IO uint32_t bpr_type::dt31

Definition at line 596 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt31_bit

◆ dt32

__IO uint32_t bpr_type::dt32

Definition at line 609 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt32_bit

◆ dt33

__IO uint32_t bpr_type::dt33

Definition at line 622 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt33_bit

◆ dt34

__IO uint32_t bpr_type::dt34

Definition at line 635 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt34_bit

◆ dt35

__IO uint32_t bpr_type::dt35

Definition at line 648 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt35_bit

◆ dt36

__IO uint32_t bpr_type::dt36

Definition at line 661 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt36_bit

◆ dt37

__IO uint32_t bpr_type::dt37

Definition at line 674 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt37_bit

◆ dt38

__IO uint32_t bpr_type::dt38

Definition at line 687 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt38_bit

◆ dt39

__IO uint32_t bpr_type::dt39

Definition at line 700 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt39_bit

◆

struct { ... } bpr_type::dt3_bit

◆ dt4

__IO uint32_t bpr_type::dt4

Definition at line 185 of file at32f403_bpr.h.

◆ dt40

__IO uint32_t bpr_type::dt40

Definition at line 713 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt40_bit

◆ dt41

__IO uint32_t bpr_type::dt41

Definition at line 726 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt41_bit

◆ dt42

__IO uint32_t bpr_type::dt42

Definition at line 739 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt42_bit

◆

struct { ... } bpr_type::dt4_bit

◆ dt5

__IO uint32_t bpr_type::dt5

Definition at line 198 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt5_bit

◆ dt6

__IO uint32_t bpr_type::dt6

Definition at line 211 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt6_bit

◆ dt7

__IO uint32_t bpr_type::dt7

Definition at line 224 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt7_bit

◆ dt8

__IO uint32_t bpr_type::dt8

Definition at line 237 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt8_bit

◆ dt9

__IO uint32_t bpr_type::dt9

Definition at line 250 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::dt9_bit

◆ outen

__IO uint32_t bpr_type::outen

Definition at line 281 of file at32f403_bpr.h.

◆ outm

__IO uint32_t bpr_type::outm

Definition at line 284 of file at32f403_bpr.h.

◆ outsel

__IO uint32_t bpr_type::outsel

Definition at line 282 of file at32f403_bpr.h.

◆ reserved1

__IO uint32_t bpr_type::reserved1

reserved, offset:0x00

Definition at line 139 of file at32f403_bpr.h.

◆ reserved2

__IO uint32_t bpr_type::reserved2

reserved, offset:0x38

Definition at line 317 of file at32f403_bpr.h.

◆ reserved3

__IO uint32_t bpr_type::reserved3

reserved, offset:0x3C

Definition at line 329 of file at32f403_bpr.h.

◆ rtccal

__IO uint32_t bpr_type::rtccal

Definition at line 276 of file at32f403_bpr.h.

◆

struct { ... } bpr_type::rtccal_bit

◆ tpef

__IO uint32_t bpr_type::tpef

Definition at line 315 of file at32f403_bpr.h.

◆ tpefclr

__IO uint32_t bpr_type::tpefclr

Definition at line 311 of file at32f403_bpr.h.

◆ tpen

__IO uint32_t bpr_type::tpen

Definition at line 297 of file at32f403_bpr.h.

◆ tpien

__IO uint32_t bpr_type::tpien

Definition at line 313 of file at32f403_bpr.h.

◆ tpif

__IO uint32_t bpr_type::tpif

Definition at line 316 of file at32f403_bpr.h.

◆ tpifclr

__IO uint32_t bpr_type::tpifclr

Definition at line 312 of file at32f403_bpr.h.

◆ tpp

__IO uint32_t bpr_type::tpp

Definition at line 298 of file at32f403_bpr.h.

The documentation for this struct was generated from the following file:
  • at32f403_bpr.h


AT32F403 Firmwary Library: BPR_exported_functions

Functions
BPR_exported_functions
AT32F403_periph_driver » BPR

Functions

void | bpr_reset (void)
bpr reset by crm reset register More...
flag_status | bpr_flag_get (uint32_t flag)
bpr event flag get, for tamper event flag More...
flag_status | bpr_interrupt_flag_get (uint32_t flag)
bpr interrupt flag get More...
void | bpr_flag_clear (uint32_t flag)
clear bpr tamper flag More...
void | bpr_interrupt_enable (confirm_state new_state)
enable or disable bpr tamper interrupt More...
uint16_t | bpr_data_read (bpr_data_type bpr_data)
read bpr bpr data More...
void | bpr_data_write (bpr_data_type bpr_data, uint16_t data_value)
write bpr data More...
void | bpr_rtc_output_select (bpr_rtc_output_type output_source)
select bpr rtc output More...
void | bpr_rtc_clock_calibration_value_set (uint8_t calibration_value)
set rtc clock calibration value More...
void | bpr_tamper_pin_enable (confirm_state new_state)
enable or disable bpr tamper pin More...
void | bpr_tamper_pin_active_level_set (bpr_tamper_pin_active_level_type active_level)
set bpr tamper pin active level More...

Detailed Description

Function Documentation

◆ bpr_data_read()

uint16_t bpr_data_read ( bpr_data_type bpr_data )

read bpr bpr data

Parameters
bpr_data this parameter can be one of the following values:
  • BPR_DATA1
  • BPR_DATA2 ...
  • BPR_DATA41
  • BPR_DATA42
Return values
none

Definition at line 134 of file at32f403_bpr.c.

Referenced by bpr_reg_check(), bpr_reg_judge(), and rtc_init().

◆ bpr_data_write()

void bpr_data_write | ( | bpr_data_type | bpr_data,
 |  | uint16_t | data_value
 | ) |  |

write bpr data

Parameters
bpr_data this parameter can be one of the following values:
  • BPR_DATA1
  • BPR_DATA2 ...
  • BPR_DATA41
  • BPR_DATA42
data_value (0x0000~0xFFFF)
Return values
none

Definition at line 151 of file at32f403_bpr.c.

Referenced by bpr_reg_write(), and rtc_init().

◆ bpr_flag_clear()

void bpr_flag_clear ( uint32_t flag )

clear bpr tamper flag

Parameters
flag specifies the flag to clear. this parameter can be one of the following values:
  • BPR_TAMPER_INTERRUPT_FLAG: tamper interrupt flag
  • BPR_TAMPER_EVENT_FLAG: tamper event flag
Return values
none

< bpr tamper interrupt flag

Definition at line 101 of file at32f403_bpr.c.

Referenced by main(), and TAMPER_IRQHandler().

◆ bpr_flag_get()

flag_status bpr_flag_get ( uint32_t flag )

bpr event flag get, for tamper event flag

Parameters
flag specifies the flag to check. this parameter can be one of the following values:
  • BPR_TAMPER_INTERRUPT_FLAG: tamper interrupt flag
  • BPR_TAMPER_EVENT_FLAG: tamper event flag
Return values
state of tamper event flag

< bpr tamper interrupt flag

Definition at line 61 of file at32f403_bpr.c.

Referenced by TAMPER_IRQHandler().

◆ bpr_interrupt_enable()

void bpr_interrupt_enable ( confirm_state new_state )

enable or disable bpr tamper interrupt

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 118 of file at32f403_bpr.c.

Referenced by main().

◆ bpr_interrupt_flag_get()

flag_status bpr_interrupt_flag_get ( uint32_t flag )

bpr interrupt flag get

Parameters
flag specifies the flag to check. this parameter can be one of the following values:
  • BPR_TAMPER_INTERRUPT_FLAG: tamper interrupt flag
  • BPR_TAMPER_EVENT_FLAG: tamper event flag
Return values
state of tamper event flag

< bpr tamper interrupt flag

Definition at line 81 of file at32f403_bpr.c.

◆ bpr_reset()

void bpr_reset ( void )

bpr reset by crm reset register

Parameters
none
Return values
none

Definition at line 47 of file at32f403_bpr.c.

Referenced by main(), rtc_config(), rtc_configuration(), and rtc_init().

◆ bpr_rtc_clock_calibration_value_set()

void bpr_rtc_clock_calibration_value_set ( uint8_t calibration_value )

set rtc clock calibration value

Parameters
calibration_value (0x00~0x7F)
Return values
none

Definition at line 181 of file at32f403_bpr.c.

◆ bpr_rtc_output_select()

void bpr_rtc_output_select ( bpr_rtc_output_type output_source )

select bpr rtc output

Parameters
output_source this parameter can be one of the following values:
  • BPR_RTC_OUTPUT_NONE: output disable.
  • BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE: output clock before calibration.
  • BPR_RTC_OUTPUT_ALARM: output alarm event with pluse mode.
  • BPR_RTC_OUTPUT_SECOND: output second event with pluse mode.
  • BPR_RTC_OUTPUT_CLOCK_CAL_AFTER: output clock after calibration.
Return values
none

Definition at line 167 of file at32f403_bpr.c.

Referenced by rtc_configuration().

◆ bpr_tamper_pin_active_level_set()

void bpr_tamper_pin_active_level_set ( bpr_tamper_pin_active_level_type active_level )

set bpr tamper pin active level

Parameters
active_level this parameter can be one of the following values:
  • BPR_TAMPER_PIN_ACTIVE_HIGH: tamper pin input active level is high.
  • BPR_TAMPER_PIN_ACTIVE_LOW: tamper pin input active level is low.
Return values
none

Definition at line 205 of file at32f403_bpr.c.

Referenced by main().

◆ bpr_tamper_pin_enable()

void bpr_tamper_pin_enable ( confirm_state new_state )

enable or disable bpr tamper pin

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 192 of file at32f403_bpr.c.

Referenced by main(), rtc_configuration(), and TAMPER_IRQHandler().


AT32F403 Firmwary Library: BPR_private_functions

Functions
BPR_private_functions
AT32F403_periph_driver » BPR

Functions

void | bpr_reset (void)
bpr reset by crm reset register More...
flag_status | bpr_flag_get (uint32_t flag)
bpr event flag get, for tamper event flag More...
flag_status | bpr_interrupt_flag_get (uint32_t flag)
bpr interrupt flag get More...
void | bpr_flag_clear (uint32_t flag)
clear bpr tamper flag More...
void | bpr_interrupt_enable (confirm_state new_state)
enable or disable bpr tamper interrupt More...
uint16_t | bpr_data_read (bpr_data_type bpr_data)
read bpr bpr data More...
void | bpr_data_write (bpr_data_type bpr_data, uint16_t data_value)
write bpr data More...
void | bpr_rtc_output_select (bpr_rtc_output_type output_source)
select bpr rtc output More...
void | bpr_rtc_clock_calibration_value_set (uint8_t calibration_value)
set rtc clock calibration value More...
void | bpr_tamper_pin_enable (confirm_state new_state)
enable or disable bpr tamper pin More...
void | bpr_tamper_pin_active_level_set (bpr_tamper_pin_active_level_type active_level)
set bpr tamper pin active level More...

Detailed Description

Function Documentation

◆ bpr_data_read()

uint16_t bpr_data_read ( bpr_data_type bpr_data )

read bpr bpr data

Parameters
bpr_data this parameter can be one of the following values:
  • BPR_DATA1
  • BPR_DATA2 ...
  • BPR_DATA41
  • BPR_DATA42
Return values
none

Definition at line 134 of file at32f403_bpr.c.

Referenced by bpr_reg_check(), bpr_reg_judge(), and rtc_init().

◆ bpr_data_write()

void bpr_data_write | ( | bpr_data_type | bpr_data,
 |  | uint16_t | data_value
 | ) |  |

write bpr data

Parameters
bpr_data this parameter can be one of the following values:
  • BPR_DATA1
  • BPR_DATA2 ...
  • BPR_DATA41
  • BPR_DATA42
data_value (0x0000~0xFFFF)
Return values
none

Definition at line 151 of file at32f403_bpr.c.

Referenced by bpr_reg_write(), and rtc_init().

◆ bpr_flag_clear()

void bpr_flag_clear ( uint32_t flag )

clear bpr tamper flag

Parameters
flag specifies the flag to clear. this parameter can be one of the following values:
  • BPR_TAMPER_INTERRUPT_FLAG: tamper interrupt flag
  • BPR_TAMPER_EVENT_FLAG: tamper event flag
Return values
none

< bpr tamper interrupt flag

Definition at line 101 of file at32f403_bpr.c.

Referenced by main(), and TAMPER_IRQHandler().

◆ bpr_flag_get()

flag_status bpr_flag_get ( uint32_t flag )

bpr event flag get, for tamper event flag

Parameters
flag specifies the flag to check. this parameter can be one of the following values:
  • BPR_TAMPER_INTERRUPT_FLAG: tamper interrupt flag
  • BPR_TAMPER_EVENT_FLAG: tamper event flag
Return values
state of tamper event flag

< bpr tamper interrupt flag

Definition at line 61 of file at32f403_bpr.c.

Referenced by TAMPER_IRQHandler().

◆ bpr_interrupt_enable()

void bpr_interrupt_enable ( confirm_state new_state )

enable or disable bpr tamper interrupt

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 118 of file at32f403_bpr.c.

Referenced by main().

◆ bpr_interrupt_flag_get()

flag_status bpr_interrupt_flag_get ( uint32_t flag )

bpr interrupt flag get

Parameters
flag specifies the flag to check. this parameter can be one of the following values:
  • BPR_TAMPER_INTERRUPT_FLAG: tamper interrupt flag
  • BPR_TAMPER_EVENT_FLAG: tamper event flag
Return values
state of tamper event flag

< bpr tamper interrupt flag

Definition at line 81 of file at32f403_bpr.c.

◆ bpr_reset()

void bpr_reset ( void )

bpr reset by crm reset register

Parameters
none
Return values
none

Definition at line 47 of file at32f403_bpr.c.

Referenced by main(), rtc_config(), rtc_configuration(), and rtc_init().

◆ bpr_rtc_clock_calibration_value_set()

void bpr_rtc_clock_calibration_value_set ( uint8_t calibration_value )

set rtc clock calibration value

Parameters
calibration_value (0x00~0x7F)
Return values
none

Definition at line 181 of file at32f403_bpr.c.

◆ bpr_rtc_output_select()

void bpr_rtc_output_select ( bpr_rtc_output_type output_source )

select bpr rtc output

Parameters
output_source this parameter can be one of the following values:
  • BPR_RTC_OUTPUT_NONE: output disable.
  • BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE: output clock before calibration.
  • BPR_RTC_OUTPUT_ALARM: output alarm event with pluse mode.
  • BPR_RTC_OUTPUT_SECOND: output second event with pluse mode.
  • BPR_RTC_OUTPUT_CLOCK_CAL_AFTER: output clock after calibration.
Return values
none

Definition at line 167 of file at32f403_bpr.c.

Referenced by rtc_configuration().

◆ bpr_tamper_pin_active_level_set()

void bpr_tamper_pin_active_level_set ( bpr_tamper_pin_active_level_type active_level )

set bpr tamper pin active level

Parameters
active_level this parameter can be one of the following values:
  • BPR_TAMPER_PIN_ACTIVE_HIGH: tamper pin input active level is high.
  • BPR_TAMPER_PIN_ACTIVE_LOW: tamper pin input active level is low.
Return values
none

Definition at line 205 of file at32f403_bpr.c.

Referenced by main().

◆ bpr_tamper_pin_enable()

void bpr_tamper_pin_enable ( confirm_state new_state )

enable or disable bpr tamper pin

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 192 of file at32f403_bpr.c.

Referenced by main(), rtc_configuration(), and TAMPER_IRQHandler().


AT32F403 Firmwary Library: CAN

Modules | Macros
CAN
AT32F403_periph_driver

CAN driver modules. More...

Modules

CAN_timeout_count
CAN_flags_definition
can flag
CAN_interrupts_definition
can interrupt
CAN_exported_types
CAN_exported_functions
CAN_private_functions

Macros

#define | CAN_MSTS_EOIF_VAL ((uint32_t)0x00000004)
can flag clear operation macro definition val More...
#define | CAN_MSTS_QDZIF_VAL ((uint32_t)0x00000008)
#define | CAN_MSTS_EDZIF_VAL ((uint32_t)0x00000010)
#define | CAN_TSTS_TM0TCF_VAL ((uint32_t)0x00000001)
#define | CAN_TSTS_TM1TCF_VAL ((uint32_t)0x00000100)
#define | CAN_TSTS_TM2TCF_VAL ((uint32_t)0x00010000)
#define | CAN_TSTS_TM0CT_VAL ((uint32_t)0x00000080)
#define | CAN_TSTS_TM1CT_VAL ((uint32_t)0x00008000)
#define | CAN_TSTS_TM2CT_VAL ((uint32_t)0x00800000)
#define | CAN_RF0_RF0FF_VAL ((uint32_t)0x00000008)
#define | CAN_RF0_RF0OF_VAL ((uint32_t)0x00000010)
#define | CAN_RF0_RF0R_VAL ((uint32_t)0x00000020)
#define | CAN_RF1_RF1FF_VAL ((uint32_t)0x00000008)
#define | CAN_RF1_RF1OF_VAL ((uint32_t)0x00000010)
#define | CAN_RF1_RF1R_VAL ((uint32_t)0x00000020)
#define | CAN1 ((can_type *) CAN1_BASE)

Detailed Description

CAN driver modules.

Macro Definition Documentation

◆ CAN1

#define CAN1 ((can_type *) CAN1_BASE)

Definition at line 936 of file at32f403_can.h.

◆ CAN_MSTS_EDZIF_VAL

#define CAN_MSTS_EDZIF_VAL ((uint32_t)0x00000010)

edzif bit value, it clear by writing 1

Definition at line 113 of file at32f403_can.h.

◆ CAN_MSTS_EOIF_VAL

#define CAN_MSTS_EOIF_VAL ((uint32_t)0x00000004)

can flag clear operation macro definition val

eoif bit value, it clear by writing 1

Definition at line 111 of file at32f403_can.h.

◆ CAN_MSTS_QDZIF_VAL

#define CAN_MSTS_QDZIF_VAL ((uint32_t)0x00000008)

qdzif bit value, it clear by writing 1

Definition at line 112 of file at32f403_can.h.

◆ CAN_RF0_RF0FF_VAL

#define CAN_RF0_RF0FF_VAL ((uint32_t)0x00000008)

rf0ff bit value, it clear by writing 1

Definition at line 120 of file at32f403_can.h.

◆ CAN_RF0_RF0OF_VAL

#define CAN_RF0_RF0OF_VAL ((uint32_t)0x00000010)

rf0of bit value, it clear by writing 1

Definition at line 121 of file at32f403_can.h.

◆ CAN_RF0_RF0R_VAL

#define CAN_RF0_RF0R_VAL ((uint32_t)0x00000020)

rf0r bit value, it clear by writing 1

Definition at line 122 of file at32f403_can.h.

◆ CAN_RF1_RF1FF_VAL

#define CAN_RF1_RF1FF_VAL ((uint32_t)0x00000008)

rf1ff bit value, it clear by writing 1

Definition at line 123 of file at32f403_can.h.

◆ CAN_RF1_RF1OF_VAL

#define CAN_RF1_RF1OF_VAL ((uint32_t)0x00000010)

rf1of bit value, it clear by writing 1

Definition at line 124 of file at32f403_can.h.

◆ CAN_RF1_RF1R_VAL

#define CAN_RF1_RF1R_VAL ((uint32_t)0x00000020)

rf1r bit value, it clear by writing 1

Definition at line 125 of file at32f403_can.h.

◆ CAN_TSTS_TM0CT_VAL

#define CAN_TSTS_TM0CT_VAL ((uint32_t)0x00000080)

tm0ct bit value, it clear by writing 1

Definition at line 117 of file at32f403_can.h.

◆ CAN_TSTS_TM0TCF_VAL

#define CAN_TSTS_TM0TCF_VAL ((uint32_t)0x00000001)

tm0tcf bit value, it clear by writing 1

Definition at line 114 of file at32f403_can.h.

◆ CAN_TSTS_TM1CT_VAL

#define CAN_TSTS_TM1CT_VAL ((uint32_t)0x00008000)

tm1ct bit value, it clear by writing 1

Definition at line 118 of file at32f403_can.h.

◆ CAN_TSTS_TM1TCF_VAL

#define CAN_TSTS_TM1TCF_VAL ((uint32_t)0x00000100)

tm1tcf bit value, it clear by writing 1

Definition at line 115 of file at32f403_can.h.

◆ CAN_TSTS_TM2CT_VAL

#define CAN_TSTS_TM2CT_VAL ((uint32_t)0x00800000)

tm2ct bit value, it clear by writing 1

Definition at line 119 of file at32f403_can.h.

◆ CAN_TSTS_TM2TCF_VAL

#define CAN_TSTS_TM2TCF_VAL ((uint32_t)0x00010000)

tm2tcf bit value, it clear by writing 1

Definition at line 116 of file at32f403_can.h.


AT32F403 Firmwary Library: CAN_timeout_count

Macros
CAN_timeout_count
AT32F403_periph_driver » CAN

Macros

#define | FZC_TIMEOUT ((uint32_t)0x0000FFFF)
#define | DZC_TIMEOUT ((uint32_t)0x0000FFFF)

Detailed Description

Macro Definition Documentation

◆ DZC_TIMEOUT

#define DZC_TIMEOUT ((uint32_t)0x0000FFFF)

time out for dzc bit

Definition at line 51 of file at32f403_can.h.

◆ FZC_TIMEOUT

#define FZC_TIMEOUT ((uint32_t)0x0000FFFF)

time out for fzc bit

Definition at line 50 of file at32f403_can.h.


AT32F403 Firmwary Library: CAN_flags_definition

Macros
CAN_flags_definition
AT32F403_periph_driver » CAN

can flag More...

Macros

#define | CAN_EAF_FLAG ((uint32_t)0x01)
#define | CAN_EPF_FLAG ((uint32_t)0x02)
#define | CAN_BOF_FLAG ((uint32_t)0x03)
#define | CAN_ETR_FLAG ((uint32_t)0x04)
#define | CAN_EOIF_FLAG ((uint32_t)0x05)
#define | CAN_TM0TCF_FLAG ((uint32_t)0x06)
#define | CAN_TM1TCF_FLAG ((uint32_t)0x07)
#define | CAN_TM2TCF_FLAG ((uint32_t)0x08)
#define | CAN_RF0MN_FLAG ((uint32_t)0x09)
#define | CAN_RF0FF_FLAG ((uint32_t)0x0A)
#define | CAN_RF0OF_FLAG ((uint32_t)0x0B)
#define | CAN_RF1MN_FLAG ((uint32_t)0x0C)
#define | CAN_RF1FF_FLAG ((uint32_t)0x0D)
#define | CAN_RF1OF_FLAG ((uint32_t)0x0E)
#define | CAN_QDZIF_FLAG ((uint32_t)0x0F)
#define | CAN_EDZC_FLAG ((uint32_t)0x10)
#define | CAN_TMEF_FLAG ((uint32_t)0x11)

Detailed Description

can flag

Macro Definition Documentation

◆ CAN_BOF_FLAG

#define CAN_BOF_FLAG ((uint32_t)0x03)

bus-off flag

Definition at line 64 of file at32f403_can.h.

◆ CAN_EAF_FLAG

#define CAN_EAF_FLAG ((uint32_t)0x01)

error active flag

Definition at line 62 of file at32f403_can.h.

◆ CAN_EDZC_FLAG

#define CAN_EDZC_FLAG ((uint32_t)0x10)

enter doze mode confirm flag

Definition at line 77 of file at32f403_can.h.

◆ CAN_EOIF_FLAG

#define CAN_EOIF_FLAG ((uint32_t)0x05)

error occur interrupt flag

Definition at line 66 of file at32f403_can.h.

◆ CAN_EPF_FLAG

#define CAN_EPF_FLAG ((uint32_t)0x02)

error passive flag

Definition at line 63 of file at32f403_can.h.

◆ CAN_ETR_FLAG

#define CAN_ETR_FLAG ((uint32_t)0x04)

error type record flag

Definition at line 65 of file at32f403_can.h.

◆ CAN_QDZIF_FLAG

#define CAN_QDZIF_FLAG ((uint32_t)0x0F)

quit doze mode interrupt flag

Definition at line 76 of file at32f403_can.h.

◆ CAN_RF0FF_FLAG

#define CAN_RF0FF_FLAG ((uint32_t)0x0A)

receive fifo 0 full flag

Definition at line 71 of file at32f403_can.h.

◆ CAN_RF0MN_FLAG

#define CAN_RF0MN_FLAG ((uint32_t)0x09)

receive fifo 0 message num flag

Definition at line 70 of file at32f403_can.h.

◆ CAN_RF0OF_FLAG

#define CAN_RF0OF_FLAG ((uint32_t)0x0B)

receive fifo 0 overflow flag

Definition at line 72 of file at32f403_can.h.

◆ CAN_RF1FF_FLAG

#define CAN_RF1FF_FLAG ((uint32_t)0x0D)

receive fifo 1 full flag

Definition at line 74 of file at32f403_can.h.

◆ CAN_RF1MN_FLAG

#define CAN_RF1MN_FLAG ((uint32_t)0x0C)

receive fifo 1 message num flag

Definition at line 73 of file at32f403_can.h.

◆ CAN_RF1OF_FLAG

#define CAN_RF1OF_FLAG ((uint32_t)0x0E)

receive fifo 1 overflow flag

Definition at line 75 of file at32f403_can.h.

◆ CAN_TM0TCF_FLAG

#define CAN_TM0TCF_FLAG ((uint32_t)0x06)

transmit mailbox 0 transmission completed flag

Definition at line 67 of file at32f403_can.h.

◆ CAN_TM1TCF_FLAG

#define CAN_TM1TCF_FLAG ((uint32_t)0x07)

transmit mailbox 1 transmission completed flag

Definition at line 68 of file at32f403_can.h.

◆ CAN_TM2TCF_FLAG

#define CAN_TM2TCF_FLAG ((uint32_t)0x08)

transmit mailbox 2 transmission completed flag

Definition at line 69 of file at32f403_can.h.

◆ CAN_TMEF_FLAG

#define CAN_TMEF_FLAG ((uint32_t)0x11)

transmit mailbox empty flag

Definition at line 78 of file at32f403_can.h.


AT32F403 Firmwary Library: CAN_interrupts_definition

Macros
CAN_interrupts_definition
AT32F403_periph_driver » CAN

can interrupt More...

Macros

#define | CAN_TCIEN_INT ((uint32_t)0x00000001)
#define | CAN_RF0MIEN_INT ((uint32_t)0x00000002)
#define | CAN_RF0FIEN_INT ((uint32_t)0x00000004)
#define | CAN_RF0OIEN_INT ((uint32_t)0x00000008)
#define | CAN_RF1MIEN_INT ((uint32_t)0x00000010)
#define | CAN_RF1FIEN_INT ((uint32_t)0x00000020)
#define | CAN_RF1OIEN_INT ((uint32_t)0x00000040)
#define | CAN_EAIEN_INT ((uint32_t)0x00000100)
#define | CAN_EPIEN_INT ((uint32_t)0x00000200)
#define | CAN_BOIEN_INT ((uint32_t)0x00000400)
#define | CAN_ETRIEN_INT ((uint32_t)0x00000800)
#define | CAN_EOIEN_INT ((uint32_t)0x00008000)
#define | CAN_QDZIEN_INT ((uint32_t)0x00010000)
#define | CAN_EDZIEN_INT ((uint32_t)0x00020000)

Detailed Description

can interrupt

Macro Definition Documentation

◆ CAN_BOIEN_INT

#define CAN_BOIEN_INT ((uint32_t)0x00000400)

bus-off interrupt

Definition at line 98 of file at32f403_can.h.

◆ CAN_EAIEN_INT

#define CAN_EAIEN_INT ((uint32_t)0x00000100)

error active interrupt

Definition at line 96 of file at32f403_can.h.

◆ CAN_EDZIEN_INT

#define CAN_EDZIEN_INT ((uint32_t)0x00020000)

enter doze mode confirm interrupt

Definition at line 102 of file at32f403_can.h.

◆ CAN_EOIEN_INT

#define CAN_EOIEN_INT ((uint32_t)0x00008000)

error occur interrupt

Definition at line 100 of file at32f403_can.h.

◆ CAN_EPIEN_INT

#define CAN_EPIEN_INT ((uint32_t)0x00000200)

error passive interrupt

Definition at line 97 of file at32f403_can.h.

◆ CAN_ETRIEN_INT

#define CAN_ETRIEN_INT ((uint32_t)0x00000800)

error type record interrupt

Definition at line 99 of file at32f403_can.h.

◆ CAN_QDZIEN_INT

#define CAN_QDZIEN_INT ((uint32_t)0x00010000)

quit doze mode interrupt

Definition at line 101 of file at32f403_can.h.

◆ CAN_RF0FIEN_INT

#define CAN_RF0FIEN_INT ((uint32_t)0x00000004)

receive fifo 0 full interrupt

Definition at line 91 of file at32f403_can.h.

◆ CAN_RF0MIEN_INT

#define CAN_RF0MIEN_INT ((uint32_t)0x00000002)

receive fifo 0 message interrupt

Definition at line 90 of file at32f403_can.h.

◆ CAN_RF0OIEN_INT

#define CAN_RF0OIEN_INT ((uint32_t)0x00000008)

receive fifo 0 overflow interrupt

Definition at line 92 of file at32f403_can.h.

◆ CAN_RF1FIEN_INT

#define CAN_RF1FIEN_INT ((uint32_t)0x00000020)

receive fifo 1 full interrupt

Definition at line 94 of file at32f403_can.h.

◆ CAN_RF1MIEN_INT

#define CAN_RF1MIEN_INT ((uint32_t)0x00000010)

receive fifo 1 message interrupt

Definition at line 93 of file at32f403_can.h.

◆ CAN_RF1OIEN_INT

#define CAN_RF1OIEN_INT ((uint32_t)0x00000040)

receive fifo 1 overflow interrupt

Definition at line 95 of file at32f403_can.h.

◆ CAN_TCIEN_INT

#define CAN_TCIEN_INT ((uint32_t)0x00000001)

transmission complete interrupt

Definition at line 89 of file at32f403_can.h.


AT32F403 Firmwary Library: CAN_exported_types

Data Structures | Enumerations
CAN_exported_types
AT32F403_periph_driver » CAN

Data Structures

struct | can_base_type
can init structure definition More...
struct | can_baudrate_type
can baudrate structure definition More...
struct | can_filter_init_type
can filter init structure definition More...
struct | can_tx_message_type
can tx message structure definition More...
struct | can_rx_message_type
can rx message structure definition More...
struct | can_tx_mailbox_type
can controller area network tx mailbox More...
struct | can_fifo_mailbox_type
can controller area network fifo mailbox More...
struct | can_filter_register_type
can controller area network filter bit register More...
struct | can_type
type define can register all More...

Enumerations

enum | can_filter_fifo_type { CAN_FILTER_FIFO0 = 0x00 , CAN_FILTER_FIFO1 = 0x01 }
can filter fifo More...
enum | can_filter_mode_type { CAN_FILTER_MODE_ID_MASK = 0x00 , CAN_FILTER_MODE_ID_LIST = 0x01 }
can filter mode More...
enum | can_filter_bit_width_type { CAN_FILTER_16BIT = 0x00 , CAN_FILTER_32BIT = 0x01 }
can filter bit width select More...
enum | can_mode_type { CAN_MODE_COMMUNICATE = 0x00 , CAN_MODE_LOOPBACK = 0x01 , CAN_MODE_LISTENONLY = 0x02 , CAN_MODE_LISTENONLY_LOOPBACK = 0x03 }
can mode More...
enum | can_operating_mode_type { CAN_OPERATINGMODE_FREEZE = 0x00 , CAN_OPERATINGMODE_DOZE = 0x01 , CAN_OPERATINGMODE_COMMUNICATE = 0x02 }
can operating mode More...
enum | can_rsaw_type { CAN_RSAW_1TQ = 0x00 , CAN_RSAW_2TQ = 0x01 , CAN_RSAW_3TQ = 0x02 , CAN_RSAW_4TQ = 0x03 }
can resynchronization adjust width More...
enum can_bts1_type {
CAN_BTS1_1TQ = 0x00 , CAN_BTS1_2TQ = 0x01 , CAN_BTS1_3TQ = 0x02 , CAN_BTS1_4TQ = 0x03 ,
CAN_BTS1_5TQ = 0x04 , CAN_BTS1_6TQ = 0x05 , CAN_BTS1_7TQ = 0x06 , CAN_BTS1_8TQ = 0x07 ,
CAN_BTS1_9TQ = 0x08 , CAN_BTS1_10TQ = 0x09 , CAN_BTS1_11TQ = 0x0A , CAN_BTS1_12TQ = 0x0B ,
CAN_BTS1_13TQ = 0x0C , CAN_BTS1_14TQ = 0x0D , CAN_BTS1_15TQ = 0x0E , CAN_BTS1_16TQ = 0x0F
}
can bit time segment 1 More...
enum can_bts2_type {
CAN_BTS2_1TQ = 0x00 , CAN_BTS2_2TQ = 0x01 , CAN_BTS2_3TQ = 0x02 , CAN_BTS2_4TQ = 0x03 ,
CAN_BTS2_5TQ = 0x04 , CAN_BTS2_6TQ = 0x05 , CAN_BTS2_7TQ = 0x06 , CAN_BTS2_8TQ = 0x07
}
can bit time segment 2 More...
enum | can_identifier_type { CAN_ID_STANDARD = 0x00 , CAN_ID_EXTENDED = 0x01 }
can identifier type More...
enum | can_trans_frame_type { CAN_TFT_DATA = 0x00 , CAN_TFT_REMOTE = 0x01 }
can transmission frame type More...
enum | can_tx_mailbox_num_type { CAN_TX_MAILBOX0 = 0x00 , CAN_TX_MAILBOX1 = 0x01 , CAN_TX_MAILBOX2 = 0x02 }
can tx mailboxes More...
enum | can_rx_fifo_num_type { CAN_RX_FIFO0 = 0x00 , CAN_RX_FIFO1 = 0x01 }
can receive fifo More...
enum | can_transmit_status_type { CAN_TX_STATUS_FAILED = 0x00 , CAN_TX_STATUS_SUCCESSFUL = 0x01 , CAN_TX_STATUS_PENDING = 0x02 , CAN_TX_STATUS_NO_EMPTY = 0x04 }
can transmit status More...
enum | can_enter_doze_status_type { CAN_ENTER_DOZE_FAILED = 0x00 , CAN_ENTER_DOZE_SUCCESSFUL = 0x01 }
can enter doze mode status More...
enum | can_quit_doze_status_type { CAN_QUIT_DOZE_FAILED = 0x00 , CAN_QUIT_DOZE_SUCCESSFUL = 0x01 }
can quit doze mode status More...
enum | can_msg_discarding_rule_type { CAN_DISCARDING_FIRST_RECEIVED = 0x00 , CAN_DISCARDING_LAST_RECEIVED = 0x01 }
can message discarding rule select when overflow More...
enum | can_msg_sending_rule_type { CAN_SENDING_BY_ID = 0x00 , CAN_SENDING_BY_REQUEST = 0x01 }
can multiple message sending sequence rule More...
enum can_error_record_type {
CAN_ERRORRECORD_NOERR = 0x00 , CAN_ERRORRECORD_STUFFERR = 0x01 , CAN_ERRORRECORD_FORMERR = 0x02 , CAN_ERRORRECORD_ACKERR = 0x03 ,
CAN_ERRORRECORD_BITRECESSIVEERR = 0x04 , CAN_ERRORRECORD_BITDOMINANTERR = 0x05 , CAN_ERRORRECORD_CRCERR = 0x06 , CAN_ERRORRECORD_SOFTWARESETERR = 0x07
}
can error type record More...

Detailed Description

Enumeration Type Documentation

◆ can_bts1_type

enum can_bts1_type

can bit time segment 1

Enumerator
CAN_BTS1_1TQ | 1 time quantum
CAN_BTS1_2TQ | 2 time quantum
CAN_BTS1_3TQ | 3 time quantum
CAN_BTS1_4TQ | 4 time quantum
CAN_BTS1_5TQ | 5 time quantum
CAN_BTS1_6TQ | 6 time quantum
CAN_BTS1_7TQ | 7 time quantum
CAN_BTS1_8TQ | 8 time quantum
CAN_BTS1_9TQ | 9 time quantum
CAN_BTS1_10TQ | 10 time quantum
CAN_BTS1_11TQ | 11 time quantum
CAN_BTS1_12TQ | 12 time quantum
CAN_BTS1_13TQ | 13 time quantum
CAN_BTS1_14TQ | 14 time quantum
CAN_BTS1_15TQ | 15 time quantum
CAN_BTS1_16TQ | 16 time quantum

Definition at line 193 of file at32f403_can.h.

◆ can_bts2_type

enum can_bts2_type

can bit time segment 2

Enumerator
CAN_BTS2_1TQ | 1 time quantum
CAN_BTS2_2TQ | 2 time quantum
CAN_BTS2_3TQ | 3 time quantum
CAN_BTS2_4TQ | 4 time quantum
CAN_BTS2_5TQ | 5 time quantum
CAN_BTS2_6TQ | 6 time quantum
CAN_BTS2_7TQ | 7 time quantum
CAN_BTS2_8TQ | 8 time quantum

Definition at line 216 of file at32f403_can.h.

◆ can_enter_doze_status_type

enum can_enter_doze_status_type

can enter doze mode status

Enumerator
CAN_ENTER_DOZE_FAILED | can enter the doze mode failed
CAN_ENTER_DOZE_SUCCESSFUL | can enter the doze mode successful

Definition at line 279 of file at32f403_can.h.

◆ can_error_record_type

enum can_error_record_type

can error type record

Enumerator
CAN_ERRORRECORD_NOERR | no error
CAN_ERRORRECORD_STUFFERR | stuff error
CAN_ERRORRECORD_FORMERR | form error
CAN_ERRORRECORD_ACKERR | acknowledgment error
CAN_ERRORRECORD_BITRECESSIVEERR | bit recessive error
CAN_ERRORRECORD_BITDOMINANTERR | bit dominant error
CAN_ERRORRECORD_CRCERR | crc error
CAN_ERRORRECORD_SOFTWARESETERR | software set error

Definition at line 315 of file at32f403_can.h.

◆ can_filter_bit_width_type

enum can_filter_bit_width_type

can filter bit width select

Enumerator
CAN_FILTER_16BIT | two 16-bit filters
CAN_FILTER_32BIT | one 32-bit filter

Definition at line 152 of file at32f403_can.h.

◆ can_filter_fifo_type

enum can_filter_fifo_type

can filter fifo

Enumerator
CAN_FILTER_FIFO0 | filter fifo 0 assignment for filter x
CAN_FILTER_FIFO1 | filter fifo 1 assignment for filter x

Definition at line 134 of file at32f403_can.h.

◆ can_filter_mode_type

enum can_filter_mode_type

can filter mode

Enumerator
CAN_FILTER_MODE_ID_MASK | identifier mask mode
CAN_FILTER_MODE_ID_LIST | identifier list mode

Definition at line 143 of file at32f403_can.h.

◆ can_identifier_type

enum can_identifier_type

can identifier type

Enumerator
CAN_ID_STANDARD | standard Id
CAN_ID_EXTENDED | extended Id

Definition at line 231 of file at32f403_can.h.

◆ can_mode_type

enum can_mode_type

can mode

Enumerator
CAN_MODE_COMMUNICATE | communication mode
CAN_MODE_LOOPBACK | loopback mode
CAN_MODE_LISTENONLY | listen-only mode
CAN_MODE_LISTENONLY_LOOPBACK | loopback combined with listen-only mode

Definition at line 161 of file at32f403_can.h.

◆ can_msg_discarding_rule_type

enum can_msg_discarding_rule_type

can message discarding rule select when overflow

Enumerator
CAN_DISCARDING_FIRST_RECEIVED | can discarding the first received message
CAN_DISCARDING_LAST_RECEIVED | can discarding the last received message

Definition at line 297 of file at32f403_can.h.

◆ can_msg_sending_rule_type

enum can_msg_sending_rule_type

can multiple message sending sequence rule

Enumerator
CAN_SENDING_BY_ID | can sending the minimum id message first
CAN_SENDING_BY_REQUEST | can sending the first request message first

Definition at line 306 of file at32f403_can.h.

◆ can_operating_mode_type

enum can_operating_mode_type

can operating mode

Enumerator
CAN_OPERATINGMODE_FREEZE | freeze mode
CAN_OPERATINGMODE_DOZE | doze mode
CAN_OPERATINGMODE_COMMUNICATE | communication mode

Definition at line 172 of file at32f403_can.h.

◆ can_quit_doze_status_type

enum can_quit_doze_status_type

can quit doze mode status

Enumerator
CAN_QUIT_DOZE_FAILED | can quit doze mode failed
CAN_QUIT_DOZE_SUCCESSFUL | can quit doze mode successful

Definition at line 288 of file at32f403_can.h.

◆ can_rsaw_type

enum can_rsaw_type

can resynchronization adjust width

Enumerator
CAN_RSAW_1TQ | 1 time quantum
CAN_RSAW_2TQ | 2 time quantum
CAN_RSAW_3TQ | 3 time quantum
CAN_RSAW_4TQ | 4 time quantum

Definition at line 182 of file at32f403_can.h.

◆ can_rx_fifo_num_type

enum can_rx_fifo_num_type

can receive fifo

Enumerator
CAN_RX_FIFO0 | can fifo 0 used to receive
CAN_RX_FIFO1 | can fifo 1 used to receive

Definition at line 259 of file at32f403_can.h.

◆ can_trans_frame_type

enum can_trans_frame_type

can transmission frame type

Enumerator
CAN_TFT_DATA | data frame
CAN_TFT_REMOTE | remote frame

Definition at line 240 of file at32f403_can.h.

◆ can_transmit_status_type

enum can_transmit_status_type

can transmit status

Enumerator
CAN_TX_STATUS_FAILED | can transmission failed
CAN_TX_STATUS_SUCCESSFUL | can transmission successful
CAN_TX_STATUS_PENDING | can transmission pending
CAN_TX_STATUS_NO_EMPTY | can transmission no empty mailbox

Definition at line 268 of file at32f403_can.h.

◆ can_tx_mailbox_num_type

enum can_tx_mailbox_num_type

can tx mailboxes

Enumerator
CAN_TX_MAILBOX0 | can tx mailbox 0
CAN_TX_MAILBOX1 | can tx mailbox 1
CAN_TX_MAILBOX2 | can tx mailbox 2

Definition at line 249 of file at32f403_can.h.


AT32F403 Firmwary Library: can_base_type Struct Reference

Data Fields
can_base_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can init structure definition More...

#include <at32f403_can.h>

Data Fields

can_mode_type mode_selection
confirm_state ttc_enable
confirm_state aebo_enable
confirm_state aed_enable
confirm_state prsf_enable
can_msg_discarding_rule_type mdrsel_selection
can_msg_sending_rule_type mmssr_selection

Detailed Description

can init structure definition

Definition at line 330 of file at32f403_can.h.

Field Documentation

◆ aebo_enable

confirm_state can_base_type::aebo_enable

automatic exit bus-off enable

Definition at line 336 of file at32f403_can.h.

Referenced by can_base_init(), can_configuration(), and can_default_para_init().

◆ aed_enable

confirm_state can_base_type::aed_enable

automatic exit doze mode enable

Definition at line 338 of file at32f403_can.h.

Referenced by can_base_init(), can_configuration(), and can_default_para_init().

◆ mdrsel_selection

can_msg_discarding_rule_type can_base_type::mdrsel_selection

message discarding rule select when overflow

Definition at line 342 of file at32f403_can.h.

Referenced by can_base_init(), can_configuration(), and can_default_para_init().

◆ mmssr_selection

can_msg_sending_rule_type can_base_type::mmssr_selection

multiple message sending sequence rule

Definition at line 344 of file at32f403_can.h.

Referenced by can_base_init(), can_configuration(), and can_default_para_init().

◆ mode_selection

can_mode_type can_base_type::mode_selection

specifies the can mode.

Definition at line 332 of file at32f403_can.h.

Referenced by can_base_init(), can_configuration(), and can_default_para_init().

◆ prsf_enable

confirm_state can_base_type::prsf_enable

prohibit retransmission when sending fails enable

Definition at line 340 of file at32f403_can.h.

Referenced by can_base_init(), can_configuration(), and can_default_para_init().

◆ ttc_enable

confirm_state can_base_type::ttc_enable

time triggered communication mode enable

Definition at line 334 of file at32f403_can.h.

Referenced by can_base_init(), can_configuration(), and can_default_para_init().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_baudrate_type Struct Reference

Data Fields
can_baudrate_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can baudrate structure definition More...

#include <at32f403_can.h>

Data Fields

uint16_t baudrate_div
can_rsaw_type rsaw_size
can_bts1_type bts1_size
can_bts2_type bts2_size

Detailed Description

can baudrate structure definition

Definition at line 351 of file at32f403_can.h.

Field Documentation

◆ baudrate_div

uint16_t can_baudrate_type::baudrate_div

baudrate division,this parameter can be 0x001~0x1000.

Definition at line 353 of file at32f403_can.h.

Referenced by can_baudrate_default_para_init(), can_baudrate_set(), and can_configuration().

◆ bts1_size

can_bts1_type can_baudrate_type::bts1_size

bit time segment 1

Definition at line 357 of file at32f403_can.h.

Referenced by can_baudrate_default_para_init(), can_baudrate_set(), and can_configuration().

◆ bts2_size

can_bts2_type can_baudrate_type::bts2_size

bit time segment 2

Definition at line 359 of file at32f403_can.h.

Referenced by can_baudrate_default_para_init(), can_baudrate_set(), and can_configuration().

◆ rsaw_size

can_rsaw_type can_baudrate_type::rsaw_size

resynchronization adjust width

Definition at line 355 of file at32f403_can.h.

Referenced by can_baudrate_default_para_init(), can_baudrate_set(), and can_configuration().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_filter_init_type Struct Reference

Data Fields
can_filter_init_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can filter init structure definition More...

#include <at32f403_can.h>

Data Fields

confirm_state filter_activate_enable
can_filter_mode_type filter_mode
can_filter_fifo_type filter_fifo
uint8_t | filter_number
can_filter_bit_width_type filter_bit
uint16_t | filter_id_high
uint16_t | filter_id_low
uint16_t | filter_mask_high
uint16_t | filter_mask_low

Detailed Description

can filter init structure definition

Definition at line 366 of file at32f403_can.h.

Field Documentation

◆ filter_activate_enable

confirm_state can_filter_init_type::filter_activate_enable

enable or disable the filter activate.

Definition at line 368 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_bit

can_filter_bit_width_type can_filter_init_type::filter_bit

config the filter bit width 16bit or 32bit.

Definition at line 376 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_fifo

can_filter_fifo_type can_filter_init_type::filter_fifo

config the fifo which will be assigned to the filter.

Definition at line 372 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_id_high

uint16_t can_filter_init_type::filter_id_high

config the filter identification, for 32-bit configuration it's high 16 bits, for 16-bit configuration it's first.

Definition at line 378 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_id_low

uint16_t can_filter_init_type::filter_id_low

config the filter identification, for 32-bit configuration it's low 16 bits, for 16-bit configuration it's second.

Definition at line 381 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_mask_high

uint16_t can_filter_init_type::filter_mask_high

config the filter mask or identification, according to the filtering mode, for 32-bit configuration it's high 16 bits, for 16-bit configuration it's first.

Definition at line 384 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_mask_low

uint16_t can_filter_init_type::filter_mask_low

config the filter mask or identification, according to the filtering mode, for 32-bit configuration it's low 16 bits, for 16-bit configuration it's second.

Definition at line 387 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_mode

can_filter_mode_type can_filter_init_type::filter_mode

config the filter mode mask or list.

Definition at line 370 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

◆ filter_number

uint8_t can_filter_init_type::filter_number

config the filter number, parameter ranges from 0 to 13.

Definition at line 374 of file at32f403_can.h.

Referenced by can_configuration(), can_filter_default_para_init(), and can_filter_init().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_tx_message_type Struct Reference

Data Fields
can_tx_message_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can tx message structure definition More...

#include <at32f403_can.h>

Data Fields

uint32_t | standard_id
uint32_t | extended_id
can_identifier_type id_type
can_trans_frame_type frame_type
uint8_t | dlc
uint8_t | data [8]

Detailed Description

can tx message structure definition

Definition at line 394 of file at32f403_can.h.

Field Documentation

◆ data

uint8_t can_tx_message_type::data[8]

contains the transmit data. it ranges from 0 to 0xFF.

Definition at line 409 of file at32f403_can.h.

Referenced by can_message_transmit(), and can_transmit_data().

◆ dlc

uint8_t can_tx_message_type::dlc

specifies frame data length that will be transmitted. this parameter can be a value between 0 to 8

Definition at line 406 of file at32f403_can.h.

Referenced by can_message_transmit(), and can_transmit_data().

◆ extended_id

uint32_t can_tx_message_type::extended_id

specifies the 29 bits extended identifier. this parameter can be a value between 0 to 0x1FFFFFFF.

Definition at line 399 of file at32f403_can.h.

Referenced by can_message_transmit(), and can_transmit_data().

◆ frame_type

can_trans_frame_type can_tx_message_type::frame_type

specifies frame type for the transmit message.

Definition at line 404 of file at32f403_can.h.

Referenced by can_message_transmit(), and can_transmit_data().

◆ id_type

can_identifier_type can_tx_message_type::id_type

specifies identifier type for the transmit message.

Definition at line 402 of file at32f403_can.h.

Referenced by can_message_transmit(), and can_transmit_data().

◆ standard_id

uint32_t can_tx_message_type::standard_id

specifies the 11 bits standard identifier. this parameter can be a value between 0 to 0x7FF.

Definition at line 396 of file at32f403_can.h.

Referenced by can_message_transmit(), and can_transmit_data().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_rx_message_type Struct Reference

Data Fields
can_rx_message_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can rx message structure definition More...

#include <at32f403_can.h>

Data Fields

uint32_t | standard_id
uint32_t | extended_id
can_identifier_type id_type
can_trans_frame_type frame_type
uint8_t | dlc
uint8_t | data [8]
uint8_t | filter_index

Detailed Description

can rx message structure definition

Definition at line 416 of file at32f403_can.h.

Field Documentation

◆ data

uint8_t can_rx_message_type::data[8]

contains the receive data. it ranges from 0 to 0xFF.

Definition at line 431 of file at32f403_can.h.

Referenced by can_message_receive().

◆ dlc

uint8_t can_rx_message_type::dlc

specifies the frame data length that will be received. this parameter can be a value between 0 to 8

Definition at line 428 of file at32f403_can.h.

Referenced by can_message_receive().

◆ extended_id

uint32_t can_rx_message_type::extended_id

specifies the 29 bits extended identifier. this parameter can be a value between 0 to 0x1FFFFFFF.

Definition at line 421 of file at32f403_can.h.

Referenced by can_message_receive(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ filter_index

uint8_t can_rx_message_type::filter_index

specifies the message stored in which filter this parameter can be a value between 0 to 0xFF

Definition at line 433 of file at32f403_can.h.

Referenced by can_message_receive().

◆ frame_type

can_trans_frame_type can_rx_message_type::frame_type

specifies frame type for the receive message.

Definition at line 426 of file at32f403_can.h.

Referenced by can_message_receive().

◆ id_type

can_identifier_type can_rx_message_type::id_type

specifies identifier type for the receive message.

Definition at line 424 of file at32f403_can.h.

Referenced by can_message_receive(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ standard_id

uint32_t can_rx_message_type::standard_id

specifies the 11 bits standard identifier this parameter can be a value between 0 to 0x7FF.

Definition at line 418 of file at32f403_can.h.

Referenced by can_message_receive(), and USBFS_L_CAN1_RX0_IRQHandler().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_tx_mailbox_type Struct Reference

Data Fields
can_tx_mailbox_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can controller area network tx mailbox More...

#include <at32f403_can.h>

Data Fields

union {
__IO uint32_t tmi
struct {
__IO uint32_t tmsr: 1
__IO uint32_t tmfrsel: 1
__IO uint32_t tmidsel: 1
__IO uint32_t tmeid: 18
__IO uint32_t tmsid: 11
} tmi_bit
};
can tmi register More...
union {
__IO uint32_t tmc
struct {
__IO uint32_t tmdtbl: 4
__IO uint32_t reserved1: 4
__IO uint32_t tmtsten: 1
__IO uint32_t reserved2: 7
__IO uint32_t tmts: 16
} tmc_bit
};
can tmc register More...
union {
__IO uint32_t tmdtl
struct {
__IO uint32_t tmdt0: 8
__IO uint32_t tmdt1: 8
__IO uint32_t tmdt2: 8
__IO uint32_t tmdt3: 8
} tmdtl_bit
};
can tmdtl register More...
union {
__IO uint32_t tmdth
struct {
__IO uint32_t tmdt4: 8
__IO uint32_t tmdt5: 8
__IO uint32_t tmdt6: 8
__IO uint32_t tmdt7: 8
} tmdth_bit
};
can tmdth register More...

Detailed Description

can controller area network tx mailbox

Definition at line 440 of file at32f403_can.h.

Field Documentation

◆

union { ... } can_tx_mailbox_type::@196

can tmi register

◆

union { ... } can_tx_mailbox_type::@198

can tmc register

◆

union { ... } can_tx_mailbox_type::@200

can tmdtl register

◆

union { ... } can_tx_mailbox_type::@202

can tmdth register

◆ reserved1

__IO uint32_t can_tx_mailbox_type::reserved1

Definition at line 467 of file at32f403_can.h.

◆ reserved2

__IO uint32_t can_tx_mailbox_type::reserved2

Definition at line 469 of file at32f403_can.h.

◆ tmc

__IO uint32_t can_tx_mailbox_type::tmc

Definition at line 463 of file at32f403_can.h.

◆

struct { ... } can_tx_mailbox_type::tmc_bit

Referenced by can_message_transmit(), and can_ttc_mode_enable().

◆ tmdt0

__IO uint32_t can_tx_mailbox_type::tmdt0

Definition at line 482 of file at32f403_can.h.

◆ tmdt1

__IO uint32_t can_tx_mailbox_type::tmdt1

Definition at line 483 of file at32f403_can.h.

◆ tmdt2

__IO uint32_t can_tx_mailbox_type::tmdt2

Definition at line 484 of file at32f403_can.h.

◆ tmdt3

__IO uint32_t can_tx_mailbox_type::tmdt3

Definition at line 485 of file at32f403_can.h.

◆ tmdt4

__IO uint32_t can_tx_mailbox_type::tmdt4

Definition at line 497 of file at32f403_can.h.

◆ tmdt5

__IO uint32_t can_tx_mailbox_type::tmdt5

Definition at line 498 of file at32f403_can.h.

◆ tmdt6

__IO uint32_t can_tx_mailbox_type::tmdt6

Definition at line 499 of file at32f403_can.h.

◆ tmdt7

__IO uint32_t can_tx_mailbox_type::tmdt7

Definition at line 500 of file at32f403_can.h.

◆ tmdtbl

__IO uint32_t can_tx_mailbox_type::tmdtbl

Definition at line 466 of file at32f403_can.h.

Referenced by can_message_transmit().

◆ tmdth

__IO uint32_t can_tx_mailbox_type::tmdth

Definition at line 494 of file at32f403_can.h.

Referenced by can_message_transmit().

◆

struct { ... } can_tx_mailbox_type::tmdth_bit

◆ tmdtl

__IO uint32_t can_tx_mailbox_type::tmdtl

Definition at line 479 of file at32f403_can.h.

Referenced by can_message_transmit().

◆

struct { ... } can_tx_mailbox_type::tmdtl_bit

◆ tmeid

__IO uint32_t can_tx_mailbox_type::tmeid

Definition at line 453 of file at32f403_can.h.

◆ tmfrsel

__IO uint32_t can_tx_mailbox_type::tmfrsel

Definition at line 451 of file at32f403_can.h.

Referenced by can_message_transmit().

◆ tmi

__IO uint32_t can_tx_mailbox_type::tmi

Definition at line 447 of file at32f403_can.h.

Referenced by can_message_transmit().

◆

struct { ... } can_tx_mailbox_type::tmi_bit

Referenced by can_message_transmit().

◆ tmidsel

__IO uint32_t can_tx_mailbox_type::tmidsel

Definition at line 452 of file at32f403_can.h.

Referenced by can_message_transmit().

◆ tmsid

__IO uint32_t can_tx_mailbox_type::tmsid

Definition at line 454 of file at32f403_can.h.

Referenced by can_message_transmit().

◆ tmsr

__IO uint32_t can_tx_mailbox_type::tmsr

Definition at line 450 of file at32f403_can.h.

Referenced by can_message_transmit().

◆ tmts

__IO uint32_t can_tx_mailbox_type::tmts

Definition at line 470 of file at32f403_can.h.

◆ tmtsten

__IO uint32_t can_tx_mailbox_type::tmtsten

Definition at line 468 of file at32f403_can.h.

Referenced by can_ttc_mode_enable().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_fifo_mailbox_type Struct Reference

Data Fields
can_fifo_mailbox_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can controller area network fifo mailbox More...

#include <at32f403_can.h>

Data Fields

union {
__IO uint32_t rfi
struct {
__IO uint32_t reserved1: 1
__IO uint32_t rffri: 1
__IO uint32_t rfidi: 1
__IO uint32_t rfeid: 18
__IO uint32_t rfsid: 11
} rfi_bit
};
can rfi register More...
union {
__IO uint32_t rfc
struct {
__IO uint32_t rfdtl: 4
__IO uint32_t reserved1: 4
__IO uint32_t rffmn: 8
__IO uint32_t rfts: 16
} rfc_bit
};
can rfc register More...
union {
__IO uint32_t rfdtl
struct {
__IO uint32_t rfdt0: 8
__IO uint32_t rfdt1: 8
__IO uint32_t rfdt2: 8
__IO uint32_t rfdt3: 8
} rfdtl_bit
};
can rfdtl register More...
union {
__IO uint32_t rfdth
struct {
__IO uint32_t rfdt4: 8
__IO uint32_t rfdt5: 8
__IO uint32_t rfdt6: 8
__IO uint32_t rfdt7: 8
} rfdth_bit
};
can rfdth register More...

Detailed Description

can controller area network fifo mailbox

Definition at line 508 of file at32f403_can.h.

Field Documentation

◆

union { ... } can_fifo_mailbox_type::@208

can rfi register

◆

union { ... } can_fifo_mailbox_type::@210

can rfc register

◆

union { ... } can_fifo_mailbox_type::@212

can rfdtl register

◆

union { ... } can_fifo_mailbox_type::@214

can rfdth register

◆ reserved1

__IO uint32_t can_fifo_mailbox_type::reserved1

Definition at line 518 of file at32f403_can.h.

◆ rfc

__IO uint32_t can_fifo_mailbox_type::rfc

Definition at line 531 of file at32f403_can.h.

◆

struct { ... } can_fifo_mailbox_type::rfc_bit

Referenced by can_message_receive().

◆ rfdt0

__IO uint32_t can_fifo_mailbox_type::rfdt0

Definition at line 549 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdt1

__IO uint32_t can_fifo_mailbox_type::rfdt1

Definition at line 550 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdt2

__IO uint32_t can_fifo_mailbox_type::rfdt2

Definition at line 551 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdt3

__IO uint32_t can_fifo_mailbox_type::rfdt3

Definition at line 552 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdt4

__IO uint32_t can_fifo_mailbox_type::rfdt4

Definition at line 564 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdt5

__IO uint32_t can_fifo_mailbox_type::rfdt5

Definition at line 565 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdt6

__IO uint32_t can_fifo_mailbox_type::rfdt6

Definition at line 566 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdt7

__IO uint32_t can_fifo_mailbox_type::rfdt7

Definition at line 567 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfdth

__IO uint32_t can_fifo_mailbox_type::rfdth

Definition at line 561 of file at32f403_can.h.

◆

struct { ... } can_fifo_mailbox_type::rfdth_bit

Referenced by can_message_receive().

◆ rfdtl

__IO uint32_t can_fifo_mailbox_type::rfdtl

Definition at line 534 of file at32f403_can.h.

Referenced by can_message_receive().

◆

struct { ... } can_fifo_mailbox_type::rfdtl_bit

Referenced by can_message_receive().

◆ rfeid

__IO uint32_t can_fifo_mailbox_type::rfeid

Definition at line 521 of file at32f403_can.h.

◆ rffmn

__IO uint32_t can_fifo_mailbox_type::rffmn

Definition at line 536 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rffri

__IO uint32_t can_fifo_mailbox_type::rffri

Definition at line 519 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfi

__IO uint32_t can_fifo_mailbox_type::rfi

Definition at line 515 of file at32f403_can.h.

Referenced by can_message_receive().

◆

struct { ... } can_fifo_mailbox_type::rfi_bit

Referenced by can_message_receive().

◆ rfidi

__IO uint32_t can_fifo_mailbox_type::rfidi

Definition at line 520 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfsid

__IO uint32_t can_fifo_mailbox_type::rfsid

Definition at line 522 of file at32f403_can.h.

Referenced by can_message_receive().

◆ rfts

__IO uint32_t can_fifo_mailbox_type::rfts

Definition at line 537 of file at32f403_can.h.

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_filter_register_type Struct Reference

Data Fields
can_filter_register_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

can controller area network filter bit register More...

#include <at32f403_can.h>

Data Fields

__IO uint32_t | ffdb1
__IO uint32_t | ffdb2

Detailed Description

can controller area network filter bit register

Definition at line 575 of file at32f403_can.h.

Field Documentation

◆ ffdb1

__IO uint32_t can_filter_register_type::ffdb1

Definition at line 577 of file at32f403_can.h.

Referenced by can_filter_init().

◆ ffdb2

__IO uint32_t can_filter_register_type::ffdb2

Definition at line 578 of file at32f403_can.h.

Referenced by can_filter_init().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: can_type Struct Reference

Data Fields
can_type Struct Reference
AT32F403_periph_driver » CAN » CAN_exported_types

type define can register all More...

#include <at32f403_can.h>

Data Fields

union {
__IO uint32_t mctrl
struct {
__IO uint32_t fzen: 1
__IO uint32_t dzen: 1
__IO uint32_t mmssr: 1
__IO uint32_t mdrsel: 1
__IO uint32_t prsfen: 1
__IO uint32_t aeden: 1
__IO uint32_t aeboen: 1
__IO uint32_t ttcen: 1
__IO uint32_t reserved1: 7
__IO uint32_t sprst: 1
__IO uint32_t ptd: 1
__IO uint32_t reserved2: 15
} mctrl_bit
};
can mctrl register, offset:0x00 More...
union {
__IO uint32_t msts
struct {
__IO uint32_t fzc: 1
__IO uint32_t dzc: 1
__IO uint32_t eoif: 1
__IO uint32_t qdzif: 1
__IO uint32_t edzif: 1
__IO uint32_t reserved1: 3
__IO uint32_t cuss: 1
__IO uint32_t curs: 1
__IO uint32_t lsamprx: 1
__IO uint32_t realrx: 1
__IO uint32_t reserved2: 20
} msts_bit
};
can msts register, offset:0x04 More...
union {
__IO uint32_t tsts
struct {
__IO uint32_t tm0tcf: 1
__IO uint32_t tm0tsf: 1
__IO uint32_t tm0alf: 1
__IO uint32_t tm0tef: 1
__IO uint32_t reserved1: 3
__IO uint32_t tm0ct: 1
__IO uint32_t tm1tcf: 1
__IO uint32_t tm1tsf: 1
__IO uint32_t tm1alf: 1
__IO uint32_t tm1tef: 1
__IO uint32_t reserved2: 3
__IO uint32_t tm1ct: 1
__IO uint32_t tm2tcf: 1
__IO uint32_t tm2tsf: 1
__IO uint32_t tm2alf: 1
__IO uint32_t tm2tef: 1
__IO uint32_t reserved3: 3
__IO uint32_t tm2ct: 1
__IO uint32_t tmnr: 2
__IO uint32_t tm0ef: 1
__IO uint32_t tm1ef: 1
__IO uint32_t tm2ef: 1
__IO uint32_t tm0lpf: 1
__IO uint32_t tm1lpf: 1
__IO uint32_t tm2lpf: 1
} tsts_bit
};
can tsts register, offset:0x08 More...
union {
__IO uint32_t rf0
struct {
__IO uint32_t rf0mn: 2
__IO uint32_t reserved1: 1
__IO uint32_t rf0ff: 1
__IO uint32_t rf0of: 1
__IO uint32_t rf0r: 1
__IO uint32_t reserved2: 26
} rf0_bit
};
can rf0 register, offset:0x0C More...
union {
__IO uint32_t rf1
struct {
__IO uint32_t rf1mn: 2
__IO uint32_t reserved1: 1
__IO uint32_t rf1ff: 1
__IO uint32_t rf1of: 1
__IO uint32_t rf1r: 1
__IO uint32_t reserved2: 26
} rf1_bit
};
can rf1 register, offset:0x10 More...
union {
__IO uint32_t inten
struct {
__IO uint32_t tcien: 1
__IO uint32_t rf0mien: 1
__IO uint32_t rf0fien: 1
__IO uint32_t rf0oien: 1
__IO uint32_t rf1mien: 1
__IO uint32_t rf1fien: 1
__IO uint32_t rf1oien: 1
__IO uint32_t reserved1: 1
__IO uint32_t eaien: 1
__IO uint32_t epien: 1
__IO uint32_t boien: 1
__IO uint32_t etrien: 1
__IO uint32_t reserved2: 3
__IO uint32_t eoien: 1
__IO uint32_t qdzien: 1
__IO uint32_t edzien: 1
__IO uint32_t reserved3: 14
} inten_bit
};
can inten register, offset:0x14 More...
union {
__IO uint32_t ests
struct {
__IO uint32_t eaf: 1
__IO uint32_t epf: 1
__IO uint32_t bof: 1
__IO uint32_t reserved1: 1
__IO uint32_t etr: 3
__IO uint32_t reserved2: 9
__IO uint32_t tec: 8
__IO uint32_t rec: 8
} ests_bit
};
can ests register, offset:0x18 More...
union {
__IO uint32_t btmg
struct {
__IO uint32_t brdiv: 12
__IO uint32_t reserved1: 4
__IO uint32_t bts1: 4
__IO uint32_t bts2: 3
__IO uint32_t reserved2: 1
__IO uint32_t rsaw: 2
__IO uint32_t reserved3: 4
__IO uint32_t lben: 1
__IO uint32_t loen: 1
} btmg_bit
};
can btmg register, offset:0x1C More...
can_tx_mailbox_type | tx_mailbox [3]
can controller area network tx mailbox register, offset:0x180~0x1AC More...
can_fifo_mailbox_type | fifo_mailbox [2]
can controller area network fifo mailbox register, offset:0x1B0~0x1CC More...
union {
__IO uint32_t fctrl
struct {
__IO uint32_t fcs: 1
__IO uint32_t reserved1: 31
} fctrl_bit
};
can fctrl register, offset:0x200 More...
union {
__IO uint32_t fmcfg
struct {
__IO uint32_t fmsel0: 1
__IO uint32_t fmsel1: 1
__IO uint32_t fmsel2: 1
__IO uint32_t fmsel3: 1
__IO uint32_t fmsel4: 1
__IO uint32_t fmsel5: 1
__IO uint32_t fmsel6: 1
__IO uint32_t fmsel7: 1
__IO uint32_t fmsel8: 1
__IO uint32_t fmsel9: 1
__IO uint32_t fmsel10: 1
__IO uint32_t fmsel11: 1
__IO uint32_t fmsel12: 1
__IO uint32_t fmsel13: 1
__IO uint32_t reserved1: 18
} fmcfg_bit
};
can fmcfg register, offset:0x204 More...
union {
__IO uint32_t fbwcfg
struct {
__IO uint32_t fbwsel0: 1
__IO uint32_t fbwsel1: 1
__IO uint32_t fbwsel2: 1
__IO uint32_t fbwsel3: 1
__IO uint32_t fbwsel4: 1
__IO uint32_t fbwsel5: 1
__IO uint32_t fbwsel6: 1
__IO uint32_t fbwsel7: 1
__IO uint32_t fbwsel8: 1
__IO uint32_t fbwsel9: 1
__IO uint32_t fbwsel10: 1
__IO uint32_t fbwsel11: 1
__IO uint32_t fbwsel12: 1
__IO uint32_t fbwsel13: 1
__IO uint32_t reserved1: 18
} fbwcfg_bit
};
can fbwcfg register, offset:0x20C More...
__IO uint32_t | reserved4
can reserved register, offset:0x210 More...
union {
__IO uint32_t frf
struct {
__IO uint32_t frfsel0: 1
__IO uint32_t frfsel1: 1
__IO uint32_t frfsel2: 1
__IO uint32_t frfsel3: 1
__IO uint32_t frfsel4: 1
__IO uint32_t frfsel5: 1
__IO uint32_t frfsel6: 1
__IO uint32_t frfsel7: 1
__IO uint32_t frfsel8: 1
__IO uint32_t frfsel9: 1
__IO uint32_t frfsel10: 1
__IO uint32_t frfsel11: 1
__IO uint32_t frfsel12: 1
__IO uint32_t frfsel13: 1
__IO uint32_t reserved1: 18
} frf_bit
};
can frf register, offset:0x214 More...
__IO uint32_t | reserved5
can reserved register, offset:0x218 More...
union {
__IO uint32_t facfg
struct {
__IO uint32_t faen0: 1
__IO uint32_t faen1: 1
__IO uint32_t faen2: 1
__IO uint32_t faen3: 1
__IO uint32_t faen4: 1
__IO uint32_t faen5: 1
__IO uint32_t faen6: 1
__IO uint32_t faen7: 1
__IO uint32_t faen8: 1
__IO uint32_t faen9: 1
__IO uint32_t faen10: 1
__IO uint32_t faen11: 1
__IO uint32_t faen12: 1
__IO uint32_t faen13: 1
__IO uint32_t reserved1: 18
} facfg_bit
};
can facfg register, offset:0x21C More...
__IO uint32_t | reserved6 [8]
can reserved register, offset:0x220~0x23C More...
can_filter_register_type | ffb [14]
can ffb register, offset:0x240~0x2AC More...

Detailed Description

type define can register all

Definition at line 584 of file at32f403_can.h.

Field Documentation

◆

union { ... } can_type::@220

can mctrl register, offset:0x00

◆

union { ... } can_type::@222

can msts register, offset:0x04

◆

union { ... } can_type::@224

can tsts register, offset:0x08

◆

union { ... } can_type::@226

can rf0 register, offset:0x0C

◆

union { ... } can_type::@228

can rf1 register, offset:0x10

◆

union { ... } can_type::@230

can inten register, offset:0x14

◆

union { ... } can_type::@232

can ests register, offset:0x18

◆

union { ... } can_type::@234

can btmg register, offset:0x1C

◆

union { ... } can_type::@236

can fctrl register, offset:0x200

◆

union { ... } can_type::@238

can fmcfg register, offset:0x204

◆

union { ... } can_type::@240

can fbwcfg register, offset:0x20C

◆

union { ... } can_type::@242

can frf register, offset:0x214

◆

union { ... } can_type::@244

can facfg register, offset:0x21C

◆ aeboen

__IO uint32_t can_type::aeboen

Definition at line 601 of file at32f403_can.h.

Referenced by can_base_init().

◆ aeden

__IO uint32_t can_type::aeden

Definition at line 600 of file at32f403_can.h.

Referenced by can_base_init().

◆ bof

__IO uint32_t can_type::bof

Definition at line 740 of file at32f403_can.h.

Referenced by can_flag_get().

◆ boien

__IO uint32_t can_type::boien

Definition at line 720 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ brdiv

__IO uint32_t can_type::brdiv

Definition at line 757 of file at32f403_can.h.

Referenced by can_baudrate_set().

◆ btmg

__IO uint32_t can_type::btmg

Definition at line 754 of file at32f403_can.h.

◆

struct { ... } can_type::btmg_bit

Referenced by can_base_init(), and can_baudrate_set().

◆ bts1

__IO uint32_t can_type::bts1

Definition at line 759 of file at32f403_can.h.

Referenced by can_baudrate_set().

◆ bts2

__IO uint32_t can_type::bts2

Definition at line 760 of file at32f403_can.h.

Referenced by can_baudrate_set().

◆ curs

__IO uint32_t can_type::curs

Definition at line 625 of file at32f403_can.h.

◆ cuss

__IO uint32_t can_type::cuss

Definition at line 624 of file at32f403_can.h.

◆ dzc

__IO uint32_t can_type::dzc

Definition at line 619 of file at32f403_can.h.

Referenced by can_doze_mode_enter(), can_doze_mode_exit(), can_flag_get(), and can_operating_mode_set().

◆ dzen

__IO uint32_t can_type::dzen

Definition at line 596 of file at32f403_can.h.

Referenced by can_base_init(), can_baudrate_set(), can_doze_mode_enter(), can_doze_mode_exit(), and can_operating_mode_set().

◆ eaf

__IO uint32_t can_type::eaf

Definition at line 738 of file at32f403_can.h.

Referenced by can_flag_get().

◆ eaien

__IO uint32_t can_type::eaien

Definition at line 718 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ edzien

__IO uint32_t can_type::edzien

Definition at line 725 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ edzif

__IO uint32_t can_type::edzif

Definition at line 622 of file at32f403_can.h.

Referenced by can_flag_get().

◆ eoien

__IO uint32_t can_type::eoien

Definition at line 723 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ eoif

__IO uint32_t can_type::eoif

Definition at line 620 of file at32f403_can.h.

Referenced by can_flag_get().

◆ epf

__IO uint32_t can_type::epf

Definition at line 739 of file at32f403_can.h.

Referenced by can_flag_get().

◆ epien

__IO uint32_t can_type::epien

Definition at line 719 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ ests

__IO uint32_t can_type::ests

Definition at line 735 of file at32f403_can.h.

Referenced by can_flag_clear().

◆

struct { ... } can_type::ests_bit

Referenced by can_error_type_record_get(), can_flag_get(), can_receive_error_counter_get(), and can_transmit_error_counter_get().

◆ etr

__IO uint32_t can_type::etr

Definition at line 742 of file at32f403_can.h.

Referenced by can_error_type_record_get(), and can_flag_get().

◆ etrien

__IO uint32_t can_type::etrien

Definition at line 721 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ facfg

__IO uint32_t can_type::facfg

Definition at line 900 of file at32f403_can.h.

Referenced by can_filter_init().

◆

struct { ... } can_type::facfg_bit

◆ faen0

__IO uint32_t can_type::faen0

Definition at line 903 of file at32f403_can.h.

◆ faen1

__IO uint32_t can_type::faen1

Definition at line 904 of file at32f403_can.h.

◆ faen10

__IO uint32_t can_type::faen10

Definition at line 913 of file at32f403_can.h.

◆ faen11

__IO uint32_t can_type::faen11

Definition at line 914 of file at32f403_can.h.

◆ faen12

__IO uint32_t can_type::faen12

Definition at line 915 of file at32f403_can.h.

◆ faen13

__IO uint32_t can_type::faen13

Definition at line 916 of file at32f403_can.h.

◆ faen2

__IO uint32_t can_type::faen2

Definition at line 905 of file at32f403_can.h.

◆ faen3

__IO uint32_t can_type::faen3

Definition at line 906 of file at32f403_can.h.

◆ faen4

__IO uint32_t can_type::faen4

Definition at line 907 of file at32f403_can.h.

◆ faen5

__IO uint32_t can_type::faen5

Definition at line 908 of file at32f403_can.h.

◆ faen6

__IO uint32_t can_type::faen6

Definition at line 909 of file at32f403_can.h.

◆ faen7

__IO uint32_t can_type::faen7

Definition at line 910 of file at32f403_can.h.

◆ faen8

__IO uint32_t can_type::faen8

Definition at line 911 of file at32f403_can.h.

◆ faen9

__IO uint32_t can_type::faen9

Definition at line 912 of file at32f403_can.h.

◆ fbwcfg

__IO uint32_t can_type::fbwcfg

Definition at line 838 of file at32f403_can.h.

Referenced by can_filter_init().

◆

struct { ... } can_type::fbwcfg_bit

◆ fbwsel0

__IO uint32_t can_type::fbwsel0

Definition at line 841 of file at32f403_can.h.

◆ fbwsel1

__IO uint32_t can_type::fbwsel1

Definition at line 842 of file at32f403_can.h.

◆ fbwsel10

__IO uint32_t can_type::fbwsel10

Definition at line 851 of file at32f403_can.h.

◆ fbwsel11

__IO uint32_t can_type::fbwsel11

Definition at line 852 of file at32f403_can.h.

◆ fbwsel12

__IO uint32_t can_type::fbwsel12

Definition at line 853 of file at32f403_can.h.

◆ fbwsel13

__IO uint32_t can_type::fbwsel13

Definition at line 854 of file at32f403_can.h.

◆ fbwsel2

__IO uint32_t can_type::fbwsel2

Definition at line 843 of file at32f403_can.h.

◆ fbwsel3

__IO uint32_t can_type::fbwsel3

Definition at line 844 of file at32f403_can.h.

◆ fbwsel4

__IO uint32_t can_type::fbwsel4

Definition at line 845 of file at32f403_can.h.

◆ fbwsel5

__IO uint32_t can_type::fbwsel5

Definition at line 846 of file at32f403_can.h.

◆ fbwsel6

__IO uint32_t can_type::fbwsel6

Definition at line 847 of file at32f403_can.h.

◆ fbwsel7

__IO uint32_t can_type::fbwsel7

Definition at line 848 of file at32f403_can.h.

◆ fbwsel8

__IO uint32_t can_type::fbwsel8

Definition at line 849 of file at32f403_can.h.

◆ fbwsel9

__IO uint32_t can_type::fbwsel9

Definition at line 850 of file at32f403_can.h.

◆ fcs

__IO uint32_t can_type::fcs

Definition at line 797 of file at32f403_can.h.

Referenced by can_filter_init().

◆ fctrl

__IO uint32_t can_type::fctrl

Definition at line 794 of file at32f403_can.h.

◆

struct { ... } can_type::fctrl_bit

Referenced by can_filter_init().

◆ ffb

can_filter_register_type can_type::ffb[14]

can ffb register, offset:0x240~0x2AC

Definition at line 929 of file at32f403_can.h.

Referenced by can_filter_init().

◆ fifo_mailbox

can_fifo_mailbox_type can_type::fifo_mailbox[2]

can controller area network fifo mailbox register, offset:0x1B0~0x1CC

Definition at line 782 of file at32f403_can.h.

Referenced by can_message_receive().

◆ fmcfg

__IO uint32_t can_type::fmcfg

Definition at line 807 of file at32f403_can.h.

Referenced by can_filter_init().

◆

struct { ... } can_type::fmcfg_bit

◆ fmsel0

__IO uint32_t can_type::fmsel0

Definition at line 810 of file at32f403_can.h.

◆ fmsel1

__IO uint32_t can_type::fmsel1

Definition at line 811 of file at32f403_can.h.

◆ fmsel10

__IO uint32_t can_type::fmsel10

Definition at line 820 of file at32f403_can.h.

◆ fmsel11

__IO uint32_t can_type::fmsel11

Definition at line 821 of file at32f403_can.h.

◆ fmsel12

__IO uint32_t can_type::fmsel12

Definition at line 822 of file at32f403_can.h.

◆ fmsel13

__IO uint32_t can_type::fmsel13

Definition at line 823 of file at32f403_can.h.

◆ fmsel2

__IO uint32_t can_type::fmsel2

Definition at line 812 of file at32f403_can.h.

◆ fmsel3

__IO uint32_t can_type::fmsel3

Definition at line 813 of file at32f403_can.h.

◆ fmsel4

__IO uint32_t can_type::fmsel4

Definition at line 814 of file at32f403_can.h.

◆ fmsel5

__IO uint32_t can_type::fmsel5

Definition at line 815 of file at32f403_can.h.

◆ fmsel6

__IO uint32_t can_type::fmsel6

Definition at line 816 of file at32f403_can.h.

◆ fmsel7

__IO uint32_t can_type::fmsel7

Definition at line 817 of file at32f403_can.h.

◆ fmsel8

__IO uint32_t can_type::fmsel8

Definition at line 818 of file at32f403_can.h.

◆ fmsel9

__IO uint32_t can_type::fmsel9

Definition at line 819 of file at32f403_can.h.

◆ frf

__IO uint32_t can_type::frf

Definition at line 869 of file at32f403_can.h.

Referenced by can_filter_init().

◆

struct { ... } can_type::frf_bit

◆ frfsel0

__IO uint32_t can_type::frfsel0

Definition at line 872 of file at32f403_can.h.

◆ frfsel1

__IO uint32_t can_type::frfsel1

Definition at line 873 of file at32f403_can.h.

◆ frfsel10

__IO uint32_t can_type::frfsel10

Definition at line 882 of file at32f403_can.h.

◆ frfsel11

__IO uint32_t can_type::frfsel11

Definition at line 883 of file at32f403_can.h.

◆ frfsel12

__IO uint32_t can_type::frfsel12

Definition at line 884 of file at32f403_can.h.

◆ frfsel13

__IO uint32_t can_type::frfsel13

Definition at line 885 of file at32f403_can.h.

◆ frfsel2

__IO uint32_t can_type::frfsel2

Definition at line 874 of file at32f403_can.h.

◆ frfsel3

__IO uint32_t can_type::frfsel3

Definition at line 875 of file at32f403_can.h.

◆ frfsel4

__IO uint32_t can_type::frfsel4

Definition at line 876 of file at32f403_can.h.

◆ frfsel5

__IO uint32_t can_type::frfsel5

Definition at line 877 of file at32f403_can.h.

◆ frfsel6

__IO uint32_t can_type::frfsel6

Definition at line 878 of file at32f403_can.h.

◆ frfsel7

__IO uint32_t can_type::frfsel7

Definition at line 879 of file at32f403_can.h.

◆ frfsel8

__IO uint32_t can_type::frfsel8

Definition at line 880 of file at32f403_can.h.

◆ frfsel9

__IO uint32_t can_type::frfsel9

Definition at line 881 of file at32f403_can.h.

◆ fzc

__IO uint32_t can_type::fzc

Definition at line 618 of file at32f403_can.h.

Referenced by can_base_init(), can_baudrate_set(), can_doze_mode_enter(), and can_operating_mode_set().

◆ fzen

__IO uint32_t can_type::fzen

Definition at line 595 of file at32f403_can.h.

Referenced by can_base_init(), can_baudrate_set(), can_doze_mode_enter(), and can_operating_mode_set().

◆ inten

__IO uint32_t can_type::inten

Definition at line 707 of file at32f403_can.h.

Referenced by can_interrupt_enable().

◆

struct { ... } can_type::inten_bit

Referenced by can_interrupt_flag_get().

◆ lben

__IO uint32_t can_type::lben

Definition at line 764 of file at32f403_can.h.

Referenced by can_base_init().

◆ loen

__IO uint32_t can_type::loen

Definition at line 765 of file at32f403_can.h.

Referenced by can_base_init().

◆ lsamprx

__IO uint32_t can_type::lsamprx

Definition at line 626 of file at32f403_can.h.

◆ mctrl

__IO uint32_t can_type::mctrl

Definition at line 592 of file at32f403_can.h.

◆

struct { ... } can_type::mctrl_bit

Referenced by can_base_init(), can_baudrate_set(), can_debug_transmission_prohibit(), can_doze_mode_enter(), can_doze_mode_exit(), can_operating_mode_set(), and can_ttc_mode_enable().

◆ mdrsel

__IO uint32_t can_type::mdrsel

Definition at line 598 of file at32f403_can.h.

Referenced by can_base_init().

◆ mmssr

__IO uint32_t can_type::mmssr

Definition at line 597 of file at32f403_can.h.

Referenced by can_base_init().

◆ msts

__IO uint32_t can_type::msts

Definition at line 615 of file at32f403_can.h.

Referenced by can_flag_clear().

◆

struct { ... } can_type::msts_bit

Referenced by can_base_init(), can_baudrate_set(), can_doze_mode_enter(), can_doze_mode_exit(), can_flag_get(), and can_operating_mode_set().

◆ prsfen

__IO uint32_t can_type::prsfen

Definition at line 599 of file at32f403_can.h.

Referenced by can_base_init().

◆ ptd

__IO uint32_t can_type::ptd

Definition at line 605 of file at32f403_can.h.

Referenced by can_debug_transmission_prohibit().

◆ qdzien

__IO uint32_t can_type::qdzien

Definition at line 724 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ qdzif

__IO uint32_t can_type::qdzif

Definition at line 621 of file at32f403_can.h.

Referenced by can_flag_get().

◆ realrx

__IO uint32_t can_type::realrx

Definition at line 627 of file at32f403_can.h.

◆ rec

__IO uint32_t can_type::rec

Definition at line 745 of file at32f403_can.h.

Referenced by can_receive_error_counter_get().

◆ reserved1

__IO uint32_t can_type::reserved1

can reserved register, offset:0x20~0x17C

Definition at line 603 of file at32f403_can.h.

◆ reserved2

__IO uint32_t can_type::reserved2

can reserved register, offset:0x1D0~0x1FC

Definition at line 606 of file at32f403_can.h.

◆ reserved3

__IO uint32_t can_type::reserved3

can reserved register, offset:0x208

Definition at line 656 of file at32f403_can.h.

◆ reserved4

__IO uint32_t can_type::reserved4

can reserved register, offset:0x210

Definition at line 862 of file at32f403_can.h.

◆ reserved5

__IO uint32_t can_type::reserved5

can reserved register, offset:0x218

Definition at line 893 of file at32f403_can.h.

◆ reserved6

__IO uint32_t can_type::reserved6[8]

can reserved register, offset:0x220~0x23C

Definition at line 924 of file at32f403_can.h.

◆ rf0

__IO uint32_t can_type::rf0

Definition at line 673 of file at32f403_can.h.

Referenced by can_flag_clear(), and can_receive_fifo_release().

◆

struct { ... } can_type::rf0_bit

Referenced by can_flag_get(), and can_receive_message_pending_get().

◆ rf0ff

__IO uint32_t can_type::rf0ff

Definition at line 678 of file at32f403_can.h.

Referenced by can_flag_get().

◆ rf0fien

__IO uint32_t can_type::rf0fien

Definition at line 712 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ rf0mien

__IO uint32_t can_type::rf0mien

Definition at line 711 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ rf0mn

__IO uint32_t can_type::rf0mn

Definition at line 676 of file at32f403_can.h.

Referenced by can_flag_get(), and can_receive_message_pending_get().

◆ rf0of

__IO uint32_t can_type::rf0of

Definition at line 679 of file at32f403_can.h.

Referenced by can_flag_get().

◆ rf0oien

__IO uint32_t can_type::rf0oien

Definition at line 713 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ rf0r

__IO uint32_t can_type::rf0r

Definition at line 680 of file at32f403_can.h.

◆ rf1

__IO uint32_t can_type::rf1

Definition at line 690 of file at32f403_can.h.

Referenced by can_flag_clear(), and can_receive_fifo_release().

◆

struct { ... } can_type::rf1_bit

Referenced by can_flag_get(), and can_receive_message_pending_get().

◆ rf1ff

__IO uint32_t can_type::rf1ff

Definition at line 695 of file at32f403_can.h.

Referenced by can_flag_get().

◆ rf1fien

__IO uint32_t can_type::rf1fien

Definition at line 715 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ rf1mien

__IO uint32_t can_type::rf1mien

Definition at line 714 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ rf1mn

__IO uint32_t can_type::rf1mn

Definition at line 693 of file at32f403_can.h.

Referenced by can_flag_get(), and can_receive_message_pending_get().

◆ rf1of

__IO uint32_t can_type::rf1of

Definition at line 696 of file at32f403_can.h.

Referenced by can_flag_get().

◆ rf1oien

__IO uint32_t can_type::rf1oien

Definition at line 716 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ rf1r

__IO uint32_t can_type::rf1r

Definition at line 697 of file at32f403_can.h.

◆ rsaw

__IO uint32_t can_type::rsaw

Definition at line 762 of file at32f403_can.h.

Referenced by can_baudrate_set().

◆ sprst

__IO uint32_t can_type::sprst

Definition at line 604 of file at32f403_can.h.

◆ tcien

__IO uint32_t can_type::tcien

Definition at line 710 of file at32f403_can.h.

Referenced by can_interrupt_flag_get().

◆ tec

__IO uint32_t can_type::tec

Definition at line 744 of file at32f403_can.h.

Referenced by can_transmit_error_counter_get().

◆ tm0alf

__IO uint32_t can_type::tm0alf

Definition at line 642 of file at32f403_can.h.

◆ tm0ct

__IO uint32_t can_type::tm0ct

Definition at line 645 of file at32f403_can.h.

◆ tm0ef

__IO uint32_t can_type::tm0ef

Definition at line 659 of file at32f403_can.h.

Referenced by can_flag_get(), and can_message_transmit().

◆ tm0lpf

__IO uint32_t can_type::tm0lpf

Definition at line 662 of file at32f403_can.h.

◆ tm0tcf

__IO uint32_t can_type::tm0tcf

Definition at line 640 of file at32f403_can.h.

Referenced by can_flag_get(), and can_transmit_status_get().

◆ tm0tef

__IO uint32_t can_type::tm0tef

Definition at line 643 of file at32f403_can.h.

◆ tm0tsf

__IO uint32_t can_type::tm0tsf

Definition at line 641 of file at32f403_can.h.

Referenced by can_transmit_status_get().

◆ tm1alf

__IO uint32_t can_type::tm1alf

Definition at line 648 of file at32f403_can.h.

◆ tm1ct

__IO uint32_t can_type::tm1ct

Definition at line 651 of file at32f403_can.h.

◆ tm1ef

__IO uint32_t can_type::tm1ef

Definition at line 660 of file at32f403_can.h.

Referenced by can_flag_get(), and can_message_transmit().

◆ tm1lpf

__IO uint32_t can_type::tm1lpf

Definition at line 663 of file at32f403_can.h.

◆ tm1tcf

__IO uint32_t can_type::tm1tcf

Definition at line 646 of file at32f403_can.h.

Referenced by can_flag_get(), and can_transmit_status_get().

◆ tm1tef

__IO uint32_t can_type::tm1tef

Definition at line 649 of file at32f403_can.h.

◆ tm1tsf

__IO uint32_t can_type::tm1tsf

Definition at line 647 of file at32f403_can.h.

Referenced by can_transmit_status_get().

◆ tm2alf

__IO uint32_t can_type::tm2alf

Definition at line 654 of file at32f403_can.h.

◆ tm2ct

__IO uint32_t can_type::tm2ct

Definition at line 657 of file at32f403_can.h.

◆ tm2ef

__IO uint32_t can_type::tm2ef

Definition at line 661 of file at32f403_can.h.

Referenced by can_flag_get(), and can_message_transmit().

◆ tm2lpf

__IO uint32_t can_type::tm2lpf

Definition at line 664 of file at32f403_can.h.

◆ tm2tcf

__IO uint32_t can_type::tm2tcf

Definition at line 652 of file at32f403_can.h.

Referenced by can_flag_get(), and can_transmit_status_get().

◆ tm2tef

__IO uint32_t can_type::tm2tef

Definition at line 655 of file at32f403_can.h.

◆ tm2tsf

__IO uint32_t can_type::tm2tsf

Definition at line 653 of file at32f403_can.h.

Referenced by can_transmit_status_get().

◆ tmnr

__IO uint32_t can_type::tmnr

Definition at line 658 of file at32f403_can.h.

◆ tsts

__IO uint32_t can_type::tsts

Definition at line 637 of file at32f403_can.h.

Referenced by can_flag_clear(), and can_transmit_cancel().

◆

struct { ... } can_type::tsts_bit

Referenced by can_flag_get(), can_message_transmit(), and can_transmit_status_get().

◆ ttcen

__IO uint32_t can_type::ttcen

Definition at line 602 of file at32f403_can.h.

Referenced by can_base_init(), and can_ttc_mode_enable().

◆ tx_mailbox

can_tx_mailbox_type can_type::tx_mailbox[3]

can controller area network tx mailbox register, offset:0x180~0x1AC

Definition at line 777 of file at32f403_can.h.

Referenced by can_message_transmit(), and can_ttc_mode_enable().

The documentation for this struct was generated from the following file:
  • at32f403_can.h


AT32F403 Firmwary Library: CAN_exported_functions

Functions
CAN_exported_functions
AT32F403_periph_driver » CAN

Functions

void | can_reset (can_type *can_x)
deinitialize the can peripheral registers to their default reset values. More...
void | can_baudrate_default_para_init (can_baudrate_type *can_baudrate_struct)
fill each can_baudrate_struct member with its default value. More...
error_status | can_baudrate_set (can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral More...
void | can_default_para_init (can_base_type *can_base_struct)
fill each can_init_struct member with its default value. More...
error_status | can_base_init (can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct. More...
void | can_filter_default_para_init (can_filter_init_type *can_filter_init_struct)
fill each can_filter_init_struct member with its default value. More...
void | can_filter_init (can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct. More...
void | can_debug_transmission_prohibit (can_type *can_x, confirm_state new_state)
enable or disable the debug transmission prohibit of the specified can peripheral. More...
void | can_ttc_mode_enable (can_type *can_x, confirm_state new_state)
enable or disable time trigger operation communication mode of the specified can peripheral. More...
uint8_t | can_message_transmit (can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral. More...
can_transmit_status_type | can_transmit_status_get (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral. More...
void | can_transmit_cancel (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
cancel a transmit request of the specified can peripheral. More...
void | can_message_receive (can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral. More...
void | can_receive_fifo_release (can_type *can_x, can_rx_fifo_num_type fifo_number)
release the specified fifo of the specified can peripheral. More...
uint8_t | can_receive_message_pending_get (can_type *can_x, can_rx_fifo_num_type fifo_number)
return the number of pending messages of the specified can peripheral. More...
error_status | can_operating_mode_set (can_type *can_x, can_operating_mode_type can_operating_mode)
set the operation mode of the specified can peripheral. More...
can_enter_doze_status_type | can_doze_mode_enter (can_type *can_x)
enter the low power mode of the specified can peripheral. More...
can_quit_doze_status_type | can_doze_mode_exit (can_type *can_x)
exit the doze mode of the specified can peripheral. More...
can_error_record_type | can_error_type_record_get (can_type *can_x)
return the error type record (etr) of the specified can peripheral. More...
uint8_t | can_receive_error_counter_get (can_type *can_x)
return the receive error counter (rec) of the specified can peripheral. More...
uint8_t | can_transmit_error_counter_get (can_type *can_x)
return the transmit error counter of the specified can peripheral. More...
void | can_interrupt_enable (can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral. More...
flag_status | can_interrupt_flag_get (can_type *can_x, uint32_t can_flag)
get interrupt flag of the specified can peripheral. More...
flag_status | can_flag_get (can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral. More...
void | can_flag_clear (can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral. More...

Detailed Description

Function Documentation

◆ can_base_init()

error_status can_base_init | ( | can_type * | can_x,
 |  | can_base_type * | can_base_struct
 | ) |  |

initialize the can peripheral according to the specified parameters in the can_init_struct.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_base_struct | pointer to a can_base_struct structure that contains the configuration information for the can peripheral.
Return values
the status of initialization this parameter can be one of the following values: SUCCESS or ERROR

< time out for fzc bit

< time out for fzc bit

Definition at line 187 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_baudrate_default_para_init()

void can_baudrate_default_para_init ( can_baudrate_type * can_baudrate_struct )

fill each can_baudrate_struct member with its default value.

Parameters
can_baudrate_struct pointer to a can_baudrate_type structure which will be initialized.
Return values
none.

Definition at line 63 of file at32f403_can.c.

◆ can_baudrate_set()

error_status can_baudrate_set | ( | can_type * | can_x,
 |  | can_baudrate_type * | can_baudrate_struct
 | ) |  |

set the baudrate of the can peripheral

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_baudrate_struct | pointer to a can_baudrate_type structure which will be set.
Note
baudrate calculate method is: baudrate = fpclk/(baudrate_div *(3 + bts1_size + bts2_size))
Return values
the result of baudrate set this parameter can be one of the following values: SUCCESS or ERROR

< time out for fzc bit

< time out for fzc bit

Definition at line 92 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_debug_transmission_prohibit()

void can_debug_transmission_prohibit | ( | can_type * | can_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the debug transmission prohibit of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
new_state | new state of debug transmission prohibit. this parameter can be: TRUE or FALSE.
Return values
none.

Definition at line 386 of file at32f403_can.c.

◆ can_default_para_init()

void can_default_para_init ( can_base_type * can_base_struct )

fill each can_init_struct member with its default value.

Parameters
can_base_struct pointer to a can_base_type structure which will be initialized.
Return values
none.

Definition at line 150 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_doze_mode_enter()

can_enter_doze_status_type can_doze_mode_enter ( can_type * can_x )

enter the low power mode of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
status of doze mode enter, the returned value can be:
  • CAN_ENTER_DOZE_SUCCESSFUL <it meaning enter the doze mode succeed>
  • CAN_ENTER_DOZE_FAILED <it meaning enter the doze mode failed>

< time out for fzc bit

Definition at line 792 of file at32f403_can.c.

◆ can_doze_mode_exit()

can_quit_doze_status_type can_doze_mode_exit ( can_type * can_x )

exit the doze mode of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
status of doze mode enter, the returned value can be:
  • CAN_QUIT_DOZE_SUCCESSFUL <it meaning exit the doze mode succeed>
  • CAN_QUIT_DOZE_FAILED <it meaning exit the doze mode failed>

< time out for dzc bit

Definition at line 822 of file at32f403_can.c.

◆ can_error_type_record_get()

can_error_record_type can_error_type_record_get ( can_type * can_x )

return the error type record (etr) of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
the value of the error code the return can be one of the follow values:
  • CAN_ERRORRECORD_NOERR
  • CAN_ERRORRECORD_STUFFERR,
  • CAN_ERRORRECORD_FORMERR,
  • CAN_ERRORRECORD_ACKERR,
  • CAN_ERRORRECORD_BITRECESSIVEERR,
  • CAN_ERRORRECORD_BITDOMINANTERR,
  • CAN_ERRORRECORD_CRCERR,
  • CAN_ERRORRECORD_SOFTWARESETERR

Definition at line 854 of file at32f403_can.c.

◆ can_filter_default_para_init()

void can_filter_default_para_init ( can_filter_init_type * can_filter_init_struct )

fill each can_filter_init_struct member with its default value.

Parameters
can_filter_init_struct pointer to a can_filter_init_type structure which will be initialized.
Return values
none.

Definition at line 262 of file at32f403_can.c.

◆ can_filter_init()

void can_filter_init | ( | can_type * | can_x,
 |  | can_filter_init_type * | can_filter_init_struct
 | ) |  |

initialize the can peripheral according to the specified parameters in the can_filter_init_struct.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_filter_init_struct | pointer to a can_filter_init_type structure that contains the configuration information.
Return values
none.

Definition at line 297 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_flag_clear()

void can_flag_clear | ( | can_type * | can_x,
 |  | uint32_t | can_flag
 | ) |  |

clear flag of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_flag select the flag. this parameter can be one of the following flags:
  • CAN_EAF_FLAG
  • CAN_EPF_FLAG
  • CAN_BOF_FLAG
  • CAN_ETR_FLAG
  • CAN_EOIF_FLAG
  • CAN_TM0TCF_FLAG
  • CAN_TM1TCF_FLAG
  • CAN_TM2TCF_FLAG
  • CAN_RF0FF_FLAG
  • CAN_RF0OF_FLAG
  • CAN_RF1FF_FLAG
  • CAN_RF1OF_FLAG
  • CAN_QDZIF_FLAG
  • CAN_EDZC_FLAG
  • CAN_TMEF_FLAG note:CAN_RF0MN_FLAG and CAN_RF1MN_FLAG can not clear by this function
Return values
none.

< error active flag

< error passive flag

< bus-off flag

< error occur interrupt flag

< eoif bit value, it clear by writing 1

< error type record flag

< eoif bit value, it clear by writing 1

< transmit mailbox 0 transmission completed flag

< tm0tcf bit value, it clear by writing 1

< transmit mailbox 1 transmission completed flag

< tm1tcf bit value, it clear by writing 1

< transmit mailbox 2 transmission completed flag

< tm2tcf bit value, it clear by writing 1

< receive fifo 0 full flag

< rf0ff bit value, it clear by writing 1

< receive fifo 0 overflow flag

< rf0of bit value, it clear by writing 1

< receive fifo 1 full flag

< rf1ff bit value, it clear by writing 1

< receive fifo 1 overflow flag

< rf1of bit value, it clear by writing 1

< quit doze mode interrupt flag

< qdzif bit value, it clear by writing 1

< enter doze mode confirm flag

< edzif bit value, it clear by writing 1

< transmit mailbox empty flag

< tm0tcf bit value, it clear by writing 1

< tm1tcf bit value, it clear by writing 1

< tm2tcf bit value, it clear by writing 1

Definition at line 1174 of file at32f403_can.c.

Referenced by CAN1_SE_IRQHandler().

◆ can_flag_get()

flag_status can_flag_get | ( | can_type * | can_x,
 |  | uint32_t | can_flag
 | ) |  |

get flag of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_flag select the flag. this parameter can be one of the following flags:
  • CAN_EAF_FLAG
  • CAN_EPF_FLAG
  • CAN_BOF_FLAG
  • CAN_ETR_FLAG
  • CAN_EOIF_FLAG
  • CAN_TM0TCF_FLAG
  • CAN_TM1TCF_FLAG
  • CAN_TM2TCF_FLAG
  • CAN_RF0MN_FLAG
  • CAN_RF0FF_FLAG
  • CAN_RF0OF_FLAG
  • CAN_RF1MN_FLAG
  • CAN_RF1FF_FLAG
  • CAN_RF1OF_FLAG
  • CAN_QDZIF_FLAG
  • CAN_EDZC_FLAG
  • CAN_TMEF_FLAG note:the state of CAN_EDZC_FLAG need to check dzc and edzif bit note:the state of CAN_TMEF_FLAG need to check rqc0,rqc1 and rqc2 bit
Return values
status of can_flag, the returned value can be:SET or RESET.

< error active flag

< error passive flag

< bus-off flag

< error type record flag

< error occur interrupt flag

< transmit mailbox 0 transmission completed flag

< transmit mailbox 1 transmission completed flag

< transmit mailbox 2 transmission completed flag

< receive fifo 0 message num flag

< receive fifo 0 full flag

< receive fifo 0 overflow flag

< receive fifo 1 message num flag

< receive fifo 1 full flag

< receive fifo 1 overflow flag

< quit doze mode interrupt flag

< enter doze mode confirm flag

< transmit mailbox empty flag

Definition at line 1051 of file at32f403_can.c.

Referenced by CAN1_SE_IRQHandler(), can_interrupt_flag_get(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ can_interrupt_enable()

void can_interrupt_enable | ( | can_type * | can_x,
 |  | uint32_t | can_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the interrupt of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_int specifies the can interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • CAN_TCIEN_INT
  • CAN_RF0MIEN_INT
  • CAN_RF0FIEN_INT
  • CAN_RF0OIEN_INT
  • CAN_RF1MIEN_INT
  • CAN_RF1FIEN_INT
  • CAN_RF1OIEN_INT
  • CAN_EAIEN_INT
  • CAN_EPIEN_INT
  • CAN_BOIEN_INT
  • CAN_ETRIEN_INT
  • CAN_EOIEN_INT
  • CAN_QDZIEN_INT
  • CAN_EDZIEN_INT
new_state | new state of the can interrupts. this parameter can be: TRUE or FALSE.
Return values
none.

Definition at line 915 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_interrupt_flag_get()

flag_status can_interrupt_flag_get | ( | can_type * | can_x,
 |  | uint32_t | can_flag
 | ) |  |

get interrupt flag of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_flag select the flag. this parameter can be one of the following flags:
  • CAN_EAF_FLAG
  • CAN_EPF_FLAG
  • CAN_BOF_FLAG
  • CAN_ETR_FLAG
  • CAN_EOIF_FLAG
  • CAN_TM0TCF_FLAG
  • CAN_TM1TCF_FLAG
  • CAN_TM2TCF_FLAG
  • CAN_RF0MN_FLAG
  • CAN_RF0FF_FLAG
  • CAN_RF0OF_FLAG
  • CAN_RF1MN_FLAG
  • CAN_RF1FF_FLAG
  • CAN_RF1OF_FLAG
  • CAN_QDZIF_FLAG
  • CAN_EDZC_FLAG
  • CAN_TMEF_FLAG note:the state of CAN_EDZC_FLAG need to check dzc and edzif bit note:the state of CAN_TMEF_FLAG need to check rqc0,rqc1 and rqc2 bit
Return values
status of can_flag, the returned value can be:SET or RESET.

< error active flag

< error passive flag

< bus-off flag

< error type record flag

< error occur interrupt flag

< transmit mailbox 0 transmission completed flag

< transmit mailbox 1 transmission completed flag

< transmit mailbox 2 transmission completed flag

< receive fifo 0 message num flag

< receive fifo 0 full flag

< receive fifo 0 overflow flag

< receive fifo 1 message num flag

< receive fifo 1 full flag

< receive fifo 1 overflow flag

< quit doze mode interrupt flag

< enter doze mode confirm flag

< transmit mailbox empty flag

Definition at line 955 of file at32f403_can.c.

◆ can_message_receive()

void can_message_receive | ( | can_type * | can_x,
 |  | can_rx_fifo_num_type | fifo_number,
 |  | can_rx_message_type * | rx_message_struct
 | ) |  |

receive message of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
fifo_number receive fifo number. this parameter can be one of the following values:
  • CAN_RX_FIFO0
  • CAN_RX_FIFO1
rx_message_struct | pointer to a structure which store the receive message.
Return values
none.

Definition at line 610 of file at32f403_can.c.

Referenced by USBFS_L_CAN1_RX0_IRQHandler().

◆ can_message_transmit()

uint8_t can_message_transmit | ( | can_type * | can_x,
 |  | can_tx_message_type * | tx_message_struct
 | ) |  |

fill the transmission message and transmit of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
tx_message_struct | pointer to a structure which contains the message to be trans.
Return values
the number of the mailbox that is used for transmission: this parameter can be one of the following values:
  • CAN_TX_MAILBOX0
  • CAN_TX_MAILBOX1
  • CAN_TX_MAILBOX2
  • CAN_TX_STATUS_NO_EMPTY <meanings there is no empty mailbox, message cannot be filled>

Definition at line 431 of file at32f403_can.c.

Referenced by can_transmit_data().

◆ can_operating_mode_set()

error_status can_operating_mode_set | ( | can_type * | can_x,
 |  | can_operating_mode_type | can_operating_mode
 | ) |  |

set the operation mode of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_operating_mode can operating mode. this parameter can be one of the following values:
  • CAN_OPERATINGMODE_FREEZE
  • CAN_OPERATINGMODE_DOZE
  • CAN_OPERATINGMODE_COMMUNICATE
Return values
status of operation mode set this parameter can be one of the following values: SUCCESS or ERROR

< time out for fzc bit

Definition at line 714 of file at32f403_can.c.

◆ can_receive_error_counter_get()

uint8_t can_receive_error_counter_get ( can_type * can_x )

return the receive error counter (rec) of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
the value of receive error counter.

Definition at line 869 of file at32f403_can.c.

◆ can_receive_fifo_release()

void can_receive_fifo_release | ( | can_type * | can_x,
 |  | can_rx_fifo_num_type | fifo_number
 | ) |  |

release the specified fifo of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
fifo_number fifo to be release. this parameter can be one of the following values:
  • CAN_RX_FIFO0
  • CAN_RX_FIFO1
Return values
none.

< rf0r bit value, it clear by writing 1

< rf1r bit value, it clear by writing 1

Definition at line 657 of file at32f403_can.c.

Referenced by can_message_receive().

◆ can_receive_message_pending_get()

uint8_t can_receive_message_pending_get | ( | can_type * | can_x,
 |  | can_rx_fifo_num_type | fifo_number
 | ) |  |

return the number of pending messages of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
fifo_number receive fifo number. this parameter can be one of the following values:
  • CAN_RX_FIFO0
  • CAN_RX_FIFO1
Return values
the number of message pending in the receive fifo.

Definition at line 683 of file at32f403_can.c.

◆ can_reset()

void can_reset ( can_type * can_x )

deinitialize the can peripheral registers to their default reset values.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
none.

Definition at line 49 of file at32f403_can.c.

◆ can_transmit_cancel()

void can_transmit_cancel | ( | can_type * | can_x,
 |  | can_tx_mailbox_num_type | transmit_mailbox
 | ) |  |

cancel a transmit request of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
mailbox mailbox number. this parameter can be one of the following values:
  • CAN_TX_MAILBOX0
  • CAN_TX_MAILBOX1
  • CAN_TX_MAILBOX2
Return values
none.

< tm0ct bit value, it clear by writing 1

< tm1ct bit value, it clear by writing 1

< tm2ct bit value, it clear by writing 1

Definition at line 580 of file at32f403_can.c.

◆ can_transmit_error_counter_get()

uint8_t can_transmit_error_counter_get ( can_type * can_x )

return the transmit error counter of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
the value of transmit error counter.

Definition at line 883 of file at32f403_can.c.

◆ can_transmit_status_get()

can_transmit_status_type can_transmit_status_get | ( | can_type * | can_x,
 |  | can_tx_mailbox_num_type | transmit_mailbox
 | ) |  |

check the transmission state of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
transmit_mailbox the number of the mailbox that is used for transmission. this parameter can be one of the following values:
  • CAN_TX_MAILBOX0
  • CAN_TX_MAILBOX1
  • CAN_TX_MAILBOX2
Return values
can transmit status this parameter can be one of the following values:
  • CAN_TX_STATUS_SUCCESSFUL
  • CAN_TX_STATUS_FAILED
  • CAN_TX_STATUS_PENDING

Definition at line 505 of file at32f403_can.c.

Referenced by can_transmit_data().

◆ can_ttc_mode_enable()

void can_ttc_mode_enable | ( | can_type * | can_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable time trigger operation communication mode of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
new_state | : new state of time trigger operation communication mode. this parameter can be: TRUE or FALSE.
Note
note1: when enabled, transmit mailbox time stamp(tmts[15:0]) value is sent in the last two data bytes of the 8-byte message: tmts[7:0] in data byte 6 and tmts[15:8] in data byte 7
note2: tmdtbl must be programmed as 8 in order time stamp (2 bytes) to be sent over the can bus.
Return values
none

Definition at line 407 of file at32f403_can.c.


AT32F403 Firmwary Library: CAN_private_functions

Functions
CAN_private_functions
AT32F403_periph_driver » CAN

Functions

void | can_reset (can_type *can_x)
deinitialize the can peripheral registers to their default reset values. More...
void | can_baudrate_default_para_init (can_baudrate_type *can_baudrate_struct)
fill each can_baudrate_struct member with its default value. More...
error_status | can_baudrate_set (can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral More...
void | can_default_para_init (can_base_type *can_base_struct)
fill each can_init_struct member with its default value. More...
error_status | can_base_init (can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct. More...
void | can_filter_default_para_init (can_filter_init_type *can_filter_init_struct)
fill each can_filter_init_struct member with its default value. More...
void | can_filter_init (can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct. More...
void | can_debug_transmission_prohibit (can_type *can_x, confirm_state new_state)
enable or disable the debug transmission prohibit of the specified can peripheral. More...
void | can_ttc_mode_enable (can_type *can_x, confirm_state new_state)
enable or disable time trigger operation communication mode of the specified can peripheral. More...
uint8_t | can_message_transmit (can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral. More...
can_transmit_status_type | can_transmit_status_get (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral. More...
void | can_transmit_cancel (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
cancel a transmit request of the specified can peripheral. More...
void | can_message_receive (can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral. More...
void | can_receive_fifo_release (can_type *can_x, can_rx_fifo_num_type fifo_number)
release the specified fifo of the specified can peripheral. More...
uint8_t | can_receive_message_pending_get (can_type *can_x, can_rx_fifo_num_type fifo_number)
return the number of pending messages of the specified can peripheral. More...
error_status | can_operating_mode_set (can_type *can_x, can_operating_mode_type can_operating_mode)
set the operation mode of the specified can peripheral. More...
can_enter_doze_status_type | can_doze_mode_enter (can_type *can_x)
enter the low power mode of the specified can peripheral. More...
can_quit_doze_status_type | can_doze_mode_exit (can_type *can_x)
exit the doze mode of the specified can peripheral. More...
can_error_record_type | can_error_type_record_get (can_type *can_x)
return the error type record (etr) of the specified can peripheral. More...
uint8_t | can_receive_error_counter_get (can_type *can_x)
return the receive error counter (rec) of the specified can peripheral. More...
uint8_t | can_transmit_error_counter_get (can_type *can_x)
return the transmit error counter of the specified can peripheral. More...
void | can_interrupt_enable (can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral. More...
flag_status | can_interrupt_flag_get (can_type *can_x, uint32_t can_flag)
get interrupt flag of the specified can peripheral. More...
flag_status | can_flag_get (can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral. More...
void | can_flag_clear (can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral. More...

Detailed Description

Function Documentation

◆ can_base_init()

error_status can_base_init | ( | can_type * | can_x,
 |  | can_base_type * | can_base_struct
 | ) |  |

initialize the can peripheral according to the specified parameters in the can_init_struct.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_base_struct | pointer to a can_base_struct structure that contains the configuration information for the can peripheral.
Return values
the status of initialization this parameter can be one of the following values: SUCCESS or ERROR

< time out for fzc bit

< time out for fzc bit

Definition at line 187 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_baudrate_default_para_init()

void can_baudrate_default_para_init ( can_baudrate_type * can_baudrate_struct )

fill each can_baudrate_struct member with its default value.

Parameters
can_baudrate_struct pointer to a can_baudrate_type structure which will be initialized.
Return values
none.

Definition at line 63 of file at32f403_can.c.

◆ can_baudrate_set()

error_status can_baudrate_set | ( | can_type * | can_x,
 |  | can_baudrate_type * | can_baudrate_struct
 | ) |  |

set the baudrate of the can peripheral

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_baudrate_struct | pointer to a can_baudrate_type structure which will be set.
Note
baudrate calculate method is: baudrate = fpclk/(baudrate_div *(3 + bts1_size + bts2_size))
Return values
the result of baudrate set this parameter can be one of the following values: SUCCESS or ERROR

< time out for fzc bit

< time out for fzc bit

Definition at line 92 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_debug_transmission_prohibit()

void can_debug_transmission_prohibit | ( | can_type * | can_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the debug transmission prohibit of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
new_state | new state of debug transmission prohibit. this parameter can be: TRUE or FALSE.
Return values
none.

Definition at line 386 of file at32f403_can.c.

◆ can_default_para_init()

void can_default_para_init ( can_base_type * can_base_struct )

fill each can_init_struct member with its default value.

Parameters
can_base_struct pointer to a can_base_type structure which will be initialized.
Return values
none.

Definition at line 150 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_doze_mode_enter()

can_enter_doze_status_type can_doze_mode_enter ( can_type * can_x )

enter the low power mode of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
status of doze mode enter, the returned value can be:
  • CAN_ENTER_DOZE_SUCCESSFUL <it meaning enter the doze mode succeed>
  • CAN_ENTER_DOZE_FAILED <it meaning enter the doze mode failed>

< time out for fzc bit

Definition at line 792 of file at32f403_can.c.

◆ can_doze_mode_exit()

can_quit_doze_status_type can_doze_mode_exit ( can_type * can_x )

exit the doze mode of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
status of doze mode enter, the returned value can be:
  • CAN_QUIT_DOZE_SUCCESSFUL <it meaning exit the doze mode succeed>
  • CAN_QUIT_DOZE_FAILED <it meaning exit the doze mode failed>

< time out for dzc bit

Definition at line 822 of file at32f403_can.c.

◆ can_error_type_record_get()

can_error_record_type can_error_type_record_get ( can_type * can_x )

return the error type record (etr) of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
the value of the error code the return can be one of the follow values:
  • CAN_ERRORRECORD_NOERR
  • CAN_ERRORRECORD_STUFFERR,
  • CAN_ERRORRECORD_FORMERR,
  • CAN_ERRORRECORD_ACKERR,
  • CAN_ERRORRECORD_BITRECESSIVEERR,
  • CAN_ERRORRECORD_BITDOMINANTERR,
  • CAN_ERRORRECORD_CRCERR,
  • CAN_ERRORRECORD_SOFTWARESETERR

Definition at line 854 of file at32f403_can.c.

◆ can_filter_default_para_init()

void can_filter_default_para_init ( can_filter_init_type * can_filter_init_struct )

fill each can_filter_init_struct member with its default value.

Parameters
can_filter_init_struct pointer to a can_filter_init_type structure which will be initialized.
Return values
none.

Definition at line 262 of file at32f403_can.c.

◆ can_filter_init()

void can_filter_init | ( | can_type * | can_x,
 |  | can_filter_init_type * | can_filter_init_struct
 | ) |  |

initialize the can peripheral according to the specified parameters in the can_filter_init_struct.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_filter_init_struct | pointer to a can_filter_init_type structure that contains the configuration information.
Return values
none.

Definition at line 297 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_flag_clear()

void can_flag_clear | ( | can_type * | can_x,
 |  | uint32_t | can_flag
 | ) |  |

clear flag of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_flag select the flag. this parameter can be one of the following flags:
  • CAN_EAF_FLAG
  • CAN_EPF_FLAG
  • CAN_BOF_FLAG
  • CAN_ETR_FLAG
  • CAN_EOIF_FLAG
  • CAN_TM0TCF_FLAG
  • CAN_TM1TCF_FLAG
  • CAN_TM2TCF_FLAG
  • CAN_RF0FF_FLAG
  • CAN_RF0OF_FLAG
  • CAN_RF1FF_FLAG
  • CAN_RF1OF_FLAG
  • CAN_QDZIF_FLAG
  • CAN_EDZC_FLAG
  • CAN_TMEF_FLAG note:CAN_RF0MN_FLAG and CAN_RF1MN_FLAG can not clear by this function
Return values
none.

< error active flag

< error passive flag

< bus-off flag

< error occur interrupt flag

< eoif bit value, it clear by writing 1

< error type record flag

< eoif bit value, it clear by writing 1

< transmit mailbox 0 transmission completed flag

< tm0tcf bit value, it clear by writing 1

< transmit mailbox 1 transmission completed flag

< tm1tcf bit value, it clear by writing 1

< transmit mailbox 2 transmission completed flag

< tm2tcf bit value, it clear by writing 1

< receive fifo 0 full flag

< rf0ff bit value, it clear by writing 1

< receive fifo 0 overflow flag

< rf0of bit value, it clear by writing 1

< receive fifo 1 full flag

< rf1ff bit value, it clear by writing 1

< receive fifo 1 overflow flag

< rf1of bit value, it clear by writing 1

< quit doze mode interrupt flag

< qdzif bit value, it clear by writing 1

< enter doze mode confirm flag

< edzif bit value, it clear by writing 1

< transmit mailbox empty flag

< tm0tcf bit value, it clear by writing 1

< tm1tcf bit value, it clear by writing 1

< tm2tcf bit value, it clear by writing 1

Definition at line 1174 of file at32f403_can.c.

Referenced by CAN1_SE_IRQHandler().

◆ can_flag_get()

flag_status can_flag_get | ( | can_type * | can_x,
 |  | uint32_t | can_flag
 | ) |  |

get flag of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_flag select the flag. this parameter can be one of the following flags:
  • CAN_EAF_FLAG
  • CAN_EPF_FLAG
  • CAN_BOF_FLAG
  • CAN_ETR_FLAG
  • CAN_EOIF_FLAG
  • CAN_TM0TCF_FLAG
  • CAN_TM1TCF_FLAG
  • CAN_TM2TCF_FLAG
  • CAN_RF0MN_FLAG
  • CAN_RF0FF_FLAG
  • CAN_RF0OF_FLAG
  • CAN_RF1MN_FLAG
  • CAN_RF1FF_FLAG
  • CAN_RF1OF_FLAG
  • CAN_QDZIF_FLAG
  • CAN_EDZC_FLAG
  • CAN_TMEF_FLAG note:the state of CAN_EDZC_FLAG need to check dzc and edzif bit note:the state of CAN_TMEF_FLAG need to check rqc0,rqc1 and rqc2 bit
Return values
status of can_flag, the returned value can be:SET or RESET.

< error active flag

< error passive flag

< bus-off flag

< error type record flag

< error occur interrupt flag

< transmit mailbox 0 transmission completed flag

< transmit mailbox 1 transmission completed flag

< transmit mailbox 2 transmission completed flag

< receive fifo 0 message num flag

< receive fifo 0 full flag

< receive fifo 0 overflow flag

< receive fifo 1 message num flag

< receive fifo 1 full flag

< receive fifo 1 overflow flag

< quit doze mode interrupt flag

< enter doze mode confirm flag

< transmit mailbox empty flag

Definition at line 1051 of file at32f403_can.c.

Referenced by CAN1_SE_IRQHandler(), can_interrupt_flag_get(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ can_interrupt_enable()

void can_interrupt_enable | ( | can_type * | can_x,
 |  | uint32_t | can_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the interrupt of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
can_int specifies the can interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • CAN_TCIEN_INT
  • CAN_RF0MIEN_INT
  • CAN_RF0FIEN_INT
  • CAN_RF0OIEN_INT
  • CAN_RF1MIEN_INT
  • CAN_RF1FIEN_INT
  • CAN_RF1OIEN_INT
  • CAN_EAIEN_INT
  • CAN_EPIEN_INT
  • CAN_BOIEN_INT
  • CAN_ETRIEN_INT
  • CAN_EOIEN_INT
  • CAN_QDZIEN_INT
  • CAN_EDZIEN_INT
new_state | new state of the can interrupts. this parameter can be: TRUE or FALSE.
Return values
none.

Definition at line 915 of file at32f403_can.c.

Referenced by can_configuration().

◆ can_interrupt_flag_get()

flag_status can_interrupt_flag_get | ( | can_type * | can_x,
 |  | uint32_t | can_flag
 | ) |  |

get interrupt flag of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_flag select the flag. this parameter can be one of the following flags:
  • CAN_EAF_FLAG
  • CAN_EPF_FLAG
  • CAN_BOF_FLAG
  • CAN_ETR_FLAG
  • CAN_EOIF_FLAG
  • CAN_TM0TCF_FLAG
  • CAN_TM1TCF_FLAG
  • CAN_TM2TCF_FLAG
  • CAN_RF0MN_FLAG
  • CAN_RF0FF_FLAG
  • CAN_RF0OF_FLAG
  • CAN_RF1MN_FLAG
  • CAN_RF1FF_FLAG
  • CAN_RF1OF_FLAG
  • CAN_QDZIF_FLAG
  • CAN_EDZC_FLAG
  • CAN_TMEF_FLAG note:the state of CAN_EDZC_FLAG need to check dzc and edzif bit note:the state of CAN_TMEF_FLAG need to check rqc0,rqc1 and rqc2 bit
Return values
status of can_flag, the returned value can be:SET or RESET.

< error active flag

< error passive flag

< bus-off flag

< error type record flag

< error occur interrupt flag

< transmit mailbox 0 transmission completed flag

< transmit mailbox 1 transmission completed flag

< transmit mailbox 2 transmission completed flag

< receive fifo 0 message num flag

< receive fifo 0 full flag

< receive fifo 0 overflow flag

< receive fifo 1 message num flag

< receive fifo 1 full flag

< receive fifo 1 overflow flag

< quit doze mode interrupt flag

< enter doze mode confirm flag

< transmit mailbox empty flag

Definition at line 955 of file at32f403_can.c.

◆ can_message_receive()

void can_message_receive | ( | can_type * | can_x,
 |  | can_rx_fifo_num_type | fifo_number,
 |  | can_rx_message_type * | rx_message_struct
 | ) |  |

receive message of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
fifo_number receive fifo number. this parameter can be one of the following values:
  • CAN_RX_FIFO0
  • CAN_RX_FIFO1
rx_message_struct | pointer to a structure which store the receive message.
Return values
none.

Definition at line 610 of file at32f403_can.c.

Referenced by USBFS_L_CAN1_RX0_IRQHandler().

◆ can_message_transmit()

uint8_t can_message_transmit | ( | can_type * | can_x,
 |  | can_tx_message_type * | tx_message_struct
 | ) |  |

fill the transmission message and transmit of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
tx_message_struct | pointer to a structure which contains the message to be trans.
Return values
the number of the mailbox that is used for transmission: this parameter can be one of the following values:
  • CAN_TX_MAILBOX0
  • CAN_TX_MAILBOX1
  • CAN_TX_MAILBOX2
  • CAN_TX_STATUS_NO_EMPTY <meanings there is no empty mailbox, message cannot be filled>

Definition at line 431 of file at32f403_can.c.

Referenced by can_transmit_data().

◆ can_operating_mode_set()

error_status can_operating_mode_set | ( | can_type * | can_x,
 |  | can_operating_mode_type | can_operating_mode
 | ) |  |

set the operation mode of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
can_operating_mode can operating mode. this parameter can be one of the following values:
  • CAN_OPERATINGMODE_FREEZE
  • CAN_OPERATINGMODE_DOZE
  • CAN_OPERATINGMODE_COMMUNICATE
Return values
status of operation mode set this parameter can be one of the following values: SUCCESS or ERROR

< time out for fzc bit

Definition at line 714 of file at32f403_can.c.

◆ can_receive_error_counter_get()

uint8_t can_receive_error_counter_get ( can_type * can_x )

return the receive error counter (rec) of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
the value of receive error counter.

Definition at line 869 of file at32f403_can.c.

◆ can_receive_fifo_release()

void can_receive_fifo_release | ( | can_type * | can_x,
 |  | can_rx_fifo_num_type | fifo_number
 | ) |  |

release the specified fifo of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
fifo_number fifo to be release. this parameter can be one of the following values:
  • CAN_RX_FIFO0
  • CAN_RX_FIFO1
Return values
none.

< rf0r bit value, it clear by writing 1

< rf1r bit value, it clear by writing 1

Definition at line 657 of file at32f403_can.c.

Referenced by can_message_receive().

◆ can_receive_message_pending_get()

uint8_t can_receive_message_pending_get | ( | can_type * | can_x,
 |  | can_rx_fifo_num_type | fifo_number
 | ) |  |

return the number of pending messages of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
fifo_number receive fifo number. this parameter can be one of the following values:
  • CAN_RX_FIFO0
  • CAN_RX_FIFO1
Return values
the number of message pending in the receive fifo.

Definition at line 683 of file at32f403_can.c.

◆ can_reset()

void can_reset ( can_type * can_x )

deinitialize the can peripheral registers to their default reset values.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
none.

Definition at line 49 of file at32f403_can.c.

◆ can_transmit_cancel()

void can_transmit_cancel | ( | can_type * | can_x,
 |  | can_tx_mailbox_num_type | transmit_mailbox
 | ) |  |

cancel a transmit request of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
mailbox mailbox number. this parameter can be one of the following values:
  • CAN_TX_MAILBOX0
  • CAN_TX_MAILBOX1
  • CAN_TX_MAILBOX2
Return values
none.

< tm0ct bit value, it clear by writing 1

< tm1ct bit value, it clear by writing 1

< tm2ct bit value, it clear by writing 1

Definition at line 580 of file at32f403_can.c.

◆ can_transmit_error_counter_get()

uint8_t can_transmit_error_counter_get ( can_type * can_x )

return the transmit error counter of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
Return values
the value of transmit error counter.

Definition at line 883 of file at32f403_can.c.

◆ can_transmit_status_get()

can_transmit_status_type can_transmit_status_get | ( | can_type * | can_x,
 |  | can_tx_mailbox_num_type | transmit_mailbox
 | ) |  |

check the transmission state of the specified can peripheral.

Parameters
can_x select the can peripheral. this parameter can be one of the following values: CAN1.
transmit_mailbox the number of the mailbox that is used for transmission. this parameter can be one of the following values:
  • CAN_TX_MAILBOX0
  • CAN_TX_MAILBOX1
  • CAN_TX_MAILBOX2
Return values
can transmit status this parameter can be one of the following values:
  • CAN_TX_STATUS_SUCCESSFUL
  • CAN_TX_STATUS_FAILED
  • CAN_TX_STATUS_PENDING

Definition at line 505 of file at32f403_can.c.

Referenced by can_transmit_data().

◆ can_ttc_mode_enable()

void can_ttc_mode_enable | ( | can_type * | can_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable time trigger operation communication mode of the specified can peripheral.

Parameters
can_x | select the can peripheral. this parameter can be one of the following values: CAN1.
new_state | : new state of time trigger operation communication mode. this parameter can be: TRUE or FALSE.
Note
note1: when enabled, transmit mailbox time stamp(tmts[15:0]) value is sent in the last two data bytes of the 8-byte message: tmts[7:0] in data byte 6 and tmts[15:8] in data byte 7
note2: tmdtbl must be programmed as 8 in order time stamp (2 bytes) to be sent over the can bus.
Return values
none

Definition at line 407 of file at32f403_can.c.


AT32F403 Firmwary Library: CRC

Modules | Macros
CRC
AT32F403_periph_driver

CRC driver modules. More...

Modules

CRC_exported_types
CRC_exported_functions
CRC_private_functions

Macros

#define CRC ((crc_type *) CRC_BASE)

Detailed Description

CRC driver modules.

Macro Definition Documentation

◆ CRC

#define CRC ((crc_type *) CRC_BASE)

Definition at line 162 of file at32f403_crc.h.


AT32F403 Firmwary Library: CRC_exported_types

Data Structures | Enumerations
CRC_exported_types
AT32F403_periph_driver » CRC

Data Structures

struct crc_type
type define crc register all More...

Enumerations

enum | crc_reverse_input_type { CRC_REVERSE_INPUT_NO_AFFECTE = 0x00 , CRC_REVERSE_INPUT_BY_BYTE = 0x01 , CRC_REVERSE_INPUT_BY_HALFWORD = 0x02 , CRC_REVERSE_INPUT_BY_WORD = 0x03 }
crc reverse input data More...
enum | crc_reverse_output_type { CRC_REVERSE_OUTPUT_NO_AFFECTE = 0x00 , CRC_REVERSE_OUTPUT_DATA = 0x01 }
crc reverse output data More...
enum | crc_poly_size_type { CRC_POLY_SIZE_32B = 0x00 , CRC_POLY_SIZE_16B = 0x01 , CRC_POLY_SIZE_8B = 0x02 , CRC_POLY_SIZE_7B = 0x03 }
crc polynomial size More...

Detailed Description

Enumeration Type Documentation

◆ crc_poly_size_type

enum crc_poly_size_type

crc polynomial size

Enumerator
CRC_POLY_SIZE_32B | polynomial size 32 bits
CRC_POLY_SIZE_16B | polynomial size 16 bits
CRC_POLY_SIZE_8B | polynomial size 8 bits
CRC_POLY_SIZE_7B | polynomial size 7 bits

Definition at line 72 of file at32f403_crc.h.

◆ crc_reverse_input_type

enum crc_reverse_input_type

crc reverse input data

Enumerator
CRC_REVERSE_INPUT_NO_AFFECTE | input data no reverse
CRC_REVERSE_INPUT_BY_BYTE | input data reverse by byte
CRC_REVERSE_INPUT_BY_HALFWORD | input data reverse by half word
CRC_REVERSE_INPUT_BY_WORD | input data reverse by word

Definition at line 52 of file at32f403_crc.h.

◆ crc_reverse_output_type

enum crc_reverse_output_type

crc reverse output data

Enumerator
CRC_REVERSE_OUTPUT_NO_AFFECTE | output data no reverse
CRC_REVERSE_OUTPUT_DATA | output data reverse by word

Definition at line 63 of file at32f403_crc.h.


AT32F403 Firmwary Library: crc_type Struct Reference

Data Fields
crc_type Struct Reference
AT32F403_periph_driver » CRC » CRC_exported_types

type define crc register all More...

#include <at32f403_crc.h>

Data Fields

union {
__IO uint32_t dt
struct {
__IO uint32_t dt: 32
} dt_bit
};
crc dt register, offset:0x00 More...
union {
__IO uint32_t cdt
struct {
__IO uint32_t cdt: 8
__IO uint32_t reserved1: 24
} cdt_bit
};
crc cdt register, offset:0x04 More...
union {
__IO uint32_t ctrl
struct {
__IO uint32_t rst: 1
__IO uint32_t reserved1: 2
__IO uint32_t poly_size: 2
__IO uint32_t revid: 2
__IO uint32_t revod: 1
__IO uint32_t reserved2: 24
} ctrl_bit
};
crc ctrl register, offset:0x08 More...
union {
__IO uint32_t idt
struct {
__IO uint32_t idt: 32
} idt_bit
};
crc idt register, offset:0x10 More...
union {
__IO uint32_t poly
struct {
__IO uint32_t poly: 32
} poly_bit
};
crc polynomial register, offset:0x14 More...

Detailed Description

type define crc register all

Definition at line 83 of file at32f403_crc.h.

Field Documentation

◆

union { ... } crc_type::@259

crc dt register, offset:0x00

◆

union { ... } crc_type::@261

crc cdt register, offset:0x04

◆

union { ... } crc_type::@263

crc ctrl register, offset:0x08

◆

union { ... } crc_type::@265

crc idt register, offset:0x10

◆

union { ... } crc_type::@267

crc polynomial register, offset:0x14

◆ cdt

__IO uint32_t crc_type::cdt

Definition at line 102 of file at32f403_crc.h.

◆

struct { ... } crc_type::cdt_bit

◆ ctrl

__IO uint32_t crc_type::ctrl

Definition at line 115 of file at32f403_crc.h.

◆

struct { ... } crc_type::ctrl_bit

◆ dt

__IO uint32_t crc_type::dt

Definition at line 90 of file at32f403_crc.h.

◆

struct { ... } crc_type::dt_bit

◆ idt

__IO uint32_t crc_type::idt

Definition at line 137 of file at32f403_crc.h.

◆

struct { ... } crc_type::idt_bit

◆ poly

__IO uint32_t crc_type::poly

Definition at line 149 of file at32f403_crc.h.

◆

struct { ... } crc_type::poly_bit

◆ poly_size

__IO uint32_t crc_type::poly_size

Definition at line 120 of file at32f403_crc.h.

◆ reserved1

__IO uint32_t crc_type::reserved1

crm reserved1 register, offset:0x0C

Definition at line 106 of file at32f403_crc.h.

◆ reserved2

__IO uint32_t crc_type::reserved2

Definition at line 123 of file at32f403_crc.h.

◆ revid

__IO uint32_t crc_type::revid

Definition at line 121 of file at32f403_crc.h.

◆ revod

__IO uint32_t crc_type::revod

Definition at line 122 of file at32f403_crc.h.

◆ rst

__IO uint32_t crc_type::rst

Definition at line 118 of file at32f403_crc.h.

The documentation for this struct was generated from the following file:
  • at32f403_crc.h


AT32F403 Firmwary Library: CRC_exported_functions

Functions
CRC_exported_functions
AT32F403_periph_driver » CRC

Functions

void | crc_data_reset (void)
reset the crc data register. More...
uint32_t | crc_one_word_calculate (uint32_t data)
compute the 32-bit crc of a given data word(32-bit). More...
uint32_t | crc_block_calculate (uint32_t *pbuffer, uint32_t length)
compute the 32-bit crc of a given buffer of data word(32-bit). More...
uint32_t | crc_data_get (void)
return the current crc value. More...
void | crc_common_data_set (uint8_t cdt_value)
store a 8-bit data in the common data register. More...
uint8_t | crc_common_data_get (void)
return the 8-bit data stored in the common data register More...
void | crc_init_data_set (uint32_t value)
set the 32-bit initial data of crc More...
void | crc_reverse_input_data_set (crc_reverse_input_type value)
control the reversal of the bit order in the input data More...
void | crc_reverse_output_data_set (crc_reverse_output_type value)
control the reversal of the bit order in the output data More...
void | crc_poly_value_set (uint32_t value)
config crc polynomial value More...
uint32_t | crc_poly_value_get (void)
return crc polynomial value More...
void | crc_poly_size_set (crc_poly_size_type size)
config crc polynomial data size More...
crc_poly_size_type | crc_poly_size_get (void)
return crc polynomial data size More...

Detailed Description

Function Documentation

◆ crc_block_calculate()

uint32_t crc_block_calculate | ( | uint32_t * | pbuffer,
 |  | uint32_t | length
 | ) |  |

compute the 32-bit crc of a given buffer of data word(32-bit).

Parameters
pbuffer | pointer to the buffer containing the data to be computed
length | length of the buffer to be computed
Return values
32-bit crc

Definition at line 70 of file at32f403_crc.c.

Referenced by main().

◆ crc_common_data_get()

uint8_t crc_common_data_get ( void )

return the 8-bit data stored in the common data register

Parameters
none
Return values
8-bit value of the common data register

Definition at line 107 of file at32f403_crc.c.

◆ crc_common_data_set()

void crc_common_data_set ( uint8_t cdt_value )

store a 8-bit data in the common data register.

Parameters
cdt_value 8-bit value to be stored in the common data register
Return values
none

Definition at line 97 of file at32f403_crc.c.

◆ crc_data_get()

uint32_t crc_data_get ( void )

return the current crc value.

Parameters
none
Return values
32-bit crc

Definition at line 87 of file at32f403_crc.c.

Referenced by crc_cal().

◆ crc_data_reset()

void crc_data_reset ( void )

reset the crc data register.

Parameters
none
Return values
none

Definition at line 47 of file at32f403_crc.c.

Referenced by crc_cal(), flash_crc_check(), and main().

◆ crc_init_data_set()

void crc_init_data_set ( uint32_t value )

set the 32-bit initial data of crc

Parameters
value initial data
Return values
none

Definition at line 117 of file at32f403_crc.c.

◆ crc_one_word_calculate()

uint32_t crc_one_word_calculate ( uint32_t data )

compute the 32-bit crc of a given data word(32-bit).

Parameters
data data word(32-bit) to compute its crc
Return values
32-bit crc

Definition at line 58 of file at32f403_crc.c.

Referenced by crc_cal(), and flash_crc_check().

◆ crc_poly_size_get()

crc_poly_size_type crc_poly_size_get ( void )

return crc polynomial data size

Parameters
none
Return values
polynomial data size.

Definition at line 191 of file at32f403_crc.c.

◆ crc_poly_size_set()

void crc_poly_size_set ( crc_poly_size_type size )

config crc polynomial data size

Parameters
size this parameter can be one of the following values:
  • CRC_POLY_SIZE_32B
  • CRC_POLY_SIZE_16B
  • CRC_POLY_SIZE_8B
  • CRC_POLY_SIZE_7B
Return values
none.

Definition at line 181 of file at32f403_crc.c.

◆ crc_poly_value_get()

uint32_t crc_poly_value_get ( void )

return crc polynomial value

Parameters
none
Return values
32-bit value of the polynomial value.

Definition at line 166 of file at32f403_crc.c.

◆ crc_poly_value_set()

void crc_poly_value_set ( uint32_t value )

config crc polynomial value

Parameters
value 32-bit new data of crc poly value
Return values
none.

Definition at line 156 of file at32f403_crc.c.

◆ crc_reverse_input_data_set()

void crc_reverse_input_data_set ( crc_reverse_input_type value )

control the reversal of the bit order in the input data

Parameters
value this parameter can be one of the following values:
  • CRC_REVERSE_INPUT_NO_AFFECTE
  • CRC_REVERSE_INPUT_BY_BYTE
  • CRC_REVERSE_INPUT_BY_HALFWORD
  • CRC_REVERSE_INPUT_BY_WORD
Return values
none.

Definition at line 132 of file at32f403_crc.c.

◆ crc_reverse_output_data_set()

void crc_reverse_output_data_set ( crc_reverse_output_type value )

control the reversal of the bit order in the output data

Parameters
value this parameter can be one of the following values:
  • CRC_REVERSE_OUTPUT_NO_AFFECTE
  • CRC_REVERSE_OUTPUT_DATA
Return values
none.

Definition at line 145 of file at32f403_crc.c.


AT32F403 Firmwary Library: CRC_private_functions

Functions
CRC_private_functions
AT32F403_periph_driver » CRC

Functions

void | crc_data_reset (void)
reset the crc data register. More...
uint32_t | crc_one_word_calculate (uint32_t data)
compute the 32-bit crc of a given data word(32-bit). More...
uint32_t | crc_block_calculate (uint32_t *pbuffer, uint32_t length)
compute the 32-bit crc of a given buffer of data word(32-bit). More...
uint32_t | crc_data_get (void)
return the current crc value. More...
void | crc_common_data_set (uint8_t cdt_value)
store a 8-bit data in the common data register. More...
uint8_t | crc_common_data_get (void)
return the 8-bit data stored in the common data register More...
void | crc_init_data_set (uint32_t value)
set the 32-bit initial data of crc More...
void | crc_reverse_input_data_set (crc_reverse_input_type value)
control the reversal of the bit order in the input data More...
void | crc_reverse_output_data_set (crc_reverse_output_type value)
control the reversal of the bit order in the output data More...
void | crc_poly_value_set (uint32_t value)
config crc polynomial value More...
uint32_t | crc_poly_value_get (void)
return crc polynomial value More...
void | crc_poly_size_set (crc_poly_size_type size)
config crc polynomial data size More...
crc_poly_size_type | crc_poly_size_get (void)
return crc polynomial data size More...

Detailed Description

Function Documentation

◆ crc_block_calculate()

uint32_t crc_block_calculate | ( | uint32_t * | pbuffer,
 |  | uint32_t | length
 | ) |  |

compute the 32-bit crc of a given buffer of data word(32-bit).

Parameters
pbuffer | pointer to the buffer containing the data to be computed
length | length of the buffer to be computed
Return values
32-bit crc

Definition at line 70 of file at32f403_crc.c.

Referenced by main().

◆ crc_common_data_get()

uint8_t crc_common_data_get ( void )

return the 8-bit data stored in the common data register

Parameters
none
Return values
8-bit value of the common data register

Definition at line 107 of file at32f403_crc.c.

◆ crc_common_data_set()

void crc_common_data_set ( uint8_t cdt_value )

store a 8-bit data in the common data register.

Parameters
cdt_value 8-bit value to be stored in the common data register
Return values
none

Definition at line 97 of file at32f403_crc.c.

◆ crc_data_get()

uint32_t crc_data_get ( void )

return the current crc value.

Parameters
none
Return values
32-bit crc

Definition at line 87 of file at32f403_crc.c.

Referenced by crc_cal().

◆ crc_data_reset()

void crc_data_reset ( void )

reset the crc data register.

Parameters
none
Return values
none

Definition at line 47 of file at32f403_crc.c.

Referenced by crc_cal(), flash_crc_check(), and main().

◆ crc_init_data_set()

void crc_init_data_set ( uint32_t value )

set the 32-bit initial data of crc

Parameters
value initial data
Return values
none

Definition at line 117 of file at32f403_crc.c.

◆ crc_one_word_calculate()

uint32_t crc_one_word_calculate ( uint32_t data )

compute the 32-bit crc of a given data word(32-bit).

Parameters
data data word(32-bit) to compute its crc
Return values
32-bit crc

Definition at line 58 of file at32f403_crc.c.

Referenced by crc_cal(), and flash_crc_check().

◆ crc_poly_size_get()

crc_poly_size_type crc_poly_size_get ( void )

return crc polynomial data size

Parameters
none
Return values
polynomial data size.

Definition at line 191 of file at32f403_crc.c.

◆ crc_poly_size_set()

void crc_poly_size_set ( crc_poly_size_type size )

config crc polynomial data size

Parameters
size this parameter can be one of the following values:
  • CRC_POLY_SIZE_32B
  • CRC_POLY_SIZE_16B
  • CRC_POLY_SIZE_8B
  • CRC_POLY_SIZE_7B
Return values
none.

Definition at line 181 of file at32f403_crc.c.

◆ crc_poly_value_get()

uint32_t crc_poly_value_get ( void )

return crc polynomial value

Parameters
none
Return values
32-bit value of the polynomial value.

Definition at line 166 of file at32f403_crc.c.

◆ crc_poly_value_set()

void crc_poly_value_set ( uint32_t value )

config crc polynomial value

Parameters
value 32-bit new data of crc poly value
Return values
none.

Definition at line 156 of file at32f403_crc.c.

◆ crc_reverse_input_data_set()

void crc_reverse_input_data_set ( crc_reverse_input_type value )

control the reversal of the bit order in the input data

Parameters
value this parameter can be one of the following values:
  • CRC_REVERSE_INPUT_NO_AFFECTE
  • CRC_REVERSE_INPUT_BY_BYTE
  • CRC_REVERSE_INPUT_BY_HALFWORD
  • CRC_REVERSE_INPUT_BY_WORD
Return values
none.

Definition at line 132 of file at32f403_crc.c.

◆ crc_reverse_output_data_set()

void crc_reverse_output_data_set ( crc_reverse_output_type value )

control the reversal of the bit order in the output data

Parameters
value this parameter can be one of the following values:
  • CRC_REVERSE_OUTPUT_NO_AFFECTE
  • CRC_REVERSE_OUTPUT_DATA
Return values
none.

Definition at line 145 of file at32f403_crc.c.


AT32F403 Firmwary Library: CRM

Modules | Macros
CRM
AT32F403_periph_driver

CRM driver modules. More...

Modules

CRM_flags_definition
crm flag
CRM_interrupts_definition
crm interrupt
CRM_exported_types
CRM_exported_functions
CRM_private_functions

Macros

#define | CRM_REG(value) PERIPH_REG(CRM_BASE, value)
#define | CRM_REG_BIT(value) PERIPH_REG_BIT(value)
#define | CRM ((crm_type *) CRM_BASE)

Detailed Description

CRM driver modules.

Macro Definition Documentation

◆ CRM

#define CRM ((crm_type *) CRM_BASE)

Definition at line 785 of file at32f403_crm.h.

◆ CRM_REG

#define CRM_REG ( value ) PERIPH_REG(CRM_BASE, value)

Definition at line 45 of file at32f403_crm.h.

◆ CRM_REG_BIT

#define CRM_REG_BIT ( value ) PERIPH_REG_BIT(value)

Definition at line 46 of file at32f403_crm.h.


AT32F403 Firmwary Library: CRM_flags_definition

Macros
CRM_flags_definition
AT32F403_periph_driver » CRM

crm flag More...

Macros

#define | CRM_HICK_STABLE_FLAG MAKE_VALUE(0x00, 1)
#define | CRM_HEXT_STABLE_FLAG MAKE_VALUE(0x00, 17)
#define | CRM_PLL_STABLE_FLAG MAKE_VALUE(0x00, 25)
#define | CRM_LEXT_STABLE_FLAG MAKE_VALUE(0x20, 1)
#define | CRM_LICK_STABLE_FLAG MAKE_VALUE(0x24, 1)
#define | CRM_ALL_RESET_FLAG MAKE_VALUE(0x24, 24)
#define | CRM_NRST_RESET_FLAG MAKE_VALUE(0x24, 26)
#define | CRM_POR_RESET_FLAG MAKE_VALUE(0x24, 27)
#define | CRM_SW_RESET_FLAG MAKE_VALUE(0x24, 28)
#define | CRM_WDT_RESET_FLAG MAKE_VALUE(0x24, 29)
#define | CRM_WWDT_RESET_FLAG MAKE_VALUE(0x24, 30)
#define | CRM_LOWPOWER_RESET_FLAG MAKE_VALUE(0x24, 31)
#define | CRM_LICK_READY_INT_FLAG MAKE_VALUE(0x08, 0)
#define | CRM_LEXT_READY_INT_FLAG MAKE_VALUE(0x08, 1)
#define | CRM_HICK_READY_INT_FLAG MAKE_VALUE(0x08, 2)
#define | CRM_HEXT_READY_INT_FLAG MAKE_VALUE(0x08, 3)
#define | CRM_PLL_READY_INT_FLAG MAKE_VALUE(0x08, 4)
#define | CRM_CLOCK_FAILURE_INT_FLAG MAKE_VALUE(0x08, 7)

Detailed Description

crm flag

Macro Definition Documentation

◆ CRM_ALL_RESET_FLAG

#define CRM_ALL_RESET_FLAG MAKE_VALUE(0x24, 24)

all reset flag

Definition at line 58 of file at32f403_crm.h.

◆ CRM_CLOCK_FAILURE_INT_FLAG

#define CRM_CLOCK_FAILURE_INT_FLAG MAKE_VALUE(0x08, 7)

clock failure interrupt ready flag

Definition at line 70 of file at32f403_crm.h.

◆ CRM_HEXT_READY_INT_FLAG

#define CRM_HEXT_READY_INT_FLAG MAKE_VALUE(0x08, 3)

high speed external crystal stable interrupt ready flag

Definition at line 68 of file at32f403_crm.h.

◆ CRM_HEXT_STABLE_FLAG

#define CRM_HEXT_STABLE_FLAG MAKE_VALUE(0x00, 17)

high speed external crystal stable flag

Definition at line 54 of file at32f403_crm.h.

◆ CRM_HICK_READY_INT_FLAG

#define CRM_HICK_READY_INT_FLAG MAKE_VALUE(0x08, 2)

high speed internal clock stable interrupt ready flag

Definition at line 67 of file at32f403_crm.h.

◆ CRM_HICK_STABLE_FLAG

#define CRM_HICK_STABLE_FLAG MAKE_VALUE(0x00, 1)

high speed internal clock stable flag

Definition at line 53 of file at32f403_crm.h.

◆ CRM_LEXT_READY_INT_FLAG

#define CRM_LEXT_READY_INT_FLAG MAKE_VALUE(0x08, 1)

low speed external crystal stable interrupt ready flag

Definition at line 66 of file at32f403_crm.h.

◆ CRM_LEXT_STABLE_FLAG

#define CRM_LEXT_STABLE_FLAG MAKE_VALUE(0x20, 1)

low speed external crystal stable flag

Definition at line 56 of file at32f403_crm.h.

◆ CRM_LICK_READY_INT_FLAG

#define CRM_LICK_READY_INT_FLAG MAKE_VALUE(0x08, 0)

low speed internal clock stable interrupt ready flag

Definition at line 65 of file at32f403_crm.h.

◆ CRM_LICK_STABLE_FLAG

#define CRM_LICK_STABLE_FLAG MAKE_VALUE(0x24, 1)

low speed internal clock stable flag

Definition at line 57 of file at32f403_crm.h.

◆ CRM_LOWPOWER_RESET_FLAG

#define CRM_LOWPOWER_RESET_FLAG MAKE_VALUE(0x24, 31)

low-power reset flag

Definition at line 64 of file at32f403_crm.h.

◆ CRM_NRST_RESET_FLAG

#define CRM_NRST_RESET_FLAG MAKE_VALUE(0x24, 26)

nrst pin reset flag

Definition at line 59 of file at32f403_crm.h.

◆ CRM_PLL_READY_INT_FLAG

#define CRM_PLL_READY_INT_FLAG MAKE_VALUE(0x08, 4)

phase locking loop stable interrupt ready flag

Definition at line 69 of file at32f403_crm.h.

◆ CRM_PLL_STABLE_FLAG

#define CRM_PLL_STABLE_FLAG MAKE_VALUE(0x00, 25)

phase locking loop stable flag

Definition at line 55 of file at32f403_crm.h.

◆ CRM_POR_RESET_FLAG

#define CRM_POR_RESET_FLAG MAKE_VALUE(0x24, 27)

power on reset flag

Definition at line 60 of file at32f403_crm.h.

◆ CRM_SW_RESET_FLAG

#define CRM_SW_RESET_FLAG MAKE_VALUE(0x24, 28)

software reset flag

Definition at line 61 of file at32f403_crm.h.

◆ CRM_WDT_RESET_FLAG

#define CRM_WDT_RESET_FLAG MAKE_VALUE(0x24, 29)

watchdog timer reset flag

Definition at line 62 of file at32f403_crm.h.

◆ CRM_WWDT_RESET_FLAG

#define CRM_WWDT_RESET_FLAG MAKE_VALUE(0x24, 30)

window watchdog timer reset flag

Definition at line 63 of file at32f403_crm.h.


AT32F403 Firmwary Library: CRM_interrupts_definition

Macros
CRM_interrupts_definition
AT32F403_periph_driver » CRM

crm interrupt More...

Macros

#define | CRM_LICK_STABLE_INT ((uint32_t)0x00000100)
#define | CRM_LEXT_STABLE_INT ((uint32_t)0x00000200)
#define | CRM_HICK_STABLE_INT ((uint32_t)0x00000400)
#define | CRM_HEXT_STABLE_INT ((uint32_t)0x00000800)
#define | CRM_PLL_STABLE_INT ((uint32_t)0x00001000)
#define | CRM_CLOCK_FAILURE_INT ((uint32_t)0x00800000)

Detailed Description

crm interrupt

Macro Definition Documentation

◆ CRM_CLOCK_FAILURE_INT

#define CRM_CLOCK_FAILURE_INT ((uint32_t)0x00800000)

clock failure interrupt

Definition at line 86 of file at32f403_crm.h.

◆ CRM_HEXT_STABLE_INT

#define CRM_HEXT_STABLE_INT ((uint32_t)0x00000800)

high speed external crystal stable interrupt

Definition at line 84 of file at32f403_crm.h.

◆ CRM_HICK_STABLE_INT

#define CRM_HICK_STABLE_INT ((uint32_t)0x00000400)

high speed internal clock stable interrupt

Definition at line 83 of file at32f403_crm.h.

◆ CRM_LEXT_STABLE_INT

#define CRM_LEXT_STABLE_INT ((uint32_t)0x00000200)

low speed external crystal stable interrupt

Definition at line 82 of file at32f403_crm.h.

◆ CRM_LICK_STABLE_INT

#define CRM_LICK_STABLE_INT ((uint32_t)0x00000100)

low speed internal clock stable interrupt

Definition at line 81 of file at32f403_crm.h.

◆ CRM_PLL_STABLE_INT

#define CRM_PLL_STABLE_INT ((uint32_t)0x00001000)

phase locking loop stable interrupt

Definition at line 85 of file at32f403_crm.h.


AT32F403 Firmwary Library: CRM_exported_types

Data Structures | Enumerations
CRM_exported_types
AT32F403_periph_driver » CRM

Data Structures

struct | crm_clocks_freq_type
crm clocks freqency structure More...
struct | crm_type
type define crm register all More...

Enumerations

enum crm_periph_clock_type {
CRM_DMA1_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 0 & 0x1F)) , CRM_DMA2_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 1 & 0x1F)) , CRM_CRC_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 6 & 0x1F)) , CRM_XMC_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 8 & 0x1F)) ,
CRM_SDIO1_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 10 & 0x1F)) , CRM_SDIO2_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 11 & 0x1F)) , CRM_IOMUX_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 0 & 0x1F)) , CRM_GPIOA_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 2 & 0x1F)) ,
CRM_GPIOB_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 3 & 0x1F)) , CRM_GPIOC_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 4 & 0x1F)) , CRM_GPIOD_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 5 & 0x1F)) , CRM_GPIOE_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 6 & 0x1F)) ,
CRM_GPIOF_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 7 & 0x1F)) , CRM_GPIOG_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 8 & 0x1F)) , CRM_ADC1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 9 & 0x1F)) , CRM_ADC2_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 10 & 0x1F)) ,
CRM_TMR1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 11 & 0x1F)) , CRM_SPI1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 12 & 0x1F)) , CRM_TMR8_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 13 & 0x1F)) , CRM_USART1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 14 & 0x1F)) ,
CRM_ADC3_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 15 & 0x1F)) , CRM_TMR15_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 16 & 0x1F)) , CRM_TMR9_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 19 & 0x1F)) , CRM_TMR10_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 20 & 0x1F)) ,
CRM_TMR11_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 21 & 0x1F)) , CRM_TMR2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 0 & 0x1F)) , CRM_TMR3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 1 & 0x1F)) , CRM_TMR4_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 2 & 0x1F)) ,
CRM_TMR5_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 3 & 0x1F)) , CRM_TMR6_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 4 & 0x1F)) , CRM_TMR7_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 5 & 0x1F)) , CRM_TMR12_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 6 & 0x1F)) ,
CRM_TMR13_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 7 & 0x1F)) , CRM_TMR14_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 8 & 0x1F)) , CRM_WWDT_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 11 & 0x1F)) , CRM_SPI2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 14 & 0x1F)) ,
CRM_SPI3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 15 & 0x1F)) , CRM_SPI4_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 16 & 0x1F)) , CRM_USART2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 17 & 0x1F)) , CRM_USART3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 18 & 0x1F)) ,
CRM_UART4_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 19 & 0x1F)) , CRM_UART5_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 20 & 0x1F)) , CRM_I2C1_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 21 & 0x1F)) , CRM_I2C2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 22 & 0x1F)) ,
CRM_USB_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 23 & 0x1F)) , CRM_CAN1_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 25 & 0x1F)) , CRM_I2C3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 26 & 0x1F)) , CRM_BPR_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 27 & 0x1F)) ,
CRM_PWC_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 28 & 0x1F)) , CRM_DAC_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 29 & 0x1F))
}
crm periph clock More...
enum crm_periph_reset_type {
CRM_IOMUX_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 0 & 0x1F)) , CRM_EXINT_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 1 & 0x1F)) , CRM_GPIOA_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 2 & 0x1F)) , CRM_GPIOB_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 3 & 0x1F)) ,
CRM_GPIOC_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 4 & 0x1F)) , CRM_GPIOD_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 5 & 0x1F)) , CRM_GPIOE_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 6 & 0x1F)) , CRM_GPIOF_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 7 & 0x1F)) ,
CRM_GPIOG_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 8 & 0x1F)) , CRM_ADC1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 9 & 0x1F)) , CRM_ADC2_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 10 & 0x1F)) , CRM_TMR1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 11 & 0x1F)) ,
CRM_SPI1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 12 & 0x1F)) , CRM_TMR8_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 13 & 0x1F)) , CRM_USART1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 14 & 0x1F)) , CRM_ADC3_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 15 & 0x1F)) ,
CRM_TMR15_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 16 & 0x1F)) , CRM_TMR9_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 19 & 0x1F)) , CRM_TMR10_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 20 & 0x1F)) , CRM_TMR11_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 21 & 0x1F)) ,
CRM_TMR2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 0 & 0x1F)) , CRM_TMR3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 1 & 0x1F)) , CRM_TMR4_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 2 & 0x1F)) , CRM_TMR5_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 3 & 0x1F)) ,
CRM_TMR6_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 4 & 0x1F)) , CRM_TMR7_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 5 & 0x1F)) , CRM_TMR12_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 6 & 0x1F)) , CRM_TMR13_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 7 & 0x1F)) ,
CRM_TMR14_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 8 & 0x1F)) , CRM_WWDT_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 11 & 0x1F)) , CRM_SPI2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 14 & 0x1F)) , CRM_SPI3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 15 & 0x1F)) ,
CRM_SPI4_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 16 & 0x1F)) , CRM_USART2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 17 & 0x1F)) , CRM_USART3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 18 & 0x1F)) , CRM_UART4_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 19 & 0x1F)) ,
CRM_UART5_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 20 & 0x1F)) , CRM_I2C1_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 21 & 0x1F)) , CRM_I2C2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 22 & 0x1F)) , CRM_USB_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 23 & 0x1F)) ,
CRM_CAN1_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 25 & 0x1F)) , CRM_I2C3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 26 & 0x1F)) , CRM_BPR_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 27 & 0x1F)) , CRM_PWC_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 28 & 0x1F)) ,
CRM_DAC_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 29 & 0x1F))
}
crm periph reset More...
enum | crm_periph_clock_sleepmd_type { CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE = (uint32_t)((( 0x14 ) << 16) | ( 2 & 0x1F)) , CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE = (uint32_t)((( 0x14 ) << 16) | ( 4 & 0x1F)) }
crm periph clock in sleep mode More...
enum crm_pll_mult_type {
CRM_PLL_MULT_2 = 0 , CRM_PLL_MULT_3 = 1 , CRM_PLL_MULT_4 = 2 , CRM_PLL_MULT_5 = 3 ,
CRM_PLL_MULT_6 = 4 , CRM_PLL_MULT_7 = 5 , CRM_PLL_MULT_8 = 6 , CRM_PLL_MULT_9 = 7 ,
CRM_PLL_MULT_10 = 8 , CRM_PLL_MULT_11 = 9 , CRM_PLL_MULT_12 = 10 , CRM_PLL_MULT_13 = 11 ,
CRM_PLL_MULT_14 = 12 , CRM_PLL_MULT_15 = 13 , CRM_PLL_MULT_16 = 15 , CRM_PLL_MULT_17 = 16 ,
CRM_PLL_MULT_18 = 17 , CRM_PLL_MULT_19 = 18 , CRM_PLL_MULT_20 = 19 , CRM_PLL_MULT_21 = 20 ,
CRM_PLL_MULT_22 = 21 , CRM_PLL_MULT_23 = 22 , CRM_PLL_MULT_24 = 23 , CRM_PLL_MULT_25 = 24 ,
CRM_PLL_MULT_26 = 25 , CRM_PLL_MULT_27 = 26 , CRM_PLL_MULT_28 = 27 , CRM_PLL_MULT_29 = 28 ,
CRM_PLL_MULT_30 = 29 , CRM_PLL_MULT_31 = 30 , CRM_PLL_MULT_32 = 31 , CRM_PLL_MULT_33 = 32 ,
CRM_PLL_MULT_34 = 33 , CRM_PLL_MULT_35 = 34 , CRM_PLL_MULT_36 = 35 , CRM_PLL_MULT_37 = 36 ,
CRM_PLL_MULT_38 = 37 , CRM_PLL_MULT_39 = 38 , CRM_PLL_MULT_40 = 39 , CRM_PLL_MULT_41 = 40 ,
CRM_PLL_MULT_42 = 41 , CRM_PLL_MULT_43 = 42 , CRM_PLL_MULT_44 = 43 , CRM_PLL_MULT_45 = 44 ,
CRM_PLL_MULT_46 = 45 , CRM_PLL_MULT_47 = 46 , CRM_PLL_MULT_48 = 47 , CRM_PLL_MULT_49 = 48 ,
CRM_PLL_MULT_50 = 49 , CRM_PLL_MULT_51 = 50 , CRM_PLL_MULT_52 = 51 , CRM_PLL_MULT_53 = 52 ,
CRM_PLL_MULT_54 = 53 , CRM_PLL_MULT_55 = 54 , CRM_PLL_MULT_56 = 55 , CRM_PLL_MULT_57 = 56 ,
CRM_PLL_MULT_58 = 57 , CRM_PLL_MULT_59 = 58 , CRM_PLL_MULT_60 = 59 , CRM_PLL_MULT_61 = 60 ,
CRM_PLL_MULT_62 = 61 , CRM_PLL_MULT_63 = 62 , CRM_PLL_MULT_64 = 63
}
crm pll mult_x More...
enum | crm_pll_clock_source_type { CRM_PLL_SOURCE_HICK = 0x00 , CRM_PLL_SOURCE_HEXT = 0x01 , CRM_PLL_SOURCE_HEXT_DIV = 0x02 }
crm pll clock source More...
enum | crm_pll_output_range_type { CRM_PLL_OUTPUT_RANGE_LE72MHZ = 0x00 , CRM_PLL_OUTPUT_RANGE_GT72MHZ = 0x01 }
crm pll clock output range More...
enum crm_clock_source_type {
CRM_CLOCK_SOURCE_HICK = 0x00 , CRM_CLOCK_SOURCE_HEXT = 0x01 , CRM_CLOCK_SOURCE_PLL = 0x02 , CRM_CLOCK_SOURCE_LEXT = 0x03 ,
CRM_CLOCK_SOURCE_LICK = 0x04
}
crm clock source More...
enum crm_ahb_div_type {
CRM_AHB_DIV_1 = 0x00 , CRM_AHB_DIV_2 = 0x08 , CRM_AHB_DIV_4 = 0x09 , CRM_AHB_DIV_8 = 0x0A ,
CRM_AHB_DIV_16 = 0x0B , CRM_AHB_DIV_64 = 0x0C , CRM_AHB_DIV_128 = 0x0D , CRM_AHB_DIV_256 = 0x0E ,
CRM_AHB_DIV_512 = 0x0F
}
crm ahb division More...
enum crm_apb1_div_type {
CRM_APB1_DIV_1 = 0x00 , CRM_APB1_DIV_2 = 0x04 , CRM_APB1_DIV_4 = 0x05 , CRM_APB1_DIV_8 = 0x06 ,
CRM_APB1_DIV_16 = 0x07
}
crm apb1 division More...
enum crm_apb2_div_type {
CRM_APB2_DIV_1 = 0x00 , CRM_APB2_DIV_2 = 0x04 , CRM_APB2_DIV_4 = 0x05 , CRM_APB2_DIV_8 = 0x06 ,
CRM_APB2_DIV_16 = 0x07
}
crm apb2 division More...
enum crm_adc_div_type {
CRM_ADC_DIV_2 = 0x00 , CRM_ADC_DIV_4 = 0x01 , CRM_ADC_DIV_6 = 0x02 , CRM_ADC_DIV_8 = 0x03 ,
CRM_ADC_DIV_12 = 0x05 , CRM_ADC_DIV_16 = 0x07
}
crm adc division More...
enum crm_usb_div_type {
CRM_USB_DIV_1_5 = 0x00 , CRM_USB_DIV_1 = 0x01 , CRM_USB_DIV_2_5 = 0x02 , CRM_USB_DIV_2 = 0x03 ,
CRM_USB_DIV_3_5 = 0x04 , CRM_USB_DIV_3 = 0x05 , CRM_USB_DIV_4 = 0x06
}
crm usb division More...
enum | crm_rtc_clock_type { CRM_RTC_CLOCK_NOCLK = 0x00 , CRM_RTC_CLOCK_LEXT = 0x01 , CRM_RTC_CLOCK_LICK = 0x02 , CRM_RTC_CLOCK_HEXT_DIV = 0x03 }
crm rtc clock More...
enum | crm_sclk_type { CRM_SCLK_HICK = 0x00 , CRM_SCLK_HEXT = 0x01 , CRM_SCLK_PLL = 0x02 }
crm sclk select More...
enum crm_clkout_select_type {
CRM_CLKOUT_NOCLK = 0x00 , CRM_CLKOUT_LICK = 0x02 , CRM_CLKOUT_LEXT = 0x03 , CRM_CLKOUT_SCLK = 0x04 ,
CRM_CLKOUT_HICK = 0x05 , CRM_CLKOUT_HEXT = 0x06 , CRM_CLKOUT_PLL_DIV_2 = 0x07 , CRM_CLKOUT_PLL_DIV_4 = 0x0C ,
CRM_CLKOUT_USB = 0x0D , CRM_CLKOUT_ADC = 0x0E
}
crm clkout select More...
enum | crm_usb_int_map_type { CRM_USB_INT19_INT20 = 0x00 , CRM_USB_INT73_INT74 = 0x01 }
crm usbdev interrupt remap More...
enum | crm_usb_clock_source_type { CRM_USB_CLOCK_SOURCE_PLL = 0x00 , CRM_USB_CLOCK_SOURCE_HICK = 0x01 }
crm usb 48 mhz clock source select More...

Detailed Description

Enumeration Type Documentation

◆ crm_adc_div_type

enum crm_adc_div_type

crm adc division

Enumerator
CRM_ADC_DIV_2 | apb2clk div2 to adcclk
CRM_ADC_DIV_4 | apb2clk div4 to adcclk
CRM_ADC_DIV_6 | apb2clk div6 to adcclk
CRM_ADC_DIV_8 | apb2clk div8 to adcclk
CRM_ADC_DIV_12 | apb2clk div12 to adcclk
CRM_ADC_DIV_16 | apb2clk div16 to adcclk

Definition at line 366 of file at32f403_crm.h.

◆ crm_ahb_div_type

enum crm_ahb_div_type

crm ahb division

Enumerator
CRM_AHB_DIV_1 | sclk div1 to ahbclk
CRM_AHB_DIV_2 | sclk div2 to ahbclk
CRM_AHB_DIV_4 | sclk div4 to ahbclk
CRM_AHB_DIV_8 | sclk div8 to ahbclk
CRM_AHB_DIV_16 | sclk div16 to ahbclk
CRM_AHB_DIV_64 | sclk div64 to ahbclk
CRM_AHB_DIV_128 | sclk div128 to ahbclk
CRM_AHB_DIV_256 | sclk div256 to ahbclk
CRM_AHB_DIV_512 | sclk div512 to ahbclk

Definition at line 326 of file at32f403_crm.h.

◆ crm_apb1_div_type

enum crm_apb1_div_type

crm apb1 division

Enumerator
CRM_APB1_DIV_1 | ahbclk div1 to apb1clk
CRM_APB1_DIV_2 | ahbclk div2 to apb1clk
CRM_APB1_DIV_4 | ahbclk div4 to apb1clk
CRM_APB1_DIV_8 | ahbclk div8 to apb1clk
CRM_APB1_DIV_16 | ahbclk div16 to apb1clk

Definition at line 342 of file at32f403_crm.h.

◆ crm_apb2_div_type

enum crm_apb2_div_type

crm apb2 division

Enumerator
CRM_APB2_DIV_1 | ahbclk div1 to apb2clk
CRM_APB2_DIV_2 | ahbclk div2 to apb2clk
CRM_APB2_DIV_4 | ahbclk div4 to apb2clk
CRM_APB2_DIV_8 | ahbclk div8 to apb2clk
CRM_APB2_DIV_16 | ahbclk div16 to apb2clk

Definition at line 354 of file at32f403_crm.h.

◆ crm_clkout_select_type

enum crm_clkout_select_type

crm clkout select

Enumerator
CRM_CLKOUT_NOCLK | output no clock to clkout pin
CRM_CLKOUT_LICK | output low speed internal clock to clkout pin
CRM_CLKOUT_LEXT | output low speed external crystal to clkout pin
CRM_CLKOUT_SCLK | output system clock to clkout pin
CRM_CLKOUT_HICK | output high speed internal clock to clkout pin
CRM_CLKOUT_HEXT | output high speed external crystal to clkout pin
CRM_CLKOUT_PLL_DIV_2 | output phase locking loop clock div2 to clkout pin
CRM_CLKOUT_PLL_DIV_4 | output phase locking loop clock div4 to clkout pin
CRM_CLKOUT_USB | output usbclk to clkout pin
CRM_CLKOUT_ADC | output adcclk to clkout pin

Definition at line 414 of file at32f403_crm.h.

◆ crm_clock_source_type

enum crm_clock_source_type

crm clock source

Enumerator
CRM_CLOCK_SOURCE_HICK | high speed internal clock
CRM_CLOCK_SOURCE_HEXT | high speed external crystal
CRM_CLOCK_SOURCE_PLL | phase locking loop
CRM_CLOCK_SOURCE_LEXT | low speed external crystal
CRM_CLOCK_SOURCE_LICK | low speed internal clock

Definition at line 314 of file at32f403_crm.h.

◆ crm_periph_clock_sleepmd_type

enum crm_periph_clock_sleepmd_type

crm periph clock in sleep mode

Enumerator
CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE | sram sleep mode periph clock
CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE | flash sleep mode periph clock

Definition at line 215 of file at32f403_crm.h.

◆ crm_periph_clock_type

enum crm_periph_clock_type

crm periph clock

Enumerator
CRM_DMA1_PERIPH_CLOCK | dma1 periph clock
CRM_DMA2_PERIPH_CLOCK | dma2 periph clock
CRM_CRC_PERIPH_CLOCK | crc periph clock
CRM_XMC_PERIPH_CLOCK | xmc periph clock
CRM_SDIO1_PERIPH_CLOCK | sdio1 periph clock
CRM_SDIO2_PERIPH_CLOCK | sdio2 periph clock
CRM_IOMUX_PERIPH_CLOCK | iomux periph clock
CRM_GPIOA_PERIPH_CLOCK | gpioa periph clock
CRM_GPIOB_PERIPH_CLOCK | gpiob periph clock
CRM_GPIOC_PERIPH_CLOCK | gpioc periph clock
CRM_GPIOD_PERIPH_CLOCK | gpiod periph clock
CRM_GPIOE_PERIPH_CLOCK | gpioe periph clock
CRM_GPIOF_PERIPH_CLOCK | gpiof periph clock
CRM_GPIOG_PERIPH_CLOCK | gpiog periph clock
CRM_ADC1_PERIPH_CLOCK | adc1 periph clock
CRM_ADC2_PERIPH_CLOCK | adc2 periph clock
CRM_TMR1_PERIPH_CLOCK | tmr1 periph clock
CRM_SPI1_PERIPH_CLOCK | spi1 periph clock
CRM_TMR8_PERIPH_CLOCK | tmr8 periph clock
CRM_USART1_PERIPH_CLOCK | usart1 periph clock
CRM_ADC3_PERIPH_CLOCK | adc3 periph clock
CRM_TMR15_PERIPH_CLOCK | tmr15 periph clock
CRM_TMR9_PERIPH_CLOCK | tmr9 periph clock
CRM_TMR10_PERIPH_CLOCK | tmr10 periph clock
CRM_TMR11_PERIPH_CLOCK | tmr11 periph clock
CRM_TMR2_PERIPH_CLOCK | tmr2 periph clock
CRM_TMR3_PERIPH_CLOCK | tmr3 periph clock
CRM_TMR4_PERIPH_CLOCK | tmr4 periph clock
CRM_TMR5_PERIPH_CLOCK | tmr5 periph clock
CRM_TMR6_PERIPH_CLOCK | tmr6 periph clock
CRM_TMR7_PERIPH_CLOCK | tmr7 periph clock
CRM_TMR12_PERIPH_CLOCK | tmr12 periph clock
CRM_TMR13_PERIPH_CLOCK | tmr13 periph clock
CRM_TMR14_PERIPH_CLOCK | tmr14 periph clock
CRM_WWDT_PERIPH_CLOCK | wwdt periph clock
CRM_SPI2_PERIPH_CLOCK | spi2 periph clock
CRM_SPI3_PERIPH_CLOCK | spi3 periph clock
CRM_SPI4_PERIPH_CLOCK | spi4 periph clock
CRM_USART2_PERIPH_CLOCK | usart2 periph clock
CRM_USART3_PERIPH_CLOCK | usart3 periph clock
CRM_UART4_PERIPH_CLOCK | uart4 periph clock
CRM_UART5_PERIPH_CLOCK | uart5 periph clock
CRM_I2C1_PERIPH_CLOCK | i2c1 periph clock
CRM_I2C2_PERIPH_CLOCK | i2c2 periph clock
CRM_USB_PERIPH_CLOCK | usb periph clock
CRM_CAN1_PERIPH_CLOCK | can1 periph clock
CRM_I2C3_PERIPH_CLOCK | i2c3 periph clock
CRM_BPR_PERIPH_CLOCK | bpr periph clock
CRM_PWC_PERIPH_CLOCK | pwc periph clock
CRM_DAC_PERIPH_CLOCK | dac periph clock

Definition at line 99 of file at32f403_crm.h.

◆ crm_periph_reset_type

enum crm_periph_reset_type

crm periph reset

Enumerator
CRM_IOMUX_PERIPH_RESET | iomux periph reset
CRM_EXINT_PERIPH_RESET | exint periph reset
CRM_GPIOA_PERIPH_RESET | gpioa periph reset
CRM_GPIOB_PERIPH_RESET | gpiob periph reset
CRM_GPIOC_PERIPH_RESET | gpioc periph reset
CRM_GPIOD_PERIPH_RESET | gpiod periph reset
CRM_GPIOE_PERIPH_RESET | gpioe periph reset
CRM_GPIOF_PERIPH_RESET | gpiof periph reset
CRM_GPIOG_PERIPH_RESET | gpiog periph reset
CRM_ADC1_PERIPH_RESET | adc1 periph reset
CRM_ADC2_PERIPH_RESET | adc2 periph reset
CRM_TMR1_PERIPH_RESET | tmr1 periph reset
CRM_SPI1_PERIPH_RESET | spi2 periph reset
CRM_TMR8_PERIPH_RESET | tmr8 periph reset
CRM_USART1_PERIPH_RESET | usart1 periph reset
CRM_ADC3_PERIPH_RESET | adc3 periph reset
CRM_TMR15_PERIPH_RESET | tmr15 periph reset
CRM_TMR9_PERIPH_RESET | tmr9 periph reset
CRM_TMR10_PERIPH_RESET | tmr10 periph reset
CRM_TMR11_PERIPH_RESET | tmr11 periph reset
CRM_TMR2_PERIPH_RESET | tmr2 periph reset
CRM_TMR3_PERIPH_RESET | tmr3 periph reset
CRM_TMR4_PERIPH_RESET | tmr4 periph reset
CRM_TMR5_PERIPH_RESET | tmr5 periph reset
CRM_TMR6_PERIPH_RESET | tmr6 periph reset
CRM_TMR7_PERIPH_RESET | tmr7 periph reset
CRM_TMR12_PERIPH_RESET | tmr12 periph reset
CRM_TMR13_PERIPH_RESET | tmr13 periph reset
CRM_TMR14_PERIPH_RESET | tmr14 periph reset
CRM_WWDT_PERIPH_RESET | wwdt periph reset
CRM_SPI2_PERIPH_RESET | spi2 periph reset
CRM_SPI3_PERIPH_RESET | spi3 periph reset
CRM_SPI4_PERIPH_RESET | spi4 periph reset
CRM_USART2_PERIPH_RESET | usart2 periph reset
CRM_USART3_PERIPH_RESET | usart3 periph reset
CRM_UART4_PERIPH_RESET | uart4 periph reset
CRM_UART5_PERIPH_RESET | uart5 periph reset
CRM_I2C1_PERIPH_RESET | i2c1 periph reset
CRM_I2C2_PERIPH_RESET | i2c2 periph reset
CRM_USB_PERIPH_RESET | usb periph reset
CRM_CAN1_PERIPH_RESET | can1 periph reset
CRM_I2C3_PERIPH_RESET | i2c3 periph reset
CRM_BPR_PERIPH_RESET | bpr periph reset
CRM_PWC_PERIPH_RESET | pwc periph reset
CRM_DAC_PERIPH_RESET | dac periph reset

Definition at line 160 of file at32f403_crm.h.

◆ crm_pll_clock_source_type

enum crm_pll_clock_source_type

crm pll clock source

Enumerator
CRM_PLL_SOURCE_HICK | high speed internal clock as pll reference clock source
CRM_PLL_SOURCE_HEXT | high speed external crystal as pll reference clock source
CRM_PLL_SOURCE_HEXT_DIV | high speed external crystal div as pll reference clock source

Definition at line 295 of file at32f403_crm.h.

◆ crm_pll_mult_type

enum crm_pll_mult_type

crm pll mult_x

Enumerator
CRM_PLL_MULT_2 | pll multiplication factor 2
CRM_PLL_MULT_3 | pll multiplication factor 3
CRM_PLL_MULT_4 | pll multiplication factor 4
CRM_PLL_MULT_5 | pll multiplication factor 5
CRM_PLL_MULT_6 | pll multiplication factor 6
CRM_PLL_MULT_7 | pll multiplication factor 7
CRM_PLL_MULT_8 | pll multiplication factor 8
CRM_PLL_MULT_9 | pll multiplication factor 9
CRM_PLL_MULT_10 | pll multiplication factor 10
CRM_PLL_MULT_11 | pll multiplication factor 11
CRM_PLL_MULT_12 | pll multiplication factor 12
CRM_PLL_MULT_13 | pll multiplication factor 13
CRM_PLL_MULT_14 | pll multiplication factor 14
CRM_PLL_MULT_15 | pll multiplication factor 15
CRM_PLL_MULT_16 | pll multiplication factor 16
CRM_PLL_MULT_17 | pll multiplication factor 17
CRM_PLL_MULT_18 | pll multiplication factor 18
CRM_PLL_MULT_19 | pll multiplication factor 19
CRM_PLL_MULT_20 | pll multiplication factor 20
CRM_PLL_MULT_21 | pll multiplication factor 21
CRM_PLL_MULT_22 | pll multiplication factor 22
CRM_PLL_MULT_23 | pll multiplication factor 23
CRM_PLL_MULT_24 | pll multiplication factor 24
CRM_PLL_MULT_25 | pll multiplication factor 25
CRM_PLL_MULT_26 | pll multiplication factor 26
CRM_PLL_MULT_27 | pll multiplication factor 27
CRM_PLL_MULT_28 | pll multiplication factor 28
CRM_PLL_MULT_29 | pll multiplication factor 29
CRM_PLL_MULT_30 | pll multiplication factor 30
CRM_PLL_MULT_31 | pll multiplication factor 31
CRM_PLL_MULT_32 | pll multiplication factor 32
CRM_PLL_MULT_33 | pll multiplication factor 33
CRM_PLL_MULT_34 | pll multiplication factor 34
CRM_PLL_MULT_35 | pll multiplication factor 35
CRM_PLL_MULT_36 | pll multiplication factor 36
CRM_PLL_MULT_37 | pll multiplication factor 37
CRM_PLL_MULT_38 | pll multiplication factor 38
CRM_PLL_MULT_39 | pll multiplication factor 39
CRM_PLL_MULT_40 | pll multiplication factor 40
CRM_PLL_MULT_41 | pll multiplication factor 41
CRM_PLL_MULT_42 | pll multiplication factor 42
CRM_PLL_MULT_43 | pll multiplication factor 43
CRM_PLL_MULT_44 | pll multiplication factor 44
CRM_PLL_MULT_45 | pll multiplication factor 45
CRM_PLL_MULT_46 | pll multiplication factor 46
CRM_PLL_MULT_47 | pll multiplication factor 47
CRM_PLL_MULT_48 | pll multiplication factor 48
CRM_PLL_MULT_49 | pll multiplication factor 49
CRM_PLL_MULT_50 | pll multiplication factor 50
CRM_PLL_MULT_51 | pll multiplication factor 51
CRM_PLL_MULT_52 | pll multiplication factor 52
CRM_PLL_MULT_53 | pll multiplication factor 53
CRM_PLL_MULT_54 | pll multiplication factor 54
CRM_PLL_MULT_55 | pll multiplication factor 55
CRM_PLL_MULT_56 | pll multiplication factor 56
CRM_PLL_MULT_57 | pll multiplication factor 57
CRM_PLL_MULT_58 | pll multiplication factor 58
CRM_PLL_MULT_59 | pll multiplication factor 59
CRM_PLL_MULT_60 | pll multiplication factor 60
CRM_PLL_MULT_61 | pll multiplication factor 61
CRM_PLL_MULT_62 | pll multiplication factor 62
CRM_PLL_MULT_63 | pll multiplication factor 63
CRM_PLL_MULT_64 | pll multiplication factor 64

Definition at line 225 of file at32f403_crm.h.

◆ crm_pll_output_range_type

enum crm_pll_output_range_type

crm pll clock output range

Enumerator
CRM_PLL_OUTPUT_RANGE_LE72MHZ | pll clock output range less than or equal to 72mhz
CRM_PLL_OUTPUT_RANGE_GT72MHZ | pll clock output range greater than 72mhz

Definition at line 305 of file at32f403_crm.h.

◆ crm_rtc_clock_type

enum crm_rtc_clock_type

crm rtc clock

Enumerator
CRM_RTC_CLOCK_NOCLK | no clock as rtc clock source
CRM_RTC_CLOCK_LEXT | low speed external crystal as rtc clock source
CRM_RTC_CLOCK_LICK | low speed internal clock as rtc clock source
CRM_RTC_CLOCK_HEXT_DIV | high speed external crystal div as rtc clock source

Definition at line 393 of file at32f403_crm.h.

◆ crm_sclk_type

enum crm_sclk_type

crm sclk select

Enumerator
CRM_SCLK_HICK | select high speed internal clock as sclk
CRM_SCLK_HEXT | select high speed external crystal as sclk
CRM_SCLK_PLL | select phase locking loop clock as sclk

Definition at line 404 of file at32f403_crm.h.

◆ crm_usb_clock_source_type

enum crm_usb_clock_source_type

crm usb 48 mhz clock source select

Enumerator
CRM_USB_CLOCK_SOURCE_PLL | select phase locking loop clock as usb clock source
CRM_USB_CLOCK_SOURCE_HICK | select high speed internal clock as usb clock source

Definition at line 440 of file at32f403_crm.h.

◆ crm_usb_div_type

enum crm_usb_div_type

crm usb division

Enumerator
CRM_USB_DIV_1_5 | pllclk div1.5 to usbclk
CRM_USB_DIV_1 | pllclk div1 to usbclk
CRM_USB_DIV_2_5 | pllclk div2.5 to usbclk
CRM_USB_DIV_2 | pllclk div2 to usbclk
CRM_USB_DIV_3_5 | pllclk div3.5 to usbclk
CRM_USB_DIV_3 | pllclk div3 to usbclk
CRM_USB_DIV_4 | pllclk div4 to usbclk

Definition at line 379 of file at32f403_crm.h.

◆ crm_usb_int_map_type

enum crm_usb_int_map_type

crm usbdev interrupt remap

Enumerator
CRM_USB_INT19_INT20 | usb high and low priority irq numer use 19 and 20
CRM_USB_INT73_INT74 | usb high and low priority irq numer use 73 and 74

Definition at line 431 of file at32f403_crm.h.


AT32F403 Firmwary Library: crm_clocks_freq_type Struct Reference

Data Fields
crm_clocks_freq_type Struct Reference
AT32F403_periph_driver » CRM » CRM_exported_types

crm clocks freqency structure More...

#include <at32f403_crm.h>

Data Fields

uint32_t | sclk_freq
uint32_t | ahb_freq
uint32_t | apb2_freq
uint32_t | apb1_freq
uint32_t | adc_freq

Detailed Description

crm clocks freqency structure

Definition at line 449 of file at32f403_crm.h.

Field Documentation

◆ adc_freq

uint32_t crm_clocks_freq_type::adc_freq

adc clock frequency

Definition at line 455 of file at32f403_crm.h.

Referenced by crm_clocks_freq_get().

◆ ahb_freq

uint32_t crm_clocks_freq_type::ahb_freq

ahb bus clock frequency

Definition at line 452 of file at32f403_crm.h.

Referenced by crm_clocks_freq_get(), main(), and tmr_init().

◆ apb1_freq

uint32_t crm_clocks_freq_type::apb1_freq

apb1 bus clock frequency

Definition at line 454 of file at32f403_crm.h.

Referenced by crm_clocks_freq_get(), i2c_init(), main(), usart_configuration(), and usart_init().

◆ apb2_freq

uint32_t crm_clocks_freq_type::apb2_freq

apb2 bus clock frequency

Definition at line 453 of file at32f403_crm.h.

Referenced by crm_clocks_freq_get(), i2c_init(), and usart_init().

◆ sclk_freq

uint32_t crm_clocks_freq_type::sclk_freq

system clock frequency

Definition at line 451 of file at32f403_crm.h.

Referenced by crm_clocks_freq_get(), i2s_init(), main(), systick_configuration(), tmr1_config(), tmr2_config(), and TMR3_GLOBAL_IRQHandler().

The documentation for this struct was generated from the following file:
  • at32f403_crm.h


AT32F403 Firmwary Library: crm_type Struct Reference

Data Fields
crm_type Struct Reference
AT32F403_periph_driver » CRM » CRM_exported_types

type define crm register all More...

#include <at32f403_crm.h>

Data Fields

union {
__IO uint32_t ctrl
struct {
__IO uint32_t hicken: 1
__IO uint32_t hickstbl: 1
__IO uint32_t reserved1: 1
__IO uint32_t hicktrim: 5
__IO uint32_t hickcal: 8
__IO uint32_t hexten: 1
__IO uint32_t hextstbl: 1
__IO uint32_t hextbyps: 1
__IO uint32_t cfden: 1
__IO uint32_t reserved2: 4
__IO uint32_t pllen: 1
__IO uint32_t pllstbl: 1
__IO uint32_t reserved3: 6
} ctrl_bit
};
crm ctrl register, offset:0x00 More...
union {
__IO uint32_t cfg
struct {
__IO uint32_t sclksel: 2
__IO uint32_t sclksts: 2
__IO uint32_t ahbdiv: 4
__IO uint32_t apb1div: 3
__IO uint32_t apb2div: 3
__IO uint32_t adcdiv_l: 2
__IO uint32_t pllrcs: 1
__IO uint32_t pllhextdiv: 1
__IO uint32_t pllmult_l: 4
__IO uint32_t usbdiv_l: 2
__IO uint32_t clkout_sel: 3
__IO uint32_t usbdiv_h: 1
__IO uint32_t adcdiv_h: 1
__IO uint32_t pllmult_h: 2
__IO uint32_t pllrange: 1
} cfg_bit
};
crm cfg register, offset:0x04 More...
union {
__IO uint32_t clkint
struct {
__IO uint32_t lickstblf: 1
__IO uint32_t lextstblf: 1
__IO uint32_t hickstblf: 1
__IO uint32_t hextstblf: 1
__IO uint32_t pllstblf: 1
__IO uint32_t reserved1: 2
__IO uint32_t cfdf: 1
__IO uint32_t lickstblien: 1
__IO uint32_t lextstblien: 1
__IO uint32_t hickstblien: 1
__IO uint32_t hextstblien: 1
__IO uint32_t pllstblien: 1
__IO uint32_t reserved2: 3
__IO uint32_t lickstblfc: 1
__IO uint32_t lextstblfc: 1
__IO uint32_t hickstblfc: 1
__IO uint32_t hextstblfc: 1
__IO uint32_t pllstblfc: 1
__IO uint32_t reserved3: 2
__IO uint32_t cfdfc: 1
__IO uint32_t reserved4: 8
} clkint_bit
};
crm clkint register, offset:0x08 More...
union {
__IO uint32_t apb2rst
struct {
__IO uint32_t iomuxrst: 1
__IO uint32_t exintrst: 1
__IO uint32_t gpioarst: 1
__IO uint32_t gpiobrst: 1
__IO uint32_t gpiocrst: 1
__IO uint32_t gpiodrst: 1
__IO uint32_t gpioerst: 1
__IO uint32_t gpiofrst: 1
__IO uint32_t gpiogrst: 1
__IO uint32_t adc1rst: 1
__IO uint32_t adc2rst: 1
__IO uint32_t tmr1rst: 1
__IO uint32_t spi1rst: 1
__IO uint32_t tmr8rst: 1
__IO uint32_t usart1rst: 1
__IO uint32_t adc3rst: 1
__IO uint32_t tmr15rst: 1
__IO uint32_t reserved2: 2
__IO uint32_t tmr9rst: 1
__IO uint32_t tmr10rst: 1
__IO uint32_t tmr11rst: 1
__IO uint32_t reserved3: 10
} apb2rst_bit
};
crm apb2rst register, offset:0x0C More...
union {
__IO uint32_t apb1rst
struct {
__IO uint32_t tmr2rst: 1
__IO uint32_t tmr3rst: 1
__IO uint32_t tmr4rst: 1
__IO uint32_t tmr5rst: 1
__IO uint32_t tmr6rst: 1
__IO uint32_t tmr7rst: 1
__IO uint32_t tmr12rst: 1
__IO uint32_t tmr13rst: 1
__IO uint32_t tmr14rst: 1
__IO uint32_t reserved1: 2
__IO uint32_t wwdtrst: 1
__IO uint32_t reserved2: 2
__IO uint32_t spi2rst: 1
__IO uint32_t spi3rst: 1
__IO uint32_t spi4rst: 1
__IO uint32_t usart2rst: 1
__IO uint32_t usart3rst: 1
__IO uint32_t uart4rst: 1
__IO uint32_t uart5rst: 1
__IO uint32_t i2c1rst: 1
__IO uint32_t i2c2rst: 1
__IO uint32_t usbrst: 1
__IO uint32_t reserved3: 1
__IO uint32_t can1rst: 1
__IO uint32_t i2c3rst: 1
__IO uint32_t bprrst: 1
__IO uint32_t pwcrst: 1
__IO uint32_t dacrst: 1
__IO uint32_t reserved4: 2
} apb1rst_bit
};
crm apb1rst register, offset:0x10 More...
union {
__IO uint32_t ahben
struct {
__IO uint32_t dma1en: 1
__IO uint32_t dma2en: 1
__IO uint32_t sramen: 1
__IO uint32_t reserved1: 1
__IO uint32_t flashen: 1
__IO uint32_t reserved2: 1
__IO uint32_t crcen: 1
__IO uint32_t reserved3: 1
__IO uint32_t xmcen: 1
__IO uint32_t reserved4: 1
__IO uint32_t sdio1en: 1
__IO uint32_t sdio2en: 1
__IO uint32_t reserved5: 20
} ahben_bit
};
crm ahben register, offset:0x14 More...
union {
__IO uint32_t apb2en
struct {
__IO uint32_t iomuxen: 1
__IO uint32_t reserved1: 1
__IO uint32_t gpioaen: 1
__IO uint32_t gpioben: 1
__IO uint32_t gpiocen: 1
__IO uint32_t gpioden: 1
__IO uint32_t gpioeen: 1
__IO uint32_t gpiofen: 1
__IO uint32_t gpiogen: 1
__IO uint32_t adc1en: 1
__IO uint32_t adc2en: 1
__IO uint32_t tmr1en: 1
__IO uint32_t spi1en: 1
__IO uint32_t tmr8en: 1
__IO uint32_t usart1en: 1
__IO uint32_t adc3en: 1
__IO uint32_t tmr15en: 1
__IO uint32_t reserved3: 2
__IO uint32_t tmr9en: 1
__IO uint32_t tmr10en: 1
__IO uint32_t tmr11en: 1
__IO uint32_t reserved4: 10
} apb2en_bit
};
crm apb2en register, offset:0x18 More...
union {
__IO uint32_t apb1en
struct {
__IO uint32_t tmr2en: 1
__IO uint32_t tmr3en: 1
__IO uint32_t tmr4en: 1
__IO uint32_t tmr5en: 1
__IO uint32_t tmr6en: 1
__IO uint32_t tmr7en: 1
__IO uint32_t tmr12en: 1
__IO uint32_t tmr13en: 1
__IO uint32_t tmr14en: 1
__IO uint32_t reserved1: 2
__IO uint32_t wwdten: 1
__IO uint32_t reserved2: 2
__IO uint32_t spi2en: 1
__IO uint32_t spi3en: 1
__IO uint32_t spi4en: 1
__IO uint32_t usart2en: 1
__IO uint32_t usart3en: 1
__IO uint32_t uart4en: 1
__IO uint32_t uart5en: 1
__IO uint32_t i2c1en: 1
__IO uint32_t i2c2en: 1
__IO uint32_t usben: 1
__IO uint32_t reserved3: 1
__IO uint32_t can1en: 1
__IO uint32_t i2c3en: 1
__IO uint32_t bpren: 1
__IO uint32_t pwcen: 1
__IO uint32_t dacen: 1
__IO uint32_t reserved4: 2
} apb1en_bit
};
crm apb1en register, offset:0x1C More...
union {
__IO uint32_t bpdc
struct {
__IO uint32_t lexten: 1
__IO uint32_t lextstbl: 1
__IO uint32_t lextbyps: 1
__IO uint32_t reserved1: 5
__IO uint32_t rtcsel: 2
__IO uint32_t reserved2: 5
__IO uint32_t rtcen: 1
__IO uint32_t bpdrst: 1
__IO uint32_t reserved3: 15
} bpdc_bit
};
crm bpdc register, offset:0x20 More...
union {
__IO uint32_t ctrlsts
struct {
__IO uint32_t licken: 1
__IO uint32_t lickstbl: 1
__IO uint32_t reserved1: 22
__IO uint32_t rstfc: 1
__IO uint32_t reserved2: 1
__IO uint32_t nrstf: 1
__IO uint32_t porrstf: 1
__IO uint32_t swrstf: 1
__IO uint32_t wdtrstf: 1
__IO uint32_t wwdtrstf: 1
__IO uint32_t lprstf: 1
} ctrlsts_bit
};
crm ctrlsts register, offset:0x24 More...
union {
__IO uint32_t misc1
struct {
__IO uint32_t hickcal_key: 8
__IO uint32_t reserved1: 8
__IO uint32_t clkout_sel: 1
__IO uint32_t reserved2: 7
__IO uint32_t usbbufs: 1
__IO uint32_t reserved3: 7
} misc1_bit
};
crm misc1 register, offset:0x30 More...

Detailed Description

type define crm register all

Definition at line 461 of file at32f403_crm.h.

Field Documentation

◆

union { ... } crm_type::@274

crm ctrl register, offset:0x00

◆

union { ... } crm_type::@276

crm cfg register, offset:0x04

◆

union { ... } crm_type::@278

crm clkint register, offset:0x08

◆

union { ... } crm_type::@280

crm apb2rst register, offset:0x0C

◆

union { ... } crm_type::@282

crm apb1rst register, offset:0x10

◆

union { ... } crm_type::@284

crm ahben register, offset:0x14

◆

union { ... } crm_type::@286

crm apb2en register, offset:0x18

◆

union { ... } crm_type::@288

crm apb1en register, offset:0x1C

◆

union { ... } crm_type::@290

crm bpdc register, offset:0x20

◆

union { ... } crm_type::@292

crm ctrlsts register, offset:0x24

◆

union { ... } crm_type::@294

crm misc1 register, offset:0x30

◆ adc1en

__IO uint32_t crm_type::adc1en

Definition at line 659 of file at32f403_crm.h.

◆ adc1rst

__IO uint32_t crm_type::adc1rst

Definition at line 562 of file at32f403_crm.h.

◆ adc2en

__IO uint32_t crm_type::adc2en

Definition at line 660 of file at32f403_crm.h.

◆ adc2rst

__IO uint32_t crm_type::adc2rst

Definition at line 563 of file at32f403_crm.h.

◆ adc3en

__IO uint32_t crm_type::adc3en

Definition at line 665 of file at32f403_crm.h.

◆ adc3rst

__IO uint32_t crm_type::adc3rst

Definition at line 568 of file at32f403_crm.h.

◆ adcdiv_h

__IO uint32_t crm_type::adcdiv_h

Definition at line 507 of file at32f403_crm.h.

◆ adcdiv_l

__IO uint32_t crm_type::adcdiv_l

Definition at line 500 of file at32f403_crm.h.

◆ ahbdiv

__IO uint32_t crm_type::ahbdiv

Definition at line 497 of file at32f403_crm.h.

◆ ahben

__IO uint32_t crm_type::ahben

Definition at line 623 of file at32f403_crm.h.

◆

struct { ... } crm_type::ahben_bit

◆ apb1div

__IO uint32_t crm_type::apb1div

Definition at line 498 of file at32f403_crm.h.

◆ apb1en

__IO uint32_t crm_type::apb1en

Definition at line 680 of file at32f403_crm.h.

◆

struct { ... } crm_type::apb1en_bit

◆ apb1rst

__IO uint32_t crm_type::apb1rst

Definition at line 583 of file at32f403_crm.h.

◆

struct { ... } crm_type::apb1rst_bit

◆ apb2div

__IO uint32_t crm_type::apb2div

Definition at line 499 of file at32f403_crm.h.

◆ apb2en

__IO uint32_t crm_type::apb2en

Definition at line 647 of file at32f403_crm.h.

◆

struct { ... } crm_type::apb2en_bit

◆ apb2rst

__IO uint32_t crm_type::apb2rst

Definition at line 550 of file at32f403_crm.h.

◆

struct { ... } crm_type::apb2rst_bit

◆ bpdc

__IO uint32_t crm_type::bpdc

Definition at line 720 of file at32f403_crm.h.

◆

struct { ... } crm_type::bpdc_bit

◆ bpdrst

__IO uint32_t crm_type::bpdrst

Definition at line 730 of file at32f403_crm.h.

◆ bpren

__IO uint32_t crm_type::bpren

Definition at line 708 of file at32f403_crm.h.

◆ bprrst

__IO uint32_t crm_type::bprrst

Definition at line 611 of file at32f403_crm.h.

◆ can1en

__IO uint32_t crm_type::can1en

Definition at line 706 of file at32f403_crm.h.

◆ can1rst

__IO uint32_t crm_type::can1rst

Definition at line 609 of file at32f403_crm.h.

◆ cfden

__IO uint32_t crm_type::cfden

Definition at line 479 of file at32f403_crm.h.

◆ cfdf

__IO uint32_t crm_type::cfdf

Definition at line 527 of file at32f403_crm.h.

◆ cfdfc

__IO uint32_t crm_type::cfdfc

Definition at line 540 of file at32f403_crm.h.

◆ cfg

__IO uint32_t crm_type::cfg

Definition at line 492 of file at32f403_crm.h.

◆

struct { ... } crm_type::cfg_bit

◆ clkint

__IO uint32_t crm_type::clkint

Definition at line 518 of file at32f403_crm.h.

◆

struct { ... } crm_type::clkint_bit

◆ clkout_sel

__IO uint32_t crm_type::clkout_sel

Definition at line 505 of file at32f403_crm.h.

◆ crcen

__IO uint32_t crm_type::crcen

Definition at line 632 of file at32f403_crm.h.

◆ ctrl

__IO uint32_t crm_type::ctrl

Definition at line 468 of file at32f403_crm.h.

◆

struct { ... } crm_type::ctrl_bit

◆ ctrlsts

__IO uint32_t crm_type::ctrlsts

Definition at line 740 of file at32f403_crm.h.

◆

struct { ... } crm_type::ctrlsts_bit

◆ dacen

__IO uint32_t crm_type::dacen

Definition at line 710 of file at32f403_crm.h.

◆ dacrst

__IO uint32_t crm_type::dacrst

Definition at line 613 of file at32f403_crm.h.

◆ dma1en

__IO uint32_t crm_type::dma1en

Definition at line 626 of file at32f403_crm.h.

◆ dma2en

__IO uint32_t crm_type::dma2en

Definition at line 627 of file at32f403_crm.h.

◆ exintrst

__IO uint32_t crm_type::exintrst

Definition at line 554 of file at32f403_crm.h.

◆ flashen

__IO uint32_t crm_type::flashen

Definition at line 630 of file at32f403_crm.h.

◆ gpioaen

__IO uint32_t crm_type::gpioaen

Definition at line 652 of file at32f403_crm.h.

◆ gpioarst

__IO uint32_t crm_type::gpioarst

Definition at line 555 of file at32f403_crm.h.

◆ gpioben

__IO uint32_t crm_type::gpioben

Definition at line 653 of file at32f403_crm.h.

◆ gpiobrst

__IO uint32_t crm_type::gpiobrst

Definition at line 556 of file at32f403_crm.h.

◆ gpiocen

__IO uint32_t crm_type::gpiocen

Definition at line 654 of file at32f403_crm.h.

◆ gpiocrst

__IO uint32_t crm_type::gpiocrst

Definition at line 557 of file at32f403_crm.h.

◆ gpioden

__IO uint32_t crm_type::gpioden

Definition at line 655 of file at32f403_crm.h.

◆ gpiodrst

__IO uint32_t crm_type::gpiodrst

Definition at line 558 of file at32f403_crm.h.

◆ gpioeen

__IO uint32_t crm_type::gpioeen

Definition at line 656 of file at32f403_crm.h.

◆ gpioerst

__IO uint32_t crm_type::gpioerst

Definition at line 559 of file at32f403_crm.h.

◆ gpiofen

__IO uint32_t crm_type::gpiofen

Definition at line 657 of file at32f403_crm.h.

◆ gpiofrst

__IO uint32_t crm_type::gpiofrst

Definition at line 560 of file at32f403_crm.h.

◆ gpiogen

__IO uint32_t crm_type::gpiogen

Definition at line 658 of file at32f403_crm.h.

◆ gpiogrst

__IO uint32_t crm_type::gpiogrst

Definition at line 561 of file at32f403_crm.h.

◆ hextbyps

__IO uint32_t crm_type::hextbyps

Definition at line 478 of file at32f403_crm.h.

◆ hexten

__IO uint32_t crm_type::hexten

Definition at line 476 of file at32f403_crm.h.

◆ hextstbl

__IO uint32_t crm_type::hextstbl

Definition at line 477 of file at32f403_crm.h.

◆ hextstblf

__IO uint32_t crm_type::hextstblf

Definition at line 524 of file at32f403_crm.h.

◆ hextstblfc

__IO uint32_t crm_type::hextstblfc

Definition at line 537 of file at32f403_crm.h.

◆ hextstblien

__IO uint32_t crm_type::hextstblien

Definition at line 531 of file at32f403_crm.h.

◆ hickcal

__IO uint32_t crm_type::hickcal

Definition at line 475 of file at32f403_crm.h.

◆ hickcal_key

__IO uint32_t crm_type::hickcal_key

Definition at line 770 of file at32f403_crm.h.

◆ hicken

__IO uint32_t crm_type::hicken

Definition at line 471 of file at32f403_crm.h.

◆ hickstbl

__IO uint32_t crm_type::hickstbl

Definition at line 472 of file at32f403_crm.h.

◆ hickstblf

__IO uint32_t crm_type::hickstblf

Definition at line 523 of file at32f403_crm.h.

◆ hickstblfc

__IO uint32_t crm_type::hickstblfc

Definition at line 536 of file at32f403_crm.h.

◆ hickstblien

__IO uint32_t crm_type::hickstblien

Definition at line 530 of file at32f403_crm.h.

◆ hicktrim

__IO uint32_t crm_type::hicktrim

Definition at line 474 of file at32f403_crm.h.

◆ i2c1en

__IO uint32_t crm_type::i2c1en

Definition at line 702 of file at32f403_crm.h.

◆ i2c1rst

__IO uint32_t crm_type::i2c1rst

Definition at line 605 of file at32f403_crm.h.

◆ i2c2en

__IO uint32_t crm_type::i2c2en

Definition at line 703 of file at32f403_crm.h.

◆ i2c2rst

__IO uint32_t crm_type::i2c2rst

Definition at line 606 of file at32f403_crm.h.

◆ i2c3en

__IO uint32_t crm_type::i2c3en

Definition at line 707 of file at32f403_crm.h.

◆ i2c3rst

__IO uint32_t crm_type::i2c3rst

Definition at line 610 of file at32f403_crm.h.

◆ iomuxen

__IO uint32_t crm_type::iomuxen

Definition at line 650 of file at32f403_crm.h.

◆ iomuxrst

__IO uint32_t crm_type::iomuxrst

Definition at line 553 of file at32f403_crm.h.

◆ lextbyps

__IO uint32_t crm_type::lextbyps

Definition at line 725 of file at32f403_crm.h.

◆ lexten

__IO uint32_t crm_type::lexten

Definition at line 723 of file at32f403_crm.h.

◆ lextstbl

__IO uint32_t crm_type::lextstbl

Definition at line 724 of file at32f403_crm.h.

◆ lextstblf

__IO uint32_t crm_type::lextstblf

Definition at line 522 of file at32f403_crm.h.

◆ lextstblfc

__IO uint32_t crm_type::lextstblfc

Definition at line 535 of file at32f403_crm.h.

◆ lextstblien

__IO uint32_t crm_type::lextstblien

Definition at line 529 of file at32f403_crm.h.

◆ licken

__IO uint32_t crm_type::licken

Definition at line 743 of file at32f403_crm.h.

◆ lickstbl

__IO uint32_t crm_type::lickstbl

Definition at line 744 of file at32f403_crm.h.

◆ lickstblf

__IO uint32_t crm_type::lickstblf

Definition at line 521 of file at32f403_crm.h.

◆ lickstblfc

__IO uint32_t crm_type::lickstblfc

Definition at line 534 of file at32f403_crm.h.

◆ lickstblien

__IO uint32_t crm_type::lickstblien

Definition at line 528 of file at32f403_crm.h.

◆ lprstf

__IO uint32_t crm_type::lprstf

Definition at line 753 of file at32f403_crm.h.

◆ misc1

__IO uint32_t crm_type::misc1

Definition at line 767 of file at32f403_crm.h.

◆

struct { ... } crm_type::misc1_bit

◆ nrstf

__IO uint32_t crm_type::nrstf

Definition at line 748 of file at32f403_crm.h.

◆ pllen

__IO uint32_t crm_type::pllen

Definition at line 481 of file at32f403_crm.h.

◆ pllhextdiv

__IO uint32_t crm_type::pllhextdiv

Definition at line 502 of file at32f403_crm.h.

◆ pllmult_h

__IO uint32_t crm_type::pllmult_h

Definition at line 508 of file at32f403_crm.h.

◆ pllmult_l

__IO uint32_t crm_type::pllmult_l

Definition at line 503 of file at32f403_crm.h.

◆ pllrange

__IO uint32_t crm_type::pllrange

Definition at line 509 of file at32f403_crm.h.

◆ pllrcs

__IO uint32_t crm_type::pllrcs

Definition at line 501 of file at32f403_crm.h.

◆ pllstbl

__IO uint32_t crm_type::pllstbl

Definition at line 482 of file at32f403_crm.h.

◆ pllstblf

__IO uint32_t crm_type::pllstblf

Definition at line 525 of file at32f403_crm.h.

◆ pllstblfc

__IO uint32_t crm_type::pllstblfc

Definition at line 538 of file at32f403_crm.h.

◆ pllstblien

__IO uint32_t crm_type::pllstblien

Definition at line 532 of file at32f403_crm.h.

◆ porrstf

__IO uint32_t crm_type::porrstf

Definition at line 749 of file at32f403_crm.h.

◆ pwcen

__IO uint32_t crm_type::pwcen

Definition at line 709 of file at32f403_crm.h.

◆ pwcrst

__IO uint32_t crm_type::pwcrst

Definition at line 612 of file at32f403_crm.h.

◆ reserved1

__IO uint32_t crm_type::reserved1

crm reserved1 register, offset:0x28~0x2C

Definition at line 473 of file at32f403_crm.h.

◆ reserved2

__IO uint32_t crm_type::reserved2

Definition at line 480 of file at32f403_crm.h.

◆ reserved3

__IO uint32_t crm_type::reserved3

Definition at line 483 of file at32f403_crm.h.

◆ reserved4

__IO uint32_t crm_type::reserved4

Definition at line 541 of file at32f403_crm.h.

◆ reserved5

__IO uint32_t crm_type::reserved5

Definition at line 638 of file at32f403_crm.h.

◆ rstfc

__IO uint32_t crm_type::rstfc

Definition at line 746 of file at32f403_crm.h.

◆ rtcen

__IO uint32_t crm_type::rtcen

Definition at line 729 of file at32f403_crm.h.

◆ rtcsel

__IO uint32_t crm_type::rtcsel

Definition at line 727 of file at32f403_crm.h.

◆ sclksel

__IO uint32_t crm_type::sclksel

Definition at line 495 of file at32f403_crm.h.

◆ sclksts

__IO uint32_t crm_type::sclksts

Definition at line 496 of file at32f403_crm.h.

◆ sdio1en

__IO uint32_t crm_type::sdio1en

Definition at line 636 of file at32f403_crm.h.

◆ sdio2en

__IO uint32_t crm_type::sdio2en

Definition at line 637 of file at32f403_crm.h.

◆ spi1en

__IO uint32_t crm_type::spi1en

Definition at line 662 of file at32f403_crm.h.

◆ spi1rst

__IO uint32_t crm_type::spi1rst

Definition at line 565 of file at32f403_crm.h.

◆ spi2en

__IO uint32_t crm_type::spi2en

Definition at line 695 of file at32f403_crm.h.

◆ spi2rst

__IO uint32_t crm_type::spi2rst

Definition at line 598 of file at32f403_crm.h.

◆ spi3en

__IO uint32_t crm_type::spi3en

Definition at line 696 of file at32f403_crm.h.

◆ spi3rst

__IO uint32_t crm_type::spi3rst

Definition at line 599 of file at32f403_crm.h.

◆ spi4en

__IO uint32_t crm_type::spi4en

Definition at line 697 of file at32f403_crm.h.

◆ spi4rst

__IO uint32_t crm_type::spi4rst

Definition at line 600 of file at32f403_crm.h.

◆ sramen

__IO uint32_t crm_type::sramen

Definition at line 628 of file at32f403_crm.h.

◆ swrstf

__IO uint32_t crm_type::swrstf

Definition at line 750 of file at32f403_crm.h.

◆ tmr10en

__IO uint32_t crm_type::tmr10en

Definition at line 669 of file at32f403_crm.h.

◆ tmr10rst

__IO uint32_t crm_type::tmr10rst

Definition at line 572 of file at32f403_crm.h.

◆ tmr11en

__IO uint32_t crm_type::tmr11en

Definition at line 670 of file at32f403_crm.h.

◆ tmr11rst

__IO uint32_t crm_type::tmr11rst

Definition at line 573 of file at32f403_crm.h.

◆ tmr12en

__IO uint32_t crm_type::tmr12en

Definition at line 689 of file at32f403_crm.h.

◆ tmr12rst

__IO uint32_t crm_type::tmr12rst

Definition at line 592 of file at32f403_crm.h.

◆ tmr13en

__IO uint32_t crm_type::tmr13en

Definition at line 690 of file at32f403_crm.h.

◆ tmr13rst

__IO uint32_t crm_type::tmr13rst

Definition at line 593 of file at32f403_crm.h.

◆ tmr14en

__IO uint32_t crm_type::tmr14en

Definition at line 691 of file at32f403_crm.h.

◆ tmr14rst

__IO uint32_t crm_type::tmr14rst

Definition at line 594 of file at32f403_crm.h.

◆ tmr15en

__IO uint32_t crm_type::tmr15en

Definition at line 666 of file at32f403_crm.h.

◆ tmr15rst

__IO uint32_t crm_type::tmr15rst

Definition at line 569 of file at32f403_crm.h.

◆ tmr1en

__IO uint32_t crm_type::tmr1en

Definition at line 661 of file at32f403_crm.h.

◆ tmr1rst

__IO uint32_t crm_type::tmr1rst

Definition at line 564 of file at32f403_crm.h.

◆ tmr2en

__IO uint32_t crm_type::tmr2en

Definition at line 683 of file at32f403_crm.h.

◆ tmr2rst

__IO uint32_t crm_type::tmr2rst

Definition at line 586 of file at32f403_crm.h.

◆ tmr3en

__IO uint32_t crm_type::tmr3en

Definition at line 684 of file at32f403_crm.h.

◆ tmr3rst

__IO uint32_t crm_type::tmr3rst

Definition at line 587 of file at32f403_crm.h.

◆ tmr4en

__IO uint32_t crm_type::tmr4en

Definition at line 685 of file at32f403_crm.h.

◆ tmr4rst

__IO uint32_t crm_type::tmr4rst

Definition at line 588 of file at32f403_crm.h.

◆ tmr5en

__IO uint32_t crm_type::tmr5en

Definition at line 686 of file at32f403_crm.h.

◆ tmr5rst

__IO uint32_t crm_type::tmr5rst

Definition at line 589 of file at32f403_crm.h.

◆ tmr6en

__IO uint32_t crm_type::tmr6en

Definition at line 687 of file at32f403_crm.h.

◆ tmr6rst

__IO uint32_t crm_type::tmr6rst

Definition at line 590 of file at32f403_crm.h.

◆ tmr7en

__IO uint32_t crm_type::tmr7en

Definition at line 688 of file at32f403_crm.h.

◆ tmr7rst

__IO uint32_t crm_type::tmr7rst

Definition at line 591 of file at32f403_crm.h.

◆ tmr8en

__IO uint32_t crm_type::tmr8en

Definition at line 663 of file at32f403_crm.h.

◆ tmr8rst

__IO uint32_t crm_type::tmr8rst

Definition at line 566 of file at32f403_crm.h.

◆ tmr9en

__IO uint32_t crm_type::tmr9en

Definition at line 668 of file at32f403_crm.h.

◆ tmr9rst

__IO uint32_t crm_type::tmr9rst

Definition at line 571 of file at32f403_crm.h.

◆ uart4en

__IO uint32_t crm_type::uart4en

Definition at line 700 of file at32f403_crm.h.

◆ uart4rst

__IO uint32_t crm_type::uart4rst

Definition at line 603 of file at32f403_crm.h.

◆ uart5en

__IO uint32_t crm_type::uart5en

Definition at line 701 of file at32f403_crm.h.

◆ uart5rst

__IO uint32_t crm_type::uart5rst

Definition at line 604 of file at32f403_crm.h.

◆ usart1en

__IO uint32_t crm_type::usart1en

Definition at line 664 of file at32f403_crm.h.

◆ usart1rst

__IO uint32_t crm_type::usart1rst

Definition at line 567 of file at32f403_crm.h.

◆ usart2en

__IO uint32_t crm_type::usart2en

Definition at line 698 of file at32f403_crm.h.

◆ usart2rst

__IO uint32_t crm_type::usart2rst

Definition at line 601 of file at32f403_crm.h.

◆ usart3en

__IO uint32_t crm_type::usart3en

Definition at line 699 of file at32f403_crm.h.

◆ usart3rst

__IO uint32_t crm_type::usart3rst

Definition at line 602 of file at32f403_crm.h.

◆ usbbufs

__IO uint32_t crm_type::usbbufs

Definition at line 774 of file at32f403_crm.h.

◆ usbdiv_h

__IO uint32_t crm_type::usbdiv_h

Definition at line 506 of file at32f403_crm.h.

◆ usbdiv_l

__IO uint32_t crm_type::usbdiv_l

Definition at line 504 of file at32f403_crm.h.

◆ usben

__IO uint32_t crm_type::usben

Definition at line 704 of file at32f403_crm.h.

◆ usbrst

__IO uint32_t crm_type::usbrst

Definition at line 607 of file at32f403_crm.h.

◆ wdtrstf

__IO uint32_t crm_type::wdtrstf

Definition at line 751 of file at32f403_crm.h.

◆ wwdten

__IO uint32_t crm_type::wwdten

Definition at line 693 of file at32f403_crm.h.

◆ wwdtrst

__IO uint32_t crm_type::wwdtrst

Definition at line 596 of file at32f403_crm.h.

◆ wwdtrstf

__IO uint32_t crm_type::wwdtrstf

Definition at line 752 of file at32f403_crm.h.

◆ xmcen

__IO uint32_t crm_type::xmcen

Definition at line 634 of file at32f403_crm.h.

The documentation for this struct was generated from the following file:
  • at32f403_crm.h


AT32F403 Firmwary Library: CRM_exported_functions

Functions
CRM_exported_functions
AT32F403_periph_driver » CRM

Functions

void | crm_reset (void)
reset the crm register More...
void | crm_lext_bypass (confirm_state new_state)
enable or disable crm low speed external crystal bypass More...
void | crm_hext_bypass (confirm_state new_state)
enable or disable crm high speed external crystal bypass More...
flag_status | crm_flag_get (uint32_t flag)
get crm flag status More...
flag_status | crm_interrupt_flag_get (uint32_t flag)
get crm interrupt flag status More...
error_status | crm_hext_stable_wait (void)
wait for hext stable More...
void | crm_hick_clock_trimming_set (uint8_t trim_value)
set the hick trimming value More...
void | crm_hick_clock_calibration_set (uint8_t cali_value)
set the crm calibration value More...
void | crm_periph_clock_enable (crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock More...
void | crm_periph_reset (crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset More...
void | crm_periph_sleep_mode_clock_enable (crm_periph_clock_sleepmd_type value, confirm_state new_state)
enable or disable the peripheral clock in sleep mode More...
void | crm_clock_source_enable (crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source More...
void | crm_flag_clear (uint32_t flag)
clear the crm reset flags More...
void | crm_rtc_clock_select (crm_rtc_clock_type value)
select rtc clock More...
void | crm_rtc_clock_enable (confirm_state new_state)
enable or disable rtc More...
void | crm_ahb_div_set (crm_ahb_div_type value)
set crm ahb division More...
void | crm_apb1_div_set (crm_apb1_div_type value)
set crm apb1 division More...
void | crm_apb2_div_set (crm_apb2_div_type value)
set crm apb2 division More...
void | crm_adc_clock_div_set (crm_adc_div_type div_value)
set crm adc division More...
void | crm_usb_clock_div_set (crm_usb_div_type div_value)
set crm usb division More...
void | crm_clock_failure_detection_enable (confirm_state new_state)
enable or disable clock failure detection More...
void | crm_battery_powered_domain_reset (confirm_state new_state)
battery powered domain software reset More...
void | crm_pll_config (crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll More...
void | crm_sysclk_switch (crm_sclk_type value)
select system clock source More...
crm_sclk_type | crm_sysclk_switch_status_get (void)
indicate which clock source is used as system clock More...
void | crm_clocks_freq_get (crm_clocks_freq_type *clocks_struct)
get crm clocks freqency More...
void | crm_clock_out_set (crm_clkout_select_type clkout)
set crm clkout More...
void | crm_interrupt_enable (uint32_t crm_int, confirm_state new_state)
config crm interrupt More...

Detailed Description

Function Documentation

◆ crm_adc_clock_div_set()

void crm_adc_clock_div_set ( crm_adc_div_type div_value )

set crm adc division

Parameters
value this parameter can be one of the following values:
  • CRM_ADC_DIV_2
  • CRM_ADC_DIV_4
  • CRM_ADC_DIV_6
  • CRM_ADC_DIV_8
  • CRM_ADC_DIV_12
  • CRM_ADC_DIV_16
Return values
none

Definition at line 525 of file at32f403_crm.c.

Referenced by adc_config().

◆ crm_ahb_div_set()

void crm_ahb_div_set ( crm_ahb_div_type value )

set crm ahb division

Parameters
value this parameter can be one of the following values:
  • CRM_AHB_DIV_1
  • CRM_AHB_DIV_2
  • CRM_AHB_DIV_4
  • CRM_AHB_DIV_8
  • CRM_AHB_DIV_16
  • CRM_AHB_DIV_64
  • CRM_AHB_DIV_128
  • CRM_AHB_DIV_256
  • CRM_AHB_DIV_512
Return values
none

Definition at line 474 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_apb1_div_set()

void crm_apb1_div_set ( crm_apb1_div_type value )

set crm apb1 division

Note
the maximum frequency of APB1/APB2 clock is 100 MHz
Parameters
value this parameter can be one of the following values:
  • CRM_APB1_DIV_1
  • CRM_APB1_DIV_2
  • CRM_APB1_DIV_4
  • CRM_APB1_DIV_8
  • CRM_APB1_DIV_16
Return values
none

Definition at line 491 of file at32f403_crm.c.

Referenced by main(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_apb2_div_set()

void crm_apb2_div_set ( crm_apb2_div_type value )

set crm apb2 division

Note
the maximum frequency of APB1/APB2 clock is 100 MHz
Parameters
value this parameter can be one of the following values:
  • CRM_APB2_DIV_1
  • CRM_APB2_DIV_2
  • CRM_APB2_DIV_4
  • CRM_APB2_DIV_8
  • CRM_APB2_DIV_16
Return values
none

Definition at line 508 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_battery_powered_domain_reset()

void crm_battery_powered_domain_reset ( confirm_state new_state )

battery powered domain software reset

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 565 of file at32f403_crm.c.

Referenced by bpr_reset().

◆ crm_clock_failure_detection_enable()

void crm_clock_failure_detection_enable ( confirm_state new_state )

enable or disable clock failure detection

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 555 of file at32f403_crm.c.

Referenced by clock_failure_detection_handler(), and main().

◆ crm_clock_out_set()

void crm_clock_out_set ( crm_clkout_select_type clkout )

set crm clkout

Parameters
clkout this parameter can be one of the following values:
  • CRM_CLKOUT_NOCLK
  • CRM_CLKOUT_LICK
  • CRM_CLKOUT_LEXT
  • CRM_CLKOUT_SCLK
  • CRM_CLKOUT_HICK
  • CRM_CLKOUT_HEXT
  • CRM_CLKOUT_PLL_DIV_2
  • CRM_CLKOUT_PLL_DIV_4
  • CRM_CLKOUT_USB
  • CRM_CLKOUT_ADC
Return values
none

Definition at line 750 of file at32f403_crm.c.

Referenced by clkout_config().

◆ crm_clock_source_enable()

void crm_clock_source_enable | ( | crm_clock_source_type | source,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the crm clock source

Parameters
source this parameter can be one of the following values:
  • CRM_CLOCK_SOURCE_HICK
  • CRM_CLOCK_SOURCE_HEXT
  • CRM_CLOCK_SOURCE_PLL
  • CRM_CLOCK_SOURCE_LEXT
  • CRM_CLOCK_SOURCE_LICK
new_state (TRUE or FALSE)
Return values
none

Definition at line 353 of file at32f403_crm.c.

Referenced by rtc_config(), rtc_configuration(), rtc_init(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_clocks_freq_get()

void crm_clocks_freq_get ( crm_clocks_freq_type * clocks_struct )

get crm clocks freqency

Parameters
clocks
  • pointer to the crm_clocks_freq structure
Return values
none

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

Definition at line 646 of file at32f403_crm.c.

Referenced by i2c_init(), i2s_init(), main(), tmr1_config(), tmr2_config(), tmr_init(), usart_configuration(), and usart_init().

◆ crm_flag_clear()

void crm_flag_clear ( uint32_t flag )

clear the crm reset flags

Parameters
flag this parameter can be one of the following values: reset flag:
  • CRM_NRST_RESET_FLAG
  • CRM_POR_RESET_FLAG
  • CRM_SW_RESET_FLAG
  • CRM_WDT_RESET_FLAG
  • CRM_WWDT_RESET_FLAG
  • CRM_LOWPOWER_RESET_FLAG
  • CRM_ALL_RESET_FLAG interrupt flag:
  • CRM_LICK_READY_INT_FLAG
  • CRM_LEXT_READY_INT_FLAG
  • CRM_HICK_READY_INT_FLAG
  • CRM_HEXT_READY_INT_FLAG
  • CRM_PLL_READY_INT_FLAG
  • CRM_CLOCK_FAILURE_INT_FLAG
Return values
none

< nrst pin reset flag

< power on reset flag

< software reset flag

< watchdog timer reset flag

< window watchdog timer reset flag

< low-power reset flag

< all reset flag

< low speed internal clock stable interrupt ready flag

< low speed external crystal stable interrupt ready flag

< high speed internal clock stable interrupt ready flag

< high speed external crystal stable interrupt ready flag

< phase locking loop stable interrupt ready flag

< clock failure interrupt ready flag

Definition at line 398 of file at32f403_crm.c.

Referenced by clock_failure_detection_handler(), and main().

◆ crm_flag_get()

flag_status crm_flag_get ( uint32_t flag )

get crm flag status

Parameters
flag this parameter can be one of the following values:
  • CRM_HICK_STABLE_FLAG
  • CRM_HEXT_STABLE_FLAG
  • CRM_PLL_STABLE_FLAG
  • CRM_LEXT_STABLE_FLAG
  • CRM_LICK_STABLE_FLAG
  • CRM_NRST_RESET_FLAG
  • CRM_POR_RESET_FLAG
  • CRM_SW_RESET_FLAG
  • CRM_WDT_RESET_FLAG
  • CRM_WWDT_RESET_FLAG
  • CRM_LOWPOWER_RESET_FLAG interrupt flag:
  • CRM_LICK_READY_INT_FLAG
  • CRM_LEXT_READY_INT_FLAG
  • CRM_HICK_READY_INT_FLAG
  • CRM_HEXT_READY_INT_FLAG
  • CRM_PLL_READY_INT_FLAG
  • CRM_CLOCK_FAILURE_INT_FLAG
Return values
flag_status (SET or RESET)

Definition at line 123 of file at32f403_crm.c.

Referenced by clock_failure_detection_handler(), crm_hext_stable_wait(), main(), rtc_config(), rtc_configuration(), rtc_init(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_hext_bypass()

void crm_hext_bypass ( confirm_state new_state )

enable or disable crm high speed external crystal bypass

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 94 of file at32f403_crm.c.

◆ crm_hext_stable_wait()

error_status crm_hext_stable_wait ( void )

wait for hext stable

Parameters
none
Return values
error_status (ERROR or SUCCESS)

< high speed external crystal stable flag

< time out for hext start up

< high speed external crystal stable flag

Definition at line 200 of file at32f403_crm.c.

Referenced by sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_hick_clock_calibration_set()

void crm_hick_clock_calibration_set ( uint8_t cali_value )

set the crm calibration value

Parameters
cali_value (0x00~0xFF)
Return values
none

Definition at line 237 of file at32f403_crm.c.

◆ crm_hick_clock_trimming_set()

void crm_hick_clock_trimming_set ( uint8_t trim_value )

set the hick trimming value

Parameters
trim_value (0x00~0x1F)
Return values
none

Definition at line 227 of file at32f403_crm.c.

◆ crm_interrupt_enable()

void crm_interrupt_enable | ( | uint32_t | crm_int,
 |  | confirm_state | new_state
 | ) |  |

config crm interrupt

Parameters
int this parameter can be any combination of the following values:
  • CRM_LICK_STABLE_INT
  • CRM_LEXT_STABLE_INT
  • CRM_HICK_STABLE_INT
  • CRM_HEXT_STABLE_INT
  • CRM_PLL_STABLE_INT
new_state (TRUE or FALSE)
Return values
none

Definition at line 768 of file at32f403_crm.c.

◆ crm_interrupt_flag_get()

flag_status crm_interrupt_flag_get ( uint32_t flag )

get crm interrupt flag status

Parameters
flag this parameter can be one of the following values:
  • CRM_LICK_READY_INT_FLAG
  • CRM_LEXT_READY_INT_FLAG
  • CRM_HICK_READY_INT_FLAG
  • CRM_HEXT_READY_INT_FLAG
  • CRM_PLL_READY_INT_FLAG
  • CRM_CLOCK_FAILURE_INT_FLAG
Return values
flag_status (SET or RESET)

< low speed internal clock stable interrupt ready flag

< low speed external crystal stable interrupt ready flag

< high speed internal clock stable interrupt ready flag

< high speed external crystal stable interrupt ready flag

< phase locking loop stable interrupt ready flag

< clock failure interrupt ready flag

Definition at line 149 of file at32f403_crm.c.

◆ crm_lext_bypass()

void crm_lext_bypass ( confirm_state new_state )

enable or disable crm low speed external crystal bypass

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 84 of file at32f403_crm.c.

◆ crm_periph_clock_enable()

void crm_periph_clock_enable | ( | crm_periph_clock_type | value,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the peripheral clock

Parameters
value this parameter can be one of the following values:
  • CRM_DMA1_PERIPH_CLOCK - CRM_DMA2_PERIPH_CLOCK - CRM_CRC_PERIPH_CLOCK - CRM_XMC_PERIPH_CLOCK
  • CRM_SDIO1_PERIPH_CLOCK - CRM_SDIO2_PERIPH_CLOCK - CRM_EMAC_PERIPH_CLOCK - CRM_EMACTX_PERIPH_CLOCK
  • CRM_EMACRX_PERIPH_CLOCK - CRM_EMACPTP_PERIPH_CLOCK - CRM_IOMUX_PERIPH_CLOCK - CRM_GPIOA_PERIPH_CLOCK
  • CRM_GPIOB_PERIPH_CLOCK - CRM_GPIOC_PERIPH_CLOCK - CRM_GPIOD_PERIPH_CLOCK - CRM_GPIOE_PERIPH_CLOCK
  • CRM_ADC1_PERIPH_CLOCK - CRM_ADC2_PERIPH_CLOCK - CRM_TMR1_PERIPH_CLOCK - CRM_SPI1_PERIPH_CLOCK
  • CRM_TMR8_PERIPH_CLOCK - CRM_USART1_PERIPH_CLOCK - CRM_ADC3_PERIPH_CLOCK - CRM_TMR9_PERIPH_CLOCK
  • CRM_TMR10_PERIPH_CLOCK - CRM_TMR11_PERIPH_CLOCK - CRM_ACC_PERIPH_CLOCK - CRM_I2C3_PERIPH_CLOCK
  • CRM_USART6_PERIPH_CLOCK - CRM_UART7_PERIPH_CLOCK - CRM_UART8_PERIPH_CLOCK - CRM_TMR2_PERIPH_CLOCK
  • CRM_TMR3_PERIPH_CLOCK - CRM_TMR4_PERIPH_CLOCK - CRM_TMR5_PERIPH_CLOCK - CRM_TMR6_PERIPH_CLOCK
  • CRM_TMR7_PERIPH_CLOCK - CRM_TMR12_PERIPH_CLOCK - CRM_TMR13_PERIPH_CLOCK - CRM_TMR14_PERIPH_CLOCK
  • CRM_WWDT_PERIPH_CLOCK - CRM_SPI2_PERIPH_CLOCK - CRM_SPI3_PERIPH_CLOCK - CRM_SPI4_PERIPH_CLOCK
  • CRM_USART2_PERIPH_CLOCK - CRM_USART3_PERIPH_CLOCK - CRM_UART4_PERIPH_CLOCK - CRM_UART5_PERIPH_CLOCK
  • CRM_I2C1_PERIPH_CLOCK - CRM_I2C2_PERIPH_CLOCK - CRM_USB_PERIPH_CLOCK - CRM_CAN1_PERIPH_CLOCK
  • CRM_CAN2_PERIPH_CLOCK - CRM_BPR_PERIPH_CLOCK - CRM_PWC_PERIPH_CLOCK - CRM_DAC_PERIPH_CLOCK
new_state (TRUE or FALSE)
Return values
none

Definition at line 270 of file at32f403_crm.c.

Referenced by adc_config(), app_load(), at32_button_init(), at32_led_init(), button_exint_init(), can_configuration(), can_gpio_config(), clkout_config(), codec_i2s_init(), crc_cal(), crm_configuration(), dma_config(), dma_configuration(), exint_config(), exint_line0_config(), exint_line4_config(), flash_crc_check(), gpio_config(), i2c_lowlevel_init(), i2s_config(), jump_to_app(), main(), mclk_tmr1_init(), MYDMA_Config(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), rtc_alarm_clock_set(), rtc_configuration(), rtc_init(), rtc_time_set(), sd_dma_config(), sd_init(), spi_config(), spiflash_init(), spim_init(), sram_init(), tmr1_config(), tmr2_config(), TMR3_GLOBAL_IRQHandler(), tmr_init(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), usb_usart_config(), and xmc_init().

◆ crm_periph_reset()

void crm_periph_reset | ( | crm_periph_reset_type | value,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the peripheral reset

Parameters
value this parameter can be one of the following values:
  • CRM_EMAC_PERIPH_RESET - CRM_IOMUX_PERIPH_RESET - CRM_EXINT_PERIPH_RESET - CRM_GPIOA_PERIPH_RESET
  • CRM_GPIOB_PERIPH_RESET - CRM_GPIOC_PERIPH_RESET - CRM_GPIOD_PERIPH_RESET - CRM_GPIOE_PERIPH_RESET
  • CRM_ADC1_PERIPH_RESET - CRM_ADC2_PERIPH_RESET - CRM_TMR1_PERIPH_RESET - CRM_SPI1_PERIPH_RESET
  • CRM_TMR8_PERIPH_RESET - CRM_USART1_PERIPH_RESET - CRM_ADC3_PERIPH_RESET - CRM_TMR9_PERIPH_RESET
  • CRM_TMR10_PERIPH_RESET - CRM_TMR11_PERIPH_RESET - CRM_ACC_PERIPH_RESET - CRM_I2C3_PERIPH_RESET
  • CRM_USART6_PERIPH_RESET - CRM_UART7_PERIPH_RESET - CRM_UART8_PERIPH_RESET - CRM_TMR2_PERIPH_RESET
  • CRM_TMR3_PERIPH_RESET - CRM_TMR4_PERIPH_RESET - CRM_TMR5_PERIPH_RESET - CRM_TMR6_PERIPH_RESET
  • CRM_TMR7_PERIPH_RESET - CRM_TMR12_PERIPH_RESET - CRM_TMR13_PERIPH_RESET - CRM_TMR14_PERIPH_RESET
  • CRM_WWDT_PERIPH_RESET - CRM_SPI2_PERIPH_RESET - CRM_SPI3_PERIPH_RESET - CRM_SPI4_PERIPH_RESET
  • CRM_USART2_PERIPH_RESET - CRM_USART3_PERIPH_RESET - CRM_UART4_PERIPH_RESET - CRM_UART5_PERIPH_RESET
  • CRM_I2C1_PERIPH_RESET - CRM_I2C2_PERIPH_RESET - CRM_USB_PERIPH_RESET - CRM_CAN1_PERIPH_RESET
  • CRM_CAN2_PERIPH_RESET - CRM_BPR_PERIPH_RESET - CRM_PWC_PERIPH_RESET - CRM_DAC_PERIPH_RESET
new_state (TRUE or FALSE)
Return values
none

Definition at line 303 of file at32f403_crm.c.

Referenced by adc_reset(), can_reset(), dac_reset(), gpio_iomux_reset(), gpio_reset(), i2c_reset(), jump_to_app(), pwc_reset(), spi_i2s_reset(), tmr_reset(), usart_reset(), and wwdt_reset().

◆ crm_periph_sleep_mode_clock_enable()

void crm_periph_sleep_mode_clock_enable | ( | crm_periph_clock_sleepmd_type | value,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the peripheral clock in sleep mode

Parameters
value this parameter can be one of the following values:
  • CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE
  • CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE
new_state (TRUE or FALSE)
Return values
none

Definition at line 326 of file at32f403_crm.c.

◆ crm_pll_config()

void crm_pll_config | ( | crm_pll_clock_source_type | clock_source,
 |  | crm_pll_mult_type | mult_value,
 |  | crm_pll_output_range_type | pll_range
 | ) |  |

config crm pll

Parameters
clock_source this parameter can be one of the following values:
  • CRM_PLL_SOURCE_HICK
  • CRM_PLL_SOURCE_HEXT
  • CRM_PLL_SOURCE_HEXT_DIV
mult_value (CRM_PLL_MULT_2~64)
pll_range this parameter can be one of the following values:
  • CRM_PLL_OUTPUT_RANGE_LE72MHZ
  • CRM_PLL_OUTPUT_RANGE_GT72MHZ
Return values
none

Definition at line 584 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_reset()

void crm_reset ( void )

reset the crm register

Parameters
none
Return values
none

Definition at line 47 of file at32f403_crm.c.

Referenced by app_update_handle(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_rtc_clock_enable()

void crm_rtc_clock_enable ( confirm_state new_state )

enable or disable rtc

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 454 of file at32f403_crm.c.

Referenced by rtc_config(), rtc_configuration(), and rtc_init().

◆ crm_rtc_clock_select()

void crm_rtc_clock_select ( crm_rtc_clock_type value )

select rtc clock

Parameters
value this parameter can be one of the following values:
  • CRM_RTC_CLOCK_LEXT
  • CRM_RTC_CLOCK_LICK
  • CRM_RTC_CLOCK_HEXT_DIV
Return values
none

Definition at line 444 of file at32f403_crm.c.

Referenced by rtc_config(), rtc_configuration(), and rtc_init().

◆ crm_sysclk_switch()

void crm_sysclk_switch ( crm_sclk_type value )

select system clock source

Parameters
value this parameter can be one of the following values:
  • CRM_SCLK_HICK
  • CRM_SCLK_HEXT
  • CRM_SCLK_PLL
Return values
none

Definition at line 621 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_sysclk_switch_status_get()

crm_sclk_type crm_sysclk_switch_status_get ( void )

indicate which clock source is used as system clock

Parameters
none
Return values
crm_sclk this return can be one of the following values:
  • CRM_SCLK_HICK
  • CRM_SCLK_HEXT
  • CRM_SCLK_PLL

Definition at line 635 of file at32f403_crm.c.

Referenced by crm_clocks_freq_get(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), system_clock_recover(), and system_core_clock_update().

◆ crm_usb_clock_div_set()

void crm_usb_clock_div_set ( crm_usb_div_type div_value )

set crm usb division

Parameters
value this parameter can be one of the following values:
  • CRM_USB_DIV_1_5
  • CRM_USB_DIV_1
  • CRM_USB_DIV_2_5
  • CRM_USB_DIV_2
  • CRM_USB_DIV_3_5
  • CRM_USB_DIV_3
  • CRM_USB_DIV_4
Return values
none

Definition at line 544 of file at32f403_crm.c.

Referenced by usb_clock48m_select().


AT32F403 Firmwary Library: CRM_private_functions

Functions
CRM_private_functions
AT32F403_periph_driver » CRM

Functions

void | crm_reset (void)
reset the crm register More...
void | crm_lext_bypass (confirm_state new_state)
enable or disable crm low speed external crystal bypass More...
void | crm_hext_bypass (confirm_state new_state)
enable or disable crm high speed external crystal bypass More...
flag_status | crm_flag_get (uint32_t flag)
get crm flag status More...
flag_status | crm_interrupt_flag_get (uint32_t flag)
get crm interrupt flag status More...
error_status | crm_hext_stable_wait (void)
wait for hext stable More...
void | crm_hick_clock_trimming_set (uint8_t trim_value)
set the hick trimming value More...
void | crm_hick_clock_calibration_set (uint8_t cali_value)
set the crm calibration value More...
void | crm_periph_clock_enable (crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock More...
void | crm_periph_reset (crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset More...
void | crm_periph_sleep_mode_clock_enable (crm_periph_clock_sleepmd_type value, confirm_state new_state)
enable or disable the peripheral clock in sleep mode More...
void | crm_clock_source_enable (crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source More...
void | crm_flag_clear (uint32_t flag)
clear the crm reset flags More...
void | crm_rtc_clock_select (crm_rtc_clock_type value)
select rtc clock More...
void | crm_rtc_clock_enable (confirm_state new_state)
enable or disable rtc More...
void | crm_ahb_div_set (crm_ahb_div_type value)
set crm ahb division More...
void | crm_apb1_div_set (crm_apb1_div_type value)
set crm apb1 division More...
void | crm_apb2_div_set (crm_apb2_div_type value)
set crm apb2 division More...
void | crm_adc_clock_div_set (crm_adc_div_type div_value)
set crm adc division More...
void | crm_usb_clock_div_set (crm_usb_div_type div_value)
set crm usb division More...
void | crm_clock_failure_detection_enable (confirm_state new_state)
enable or disable clock failure detection More...
void | crm_battery_powered_domain_reset (confirm_state new_state)
battery powered domain software reset More...
void | crm_pll_config (crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll More...
void | crm_sysclk_switch (crm_sclk_type value)
select system clock source More...
crm_sclk_type | crm_sysclk_switch_status_get (void)
indicate which clock source is used as system clock More...
void | crm_clocks_freq_get (crm_clocks_freq_type *clocks_struct)
get crm clocks freqency More...
void | crm_clock_out_set (crm_clkout_select_type clkout)
set crm clkout More...
void | crm_interrupt_enable (uint32_t crm_int, confirm_state new_state)
config crm interrupt More...

Detailed Description

Function Documentation

◆ crm_adc_clock_div_set()

void crm_adc_clock_div_set ( crm_adc_div_type div_value )

set crm adc division

Parameters
value this parameter can be one of the following values:
  • CRM_ADC_DIV_2
  • CRM_ADC_DIV_4
  • CRM_ADC_DIV_6
  • CRM_ADC_DIV_8
  • CRM_ADC_DIV_12
  • CRM_ADC_DIV_16
Return values
none

Definition at line 525 of file at32f403_crm.c.

Referenced by adc_config().

◆ crm_ahb_div_set()

void crm_ahb_div_set ( crm_ahb_div_type value )

set crm ahb division

Parameters
value this parameter can be one of the following values:
  • CRM_AHB_DIV_1
  • CRM_AHB_DIV_2
  • CRM_AHB_DIV_4
  • CRM_AHB_DIV_8
  • CRM_AHB_DIV_16
  • CRM_AHB_DIV_64
  • CRM_AHB_DIV_128
  • CRM_AHB_DIV_256
  • CRM_AHB_DIV_512
Return values
none

Definition at line 474 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_apb1_div_set()

void crm_apb1_div_set ( crm_apb1_div_type value )

set crm apb1 division

Note
the maximum frequency of APB1/APB2 clock is 100 MHz
Parameters
value this parameter can be one of the following values:
  • CRM_APB1_DIV_1
  • CRM_APB1_DIV_2
  • CRM_APB1_DIV_4
  • CRM_APB1_DIV_8
  • CRM_APB1_DIV_16
Return values
none

Definition at line 491 of file at32f403_crm.c.

Referenced by main(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_apb2_div_set()

void crm_apb2_div_set ( crm_apb2_div_type value )

set crm apb2 division

Note
the maximum frequency of APB1/APB2 clock is 100 MHz
Parameters
value this parameter can be one of the following values:
  • CRM_APB2_DIV_1
  • CRM_APB2_DIV_2
  • CRM_APB2_DIV_4
  • CRM_APB2_DIV_8
  • CRM_APB2_DIV_16
Return values
none

Definition at line 508 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_battery_powered_domain_reset()

void crm_battery_powered_domain_reset ( confirm_state new_state )

battery powered domain software reset

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 565 of file at32f403_crm.c.

Referenced by bpr_reset().

◆ crm_clock_failure_detection_enable()

void crm_clock_failure_detection_enable ( confirm_state new_state )

enable or disable clock failure detection

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 555 of file at32f403_crm.c.

Referenced by clock_failure_detection_handler(), and main().

◆ crm_clock_out_set()

void crm_clock_out_set ( crm_clkout_select_type clkout )

set crm clkout

Parameters
clkout this parameter can be one of the following values:
  • CRM_CLKOUT_NOCLK
  • CRM_CLKOUT_LICK
  • CRM_CLKOUT_LEXT
  • CRM_CLKOUT_SCLK
  • CRM_CLKOUT_HICK
  • CRM_CLKOUT_HEXT
  • CRM_CLKOUT_PLL_DIV_2
  • CRM_CLKOUT_PLL_DIV_4
  • CRM_CLKOUT_USB
  • CRM_CLKOUT_ADC
Return values
none

Definition at line 750 of file at32f403_crm.c.

Referenced by clkout_config().

◆ crm_clock_source_enable()

void crm_clock_source_enable | ( | crm_clock_source_type | source,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the crm clock source

Parameters
source this parameter can be one of the following values:
  • CRM_CLOCK_SOURCE_HICK
  • CRM_CLOCK_SOURCE_HEXT
  • CRM_CLOCK_SOURCE_PLL
  • CRM_CLOCK_SOURCE_LEXT
  • CRM_CLOCK_SOURCE_LICK
new_state (TRUE or FALSE)
Return values
none

Definition at line 353 of file at32f403_crm.c.

Referenced by rtc_config(), rtc_configuration(), rtc_init(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_clocks_freq_get()

void crm_clocks_freq_get ( crm_clocks_freq_type * clocks_struct )

get crm clocks freqency

Parameters
clocks
  • pointer to the crm_clocks_freq structure
Return values
none

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

< value of the high speed external crystal in hz

< value of the high speed external crystal in hz

< value of the high speed internal clock in hz

Definition at line 646 of file at32f403_crm.c.

Referenced by i2c_init(), i2s_init(), main(), tmr1_config(), tmr2_config(), tmr_init(), usart_configuration(), and usart_init().

◆ crm_flag_clear()

void crm_flag_clear ( uint32_t flag )

clear the crm reset flags

Parameters
flag this parameter can be one of the following values: reset flag:
  • CRM_NRST_RESET_FLAG
  • CRM_POR_RESET_FLAG
  • CRM_SW_RESET_FLAG
  • CRM_WDT_RESET_FLAG
  • CRM_WWDT_RESET_FLAG
  • CRM_LOWPOWER_RESET_FLAG
  • CRM_ALL_RESET_FLAG interrupt flag:
  • CRM_LICK_READY_INT_FLAG
  • CRM_LEXT_READY_INT_FLAG
  • CRM_HICK_READY_INT_FLAG
  • CRM_HEXT_READY_INT_FLAG
  • CRM_PLL_READY_INT_FLAG
  • CRM_CLOCK_FAILURE_INT_FLAG
Return values
none

< nrst pin reset flag

< power on reset flag

< software reset flag

< watchdog timer reset flag

< window watchdog timer reset flag

< low-power reset flag

< all reset flag

< low speed internal clock stable interrupt ready flag

< low speed external crystal stable interrupt ready flag

< high speed internal clock stable interrupt ready flag

< high speed external crystal stable interrupt ready flag

< phase locking loop stable interrupt ready flag

< clock failure interrupt ready flag

Definition at line 398 of file at32f403_crm.c.

Referenced by clock_failure_detection_handler(), and main().

◆ crm_flag_get()

flag_status crm_flag_get ( uint32_t flag )

get crm flag status

Parameters
flag this parameter can be one of the following values:
  • CRM_HICK_STABLE_FLAG
  • CRM_HEXT_STABLE_FLAG
  • CRM_PLL_STABLE_FLAG
  • CRM_LEXT_STABLE_FLAG
  • CRM_LICK_STABLE_FLAG
  • CRM_NRST_RESET_FLAG
  • CRM_POR_RESET_FLAG
  • CRM_SW_RESET_FLAG
  • CRM_WDT_RESET_FLAG
  • CRM_WWDT_RESET_FLAG
  • CRM_LOWPOWER_RESET_FLAG interrupt flag:
  • CRM_LICK_READY_INT_FLAG
  • CRM_LEXT_READY_INT_FLAG
  • CRM_HICK_READY_INT_FLAG
  • CRM_HEXT_READY_INT_FLAG
  • CRM_PLL_READY_INT_FLAG
  • CRM_CLOCK_FAILURE_INT_FLAG
Return values
flag_status (SET or RESET)

Definition at line 123 of file at32f403_crm.c.

Referenced by clock_failure_detection_handler(), crm_hext_stable_wait(), main(), rtc_config(), rtc_configuration(), rtc_init(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_hext_bypass()

void crm_hext_bypass ( confirm_state new_state )

enable or disable crm high speed external crystal bypass

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 94 of file at32f403_crm.c.

◆ crm_hext_stable_wait()

error_status crm_hext_stable_wait ( void )

wait for hext stable

Parameters
none
Return values
error_status (ERROR or SUCCESS)

< high speed external crystal stable flag

< time out for hext start up

< high speed external crystal stable flag

Definition at line 200 of file at32f403_crm.c.

Referenced by sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_hick_clock_calibration_set()

void crm_hick_clock_calibration_set ( uint8_t cali_value )

set the crm calibration value

Parameters
cali_value (0x00~0xFF)
Return values
none

Definition at line 237 of file at32f403_crm.c.

◆ crm_hick_clock_trimming_set()

void crm_hick_clock_trimming_set ( uint8_t trim_value )

set the hick trimming value

Parameters
trim_value (0x00~0x1F)
Return values
none

Definition at line 227 of file at32f403_crm.c.

◆ crm_interrupt_enable()

void crm_interrupt_enable | ( | uint32_t | crm_int,
 |  | confirm_state | new_state
 | ) |  |

config crm interrupt

Parameters
int this parameter can be any combination of the following values:
  • CRM_LICK_STABLE_INT
  • CRM_LEXT_STABLE_INT
  • CRM_HICK_STABLE_INT
  • CRM_HEXT_STABLE_INT
  • CRM_PLL_STABLE_INT
new_state (TRUE or FALSE)
Return values
none

Definition at line 768 of file at32f403_crm.c.

◆ crm_interrupt_flag_get()

flag_status crm_interrupt_flag_get ( uint32_t flag )

get crm interrupt flag status

Parameters
flag this parameter can be one of the following values:
  • CRM_LICK_READY_INT_FLAG
  • CRM_LEXT_READY_INT_FLAG
  • CRM_HICK_READY_INT_FLAG
  • CRM_HEXT_READY_INT_FLAG
  • CRM_PLL_READY_INT_FLAG
  • CRM_CLOCK_FAILURE_INT_FLAG
Return values
flag_status (SET or RESET)

< low speed internal clock stable interrupt ready flag

< low speed external crystal stable interrupt ready flag

< high speed internal clock stable interrupt ready flag

< high speed external crystal stable interrupt ready flag

< phase locking loop stable interrupt ready flag

< clock failure interrupt ready flag

Definition at line 149 of file at32f403_crm.c.

◆ crm_lext_bypass()

void crm_lext_bypass ( confirm_state new_state )

enable or disable crm low speed external crystal bypass

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 84 of file at32f403_crm.c.

◆ crm_periph_clock_enable()

void crm_periph_clock_enable | ( | crm_periph_clock_type | value,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the peripheral clock

Parameters
value this parameter can be one of the following values:
  • CRM_DMA1_PERIPH_CLOCK - CRM_DMA2_PERIPH_CLOCK - CRM_CRC_PERIPH_CLOCK - CRM_XMC_PERIPH_CLOCK
  • CRM_SDIO1_PERIPH_CLOCK - CRM_SDIO2_PERIPH_CLOCK - CRM_EMAC_PERIPH_CLOCK - CRM_EMACTX_PERIPH_CLOCK
  • CRM_EMACRX_PERIPH_CLOCK - CRM_EMACPTP_PERIPH_CLOCK - CRM_IOMUX_PERIPH_CLOCK - CRM_GPIOA_PERIPH_CLOCK
  • CRM_GPIOB_PERIPH_CLOCK - CRM_GPIOC_PERIPH_CLOCK - CRM_GPIOD_PERIPH_CLOCK - CRM_GPIOE_PERIPH_CLOCK
  • CRM_ADC1_PERIPH_CLOCK - CRM_ADC2_PERIPH_CLOCK - CRM_TMR1_PERIPH_CLOCK - CRM_SPI1_PERIPH_CLOCK
  • CRM_TMR8_PERIPH_CLOCK - CRM_USART1_PERIPH_CLOCK - CRM_ADC3_PERIPH_CLOCK - CRM_TMR9_PERIPH_CLOCK
  • CRM_TMR10_PERIPH_CLOCK - CRM_TMR11_PERIPH_CLOCK - CRM_ACC_PERIPH_CLOCK - CRM_I2C3_PERIPH_CLOCK
  • CRM_USART6_PERIPH_CLOCK - CRM_UART7_PERIPH_CLOCK - CRM_UART8_PERIPH_CLOCK - CRM_TMR2_PERIPH_CLOCK
  • CRM_TMR3_PERIPH_CLOCK - CRM_TMR4_PERIPH_CLOCK - CRM_TMR5_PERIPH_CLOCK - CRM_TMR6_PERIPH_CLOCK
  • CRM_TMR7_PERIPH_CLOCK - CRM_TMR12_PERIPH_CLOCK - CRM_TMR13_PERIPH_CLOCK - CRM_TMR14_PERIPH_CLOCK
  • CRM_WWDT_PERIPH_CLOCK - CRM_SPI2_PERIPH_CLOCK - CRM_SPI3_PERIPH_CLOCK - CRM_SPI4_PERIPH_CLOCK
  • CRM_USART2_PERIPH_CLOCK - CRM_USART3_PERIPH_CLOCK - CRM_UART4_PERIPH_CLOCK - CRM_UART5_PERIPH_CLOCK
  • CRM_I2C1_PERIPH_CLOCK - CRM_I2C2_PERIPH_CLOCK - CRM_USB_PERIPH_CLOCK - CRM_CAN1_PERIPH_CLOCK
  • CRM_CAN2_PERIPH_CLOCK - CRM_BPR_PERIPH_CLOCK - CRM_PWC_PERIPH_CLOCK - CRM_DAC_PERIPH_CLOCK
new_state (TRUE or FALSE)
Return values
none

Definition at line 270 of file at32f403_crm.c.

Referenced by adc_config(), app_load(), at32_button_init(), at32_led_init(), button_exint_init(), can_configuration(), can_gpio_config(), clkout_config(), codec_i2s_init(), crc_cal(), crm_configuration(), dma_config(), dma_configuration(), exint_config(), exint_line0_config(), exint_line4_config(), flash_crc_check(), gpio_config(), i2c_lowlevel_init(), i2s_config(), jump_to_app(), main(), mclk_tmr1_init(), MYDMA_Config(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), rtc_alarm_clock_set(), rtc_configuration(), rtc_init(), rtc_time_set(), sd_dma_config(), sd_init(), spi_config(), spiflash_init(), spim_init(), sram_init(), tmr1_config(), tmr2_config(), TMR3_GLOBAL_IRQHandler(), tmr_init(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), usb_usart_config(), and xmc_init().

◆ crm_periph_reset()

void crm_periph_reset | ( | crm_periph_reset_type | value,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the peripheral reset

Parameters
value this parameter can be one of the following values:
  • CRM_EMAC_PERIPH_RESET - CRM_IOMUX_PERIPH_RESET - CRM_EXINT_PERIPH_RESET - CRM_GPIOA_PERIPH_RESET
  • CRM_GPIOB_PERIPH_RESET - CRM_GPIOC_PERIPH_RESET - CRM_GPIOD_PERIPH_RESET - CRM_GPIOE_PERIPH_RESET
  • CRM_ADC1_PERIPH_RESET - CRM_ADC2_PERIPH_RESET - CRM_TMR1_PERIPH_RESET - CRM_SPI1_PERIPH_RESET
  • CRM_TMR8_PERIPH_RESET - CRM_USART1_PERIPH_RESET - CRM_ADC3_PERIPH_RESET - CRM_TMR9_PERIPH_RESET
  • CRM_TMR10_PERIPH_RESET - CRM_TMR11_PERIPH_RESET - CRM_ACC_PERIPH_RESET - CRM_I2C3_PERIPH_RESET
  • CRM_USART6_PERIPH_RESET - CRM_UART7_PERIPH_RESET - CRM_UART8_PERIPH_RESET - CRM_TMR2_PERIPH_RESET
  • CRM_TMR3_PERIPH_RESET - CRM_TMR4_PERIPH_RESET - CRM_TMR5_PERIPH_RESET - CRM_TMR6_PERIPH_RESET
  • CRM_TMR7_PERIPH_RESET - CRM_TMR12_PERIPH_RESET - CRM_TMR13_PERIPH_RESET - CRM_TMR14_PERIPH_RESET
  • CRM_WWDT_PERIPH_RESET - CRM_SPI2_PERIPH_RESET - CRM_SPI3_PERIPH_RESET - CRM_SPI4_PERIPH_RESET
  • CRM_USART2_PERIPH_RESET - CRM_USART3_PERIPH_RESET - CRM_UART4_PERIPH_RESET - CRM_UART5_PERIPH_RESET
  • CRM_I2C1_PERIPH_RESET - CRM_I2C2_PERIPH_RESET - CRM_USB_PERIPH_RESET - CRM_CAN1_PERIPH_RESET
  • CRM_CAN2_PERIPH_RESET - CRM_BPR_PERIPH_RESET - CRM_PWC_PERIPH_RESET - CRM_DAC_PERIPH_RESET
new_state (TRUE or FALSE)
Return values
none

Definition at line 303 of file at32f403_crm.c.

Referenced by adc_reset(), can_reset(), dac_reset(), gpio_iomux_reset(), gpio_reset(), i2c_reset(), jump_to_app(), pwc_reset(), spi_i2s_reset(), tmr_reset(), usart_reset(), and wwdt_reset().

◆ crm_periph_sleep_mode_clock_enable()

void crm_periph_sleep_mode_clock_enable | ( | crm_periph_clock_sleepmd_type | value,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the peripheral clock in sleep mode

Parameters
value this parameter can be one of the following values:
  • CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE
  • CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE
new_state (TRUE or FALSE)
Return values
none

Definition at line 326 of file at32f403_crm.c.

◆ crm_pll_config()

void crm_pll_config | ( | crm_pll_clock_source_type | clock_source,
 |  | crm_pll_mult_type | mult_value,
 |  | crm_pll_output_range_type | pll_range
 | ) |  |

config crm pll

Parameters
clock_source this parameter can be one of the following values:
  • CRM_PLL_SOURCE_HICK
  • CRM_PLL_SOURCE_HEXT
  • CRM_PLL_SOURCE_HEXT_DIV
mult_value (CRM_PLL_MULT_2~64)
pll_range this parameter can be one of the following values:
  • CRM_PLL_OUTPUT_RANGE_LE72MHZ
  • CRM_PLL_OUTPUT_RANGE_GT72MHZ
Return values
none

Definition at line 584 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_reset()

void crm_reset ( void )

reset the crm register

Parameters
none
Return values
none

Definition at line 47 of file at32f403_crm.c.

Referenced by app_update_handle(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), and system_clock_config().

◆ crm_rtc_clock_enable()

void crm_rtc_clock_enable ( confirm_state new_state )

enable or disable rtc

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 454 of file at32f403_crm.c.

Referenced by rtc_config(), rtc_configuration(), and rtc_init().

◆ crm_rtc_clock_select()

void crm_rtc_clock_select ( crm_rtc_clock_type value )

select rtc clock

Parameters
value this parameter can be one of the following values:
  • CRM_RTC_CLOCK_LEXT
  • CRM_RTC_CLOCK_LICK
  • CRM_RTC_CLOCK_HEXT_DIV
Return values
none

Definition at line 444 of file at32f403_crm.c.

Referenced by rtc_config(), rtc_configuration(), and rtc_init().

◆ crm_sysclk_switch()

void crm_sysclk_switch ( crm_sclk_type value )

select system clock source

Parameters
value this parameter can be one of the following values:
  • CRM_SCLK_HICK
  • CRM_SCLK_HEXT
  • CRM_SCLK_PLL
Return values
none

Definition at line 621 of file at32f403_crm.c.

Referenced by sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), and system_clock_recover().

◆ crm_sysclk_switch_status_get()

crm_sclk_type crm_sysclk_switch_status_get ( void )

indicate which clock source is used as system clock

Parameters
none
Return values
crm_sclk this return can be one of the following values:
  • CRM_SCLK_HICK
  • CRM_SCLK_HEXT
  • CRM_SCLK_PLL

Definition at line 635 of file at32f403_crm.c.

Referenced by crm_clocks_freq_get(), sclk_192m_hick_config(), sclk_64m_hick_config(), sclk_96m_hext_config(), system_clock_config(), system_clock_recover(), and system_core_clock_update().

◆ crm_usb_clock_div_set()

void crm_usb_clock_div_set ( crm_usb_div_type div_value )

set crm usb division

Parameters
value this parameter can be one of the following values:
  • CRM_USB_DIV_1_5
  • CRM_USB_DIV_1
  • CRM_USB_DIV_2_5
  • CRM_USB_DIV_2
  • CRM_USB_DIV_3_5
  • CRM_USB_DIV_3
  • CRM_USB_DIV_4
Return values
none

Definition at line 544 of file at32f403_crm.c.

Referenced by usb_clock48m_select().


AT32F403 Firmwary Library: DAC

Modules | Macros
DAC
AT32F403_periph_driver

DAC driver modules. More...

Modules

DAC_exported_types
DAC_exported_functions
DAC_private_functions

Macros

#define | DAC1_D1DMAUDRF ((uint32_t)(0x00002000))
#define | DAC2_D2DMAUDRF ((uint32_t)(0x20000000))
#define | DAC ((dac_type *) DAC_BASE)

Detailed Description

DAC driver modules.

Macro Definition Documentation

◆ DAC

#define DAC ((dac_type *) DAC_BASE)

Definition at line 335 of file at32f403_dac.h.

◆ DAC1_D1DMAUDRF

#define DAC1_D1DMAUDRF ((uint32_t)(0x00002000))

Definition at line 45 of file at32f403_dac.h.

◆ DAC2_D2DMAUDRF

#define DAC2_D2DMAUDRF ((uint32_t)(0x20000000))

Definition at line 46 of file at32f403_dac.h.


AT32F403 Firmwary Library: DAC_exported_types

Data Structures | Enumerations
DAC_exported_types
AT32F403_periph_driver » DAC

Data Structures

struct dac_type
type define dac register all More...

Enumerations

enum | dac_select_type { DAC1_SELECT = 0x01 , DAC2_SELECT = 0x02 }
dac select type More...
enum dac_trigger_type {
DAC_TMR6_TRGOUT_EVENT = 0x00 , DAC_TMR8_TRGOUT_EVENT = 0x01 , DAC_TMR7_TRGOUT_EVENT = 0x02 , DAC_TMR5_TRGOUT_EVENT = 0x03 ,
DAC_TMR2_TRGOUT_EVENT = 0x04 , DAC_TMR4_TRGOUT_EVENT = 0x05 , DAC_EXTERNAL_INTERRUPT_LINE_9 = 0x06 , DAC_SOFTWARE_TRIGGER = 0x07
}
dac trigger type More...
enum | dac_wave_type { DAC_WAVE_GENERATE_NONE = 0x00 , DAC_WAVE_GENERATE_NOISE = 0x01 , DAC_WAVE_GENERATE_TRIANGLE = 0x02 }
dac wave type More...
enum dac_mask_amplitude_type {
DAC_LSFR_BIT0_AMPLITUDE_1 = 0x00 , DAC_LSFR_BIT10_AMPLITUDE_3 = 0x01 , DAC_LSFR_BIT20_AMPLITUDE_7 = 0x02 , DAC_LSFR_BIT30_AMPLITUDE_15 = 0x03 ,
DAC_LSFR_BIT40_AMPLITUDE_31 = 0x04 , DAC_LSFR_BIT50_AMPLITUDE_63 = 0x05 , DAC_LSFR_BIT60_AMPLITUDE_127 = 0x06 , DAC_LSFR_BIT70_AMPLITUDE_255 = 0x07 ,
DAC_LSFR_BIT80_AMPLITUDE_511 = 0x08 , DAC_LSFR_BIT90_AMPLITUDE_1023 = 0x09 , DAC_LSFR_BITA0_AMPLITUDE_2047 = 0x0A , DAC_LSFR_BITB0_AMPLITUDE_4095 = 0x0B
}
dac mask amplitude type More...
enum | dac1_aligned_data_type { DAC1_12BIT_RIGHT = 0x40007408 , DAC1_12BIT_LEFT = 0x4000740C , DAC1_8BIT_RIGHT = 0x40007410 }
dac1 aligned data type More...
enum | dac2_aligned_data_type { DAC2_12BIT_RIGHT = 0x40007414 , DAC2_12BIT_LEFT = 0x40007418 , DAC2_8BIT_RIGHT = 0x4000741C }
dac2 aligned data type More...
enum | dac_dual_data_type { DAC_DUAL_12BIT_RIGHT = 0x40007420 , DAC_DUAL_12BIT_LEFT = 0x40007424 , DAC_DUAL_8BIT_RIGHT = 0x40007428 }
dac dual data type More...

Detailed Description

Enumeration Type Documentation

◆ dac1_aligned_data_type

enum dac1_aligned_data_type

dac1 aligned data type

Enumerator
DAC1_12BIT_RIGHT | dac1 12-bit data right-aligned
DAC1_12BIT_LEFT | dac1 12-bit data left-aligned
DAC1_8BIT_RIGHT | dac1 8-bit data right-aligned

Definition at line 108 of file at32f403_dac.h.

◆ dac2_aligned_data_type

enum dac2_aligned_data_type

dac2 aligned data type

Enumerator
DAC2_12BIT_RIGHT | dac2 12-bit data right-aligned
DAC2_12BIT_LEFT | dac2 12-bit data left-aligned
DAC2_8BIT_RIGHT | dac2 8-bit data right-aligned

Definition at line 118 of file at32f403_dac.h.

◆ dac_dual_data_type

enum dac_dual_data_type

dac dual data type

Enumerator
DAC_DUAL_12BIT_RIGHT | double dac 12-bit data right-aligned
DAC_DUAL_12BIT_LEFT | double dac 12-bit data left-aligned
DAC_DUAL_8BIT_RIGHT | double dac 8-bit data right-aligned

Definition at line 128 of file at32f403_dac.h.

◆ dac_mask_amplitude_type

enum dac_mask_amplitude_type

dac mask amplitude type

Enumerator
DAC_LSFR_BIT0_AMPLITUDE_1 | unmask bit0/ triangle amplitude equal to 1
DAC_LSFR_BIT10_AMPLITUDE_3 | unmask bit[1:0]/ triangle amplitude equal to 3
DAC_LSFR_BIT20_AMPLITUDE_7 | unmask bit[2:0]/ triangle amplitude equal to 7
DAC_LSFR_BIT30_AMPLITUDE_15 | unmask bit[3:0]/ triangle amplitude equal to 15
DAC_LSFR_BIT40_AMPLITUDE_31 | unmask bit[4:0]/ triangle amplitude equal to 31
DAC_LSFR_BIT50_AMPLITUDE_63 | unmask bit[5:0]/ triangle amplitude equal to 63
DAC_LSFR_BIT60_AMPLITUDE_127 | unmask bit[6:0]/ triangle amplitude equal to 127
DAC_LSFR_BIT70_AMPLITUDE_255 | unmask bit[7:0]/ triangle amplitude equal to 255
DAC_LSFR_BIT80_AMPLITUDE_511 | unmask bit[8:0]/ triangle amplitude equal to 511
DAC_LSFR_BIT90_AMPLITUDE_1023 | unmask bit[9:0]/ triangle amplitude equal to 1023
DAC_LSFR_BITA0_AMPLITUDE_2047 | unmask bit[10:0]/ triangle amplitude equal to 2047
DAC_LSFR_BITB0_AMPLITUDE_4095 | unmask bit[11:0]/ triangle amplitude equal to 4095

Definition at line 89 of file at32f403_dac.h.

◆ dac_select_type

enum dac_select_type

dac select type

Enumerator
DAC1_SELECT | dac1 select
DAC2_SELECT | dac2 select

Definition at line 55 of file at32f403_dac.h.

◆ dac_trigger_type

enum dac_trigger_type

dac trigger type

Enumerator
DAC_TMR6_TRGOUT_EVENT | dac trigger selection:timer6 trgout event
DAC_TMR8_TRGOUT_EVENT | dac trigger selection:timer8 trgout event
DAC_TMR7_TRGOUT_EVENT | dac trigger selection:timer7 trgout event
DAC_TMR5_TRGOUT_EVENT | dac trigger selection:timer5 trgout event
DAC_TMR2_TRGOUT_EVENT | dac trigger selection:timer2 trgout event
DAC_TMR4_TRGOUT_EVENT | dac trigger selection:timer4 trgout event
DAC_EXTERNAL_INTERRUPT_LINE_9 | dac trigger selection:external line9
DAC_SOFTWARE_TRIGGER | dac trigger selection:software trigger

Definition at line 64 of file at32f403_dac.h.

◆ dac_wave_type

enum dac_wave_type

dac wave type

Enumerator
DAC_WAVE_GENERATE_NONE | dac wave generation disabled
DAC_WAVE_GENERATE_NOISE | dac noise wave generation enabled
DAC_WAVE_GENERATE_TRIANGLE | dac triangle wave generation enabled

Definition at line 79 of file at32f403_dac.h.


AT32F403 Firmwary Library: dac_type Struct Reference

Data Fields
dac_type Struct Reference
AT32F403_periph_driver » DAC » DAC_exported_types

type define dac register all More...

#include <at32f403_dac.h>

Data Fields

union {
__IO uint32_t ctrl
struct {
__IO uint32_t d1en: 1
__IO uint32_t d1obdis: 1
__IO uint32_t d1trgen: 1
__IO uint32_t d1trgsel: 3
__IO uint32_t d1nm: 2
__IO uint32_t d1nbsel: 4
__IO uint32_t d1dmaen: 1
__IO uint32_t reserved1: 3
__IO uint32_t d2en: 1
__IO uint32_t d2obdis: 1
__IO uint32_t d2trgen: 1
__IO uint32_t d2trgsel: 3
__IO uint32_t d2nm: 2
__IO uint32_t d2nbsel: 4
__IO uint32_t d2dmaen: 1
__IO uint32_t reserved2: 3
} ctrl_bit
};
dac ctrl register, offset:0x00 More...
union {
__IO uint32_t swtrg
struct {
__IO uint32_t d1swtrg: 1
__IO uint32_t d2swtrg: 1
__IO uint32_t reserved1: 30
} swtrg_bit
};
dac swtrg register, offset:0x04 More...
union {
__IO uint32_t d1dth12r
struct {
__IO uint32_t d1dt12r: 12
__IO uint32_t reserved1: 20
} d1dth12r_bit
};
dac d1dth12r register, offset:0x08 More...
union {
__IO uint32_t d1dth12l
struct {
__IO uint32_t d1dt12l: 12
__IO uint32_t reserved1: 20
} d1dth12l_bit
};
dac d1dth12l register, offset:0x0C More...
union {
__IO uint32_t d1dth8r
struct {
__IO uint32_t d1dt8r: 8
__IO uint32_t reserved1: 24
} d1dth8r_bit
};
dac d1dth8r register, offset:0x10 More...
union {
__IO uint32_t d2dth12r
struct {
__IO uint32_t d2dt12r: 12
__IO uint32_t reserved1: 20
} d2dth12r_bit
};
dac d2dth12r register, offset:0x14 More...
union {
__IO uint32_t d2dth12l
struct {
__IO uint32_t d2dt12l: 12
__IO uint32_t reserved1: 20
} d2dth12l_bit
};
dac d2dth12l register, offset:0x18 More...
union {
__IO uint32_t d2dth8r
struct {
__IO uint32_t d2dt8r: 8
__IO uint32_t reserved1: 24
} d2dth8r_bit
};
dac d2dth8r register, offset:0x1C More...
union {
__IO uint32_t ddth12r
struct {
__IO uint32_t dd1dt12r: 12
__IO uint32_t reserved1: 4
__IO uint32_t dd2dt12r: 12
__IO uint32_t reserved2: 4
} ddth12r_bit
};
dac ddth12r register, offset:0x20 More...
union {
__IO uint32_t ddth12l
struct {
__IO uint32_t reserved1: 4
__IO uint32_t dd1dt12l: 12
__IO uint32_t reserved2: 4
__IO uint32_t dd2dt12l: 12
} ddth12l_bit
};
dac ddth12l register, offset:0x24 More...
union {
__IO uint32_t ddth8r
struct {
__IO uint32_t dd1dt8r: 8
__IO uint32_t dd2dt8r: 8
__IO uint32_t reserved1: 16
} ddth8r_bit
};
dac ddth8r register, offset:0x28 More...
union {
__IO uint32_t d1odt
struct {
__IO uint32_t d1odt: 12
__IO uint32_t reserved1: 20
} d1odt_bit
};
dac d1odt register, offset:0x2c More...
union {
__IO uint32_t d2odt
struct {
__IO uint32_t d2odt: 12
__IO uint32_t reserved1: 20
} d2odt_bit
};
dac d2odt register, offset:0x30 More...

Detailed Description

type define dac register all

Definition at line 138 of file at32f403_dac.h.

Field Documentation

◆

union { ... } dac_type::@307

dac ctrl register, offset:0x00

◆

union { ... } dac_type::@309

dac swtrg register, offset:0x04

◆

union { ... } dac_type::@311

dac d1dth12r register, offset:0x08

◆

union { ... } dac_type::@313

dac d1dth12l register, offset:0x0C

◆

union { ... } dac_type::@315

dac d1dth8r register, offset:0x10

◆

union { ... } dac_type::@317

dac d2dth12r register, offset:0x14

◆

union { ... } dac_type::@319

dac d2dth12l register, offset:0x18

◆

union { ... } dac_type::@321

dac d2dth8r register, offset:0x1C

◆

union { ... } dac_type::@323

dac ddth12r register, offset:0x20

◆

union { ... } dac_type::@325

dac ddth12l register, offset:0x24

◆

union { ... } dac_type::@327

dac ddth8r register, offset:0x28

◆

union { ... } dac_type::@329

dac d1odt register, offset:0x2c

◆

union { ... } dac_type::@331

dac d2odt register, offset:0x30

◆ ctrl

__IO uint32_t dac_type::ctrl

Definition at line 146 of file at32f403_dac.h.

◆

struct { ... } dac_type::ctrl_bit

◆ d1dmaen

__IO uint32_t dac_type::d1dmaen

Definition at line 155 of file at32f403_dac.h.

◆ d1dt12l

__IO uint32_t dac_type::d1dt12l

Definition at line 203 of file at32f403_dac.h.

◆ d1dt12r

__IO uint32_t dac_type::d1dt12r

Definition at line 190 of file at32f403_dac.h.

◆ d1dt8r

__IO uint32_t dac_type::d1dt8r

Definition at line 216 of file at32f403_dac.h.

◆ d1dth12l

__IO uint32_t dac_type::d1dth12l

Definition at line 200 of file at32f403_dac.h.

◆

struct { ... } dac_type::d1dth12l_bit

◆ d1dth12r

__IO uint32_t dac_type::d1dth12r

Definition at line 187 of file at32f403_dac.h.

◆

struct { ... } dac_type::d1dth12r_bit

◆ d1dth8r

__IO uint32_t dac_type::d1dth8r

Definition at line 213 of file at32f403_dac.h.

◆

struct { ... } dac_type::d1dth8r_bit

◆ d1en

__IO uint32_t dac_type::d1en

Definition at line 149 of file at32f403_dac.h.

◆ d1nbsel

__IO uint32_t dac_type::d1nbsel

Definition at line 154 of file at32f403_dac.h.

◆ d1nm

__IO uint32_t dac_type::d1nm

Definition at line 153 of file at32f403_dac.h.

◆ d1obdis

__IO uint32_t dac_type::d1obdis

Definition at line 150 of file at32f403_dac.h.

◆ d1odt

__IO uint32_t dac_type::d1odt

Definition at line 309 of file at32f403_dac.h.

◆

struct { ... } dac_type::d1odt_bit

◆ d1swtrg

__IO uint32_t dac_type::d1swtrg

Definition at line 176 of file at32f403_dac.h.

◆ d1trgen

__IO uint32_t dac_type::d1trgen

Definition at line 151 of file at32f403_dac.h.

◆ d1trgsel

__IO uint32_t dac_type::d1trgsel

Definition at line 152 of file at32f403_dac.h.

◆ d2dmaen

__IO uint32_t dac_type::d2dmaen

Definition at line 163 of file at32f403_dac.h.

◆ d2dt12l

__IO uint32_t dac_type::d2dt12l

Definition at line 242 of file at32f403_dac.h.

◆ d2dt12r

__IO uint32_t dac_type::d2dt12r

Definition at line 229 of file at32f403_dac.h.

◆ d2dt8r

__IO uint32_t dac_type::d2dt8r

Definition at line 255 of file at32f403_dac.h.

◆ d2dth12l

__IO uint32_t dac_type::d2dth12l

Definition at line 239 of file at32f403_dac.h.

◆

struct { ... } dac_type::d2dth12l_bit

◆ d2dth12r

__IO uint32_t dac_type::d2dth12r

Definition at line 226 of file at32f403_dac.h.

◆

struct { ... } dac_type::d2dth12r_bit

◆ d2dth8r

__IO uint32_t dac_type::d2dth8r

Definition at line 252 of file at32f403_dac.h.

◆

struct { ... } dac_type::d2dth8r_bit

◆ d2en

__IO uint32_t dac_type::d2en

Definition at line 157 of file at32f403_dac.h.

◆ d2nbsel

__IO uint32_t dac_type::d2nbsel

Definition at line 162 of file at32f403_dac.h.

◆ d2nm

__IO uint32_t dac_type::d2nm

Definition at line 161 of file at32f403_dac.h.

◆ d2obdis

__IO uint32_t dac_type::d2obdis

Definition at line 158 of file at32f403_dac.h.

◆ d2odt

__IO uint32_t dac_type::d2odt

Definition at line 322 of file at32f403_dac.h.

◆

struct { ... } dac_type::d2odt_bit

◆ d2swtrg

__IO uint32_t dac_type::d2swtrg

Definition at line 177 of file at32f403_dac.h.

◆ d2trgen

__IO uint32_t dac_type::d2trgen

Definition at line 159 of file at32f403_dac.h.

◆ d2trgsel

__IO uint32_t dac_type::d2trgsel

Definition at line 160 of file at32f403_dac.h.

◆ dd1dt12l

__IO uint32_t dac_type::dd1dt12l

Definition at line 284 of file at32f403_dac.h.

◆ dd1dt12r

__IO uint32_t dac_type::dd1dt12r

Definition at line 268 of file at32f403_dac.h.

◆ dd1dt8r

__IO uint32_t dac_type::dd1dt8r

Definition at line 298 of file at32f403_dac.h.

◆ dd2dt12l

__IO uint32_t dac_type::dd2dt12l

Definition at line 286 of file at32f403_dac.h.

◆ dd2dt12r

__IO uint32_t dac_type::dd2dt12r

Definition at line 270 of file at32f403_dac.h.

◆ dd2dt8r

__IO uint32_t dac_type::dd2dt8r

Definition at line 299 of file at32f403_dac.h.

◆ ddth12l

__IO uint32_t dac_type::ddth12l

Definition at line 280 of file at32f403_dac.h.

◆

struct { ... } dac_type::ddth12l_bit

◆ ddth12r

__IO uint32_t dac_type::ddth12r

Definition at line 265 of file at32f403_dac.h.

◆

struct { ... } dac_type::ddth12r_bit

◆ ddth8r

__IO uint32_t dac_type::ddth8r

Definition at line 295 of file at32f403_dac.h.

◆

struct { ... } dac_type::ddth8r_bit

◆ reserved1

__IO uint32_t dac_type::reserved1

Definition at line 156 of file at32f403_dac.h.

◆ reserved2

__IO uint32_t dac_type::reserved2

Definition at line 164 of file at32f403_dac.h.

◆ swtrg

__IO uint32_t dac_type::swtrg

Definition at line 173 of file at32f403_dac.h.

◆

struct { ... } dac_type::swtrg_bit
The documentation for this struct was generated from the following file:
  • at32f403_dac.h


AT32F403 Firmwary Library: DAC_exported_functions

Functions
DAC_exported_functions
AT32F403_periph_driver » DAC

Functions

void | dac_reset (void)
dac reset More...
void | dac_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac More...
void | dac_output_buffer_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer More...
void | dac_trigger_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger More...
void | dac_trigger_select (dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger More...
void | dac_software_trigger_generate (dac_select_type dac_select)
generate dac software trigger More...
void | dac_dual_software_trigger_generate (void)
generate dac dual software trigger synchronously More...
void | dac_wave_generate (dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave More...
void | dac_mask_amplitude_select (dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude More...
void | dac_dma_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma More...
uint16_t | dac_data_output_get (dac_select_type dac_select)
get dac data output More...
void | dac_1_data_set (dac1_aligned_data_type dac1_aligned, uint16_t dac1_data)
set dac1 data More...
void | dac_2_data_set (dac2_aligned_data_type dac2_aligned, uint16_t dac2_data)
set dac2 data More...
void | dac_dual_data_set (dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
set dac dual data More...

Detailed Description

Function Documentation

◆ dac_1_data_set()

void dac_1_data_set | ( | dac1_aligned_data_type | dac1_aligned,
 |  | uint16_t | dac1_data
 | ) |  |

set dac1 data

Parameters
dac1_aligned | this parameter can be one of the following values: DAC1_12BIT_RIGHT DAC1_12BIT_LEFT DAC1_8BIT_RIGHT
dac1_data | :indecate from selected data holding register
Return values
none

Definition at line 316 of file at32f403_dac.c.

◆ dac_2_data_set()

void dac_2_data_set | ( | dac2_aligned_data_type | dac2_aligned,
 |  | uint16_t | dac2_data
 | ) |  |

set dac2 data

Parameters
dac2_aligned | this parameter can be one of the following values: DAC2_12BIT_RIGHT DAC2_12BIT_LEFT DAC2_8BIT_RIGHT
dac2_data | :indecate from selected data holding register
Return values
none

Definition at line 331 of file at32f403_dac.c.

◆ dac_data_output_get()

uint16_t dac_data_output_get ( dac_select_type dac_select )

get dac data output

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
Return values
dac channel data output

Definition at line 289 of file at32f403_dac.c.

◆ dac_dma_enable()

void dac_dma_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac dma

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 266 of file at32f403_dac.c.

Referenced by main().

◆ dac_dual_data_set()

void dac_dual_data_set | ( | dac_dual_data_type | dac_dual,
 |  | uint16_t | data1,
 |  | uint16_t | data2
 | ) |  |

set dac dual data

Parameters
dac_dual | this parameter can be one of the following values: DAC_DUAL_12BIT_RIGHT DAC_DUAL_12BIT_LEFT DAC_DUAL_8BIT_RIGHT
data1 | :dac1 channel indecate from selected data holding register
data2 | :dac1 channel indecate from selected data holding register
Return values
none

Definition at line 347 of file at32f403_dac.c.

Referenced by main().

◆ dac_dual_software_trigger_generate()

void dac_dual_software_trigger_generate ( void )

generate dac dual software trigger synchronously

Parameters
none
Return values
none

Definition at line 187 of file at32f403_dac.c.

◆ dac_enable()

void dac_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 62 of file at32f403_dac.c.

Referenced by main().

◆ dac_mask_amplitude_select()

void dac_mask_amplitude_select | ( | dac_select_type | dac_select,
 |  | dac_mask_amplitude_type | dac_mask_amplitude
 | ) |  |

select dac mask amplitude

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
dac_mask_amplitude this parameter can be one of the following values:
  • DAC_LSFR_BIT0_AMPLITUDE_1
  • DAC_LSFR_BIT10_AMPLITUDE_3
  • DAC_LSFR_BIT20_AMPLITUDE_7
  • DAC_LSFR_BIT30_AMPLITUDE_15
  • DAC_LSFR_BIT40_AMPLITUDE_31
  • DAC_LSFR_BIT50_AMPLITUDE_63
  • DAC_LSFR_BIT60_AMPLITUDE_127
  • DAC_LSFR_BIT70_AMPLITUDE_255
  • DAC_LSFR_BIT80_AMPLITUDE_511
  • DAC_LSFR_BIT90_AMPLITUDE_1023
  • DAC_LSFR_BITA0_AMPLITUDE_2047
  • DAC_LSFR_BITB0_AMPLITUDE_4095
Return values
none

Definition at line 242 of file at32f403_dac.c.

Referenced by main().

◆ dac_output_buffer_enable()

void dac_output_buffer_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac output buffer

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 86 of file at32f403_dac.c.

Referenced by main().

◆ dac_reset()

void dac_reset ( void )

dac reset

Parameters
none
Return values
none

Definition at line 47 of file at32f403_dac.c.

◆ dac_software_trigger_generate()

void dac_software_trigger_generate ( dac_select_type dac_select )

generate dac software trigger

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
Return values
none

Definition at line 167 of file at32f403_dac.c.

Referenced by main().

◆ dac_trigger_enable()

void dac_trigger_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac trigger

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 111 of file at32f403_dac.c.

Referenced by main().

◆ dac_trigger_select()

void dac_trigger_select | ( | dac_select_type | dac_select,
 |  | dac_trigger_type | dac_trigger_source
 | ) |  |

select dac trigger

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
dac_trigger_source this parameter can be one of the following values:
  • DAC_TMR6_TRGOUT_EVENT
  • DAC_TMR8_TRGOUT_EVENT
  • DAC_TMR7_TRGOUT_EVENT
  • DAC_TMR5_TRGOUT_EVENT
  • DAC_TMR2_TRGOUT_EVENT
  • DAC_TMR4_TRGOUT_EVENT
  • DAC_EXTERNAL_INTERRUPT_LINE_9
  • DAC_SOFTWARE_TRIGGER
Return values
none

Definition at line 144 of file at32f403_dac.c.

Referenced by main().

◆ dac_wave_generate()

void dac_wave_generate | ( | dac_select_type | dac_select,
 |  | dac_wave_type | dac_wave
 | ) |  |

generate dac wave

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
dac_wave this parameter can be one of the following values:
  • DAC_WAVE_GENERATE_NONE
  • DAC_WAVE_GENERATE_NOISE
  • DAC_WAVE_GENERATE_TRIANGLE
Return values
none

Definition at line 205 of file at32f403_dac.c.

Referenced by main().


AT32F403 Firmwary Library: DAC_private_functions

Functions
DAC_private_functions
AT32F403_periph_driver » DAC

Functions

void | dac_reset (void)
dac reset More...
void | dac_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac More...
void | dac_output_buffer_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer More...
void | dac_trigger_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger More...
void | dac_trigger_select (dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger More...
void | dac_software_trigger_generate (dac_select_type dac_select)
generate dac software trigger More...
void | dac_dual_software_trigger_generate (void)
generate dac dual software trigger synchronously More...
void | dac_wave_generate (dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave More...
void | dac_mask_amplitude_select (dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude More...
void | dac_dma_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma More...
uint16_t | dac_data_output_get (dac_select_type dac_select)
get dac data output More...
void | dac_1_data_set (dac1_aligned_data_type dac1_aligned, uint16_t dac1_data)
set dac1 data More...
void | dac_2_data_set (dac2_aligned_data_type dac2_aligned, uint16_t dac2_data)
set dac2 data More...
void | dac_dual_data_set (dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
set dac dual data More...

Detailed Description

Function Documentation

◆ dac_1_data_set()

void dac_1_data_set | ( | dac1_aligned_data_type | dac1_aligned,
 |  | uint16_t | dac1_data
 | ) |  |

set dac1 data

Parameters
dac1_aligned | this parameter can be one of the following values: DAC1_12BIT_RIGHT DAC1_12BIT_LEFT DAC1_8BIT_RIGHT
dac1_data | :indecate from selected data holding register
Return values
none

Definition at line 316 of file at32f403_dac.c.

◆ dac_2_data_set()

void dac_2_data_set | ( | dac2_aligned_data_type | dac2_aligned,
 |  | uint16_t | dac2_data
 | ) |  |

set dac2 data

Parameters
dac2_aligned | this parameter can be one of the following values: DAC2_12BIT_RIGHT DAC2_12BIT_LEFT DAC2_8BIT_RIGHT
dac2_data | :indecate from selected data holding register
Return values
none

Definition at line 331 of file at32f403_dac.c.

◆ dac_data_output_get()

uint16_t dac_data_output_get ( dac_select_type dac_select )

get dac data output

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
Return values
dac channel data output

Definition at line 289 of file at32f403_dac.c.

◆ dac_dma_enable()

void dac_dma_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac dma

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 266 of file at32f403_dac.c.

Referenced by main().

◆ dac_dual_data_set()

void dac_dual_data_set | ( | dac_dual_data_type | dac_dual,
 |  | uint16_t | data1,
 |  | uint16_t | data2
 | ) |  |

set dac dual data

Parameters
dac_dual | this parameter can be one of the following values: DAC_DUAL_12BIT_RIGHT DAC_DUAL_12BIT_LEFT DAC_DUAL_8BIT_RIGHT
data1 | :dac1 channel indecate from selected data holding register
data2 | :dac1 channel indecate from selected data holding register
Return values
none

Definition at line 347 of file at32f403_dac.c.

Referenced by main().

◆ dac_dual_software_trigger_generate()

void dac_dual_software_trigger_generate ( void )

generate dac dual software trigger synchronously

Parameters
none
Return values
none

Definition at line 187 of file at32f403_dac.c.

◆ dac_enable()

void dac_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 62 of file at32f403_dac.c.

Referenced by main().

◆ dac_mask_amplitude_select()

void dac_mask_amplitude_select | ( | dac_select_type | dac_select,
 |  | dac_mask_amplitude_type | dac_mask_amplitude
 | ) |  |

select dac mask amplitude

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
dac_mask_amplitude this parameter can be one of the following values:
  • DAC_LSFR_BIT0_AMPLITUDE_1
  • DAC_LSFR_BIT10_AMPLITUDE_3
  • DAC_LSFR_BIT20_AMPLITUDE_7
  • DAC_LSFR_BIT30_AMPLITUDE_15
  • DAC_LSFR_BIT40_AMPLITUDE_31
  • DAC_LSFR_BIT50_AMPLITUDE_63
  • DAC_LSFR_BIT60_AMPLITUDE_127
  • DAC_LSFR_BIT70_AMPLITUDE_255
  • DAC_LSFR_BIT80_AMPLITUDE_511
  • DAC_LSFR_BIT90_AMPLITUDE_1023
  • DAC_LSFR_BITA0_AMPLITUDE_2047
  • DAC_LSFR_BITB0_AMPLITUDE_4095
Return values
none

Definition at line 242 of file at32f403_dac.c.

Referenced by main().

◆ dac_output_buffer_enable()

void dac_output_buffer_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac output buffer

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 86 of file at32f403_dac.c.

Referenced by main().

◆ dac_reset()

void dac_reset ( void )

dac reset

Parameters
none
Return values
none

Definition at line 47 of file at32f403_dac.c.

◆ dac_software_trigger_generate()

void dac_software_trigger_generate ( dac_select_type dac_select )

generate dac software trigger

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
Return values
none

Definition at line 167 of file at32f403_dac.c.

Referenced by main().

◆ dac_trigger_enable()

void dac_trigger_enable | ( | dac_select_type | dac_select,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dac trigger

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
new_state (TRUE or FALSE)
Return values
none

Definition at line 111 of file at32f403_dac.c.

Referenced by main().

◆ dac_trigger_select()

void dac_trigger_select | ( | dac_select_type | dac_select,
 |  | dac_trigger_type | dac_trigger_source
 | ) |  |

select dac trigger

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
dac_trigger_source this parameter can be one of the following values:
  • DAC_TMR6_TRGOUT_EVENT
  • DAC_TMR8_TRGOUT_EVENT
  • DAC_TMR7_TRGOUT_EVENT
  • DAC_TMR5_TRGOUT_EVENT
  • DAC_TMR2_TRGOUT_EVENT
  • DAC_TMR4_TRGOUT_EVENT
  • DAC_EXTERNAL_INTERRUPT_LINE_9
  • DAC_SOFTWARE_TRIGGER
Return values
none

Definition at line 144 of file at32f403_dac.c.

Referenced by main().

◆ dac_wave_generate()

void dac_wave_generate | ( | dac_select_type | dac_select,
 |  | dac_wave_type | dac_wave
 | ) |  |

generate dac wave

Parameters
dac_select this parameter can be one of the following values:
  • DAC1_SELECT
  • DAC2_SELECT
dac_wave this parameter can be one of the following values:
  • DAC_WAVE_GENERATE_NONE
  • DAC_WAVE_GENERATE_NOISE
  • DAC_WAVE_GENERATE_TRIANGLE
Return values
none

Definition at line 205 of file at32f403_dac.c.

Referenced by main().


AT32F403 Firmwary Library: DEBUG

Modules | Macros
DEBUG
AT32F403_periph_driver

DEBUG driver modules. More...

Modules

DEBUG_mode_definition
DEBUG_exported_types
DEBUG_exported_functions
DEBUG_private_functions

Macros

#define DEBUGMCU ((debug_type *) DEBUG_BASE)

Detailed Description

DEBUG driver modules.

Macro Definition Documentation

◆ DEBUGMCU

#define DEBUGMCU ((debug_type *) DEBUG_BASE)

Definition at line 145 of file at32f403_debug.h.


AT32F403 Firmwary Library: DEBUG_mode_definition

Macros
DEBUG_mode_definition
AT32F403_periph_driver » DEBUG

Macros

#define | DEBUG_SLEEP 0x00000001
#define | DEBUG_DEEPSLEEP 0x00000002
#define | DEBUG_STANDBY 0x00000004
#define | DEBUG_WDT_PAUSE 0x00000100
#define | DEBUG_WWDT_PAUSE 0x00000200
#define | DEBUG_TMR1_PAUSE 0x00000400
#define | DEBUG_TMR2_PAUSE 0x00000800
#define | DEBUG_TMR3_PAUSE 0x00001000
#define | DEBUG_TMR4_PAUSE 0x00002000
#define | DEBUG_TMR5_PAUSE 0x00040000
#define | DEBUG_TMR6_PAUSE 0x00080000
#define | DEBUG_TMR7_PAUSE 0x00100000
#define | DEBUG_TMR8_PAUSE 0x00020000
#define | DEBUG_TMR9_PAUSE 0x10000000
#define | DEBUG_TMR10_PAUSE 0x20000000
#define | DEBUG_TMR11_PAUSE 0x40000000
#define | DEBUG_TMR12_PAUSE 0x02000000
#define | DEBUG_TMR13_PAUSE 0x04000000
#define | DEBUG_TMR14_PAUSE 0x08000000
#define | DEBUG_TMR15_PAUSE 0x00400000
#define | DEBUG_I2C1_SMBUS_TIMEOUT 0x00008000
#define | DEBUG_I2C2_SMBUS_TIMEOUT 0x00010000
#define | DEBUG_I2C3_SMBUS_TIMEOUT 0x80000000
#define | DEBUG_CAN1_PAUSE 0x00004000

Detailed Description

Macro Definition Documentation

◆ DEBUG_CAN1_PAUSE

#define DEBUG_CAN1_PAUSE 0x00004000

debug can1 pause

Definition at line 72 of file at32f403_debug.h.

◆ DEBUG_DEEPSLEEP

#define DEBUG_DEEPSLEEP 0x00000002

debug deepsleep mode

Definition at line 50 of file at32f403_debug.h.

◆ DEBUG_I2C1_SMBUS_TIMEOUT

#define DEBUG_I2C1_SMBUS_TIMEOUT 0x00008000

debug i2c1 smbus timeout

Definition at line 69 of file at32f403_debug.h.

◆ DEBUG_I2C2_SMBUS_TIMEOUT

#define DEBUG_I2C2_SMBUS_TIMEOUT 0x00010000

debug i2c2 smbus timeout

Definition at line 70 of file at32f403_debug.h.

◆ DEBUG_I2C3_SMBUS_TIMEOUT

#define DEBUG_I2C3_SMBUS_TIMEOUT 0x80000000

debug i2c3 smbus timeout

Definition at line 71 of file at32f403_debug.h.

◆ DEBUG_SLEEP

#define DEBUG_SLEEP 0x00000001

debug sleep mode

Definition at line 49 of file at32f403_debug.h.

◆ DEBUG_STANDBY

#define DEBUG_STANDBY 0x00000004

debug standby mode

Definition at line 51 of file at32f403_debug.h.

◆ DEBUG_TMR10_PAUSE

#define DEBUG_TMR10_PAUSE 0x20000000

debug timer10 pause

Definition at line 63 of file at32f403_debug.h.

◆ DEBUG_TMR11_PAUSE

#define DEBUG_TMR11_PAUSE 0x40000000

debug timer11 pause

Definition at line 64 of file at32f403_debug.h.

◆ DEBUG_TMR12_PAUSE

#define DEBUG_TMR12_PAUSE 0x02000000

debug timer12 pause

Definition at line 65 of file at32f403_debug.h.

◆ DEBUG_TMR13_PAUSE

#define DEBUG_TMR13_PAUSE 0x04000000

debug timer13 pause

Definition at line 66 of file at32f403_debug.h.

◆ DEBUG_TMR14_PAUSE

#define DEBUG_TMR14_PAUSE 0x08000000

debug timer14 pause

Definition at line 67 of file at32f403_debug.h.

◆ DEBUG_TMR15_PAUSE

#define DEBUG_TMR15_PAUSE 0x00400000

debug timer14 pause

Definition at line 68 of file at32f403_debug.h.

◆ DEBUG_TMR1_PAUSE

#define DEBUG_TMR1_PAUSE 0x00000400

debug timer1 pause

Definition at line 54 of file at32f403_debug.h.

◆ DEBUG_TMR2_PAUSE

#define DEBUG_TMR2_PAUSE 0x00000800

debug timer2 pause

Definition at line 55 of file at32f403_debug.h.

◆ DEBUG_TMR3_PAUSE

#define DEBUG_TMR3_PAUSE 0x00001000

debug timer3 pause

Definition at line 56 of file at32f403_debug.h.

◆ DEBUG_TMR4_PAUSE

#define DEBUG_TMR4_PAUSE 0x00002000

debug timer4 pause

Definition at line 57 of file at32f403_debug.h.

◆ DEBUG_TMR5_PAUSE

#define DEBUG_TMR5_PAUSE 0x00040000

debug timer5 pause

Definition at line 58 of file at32f403_debug.h.

◆ DEBUG_TMR6_PAUSE

#define DEBUG_TMR6_PAUSE 0x00080000

debug timer6 pause

Definition at line 59 of file at32f403_debug.h.

◆ DEBUG_TMR7_PAUSE

#define DEBUG_TMR7_PAUSE 0x00100000

debug timer7 pause

Definition at line 60 of file at32f403_debug.h.

◆ DEBUG_TMR8_PAUSE

#define DEBUG_TMR8_PAUSE 0x00020000

debug timer8 pause

Definition at line 61 of file at32f403_debug.h.

◆ DEBUG_TMR9_PAUSE

#define DEBUG_TMR9_PAUSE 0x10000000

debug timer9 pause

Definition at line 62 of file at32f403_debug.h.

◆ DEBUG_WDT_PAUSE

#define DEBUG_WDT_PAUSE 0x00000100

debug watchdog timer pause

Definition at line 52 of file at32f403_debug.h.

◆ DEBUG_WWDT_PAUSE

#define DEBUG_WWDT_PAUSE 0x00000200

debug window watchdog timer pause

Definition at line 53 of file at32f403_debug.h.


AT32F403 Firmwary Library: DEBUG_exported_types

Data Structures
DEBUG_exported_types
AT32F403_periph_driver » DEBUG

Data Structures

struct debug_type
type define debug register all More...

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: debug_type Struct Reference

Data Fields
debug_type Struct Reference
AT32F403_periph_driver » DEBUG » DEBUG_exported_types

type define debug register all More...

#include <at32f403_debug.h>

Data Fields

union {
__IO uint32_t pid
struct {
__IO uint32_t pid: 32
} idcode_bit
};
debug idcode register, offset:0x00 More...
union {
__IO uint32_t ctrl
struct {
__IO uint32_t sleep_debug: 1
__IO uint32_t deepsleep_debug: 1
__IO uint32_t standby_debug: 1
__IO uint32_t reserved1: 2
__IO uint32_t trace_ioen: 1
__IO uint32_t trace_mode: 2
__IO uint32_t wdt_pause: 1
__IO uint32_t wwdt_pause: 1
__IO uint32_t tmr1_pause: 1
__IO uint32_t tmr2_pause: 1
__IO uint32_t tmr3_pause: 1
__IO uint32_t tmr4_pause: 1
__IO uint32_t can1_pause: 1
__IO uint32_t i2c1_smbus_timeout: 1
__IO uint32_t i2c2_smbus_timeout: 1
__IO uint32_t tim8_pause: 1
__IO uint32_t tmr5_pause: 1
__IO uint32_t tmr6_pause: 1
__IO uint32_t tmr7_pause: 1
__IO uint32_t reserved2: 1
__IO uint32_t tmr15_pause: 1
__IO uint32_t reserved3: 2
__IO uint32_t tmr12_pause: 1
__IO uint32_t tmr13_pause: 1
__IO uint32_t tmr14_pause: 1
__IO uint32_t tmr9_pause: 1
__IO uint32_t tmr10_pause: 1
__IO uint32_t tmr11_pause: 1
__IO uint32_t i2c3_smbus_timeout: 1
} ctrl_bit
};
debug ctrl register, offset:0x04 More...

Detailed Description

type define debug register all

Definition at line 85 of file at32f403_debug.h.

Field Documentation

◆

union { ... } debug_type::@346

debug idcode register, offset:0x00

◆

union { ... } debug_type::@348

debug ctrl register, offset:0x04

◆ can1_pause

__IO uint32_t debug_type::can1_pause

Definition at line 119 of file at32f403_debug.h.

◆ ctrl

__IO uint32_t debug_type::ctrl

Definition at line 104 of file at32f403_debug.h.

◆

struct { ... } debug_type::ctrl_bit

◆ deepsleep_debug

__IO uint32_t debug_type::deepsleep_debug

Definition at line 108 of file at32f403_debug.h.

◆ i2c1_smbus_timeout

__IO uint32_t debug_type::i2c1_smbus_timeout

Definition at line 120 of file at32f403_debug.h.

◆ i2c2_smbus_timeout

__IO uint32_t debug_type::i2c2_smbus_timeout

Definition at line 121 of file at32f403_debug.h.

◆ i2c3_smbus_timeout

__IO uint32_t debug_type::i2c3_smbus_timeout

Definition at line 135 of file at32f403_debug.h.

◆

struct { ... } debug_type::idcode_bit

◆ pid

__IO uint32_t debug_type::pid

Definition at line 92 of file at32f403_debug.h.

◆ reserved1

__IO uint32_t debug_type::reserved1

Definition at line 110 of file at32f403_debug.h.

◆ reserved2

__IO uint32_t debug_type::reserved2

Definition at line 126 of file at32f403_debug.h.

◆ reserved3

__IO uint32_t debug_type::reserved3

Definition at line 128 of file at32f403_debug.h.

◆ sleep_debug

__IO uint32_t debug_type::sleep_debug

Definition at line 107 of file at32f403_debug.h.

◆ standby_debug

__IO uint32_t debug_type::standby_debug

Definition at line 109 of file at32f403_debug.h.

◆ tim8_pause

__IO uint32_t debug_type::tim8_pause

Definition at line 122 of file at32f403_debug.h.

◆ tmr10_pause

__IO uint32_t debug_type::tmr10_pause

Definition at line 133 of file at32f403_debug.h.

◆ tmr11_pause

__IO uint32_t debug_type::tmr11_pause

Definition at line 134 of file at32f403_debug.h.

◆ tmr12_pause

__IO uint32_t debug_type::tmr12_pause

Definition at line 129 of file at32f403_debug.h.

◆ tmr13_pause

__IO uint32_t debug_type::tmr13_pause

Definition at line 130 of file at32f403_debug.h.

◆ tmr14_pause

__IO uint32_t debug_type::tmr14_pause

Definition at line 131 of file at32f403_debug.h.

◆ tmr15_pause

__IO uint32_t debug_type::tmr15_pause

Definition at line 127 of file at32f403_debug.h.

◆ tmr1_pause

__IO uint32_t debug_type::tmr1_pause

Definition at line 115 of file at32f403_debug.h.

◆ tmr2_pause

__IO uint32_t debug_type::tmr2_pause

Definition at line 116 of file at32f403_debug.h.

◆ tmr3_pause

__IO uint32_t debug_type::tmr3_pause

Definition at line 117 of file at32f403_debug.h.

◆ tmr4_pause

__IO uint32_t debug_type::tmr4_pause

Definition at line 118 of file at32f403_debug.h.

◆ tmr5_pause

__IO uint32_t debug_type::tmr5_pause

Definition at line 123 of file at32f403_debug.h.

◆ tmr6_pause

__IO uint32_t debug_type::tmr6_pause

Definition at line 124 of file at32f403_debug.h.

◆ tmr7_pause

__IO uint32_t debug_type::tmr7_pause

Definition at line 125 of file at32f403_debug.h.

◆ tmr9_pause

__IO uint32_t debug_type::tmr9_pause

Definition at line 132 of file at32f403_debug.h.

◆ trace_ioen

__IO uint32_t debug_type::trace_ioen

Definition at line 111 of file at32f403_debug.h.

◆ trace_mode

__IO uint32_t debug_type::trace_mode

Definition at line 112 of file at32f403_debug.h.

◆ wdt_pause

__IO uint32_t debug_type::wdt_pause

Definition at line 113 of file at32f403_debug.h.

◆ wwdt_pause

__IO uint32_t debug_type::wwdt_pause

Definition at line 114 of file at32f403_debug.h.

The documentation for this struct was generated from the following file:
  • at32f403_debug.h


AT32F403 Firmwary Library: DEBUG_exported_functions

Functions
DEBUG_exported_functions
AT32F403_periph_driver » DEBUG

Functions

uint32_t | debug_device_id_get (void)
get debug device id More...
void | debug_periph_mode_set (uint32_t periph_debug_mode, confirm_state new_state)
set periph debug mode More...

Detailed Description

Function Documentation

◆ debug_device_id_get()

uint32_t debug_device_id_get ( void )

get debug device id

Parameters
none
Return values
the debug device id

Definition at line 47 of file at32f403_debug.c.

◆ debug_periph_mode_set()

void debug_periph_mode_set | ( | uint32_t | periph_debug_mode,
 |  | confirm_state | new_state
 | ) |  |

set periph debug mode

Parameters
periph_debug_mode this parameter can be any combination of the following values:
  • DEBUG_SLEEP - DEBUG_DEEPSLEEP
  • DEBUG_STANDBY - DEBUG_WDT_PAUSE
  • DEBUG_WWDT_PAUSE - DEBUG_TMR1_PAUSE
  • DEBUG_TMR3_PAUSE - DEBUG_I2C1_SMBUS_TIMEOUT
  • DEBUG_I2C2_SMBUS_TIMEOUT - DEBUG_I2C3_SMBUS_TIMEOUT
  • DEBUG_TMR2_PAUSE - DEBUG_TMR4_PAUSE
  • DEBUG_CAN1_PAUSE - DEBUG_TMR8_PAUSE
  • DEBUG_TMR5_PAUSE - DEBUG_TMR6_PAUSE
  • DEBUG_TMR7_PAUSE - DEBUG_CAN2_PAUSE
  • DEBUG_TMR12_PAUSE - DEBUG_TMR13_PAUSE
  • DEBUG_TMR14_PAUSE - DEBUG_TMR9_PAUSE
  • DEBUG_TMR10_PAUSE - DEBUG_TMR11_PAUSE
new_state (TRUE or FALSE)
Return values
none

Definition at line 71 of file at32f403_debug.c.

Referenced by main().


AT32F403 Firmwary Library: DEBUG_private_functions

Functions
DEBUG_private_functions
AT32F403_periph_driver » DEBUG

Functions

uint32_t | debug_device_id_get (void)
get debug device id More...
void | debug_periph_mode_set (uint32_t periph_debug_mode, confirm_state new_state)
set periph debug mode More...

Detailed Description

Function Documentation

◆ debug_device_id_get()

uint32_t debug_device_id_get ( void )

get debug device id

Parameters
none
Return values
the debug device id

Definition at line 47 of file at32f403_debug.c.

◆ debug_periph_mode_set()

void debug_periph_mode_set | ( | uint32_t | periph_debug_mode,
 |  | confirm_state | new_state
 | ) |  |

set periph debug mode

Parameters
periph_debug_mode this parameter can be any combination of the following values:
  • DEBUG_SLEEP - DEBUG_DEEPSLEEP
  • DEBUG_STANDBY - DEBUG_WDT_PAUSE
  • DEBUG_WWDT_PAUSE - DEBUG_TMR1_PAUSE
  • DEBUG_TMR3_PAUSE - DEBUG_I2C1_SMBUS_TIMEOUT
  • DEBUG_I2C2_SMBUS_TIMEOUT - DEBUG_I2C3_SMBUS_TIMEOUT
  • DEBUG_TMR2_PAUSE - DEBUG_TMR4_PAUSE
  • DEBUG_CAN1_PAUSE - DEBUG_TMR8_PAUSE
  • DEBUG_TMR5_PAUSE - DEBUG_TMR6_PAUSE
  • DEBUG_TMR7_PAUSE - DEBUG_CAN2_PAUSE
  • DEBUG_TMR12_PAUSE - DEBUG_TMR13_PAUSE
  • DEBUG_TMR14_PAUSE - DEBUG_TMR9_PAUSE
  • DEBUG_TMR10_PAUSE - DEBUG_TMR11_PAUSE
new_state (TRUE or FALSE)
Return values
none

Definition at line 71 of file at32f403_debug.c.

Referenced by main().


AT32F403 Firmwary Library: DMA

Modules | Macros
DMA
AT32F403_periph_driver

DMA driver modules. More...

Modules

DMA_interrupts_definition
dma interrupt
DMA_flags_definition
dma flag
DMA_exported_types
DMA_exported_functions
DMA_private_functions

Macros

#define | DMA1 ((dma_type *) DMA1_BASE)
#define | DMA1_CHANNEL1 ((dma_channel_type *) DMA1_CHANNEL1_BASE)
#define | DMA1_CHANNEL2 ((dma_channel_type *) DMA1_CHANNEL2_BASE)
#define | DMA1_CHANNEL3 ((dma_channel_type *) DMA1_CHANNEL3_BASE)
#define | DMA1_CHANNEL4 ((dma_channel_type *) DMA1_CHANNEL4_BASE)
#define | DMA1_CHANNEL5 ((dma_channel_type *) DMA1_CHANNEL5_BASE)
#define | DMA1_CHANNEL6 ((dma_channel_type *) DMA1_CHANNEL6_BASE)
#define | DMA1_CHANNEL7 ((dma_channel_type *) DMA1_CHANNEL7_BASE)
#define | DMA2 ((dma_type *) DMA2_BASE)
#define | DMA2_CHANNEL1 ((dma_channel_type *) DMA2_CHANNEL1_BASE)
#define | DMA2_CHANNEL2 ((dma_channel_type *) DMA2_CHANNEL2_BASE)
#define | DMA2_CHANNEL3 ((dma_channel_type *) DMA2_CHANNEL3_BASE)
#define | DMA2_CHANNEL4 ((dma_channel_type *) DMA2_CHANNEL4_BASE)
#define | DMA2_CHANNEL5 ((dma_channel_type *) DMA2_CHANNEL5_BASE)

Detailed Description

DMA driver modules.

Macro Definition Documentation

◆ DMA1

#define DMA1 ((dma_type *) DMA1_BASE)

Definition at line 354 of file at32f403_dma.h.

◆ DMA1_CHANNEL1

#define DMA1_CHANNEL1 ((dma_channel_type *) DMA1_CHANNEL1_BASE)

Definition at line 355 of file at32f403_dma.h.

◆ DMA1_CHANNEL2

#define DMA1_CHANNEL2 ((dma_channel_type *) DMA1_CHANNEL2_BASE)

Definition at line 356 of file at32f403_dma.h.

◆ DMA1_CHANNEL3

#define DMA1_CHANNEL3 ((dma_channel_type *) DMA1_CHANNEL3_BASE)

Definition at line 357 of file at32f403_dma.h.

◆ DMA1_CHANNEL4

#define DMA1_CHANNEL4 ((dma_channel_type *) DMA1_CHANNEL4_BASE)

Definition at line 358 of file at32f403_dma.h.

◆ DMA1_CHANNEL5

#define DMA1_CHANNEL5 ((dma_channel_type *) DMA1_CHANNEL5_BASE)

Definition at line 359 of file at32f403_dma.h.

◆ DMA1_CHANNEL6

#define DMA1_CHANNEL6 ((dma_channel_type *) DMA1_CHANNEL6_BASE)

Definition at line 360 of file at32f403_dma.h.

◆ DMA1_CHANNEL7

#define DMA1_CHANNEL7 ((dma_channel_type *) DMA1_CHANNEL7_BASE)

Definition at line 361 of file at32f403_dma.h.

◆ DMA2

#define DMA2 ((dma_type *) DMA2_BASE)

Definition at line 363 of file at32f403_dma.h.

◆ DMA2_CHANNEL1

#define DMA2_CHANNEL1 ((dma_channel_type *) DMA2_CHANNEL1_BASE)

Definition at line 364 of file at32f403_dma.h.

◆ DMA2_CHANNEL2

#define DMA2_CHANNEL2 ((dma_channel_type *) DMA2_CHANNEL2_BASE)

Definition at line 365 of file at32f403_dma.h.

◆ DMA2_CHANNEL3

#define DMA2_CHANNEL3 ((dma_channel_type *) DMA2_CHANNEL3_BASE)

Definition at line 366 of file at32f403_dma.h.

◆ DMA2_CHANNEL4

#define DMA2_CHANNEL4 ((dma_channel_type *) DMA2_CHANNEL4_BASE)

Definition at line 367 of file at32f403_dma.h.

◆ DMA2_CHANNEL5

#define DMA2_CHANNEL5 ((dma_channel_type *) DMA2_CHANNEL5_BASE)

Definition at line 368 of file at32f403_dma.h.


AT32F403 Firmwary Library: DMA_interrupts_definition

Macros
DMA_interrupts_definition
AT32F403_periph_driver » DMA

dma interrupt More...

Macros

#define | DMA_FDT_INT ((uint32_t)0x00000002)
#define | DMA_HDT_INT ((uint32_t)0x00000004)
#define | DMA_DTERR_INT ((uint32_t)0x00000008)

Detailed Description

dma interrupt

Macro Definition Documentation

◆ DMA_DTERR_INT

#define DMA_DTERR_INT ((uint32_t)0x00000008)

dma errorr interrupt

Definition at line 52 of file at32f403_dma.h.

◆ DMA_FDT_INT

#define DMA_FDT_INT ((uint32_t)0x00000002)

dma full data transfer interrupt

Definition at line 50 of file at32f403_dma.h.

◆ DMA_HDT_INT

#define DMA_HDT_INT ((uint32_t)0x00000004)

dma half data transfer interrupt

Definition at line 51 of file at32f403_dma.h.


AT32F403 Firmwary Library: DMA_flags_definition

Macros
DMA_flags_definition
AT32F403_periph_driver » DMA

dma flag More...

Macros

#define | DMA1_GL1_FLAG ((uint32_t)0x00000001)
#define | DMA1_FDT1_FLAG ((uint32_t)0x00000002)
#define | DMA1_HDT1_FLAG ((uint32_t)0x00000004)
#define | DMA1_DTERR1_FLAG ((uint32_t)0x00000008)
#define | DMA1_GL2_FLAG ((uint32_t)0x00000010)
#define | DMA1_FDT2_FLAG ((uint32_t)0x00000020)
#define | DMA1_HDT2_FLAG ((uint32_t)0x00000040)
#define | DMA1_DTERR2_FLAG ((uint32_t)0x00000080)
#define | DMA1_GL3_FLAG ((uint32_t)0x00000100)
#define | DMA1_FDT3_FLAG ((uint32_t)0x00000200)
#define | DMA1_HDT3_FLAG ((uint32_t)0x00000400)
#define | DMA1_DTERR3_FLAG ((uint32_t)0x00000800)
#define | DMA1_GL4_FLAG ((uint32_t)0x00001000)
#define | DMA1_FDT4_FLAG ((uint32_t)0x00002000)
#define | DMA1_HDT4_FLAG ((uint32_t)0x00004000)
#define | DMA1_DTERR4_FLAG ((uint32_t)0x00008000)
#define | DMA1_GL5_FLAG ((uint32_t)0x00010000)
#define | DMA1_FDT5_FLAG ((uint32_t)0x00020000)
#define | DMA1_HDT5_FLAG ((uint32_t)0x00040000)
#define | DMA1_DTERR5_FLAG ((uint32_t)0x00080000)
#define | DMA1_GL6_FLAG ((uint32_t)0x00100000)
#define | DMA1_FDT6_FLAG ((uint32_t)0x00200000)
#define | DMA1_HDT6_FLAG ((uint32_t)0x00400000)
#define | DMA1_DTERR6_FLAG ((uint32_t)0x00800000)
#define | DMA1_GL7_FLAG ((uint32_t)0x01000000)
#define | DMA1_FDT7_FLAG ((uint32_t)0x02000000)
#define | DMA1_HDT7_FLAG ((uint32_t)0x04000000)
#define | DMA1_DTERR7_FLAG ((uint32_t)0x08000000)
#define | DMA2_GL1_FLAG ((uint32_t)0x10000001)
#define | DMA2_FDT1_FLAG ((uint32_t)0x10000002)
#define | DMA2_HDT1_FLAG ((uint32_t)0x10000004)
#define | DMA2_DTERR1_FLAG ((uint32_t)0x10000008)
#define | DMA2_GL2_FLAG ((uint32_t)0x10000010)
#define | DMA2_FDT2_FLAG ((uint32_t)0x10000020)
#define | DMA2_HDT2_FLAG ((uint32_t)0x10000040)
#define | DMA2_DTERR2_FLAG ((uint32_t)0x10000080)
#define | DMA2_GL3_FLAG ((uint32_t)0x10000100)
#define | DMA2_FDT3_FLAG ((uint32_t)0x10000200)
#define | DMA2_HDT3_FLAG ((uint32_t)0x10000400)
#define | DMA2_DTERR3_FLAG ((uint32_t)0x10000800)
#define | DMA2_GL4_FLAG ((uint32_t)0x10001000)
#define | DMA2_FDT4_FLAG ((uint32_t)0x10002000)
#define | DMA2_HDT4_FLAG ((uint32_t)0x10004000)
#define | DMA2_DTERR4_FLAG ((uint32_t)0x10008000)
#define | DMA2_GL5_FLAG ((uint32_t)0x10010000)
#define | DMA2_FDT5_FLAG ((uint32_t)0x10020000)
#define | DMA2_HDT5_FLAG ((uint32_t)0x10040000)
#define | DMA2_DTERR5_FLAG ((uint32_t)0x10080000)

Detailed Description

dma flag

Macro Definition Documentation

◆ DMA1_DTERR1_FLAG

#define DMA1_DTERR1_FLAG ((uint32_t)0x00000008)

dma1 channel1 error flag

Definition at line 66 of file at32f403_dma.h.

◆ DMA1_DTERR2_FLAG

#define DMA1_DTERR2_FLAG ((uint32_t)0x00000080)

dma1 channel2 error flag

Definition at line 70 of file at32f403_dma.h.

◆ DMA1_DTERR3_FLAG

#define DMA1_DTERR3_FLAG ((uint32_t)0x00000800)

dma1 channel3 error flag

Definition at line 74 of file at32f403_dma.h.

◆ DMA1_DTERR4_FLAG

#define DMA1_DTERR4_FLAG ((uint32_t)0x00008000)

dma1 channel4 error flag

Definition at line 78 of file at32f403_dma.h.

◆ DMA1_DTERR5_FLAG

#define DMA1_DTERR5_FLAG ((uint32_t)0x00080000)

dma1 channel5 error flag

Definition at line 82 of file at32f403_dma.h.

◆ DMA1_DTERR6_FLAG

#define DMA1_DTERR6_FLAG ((uint32_t)0x00800000)

dma1 channel6 error flag

Definition at line 86 of file at32f403_dma.h.

◆ DMA1_DTERR7_FLAG

#define DMA1_DTERR7_FLAG ((uint32_t)0x08000000)

dma1 channel7 error flag

Definition at line 90 of file at32f403_dma.h.

◆ DMA1_FDT1_FLAG

#define DMA1_FDT1_FLAG ((uint32_t)0x00000002)

dma1 channel1 full data transfer flag

Definition at line 64 of file at32f403_dma.h.

◆ DMA1_FDT2_FLAG

#define DMA1_FDT2_FLAG ((uint32_t)0x00000020)

dma1 channel2 full data transfer flag

Definition at line 68 of file at32f403_dma.h.

◆ DMA1_FDT3_FLAG

#define DMA1_FDT3_FLAG ((uint32_t)0x00000200)

dma1 channel3 full data transfer flag

Definition at line 72 of file at32f403_dma.h.

◆ DMA1_FDT4_FLAG

#define DMA1_FDT4_FLAG ((uint32_t)0x00002000)

dma1 channel4 full data transfer flag

Definition at line 76 of file at32f403_dma.h.

◆ DMA1_FDT5_FLAG

#define DMA1_FDT5_FLAG ((uint32_t)0x00020000)

dma1 channel5 full data transfer flag

Definition at line 80 of file at32f403_dma.h.

◆ DMA1_FDT6_FLAG

#define DMA1_FDT6_FLAG ((uint32_t)0x00200000)

dma1 channel6 full data transfer flag

Definition at line 84 of file at32f403_dma.h.

◆ DMA1_FDT7_FLAG

#define DMA1_FDT7_FLAG ((uint32_t)0x02000000)

dma1 channel7 full data transfer flag

Definition at line 88 of file at32f403_dma.h.

◆ DMA1_GL1_FLAG

#define DMA1_GL1_FLAG ((uint32_t)0x00000001)

dma1 channel1 global flag

Definition at line 63 of file at32f403_dma.h.

◆ DMA1_GL2_FLAG

#define DMA1_GL2_FLAG ((uint32_t)0x00000010)

dma1 channel2 global flag

Definition at line 67 of file at32f403_dma.h.

◆ DMA1_GL3_FLAG

#define DMA1_GL3_FLAG ((uint32_t)0x00000100)

dma1 channel3 global flag

Definition at line 71 of file at32f403_dma.h.

◆ DMA1_GL4_FLAG

#define DMA1_GL4_FLAG ((uint32_t)0x00001000)

dma1 channel4 global flag

Definition at line 75 of file at32f403_dma.h.

◆ DMA1_GL5_FLAG

#define DMA1_GL5_FLAG ((uint32_t)0x00010000)

dma1 channel5 global flag

Definition at line 79 of file at32f403_dma.h.

◆ DMA1_GL6_FLAG

#define DMA1_GL6_FLAG ((uint32_t)0x00100000)

dma1 channel6 global flag

Definition at line 83 of file at32f403_dma.h.

◆ DMA1_GL7_FLAG

#define DMA1_GL7_FLAG ((uint32_t)0x01000000)

dma1 channel7 global flag

Definition at line 87 of file at32f403_dma.h.

◆ DMA1_HDT1_FLAG

#define DMA1_HDT1_FLAG ((uint32_t)0x00000004)

dma1 channel1 half data transfer flag

Definition at line 65 of file at32f403_dma.h.

◆ DMA1_HDT2_FLAG

#define DMA1_HDT2_FLAG ((uint32_t)0x00000040)

dma1 channel2 half data transfer flag

Definition at line 69 of file at32f403_dma.h.

◆ DMA1_HDT3_FLAG

#define DMA1_HDT3_FLAG ((uint32_t)0x00000400)

dma1 channel3 half data transfer flag

Definition at line 73 of file at32f403_dma.h.

◆ DMA1_HDT4_FLAG

#define DMA1_HDT4_FLAG ((uint32_t)0x00004000)

dma1 channel4 half data transfer flag

Definition at line 77 of file at32f403_dma.h.

◆ DMA1_HDT5_FLAG

#define DMA1_HDT5_FLAG ((uint32_t)0x00040000)

dma1 channel5 half data transfer flag

Definition at line 81 of file at32f403_dma.h.

◆ DMA1_HDT6_FLAG

#define DMA1_HDT6_FLAG ((uint32_t)0x00400000)

dma1 channel6 half data transfer flag

Definition at line 85 of file at32f403_dma.h.

◆ DMA1_HDT7_FLAG

#define DMA1_HDT7_FLAG ((uint32_t)0x04000000)

dma1 channel7 half data transfer flag

Definition at line 89 of file at32f403_dma.h.

◆ DMA2_DTERR1_FLAG

#define DMA2_DTERR1_FLAG ((uint32_t)0x10000008)

dma2 channel1 error flag

Definition at line 95 of file at32f403_dma.h.

◆ DMA2_DTERR2_FLAG

#define DMA2_DTERR2_FLAG ((uint32_t)0x10000080)

dma2 channel2 error flag

Definition at line 99 of file at32f403_dma.h.

◆ DMA2_DTERR3_FLAG

#define DMA2_DTERR3_FLAG ((uint32_t)0x10000800)

dma2 channel3 error flag

Definition at line 103 of file at32f403_dma.h.

◆ DMA2_DTERR4_FLAG

#define DMA2_DTERR4_FLAG ((uint32_t)0x10008000)

dma2 channel4 error flag

Definition at line 107 of file at32f403_dma.h.

◆ DMA2_DTERR5_FLAG

#define DMA2_DTERR5_FLAG ((uint32_t)0x10080000)

dma2 channel5 error flag

Definition at line 111 of file at32f403_dma.h.

◆ DMA2_FDT1_FLAG

#define DMA2_FDT1_FLAG ((uint32_t)0x10000002)

dma2 channel1 full data transfer flag

Definition at line 93 of file at32f403_dma.h.

◆ DMA2_FDT2_FLAG

#define DMA2_FDT2_FLAG ((uint32_t)0x10000020)

dma2 channel2 full data transfer flag

Definition at line 97 of file at32f403_dma.h.

◆ DMA2_FDT3_FLAG

#define DMA2_FDT3_FLAG ((uint32_t)0x10000200)

dma2 channel3 full data transfer flag

Definition at line 101 of file at32f403_dma.h.

◆ DMA2_FDT4_FLAG

#define DMA2_FDT4_FLAG ((uint32_t)0x10002000)

dma2 channel4 full data transfer flag

Definition at line 105 of file at32f403_dma.h.

◆ DMA2_FDT5_FLAG

#define DMA2_FDT5_FLAG ((uint32_t)0x10020000)

dma2 channel5 full data transfer flag

Definition at line 109 of file at32f403_dma.h.

◆ DMA2_GL1_FLAG

#define DMA2_GL1_FLAG ((uint32_t)0x10000001)

dma2 channel1 global flag

Definition at line 92 of file at32f403_dma.h.

◆ DMA2_GL2_FLAG

#define DMA2_GL2_FLAG ((uint32_t)0x10000010)

dma2 channel2 global flag

Definition at line 96 of file at32f403_dma.h.

◆ DMA2_GL3_FLAG

#define DMA2_GL3_FLAG ((uint32_t)0x10000100)

dma2 channel3 global flag

Definition at line 100 of file at32f403_dma.h.

◆ DMA2_GL4_FLAG

#define DMA2_GL4_FLAG ((uint32_t)0x10001000)

dma2 channel4 global flag

Definition at line 104 of file at32f403_dma.h.

◆ DMA2_GL5_FLAG

#define DMA2_GL5_FLAG ((uint32_t)0x10010000)

dma2 channel5 global flag

Definition at line 108 of file at32f403_dma.h.

◆ DMA2_HDT1_FLAG

#define DMA2_HDT1_FLAG ((uint32_t)0x10000004)

dma2 channel1 half data transfer flag

Definition at line 94 of file at32f403_dma.h.

◆ DMA2_HDT2_FLAG

#define DMA2_HDT2_FLAG ((uint32_t)0x10000040)

dma2 channel2 half data transfer flag

Definition at line 98 of file at32f403_dma.h.

◆ DMA2_HDT3_FLAG

#define DMA2_HDT3_FLAG ((uint32_t)0x10000400)

dma2 channel3 half data transfer flag

Definition at line 102 of file at32f403_dma.h.

◆ DMA2_HDT4_FLAG

#define DMA2_HDT4_FLAG ((uint32_t)0x10004000)

dma2 channel4 half data transfer flag

Definition at line 106 of file at32f403_dma.h.

◆ DMA2_HDT5_FLAG

#define DMA2_HDT5_FLAG ((uint32_t)0x10040000)

dma2 channel5 half data transfer flag

Definition at line 110 of file at32f403_dma.h.


AT32F403 Firmwary Library: DMA_exported_types

Data Structures | Enumerations
DMA_exported_types
AT32F403_periph_driver » DMA

Data Structures

struct | dma_init_type
dma init type More...
struct | dma_type
type define dma register More...
struct | dma_channel_type
type define dma channel register all More...

Enumerations

enum | dma_dir_type { DMA_DIR_PERIPHERAL_TO_MEMORY = 0x0000 , DMA_DIR_MEMORY_TO_PERIPHERAL = 0x0010 , DMA_DIR_MEMORY_TO_MEMORY = 0x4000 }
dma direction type More...
enum | dma_peripheral_inc_type { DMA_PERIPHERAL_INC_DISABLE = 0x00 , DMA_PERIPHERAL_INC_ENABLE = 0x01 }
dma peripheral incremented type More...
enum | dma_memory_inc_type { DMA_MEMORY_INC_DISABLE = 0x00 , DMA_MEMORY_INC_ENABLE = 0x01 }
dma memory incremented type More...
enum | dma_peripheral_data_size_type { DMA_PERIPHERAL_DATA_WIDTH_BYTE = 0x00 , DMA_PERIPHERAL_DATA_WIDTH_HALFWORD = 0x01 , DMA_PERIPHERAL_DATA_WIDTH_WORD = 0x02 }
dma peripheral data size type More...
enum | dma_memory_data_size_type { DMA_MEMORY_DATA_WIDTH_BYTE = 0x00 , DMA_MEMORY_DATA_WIDTH_HALFWORD = 0x01 , DMA_MEMORY_DATA_WIDTH_WORD = 0x02 }
dma memory data size type More...
enum | dma_priority_level_type { DMA_PRIORITY_LOW = 0x00 , DMA_PRIORITY_MEDIUM = 0x01 , DMA_PRIORITY_HIGH = 0x02 , DMA_PRIORITY_VERY_HIGH = 0x03 }
dma priority level type More...

Detailed Description

Enumeration Type Documentation

◆ dma_dir_type

enum dma_dir_type

dma direction type

Enumerator
DMA_DIR_PERIPHERAL_TO_MEMORY | dma data transfer direction:peripheral to memory
DMA_DIR_MEMORY_TO_PERIPHERAL | dma data transfer direction:memory to peripheral
DMA_DIR_MEMORY_TO_MEMORY | dma data transfer direction:memory to memory

Definition at line 124 of file at32f403_dma.h.

◆ dma_memory_data_size_type

enum dma_memory_data_size_type

dma memory data size type

Enumerator
DMA_MEMORY_DATA_WIDTH_BYTE | dma memory databus width 8bit
DMA_MEMORY_DATA_WIDTH_HALFWORD | dma memory databus width 16bit
DMA_MEMORY_DATA_WIDTH_WORD | dma memory databus width 32bit

Definition at line 162 of file at32f403_dma.h.

◆ dma_memory_inc_type

enum dma_memory_inc_type

dma memory incremented type

Enumerator
DMA_MEMORY_INC_DISABLE | dma memory increment mode disable
DMA_MEMORY_INC_ENABLE | dma memory increment mode enable

Definition at line 143 of file at32f403_dma.h.

◆ dma_peripheral_data_size_type

enum dma_peripheral_data_size_type

dma peripheral data size type

Enumerator
DMA_PERIPHERAL_DATA_WIDTH_BYTE | dma peripheral databus width 8bit
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD | dma peripheral databus width 16bit
DMA_PERIPHERAL_DATA_WIDTH_WORD | dma peripheral databus width 32bit

Definition at line 152 of file at32f403_dma.h.

◆ dma_peripheral_inc_type

enum dma_peripheral_inc_type

dma peripheral incremented type

Enumerator
DMA_PERIPHERAL_INC_DISABLE | dma peripheral increment mode disable
DMA_PERIPHERAL_INC_ENABLE | dma peripheral increment mode enable

Definition at line 134 of file at32f403_dma.h.

◆ dma_priority_level_type

enum dma_priority_level_type

dma priority level type

Enumerator
DMA_PRIORITY_LOW | dma channel priority: low
DMA_PRIORITY_MEDIUM | dma channel priority: mediue
DMA_PRIORITY_HIGH | dma channel priority: high
DMA_PRIORITY_VERY_HIGH | dma channel priority: very high

Definition at line 172 of file at32f403_dma.h.


AT32F403 Firmwary Library: dma_init_type Struct Reference

Data Fields
dma_init_type Struct Reference
AT32F403_periph_driver » DMA » DMA_exported_types

dma init type More...

#include <at32f403_dma.h>

Data Fields

uint32_t | peripheral_base_addr
uint32_t | memory_base_addr
dma_dir_type direction
uint16_t | buffer_size
confirm_state peripheral_inc_enable
confirm_state memory_inc_enable
dma_peripheral_data_size_type peripheral_data_width
dma_memory_data_size_type memory_data_width
confirm_state loop_mode_enable
dma_priority_level_type priority

Detailed Description

dma init type

Definition at line 183 of file at32f403_dma.h.

Field Documentation

◆ buffer_size

uint16_t dma_init_type::buffer_size

counter to transfer

Definition at line 188 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_dma_config(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ direction

dma_dir_type dma_init_type::direction

dma transmit direction, peripheral as source or as destnation

Definition at line 187 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_dma_config(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ loop_mode_enable

confirm_state dma_init_type::loop_mode_enable

when circular mode enable, buffer size will reload if count to 0

Definition at line 193 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ memory_base_addr

uint32_t dma_init_type::memory_base_addr

base addrress for memory

Definition at line 186 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_dma_config(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ memory_data_width

dma_memory_data_size_type dma_init_type::memory_data_width

memory data width for transmit

Definition at line 192 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ memory_inc_enable

confirm_state dma_init_type::memory_inc_enable

memory address increment after one transmit

Definition at line 190 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ peripheral_base_addr

uint32_t dma_init_type::peripheral_base_addr

base addrress for peripheral

Definition at line 185 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_dma_config(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ peripheral_data_width

dma_peripheral_data_size_type dma_init_type::peripheral_data_width

peripheral data width for transmit

Definition at line 191 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ peripheral_inc_enable

confirm_state dma_init_type::peripheral_inc_enable

periphera address increment after one transmit

Definition at line 189 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ priority

dma_priority_level_type dma_init_type::priority

dma priority can choose from very high, high, dedium or low

Definition at line 194 of file at32f403_dma.h.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

The documentation for this struct was generated from the following file:
  • at32f403_dma.h


AT32F403 Firmwary Library: dma_type Struct Reference

Data Fields
dma_type Struct Reference
AT32F403_periph_driver » DMA » DMA_exported_types

type define dma register More...

#include <at32f403_dma.h>

Data Fields

union {
__IO uint32_t sts
struct {
__IO uint32_t gf1: 1
__IO uint32_t fdtf1: 1
__IO uint32_t hdtf1: 1
__IO uint32_t dterrf1: 1
__IO uint32_t gf2: 1
__IO uint32_t fdtf2: 1
__IO uint32_t hdtf2: 1
__IO uint32_t dterrf2: 1
__IO uint32_t gf3: 1
__IO uint32_t fdtf3: 1
__IO uint32_t hdtf3: 1
__IO uint32_t dterrf3: 1
__IO uint32_t gf4: 1
__IO uint32_t fdtf4: 1
__IO uint32_t hdtf4: 1
__IO uint32_t dterrf4: 1
__IO uint32_t gf5: 1
__IO uint32_t fdtf5: 1
__IO uint32_t hdtf5: 1
__IO uint32_t dterrf5: 1
__IO uint32_t gf6: 1
__IO uint32_t fdtf6: 1
__IO uint32_t hdtf6: 1
__IO uint32_t dterrf6: 1
__IO uint32_t gf7: 1
__IO uint32_t fdtf7: 1
__IO uint32_t hdtf7: 1
__IO uint32_t dterrf7: 1
__IO uint32_t reserved1: 4
} sts_bit
};
dma sts register, offset:0x00 More...
union {
__IO uint32_t clr
struct {
__IO uint32_t gfc1: 1
__IO uint32_t fdtfc1: 1
__IO uint32_t hdtfc1: 1
__IO uint32_t dterrfc1: 1
__IO uint32_t gfc2: 1
__IO uint32_t fdtfc2: 1
__IO uint32_t hdtfc2: 1
__IO uint32_t dterrfc2: 1
__IO uint32_t gfc3: 1
__IO uint32_t fdtfc3: 1
__IO uint32_t hdtfc3: 1
__IO uint32_t dterrfc3: 1
__IO uint32_t gfc4: 1
__IO uint32_t fdtfc4: 1
__IO uint32_t hdtfc4: 1
__IO uint32_t dterrfc4: 1
__IO uint32_t gfc5: 1
__IO uint32_t fdtfc5: 1
__IO uint32_t hdtfc5: 1
__IO uint32_t dterrfc5: 1
__IO uint32_t gfc6: 1
__IO uint32_t fdtfc6: 1
__IO uint32_t hdtfc6: 1
__IO uint32_t dterrfc6: 1
__IO uint32_t gfc7: 1
__IO uint32_t fdtfc7: 1
__IO uint32_t hdtfc7: 1
__IO uint32_t dterrfc7: 1
__IO uint32_t reserved1: 4
} clr_bit
};
dma clr register, offset:0x04 More...

Detailed Description

type define dma register

Definition at line 200 of file at32f403_dma.h.

Field Documentation

◆

union { ... } dma_type::@352

dma sts register, offset:0x00

◆

union { ... } dma_type::@354

dma clr register, offset:0x04

◆ clr

__IO uint32_t dma_type::clr

Definition at line 247 of file at32f403_dma.h.

◆

struct { ... } dma_type::clr_bit

◆ dterrf1

__IO uint32_t dma_type::dterrf1

Definition at line 213 of file at32f403_dma.h.

◆ dterrf2

__IO uint32_t dma_type::dterrf2

Definition at line 217 of file at32f403_dma.h.

◆ dterrf3

__IO uint32_t dma_type::dterrf3

Definition at line 221 of file at32f403_dma.h.

◆ dterrf4

__IO uint32_t dma_type::dterrf4

Definition at line 225 of file at32f403_dma.h.

◆ dterrf5

__IO uint32_t dma_type::dterrf5

Definition at line 229 of file at32f403_dma.h.

◆ dterrf6

__IO uint32_t dma_type::dterrf6

Definition at line 233 of file at32f403_dma.h.

◆ dterrf7

__IO uint32_t dma_type::dterrf7

Definition at line 237 of file at32f403_dma.h.

◆ dterrfc1

__IO uint32_t dma_type::dterrfc1

Definition at line 253 of file at32f403_dma.h.

◆ dterrfc2

__IO uint32_t dma_type::dterrfc2

Definition at line 257 of file at32f403_dma.h.

◆ dterrfc3

__IO uint32_t dma_type::dterrfc3

Definition at line 261 of file at32f403_dma.h.

◆ dterrfc4

__IO uint32_t dma_type::dterrfc4

Definition at line 265 of file at32f403_dma.h.

◆ dterrfc5

__IO uint32_t dma_type::dterrfc5

Definition at line 269 of file at32f403_dma.h.

◆ dterrfc6

__IO uint32_t dma_type::dterrfc6

Definition at line 273 of file at32f403_dma.h.

◆ dterrfc7

__IO uint32_t dma_type::dterrfc7

Definition at line 277 of file at32f403_dma.h.

◆ fdtf1

__IO uint32_t dma_type::fdtf1

Definition at line 211 of file at32f403_dma.h.

◆ fdtf2

__IO uint32_t dma_type::fdtf2

Definition at line 215 of file at32f403_dma.h.

◆ fdtf3

__IO uint32_t dma_type::fdtf3

Definition at line 219 of file at32f403_dma.h.

◆ fdtf4

__IO uint32_t dma_type::fdtf4

Definition at line 223 of file at32f403_dma.h.

◆ fdtf5

__IO uint32_t dma_type::fdtf5

Definition at line 227 of file at32f403_dma.h.

◆ fdtf6

__IO uint32_t dma_type::fdtf6

Definition at line 231 of file at32f403_dma.h.

◆ fdtf7

__IO uint32_t dma_type::fdtf7

Definition at line 235 of file at32f403_dma.h.

◆ fdtfc1

__IO uint32_t dma_type::fdtfc1

Definition at line 251 of file at32f403_dma.h.

◆ fdtfc2

__IO uint32_t dma_type::fdtfc2

Definition at line 255 of file at32f403_dma.h.

◆ fdtfc3

__IO uint32_t dma_type::fdtfc3

Definition at line 259 of file at32f403_dma.h.

◆ fdtfc4

__IO uint32_t dma_type::fdtfc4

Definition at line 263 of file at32f403_dma.h.

◆ fdtfc5

__IO uint32_t dma_type::fdtfc5

Definition at line 267 of file at32f403_dma.h.

◆ fdtfc6

__IO uint32_t dma_type::fdtfc6

Definition at line 271 of file at32f403_dma.h.

◆ fdtfc7

__IO uint32_t dma_type::fdtfc7

Definition at line 275 of file at32f403_dma.h.

◆ gf1

__IO uint32_t dma_type::gf1

Definition at line 210 of file at32f403_dma.h.

◆ gf2

__IO uint32_t dma_type::gf2

Definition at line 214 of file at32f403_dma.h.

◆ gf3

__IO uint32_t dma_type::gf3

Definition at line 218 of file at32f403_dma.h.

◆ gf4

__IO uint32_t dma_type::gf4

Definition at line 222 of file at32f403_dma.h.

◆ gf5

__IO uint32_t dma_type::gf5

Definition at line 226 of file at32f403_dma.h.

◆ gf6

__IO uint32_t dma_type::gf6

Definition at line 230 of file at32f403_dma.h.

◆ gf7

__IO uint32_t dma_type::gf7

Definition at line 234 of file at32f403_dma.h.

◆ gfc1

__IO uint32_t dma_type::gfc1

Definition at line 250 of file at32f403_dma.h.

◆ gfc2

__IO uint32_t dma_type::gfc2

Definition at line 254 of file at32f403_dma.h.

◆ gfc3

__IO uint32_t dma_type::gfc3

Definition at line 258 of file at32f403_dma.h.

◆ gfc4

__IO uint32_t dma_type::gfc4

Definition at line 262 of file at32f403_dma.h.

◆ gfc5

__IO uint32_t dma_type::gfc5

Definition at line 266 of file at32f403_dma.h.

◆ gfc6

__IO uint32_t dma_type::gfc6

Definition at line 270 of file at32f403_dma.h.

◆ gfc7

__IO uint32_t dma_type::gfc7

Definition at line 274 of file at32f403_dma.h.

◆ hdtf1

__IO uint32_t dma_type::hdtf1

Definition at line 212 of file at32f403_dma.h.

◆ hdtf2

__IO uint32_t dma_type::hdtf2

Definition at line 216 of file at32f403_dma.h.

◆ hdtf3

__IO uint32_t dma_type::hdtf3

Definition at line 220 of file at32f403_dma.h.

◆ hdtf4

__IO uint32_t dma_type::hdtf4

Definition at line 224 of file at32f403_dma.h.

◆ hdtf5

__IO uint32_t dma_type::hdtf5

Definition at line 228 of file at32f403_dma.h.

◆ hdtf6

__IO uint32_t dma_type::hdtf6

Definition at line 232 of file at32f403_dma.h.

◆ hdtf7

__IO uint32_t dma_type::hdtf7

Definition at line 236 of file at32f403_dma.h.

◆ hdtfc1

__IO uint32_t dma_type::hdtfc1

Definition at line 252 of file at32f403_dma.h.

◆ hdtfc2

__IO uint32_t dma_type::hdtfc2

Definition at line 256 of file at32f403_dma.h.

◆ hdtfc3

__IO uint32_t dma_type::hdtfc3

Definition at line 260 of file at32f403_dma.h.

◆ hdtfc4

__IO uint32_t dma_type::hdtfc4

Definition at line 264 of file at32f403_dma.h.

◆ hdtfc5

__IO uint32_t dma_type::hdtfc5

Definition at line 268 of file at32f403_dma.h.

◆ hdtfc6

__IO uint32_t dma_type::hdtfc6

Definition at line 272 of file at32f403_dma.h.

◆ hdtfc7

__IO uint32_t dma_type::hdtfc7

Definition at line 276 of file at32f403_dma.h.

◆ reserved1

__IO uint32_t dma_type::reserved1

Definition at line 238 of file at32f403_dma.h.

◆ sts

__IO uint32_t dma_type::sts

Definition at line 207 of file at32f403_dma.h.

◆

struct { ... } dma_type::sts_bit
The documentation for this struct was generated from the following file:
  • at32f403_dma.h


AT32F403 Firmwary Library: dma_channel_type Struct Reference

Data Fields
dma_channel_type Struct Reference
AT32F403_periph_driver » DMA » DMA_exported_types

type define dma channel register all More...

#include <at32f403_dma.h>

Data Fields

union {
__IO uint32_t ctrl
struct {
__IO uint32_t chen: 1
__IO uint32_t fdtien: 1
__IO uint32_t hdtien: 1
__IO uint32_t dterrien: 1
__IO uint32_t dtd: 1
__IO uint32_t lm: 1
__IO uint32_t pincm: 1
__IO uint32_t mincm: 1
__IO uint32_t pwidth: 2
__IO uint32_t mwidth: 2
__IO uint32_t chpl: 2
__IO uint32_t m2m: 1
__IO uint32_t reserved1: 17
} ctrl_bit
};
dma ctrl register, offset:0x08+20*(x-1) x=1...7 More...
union {
__IO uint32_t dtcnt
struct {
__IO uint32_t cnt: 16
__IO uint32_t reserved1: 16
} dtcnt_bit
};
dma dtcnt register, offset:0x0C+20*(x-1) x=1...7 More...
union {
__IO uint32_t paddr
struct {
__IO uint32_t paddr: 32
} paddr_bit
};
dma cpba register, offset:0x10+20*(x-1) x=1...7 More...
union {
__IO uint32_t maddr
struct {
__IO uint32_t maddr: 32
} maddr_bit
};
dma cmba register, offset:0x14+20*(x-1) x=1...7 More...

Detailed Description

type define dma channel register all

Definition at line 286 of file at32f403_dma.h.

Field Documentation

◆

union { ... } dma_channel_type::@358

dma ctrl register, offset:0x08+20*(x-1) x=1...7

◆

union { ... } dma_channel_type::@360

dma dtcnt register, offset:0x0C+20*(x-1) x=1...7

◆

union { ... } dma_channel_type::@362

dma cpba register, offset:0x10+20*(x-1) x=1...7

◆

union { ... } dma_channel_type::@364

dma cmba register, offset:0x14+20*(x-1) x=1...7

◆ chen

__IO uint32_t dma_channel_type::chen

Definition at line 296 of file at32f403_dma.h.

Referenced by dma_channel_enable(), and dma_reset().

◆ chpl

__IO uint32_t dma_channel_type::chpl

Definition at line 306 of file at32f403_dma.h.

Referenced by dma_init().

◆ cnt

__IO uint32_t dma_channel_type::cnt

Definition at line 320 of file at32f403_dma.h.

◆ ctrl

__IO uint32_t dma_channel_type::ctrl

Definition at line 293 of file at32f403_dma.h.

Referenced by dma_init(), dma_interrupt_enable(), and dma_reset().

◆

struct { ... } dma_channel_type::ctrl_bit

Referenced by dma_channel_enable(), dma_init(), and dma_reset().

◆ dtcnt

__IO uint32_t dma_channel_type::dtcnt

Definition at line 317 of file at32f403_dma.h.

Referenced by dma_data_number_get(), dma_data_number_set(), dma_init(), and dma_reset().

◆

struct { ... } dma_channel_type::dtcnt_bit

◆ dtd

__IO uint32_t dma_channel_type::dtd

Definition at line 300 of file at32f403_dma.h.

◆ dterrien

__IO uint32_t dma_channel_type::dterrien

Definition at line 299 of file at32f403_dma.h.

◆ fdtien

__IO uint32_t dma_channel_type::fdtien

Definition at line 297 of file at32f403_dma.h.

◆ hdtien

__IO uint32_t dma_channel_type::hdtien

Definition at line 298 of file at32f403_dma.h.

◆ lm

__IO uint32_t dma_channel_type::lm

Definition at line 301 of file at32f403_dma.h.

Referenced by dma_init().

◆ m2m

__IO uint32_t dma_channel_type::m2m

Definition at line 307 of file at32f403_dma.h.

◆ maddr

__IO uint32_t dma_channel_type::maddr

Definition at line 342 of file at32f403_dma.h.

Referenced by dma_init(), and dma_reset().

◆

struct { ... } dma_channel_type::maddr_bit

◆ mincm

__IO uint32_t dma_channel_type::mincm

Definition at line 303 of file at32f403_dma.h.

Referenced by dma_init().

◆ mwidth

__IO uint32_t dma_channel_type::mwidth

Definition at line 305 of file at32f403_dma.h.

Referenced by dma_init().

◆ paddr

__IO uint32_t dma_channel_type::paddr

Definition at line 330 of file at32f403_dma.h.

Referenced by dma_init(), and dma_reset().

◆

struct { ... } dma_channel_type::paddr_bit

◆ pincm

__IO uint32_t dma_channel_type::pincm

Definition at line 302 of file at32f403_dma.h.

Referenced by dma_init().

◆ pwidth

__IO uint32_t dma_channel_type::pwidth

Definition at line 304 of file at32f403_dma.h.

Referenced by dma_init().

◆ reserved1

__IO uint32_t dma_channel_type::reserved1

Definition at line 308 of file at32f403_dma.h.

The documentation for this struct was generated from the following file:
  • at32f403_dma.h


AT32F403 Firmwary Library: DMA_exported_functions

Functions
DMA_exported_functions
AT32F403_periph_driver » DMA

Functions

void | dma_reset (dma_channel_type *dmax_channely)
reset the dmax channely registers. More...
void | dma_data_number_set (dma_channel_type *dmax_channely, uint16_t data_number)
set the number of data to be transferred More...
uint16_t | dma_data_number_get (dma_channel_type *dmax_channely)
get number of data from dtcnt register More...
void | dma_interrupt_enable (dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt More...
void | dma_channel_enable (dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely More...
flag_status | dma_flag_get (uint32_t dmax_flag)
get dma flag More...
void | dma_flag_clear (uint32_t dmax_flag)
clear dma flag More...
void | dma_default_para_init (dma_init_type *dma_init_struct)
dma init config with its default value. More...
void | dma_init (dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init More...

Detailed Description

Function Documentation

◆ dma_channel_enable()

void dma_channel_enable | ( | dma_channel_type * | dmax_channely,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma channely

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
new_state (TRUE or FALSE)
Return values
None

Definition at line 186 of file at32f403_dma.c.

Referenced by codec_i2s_init(), codec_i2s_reset(), DMA1_Channel2_IRQHandler(), DMA1_Channel3_IRQHandler(), DMA1_Channel6_IRQHandler(), DMA1_Channel7_IRQHandler(), dma_config(), dma_configuration(), i2c_dma_config(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), and spi_bytes_write().

◆ dma_data_number_get()

uint16_t dma_data_number_get ( dma_channel_type * dmax_channely )

get number of data from dtcnt register

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
Return values
the number of data.

Definition at line 126 of file at32f403_dma.c.

◆ dma_data_number_set()

void dma_data_number_set | ( | dma_channel_type * | dmax_channely,
 |  | uint16_t | data_number
 | ) |  |

set the number of data to be transferred

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
data_number the number of data to be transferred(0x0000~0xFFFF) transfer.
Return values
none.

Definition at line 103 of file at32f403_dma.c.

◆ dma_default_para_init()

void dma_default_para_init ( dma_init_type * dma_init_struct )

dma init config with its default value.

Parameters
dma_init_struct : pointer to a dma_init_type structure which will be initialized.
Return values
none

Definition at line 271 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_lowlevel_init(), i2s_config(), main(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ dma_flag_clear()

void dma_flag_clear ( uint32_t dmax_flag )

clear dma flag

Parameters
dmax_flag this parameter can be one of the following values:
  • DMA1_GL1_FLAG - DMA1_FDT1_FLAG - DMA1_HDT1_FLAG - DMA1_DTERR1_FLAG
  • DMA1_GL2_FLAG - DMA1_FDT2_FLAG - DMA1_HDT2_FLAG - DMA1_DTERR2_FLAG
  • DMA1_GL3_FLAG - DMA1_FDT3_FLAG - DMA1_HDT3_FLAG - DMA1_DTERR3_FLAG
  • DMA1_GL4_FLAG - DMA1_FDT4_FLAG - DMA1_HDT4_FLAG - DMA1_DTERR4_FLAG
  • DMA1_GL5_FLAG - DMA1_FDT5_FLAG - DMA1_HDT5_FLAG - DMA1_DTERR5_FLAG
  • DMA1_GL6_FLAG - DMA1_FDT6_FLAG - DMA1_HDT6_FLAG - DMA1_DTERR6_FLAG
  • DMA1_GL7_FLAG - DMA1_FDT7_FLAG - DMA1_HDT7_FLAG - DMA1_DTERR7_FLAG
  • DMA2_GL1_FLAG - DMA2_FDT1_FLAG - DMA2_HDT1_FLAG - DMA2_DTERR1_FLAG
  • DMA2_GL2_FLAG - DMA2_FDT2_FLAG - DMA2_HDT2_FLAG - DMA2_DTERR2_FLAG
  • DMA2_GL3_FLAG - DMA2_FDT3_FLAG - DMA2_HDT3_FLAG - DMA2_DTERR3_FLAG
  • DMA2_GL4_FLAG - DMA2_FDT4_FLAG - DMA2_HDT4_FLAG - DMA2_DTERR4_FLAG
  • DMA2_GL5_FLAG - DMA2_FDT5_FLAG - DMA2_HDT5_FLAG - DMA2_DTERR5_FLAG
Return values
none

Definition at line 253 of file at32f403_dma.c.

Referenced by DMA1_Channel1_IRQHandler(), DMA1_Channel2_IRQHandler(), DMA1_Channel3_IRQHandler(), DMA1_Channel4_IRQHandler(), DMA1_Channel6_IRQHandler(), DMA1_Channel7_IRQHandler(), DMA2_Channel4_5_IRQHandler(), i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), main(), Read_Sector(), spi_bytes_read(), spi_bytes_write(), and Write_Sector().

◆ dma_flag_get()

flag_status dma_flag_get ( uint32_t dmax_flag )

get dma flag

Parameters
dmax_flag this parameter can be one of the following values:
  • DMA1_GL1_FLAG - DMA1_FDT1_FLAG - DMA1_HDT1_FLAG - DMA1_DTERR1_FLAG
  • DMA1_GL2_FLAG - DMA1_FDT2_FLAG - DMA1_HDT2_FLAG - DMA1_DTERR2_FLAG
  • DMA1_GL3_FLAG - DMA1_FDT3_FLAG - DMA1_HDT3_FLAG - DMA1_DTERR3_FLAG
  • DMA1_GL4_FLAG - DMA1_FDT4_FLAG - DMA1_HDT4_FLAG - DMA1_DTERR4_FLAG
  • DMA1_GL5_FLAG - DMA1_FDT5_FLAG - DMA1_HDT5_FLAG - DMA1_DTERR5_FLAG
  • DMA1_GL6_FLAG - DMA1_FDT6_FLAG - DMA1_HDT6_FLAG - DMA1_DTERR6_FLAG
  • DMA1_GL7_FLAG - DMA1_FDT7_FLAG - DMA1_HDT7_FLAG - DMA1_DTERR7_FLAG
  • DMA2_GL1_FLAG - DMA2_FDT1_FLAG - DMA2_HDT1_FLAG - DMA2_DTERR1_FLAG
  • DMA2_GL2_FLAG - DMA2_FDT2_FLAG - DMA2_HDT2_FLAG - DMA2_DTERR2_FLAG
  • DMA2_GL3_FLAG - DMA2_FDT3_FLAG - DMA2_HDT3_FLAG - DMA2_DTERR3_FLAG
  • DMA2_GL4_FLAG - DMA2_FDT4_FLAG - DMA2_HDT4_FLAG - DMA2_DTERR4_FLAG
  • DMA2_GL5_FLAG - DMA2_FDT5_FLAG - DMA2_HDT5_FLAG - DMA2_DTERR5_FLAG
Return values
state of dma flag

Definition at line 209 of file at32f403_dma.c.

Referenced by DMA1_Channel1_IRQHandler(), DMA1_Channel2_IRQHandler(), DMA1_Channel3_IRQHandler(), DMA1_Channel4_IRQHandler(), DMA1_Channel6_IRQHandler(), DMA1_Channel7_IRQHandler(), DMA2_Channel4_5_IRQHandler(), i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), main(), Read_Sector(), spi_bytes_read(), spi_bytes_write(), and Write_Sector().

◆ dma_init()

void dma_init | ( | dma_channel_type * | dmax_channely,
 |  | dma_init_type * | dma_init_struct
 | ) |  |

dma init

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
dma_initstruct : pointer to a dma_init_type structure.
Return values
none

Definition at line 304 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_dma_config(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ dma_interrupt_enable()

void dma_interrupt_enable | ( | dma_channel_type * | dmax_channely,
 |  | uint32_t | dma_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma interrupt

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
dma_int this parameter can be any combination of the following values:
  • DMA_FDT_INT
  • DMA_HDT_INT
  • DMA_DTERR_INT
new_state (TRUE or FALSE)
Return values
none

Definition at line 155 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_dma_config(), i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), and main().

◆ dma_reset()

void dma_reset ( dma_channel_type * dmax_channely )

reset the dmax channely registers.

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
Return values
none

Definition at line 60 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().


AT32F403 Firmwary Library: DMA_private_functions

Functions
DMA_private_functions
AT32F403_periph_driver » DMA

Functions

void | dma_reset (dma_channel_type *dmax_channely)
reset the dmax channely registers. More...
void | dma_data_number_set (dma_channel_type *dmax_channely, uint16_t data_number)
set the number of data to be transferred More...
uint16_t | dma_data_number_get (dma_channel_type *dmax_channely)
get number of data from dtcnt register More...
void | dma_interrupt_enable (dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt More...
void | dma_channel_enable (dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely More...
flag_status | dma_flag_get (uint32_t dmax_flag)
get dma flag More...
void | dma_flag_clear (uint32_t dmax_flag)
clear dma flag More...
void | dma_default_para_init (dma_init_type *dma_init_struct)
dma init config with its default value. More...
void | dma_init (dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init More...

Detailed Description

Function Documentation

◆ dma_channel_enable()

void dma_channel_enable | ( | dma_channel_type * | dmax_channely,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma channely

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
new_state (TRUE or FALSE)
Return values
None

Definition at line 186 of file at32f403_dma.c.

Referenced by codec_i2s_init(), codec_i2s_reset(), DMA1_Channel2_IRQHandler(), DMA1_Channel3_IRQHandler(), DMA1_Channel6_IRQHandler(), DMA1_Channel7_IRQHandler(), dma_config(), dma_configuration(), i2c_dma_config(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), and spi_bytes_write().

◆ dma_data_number_get()

uint16_t dma_data_number_get ( dma_channel_type * dmax_channely )

get number of data from dtcnt register

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
Return values
the number of data.

Definition at line 126 of file at32f403_dma.c.

◆ dma_data_number_set()

void dma_data_number_set | ( | dma_channel_type * | dmax_channely,
 |  | uint16_t | data_number
 | ) |  |

set the number of data to be transferred

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
data_number the number of data to be transferred(0x0000~0xFFFF) transfer.
Return values
none.

Definition at line 103 of file at32f403_dma.c.

◆ dma_default_para_init()

void dma_default_para_init ( dma_init_type * dma_init_struct )

dma init config with its default value.

Parameters
dma_init_struct : pointer to a dma_init_type structure which will be initialized.
Return values
none

Definition at line 271 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_lowlevel_init(), i2s_config(), main(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ dma_flag_clear()

void dma_flag_clear ( uint32_t dmax_flag )

clear dma flag

Parameters
dmax_flag this parameter can be one of the following values:
  • DMA1_GL1_FLAG - DMA1_FDT1_FLAG - DMA1_HDT1_FLAG - DMA1_DTERR1_FLAG
  • DMA1_GL2_FLAG - DMA1_FDT2_FLAG - DMA1_HDT2_FLAG - DMA1_DTERR2_FLAG
  • DMA1_GL3_FLAG - DMA1_FDT3_FLAG - DMA1_HDT3_FLAG - DMA1_DTERR3_FLAG
  • DMA1_GL4_FLAG - DMA1_FDT4_FLAG - DMA1_HDT4_FLAG - DMA1_DTERR4_FLAG
  • DMA1_GL5_FLAG - DMA1_FDT5_FLAG - DMA1_HDT5_FLAG - DMA1_DTERR5_FLAG
  • DMA1_GL6_FLAG - DMA1_FDT6_FLAG - DMA1_HDT6_FLAG - DMA1_DTERR6_FLAG
  • DMA1_GL7_FLAG - DMA1_FDT7_FLAG - DMA1_HDT7_FLAG - DMA1_DTERR7_FLAG
  • DMA2_GL1_FLAG - DMA2_FDT1_FLAG - DMA2_HDT1_FLAG - DMA2_DTERR1_FLAG
  • DMA2_GL2_FLAG - DMA2_FDT2_FLAG - DMA2_HDT2_FLAG - DMA2_DTERR2_FLAG
  • DMA2_GL3_FLAG - DMA2_FDT3_FLAG - DMA2_HDT3_FLAG - DMA2_DTERR3_FLAG
  • DMA2_GL4_FLAG - DMA2_FDT4_FLAG - DMA2_HDT4_FLAG - DMA2_DTERR4_FLAG
  • DMA2_GL5_FLAG - DMA2_FDT5_FLAG - DMA2_HDT5_FLAG - DMA2_DTERR5_FLAG
Return values
none

Definition at line 253 of file at32f403_dma.c.

Referenced by DMA1_Channel1_IRQHandler(), DMA1_Channel2_IRQHandler(), DMA1_Channel3_IRQHandler(), DMA1_Channel4_IRQHandler(), DMA1_Channel6_IRQHandler(), DMA1_Channel7_IRQHandler(), DMA2_Channel4_5_IRQHandler(), i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), main(), Read_Sector(), spi_bytes_read(), spi_bytes_write(), and Write_Sector().

◆ dma_flag_get()

flag_status dma_flag_get ( uint32_t dmax_flag )

get dma flag

Parameters
dmax_flag this parameter can be one of the following values:
  • DMA1_GL1_FLAG - DMA1_FDT1_FLAG - DMA1_HDT1_FLAG - DMA1_DTERR1_FLAG
  • DMA1_GL2_FLAG - DMA1_FDT2_FLAG - DMA1_HDT2_FLAG - DMA1_DTERR2_FLAG
  • DMA1_GL3_FLAG - DMA1_FDT3_FLAG - DMA1_HDT3_FLAG - DMA1_DTERR3_FLAG
  • DMA1_GL4_FLAG - DMA1_FDT4_FLAG - DMA1_HDT4_FLAG - DMA1_DTERR4_FLAG
  • DMA1_GL5_FLAG - DMA1_FDT5_FLAG - DMA1_HDT5_FLAG - DMA1_DTERR5_FLAG
  • DMA1_GL6_FLAG - DMA1_FDT6_FLAG - DMA1_HDT6_FLAG - DMA1_DTERR6_FLAG
  • DMA1_GL7_FLAG - DMA1_FDT7_FLAG - DMA1_HDT7_FLAG - DMA1_DTERR7_FLAG
  • DMA2_GL1_FLAG - DMA2_FDT1_FLAG - DMA2_HDT1_FLAG - DMA2_DTERR1_FLAG
  • DMA2_GL2_FLAG - DMA2_FDT2_FLAG - DMA2_HDT2_FLAG - DMA2_DTERR2_FLAG
  • DMA2_GL3_FLAG - DMA2_FDT3_FLAG - DMA2_HDT3_FLAG - DMA2_DTERR3_FLAG
  • DMA2_GL4_FLAG - DMA2_FDT4_FLAG - DMA2_HDT4_FLAG - DMA2_DTERR4_FLAG
  • DMA2_GL5_FLAG - DMA2_FDT5_FLAG - DMA2_HDT5_FLAG - DMA2_DTERR5_FLAG
Return values
state of dma flag

Definition at line 209 of file at32f403_dma.c.

Referenced by DMA1_Channel1_IRQHandler(), DMA1_Channel2_IRQHandler(), DMA1_Channel3_IRQHandler(), DMA1_Channel4_IRQHandler(), DMA1_Channel6_IRQHandler(), DMA1_Channel7_IRQHandler(), DMA2_Channel4_5_IRQHandler(), i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), main(), Read_Sector(), spi_bytes_read(), spi_bytes_write(), and Write_Sector().

◆ dma_init()

void dma_init | ( | dma_channel_type * | dmax_channely,
 |  | dma_init_type * | dma_init_struct
 | ) |  |

dma init

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
dma_initstruct : pointer to a dma_init_type structure.
Return values
none

Definition at line 304 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_dma_config(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ dma_interrupt_enable()

void dma_interrupt_enable | ( | dma_channel_type * | dmax_channely,
 |  | uint32_t | dma_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma interrupt

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
dma_int this parameter can be any combination of the following values:
  • DMA_FDT_INT
  • DMA_HDT_INT
  • DMA_DTERR_INT
new_state (TRUE or FALSE)
Return values
none

Definition at line 155 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_dma_config(), i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), and main().

◆ dma_reset()

void dma_reset ( dma_channel_type * dmax_channely )

reset the dmax channely registers.

Parameters
dmax_channely this parameter can be one of the following values:
  • DMA1_CHANNEL1
  • DMA1_CHANNEL2
  • DMA1_CHANNEL3
  • DMA1_CHANNEL4
  • DMA1_CHANNEL5
  • DMA1_CHANNEL6
  • DMA1_CHANNEL7
  • DMA2_CHANNEL1
  • DMA2_CHANNEL2
  • DMA2_CHANNEL3
  • DMA2_CHANNEL4
  • DMA2_CHANNEL5
Return values
none

Definition at line 60 of file at32f403_dma.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), i2c_lowlevel_init(), i2s_config(), main(), MYDMA_Config(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().


AT32F403 Firmwary Library: EXINT

Modules | Macros
EXINT
AT32F403_periph_driver

EXINT driver modules. More...

Modules

EXINT_lines
EXINT_exported_types
EXINT_exported_functions
EXINT_private_functions

Macros

#define EXINT ((exint_type *) EXINT_BASE)

Detailed Description

EXINT driver modules.

Macro Definition Documentation

◆ EXINT

#define EXINT ((exint_type *) EXINT_BASE)

Definition at line 198 of file at32f403_exint.h.


AT32F403 Firmwary Library: EXINT_lines

Macros
EXINT_lines
AT32F403_periph_driver » EXINT

Macros

#define | EXINT_LINE_NONE ((uint32_t)0x000000)
#define | EXINT_LINE_0 ((uint32_t)0x000001)
#define | EXINT_LINE_1 ((uint32_t)0x000002)
#define | EXINT_LINE_2 ((uint32_t)0x000004)
#define | EXINT_LINE_3 ((uint32_t)0x000008)
#define | EXINT_LINE_4 ((uint32_t)0x000010)
#define | EXINT_LINE_5 ((uint32_t)0x000020)
#define | EXINT_LINE_6 ((uint32_t)0x000040)
#define | EXINT_LINE_7 ((uint32_t)0x000080)
#define | EXINT_LINE_8 ((uint32_t)0x000100)
#define | EXINT_LINE_9 ((uint32_t)0x000200)
#define | EXINT_LINE_10 ((uint32_t)0x000400)
#define | EXINT_LINE_11 ((uint32_t)0x000800)
#define | EXINT_LINE_12 ((uint32_t)0x001000)
#define | EXINT_LINE_13 ((uint32_t)0x002000)
#define | EXINT_LINE_14 ((uint32_t)0x004000)
#define | EXINT_LINE_15 ((uint32_t)0x008000)
#define | EXINT_LINE_16 ((uint32_t)0x010000)
#define | EXINT_LINE_17 ((uint32_t)0x020000)
#define | EXINT_LINE_18 ((uint32_t)0x040000)
#define | EXINT_LINE_19 ((uint32_t)0x080000)

Detailed Description

Macro Definition Documentation

◆ EXINT_LINE_0

#define EXINT_LINE_0 ((uint32_t)0x000001)

external interrupt line 0

Definition at line 50 of file at32f403_exint.h.

◆ EXINT_LINE_1

#define EXINT_LINE_1 ((uint32_t)0x000002)

external interrupt line 1

Definition at line 51 of file at32f403_exint.h.

◆ EXINT_LINE_10

#define EXINT_LINE_10 ((uint32_t)0x000400)

external interrupt line 10

Definition at line 60 of file at32f403_exint.h.

◆ EXINT_LINE_11

#define EXINT_LINE_11 ((uint32_t)0x000800)

external interrupt line 11

Definition at line 61 of file at32f403_exint.h.

◆ EXINT_LINE_12

#define EXINT_LINE_12 ((uint32_t)0x001000)

external interrupt line 12

Definition at line 62 of file at32f403_exint.h.

◆ EXINT_LINE_13

#define EXINT_LINE_13 ((uint32_t)0x002000)

external interrupt line 13

Definition at line 63 of file at32f403_exint.h.

◆ EXINT_LINE_14

#define EXINT_LINE_14 ((uint32_t)0x004000)

external interrupt line 14

Definition at line 64 of file at32f403_exint.h.

◆ EXINT_LINE_15

#define EXINT_LINE_15 ((uint32_t)0x008000)

external interrupt line 15

Definition at line 65 of file at32f403_exint.h.

◆ EXINT_LINE_16

#define EXINT_LINE_16 ((uint32_t)0x010000)

external interrupt line 16 connected to the pvm output

Definition at line 66 of file at32f403_exint.h.

◆ EXINT_LINE_17

#define EXINT_LINE_17 ((uint32_t)0x020000)

external interrupt line 17 connected to the rtc alarm event

Definition at line 67 of file at32f403_exint.h.

◆ EXINT_LINE_18

#define EXINT_LINE_18 ((uint32_t)0x040000)

external interrupt line 18 connected to the usb device fs wakeup from suspend event

Definition at line 68 of file at32f403_exint.h.

◆ EXINT_LINE_19

#define EXINT_LINE_19 ((uint32_t)0x080000)

external interrupt line 19 connected to the comp1

Definition at line 69 of file at32f403_exint.h.

◆ EXINT_LINE_2

#define EXINT_LINE_2 ((uint32_t)0x000004)

external interrupt line 2

Definition at line 52 of file at32f403_exint.h.

◆ EXINT_LINE_3

#define EXINT_LINE_3 ((uint32_t)0x000008)

external interrupt line 3

Definition at line 53 of file at32f403_exint.h.

◆ EXINT_LINE_4

#define EXINT_LINE_4 ((uint32_t)0x000010)

external interrupt line 4

Definition at line 54 of file at32f403_exint.h.

◆ EXINT_LINE_5

#define EXINT_LINE_5 ((uint32_t)0x000020)

external interrupt line 5

Definition at line 55 of file at32f403_exint.h.

◆ EXINT_LINE_6

#define EXINT_LINE_6 ((uint32_t)0x000040)

external interrupt line 6

Definition at line 56 of file at32f403_exint.h.

◆ EXINT_LINE_7

#define EXINT_LINE_7 ((uint32_t)0x000080)

external interrupt line 7

Definition at line 57 of file at32f403_exint.h.

◆ EXINT_LINE_8

#define EXINT_LINE_8 ((uint32_t)0x000100)

external interrupt line 8

Definition at line 58 of file at32f403_exint.h.

◆ EXINT_LINE_9

#define EXINT_LINE_9 ((uint32_t)0x000200)

external interrupt line 9

Definition at line 59 of file at32f403_exint.h.

◆ EXINT_LINE_NONE

#define EXINT_LINE_NONE ((uint32_t)0x000000)

Definition at line 49 of file at32f403_exint.h.


AT32F403 Firmwary Library: EXINT_exported_types

Data Structures | Enumerations
EXINT_exported_types
AT32F403_periph_driver » EXINT

Data Structures

struct | exint_init_type
exint init type More...
struct | exint_type
type define exint register all More...

Enumerations

enum | exint_line_mode_type { EXINT_LINE_INTERRUPUT = 0x00 , EXINT_LINE_EVENT = 0x01 }
exint line mode type More...
enum | exint_polarity_config_type { EXINT_TRIGGER_RISING_EDGE = 0x00 , EXINT_TRIGGER_FALLING_EDGE = 0x01 , EXINT_TRIGGER_BOTH_EDGE = 0x02 }
exint polarity configuration type More...

Detailed Description

Enumeration Type Documentation

◆ exint_line_mode_type

enum exint_line_mode_type

exint line mode type

Enumerator
EXINT_LINE_INTERRUPUT | external interrupt line interrupt mode
EXINT_LINE_EVENT | external interrupt line event mode

Definition at line 82 of file at32f403_exint.h.

◆ exint_polarity_config_type

enum exint_polarity_config_type

exint polarity configuration type

Enumerator
EXINT_TRIGGER_RISING_EDGE | external interrupt line rising trigger mode
EXINT_TRIGGER_FALLING_EDGE | external interrupt line falling trigger mode
EXINT_TRIGGER_BOTH_EDGE | external interrupt line both rising and falling trigger mode

Definition at line 91 of file at32f403_exint.h.


AT32F403 Firmwary Library: exint_init_type Struct Reference

Data Fields
exint_init_type Struct Reference
AT32F403_periph_driver » EXINT » EXINT_exported_types

exint init type More...

#include <at32f403_exint.h>

Data Fields

exint_line_mode_type line_mode
uint32_t line_select
exint_polarity_config_type line_polarity
confirm_state line_enable

Detailed Description

exint init type

Definition at line 101 of file at32f403_exint.h.

Field Documentation

◆ line_enable

confirm_state exint_init_type::line_enable

enable or disable exint

Definition at line 106 of file at32f403_exint.h.

Referenced by button_exint_init(), exint_config(), exint_default_para_init(), exint_init(), exint_line0_config(), exint_line4_config(), pvm_exint_config(), rtc_config(), and usart_configuration().

◆ line_mode

exint_line_mode_type exint_init_type::line_mode

choose mode event or interrupt mode

Definition at line 103 of file at32f403_exint.h.

Referenced by button_exint_init(), exint_config(), exint_default_para_init(), exint_init(), exint_line0_config(), exint_line4_config(), pvm_exint_config(), rtc_config(), and usart_configuration().

◆ line_polarity

exint_polarity_config_type exint_init_type::line_polarity

select the tregger polarity, with rising edge, falling edge or both edge

Definition at line 105 of file at32f403_exint.h.

Referenced by button_exint_init(), exint_config(), exint_default_para_init(), exint_init(), exint_line0_config(), exint_line4_config(), pvm_exint_config(), rtc_config(), and usart_configuration().

◆ line_select

uint32_t exint_init_type::line_select

select the exint line, availiable for single line or multiple lines

Definition at line 104 of file at32f403_exint.h.

Referenced by button_exint_init(), exint_config(), exint_default_para_init(), exint_init(), exint_line0_config(), exint_line4_config(), pvm_exint_config(), rtc_config(), and usart_configuration().

The documentation for this struct was generated from the following file:
  • at32f403_exint.h


AT32F403 Firmwary Library: exint_type Struct Reference

Data Fields
exint_type Struct Reference
AT32F403_periph_driver » EXINT » EXINT_exported_types

type define exint register all More...

#include <at32f403_exint.h>

Data Fields

union {
__IO uint32_t inten
struct {
__IO uint32_t intenx: 20
__IO uint32_t reserved1: 12
} inten_bit
};
exint inten register, offset:0x00 More...
union {
__IO uint32_t evten
struct {
__IO uint32_t evtenx: 20
__IO uint32_t reserved1: 12
} evten_bit
};
exint evten register, offset:0x04 More...
union {
__IO uint32_t polcfg1
struct {
__IO uint32_t rpx: 20
__IO uint32_t reserved1: 12
} polcfg1_bit
};
exint polcfg1 register, offset:0x08 More...
union {
__IO uint32_t polcfg2
struct {
__IO uint32_t fpx: 20
__IO uint32_t reserved1: 12
} polcfg2_bit
};
exint polcfg2 register, offset:0x0C More...
union {
__IO uint32_t swtrg
struct {
__IO uint32_t swtx: 20
__IO uint32_t reserved1: 12
} swtrg_bit
};
exint swtrg register, offset:0x10 More...
union {
__IO uint32_t intsts
struct {
__IO uint32_t linex: 20
__IO uint32_t reserved1: 12
} intsts_bit
};
exint intsts register, offset:0x14 More...

Detailed Description

type define exint register all

Definition at line 112 of file at32f403_exint.h.

Field Documentation

◆

union { ... } exint_type::@370

exint inten register, offset:0x00

◆

union { ... } exint_type::@372

exint evten register, offset:0x04

◆

union { ... } exint_type::@374

exint polcfg1 register, offset:0x08

◆

union { ... } exint_type::@376

exint polcfg2 register, offset:0x0C

◆

union { ... } exint_type::@378

exint swtrg register, offset:0x10

◆

union { ... } exint_type::@380

exint intsts register, offset:0x14

◆ evten

__IO uint32_t exint_type::evten

Definition at line 133 of file at32f403_exint.h.

◆

struct { ... } exint_type::evten_bit

◆ evtenx

__IO uint32_t exint_type::evtenx

Definition at line 136 of file at32f403_exint.h.

◆ fpx

__IO uint32_t exint_type::fpx

Definition at line 162 of file at32f403_exint.h.

◆ inten

__IO uint32_t exint_type::inten

Definition at line 120 of file at32f403_exint.h.

◆

struct { ... } exint_type::inten_bit

◆ intenx

__IO uint32_t exint_type::intenx

Definition at line 123 of file at32f403_exint.h.

◆ intsts

__IO uint32_t exint_type::intsts

Definition at line 185 of file at32f403_exint.h.

◆

struct { ... } exint_type::intsts_bit

◆ linex

__IO uint32_t exint_type::linex

Definition at line 188 of file at32f403_exint.h.

◆ polcfg1

__IO uint32_t exint_type::polcfg1

Definition at line 146 of file at32f403_exint.h.

◆

struct { ... } exint_type::polcfg1_bit

◆ polcfg2

__IO uint32_t exint_type::polcfg2

Definition at line 159 of file at32f403_exint.h.

◆

struct { ... } exint_type::polcfg2_bit

◆ reserved1

__IO uint32_t exint_type::reserved1

Definition at line 124 of file at32f403_exint.h.

◆ rpx

__IO uint32_t exint_type::rpx

Definition at line 149 of file at32f403_exint.h.

◆ swtrg

__IO uint32_t exint_type::swtrg

Definition at line 172 of file at32f403_exint.h.

◆

struct { ... } exint_type::swtrg_bit

◆ swtx

__IO uint32_t exint_type::swtx

Definition at line 175 of file at32f403_exint.h.

The documentation for this struct was generated from the following file:
  • at32f403_exint.h


AT32F403 Firmwary Library: EXINT_exported_functions

Functions
EXINT_exported_functions
AT32F403_periph_driver » EXINT

Functions

void | exint_reset (void)
exint reset More...
void | exint_default_para_init (exint_init_type *exint_struct)
exint default para init More...
void | exint_init (exint_init_type *exint_struct)
exint init More...
void | exint_flag_clear (uint32_t exint_line)
clear exint flag More...
flag_status | exint_flag_get (uint32_t exint_line)
get exint flag More...
flag_status | exint_interrupt_flag_get (uint32_t exint_line)
get exint interrupt flag More...
void | exint_software_interrupt_event_generate (uint32_t exint_line)
generate exint software interrupt event More...
void | exint_interrupt_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint interrupt More...
void | exint_event_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint event More...

Detailed Description

Function Documentation

◆ exint_default_para_init()

void exint_default_para_init ( exint_init_type * exint_struct )

exint default para init

Parameters
exint_struct
  • to the structure of exint_init_type
Return values
none

Definition at line 62 of file at32f403_exint.c.

Referenced by button_exint_init(), exint_config(), exint_line0_config(), exint_line4_config(), and usart_configuration().

◆ exint_event_enable()

void exint_event_enable | ( | uint32_t | exint_line,
 |  | confirm_state | new_state
 | ) |  |

enable or disable exint event

Parameters
exint_line this parameter can be any combination of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
new_state new state of exint event. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 237 of file at32f403_exint.c.

◆ exint_flag_clear()

void exint_flag_clear ( uint32_t exint_line )

clear exint flag

Parameters
exint_line this parameter can be any combination of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
none

Definition at line 124 of file at32f403_exint.c.

Referenced by button_isr(), EXINT0_IRQHandler(), EXINT4_IRQHandler(), EXINT9_5_IRQHandler(), main(), PVM_IRQHandler(), RTCAlarm_IRQHandler(), and usart_configuration().

◆ exint_flag_get()

flag_status exint_flag_get ( uint32_t exint_line )

get exint flag

Parameters
exint_line this parameter can be one of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
the new state of exint flag(SET or RESET).

Definition at line 140 of file at32f403_exint.c.

Referenced by EXINT0_IRQHandler(), EXINT4_IRQHandler(), main(), and PVM_IRQHandler().

◆ exint_init()

void exint_init ( exint_init_type * exint_struct )

exint init

Parameters
exint_struct
  • to the structure of exint_init_type
Return values
none

Definition at line 76 of file at32f403_exint.c.

Referenced by button_exint_init(), exint_config(), exint_line0_config(), exint_line4_config(), pvm_exint_config(), rtc_config(), and usart_configuration().

◆ exint_interrupt_enable()

void exint_interrupt_enable | ( | uint32_t | exint_line,
 |  | confirm_state | new_state
 | ) |  |

enable or disable exint interrupt

Parameters
exint_line this parameter can be any combination of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
new_state new state of exint interrupt. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 212 of file at32f403_exint.c.

◆ exint_interrupt_flag_get()

flag_status exint_interrupt_flag_get ( uint32_t exint_line )

get exint interrupt flag

Parameters
exint_line this parameter can be one of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
the new state of exint flag(SET or RESET).

Definition at line 167 of file at32f403_exint.c.

◆ exint_reset()

void exint_reset ( void )

exint reset

Parameters
none
Return values
none

Definition at line 47 of file at32f403_exint.c.

◆ exint_software_interrupt_event_generate()

void exint_software_interrupt_event_generate ( uint32_t exint_line )

generate exint software interrupt event

Parameters
exint_line this parameter can be one of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
none

Definition at line 194 of file at32f403_exint.c.

Referenced by TMR1_OVF_TMR10_IRQHandler().


AT32F403 Firmwary Library: EXINT_private_functions

Functions
EXINT_private_functions
AT32F403_periph_driver » EXINT

Functions

void | exint_reset (void)
exint reset More...
void | exint_default_para_init (exint_init_type *exint_struct)
exint default para init More...
void | exint_init (exint_init_type *exint_struct)
exint init More...
void | exint_flag_clear (uint32_t exint_line)
clear exint flag More...
flag_status | exint_flag_get (uint32_t exint_line)
get exint flag More...
flag_status | exint_interrupt_flag_get (uint32_t exint_line)
get exint interrupt flag More...
void | exint_software_interrupt_event_generate (uint32_t exint_line)
generate exint software interrupt event More...
void | exint_interrupt_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint interrupt More...
void | exint_event_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint event More...

Detailed Description

Function Documentation

◆ exint_default_para_init()

void exint_default_para_init ( exint_init_type * exint_struct )

exint default para init

Parameters
exint_struct
  • to the structure of exint_init_type
Return values
none

Definition at line 62 of file at32f403_exint.c.

Referenced by button_exint_init(), exint_config(), exint_line0_config(), exint_line4_config(), and usart_configuration().

◆ exint_event_enable()

void exint_event_enable | ( | uint32_t | exint_line,
 |  | confirm_state | new_state
 | ) |  |

enable or disable exint event

Parameters
exint_line this parameter can be any combination of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
new_state new state of exint event. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 237 of file at32f403_exint.c.

◆ exint_flag_clear()

void exint_flag_clear ( uint32_t exint_line )

clear exint flag

Parameters
exint_line this parameter can be any combination of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
none

Definition at line 124 of file at32f403_exint.c.

Referenced by button_isr(), EXINT0_IRQHandler(), EXINT4_IRQHandler(), EXINT9_5_IRQHandler(), main(), PVM_IRQHandler(), RTCAlarm_IRQHandler(), and usart_configuration().

◆ exint_flag_get()

flag_status exint_flag_get ( uint32_t exint_line )

get exint flag

Parameters
exint_line this parameter can be one of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
the new state of exint flag(SET or RESET).

Definition at line 140 of file at32f403_exint.c.

Referenced by EXINT0_IRQHandler(), EXINT4_IRQHandler(), main(), and PVM_IRQHandler().

◆ exint_init()

void exint_init ( exint_init_type * exint_struct )

exint init

Parameters
exint_struct
  • to the structure of exint_init_type
Return values
none

Definition at line 76 of file at32f403_exint.c.

Referenced by button_exint_init(), exint_config(), exint_line0_config(), exint_line4_config(), pvm_exint_config(), rtc_config(), and usart_configuration().

◆ exint_interrupt_enable()

void exint_interrupt_enable | ( | uint32_t | exint_line,
 |  | confirm_state | new_state
 | ) |  |

enable or disable exint interrupt

Parameters
exint_line this parameter can be any combination of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
new_state new state of exint interrupt. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 212 of file at32f403_exint.c.

◆ exint_interrupt_flag_get()

flag_status exint_interrupt_flag_get ( uint32_t exint_line )

get exint interrupt flag

Parameters
exint_line this parameter can be one of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
the new state of exint flag(SET or RESET).

Definition at line 167 of file at32f403_exint.c.

◆ exint_reset()

void exint_reset ( void )

exint reset

Parameters
none
Return values
none

Definition at line 47 of file at32f403_exint.c.

◆ exint_software_interrupt_event_generate()

void exint_software_interrupt_event_generate ( uint32_t exint_line )

generate exint software interrupt event

Parameters
exint_line this parameter can be one of the following values:
  • EXINT_LINE_0
  • EXINT_LINE_1 ...
  • EXINT_LINE_18
  • EXINT_LINE_19
Return values
none

Definition at line 194 of file at32f403_exint.c.

Referenced by TMR1_OVF_TMR10_IRQHandler().


AT32F403 Firmwary Library: FLASH

Modules | Macros
FLASH
AT32F403_periph_driver

FLASH driver modules. More...

Modules

FLASH_unlock_keys
flash unlock keys
FLASH_bank_address
flash bank address
FLASH_flags
flash flag
FLASH_interrupts
flash interrupts
FLASH_user_system_data
flash user system data
FLASH_timeout_definition
flash timeout definition
FLASH_exported_types
FLASH_exported_functions
FLASH_private_functions

Macros

#define | FLASH ((flash_type *) FLASH_REG_BASE)
#define | USD ((usd_type *) USD_BASE)

Detailed Description

FLASH driver modules.

Macro Definition Documentation

◆ FLASH

#define FLASH ((flash_type *) FLASH_REG_BASE)

Definition at line 511 of file at32f403_flash.h.

◆ USD

#define USD ((usd_type *) USD_BASE)

Definition at line 512 of file at32f403_flash.h.


AT32F403 Firmwary Library: FLASH_unlock_keys

Macros
FLASH_unlock_keys
AT32F403_periph_driver » FLASH

flash unlock keys More...

Macros

#define | FLASH_UNLOCK_KEY1 ((uint32_t)0x45670123)
#define | FLASH_UNLOCK_KEY2 ((uint32_t)0xCDEF89AB)
#define | FAP_RELIEVE_KEY ((uint16_t)0x00A5)

Detailed Description

flash unlock keys

Macro Definition Documentation

◆ FAP_RELIEVE_KEY

#define FAP_RELIEVE_KEY ((uint16_t)0x00A5)

flash fap relieve key val

Definition at line 53 of file at32f403_flash.h.

◆ FLASH_UNLOCK_KEY1

#define FLASH_UNLOCK_KEY1 ((uint32_t)0x45670123)

flash operation unlock order key1

Definition at line 51 of file at32f403_flash.h.

◆ FLASH_UNLOCK_KEY2

#define FLASH_UNLOCK_KEY2 ((uint32_t)0xCDEF89AB)

flash operation unlock order key2

Definition at line 52 of file at32f403_flash.h.


AT32F403 Firmwary Library: FLASH_bank_address

Macros
FLASH_bank_address
AT32F403_periph_driver » FLASH

flash bank address More...

Macros

#define | FLASH_BANK1_START_ADDR ((uint32_t)0x08000000)
#define | FLASH_BANK1_END_ADDR ((uint32_t)0x0807FFFF)
#define | FLASH_BANK2_START_ADDR ((uint32_t)0x08080000)
#define | FLASH_BANK2_END_ADDR ((uint32_t)0x080FFFFF)
#define | FLASH_SPIM_START_ADDR ((uint32_t)0x08400000)

Detailed Description

flash bank address

Macro Definition Documentation

◆ FLASH_BANK1_END_ADDR

#define FLASH_BANK1_END_ADDR ((uint32_t)0x0807FFFF)

flash end address of bank1

Definition at line 65 of file at32f403_flash.h.

◆ FLASH_BANK1_START_ADDR

#define FLASH_BANK1_START_ADDR ((uint32_t)0x08000000)

flash start address of bank1

Definition at line 64 of file at32f403_flash.h.

◆ FLASH_BANK2_END_ADDR

#define FLASH_BANK2_END_ADDR ((uint32_t)0x080FFFFF)

flash end address of bank2

Definition at line 67 of file at32f403_flash.h.

◆ FLASH_BANK2_START_ADDR

#define FLASH_BANK2_START_ADDR ((uint32_t)0x08080000)

flash start address of bank2

Definition at line 66 of file at32f403_flash.h.

◆ FLASH_SPIM_START_ADDR

#define FLASH_SPIM_START_ADDR ((uint32_t)0x08400000)

flash start address of spim

Definition at line 68 of file at32f403_flash.h.


AT32F403 Firmwary Library: FLASH_flags

Macros
FLASH_flags
AT32F403_periph_driver » FLASH

flash flag More...

Macros

#define | FLASH_OBF_FLAG FLASH_BANK1_OBF_FLAG
#define | FLASH_ODF_FLAG FLASH_BANK1_ODF_FLAG
#define | FLASH_PRGMERR_FLAG FLASH_BANK1_PRGMERR_FLAG
#define | FLASH_EPPERR_FLAG FLASH_BANK1_EPPERR_FLAG
#define | FLASH_BANK1_OBF_FLAG ((uint32_t)0x00000001)
#define | FLASH_BANK1_ODF_FLAG ((uint32_t)0x00000020)
#define | FLASH_BANK1_PRGMERR_FLAG ((uint32_t)0x00000004)
#define | FLASH_BANK1_EPPERR_FLAG ((uint32_t)0x00000010)
#define | FLASH_BANK2_OBF_FLAG ((uint32_t)0x10000001)
#define | FLASH_BANK2_ODF_FLAG ((uint32_t)0x10000020)
#define | FLASH_BANK2_PRGMERR_FLAG ((uint32_t)0x10000004)
#define | FLASH_BANK2_EPPERR_FLAG ((uint32_t)0x10000010)
#define | FLASH_SPIM_OBF_FLAG ((uint32_t)0x20000001)
#define | FLASH_SPIM_ODF_FLAG ((uint32_t)0x20000020)
#define | FLASH_SPIM_PRGMERR_FLAG ((uint32_t)0x20000004)
#define | FLASH_SPIM_EPPERR_FLAG ((uint32_t)0x20000010)
#define | FLASH_USDERR_FLAG ((uint32_t)0x40000001)

Detailed Description

flash flag

Macro Definition Documentation

◆ FLASH_BANK1_EPPERR_FLAG

#define FLASH_BANK1_EPPERR_FLAG ((uint32_t)0x00000010)

flash bank1 erase/program protection error flag

Definition at line 86 of file at32f403_flash.h.

◆ FLASH_BANK1_OBF_FLAG

#define FLASH_BANK1_OBF_FLAG ((uint32_t)0x00000001)

flash bank1 operate busy flag

Definition at line 83 of file at32f403_flash.h.

◆ FLASH_BANK1_ODF_FLAG

#define FLASH_BANK1_ODF_FLAG ((uint32_t)0x00000020)

flash bank1 operate done flag

Definition at line 84 of file at32f403_flash.h.

◆ FLASH_BANK1_PRGMERR_FLAG

#define FLASH_BANK1_PRGMERR_FLAG ((uint32_t)0x00000004)

flash bank1 program error flag

Definition at line 85 of file at32f403_flash.h.

◆ FLASH_BANK2_EPPERR_FLAG

#define FLASH_BANK2_EPPERR_FLAG ((uint32_t)0x10000010)

flash bank2 erase/program protection error flag

Definition at line 90 of file at32f403_flash.h.

◆ FLASH_BANK2_OBF_FLAG

#define FLASH_BANK2_OBF_FLAG ((uint32_t)0x10000001)

flash bank2 operate busy flag

Definition at line 87 of file at32f403_flash.h.

◆ FLASH_BANK2_ODF_FLAG

#define FLASH_BANK2_ODF_FLAG ((uint32_t)0x10000020)

flash bank2 operate done flag

Definition at line 88 of file at32f403_flash.h.

◆ FLASH_BANK2_PRGMERR_FLAG

#define FLASH_BANK2_PRGMERR_FLAG ((uint32_t)0x10000004)

flash bank2 program error flag

Definition at line 89 of file at32f403_flash.h.

◆ FLASH_EPPERR_FLAG

#define FLASH_EPPERR_FLAG FLASH_BANK1_EPPERR_FLAG

flash erase/program protection error flag

Definition at line 82 of file at32f403_flash.h.

◆ FLASH_OBF_FLAG

#define FLASH_OBF_FLAG FLASH_BANK1_OBF_FLAG

flash operate busy flag

Definition at line 79 of file at32f403_flash.h.

◆ FLASH_ODF_FLAG

#define FLASH_ODF_FLAG FLASH_BANK1_ODF_FLAG

flash operate done flag

Definition at line 80 of file at32f403_flash.h.

◆ FLASH_PRGMERR_FLAG

#define FLASH_PRGMERR_FLAG FLASH_BANK1_PRGMERR_FLAG

flash program error flag

Definition at line 81 of file at32f403_flash.h.

◆ FLASH_SPIM_EPPERR_FLAG

#define FLASH_SPIM_EPPERR_FLAG ((uint32_t)0x20000010)

flash spim erase/program protection error flag

Definition at line 94 of file at32f403_flash.h.

◆ FLASH_SPIM_OBF_FLAG

#define FLASH_SPIM_OBF_FLAG ((uint32_t)0x20000001)

flash spim operate busy flag

Definition at line 91 of file at32f403_flash.h.

◆ FLASH_SPIM_ODF_FLAG

#define FLASH_SPIM_ODF_FLAG ((uint32_t)0x20000020)

flash spim operate done flag

Definition at line 92 of file at32f403_flash.h.

◆ FLASH_SPIM_PRGMERR_FLAG

#define FLASH_SPIM_PRGMERR_FLAG ((uint32_t)0x20000004)

flash spim program error flag

Definition at line 93 of file at32f403_flash.h.

◆ FLASH_USDERR_FLAG

#define FLASH_USDERR_FLAG ((uint32_t)0x40000001)

flash user system data error flag

Definition at line 95 of file at32f403_flash.h.


AT32F403 Firmwary Library: FLASH_interrupts

Macros
FLASH_interrupts
AT32F403_periph_driver » FLASH

flash interrupts More...

Macros

#define | FLASH_ERR_INT FLASH_BANK1_ERR_INT
#define | FLASH_ODF_INT FLASH_BANK1_ODF_INT
#define | FLASH_BANK1_ERR_INT ((uint32_t)0x00000001)
#define | FLASH_BANK1_ODF_INT ((uint32_t)0x00000002)
#define | FLASH_BANK2_ERR_INT ((uint32_t)0x00000004)
#define | FLASH_BANK2_ODF_INT ((uint32_t)0x00000008)
#define | FLASH_SPIM_ERR_INT ((uint32_t)0x00000010)
#define | FLASH_SPIM_ODF_INT ((uint32_t)0x00000020)

Detailed Description

flash interrupts

Macro Definition Documentation

◆ FLASH_BANK1_ERR_INT

#define FLASH_BANK1_ERR_INT ((uint32_t)0x00000001)

flash bank1 error interrupt

Definition at line 108 of file at32f403_flash.h.

◆ FLASH_BANK1_ODF_INT

#define FLASH_BANK1_ODF_INT ((uint32_t)0x00000002)

flash bank1 operate done interrupt

Definition at line 109 of file at32f403_flash.h.

◆ FLASH_BANK2_ERR_INT

#define FLASH_BANK2_ERR_INT ((uint32_t)0x00000004)

flash bank2 error interrupt

Definition at line 110 of file at32f403_flash.h.

◆ FLASH_BANK2_ODF_INT

#define FLASH_BANK2_ODF_INT ((uint32_t)0x00000008)

flash bank2 operate done interrupt

Definition at line 111 of file at32f403_flash.h.

◆ FLASH_ERR_INT

#define FLASH_ERR_INT FLASH_BANK1_ERR_INT

flash error interrupt

Definition at line 106 of file at32f403_flash.h.

◆ FLASH_ODF_INT

#define FLASH_ODF_INT FLASH_BANK1_ODF_INT

flash operate done interrupt

Definition at line 107 of file at32f403_flash.h.

◆ FLASH_SPIM_ERR_INT

#define FLASH_SPIM_ERR_INT ((uint32_t)0x00000010)

flash spim error interrupt

Definition at line 112 of file at32f403_flash.h.

◆ FLASH_SPIM_ODF_INT

#define FLASH_SPIM_ODF_INT ((uint32_t)0x00000020)

flash spim operate done interrupt

Definition at line 113 of file at32f403_flash.h.


AT32F403 Firmwary Library: FLASH_user_system_data

Macros
FLASH_user_system_data
AT32F403_periph_driver » FLASH

flash user system data More...

Macros

#define | USD_WDT_ATO_DISABLE ((uint16_t)0x0001)
#define | USD_WDT_ATO_ENABLE ((uint16_t)0x0000)
#define | USD_DEPSLP_NO_RST ((uint16_t)0x0002)
#define | USD_DEPSLP_RST ((uint16_t)0x0000)
#define | USD_STDBY_NO_RST ((uint16_t)0x0004)
#define | USD_STDBY_RST ((uint16_t)0x0000)
#define | FLASH_BOOT_FROM_BANK1 ((uint16_t)0x0008)
#define | FLASH_BOOT_FROM_BANK2 ((uint16_t)0x0000)

Detailed Description

flash user system data

Macro Definition Documentation

◆ FLASH_BOOT_FROM_BANK1

#define FLASH_BOOT_FROM_BANK1 ((uint16_t)0x0008)

boot from bank1

Definition at line 133 of file at32f403_flash.h.

◆ FLASH_BOOT_FROM_BANK2

#define FLASH_BOOT_FROM_BANK2 ((uint16_t)0x0000)

boot from bank 2 or bank 1,depending on the activation of the bank

Definition at line 134 of file at32f403_flash.h.

◆ USD_DEPSLP_NO_RST

#define USD_DEPSLP_NO_RST ((uint16_t)0x0002)

no reset generated when entering in deepsleep

Definition at line 127 of file at32f403_flash.h.

◆ USD_DEPSLP_RST

#define USD_DEPSLP_RST ((uint16_t)0x0000)

reset generated when entering in deepsleep

Definition at line 128 of file at32f403_flash.h.

◆ USD_STDBY_NO_RST

#define USD_STDBY_NO_RST ((uint16_t)0x0004)

no reset generated when entering in standby

Definition at line 130 of file at32f403_flash.h.

◆ USD_STDBY_RST

#define USD_STDBY_RST ((uint16_t)0x0000)

reset generated when entering in standby

Definition at line 131 of file at32f403_flash.h.

◆ USD_WDT_ATO_DISABLE

#define USD_WDT_ATO_DISABLE ((uint16_t)0x0001)

wdt auto start disabled

Definition at line 124 of file at32f403_flash.h.

◆ USD_WDT_ATO_ENABLE

#define USD_WDT_ATO_ENABLE ((uint16_t)0x0000)

wdt auto start enabled

Definition at line 125 of file at32f403_flash.h.


AT32F403 Firmwary Library: FLASH_timeout_definition

Macros
FLASH_timeout_definition
AT32F403_periph_driver » FLASH

flash timeout definition More...

Macros

#define | ERASE_TIMEOUT ((uint32_t)0x40000000)
#define | PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)
#define | SPIM_ERASE_TIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SPIM_PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)
#define | OPERATION_TIMEOUT ((uint32_t)0x10000000)

Detailed Description

flash timeout definition

Macro Definition Documentation

◆ ERASE_TIMEOUT

#define ERASE_TIMEOUT ((uint32_t)0x40000000)

internal flash erase operation timeout

Definition at line 145 of file at32f403_flash.h.

◆ OPERATION_TIMEOUT

#define OPERATION_TIMEOUT ((uint32_t)0x10000000)

flash common operation timeout

Definition at line 149 of file at32f403_flash.h.

◆ PROGRAMMING_TIMEOUT

#define PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)

internal flash program operation timeout

Definition at line 146 of file at32f403_flash.h.

◆ SPIM_ERASE_TIMEOUT

#define SPIM_ERASE_TIMEOUT ((uint32_t)0xFFFFFFFF)

spim erase operation timeout

Definition at line 147 of file at32f403_flash.h.

◆ SPIM_PROGRAMMING_TIMEOUT

#define SPIM_PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)

spim program operation timeout

Definition at line 148 of file at32f403_flash.h.


AT32F403 Firmwary Library: FLASH_exported_types

Data Structures | Enumerations
FLASH_exported_types
AT32F403_periph_driver » FLASH

Data Structures

struct | flash_type
type define flash register all More...
struct | usd_type
user system data More...

Enumerations

enum flash_status_type {
FLASH_OPERATE_BUSY = 0x00 , FLASH_PROGRAM_ERROR = 0x01 , FLASH_EPP_ERROR = 0x02 , FLASH_OPERATE_DONE = 0x03 ,
FLASH_OPERATE_TIMEOUT = 0x04
}
flash status type More...
enum flash_spim_model_type { FLASH_SPIM_MODEL1 = 0x01 , FLASH_SPIM_MODEL2 = 0x02 }
flash spim model type More...

Detailed Description

Enumeration Type Documentation

◆ flash_spim_model_type

enum flash_spim_model_type

flash spim model type

Enumerator
FLASH_SPIM_MODEL1 | spim model 1
FLASH_SPIM_MODEL2 | spim model 2

Definition at line 174 of file at32f403_flash.h.

◆ flash_status_type

enum flash_status_type

flash status type

Enumerator
FLASH_OPERATE_BUSY | flash status is operate busy
FLASH_PROGRAM_ERROR | flash status is program error
FLASH_EPP_ERROR | flash status is epp error
FLASH_OPERATE_DONE | flash status is operate done
FLASH_OPERATE_TIMEOUT | flash status is operate timeout

Definition at line 162 of file at32f403_flash.h.


AT32F403 Firmwary Library: flash_type Struct Reference

Data Fields
flash_type Struct Reference
AT32F403_periph_driver » FLASH » FLASH_exported_types

type define flash register all More...

#include <at32f403_flash.h>

Data Fields

union {
__IO uint32_t psr
struct {
__IO uint32_t reserved1: 32
} psr_bit
};
flash psr register, offset:0x00 More...
union {
__IO uint32_t unlock
struct {
__IO uint32_t ukval: 32
} unlock_bit
};
flash unlock register, offset:0x04 More...
union {
__IO uint32_t usd_unlock
struct {
__IO uint32_t usd_ukval: 32
} usd_unlock_bit
};
flash usd unlock register, offset:0x08 More...
union {
__IO uint32_t sts
struct {
__IO uint32_t obf: 1
__IO uint32_t reserved1: 1
__IO uint32_t prgmerr: 1
__IO uint32_t reserved2: 1
__IO uint32_t epperr: 1
__IO uint32_t odf: 1
__IO uint32_t reserved3: 26
} sts_bit
};
flash sts register, offset:0x0C More...
union {
__IO uint32_t ctrl
struct {
__IO uint32_t fprgm: 1
__IO uint32_t secers: 1
__IO uint32_t bankers: 1
__IO uint32_t reserved1: 1
__IO uint32_t usdprgm: 1
__IO uint32_t usders: 1
__IO uint32_t erstr: 1
__IO uint32_t oplk: 1
__IO uint32_t reserved2: 1
__IO uint32_t usdulks: 1
__IO uint32_t errie: 1
__IO uint32_t reserved3: 1
__IO uint32_t odfie: 1
__IO uint32_t reserved4: 19
} ctrl_bit
};
flash ctrl register, offset:0x10 More...
union {
__IO uint32_t addr
struct {
__IO uint32_t fa: 32
} addr_bit
};
flash addr register, offset:0x14 More...
union {
__IO uint32_t usd
struct {
__IO uint32_t usderr: 1
__IO uint32_t fap: 1
__IO uint32_t wdt_ato_en: 1
__IO uint32_t depslp_rst: 1
__IO uint32_t stdby_rst: 1
__IO uint32_t btopt: 1
__IO uint32_t reserved1: 4
__IO uint32_t user_d0: 8
__IO uint32_t user_d1: 8
__IO uint32_t reserved2: 6
} usd_bit
};
flash usd register, offset:0x1C More...
union {
__IO uint32_t epps
struct {
__IO uint32_t epps: 32
} epps_bit
};
flash epps register, offset:0x20 More...
union {
__IO uint32_t unlock2
struct {
__IO uint32_t ukval: 32
} unlock2_bit
};
flash unlock2 register, offset:0x44 More...
union {
__IO uint32_t sts2
struct {
__IO uint32_t obf: 1
__IO uint32_t reserved1: 1
__IO uint32_t prgmerr: 1
__IO uint32_t reserved2: 1
__IO uint32_t epperr: 1
__IO uint32_t odf: 1
__IO uint32_t reserved3: 26
} sts2_bit
};
flash sts2 register, offset:0x4C More...
union {
__IO uint32_t ctrl2
struct {
__IO uint32_t fprgm: 1
__IO uint32_t secers: 1
__IO uint32_t bankers: 1
__IO uint32_t reserved1: 3
__IO uint32_t erstr: 1
__IO uint32_t oplk: 1
__IO uint32_t reserved2: 2
__IO uint32_t errie: 1
__IO uint32_t reserved3: 1
__IO uint32_t odfie: 1
__IO uint32_t reserved4: 19
} ctrl2_bit
};
flash ctrl2 register, offset:0x50 More...
union {
__IO uint32_t addr2
struct {
__IO uint32_t fa: 32
} addr2_bit
};
flash addr2 register, offset:0x54 More...
union {
__IO uint32_t unlock3
struct {
__IO uint32_t ukval: 32
} unlock3_bit
};
flash unlock3 register, offset:0x84 More...
union {
__IO uint32_t select
struct {
__IO uint32_t select: 32
} select_bit
};
flash select register, offset:0x88 More...
union {
__IO uint32_t sts3
struct {
__IO uint32_t obf: 1
__IO uint32_t reserved1: 1
__IO uint32_t prgmerr: 1
__IO uint32_t reserved2: 1
__IO uint32_t epperr: 1
__IO uint32_t odf: 1
__IO uint32_t reserved3: 26
} sts3_bit
};
flash sts3 register, offset:0x8C More...
union {
__IO uint32_t ctrl3
struct {
__IO uint32_t fprgm: 1
__IO uint32_t secers: 1
__IO uint32_t chpers: 1
__IO uint32_t reserved1: 3
__IO uint32_t erstr: 1
__IO uint32_t oplk: 1
__IO uint32_t reserved2: 2
__IO uint32_t errie: 1
__IO uint32_t reserved3: 1
__IO uint32_t odfie: 1
__IO uint32_t reserved4: 19
} ctrl3_bit
};
flash ctrl3 register, offset:0x90 More...
union {
__IO uint32_t addr3
struct {
__IO uint32_t fa: 32
} addr3_bit
};
flash addr3 register, offset:0x94 More...
union {
__IO uint32_t da
struct {
__IO uint32_t fda: 32
} da_bit
};
flash da register, offset:0x98 More...

Detailed Description

type define flash register all

Definition at line 183 of file at32f403_flash.h.

Field Documentation

◆

union { ... } flash_type::@388

flash psr register, offset:0x00

◆

union { ... } flash_type::@390

flash unlock register, offset:0x04

◆

union { ... } flash_type::@392

flash usd unlock register, offset:0x08

◆

union { ... } flash_type::@394

flash sts register, offset:0x0C

◆

union { ... } flash_type::@396

flash ctrl register, offset:0x10

◆

union { ... } flash_type::@398

flash addr register, offset:0x14

◆

union { ... } flash_type::@400

flash usd register, offset:0x1C

◆

union { ... } flash_type::@402

flash epps register, offset:0x20

◆

union { ... } flash_type::@404

flash unlock2 register, offset:0x44

◆

union { ... } flash_type::@406

flash sts2 register, offset:0x4C

◆

union { ... } flash_type::@408

flash ctrl2 register, offset:0x50

◆

union { ... } flash_type::@410

flash addr2 register, offset:0x54

◆

union { ... } flash_type::@412

flash unlock3 register, offset:0x84

◆

union { ... } flash_type::@414

flash select register, offset:0x88

◆

union { ... } flash_type::@416

flash sts3 register, offset:0x8C

◆

union { ... } flash_type::@418

flash ctrl3 register, offset:0x90

◆

union { ... } flash_type::@420

flash addr3 register, offset:0x94

◆

union { ... } flash_type::@422

flash da register, offset:0x98

◆ addr

__IO uint32_t flash_type::addr

Definition at line 269 of file at32f403_flash.h.

◆ addr2

__IO uint32_t flash_type::addr2

Definition at line 381 of file at32f403_flash.h.

◆

struct { ... } flash_type::addr2_bit

◆ addr3

__IO uint32_t flash_type::addr3

Definition at line 462 of file at32f403_flash.h.

◆

struct { ... } flash_type::addr3_bit

◆

struct { ... } flash_type::addr_bit

◆ bankers

__IO uint32_t flash_type::bankers

Definition at line 249 of file at32f403_flash.h.

◆ btopt

__IO uint32_t flash_type::btopt

Definition at line 294 of file at32f403_flash.h.

◆ chpers

__IO uint32_t flash_type::chpers

Definition at line 445 of file at32f403_flash.h.

◆ ctrl

__IO uint32_t flash_type::ctrl

Definition at line 244 of file at32f403_flash.h.

◆ ctrl2

__IO uint32_t flash_type::ctrl2

Definition at line 359 of file at32f403_flash.h.

◆

struct { ... } flash_type::ctrl2_bit

◆ ctrl3

__IO uint32_t flash_type::ctrl3

Definition at line 440 of file at32f403_flash.h.

◆

struct { ... } flash_type::ctrl3_bit

◆

struct { ... } flash_type::ctrl_bit

◆ da

__IO uint32_t flash_type::da

Definition at line 474 of file at32f403_flash.h.

◆

struct { ... } flash_type::da_bit

◆ depslp_rst

__IO uint32_t flash_type::depslp_rst

Definition at line 292 of file at32f403_flash.h.

◆ epperr

__IO uint32_t flash_type::epperr

Definition at line 233 of file at32f403_flash.h.

◆ epps

__IO uint32_t flash_type::epps

Definition at line 307 of file at32f403_flash.h.

◆

struct { ... } flash_type::epps_bit

◆ errie

__IO uint32_t flash_type::errie

Definition at line 257 of file at32f403_flash.h.

◆ erstr

__IO uint32_t flash_type::erstr

Definition at line 253 of file at32f403_flash.h.

◆ fa

__IO uint32_t flash_type::fa

Definition at line 272 of file at32f403_flash.h.

◆ fap

__IO uint32_t flash_type::fap

Definition at line 290 of file at32f403_flash.h.

◆ fda

__IO uint32_t flash_type::fda

Definition at line 477 of file at32f403_flash.h.

◆ fprgm

__IO uint32_t flash_type::fprgm

Definition at line 247 of file at32f403_flash.h.

◆ obf

__IO uint32_t flash_type::obf

Definition at line 229 of file at32f403_flash.h.

◆ odf

__IO uint32_t flash_type::odf

Definition at line 234 of file at32f403_flash.h.

◆ odfie

__IO uint32_t flash_type::odfie

Definition at line 259 of file at32f403_flash.h.

◆ oplk

__IO uint32_t flash_type::oplk

Definition at line 254 of file at32f403_flash.h.

◆ prgmerr

__IO uint32_t flash_type::prgmerr

Definition at line 231 of file at32f403_flash.h.

◆ psr

__IO uint32_t flash_type::psr

Definition at line 190 of file at32f403_flash.h.

◆

struct { ... } flash_type::psr_bit

◆ reserved1

__IO uint32_t flash_type::reserved1

flash reserved1 register, offset:0x18

Definition at line 193 of file at32f403_flash.h.

◆ reserved2

__IO uint32_t flash_type::reserved2

flash reserved2 register, offset:0x40~0x24

Definition at line 232 of file at32f403_flash.h.

◆ reserved3

__IO uint32_t flash_type::reserved3

flash reserved3 register, offset:0x48

Definition at line 235 of file at32f403_flash.h.

◆ reserved4

__IO uint32_t flash_type::reserved4

flash reserved4 register, offset:0x80~0x58

Definition at line 260 of file at32f403_flash.h.

◆ secers

__IO uint32_t flash_type::secers

Definition at line 248 of file at32f403_flash.h.

◆ select

__IO uint32_t flash_type::select

Definition at line 410 of file at32f403_flash.h.

◆

struct { ... } flash_type::select_bit

◆ stdby_rst

__IO uint32_t flash_type::stdby_rst

Definition at line 293 of file at32f403_flash.h.

◆ sts

__IO uint32_t flash_type::sts

Definition at line 226 of file at32f403_flash.h.

◆ sts2

__IO uint32_t flash_type::sts2

Definition at line 341 of file at32f403_flash.h.

◆

struct { ... } flash_type::sts2_bit

◆ sts3

__IO uint32_t flash_type::sts3

Definition at line 422 of file at32f403_flash.h.

◆

struct { ... } flash_type::sts3_bit

◆

struct { ... } flash_type::sts_bit

◆ ukval

__IO uint32_t flash_type::ukval

Definition at line 205 of file at32f403_flash.h.

◆ unlock

__IO uint32_t flash_type::unlock

Definition at line 202 of file at32f403_flash.h.

◆ unlock2

__IO uint32_t flash_type::unlock2

Definition at line 324 of file at32f403_flash.h.

◆

struct { ... } flash_type::unlock2_bit

◆ unlock3

__IO uint32_t flash_type::unlock3

Definition at line 398 of file at32f403_flash.h.

◆

struct { ... } flash_type::unlock3_bit

◆

struct { ... } flash_type::unlock_bit

◆ usd

__IO uint32_t flash_type::usd

Definition at line 286 of file at32f403_flash.h.

◆

struct { ... } flash_type::usd_bit

◆ usd_ukval

__IO uint32_t flash_type::usd_ukval

Definition at line 217 of file at32f403_flash.h.

◆ usd_unlock

__IO uint32_t flash_type::usd_unlock

Definition at line 214 of file at32f403_flash.h.

◆

struct { ... } flash_type::usd_unlock_bit

◆ usderr

__IO uint32_t flash_type::usderr

Definition at line 289 of file at32f403_flash.h.

◆ usders

__IO uint32_t flash_type::usders

Definition at line 252 of file at32f403_flash.h.

◆ usdprgm

__IO uint32_t flash_type::usdprgm

Definition at line 251 of file at32f403_flash.h.

◆ usdulks

__IO uint32_t flash_type::usdulks

Definition at line 256 of file at32f403_flash.h.

◆ user_d0

__IO uint32_t flash_type::user_d0

Definition at line 296 of file at32f403_flash.h.

◆ user_d1

__IO uint32_t flash_type::user_d1

Definition at line 297 of file at32f403_flash.h.

◆ wdt_ato_en

__IO uint32_t flash_type::wdt_ato_en

Definition at line 291 of file at32f403_flash.h.

The documentation for this struct was generated from the following file:
  • at32f403_flash.h


AT32F403 Firmwary Library: usd_type Struct Reference

Data Fields
usd_type Struct Reference
AT32F403_periph_driver » FLASH » FLASH_exported_types

user system data More...

#include <at32f403_flash.h>

Data Fields

__IO uint16_t | fap
__IO uint16_t | ssb
__IO uint16_t | data0
__IO uint16_t | data1
__IO uint16_t | epp0
__IO uint16_t | epp1
__IO uint16_t | epp2
__IO uint16_t | epp3
__IO uint16_t | eopb0
__IO uint16_t | reserved
__IO uint16_t | data2
__IO uint16_t | data3
__IO uint16_t | data4
__IO uint16_t | data5
__IO uint16_t | data6
__IO uint16_t | data7
__IO uint16_t | ext_flash_key [8]

Detailed Description

user system data

Definition at line 486 of file at32f403_flash.h.

Field Documentation

◆ data0

__IO uint16_t usd_type::data0

Definition at line 490 of file at32f403_flash.h.

◆ data1

__IO uint16_t usd_type::data1

Definition at line 491 of file at32f403_flash.h.

◆ data2

__IO uint16_t usd_type::data2

Definition at line 498 of file at32f403_flash.h.

◆ data3

__IO uint16_t usd_type::data3

Definition at line 499 of file at32f403_flash.h.

◆ data4

__IO uint16_t usd_type::data4

Definition at line 500 of file at32f403_flash.h.

◆ data5

__IO uint16_t usd_type::data5

Definition at line 501 of file at32f403_flash.h.

◆ data6

__IO uint16_t usd_type::data6

Definition at line 502 of file at32f403_flash.h.

◆ data7

__IO uint16_t usd_type::data7

Definition at line 503 of file at32f403_flash.h.

◆ eopb0

__IO uint16_t usd_type::eopb0

Definition at line 496 of file at32f403_flash.h.

◆ epp0

__IO uint16_t usd_type::epp0

Definition at line 492 of file at32f403_flash.h.

◆ epp1

__IO uint16_t usd_type::epp1

Definition at line 493 of file at32f403_flash.h.

◆ epp2

__IO uint16_t usd_type::epp2

Definition at line 494 of file at32f403_flash.h.

◆ epp3

__IO uint16_t usd_type::epp3

Definition at line 495 of file at32f403_flash.h.

◆ ext_flash_key

__IO uint16_t usd_type::ext_flash_key[8]

Definition at line 504 of file at32f403_flash.h.

◆ fap

__IO uint16_t usd_type::fap

Definition at line 488 of file at32f403_flash.h.

◆ reserved

__IO uint16_t usd_type::reserved

Definition at line 497 of file at32f403_flash.h.

◆ ssb

__IO uint16_t usd_type::ssb

Definition at line 489 of file at32f403_flash.h.

The documentation for this struct was generated from the following file:
  • at32f403_flash.h


AT32F403 Firmwary Library: FLASH_exported_functions

Functions
FLASH_exported_functions
AT32F403_periph_driver » FLASH

Functions

flag_status | flash_flag_get (uint32_t flash_flag)
check whether the specified flash flag is set or not. More...
void | flash_flag_clear (uint32_t flash_flag)
clear the flash flag. More...
flash_status_type | flash_operation_status_get (void)
return the flash operation status. More...
flash_status_type | flash_bank1_operation_status_get (void)
return the flash bank1 operation status. More...
flash_status_type | flash_bank2_operation_status_get (void)
return the flash bank2 operation status. More...
flash_status_type | flash_spim_operation_status_get (void)
return the flash spim operation status. More...
flash_status_type | flash_operation_wait_for (uint32_t time_out)
wait for flash operation complete or timeout. More...
flash_status_type | flash_bank1_operation_wait_for (uint32_t time_out)
wait for flash bank1 operation complete or timeout. More...
flash_status_type | flash_bank2_operation_wait_for (uint32_t time_out)
wait for flash bank2 operation complete or timeout. More...
flash_status_type | flash_spim_operation_wait_for (uint32_t time_out)
wait for flash spim operation complete or timeout. More...
void | flash_unlock (void)
unlock the flash controller. More...
void | flash_bank1_unlock (void)
unlock the flash bank1 controller. More...
void | flash_bank2_unlock (void)
unlock the flash bank2 controller. More...
void | flash_spim_unlock (void)
unlock the flash spim controller. More...
void | flash_lock (void)
lock the flash controller. More...
void | flash_bank1_lock (void)
lock the flash bank1 controller. More...
void | flash_bank2_lock (void)
lock the flash bank2 controller. More...
void | flash_spim_lock (void)
lock the flash spim controller. More...
flash_status_type | flash_sector_erase (uint32_t sector_address)
erase a specified flash sector. More...
flash_status_type | flash_internal_all_erase (void)
erase flash all internal sectors. More...
flash_status_type | flash_bank1_erase (void)
erase flash bank1 sectors. More...
flash_status_type | flash_bank2_erase (void)
erase flash bank2 sectors. More...
flash_status_type | flash_spim_all_erase (void)
erase flash spim sectors. More...
flash_status_type | flash_user_system_data_erase (void)
erase the flash user system data. More...
flash_status_type | flash_word_program (uint32_t address, uint32_t data)
program a word at a specified address. More...
flash_status_type | flash_halfword_program (uint32_t address, uint16_t data)
program a halfword at a specified address. More...
flash_status_type | flash_byte_program (uint32_t address, uint8_t data)
program a byte at a specified address. More...
flash_status_type | flash_user_system_data_program (uint32_t address, uint8_t data)
program a halfword at a specified user system data address. More...
flash_status_type | flash_epp_set (uint32_t *sector_bits)
config erase/program protection for the desired sectors. More...
void | flash_epp_status_get (uint32_t *sector_bits)
return the flash erase/program protection status. More...
flash_status_type | flash_fap_enable (confirm_state new_state)
enable or disable the flash access protection. More...
flag_status | flash_fap_status_get (void)
check the flash access protection status. More...
flash_status_type | flash_ssb_set (uint8_t usd_ssb)
program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt. More...
uint8_t | flash_ssb_status_get (void)
return the flash system setting byte status. More...
void | flash_interrupt_enable (uint32_t flash_int, confirm_state new_state)
enable or disable the specified flash interrupts. More...
void | flash_spim_model_select (flash_spim_model_type mode)
select spim supports extended spi flash chip model. More...
void | flash_spim_encryption_range_set (uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value, the writing data will be directly written to spim without encryption. More...
void | flash_spim_dummy_read (void)
operate the flash spim dummy read. More...
flash_status_type | flash_spim_mass_program (uint32_t address, uint8_t *buf, uint32_t cnt)
mass program for flash spim. More...

Detailed Description

Function Documentation

◆ flash_bank1_erase()

flash_status_type flash_bank1_erase ( void )

erase flash bank1 sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< internal flash erase operation timeout

Definition at line 533 of file at32f403_flash.c.

◆ flash_bank1_lock()

void flash_bank1_lock ( void )

lock the flash bank1 controller.

Parameters
none
Return values
none

Definition at line 413 of file at32f403_flash.c.

◆ flash_bank1_operation_status_get()

flash_status_type flash_bank1_operation_status_get ( void )

return the flash bank1 operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 170 of file at32f403_flash.c.

Referenced by flash_bank1_operation_wait_for().

◆ flash_bank1_operation_wait_for()

flash_status_type flash_bank1_operation_wait_for ( uint32_t time_out )

wait for flash bank1 operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 282 of file at32f403_flash.c.

Referenced by flash_bank1_erase(), flash_byte_program(), flash_halfword_program(), flash_internal_all_erase(), flash_sector_erase(), and flash_word_program().

◆ flash_bank1_unlock()

void flash_bank1_unlock ( void )

unlock the flash bank1 controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 369 of file at32f403_flash.c.

◆ flash_bank2_erase()

flash_status_type flash_bank2_erase ( void )

erase flash bank2 sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< internal flash erase operation timeout

Definition at line 556 of file at32f403_flash.c.

◆ flash_bank2_lock()

void flash_bank2_lock ( void )

lock the flash bank2 controller.

Parameters
none
Return values
none

Definition at line 423 of file at32f403_flash.c.

◆ flash_bank2_operation_status_get()

flash_status_type flash_bank2_operation_status_get ( void )

return the flash bank2 operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 199 of file at32f403_flash.c.

Referenced by flash_bank2_operation_wait_for().

◆ flash_bank2_operation_wait_for()

flash_status_type flash_bank2_operation_wait_for ( uint32_t time_out )

wait for flash bank2 operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 307 of file at32f403_flash.c.

Referenced by flash_bank2_erase(), flash_byte_program(), flash_halfword_program(), flash_internal_all_erase(), flash_sector_erase(), and flash_word_program().

◆ flash_bank2_unlock()

void flash_bank2_unlock ( void )

unlock the flash bank2 controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 380 of file at32f403_flash.c.

◆ flash_byte_program()

flash_status_type flash_byte_program | ( | uint32_t | address,
 |  | uint8_t | data
 | ) |  |

program a byte at a specified address.

Note
this function cannot be used to program spim.
Parameters
address | specifies the address to be programmed.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash program operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash program operation timeout

Definition at line 757 of file at32f403_flash.c.

Referenced by flash_write_data(), and msc_disk_write().

◆ flash_epp_set()

flash_status_type flash_epp_set ( uint32_t * sector_bits )

config erase/program protection for the desired sectors.

Parameters
sector_bits the pointer of the address of the sectors to be erase/program protected. general every bit is used to protect the 4KB bytes, and the last one bit is used to protect the rest.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash program operation timeout

< internal flash program operation timeout

< internal flash program operation timeout

< internal flash program operation timeout

Definition at line 823 of file at32f403_flash.c.

◆ flash_epp_status_get()

void flash_epp_status_get ( uint32_t * sector_bits )

return the flash erase/program protection status.

Parameters
sector_bits pointer to get the epps register.
Return values
none

Definition at line 873 of file at32f403_flash.c.

◆ flash_fap_enable()

flash_status_type flash_fap_enable ( confirm_state new_state )

enable or disable the flash access protection.

Note
if the user has already programmed the other user system data before calling this function, must re-program them since this function erase all user system data.
Parameters
new_state new state of the flash access protection. this parameter can be: TRUE or FALSE.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash erase operation timeout

< flash fap relieve key val

< internal flash erase operation timeout

Definition at line 888 of file at32f403_flash.c.

Referenced by main().

◆ flash_fap_status_get()

flag_status flash_fap_status_get ( void )

check the flash access protection status.

Parameters
none
Return values
flash access protection status(SET or RESET)

Definition at line 930 of file at32f403_flash.c.

Referenced by flash_user_system_data_erase(), and main().

◆ flash_flag_clear()

void flash_flag_clear ( uint32_t flash_flag )

clear the flash flag.

Parameters
flash_flag specifies the flash flags to clear. this parameter can be any combination of the following values:
  • FLASH_ODF_FLAG
  • FLASH_PRGMERR_FLAG
  • FLASH_EPPERR_FLAG
  • FLASH_BANK1_ODF_FLAG
  • FLASH_BANK1_PRGMERR_FLAG
  • FLASH_BANK1_EPPERR_FLAG
  • FLASH_BANK2_ODF_FLAG
  • FLASH_BANK2_PRGMERR_FLAG
  • FLASH_BANK2_EPPERR_FLAG
  • FLASH_SPIM_ODF_FLAG
  • FLASH_SPIM_PRGMERR_FLAG
  • FLASH_SPIM_EPPERR_FLAG
Return values
none

Definition at line 114 of file at32f403_flash.c.

Referenced by flash_write(), main(), and spim_operate().

◆ flash_flag_get()

flag_status flash_flag_get ( uint32_t flash_flag )

check whether the specified flash flag is set or not.

Parameters
flash_flag specifies the flash flag to check. this parameter can be one of flash flag status:
  • FLASH_OBF_FLAG
  • FLASH_ODF_FLAG
  • FLASH_PRGMERR_FLAG
  • FLASH_EPPERR_FLAG
  • FLASH_BANK1_OBF_FLAG
  • FLASH_BANK1_ODF_FLAG
  • FLASH_BANK1_PRGMERR_FLAG
  • FLASH_BANK1_EPPERR_FLAG
  • FLASH_BANK2_OBF_FLAG
  • FLASH_BANK2_ODF_FLAG
  • FLASH_BANK2_PRGMERR_FLAG
  • FLASH_BANK2_EPPERR_FLAG
  • FLASH_SPIM_OBF_FLAG
  • FLASH_SPIM_ODF_FLAG
  • FLASH_SPIM_PRGMERR_FLAG
  • FLASH_SPIM_EPPERR_FLAG
  • FLASH_USDERR_FLAG
Return values
the new state of flash_flag (SET or RESET).

Definition at line 65 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_halfword_program()

flash_status_type flash_halfword_program | ( | uint32_t | address,
 |  | uint16_t | data
 | ) |  |

program a halfword at a specified address.

Parameters
address | specifies the address to be programmed, halfword alignment is recommended.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash program operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash program operation timeout

< flash start address of spim

< spim program operation timeout

Definition at line 707 of file at32f403_flash.c.

Referenced by flash_2kb_write(), and flash_write_nocheck().

◆ flash_internal_all_erase()

flash_status_type flash_internal_all_erase ( void )

erase flash all internal sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< internal flash erase operation timeout

< internal flash erase operation timeout

Definition at line 498 of file at32f403_flash.c.

◆ flash_interrupt_enable()

void flash_interrupt_enable | ( | uint32_t | flash_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified flash interrupts.

Parameters
flash_int specifies the flash interrupt sources to be enabled or disabled. this parameter can be any combination of the following values:
  • FLASH_ERR_INT
  • FLASH_ODF_INT
  • FLASH_BANK1_ERR_INT
  • FLASH_BANK1_ODF_INT
  • FLASH_BANK2_ERR_INT
  • FLASH_BANK2_ODF_INT
  • FLASH_SPIM_ERR_INT
  • FLASH_SPIM_ODF_INT
new_state new state of the specified flash interrupts. this parameter can be: TRUE or FALSE.
Return values
none

< flash bank1 error interrupt

< flash bank1 operate done interrupt

< flash bank2 error interrupt

< flash bank2 operate done interrupt

< flash spim error interrupt

< flash spim operate done interrupt

Definition at line 1009 of file at32f403_flash.c.

◆ flash_lock()

void flash_lock ( void )

lock the flash controller.

Parameters
none
Return values
none

Definition at line 402 of file at32f403_flash.c.

Referenced by flash_2kb_write(), flash_fat16_clear_upgrade_flag(), flash_fat16_set_upgrade_flag(), flash_write(), flash_write_data(), iap_clear_upgrade_flag(), iap_command_handle(), iap_data_write(), iap_erase_sector(), iap_init(), iap_set_upgrade_flag(), and msc_disk_write().

◆ flash_operation_status_get()

flash_status_type flash_operation_status_get ( void )

return the flash operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 141 of file at32f403_flash.c.

Referenced by flash_operation_wait_for().

◆ flash_operation_wait_for()

flash_status_type flash_operation_wait_for ( uint32_t time_out )

wait for flash operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 257 of file at32f403_flash.c.

Referenced by flash_epp_set(), flash_fap_enable(), flash_ssb_set(), flash_user_system_data_erase(), flash_user_system_data_program(), flash_write(), main(), and spim_operate().

◆ flash_sector_erase()

flash_status_type flash_sector_erase ( uint32_t sector_address )

erase a specified flash sector.

Parameters
sector_address the sector address to be erased.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash erase operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash erase operation timeout

< flash start address of spim

< spim erase operation timeout

Definition at line 444 of file at32f403_flash.c.

Referenced by flash_2kb_write(), flash_fat16_clear_upgrade_flag(), flash_write(), flash_write_data(), iap_clear_upgrade_flag(), iap_command_handle(), iap_erase_sector(), iap_init(), msc_disk_write(), and spim_operate().

◆ flash_spim_all_erase()

flash_status_type flash_spim_all_erase ( void )

erase flash spim sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< spim erase operation timeout

Definition at line 579 of file at32f403_flash.c.

◆ flash_spim_dummy_read()

void flash_spim_dummy_read ( void )

operate the flash spim dummy read.

Parameters
none
Return values
none

< flash start address of spim

< flash start address of spim

< flash start address of spim

Definition at line 1055 of file at32f403_flash.c.

Referenced by flash_halfword_program(), flash_sector_erase(), flash_spim_all_erase(), flash_spim_mass_program(), flash_spim_model_select(), and flash_word_program().

◆ flash_spim_encryption_range_set()

void flash_spim_encryption_range_set ( uint32_t decode_address )

set the range of encryption in spim flash. when the address is larger than this value, the writing data will be directly written to spim without encryption.

Parameters
decode_address the end address of encrypted data in spim
Return values
none

Definition at line 1045 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_spim_lock()

void flash_spim_lock ( void )

lock the flash spim controller.

Parameters
none
Return values
none

Definition at line 433 of file at32f403_flash.c.

◆ flash_spim_mass_program()

flash_status_type flash_spim_mass_program | ( | uint32_t | address,
 |  | uint8_t * | buf,
 |  | uint32_t | cnt
 | ) |  |

mass program for flash spim.

Parameters
address | specifies the start address to be programmed, word or halfword alignment is recommended.
buf | specifies the pointer of data to be programmed.
cnt | specifies the data counter to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of spim

< spim program operation timeout

< spim program operation timeout

Definition at line 1070 of file at32f403_flash.c.

◆ flash_spim_model_select()

void flash_spim_model_select ( flash_spim_model_type mode )

select spim supports extended spi flash chip model.

Parameters
mode the extended spi flash model
Return values
none

Definition at line 1030 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_spim_operation_status_get()

flash_status_type flash_spim_operation_status_get ( void )

return the flash spim operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 228 of file at32f403_flash.c.

Referenced by flash_spim_operation_wait_for().

◆ flash_spim_operation_wait_for()

flash_status_type flash_spim_operation_wait_for ( uint32_t time_out )

wait for flash spim operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 332 of file at32f403_flash.c.

Referenced by flash_halfword_program(), flash_sector_erase(), flash_spim_all_erase(), flash_spim_mass_program(), and flash_word_program().

◆ flash_spim_unlock()

void flash_spim_unlock ( void )

unlock the flash spim controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 391 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_ssb_set()

flash_status_type flash_ssb_set ( uint8_t usd_ssb )

program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt.

Parameters
usd_ssb the system setting byte
Note
this parameter usd_ssb must contain a combination of all the following 4 types of data type 1: wdt_ato_en, select the wdt auto start this data can be one of the following values:
  • USD_WDT_ATO_DISABLE: disable wdt auto start
  • USD_WDT_ATO_ENABLE: enable wdt auto start type 2: depslp_rst, reset event when entering deepsleep mode. this data can be one of the following values:
  • USD_DEPSLP_NO_RST: no reset generated when entering in deepsleep
  • USD_DEPSLP_RST: reset generated when entering in deepsleep type 3: stdby_rst, reset event when entering standby mode. this data can be one of the following values:
  • USD_STDBY_NO_RST: no reset generated when entering in standby
  • USD_STDBY_RST: reset generated when entering in standby type 4: btopt, at startup,if boot pins are set in boot from user flash position,selected the device boot from bank1/bank2. this data can be one of the following values:
  • FLASH_BOOT_FROM_BANK1:boot from bank1
  • FLASH_BOOT_FROM_BANK2:boot from bank 2 or bank 1
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash program operation timeout

Definition at line 958 of file at32f403_flash.c.

◆ flash_ssb_status_get()

uint8_t flash_ssb_status_get ( void )

return the flash system setting byte status.

Parameters
none
Return values
values from flash_usd register: wdt_ato_en(bit0), depslp_rst(bit1), stdby_rst(bit2) and btopt(bit3).

Definition at line 987 of file at32f403_flash.c.

◆ flash_unlock()

void flash_unlock ( void )

unlock the flash controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 356 of file at32f403_flash.c.

Referenced by flash_2kb_write(), flash_fat16_clear_upgrade_flag(), flash_fat16_set_upgrade_flag(), flash_write(), flash_write_data(), iap_clear_upgrade_flag(), iap_command_handle(), iap_data_write(), iap_erase_sector(), iap_init(), iap_set_upgrade_flag(), main(), and msc_disk_write().

◆ flash_user_system_data_erase()

flash_status_type flash_user_system_data_erase ( void )

erase the flash user system data.

Note
this functions erases all user system data except the fap byte.
Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash fap relieve key val

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash erase operation timeout

< flash fap relieve key val

< internal flash program operation timeout

Definition at line 606 of file at32f403_flash.c.

◆ flash_user_system_data_program()

flash_status_type flash_user_system_data_program | ( | uint32_t | address,
 |  | uint8_t | data
 | ) |  |

program a halfword at a specified user system data address.

Parameters
address | specifies the address to be programmed.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash program operation timeout

Definition at line 791 of file at32f403_flash.c.

◆ flash_word_program()

flash_status_type flash_word_program | ( | uint32_t | address,
 |  | uint32_t | data
 | ) |  |

program a word at a specified address.

Parameters
address | specifies the address to be programmed, word alignment is recommended.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash program operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash program operation timeout

< flash start address of spim

< spim program operation timeout

Definition at line 658 of file at32f403_flash.c.

Referenced by flash_fat16_set_upgrade_flag(), iap_command_handle(), iap_data_write(), iap_set_upgrade_flag(), and spim_operate().


AT32F403 Firmwary Library: FLASH_private_functions

Functions
FLASH_private_functions
AT32F403_periph_driver » FLASH

Functions

flag_status | flash_flag_get (uint32_t flash_flag)
check whether the specified flash flag is set or not. More...
void | flash_flag_clear (uint32_t flash_flag)
clear the flash flag. More...
flash_status_type | flash_operation_status_get (void)
return the flash operation status. More...
flash_status_type | flash_bank1_operation_status_get (void)
return the flash bank1 operation status. More...
flash_status_type | flash_bank2_operation_status_get (void)
return the flash bank2 operation status. More...
flash_status_type | flash_spim_operation_status_get (void)
return the flash spim operation status. More...
flash_status_type | flash_operation_wait_for (uint32_t time_out)
wait for flash operation complete or timeout. More...
flash_status_type | flash_bank1_operation_wait_for (uint32_t time_out)
wait for flash bank1 operation complete or timeout. More...
flash_status_type | flash_bank2_operation_wait_for (uint32_t time_out)
wait for flash bank2 operation complete or timeout. More...
flash_status_type | flash_spim_operation_wait_for (uint32_t time_out)
wait for flash spim operation complete or timeout. More...
void | flash_unlock (void)
unlock the flash controller. More...
void | flash_bank1_unlock (void)
unlock the flash bank1 controller. More...
void | flash_bank2_unlock (void)
unlock the flash bank2 controller. More...
void | flash_spim_unlock (void)
unlock the flash spim controller. More...
void | flash_lock (void)
lock the flash controller. More...
void | flash_bank1_lock (void)
lock the flash bank1 controller. More...
void | flash_bank2_lock (void)
lock the flash bank2 controller. More...
void | flash_spim_lock (void)
lock the flash spim controller. More...
flash_status_type | flash_sector_erase (uint32_t sector_address)
erase a specified flash sector. More...
flash_status_type | flash_internal_all_erase (void)
erase flash all internal sectors. More...
flash_status_type | flash_bank1_erase (void)
erase flash bank1 sectors. More...
flash_status_type | flash_bank2_erase (void)
erase flash bank2 sectors. More...
flash_status_type | flash_spim_all_erase (void)
erase flash spim sectors. More...
flash_status_type | flash_user_system_data_erase (void)
erase the flash user system data. More...
flash_status_type | flash_word_program (uint32_t address, uint32_t data)
program a word at a specified address. More...
flash_status_type | flash_halfword_program (uint32_t address, uint16_t data)
program a halfword at a specified address. More...
flash_status_type | flash_byte_program (uint32_t address, uint8_t data)
program a byte at a specified address. More...
flash_status_type | flash_user_system_data_program (uint32_t address, uint8_t data)
program a halfword at a specified user system data address. More...
flash_status_type | flash_epp_set (uint32_t *sector_bits)
config erase/program protection for the desired sectors. More...
void | flash_epp_status_get (uint32_t *sector_bits)
return the flash erase/program protection status. More...
flash_status_type | flash_fap_enable (confirm_state new_state)
enable or disable the flash access protection. More...
flag_status | flash_fap_status_get (void)
check the flash access protection status. More...
flash_status_type | flash_ssb_set (uint8_t usd_ssb)
program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt. More...
uint8_t | flash_ssb_status_get (void)
return the flash system setting byte status. More...
void | flash_interrupt_enable (uint32_t flash_int, confirm_state new_state)
enable or disable the specified flash interrupts. More...
void | flash_spim_model_select (flash_spim_model_type mode)
select spim supports extended spi flash chip model. More...
void | flash_spim_encryption_range_set (uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value, the writing data will be directly written to spim without encryption. More...
void | flash_spim_dummy_read (void)
operate the flash spim dummy read. More...
flash_status_type | flash_spim_mass_program (uint32_t address, uint8_t *buf, uint32_t cnt)
mass program for flash spim. More...

Detailed Description

Function Documentation

◆ flash_bank1_erase()

flash_status_type flash_bank1_erase ( void )

erase flash bank1 sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< internal flash erase operation timeout

Definition at line 533 of file at32f403_flash.c.

◆ flash_bank1_lock()

void flash_bank1_lock ( void )

lock the flash bank1 controller.

Parameters
none
Return values
none

Definition at line 413 of file at32f403_flash.c.

◆ flash_bank1_operation_status_get()

flash_status_type flash_bank1_operation_status_get ( void )

return the flash bank1 operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 170 of file at32f403_flash.c.

Referenced by flash_bank1_operation_wait_for().

◆ flash_bank1_operation_wait_for()

flash_status_type flash_bank1_operation_wait_for ( uint32_t time_out )

wait for flash bank1 operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 282 of file at32f403_flash.c.

Referenced by flash_bank1_erase(), flash_byte_program(), flash_halfword_program(), flash_internal_all_erase(), flash_sector_erase(), and flash_word_program().

◆ flash_bank1_unlock()

void flash_bank1_unlock ( void )

unlock the flash bank1 controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 369 of file at32f403_flash.c.

◆ flash_bank2_erase()

flash_status_type flash_bank2_erase ( void )

erase flash bank2 sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< internal flash erase operation timeout

Definition at line 556 of file at32f403_flash.c.

◆ flash_bank2_lock()

void flash_bank2_lock ( void )

lock the flash bank2 controller.

Parameters
none
Return values
none

Definition at line 423 of file at32f403_flash.c.

◆ flash_bank2_operation_status_get()

flash_status_type flash_bank2_operation_status_get ( void )

return the flash bank2 operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 199 of file at32f403_flash.c.

Referenced by flash_bank2_operation_wait_for().

◆ flash_bank2_operation_wait_for()

flash_status_type flash_bank2_operation_wait_for ( uint32_t time_out )

wait for flash bank2 operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 307 of file at32f403_flash.c.

Referenced by flash_bank2_erase(), flash_byte_program(), flash_halfword_program(), flash_internal_all_erase(), flash_sector_erase(), and flash_word_program().

◆ flash_bank2_unlock()

void flash_bank2_unlock ( void )

unlock the flash bank2 controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 380 of file at32f403_flash.c.

◆ flash_byte_program()

flash_status_type flash_byte_program | ( | uint32_t | address,
 |  | uint8_t | data
 | ) |  |

program a byte at a specified address.

Note
this function cannot be used to program spim.
Parameters
address | specifies the address to be programmed.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash program operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash program operation timeout

Definition at line 757 of file at32f403_flash.c.

Referenced by flash_write_data(), and msc_disk_write().

◆ flash_epp_set()

flash_status_type flash_epp_set ( uint32_t * sector_bits )

config erase/program protection for the desired sectors.

Parameters
sector_bits the pointer of the address of the sectors to be erase/program protected. general every bit is used to protect the 4KB bytes, and the last one bit is used to protect the rest.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash program operation timeout

< internal flash program operation timeout

< internal flash program operation timeout

< internal flash program operation timeout

Definition at line 823 of file at32f403_flash.c.

◆ flash_epp_status_get()

void flash_epp_status_get ( uint32_t * sector_bits )

return the flash erase/program protection status.

Parameters
sector_bits pointer to get the epps register.
Return values
none

Definition at line 873 of file at32f403_flash.c.

◆ flash_fap_enable()

flash_status_type flash_fap_enable ( confirm_state new_state )

enable or disable the flash access protection.

Note
if the user has already programmed the other user system data before calling this function, must re-program them since this function erase all user system data.
Parameters
new_state new state of the flash access protection. this parameter can be: TRUE or FALSE.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash erase operation timeout

< flash fap relieve key val

< internal flash erase operation timeout

Definition at line 888 of file at32f403_flash.c.

Referenced by main().

◆ flash_fap_status_get()

flag_status flash_fap_status_get ( void )

check the flash access protection status.

Parameters
none
Return values
flash access protection status(SET or RESET)

Definition at line 930 of file at32f403_flash.c.

Referenced by flash_user_system_data_erase(), and main().

◆ flash_flag_clear()

void flash_flag_clear ( uint32_t flash_flag )

clear the flash flag.

Parameters
flash_flag specifies the flash flags to clear. this parameter can be any combination of the following values:
  • FLASH_ODF_FLAG
  • FLASH_PRGMERR_FLAG
  • FLASH_EPPERR_FLAG
  • FLASH_BANK1_ODF_FLAG
  • FLASH_BANK1_PRGMERR_FLAG
  • FLASH_BANK1_EPPERR_FLAG
  • FLASH_BANK2_ODF_FLAG
  • FLASH_BANK2_PRGMERR_FLAG
  • FLASH_BANK2_EPPERR_FLAG
  • FLASH_SPIM_ODF_FLAG
  • FLASH_SPIM_PRGMERR_FLAG
  • FLASH_SPIM_EPPERR_FLAG
Return values
none

Definition at line 114 of file at32f403_flash.c.

Referenced by flash_write(), main(), and spim_operate().

◆ flash_flag_get()

flag_status flash_flag_get ( uint32_t flash_flag )

check whether the specified flash flag is set or not.

Parameters
flash_flag specifies the flash flag to check. this parameter can be one of flash flag status:
  • FLASH_OBF_FLAG
  • FLASH_ODF_FLAG
  • FLASH_PRGMERR_FLAG
  • FLASH_EPPERR_FLAG
  • FLASH_BANK1_OBF_FLAG
  • FLASH_BANK1_ODF_FLAG
  • FLASH_BANK1_PRGMERR_FLAG
  • FLASH_BANK1_EPPERR_FLAG
  • FLASH_BANK2_OBF_FLAG
  • FLASH_BANK2_ODF_FLAG
  • FLASH_BANK2_PRGMERR_FLAG
  • FLASH_BANK2_EPPERR_FLAG
  • FLASH_SPIM_OBF_FLAG
  • FLASH_SPIM_ODF_FLAG
  • FLASH_SPIM_PRGMERR_FLAG
  • FLASH_SPIM_EPPERR_FLAG
  • FLASH_USDERR_FLAG
Return values
the new state of flash_flag (SET or RESET).

Definition at line 65 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_halfword_program()

flash_status_type flash_halfword_program | ( | uint32_t | address,
 |  | uint16_t | data
 | ) |  |

program a halfword at a specified address.

Parameters
address | specifies the address to be programmed, halfword alignment is recommended.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash program operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash program operation timeout

< flash start address of spim

< spim program operation timeout

Definition at line 707 of file at32f403_flash.c.

Referenced by flash_2kb_write(), and flash_write_nocheck().

◆ flash_internal_all_erase()

flash_status_type flash_internal_all_erase ( void )

erase flash all internal sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< internal flash erase operation timeout

< internal flash erase operation timeout

Definition at line 498 of file at32f403_flash.c.

◆ flash_interrupt_enable()

void flash_interrupt_enable | ( | uint32_t | flash_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified flash interrupts.

Parameters
flash_int specifies the flash interrupt sources to be enabled or disabled. this parameter can be any combination of the following values:
  • FLASH_ERR_INT
  • FLASH_ODF_INT
  • FLASH_BANK1_ERR_INT
  • FLASH_BANK1_ODF_INT
  • FLASH_BANK2_ERR_INT
  • FLASH_BANK2_ODF_INT
  • FLASH_SPIM_ERR_INT
  • FLASH_SPIM_ODF_INT
new_state new state of the specified flash interrupts. this parameter can be: TRUE or FALSE.
Return values
none

< flash bank1 error interrupt

< flash bank1 operate done interrupt

< flash bank2 error interrupt

< flash bank2 operate done interrupt

< flash spim error interrupt

< flash spim operate done interrupt

Definition at line 1009 of file at32f403_flash.c.

◆ flash_lock()

void flash_lock ( void )

lock the flash controller.

Parameters
none
Return values
none

Definition at line 402 of file at32f403_flash.c.

Referenced by flash_2kb_write(), flash_fat16_clear_upgrade_flag(), flash_fat16_set_upgrade_flag(), flash_write(), flash_write_data(), iap_clear_upgrade_flag(), iap_command_handle(), iap_data_write(), iap_erase_sector(), iap_init(), iap_set_upgrade_flag(), and msc_disk_write().

◆ flash_operation_status_get()

flash_status_type flash_operation_status_get ( void )

return the flash operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 141 of file at32f403_flash.c.

Referenced by flash_operation_wait_for().

◆ flash_operation_wait_for()

flash_status_type flash_operation_wait_for ( uint32_t time_out )

wait for flash operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 257 of file at32f403_flash.c.

Referenced by flash_epp_set(), flash_fap_enable(), flash_ssb_set(), flash_user_system_data_erase(), flash_user_system_data_program(), flash_write(), main(), and spim_operate().

◆ flash_sector_erase()

flash_status_type flash_sector_erase ( uint32_t sector_address )

erase a specified flash sector.

Parameters
sector_address the sector address to be erased.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash erase operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash erase operation timeout

< flash start address of spim

< spim erase operation timeout

Definition at line 444 of file at32f403_flash.c.

Referenced by flash_2kb_write(), flash_fat16_clear_upgrade_flag(), flash_write(), flash_write_data(), iap_clear_upgrade_flag(), iap_command_handle(), iap_erase_sector(), iap_init(), msc_disk_write(), and spim_operate().

◆ flash_spim_all_erase()

flash_status_type flash_spim_all_erase ( void )

erase flash spim sectors.

Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< spim erase operation timeout

Definition at line 579 of file at32f403_flash.c.

◆ flash_spim_dummy_read()

void flash_spim_dummy_read ( void )

operate the flash spim dummy read.

Parameters
none
Return values
none

< flash start address of spim

< flash start address of spim

< flash start address of spim

Definition at line 1055 of file at32f403_flash.c.

Referenced by flash_halfword_program(), flash_sector_erase(), flash_spim_all_erase(), flash_spim_mass_program(), flash_spim_model_select(), and flash_word_program().

◆ flash_spim_encryption_range_set()

void flash_spim_encryption_range_set ( uint32_t decode_address )

set the range of encryption in spim flash. when the address is larger than this value, the writing data will be directly written to spim without encryption.

Parameters
decode_address the end address of encrypted data in spim
Return values
none

Definition at line 1045 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_spim_lock()

void flash_spim_lock ( void )

lock the flash spim controller.

Parameters
none
Return values
none

Definition at line 433 of file at32f403_flash.c.

◆ flash_spim_mass_program()

flash_status_type flash_spim_mass_program | ( | uint32_t | address,
 |  | uint8_t * | buf,
 |  | uint32_t | cnt
 | ) |  |

mass program for flash spim.

Parameters
address | specifies the start address to be programmed, word or halfword alignment is recommended.
buf | specifies the pointer of data to be programmed.
cnt | specifies the data counter to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of spim

< spim program operation timeout

< spim program operation timeout

Definition at line 1070 of file at32f403_flash.c.

◆ flash_spim_model_select()

void flash_spim_model_select ( flash_spim_model_type mode )

select spim supports extended spi flash chip model.

Parameters
mode the extended spi flash model
Return values
none

Definition at line 1030 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_spim_operation_status_get()

flash_status_type flash_spim_operation_status_get ( void )

return the flash spim operation status.

Parameters
none
Return values
status the returned value can be: FLASH_OPERATE_BUSY, FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR or FLASH_OPERATE_DONE.

Definition at line 228 of file at32f403_flash.c.

Referenced by flash_spim_operation_wait_for().

◆ flash_spim_operation_wait_for()

flash_status_type flash_spim_operation_wait_for ( uint32_t time_out )

wait for flash spim operation complete or timeout.

Parameters
time_out flash operation timeout
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

Definition at line 332 of file at32f403_flash.c.

Referenced by flash_halfword_program(), flash_sector_erase(), flash_spim_all_erase(), flash_spim_mass_program(), and flash_word_program().

◆ flash_spim_unlock()

void flash_spim_unlock ( void )

unlock the flash spim controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 391 of file at32f403_flash.c.

Referenced by spim_init().

◆ flash_ssb_set()

flash_status_type flash_ssb_set ( uint8_t usd_ssb )

program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt.

Parameters
usd_ssb the system setting byte
Note
this parameter usd_ssb must contain a combination of all the following 4 types of data type 1: wdt_ato_en, select the wdt auto start this data can be one of the following values:
  • USD_WDT_ATO_DISABLE: disable wdt auto start
  • USD_WDT_ATO_ENABLE: enable wdt auto start type 2: depslp_rst, reset event when entering deepsleep mode. this data can be one of the following values:
  • USD_DEPSLP_NO_RST: no reset generated when entering in deepsleep
  • USD_DEPSLP_RST: reset generated when entering in deepsleep type 3: stdby_rst, reset event when entering standby mode. this data can be one of the following values:
  • USD_STDBY_NO_RST: no reset generated when entering in standby
  • USD_STDBY_RST: reset generated when entering in standby type 4: btopt, at startup,if boot pins are set in boot from user flash position,selected the device boot from bank1/bank2. this data can be one of the following values:
  • FLASH_BOOT_FROM_BANK1:boot from bank1
  • FLASH_BOOT_FROM_BANK2:boot from bank 2 or bank 1
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash program operation timeout

Definition at line 958 of file at32f403_flash.c.

◆ flash_ssb_status_get()

uint8_t flash_ssb_status_get ( void )

return the flash system setting byte status.

Parameters
none
Return values
values from flash_usd register: wdt_ato_en(bit0), depslp_rst(bit1), stdby_rst(bit2) and btopt(bit3).

Definition at line 987 of file at32f403_flash.c.

◆ flash_unlock()

void flash_unlock ( void )

unlock the flash controller.

Parameters
none
Return values
none

< flash operation unlock order key1

< flash operation unlock order key2

< flash operation unlock order key1

< flash operation unlock order key2

Definition at line 356 of file at32f403_flash.c.

Referenced by flash_2kb_write(), flash_fat16_clear_upgrade_flag(), flash_fat16_set_upgrade_flag(), flash_write(), flash_write_data(), iap_clear_upgrade_flag(), iap_command_handle(), iap_data_write(), iap_erase_sector(), iap_init(), iap_set_upgrade_flag(), main(), and msc_disk_write().

◆ flash_user_system_data_erase()

flash_status_type flash_user_system_data_erase ( void )

erase the flash user system data.

Note
this functions erases all user system data except the fap byte.
Parameters
none
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash fap relieve key val

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash erase operation timeout

< flash fap relieve key val

< internal flash program operation timeout

Definition at line 606 of file at32f403_flash.c.

◆ flash_user_system_data_program()

flash_status_type flash_user_system_data_program | ( | uint32_t | address,
 |  | uint8_t | data
 | ) |  |

program a halfword at a specified user system data address.

Parameters
address | specifies the address to be programmed.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash operation unlock order key1

< flash operation unlock order key2

< internal flash program operation timeout

Definition at line 791 of file at32f403_flash.c.

◆ flash_word_program()

flash_status_type flash_word_program | ( | uint32_t | address,
 |  | uint32_t | data
 | ) |  |

program a word at a specified address.

Parameters
address | specifies the address to be programmed, word alignment is recommended.
data | specifies the data to be programmed.
Return values
status the returned value can be: FLASH_PROGRAM_ERROR, FLASH_EPP_ERROR, FLASH_OPERATE_DONE or FLASH_OPERATE_TIMEOUT.

< flash start address of bank1

< flash end address of bank1

< internal flash program operation timeout

< flash start address of bank2

< flash end address of bank2

< internal flash program operation timeout

< flash start address of spim

< spim program operation timeout

Definition at line 658 of file at32f403_flash.c.

Referenced by flash_fat16_set_upgrade_flag(), iap_command_handle(), iap_data_write(), iap_set_upgrade_flag(), and spim_operate().


AT32F403 Firmwary Library: GPIO

Modules | Macros
GPIO
AT32F403_periph_driver

GPIO driver modules. More...

Modules

GPIO_pins_number_definition
IOMUX_map_definition
iomux map definitions
IOMUX_map2_definition
iomux map2 definitions
GPIO_exported_types
GPIO_exported_functions
GPIO_private_functions

Macros

#define | IOMUX_MAKE_VALUE(reg_offset, bit_addr, bit_num, bit_val) (uint32_t)(((reg_offset) << 24) | ((bit_addr) << 16) | ((bit_num) << 8) | (bit_val))
#define | GPIOA ((gpio_type *) GPIOA_BASE)
#define | GPIOB ((gpio_type *) GPIOB_BASE)
#define | GPIOC ((gpio_type *) GPIOC_BASE)
#define | GPIOD ((gpio_type *) GPIOD_BASE)
#define | GPIOE ((gpio_type *) GPIOE_BASE)
#define | GPIOF ((gpio_type *) GPIOF_BASE)
#define | GPIOG ((gpio_type *) GPIOG_BASE)
#define | IOMUX ((iomux_type *) IOMUX_BASE)

Detailed Description

GPIO driver modules.

Macro Definition Documentation

◆ GPIOA

#define GPIOA ((gpio_type *) GPIOA_BASE)

Definition at line 594 of file at32f403_gpio.h.

◆ GPIOB

#define GPIOB ((gpio_type *) GPIOB_BASE)

Definition at line 595 of file at32f403_gpio.h.

◆ GPIOC

#define GPIOC ((gpio_type *) GPIOC_BASE)

Definition at line 596 of file at32f403_gpio.h.

◆ GPIOD

#define GPIOD ((gpio_type *) GPIOD_BASE)

Definition at line 597 of file at32f403_gpio.h.

◆ GPIOE

#define GPIOE ((gpio_type *) GPIOE_BASE)

Definition at line 598 of file at32f403_gpio.h.

◆ GPIOF

#define GPIOF ((gpio_type *) GPIOF_BASE)

Definition at line 599 of file at32f403_gpio.h.

◆ GPIOG

#define GPIOG ((gpio_type *) GPIOG_BASE)

Definition at line 600 of file at32f403_gpio.h.

◆ IOMUX

#define IOMUX ((iomux_type *) IOMUX_BASE)

Definition at line 601 of file at32f403_gpio.h.

◆ IOMUX_MAKE_VALUE

#define IOMUX_MAKE_VALUE | ( | reg_offset,
 |  | bit_addr,
 |  | bit_num,
 |  | bit_val
 | ) | (uint32_t)(((reg_offset) << 24) | ((bit_addr) << 16) | ((bit_num) << 8) | (bit_val))

Definition at line 71 of file at32f403_gpio.h.


AT32F403 Firmwary Library: GPIO_pins_number_definition

Macros
GPIO_pins_number_definition
AT32F403_periph_driver » GPIO

Macros

#define | GPIO_PINS_0 0x0001
#define | GPIO_PINS_1 0x0002
#define | GPIO_PINS_2 0x0004
#define | GPIO_PINS_3 0x0008
#define | GPIO_PINS_4 0x0010
#define | GPIO_PINS_5 0x0020
#define | GPIO_PINS_6 0x0040
#define | GPIO_PINS_7 0x0080
#define | GPIO_PINS_8 0x0100
#define | GPIO_PINS_9 0x0200
#define | GPIO_PINS_10 0x0400
#define | GPIO_PINS_11 0x0800
#define | GPIO_PINS_12 0x1000
#define | GPIO_PINS_13 0x2000
#define | GPIO_PINS_14 0x4000
#define | GPIO_PINS_15 0x8000
#define | GPIO_PINS_ALL 0xFFFF

Detailed Description

Macro Definition Documentation

◆ GPIO_PINS_0

#define GPIO_PINS_0 0x0001

gpio pins number 0

Definition at line 49 of file at32f403_gpio.h.

◆ GPIO_PINS_1

#define GPIO_PINS_1 0x0002

gpio pins number 1

Definition at line 50 of file at32f403_gpio.h.

◆ GPIO_PINS_10

#define GPIO_PINS_10 0x0400

gpio pins number 10

Definition at line 59 of file at32f403_gpio.h.

◆ GPIO_PINS_11

#define GPIO_PINS_11 0x0800

gpio pins number 11

Definition at line 60 of file at32f403_gpio.h.

◆ GPIO_PINS_12

#define GPIO_PINS_12 0x1000

gpio pins number 12

Definition at line 61 of file at32f403_gpio.h.

◆ GPIO_PINS_13

#define GPIO_PINS_13 0x2000

gpio pins number 13

Definition at line 62 of file at32f403_gpio.h.

◆ GPIO_PINS_14

#define GPIO_PINS_14 0x4000

gpio pins number 14

Definition at line 63 of file at32f403_gpio.h.

◆ GPIO_PINS_15

#define GPIO_PINS_15 0x8000

gpio pins number 15

Definition at line 64 of file at32f403_gpio.h.

◆ GPIO_PINS_2

#define GPIO_PINS_2 0x0004

gpio pins number 2

Definition at line 51 of file at32f403_gpio.h.

◆ GPIO_PINS_3

#define GPIO_PINS_3 0x0008

gpio pins number 3

Definition at line 52 of file at32f403_gpio.h.

◆ GPIO_PINS_4

#define GPIO_PINS_4 0x0010

gpio pins number 4

Definition at line 53 of file at32f403_gpio.h.

◆ GPIO_PINS_5

#define GPIO_PINS_5 0x0020

gpio pins number 5

Definition at line 54 of file at32f403_gpio.h.

◆ GPIO_PINS_6

#define GPIO_PINS_6 0x0040

gpio pins number 6

Definition at line 55 of file at32f403_gpio.h.

◆ GPIO_PINS_7

#define GPIO_PINS_7 0x0080

gpio pins number 7

Definition at line 56 of file at32f403_gpio.h.

◆ GPIO_PINS_8

#define GPIO_PINS_8 0x0100

gpio pins number 8

Definition at line 57 of file at32f403_gpio.h.

◆ GPIO_PINS_9

#define GPIO_PINS_9 0x0200

gpio pins number 9

Definition at line 58 of file at32f403_gpio.h.

◆ GPIO_PINS_ALL

#define GPIO_PINS_ALL 0xFFFF

gpio all pins

Definition at line 65 of file at32f403_gpio.h.


AT32F403 Firmwary Library: IOMUX_map_definition

Macros
IOMUX_map_definition
AT32F403_periph_driver » GPIO

iomux map definitions More...

Macros

#define | SPI1_MUX_01 IOMUX_MAKE_VALUE(0x04, 0, 1, 0x01)
#define | SPI1_MUX_10 IOMUX_MAKE_VALUE(0x04, 31, 1, 0x01)
#define | I2C1_MUX IOMUX_MAKE_VALUE(0x04, 1, 1, 0x01)
#define | USART1_MUX IOMUX_MAKE_VALUE(0x04, 2, 1, 0x01)
#define | USART2_MUX IOMUX_MAKE_VALUE(0x04, 3, 1, 0x01)
#define | USART3_MUX_01 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x01)
#define | USART3_MUX_11 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x03)
#define | TMR1_MUX_01 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x01)
#define | TMR1_MUX_11 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x03)
#define | TMR2_MUX_01 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x01)
#define | TMR2_MUX_10 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x02)
#define | TMR2_MUX_11 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x03)
#define | TMR3_MUX_10 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x02)
#define | TMR3_MUX_11 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x03)
#define | TMR4_MUX IOMUX_MAKE_VALUE(0x04, 12, 1, 0x01)
#define | CAN_MUX_10 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x02)
#define | CAN_MUX_11 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x03)
#define | PD01_MUX IOMUX_MAKE_VALUE(0x04, 15, 1, 0x01)
#define | TMR5CH4_MUX IOMUX_MAKE_VALUE(0x04, 16, 1, 0x01)
#define | ADC1_ETP_MUX IOMUX_MAKE_VALUE(0x04, 17, 1, 0x01)
#define | ADC1_ETO_MUX IOMUX_MAKE_VALUE(0x04, 18, 1, 0x01)
#define | ADC2_ETP_MUX IOMUX_MAKE_VALUE(0x04, 19, 1, 0x01)
#define | ADC2_ETO_MUX IOMUX_MAKE_VALUE(0x04, 20, 1, 0x01)
#define | SWJTAG_MUX_001 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x01)
#define | SWJTAG_MUX_010 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x02)
#define | SWJTAG_MUX_100 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x04)

Detailed Description

iomux map definitions

Macro Definition Documentation

◆ ADC1_ETO_MUX

#define ADC1_ETO_MUX IOMUX_MAKE_VALUE(0x04, 18, 1, 0x01)

adc1 external trigger ordinary conversion muxing

Definition at line 99 of file at32f403_gpio.h.

◆ ADC1_ETP_MUX

#define ADC1_ETP_MUX IOMUX_MAKE_VALUE(0x04, 17, 1, 0x01)

adc1 external trigger preempted conversion muxing

Definition at line 98 of file at32f403_gpio.h.

◆ ADC2_ETO_MUX

#define ADC2_ETO_MUX IOMUX_MAKE_VALUE(0x04, 20, 1, 0x01)

adc2 external trigger ordinary conversion muxing

Definition at line 101 of file at32f403_gpio.h.

◆ ADC2_ETP_MUX

#define ADC2_ETP_MUX IOMUX_MAKE_VALUE(0x04, 19, 1, 0x01)

adc2 external trigger preempted conversion muxing

Definition at line 100 of file at32f403_gpio.h.

◆ CAN_MUX_10

#define CAN_MUX_10 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x02)

can_rx(pb8), can_tx(pb9)

Definition at line 94 of file at32f403_gpio.h.

◆ CAN_MUX_11

#define CAN_MUX_11 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x03)

can_rx(pd0), can_tx(pd1)

Definition at line 95 of file at32f403_gpio.h.

◆ I2C1_MUX

#define I2C1_MUX IOMUX_MAKE_VALUE(0x04, 1, 1, 0x01)

i2c1_scl(pb8), i2c1_sda(pb9)

Definition at line 81 of file at32f403_gpio.h.

◆ PD01_MUX

#define PD01_MUX IOMUX_MAKE_VALUE(0x04, 15, 1, 0x01)

pd0/pd1 mapping on osc_in/osc_out

Definition at line 96 of file at32f403_gpio.h.

◆ SPI1_MUX_01

#define SPI1_MUX_01 IOMUX_MAKE_VALUE(0x04, 0, 1, 0x01)

spi1_cs/i2s1_ws(pa15), spi1_sck/i2s1_ck(pb3), spi1_miso(pb4), spi1_mosi/i2s1_sd(pb5), i2s1_mck(pb0)

Definition at line 79 of file at32f403_gpio.h.

◆ SPI1_MUX_10

#define SPI1_MUX_10 IOMUX_MAKE_VALUE(0x04, 31, 1, 0x01)

spi1_cs/i2s1_ws(pa4), spi1_sck/i2s1_ck(pa5), spi1_miso(pa6), spi1_mosi/i2s1_sd(pa7), i2s1_mck(pb6)

Definition at line 80 of file at32f403_gpio.h.

◆ SWJTAG_MUX_001

#define SWJTAG_MUX_001 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x01)

full swj enabled (jtag-dp + sw-dp) but without jtrst

Definition at line 102 of file at32f403_gpio.h.

◆ SWJTAG_MUX_010

#define SWJTAG_MUX_010 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x02)

jtag-dp disabled and sw-dp enabled

Definition at line 103 of file at32f403_gpio.h.

◆ SWJTAG_MUX_100

#define SWJTAG_MUX_100 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x04)

full swj disabled (jtag-dp + sw-dp)

Definition at line 104 of file at32f403_gpio.h.

◆ TMR1_MUX_01

#define TMR1_MUX_01 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x01)

tmr1_ext(pa12), tmr1_ch1(pa8), tmr1_ch2(pa9), tmr1_ch3(pa10), tmr1_ch4(pa11), tmr1_brkin(pa6), tmr1_ch1c(pa7), tmr1_ch2c(pb0), tmr1_ch3c(pb1)

Definition at line 86 of file at32f403_gpio.h.

◆ TMR1_MUX_11

#define TMR1_MUX_11 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x03)

tmr1_ext(pe7), tmr1_ch1(pe9), tmr1_ch2(pe11), tmr1_ch3(pe13), tmr1_ch4(pe14), tmr1_brkin(pe15), tmr1_ch1c(pe8), tmr1_ch2c(pe10), tmr1_ch3c(pe12)

Definition at line 87 of file at32f403_gpio.h.

◆ TMR2_MUX_01

#define TMR2_MUX_01 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x01)

tmr2_ch1_ext(pa15), tmr2_ch2(pb3), tmr2_ch3(pa2), tmr2_ch4(pa3)

Definition at line 88 of file at32f403_gpio.h.

◆ TMR2_MUX_10

#define TMR2_MUX_10 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x02)

tmr2_ch1_ext(pa0), tmr2_ch2(pa1), tmr2_ch3(pb10), tmr2_ch4(pb11)

Definition at line 89 of file at32f403_gpio.h.

◆ TMR2_MUX_11

#define TMR2_MUX_11 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x03)

tmr2_ch1_ext(pa15), tmr2_ch2(pb3), tmr2_ch3(pb10), tmr2_ch4(pb11)

Definition at line 90 of file at32f403_gpio.h.

◆ TMR3_MUX_10

#define TMR3_MUX_10 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x02)

tmr3_ch1(pb4), tmr3_ch2(pb5), tmr3_ch3(pb0), tmr3_ch4(pb1)

Definition at line 91 of file at32f403_gpio.h.

◆ TMR3_MUX_11

#define TMR3_MUX_11 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x03)

tmr3_ch1(pc6), tmr3_ch2(pc7), tmr3_ch3(pc8), tmr3_ch4(pc9)

Definition at line 92 of file at32f403_gpio.h.

◆ TMR4_MUX

#define TMR4_MUX IOMUX_MAKE_VALUE(0x04, 12, 1, 0x01)

tmr4_ch1(pd12), tmr4_ch2(pd13), tmr4_ch3(pd14), tmr4_ch4(pd15)

Definition at line 93 of file at32f403_gpio.h.

◆ TMR5CH4_MUX

#define TMR5CH4_MUX IOMUX_MAKE_VALUE(0x04, 16, 1, 0x01)

lick connected to tmr5_ch4 input capture for calibration

Definition at line 97 of file at32f403_gpio.h.

◆ USART1_MUX

#define USART1_MUX IOMUX_MAKE_VALUE(0x04, 2, 1, 0x01)

usart1_tx(pb6), usart1_rx(pb7)

Definition at line 82 of file at32f403_gpio.h.

◆ USART2_MUX

#define USART2_MUX IOMUX_MAKE_VALUE(0x04, 3, 1, 0x01)

usart2_tx(pd5), usart2_rx(pd6), usart2_ck(pd7), usart2_cts(pd3), usart2_rts(pd4)

Definition at line 83 of file at32f403_gpio.h.

◆ USART3_MUX_01

#define USART3_MUX_01 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x01)

usart3_tx(pc10), usart3_rx(pc11), usart3_ck(pc12), usart3_cts(pb13), usart3_rts(pb14)

Definition at line 84 of file at32f403_gpio.h.

◆ USART3_MUX_11

#define USART3_MUX_11 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x03)

usart3_tx(pd8), usart3_rx(pd9), usart3_ck(pd10), usart3_cts(pd11), usart3_rts(pd12)

Definition at line 85 of file at32f403_gpio.h.


AT32F403 Firmwary Library: IOMUX_map2_definition

Macros
IOMUX_map2_definition
AT32F403_periph_driver » GPIO

iomux map2 definitions More...

Macros

#define | TMR15_MUX IOMUX_MAKE_VALUE(0x1C, 0, 1, 0x01)
#define | TMR9_MUX IOMUX_MAKE_VALUE(0x1C, 5, 1, 0x01)
#define | TMR10_MUX IOMUX_MAKE_VALUE(0x1C, 6, 1, 0x01)
#define | TMR11_MUX IOMUX_MAKE_VALUE(0x1C, 7, 1, 0x01)
#define | TMR13_MUX IOMUX_MAKE_VALUE(0x1C, 8, 1, 0x01)
#define | TMR14_MUX IOMUX_MAKE_VALUE(0x1C, 9, 1, 0x01)
#define | XMC_NADV_MUX IOMUX_MAKE_VALUE(0x1C, 10, 1, 0x01)
#define | SPI4_MUX IOMUX_MAKE_VALUE(0x1C, 17, 1, 0x01)
#define | I2C3_MUX IOMUX_MAKE_VALUE(0x1C, 18, 1, 0x01)
#define | SDIO2_MUX01 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x01)
#define | SDIO2_MUX10 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x02)
#define | SDIO2_MUX11 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x03)
#define | EXT_SPIM_EN_MUX IOMUX_MAKE_VALUE(0x1C, 21, 1, 0x01)

Detailed Description

iomux map2 definitions

Macro Definition Documentation

◆ EXT_SPIM_EN_MUX

#define EXT_SPIM_EN_MUX IOMUX_MAKE_VALUE(0x1C, 21, 1, 0x01)

enable external spi-flash interface

Definition at line 127 of file at32f403_gpio.h.

◆ I2C3_MUX

#define I2C3_MUX IOMUX_MAKE_VALUE(0x1C, 18, 1, 0x01)

i2c3_scl(pa8), i2c3_sda(pb4)

Definition at line 123 of file at32f403_gpio.h.

◆ SDIO2_MUX01

#define SDIO2_MUX01 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x01)

sdio2_ck(pc4), sdio2_cmd(pc5), sdio2_d0(pa4), sdio2_d1(pa5), sdio2_d2(pa6), sdio2_d3(pa7)

Definition at line 124 of file at32f403_gpio.h.

◆ SDIO2_MUX10

#define SDIO2_MUX10 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x02)

sdio2_ck(pa2), sdio2_cmd(pa3), sdio2_d0(pc0), sdio2_d1(pc1), sdio2_d2(pc2), sdio2_d3(pc3), sdio2_d4(pa4), sdio2_d5(pa5), sdio2_d6(pa6), sdio2_d7(pa7)

Definition at line 125 of file at32f403_gpio.h.

◆ SDIO2_MUX11

#define SDIO2_MUX11 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x03)

sdio2_ck(pa2), sdio2_cmd(pa3), sdio2_d0(pa4), sdio2_d1(pa5), sdio2_d2(pa6), sdio2_d3(pa7)

Definition at line 126 of file at32f403_gpio.h.

◆ SPI4_MUX

#define SPI4_MUX IOMUX_MAKE_VALUE(0x1C, 17, 1, 0x01)

spi4_cs/i2s4_ws(pe12), spi4_sck/i2s4_ck(pe11), spi4_miso(pe13), spi4_mosi/i2s4_sd(pe14), i2s4_mck(pc8)

Definition at line 122 of file at32f403_gpio.h.

◆ TMR10_MUX

#define TMR10_MUX IOMUX_MAKE_VALUE(0x1C, 6, 1, 0x01)

tmr10_ch1(pf6)

Definition at line 117 of file at32f403_gpio.h.

◆ TMR11_MUX

#define TMR11_MUX IOMUX_MAKE_VALUE(0x1C, 7, 1, 0x01)

tmr11_ch1(pf7)

Definition at line 118 of file at32f403_gpio.h.

◆ TMR13_MUX

#define TMR13_MUX IOMUX_MAKE_VALUE(0x1C, 8, 1, 0x01)

tmr13_ch1(pf8)

Definition at line 119 of file at32f403_gpio.h.

◆ TMR14_MUX

#define TMR14_MUX IOMUX_MAKE_VALUE(0x1C, 9, 1, 0x01)

tmr14_ch1(pf9)

Definition at line 120 of file at32f403_gpio.h.

◆ TMR15_MUX

#define TMR15_MUX IOMUX_MAKE_VALUE(0x1C, 0, 1, 0x01)

tmr15_ext(pf14),tmr15_ch1(pg2),tmr15_ch2(pg4),tmr15_ch3(pg6),tmr15_ch4(pf13),tmr15_brkin(pf15),tmr1_ch1c(pg3),tmr1_ch2c(pg5),tmr1_ch3c(pg7)

Definition at line 115 of file at32f403_gpio.h.

◆ TMR9_MUX

#define TMR9_MUX IOMUX_MAKE_VALUE(0x1C, 5, 1, 0x01)

tmr9_ch1(pe5), tmr9_ch2(pe6)

Definition at line 116 of file at32f403_gpio.h.

◆ XMC_NADV_MUX

#define XMC_NADV_MUX IOMUX_MAKE_VALUE(0x1C, 10, 1, 0x01)

xmc_nadv not used

Definition at line 121 of file at32f403_gpio.h.


AT32F403 Firmwary Library: GPIO_exported_types

Data Structures | Enumerations
GPIO_exported_types
AT32F403_periph_driver » GPIO

Data Structures

struct | gpio_init_type
gpio init type More...
struct | gpio_type
type define gpio register all More...
struct | iomux_type
type define iomux register all More...

Enumerations

enum | gpio_mode_type { GPIO_MODE_INPUT = 0x00 , GPIO_MODE_OUTPUT = 0x10 , GPIO_MODE_MUX = 0x08 , GPIO_MODE_ANALOG = 0x03 }
gpio mode select More...
enum | gpio_drive_type { GPIO_DRIVE_STRENGTH_STRONGER = 0x01 , GPIO_DRIVE_STRENGTH_MODERATE = 0x02 , GPIO_DRIVE_STRENGTH_MAXIMUM = 0x03 }
gpio output drive strength select More...
enum | gpio_output_type { GPIO_OUTPUT_PUSH_PULL = 0x00 , GPIO_OUTPUT_OPEN_DRAIN = 0x04 }
gpio output type More...
enum | gpio_pull_type { GPIO_PULL_NONE = 0x0004 , GPIO_PULL_UP = 0x0018 , GPIO_PULL_DOWN = 0x0028 }
gpio pull type More...
enum gpio_pins_source_type {
GPIO_PINS_SOURCE0 = 0x00 , GPIO_PINS_SOURCE1 = 0x01 , GPIO_PINS_SOURCE2 = 0x02 , GPIO_PINS_SOURCE3 = 0x03 ,
GPIO_PINS_SOURCE4 = 0x04 , GPIO_PINS_SOURCE5 = 0x05 , GPIO_PINS_SOURCE6 = 0x06 , GPIO_PINS_SOURCE7 = 0x07 ,
GPIO_PINS_SOURCE8 = 0x08 , GPIO_PINS_SOURCE9 = 0x09 , GPIO_PINS_SOURCE10 = 0x0A , GPIO_PINS_SOURCE11 = 0x0B ,
GPIO_PINS_SOURCE12 = 0x0C , GPIO_PINS_SOURCE13 = 0x0D , GPIO_PINS_SOURCE14 = 0x0E , GPIO_PINS_SOURCE15 = 0x0F
}
gpio pins source type More...
enum gpio_port_source_type {
GPIO_PORT_SOURCE_GPIOA = 0x00 , GPIO_PORT_SOURCE_GPIOB = 0x01 , GPIO_PORT_SOURCE_GPIOC = 0x02 , GPIO_PORT_SOURCE_GPIOD = 0x03 ,
GPIO_PORT_SOURCE_GPIOE = 0x04 , GPIO_PORT_SOURCE_GPIOF = 0x05 , GPIO_PORT_SOURCE_GPIOG = 0x06
}
gpio port source type More...

Detailed Description

Enumeration Type Documentation

◆ gpio_drive_type

enum gpio_drive_type

gpio output drive strength select

Enumerator
GPIO_DRIVE_STRENGTH_STRONGER | stronger sourcing/sinking strength
GPIO_DRIVE_STRENGTH_MODERATE | moderate sourcing/sinking strength
GPIO_DRIVE_STRENGTH_MAXIMUM | maximum sourcing/sinking strength

Definition at line 151 of file at32f403_gpio.h.

◆ gpio_mode_type

enum gpio_mode_type

gpio mode select

Enumerator
GPIO_MODE_INPUT | gpio input mode
GPIO_MODE_OUTPUT | gpio output mode
GPIO_MODE_MUX | gpio mux function mode
GPIO_MODE_ANALOG | gpio analog in/out mode

Definition at line 140 of file at32f403_gpio.h.

◆ gpio_output_type

enum gpio_output_type

gpio output type

Enumerator
GPIO_OUTPUT_PUSH_PULL | output push-pull
GPIO_OUTPUT_OPEN_DRAIN | output open-drain

Definition at line 161 of file at32f403_gpio.h.

◆ gpio_pins_source_type

enum gpio_pins_source_type

gpio pins source type

Enumerator
GPIO_PINS_SOURCE0 | gpio pins source number 0
GPIO_PINS_SOURCE1 | gpio pins source number 1
GPIO_PINS_SOURCE2 | gpio pins source number 2
GPIO_PINS_SOURCE3 | gpio pins source number 3
GPIO_PINS_SOURCE4 | gpio pins source number 4
GPIO_PINS_SOURCE5 | gpio pins source number 5
GPIO_PINS_SOURCE6 | gpio pins source number 6
GPIO_PINS_SOURCE7 | gpio pins source number 7
GPIO_PINS_SOURCE8 | gpio pins source number 8
GPIO_PINS_SOURCE9 | gpio pins source number 9
GPIO_PINS_SOURCE10 | gpio pins source number 10
GPIO_PINS_SOURCE11 | gpio pins source number 11
GPIO_PINS_SOURCE12 | gpio pins source number 12
GPIO_PINS_SOURCE13 | gpio pins source number 13
GPIO_PINS_SOURCE14 | gpio pins source number 14
GPIO_PINS_SOURCE15 | gpio pins source number 15

Definition at line 180 of file at32f403_gpio.h.

◆ gpio_port_source_type

enum gpio_port_source_type

gpio port source type

Enumerator
GPIO_PORT_SOURCE_GPIOA | gpio port source gpioa
GPIO_PORT_SOURCE_GPIOB | gpio port source gpiob
GPIO_PORT_SOURCE_GPIOC | gpio port source gpioc
GPIO_PORT_SOURCE_GPIOD | gpio port source gpiod
GPIO_PORT_SOURCE_GPIOE | gpio port source gpioe
GPIO_PORT_SOURCE_GPIOF | gpio port source gpiof
GPIO_PORT_SOURCE_GPIOG | gpio port source gpiog

Definition at line 203 of file at32f403_gpio.h.

◆ gpio_pull_type

enum gpio_pull_type

gpio pull type

Enumerator
GPIO_PULL_NONE | floating for input, no pull for output
GPIO_PULL_UP | pull-up
GPIO_PULL_DOWN | pull-down

Definition at line 170 of file at32f403_gpio.h.


AT32F403 Firmwary Library: gpio_init_type Struct Reference

Data Fields
gpio_init_type Struct Reference
AT32F403_periph_driver » GPIO » GPIO_exported_types

gpio init type More...

#include <at32f403_gpio.h>

Data Fields

uint32_t gpio_pins
gpio_output_type gpio_out_type
gpio_pull_type gpio_pull
gpio_mode_type gpio_mode
gpio_drive_type gpio_drive_strength

Detailed Description

gpio init type

Definition at line 217 of file at32f403_gpio.h.

Field Documentation

◆ gpio_drive_strength

gpio_drive_type gpio_init_type::gpio_drive_strength

drive strength selection

Definition at line 223 of file at32f403_gpio.h.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), gpio_default_para_init(), gpio_init(), i2c_lowlevel_init(), main(), mclk_tmr1_init(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), sd_init(), spiflash_init(), spim_init(), sram_init(), swj_dp_config(), tmr1_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

◆ gpio_mode

gpio_mode_type gpio_init_type::gpio_mode

mode selection

Definition at line 222 of file at32f403_gpio.h.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), gpio_default_para_init(), gpio_init(), i2c_lowlevel_init(), main(), mclk_tmr1_init(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), sd_init(), spiflash_init(), spim_init(), sram_init(), swj_dp_config(), tmr1_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

◆ gpio_out_type

gpio_output_type gpio_init_type::gpio_out_type

output type selection

Definition at line 220 of file at32f403_gpio.h.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), gpio_config(), gpio_configuration(), gpio_default_para_init(), gpio_init(), i2c_lowlevel_init(), main(), nand_init(), PCCARD_Init(), rs485_config(), sd_init(), spiflash_init(), spim_init(), swj_dp_config(), tmr1_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

◆ gpio_pins

uint32_t gpio_init_type::gpio_pins

pins number selection

Definition at line 219 of file at32f403_gpio.h.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), gpio_default_para_init(), gpio_init(), i2c_lowlevel_init(), main(), mclk_tmr1_init(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), sd_init(), spiflash_init(), spim_init(), sram_init(), swj_dp_config(), tmr1_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

◆ gpio_pull

gpio_pull_type gpio_init_type::gpio_pull

pull type selection

Definition at line 221 of file at32f403_gpio.h.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), gpio_default_para_init(), gpio_init(), i2c_lowlevel_init(), main(), nand_init(), PCCARD_Init(), rs485_config(), sd_init(), spiflash_init(), spim_init(), swj_dp_config(), tmr1_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

The documentation for this struct was generated from the following file:
  • at32f403_gpio.h


AT32F403 Firmwary Library: gpio_type Struct Reference

Data Fields
gpio_type Struct Reference
AT32F403_periph_driver » GPIO » GPIO_exported_types

type define gpio register all More...

#include <at32f403_gpio.h>

Data Fields

union {
__IO uint32_t cfglr
struct {
__IO uint32_t iomc0: 2
__IO uint32_t iofc0: 2
__IO uint32_t iomc1: 2
__IO uint32_t iofc1: 2
__IO uint32_t iomc2: 2
__IO uint32_t iofc2: 2
__IO uint32_t iomc3: 2
__IO uint32_t iofc3: 2
__IO uint32_t iomc4: 2
__IO uint32_t iofc4: 2
__IO uint32_t iomc5: 2
__IO uint32_t iofc5: 2
__IO uint32_t iomc6: 2
__IO uint32_t iofc6: 2
__IO uint32_t iomc7: 2
__IO uint32_t iofc7: 2
} cfglr_bit
};
gpio cfglr register, offset:0x00 More...
union {
__IO uint32_t cfghr
struct {
__IO uint32_t iomc8: 2
__IO uint32_t iofc8: 2
__IO uint32_t iomc9: 2
__IO uint32_t iofc9: 2
__IO uint32_t iomc10: 2
__IO uint32_t iofc10: 2
__IO uint32_t iomc11: 2
__IO uint32_t iofc11: 2
__IO uint32_t iomc12: 2
__IO uint32_t iofc12: 2
__IO uint32_t iomc13: 2
__IO uint32_t iofc13: 2
__IO uint32_t iomc14: 2
__IO uint32_t iofc14: 2
__IO uint32_t iomc15: 2
__IO uint32_t iofc15: 2
} cfghr_bit
};
gpio cfghr register, offset:0x04 More...
union {
__IO uint32_t idt
struct {
__IO uint32_t idt0: 1
__IO uint32_t idt1: 1
__IO uint32_t idt2: 1
__IO uint32_t idt3: 1
__IO uint32_t idt4: 1
__IO uint32_t idt5: 1
__IO uint32_t idt6: 1
__IO uint32_t idt7: 1
__IO uint32_t idt8: 1
__IO uint32_t idt9: 1
__IO uint32_t idt10: 1
__IO uint32_t idt11: 1
__IO uint32_t idt12: 1
__IO uint32_t idt13: 1
__IO uint32_t idt14: 1
__IO uint32_t idt15: 1
__IO uint32_t reserved1: 16
} idt_bit
};
gpio idt register, offset:0x08 More...
union {
__IO uint32_t odt
struct {
__IO uint32_t odt0: 1
__IO uint32_t odt1: 1
__IO uint32_t odt2: 1
__IO uint32_t odt3: 1
__IO uint32_t odt4: 1
__IO uint32_t odt5: 1
__IO uint32_t odt6: 1
__IO uint32_t odt7: 1
__IO uint32_t odt8: 1
__IO uint32_t odt9: 1
__IO uint32_t odt10: 1
__IO uint32_t odt11: 1
__IO uint32_t odt12: 1
__IO uint32_t odt13: 1
__IO uint32_t odt14: 1
__IO uint32_t odt15: 1
__IO uint32_t reserved1: 16
} odt_bit
};
gpio odt register, offset:0x0C More...
union {
__IO uint32_t scr
struct {
__IO uint32_t iosb0: 1
__IO uint32_t iosb1: 1
__IO uint32_t iosb2: 1
__IO uint32_t iosb3: 1
__IO uint32_t iosb4: 1
__IO uint32_t iosb5: 1
__IO uint32_t iosb6: 1
__IO uint32_t iosb7: 1
__IO uint32_t iosb8: 1
__IO uint32_t iosb9: 1
__IO uint32_t iosb10: 1
__IO uint32_t iosb11: 1
__IO uint32_t iosb12: 1
__IO uint32_t iosb13: 1
__IO uint32_t iosb14: 1
__IO uint32_t iosb15: 1
__IO uint32_t iocb0: 1
__IO uint32_t iocb1: 1
__IO uint32_t iocb2: 1
__IO uint32_t iocb3: 1
__IO uint32_t iocb4: 1
__IO uint32_t iocb5: 1
__IO uint32_t iocb6: 1
__IO uint32_t iocb7: 1
__IO uint32_t iocb8: 1
__IO uint32_t iocb9: 1
__IO uint32_t iocb10: 1
__IO uint32_t iocb11: 1
__IO uint32_t iocb12: 1
__IO uint32_t iocb13: 1
__IO uint32_t iocb14: 1
__IO uint32_t iocb15: 1
} scr_bit
};
gpio scr register, offset:0x10 More...
union {
__IO uint32_t clr
struct {
__IO uint32_t iocb0: 1
__IO uint32_t iocb1: 1
__IO uint32_t iocb2: 1
__IO uint32_t iocb3: 1
__IO uint32_t iocb4: 1
__IO uint32_t iocb5: 1
__IO uint32_t iocb6: 1
__IO uint32_t iocb7: 1
__IO uint32_t iocb8: 1
__IO uint32_t iocb9: 1
__IO uint32_t iocb10: 1
__IO uint32_t iocb11: 1
__IO uint32_t iocb12: 1
__IO uint32_t iocb13: 1
__IO uint32_t iocb14: 1
__IO uint32_t iocb15: 1
__IO uint32_t reserved1: 16
} clr_bit
};
gpio clr register, offset:0x14 More...
union {
__IO uint32_t wpr
struct {
__IO uint32_t wpen0: 1
__IO uint32_t wpen1: 1
__IO uint32_t wpen2: 1
__IO uint32_t wpen3: 1
__IO uint32_t wpen4: 1
__IO uint32_t wpen5: 1
__IO uint32_t wpen6: 1
__IO uint32_t wpen7: 1
__IO uint32_t wpen8: 1
__IO uint32_t wpen9: 1
__IO uint32_t wpen10: 1
__IO uint32_t wpen11: 1
__IO uint32_t wpen12: 1
__IO uint32_t wpen13: 1
__IO uint32_t wpen14: 1
__IO uint32_t wpen15: 1
__IO uint32_t wpseq: 1
__IO uint32_t reserved1: 15
} wpr_bit
};
gpio wpr register, offset:0x18 More...

Detailed Description

type define gpio register all

Definition at line 229 of file at32f403_gpio.h.

Field Documentation

◆

union { ... } gpio_type::@442

gpio cfglr register, offset:0x00

◆

union { ... } gpio_type::@444

gpio cfghr register, offset:0x04

◆

union { ... } gpio_type::@446

gpio idt register, offset:0x08

◆

union { ... } gpio_type::@448

gpio odt register, offset:0x0C

◆

union { ... } gpio_type::@450

gpio scr register, offset:0x10

◆

union { ... } gpio_type::@452

gpio clr register, offset:0x14

◆

union { ... } gpio_type::@454

gpio wpr register, offset:0x18

◆ cfghr

__IO uint32_t gpio_type::cfghr

Definition at line 263 of file at32f403_gpio.h.

Referenced by gpio_init().

◆

struct { ... } gpio_type::cfghr_bit

◆ cfglr

__IO uint32_t gpio_type::cfglr

Definition at line 236 of file at32f403_gpio.h.

Referenced by gpio_init().

◆

struct { ... } gpio_type::cfglr_bit

◆ clr

__IO uint32_t gpio_type::clr

Definition at line 389 of file at32f403_gpio.h.

Referenced by at32_led_on(), gpio_bits_reset(), gpio_bits_write(), and gpio_init().

◆

struct { ... } gpio_type::clr_bit

◆ idt

__IO uint32_t gpio_type::idt

Definition at line 290 of file at32f403_gpio.h.

Referenced by gpio_input_data_bit_read(), and gpio_input_data_read().

◆ idt0

__IO uint32_t gpio_type::idt0

Definition at line 293 of file at32f403_gpio.h.

◆ idt1

__IO uint32_t gpio_type::idt1

Definition at line 294 of file at32f403_gpio.h.

◆ idt10

__IO uint32_t gpio_type::idt10

Definition at line 303 of file at32f403_gpio.h.

◆ idt11

__IO uint32_t gpio_type::idt11

Definition at line 304 of file at32f403_gpio.h.

◆ idt12

__IO uint32_t gpio_type::idt12

Definition at line 305 of file at32f403_gpio.h.

◆ idt13

__IO uint32_t gpio_type::idt13

Definition at line 306 of file at32f403_gpio.h.

◆ idt14

__IO uint32_t gpio_type::idt14

Definition at line 307 of file at32f403_gpio.h.

◆ idt15

__IO uint32_t gpio_type::idt15

Definition at line 308 of file at32f403_gpio.h.

◆ idt2

__IO uint32_t gpio_type::idt2

Definition at line 295 of file at32f403_gpio.h.

◆ idt3

__IO uint32_t gpio_type::idt3

Definition at line 296 of file at32f403_gpio.h.

◆ idt4

__IO uint32_t gpio_type::idt4

Definition at line 297 of file at32f403_gpio.h.

◆ idt5

__IO uint32_t gpio_type::idt5

Definition at line 298 of file at32f403_gpio.h.

◆ idt6

__IO uint32_t gpio_type::idt6

Definition at line 299 of file at32f403_gpio.h.

◆ idt7

__IO uint32_t gpio_type::idt7

Definition at line 300 of file at32f403_gpio.h.

◆ idt8

__IO uint32_t gpio_type::idt8

Definition at line 301 of file at32f403_gpio.h.

◆ idt9

__IO uint32_t gpio_type::idt9

Definition at line 302 of file at32f403_gpio.h.

◆

struct { ... } gpio_type::idt_bit

◆ iocb0

__IO uint32_t gpio_type::iocb0

Definition at line 365 of file at32f403_gpio.h.

◆ iocb1

__IO uint32_t gpio_type::iocb1

Definition at line 366 of file at32f403_gpio.h.

◆ iocb10

__IO uint32_t gpio_type::iocb10

Definition at line 375 of file at32f403_gpio.h.

◆ iocb11

__IO uint32_t gpio_type::iocb11

Definition at line 376 of file at32f403_gpio.h.

◆ iocb12

__IO uint32_t gpio_type::iocb12

Definition at line 377 of file at32f403_gpio.h.

◆ iocb13

__IO uint32_t gpio_type::iocb13

Definition at line 378 of file at32f403_gpio.h.

◆ iocb14

__IO uint32_t gpio_type::iocb14

Definition at line 379 of file at32f403_gpio.h.

◆ iocb15

__IO uint32_t gpio_type::iocb15

Definition at line 380 of file at32f403_gpio.h.

◆ iocb2

__IO uint32_t gpio_type::iocb2

Definition at line 367 of file at32f403_gpio.h.

◆ iocb3

__IO uint32_t gpio_type::iocb3

Definition at line 368 of file at32f403_gpio.h.

◆ iocb4

__IO uint32_t gpio_type::iocb4

Definition at line 369 of file at32f403_gpio.h.

◆ iocb5

__IO uint32_t gpio_type::iocb5

Definition at line 370 of file at32f403_gpio.h.

◆ iocb6

__IO uint32_t gpio_type::iocb6

Definition at line 371 of file at32f403_gpio.h.

◆ iocb7

__IO uint32_t gpio_type::iocb7

Definition at line 372 of file at32f403_gpio.h.

◆ iocb8

__IO uint32_t gpio_type::iocb8

Definition at line 373 of file at32f403_gpio.h.

◆ iocb9

__IO uint32_t gpio_type::iocb9

Definition at line 374 of file at32f403_gpio.h.

◆ iofc0

__IO uint32_t gpio_type::iofc0

Definition at line 240 of file at32f403_gpio.h.

◆ iofc1

__IO uint32_t gpio_type::iofc1

Definition at line 242 of file at32f403_gpio.h.

◆ iofc10

__IO uint32_t gpio_type::iofc10

Definition at line 271 of file at32f403_gpio.h.

◆ iofc11

__IO uint32_t gpio_type::iofc11

Definition at line 273 of file at32f403_gpio.h.

◆ iofc12

__IO uint32_t gpio_type::iofc12

Definition at line 275 of file at32f403_gpio.h.

◆ iofc13

__IO uint32_t gpio_type::iofc13

Definition at line 277 of file at32f403_gpio.h.

◆ iofc14

__IO uint32_t gpio_type::iofc14

Definition at line 279 of file at32f403_gpio.h.

◆ iofc15

__IO uint32_t gpio_type::iofc15

Definition at line 281 of file at32f403_gpio.h.

◆ iofc2

__IO uint32_t gpio_type::iofc2

Definition at line 244 of file at32f403_gpio.h.

◆ iofc3

__IO uint32_t gpio_type::iofc3

Definition at line 246 of file at32f403_gpio.h.

◆ iofc4

__IO uint32_t gpio_type::iofc4

Definition at line 248 of file at32f403_gpio.h.

◆ iofc5

__IO uint32_t gpio_type::iofc5

Definition at line 250 of file at32f403_gpio.h.

◆ iofc6

__IO uint32_t gpio_type::iofc6

Definition at line 252 of file at32f403_gpio.h.

◆ iofc7

__IO uint32_t gpio_type::iofc7

Definition at line 254 of file at32f403_gpio.h.

◆ iofc8

__IO uint32_t gpio_type::iofc8

Definition at line 267 of file at32f403_gpio.h.

◆ iofc9

__IO uint32_t gpio_type::iofc9

Definition at line 269 of file at32f403_gpio.h.

◆ iomc0

__IO uint32_t gpio_type::iomc0

Definition at line 239 of file at32f403_gpio.h.

◆ iomc1

__IO uint32_t gpio_type::iomc1

Definition at line 241 of file at32f403_gpio.h.

◆ iomc10

__IO uint32_t gpio_type::iomc10

Definition at line 270 of file at32f403_gpio.h.

◆ iomc11

__IO uint32_t gpio_type::iomc11

Definition at line 272 of file at32f403_gpio.h.

◆ iomc12

__IO uint32_t gpio_type::iomc12

Definition at line 274 of file at32f403_gpio.h.

◆ iomc13

__IO uint32_t gpio_type::iomc13

Definition at line 276 of file at32f403_gpio.h.

◆ iomc14

__IO uint32_t gpio_type::iomc14

Definition at line 278 of file at32f403_gpio.h.

◆ iomc15

__IO uint32_t gpio_type::iomc15

Definition at line 280 of file at32f403_gpio.h.

◆ iomc2

__IO uint32_t gpio_type::iomc2

Definition at line 243 of file at32f403_gpio.h.

◆ iomc3

__IO uint32_t gpio_type::iomc3

Definition at line 245 of file at32f403_gpio.h.

◆ iomc4

__IO uint32_t gpio_type::iomc4

Definition at line 247 of file at32f403_gpio.h.

◆ iomc5

__IO uint32_t gpio_type::iomc5

Definition at line 249 of file at32f403_gpio.h.

◆ iomc6

__IO uint32_t gpio_type::iomc6

Definition at line 251 of file at32f403_gpio.h.

◆ iomc7

__IO uint32_t gpio_type::iomc7

Definition at line 253 of file at32f403_gpio.h.

◆ iomc8

__IO uint32_t gpio_type::iomc8

Definition at line 266 of file at32f403_gpio.h.

◆ iomc9

__IO uint32_t gpio_type::iomc9

Definition at line 268 of file at32f403_gpio.h.

◆ iosb0

__IO uint32_t gpio_type::iosb0

Definition at line 349 of file at32f403_gpio.h.

◆ iosb1

__IO uint32_t gpio_type::iosb1

Definition at line 350 of file at32f403_gpio.h.

◆ iosb10

__IO uint32_t gpio_type::iosb10

Definition at line 359 of file at32f403_gpio.h.

◆ iosb11

__IO uint32_t gpio_type::iosb11

Definition at line 360 of file at32f403_gpio.h.

◆ iosb12

__IO uint32_t gpio_type::iosb12

Definition at line 361 of file at32f403_gpio.h.

◆ iosb13

__IO uint32_t gpio_type::iosb13

Definition at line 362 of file at32f403_gpio.h.

◆ iosb14

__IO uint32_t gpio_type::iosb14

Definition at line 363 of file at32f403_gpio.h.

◆ iosb15

__IO uint32_t gpio_type::iosb15

Definition at line 364 of file at32f403_gpio.h.

◆ iosb2

__IO uint32_t gpio_type::iosb2

Definition at line 351 of file at32f403_gpio.h.

◆ iosb3

__IO uint32_t gpio_type::iosb3

Definition at line 352 of file at32f403_gpio.h.

◆ iosb4

__IO uint32_t gpio_type::iosb4

Definition at line 353 of file at32f403_gpio.h.

◆ iosb5

__IO uint32_t gpio_type::iosb5

Definition at line 354 of file at32f403_gpio.h.

◆ iosb6

__IO uint32_t gpio_type::iosb6

Definition at line 355 of file at32f403_gpio.h.

◆ iosb7

__IO uint32_t gpio_type::iosb7

Definition at line 356 of file at32f403_gpio.h.

◆ iosb8

__IO uint32_t gpio_type::iosb8

Definition at line 357 of file at32f403_gpio.h.

◆ iosb9

__IO uint32_t gpio_type::iosb9

Definition at line 358 of file at32f403_gpio.h.

◆ odt

__IO uint32_t gpio_type::odt

Definition at line 318 of file at32f403_gpio.h.

Referenced by at32_led_toggle(), gpio_output_data_bit_read(), gpio_output_data_read(), gpio_pins_toggle(), and gpio_port_write().

◆ odt0

__IO uint32_t gpio_type::odt0

Definition at line 321 of file at32f403_gpio.h.

◆ odt1

__IO uint32_t gpio_type::odt1

Definition at line 322 of file at32f403_gpio.h.

◆ odt10

__IO uint32_t gpio_type::odt10

Definition at line 331 of file at32f403_gpio.h.

◆ odt11

__IO uint32_t gpio_type::odt11

Definition at line 332 of file at32f403_gpio.h.

◆ odt12

__IO uint32_t gpio_type::odt12

Definition at line 333 of file at32f403_gpio.h.

◆ odt13

__IO uint32_t gpio_type::odt13

Definition at line 334 of file at32f403_gpio.h.

◆ odt14

__IO uint32_t gpio_type::odt14

Definition at line 335 of file at32f403_gpio.h.

◆ odt15

__IO uint32_t gpio_type::odt15

Definition at line 336 of file at32f403_gpio.h.

◆ odt2

__IO uint32_t gpio_type::odt2

Definition at line 323 of file at32f403_gpio.h.

◆ odt3

__IO uint32_t gpio_type::odt3

Definition at line 324 of file at32f403_gpio.h.

◆ odt4

__IO uint32_t gpio_type::odt4

Definition at line 325 of file at32f403_gpio.h.

◆ odt5

__IO uint32_t gpio_type::odt5

Definition at line 326 of file at32f403_gpio.h.

◆ odt6

__IO uint32_t gpio_type::odt6

Definition at line 327 of file at32f403_gpio.h.

◆ odt7

__IO uint32_t gpio_type::odt7

Definition at line 328 of file at32f403_gpio.h.

◆ odt8

__IO uint32_t gpio_type::odt8

Definition at line 329 of file at32f403_gpio.h.

◆ odt9

__IO uint32_t gpio_type::odt9

Definition at line 330 of file at32f403_gpio.h.

◆

struct { ... } gpio_type::odt_bit

◆ reserved1

__IO uint32_t gpio_type::reserved1

Definition at line 309 of file at32f403_gpio.h.

◆ scr

__IO uint32_t gpio_type::scr

Definition at line 346 of file at32f403_gpio.h.

Referenced by at32_led_off(), gpio_bits_set(), gpio_bits_write(), and gpio_init().

◆

struct { ... } gpio_type::scr_bit

◆ wpen0

__IO uint32_t gpio_type::wpen0

Definition at line 420 of file at32f403_gpio.h.

◆ wpen1

__IO uint32_t gpio_type::wpen1

Definition at line 421 of file at32f403_gpio.h.

◆ wpen10

__IO uint32_t gpio_type::wpen10

Definition at line 430 of file at32f403_gpio.h.

◆ wpen11

__IO uint32_t gpio_type::wpen11

Definition at line 431 of file at32f403_gpio.h.

◆ wpen12

__IO uint32_t gpio_type::wpen12

Definition at line 432 of file at32f403_gpio.h.

◆ wpen13

__IO uint32_t gpio_type::wpen13

Definition at line 433 of file at32f403_gpio.h.

◆ wpen14

__IO uint32_t gpio_type::wpen14

Definition at line 434 of file at32f403_gpio.h.

◆ wpen15

__IO uint32_t gpio_type::wpen15

Definition at line 435 of file at32f403_gpio.h.

◆ wpen2

__IO uint32_t gpio_type::wpen2

Definition at line 422 of file at32f403_gpio.h.

◆ wpen3

__IO uint32_t gpio_type::wpen3

Definition at line 423 of file at32f403_gpio.h.

◆ wpen4

__IO uint32_t gpio_type::wpen4

Definition at line 424 of file at32f403_gpio.h.

◆ wpen5

__IO uint32_t gpio_type::wpen5

Definition at line 425 of file at32f403_gpio.h.

◆ wpen6

__IO uint32_t gpio_type::wpen6

Definition at line 426 of file at32f403_gpio.h.

◆ wpen7

__IO uint32_t gpio_type::wpen7

Definition at line 427 of file at32f403_gpio.h.

◆ wpen8

__IO uint32_t gpio_type::wpen8

Definition at line 428 of file at32f403_gpio.h.

◆ wpen9

__IO uint32_t gpio_type::wpen9

Definition at line 429 of file at32f403_gpio.h.

◆ wpr

__IO uint32_t gpio_type::wpr

Definition at line 417 of file at32f403_gpio.h.

Referenced by gpio_pin_wp_config().

◆

struct { ... } gpio_type::wpr_bit

◆ wpseq

__IO uint32_t gpio_type::wpseq

Definition at line 436 of file at32f403_gpio.h.

The documentation for this struct was generated from the following file:
  • at32f403_gpio.h


AT32F403 Firmwary Library: iomux_type Struct Reference

Data Fields
iomux_type Struct Reference
AT32F403_periph_driver » GPIO » GPIO_exported_types

type define iomux register all More...

#include <at32f403_gpio.h>

Data Fields

union {
__IO uint32_t evtout
struct {
__IO uint32_t selpin: 4
__IO uint32_t selport: 3
__IO uint32_t evoen: 1
__IO uint32_t reserved1: 24
} evtout_bit
};
mux event control register, offset:0x00 More...
union {
__IO uint32_t remap
struct {
__IO uint32_t spi1_mux_l: 1
__IO uint32_t i2c1_mux: 1
__IO uint32_t usart1_mux: 1
__IO uint32_t usart2_mux: 1
__IO uint32_t usart3_mux: 2
__IO uint32_t tmr1_mux: 2
__IO uint32_t tmr2_mux: 2
__IO uint32_t tmr3_mux: 2
__IO uint32_t tmr4_mux: 1
__IO uint32_t can_mux: 2
__IO uint32_t pd01_mux: 1
__IO uint32_t tmr5ch4_mux: 1
__IO uint32_t adc1_extrgpre_mux: 1
__IO uint32_t adc1_extrgord_mux: 1
__IO uint32_t adc2_extrgpre_mux: 1
__IO uint32_t adc2_extrgord_mux: 1
__IO uint32_t reserved1: 3
__IO uint32_t swjtag_mux: 3
__IO uint32_t reserved2: 4
__IO uint32_t spi1_mux_h: 1
} remap_bit
};
iomux remap register, offset:0x04 More...
union {
__IO uint32_t exintc1
struct {
__IO uint32_t exint0: 4
__IO uint32_t exint1: 4
__IO uint32_t exint2: 4
__IO uint32_t exint3: 4
__IO uint32_t reserved1: 16
} exintc1_bit
};
mux external interrupt configuration register 1, offset:0x08 More...
union {
__IO uint32_t exintc2
struct {
__IO uint32_t exint4: 4
__IO uint32_t exint5: 4
__IO uint32_t exint6: 4
__IO uint32_t exint7: 4
__IO uint32_t reserved1: 16
} exintc2_bit
};
mux external interrupt configuration register 2, offset:0x0c More...
union {
__IO uint32_t exintc3
struct {
__IO uint32_t exint8: 4
__IO uint32_t exint9: 4
__IO uint32_t exint10: 4
__IO uint32_t exint11: 4
__IO uint32_t reserved1: 16
} exintc3_bit
};
mux external interrupt configuration register 3, offset:0x10 More...
union {
__IO uint32_t exintc4
struct {
__IO uint32_t exint12: 4
__IO uint32_t exint13: 4
__IO uint32_t exint14: 4
__IO uint32_t exint15: 4
__IO uint32_t reserved1: 16
} exintc4_bit
};
mux external interrupt configuration register 4, offset:0x14 More...
union {
__IO uint32_t remap2
struct {
__IO uint32_t tmr15_mux: 1
__IO uint32_t reserved1: 4
__IO uint32_t tmr9_mux: 1
__IO uint32_t tmr10_mux: 1
__IO uint32_t tmr11_mux: 1
__IO uint32_t tmr13_mux: 1
__IO uint32_t tmr14_mux: 1
__IO uint32_t xmc_nadv_mux: 1
__IO uint32_t reserved2: 6
__IO uint32_t spi4_mux: 1
__IO uint32_t i2c3_mux: 1
__IO uint32_t sdio2_mux: 2
__IO uint32_t ext_spim_en_mux: 1
__IO uint32_t reserved3: 10
} remap2_bit
};
iomux remap register 2, offset:0x1C More...

Detailed Description

type define iomux register all

Definition at line 446 of file at32f403_gpio.h.

Field Documentation

◆

union { ... } iomux_type::@463

mux event control register, offset:0x00

◆

union { ... } iomux_type::@465

iomux remap register, offset:0x04

◆

union { ... } iomux_type::@467

mux external interrupt configuration register 1, offset:0x08

◆

union { ... } iomux_type::@469

mux external interrupt configuration register 2, offset:0x0c

◆

union { ... } iomux_type::@471

mux external interrupt configuration register 3, offset:0x10

◆

union { ... } iomux_type::@473

mux external interrupt configuration register 4, offset:0x14

◆

union { ... } iomux_type::@475

iomux remap register 2, offset:0x1C

◆ adc1_extrgord_mux

__IO uint32_t iomux_type::adc1_extrgord_mux

Definition at line 484 of file at32f403_gpio.h.

◆ adc1_extrgpre_mux

__IO uint32_t iomux_type::adc1_extrgpre_mux

Definition at line 483 of file at32f403_gpio.h.

◆ adc2_extrgord_mux

__IO uint32_t iomux_type::adc2_extrgord_mux

Definition at line 486 of file at32f403_gpio.h.

◆ adc2_extrgpre_mux

__IO uint32_t iomux_type::adc2_extrgpre_mux

Definition at line 485 of file at32f403_gpio.h.

◆ can_mux

__IO uint32_t iomux_type::can_mux

Definition at line 480 of file at32f403_gpio.h.

◆ evoen

__IO uint32_t iomux_type::evoen

Definition at line 458 of file at32f403_gpio.h.

◆ evtout

__IO uint32_t iomux_type::evtout

Definition at line 453 of file at32f403_gpio.h.

◆

struct { ... } iomux_type::evtout_bit

◆ exint0

__IO uint32_t iomux_type::exint0

Definition at line 502 of file at32f403_gpio.h.

◆ exint1

__IO uint32_t iomux_type::exint1

Definition at line 503 of file at32f403_gpio.h.

◆ exint10

__IO uint32_t iomux_type::exint10

Definition at line 536 of file at32f403_gpio.h.

◆ exint11

__IO uint32_t iomux_type::exint11

Definition at line 537 of file at32f403_gpio.h.

◆ exint12

__IO uint32_t iomux_type::exint12

Definition at line 550 of file at32f403_gpio.h.

◆ exint13

__IO uint32_t iomux_type::exint13

Definition at line 551 of file at32f403_gpio.h.

◆ exint14

__IO uint32_t iomux_type::exint14

Definition at line 552 of file at32f403_gpio.h.

◆ exint15

__IO uint32_t iomux_type::exint15

Definition at line 553 of file at32f403_gpio.h.

◆ exint2

__IO uint32_t iomux_type::exint2

Definition at line 504 of file at32f403_gpio.h.

◆ exint3

__IO uint32_t iomux_type::exint3

Definition at line 505 of file at32f403_gpio.h.

◆ exint4

__IO uint32_t iomux_type::exint4

Definition at line 518 of file at32f403_gpio.h.

◆ exint5

__IO uint32_t iomux_type::exint5

Definition at line 519 of file at32f403_gpio.h.

◆ exint6

__IO uint32_t iomux_type::exint6

Definition at line 520 of file at32f403_gpio.h.

◆ exint7

__IO uint32_t iomux_type::exint7

Definition at line 521 of file at32f403_gpio.h.

◆ exint8

__IO uint32_t iomux_type::exint8

Definition at line 534 of file at32f403_gpio.h.

◆ exint9

__IO uint32_t iomux_type::exint9

Definition at line 535 of file at32f403_gpio.h.

◆ exintc1

__IO uint32_t iomux_type::exintc1

Definition at line 499 of file at32f403_gpio.h.

◆

struct { ... } iomux_type::exintc1_bit

◆ exintc2

__IO uint32_t iomux_type::exintc2

Definition at line 515 of file at32f403_gpio.h.

◆

struct { ... } iomux_type::exintc2_bit

◆ exintc3

__IO uint32_t iomux_type::exintc3

Definition at line 531 of file at32f403_gpio.h.

◆

struct { ... } iomux_type::exintc3_bit

◆ exintc4

__IO uint32_t iomux_type::exintc4

Definition at line 547 of file at32f403_gpio.h.

◆

struct { ... } iomux_type::exintc4_bit

◆ ext_spim_en_mux

__IO uint32_t iomux_type::ext_spim_en_mux

Definition at line 583 of file at32f403_gpio.h.

◆ i2c1_mux

__IO uint32_t iomux_type::i2c1_mux

Definition at line 472 of file at32f403_gpio.h.

◆ i2c3_mux

__IO uint32_t iomux_type::i2c3_mux

Definition at line 581 of file at32f403_gpio.h.

◆ pd01_mux

__IO uint32_t iomux_type::pd01_mux

Definition at line 481 of file at32f403_gpio.h.

◆ remap

__IO uint32_t iomux_type::remap

Definition at line 468 of file at32f403_gpio.h.

◆ remap2

__IO uint32_t iomux_type::remap2

Definition at line 568 of file at32f403_gpio.h.

◆

struct { ... } iomux_type::remap2_bit

◆

struct { ... } iomux_type::remap_bit

◆ reserved1

__IO uint32_t iomux_type::reserved1

iomux reserved1 register, offset:0x18

Definition at line 459 of file at32f403_gpio.h.

◆ reserved2

__IO uint32_t iomux_type::reserved2

Definition at line 489 of file at32f403_gpio.h.

◆ reserved3

__IO uint32_t iomux_type::reserved3

Definition at line 584 of file at32f403_gpio.h.

◆ sdio2_mux

__IO uint32_t iomux_type::sdio2_mux

Definition at line 582 of file at32f403_gpio.h.

◆ selpin

__IO uint32_t iomux_type::selpin

Definition at line 456 of file at32f403_gpio.h.

◆ selport

__IO uint32_t iomux_type::selport

Definition at line 457 of file at32f403_gpio.h.

◆ spi1_mux_h

__IO uint32_t iomux_type::spi1_mux_h

Definition at line 490 of file at32f403_gpio.h.

◆ spi1_mux_l

__IO uint32_t iomux_type::spi1_mux_l

Definition at line 471 of file at32f403_gpio.h.

◆ spi4_mux

__IO uint32_t iomux_type::spi4_mux

Definition at line 580 of file at32f403_gpio.h.

◆ swjtag_mux

__IO uint32_t iomux_type::swjtag_mux

Definition at line 488 of file at32f403_gpio.h.

◆ tmr10_mux

__IO uint32_t iomux_type::tmr10_mux

Definition at line 574 of file at32f403_gpio.h.

◆ tmr11_mux

__IO uint32_t iomux_type::tmr11_mux

Definition at line 575 of file at32f403_gpio.h.

◆ tmr13_mux

__IO uint32_t iomux_type::tmr13_mux

Definition at line 576 of file at32f403_gpio.h.

◆ tmr14_mux

__IO uint32_t iomux_type::tmr14_mux

Definition at line 577 of file at32f403_gpio.h.

◆ tmr15_mux

__IO uint32_t iomux_type::tmr15_mux

Definition at line 571 of file at32f403_gpio.h.

◆ tmr1_mux

__IO uint32_t iomux_type::tmr1_mux

Definition at line 476 of file at32f403_gpio.h.

◆ tmr2_mux

__IO uint32_t iomux_type::tmr2_mux

Definition at line 477 of file at32f403_gpio.h.

◆ tmr3_mux

__IO uint32_t iomux_type::tmr3_mux

Definition at line 478 of file at32f403_gpio.h.

◆ tmr4_mux

__IO uint32_t iomux_type::tmr4_mux

Definition at line 479 of file at32f403_gpio.h.

◆ tmr5ch4_mux

__IO uint32_t iomux_type::tmr5ch4_mux

Definition at line 482 of file at32f403_gpio.h.

◆ tmr9_mux

__IO uint32_t iomux_type::tmr9_mux

Definition at line 573 of file at32f403_gpio.h.

◆ usart1_mux

__IO uint32_t iomux_type::usart1_mux

Definition at line 473 of file at32f403_gpio.h.

◆ usart2_mux

__IO uint32_t iomux_type::usart2_mux

Definition at line 474 of file at32f403_gpio.h.

◆ usart3_mux

__IO uint32_t iomux_type::usart3_mux

Definition at line 475 of file at32f403_gpio.h.

◆ xmc_nadv_mux

__IO uint32_t iomux_type::xmc_nadv_mux

Definition at line 578 of file at32f403_gpio.h.

The documentation for this struct was generated from the following file:
  • at32f403_gpio.h


AT32F403 Firmwary Library: GPIO_exported_functions

Functions
GPIO_exported_functions
AT32F403_periph_driver » GPIO

Functions

void | gpio_reset (gpio_type *gpio_x)
reset the gpio register More...
void | gpio_iomux_reset (void)
reset the mux functions (remap, event control and exint configuration) registers to their default values. More...
void | gpio_init (gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral. More...
void | gpio_default_para_init (gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value. More...
flag_status | gpio_input_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified input port pin. More...
uint16_t | gpio_input_data_read (gpio_type *gpio_x)
read the specified gpio input data port. More...
flag_status | gpio_output_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified output port pin. More...
uint16_t | gpio_output_data_read (gpio_type *gpio_x)
read the specified gpio ouput data port. More...
void | gpio_bits_set (gpio_type *gpio_x, uint16_t pins)
set the selected data port bits. More...
void | gpio_bits_reset (gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits. More...
void | gpio_bits_write (gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
set or clear the selected data port bit. More...
void | gpio_port_write (gpio_type *gpio_x, uint16_t port_value)
write data to the specified gpio data port. More...
void | gpio_pin_wp_config (gpio_type *gpio_x, uint16_t pins)
write protect gpio pins configuration registers. More...
void | gpio_event_output_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as event output. More...
void | gpio_event_output_enable (confirm_state new_state)
enable or disable the event output. More...
void | gpio_pin_remap_config (uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration. More...
void | gpio_exint_line_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line. More...

Detailed Description

Function Documentation

◆ gpio_bits_reset()

void gpio_bits_reset | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

clear the selected data port bits.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number parameter can be any combination of gpio_pin_x, gpio_pin_x as following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
Return values
none

Definition at line 349 of file at32f403_gpio.c.

Referenced by EXINT9_5_IRQHandler(), main(), rs485_config(), rs485_send_data(), and TMR2_GLOBAL_IRQHandler().

◆ gpio_bits_set()

void gpio_bits_set | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

set the selected data port bits.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number parameter can be any combination of gpio_pin_x, gpio_pin_x as following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
Return values
none

Definition at line 318 of file at32f403_gpio.c.

Referenced by EXINT9_5_IRQHandler(), main(), rs485_send_data(), touch_pin_init(), and usart_configuration().

◆ gpio_bits_write()

void gpio_bits_write | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins,
 |  | confirm_state | bit_state
 | ) |  |

set or clear the selected data port bit.

Parameters
gpio_x | to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number parameter can be any combination of gpio_pin_x, gpio_pin_x as following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
bit_state | specifies the value to be written to the selected bit (TRUE or FALSE).
Return values
none

Definition at line 381 of file at32f403_gpio.c.

Referenced by TMR2_GLOBAL_IRQHandler().

◆ gpio_default_para_init()

void gpio_default_para_init ( gpio_init_type * gpio_init_struct )

fill each gpio_init_type member with its default value.

Parameters
gpio_init_struct : pointer to a gpio_init_type structure which will be initialized.
Return values
none

< gpio all pins

Definition at line 176 of file at32f403_gpio.c.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), mclk_tmr1_init(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), spim_init(), sram_init(), tmr1_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), and usart_spi_configuration().

◆ gpio_event_output_config()

void gpio_event_output_config | ( | gpio_port_source_type | gpio_port_source,
 |  | gpio_pins_source_type | gpio_pin_source
 | ) |  |

select the gpio pin used as event output.

Parameters
gpio_port_source select the gpio port to be used as source for event output. this parameter can be one of the following values:
  • GPIO_PORT_SOURCE_GPIOA
  • GPIO_PORT_SOURCE_GPIOB
  • GPIO_PORT_SOURCE_GPIOC
  • GPIO_PORT_SOURCE_GPIOD
  • GPIO_PORT_SOURCE_GPIOE
gpio_pin_source specifies the pin for the event output. this parameter can be one of the following values:
  • GPIO_PINS_SOURCE0
  • GPIO_PINS_SOURCE1
  • GPIO_PINS_SOURCE2
  • GPIO_PINS_SOURCE3
  • GPIO_PINS_SOURCE4
  • GPIO_PINS_SOURCE5
  • GPIO_PINS_SOURCE6
  • GPIO_PINS_SOURCE7
  • GPIO_PINS_SOURCE8
  • GPIO_PINS_SOURCE9
  • GPIO_PINS_SOURCE10
  • GPIO_PINS_SOURCE11
  • GPIO_PINS_SOURCE12
  • GPIO_PINS_SOURCE13
  • GPIO_PINS_SOURCE14
  • GPIO_PINS_SOURCE15
Return values
none

Definition at line 479 of file at32f403_gpio.c.

◆ gpio_event_output_enable()

void gpio_event_output_enable ( confirm_state new_state )

enable or disable the event output.

Parameters
confirm_state new state of the event output. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 498 of file at32f403_gpio.c.

◆ gpio_exint_line_config()

void gpio_exint_line_config | ( | gpio_port_source_type | gpio_port_source,
 |  | gpio_pins_source_type | gpio_pin_source
 | ) |  |

select the gpio pin used as exint line.

Parameters
gpio_port_source select the gpio port to be used as source for exint. this parameter can be one of the following values:
  • GPIO_PORT_SOURCE_GPIOA
  • GPIO_PORT_SOURCE_GPIOB
  • GPIO_PORT_SOURCE_GPIOC
  • GPIO_PORT_SOURCE_GPIOD
  • GPIO_PORT_SOURCE_GPIOE
  • GPIO_PORT_SOURCE_GPIOF
  • GPIO_PORT_SOURCE_GPIOG
gpio_pin_source specifies the pin for the event output. this parameter can be one of the following values:
  • GPIO_PINS_SOURCE0
  • GPIO_PINS_SOURCE1
  • GPIO_PINS_SOURCE2
  • GPIO_PINS_SOURCE3
  • GPIO_PINS_SOURCE4
  • GPIO_PINS_SOURCE5
  • GPIO_PINS_SOURCE6
  • GPIO_PINS_SOURCE7
  • GPIO_PINS_SOURCE8
  • GPIO_PINS_SOURCE9
  • GPIO_PINS_SOURCE10
  • GPIO_PINS_SOURCE11
  • GPIO_PINS_SOURCE12
  • GPIO_PINS_SOURCE13
  • GPIO_PINS_SOURCE14
  • GPIO_PINS_SOURCE15
Return values
none

Definition at line 587 of file at32f403_gpio.c.

Referenced by button_exint_init(), exint_config(), exint_line0_config(), and usart_configuration().

◆ gpio_init()

void gpio_init | ( | gpio_type * | gpio_x,
 |  | gpio_init_type * | gpio_init_struct
 | ) |  |

initialize the gpio peripheral.

Parameters
gpio_x | to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
gpio_init_struct | pointer to gpio init structure.
Return values
none

Definition at line 108 of file at32f403_gpio.c.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), i2c_lowlevel_init(), main(), mclk_tmr1_init(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), sd_init(), spiflash_init(), spim_init(), sram_init(), swj_dp_config(), tmr1_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

◆ gpio_input_data_bit_read()

flag_status gpio_input_data_bit_read | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

read the specified input port pin.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number this parameter can be one of the following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
Return values
flag_status (SET or RESET)

Definition at line 211 of file at32f403_gpio.c.

Referenced by at32_button_state(), button_isr(), gpio_config(), nor_getstatus(), and touch_scan().

◆ gpio_input_data_read()

uint16_t gpio_input_data_read ( gpio_type * gpio_x )

read the specified gpio input data port.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
Return values
gpio input data port value.

Definition at line 234 of file at32f403_gpio.c.

◆ gpio_iomux_reset()

void gpio_iomux_reset ( void )

reset the mux functions (remap, event control and exint configuration) registers to their default values.

Parameters
none
Return values
none

Definition at line 94 of file at32f403_gpio.c.

◆ gpio_output_data_bit_read()

flag_status gpio_output_data_bit_read | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

read the specified output port pin.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number this parameter can be one of the following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
Return values
flag_status (SET or RESET)

Definition at line 264 of file at32f403_gpio.c.

Referenced by TMR2_GLOBAL_IRQHandler().

◆ gpio_output_data_read()

uint16_t gpio_output_data_read ( gpio_type * gpio_x )

read the specified gpio ouput data port.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
Return values
gpio input data port value.

Definition at line 287 of file at32f403_gpio.c.

◆ gpio_pin_remap_config()

void gpio_pin_remap_config | ( | uint32_t | gpio_remap,
 |  | confirm_state | new_state
 | ) |  |

iomux remap and debug i/o configuration.

Parameters
gpio_remap select the pin to remap. this parameter can be one of the following values:
  • SPI1_MUX_01 - SPI1_MUX_10 - I2C1_MUX - USART1_MUX
  • USART2_MUX - USART3_MUX_01 - USART3_MUX_11 - TMR1_MUX_01
  • TMR1_MUX_11 - TMR2_MUX_01 - TMR2_MUX_10 - TMR2_MUX_11
  • TMR3_MUX_10 - TMR3_MUX_11 - TMR4_MUX - CAN_MUX_10
  • CAN_MUX_11 - PD01_MUX - TMR5CH4_MUX - ADC1_EXTRGPRE_MUX
  • ADC1_EXTRGORD_MUX - ADC2_EXTRGPRE_MUX - ADC2_EXTRGORD_MUX - SWJTAG_MUX_001
  • SWJTAG_MUX_010 - SWJTAG_MUX_100
  • TMR15_MUX - TMR9_MUX - TMR10_MUX - TMR11_MUX
  • TMR13_MUX - TMR14_MUX - XMC_NADV_MUX - SPI4_MUX
  • I2C3_MUX - SDIO2_MUX01 - SDIO2_MUX10 - SDIO2_MUX11
  • EXT_SPIM_EN_MUX
new_state (TRUE or FALSE)
Return values
none

< spi1_cs/i2s1_ws(pa15), spi1_sck/i2s1_ck(pb3), spi1_miso(pb4), spi1_mosi/i2s1_sd(pb5), i2s1_mck(pb0)

< spi1_cs/i2s1_ws(pa4), spi1_sck/i2s1_ck(pa5), spi1_miso(pa6), spi1_mosi/i2s1_sd(pa7), i2s1_mck(pb6)

Definition at line 521 of file at32f403_gpio.c.

Referenced by can_gpio_config(), gpio_config(), i2c_lowlevel_init(), main(), spim_init(), and usart_configuration().

◆ gpio_pin_wp_config()

void gpio_pin_wp_config | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

write protect gpio pins configuration registers.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number this parameter can be any combination of the following:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
Return values
none

Definition at line 432 of file at32f403_gpio.c.

◆ gpio_port_write()

void gpio_port_write | ( | gpio_type * | gpio_x,
 |  | uint16_t | port_value
 | ) |  |

write data to the specified gpio data port.

Parameters
gpio_x | to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
port_value | specifies the value to be written to the port output data register.
Return values
none

Definition at line 401 of file at32f403_gpio.c.

◆ gpio_reset()

void gpio_reset ( gpio_type * gpio_x )

reset the gpio register

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
Return values
none

Definition at line 49 of file at32f403_gpio.c.


AT32F403 Firmwary Library: GPIO_private_functions

Functions
GPIO_private_functions
AT32F403_periph_driver » GPIO

Functions

void | gpio_reset (gpio_type *gpio_x)
reset the gpio register More...
void | gpio_iomux_reset (void)
reset the mux functions (remap, event control and exint configuration) registers to their default values. More...
void | gpio_init (gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral. More...
void | gpio_default_para_init (gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value. More...
flag_status | gpio_input_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified input port pin. More...
uint16_t | gpio_input_data_read (gpio_type *gpio_x)
read the specified gpio input data port. More...
flag_status | gpio_output_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified output port pin. More...
uint16_t | gpio_output_data_read (gpio_type *gpio_x)
read the specified gpio ouput data port. More...
void | gpio_bits_set (gpio_type *gpio_x, uint16_t pins)
set the selected data port bits. More...
void | gpio_bits_reset (gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits. More...
void | gpio_bits_write (gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
set or clear the selected data port bit. More...
void | gpio_port_write (gpio_type *gpio_x, uint16_t port_value)
write data to the specified gpio data port. More...
void | gpio_pin_wp_config (gpio_type *gpio_x, uint16_t pins)
write protect gpio pins configuration registers. More...
void | gpio_event_output_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as event output. More...
void | gpio_event_output_enable (confirm_state new_state)
enable or disable the event output. More...
void | gpio_pin_remap_config (uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration. More...
void | gpio_exint_line_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line. More...

Detailed Description

Function Documentation

◆ gpio_bits_reset()

void gpio_bits_reset | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

clear the selected data port bits.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number parameter can be any combination of gpio_pin_x, gpio_pin_x as following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
Return values
none

Definition at line 349 of file at32f403_gpio.c.

Referenced by EXINT9_5_IRQHandler(), main(), rs485_config(), rs485_send_data(), and TMR2_GLOBAL_IRQHandler().

◆ gpio_bits_set()

void gpio_bits_set | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

set the selected data port bits.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number parameter can be any combination of gpio_pin_x, gpio_pin_x as following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
Return values
none

Definition at line 318 of file at32f403_gpio.c.

Referenced by EXINT9_5_IRQHandler(), main(), rs485_send_data(), touch_pin_init(), and usart_configuration().

◆ gpio_bits_write()

void gpio_bits_write | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins,
 |  | confirm_state | bit_state
 | ) |  |

set or clear the selected data port bit.

Parameters
gpio_x | to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number parameter can be any combination of gpio_pin_x, gpio_pin_x as following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
bit_state | specifies the value to be written to the selected bit (TRUE or FALSE).
Return values
none

Definition at line 381 of file at32f403_gpio.c.

Referenced by TMR2_GLOBAL_IRQHandler().

◆ gpio_default_para_init()

void gpio_default_para_init ( gpio_init_type * gpio_init_struct )

fill each gpio_init_type member with its default value.

Parameters
gpio_init_struct : pointer to a gpio_init_type structure which will be initialized.
Return values
none

< gpio all pins

Definition at line 176 of file at32f403_gpio.c.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), mclk_tmr1_init(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), spim_init(), sram_init(), tmr1_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), and usart_spi_configuration().

◆ gpio_event_output_config()

void gpio_event_output_config | ( | gpio_port_source_type | gpio_port_source,
 |  | gpio_pins_source_type | gpio_pin_source
 | ) |  |

select the gpio pin used as event output.

Parameters
gpio_port_source select the gpio port to be used as source for event output. this parameter can be one of the following values:
  • GPIO_PORT_SOURCE_GPIOA
  • GPIO_PORT_SOURCE_GPIOB
  • GPIO_PORT_SOURCE_GPIOC
  • GPIO_PORT_SOURCE_GPIOD
  • GPIO_PORT_SOURCE_GPIOE
gpio_pin_source specifies the pin for the event output. this parameter can be one of the following values:
  • GPIO_PINS_SOURCE0
  • GPIO_PINS_SOURCE1
  • GPIO_PINS_SOURCE2
  • GPIO_PINS_SOURCE3
  • GPIO_PINS_SOURCE4
  • GPIO_PINS_SOURCE5
  • GPIO_PINS_SOURCE6
  • GPIO_PINS_SOURCE7
  • GPIO_PINS_SOURCE8
  • GPIO_PINS_SOURCE9
  • GPIO_PINS_SOURCE10
  • GPIO_PINS_SOURCE11
  • GPIO_PINS_SOURCE12
  • GPIO_PINS_SOURCE13
  • GPIO_PINS_SOURCE14
  • GPIO_PINS_SOURCE15
Return values
none

Definition at line 479 of file at32f403_gpio.c.

◆ gpio_event_output_enable()

void gpio_event_output_enable ( confirm_state new_state )

enable or disable the event output.

Parameters
confirm_state new state of the event output. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 498 of file at32f403_gpio.c.

◆ gpio_exint_line_config()

void gpio_exint_line_config | ( | gpio_port_source_type | gpio_port_source,
 |  | gpio_pins_source_type | gpio_pin_source
 | ) |  |

select the gpio pin used as exint line.

Parameters
gpio_port_source select the gpio port to be used as source for exint. this parameter can be one of the following values:
  • GPIO_PORT_SOURCE_GPIOA
  • GPIO_PORT_SOURCE_GPIOB
  • GPIO_PORT_SOURCE_GPIOC
  • GPIO_PORT_SOURCE_GPIOD
  • GPIO_PORT_SOURCE_GPIOE
  • GPIO_PORT_SOURCE_GPIOF
  • GPIO_PORT_SOURCE_GPIOG
gpio_pin_source specifies the pin for the event output. this parameter can be one of the following values:
  • GPIO_PINS_SOURCE0
  • GPIO_PINS_SOURCE1
  • GPIO_PINS_SOURCE2
  • GPIO_PINS_SOURCE3
  • GPIO_PINS_SOURCE4
  • GPIO_PINS_SOURCE5
  • GPIO_PINS_SOURCE6
  • GPIO_PINS_SOURCE7
  • GPIO_PINS_SOURCE8
  • GPIO_PINS_SOURCE9
  • GPIO_PINS_SOURCE10
  • GPIO_PINS_SOURCE11
  • GPIO_PINS_SOURCE12
  • GPIO_PINS_SOURCE13
  • GPIO_PINS_SOURCE14
  • GPIO_PINS_SOURCE15
Return values
none

Definition at line 587 of file at32f403_gpio.c.

Referenced by button_exint_init(), exint_config(), exint_line0_config(), and usart_configuration().

◆ gpio_init()

void gpio_init | ( | gpio_type * | gpio_x,
 |  | gpio_init_type * | gpio_init_struct
 | ) |  |

initialize the gpio peripheral.

Parameters
gpio_x | to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
gpio_init_struct | pointer to gpio init structure.
Return values
none

Definition at line 108 of file at32f403_gpio.c.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), exint_config(), gpio_config(), gpio_configuration(), i2c_lowlevel_init(), main(), mclk_tmr1_init(), nand_init(), nor_init(), PCCARD_Init(), psram_init(), rs485_config(), sd_init(), spiflash_init(), spim_init(), sram_init(), swj_dp_config(), tmr1_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

◆ gpio_input_data_bit_read()

flag_status gpio_input_data_bit_read | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

read the specified input port pin.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number this parameter can be one of the following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
Return values
flag_status (SET or RESET)

Definition at line 211 of file at32f403_gpio.c.

Referenced by at32_button_state(), button_isr(), gpio_config(), nor_getstatus(), and touch_scan().

◆ gpio_input_data_read()

uint16_t gpio_input_data_read ( gpio_type * gpio_x )

read the specified gpio input data port.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
Return values
gpio input data port value.

Definition at line 234 of file at32f403_gpio.c.

◆ gpio_iomux_reset()

void gpio_iomux_reset ( void )

reset the mux functions (remap, event control and exint configuration) registers to their default values.

Parameters
none
Return values
none

Definition at line 94 of file at32f403_gpio.c.

◆ gpio_output_data_bit_read()

flag_status gpio_output_data_bit_read | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

read the specified output port pin.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number this parameter can be one of the following values:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
Return values
flag_status (SET or RESET)

Definition at line 264 of file at32f403_gpio.c.

Referenced by TMR2_GLOBAL_IRQHandler().

◆ gpio_output_data_read()

uint16_t gpio_output_data_read ( gpio_type * gpio_x )

read the specified gpio ouput data port.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
Return values
gpio input data port value.

Definition at line 287 of file at32f403_gpio.c.

◆ gpio_pin_remap_config()

void gpio_pin_remap_config | ( | uint32_t | gpio_remap,
 |  | confirm_state | new_state
 | ) |  |

iomux remap and debug i/o configuration.

Parameters
gpio_remap select the pin to remap. this parameter can be one of the following values:
  • SPI1_MUX_01 - SPI1_MUX_10 - I2C1_MUX - USART1_MUX
  • USART2_MUX - USART3_MUX_01 - USART3_MUX_11 - TMR1_MUX_01
  • TMR1_MUX_11 - TMR2_MUX_01 - TMR2_MUX_10 - TMR2_MUX_11
  • TMR3_MUX_10 - TMR3_MUX_11 - TMR4_MUX - CAN_MUX_10
  • CAN_MUX_11 - PD01_MUX - TMR5CH4_MUX - ADC1_EXTRGPRE_MUX
  • ADC1_EXTRGORD_MUX - ADC2_EXTRGPRE_MUX - ADC2_EXTRGORD_MUX - SWJTAG_MUX_001
  • SWJTAG_MUX_010 - SWJTAG_MUX_100
  • TMR15_MUX - TMR9_MUX - TMR10_MUX - TMR11_MUX
  • TMR13_MUX - TMR14_MUX - XMC_NADV_MUX - SPI4_MUX
  • I2C3_MUX - SDIO2_MUX01 - SDIO2_MUX10 - SDIO2_MUX11
  • EXT_SPIM_EN_MUX
new_state (TRUE or FALSE)
Return values
none

< spi1_cs/i2s1_ws(pa15), spi1_sck/i2s1_ck(pb3), spi1_miso(pb4), spi1_mosi/i2s1_sd(pb5), i2s1_mck(pb0)

< spi1_cs/i2s1_ws(pa4), spi1_sck/i2s1_ck(pa5), spi1_miso(pa6), spi1_mosi/i2s1_sd(pa7), i2s1_mck(pb6)

Definition at line 521 of file at32f403_gpio.c.

Referenced by can_gpio_config(), gpio_config(), i2c_lowlevel_init(), main(), spim_init(), and usart_configuration().

◆ gpio_pin_wp_config()

void gpio_pin_wp_config | ( | gpio_type * | gpio_x,
 |  | uint16_t | pins
 | ) |  |

write protect gpio pins configuration registers.

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
pins gpio pin number this parameter can be any combination of the following:
  • GPIO_PINS_0
  • GPIO_PINS_1
  • GPIO_PINS_2
  • GPIO_PINS_3
  • GPIO_PINS_4
  • GPIO_PINS_5
  • GPIO_PINS_6
  • GPIO_PINS_7
  • GPIO_PINS_8
  • GPIO_PINS_9
  • GPIO_PINS_10
  • GPIO_PINS_11
  • GPIO_PINS_12
  • GPIO_PINS_13
  • GPIO_PINS_14
  • GPIO_PINS_15
  • GPIO_PINS_ALL
Return values
none

Definition at line 432 of file at32f403_gpio.c.

◆ gpio_port_write()

void gpio_port_write | ( | gpio_type * | gpio_x,
 |  | uint16_t | port_value
 | ) |  |

write data to the specified gpio data port.

Parameters
gpio_x | to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
port_value | specifies the value to be written to the port output data register.
Return values
none

Definition at line 401 of file at32f403_gpio.c.

◆ gpio_reset()

void gpio_reset ( gpio_type * gpio_x )

reset the gpio register

Parameters
gpio_x to select the gpio peripheral. this parameter can be one of the following values: GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG.
Return values
none

Definition at line 49 of file at32f403_gpio.c.


AT32F403 Firmwary Library: I2C

Modules | Macros
I2C
AT32F403_periph_driver

I2C driver modules. More...

Modules

I2C_sts1_flags_definition
i2c sts1 flag
I2C_sts2_flags_definition
i2c sts2 flag
I2C_interrupts_definition
i2c interrupt
I2C_exported_types
I2C_exported_functions
I2C_private_functions

Macros

#define | I2C1 ((i2c_type *) I2C1_BASE)
#define | I2C2 ((i2c_type *) I2C2_BASE)
#define | I2C3 ((i2c_type *) I2C3_BASE)

Detailed Description

I2C driver modules.

Macro Definition Documentation

◆ I2C1

#define I2C1 ((i2c_type *) I2C1_BASE)

Definition at line 345 of file at32f403_i2c.h.

◆ I2C2

#define I2C2 ((i2c_type *) I2C2_BASE)

Definition at line 346 of file at32f403_i2c.h.

◆ I2C3

#define I2C3 ((i2c_type *) I2C3_BASE)

Definition at line 347 of file at32f403_i2c.h.


AT32F403 Firmwary Library: I2C_sts1_flags_definition

Macros
I2C_sts1_flags_definition
AT32F403_periph_driver » I2C

i2c sts1 flag More...

Macros

#define | I2C_STARTF_FLAG ((uint32_t)0x00000001)
#define | I2C_ADDR7F_FLAG ((uint32_t)0x00000002)
#define | I2C_TDC_FLAG ((uint32_t)0x00000004)
#define | I2C_ADDRHF_FLAG ((uint32_t)0x00000008)
#define | I2C_STOPF_FLAG ((uint32_t)0x00000010)
#define | I2C_RDBF_FLAG ((uint32_t)0x00000040)
#define | I2C_TDBE_FLAG ((uint32_t)0x00000080)
#define | I2C_BUSERR_FLAG ((uint32_t)0x00000100)
#define | I2C_ARLOST_FLAG ((uint32_t)0x00000200)
#define | I2C_ACKFAIL_FLAG ((uint32_t)0x00000400)
#define | I2C_OUF_FLAG ((uint32_t)0x00000800)
#define | I2C_PECERR_FLAG ((uint32_t)0x00001000)
#define | I2C_TMOUT_FLAG ((uint32_t)0x00004000)
#define | I2C_ALERTF_FLAG ((uint32_t)0x00008000)

Detailed Description

i2c sts1 flag

Macro Definition Documentation

◆ I2C_ACKFAIL_FLAG

#define I2C_ACKFAIL_FLAG ((uint32_t)0x00000400)

i2c acknowledge failure flag

Definition at line 59 of file at32f403_i2c.h.

◆ I2C_ADDR7F_FLAG

#define I2C_ADDR7F_FLAG ((uint32_t)0x00000002)

i2c 0~7 bit address match flag

Definition at line 51 of file at32f403_i2c.h.

◆ I2C_ADDRHF_FLAG

#define I2C_ADDRHF_FLAG ((uint32_t)0x00000008)

i2c master 9~8 bit address header match flag

Definition at line 53 of file at32f403_i2c.h.

◆ I2C_ALERTF_FLAG

#define I2C_ALERTF_FLAG ((uint32_t)0x00008000)

i2c smbus alert flag

Definition at line 63 of file at32f403_i2c.h.

◆ I2C_ARLOST_FLAG

#define I2C_ARLOST_FLAG ((uint32_t)0x00000200)

i2c arbitration lost flag

Definition at line 58 of file at32f403_i2c.h.

◆ I2C_BUSERR_FLAG

#define I2C_BUSERR_FLAG ((uint32_t)0x00000100)

i2c bus error flag

Definition at line 57 of file at32f403_i2c.h.

◆ I2C_OUF_FLAG

#define I2C_OUF_FLAG ((uint32_t)0x00000800)

i2c overflow or underflow flag

Definition at line 60 of file at32f403_i2c.h.

◆ I2C_PECERR_FLAG

#define I2C_PECERR_FLAG ((uint32_t)0x00001000)

i2c pec receive error flag

Definition at line 61 of file at32f403_i2c.h.

◆ I2C_RDBF_FLAG

#define I2C_RDBF_FLAG ((uint32_t)0x00000040)

i2c receive data buffer full flag

Definition at line 55 of file at32f403_i2c.h.

◆ I2C_STARTF_FLAG

#define I2C_STARTF_FLAG ((uint32_t)0x00000001)

i2c start condition generation complete flag

Definition at line 50 of file at32f403_i2c.h.

◆ I2C_STOPF_FLAG

#define I2C_STOPF_FLAG ((uint32_t)0x00000010)

i2c stop condition generation complete flag

Definition at line 54 of file at32f403_i2c.h.

◆ I2C_TDBE_FLAG

#define I2C_TDBE_FLAG ((uint32_t)0x00000080)

i2c transmit data buffer empty flag

Definition at line 56 of file at32f403_i2c.h.

◆ I2C_TDC_FLAG

#define I2C_TDC_FLAG ((uint32_t)0x00000004)

i2c transmit data complete flag

Definition at line 52 of file at32f403_i2c.h.

◆ I2C_TMOUT_FLAG

#define I2C_TMOUT_FLAG ((uint32_t)0x00004000)

i2c smbus timeout flag

Definition at line 62 of file at32f403_i2c.h.


AT32F403 Firmwary Library: I2C_sts2_flags_definition

Macros
I2C_sts2_flags_definition
AT32F403_periph_driver » I2C

i2c sts2 flag More...

Macros

#define | I2C_TRMODE_FLAG ((uint32_t)0x10010000)
#define | I2C_BUSYF_FLAG ((uint32_t)0x10020000)
#define | I2C_DIRF_FLAG ((uint32_t)0x10040000)
#define | I2C_GCADDRF_FLAG ((uint32_t)0x10100000)
#define | I2C_DEVADDRF_FLAG ((uint32_t)0x10200000)
#define | I2C_HOSTADDRF_FLAG ((uint32_t)0x10400000)
#define | I2C_ADDR2_FLAG ((uint32_t)0x10800000)

Detailed Description

i2c sts2 flag

Macro Definition Documentation

◆ I2C_ADDR2_FLAG

#define I2C_ADDR2_FLAG ((uint32_t)0x10800000)

i2c own address 2 received flag

Definition at line 80 of file at32f403_i2c.h.

◆ I2C_BUSYF_FLAG

#define I2C_BUSYF_FLAG ((uint32_t)0x10020000)

i2c bus busy flag transmission mode

Definition at line 75 of file at32f403_i2c.h.

◆ I2C_DEVADDRF_FLAG

#define I2C_DEVADDRF_FLAG ((uint32_t)0x10200000)

i2c smbus device address received flag

Definition at line 78 of file at32f403_i2c.h.

◆ I2C_DIRF_FLAG

#define I2C_DIRF_FLAG ((uint32_t)0x10040000)

i2c transmission direction flag

Definition at line 76 of file at32f403_i2c.h.

◆ I2C_GCADDRF_FLAG

#define I2C_GCADDRF_FLAG ((uint32_t)0x10100000)

i2c general call address received flag

Definition at line 77 of file at32f403_i2c.h.

◆ I2C_HOSTADDRF_FLAG

#define I2C_HOSTADDRF_FLAG ((uint32_t)0x10400000)

i2c smbus host address received flag

Definition at line 79 of file at32f403_i2c.h.

◆ I2C_TRMODE_FLAG

#define I2C_TRMODE_FLAG ((uint32_t)0x10010000)

i2c transmission mode

Definition at line 74 of file at32f403_i2c.h.


AT32F403 Firmwary Library: I2C_interrupts_definition

Macros
I2C_interrupts_definition
AT32F403_periph_driver » I2C

i2c interrupt More...

Macros

#define | I2C_DATA_INT ((uint16_t)0x0400)
#define | I2C_EVT_INT ((uint16_t)0x0200)
#define | I2C_ERR_INT ((uint16_t)0x0100)

Detailed Description

i2c interrupt

Macro Definition Documentation

◆ I2C_DATA_INT

#define I2C_DATA_INT ((uint16_t)0x0400)

i2c data transmission interrupt

Definition at line 91 of file at32f403_i2c.h.

◆ I2C_ERR_INT

#define I2C_ERR_INT ((uint16_t)0x0100)

i2c error interrupt

Definition at line 93 of file at32f403_i2c.h.

◆ I2C_EVT_INT

#define I2C_EVT_INT ((uint16_t)0x0200)

i2c event interrupt

Definition at line 92 of file at32f403_i2c.h.


AT32F403 Firmwary Library: I2C_exported_types

Data Structures | Enumerations
I2C_exported_types
AT32F403_periph_driver » I2C

Data Structures

struct i2c_type
type define i2c register all More...

Enumerations

enum | i2c_master_ack_type { I2C_MASTER_ACK_CURRENT = 0x00 , I2C_MASTER_ACK_NEXT = 0x01 }
i2c master receiving mode acknowledge control More...
enum | i2c_pec_position_type { I2C_PEC_POSITION_CURRENT = 0x00 , I2C_PEC_POSITION_NEXT = 0x01 }
i2c pec position set More...
enum | i2c_smbus_alert_set_type { I2C_SMBUS_ALERT_HIGH = 0x00 , I2C_SMBUS_ALERT_LOW = 0x01 }
i2c smbus alert pin set More...
enum | i2c_smbus_mode_set_type { I2C_SMBUS_MODE_DEVICE = 0x00 , I2C_SMBUS_MODE_HOST = 0x01 }
i2c smbus mode set More...
enum | i2c_fsmode_duty_cycle_type { I2C_FSMODE_DUTY_2_1 = 0x00 , I2C_FSMODE_DUTY_16_9 = 0x01 }
i2c fast mode duty cycle More...
enum | i2c_address_mode_type { I2C_ADDRESS_MODE_7BIT = 0x00 , I2C_ADDRESS_MODE_10BIT = 0x01 }
i2c address mode More...
enum | i2c_direction_type { I2C_DIRECTION_TRANSMIT = 0x00 , I2C_DIRECTION_RECEIVE = 0x01 }
i2c address direction More...

Detailed Description

Enumeration Type Documentation

◆ i2c_address_mode_type

enum i2c_address_mode_type

i2c address mode

Enumerator
I2C_ADDRESS_MODE_7BIT | 7bit address mode
I2C_ADDRESS_MODE_10BIT | 10bit address mode

Definition at line 153 of file at32f403_i2c.h.

◆ i2c_direction_type

enum i2c_direction_type

i2c address direction

Enumerator
I2C_DIRECTION_TRANSMIT | transmit mode
I2C_DIRECTION_RECEIVE | receive mode

Definition at line 162 of file at32f403_i2c.h.

◆ i2c_fsmode_duty_cycle_type

enum i2c_fsmode_duty_cycle_type

i2c fast mode duty cycle

Enumerator
I2C_FSMODE_DUTY_2_1 | duty cycle is 2:1 in fast mode
I2C_FSMODE_DUTY_16_9 | duty cycle is 16:9 in fast mode

Definition at line 144 of file at32f403_i2c.h.

◆ i2c_master_ack_type

enum i2c_master_ack_type

i2c master receiving mode acknowledge control

Enumerator
I2C_MASTER_ACK_CURRENT | acken bit acts on the current byte
I2C_MASTER_ACK_NEXT | acken bit acts on the next byte

Definition at line 106 of file at32f403_i2c.h.

◆ i2c_pec_position_type

enum i2c_pec_position_type

i2c pec position set

Enumerator
I2C_PEC_POSITION_CURRENT | the current byte is pec
I2C_PEC_POSITION_NEXT | the next byte is pec

Definition at line 115 of file at32f403_i2c.h.

◆ i2c_smbus_alert_set_type

enum i2c_smbus_alert_set_type

i2c smbus alert pin set

Enumerator
I2C_SMBUS_ALERT_HIGH | smbus alert pin set high
I2C_SMBUS_ALERT_LOW | smbus alert pin set low

Definition at line 125 of file at32f403_i2c.h.

◆ i2c_smbus_mode_set_type

enum i2c_smbus_mode_set_type

i2c smbus mode set

Enumerator
I2C_SMBUS_MODE_DEVICE | smbus device mode
I2C_SMBUS_MODE_HOST | smbus host mode

Definition at line 134 of file at32f403_i2c.h.


AT32F403 Firmwary Library: i2c_type Struct Reference

Data Fields
i2c_type Struct Reference
AT32F403_periph_driver » I2C » I2C_exported_types

type define i2c register all More...

#include <at32f403_i2c.h>

Data Fields

union {
__IO uint32_t ctrl1
struct {
__IO uint32_t i2cen: 1
__IO uint32_t permode: 1
__IO uint32_t reserved1: 1
__IO uint32_t smbmode: 1
__IO uint32_t arpen: 1
__IO uint32_t pecen: 1
__IO uint32_t gcaen: 1
__IO uint32_t stretch: 1
__IO uint32_t genstart: 1
__IO uint32_t genstop: 1
__IO uint32_t acken: 1
__IO uint32_t mackctrl: 1
__IO uint32_t pecten: 1
__IO uint32_t smbalert: 1
__IO uint32_t reserved2: 1
__IO uint32_t reset: 1
__IO uint32_t reserved3: 16
} ctrl1_bit
};
i2c ctrl1 register, offset:0x00 More...
union {
__IO uint32_t ctrl2
struct {
__IO uint32_t clkfreq: 8
__IO uint32_t errien: 1
__IO uint32_t evtien: 1
__IO uint32_t dataien: 1
__IO uint32_t dmaen: 1
__IO uint32_t dmaend: 1
__IO uint32_t reserved1: 19
} ctrl2_bit
};
i2c ctrl2 register, offset:0x04 More...
union {
__IO uint32_t oaddr1
struct {
__IO uint32_t addr1: 10
__IO uint32_t reserved1: 5
__IO uint32_t addr1mode: 1
__IO uint32_t reserved2: 16
} oaddr1_bit
};
i2c oaddr1 register, offset:0x08 More...
union {
__IO uint32_t oaddr2
struct {
__IO uint32_t addr2en: 1
__IO uint32_t addr2: 7
__IO uint32_t reserved1: 24
} oaddr2_bit
};
i2c oaddr2 register, offset:0x0C More...
union {
__IO uint32_t dt
struct {
__IO uint32_t dt: 8
__IO uint32_t reserved1: 24
} dt_bit
};
i2c dt register, offset:0x10 More...
union {
__IO uint32_t sts1
struct {
__IO uint32_t startf: 1
__IO uint32_t addr7f: 1
__IO uint32_t tdc: 1
__IO uint32_t addrhf: 1
__IO uint32_t stopf: 1
__IO uint32_t reserved1: 1
__IO uint32_t rdbf: 1
__IO uint32_t tdbe: 1
__IO uint32_t buserr: 1
__IO uint32_t arlost: 1
__IO uint32_t ackfail: 1
__IO uint32_t ouf: 1
__IO uint32_t pecerr: 1
__IO uint32_t reserved2: 1
__IO uint32_t tmout: 1
__IO uint32_t alertf: 1
__IO uint32_t reserved3: 16
} sts1_bit
};
i2c sts1 register, offset:0x14 More...
union {
__IO uint32_t sts2
struct {
__IO uint32_t trmode: 1
__IO uint32_t busyf: 1
__IO uint32_t dirf: 1
__IO uint32_t reserved1: 1
__IO uint32_t gcaddrf: 1
__IO uint32_t devaddrf: 1
__IO uint32_t hostaddrf: 1
__IO uint32_t addr2: 1
__IO uint32_t pecval: 8
__IO uint32_t reserved2: 16
} sts2_bit
};
i2c sts2 register, offset:0x18 More...
union {
__IO uint32_t clkctrl
struct {
__IO uint32_t speed: 12
__IO uint32_t reserved1: 2
__IO uint32_t dutymode: 1
__IO uint32_t speedmode: 1
__IO uint32_t reserved2: 16
} clkctrl_bit
};
i2c clkctrl register, offset:0x1C More...
union {
__IO uint32_t tmrise
struct {
__IO uint32_t risetime: 6
__IO uint32_t reserved1: 26
} tmrise_bit
};
i2c tmrise register, offset:0x20 More...

Detailed Description

type define i2c register all

Definition at line 171 of file at32f403_i2c.h.

Field Documentation

◆

union { ... } i2c_type::@484

i2c ctrl1 register, offset:0x00

◆

union { ... } i2c_type::@486

i2c ctrl2 register, offset:0x04

◆

union { ... } i2c_type::@488

i2c oaddr1 register, offset:0x08

◆

union { ... } i2c_type::@490

i2c oaddr2 register, offset:0x0C

◆

union { ... } i2c_type::@492

i2c dt register, offset:0x10

◆

union { ... } i2c_type::@494

i2c sts1 register, offset:0x14

◆

union { ... } i2c_type::@496

i2c sts2 register, offset:0x18

◆

union { ... } i2c_type::@498

i2c clkctrl register, offset:0x1C

◆

union { ... } i2c_type::@500

i2c tmrise register, offset:0x20

◆ acken

__IO uint32_t i2c_type::acken

Definition at line 191 of file at32f403_i2c.h.

Referenced by i2c_ack_enable().

◆ ackfail

__IO uint32_t i2c_type::ackfail

Definition at line 279 of file at32f403_i2c.h.

◆ addr1

__IO uint32_t i2c_type::addr1

Definition at line 227 of file at32f403_i2c.h.

Referenced by i2c_own_address1_set().

◆ addr1mode

__IO uint32_t i2c_type::addr1mode

Definition at line 229 of file at32f403_i2c.h.

Referenced by i2c_master_read_addr(), i2c_master_write_addr(), i2c_own_address1_set(), and i2c_slave_transmit().

◆ addr2

__IO uint32_t i2c_type::addr2

Definition at line 243 of file at32f403_i2c.h.

Referenced by i2c_own_address2_set().

◆ addr2en

__IO uint32_t i2c_type::addr2en

Definition at line 242 of file at32f403_i2c.h.

Referenced by i2c_own_address2_enable().

◆ addr7f

__IO uint32_t i2c_type::addr7f

Definition at line 270 of file at32f403_i2c.h.

◆ addrhf

__IO uint32_t i2c_type::addrhf

Definition at line 272 of file at32f403_i2c.h.

◆ alertf

__IO uint32_t i2c_type::alertf

Definition at line 284 of file at32f403_i2c.h.

◆ arlost

__IO uint32_t i2c_type::arlost

Definition at line 278 of file at32f403_i2c.h.

◆ arpen

__IO uint32_t i2c_type::arpen

Definition at line 185 of file at32f403_i2c.h.

Referenced by i2c_arp_mode_enable().

◆ buserr

__IO uint32_t i2c_type::buserr

Definition at line 277 of file at32f403_i2c.h.

◆ busyf

__IO uint32_t i2c_type::busyf

Definition at line 298 of file at32f403_i2c.h.

◆ clkctrl

__IO uint32_t i2c_type::clkctrl

Definition at line 315 of file at32f403_i2c.h.

◆

struct { ... } i2c_type::clkctrl_bit

Referenced by i2c_fast_mode_duty_set(), and i2c_init().

◆ clkfreq

__IO uint32_t i2c_type::clkfreq

Definition at line 209 of file at32f403_i2c.h.

Referenced by i2c_init().

◆ ctrl1

__IO uint32_t i2c_type::ctrl1

Definition at line 178 of file at32f403_i2c.h.

◆

struct { ... } i2c_type::ctrl1_bit

Referenced by i2c_ack_enable(), i2c_arp_mode_enable(), i2c_clock_stretch_enable(), i2c_enable(), i2c_flag_clear(), i2c_general_call_enable(), i2c_init(), i2c_master_receive_ack_set(), i2c_pec_calculate_enable(), i2c_pec_position_set(), i2c_pec_transmit_enable(), i2c_smbus_alert_set(), i2c_smbus_enable(), i2c_smbus_mode_set(), i2c_software_reset(), i2c_start_generate(), and i2c_stop_generate().

◆ ctrl2

__IO uint32_t i2c_type::ctrl2

Definition at line 206 of file at32f403_i2c.h.

Referenced by i2c_interrupt_enable().

◆

struct { ... } i2c_type::ctrl2_bit

Referenced by i2c_dma_enable(), i2c_dma_end_transfer_set(), i2c_init(), and i2c_interrupt_flag_get().

◆ dataien

__IO uint32_t i2c_type::dataien

Definition at line 212 of file at32f403_i2c.h.

Referenced by i2c_interrupt_flag_get().

◆ devaddrf

__IO uint32_t i2c_type::devaddrf

Definition at line 302 of file at32f403_i2c.h.

◆ dirf

__IO uint32_t i2c_type::dirf

Definition at line 299 of file at32f403_i2c.h.

◆ dmaen

__IO uint32_t i2c_type::dmaen

Definition at line 213 of file at32f403_i2c.h.

Referenced by i2c_dma_enable().

◆ dmaend

__IO uint32_t i2c_type::dmaend

Definition at line 214 of file at32f403_i2c.h.

Referenced by i2c_dma_end_transfer_set().

◆ dt

__IO uint32_t i2c_type::dt

Definition at line 253 of file at32f403_i2c.h.

Referenced by i2c_7bit_address_send(), i2c_data_receive(), i2c_data_send(), and i2c_dma_config().

◆

struct { ... } i2c_type::dt_bit

◆ dutymode

__IO uint32_t i2c_type::dutymode

Definition at line 320 of file at32f403_i2c.h.

Referenced by i2c_fast_mode_duty_set(), and i2c_init().

◆ errien

__IO uint32_t i2c_type::errien

Definition at line 210 of file at32f403_i2c.h.

Referenced by i2c_interrupt_flag_get().

◆ evtien

__IO uint32_t i2c_type::evtien

Definition at line 211 of file at32f403_i2c.h.

Referenced by i2c_interrupt_flag_get().

◆ gcaddrf

__IO uint32_t i2c_type::gcaddrf

Definition at line 301 of file at32f403_i2c.h.

◆ gcaen

__IO uint32_t i2c_type::gcaen

Definition at line 187 of file at32f403_i2c.h.

Referenced by i2c_general_call_enable().

◆ genstart

__IO uint32_t i2c_type::genstart

Definition at line 189 of file at32f403_i2c.h.

Referenced by i2c_start_generate().

◆ genstop

__IO uint32_t i2c_type::genstop

Definition at line 190 of file at32f403_i2c.h.

Referenced by i2c_stop_generate().

◆ hostaddrf

__IO uint32_t i2c_type::hostaddrf

Definition at line 303 of file at32f403_i2c.h.

◆ i2cen

__IO uint32_t i2c_type::i2cen

Definition at line 181 of file at32f403_i2c.h.

Referenced by i2c_enable(), i2c_flag_clear(), and i2c_init().

◆ mackctrl

__IO uint32_t i2c_type::mackctrl

Definition at line 192 of file at32f403_i2c.h.

Referenced by i2c_master_receive_ack_set(), and i2c_pec_position_set().

◆ oaddr1

__IO uint32_t i2c_type::oaddr1

Definition at line 224 of file at32f403_i2c.h.

◆

struct { ... } i2c_type::oaddr1_bit

Referenced by i2c_master_read_addr(), i2c_master_write_addr(), i2c_own_address1_set(), and i2c_slave_transmit().

◆ oaddr2

__IO uint32_t i2c_type::oaddr2

Definition at line 239 of file at32f403_i2c.h.

◆

struct { ... } i2c_type::oaddr2_bit

Referenced by i2c_own_address2_enable(), and i2c_own_address2_set().

◆ ouf

__IO uint32_t i2c_type::ouf

Definition at line 280 of file at32f403_i2c.h.

◆ pecen

__IO uint32_t i2c_type::pecen

Definition at line 186 of file at32f403_i2c.h.

Referenced by i2c_pec_calculate_enable().

◆ pecerr

__IO uint32_t i2c_type::pecerr

Definition at line 281 of file at32f403_i2c.h.

◆ pecten

__IO uint32_t i2c_type::pecten

Definition at line 193 of file at32f403_i2c.h.

Referenced by i2c_pec_transmit_enable().

◆ pecval

__IO uint32_t i2c_type::pecval

Definition at line 305 of file at32f403_i2c.h.

Referenced by i2c_pec_value_get().

◆ permode

__IO uint32_t i2c_type::permode

Definition at line 182 of file at32f403_i2c.h.

Referenced by i2c_smbus_enable().

◆ rdbf

__IO uint32_t i2c_type::rdbf

Definition at line 275 of file at32f403_i2c.h.

◆ reserved1

__IO uint32_t i2c_type::reserved1

Definition at line 183 of file at32f403_i2c.h.

◆ reserved2

__IO uint32_t i2c_type::reserved2

Definition at line 195 of file at32f403_i2c.h.

◆ reserved3

__IO uint32_t i2c_type::reserved3

Definition at line 197 of file at32f403_i2c.h.

◆ reset

__IO uint32_t i2c_type::reset

Definition at line 196 of file at32f403_i2c.h.

Referenced by i2c_software_reset().

◆ risetime

__IO uint32_t i2c_type::risetime

Definition at line 334 of file at32f403_i2c.h.

Referenced by i2c_init().

◆ smbalert

__IO uint32_t i2c_type::smbalert

Definition at line 194 of file at32f403_i2c.h.

Referenced by i2c_smbus_alert_set().

◆ smbmode

__IO uint32_t i2c_type::smbmode

Definition at line 184 of file at32f403_i2c.h.

Referenced by i2c_smbus_mode_set().

◆ speed

__IO uint32_t i2c_type::speed

Definition at line 318 of file at32f403_i2c.h.

Referenced by i2c_init().

◆ speedmode

__IO uint32_t i2c_type::speedmode

Definition at line 321 of file at32f403_i2c.h.

Referenced by i2c_init().

◆ startf

__IO uint32_t i2c_type::startf

Definition at line 269 of file at32f403_i2c.h.

◆ stopf

__IO uint32_t i2c_type::stopf

Definition at line 273 of file at32f403_i2c.h.

◆ stretch

__IO uint32_t i2c_type::stretch

Definition at line 188 of file at32f403_i2c.h.

Referenced by i2c_clock_stretch_enable().

◆ sts1

__IO uint32_t i2c_type::sts1

Definition at line 266 of file at32f403_i2c.h.

Referenced by i2c_flag_clear(), i2c_flag_get(), and i2c_interrupt_flag_get().

◆

struct { ... } i2c_type::sts1_bit

◆ sts2

__IO uint32_t i2c_type::sts2

Definition at line 294 of file at32f403_i2c.h.

Referenced by i2c_flag_clear(), i2c_flag_get(), and i2c_interrupt_flag_get().

◆

struct { ... } i2c_type::sts2_bit

Referenced by i2c_pec_value_get().

◆ tdbe

__IO uint32_t i2c_type::tdbe

Definition at line 276 of file at32f403_i2c.h.

◆ tdc

__IO uint32_t i2c_type::tdc

Definition at line 271 of file at32f403_i2c.h.

◆ tmout

__IO uint32_t i2c_type::tmout

Definition at line 283 of file at32f403_i2c.h.

◆ tmrise

__IO uint32_t i2c_type::tmrise

Definition at line 331 of file at32f403_i2c.h.

◆

struct { ... } i2c_type::tmrise_bit

Referenced by i2c_init().

◆ trmode

__IO uint32_t i2c_type::trmode

Definition at line 297 of file at32f403_i2c.h.

The documentation for this struct was generated from the following file:
  • at32f403_i2c.h


AT32F403 Firmwary Library: I2C_exported_functions

Functions
I2C_exported_functions
AT32F403_periph_driver » I2C

Functions

void | i2c_reset (i2c_type *i2c_x)
reset the i2c register More...
void | i2c_software_reset (i2c_type *i2c_x, confirm_state new_state)
software reset. More...
void | i2c_init (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle. More...
void | i2c_own_address1_set (i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1. More...
void | i2c_own_address2_set (i2c_type *i2c_x, uint8_t address)
config own address2. More...
void | i2c_own_address2_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable own address2. More...
void | i2c_smbus_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable the smbus mode More...
void | i2c_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable i2c periph More...
void | i2c_fast_mode_duty_set (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty)
config fast mode duty cycle More...
void | i2c_clock_stretch_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable clock stretch. More...
void | i2c_ack_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable acknowledge. More...
void | i2c_master_receive_ack_set (i2c_type *i2c_x, i2c_master_ack_type pos)
master receiving mode acknowledge control. More...
void | i2c_pec_position_set (i2c_type *i2c_x, i2c_pec_position_type pos)
pec position set. More...
void | i2c_general_call_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable general call. More...
void | i2c_arp_mode_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable arp mode. More...
void | i2c_smbus_mode_set (i2c_type *i2c_x, i2c_smbus_mode_set_type mode)
config smbus host or device. More...
void | i2c_smbus_alert_set (i2c_type *i2c_x, i2c_smbus_alert_set_type level)
drive the smbus alert pin high or low. More...
void | i2c_pec_transmit_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec transfer. More...
void | i2c_pec_calculate_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec calcultetion. More...
uint8_t | i2c_pec_value_get (i2c_type *i2c_x)
get pec value. More...
void | i2c_dma_end_transfer_set (i2c_type *i2c_x, confirm_state new_state)
enable or disable if the next dma transfer will be the last one. More...
void | i2c_dma_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable dma requests. More...
void | i2c_interrupt_enable (i2c_type *i2c_x, uint16_t source, confirm_state new_state)
enable or disable interrupt More...
void | i2c_start_generate (i2c_type *i2c_x)
generate start condition. More...
void | i2c_stop_generate (i2c_type *i2c_x)
generate stop condition. More...
void | i2c_7bit_address_send (i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
transmit the slave address. More...
void | i2c_data_send (i2c_type *i2c_x, uint8_t data)
send a byte through the i2c periph. More...
uint8_t | i2c_data_receive (i2c_type *i2c_x)
receive a byte through the i2c periph. More...
flag_status | i2c_flag_get (i2c_type *i2c_x, uint32_t flag)
get flag status More...
flag_status | i2c_interrupt_flag_get (i2c_type *i2c_x, uint32_t flag)
get interrupt flag status More...
void | i2c_flag_clear (i2c_type *i2c_x, uint32_t flag)
clear flag status More...

Detailed Description

Function Documentation

◆ i2c_7bit_address_send()

void i2c_7bit_address_send | ( | i2c_type * | i2c_x,
 |  | uint8_t | address,
 |  | i2c_direction_type | direction
 | ) |  |

transmit the slave address.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
address | specifies the slave address which will be transmitted
direction this parameter can be one of the following values:
  • I2C_DIRECTION_TRANSMIT: transmit mode.
  • I2C_DIRECTION_RECEIVE: receive mode.
Return values
none.

Definition at line 510 of file at32f403_i2c.c.

Referenced by i2c_master_read_addr(), and i2c_master_write_addr().

◆ i2c_ack_enable()

void i2c_ack_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable acknowledge.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none.

Definition at line 290 of file at32f403_i2c.c.

Referenced by i2c_err_irq_handler(), i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), and i2c_slave_tx_rx_isr_dma().

◆ i2c_arp_mode_enable()

void i2c_arp_mode_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable arp mode.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 348 of file at32f403_i2c.c.

◆ i2c_clock_stretch_enable()

void i2c_clock_stretch_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable clock stretch.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 277 of file at32f403_i2c.c.

◆ i2c_data_receive()

uint8_t i2c_data_receive ( i2c_type * i2c_x )

receive a byte through the i2c periph.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
uint8_t received byte

Definition at line 542 of file at32f403_i2c.c.

Referenced by i2c_master_receive(), i2c_master_rx_isr_int(), i2c_memory_read(), i2c_slave_receive(), and i2c_slave_rx_isr_int().

◆ i2c_data_send()

void i2c_data_send | ( | i2c_type * | i2c_x,
 |  | uint8_t | data
 | ) |  |

send a byte through the i2c periph.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
data | byte to be transmitted.
Return values
none

Definition at line 530 of file at32f403_i2c.c.

Referenced by i2c_master_read_addr(), i2c_master_transmit(), i2c_master_tx_isr_int(), i2c_master_write_addr(), i2c_memory_address_send(), i2c_memory_write(), i2c_slave_transmit(), and i2c_slave_tx_isr_int().

◆ i2c_dma_enable()

void i2c_dma_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma requests.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 444 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), i2c_master_receive_dma(), i2c_master_transmit_dma(), i2c_memory_read_dma(), i2c_memory_write_dma(), i2c_slave_receive_dma(), and i2c_slave_transmit_dma().

◆ i2c_dma_end_transfer_set()

void i2c_dma_end_transfer_set | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable if the next dma transfer will be the last one.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 431 of file at32f403_i2c.c.

Referenced by i2c_master_receive_dma(), and i2c_memory_read_dma().

◆ i2c_enable()

void i2c_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable i2c periph

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 248 of file at32f403_i2c.c.

Referenced by i2c_config().

◆ i2c_fast_mode_duty_set()

void i2c_fast_mode_duty_set | ( | i2c_type * | i2c_x,
 |  | i2c_fsmode_duty_cycle_type | duty
 | ) |  |

config fast mode duty cycle

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
duty this parameter can be one of the following values:
  • I2C_FSMODE_DUTY_2_1: duty cycle 2:1
  • I2C_FSMODE_DUTY_16_9: duty cycle 16:9
Return values
none

Definition at line 264 of file at32f403_i2c.c.

◆ i2c_flag_clear()

void i2c_flag_clear | ( | i2c_type * | i2c_x,
 |  | uint32_t | flag
 | ) |  |

clear flag status

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
flag this parameter can be any combination of the following values:
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_ADDR7F_FLAG: i2c 0~7 bit address match flag.
Return values
none

< i2c 0~7 bit address match flag

< i2c stop condition generation complete flag

Definition at line 703 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_err_irq_handler(), i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_rx_isr_int(), i2c_slave_transmit(), i2c_slave_tx_isr_int(), i2c_slave_tx_rx_isr_dma(), and i2c_wait_flag().

◆ i2c_flag_get()

flag_status i2c_flag_get | ( | i2c_type * | i2c_x,
 |  | uint32_t | flag
 | ) |  |

get flag status

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
flag this parameter can be one of the following values:
  • I2C_STARTF_FLAG: start condition generation complete flag.
  • I2C_ADDR7F_FLAG: 0~7 bit address match flag.
  • I2C_TDC_FLAG: transmit data complete flag.
  • I2C_ADDRHF_FLAG: master 9~8 bit address header match flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_RDBF_FLAG: receive data buffer full flag.
  • I2C_TDBE_FLAG: transmit data buffer empty flag.
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
  • I2C_TRMODE_FLAG: transmission mode.
  • I2C_BUSYF_FLAG: bus busy flag transmission mode.
  • I2C_DIRF_FLAG: transmission direction flag.
  • I2C_GCADDRF_FLAG: general call address received flag.
  • I2C_DEVADDRF_FLAG: smbus device address received flag.
  • I2C_HOSTADDRF_FLAG: smbus host address received flag.
  • I2C_ADDR2_FLAG: own address 2 received flag.
Return values
flag_status (SET or RESET)

Definition at line 577 of file at32f403_i2c.c.

Referenced by i2c_err_irq_handler(), i2c_master_rx_isr_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_slave_rx_isr_int(), i2c_slave_tx_isr_int(), i2c_slave_tx_rx_isr_dma(), and i2c_wait_flag().

◆ i2c_general_call_enable()

void i2c_general_call_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable general call.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 335 of file at32f403_i2c.c.

◆ i2c_init()

void i2c_init | ( | i2c_type * | i2c_x,
 |  | i2c_fsmode_duty_cycle_type | duty,
 |  | uint32_t | speed
 | ) |  |

init i2c speed and duty cycle.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
duty this parameter can be one of the following values:
  • I2C_FSMODE_DUTY_2_1: duty cycle 2:1
  • I2C_FSMODE_DUTY_16_9: duty cycle 16:9
speed | i2c scl clock speed, such as 100000
Return values
none

Definition at line 93 of file at32f403_i2c.c.

Referenced by i2c_lowlevel_init().

◆ i2c_interrupt_enable()

void i2c_interrupt_enable | ( | i2c_type * | i2c_x,
 |  | uint16_t | source,
 |  | confirm_state | new_state
 | ) |  |

enable or disable interrupt

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
source this parameter can be one of the following values:
  • I2C_DATA_INT: data interrupt.
  • I2C_EV_INT: event interrupt.
  • I2C_ERR_INT: error interrupt.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 462 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), i2c_err_irq_handler(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_memory_read_int(), i2c_memory_write_int(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_rx_isr_int(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), i2c_slave_tx_isr_int(), and i2c_slave_tx_rx_isr_dma().

◆ i2c_interrupt_flag_get()

flag_status i2c_interrupt_flag_get | ( | i2c_type * | i2c_x,
 |  | uint32_t | flag
 | ) |  |

get interrupt flag status

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
flag this parameter can be one of the following values:
  • I2C_STARTF_FLAG: start condition generation complete flag.
  • I2C_ADDR7F_FLAG: 0~7 bit address match flag.
  • I2C_TDC_FLAG: transmit data complete flag.
  • I2C_ADDRHF_FLAG: master 9~8 bit address header match flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_RDBF_FLAG: receive data buffer full flag.
  • I2C_TDBE_FLAG: transmit data buffer empty flag.
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
Return values
flag_status (SET or RESET)

< i2c start condition generation complete flag

< i2c 0~7 bit address match flag

< i2c transmit data complete flag

< i2c master 9~8 bit address header match flag

< i2c stop condition generation complete flag

< i2c receive data buffer full flag

< i2c transmit data buffer empty flag

< i2c bus error flag

< i2c arbitration lost flag

< i2c acknowledge failure flag

< i2c overflow or underflow flag

< i2c pec receive error flag

< i2c smbus timeout flag

< i2c smbus alert flag

Definition at line 629 of file at32f403_i2c.c.

◆ i2c_master_receive_ack_set()

void i2c_master_receive_ack_set | ( | i2c_type * | i2c_x,
 |  | i2c_master_ack_type | pos
 | ) |  |

master receiving mode acknowledge control.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
pos this parameter can be one of the following values:
  • I2C_MASTER_ACK_CURRENT: acken bit acts on the current byte
  • I2C_MASTER_ACK_NEXT: acken bit acts on the next byte
Return values
none

Definition at line 306 of file at32f403_i2c.c.

Referenced by i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), and i2c_slave_transmit_int().

◆ i2c_own_address1_set()

void i2c_own_address1_set | ( | i2c_type * | i2c_x,
 |  | i2c_address_mode_type | mode,
 |  | uint16_t | address
 | ) |  |

config own address1.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
mode this parameter can be one of the following values:
  • I2C_ADDRESS_MODE_7BIT: 7bit address.
  • I2C_ADDRESS_MODE_10BIT: 10bit address.
address | own address1, such as 0xb0.
Return values
none

Definition at line 192 of file at32f403_i2c.c.

Referenced by i2c_lowlevel_init().

◆ i2c_own_address2_enable()

void i2c_own_address2_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable own address2.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 222 of file at32f403_i2c.c.

◆ i2c_own_address2_set()

void i2c_own_address2_set | ( | i2c_type * | i2c_x,
 |  | uint8_t | address
 | ) |  |

config own address2.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
address | specifies the 7bit i2c own address2, such as 0xa0.
Return values
none.

Definition at line 209 of file at32f403_i2c.c.

◆ i2c_pec_calculate_enable()

void i2c_pec_calculate_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable pec calcultetion.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 406 of file at32f403_i2c.c.

◆ i2c_pec_position_set()

void i2c_pec_position_set | ( | i2c_type * | i2c_x,
 |  | i2c_pec_position_type | pos
 | ) |  |

pec position set.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
pos this parameter can be one of the following values:
  • I2C_PEC_POSITION_CURRENT: the current byte is pec
  • I2C_PEC_POSITION_NEXT: the next byte is pec
Return values
none

Definition at line 322 of file at32f403_i2c.c.

◆ i2c_pec_transmit_enable()

void i2c_pec_transmit_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable pec transfer.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 393 of file at32f403_i2c.c.

◆ i2c_pec_value_get()

uint8_t i2c_pec_value_get ( i2c_type * i2c_x )

get pec value.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
uint8_t pec value.

Definition at line 418 of file at32f403_i2c.c.

◆ i2c_reset()

void i2c_reset ( i2c_type * i2c_x )

reset the i2c register

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
none

Definition at line 49 of file at32f403_i2c.c.

Referenced by i2c_config().

◆ i2c_smbus_alert_set()

void i2c_smbus_alert_set | ( | i2c_type * | i2c_x,
 |  | i2c_smbus_alert_set_type | level
 | ) |  |

drive the smbus alert pin high or low.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
level this parameter can be one of the following values:
  • I2C_SMBUS_ALERT_LOW: smbus alert pin set low.
  • I2C_SMBUS_ALERT_HIGH: smbus alert pin set high.
Return values
none

Definition at line 380 of file at32f403_i2c.c.

◆ i2c_smbus_enable()

void i2c_smbus_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the smbus mode

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 235 of file at32f403_i2c.c.

◆ i2c_smbus_mode_set()

void i2c_smbus_mode_set | ( | i2c_type * | i2c_x,
 |  | i2c_smbus_mode_set_type | mode
 | ) |  |

config smbus host or device.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
level this parameter can be one of the following values:
  • I2C_SMBUS_MODE_DEVICE: smbus device.
  • I2C_SMBUS_MODE_HOST: smbus host.
Return values
none

Definition at line 364 of file at32f403_i2c.c.

◆ i2c_software_reset()

void i2c_software_reset | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

software reset.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 76 of file at32f403_i2c.c.

◆ i2c_start_generate()

void i2c_start_generate ( i2c_type * i2c_x )

generate start condition.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
none.

Definition at line 481 of file at32f403_i2c.c.

Referenced by i2c_master_read_addr(), and i2c_master_write_addr().

◆ i2c_stop_generate()

void i2c_stop_generate ( i2c_type * i2c_x )

generate stop condition.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
none.

Definition at line 493 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_memory_address_send(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), and i2c_wait_flag().


AT32F403 Firmwary Library: I2C_private_functions

Functions
I2C_private_functions
AT32F403_periph_driver » I2C

Functions

void | i2c_reset (i2c_type *i2c_x)
reset the i2c register More...
void | i2c_software_reset (i2c_type *i2c_x, confirm_state new_state)
software reset. More...
void | i2c_init (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle. More...
void | i2c_own_address1_set (i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1. More...
void | i2c_own_address2_set (i2c_type *i2c_x, uint8_t address)
config own address2. More...
void | i2c_own_address2_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable own address2. More...
void | i2c_smbus_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable the smbus mode More...
void | i2c_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable i2c periph More...
void | i2c_fast_mode_duty_set (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty)
config fast mode duty cycle More...
void | i2c_clock_stretch_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable clock stretch. More...
void | i2c_ack_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable acknowledge. More...
void | i2c_master_receive_ack_set (i2c_type *i2c_x, i2c_master_ack_type pos)
master receiving mode acknowledge control. More...
void | i2c_pec_position_set (i2c_type *i2c_x, i2c_pec_position_type pos)
pec position set. More...
void | i2c_general_call_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable general call. More...
void | i2c_arp_mode_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable arp mode. More...
void | i2c_smbus_mode_set (i2c_type *i2c_x, i2c_smbus_mode_set_type mode)
config smbus host or device. More...
void | i2c_smbus_alert_set (i2c_type *i2c_x, i2c_smbus_alert_set_type level)
drive the smbus alert pin high or low. More...
void | i2c_pec_transmit_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec transfer. More...
void | i2c_pec_calculate_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec calcultetion. More...
uint8_t | i2c_pec_value_get (i2c_type *i2c_x)
get pec value. More...
void | i2c_dma_end_transfer_set (i2c_type *i2c_x, confirm_state new_state)
enable or disable if the next dma transfer will be the last one. More...
void | i2c_dma_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable dma requests. More...
void | i2c_interrupt_enable (i2c_type *i2c_x, uint16_t source, confirm_state new_state)
enable or disable interrupt More...
void | i2c_start_generate (i2c_type *i2c_x)
generate start condition. More...
void | i2c_stop_generate (i2c_type *i2c_x)
generate stop condition. More...
void | i2c_7bit_address_send (i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
transmit the slave address. More...
void | i2c_data_send (i2c_type *i2c_x, uint8_t data)
send a byte through the i2c periph. More...
uint8_t | i2c_data_receive (i2c_type *i2c_x)
receive a byte through the i2c periph. More...
flag_status | i2c_flag_get (i2c_type *i2c_x, uint32_t flag)
get flag status More...
flag_status | i2c_interrupt_flag_get (i2c_type *i2c_x, uint32_t flag)
get interrupt flag status More...
void | i2c_flag_clear (i2c_type *i2c_x, uint32_t flag)
clear flag status More...

Detailed Description

Function Documentation

◆ i2c_7bit_address_send()

void i2c_7bit_address_send | ( | i2c_type * | i2c_x,
 |  | uint8_t | address,
 |  | i2c_direction_type | direction
 | ) |  |

transmit the slave address.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
address | specifies the slave address which will be transmitted
direction this parameter can be one of the following values:
  • I2C_DIRECTION_TRANSMIT: transmit mode.
  • I2C_DIRECTION_RECEIVE: receive mode.
Return values
none.

Definition at line 510 of file at32f403_i2c.c.

Referenced by i2c_master_read_addr(), and i2c_master_write_addr().

◆ i2c_ack_enable()

void i2c_ack_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable acknowledge.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none.

Definition at line 290 of file at32f403_i2c.c.

Referenced by i2c_err_irq_handler(), i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), and i2c_slave_tx_rx_isr_dma().

◆ i2c_arp_mode_enable()

void i2c_arp_mode_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable arp mode.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 348 of file at32f403_i2c.c.

◆ i2c_clock_stretch_enable()

void i2c_clock_stretch_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable clock stretch.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 277 of file at32f403_i2c.c.

◆ i2c_data_receive()

uint8_t i2c_data_receive ( i2c_type * i2c_x )

receive a byte through the i2c periph.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
uint8_t received byte

Definition at line 542 of file at32f403_i2c.c.

Referenced by i2c_master_receive(), i2c_master_rx_isr_int(), i2c_memory_read(), i2c_slave_receive(), and i2c_slave_rx_isr_int().

◆ i2c_data_send()

void i2c_data_send | ( | i2c_type * | i2c_x,
 |  | uint8_t | data
 | ) |  |

send a byte through the i2c periph.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
data | byte to be transmitted.
Return values
none

Definition at line 530 of file at32f403_i2c.c.

Referenced by i2c_master_read_addr(), i2c_master_transmit(), i2c_master_tx_isr_int(), i2c_master_write_addr(), i2c_memory_address_send(), i2c_memory_write(), i2c_slave_transmit(), and i2c_slave_tx_isr_int().

◆ i2c_dma_enable()

void i2c_dma_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma requests.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 444 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), i2c_master_receive_dma(), i2c_master_transmit_dma(), i2c_memory_read_dma(), i2c_memory_write_dma(), i2c_slave_receive_dma(), and i2c_slave_transmit_dma().

◆ i2c_dma_end_transfer_set()

void i2c_dma_end_transfer_set | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable if the next dma transfer will be the last one.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 431 of file at32f403_i2c.c.

Referenced by i2c_master_receive_dma(), and i2c_memory_read_dma().

◆ i2c_enable()

void i2c_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable i2c periph

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 248 of file at32f403_i2c.c.

Referenced by i2c_config().

◆ i2c_fast_mode_duty_set()

void i2c_fast_mode_duty_set | ( | i2c_type * | i2c_x,
 |  | i2c_fsmode_duty_cycle_type | duty
 | ) |  |

config fast mode duty cycle

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
duty this parameter can be one of the following values:
  • I2C_FSMODE_DUTY_2_1: duty cycle 2:1
  • I2C_FSMODE_DUTY_16_9: duty cycle 16:9
Return values
none

Definition at line 264 of file at32f403_i2c.c.

◆ i2c_flag_clear()

void i2c_flag_clear | ( | i2c_type * | i2c_x,
 |  | uint32_t | flag
 | ) |  |

clear flag status

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
flag this parameter can be any combination of the following values:
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_ADDR7F_FLAG: i2c 0~7 bit address match flag.
Return values
none

< i2c 0~7 bit address match flag

< i2c stop condition generation complete flag

Definition at line 703 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_err_irq_handler(), i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_rx_isr_int(), i2c_slave_transmit(), i2c_slave_tx_isr_int(), i2c_slave_tx_rx_isr_dma(), and i2c_wait_flag().

◆ i2c_flag_get()

flag_status i2c_flag_get | ( | i2c_type * | i2c_x,
 |  | uint32_t | flag
 | ) |  |

get flag status

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
flag this parameter can be one of the following values:
  • I2C_STARTF_FLAG: start condition generation complete flag.
  • I2C_ADDR7F_FLAG: 0~7 bit address match flag.
  • I2C_TDC_FLAG: transmit data complete flag.
  • I2C_ADDRHF_FLAG: master 9~8 bit address header match flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_RDBF_FLAG: receive data buffer full flag.
  • I2C_TDBE_FLAG: transmit data buffer empty flag.
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
  • I2C_TRMODE_FLAG: transmission mode.
  • I2C_BUSYF_FLAG: bus busy flag transmission mode.
  • I2C_DIRF_FLAG: transmission direction flag.
  • I2C_GCADDRF_FLAG: general call address received flag.
  • I2C_DEVADDRF_FLAG: smbus device address received flag.
  • I2C_HOSTADDRF_FLAG: smbus host address received flag.
  • I2C_ADDR2_FLAG: own address 2 received flag.
Return values
flag_status (SET or RESET)

Definition at line 577 of file at32f403_i2c.c.

Referenced by i2c_err_irq_handler(), i2c_master_rx_isr_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_slave_rx_isr_int(), i2c_slave_tx_isr_int(), i2c_slave_tx_rx_isr_dma(), and i2c_wait_flag().

◆ i2c_general_call_enable()

void i2c_general_call_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable general call.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 335 of file at32f403_i2c.c.

◆ i2c_init()

void i2c_init | ( | i2c_type * | i2c_x,
 |  | i2c_fsmode_duty_cycle_type | duty,
 |  | uint32_t | speed
 | ) |  |

init i2c speed and duty cycle.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
duty this parameter can be one of the following values:
  • I2C_FSMODE_DUTY_2_1: duty cycle 2:1
  • I2C_FSMODE_DUTY_16_9: duty cycle 16:9
speed | i2c scl clock speed, such as 100000
Return values
none

Definition at line 93 of file at32f403_i2c.c.

Referenced by i2c_lowlevel_init().

◆ i2c_interrupt_enable()

void i2c_interrupt_enable | ( | i2c_type * | i2c_x,
 |  | uint16_t | source,
 |  | confirm_state | new_state
 | ) |  |

enable or disable interrupt

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
source this parameter can be one of the following values:
  • I2C_DATA_INT: data interrupt.
  • I2C_EV_INT: event interrupt.
  • I2C_ERR_INT: error interrupt.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 462 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), i2c_err_irq_handler(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_memory_read_int(), i2c_memory_write_int(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_rx_isr_int(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), i2c_slave_tx_isr_int(), and i2c_slave_tx_rx_isr_dma().

◆ i2c_interrupt_flag_get()

flag_status i2c_interrupt_flag_get | ( | i2c_type * | i2c_x,
 |  | uint32_t | flag
 | ) |  |

get interrupt flag status

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
flag this parameter can be one of the following values:
  • I2C_STARTF_FLAG: start condition generation complete flag.
  • I2C_ADDR7F_FLAG: 0~7 bit address match flag.
  • I2C_TDC_FLAG: transmit data complete flag.
  • I2C_ADDRHF_FLAG: master 9~8 bit address header match flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_RDBF_FLAG: receive data buffer full flag.
  • I2C_TDBE_FLAG: transmit data buffer empty flag.
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
Return values
flag_status (SET or RESET)

< i2c start condition generation complete flag

< i2c 0~7 bit address match flag

< i2c transmit data complete flag

< i2c master 9~8 bit address header match flag

< i2c stop condition generation complete flag

< i2c receive data buffer full flag

< i2c transmit data buffer empty flag

< i2c bus error flag

< i2c arbitration lost flag

< i2c acknowledge failure flag

< i2c overflow or underflow flag

< i2c pec receive error flag

< i2c smbus timeout flag

< i2c smbus alert flag

Definition at line 629 of file at32f403_i2c.c.

◆ i2c_master_receive_ack_set()

void i2c_master_receive_ack_set | ( | i2c_type * | i2c_x,
 |  | i2c_master_ack_type | pos
 | ) |  |

master receiving mode acknowledge control.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
pos this parameter can be one of the following values:
  • I2C_MASTER_ACK_CURRENT: acken bit acts on the current byte
  • I2C_MASTER_ACK_NEXT: acken bit acts on the next byte
Return values
none

Definition at line 306 of file at32f403_i2c.c.

Referenced by i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), and i2c_slave_transmit_int().

◆ i2c_own_address1_set()

void i2c_own_address1_set | ( | i2c_type * | i2c_x,
 |  | i2c_address_mode_type | mode,
 |  | uint16_t | address
 | ) |  |

config own address1.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
mode this parameter can be one of the following values:
  • I2C_ADDRESS_MODE_7BIT: 7bit address.
  • I2C_ADDRESS_MODE_10BIT: 10bit address.
address | own address1, such as 0xb0.
Return values
none

Definition at line 192 of file at32f403_i2c.c.

Referenced by i2c_lowlevel_init().

◆ i2c_own_address2_enable()

void i2c_own_address2_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable own address2.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 222 of file at32f403_i2c.c.

◆ i2c_own_address2_set()

void i2c_own_address2_set | ( | i2c_type * | i2c_x,
 |  | uint8_t | address
 | ) |  |

config own address2.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
address | specifies the 7bit i2c own address2, such as 0xa0.
Return values
none.

Definition at line 209 of file at32f403_i2c.c.

◆ i2c_pec_calculate_enable()

void i2c_pec_calculate_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable pec calcultetion.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 406 of file at32f403_i2c.c.

◆ i2c_pec_position_set()

void i2c_pec_position_set | ( | i2c_type * | i2c_x,
 |  | i2c_pec_position_type | pos
 | ) |  |

pec position set.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
pos this parameter can be one of the following values:
  • I2C_PEC_POSITION_CURRENT: the current byte is pec
  • I2C_PEC_POSITION_NEXT: the next byte is pec
Return values
none

Definition at line 322 of file at32f403_i2c.c.

◆ i2c_pec_transmit_enable()

void i2c_pec_transmit_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable pec transfer.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 393 of file at32f403_i2c.c.

◆ i2c_pec_value_get()

uint8_t i2c_pec_value_get ( i2c_type * i2c_x )

get pec value.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
uint8_t pec value.

Definition at line 418 of file at32f403_i2c.c.

◆ i2c_reset()

void i2c_reset ( i2c_type * i2c_x )

reset the i2c register

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
none

Definition at line 49 of file at32f403_i2c.c.

Referenced by i2c_config().

◆ i2c_smbus_alert_set()

void i2c_smbus_alert_set | ( | i2c_type * | i2c_x,
 |  | i2c_smbus_alert_set_type | level
 | ) |  |

drive the smbus alert pin high or low.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
level this parameter can be one of the following values:
  • I2C_SMBUS_ALERT_LOW: smbus alert pin set low.
  • I2C_SMBUS_ALERT_HIGH: smbus alert pin set high.
Return values
none

Definition at line 380 of file at32f403_i2c.c.

◆ i2c_smbus_enable()

void i2c_smbus_enable | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the smbus mode

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 235 of file at32f403_i2c.c.

◆ i2c_smbus_mode_set()

void i2c_smbus_mode_set | ( | i2c_type * | i2c_x,
 |  | i2c_smbus_mode_set_type | mode
 | ) |  |

config smbus host or device.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
level this parameter can be one of the following values:
  • I2C_SMBUS_MODE_DEVICE: smbus device.
  • I2C_SMBUS_MODE_HOST: smbus host.
Return values
none

Definition at line 364 of file at32f403_i2c.c.

◆ i2c_software_reset()

void i2c_software_reset | ( | i2c_type * | i2c_x,
 |  | confirm_state | new_state
 | ) |  |

software reset.

Parameters
i2c_x | to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 76 of file at32f403_i2c.c.

◆ i2c_start_generate()

void i2c_start_generate ( i2c_type * i2c_x )

generate start condition.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
none.

Definition at line 481 of file at32f403_i2c.c.

Referenced by i2c_master_read_addr(), and i2c_master_write_addr().

◆ i2c_stop_generate()

void i2c_stop_generate ( i2c_type * i2c_x )

generate stop condition.

Parameters
i2c_x to select the i2c peripheral. this parameter can be one of the following values: I2C1, I2C2, I2C3.
Return values
none.

Definition at line 493 of file at32f403_i2c.c.

Referenced by i2c_dma_rx_irq_handler(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_memory_address_send(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), and i2c_wait_flag().


AT32F403 Firmwary Library: MISC

Modules
MISC
AT32F403_periph_driver

MISC driver modules. More...

Modules

MISC_vector_table_base_address
MISC_exported_types
MISC_exported_functions
MISC_private_functions

Detailed Description

MISC driver modules.


AT32F403 Firmwary Library: MISC_vector_table_base_address

Macros
MISC_vector_table_base_address
AT32F403_periph_driver » MISC

Macros

#define | NVIC_VECTTAB_RAM ((uint32_t)0x20000000)
#define | NVIC_VECTTAB_FLASH ((uint32_t)0x08000000)

Detailed Description

Macro Definition Documentation

◆ NVIC_VECTTAB_FLASH

#define NVIC_VECTTAB_FLASH ((uint32_t)0x08000000)

nvic vector table based flash address

Definition at line 50 of file at32f403_misc.h.

◆ NVIC_VECTTAB_RAM

#define NVIC_VECTTAB_RAM ((uint32_t)0x20000000)

nvic vector table based ram address

Definition at line 49 of file at32f403_misc.h.


AT32F403 Firmwary Library: MISC_exported_types

Enumerations
MISC_exported_types
AT32F403_periph_driver » MISC

Enumerations

enum nvic_priority_group_type {
NVIC_PRIORITY_GROUP_0 = ((uint32_t)0x7) , NVIC_PRIORITY_GROUP_1 = ((uint32_t)0x6) , NVIC_PRIORITY_GROUP_2 = ((uint32_t)0x5) , NVIC_PRIORITY_GROUP_3 = ((uint32_t)0x4) ,
NVIC_PRIORITY_GROUP_4 = ((uint32_t)0x3)
}
nvic interrupt priority group More...
enum | nvic_lowpower_mode_type { NVIC_LP_SLEEPONEXIT = 0x02 , NVIC_LP_SLEEPDEEP = 0x04 , NVIC_LP_SEVONPEND = 0x10 }
nvic low power mode More...
enum | systick_clock_source_type { SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8 = ((uint32_t)0x00000000) , SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV = ((uint32_t)0x00000004) }
systick clock source More...

Detailed Description

Enumeration Type Documentation

◆ nvic_lowpower_mode_type

enum nvic_lowpower_mode_type

nvic low power mode

Enumerator
NVIC_LP_SLEEPONEXIT | enable sleep-on-exit feature
NVIC_LP_SLEEPDEEP | enable sleep-deep output signal when entering sleep mode
NVIC_LP_SEVONPEND | send event on pending

Definition at line 75 of file at32f403_misc.h.

◆ nvic_priority_group_type

enum nvic_priority_group_type

nvic interrupt priority group

Enumerator
NVIC_PRIORITY_GROUP_0 | 0 bits for preemption priority, 4 bits for subpriority
NVIC_PRIORITY_GROUP_1 | 1 bits for preemption priority, 3 bits for subpriority
NVIC_PRIORITY_GROUP_2 | 2 bits for preemption priority, 2 bits for subpriority
NVIC_PRIORITY_GROUP_3 | 3 bits for preemption priority, 1 bits for subpriority
NVIC_PRIORITY_GROUP_4 | 4 bits for preemption priority, 0 bits for subpriority

Definition at line 63 of file at32f403_misc.h.

◆ systick_clock_source_type

enum systick_clock_source_type

systick clock source

Enumerator
SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8 | systick clock source from core clock div8
SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV | systick clock source from core clock

Definition at line 85 of file at32f403_misc.h.


AT32F403 Firmwary Library: MISC_exported_functions

Functions
MISC_exported_functions
AT32F403_periph_driver » MISC

Functions

void | nvic_system_reset (void)
system reset More...
void | nvic_irq_enable (IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq More...
void | nvic_irq_disable (IRQn_Type irqn)
disable nvic irq number More...
void | nvic_priority_group_config (nvic_priority_group_type priority_group)
config nvic priority group More...
void | nvic_vector_table_set (uint32_t base, uint32_t offset)
set the vector table location and offset. More...
void | nvic_lowpower_mode_config (nvic_lowpower_mode_type lp_mode, confirm_state new_state)
config nvic lowpower mode More...
void | systick_clock_source_config (systick_clock_source_type source)
config systick clock source More...

Detailed Description

Function Documentation

◆ nvic_irq_disable()

void nvic_irq_disable ( IRQn_Type irqn )

disable nvic irq number

Parameters
irqn (IRQn_Type number)
Return values
none

Definition at line 79 of file at32f403_misc.c.

Referenced by app_load(), and jump_to_app().

◆ nvic_irq_enable()

void nvic_irq_enable | ( | IRQn_Type | irqn,
 |  | uint32_t | preempt_priority,
 |  | uint32_t | sub_priority
 | ) |  |

enable nvic irq

Parameters
irqn | (IRQn_Type number)
preempt_priority | preemptive priority value (starting from 0)
sub_priority | subpriority value (starting from 0)
Return values
none

Definition at line 62 of file at32f403_misc.c.

Referenced by adc_config(), alarm_init(), button_exint_init(), can_configuration(), codec_i2s_init(), dma_config(), dma_configuration(), exint_line0_config(), exint_line4_config(), i2c_lowlevel_init(), i2s_config(), main(), nvic_configuration(), rs485_config(), rtc_config(), spi_config(), tmr1_config(), tmr2_config(), tmr_init(), uart_init(), usart1_config(), usart_configuration(), and usb_usart_config().

◆ nvic_lowpower_mode_config()

void nvic_lowpower_mode_config | ( | nvic_lowpower_mode_type | lp_mode,
 |  | confirm_state | new_state
 | ) |  |

config nvic lowpower mode

Parameters
lp_mode this parameter can be one of the following values:
  • NVIC_LP_SEVONPEND
  • NVIC_LP_SLEEPDEEP
  • NVIC_LP_SLEEPONEXIT
new_state (new state of lp condition. ENABLE or DISABLE)
Return values
none

Definition at line 125 of file at32f403_misc.c.

◆ nvic_priority_group_config()

void nvic_priority_group_config ( nvic_priority_group_type priority_group )

config nvic priority group

Parameters
priority_group this parameter can be one of the following values:
  • NVIC_PRIORITY_GROUP_0
  • NVIC_PRIORITY_GROUP_1
  • NVIC_PRIORITY_GROUP_2
  • NVIC_PRIORITY_GROUP_3
  • NVIC_PRIORITY_GROUP_4
Return values
none

Definition at line 95 of file at32f403_misc.c.

Referenced by button_exint_init(), exint_line0_config(), main(), nvic_configuration(), and usart_configuration().

◆ nvic_system_reset()

void nvic_system_reset ( void )

system reset

Parameters
none
Return values
none

Definition at line 50 of file at32f403_misc.c.

Referenced by app_loop(), iap_command_handle(), and main().

◆ nvic_vector_table_set()

void nvic_vector_table_set | ( | uint32_t | base,
 |  | uint32_t | offset
 | ) |  |

set the vector table location and offset.

Parameters
base this parameter can be one of the following values:
  • NVIC_VECTTAB_RAM
  • NVIC_VECTTAB_FLASH
offset (vector table base offset field. this value must be a multiple of 0x200)
Return values
none

Definition at line 110 of file at32f403_misc.c.

Referenced by main().

◆ systick_clock_source_config()

void systick_clock_source_config ( systick_clock_source_type source )

config systick clock source

Parameters
source this parameter can be one of the following values:
  • SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8
  • SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
Return values
none

Definition at line 145 of file at32f403_misc.c.

Referenced by delay_init(), and main().


AT32F403 Firmwary Library: MISC_private_functions

Macros | Functions
MISC_private_functions
AT32F403_periph_driver » MISC

Macros

#define AIRCR_VECTKEY_MASK ((uint32_t)0x05FA0000)

Functions

void | nvic_system_reset (void)
system reset More...
void | nvic_irq_enable (IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq More...
void | nvic_irq_disable (IRQn_Type irqn)
disable nvic irq number More...
void | nvic_priority_group_config (nvic_priority_group_type priority_group)
config nvic priority group More...
void | nvic_vector_table_set (uint32_t base, uint32_t offset)
set the vector table location and offset. More...
void | nvic_lowpower_mode_config (nvic_lowpower_mode_type lp_mode, confirm_state new_state)
config nvic lowpower mode More...
void | systick_clock_source_config (systick_clock_source_type source)
config systick clock source More...

Detailed Description

Macro Definition Documentation

◆ AIRCR_VECTKEY_MASK

#define AIRCR_VECTKEY_MASK ((uint32_t)0x05FA0000)

Definition at line 43 of file at32f403_misc.c.

Function Documentation

◆ nvic_irq_disable()

void nvic_irq_disable ( IRQn_Type irqn )

disable nvic irq number

Parameters
irqn (IRQn_Type number)
Return values
none

Definition at line 79 of file at32f403_misc.c.

Referenced by app_load(), and jump_to_app().

◆ nvic_irq_enable()

void nvic_irq_enable | ( | IRQn_Type | irqn,
 |  | uint32_t | preempt_priority,
 |  | uint32_t | sub_priority
 | ) |  |

enable nvic irq

Parameters
irqn | (IRQn_Type number)
preempt_priority | preemptive priority value (starting from 0)
sub_priority | subpriority value (starting from 0)
Return values
none

Definition at line 62 of file at32f403_misc.c.

Referenced by adc_config(), alarm_init(), button_exint_init(), can_configuration(), codec_i2s_init(), dma_config(), dma_configuration(), exint_line0_config(), exint_line4_config(), i2c_lowlevel_init(), i2s_config(), main(), nvic_configuration(), rs485_config(), rtc_config(), spi_config(), tmr1_config(), tmr2_config(), tmr_init(), uart_init(), usart1_config(), usart_configuration(), and usb_usart_config().

◆ nvic_lowpower_mode_config()

void nvic_lowpower_mode_config | ( | nvic_lowpower_mode_type | lp_mode,
 |  | confirm_state | new_state
 | ) |  |

config nvic lowpower mode

Parameters
lp_mode this parameter can be one of the following values:
  • NVIC_LP_SEVONPEND
  • NVIC_LP_SLEEPDEEP
  • NVIC_LP_SLEEPONEXIT
new_state (new state of lp condition. ENABLE or DISABLE)
Return values
none

Definition at line 125 of file at32f403_misc.c.

◆ nvic_priority_group_config()

void nvic_priority_group_config ( nvic_priority_group_type priority_group )

config nvic priority group

Parameters
priority_group this parameter can be one of the following values:
  • NVIC_PRIORITY_GROUP_0
  • NVIC_PRIORITY_GROUP_1
  • NVIC_PRIORITY_GROUP_2
  • NVIC_PRIORITY_GROUP_3
  • NVIC_PRIORITY_GROUP_4
Return values
none

Definition at line 95 of file at32f403_misc.c.

Referenced by button_exint_init(), exint_line0_config(), main(), nvic_configuration(), and usart_configuration().

◆ nvic_system_reset()

void nvic_system_reset ( void )

system reset

Parameters
none
Return values
none

Definition at line 50 of file at32f403_misc.c.

Referenced by app_loop(), iap_command_handle(), and main().

◆ nvic_vector_table_set()

void nvic_vector_table_set | ( | uint32_t | base,
 |  | uint32_t | offset
 | ) |  |

set the vector table location and offset.

Parameters
base this parameter can be one of the following values:
  • NVIC_VECTTAB_RAM
  • NVIC_VECTTAB_FLASH
offset (vector table base offset field. this value must be a multiple of 0x200)
Return values
none

Definition at line 110 of file at32f403_misc.c.

Referenced by main().

◆ systick_clock_source_config()

void systick_clock_source_config ( systick_clock_source_type source )

config systick clock source

Parameters
source this parameter can be one of the following values:
  • SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8
  • SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
Return values
none

Definition at line 145 of file at32f403_misc.c.

Referenced by delay_init(), and main().


AT32F403 Firmwary Library: PWC

Modules | Macros
PWC
AT32F403_periph_driver

PWC driver modules. More...

Modules

PWC_flags_definition
pwc flag
PWC_exported_types
PWC_exported_functions
PWC_private_functions

Macros

#define | PWC_WAKEUP_PIN_1 ((uint32_t)0x00000100)
pwc wakeup pin num definition More...
#define | PWC ((pwc_type *) PWC_BASE)

Detailed Description

PWC driver modules.

Macro Definition Documentation

◆ PWC

#define PWC ((pwc_type *) PWC_BASE)

Definition at line 146 of file at32f403_pwc.h.

◆ PWC_WAKEUP_PIN_1

#define PWC_WAKEUP_PIN_1 ((uint32_t)0x00000100)

pwc wakeup pin num definition

standby wake-up pin1(pa0)

Definition at line 61 of file at32f403_pwc.h.


AT32F403 Firmwary Library: PWC_flags_definition

Macros
PWC_flags_definition
AT32F403_periph_driver » PWC

pwc flag More...

Macros

#define | PWC_WAKEUP_FLAG ((uint32_t)0x00000001)
#define | PWC_STANDBY_FLAG ((uint32_t)0x00000002)
#define | PWC_PVM_OUTPUT_FLAG ((uint32_t)0x00000004)

Detailed Description

pwc flag

Macro Definition Documentation

◆ PWC_PVM_OUTPUT_FLAG

#define PWC_PVM_OUTPUT_FLAG ((uint32_t)0x00000004)

pvm output flag

Definition at line 52 of file at32f403_pwc.h.

◆ PWC_STANDBY_FLAG

#define PWC_STANDBY_FLAG ((uint32_t)0x00000002)

standby flag

Definition at line 51 of file at32f403_pwc.h.

◆ PWC_WAKEUP_FLAG

#define PWC_WAKEUP_FLAG ((uint32_t)0x00000001)

wakeup flag

Definition at line 50 of file at32f403_pwc.h.


AT32F403 Firmwary Library: PWC_exported_types

Data Structures | Enumerations
PWC_exported_types
AT32F403_periph_driver » PWC

Data Structures

struct pwc_type
type define pwc register all More...

Enumerations

enum pwc_pvm_voltage_type {
PWC_PVM_VOLTAGE_2V3 = 0x01 , PWC_PVM_VOLTAGE_2V4 = 0x02 , PWC_PVM_VOLTAGE_2V5 = 0x03 , PWC_PVM_VOLTAGE_2V6 = 0x04 ,
PWC_PVM_VOLTAGE_2V7 = 0x05 , PWC_PVM_VOLTAGE_2V8 = 0x06 , PWC_PVM_VOLTAGE_2V9 = 0x07
}
pwc pvm voltage type More...
enum | pwc_sleep_enter_type { PWC_SLEEP_ENTER_WFI = 0x00 , PWC_SLEEP_ENTER_WFE = 0x01 }
pwc sleep enter type More...
enum | pwc_deep_sleep_enter_type { PWC_DEEP_SLEEP_ENTER_WFI = 0x00 , PWC_DEEP_SLEEP_ENTER_WFE = 0x01 }
pwc deep sleep enter type More...

Detailed Description

Enumeration Type Documentation

◆ pwc_deep_sleep_enter_type

enum pwc_deep_sleep_enter_type

pwc deep sleep enter type

Enumerator
PWC_DEEP_SLEEP_ENTER_WFI | use wfi enter deepsleep mode
PWC_DEEP_SLEEP_ENTER_WFE | use wfe enter deepsleep mode

Definition at line 93 of file at32f403_pwc.h.

◆ pwc_pvm_voltage_type

enum pwc_pvm_voltage_type

pwc pvm voltage type

Enumerator
PWC_PVM_VOLTAGE_2V3 | power voltage monitoring boundary 2.3v
PWC_PVM_VOLTAGE_2V4 | power voltage monitoring boundary 2.4v
PWC_PVM_VOLTAGE_2V5 | power voltage monitoring boundary 2.5v
PWC_PVM_VOLTAGE_2V6 | power voltage monitoring boundary 2.6v
PWC_PVM_VOLTAGE_2V7 | power voltage monitoring boundary 2.7v
PWC_PVM_VOLTAGE_2V8 | power voltage monitoring boundary 2.8v
PWC_PVM_VOLTAGE_2V9 | power voltage monitoring boundary 2.9v

Definition at line 70 of file at32f403_pwc.h.

◆ pwc_sleep_enter_type

enum pwc_sleep_enter_type

pwc sleep enter type

Enumerator
PWC_SLEEP_ENTER_WFI | use wfi enter sleep mode
PWC_SLEEP_ENTER_WFE | use wfe enter sleep mode

Definition at line 84 of file at32f403_pwc.h.


AT32F403 Firmwary Library: pwc_type Struct Reference

Data Fields
pwc_type Struct Reference
AT32F403_periph_driver » PWC » PWC_exported_types

type define pwc register all More...

#include <at32f403_pwc.h>

Data Fields

union {
__IO uint32_t ctrl
struct {
__IO uint32_t reserved1: 1
__IO uint32_t lpsel: 1
__IO uint32_t clswef: 1
__IO uint32_t clsef: 1
__IO uint32_t pvmen: 1
__IO uint32_t pvmsel: 3
__IO uint32_t bpwen: 1
__IO uint32_t reserved2: 23
} ctrl_bit
};
pwc ctrl register, offset:0x00 More...
union {
__IO uint32_t ctrlsts
struct {
__IO uint32_t swef: 1
__IO uint32_t sef: 1
__IO uint32_t pvmof: 1
__IO uint32_t reserved1: 5
__IO uint32_t swpen: 1
__IO uint32_t reserved2: 23
} ctrlsts_bit
};
pwc ctrlsts register, offset:0x04 More...

Detailed Description

type define pwc register all

Definition at line 102 of file at32f403_pwc.h.

Field Documentation

◆

union { ... } pwc_type::@511

pwc ctrl register, offset:0x00

◆

union { ... } pwc_type::@513

pwc ctrlsts register, offset:0x04

◆ bpwen

__IO uint32_t pwc_type::bpwen

Definition at line 118 of file at32f403_pwc.h.

◆ clsef

__IO uint32_t pwc_type::clsef

Definition at line 115 of file at32f403_pwc.h.

◆ clswef

__IO uint32_t pwc_type::clswef

Definition at line 114 of file at32f403_pwc.h.

◆ ctrl

__IO uint32_t pwc_type::ctrl

Definition at line 109 of file at32f403_pwc.h.

◆

struct { ... } pwc_type::ctrl_bit

◆ ctrlsts

__IO uint32_t pwc_type::ctrlsts

Definition at line 128 of file at32f403_pwc.h.

◆

struct { ... } pwc_type::ctrlsts_bit

◆ lpsel

__IO uint32_t pwc_type::lpsel

Definition at line 113 of file at32f403_pwc.h.

◆ pvmen

__IO uint32_t pwc_type::pvmen

Definition at line 116 of file at32f403_pwc.h.

◆ pvmof

__IO uint32_t pwc_type::pvmof

Definition at line 133 of file at32f403_pwc.h.

◆ pvmsel

__IO uint32_t pwc_type::pvmsel

Definition at line 117 of file at32f403_pwc.h.

◆ reserved1

__IO uint32_t pwc_type::reserved1

Definition at line 112 of file at32f403_pwc.h.

◆ reserved2

__IO uint32_t pwc_type::reserved2

Definition at line 119 of file at32f403_pwc.h.

◆ sef

__IO uint32_t pwc_type::sef

Definition at line 132 of file at32f403_pwc.h.

◆ swef

__IO uint32_t pwc_type::swef

Definition at line 131 of file at32f403_pwc.h.

◆ swpen

__IO uint32_t pwc_type::swpen

Definition at line 135 of file at32f403_pwc.h.

The documentation for this struct was generated from the following file:
  • at32f403_pwc.h


AT32F403 Firmwary Library: PWC_exported_functions

Functions
PWC_exported_functions
AT32F403_periph_driver » PWC

Functions

void | pwc_reset (void)
deinitialize the pwc peripheral registers to their default reset values. More...
void | pwc_battery_powered_domain_access (confirm_state new_state)
enable or disable access to the battery powered domain. More...
void | pwc_pvm_level_select (pwc_pvm_voltage_type pvm_voltage)
select the voltage threshold detected by the power voltage detector. More...
void | pwc_power_voltage_monitor_enable (confirm_state new_state)
enable or disable pwc power voltage monitor (pvm) More...
void | pwc_wakeup_pin_enable (uint32_t pin_num, confirm_state new_state)
enable or disable pwc standby wakeup pin More...
void | pwc_flag_clear (uint32_t pwc_flag)
clear flag of pwc More...
flag_status | pwc_flag_get (uint32_t pwc_flag)
get flag of pwc More...
void | pwc_sleep_mode_enter (pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode More...
void | pwc_deep_sleep_mode_enter (pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode More...
void | pwc_standby_mode_enter (void)
enter pwc standby mode More...

Detailed Description

Function Documentation

◆ pwc_battery_powered_domain_access()

void pwc_battery_powered_domain_access ( confirm_state new_state )

enable or disable access to the battery powered domain.

Parameters
new_state new state of battery powered domain access. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 59 of file at32f403_pwc.c.

Referenced by main(), rtc_alarm_clock_set(), rtc_config(), rtc_configuration(), rtc_init(), and rtc_time_set().

◆ pwc_deep_sleep_mode_enter()

void pwc_deep_sleep_mode_enter ( pwc_deep_sleep_enter_type pwc_deep_sleep_enter )

enter pwc deep-sleep mode

Parameters
pwc_deep_sleep_enter choose the instruction to enter deep sleep mode. this parameter can be one of the following values:
  • PWC_DEEP_SLEEP_ENTER_WFI
  • PWC_DEEP_SLEEP_ENTER_WFE
Return values
none

Definition at line 187 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_flag_clear()

void pwc_flag_clear ( uint32_t pwc_flag )

clear flag of pwc

Parameters
pwc_flag select the pwc flag. this parameter can be any combination of the following values:
  • PWC_WAKEUP_FLAG
  • PWC_STANDBY_FLAG
  • note:"PWC_PVM_OUTPUT_FLAG" cannot be choose!this bit is readonly bit,it means the voltage monitoring output state
Return values
none

< standby flag

< wakeup flag

Definition at line 125 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_flag_get()

flag_status pwc_flag_get ( uint32_t pwc_flag )

get flag of pwc

Parameters
pwc_flag select the pwc flag. this parameter can be one of the following values:
  • PWC_WAKEUP_FLAG
  • PWC_STANDBY_FLAG
  • PWC_PVM_OUTPUT_FLAG
Return values
state of select flag(SET or RESET).

Definition at line 142 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_power_voltage_monitor_enable()

void pwc_power_voltage_monitor_enable ( confirm_state new_state )

enable or disable pwc power voltage monitor (pvm)

Parameters
new_state new state of pvm. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 88 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_pvm_level_select()

void pwc_pvm_level_select ( pwc_pvm_voltage_type pvm_voltage )

select the voltage threshold detected by the power voltage detector.

Parameters
pvm_voltage select pwc pvm voltage this parameter can be one of the following values:
  • PWC_PVM_VOLTAGE_2V3
  • PWC_PVM_VOLTAGE_2V4
  • PWC_PVM_VOLTAGE_2V5
  • PWC_PVM_VOLTAGE_2V6
  • PWC_PVM_VOLTAGE_2V7
  • PWC_PVM_VOLTAGE_2V8
  • PWC_PVM_VOLTAGE_2V9
Return values
none

Definition at line 77 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_reset()

void pwc_reset ( void )

deinitialize the pwc peripheral registers to their default reset values.

Parameters
none
Return values
none

Definition at line 47 of file at32f403_pwc.c.

◆ pwc_sleep_mode_enter()

void pwc_sleep_mode_enter ( pwc_sleep_enter_type pwc_sleep_enter )

enter pwc sleep mode

Parameters
sleep_mode_enter choose the instruction to enter sleep mode. this parameter can be one of the following values:
  • PWC_SLEEP_ENTER_WFI
  • PWC_SLEEP_ENTER_WFE
Return values
none

Definition at line 164 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_standby_mode_enter()

void pwc_standby_mode_enter ( void )

enter pwc standby mode

Parameters
none
Return values
none

Definition at line 208 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_wakeup_pin_enable()

void pwc_wakeup_pin_enable | ( | uint32_t | pin_num,
 |  | confirm_state | new_state
 | ) |  |

enable or disable pwc standby wakeup pin

Parameters
pin_num choose the wakeup pin. this parameter can be be any combination of the following values:
  • PWC_WAKEUP_PIN_1
new_state new state of the standby wakeup pin. this parameter can be one of the following values:
  • TRUE <wakeup pin is used for wake up cpu from standby mode>
  • FALSE <wakeup pin is used for general purpose I/O>
Return values
none

Definition at line 104 of file at32f403_pwc.c.

Referenced by main().


AT32F403 Firmwary Library: PWC_private_functions

Functions
PWC_private_functions
AT32F403_periph_driver » PWC

Functions

void | pwc_reset (void)
deinitialize the pwc peripheral registers to their default reset values. More...
void | pwc_battery_powered_domain_access (confirm_state new_state)
enable or disable access to the battery powered domain. More...
void | pwc_pvm_level_select (pwc_pvm_voltage_type pvm_voltage)
select the voltage threshold detected by the power voltage detector. More...
void | pwc_power_voltage_monitor_enable (confirm_state new_state)
enable or disable pwc power voltage monitor (pvm) More...
void | pwc_wakeup_pin_enable (uint32_t pin_num, confirm_state new_state)
enable or disable pwc standby wakeup pin More...
void | pwc_flag_clear (uint32_t pwc_flag)
clear flag of pwc More...
flag_status | pwc_flag_get (uint32_t pwc_flag)
get flag of pwc More...
void | pwc_sleep_mode_enter (pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode More...
void | pwc_deep_sleep_mode_enter (pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode More...
void | pwc_standby_mode_enter (void)
enter pwc standby mode More...

Detailed Description

Function Documentation

◆ pwc_battery_powered_domain_access()

void pwc_battery_powered_domain_access ( confirm_state new_state )

enable or disable access to the battery powered domain.

Parameters
new_state new state of battery powered domain access. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 59 of file at32f403_pwc.c.

Referenced by main(), rtc_alarm_clock_set(), rtc_config(), rtc_configuration(), rtc_init(), and rtc_time_set().

◆ pwc_deep_sleep_mode_enter()

void pwc_deep_sleep_mode_enter ( pwc_deep_sleep_enter_type pwc_deep_sleep_enter )

enter pwc deep-sleep mode

Parameters
pwc_deep_sleep_enter choose the instruction to enter deep sleep mode. this parameter can be one of the following values:
  • PWC_DEEP_SLEEP_ENTER_WFI
  • PWC_DEEP_SLEEP_ENTER_WFE
Return values
none

Definition at line 187 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_flag_clear()

void pwc_flag_clear ( uint32_t pwc_flag )

clear flag of pwc

Parameters
pwc_flag select the pwc flag. this parameter can be any combination of the following values:
  • PWC_WAKEUP_FLAG
  • PWC_STANDBY_FLAG
  • note:"PWC_PVM_OUTPUT_FLAG" cannot be choose!this bit is readonly bit,it means the voltage monitoring output state
Return values
none

< standby flag

< wakeup flag

Definition at line 125 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_flag_get()

flag_status pwc_flag_get ( uint32_t pwc_flag )

get flag of pwc

Parameters
pwc_flag select the pwc flag. this parameter can be one of the following values:
  • PWC_WAKEUP_FLAG
  • PWC_STANDBY_FLAG
  • PWC_PVM_OUTPUT_FLAG
Return values
state of select flag(SET or RESET).

Definition at line 142 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_power_voltage_monitor_enable()

void pwc_power_voltage_monitor_enable ( confirm_state new_state )

enable or disable pwc power voltage monitor (pvm)

Parameters
new_state new state of pvm. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 88 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_pvm_level_select()

void pwc_pvm_level_select ( pwc_pvm_voltage_type pvm_voltage )

select the voltage threshold detected by the power voltage detector.

Parameters
pvm_voltage select pwc pvm voltage this parameter can be one of the following values:
  • PWC_PVM_VOLTAGE_2V3
  • PWC_PVM_VOLTAGE_2V4
  • PWC_PVM_VOLTAGE_2V5
  • PWC_PVM_VOLTAGE_2V6
  • PWC_PVM_VOLTAGE_2V7
  • PWC_PVM_VOLTAGE_2V8
  • PWC_PVM_VOLTAGE_2V9
Return values
none

Definition at line 77 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_reset()

void pwc_reset ( void )

deinitialize the pwc peripheral registers to their default reset values.

Parameters
none
Return values
none

Definition at line 47 of file at32f403_pwc.c.

◆ pwc_sleep_mode_enter()

void pwc_sleep_mode_enter ( pwc_sleep_enter_type pwc_sleep_enter )

enter pwc sleep mode

Parameters
sleep_mode_enter choose the instruction to enter sleep mode. this parameter can be one of the following values:
  • PWC_SLEEP_ENTER_WFI
  • PWC_SLEEP_ENTER_WFE
Return values
none

Definition at line 164 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_standby_mode_enter()

void pwc_standby_mode_enter ( void )

enter pwc standby mode

Parameters
none
Return values
none

Definition at line 208 of file at32f403_pwc.c.

Referenced by main().

◆ pwc_wakeup_pin_enable()

void pwc_wakeup_pin_enable | ( | uint32_t | pin_num,
 |  | confirm_state | new_state
 | ) |  |

enable or disable pwc standby wakeup pin

Parameters
pin_num choose the wakeup pin. this parameter can be be any combination of the following values:
  • PWC_WAKEUP_PIN_1
new_state new state of the standby wakeup pin. this parameter can be one of the following values:
  • TRUE <wakeup pin is used for wake up cpu from standby mode>
  • FALSE <wakeup pin is used for general purpose I/O>
Return values
none

Definition at line 104 of file at32f403_pwc.c.

Referenced by main().


AT32F403 Firmwary Library: RTC

Modules | Macros
RTC
AT32F403_periph_driver

RTC driver modules. More...

Modules

RTC_interrupts_definition
rtc interrupt
RTC_flags_definition
rtc flag
RTC_exported_types
RTC_exported_functions
RTC_private_functions

Macros

#define RTC ((rtc_type *) RTC_BASE)

Detailed Description

RTC driver modules.

Macro Definition Documentation

◆ RTC

#define RTC ((rtc_type *) RTC_BASE)

Definition at line 226 of file at32f403_rtc.h.


AT32F403 Firmwary Library: RTC_interrupts_definition

Macros
RTC_interrupts_definition
AT32F403_periph_driver » RTC

rtc interrupt More...

Macros

#define | RTC_TS_INT ((uint16_t)0x0001)
#define | RTC_TA_INT ((uint16_t)0x0002)
#define | RTC_OVF_INT ((uint16_t)0x0004)

Detailed Description

rtc interrupt

Macro Definition Documentation

◆ RTC_OVF_INT

#define RTC_OVF_INT ((uint16_t)0x0004)

rtc overflow interrupt

Definition at line 52 of file at32f403_rtc.h.

◆ RTC_TA_INT

#define RTC_TA_INT ((uint16_t)0x0002)

rtc time alarm interrupt

Definition at line 51 of file at32f403_rtc.h.

◆ RTC_TS_INT

#define RTC_TS_INT ((uint16_t)0x0001)

rtc time second interrupt

Definition at line 50 of file at32f403_rtc.h.


AT32F403 Firmwary Library: RTC_flags_definition

Macros
RTC_flags_definition
AT32F403_periph_driver » RTC

rtc flag More...

Macros

#define | RTC_TS_FLAG ((uint16_t)0x0001)
#define | RTC_TA_FLAG ((uint16_t)0x0002)
#define | RTC_OVF_FLAG ((uint16_t)0x0004)
#define | RTC_UPDF_FLAG ((uint16_t)0x0008)
#define | RTC_CFGF_FLAG ((uint16_t)0x0020)

Detailed Description

rtc flag

Macro Definition Documentation

◆ RTC_CFGF_FLAG

#define RTC_CFGF_FLAG ((uint16_t)0x0020)

rtc configuration finish flag

Definition at line 67 of file at32f403_rtc.h.

◆ RTC_OVF_FLAG

#define RTC_OVF_FLAG ((uint16_t)0x0004)

rtc overflow flag

Definition at line 65 of file at32f403_rtc.h.

◆ RTC_TA_FLAG

#define RTC_TA_FLAG ((uint16_t)0x0002)

rtc time alarm flag

Definition at line 64 of file at32f403_rtc.h.

◆ RTC_TS_FLAG

#define RTC_TS_FLAG ((uint16_t)0x0001)

rtc time second flag

Definition at line 63 of file at32f403_rtc.h.

◆ RTC_UPDF_FLAG

#define RTC_UPDF_FLAG ((uint16_t)0x0008)

rtc update finish flag

Definition at line 66 of file at32f403_rtc.h.


AT32F403 Firmwary Library: RTC_exported_types

Data Structures
RTC_exported_types
AT32F403_periph_driver » RTC

Data Structures

struct rtc_type
type define rtc register all More...

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: rtc_type Struct Reference

Data Fields
rtc_type Struct Reference
AT32F403_periph_driver » RTC » RTC_exported_types

type define rtc register all More...

#include <at32f403_rtc.h>

Data Fields

union {
__IO uint32_t ctrlh
struct {
__IO uint32_t tsien: 1
__IO uint32_t taien: 1
__IO uint32_t ovfien: 1
__IO uint32_t reserved1: 29
} ctrlh_bit
};
rtc ctrlh register, offset:0x00 More...
union {
__IO uint32_t ctrll
struct {
__IO uint32_t tsf: 1
__IO uint32_t taf: 1
__IO uint32_t ovff: 1
__IO uint32_t updf: 1
__IO uint32_t cfgen: 1
__IO uint32_t cfgf: 1
__IO uint32_t reserved1: 26
} ctrll_bit
};
rtc ctrll register, offset:0x04 More...
union {
__IO uint32_t divh
struct {
__IO uint32_t div: 4
__IO uint32_t reserved1: 28
} divh_bit
};
rtc divh register, offset:0x08 More...
union {
__IO uint32_t divl
struct {
__IO uint32_t div: 16
__IO uint32_t reserved1: 16
} divl_bit
};
rtc divl register, offset:0x0C More...
union {
__IO uint32_t divcnth
struct {
__IO uint32_t divcnt: 4
__IO uint32_t reserved1: 28
} divcnth_bit
};
rtc divcnth register, offset:0x10 More...
union {
__IO uint32_t divcntl
struct {
__IO uint32_t divcnt: 16
__IO uint32_t reserved1: 16
} divcntl_bit
};
rtc divcntl register, offset:0x14 More...
union {
__IO uint32_t cnth
struct {
__IO uint32_t cnt: 16
__IO uint32_t reserved1: 16
} cnth_bit
};
rtc cnth register, offset:0x18 More...
union {
__IO uint32_t cntl
struct {
__IO uint32_t cnt: 16
__IO uint32_t reserved1: 16
} cntl_bit
};
rtc cntl register, offset:0x1C More...
union {
__IO uint32_t tah
struct {
__IO uint32_t ta: 16
__IO uint32_t reserved1: 16
} tah_bit
};
rtc tah register, offset:0x20 More...
union {
__IO uint32_t tal
struct {
__IO uint32_t ta: 16
__IO uint32_t reserved1: 16
} tal_bit
};
rtc tal register, offset:0x24 More...

Detailed Description

type define rtc register all

Definition at line 80 of file at32f403_rtc.h.

Field Documentation

◆

union { ... } rtc_type::@517

rtc ctrlh register, offset:0x00

◆

union { ... } rtc_type::@519

rtc ctrll register, offset:0x04

◆

union { ... } rtc_type::@521

rtc divh register, offset:0x08

◆

union { ... } rtc_type::@523

rtc divl register, offset:0x0C

◆

union { ... } rtc_type::@525

rtc divcnth register, offset:0x10

◆

union { ... } rtc_type::@527

rtc divcntl register, offset:0x14

◆

union { ... } rtc_type::@529

rtc cnth register, offset:0x18

◆

union { ... } rtc_type::@531

rtc cntl register, offset:0x1C

◆

union { ... } rtc_type::@533

rtc tah register, offset:0x20

◆

union { ... } rtc_type::@535

rtc tal register, offset:0x24

◆ cfgen

__IO uint32_t rtc_type::cfgen

Definition at line 110 of file at32f403_rtc.h.

◆ cfgf

__IO uint32_t rtc_type::cfgf

Definition at line 111 of file at32f403_rtc.h.

◆ cnt

__IO uint32_t rtc_type::cnt

Definition at line 176 of file at32f403_rtc.h.

◆ cnth

__IO uint32_t rtc_type::cnth

Definition at line 173 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::cnth_bit

◆ cntl

__IO uint32_t rtc_type::cntl

Definition at line 186 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::cntl_bit

◆ ctrlh

__IO uint32_t rtc_type::ctrlh

Definition at line 88 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::ctrlh_bit

◆ ctrll

__IO uint32_t rtc_type::ctrll

Definition at line 103 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::ctrll_bit

◆ div

__IO uint32_t rtc_type::div

Definition at line 124 of file at32f403_rtc.h.

◆ divcnt

__IO uint32_t rtc_type::divcnt

Definition at line 150 of file at32f403_rtc.h.

◆ divcnth

__IO uint32_t rtc_type::divcnth

Definition at line 147 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::divcnth_bit

◆ divcntl

__IO uint32_t rtc_type::divcntl

Definition at line 160 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::divcntl_bit

◆ divh

__IO uint32_t rtc_type::divh

Definition at line 121 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::divh_bit

◆ divl

__IO uint32_t rtc_type::divl

Definition at line 134 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::divl_bit

◆ ovff

__IO uint32_t rtc_type::ovff

Definition at line 108 of file at32f403_rtc.h.

◆ ovfien

__IO uint32_t rtc_type::ovfien

Definition at line 93 of file at32f403_rtc.h.

◆ reserved1

__IO uint32_t rtc_type::reserved1

Definition at line 94 of file at32f403_rtc.h.

◆ ta

__IO uint32_t rtc_type::ta

Definition at line 202 of file at32f403_rtc.h.

◆ taf

__IO uint32_t rtc_type::taf

Definition at line 107 of file at32f403_rtc.h.

◆ tah

__IO uint32_t rtc_type::tah

Definition at line 199 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::tah_bit

◆ taien

__IO uint32_t rtc_type::taien

Definition at line 92 of file at32f403_rtc.h.

◆ tal

__IO uint32_t rtc_type::tal

Definition at line 212 of file at32f403_rtc.h.

◆

struct { ... } rtc_type::tal_bit

◆ tsf

__IO uint32_t rtc_type::tsf

Definition at line 106 of file at32f403_rtc.h.

◆ tsien

__IO uint32_t rtc_type::tsien

Definition at line 91 of file at32f403_rtc.h.

◆ updf

__IO uint32_t rtc_type::updf

Definition at line 109 of file at32f403_rtc.h.

The documentation for this struct was generated from the following file:
  • at32f403_rtc.h


AT32F403 Firmwary Library: RTC_exported_functions

Functions
RTC_exported_functions
AT32F403_periph_driver » RTC

Functions

void | rtc_counter_set (uint32_t counter_value)
rtc counter set More...
uint32_t | rtc_counter_get (void)
rtc counter get More...
void | rtc_divider_set (uint32_t div_value)
rtc divider set More...
uint32_t | rtc_divider_get (void)
rtc divider get More...
void | rtc_alarm_set (uint32_t alarm_value)
rtc alarm value set More...
void | rtc_interrupt_enable (uint16_t source, confirm_state new_state)
rtc interrupt enable More...
flag_status | rtc_flag_get (uint16_t flag)
rtc flag get More...
flag_status | rtc_interrupt_flag_get (uint16_t flag)
rtc interrupt flag get More...
void | rtc_flag_clear (uint16_t flag)
rtc flag clear More...
void | rtc_wait_config_finish (void)
rtc wait configuration finish More...
void | rtc_wait_update_finish (void)
rtc wait update finish More...

Detailed Description

Function Documentation

◆ rtc_alarm_set()

void rtc_alarm_set ( uint32_t alarm_value )

rtc alarm value set

Parameters
alarm_value (0x0000_0000 ~ 0xFFFF_FFFF)
Return values
none

Definition at line 113 of file at32f403_rtc.c.

Referenced by main(), rtc_alarm_clock_set(), and rtc_alarm_config().

◆ rtc_counter_get()

uint32_t rtc_counter_get ( void )

rtc counter get

Parameters
none
Return values
rtc counter

Definition at line 65 of file at32f403_rtc.c.

Referenced by main(), randnum_test(), rtc_alarm_config(), RTC_IRQHandler(), and rtc_time_get().

◆ rtc_counter_set()

void rtc_counter_set ( uint32_t counter_value )

rtc counter set

Parameters
counter_value (0x0000_0000 ~ 0xFFFF_FFFF)
Return values
none

Definition at line 47 of file at32f403_rtc.c.

Referenced by rtc_time_set().

◆ rtc_divider_get()

uint32_t rtc_divider_get ( void )

rtc divider get

Parameters
none
Return values
rtc counter

Definition at line 98 of file at32f403_rtc.c.

◆ rtc_divider_set()

void rtc_divider_set ( uint32_t div_value )

rtc divider set

Parameters
div_value (0x0000_0000 ~ 0x000F_FFFF)
Return values
none

Definition at line 80 of file at32f403_rtc.c.

Referenced by main(), rtc_config(), rtc_configuration(), and rtc_init().

◆ rtc_flag_clear()

void rtc_flag_clear ( uint16_t flag )

rtc flag clear

Parameters
interrupt_flag this parameter can be any combination of the following values:
  • RTC_TS_FLAG: time second flag.
  • RTC_TA_FLAG: time alarm flag.
  • RTC_OVF_FLAG: overflow flag.
  • RTC_UPDF_FLAG: rtc update finish flag.
Return values
none

Definition at line 210 of file at32f403_rtc.c.

Referenced by alarm_init(), main(), rtc_alarm_config(), RTC_IRQHandler(), and RTCAlarm_IRQHandler().

◆ rtc_flag_get()

flag_status rtc_flag_get ( uint16_t flag )

rtc flag get

Parameters
flag this parameter can be one of the following values:
  • RTC_TS_FLAG: time second flag.
  • RTC_TA_FLAG: time alarm flag.
  • RTC_OVF_FLAG: overflow flag.
  • RTC_UPDF_FLAG: rtc update finish flag.
  • RTC_CFGF_FLAG: rtc configuration finish flag.
Return values
state of rtc flag

Definition at line 159 of file at32f403_rtc.c.

Referenced by main(), rtc_alarm_config(), RTC_IRQHandler(), and RTCAlarm_IRQHandler().

◆ rtc_interrupt_enable()

void rtc_interrupt_enable | ( | uint16_t | source,
 |  | confirm_state | new_state
 | ) |  |

rtc interrupt enable

Parameters
source this parameter can be any combination of the following values:
  • RTC_TS_INT: time second interrupt.
  • RTC_TA_INT: time alarm interrupt.
  • RTC_OVF_INT: overflow interrupt.
new_state (TRUE or FALSE)
Return values
none

Definition at line 136 of file at32f403_rtc.c.

Referenced by alarm_init(), rtc_config(), and rtc_configuration().

◆ rtc_interrupt_flag_get()

flag_status rtc_interrupt_flag_get ( uint16_t flag )

rtc interrupt flag get

Parameters
flag this parameter can be one of the following values:
  • RTC_TS_FLAG: time second flag.
  • RTC_TA_FLAG: time alarm flag.
  • RTC_OVF_FLAG: overflow flag.
Return values
state of rtc flag

Definition at line 184 of file at32f403_rtc.c.

◆ rtc_wait_config_finish()

void rtc_wait_config_finish ( void )

rtc wait configuration finish

Parameters
none
Return values
none

Definition at line 220 of file at32f403_rtc.c.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_alarm_config(), rtc_config(), rtc_configuration(), rtc_init(), rtc_time_set(), and RTCAlarm_IRQHandler().

◆ rtc_wait_update_finish()

void rtc_wait_update_finish ( void )

rtc wait update finish

Parameters
none
Return values
none

Definition at line 230 of file at32f403_rtc.c.

Referenced by rtc_config(), rtc_configuration(), and rtc_init().


AT32F403 Firmwary Library: RTC_private_functions

Functions
RTC_private_functions
AT32F403_periph_driver » RTC

Functions

void | rtc_counter_set (uint32_t counter_value)
rtc counter set More...
uint32_t | rtc_counter_get (void)
rtc counter get More...
void | rtc_divider_set (uint32_t div_value)
rtc divider set More...
uint32_t | rtc_divider_get (void)
rtc divider get More...
void | rtc_alarm_set (uint32_t alarm_value)
rtc alarm value set More...
void | rtc_interrupt_enable (uint16_t source, confirm_state new_state)
rtc interrupt enable More...
flag_status | rtc_flag_get (uint16_t flag)
rtc flag get More...
flag_status | rtc_interrupt_flag_get (uint16_t flag)
rtc interrupt flag get More...
void | rtc_flag_clear (uint16_t flag)
rtc flag clear More...
void | rtc_wait_config_finish (void)
rtc wait configuration finish More...
void | rtc_wait_update_finish (void)
rtc wait update finish More...

Detailed Description

Function Documentation

◆ rtc_alarm_set()

void rtc_alarm_set ( uint32_t alarm_value )

rtc alarm value set

Parameters
alarm_value (0x0000_0000 ~ 0xFFFF_FFFF)
Return values
none

Definition at line 113 of file at32f403_rtc.c.

Referenced by main(), rtc_alarm_clock_set(), and rtc_alarm_config().

◆ rtc_counter_get()

uint32_t rtc_counter_get ( void )

rtc counter get

Parameters
none
Return values
rtc counter

Definition at line 65 of file at32f403_rtc.c.

Referenced by main(), randnum_test(), rtc_alarm_config(), RTC_IRQHandler(), and rtc_time_get().

◆ rtc_counter_set()

void rtc_counter_set ( uint32_t counter_value )

rtc counter set

Parameters
counter_value (0x0000_0000 ~ 0xFFFF_FFFF)
Return values
none

Definition at line 47 of file at32f403_rtc.c.

Referenced by rtc_time_set().

◆ rtc_divider_get()

uint32_t rtc_divider_get ( void )

rtc divider get

Parameters
none
Return values
rtc counter

Definition at line 98 of file at32f403_rtc.c.

◆ rtc_divider_set()

void rtc_divider_set ( uint32_t div_value )

rtc divider set

Parameters
div_value (0x0000_0000 ~ 0x000F_FFFF)
Return values
none

Definition at line 80 of file at32f403_rtc.c.

Referenced by main(), rtc_config(), rtc_configuration(), and rtc_init().

◆ rtc_flag_clear()

void rtc_flag_clear ( uint16_t flag )

rtc flag clear

Parameters
interrupt_flag this parameter can be any combination of the following values:
  • RTC_TS_FLAG: time second flag.
  • RTC_TA_FLAG: time alarm flag.
  • RTC_OVF_FLAG: overflow flag.
  • RTC_UPDF_FLAG: rtc update finish flag.
Return values
none

Definition at line 210 of file at32f403_rtc.c.

Referenced by alarm_init(), main(), rtc_alarm_config(), RTC_IRQHandler(), and RTCAlarm_IRQHandler().

◆ rtc_flag_get()

flag_status rtc_flag_get ( uint16_t flag )

rtc flag get

Parameters
flag this parameter can be one of the following values:
  • RTC_TS_FLAG: time second flag.
  • RTC_TA_FLAG: time alarm flag.
  • RTC_OVF_FLAG: overflow flag.
  • RTC_UPDF_FLAG: rtc update finish flag.
  • RTC_CFGF_FLAG: rtc configuration finish flag.
Return values
state of rtc flag

Definition at line 159 of file at32f403_rtc.c.

Referenced by main(), rtc_alarm_config(), RTC_IRQHandler(), and RTCAlarm_IRQHandler().

◆ rtc_interrupt_enable()

void rtc_interrupt_enable | ( | uint16_t | source,
 |  | confirm_state | new_state
 | ) |  |

rtc interrupt enable

Parameters
source this parameter can be any combination of the following values:
  • RTC_TS_INT: time second interrupt.
  • RTC_TA_INT: time alarm interrupt.
  • RTC_OVF_INT: overflow interrupt.
new_state (TRUE or FALSE)
Return values
none

Definition at line 136 of file at32f403_rtc.c.

Referenced by alarm_init(), rtc_config(), and rtc_configuration().

◆ rtc_interrupt_flag_get()

flag_status rtc_interrupt_flag_get ( uint16_t flag )

rtc interrupt flag get

Parameters
flag this parameter can be one of the following values:
  • RTC_TS_FLAG: time second flag.
  • RTC_TA_FLAG: time alarm flag.
  • RTC_OVF_FLAG: overflow flag.
Return values
state of rtc flag

Definition at line 184 of file at32f403_rtc.c.

◆ rtc_wait_config_finish()

void rtc_wait_config_finish ( void )

rtc wait configuration finish

Parameters
none
Return values
none

Definition at line 220 of file at32f403_rtc.c.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_alarm_config(), rtc_config(), rtc_configuration(), rtc_init(), rtc_time_set(), and RTCAlarm_IRQHandler().

◆ rtc_wait_update_finish()

void rtc_wait_update_finish ( void )

rtc wait update finish

Parameters
none
Return values
none

Definition at line 230 of file at32f403_rtc.c.

Referenced by rtc_config(), rtc_configuration(), and rtc_init().


AT32F403 Firmwary Library: SDIO

Modules | Macros
SDIO
AT32F403_periph_driver

SDIO driver modules. More...

Modules

SDIO_interrupts_definition
sdio interrupt
SDIO_flags_definition
sdio flag
SDIO_exported_types
SDIO_exported_functions
SDIO_private_functions

Macros

#define SDIO2 ((sdio_type *) SDIO2_BASE)

Detailed Description

SDIO driver modules.

Macro Definition Documentation

◆ SDIO2

#define SDIO2 ((sdio_type *) SDIO2_BASE)

Definition at line 572 of file at32f403_sdio.h.


AT32F403 Firmwary Library: SDIO_interrupts_definition

Macros
SDIO_interrupts_definition
AT32F403_periph_driver » SDIO

sdio interrupt More...

Macros

#define | SDIO_CMDFAIL_INT ((uint32_t)0x00000001)
#define | SDIO_DTFAIL_INT ((uint32_t)0x00000002)
#define | SDIO_CMDTIMEOUT_INT ((uint32_t)0x00000004)
#define | SDIO_DTTIMEOUT_INT ((uint32_t)0x00000008)
#define | SDIO_TXERRU_INT ((uint32_t)0x00000010)
#define | SDIO_RXERRO_INT ((uint32_t)0x00000020)
#define | SDIO_CMDRSPCMPL_INT ((uint32_t)0x00000040)
#define | SDIO_CMDCMPL_INT ((uint32_t)0x00000080)
#define | SDIO_DTCMP_INT ((uint32_t)0x00000100)
#define | SDIO_SBITERR_INT ((uint32_t)0x00000200)
#define | SDIO_DTBLKCMPL_INT ((uint32_t)0x00000400)
#define | SDIO_DOCMD_INT ((uint32_t)0x00000800)
#define | SDIO_DOTX_INT ((uint32_t)0x00001000)
#define | SDIO_DORX_INT ((uint32_t)0x00002000)
#define | SDIO_TXBUFH_INT ((uint32_t)0x00004000)
#define | SDIO_RXBUFH_INT ((uint32_t)0x00008000)
#define | SDIO_TXBUFF_INT ((uint32_t)0x00010000)
#define | SDIO_RXBUFF_INT ((uint32_t)0x00020000)
#define | SDIO_TXBUFE_INT ((uint32_t)0x00040000)
#define | SDIO_RXBUFE_INT ((uint32_t)0x00080000)
#define | SDIO_TXBUF_INT ((uint32_t)0x00100000)
#define | SDIO_RXBUF_INT ((uint32_t)0x00200000)
#define | SDIO_SDIOIF_INT ((uint32_t)0x00400000)

Detailed Description

sdio interrupt

Macro Definition Documentation

◆ SDIO_CMDCMPL_INT

#define SDIO_CMDCMPL_INT ((uint32_t)0x00000080)

command sent interrupt

Definition at line 57 of file at32f403_sdio.h.

◆ SDIO_CMDFAIL_INT

#define SDIO_CMDFAIL_INT ((uint32_t)0x00000001)

command response received check failed interrupt

Definition at line 50 of file at32f403_sdio.h.

◆ SDIO_CMDRSPCMPL_INT

#define SDIO_CMDRSPCMPL_INT ((uint32_t)0x00000040)

command response received interrupt

Definition at line 56 of file at32f403_sdio.h.

◆ SDIO_CMDTIMEOUT_INT

#define SDIO_CMDTIMEOUT_INT ((uint32_t)0x00000004)

command response timerout interrupt

Definition at line 52 of file at32f403_sdio.h.

◆ SDIO_DOCMD_INT

#define SDIO_DOCMD_INT ((uint32_t)0x00000800)

command transfer in progress interrupt

Definition at line 61 of file at32f403_sdio.h.

◆ SDIO_DORX_INT

#define SDIO_DORX_INT ((uint32_t)0x00002000)

data receive in progress interrupt

Definition at line 63 of file at32f403_sdio.h.

◆ SDIO_DOTX_INT

#define SDIO_DOTX_INT ((uint32_t)0x00001000)

data transmit in progress interrupt

Definition at line 62 of file at32f403_sdio.h.

◆ SDIO_DTBLKCMPL_INT

#define SDIO_DTBLKCMPL_INT ((uint32_t)0x00000400)

data block sent/received interrupt

Definition at line 60 of file at32f403_sdio.h.

◆ SDIO_DTCMP_INT

#define SDIO_DTCMP_INT ((uint32_t)0x00000100)

data sent interrupt

Definition at line 58 of file at32f403_sdio.h.

◆ SDIO_DTFAIL_INT

#define SDIO_DTFAIL_INT ((uint32_t)0x00000002)

data block sent/received check failed interrupt

Definition at line 51 of file at32f403_sdio.h.

◆ SDIO_DTTIMEOUT_INT

#define SDIO_DTTIMEOUT_INT ((uint32_t)0x00000008)

data timeout interrupt

Definition at line 53 of file at32f403_sdio.h.

◆ SDIO_RXBUF_INT

#define SDIO_RXBUF_INT ((uint32_t)0x00200000)

data available in receive interrupt

Definition at line 71 of file at32f403_sdio.h.

◆ SDIO_RXBUFE_INT

#define SDIO_RXBUFE_INT ((uint32_t)0x00080000)

receive buf empty interrupt

Definition at line 69 of file at32f403_sdio.h.

◆ SDIO_RXBUFF_INT

#define SDIO_RXBUFF_INT ((uint32_t)0x00020000)

receive buf full interrupt

Definition at line 67 of file at32f403_sdio.h.

◆ SDIO_RXBUFH_INT

#define SDIO_RXBUFH_INT ((uint32_t)0x00008000)

receive buf half full interrupt

Definition at line 65 of file at32f403_sdio.h.

◆ SDIO_RXERRO_INT

#define SDIO_RXERRO_INT ((uint32_t)0x00000020)

received overrun error interrupt

Definition at line 55 of file at32f403_sdio.h.

◆ SDIO_SBITERR_INT

#define SDIO_SBITERR_INT ((uint32_t)0x00000200)

start bit not detected on data bus interrupt

Definition at line 59 of file at32f403_sdio.h.

◆ SDIO_SDIOIF_INT

#define SDIO_SDIOIF_INT ((uint32_t)0x00400000)

sdio interface received interrupt

Definition at line 72 of file at32f403_sdio.h.

◆ SDIO_TXBUF_INT

#define SDIO_TXBUF_INT ((uint32_t)0x00100000)

data available in transmit interrupt

Definition at line 70 of file at32f403_sdio.h.

◆ SDIO_TXBUFE_INT

#define SDIO_TXBUFE_INT ((uint32_t)0x00040000)

transmit buf empty interrupt

Definition at line 68 of file at32f403_sdio.h.

◆ SDIO_TXBUFF_INT

#define SDIO_TXBUFF_INT ((uint32_t)0x00010000)

transmit buf full interrupt

Definition at line 66 of file at32f403_sdio.h.

◆ SDIO_TXBUFH_INT

#define SDIO_TXBUFH_INT ((uint32_t)0x00004000)

transmit buf half empty interrupt

Definition at line 64 of file at32f403_sdio.h.

◆ SDIO_TXERRU_INT

#define SDIO_TXERRU_INT ((uint32_t)0x00000010)

transmit underrun error interrupt

Definition at line 54 of file at32f403_sdio.h.


AT32F403 Firmwary Library: SDIO_flags_definition

Macros
SDIO_flags_definition
AT32F403_periph_driver » SDIO

sdio flag More...

Macros

#define | SDIO_CMDFAIL_FLAG ((uint32_t)0x00000001)
#define | SDIO_DTFAIL_FLAG ((uint32_t)0x00000002)
#define | SDIO_CMDTIMEOUT_FLAG ((uint32_t)0x00000004)
#define | SDIO_DTTIMEOUT_FLAG ((uint32_t)0x00000008)
#define | SDIO_TXERRU_FLAG ((uint32_t)0x00000010)
#define | SDIO_RXERRO_FLAG ((uint32_t)0x00000020)
#define | SDIO_CMDRSPCMPL_FLAG ((uint32_t)0x00000040)
#define | SDIO_CMDCMPL_FLAG ((uint32_t)0x00000080)
#define | SDIO_DTCMPL_FLAG ((uint32_t)0x00000100)
#define | SDIO_SBITERR_FLAG ((uint32_t)0x00000200)
#define | SDIO_DTBLKCMPL_FLAG ((uint32_t)0x00000400)
#define | SDIO_DOCMD_FLAG ((uint32_t)0x00000800)
#define | SDIO_DOTX_FLAG ((uint32_t)0x00001000)
#define | SDIO_DORX_FLAG ((uint32_t)0x00002000)
#define | SDIO_TXBUFH_FLAG ((uint32_t)0x00004000)
#define | SDIO_RXBUFH_FLAG ((uint32_t)0x00008000)
#define | SDIO_TXBUFF_FLAG ((uint32_t)0x00010000)
#define | SDIO_RXBUFF_FLAG ((uint32_t)0x00020000)
#define | SDIO_TXBUFE_FLAG ((uint32_t)0x00040000)
#define | SDIO_RXBUFE_FLAG ((uint32_t)0x00080000)
#define | SDIO_TXBUF_FLAG ((uint32_t)0x00100000)
#define | SDIO_RXBUF_FLAG ((uint32_t)0x00200000)
#define | SDIO_SDIOIF_FLAG ((uint32_t)0x00400000)

Detailed Description

sdio flag

Macro Definition Documentation

◆ SDIO_CMDCMPL_FLAG

#define SDIO_CMDCMPL_FLAG ((uint32_t)0x00000080)

command sent flag

Definition at line 90 of file at32f403_sdio.h.

◆ SDIO_CMDFAIL_FLAG

#define SDIO_CMDFAIL_FLAG ((uint32_t)0x00000001)

command response received check failed flag

Definition at line 83 of file at32f403_sdio.h.

◆ SDIO_CMDRSPCMPL_FLAG

#define SDIO_CMDRSPCMPL_FLAG ((uint32_t)0x00000040)

command response received flag

Definition at line 89 of file at32f403_sdio.h.

◆ SDIO_CMDTIMEOUT_FLAG

#define SDIO_CMDTIMEOUT_FLAG ((uint32_t)0x00000004)

command response timerout flag

Definition at line 85 of file at32f403_sdio.h.

◆ SDIO_DOCMD_FLAG

#define SDIO_DOCMD_FLAG ((uint32_t)0x00000800)

command transfer in progress flag

Definition at line 94 of file at32f403_sdio.h.

◆ SDIO_DORX_FLAG

#define SDIO_DORX_FLAG ((uint32_t)0x00002000)

data receive in progress flag

Definition at line 96 of file at32f403_sdio.h.

◆ SDIO_DOTX_FLAG

#define SDIO_DOTX_FLAG ((uint32_t)0x00001000)

data transmit in progress flag

Definition at line 95 of file at32f403_sdio.h.

◆ SDIO_DTBLKCMPL_FLAG

#define SDIO_DTBLKCMPL_FLAG ((uint32_t)0x00000400)

data block sent/received flag

Definition at line 93 of file at32f403_sdio.h.

◆ SDIO_DTCMPL_FLAG

#define SDIO_DTCMPL_FLAG ((uint32_t)0x00000100)

data sent flag

Definition at line 91 of file at32f403_sdio.h.

◆ SDIO_DTFAIL_FLAG

#define SDIO_DTFAIL_FLAG ((uint32_t)0x00000002)

data block sent/received check failed flag

Definition at line 84 of file at32f403_sdio.h.

◆ SDIO_DTTIMEOUT_FLAG

#define SDIO_DTTIMEOUT_FLAG ((uint32_t)0x00000008)

data timeout flag

Definition at line 86 of file at32f403_sdio.h.

◆ SDIO_RXBUF_FLAG

#define SDIO_RXBUF_FLAG ((uint32_t)0x00200000)

data available in receive flag

Definition at line 104 of file at32f403_sdio.h.

◆ SDIO_RXBUFE_FLAG

#define SDIO_RXBUFE_FLAG ((uint32_t)0x00080000)

receive buf empty flag

Definition at line 102 of file at32f403_sdio.h.

◆ SDIO_RXBUFF_FLAG

#define SDIO_RXBUFF_FLAG ((uint32_t)0x00020000)

receive buf full flag

Definition at line 100 of file at32f403_sdio.h.

◆ SDIO_RXBUFH_FLAG

#define SDIO_RXBUFH_FLAG ((uint32_t)0x00008000)

receive buf half full flag

Definition at line 98 of file at32f403_sdio.h.

◆ SDIO_RXERRO_FLAG

#define SDIO_RXERRO_FLAG ((uint32_t)0x00000020)

received overrun error flag

Definition at line 88 of file at32f403_sdio.h.

◆ SDIO_SBITERR_FLAG

#define SDIO_SBITERR_FLAG ((uint32_t)0x00000200)

start bit not detected on data bus flag

Definition at line 92 of file at32f403_sdio.h.

◆ SDIO_SDIOIF_FLAG

#define SDIO_SDIOIF_FLAG ((uint32_t)0x00400000)

sdio interface received flag

Definition at line 105 of file at32f403_sdio.h.

◆ SDIO_TXBUF_FLAG

#define SDIO_TXBUF_FLAG ((uint32_t)0x00100000)

data available in transmit flag

Definition at line 103 of file at32f403_sdio.h.

◆ SDIO_TXBUFE_FLAG

#define SDIO_TXBUFE_FLAG ((uint32_t)0x00040000)

transmit buf empty flag

Definition at line 101 of file at32f403_sdio.h.

◆ SDIO_TXBUFF_FLAG

#define SDIO_TXBUFF_FLAG ((uint32_t)0x00010000)

transmit buf full flag

Definition at line 99 of file at32f403_sdio.h.

◆ SDIO_TXBUFH_FLAG

#define SDIO_TXBUFH_FLAG ((uint32_t)0x00004000)

transmit buf half empty flag

Definition at line 97 of file at32f403_sdio.h.

◆ SDIO_TXERRU_FLAG

#define SDIO_TXERRU_FLAG ((uint32_t)0x00000010)

transmit underrun error flag

Definition at line 87 of file at32f403_sdio.h.


AT32F403 Firmwary Library: SDIO_exported_types

Data Structures | Enumerations
SDIO_exported_types
AT32F403_periph_driver » SDIO

Data Structures

struct | sdio_command_struct_type
sdio command structure More...
struct | sdio_data_struct_type
sdio data structure More...
struct | sdio_type
type define sdio register all More...

Enumerations

enum | sdio_power_state_type { SDIO_POWER_OFF = 0x00 , SDIO_POWER_ON = 0x03 }
sdio power state More...
enum | sdio_edge_phase_type { SDIO_CLOCK_EDGE_RISING = 0x00 , SDIO_CLOCK_EDGE_FALLING = 0x01 }
sdio edge phase More...
enum | sdio_bus_width_type { SDIO_BUS_WIDTH_D1 = 0x00 , SDIO_BUS_WIDTH_D4 = 0x01 , SDIO_BUS_WIDTH_D8 = 0x02 }
sdio bus width More...
enum | sdio_reponse_type { SDIO_RESPONSE_NO = 0x00 , SDIO_RESPONSE_SHORT = 0x01 , SDIO_RESPONSE_LONG = 0x03 }
sdio response type More...
enum | sdio_wait_type { SDIO_WAIT_FOR_NO = 0x00 , SDIO_WAIT_FOR_INT = 0x01 , SDIO_WAIT_FOR_PEND = 0x02 }
sdio wait type More...
enum | sdio_rsp_index_type { SDIO_RSP1_INDEX = 0x00 , SDIO_RSP2_INDEX = 0x01 , SDIO_RSP3_INDEX = 0x02 , SDIO_RSP4_INDEX = 0x03 }
sdio response register index More...
enum sdio_block_size_type {
SDIO_DATA_BLOCK_SIZE_1B = 0x00 , SDIO_DATA_BLOCK_SIZE_2B = 0x01 , SDIO_DATA_BLOCK_SIZE_4B = 0x02 , SDIO_DATA_BLOCK_SIZE_8B = 0x03 ,
SDIO_DATA_BLOCK_SIZE_16B = 0x04 , SDIO_DATA_BLOCK_SIZE_32B = 0x05 , SDIO_DATA_BLOCK_SIZE_64B = 0x06 , SDIO_DATA_BLOCK_SIZE_128B = 0x07 ,
SDIO_DATA_BLOCK_SIZE_256B = 0x08 , SDIO_DATA_BLOCK_SIZE_512B = 0x09 , SDIO_DATA_BLOCK_SIZE_1024B = 0x0A , SDIO_DATA_BLOCK_SIZE_2048B = 0x0B ,
SDIO_DATA_BLOCK_SIZE_4096B = 0x0C , SDIO_DATA_BLOCK_SIZE_8192B = 0x0D , SDIO_DATA_BLOCK_SIZE_16384B = 0x0E
}
sdio data block size More...
enum | sdio_transfer_mode_type { SDIO_DATA_BLOCK_TRANSFER = 0x00 , SDIO_DATA_STREAM_TRANSFER = 0x01 }
sdio data transfer mode More...
enum | sdio_transfer_direction_type { SDIO_DATA_TRANSFER_TO_CARD = 0x00 , SDIO_DATA_TRANSFER_TO_CONTROLLER = 0x01 }
sdio data transfer direction More...
enum | sdio_read_wait_mode_type { SDIO_READ_WAIT_CONTROLLED_BY_D2 = 0x00 , SDIO_READ_WAIT_CONTROLLED_BY_CK = 0x01 }
sdio read wait mode More...

Detailed Description

Enumeration Type Documentation

◆ sdio_block_size_type

enum sdio_block_size_type

sdio data block size

Enumerator
SDIO_DATA_BLOCK_SIZE_1B | data block size 1 byte
SDIO_DATA_BLOCK_SIZE_2B | data block size 2 bytes
SDIO_DATA_BLOCK_SIZE_4B | data block size 4 bytes
SDIO_DATA_BLOCK_SIZE_8B | data block size 8 bytes
SDIO_DATA_BLOCK_SIZE_16B | data block size 16 bytes
SDIO_DATA_BLOCK_SIZE_32B | data block size 32 bytes
SDIO_DATA_BLOCK_SIZE_64B | data block size 64 bytes
SDIO_DATA_BLOCK_SIZE_128B | data block size 128 bytes
SDIO_DATA_BLOCK_SIZE_256B | data block size 256 bytes
SDIO_DATA_BLOCK_SIZE_512B | data block size 512 bytes
SDIO_DATA_BLOCK_SIZE_1024B | data block size 1024 bytes
SDIO_DATA_BLOCK_SIZE_2048B | data block size 2048 bytes
SDIO_DATA_BLOCK_SIZE_4096B | data block size 4096 bytes
SDIO_DATA_BLOCK_SIZE_8192B | data block size 8192 bytes
SDIO_DATA_BLOCK_SIZE_16384B | data block size 16384 bytes

Definition at line 177 of file at32f403_sdio.h.

◆ sdio_bus_width_type

enum sdio_bus_width_type

sdio bus width

Enumerator
SDIO_BUS_WIDTH_D1 | sdio wide bus select 1-bit
SDIO_BUS_WIDTH_D4 | sdio wide bus select 4-bit
SDIO_BUS_WIDTH_D8 | sdio wide bus select 8-bit

Definition at line 136 of file at32f403_sdio.h.

◆ sdio_edge_phase_type

enum sdio_edge_phase_type

sdio edge phase

Enumerator
SDIO_CLOCK_EDGE_RISING | sdio bus clock generated on the rising edge of the master clock
SDIO_CLOCK_EDGE_FALLING | sdio bus clock generated on the falling edge of the master clock

Definition at line 127 of file at32f403_sdio.h.

◆ sdio_power_state_type

enum sdio_power_state_type

sdio power state

Enumerator
SDIO_POWER_OFF | power-off, clock to card is stopped
SDIO_POWER_ON | power-on, the card is clocked

Definition at line 118 of file at32f403_sdio.h.

◆ sdio_read_wait_mode_type

enum sdio_read_wait_mode_type

sdio read wait mode

Enumerator
SDIO_READ_WAIT_CONTROLLED_BY_D2 | the sdio read wait on data2 line
SDIO_READ_WAIT_CONTROLLED_BY_CK | the sdio read wait on clock line

Definition at line 217 of file at32f403_sdio.h.

◆ sdio_reponse_type

enum sdio_reponse_type

sdio response type

Enumerator
SDIO_RESPONSE_NO | no response
SDIO_RESPONSE_SHORT | short response
SDIO_RESPONSE_LONG | long response

Definition at line 146 of file at32f403_sdio.h.

◆ sdio_rsp_index_type

enum sdio_rsp_index_type

sdio response register index

Enumerator
SDIO_RSP1_INDEX | response index 1, corresponding to sdio_rsp register 1
SDIO_RSP2_INDEX | response index 2, corresponding to sdio_rsp register 2
SDIO_RSP3_INDEX | response index 3, corresponding to sdio_rsp register 3
SDIO_RSP4_INDEX | response index 4, corresponding to sdio_rsp register 4

Definition at line 166 of file at32f403_sdio.h.

◆ sdio_transfer_direction_type

enum sdio_transfer_direction_type

sdio data transfer direction

Enumerator
SDIO_DATA_TRANSFER_TO_CARD | the sdio controller write
SDIO_DATA_TRANSFER_TO_CONTROLLER | the sdio controller read

Definition at line 208 of file at32f403_sdio.h.

◆ sdio_transfer_mode_type

enum sdio_transfer_mode_type

sdio data transfer mode

Enumerator
SDIO_DATA_BLOCK_TRANSFER | the sdio block transfer mode
SDIO_DATA_STREAM_TRANSFER | the sdio stream transfer mode

Definition at line 199 of file at32f403_sdio.h.

◆ sdio_wait_type

enum sdio_wait_type

sdio wait type

Enumerator
SDIO_WAIT_FOR_NO | no wait
SDIO_WAIT_FOR_INT | wait interrupt request
SDIO_WAIT_FOR_PEND | wait end of transfer

Definition at line 156 of file at32f403_sdio.h.


AT32F403 Firmwary Library: sdio_command_struct_type Struct Reference

Data Fields
sdio_command_struct_type Struct Reference
AT32F403_periph_driver » SDIO » SDIO_exported_types

sdio command structure More...

#include <at32f403_sdio.h>

Data Fields

uint32_t | argument
uint8_t | cmd_index
sdio_reponse_type rsp_type
sdio_wait_type wait_type

Detailed Description

sdio command structure

Definition at line 226 of file at32f403_sdio.h.

Field Documentation

◆ argument

uint32_t sdio_command_struct_type::argument

the sdio command argument is sent to a card as part of command message

Definition at line 228 of file at32f403_sdio.h.

Referenced by check_card_programming(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), sdio_command_config(), and sdio_command_data_send().

◆ cmd_index

uint8_t sdio_command_struct_type::cmd_index

the sdio command index

Definition at line 229 of file at32f403_sdio.h.

Referenced by check_card_programming(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), sdio_command_config(), and sdio_command_data_send().

◆ rsp_type

sdio_reponse_type sdio_command_struct_type::rsp_type

the sdio response type

Definition at line 230 of file at32f403_sdio.h.

Referenced by check_card_programming(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), sdio_command_config(), and sdio_command_data_send().

◆ wait_type

sdio_wait_type sdio_command_struct_type::wait_type

the sdio wait for interrupt request is enabled or disable

Definition at line 231 of file at32f403_sdio.h.

Referenced by check_card_programming(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), sdio_command_config(), and sdio_command_data_send().

The documentation for this struct was generated from the following file:
  • at32f403_sdio.h


AT32F403 Firmwary Library: sdio_data_struct_type Struct Reference

Data Fields
sdio_data_struct_type Struct Reference
AT32F403_periph_driver » SDIO » SDIO_exported_types

sdio data structure More...

#include <at32f403_sdio.h>

Data Fields

uint32_t | timeout
uint32_t | data_length
sdio_block_size_type block_size
sdio_transfer_mode_type transfer_mode
sdio_transfer_direction_type transfer_direction

Detailed Description

sdio data structure

Definition at line 237 of file at32f403_sdio.h.

Field Documentation

◆ block_size

sdio_block_size_type sdio_data_struct_type::block_size

the sdio data block size of block transfer mode

Definition at line 241 of file at32f403_sdio.h.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_switch(), and sdio_data_config().

◆ data_length

uint32_t sdio_data_struct_type::data_length

the sdio data length

Definition at line 240 of file at32f403_sdio.h.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_switch(), sdio_command_data_send(), and sdio_data_config().

◆ timeout

uint32_t sdio_data_struct_type::timeout

the sdio data timeout period in car bus clock periods

Definition at line 239 of file at32f403_sdio.h.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_switch(), and sdio_data_config().

◆ transfer_direction

sdio_transfer_direction_type sdio_data_struct_type::transfer_direction

the sdio data transfer direction

Definition at line 243 of file at32f403_sdio.h.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_switch(), sdio_command_data_send(), and sdio_data_config().

◆ transfer_mode

sdio_transfer_mode_type sdio_data_struct_type::transfer_mode

the sdio transfer mode, block or stream

Definition at line 242 of file at32f403_sdio.h.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_switch(), and sdio_data_config().

The documentation for this struct was generated from the following file:
  • at32f403_sdio.h


AT32F403 Firmwary Library: sdio_type Struct Reference

Data Fields
sdio_type Struct Reference
AT32F403_periph_driver » SDIO » SDIO_exported_types

type define sdio register all More...

#include <at32f403_sdio.h>

Data Fields

union {
__IO uint32_t pwrctrl
struct {
__IO uint32_t ps: 2
__IO uint32_t reserved1: 30
} pwrctrl_bit
};
sdio pwrctrl register, offset:0x00 More...
union {
__IO uint32_t clkctrl
struct {
__IO uint32_t clkdiv_l: 8
__IO uint32_t clkoen: 1
__IO uint32_t pwrsven: 1
__IO uint32_t bypsen: 1
__IO uint32_t busws: 2
__IO uint32_t clkegs: 1
__IO uint32_t hfcen: 1
__IO uint32_t clkdiv_h: 2
__IO uint32_t reserved1: 15
} clkctrl_bit
};
sdio clkctrl register, offset:0x04 More...
union {
__IO uint32_t argu
struct {
__IO uint32_t argu: 32
} argu_bit
};
sdio argu register, offset:0x08 More...
union {
__IO uint32_t cmdctrl
struct {
__IO uint32_t cmdidx: 6
__IO uint32_t rspwt: 2
__IO uint32_t intwt: 1
__IO uint32_t pndwt: 1
__IO uint32_t ccsmen: 1
__IO uint32_t iosusp: 1
__IO uint32_t reserved1: 20
} cmdctrl_bit
};
sdio cmdctrl register, offset:0x0C More...
union {
__IO uint32_t rspcmd
struct {
__IO uint32_t rspcmd: 6
__IO uint32_t reserved1: 26
} rspcmd_bit
};
sdio rspcmd register, offset:0x10 More...
union {
__IO uint32_t rsp1
struct {
__IO uint32_t cardsts1: 32
} rsp1_bit
};
sdio rsp1 register, offset:0x14 More...
union {
__IO uint32_t rsp2
struct {
__IO uint32_t cardsts2: 32
} rsp2_bit
};
sdio rsp2 register, offset:0x18 More...
union {
__IO uint32_t rsp3
struct {
__IO uint32_t cardsts3: 32
} rsp3_bit
};
sdio rsp3 register, offset:0x1C More...
union {
__IO uint32_t rsp4
struct {
__IO uint32_t cardsts4: 32
} rsp4_bit
};
sdio rsp4 register, offset:0x20 More...
union {
__IO uint32_t dttmr
struct {
__IO uint32_t timeout: 32
} dttmr_bit
};
sdio dttmr register, offset:0x24 More...
union {
__IO uint32_t dtlen
struct {
__IO uint32_t dtlen: 25
__IO uint32_t reserved1: 7
} dtlen_bit
};
sdio dtlen register, offset:0x28 More...
union {
__IO uint32_t dtctrl
struct {
__IO uint32_t tfren: 1
__IO uint32_t tfrdir: 1
__IO uint32_t tfrmode: 1
__IO uint32_t dmaen: 1
__IO uint32_t blksize: 4
__IO uint32_t rdwtstart: 1
__IO uint32_t rdwtstop: 1
__IO uint32_t rdwtmode: 1
__IO uint32_t ioen: 1
__IO uint32_t reserved1: 20
} dtctrl_bit
};
sdio dtctrl register, offset:0x2C More...
union {
__IO uint32_t dtcnt
struct {
__IO uint32_t cnt: 25
__IO uint32_t reserved1: 7
} dtcnt_bit
};
sdio dtcnt register, offset:0x30 More...
union {
__IO uint32_t sts
struct {
__IO uint32_t cmdfail: 1
__IO uint32_t dtfail: 1
__IO uint32_t cmdtimeout: 1
__IO uint32_t dttimeout: 1
__IO uint32_t txerru: 1
__IO uint32_t rxerro: 1
__IO uint32_t cmdrspcmpl: 1
__IO uint32_t cmdcmpl: 1
__IO uint32_t dtcmpl: 1
__IO uint32_t sbiterr: 1
__IO uint32_t dtblkcmpl: 1
__IO uint32_t docmd: 1
__IO uint32_t dotx: 1
__IO uint32_t dorx: 1
__IO uint32_t txbufh: 1
__IO uint32_t rxbufh: 1
__IO uint32_t txbuff: 1
__IO uint32_t rxbuff: 1
__IO uint32_t txbufe: 1
__IO uint32_t rxbufe: 1
__IO uint32_t txbuf: 1
__IO uint32_t rxbuf: 1
__IO uint32_t ioif: 1
__IO uint32_t reserved1: 9
} sts_bit
};
sdio sts register, offset:0x34 More...
union {
__IO uint32_t intclr
struct {
__IO uint32_t cmdfail: 1
__IO uint32_t dtfail: 1
__IO uint32_t cmdtimeout: 1
__IO uint32_t dttimeout: 1
__IO uint32_t txerru: 1
__IO uint32_t rxerro: 1
__IO uint32_t cmdrspcmpl: 1
__IO uint32_t cmdcmpl: 1
__IO uint32_t dtcmpl: 1
__IO uint32_t sbiterr: 1
__IO uint32_t dtblkcmpl: 1
__IO uint32_t reserved1: 11
__IO uint32_t ioif: 1
__IO uint32_t reserved2: 9
} intclr_bit
};
sdio intclr register, offset:0x38 More...
union {
__IO uint32_t inten
struct {
__IO uint32_t cmdfailien: 1
__IO uint32_t dtfailien: 1
__IO uint32_t cmdtimeoutien: 1
__IO uint32_t dttimeoutien: 1
__IO uint32_t txerruien: 1
__IO uint32_t rxerroien: 1
__IO uint32_t cmdrspcmplien: 1
__IO uint32_t cmdcmplien: 1
__IO uint32_t dtcmplien: 1
__IO uint32_t sbiterrien: 1
__IO uint32_t dtblkcmplien: 1
__IO uint32_t docmdien: 1
__IO uint32_t dotxien: 1
__IO uint32_t dorxien: 1
__IO uint32_t txbufhien: 1
__IO uint32_t rxbufhien: 1
__IO uint32_t txbuffien: 1
__IO uint32_t rxbuffien: 1
__IO uint32_t txbufeien: 1
__IO uint32_t rxbufeien: 1
__IO uint32_t txbufien: 1
__IO uint32_t rxbufien: 1
__IO uint32_t ioifien: 1
__IO uint32_t reserved1: 9
} inten_bit
};
sdio inten register, offset:0x3C More...
union {
__IO uint32_t bufcnt
struct {
__IO uint32_t cnt: 24
__IO uint32_t reserved1: 8
} bufcnt_bit
};
sdio bufcnt register, offset:0x48 More...
union {
__IO uint32_t buf
struct {
__IO uint32_t dt: 32
} buf_bit
};
sdio buf register, offset:0x80 More...

Detailed Description

type define sdio register all

Definition at line 249 of file at32f403_sdio.h.

Field Documentation

◆

union { ... } sdio_type::@547

sdio pwrctrl register, offset:0x00

◆

union { ... } sdio_type::@549

sdio clkctrl register, offset:0x04

◆

union { ... } sdio_type::@551

sdio argu register, offset:0x08

◆

union { ... } sdio_type::@553

sdio cmdctrl register, offset:0x0C

◆

union { ... } sdio_type::@555

sdio rspcmd register, offset:0x10

◆

union { ... } sdio_type::@557

sdio rsp1 register, offset:0x14

◆

union { ... } sdio_type::@559

sdio rsp2 register, offset:0x18

◆

union { ... } sdio_type::@561

sdio rsp3 register, offset:0x1C

◆

union { ... } sdio_type::@563

sdio rsp4 register, offset:0x20

◆

union { ... } sdio_type::@565

sdio dttmr register, offset:0x24

◆

union { ... } sdio_type::@567

sdio dtlen register, offset:0x28

◆

union { ... } sdio_type::@569

sdio dtctrl register, offset:0x2C

◆

union { ... } sdio_type::@571

sdio dtcnt register, offset:0x30

◆

union { ... } sdio_type::@573

sdio sts register, offset:0x34

◆

union { ... } sdio_type::@575

sdio intclr register, offset:0x38

◆

union { ... } sdio_type::@577

sdio inten register, offset:0x3C

◆

union { ... } sdio_type::@579

sdio bufcnt register, offset:0x48

◆

union { ... } sdio_type::@581

sdio buf register, offset:0x80

◆ argu

__IO uint32_t sdio_type::argu

Definition at line 289 of file at32f403_sdio.h.

Referenced by sdio_command_config(), and sdio_reset().

◆

struct { ... } sdio_type::argu_bit

◆ blksize

__IO uint32_t sdio_type::blksize

Definition at line 412 of file at32f403_sdio.h.

Referenced by sdio_data_config().

◆ buf

__IO uint32_t sdio_type::buf

Definition at line 557 of file at32f403_sdio.h.

Referenced by sdio_data_read(), and sdio_data_write().

◆

struct { ... } sdio_type::buf_bit

◆ bufcnt

__IO uint32_t sdio_type::bufcnt

Definition at line 539 of file at32f403_sdio.h.

Referenced by sdio_buffer_counter_get().

◆

struct { ... } sdio_type::bufcnt_bit

◆ busws

__IO uint32_t sdio_type::busws

Definition at line 276 of file at32f403_sdio.h.

Referenced by sdio_bus_width_config().

◆ bypsen

__IO uint32_t sdio_type::bypsen

Definition at line 275 of file at32f403_sdio.h.

Referenced by sdio_clock_bypass().

◆ cardsts1

__IO uint32_t sdio_type::cardsts1

Definition at line 335 of file at32f403_sdio.h.

◆ cardsts2

__IO uint32_t sdio_type::cardsts2

Definition at line 347 of file at32f403_sdio.h.

◆ cardsts3

__IO uint32_t sdio_type::cardsts3

Definition at line 359 of file at32f403_sdio.h.

◆ cardsts4

__IO uint32_t sdio_type::cardsts4

Definition at line 371 of file at32f403_sdio.h.

◆ ccsmen

__IO uint32_t sdio_type::ccsmen

Definition at line 308 of file at32f403_sdio.h.

Referenced by sdio_command_config(), and sdio_command_state_machine_enable().

◆ clkctrl

__IO uint32_t sdio_type::clkctrl

Definition at line 269 of file at32f403_sdio.h.

Referenced by sdio_reset().

◆

struct { ... } sdio_type::clkctrl_bit

Referenced by sdio_bus_width_config(), sdio_clock_bypass(), sdio_clock_config(), sdio_clock_enable(), sdio_flow_control_enable(), and sdio_power_saving_mode_enable().

◆ clkdiv_h

__IO uint32_t sdio_type::clkdiv_h

Definition at line 279 of file at32f403_sdio.h.

Referenced by sdio_clock_config().

◆ clkdiv_l

__IO uint32_t sdio_type::clkdiv_l

Definition at line 272 of file at32f403_sdio.h.

Referenced by sdio_clock_config().

◆ clkegs

__IO uint32_t sdio_type::clkegs

Definition at line 277 of file at32f403_sdio.h.

Referenced by sdio_clock_config().

◆ clkoen

__IO uint32_t sdio_type::clkoen

Definition at line 273 of file at32f403_sdio.h.

Referenced by sdio_clock_enable().

◆ cmdcmpl

__IO uint32_t sdio_type::cmdcmpl

Definition at line 449 of file at32f403_sdio.h.

◆ cmdcmplien

__IO uint32_t sdio_type::cmdcmplien

Definition at line 509 of file at32f403_sdio.h.

◆ cmdctrl

__IO uint32_t sdio_type::cmdctrl

Definition at line 301 of file at32f403_sdio.h.

Referenced by sdio_reset().

◆

struct { ... } sdio_type::cmdctrl_bit

Referenced by sdio_command_config(), sdio_command_state_machine_enable(), and sdio_io_suspend_command_set().

◆ cmdfail

__IO uint32_t sdio_type::cmdfail

Definition at line 442 of file at32f403_sdio.h.

◆ cmdfailien

__IO uint32_t sdio_type::cmdfailien

Definition at line 502 of file at32f403_sdio.h.

◆ cmdidx

__IO uint32_t sdio_type::cmdidx

Definition at line 304 of file at32f403_sdio.h.

Referenced by sdio_command_config().

◆ cmdrspcmpl

__IO uint32_t sdio_type::cmdrspcmpl

Definition at line 448 of file at32f403_sdio.h.

◆ cmdrspcmplien

__IO uint32_t sdio_type::cmdrspcmplien

Definition at line 508 of file at32f403_sdio.h.

◆ cmdtimeout

__IO uint32_t sdio_type::cmdtimeout

Definition at line 444 of file at32f403_sdio.h.

◆ cmdtimeoutien

__IO uint32_t sdio_type::cmdtimeoutien

Definition at line 504 of file at32f403_sdio.h.

◆ cnt

__IO uint32_t sdio_type::cnt

Definition at line 429 of file at32f403_sdio.h.

◆ dmaen

__IO uint32_t sdio_type::dmaen

Definition at line 411 of file at32f403_sdio.h.

Referenced by sdio_dma_enable().

◆ docmd

__IO uint32_t sdio_type::docmd

Definition at line 453 of file at32f403_sdio.h.

◆ docmdien

__IO uint32_t sdio_type::docmdien

Definition at line 513 of file at32f403_sdio.h.

◆ dorx

__IO uint32_t sdio_type::dorx

Definition at line 455 of file at32f403_sdio.h.

◆ dorxien

__IO uint32_t sdio_type::dorxien

Definition at line 515 of file at32f403_sdio.h.

◆ dotx

__IO uint32_t sdio_type::dotx

Definition at line 454 of file at32f403_sdio.h.

◆ dotxien

__IO uint32_t sdio_type::dotxien

Definition at line 514 of file at32f403_sdio.h.

◆ dt

__IO uint32_t sdio_type::dt

Definition at line 560 of file at32f403_sdio.h.

◆ dtblkcmpl

__IO uint32_t sdio_type::dtblkcmpl

Definition at line 452 of file at32f403_sdio.h.

◆ dtblkcmplien

__IO uint32_t sdio_type::dtblkcmplien

Definition at line 512 of file at32f403_sdio.h.

◆ dtcmpl

__IO uint32_t sdio_type::dtcmpl

Definition at line 450 of file at32f403_sdio.h.

◆ dtcmplien

__IO uint32_t sdio_type::dtcmplien

Definition at line 510 of file at32f403_sdio.h.

◆ dtcnt

__IO uint32_t sdio_type::dtcnt

Definition at line 426 of file at32f403_sdio.h.

Referenced by sdio_data_counter_get().

◆

struct { ... } sdio_type::dtcnt_bit

◆ dtctrl

__IO uint32_t sdio_type::dtctrl

Definition at line 405 of file at32f403_sdio.h.

Referenced by sdio_reset().

◆

struct { ... } sdio_type::dtctrl_bit

Referenced by sdio_data_config(), sdio_data_state_machine_enable(), sdio_dma_enable(), sdio_io_function_enable(), sdio_read_wait_mode_set(), sdio_read_wait_start(), and sdio_read_wait_stop().

◆ dtfail

__IO uint32_t sdio_type::dtfail

Definition at line 443 of file at32f403_sdio.h.

◆ dtfailien

__IO uint32_t sdio_type::dtfailien

Definition at line 503 of file at32f403_sdio.h.

◆ dtlen

__IO uint32_t sdio_type::dtlen

Definition at line 392 of file at32f403_sdio.h.

Referenced by sdio_data_config(), and sdio_reset().

◆

struct { ... } sdio_type::dtlen_bit

Referenced by sdio_data_config().

◆ dttimeout

__IO uint32_t sdio_type::dttimeout

Definition at line 445 of file at32f403_sdio.h.

◆ dttimeoutien

__IO uint32_t sdio_type::dttimeoutien

Definition at line 505 of file at32f403_sdio.h.

◆ dttmr

__IO uint32_t sdio_type::dttmr

Definition at line 380 of file at32f403_sdio.h.

Referenced by sdio_reset().

◆

struct { ... } sdio_type::dttmr_bit

Referenced by sdio_data_config().

◆ hfcen

__IO uint32_t sdio_type::hfcen

Definition at line 278 of file at32f403_sdio.h.

Referenced by sdio_flow_control_enable().

◆ intclr

__IO uint32_t sdio_type::intclr

Definition at line 474 of file at32f403_sdio.h.

Referenced by sdio_flag_clear(), and sdio_reset().

◆

struct { ... } sdio_type::intclr_bit

◆ inten

__IO uint32_t sdio_type::inten

Definition at line 499 of file at32f403_sdio.h.

Referenced by sdio_interrupt_enable(), sdio_interrupt_flag_get(), and sdio_reset().

◆

struct { ... } sdio_type::inten_bit

◆ intwt

__IO uint32_t sdio_type::intwt

Definition at line 306 of file at32f403_sdio.h.

Referenced by sdio_command_config().

◆ ioen

__IO uint32_t sdio_type::ioen

Definition at line 416 of file at32f403_sdio.h.

Referenced by sdio_io_function_enable().

◆ ioif

__IO uint32_t sdio_type::ioif

Definition at line 464 of file at32f403_sdio.h.

◆ ioifien

__IO uint32_t sdio_type::ioifien

Definition at line 524 of file at32f403_sdio.h.

◆ iosusp

__IO uint32_t sdio_type::iosusp

Definition at line 309 of file at32f403_sdio.h.

Referenced by sdio_io_suspend_command_set().

◆ pndwt

__IO uint32_t sdio_type::pndwt

Definition at line 307 of file at32f403_sdio.h.

Referenced by sdio_command_config().

◆ ps

__IO uint32_t sdio_type::ps

Definition at line 259 of file at32f403_sdio.h.

Referenced by sdio_power_set(), and sdio_power_status_get().

◆ pwrctrl

__IO uint32_t sdio_type::pwrctrl

Definition at line 256 of file at32f403_sdio.h.

Referenced by sdio_reset().

◆

struct { ... } sdio_type::pwrctrl_bit

Referenced by sdio_power_set(), and sdio_power_status_get().

◆ pwrsven

__IO uint32_t sdio_type::pwrsven

Definition at line 274 of file at32f403_sdio.h.

Referenced by sdio_power_saving_mode_enable().

◆ rdwtmode

__IO uint32_t sdio_type::rdwtmode

Definition at line 415 of file at32f403_sdio.h.

Referenced by sdio_read_wait_mode_set().

◆ rdwtstart

__IO uint32_t sdio_type::rdwtstart

Definition at line 413 of file at32f403_sdio.h.

Referenced by sdio_read_wait_start().

◆ rdwtstop

__IO uint32_t sdio_type::rdwtstop

Definition at line 414 of file at32f403_sdio.h.

Referenced by sdio_read_wait_stop().

◆ reserved1

__IO uint32_t sdio_type::reserved1

sdio reserved1 register, offset:0x40~0x44

Definition at line 260 of file at32f403_sdio.h.

◆ reserved2

__IO uint32_t sdio_type::reserved2

sdio reserved2 register, offset:0x4C~0x7C

Definition at line 490 of file at32f403_sdio.h.

◆ rsp1

__IO uint32_t sdio_type::rsp1

Definition at line 332 of file at32f403_sdio.h.

Referenced by sdio_response_get().

◆

struct { ... } sdio_type::rsp1_bit

◆ rsp2

__IO uint32_t sdio_type::rsp2

Definition at line 344 of file at32f403_sdio.h.

Referenced by sdio_response_get().

◆

struct { ... } sdio_type::rsp2_bit

◆ rsp3

__IO uint32_t sdio_type::rsp3

Definition at line 356 of file at32f403_sdio.h.

Referenced by sdio_response_get().

◆

struct { ... } sdio_type::rsp3_bit

◆ rsp4

__IO uint32_t sdio_type::rsp4

Definition at line 368 of file at32f403_sdio.h.

Referenced by sdio_response_get().

◆

struct { ... } sdio_type::rsp4_bit

◆ rspcmd

__IO uint32_t sdio_type::rspcmd

Definition at line 319 of file at32f403_sdio.h.

Referenced by sdio_command_response_get().

◆

struct { ... } sdio_type::rspcmd_bit

Referenced by sdio_command_response_get().

◆ rspwt

__IO uint32_t sdio_type::rspwt

Definition at line 305 of file at32f403_sdio.h.

Referenced by sdio_command_config().

◆ rxbuf

__IO uint32_t sdio_type::rxbuf

Definition at line 463 of file at32f403_sdio.h.

◆ rxbufe

__IO uint32_t sdio_type::rxbufe

Definition at line 461 of file at32f403_sdio.h.

◆ rxbufeien

__IO uint32_t sdio_type::rxbufeien

Definition at line 521 of file at32f403_sdio.h.

◆ rxbuff

__IO uint32_t sdio_type::rxbuff

Definition at line 459 of file at32f403_sdio.h.

◆ rxbuffien

__IO uint32_t sdio_type::rxbuffien

Definition at line 519 of file at32f403_sdio.h.

◆ rxbufh

__IO uint32_t sdio_type::rxbufh

Definition at line 457 of file at32f403_sdio.h.

◆ rxbufhien

__IO uint32_t sdio_type::rxbufhien

Definition at line 517 of file at32f403_sdio.h.

◆ rxbufien

__IO uint32_t sdio_type::rxbufien

Definition at line 523 of file at32f403_sdio.h.

◆ rxerro

__IO uint32_t sdio_type::rxerro

Definition at line 447 of file at32f403_sdio.h.

◆ rxerroien

__IO uint32_t sdio_type::rxerroien

Definition at line 507 of file at32f403_sdio.h.

◆ sbiterr

__IO uint32_t sdio_type::sbiterr

Definition at line 451 of file at32f403_sdio.h.

◆ sbiterrien

__IO uint32_t sdio_type::sbiterrien

Definition at line 511 of file at32f403_sdio.h.

◆ sts

__IO uint32_t sdio_type::sts

Definition at line 439 of file at32f403_sdio.h.

Referenced by sdio_flag_get(), and sdio_interrupt_flag_get().

◆

struct { ... } sdio_type::sts_bit

◆ tfrdir

__IO uint32_t sdio_type::tfrdir

Definition at line 409 of file at32f403_sdio.h.

Referenced by sdio_data_config().

◆ tfren

__IO uint32_t sdio_type::tfren

Definition at line 408 of file at32f403_sdio.h.

Referenced by sdio_data_config(), and sdio_data_state_machine_enable().

◆ tfrmode

__IO uint32_t sdio_type::tfrmode

Definition at line 410 of file at32f403_sdio.h.

Referenced by sdio_data_config().

◆ timeout

__IO uint32_t sdio_type::timeout

Definition at line 383 of file at32f403_sdio.h.

Referenced by sdio_data_config().

◆ txbuf

__IO uint32_t sdio_type::txbuf

Definition at line 462 of file at32f403_sdio.h.

◆ txbufe

__IO uint32_t sdio_type::txbufe

Definition at line 460 of file at32f403_sdio.h.

◆ txbufeien

__IO uint32_t sdio_type::txbufeien

Definition at line 520 of file at32f403_sdio.h.

◆ txbuff

__IO uint32_t sdio_type::txbuff

Definition at line 458 of file at32f403_sdio.h.

◆ txbuffien

__IO uint32_t sdio_type::txbuffien

Definition at line 518 of file at32f403_sdio.h.

◆ txbufh

__IO uint32_t sdio_type::txbufh

Definition at line 456 of file at32f403_sdio.h.

◆ txbufhien

__IO uint32_t sdio_type::txbufhien

Definition at line 516 of file at32f403_sdio.h.

◆ txbufien

__IO uint32_t sdio_type::txbufien

Definition at line 522 of file at32f403_sdio.h.

◆ txerru

__IO uint32_t sdio_type::txerru

Definition at line 446 of file at32f403_sdio.h.

◆ txerruien

__IO uint32_t sdio_type::txerruien

Definition at line 506 of file at32f403_sdio.h.

The documentation for this struct was generated from the following file:
  • at32f403_sdio.h


AT32F403 Firmwary Library: SDIO_exported_functions

Functions
SDIO_exported_functions
AT32F403_periph_driver » SDIO

Functions

void | sdio_reset (sdio_type *sdio_x)
reset the sdio register More...
void | sdio_power_set (sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller More...
sdio_power_state_type | sdio_power_status_get (sdio_type *sdio_x)
get power status. More...
void | sdio_clock_config (sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock More...
void | sdio_bus_width_config (sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width More...
void | sdio_clock_bypass (sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss More...
void | sdio_power_saving_mode_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle. More...
void | sdio_flow_control_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control. More...
void | sdio_clock_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output. More...
void | sdio_dma_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable dma. More...
void | sdio_interrupt_enable (sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt. More...
flag_status | sdio_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio flag. More...
flag_status | sdio_interrupt_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio interrupt flag. More...
void | sdio_flag_clear (sdio_type *sdio_x, uint32_t flag)
clear sdio flag. More...
void | sdio_command_config (sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command. More...
void | sdio_command_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM). More...
uint8_t | sdio_command_response_get (sdio_type *sdio_x)
get command index of last command for which response received. More...
uint32_t | sdio_response_get (sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command. More...
void | sdio_data_config (sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data. More...
void | sdio_data_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM). More...
uint32_t | sdio_data_counter_get (sdio_type *sdio_x)
get the number of remaining data bytes to be transferred. More...
uint32_t | sdio_data_read (sdio_type *sdio_x)
read a word data from sdio fifo. More...
uint32_t | sdio_buffer_counter_get (sdio_type *sdio_x)
get the number of words left to be written to or read from fifo.. More...
void | sdio_data_write (sdio_type *sdio_x, uint32_t data)
write one word data to fifo. More...
void | sdio_read_wait_mode_set (sdio_type *sdio_x, sdio_read_wait_mode_type mode)
set the read wait mode. More...
void | sdio_read_wait_start (sdio_type *sdio_x, confirm_state new_state)
enable or disable to start sd i/o read wait operation. More...
void | sdio_read_wait_stop (sdio_type *sdio_x, confirm_state new_state)
enable or disable to stop sd i/o read wait operation. More...
void | sdio_io_function_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable the sd i/o function. More...
void | sdio_io_suspend_command_set (sdio_type *sdio_x, confirm_state new_state)
enable or disable sd i/o suspend command sending. More...

Detailed Description

Function Documentation

◆ sdio_buffer_counter_get()

uint32_t sdio_buffer_counter_get ( sdio_type * sdio_x )

get the number of words left to be written to or read from fifo..

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
uint32_t number of words

Definition at line 519 of file at32f403_sdio.c.

◆ sdio_bus_width_config()

void sdio_bus_width_config | ( | sdio_type * | sdio_x,
 |  | sdio_bus_width_type | width
 | ) |  |

config sdio bus width

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
width this parameter can be one of the following values:
  • SDIO_BUS_WIDTH_D1
  • SDIO_BUS_WIDTH_D4
  • SDIO_BUS_WIDTH_D8
Return values
none

Definition at line 126 of file at32f403_sdio.c.

Referenced by sd_power_on(), and sd_wide_bus_operation_config().

◆ sdio_clock_bypass()

void sdio_clock_bypass | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable clock divider bypss

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 139 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_clock_config()

void sdio_clock_config | ( | sdio_type * | sdio_x,
 |  | uint16_t | clk_div,
 |  | sdio_edge_phase_type | clk_edg
 | ) |  |

config sdio clock

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
clk_div | sdio clock divide factor(frequency = sdio_clk / [clk_psc + 2]).
clk_edg this parameter can be one of the following values:
  • SDIO_CLOCK_EDGE_RISING
  • SDIO_CLOCK_EDGE_FALLING
Return values
none

Definition at line 102 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_clock_enable()

void sdio_clock_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable sdio_ck output.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 179 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_command_config()

void sdio_command_config | ( | sdio_type * | sdio_x,
 |  | sdio_command_struct_type * | command_struct
 | ) |  |

config sdio command.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
command_struct | : pointer to a sdio_command_struct_type structure that contains the configuration information for the sdio command.
Return values
none

Definition at line 371 of file at32f403_sdio.c.

Referenced by check_card_programming(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), and sdio_command_data_send().

◆ sdio_command_response_get()

uint8_t sdio_command_response_get ( sdio_type * sdio_x )

get command index of last command for which response received.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
uint8_t command index

Definition at line 407 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_rsp1_error(), command_rsp4_error(), command_rsp5_error(), and command_rsp6_error().

◆ sdio_command_state_machine_enable()

void sdio_command_state_machine_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable command path state machine(CPSM).

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 394 of file at32f403_sdio.c.

Referenced by check_card_programming(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), and sdio_command_data_send().

◆ sdio_data_config()

void sdio_data_config | ( | sdio_type * | sdio_x,
 |  | sdio_data_struct_type * | data_struct
 | ) |  |

config sdio data.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
data_struct | : pointer to a sdio_data_struct_type structure that contains the configuration information for the sdio data.
Return values
none

Definition at line 458 of file at32f403_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sdio_command_data_send().

◆ sdio_data_counter_get()

uint32_t sdio_data_counter_get ( sdio_type * sdio_x )

get the number of remaining data bytes to be transferred.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
uint32_t number of bytes

Definition at line 495 of file at32f403_sdio.c.

◆ sdio_data_read()

uint32_t sdio_data_read ( sdio_type * sdio_x )

read a word data from sdio fifo.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
uint32_t data received

Definition at line 507 of file at32f403_sdio.c.

Referenced by scr_find(), and sdio_command_data_send().

◆ sdio_data_state_machine_enable()

void sdio_data_state_machine_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable data path state machine(DPSM).

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 483 of file at32f403_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sdio_command_data_send().

◆ sdio_data_write()

void sdio_data_write | ( | sdio_type * | sdio_x,
 |  | uint32_t | data
 | ) |  |

write one word data to fifo.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
data | data to be transferred.
Return values
none

Definition at line 532 of file at32f403_sdio.c.

Referenced by sdio_command_data_send().

◆ sdio_dma_enable()

void sdio_dma_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 192 of file at32f403_sdio.c.

Referenced by sdio_command_data_send().

◆ sdio_flag_clear()

void sdio_flag_clear | ( | sdio_type * | sdio_x,
 |  | uint32_t | flag
 | ) |  |

clear sdio flag.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
int_opt this parameter can be any combination of the following values:
  • SDIO_CMDFAIL_FLAG
  • SDIO_DTFAIL_FLAG
  • SDIO_CMDTIMEOUT_FLAG
  • SDIO_DTTIMEOUT_FLAG
  • SDIO_TXERRU_FLAG
  • SDIO_RXERRO_FLAG
  • SDIO_CMDRSPCMPL_FLAG
  • SDIO_CMDCMPL_FLAG
  • SDIO_DTCMPL_FLAG
  • SDIO_SBITERR_FLAG
  • SDIO_DTBLKCMPL_FLAG
  • SDIO_SDIOIF_FLAG
Return values
none

Definition at line 357 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_error(), command_rsp1_error(), command_rsp2_error(), command_rsp3_error(), command_rsp4_error(), command_rsp5_error(), command_rsp6_error(), command_rsp7_error(), mmc_stream_write(), scr_find(), sd_block_write(), sd_irq_service(), sd_mult_blocks_write(), and sdio_command_data_send().

◆ sdio_flag_get()

flag_status sdio_flag_get | ( | sdio_type * | sdio_x,
 |  | uint32_t | flag
 | ) |  |

get sdio flag.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
flag this parameter can be one of the following values:
  • SDIO_CMDFAIL_FLAG
  • SDIO_DTFAIL_FLAG
  • SDIO_CMDTIMEOUT_FLAG
  • SDIO_DTTIMEOUT_FLAG
  • SDIO_TXERRU_FLAG
  • SDIO_RXERRO_FLAG
  • SDIO_CMDRSPCMPL_FLAG
  • SDIO_CMDCMPL_FLAG
  • SDIO_DTCMPL_FLAG
  • SDIO_SBITERR_FLAG
  • SDIO_DTBLKCMPL_FLAG
  • SDIO_DOCMD_FLAG
  • SDIO_DOTX_FLAG
  • SDIO_DORX_FLAG
  • SDIO_TXBUFH_FLAG
  • SDIO_RXBUFH_FLAG
  • SDIO_TXBUFF_FLAG
  • SDIO_RXBUFF_FLAG
  • SDIO_TXBUFE_FLAG
  • SDIO_RXBUFE_FLAG
  • SDIO_TXBUF_FLAG
  • SDIO_RXBUF_FLAG
  • SDIO_SDIOIF_FLAG
Return values
flag_status (SET or RESET)

Definition at line 320 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_error(), command_rsp1_error(), command_rsp2_error(), command_rsp3_error(), command_rsp4_error(), command_rsp5_error(), command_rsp6_error(), scr_find(), sd_irq_service(), and sdio_command_data_send().

◆ sdio_flow_control_enable()

void sdio_flow_control_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable hardware flow control.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 166 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_interrupt_enable()

void sdio_interrupt_enable | ( | sdio_type * | sdio_x,
 |  | uint32_t | int_opt,
 |  | confirm_state | new_state
 | ) |  |

config corresponding interrupt.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
int_opt this parameter can be one of the following values:
  • SDIO_CMDFAIL_INT
  • SDIO_DTFAIL_INT
  • SDIO_CMDTIMEOUT_INT
  • SDIO_DTTIMEOUT_INT
  • SDIO_TXERRU_INT
  • SDIO_RXERRO_INT
  • SDIO_CMDRSPCMPL_INT
  • SDIO_CMDCMPL_INT
  • SDIO_DTCMP_INT
  • SDIO_SBITERR_INT
  • SDIO_DTBLKCMPL_INT
  • SDIO_DOCMD_INT
  • SDIO_DOTX_INT
  • SDIO_DORX_INT
  • SDIO_TXBUFH_INT
  • SDIO_RXBUFH_INT
  • SDIO_TXBUFF_INT
  • SDIO_RXBUFF_INT
  • SDIO_TXBUFE_INT
  • SDIO_RXBUFE_INT
  • SDIO_TXBUF_INT
  • SDIO_RXBUF_INT
  • SDIO_SDIOIF_INT
new_state | (TRUE or FALSE)
Return values
none

Definition at line 230 of file at32f403_sdio.c.

Referenced by sd_irq_service().

◆ sdio_interrupt_flag_get()

flag_status sdio_interrupt_flag_get | ( | sdio_type * | sdio_x,
 |  | uint32_t | flag
 | ) |  |

get sdio interrupt flag.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
flag this parameter can be one of the following values:
  • SDIO_CMDFAIL_FLAG
  • SDIO_DTFAIL_FLAG
  • SDIO_CMDTIMEOUT_FLAG
  • SDIO_DTTIMEOUT_FLAG
  • SDIO_TXERRU_FLAG
  • SDIO_RXERRO_FLAG
  • SDIO_CMDRSPCMPL_FLAG
  • SDIO_CMDCMPL_FLAG
  • SDIO_DTCMPL_FLAG
  • SDIO_SBITERR_FLAG
  • SDIO_DTBLKCMPL_FLAG
  • SDIO_DOCMD_FLAG
  • SDIO_DOTX_FLAG
  • SDIO_DORX_FLAG
  • SDIO_TXBUFH_FLAG
  • SDIO_RXBUFH_FLAG
  • SDIO_TXBUFF_FLAG
  • SDIO_RXBUFF_FLAG
  • SDIO_TXBUFE_FLAG
  • SDIO_RXBUFE_FLAG
  • SDIO_TXBUF_FLAG
  • SDIO_RXBUF_FLAG
  • SDIO_SDIOIF_FLAG
Return values
flag_status (SET or RESET)

Definition at line 276 of file at32f403_sdio.c.

◆ sdio_io_function_enable()

void sdio_io_function_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the sd i/o function.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 587 of file at32f403_sdio.c.

◆ sdio_io_suspend_command_set()

void sdio_io_suspend_command_set | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable sd i/o suspend command sending.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 600 of file at32f403_sdio.c.

◆ sdio_power_saving_mode_enable()

void sdio_power_saving_mode_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable power saving mode, config sdio_ck clock output when the bus is idle.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 153 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_power_set()

void sdio_power_set | ( | sdio_type * | sdio_x,
 |  | sdio_power_state_type | power_state
 | ) |  |

set the power status of the controller

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
power_state this parameter can be one of the following values:
  • SDIO_POWER_OFF
  • SDIO_POWER_ON
Return values
none

Definition at line 73 of file at32f403_sdio.c.

Referenced by sd_power_off(), and sd_power_on().

◆ sdio_power_status_get()

sdio_power_state_type sdio_power_status_get ( sdio_type * sdio_x )

get power status.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
sdio_power_state_type (SDIO_POWER_ON or SDIO_POWER_OFF)

Definition at line 85 of file at32f403_sdio.c.

Referenced by sd_card_init().

◆ sdio_read_wait_mode_set()

void sdio_read_wait_mode_set | ( | sdio_type * | sdio_x,
 |  | sdio_read_wait_mode_type | mode
 | ) |  |

set the read wait mode.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
mode this parameter can be one of the following values:
  • SDIO_READ_WAIT_CONTROLLED_BY_D2
  • SDIO_READ_WAIT_CONTROLLED_BY_CK
Return values
none

Definition at line 548 of file at32f403_sdio.c.

◆ sdio_read_wait_start()

void sdio_read_wait_start | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable to start sd i/o read wait operation.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 561 of file at32f403_sdio.c.

◆ sdio_read_wait_stop()

void sdio_read_wait_stop | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable to stop sd i/o read wait operation.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 574 of file at32f403_sdio.c.

◆ sdio_reset()

void sdio_reset ( sdio_type * sdio_x )

reset the sdio register

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
none

Definition at line 49 of file at32f403_sdio.c.

Referenced by sd_init().

◆ sdio_response_get()

uint32_t sdio_response_get | ( | sdio_type * | sdio_x,
 |  | sdio_rsp_index_type | reg_index
 | ) |  |

get response received from the card for the last command.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
reg_index this parameter can be one of the following values:
  • SDIO_RSP1_INDEX
  • SDIO_RSP2_INDEX
  • SDIO_RSP3_INDEX
  • SDIO_RSP4_INDEX
Return values
uint32_t response register value

Definition at line 425 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_rsp1_error(), command_rsp5_error(), command_rsp6_error(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), and sd_status_send().


AT32F403 Firmwary Library: SDIO_private_functions

Functions
SDIO_private_functions
AT32F403_periph_driver » SDIO

Functions

void | sdio_reset (sdio_type *sdio_x)
reset the sdio register More...
void | sdio_power_set (sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller More...
sdio_power_state_type | sdio_power_status_get (sdio_type *sdio_x)
get power status. More...
void | sdio_clock_config (sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock More...
void | sdio_bus_width_config (sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width More...
void | sdio_clock_bypass (sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss More...
void | sdio_power_saving_mode_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle. More...
void | sdio_flow_control_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control. More...
void | sdio_clock_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output. More...
void | sdio_dma_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable dma. More...
void | sdio_interrupt_enable (sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt. More...
flag_status | sdio_interrupt_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio interrupt flag. More...
flag_status | sdio_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio flag. More...
void | sdio_flag_clear (sdio_type *sdio_x, uint32_t flag)
clear sdio flag. More...
void | sdio_command_config (sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command. More...
void | sdio_command_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM). More...
uint8_t | sdio_command_response_get (sdio_type *sdio_x)
get command index of last command for which response received. More...
uint32_t | sdio_response_get (sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command. More...
void | sdio_data_config (sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data. More...
void | sdio_data_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM). More...
uint32_t | sdio_data_counter_get (sdio_type *sdio_x)
get the number of remaining data bytes to be transferred. More...
uint32_t | sdio_data_read (sdio_type *sdio_x)
read a word data from sdio fifo. More...
uint32_t | sdio_buffer_counter_get (sdio_type *sdio_x)
get the number of words left to be written to or read from fifo.. More...
void | sdio_data_write (sdio_type *sdio_x, uint32_t data)
write one word data to fifo. More...
void | sdio_read_wait_mode_set (sdio_type *sdio_x, sdio_read_wait_mode_type mode)
set the read wait mode. More...
void | sdio_read_wait_start (sdio_type *sdio_x, confirm_state new_state)
enable or disable to start sd i/o read wait operation. More...
void | sdio_read_wait_stop (sdio_type *sdio_x, confirm_state new_state)
enable or disable to stop sd i/o read wait operation. More...
void | sdio_io_function_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable the sd i/o function. More...
void | sdio_io_suspend_command_set (sdio_type *sdio_x, confirm_state new_state)
enable or disable sd i/o suspend command sending. More...

Detailed Description

Function Documentation

◆ sdio_buffer_counter_get()

uint32_t sdio_buffer_counter_get ( sdio_type * sdio_x )

get the number of words left to be written to or read from fifo..

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
uint32_t number of words

Definition at line 519 of file at32f403_sdio.c.

◆ sdio_bus_width_config()

void sdio_bus_width_config | ( | sdio_type * | sdio_x,
 |  | sdio_bus_width_type | width
 | ) |  |

config sdio bus width

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
width this parameter can be one of the following values:
  • SDIO_BUS_WIDTH_D1
  • SDIO_BUS_WIDTH_D4
  • SDIO_BUS_WIDTH_D8
Return values
none

Definition at line 126 of file at32f403_sdio.c.

Referenced by sd_power_on(), and sd_wide_bus_operation_config().

◆ sdio_clock_bypass()

void sdio_clock_bypass | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable clock divider bypss

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 139 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_clock_config()

void sdio_clock_config | ( | sdio_type * | sdio_x,
 |  | uint16_t | clk_div,
 |  | sdio_edge_phase_type | clk_edg
 | ) |  |

config sdio clock

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
clk_div | sdio clock divide factor(frequency = sdio_clk / [clk_psc + 2]).
clk_edg this parameter can be one of the following values:
  • SDIO_CLOCK_EDGE_RISING
  • SDIO_CLOCK_EDGE_FALLING
Return values
none

Definition at line 102 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_clock_enable()

void sdio_clock_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable sdio_ck output.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 179 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_command_config()

void sdio_command_config | ( | sdio_type * | sdio_x,
 |  | sdio_command_struct_type * | command_struct
 | ) |  |

config sdio command.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
command_struct | : pointer to a sdio_command_struct_type structure that contains the configuration information for the sdio command.
Return values
none

Definition at line 371 of file at32f403_sdio.c.

Referenced by check_card_programming(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), and sdio_command_data_send().

◆ sdio_command_response_get()

uint8_t sdio_command_response_get ( sdio_type * sdio_x )

get command index of last command for which response received.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
uint8_t command index

Definition at line 407 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_rsp1_error(), command_rsp4_error(), command_rsp5_error(), and command_rsp6_error().

◆ sdio_command_state_machine_enable()

void sdio_command_state_machine_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable command path state machine(CPSM).

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 394 of file at32f403_sdio.c.

Referenced by check_card_programming(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), and sdio_command_data_send().

◆ sdio_data_config()

void sdio_data_config | ( | sdio_type * | sdio_x,
 |  | sdio_data_struct_type * | data_struct
 | ) |  |

config sdio data.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
data_struct | : pointer to a sdio_data_struct_type structure that contains the configuration information for the sdio data.
Return values
none

Definition at line 458 of file at32f403_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sdio_command_data_send().

◆ sdio_data_counter_get()

uint32_t sdio_data_counter_get ( sdio_type * sdio_x )

get the number of remaining data bytes to be transferred.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
uint32_t number of bytes

Definition at line 495 of file at32f403_sdio.c.

◆ sdio_data_read()

uint32_t sdio_data_read ( sdio_type * sdio_x )

read a word data from sdio fifo.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
uint32_t data received

Definition at line 507 of file at32f403_sdio.c.

Referenced by scr_find(), and sdio_command_data_send().

◆ sdio_data_state_machine_enable()

void sdio_data_state_machine_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable data path state machine(DPSM).

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 483 of file at32f403_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sdio_command_data_send().

◆ sdio_data_write()

void sdio_data_write | ( | sdio_type * | sdio_x,
 |  | uint32_t | data
 | ) |  |

write one word data to fifo.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
data | data to be transferred.
Return values
none

Definition at line 532 of file at32f403_sdio.c.

Referenced by sdio_command_data_send().

◆ sdio_dma_enable()

void sdio_dma_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable dma.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 192 of file at32f403_sdio.c.

Referenced by sdio_command_data_send().

◆ sdio_flag_clear()

void sdio_flag_clear | ( | sdio_type * | sdio_x,
 |  | uint32_t | flag
 | ) |  |

clear sdio flag.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
int_opt this parameter can be any combination of the following values:
  • SDIO_CMDFAIL_FLAG
  • SDIO_DTFAIL_FLAG
  • SDIO_CMDTIMEOUT_FLAG
  • SDIO_DTTIMEOUT_FLAG
  • SDIO_TXERRU_FLAG
  • SDIO_RXERRO_FLAG
  • SDIO_CMDRSPCMPL_FLAG
  • SDIO_CMDCMPL_FLAG
  • SDIO_DTCMPL_FLAG
  • SDIO_SBITERR_FLAG
  • SDIO_DTBLKCMPL_FLAG
  • SDIO_SDIOIF_FLAG
Return values
none

Definition at line 357 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_error(), command_rsp1_error(), command_rsp2_error(), command_rsp3_error(), command_rsp4_error(), command_rsp5_error(), command_rsp6_error(), command_rsp7_error(), mmc_stream_write(), scr_find(), sd_block_write(), sd_irq_service(), sd_mult_blocks_write(), and sdio_command_data_send().

◆ sdio_flag_get()

flag_status sdio_flag_get | ( | sdio_type * | sdio_x,
 |  | uint32_t | flag
 | ) |  |

get sdio flag.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
flag this parameter can be one of the following values:
  • SDIO_CMDFAIL_FLAG
  • SDIO_DTFAIL_FLAG
  • SDIO_CMDTIMEOUT_FLAG
  • SDIO_DTTIMEOUT_FLAG
  • SDIO_TXERRU_FLAG
  • SDIO_RXERRO_FLAG
  • SDIO_CMDRSPCMPL_FLAG
  • SDIO_CMDCMPL_FLAG
  • SDIO_DTCMPL_FLAG
  • SDIO_SBITERR_FLAG
  • SDIO_DTBLKCMPL_FLAG
  • SDIO_DOCMD_FLAG
  • SDIO_DOTX_FLAG
  • SDIO_DORX_FLAG
  • SDIO_TXBUFH_FLAG
  • SDIO_RXBUFH_FLAG
  • SDIO_TXBUFF_FLAG
  • SDIO_RXBUFF_FLAG
  • SDIO_TXBUFE_FLAG
  • SDIO_RXBUFE_FLAG
  • SDIO_TXBUF_FLAG
  • SDIO_RXBUF_FLAG
  • SDIO_SDIOIF_FLAG
Return values
flag_status (SET or RESET)

Definition at line 320 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_error(), command_rsp1_error(), command_rsp2_error(), command_rsp3_error(), command_rsp4_error(), command_rsp5_error(), command_rsp6_error(), scr_find(), sd_irq_service(), and sdio_command_data_send().

◆ sdio_flow_control_enable()

void sdio_flow_control_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable hardware flow control.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 166 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_interrupt_enable()

void sdio_interrupt_enable | ( | sdio_type * | sdio_x,
 |  | uint32_t | int_opt,
 |  | confirm_state | new_state
 | ) |  |

config corresponding interrupt.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
int_opt this parameter can be one of the following values:
  • SDIO_CMDFAIL_INT
  • SDIO_DTFAIL_INT
  • SDIO_CMDTIMEOUT_INT
  • SDIO_DTTIMEOUT_INT
  • SDIO_TXERRU_INT
  • SDIO_RXERRO_INT
  • SDIO_CMDRSPCMPL_INT
  • SDIO_CMDCMPL_INT
  • SDIO_DTCMP_INT
  • SDIO_SBITERR_INT
  • SDIO_DTBLKCMPL_INT
  • SDIO_DOCMD_INT
  • SDIO_DOTX_INT
  • SDIO_DORX_INT
  • SDIO_TXBUFH_INT
  • SDIO_RXBUFH_INT
  • SDIO_TXBUFF_INT
  • SDIO_RXBUFF_INT
  • SDIO_TXBUFE_INT
  • SDIO_RXBUFE_INT
  • SDIO_TXBUF_INT
  • SDIO_RXBUF_INT
  • SDIO_SDIOIF_INT
new_state | (TRUE or FALSE)
Return values
none

Definition at line 230 of file at32f403_sdio.c.

Referenced by sd_irq_service().

◆ sdio_interrupt_flag_get()

flag_status sdio_interrupt_flag_get | ( | sdio_type * | sdio_x,
 |  | uint32_t | flag
 | ) |  |

get sdio interrupt flag.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
flag this parameter can be one of the following values:
  • SDIO_CMDFAIL_FLAG
  • SDIO_DTFAIL_FLAG
  • SDIO_CMDTIMEOUT_FLAG
  • SDIO_DTTIMEOUT_FLAG
  • SDIO_TXERRU_FLAG
  • SDIO_RXERRO_FLAG
  • SDIO_CMDRSPCMPL_FLAG
  • SDIO_CMDCMPL_FLAG
  • SDIO_DTCMPL_FLAG
  • SDIO_SBITERR_FLAG
  • SDIO_DTBLKCMPL_FLAG
  • SDIO_DOCMD_FLAG
  • SDIO_DOTX_FLAG
  • SDIO_DORX_FLAG
  • SDIO_TXBUFH_FLAG
  • SDIO_RXBUFH_FLAG
  • SDIO_TXBUFF_FLAG
  • SDIO_RXBUFF_FLAG
  • SDIO_TXBUFE_FLAG
  • SDIO_RXBUFE_FLAG
  • SDIO_TXBUF_FLAG
  • SDIO_RXBUF_FLAG
  • SDIO_SDIOIF_FLAG
Return values
flag_status (SET or RESET)

Definition at line 276 of file at32f403_sdio.c.

◆ sdio_io_function_enable()

void sdio_io_function_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the sd i/o function.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 587 of file at32f403_sdio.c.

◆ sdio_io_suspend_command_set()

void sdio_io_suspend_command_set | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable sd i/o suspend command sending.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 600 of file at32f403_sdio.c.

◆ sdio_power_saving_mode_enable()

void sdio_power_saving_mode_enable | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable power saving mode, config sdio_ck clock output when the bus is idle.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 153 of file at32f403_sdio.c.

Referenced by sd_power_on().

◆ sdio_power_set()

void sdio_power_set | ( | sdio_type * | sdio_x,
 |  | sdio_power_state_type | power_state
 | ) |  |

set the power status of the controller

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
power_state this parameter can be one of the following values:
  • SDIO_POWER_OFF
  • SDIO_POWER_ON
Return values
none

Definition at line 73 of file at32f403_sdio.c.

Referenced by sd_power_off(), and sd_power_on().

◆ sdio_power_status_get()

sdio_power_state_type sdio_power_status_get ( sdio_type * sdio_x )

get power status.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
sdio_power_state_type (SDIO_POWER_ON or SDIO_POWER_OFF)

Definition at line 85 of file at32f403_sdio.c.

Referenced by sd_card_init().

◆ sdio_read_wait_mode_set()

void sdio_read_wait_mode_set | ( | sdio_type * | sdio_x,
 |  | sdio_read_wait_mode_type | mode
 | ) |  |

set the read wait mode.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
mode this parameter can be one of the following values:
  • SDIO_READ_WAIT_CONTROLLED_BY_D2
  • SDIO_READ_WAIT_CONTROLLED_BY_CK
Return values
none

Definition at line 548 of file at32f403_sdio.c.

◆ sdio_read_wait_start()

void sdio_read_wait_start | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable to start sd i/o read wait operation.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 561 of file at32f403_sdio.c.

◆ sdio_read_wait_stop()

void sdio_read_wait_stop | ( | sdio_type * | sdio_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable to stop sd i/o read wait operation.

Parameters
sdio_x | to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
new_state | (TRUE or FALSE)
Return values
none

Definition at line 574 of file at32f403_sdio.c.

◆ sdio_reset()

void sdio_reset ( sdio_type * sdio_x )

reset the sdio register

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
Return values
none

Definition at line 49 of file at32f403_sdio.c.

Referenced by sd_init().

◆ sdio_response_get()

uint32_t sdio_response_get | ( | sdio_type * | sdio_x,
 |  | sdio_rsp_index_type | reg_index
 | ) |  |

get response received from the card for the last command.

Parameters
sdio_x to select the sdio peripheral. this parameter can be one of the following values: SDIO1, SDIO2.
reg_index this parameter can be one of the following values:
  • SDIO_RSP1_INDEX
  • SDIO_RSP2_INDEX
  • SDIO_RSP3_INDEX
  • SDIO_RSP4_INDEX
Return values
uint32_t response register value

Definition at line 425 of file at32f403_sdio.c.

Referenced by check_card_programming(), command_rsp1_error(), command_rsp5_error(), command_rsp6_error(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), and sd_status_send().


AT32F403 Firmwary Library: SPI

Modules | Macros
SPI
AT32F403_periph_driver

SPI driver modules. More...

Modules

SPI_I2S_flags_definition
spi i2s flag
SPI_I2S_interrupts_definition
spi i2s interrupt
SPI_exported_types
SPI_exported_functions
SPI_private_functions

Macros

#define | SPI1 ((spi_type *) SPI1_BASE)
#define | SPI2 ((spi_type *) SPI2_BASE)
#define | SPI3 ((spi_type *) SPI3_BASE)

Detailed Description

SPI driver modules.

Macro Definition Documentation

◆ SPI1

#define SPI1 ((spi_type *) SPI1_BASE)

Definition at line 446 of file at32f403_spi.h.

◆ SPI2

#define SPI2 ((spi_type *) SPI2_BASE)

Definition at line 447 of file at32f403_spi.h.

◆ SPI3

#define SPI3 ((spi_type *) SPI3_BASE)

Definition at line 448 of file at32f403_spi.h.


AT32F403 Firmwary Library: SPI_I2S_flags_definition

Macros
SPI_I2S_flags_definition
AT32F403_periph_driver » SPI

spi i2s flag More...

Macros

#define | SPI_I2S_RDBF_FLAG 0x0001
#define | SPI_I2S_TDBE_FLAG 0x0002
#define | I2S_ACS_FLAG 0x0004
#define | I2S_TUERR_FLAG 0x0008
#define | SPI_CCERR_FLAG 0x0010
#define | SPI_MMERR_FLAG 0x0020
#define | SPI_I2S_ROERR_FLAG 0x0040
#define | SPI_I2S_BF_FLAG 0x0080

Detailed Description

spi i2s flag

Macro Definition Documentation

◆ I2S_ACS_FLAG

#define I2S_ACS_FLAG 0x0004

i2s audio channel state flag

Definition at line 53 of file at32f403_spi.h.

◆ I2S_TUERR_FLAG

#define I2S_TUERR_FLAG 0x0008

i2s transmitter underload error flag

Definition at line 54 of file at32f403_spi.h.

◆ SPI_CCERR_FLAG

#define SPI_CCERR_FLAG 0x0010

spi crc calculation error flag

Definition at line 55 of file at32f403_spi.h.

◆ SPI_I2S_BF_FLAG

#define SPI_I2S_BF_FLAG 0x0080

spi or i2s busy flag

Definition at line 58 of file at32f403_spi.h.

◆ SPI_I2S_RDBF_FLAG

#define SPI_I2S_RDBF_FLAG 0x0001

spi or i2s receive data buffer full flag

Definition at line 51 of file at32f403_spi.h.

◆ SPI_I2S_ROERR_FLAG

#define SPI_I2S_ROERR_FLAG 0x0040

spi or i2s receiver overflow error flag

Definition at line 57 of file at32f403_spi.h.

◆ SPI_I2S_TDBE_FLAG

#define SPI_I2S_TDBE_FLAG 0x0002

spi or i2s transmit data buffer empty flag

Definition at line 52 of file at32f403_spi.h.

◆ SPI_MMERR_FLAG

#define SPI_MMERR_FLAG 0x0020

spi master mode error flag

Definition at line 56 of file at32f403_spi.h.


AT32F403 Firmwary Library: SPI_I2S_interrupts_definition

Macros
SPI_I2S_interrupts_definition
AT32F403_periph_driver » SPI

spi i2s interrupt More...

Macros

#define | SPI_I2S_ERROR_INT 0x0020
#define | SPI_I2S_RDBF_INT 0x0040
#define | SPI_I2S_TDBE_INT 0x0080

Detailed Description

spi i2s interrupt

Macro Definition Documentation

◆ SPI_I2S_ERROR_INT

#define SPI_I2S_ERROR_INT 0x0020

error interrupt

Definition at line 70 of file at32f403_spi.h.

◆ SPI_I2S_RDBF_INT

#define SPI_I2S_RDBF_INT 0x0040

receive data buffer full interrupt

Definition at line 71 of file at32f403_spi.h.

◆ SPI_I2S_TDBE_INT

#define SPI_I2S_TDBE_INT 0x0080

transmit data buffer empty interrupt

Definition at line 72 of file at32f403_spi.h.


AT32F403 Firmwary Library: SPI_exported_types

Data Structures | Enumerations
SPI_exported_types
AT32F403_periph_driver » SPI

Data Structures

struct | spi_init_type
spi init type More...
struct | i2s_init_type
i2s init type More...
struct | spi_type
type define spi register all More...

Enumerations

enum | spi_frame_bit_num_type { SPI_FRAME_8BIT = 0x00 , SPI_FRAME_16BIT = 0x01 }
spi frame bit num type More...
enum | spi_master_slave_mode_type { SPI_MODE_SLAVE = 0x00 , SPI_MODE_MASTER = 0x01 }
spi master/slave mode type More...
enum | spi_clock_polarity_type { SPI_CLOCK_POLARITY_LOW = 0x00 , SPI_CLOCK_POLARITY_HIGH = 0x01 }
spi clock polarity (clkpol) type More...
enum | spi_clock_phase_type { SPI_CLOCK_PHASE_1EDGE = 0x00 , SPI_CLOCK_PHASE_2EDGE = 0x01 }
spi clock phase (clkpha) type More...
enum | spi_cs_mode_type { SPI_CS_HARDWARE_MODE = 0x00 , SPI_CS_SOFTWARE_MODE = 0x01 }
spi cs mode type More...
enum spi_mclk_freq_div_type {
SPI_MCLK_DIV_2 = 0x00 , SPI_MCLK_DIV_4 = 0x01 , SPI_MCLK_DIV_8 = 0x02 , SPI_MCLK_DIV_16 = 0x03 ,
SPI_MCLK_DIV_32 = 0x04 , SPI_MCLK_DIV_64 = 0x05 , SPI_MCLK_DIV_128 = 0x06 , SPI_MCLK_DIV_256 = 0x07 ,
SPI_MCLK_DIV_512 = 0x08 , SPI_MCLK_DIV_1024 = 0x09
}
spi master clock frequency division type More...
enum | spi_first_bit_type { SPI_FIRST_BIT_MSB = 0x00 , SPI_FIRST_BIT_LSB = 0x01 }
spi transmit first bit (lsb/msb) type More...
enum | spi_transmission_mode_type { SPI_TRANSMIT_FULL_DUPLEX = 0x00 , SPI_TRANSMIT_SIMPLEX_RX = 0x01 , SPI_TRANSMIT_HALF_DUPLEX_RX = 0x02 , SPI_TRANSMIT_HALF_DUPLEX_TX = 0x03 }
spi transmission mode type More...
enum | spi_crc_direction_type { SPI_CRC_RX = 0x0014 , SPI_CRC_TX = 0x0018 }
spi crc direction type More...
enum | spi_half_duplex_direction_type { SPI_HALF_DUPLEX_DIRECTION_RX = 0x00 , SPI_HALF_DUPLEX_DIRECTION_TX = 0x01 }
spi single line bidirectional direction type More...
enum | spi_software_cs_level_type { SPI_SWCS_INTERNAL_LEVEL_LOW = 0x00 , SPI_SWCS_INTERNAL_LEVEL_HIGHT = 0x01 }
spi software cs internal level type More...
enum i2s_audio_protocol_type {
I2S_AUDIO_PROTOCOL_PHILLIPS = 0x00 , I2S_AUDIO_PROTOCOL_MSB = 0x01 , I2S_AUDIO_PROTOCOL_LSB = 0x02 , I2S_AUDIO_PROTOCOL_PCM_SHORT = 0x03 ,
I2S_AUDIO_PROTOCOL_PCM_LONG = 0x04
}
i2s audio protocol type More...
enum i2s_audio_sampling_freq_type {
I2S_AUDIO_FREQUENCY_DEFAULT = 2 , I2S_AUDIO_FREQUENCY_8K = 8000 , I2S_AUDIO_FREQUENCY_11_025K = 11025 , I2S_AUDIO_FREQUENCY_16K = 16000 ,
I2S_AUDIO_FREQUENCY_22_05K = 22050 , I2S_AUDIO_FREQUENCY_32K = 32000 , I2S_AUDIO_FREQUENCY_44_1K = 44100 , I2S_AUDIO_FREQUENCY_48K = 48000 ,
I2S_AUDIO_FREQUENCY_96K = 96000 , I2S_AUDIO_FREQUENCY_192K = 192000
}
i2s audio frequency type More...
enum | i2s_data_channel_format_type { I2S_DATA_16BIT_CHANNEL_16BIT = 0x01 , I2S_DATA_16BIT_CHANNEL_32BIT = 0x02 , I2S_DATA_24BIT_CHANNEL_32BIT = 0x03 , I2S_DATA_32BIT_CHANNEL_32BIT = 0x04 }
i2s data bit num and channel bit num type More...
enum | i2s_operation_mode_type { I2S_MODE_SLAVE_TX = 0x00 , I2S_MODE_SLAVE_RX = 0x01 , I2S_MODE_MASTER_TX = 0x02 , I2S_MODE_MASTER_RX = 0x03 }
i2s operation mode type More...
enum | i2s_clock_polarity_type { I2S_CLOCK_POLARITY_LOW = 0x00 , I2S_CLOCK_POLARITY_HIGH = 0x01 }
i2s clock polarity type More...

Detailed Description

Enumeration Type Documentation

◆ i2s_audio_protocol_type

enum i2s_audio_protocol_type

i2s audio protocol type

Enumerator
I2S_AUDIO_PROTOCOL_PHILLIPS | i2s philip standard
I2S_AUDIO_PROTOCOL_MSB | msb-justified standard
I2S_AUDIO_PROTOCOL_LSB | lsb-justified standard
I2S_AUDIO_PROTOCOL_PCM_SHORT | pcm standard-short frame
I2S_AUDIO_PROTOCOL_PCM_LONG | pcm standard-long frame

Definition at line 194 of file at32f403_spi.h.

◆ i2s_audio_sampling_freq_type

enum i2s_audio_sampling_freq_type

i2s audio frequency type

Enumerator
I2S_AUDIO_FREQUENCY_DEFAULT | i2s audio sampling frequency default
I2S_AUDIO_FREQUENCY_8K | i2s audio sampling frequency 8k
I2S_AUDIO_FREQUENCY_11_025K | i2s audio sampling frequency 11.025k
I2S_AUDIO_FREQUENCY_16K | i2s audio sampling frequency 16k
I2S_AUDIO_FREQUENCY_22_05K | i2s audio sampling frequency 22.05k
I2S_AUDIO_FREQUENCY_32K | i2s audio sampling frequency 32k
I2S_AUDIO_FREQUENCY_44_1K | i2s audio sampling frequency 44.1k
I2S_AUDIO_FREQUENCY_48K | i2s audio sampling frequency 48k
I2S_AUDIO_FREQUENCY_96K | i2s audio sampling frequency 96k
I2S_AUDIO_FREQUENCY_192K | i2s audio sampling frequency 192k

Definition at line 206 of file at32f403_spi.h.

◆ i2s_clock_polarity_type

enum i2s_clock_polarity_type

i2s clock polarity type

Enumerator
I2S_CLOCK_POLARITY_LOW | i2s clock steady state is low level
I2S_CLOCK_POLARITY_HIGH | i2s clock steady state is high level

Definition at line 245 of file at32f403_spi.h.

◆ i2s_data_channel_format_type

enum i2s_data_channel_format_type

i2s data bit num and channel bit num type

Enumerator
I2S_DATA_16BIT_CHANNEL_16BIT | 16-bit data packed in 16-bit channel frame
I2S_DATA_16BIT_CHANNEL_32BIT | 16-bit data packed in 32-bit channel frame
I2S_DATA_24BIT_CHANNEL_32BIT | 24-bit data packed in 32-bit channel frame
I2S_DATA_32BIT_CHANNEL_32BIT | 32-bit data packed in 32-bit channel frame

Definition at line 223 of file at32f403_spi.h.

◆ i2s_operation_mode_type

enum i2s_operation_mode_type

i2s operation mode type

Enumerator
I2S_MODE_SLAVE_TX | slave transmission mode
I2S_MODE_SLAVE_RX | slave reception mode
I2S_MODE_MASTER_TX | master transmission mode
I2S_MODE_MASTER_RX | master reception mode

Definition at line 234 of file at32f403_spi.h.

◆ spi_clock_phase_type

enum spi_clock_phase_type

spi clock phase (clkpha) type

Enumerator
SPI_CLOCK_PHASE_1EDGE | data capture start from the first clock edge
SPI_CLOCK_PHASE_2EDGE | data capture start from the second clock edge

Definition at line 112 of file at32f403_spi.h.

◆ spi_clock_polarity_type

enum spi_clock_polarity_type

spi clock polarity (clkpol) type

Enumerator
SPI_CLOCK_POLARITY_LOW | sck keeps low at idle state
SPI_CLOCK_POLARITY_HIGH | sck keeps high at idle state

Definition at line 103 of file at32f403_spi.h.

◆ spi_crc_direction_type

enum spi_crc_direction_type

spi crc direction type

Enumerator
SPI_CRC_RX | crc direction is rx
SPI_CRC_TX | crc direction is tx

Definition at line 167 of file at32f403_spi.h.

◆ spi_cs_mode_type

enum spi_cs_mode_type

spi cs mode type

Enumerator
SPI_CS_HARDWARE_MODE | cs is hardware mode
SPI_CS_SOFTWARE_MODE | cs is software mode

Definition at line 121 of file at32f403_spi.h.

◆ spi_first_bit_type

enum spi_first_bit_type

spi transmit first bit (lsb/msb) type

Enumerator
SPI_FIRST_BIT_MSB | the frame format is msb first
SPI_FIRST_BIT_LSB | the frame format is lsb first

Definition at line 147 of file at32f403_spi.h.

◆ spi_frame_bit_num_type

enum spi_frame_bit_num_type

spi frame bit num type

Enumerator
SPI_FRAME_8BIT | 8-bit data frame format
SPI_FRAME_16BIT | 16-bit data frame format

Definition at line 85 of file at32f403_spi.h.

◆ spi_half_duplex_direction_type

enum spi_half_duplex_direction_type

spi single line bidirectional direction type

Enumerator
SPI_HALF_DUPLEX_DIRECTION_RX | single line bidirectional half duplex mode direction: receive(slbtd = 0)
SPI_HALF_DUPLEX_DIRECTION_TX | single line bidirectional half duplex mode direction: transmit(slbtd = 1)

Definition at line 176 of file at32f403_spi.h.

◆ spi_master_slave_mode_type

enum spi_master_slave_mode_type

spi master/slave mode type

Enumerator
SPI_MODE_SLAVE | select as slave mode
SPI_MODE_MASTER | select as master mode

Definition at line 94 of file at32f403_spi.h.

◆ spi_mclk_freq_div_type

enum spi_mclk_freq_div_type

spi master clock frequency division type

Enumerator
SPI_MCLK_DIV_2 | master clock frequency division 2
SPI_MCLK_DIV_4 | master clock frequency division 4
SPI_MCLK_DIV_8 | master clock frequency division 8
SPI_MCLK_DIV_16 | master clock frequency division 16
SPI_MCLK_DIV_32 | master clock frequency division 32
SPI_MCLK_DIV_64 | master clock frequency division 64
SPI_MCLK_DIV_128 | master clock frequency division 128
SPI_MCLK_DIV_256 | master clock frequency division 256
SPI_MCLK_DIV_512 | master clock frequency division 512
SPI_MCLK_DIV_1024 | master clock frequency division 1024

Definition at line 130 of file at32f403_spi.h.

◆ spi_software_cs_level_type

enum spi_software_cs_level_type

spi software cs internal level type

Enumerator
SPI_SWCS_INTERNAL_LEVEL_LOW | internal level low
SPI_SWCS_INTERNAL_LEVEL_HIGHT | internal level high

Definition at line 185 of file at32f403_spi.h.

◆ spi_transmission_mode_type

enum spi_transmission_mode_type

spi transmission mode type

Enumerator
SPI_TRANSMIT_FULL_DUPLEX | dual line unidirectional full-duplex mode(slben = 0 and ora = 0)
SPI_TRANSMIT_SIMPLEX_RX | dual line unidirectional simplex receive-only mode(slben = 0 and ora = 1)
SPI_TRANSMIT_HALF_DUPLEX_RX | single line bidirectional half duplex mode-receiving(slben = 1 and slbtd = 0)
SPI_TRANSMIT_HALF_DUPLEX_TX | single line bidirectional half duplex mode-transmitting(slben = 1 and slbtd = 1)

Definition at line 156 of file at32f403_spi.h.


AT32F403 Firmwary Library: spi_init_type Struct Reference

Data Fields
spi_init_type Struct Reference
AT32F403_periph_driver » SPI » SPI_exported_types

spi init type More...

#include <at32f403_spi.h>

Data Fields

spi_transmission_mode_type transmission_mode
spi_master_slave_mode_type master_slave_mode
spi_mclk_freq_div_type mclk_freq_division
spi_first_bit_type first_bit_transmission
spi_frame_bit_num_type frame_bit_num
spi_clock_polarity_type clock_polarity
spi_clock_phase_type clock_phase
spi_cs_mode_type cs_mode_selection

Detailed Description

spi init type

Definition at line 254 of file at32f403_spi.h.

Field Documentation

◆ clock_phase

spi_clock_phase_type spi_init_type::clock_phase

clock phase selection

Definition at line 262 of file at32f403_spi.h.

Referenced by spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ clock_polarity

spi_clock_polarity_type spi_init_type::clock_polarity

clock polarity selection

Definition at line 261 of file at32f403_spi.h.

Referenced by spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ cs_mode_selection

spi_cs_mode_type spi_init_type::cs_mode_selection

hardware or software cs mode selection

Definition at line 263 of file at32f403_spi.h.

Referenced by spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ first_bit_transmission

spi_first_bit_type spi_init_type::first_bit_transmission

transmit lsb or msb selection

Definition at line 259 of file at32f403_spi.h.

Referenced by spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ frame_bit_num

spi_frame_bit_num_type spi_init_type::frame_bit_num

frame bit num 8 or 16 bit selection

Definition at line 260 of file at32f403_spi.h.

Referenced by spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ master_slave_mode

spi_master_slave_mode_type spi_init_type::master_slave_mode

master or slave mode selection

Definition at line 257 of file at32f403_spi.h.

Referenced by main(), spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ mclk_freq_division

spi_mclk_freq_div_type spi_init_type::mclk_freq_division

master clock frequency division selection

Definition at line 258 of file at32f403_spi.h.

Referenced by spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), and touch_pin_init().

◆ transmission_mode

spi_transmission_mode_type spi_init_type::transmission_mode

transmission mode selection

Definition at line 256 of file at32f403_spi.h.

Referenced by main(), spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

The documentation for this struct was generated from the following file:
  • at32f403_spi.h


AT32F403 Firmwary Library: i2s_init_type Struct Reference

Data Fields
i2s_init_type Struct Reference
AT32F403_periph_driver » SPI » SPI_exported_types

i2s init type More...

#include <at32f403_spi.h>

Data Fields

i2s_operation_mode_type operation_mode
i2s_audio_protocol_type audio_protocol
i2s_audio_sampling_freq_type audio_sampling_freq
i2s_data_channel_format_type data_channel_format
i2s_clock_polarity_type clock_polarity
confirm_state mclk_output_enable

Detailed Description

i2s init type

Definition at line 269 of file at32f403_spi.h.

Field Documentation

◆ audio_protocol

i2s_audio_protocol_type i2s_init_type::audio_protocol

audio protocol selection

Definition at line 272 of file at32f403_spi.h.

Referenced by codec_i2s_init(), i2s_config(), i2s_default_para_init(), and i2s_init().

◆ audio_sampling_freq

i2s_audio_sampling_freq_type i2s_init_type::audio_sampling_freq

audio frequency selection

Definition at line 273 of file at32f403_spi.h.

Referenced by codec_i2s_init(), i2s_config(), i2s_default_para_init(), and i2s_init().

◆ clock_polarity

i2s_clock_polarity_type i2s_init_type::clock_polarity

clock polarity selection

Definition at line 275 of file at32f403_spi.h.

Referenced by codec_i2s_init(), i2s_config(), i2s_default_para_init(), and i2s_init().

◆ data_channel_format

i2s_data_channel_format_type i2s_init_type::data_channel_format

data bit num and channel bit num selection

Definition at line 274 of file at32f403_spi.h.

Referenced by codec_i2s_init(), i2s_config(), i2s_default_para_init(), and i2s_init().

◆ mclk_output_enable

confirm_state i2s_init_type::mclk_output_enable

mclk_output selection

Definition at line 276 of file at32f403_spi.h.

Referenced by codec_i2s_init(), i2s_config(), i2s_default_para_init(), and i2s_init().

◆ operation_mode

i2s_operation_mode_type i2s_init_type::operation_mode

operation mode selection

Definition at line 271 of file at32f403_spi.h.

Referenced by codec_i2s_init(), i2s_config(), i2s_default_para_init(), and i2s_init().

The documentation for this struct was generated from the following file:
  • at32f403_spi.h


AT32F403 Firmwary Library: spi_type Struct Reference

Data Fields
spi_type Struct Reference
AT32F403_periph_driver » SPI » SPI_exported_types

type define spi register all More...

#include <at32f403_spi.h>

Data Fields

union {
__IO uint32_t ctrl1
struct {
__IO uint32_t clkpha: 1
__IO uint32_t clkpol: 1
__IO uint32_t msten: 1
__IO uint32_t mdiv_l: 3
__IO uint32_t spien: 1
__IO uint32_t ltf: 1
__IO uint32_t swcsil: 1
__IO uint32_t swcsen: 1
__IO uint32_t ora: 1
__IO uint32_t fbn: 1
__IO uint32_t ntc: 1
__IO uint32_t ccen: 1
__IO uint32_t slbtd: 1
__IO uint32_t slben: 1
__IO uint32_t reserved1: 16
} ctrl1_bit
};
spi ctrl1 register, offset:0x00 More...
union {
__IO uint32_t ctrl2
struct {
__IO uint32_t dmaren: 1
__IO uint32_t dmaten: 1
__IO uint32_t hwcsoe: 1
__IO uint32_t reserved1: 2
__IO uint32_t errie: 1
__IO uint32_t rdbfie: 1
__IO uint32_t tdbeie: 1
__IO uint32_t mdiv_h: 1
__IO uint32_t reserved2: 23
} ctrl2_bit
};
spi ctrl2 register, offset:0x04 More...
union {
__IO uint32_t sts
struct {
__IO uint32_t rdbf: 1
__IO uint32_t tdbe: 1
__IO uint32_t acs: 1
__IO uint32_t tuerr: 1
__IO uint32_t ccerr: 1
__IO uint32_t mmerr: 1
__IO uint32_t roerr: 1
__IO uint32_t bf: 1
__IO uint32_t reserved1: 24
} sts_bit
};
spi sts register, offset:0x08 More...
union {
__IO uint32_t dt
struct {
__IO uint32_t dt: 16
__IO uint32_t reserved1: 16
} dt_bit
};
spi dt register, offset:0x0C More...
union {
__IO uint32_t cpoly
struct {
__IO uint32_t cpoly: 16
__IO uint32_t reserved1: 16
} cpoly_bit
};
spi cpoly register, offset:0x10 More...
union {
__IO uint32_t rcrc
struct {
__IO uint32_t rcrc: 16
__IO uint32_t reserved1: 16
} rcrc_bit
};
spi rcrc register, offset:0x14 More...
union {
__IO uint32_t tcrc
struct {
__IO uint32_t tcrc: 16
__IO uint32_t reserved1: 16
} tcrc_bit
};
spi tcrc register, offset:0x18 More...
union {
__IO uint32_t i2sctrl
struct {
__IO uint32_t i2scbn: 1
__IO uint32_t i2sdbn: 2
__IO uint32_t i2sclkpol: 1
__IO uint32_t stdsel: 2
__IO uint32_t reserved1: 1
__IO uint32_t pcmfssel: 1
__IO uint32_t opersel: 2
__IO uint32_t i2sen: 1
__IO uint32_t i2smsel: 1
__IO uint32_t reserved2: 20
} i2sctrl_bit
};
spi i2sctrl register, offset:0x1C More...
union {
__IO uint32_t i2sclk
struct {
__IO uint32_t i2sdiv_l: 8
__IO uint32_t i2sodd: 1
__IO uint32_t i2smclkoe: 1
__IO uint32_t i2sdiv_h: 2
__IO uint32_t reserved1: 20
} i2sclk_bit
};
spi i2sclk register, offset:0x20 More...

Detailed Description

type define spi register all

Definition at line 282 of file at32f403_spi.h.

Field Documentation

◆

union { ... } spi_type::@601

spi ctrl1 register, offset:0x00

◆

union { ... } spi_type::@603

spi ctrl2 register, offset:0x04

◆

union { ... } spi_type::@605

spi sts register, offset:0x08

◆

union { ... } spi_type::@607

spi dt register, offset:0x0C

◆

union { ... } spi_type::@609

spi cpoly register, offset:0x10

◆

union { ... } spi_type::@611

spi rcrc register, offset:0x14

◆

union { ... } spi_type::@613

spi tcrc register, offset:0x18

◆

union { ... } spi_type::@615

spi i2sctrl register, offset:0x1C

◆

union { ... } spi_type::@617

spi i2sclk register, offset:0x20

◆ acs

__IO uint32_t spi_type::acs

Definition at line 341 of file at32f403_spi.h.

◆ bf

__IO uint32_t spi_type::bf

Definition at line 346 of file at32f403_spi.h.

◆ ccen

__IO uint32_t spi_type::ccen

Definition at line 304 of file at32f403_spi.h.

Referenced by spi_crc_enable().

◆ ccerr

__IO uint32_t spi_type::ccerr

Definition at line 343 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ clkpha

__IO uint32_t spi_type::clkpha

Definition at line 293 of file at32f403_spi.h.

Referenced by spi_init().

◆ clkpol

__IO uint32_t spi_type::clkpol

Definition at line 294 of file at32f403_spi.h.

Referenced by spi_init().

◆ cpoly

__IO uint32_t spi_type::cpoly

Definition at line 369 of file at32f403_spi.h.

Referenced by spi_crc_polynomial_get(), and spi_crc_polynomial_set().

◆

struct { ... } spi_type::cpoly_bit

Referenced by spi_crc_polynomial_get(), and spi_crc_polynomial_set().

◆ ctrl1

__IO uint32_t spi_type::ctrl1

Definition at line 290 of file at32f403_spi.h.

Referenced by spi_i2s_flag_clear().

◆

struct { ... } spi_type::ctrl1_bit

Referenced by spi_crc_enable(), spi_crc_next_transmit(), spi_enable(), spi_frame_bit_num_set(), spi_half_duplex_direction_set(), spi_init(), and spi_software_cs_internal_level_set().

◆ ctrl2

__IO uint32_t spi_type::ctrl2

Definition at line 316 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_enable().

◆

struct { ... } spi_type::ctrl2_bit

Referenced by spi_hardware_cs_output_enable(), spi_i2s_dma_receiver_enable(), spi_i2s_dma_transmitter_enable(), spi_i2s_interrupt_flag_get(), and spi_init().

◆ dmaren

__IO uint32_t spi_type::dmaren

Definition at line 319 of file at32f403_spi.h.

Referenced by spi_i2s_dma_receiver_enable().

◆ dmaten

__IO uint32_t spi_type::dmaten

Definition at line 320 of file at32f403_spi.h.

Referenced by spi_i2s_dma_transmitter_enable().

◆ dt

__IO uint32_t spi_type::dt

Definition at line 356 of file at32f403_spi.h.

Referenced by spi_i2s_data_receive(), spi_i2s_data_transmit(), and spi_i2s_flag_clear().

◆

struct { ... } spi_type::dt_bit

◆ errie

__IO uint32_t spi_type::errie

Definition at line 323 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ fbn

__IO uint32_t spi_type::fbn

Definition at line 302 of file at32f403_spi.h.

Referenced by spi_frame_bit_num_set(), and spi_init().

◆ hwcsoe

__IO uint32_t spi_type::hwcsoe

Definition at line 321 of file at32f403_spi.h.

Referenced by spi_hardware_cs_output_enable().

◆ i2scbn

__IO uint32_t spi_type::i2scbn

Definition at line 411 of file at32f403_spi.h.

Referenced by i2s_init().

◆ i2sclk

__IO uint32_t spi_type::i2sclk

Definition at line 429 of file at32f403_spi.h.

◆

struct { ... } spi_type::i2sclk_bit

Referenced by i2s_init().

◆ i2sclkpol

__IO uint32_t spi_type::i2sclkpol

Definition at line 413 of file at32f403_spi.h.

Referenced by i2s_init().

◆ i2sctrl

__IO uint32_t spi_type::i2sctrl

Definition at line 408 of file at32f403_spi.h.

◆

struct { ... } spi_type::i2sctrl_bit

Referenced by i2s_enable(), i2s_init(), and spi_init().

◆ i2sdbn

__IO uint32_t spi_type::i2sdbn

Definition at line 412 of file at32f403_spi.h.

Referenced by i2s_init().

◆ i2sdiv_h

__IO uint32_t spi_type::i2sdiv_h

Definition at line 435 of file at32f403_spi.h.

Referenced by i2s_init().

◆ i2sdiv_l

__IO uint32_t spi_type::i2sdiv_l

Definition at line 432 of file at32f403_spi.h.

Referenced by i2s_init().

◆ i2sen

__IO uint32_t spi_type::i2sen

Definition at line 418 of file at32f403_spi.h.

Referenced by i2s_enable().

◆ i2smclkoe

__IO uint32_t spi_type::i2smclkoe

Definition at line 434 of file at32f403_spi.h.

Referenced by i2s_init().

◆ i2smsel

__IO uint32_t spi_type::i2smsel

Definition at line 419 of file at32f403_spi.h.

Referenced by i2s_init(), and spi_init().

◆ i2sodd

__IO uint32_t spi_type::i2sodd

Definition at line 433 of file at32f403_spi.h.

Referenced by i2s_init().

◆ ltf

__IO uint32_t spi_type::ltf

Definition at line 298 of file at32f403_spi.h.

Referenced by spi_init().

◆ mdiv_h

__IO uint32_t spi_type::mdiv_h

Definition at line 326 of file at32f403_spi.h.

Referenced by spi_init().

◆ mdiv_l

__IO uint32_t spi_type::mdiv_l

Definition at line 296 of file at32f403_spi.h.

Referenced by spi_init().

◆ mmerr

__IO uint32_t spi_type::mmerr

Definition at line 344 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ msten

__IO uint32_t spi_type::msten

Definition at line 295 of file at32f403_spi.h.

Referenced by spi_init().

◆ ntc

__IO uint32_t spi_type::ntc

Definition at line 303 of file at32f403_spi.h.

Referenced by spi_crc_next_transmit().

◆ opersel

__IO uint32_t spi_type::opersel

Definition at line 417 of file at32f403_spi.h.

Referenced by i2s_init().

◆ ora

__IO uint32_t spi_type::ora

Definition at line 301 of file at32f403_spi.h.

Referenced by spi_init().

◆ pcmfssel

__IO uint32_t spi_type::pcmfssel

Definition at line 416 of file at32f403_spi.h.

Referenced by i2s_init().

◆ rcrc

__IO uint32_t spi_type::rcrc

Definition at line 382 of file at32f403_spi.h.

Referenced by spi_crc_value_get().

◆

struct { ... } spi_type::rcrc_bit

Referenced by spi_crc_value_get().

◆ rdbf

__IO uint32_t spi_type::rdbf

Definition at line 339 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ rdbfie

__IO uint32_t spi_type::rdbfie

Definition at line 324 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ reserved1

__IO uint32_t spi_type::reserved1

Definition at line 307 of file at32f403_spi.h.

◆ reserved2

__IO uint32_t spi_type::reserved2

Definition at line 327 of file at32f403_spi.h.

◆ roerr

__IO uint32_t spi_type::roerr

Definition at line 345 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ slben

__IO uint32_t spi_type::slben

Definition at line 306 of file at32f403_spi.h.

Referenced by spi_init().

◆ slbtd

__IO uint32_t spi_type::slbtd

Definition at line 305 of file at32f403_spi.h.

Referenced by spi_half_duplex_direction_set(), and spi_init().

◆ spien

__IO uint32_t spi_type::spien

Definition at line 297 of file at32f403_spi.h.

Referenced by spi_enable().

◆ stdsel

__IO uint32_t spi_type::stdsel

Definition at line 414 of file at32f403_spi.h.

Referenced by i2s_init().

◆ sts

__IO uint32_t spi_type::sts

Definition at line 336 of file at32f403_spi.h.

Referenced by spi_i2s_flag_clear(), and spi_i2s_flag_get().

◆

struct { ... } spi_type::sts_bit

Referenced by spi_i2s_interrupt_flag_get().

◆ swcsen

__IO uint32_t spi_type::swcsen

Definition at line 300 of file at32f403_spi.h.

Referenced by spi_init().

◆ swcsil

__IO uint32_t spi_type::swcsil

Definition at line 299 of file at32f403_spi.h.

Referenced by spi_init(), and spi_software_cs_internal_level_set().

◆ tcrc

__IO uint32_t spi_type::tcrc

Definition at line 395 of file at32f403_spi.h.

Referenced by spi_crc_value_get().

◆

struct { ... } spi_type::tcrc_bit

Referenced by spi_crc_value_get().

◆ tdbe

__IO uint32_t spi_type::tdbe

Definition at line 340 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ tdbeie

__IO uint32_t spi_type::tdbeie

Definition at line 325 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

◆ tuerr

__IO uint32_t spi_type::tuerr

Definition at line 342 of file at32f403_spi.h.

Referenced by spi_i2s_interrupt_flag_get().

The documentation for this struct was generated from the following file:
  • at32f403_spi.h


AT32F403 Firmwary Library: SPI_exported_functions

Functions
SPI_exported_functions
AT32F403_periph_driver » SPI

Functions

void | spi_i2s_reset (spi_type *spi_x)
spi reset by crm reset register More...
void | spi_default_para_init (spi_init_type *spi_init_struct)
spi init config with its default value. More...
void | spi_init (spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value. More...
void | spi_crc_next_transmit (spi_type *spi_x)
spi next transmit crc for the spi peripheral. More...
void | spi_crc_polynomial_set (spi_type *spi_x, uint16_t crc_poly)
set the crc polynomial value for the spi peripheral. More...
uint16_t | spi_crc_polynomial_get (spi_type *spi_x)
return the crc polynomial register value for the spi peripheral. More...
void | spi_crc_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware crc calculation for the spi peripheral. More...
uint16_t | spi_crc_value_get (spi_type *spi_x, spi_crc_direction_type crc_direction)
return the transmit or the receive crc value for the spi peripheral. More...
void | spi_hardware_cs_output_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware cs output for the spi peripheral. More...
void | spi_software_cs_internal_level_set (spi_type *spi_x, spi_software_cs_level_type level)
set the software cs internal level for the spi peripheral. More...
void | spi_frame_bit_num_set (spi_type *spi_x, spi_frame_bit_num_type bit_num)
set the data frame bit num for the spi peripheral. More...
void | spi_half_duplex_direction_set (spi_type *spi_x, spi_half_duplex_direction_type direction)
set the data transmission direction in single line bidirectiona half duplex mode of the spi peripheral. More...
void | spi_enable (spi_type *spi_x, confirm_state new_state)
enable or disable spi. More...
void | i2s_default_para_init (i2s_init_type *i2s_init_struct)
i2s init config with its default value. More...
void | i2s_init (spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value. More...
void | i2s_enable (spi_type *spi_x, confirm_state new_state)
enable or disable i2s. More...
void | spi_i2s_interrupt_enable (spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts. More...
void | spi_i2s_dma_transmitter_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode. More...
void | spi_i2s_dma_receiver_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode. More...
void | spi_i2s_data_transmit (spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit More...
uint16_t | spi_i2s_data_receive (spi_type *spi_x)
spi/i2s data receive More...
flag_status | spi_i2s_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral. More...
flag_status | spi_i2s_interrupt_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get interrupt flag of the specified spi/i2s peripheral. More...
void | spi_i2s_flag_clear (spi_type *spi_x, uint32_t spi_i2s_flag)
clear flag of the specified spi/i2s peripheral. More...

Detailed Description

Function Documentation

◆ i2s_default_para_init()

void i2s_default_para_init ( i2s_init_type * i2s_init_struct )

i2s init config with its default value.

Parameters
i2s_init_struct : pointer to a i2s_init_type structure which will be initialized.
Return values
none

Definition at line 308 of file at32f403_spi.c.

Referenced by codec_i2s_init(), and i2s_config().

◆ i2s_enable()

void i2s_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable i2s.

Parameters
spi_x | select the i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of i2s. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 455 of file at32f403_spi.c.

Referenced by codec_i2s_init(), codec_i2s_reset(), i2s_config(), and main().

◆ i2s_init()

void i2s_init | ( | spi_type * | spi_x,
 |  | i2s_init_type * | i2s_init_struct
 | ) |  |

i2s init config with its setting value.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
i2s_init_struct | : pointer to a i2s_init_type structure which will be initialized.
Return values
none

Definition at line 326 of file at32f403_spi.c.

Referenced by codec_i2s_init(), and i2s_config().

◆ spi_crc_enable()

void spi_crc_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the hardware crc calculation for the spi peripheral.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of crc calculation. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 201 of file at32f403_spi.c.

Referenced by spi_config().

◆ spi_crc_next_transmit()

void spi_crc_next_transmit ( spi_type * spi_x )

spi next transmit crc for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
none

Definition at line 162 of file at32f403_spi.c.

Referenced by main().

◆ spi_crc_polynomial_get()

uint16_t spi_crc_polynomial_get ( spi_type * spi_x )

return the crc polynomial register value for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
the select crc polynomial register value

Definition at line 187 of file at32f403_spi.c.

◆ spi_crc_polynomial_set()

void spi_crc_polynomial_set | ( | spi_type * | spi_x,
 |  | uint16_t | crc_poly
 | ) |  |

set the crc polynomial value for the spi peripheral.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
crc_poly | crc polynomial value.
Return values
none

Definition at line 175 of file at32f403_spi.c.

Referenced by spi_config().

◆ spi_crc_value_get()

uint16_t spi_crc_value_get | ( | spi_type * | spi_x,
 |  | spi_crc_direction_type | crc_direction
 | ) |  |

return the transmit or the receive crc value for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
crc_direction select transmit or receive crc value to be read
  • SPI_CRC_RX
  • SPI_CRC_TX
Return values
the select crc register value

Definition at line 216 of file at32f403_spi.c.

◆ spi_default_para_init()

void spi_default_para_init ( spi_init_type * spi_init_struct )

spi init config with its default value.

Parameters
spi_init_struct : pointer to a spi_init_type structure which will be initialized.
Return values
none

Definition at line 81 of file at32f403_spi.c.

Referenced by spi_config(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ spi_enable()

void spi_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable spi.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of spi. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 297 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), spi_config(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ spi_frame_bit_num_set()

void spi_frame_bit_num_set | ( | spi_type * | spi_x,
 |  | spi_frame_bit_num_type | bit_num
 | ) |  |

set the data frame bit num for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
bit_num set the data frame size
  • SPI_FRAME_8BIT
  • SPI_FRAME_16BIT
Return values
none

Definition at line 267 of file at32f403_spi.c.

◆ spi_half_duplex_direction_set()

void spi_half_duplex_direction_set | ( | spi_type * | spi_x,
 |  | spi_half_duplex_direction_type | direction
 | ) |  |

set the data transmission direction in single line bidirectiona half duplex mode of the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
direction data transfer direction this parameter can be one of the following values:
  • SPI_HALF_DUPLEX_DIRECTION_RX
  • SPI_HALF_DUPLEX_DIRECTION_TX
Return values
none

Definition at line 283 of file at32f403_spi.c.

◆ spi_hardware_cs_output_enable()

void spi_hardware_cs_output_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the hardware cs output for the spi peripheral.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of spi master cs output. this parameter can be: TRUE or FALSE. note:the bit only use in spi master mode
Return values
none

Definition at line 234 of file at32f403_spi.c.

Referenced by spi_config().

◆ spi_i2s_data_receive()

uint16_t spi_i2s_data_receive ( spi_type * spi_x )

spi/i2s data receive

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
the received data value

Definition at line 536 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), SPI2_IRQHandler(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), and touch_read_1byte().

◆ spi_i2s_data_transmit()

void spi_i2s_data_transmit | ( | spi_type * | spi_x,
 |  | uint16_t | tx_data
 | ) |  |

spi/i2s data transmit

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
tx_data the data to be transmit. this parameter can be:
  • (0x0000~0xFFFF)
Return values
none

Definition at line 524 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), SPI2_IRQHandler(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), touch_read_1byte(), and touch_write_1byte().

◆ spi_i2s_dma_receiver_enable()

void spi_i2s_dma_receiver_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the spi/i2s dma receiver mode.

Parameters
spi_x | select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of the dma request. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 509 of file at32f403_spi.c.

Referenced by codec_i2s_init(), i2s_config(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ spi_i2s_dma_transmitter_enable()

void spi_i2s_dma_transmitter_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the spi/i2s dma transmitter mode.

Parameters
spi_x | select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of the dma request. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 495 of file at32f403_spi.c.

Referenced by codec_i2s_init(), main(), spi_byte_write(), spi_bytes_read(), and spi_bytes_write().

◆ spi_i2s_flag_clear()

void spi_i2s_flag_clear | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_flag
 | ) |  |

clear flag of the specified spi/i2s peripheral.

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_flag select the spi/i2s flag this parameter can be one of the following values:
  • SPI_CCERR_FLAG
  • SPI_I2S_RDBF_FLAG
  • I2S_TUERR_FLAG
  • SPI_MMERR_FLAG
  • SPI_I2S_ROERR_FLAG
Note
SPI_I2S_TDBE_FLAG this flag is cleared when the tx buffer already contain data to be transmit. I2S_ACS_FLAG this flag cann't cleared by software,the flag indicate the channel side(not use in pcm standard mode). SPI_I2S_BF_FLAG this flag cann't cleared by software, it's set and cleared by hardware.
Return values
none

< spi crc calculation error flag

< spi crc calculation error flag

< spi or i2s receive data buffer full flag

< i2s transmitter underload error flag

< spi master mode error flag

< spi or i2s receiver overflow error flag

Definition at line 653 of file at32f403_spi.c.

Referenced by main().

◆ spi_i2s_flag_get()

flag_status spi_i2s_flag_get | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_flag
 | ) |  |

get flag of the specified spi/i2s peripheral.

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_flag select the spi/i2s flag this parameter can be one of the following values:
  • SPI_I2S_RDBF_FLAG
  • SPI_I2S_TDBE_FLAG
  • I2S_ACS_FLAG (this flag only use in i2s mode)
  • I2S_TUERR_FLAG (this flag only use in i2s mode)
  • SPI_CCERR_FLAG (this flag only use in spi mode)
  • SPI_MMERR_FLAG (this flag only use in spi mode)
  • SPI_I2S_ROERR_FLAG
  • SPI_I2S_BF_FLAG
Return values
the new state of spi/i2s flag

Definition at line 558 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), SPI2_IRQHandler(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), touch_read_1byte(), and touch_write_1byte().

◆ spi_i2s_interrupt_enable()

void spi_i2s_interrupt_enable | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified spi/i2s interrupts.

Parameters
spi_x | select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_int specifies the spi/i2s interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • SPI_I2S_ERROR_INT
  • SPI_I2S_RDBF_INT
  • SPI_I2S_TDBE_INT
new_state | new state of the specified spi/i2s interrupts. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 474 of file at32f403_spi.c.

Referenced by i2s_config(), main(), SPI1_IRQHandler(), SPI2_IRQHandler(), and spi_config().

◆ spi_i2s_interrupt_flag_get()

flag_status spi_i2s_interrupt_flag_get | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_flag
 | ) |  |

get interrupt flag of the specified spi/i2s peripheral.

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_flag select the spi/i2s flag this parameter can be one of the following values:
  • SPI_I2S_RDBF_FLAG
  • SPI_I2S_TDBE_FLAG
  • I2S_TUERR_FLAG (this flag only use in i2s mode)
  • SPI_CCERR_FLAG (this flag only use in spi mode)
  • SPI_MMERR_FLAG (this flag only use in spi mode)
  • SPI_I2S_ROERR_FLAG
Return values
the new state of spi/i2s flag

< spi or i2s receive data buffer full flag

< spi or i2s transmit data buffer empty flag

< i2s transmitter underload error flag

< spi crc calculation error flag

< spi master mode error flag

< spi or i2s receiver overflow error flag

Definition at line 587 of file at32f403_spi.c.

◆ spi_i2s_reset()

void spi_i2s_reset ( spi_type * spi_x )

spi reset by crm reset register

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
none

Definition at line 49 of file at32f403_spi.c.

Referenced by codec_i2s_init(), i2s_config(), and spi_config().

◆ spi_init()

void spi_init | ( | spi_type * | spi_x,
 |  | spi_init_type * | spi_init_struct
 | ) |  |

spi init config with its setting value.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_init_struct | : pointer to a spi_init_type structure which will be initialized.
Return values
none

Definition at line 101 of file at32f403_spi.c.

Referenced by main(), spi_config(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ spi_software_cs_internal_level_set()

void spi_software_cs_internal_level_set | ( | spi_type * | spi_x,
 |  | spi_software_cs_level_type | level
 | ) |  |

set the software cs internal level for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
level set the state of spi cs level. this parameter can be one of the following values:
  • SPI_SWCS_INTERNAL_LEVEL_LOW
  • SPI_SWCS_INTERNAL_LEVEL_HIGHT note:the bit only use when swcsen bit is set. note:when use this bit,io operation on the cs pin are invalid.
Return values
none

Definition at line 252 of file at32f403_spi.c.


AT32F403 Firmwary Library: SPI_private_functions

Functions
SPI_private_functions
AT32F403_periph_driver » SPI

Functions

void | spi_i2s_reset (spi_type *spi_x)
spi reset by crm reset register More...
void | spi_default_para_init (spi_init_type *spi_init_struct)
spi init config with its default value. More...
void | spi_init (spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value. More...
void | spi_crc_next_transmit (spi_type *spi_x)
spi next transmit crc for the spi peripheral. More...
void | spi_crc_polynomial_set (spi_type *spi_x, uint16_t crc_poly)
set the crc polynomial value for the spi peripheral. More...
uint16_t | spi_crc_polynomial_get (spi_type *spi_x)
return the crc polynomial register value for the spi peripheral. More...
void | spi_crc_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware crc calculation for the spi peripheral. More...
uint16_t | spi_crc_value_get (spi_type *spi_x, spi_crc_direction_type crc_direction)
return the transmit or the receive crc value for the spi peripheral. More...
void | spi_hardware_cs_output_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware cs output for the spi peripheral. More...
void | spi_software_cs_internal_level_set (spi_type *spi_x, spi_software_cs_level_type level)
set the software cs internal level for the spi peripheral. More...
void | spi_frame_bit_num_set (spi_type *spi_x, spi_frame_bit_num_type bit_num)
set the data frame bit num for the spi peripheral. More...
void | spi_half_duplex_direction_set (spi_type *spi_x, spi_half_duplex_direction_type direction)
set the data transmission direction in single line bidirectiona half duplex mode of the spi peripheral. More...
void | spi_enable (spi_type *spi_x, confirm_state new_state)
enable or disable spi. More...
void | i2s_default_para_init (i2s_init_type *i2s_init_struct)
i2s init config with its default value. More...
void | i2s_init (spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value. More...
void | i2s_enable (spi_type *spi_x, confirm_state new_state)
enable or disable i2s. More...
void | spi_i2s_interrupt_enable (spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts. More...
void | spi_i2s_dma_transmitter_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode. More...
void | spi_i2s_dma_receiver_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode. More...
void | spi_i2s_data_transmit (spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit More...
uint16_t | spi_i2s_data_receive (spi_type *spi_x)
spi/i2s data receive More...
flag_status | spi_i2s_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral. More...
flag_status | spi_i2s_interrupt_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get interrupt flag of the specified spi/i2s peripheral. More...
void | spi_i2s_flag_clear (spi_type *spi_x, uint32_t spi_i2s_flag)
clear flag of the specified spi/i2s peripheral. More...

Detailed Description

Function Documentation

◆ i2s_default_para_init()

void i2s_default_para_init ( i2s_init_type * i2s_init_struct )

i2s init config with its default value.

Parameters
i2s_init_struct : pointer to a i2s_init_type structure which will be initialized.
Return values
none

Definition at line 308 of file at32f403_spi.c.

Referenced by codec_i2s_init(), and i2s_config().

◆ i2s_enable()

void i2s_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable i2s.

Parameters
spi_x | select the i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of i2s. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 455 of file at32f403_spi.c.

Referenced by codec_i2s_init(), codec_i2s_reset(), i2s_config(), and main().

◆ i2s_init()

void i2s_init | ( | spi_type * | spi_x,
 |  | i2s_init_type * | i2s_init_struct
 | ) |  |

i2s init config with its setting value.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
i2s_init_struct | : pointer to a i2s_init_type structure which will be initialized.
Return values
none

Definition at line 326 of file at32f403_spi.c.

Referenced by codec_i2s_init(), and i2s_config().

◆ spi_crc_enable()

void spi_crc_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the hardware crc calculation for the spi peripheral.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of crc calculation. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 201 of file at32f403_spi.c.

Referenced by spi_config().

◆ spi_crc_next_transmit()

void spi_crc_next_transmit ( spi_type * spi_x )

spi next transmit crc for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
none

Definition at line 162 of file at32f403_spi.c.

Referenced by main().

◆ spi_crc_polynomial_get()

uint16_t spi_crc_polynomial_get ( spi_type * spi_x )

return the crc polynomial register value for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
the select crc polynomial register value

Definition at line 187 of file at32f403_spi.c.

◆ spi_crc_polynomial_set()

void spi_crc_polynomial_set | ( | spi_type * | spi_x,
 |  | uint16_t | crc_poly
 | ) |  |

set the crc polynomial value for the spi peripheral.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
crc_poly | crc polynomial value.
Return values
none

Definition at line 175 of file at32f403_spi.c.

Referenced by spi_config().

◆ spi_crc_value_get()

uint16_t spi_crc_value_get | ( | spi_type * | spi_x,
 |  | spi_crc_direction_type | crc_direction
 | ) |  |

return the transmit or the receive crc value for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
crc_direction select transmit or receive crc value to be read
  • SPI_CRC_RX
  • SPI_CRC_TX
Return values
the select crc register value

Definition at line 216 of file at32f403_spi.c.

◆ spi_default_para_init()

void spi_default_para_init ( spi_init_type * spi_init_struct )

spi init config with its default value.

Parameters
spi_init_struct : pointer to a spi_init_type structure which will be initialized.
Return values
none

Definition at line 81 of file at32f403_spi.c.

Referenced by spi_config(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ spi_enable()

void spi_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable spi.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of spi. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 297 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), spi_config(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ spi_frame_bit_num_set()

void spi_frame_bit_num_set | ( | spi_type * | spi_x,
 |  | spi_frame_bit_num_type | bit_num
 | ) |  |

set the data frame bit num for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
bit_num set the data frame size
  • SPI_FRAME_8BIT
  • SPI_FRAME_16BIT
Return values
none

Definition at line 267 of file at32f403_spi.c.

◆ spi_half_duplex_direction_set()

void spi_half_duplex_direction_set | ( | spi_type * | spi_x,
 |  | spi_half_duplex_direction_type | direction
 | ) |  |

set the data transmission direction in single line bidirectiona half duplex mode of the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
direction data transfer direction this parameter can be one of the following values:
  • SPI_HALF_DUPLEX_DIRECTION_RX
  • SPI_HALF_DUPLEX_DIRECTION_TX
Return values
none

Definition at line 283 of file at32f403_spi.c.

◆ spi_hardware_cs_output_enable()

void spi_hardware_cs_output_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the hardware cs output for the spi peripheral.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of spi master cs output. this parameter can be: TRUE or FALSE. note:the bit only use in spi master mode
Return values
none

Definition at line 234 of file at32f403_spi.c.

Referenced by spi_config().

◆ spi_i2s_data_receive()

uint16_t spi_i2s_data_receive ( spi_type * spi_x )

spi/i2s data receive

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
the received data value

Definition at line 536 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), SPI2_IRQHandler(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), and touch_read_1byte().

◆ spi_i2s_data_transmit()

void spi_i2s_data_transmit | ( | spi_type * | spi_x,
 |  | uint16_t | tx_data
 | ) |  |

spi/i2s data transmit

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
tx_data the data to be transmit. this parameter can be:
  • (0x0000~0xFFFF)
Return values
none

Definition at line 524 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), SPI2_IRQHandler(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), touch_read_1byte(), and touch_write_1byte().

◆ spi_i2s_dma_receiver_enable()

void spi_i2s_dma_receiver_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the spi/i2s dma receiver mode.

Parameters
spi_x | select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of the dma request. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 509 of file at32f403_spi.c.

Referenced by codec_i2s_init(), i2s_config(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ spi_i2s_dma_transmitter_enable()

void spi_i2s_dma_transmitter_enable | ( | spi_type * | spi_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the spi/i2s dma transmitter mode.

Parameters
spi_x | select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
new_state | new state of the dma request. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 495 of file at32f403_spi.c.

Referenced by codec_i2s_init(), main(), spi_byte_write(), spi_bytes_read(), and spi_bytes_write().

◆ spi_i2s_flag_clear()

void spi_i2s_flag_clear | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_flag
 | ) |  |

clear flag of the specified spi/i2s peripheral.

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_flag select the spi/i2s flag this parameter can be one of the following values:
  • SPI_CCERR_FLAG
  • SPI_I2S_RDBF_FLAG
  • I2S_TUERR_FLAG
  • SPI_MMERR_FLAG
  • SPI_I2S_ROERR_FLAG
Note
SPI_I2S_TDBE_FLAG this flag is cleared when the tx buffer already contain data to be transmit. I2S_ACS_FLAG this flag cann't cleared by software,the flag indicate the channel side(not use in pcm standard mode). SPI_I2S_BF_FLAG this flag cann't cleared by software, it's set and cleared by hardware.
Return values
none

< spi crc calculation error flag

< spi crc calculation error flag

< spi or i2s receive data buffer full flag

< i2s transmitter underload error flag

< spi master mode error flag

< spi or i2s receiver overflow error flag

Definition at line 653 of file at32f403_spi.c.

Referenced by main().

◆ spi_i2s_flag_get()

flag_status spi_i2s_flag_get | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_flag
 | ) |  |

get flag of the specified spi/i2s peripheral.

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_flag select the spi/i2s flag this parameter can be one of the following values:
  • SPI_I2S_RDBF_FLAG
  • SPI_I2S_TDBE_FLAG
  • I2S_ACS_FLAG (this flag only use in i2s mode)
  • I2S_TUERR_FLAG (this flag only use in i2s mode)
  • SPI_CCERR_FLAG (this flag only use in spi mode)
  • SPI_MMERR_FLAG (this flag only use in spi mode)
  • SPI_I2S_ROERR_FLAG
  • SPI_I2S_BF_FLAG
Return values
the new state of spi/i2s flag

Definition at line 558 of file at32f403_spi.c.

Referenced by main(), SPI1_IRQHandler(), SPI2_IRQHandler(), spi_byte_write(), spi_bytes_read(), spi_bytes_write(), touch_read_1byte(), and touch_write_1byte().

◆ spi_i2s_interrupt_enable()

void spi_i2s_interrupt_enable | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified spi/i2s interrupts.

Parameters
spi_x | select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_int specifies the spi/i2s interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • SPI_I2S_ERROR_INT
  • SPI_I2S_RDBF_INT
  • SPI_I2S_TDBE_INT
new_state | new state of the specified spi/i2s interrupts. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 474 of file at32f403_spi.c.

Referenced by i2s_config(), main(), SPI1_IRQHandler(), SPI2_IRQHandler(), and spi_config().

◆ spi_i2s_interrupt_flag_get()

flag_status spi_i2s_interrupt_flag_get | ( | spi_type * | spi_x,
 |  | uint32_t | spi_i2s_flag
 | ) |  |

get interrupt flag of the specified spi/i2s peripheral.

Parameters
spi_x select the spi/i2s peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_i2s_flag select the spi/i2s flag this parameter can be one of the following values:
  • SPI_I2S_RDBF_FLAG
  • SPI_I2S_TDBE_FLAG
  • I2S_TUERR_FLAG (this flag only use in i2s mode)
  • SPI_CCERR_FLAG (this flag only use in spi mode)
  • SPI_MMERR_FLAG (this flag only use in spi mode)
  • SPI_I2S_ROERR_FLAG
Return values
the new state of spi/i2s flag

< spi or i2s receive data buffer full flag

< spi or i2s transmit data buffer empty flag

< i2s transmitter underload error flag

< spi crc calculation error flag

< spi master mode error flag

< spi or i2s receiver overflow error flag

Definition at line 587 of file at32f403_spi.c.

◆ spi_i2s_reset()

void spi_i2s_reset ( spi_type * spi_x )

spi reset by crm reset register

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
Return values
none

Definition at line 49 of file at32f403_spi.c.

Referenced by codec_i2s_init(), i2s_config(), and spi_config().

◆ spi_init()

void spi_init | ( | spi_type * | spi_x,
 |  | spi_init_type * | spi_init_struct
 | ) |  |

spi init config with its setting value.

Parameters
spi_x | select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
spi_init_struct | : pointer to a spi_init_type structure which will be initialized.
Return values
none

Definition at line 101 of file at32f403_spi.c.

Referenced by main(), spi_config(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ spi_software_cs_internal_level_set()

void spi_software_cs_internal_level_set | ( | spi_type * | spi_x,
 |  | spi_software_cs_level_type | level
 | ) |  |

set the software cs internal level for the spi peripheral.

Parameters
spi_x select the spi peripheral. this parameter can be one of the following values: SPI1, SPI2, SPI3 ,SPI4
level set the state of spi cs level. this parameter can be one of the following values:
  • SPI_SWCS_INTERNAL_LEVEL_LOW
  • SPI_SWCS_INTERNAL_LEVEL_HIGHT note:the bit only use when swcsen bit is set. note:when use this bit,io operation on the cs pin are invalid.
Return values
none

Definition at line 252 of file at32f403_spi.c.


AT32F403 Firmwary Library: TMR

Modules | Macros
TMR
AT32F403_periph_driver

TMR driver modules. More...

Modules

TMR_flags_definition
tmr flag
TMR_interrupt_select_type_definition
tmr interrupt select type
TMR_exported_types
TMR_exported_functions
TMR_private_functions

Macros

#define | TMR1 ((tmr_type *) TMR1_BASE)
#define | TMR2 ((tmr_type *) TMR2_BASE)
#define | TMR3 ((tmr_type *) TMR3_BASE)
#define | TMR4 ((tmr_type *) TMR4_BASE)
#define | TMR5 ((tmr_type *) TMR5_BASE)
#define | TMR6 ((tmr_type *) TMR6_BASE)
#define | TMR7 ((tmr_type *) TMR7_BASE)
#define | TMR8 ((tmr_type *) TMR8_BASE)
#define | TMR9 ((tmr_type *) TMR9_BASE)
#define | TMR10 ((tmr_type *) TMR10_BASE)
#define | TMR11 ((tmr_type *) TMR11_BASE)
#define | TMR12 ((tmr_type *) TMR12_BASE)
#define | TMR13 ((tmr_type *) TMR13_BASE)
#define | TMR14 ((tmr_type *) TMR14_BASE)
#define | TMR15 ((tmr_type *) TMR15_BASE)

Detailed Description

TMR driver modules.

Macro Definition Documentation

◆ TMR1

#define TMR1 ((tmr_type *) TMR1_BASE)

Definition at line 830 of file at32f403_tmr.h.

◆ TMR10

#define TMR10 ((tmr_type *) TMR10_BASE)

Definition at line 839 of file at32f403_tmr.h.

◆ TMR11

#define TMR11 ((tmr_type *) TMR11_BASE)

Definition at line 840 of file at32f403_tmr.h.

◆ TMR12

#define TMR12 ((tmr_type *) TMR12_BASE)

Definition at line 841 of file at32f403_tmr.h.

◆ TMR13

#define TMR13 ((tmr_type *) TMR13_BASE)

Definition at line 842 of file at32f403_tmr.h.

◆ TMR14

#define TMR14 ((tmr_type *) TMR14_BASE)

Definition at line 843 of file at32f403_tmr.h.

◆ TMR15

#define TMR15 ((tmr_type *) TMR15_BASE)

Definition at line 844 of file at32f403_tmr.h.

◆ TMR2

#define TMR2 ((tmr_type *) TMR2_BASE)

Definition at line 831 of file at32f403_tmr.h.

◆ TMR3

#define TMR3 ((tmr_type *) TMR3_BASE)

Definition at line 832 of file at32f403_tmr.h.

◆ TMR4

#define TMR4 ((tmr_type *) TMR4_BASE)

Definition at line 833 of file at32f403_tmr.h.

◆ TMR5

#define TMR5 ((tmr_type *) TMR5_BASE)

Definition at line 834 of file at32f403_tmr.h.

◆ TMR6

#define TMR6 ((tmr_type *) TMR6_BASE)

Definition at line 835 of file at32f403_tmr.h.

◆ TMR7

#define TMR7 ((tmr_type *) TMR7_BASE)

Definition at line 836 of file at32f403_tmr.h.

◆ TMR8

#define TMR8 ((tmr_type *) TMR8_BASE)

Definition at line 837 of file at32f403_tmr.h.

◆ TMR9

#define TMR9 ((tmr_type *) TMR9_BASE)

Definition at line 838 of file at32f403_tmr.h.


AT32F403 Firmwary Library: TMR_flags_definition

Macros
TMR_flags_definition
AT32F403_periph_driver » TMR

tmr flag More...

Macros

#define | TMR_OVF_FLAG ((uint32_t)0x000001)
#define | TMR_C1_FLAG ((uint32_t)0x000002)
#define | TMR_C2_FLAG ((uint32_t)0x000004)
#define | TMR_C3_FLAG ((uint32_t)0x000008)
#define | TMR_C4_FLAG ((uint32_t)0x000010)
#define | TMR_HALL_FLAG ((uint32_t)0x000020)
#define | TMR_TRIGGER_FLAG ((uint32_t)0x000040)
#define | TMR_BRK_FLAG ((uint32_t)0x000080)
#define | TMR_C1_RECAPTURE_FLAG ((uint32_t)0x000200)
#define | TMR_C2_RECAPTURE_FLAG ((uint32_t)0x000400)
#define | TMR_C3_RECAPTURE_FLAG ((uint32_t)0x000800)
#define | TMR_C4_RECAPTURE_FLAG ((uint32_t)0x001000)

Detailed Description

tmr flag

Macro Definition Documentation

◆ TMR_BRK_FLAG

#define TMR_BRK_FLAG ((uint32_t)0x000080)

tmr flag brake

Definition at line 57 of file at32f403_tmr.h.

◆ TMR_C1_FLAG

#define TMR_C1_FLAG ((uint32_t)0x000002)

tmr flag channel 1

Definition at line 51 of file at32f403_tmr.h.

◆ TMR_C1_RECAPTURE_FLAG

#define TMR_C1_RECAPTURE_FLAG ((uint32_t)0x000200)

tmr flag channel 1 recapture

Definition at line 58 of file at32f403_tmr.h.

◆ TMR_C2_FLAG

#define TMR_C2_FLAG ((uint32_t)0x000004)

tmr flag channel 2

Definition at line 52 of file at32f403_tmr.h.

◆ TMR_C2_RECAPTURE_FLAG

#define TMR_C2_RECAPTURE_FLAG ((uint32_t)0x000400)

tmr flag channel 2 recapture

Definition at line 59 of file at32f403_tmr.h.

◆ TMR_C3_FLAG

#define TMR_C3_FLAG ((uint32_t)0x000008)

tmr flag channel 3

Definition at line 53 of file at32f403_tmr.h.

◆ TMR_C3_RECAPTURE_FLAG

#define TMR_C3_RECAPTURE_FLAG ((uint32_t)0x000800)

tmr flag channel 3 recapture

Definition at line 60 of file at32f403_tmr.h.

◆ TMR_C4_FLAG

#define TMR_C4_FLAG ((uint32_t)0x000010)

tmr flag channel 4

Definition at line 54 of file at32f403_tmr.h.

◆ TMR_C4_RECAPTURE_FLAG

#define TMR_C4_RECAPTURE_FLAG ((uint32_t)0x001000)

tmr flag channel 4 recapture

Definition at line 61 of file at32f403_tmr.h.

◆ TMR_HALL_FLAG

#define TMR_HALL_FLAG ((uint32_t)0x000020)

tmr flag hall

Definition at line 55 of file at32f403_tmr.h.

◆ TMR_OVF_FLAG

#define TMR_OVF_FLAG ((uint32_t)0x000001)

tmr flag overflow

Definition at line 50 of file at32f403_tmr.h.

◆ TMR_TRIGGER_FLAG

#define TMR_TRIGGER_FLAG ((uint32_t)0x000040)

tmr flag trigger

Definition at line 56 of file at32f403_tmr.h.


AT32F403 Firmwary Library: TMR_interrupt_select_type_definition

Macros
TMR_interrupt_select_type_definition
AT32F403_periph_driver » TMR

tmr interrupt select type More...

Macros

#define | TMR_OVF_INT ((uint32_t)0x000001)
#define | TMR_C1_INT ((uint32_t)0x000002)
#define | TMR_C2_INT ((uint32_t)0x000004)
#define | TMR_C3_INT ((uint32_t)0x000008)
#define | TMR_C4_INT ((uint32_t)0x000010)
#define | TMR_HALL_INT ((uint32_t)0x000020)
#define | TMR_TRIGGER_INT ((uint32_t)0x000040)
#define | TMR_BRK_INT ((uint32_t)0x000080)

Detailed Description

tmr interrupt select type

Macro Definition Documentation

◆ TMR_BRK_INT

#define TMR_BRK_INT ((uint32_t)0x000080)

tmr interrupt brake

Definition at line 79 of file at32f403_tmr.h.

◆ TMR_C1_INT

#define TMR_C1_INT ((uint32_t)0x000002)

tmr interrupt channel 1

Definition at line 73 of file at32f403_tmr.h.

◆ TMR_C2_INT

#define TMR_C2_INT ((uint32_t)0x000004)

tmr interrupt channel 2

Definition at line 74 of file at32f403_tmr.h.

◆ TMR_C3_INT

#define TMR_C3_INT ((uint32_t)0x000008)

tmr interrupt channel 3

Definition at line 75 of file at32f403_tmr.h.

◆ TMR_C4_INT

#define TMR_C4_INT ((uint32_t)0x000010)

tmr interrupt channel 4

Definition at line 76 of file at32f403_tmr.h.

◆ TMR_HALL_INT

#define TMR_HALL_INT ((uint32_t)0x000020)

tmr interrupt hall

Definition at line 77 of file at32f403_tmr.h.

◆ TMR_OVF_INT

#define TMR_OVF_INT ((uint32_t)0x000001)

tmr interrupt overflow

Definition at line 72 of file at32f403_tmr.h.

◆ TMR_TRIGGER_INT

#define TMR_TRIGGER_INT ((uint32_t)0x000040)

tmr interrupt trigger

Definition at line 78 of file at32f403_tmr.h.


AT32F403 Firmwary Library: TMR_exported_types

Data Structures | Enumerations
TMR_exported_types
AT32F403_periph_driver » TMR

Data Structures

struct | tmr_output_config_type
tmr output config type More...
struct | tmr_input_config_type
tmr input capture config type More...
struct | tmr_brkdt_config_type
tmr brkdt config type More...
struct | tmr_type
type define tmr register all More...

Enumerations

enum | tmr_clock_division_type { TMR_CLOCK_DIV1 = 0x00 , TMR_CLOCK_DIV2 = 0x01 , TMR_CLOCK_DIV4 = 0x02 }
tmr clock division type More...
enum tmr_count_mode_type {
TMR_COUNT_UP = 0x00 , TMR_COUNT_DOWN = 0x01 , TMR_COUNT_TWO_WAY_1 = 0x02 , TMR_COUNT_TWO_WAY_2 = 0x04 ,
TMR_COUNT_TWO_WAY_3 = 0x06
}
tmr counter mode type More...
enum tmr_primary_select_type {
TMR_PRIMARY_SEL_RESET = 0x00 , TMR_PRIMARY_SEL_ENABLE = 0x01 , TMR_PRIMARY_SEL_OVERFLOW = 0x02 , TMR_PRIMARY_SEL_COMPARE = 0x03 ,
TMR_PRIMARY_SEL_C1ORAW = 0x04 , TMR_PRIMARY_SEL_C2ORAW = 0x05 , TMR_PRIMARY_SEL_C3ORAW = 0x06 , TMR_PRIMARY_SEL_C4ORAW = 0x07
}
tmr primary mode select type More...
enum sub_tmr_input_sel_type {
TMR_SUB_INPUT_SEL_IS0 = 0x00 , TMR_SUB_INPUT_SEL_IS1 = 0x01 , TMR_SUB_INPUT_SEL_IS2 = 0x02 , TMR_SUB_INPUT_SEL_IS3 = 0x03 ,
TMR_SUB_INPUT_SEL_C1INC = 0x04 , TMR_SUB_INPUT_SEL_C1DF1 = 0x05 , TMR_SUB_INPUT_SEL_C2DF2 = 0x06 , TMR_SUB_INPUT_SEL_EXTIN = 0x07
}
tmr subordinate mode input select type More...
enum tmr_sub_mode_select_type {
TMR_SUB_MODE_DIABLE = 0x00 , TMR_SUB_ENCODER_MODE_A = 0x01 , TMR_SUB_ENCODER_MODE_B = 0x02 , TMR_SUB_ENCODER_MODE_C = 0x03 ,
TMR_SUB_RESET_MODE = 0x04 , TMR_SUB_HANG_MODE = 0x05 , TMR_SUB_TRIGGER_MODE = 0x06 , TMR_SUB_EXTERNAL_CLOCK_MODE_A = 0x07
}
tmr subordinate mode select type More...
enum | tmr_encoder_mode_type { TMR_ENCODER_MODE_A = TMR_SUB_ENCODER_MODE_A , TMR_ENCODER_MODE_B = TMR_SUB_ENCODER_MODE_B , TMR_ENCODER_MODE_C = TMR_SUB_ENCODER_MODE_C }
tmr encoder mode type More...
enum tmr_output_control_mode_type {
TMR_OUTPUT_CONTROL_OFF = 0x00 , TMR_OUTPUT_CONTROL_HIGH = 0x01 , TMR_OUTPUT_CONTROL_LOW = 0x02 , TMR_OUTPUT_CONTROL_SWITCH = 0x03 ,
TMR_OUTPUT_CONTROL_FORCE_LOW = 0x04 , TMR_OUTPUT_CONTROL_FORCE_HIGH = 0x05 , TMR_OUTPUT_CONTROL_PWM_MODE_A = 0x06 , TMR_OUTPUT_CONTROL_PWM_MODE_B = 0x07
}
tmr output control mode type More...
enum | tmr_force_output_type { TMR_FORCE_OUTPUT_HIGH = TMR_OUTPUT_CONTROL_FORCE_HIGH , TMR_FORCE_OUTPUT_LOW = TMR_OUTPUT_CONTROL_FORCE_LOW }
tmr force output type More...
enum | tmr_output_polarity_type { TMR_OUTPUT_ACTIVE_HIGH = 0x00 , TMR_OUTPUT_ACTIVE_LOW = 0x01 }
tmr output channel polarity type More...
enum | tmr_input_polarity_type { TMR_INPUT_RISING_EDGE = 0x00 , TMR_INPUT_FALLING_EDGE = 0x01 , TMR_INPUT_BOTH_EDGE = 0x03 }
tmr input channel polarity type More...
enum tmr_channel_select_type {
TMR_SELECT_CHANNEL_1 = 0x00 , TMR_SELECT_CHANNEL_1C = 0x01 , TMR_SELECT_CHANNEL_2 = 0x02 , TMR_SELECT_CHANNEL_2C = 0x03 ,
TMR_SELECT_CHANNEL_3 = 0x04 , TMR_SELECT_CHANNEL_3C = 0x05 , TMR_SELECT_CHANNEL_4 = 0x06
}
tmr channel select type More...
enum | tmr_channel1_input_connected_type { TMR_CHANEL1_CONNECTED_C1IRAW = 0x00 , TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR = 0x01 }
tmr channel1 input connected type More...
enum | tmr_input_direction_mapped_type { TMR_CC_CHANNEL_MAPPED_DIRECT = 0x01 , TMR_CC_CHANNEL_MAPPED_INDIRECT = 0x02 , TMR_CC_CHANNEL_MAPPED_STI = 0x03 }
tmr input channel mapped type channel direction More...
enum | tmr_channel_input_divider_type { TMR_CHANNEL_INPUT_DIV_1 = 0x00 , TMR_CHANNEL_INPUT_DIV_2 = 0x01 , TMR_CHANNEL_INPUT_DIV_4 = 0x02 , TMR_CHANNEL_INPUT_DIV_8 = 0x03 }
tmr input divider type More...
enum | tmr_dma_request_source_type { TMR_DMA_REQUEST_BY_CHANNEL = 0x00 , TMR_DMA_REQUEST_BY_OVERFLOW = 0x01 }
tmr dma request source select type More...
enum tmr_dma_request_type {
TMR_OVERFLOW_DMA_REQUEST = 0x00000100 , TMR_C1_DMA_REQUEST = 0x00000200 , TMR_C2_DMA_REQUEST = 0x00000400 , TMR_C3_DMA_REQUEST = 0x00000800 ,
TMR_C4_DMA_REQUEST = 0x00001000 , TMR_HALL_DMA_REQUEST = 0x00002000 , TMR_TRIGGER_DMA_REQUEST = 0x00004000
}
tmr dma request type More...
enum tmr_event_trigger_type {
TMR_OVERFLOW_SWTRIG = 0x00000001 , TMR_C1_SWTRIG = 0x00000002 , TMR_C2_SWTRIG = 0x00000004 , TMR_C3_SWTRIG = 0x00000008 ,
TMR_C4_SWTRIG = 0x00000010 , TMR_HALL_SWTRIG = 0x00000020 , TMR_TRIGGER_SWTRIG = 0x00000040 , TMR_BRK_SWTRIG = 0x00000080
}
tmr event triggered by software type More...
enum | tmr_polarity_active_type { TMR_POLARITY_ACTIVE_HIGH = 0x00 , TMR_POLARITY_ACTIVE_LOW = 0x01 , TMR_POLARITY_ACTIVE_BOTH = 0x02 }
tmr polarity active type More...
enum | tmr_external_signal_divider_type { TMR_ES_FREQUENCY_DIV_1 = 0x00 , TMR_ES_FREQUENCY_DIV_2 = 0x01 , TMR_ES_FREQUENCY_DIV_4 = 0x02 , TMR_ES_FREQUENCY_DIV_8 = 0x03 }
tmr external signal divider type More...
enum | tmr_external_signal_polarity_type { TMR_ES_POLARITY_NON_INVERTED = 0x00 , TMR_ES_POLARITY_INVERTED = 0x01 }
tmr external signal polarity type More...
enum tmr_dma_transfer_length_type {
TMR_DMA_TRANSFER_1BYTE = 0x00 , TMR_DMA_TRANSFER_2BYTES = 0x01 , TMR_DMA_TRANSFER_3BYTES = 0x02 , TMR_DMA_TRANSFER_4BYTES = 0x03 ,
TMR_DMA_TRANSFER_5BYTES = 0x04 , TMR_DMA_TRANSFER_6BYTES = 0x05 , TMR_DMA_TRANSFER_7BYTES = 0x06 , TMR_DMA_TRANSFER_8BYTES = 0x07 ,
TMR_DMA_TRANSFER_9BYTES = 0x08 , TMR_DMA_TRANSFER_10BYTES = 0x09 , TMR_DMA_TRANSFER_11BYTES = 0x0A , TMR_DMA_TRANSFER_12BYTES = 0x0B ,
TMR_DMA_TRANSFER_13BYTES = 0x0C , TMR_DMA_TRANSFER_14BYTES = 0x0D , TMR_DMA_TRANSFER_15BYTES = 0x0E , TMR_DMA_TRANSFER_16BYTES = 0x0F ,
TMR_DMA_TRANSFER_17BYTES = 0x10 , TMR_DMA_TRANSFER_18BYTES = 0x11
}
tmr dma transfer length type More...
enum tmr_dma_address_type {
TMR_CTRL1_ADDRESS = 0x0000 , TMR_CTRL2_ADDRESS = 0x0001 , TMR_STCTRL_ADDRESS = 0x0002 , TMR_IDEN_ADDRESS = 0x0003 ,
TMR_ISTS_ADDRESS = 0x0004 , TMR_SWEVT_ADDRESS = 0x0005 , TMR_CM1_ADDRESS = 0x0006 , TMR_CM2_ADDRESS = 0x0007 ,
TMR_CCTRL_ADDRESS = 0x0008 , TMR_CVAL_ADDRESS = 0x0009 , TMR_DIV_ADDRESS = 0x000A , TMR_PR_ADDRESS = 0x000B ,
TMR_RPR_ADDRESS = 0x000C , TMR_C1DT_ADDRESS = 0x000D , TMR_C2DT_ADDRESS = 0x000E , TMR_C3DT_ADDRESS = 0x000F ,
TMR_C4DT_ADDRESS = 0x0010 , TMR_BRK_ADDRESS = 0x0011 , TMR_DMACTRL_ADDRESS = 0x0012
}
tmr dma base address type More...
enum | tmr_brk_polarity_type { TMR_BRK_INPUT_ACTIVE_LOW = 0x00 , TMR_BRK_INPUT_ACTIVE_HIGH = 0x01 }
tmr brk polarity type More...
enum | tmr_wp_level_type { TMR_WP_OFF = 0x00 , TMR_WP_LEVEL_3 = 0x01 , TMR_WP_LEVEL_2 = 0x02 , TMR_WP_LEVEL_1 = 0x03 }
tmr write protect level type More...

Detailed Description

Enumeration Type Documentation

◆ sub_tmr_input_sel_type

enum sub_tmr_input_sel_type

tmr subordinate mode input select type

Enumerator
TMR_SUB_INPUT_SEL_IS0 | subordinate mode input select is0
TMR_SUB_INPUT_SEL_IS1 | subordinate mode input select is1
TMR_SUB_INPUT_SEL_IS2 | subordinate mode input select is2
TMR_SUB_INPUT_SEL_IS3 | subordinate mode input select is3
TMR_SUB_INPUT_SEL_C1INC | subordinate mode input select c1inc
TMR_SUB_INPUT_SEL_C1DF1 | subordinate mode input select c1df1
TMR_SUB_INPUT_SEL_C2DF2 | subordinate mode input select c2df2
TMR_SUB_INPUT_SEL_EXTIN | subordinate mode input select extin

Definition at line 129 of file at32f403_tmr.h.

◆ tmr_brk_polarity_type

enum tmr_brk_polarity_type

tmr brk polarity type

Enumerator
TMR_BRK_INPUT_ACTIVE_LOW | tmr brk input channel active low
TMR_BRK_INPUT_ACTIVE_HIGH | tmr brk input channel active high

Definition at line 375 of file at32f403_tmr.h.

◆ tmr_channel1_input_connected_type

enum tmr_channel1_input_connected_type

tmr channel1 input connected type

Enumerator
TMR_CHANEL1_CONNECTED_C1IRAW | channel1 pins is only connected to C1IRAW input
TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR | channel1/2/3 pins are connected to C1IRAW input after xored

Definition at line 226 of file at32f403_tmr.h.

◆ tmr_channel_input_divider_type

enum tmr_channel_input_divider_type

tmr input divider type

Enumerator
TMR_CHANNEL_INPUT_DIV_1 | tmr channel input divider 1
TMR_CHANNEL_INPUT_DIV_2 | tmr channel input divider 2
TMR_CHANNEL_INPUT_DIV_4 | tmr channel input divider 4
TMR_CHANNEL_INPUT_DIV_8 | tmr channel input divider 8

Definition at line 245 of file at32f403_tmr.h.

◆ tmr_channel_select_type

enum tmr_channel_select_type

tmr channel select type

Enumerator
TMR_SELECT_CHANNEL_1 | tmr channel select channel 1
TMR_SELECT_CHANNEL_1C | tmr channel select channel 1 complementary
TMR_SELECT_CHANNEL_2 | tmr channel select channel 2
TMR_SELECT_CHANNEL_2C | tmr channel select channel 2 complementary
TMR_SELECT_CHANNEL_3 | tmr channel select channel 3
TMR_SELECT_CHANNEL_3C | tmr channel select channel 3 complementary
TMR_SELECT_CHANNEL_4 | tmr channel select channel 4

Definition at line 212 of file at32f403_tmr.h.

◆ tmr_clock_division_type

enum tmr_clock_division_type

tmr clock division type

Enumerator
TMR_CLOCK_DIV1 | tmr clock division 1
TMR_CLOCK_DIV2 | tmr clock division 2
TMR_CLOCK_DIV4 | tmr clock division 4

Definition at line 92 of file at32f403_tmr.h.

◆ tmr_count_mode_type

enum tmr_count_mode_type

tmr counter mode type

Enumerator
TMR_COUNT_UP | tmr counter mode up
TMR_COUNT_DOWN | tmr counter mode down
TMR_COUNT_TWO_WAY_1 | tmr counter mode two way 1
TMR_COUNT_TWO_WAY_2 | tmr counter mode two way 2
TMR_COUNT_TWO_WAY_3 | tmr counter mode two way 3

Definition at line 102 of file at32f403_tmr.h.

◆ tmr_dma_address_type

enum tmr_dma_address_type

tmr dma base address type

Enumerator
TMR_CTRL1_ADDRESS | tmr dma base address ctrl1
TMR_CTRL2_ADDRESS | tmr dma base address ctrl2
TMR_STCTRL_ADDRESS | tmr dma base address stctrl
TMR_IDEN_ADDRESS | tmr dma base address iden
TMR_ISTS_ADDRESS | tmr dma base address ists
TMR_SWEVT_ADDRESS | tmr dma base address swevt
TMR_CM1_ADDRESS | tmr dma base address cm1
TMR_CM2_ADDRESS | tmr dma base address cm2
TMR_CCTRL_ADDRESS | tmr dma base address cctrl
TMR_CVAL_ADDRESS | tmr dma base address cval
TMR_DIV_ADDRESS | tmr dma base address div
TMR_PR_ADDRESS | tmr dma base address pr
TMR_RPR_ADDRESS | tmr dma base address rpr
TMR_C1DT_ADDRESS | tmr dma base address c1dt
TMR_C2DT_ADDRESS | tmr dma base address c2dt
TMR_C3DT_ADDRESS | tmr dma base address c3dt
TMR_C4DT_ADDRESS | tmr dma base address c4dt
TMR_BRK_ADDRESS | tmr dma base address brake
TMR_DMACTRL_ADDRESS | tmr dma base address dmactrl

Definition at line 349 of file at32f403_tmr.h.

◆ tmr_dma_request_source_type

enum tmr_dma_request_source_type

tmr dma request source select type

Enumerator
TMR_DMA_REQUEST_BY_CHANNEL | tmr dma request source select channel
TMR_DMA_REQUEST_BY_OVERFLOW | tmr dma request source select overflow

Definition at line 256 of file at32f403_tmr.h.

◆ tmr_dma_request_type

enum tmr_dma_request_type

tmr dma request type

Enumerator
TMR_OVERFLOW_DMA_REQUEST | tmr dma request select overflow
TMR_C1_DMA_REQUEST | tmr dma request select channel 1
TMR_C2_DMA_REQUEST | tmr dma request select channel 2
TMR_C3_DMA_REQUEST | tmr dma request select channel 3
TMR_C4_DMA_REQUEST | tmr dma request select channel 4
TMR_HALL_DMA_REQUEST | tmr dma request select hall
TMR_TRIGGER_DMA_REQUEST | tmr dma request select trigger

Definition at line 265 of file at32f403_tmr.h.

◆ tmr_dma_transfer_length_type

enum tmr_dma_transfer_length_type

tmr dma transfer length type

Enumerator
TMR_DMA_TRANSFER_1BYTE | tmr dma transfer length 1 byte
TMR_DMA_TRANSFER_2BYTES | tmr dma transfer length 2 bytes
TMR_DMA_TRANSFER_3BYTES | tmr dma transfer length 3 bytes
TMR_DMA_TRANSFER_4BYTES | tmr dma transfer length 4 bytes
TMR_DMA_TRANSFER_5BYTES | tmr dma transfer length 5 bytes
TMR_DMA_TRANSFER_6BYTES | tmr dma transfer length 6 bytes
TMR_DMA_TRANSFER_7BYTES | tmr dma transfer length 7 bytes
TMR_DMA_TRANSFER_8BYTES | tmr dma transfer length 8 bytes
TMR_DMA_TRANSFER_9BYTES | tmr dma transfer length 9 bytes
TMR_DMA_TRANSFER_10BYTES | tmr dma transfer length 10 bytes
TMR_DMA_TRANSFER_11BYTES | tmr dma transfer length 11 bytes
TMR_DMA_TRANSFER_12BYTES | tmr dma transfer length 12 bytes
TMR_DMA_TRANSFER_13BYTES | tmr dma transfer length 13 bytes
TMR_DMA_TRANSFER_14BYTES | tmr dma transfer length 14 bytes
TMR_DMA_TRANSFER_15BYTES | tmr dma transfer length 15 bytes
TMR_DMA_TRANSFER_16BYTES | tmr dma transfer length 16 bytes
TMR_DMA_TRANSFER_17BYTES | tmr dma transfer length 17 bytes
TMR_DMA_TRANSFER_18BYTES | tmr dma transfer length 18 bytes

Definition at line 324 of file at32f403_tmr.h.

◆ tmr_encoder_mode_type

enum tmr_encoder_mode_type

tmr encoder mode type

Enumerator
TMR_ENCODER_MODE_A | tmr encoder mode a
TMR_ENCODER_MODE_B | tmr encoder mode b
TMR_ENCODER_MODE_C | tmr encoder mode c

Definition at line 159 of file at32f403_tmr.h.

◆ tmr_event_trigger_type

enum tmr_event_trigger_type

tmr event triggered by software type

Enumerator
TMR_OVERFLOW_SWTRIG | tmr event triggered by software of overflow
TMR_C1_SWTRIG | tmr event triggered by software of channel 1
TMR_C2_SWTRIG | tmr event triggered by software of channel 2
TMR_C3_SWTRIG | tmr event triggered by software of channel 3
TMR_C4_SWTRIG | tmr event triggered by software of channel 4
TMR_HALL_SWTRIG | tmr event triggered by software of hall
TMR_TRIGGER_SWTRIG | tmr event triggered by software of trigger
TMR_BRK_SWTRIG | tmr event triggered by software of brake

Definition at line 279 of file at32f403_tmr.h.

◆ tmr_external_signal_divider_type

enum tmr_external_signal_divider_type

tmr external signal divider type

Enumerator
TMR_ES_FREQUENCY_DIV_1 | tmr external signal frequency divider 1
TMR_ES_FREQUENCY_DIV_2 | tmr external signal frequency divider 2
TMR_ES_FREQUENCY_DIV_4 | tmr external signal frequency divider 4
TMR_ES_FREQUENCY_DIV_8 | tmr external signal frequency divider 8

Definition at line 304 of file at32f403_tmr.h.

◆ tmr_external_signal_polarity_type

enum tmr_external_signal_polarity_type

tmr external signal polarity type

Enumerator
TMR_ES_POLARITY_NON_INVERTED | tmr external signal polarity non-inerted
TMR_ES_POLARITY_INVERTED | tmr external signal polarity inerted

Definition at line 315 of file at32f403_tmr.h.

◆ tmr_force_output_type

enum tmr_force_output_type

tmr force output type

Enumerator
TMR_FORCE_OUTPUT_HIGH | tmr force output high
TMR_FORCE_OUTPUT_LOW | tmr force output low

Definition at line 184 of file at32f403_tmr.h.

◆ tmr_input_direction_mapped_type

enum tmr_input_direction_mapped_type

tmr input channel mapped type channel direction

Enumerator
TMR_CC_CHANNEL_MAPPED_DIRECT | channel is configured as input, mapped direct
TMR_CC_CHANNEL_MAPPED_INDIRECT | channel is configured as input, mapped indirect
TMR_CC_CHANNEL_MAPPED_STI | channel is configured as input, mapped sti

Definition at line 235 of file at32f403_tmr.h.

◆ tmr_input_polarity_type

enum tmr_input_polarity_type

tmr input channel polarity type

Enumerator
TMR_INPUT_RISING_EDGE | tmr input channel polarity rising
TMR_INPUT_FALLING_EDGE | tmr input channel polarity falling
TMR_INPUT_BOTH_EDGE | tmr input channel polarity both edge

Definition at line 202 of file at32f403_tmr.h.

◆ tmr_output_control_mode_type

enum tmr_output_control_mode_type

tmr output control mode type

Enumerator
TMR_OUTPUT_CONTROL_OFF | tmr output control mode off
TMR_OUTPUT_CONTROL_HIGH | tmr output control mode high
TMR_OUTPUT_CONTROL_LOW | tmr output control mode low
TMR_OUTPUT_CONTROL_SWITCH | tmr output control mode switch
TMR_OUTPUT_CONTROL_FORCE_LOW | tmr output control mode force low
TMR_OUTPUT_CONTROL_FORCE_HIGH | tmr output control mode force high
TMR_OUTPUT_CONTROL_PWM_MODE_A | tmr output control mode pwm a
TMR_OUTPUT_CONTROL_PWM_MODE_B | tmr output control mode pwm b

Definition at line 169 of file at32f403_tmr.h.

◆ tmr_output_polarity_type

enum tmr_output_polarity_type

tmr output channel polarity type

Enumerator
TMR_OUTPUT_ACTIVE_HIGH | tmr output channel polarity high
TMR_OUTPUT_ACTIVE_LOW | tmr output channel polarity low

Definition at line 193 of file at32f403_tmr.h.

◆ tmr_polarity_active_type

enum tmr_polarity_active_type

tmr polarity active type

Enumerator
TMR_POLARITY_ACTIVE_HIGH | tmr polarity active high
TMR_POLARITY_ACTIVE_LOW | tmr polarity active low
TMR_POLARITY_ACTIVE_BOTH | tmr polarity active both high ande low

Definition at line 294 of file at32f403_tmr.h.

◆ tmr_primary_select_type

enum tmr_primary_select_type

tmr primary mode select type

Enumerator
TMR_PRIMARY_SEL_RESET | tmr primary mode select reset
TMR_PRIMARY_SEL_ENABLE | tmr primary mode select enable
TMR_PRIMARY_SEL_OVERFLOW | tmr primary mode select overflow
TMR_PRIMARY_SEL_COMPARE | tmr primary mode select compare
TMR_PRIMARY_SEL_C1ORAW | tmr primary mode select c1oraw
TMR_PRIMARY_SEL_C2ORAW | tmr primary mode select c2oraw
TMR_PRIMARY_SEL_C3ORAW | tmr primary mode select c3oraw
TMR_PRIMARY_SEL_C4ORAW | tmr primary mode select c4oraw

Definition at line 114 of file at32f403_tmr.h.

◆ tmr_sub_mode_select_type

enum tmr_sub_mode_select_type

tmr subordinate mode select type

Enumerator
TMR_SUB_MODE_DIABLE | subordinate mode disable
TMR_SUB_ENCODER_MODE_A | subordinate mode select encoder mode a
TMR_SUB_ENCODER_MODE_B | subordinate mode select encoder mode b
TMR_SUB_ENCODER_MODE_C | subordinate mode select encoder mode c
TMR_SUB_RESET_MODE | subordinate mode select reset
TMR_SUB_HANG_MODE | subordinate mode select hang
TMR_SUB_TRIGGER_MODE | subordinate mode select trigger
TMR_SUB_EXTERNAL_CLOCK_MODE_A | subordinate mode external clock mode a

Definition at line 144 of file at32f403_tmr.h.

◆ tmr_wp_level_type

enum tmr_wp_level_type

tmr write protect level type

Enumerator
TMR_WP_OFF | tmr write protect off
TMR_WP_LEVEL_3 | tmr write protect level 3
TMR_WP_LEVEL_2 | tmr write protect level 2
TMR_WP_LEVEL_1 | tmr write protect level 1

Definition at line 384 of file at32f403_tmr.h.


AT32F403 Firmwary Library: tmr_output_config_type Struct Reference

Data Fields
tmr_output_config_type Struct Reference
AT32F403_periph_driver » TMR » TMR_exported_types

tmr output config type More...

#include <at32f403_tmr.h>

Data Fields

tmr_output_control_mode_type oc_mode
confirm_state oc_idle_state
confirm_state occ_idle_state
tmr_output_polarity_type oc_polarity
tmr_output_polarity_type occ_polarity
confirm_state oc_output_state
confirm_state occ_output_state

Detailed Description

tmr output config type

Definition at line 395 of file at32f403_tmr.h.

Field Documentation

◆ oc_idle_state

confirm_state tmr_output_config_type::oc_idle_state

output channel idle state

Definition at line 398 of file at32f403_tmr.h.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr_output_channel_config(), and tmr_output_default_para_init().

◆ oc_mode

tmr_output_control_mode_type tmr_output_config_type::oc_mode

output channel mode

Definition at line 397 of file at32f403_tmr.h.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr_output_channel_config(), and tmr_output_default_para_init().

◆ oc_output_state

confirm_state tmr_output_config_type::oc_output_state

output channel enable

Definition at line 402 of file at32f403_tmr.h.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr_output_channel_config(), and tmr_output_default_para_init().

◆ oc_polarity

tmr_output_polarity_type tmr_output_config_type::oc_polarity

output channel polarity

Definition at line 400 of file at32f403_tmr.h.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr_output_channel_config(), and tmr_output_default_para_init().

◆ occ_idle_state

confirm_state tmr_output_config_type::occ_idle_state

output channel complementary idle state

Definition at line 399 of file at32f403_tmr.h.

Referenced by main(), tmr_output_channel_config(), and tmr_output_default_para_init().

◆ occ_output_state

confirm_state tmr_output_config_type::occ_output_state

output channel complementary enable

Definition at line 403 of file at32f403_tmr.h.

Referenced by main(), tmr_output_channel_config(), and tmr_output_default_para_init().

◆ occ_polarity

tmr_output_polarity_type tmr_output_config_type::occ_polarity

output channel complementary polarity

Definition at line 401 of file at32f403_tmr.h.

Referenced by main(), tmr_output_channel_config(), and tmr_output_default_para_init().

The documentation for this struct was generated from the following file:
  • at32f403_tmr.h


AT32F403 Firmwary Library: tmr_input_config_type Struct Reference

Data Fields
tmr_input_config_type Struct Reference
AT32F403_periph_driver » TMR » TMR_exported_types

tmr input capture config type More...

#include <at32f403_tmr.h>

Data Fields

tmr_channel_select_type input_channel_select
tmr_input_polarity_type input_polarity_select
tmr_input_direction_mapped_type input_mapped_select
uint8_t input_filter_value

Detailed Description

tmr input capture config type

Definition at line 409 of file at32f403_tmr.h.

Field Documentation

◆ input_channel_select

tmr_channel_select_type tmr_input_config_type::input_channel_select

tmr input channel select

Definition at line 411 of file at32f403_tmr.h.

Referenced by main(), tmr_input_channel_init(), tmr_input_default_para_init(), and tmr_pwm_input_config().

◆ input_filter_value

uint8_t tmr_input_config_type::input_filter_value

tmr channel filter value

Definition at line 414 of file at32f403_tmr.h.

Referenced by main(), tmr_input_channel_init(), tmr_input_default_para_init(), and tmr_pwm_input_config().

◆ input_mapped_select

tmr_input_direction_mapped_type tmr_input_config_type::input_mapped_select

tmr channel mapped direct or indirect

Definition at line 413 of file at32f403_tmr.h.

Referenced by main(), tmr_input_channel_init(), tmr_input_default_para_init(), and tmr_pwm_input_config().

◆ input_polarity_select

tmr_input_polarity_type tmr_input_config_type::input_polarity_select

tmr input polarity select

Definition at line 412 of file at32f403_tmr.h.

Referenced by main(), tmr_input_channel_init(), tmr_input_default_para_init(), and tmr_pwm_input_config().

The documentation for this struct was generated from the following file:
  • at32f403_tmr.h


AT32F403 Firmwary Library: tmr_brkdt_config_type Struct Reference

Data Fields
tmr_brkdt_config_type Struct Reference
AT32F403_periph_driver » TMR » TMR_exported_types

tmr brkdt config type More...

#include <at32f403_tmr.h>

Data Fields

uint8_t deadtime
tmr_brk_polarity_type brk_polarity
tmr_wp_level_type wp_level
confirm_state auto_output_enable
confirm_state fcsoen_state
confirm_state fcsodis_state
confirm_state brk_enable

Detailed Description

tmr brkdt config type

Definition at line 420 of file at32f403_tmr.h.

Field Documentation

◆ auto_output_enable

confirm_state tmr_brkdt_config_type::auto_output_enable

automatic output enable

Definition at line 425 of file at32f403_tmr.h.

Referenced by main(), tmr_brkdt_config(), and tmr_brkdt_default_para_init().

◆ brk_enable

confirm_state tmr_brkdt_config_type::brk_enable

tmr brk enale

Definition at line 428 of file at32f403_tmr.h.

Referenced by main(), tmr_brkdt_config(), and tmr_brkdt_default_para_init().

◆ brk_polarity

tmr_brk_polarity_type tmr_brkdt_config_type::brk_polarity

tmr brake polarity

Definition at line 423 of file at32f403_tmr.h.

Referenced by main(), tmr_brkdt_config(), and tmr_brkdt_default_para_init().

◆ deadtime

uint8_t tmr_brkdt_config_type::deadtime

dead-time generator setup

Definition at line 422 of file at32f403_tmr.h.

Referenced by main(), tmr_brkdt_config(), and tmr_brkdt_default_para_init().

◆ fcsodis_state

confirm_state tmr_brkdt_config_type::fcsodis_state

frozen channel status when output disable

Definition at line 427 of file at32f403_tmr.h.

Referenced by main(), tmr_brkdt_config(), and tmr_brkdt_default_para_init().

◆ fcsoen_state

confirm_state tmr_brkdt_config_type::fcsoen_state

frozen channel status when output enable

Definition at line 426 of file at32f403_tmr.h.

Referenced by main(), tmr_brkdt_config(), and tmr_brkdt_default_para_init().

◆ wp_level

tmr_wp_level_type tmr_brkdt_config_type::wp_level

write protect configuration

Definition at line 424 of file at32f403_tmr.h.

Referenced by main(), tmr_brkdt_config(), and tmr_brkdt_default_para_init().

The documentation for this struct was generated from the following file:
  • at32f403_tmr.h


AT32F403 Firmwary Library: tmr_type Struct Reference

Data Fields
tmr_type Struct Reference
AT32F403_periph_driver » TMR » TMR_exported_types

type define tmr register all More...

#include <at32f403_tmr.h>

Data Fields

union {
__IO uint32_t ctrl1
struct {
__IO uint32_t tmren: 1
__IO uint32_t ovfen: 1
__IO uint32_t ovfs: 1
__IO uint32_t ocmen: 1
__IO uint32_t cnt_dir: 3
__IO uint32_t prben: 1
__IO uint32_t clkdiv: 2
__IO uint32_t pmen: 1
__IO uint32_t reserved1: 21
} ctrl1_bit
};
tmr ctrl1 register, offset:0x00 More...
union {
__IO uint32_t ctrl2
struct {
__IO uint32_t cbctrl: 1
__IO uint32_t reserved1: 1
__IO uint32_t ccfs: 1
__IO uint32_t drs: 1
__IO uint32_t ptos: 3
__IO uint32_t c1insel: 1
__IO uint32_t c1ios: 1
__IO uint32_t c1cios: 1
__IO uint32_t c2ios: 1
__IO uint32_t c2cios: 1
__IO uint32_t c3ios: 1
__IO uint32_t c3cios: 1
__IO uint32_t c4ios: 1
__IO uint32_t reserved2: 17
} ctrl2_bit
};
tmr ctrl2 register, offset:0x04 More...
union {
__IO uint32_t stctrl
struct {
__IO uint32_t smsel: 3
__IO uint32_t reserved1: 1
__IO uint32_t stis: 3
__IO uint32_t sts: 1
__IO uint32_t esf: 4
__IO uint32_t esdiv: 2
__IO uint32_t ecmben: 1
__IO uint32_t esp: 1
__IO uint32_t reserved2: 16
} stctrl_bit
};
tmr smc register, offset:0x08 More...
union {
__IO uint32_t iden
struct {
__IO uint32_t ovfien: 1
__IO uint32_t c1ien: 1
__IO uint32_t c2ien: 1
__IO uint32_t c3ien: 1
__IO uint32_t c4ien: 1
__IO uint32_t hallien: 1
__IO uint32_t tien: 1
__IO uint32_t brkie: 1
__IO uint32_t ovfden: 1
__IO uint32_t c1den: 1
__IO uint32_t c2den: 1
__IO uint32_t c3den: 1
__IO uint32_t c4den: 1
__IO uint32_t hallde: 1
__IO uint32_t tden: 1
__IO uint32_t reserved1: 17
} iden_bit
};
tmr die register, offset:0x0C More...
union {
__IO uint32_t ists
struct {
__IO uint32_t ovfif: 1
__IO uint32_t c1if: 1
__IO uint32_t c2if: 1
__IO uint32_t c3if: 1
__IO uint32_t c4if: 1
__IO uint32_t hallif: 1
__IO uint32_t trgif: 1
__IO uint32_t brkif: 1
__IO uint32_t reserved1: 1
__IO uint32_t c1rf: 1
__IO uint32_t c2rf: 1
__IO uint32_t c3rf: 1
__IO uint32_t c4rf: 1
__IO uint32_t reserved2: 19
} ists_bit
};
tmr ists register, offset:0x10 More...
union {
__IO uint32_t swevt
struct {
__IO uint32_t ovfswtr: 1
__IO uint32_t c1swtr: 1
__IO uint32_t c2swtr: 1
__IO uint32_t c3swtr: 1
__IO uint32_t c4swtr: 1
__IO uint32_t hallswtr: 1
__IO uint32_t trgswtr: 1
__IO uint32_t brkswtr: 1
__IO uint32_t reserved: 24
} swevt_bit
};
tmr eveg register, offset:0x14 More...
union {
__IO uint32_t cm1
struct {
__IO uint32_t c1c: 2
__IO uint32_t c1oien: 1
__IO uint32_t c1oben: 1
__IO uint32_t c1octrl: 3
__IO uint32_t c1osen: 1
__IO uint32_t c2c: 2
__IO uint32_t c2oien: 1
__IO uint32_t c2oben: 1
__IO uint32_t c2octrl: 3
__IO uint32_t c2osen: 1
__IO uint32_t reserved1: 16
} cm1_output_bit
channel mode More...
struct {
__IO uint32_t c1c: 2
__IO uint32_t c1idiv: 2
__IO uint32_t c1df: 4
__IO uint32_t c2c: 2
__IO uint32_t c2idiv: 2
__IO uint32_t c2df: 4
__IO uint32_t reserved1: 16
} cm1_input_bit
input capture mode More...
};
tmr ccm1 register, offset:0x18 More...
union {
__IO uint32_t cm2
struct {
__IO uint32_t c3c: 2
__IO uint32_t c3oien: 1
__IO uint32_t c3oben: 1
__IO uint32_t c3octrl: 3
__IO uint32_t c3osen: 1
__IO uint32_t c4c: 2
__IO uint32_t c4oien: 1
__IO uint32_t c4oben: 1
__IO uint32_t c4octrl: 3
__IO uint32_t c4osen: 1
__IO uint32_t reserved1: 16
} cm2_output_bit
channel mode More...
struct {
__IO uint32_t c3c: 2
__IO uint32_t c3idiv: 2
__IO uint32_t c3df: 4
__IO uint32_t c4c: 2
__IO uint32_t c4idiv: 2
__IO uint32_t c4df: 4
__IO uint32_t reserved1: 16
} cm2_input_bit
input capture mode More...
};
tmr ccm2 register, offset:0x1C More...
union {
uint32_t cctrl
struct {
__IO uint32_t c1en: 1
__IO uint32_t c1p: 1
__IO uint32_t c1cen: 1
__IO uint32_t c1cp: 1
__IO uint32_t c2en: 1
__IO uint32_t c2p: 1
__IO uint32_t c2cen: 1
__IO uint32_t c2cp: 1
__IO uint32_t c3en: 1
__IO uint32_t c3p: 1
__IO uint32_t c3cen: 1
__IO uint32_t c3cp: 1
__IO uint32_t c4en: 1
__IO uint32_t c4p: 1
__IO uint32_t reserved1: 18
} cctrl_bit
};
tmr cce register, offset:0x20 More...
union {
__IO uint32_t cval
struct {
__IO uint32_t cval: 32
} cval_bit
};
tmr cnt register, offset:0x24 More...
union {
__IO uint32_t div
struct {
__IO uint32_t div: 16
__IO uint32_t reserved1: 16
} div_bit
};
tmr div, offset:0x28 More...
union {
__IO uint32_t pr
struct {
__IO uint32_t pr: 32
} pr_bit
};
tmr pr register, offset:0x2C More...
union {
__IO uint32_t rpr
struct {
__IO uint32_t rpr: 8
__IO uint32_t reserved1: 24
} rpr_bit
};
tmr rpr register, offset:0x30 More...
union {
uint32_t c1dt
struct {
__IO uint32_t c1dt: 32
} c1dt_bit
};
tmr c1dt register, offset:0x34 More...
union {
uint32_t c2dt
struct {
__IO uint32_t c2dt: 32
} c2dt_bit
};
tmr c2dt register, offset:0x38 More...
union {
__IO uint32_t c3dt
struct {
__IO uint32_t c3dt: 32
} c3dt_bit
};
tmr c3dt register, offset:0x3C More...
union {
__IO uint32_t c4dt
struct {
__IO uint32_t c4dt: 32
} c4dt_bit
};
tmr c4dt register, offset:0x40 More...
union {
__IO uint32_t brk
struct {
__IO uint32_t dtc: 8
__IO uint32_t wpc: 2
__IO uint32_t fcsodis: 1
__IO uint32_t fcsoen: 1
__IO uint32_t brken: 1
__IO uint32_t brkv: 1
__IO uint32_t aoen: 1
__IO uint32_t oen: 1
__IO uint32_t reserved1: 16
} brk_bit
};
tmr brk register, offset:0x44 More...
union {
__IO uint32_t dmactrl
struct {
__IO uint32_t addr: 5
__IO uint32_t reserved1: 3
__IO uint32_t dtb: 5
__IO uint32_t reserved2: 19
} dmactrl_bit
};
tmr dmactrl register, offset:0x48 More...
union {
__IO uint32_t dmadt
struct {
__IO uint32_t dmadt: 16
__IO uint32_t reserved1: 16
} dmadt_bit
};
tmr dmadt register, offset:0x4C More...

Detailed Description

type define tmr register all

Definition at line 434 of file at32f403_tmr.h.

Field Documentation

◆

union { ... } tmr_type::@628

tmr ctrl1 register, offset:0x00

◆

union { ... } tmr_type::@630

tmr ctrl2 register, offset:0x04

◆

union { ... } tmr_type::@632

tmr smc register, offset:0x08

◆

union { ... } tmr_type::@634

tmr die register, offset:0x0C

◆

union { ... } tmr_type::@636

tmr ists register, offset:0x10

◆

union { ... } tmr_type::@638

tmr eveg register, offset:0x14

◆

union { ... } tmr_type::@640

tmr ccm1 register, offset:0x18

◆

union { ... } tmr_type::@642

tmr ccm2 register, offset:0x1C

◆

union { ... } tmr_type::@644

tmr cce register, offset:0x20

◆

union { ... } tmr_type::@646

tmr cnt register, offset:0x24

◆

union { ... } tmr_type::@648

tmr div, offset:0x28

◆

union { ... } tmr_type::@650

tmr pr register, offset:0x2C

◆

union { ... } tmr_type::@652

tmr rpr register, offset:0x30

◆

union { ... } tmr_type::@654

tmr c1dt register, offset:0x34

◆

union { ... } tmr_type::@656

tmr c2dt register, offset:0x38

◆

union { ... } tmr_type::@658

tmr c3dt register, offset:0x3C

◆

union { ... } tmr_type::@660

tmr c4dt register, offset:0x40

◆

union { ... } tmr_type::@662

tmr brk register, offset:0x44

◆

union { ... } tmr_type::@664

tmr dmactrl register, offset:0x48

◆

union { ... } tmr_type::@666

tmr dmadt register, offset:0x4C

◆ addr

__IO uint32_t tmr_type::addr

Definition at line 804 of file at32f403_tmr.h.

Referenced by tmr_dma_control_config().

◆ aoen

__IO uint32_t tmr_type::aoen

Definition at line 791 of file at32f403_tmr.h.

Referenced by tmr_brkdt_config().

◆ brk

__IO uint32_t tmr_type::brk

Definition at line 782 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::brk_bit

Referenced by tmr_brkdt_config(), and tmr_output_enable().

◆ brken

__IO uint32_t tmr_type::brken

Definition at line 789 of file at32f403_tmr.h.

Referenced by tmr_brkdt_config().

◆ brkie

__IO uint32_t tmr_type::brkie

Definition at line 516 of file at32f403_tmr.h.

◆ brkif

__IO uint32_t tmr_type::brkif

Definition at line 543 of file at32f403_tmr.h.

◆ brkswtr

__IO uint32_t tmr_type::brkswtr

Definition at line 568 of file at32f403_tmr.h.

◆ brkv

__IO uint32_t tmr_type::brkv

Definition at line 790 of file at32f403_tmr.h.

Referenced by tmr_brkdt_config().

◆ c1c

__IO uint32_t tmr_type::c1c

Definition at line 585 of file at32f403_tmr.h.

Referenced by tmr_encoder_mode_config(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c1cen

__IO uint32_t tmr_type::c1cen

Definition at line 663 of file at32f403_tmr.h.

Referenced by tmr_channel_enable().

◆ c1cios

__IO uint32_t tmr_type::c1cios

Definition at line 471 of file at32f403_tmr.h.

◆ c1cp

__IO uint32_t tmr_type::c1cp

Definition at line 664 of file at32f403_tmr.h.

Referenced by tmr_encoder_mode_config(), tmr_input_channel_init(), and tmr_output_channel_polarity_set().

◆ c1den

__IO uint32_t tmr_type::c1den

Definition at line 518 of file at32f403_tmr.h.

◆ c1df

__IO uint32_t tmr_type::c1df

Definition at line 605 of file at32f403_tmr.h.

Referenced by tmr_input_channel_filter_set(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c1dt [1/2]

uint32_t tmr_type::c1dt

Definition at line 734 of file at32f403_tmr.h.

Referenced by tmr_channel_value_get(), and tmr_channel_value_set().

◆ c1dt [2/2]

__IO uint32_t tmr_type::c1dt

Definition at line 737 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::c1dt_bit

◆ c1en

__IO uint32_t tmr_type::c1en

Definition at line 661 of file at32f403_tmr.h.

Referenced by tmr_channel_enable(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c1idiv

__IO uint32_t tmr_type::c1idiv

Definition at line 604 of file at32f403_tmr.h.

Referenced by tmr_input_channel_divider_set(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c1ien

__IO uint32_t tmr_type::c1ien

Definition at line 510 of file at32f403_tmr.h.

◆ c1if

__IO uint32_t tmr_type::c1if

Definition at line 537 of file at32f403_tmr.h.

◆ c1insel

__IO uint32_t tmr_type::c1insel

Definition at line 469 of file at32f403_tmr.h.

Referenced by tmr_channel1_input_select().

◆ c1ios

__IO uint32_t tmr_type::c1ios

Definition at line 470 of file at32f403_tmr.h.

◆ c1oben

__IO uint32_t tmr_type::c1oben

Definition at line 587 of file at32f403_tmr.h.

Referenced by tmr_output_channel_buffer_enable().

◆ c1octrl

__IO uint32_t tmr_type::c1octrl

Definition at line 588 of file at32f403_tmr.h.

Referenced by tmr_force_output_set(), tmr_output_channel_config(), and tmr_output_channel_mode_select().

◆ c1oien

__IO uint32_t tmr_type::c1oien

Definition at line 586 of file at32f403_tmr.h.

Referenced by tmr_output_channel_immediately_set().

◆ c1osen

__IO uint32_t tmr_type::c1osen

Definition at line 589 of file at32f403_tmr.h.

Referenced by tmr_output_channel_switch_set().

◆ c1p

__IO uint32_t tmr_type::c1p

Definition at line 662 of file at32f403_tmr.h.

Referenced by tmr_encoder_mode_config(), tmr_input_channel_init(), tmr_output_channel_polarity_set(), and tmr_pwm_input_config().

◆ c1rf

__IO uint32_t tmr_type::c1rf

Definition at line 545 of file at32f403_tmr.h.

◆ c1swtr

__IO uint32_t tmr_type::c1swtr

Definition at line 562 of file at32f403_tmr.h.

◆ c2c

__IO uint32_t tmr_type::c2c

Definition at line 590 of file at32f403_tmr.h.

Referenced by tmr_encoder_mode_config(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c2cen

__IO uint32_t tmr_type::c2cen

Definition at line 667 of file at32f403_tmr.h.

Referenced by tmr_channel_enable().

◆ c2cios

__IO uint32_t tmr_type::c2cios

Definition at line 473 of file at32f403_tmr.h.

◆ c2cp

__IO uint32_t tmr_type::c2cp

Definition at line 668 of file at32f403_tmr.h.

Referenced by tmr_encoder_mode_config(), tmr_input_channel_init(), and tmr_output_channel_polarity_set().

◆ c2den

__IO uint32_t tmr_type::c2den

Definition at line 519 of file at32f403_tmr.h.

◆ c2df

__IO uint32_t tmr_type::c2df

Definition at line 608 of file at32f403_tmr.h.

Referenced by tmr_input_channel_filter_set(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c2dt [1/2]

uint32_t tmr_type::c2dt

Definition at line 746 of file at32f403_tmr.h.

Referenced by tmr_channel_value_get(), and tmr_channel_value_set().

◆ c2dt [2/2]

__IO uint32_t tmr_type::c2dt

Definition at line 749 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::c2dt_bit

◆ c2en

__IO uint32_t tmr_type::c2en

Definition at line 665 of file at32f403_tmr.h.

Referenced by tmr_channel_enable(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c2idiv

__IO uint32_t tmr_type::c2idiv

Definition at line 607 of file at32f403_tmr.h.

Referenced by tmr_input_channel_divider_set(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆ c2ien

__IO uint32_t tmr_type::c2ien

Definition at line 511 of file at32f403_tmr.h.

◆ c2if

__IO uint32_t tmr_type::c2if

Definition at line 538 of file at32f403_tmr.h.

◆ c2ios

__IO uint32_t tmr_type::c2ios

Definition at line 472 of file at32f403_tmr.h.

◆ c2oben

__IO uint32_t tmr_type::c2oben

Definition at line 592 of file at32f403_tmr.h.

Referenced by tmr_output_channel_buffer_enable().

◆ c2octrl

__IO uint32_t tmr_type::c2octrl

Definition at line 593 of file at32f403_tmr.h.

Referenced by tmr_force_output_set(), tmr_output_channel_config(), and tmr_output_channel_mode_select().

◆ c2oien

__IO uint32_t tmr_type::c2oien

Definition at line 591 of file at32f403_tmr.h.

Referenced by tmr_output_channel_immediately_set().

◆ c2osen

__IO uint32_t tmr_type::c2osen

Definition at line 594 of file at32f403_tmr.h.

Referenced by tmr_output_channel_switch_set().

◆ c2p

__IO uint32_t tmr_type::c2p

Definition at line 666 of file at32f403_tmr.h.

Referenced by tmr_encoder_mode_config(), tmr_input_channel_init(), tmr_output_channel_polarity_set(), and tmr_pwm_input_config().

◆ c2rf

__IO uint32_t tmr_type::c2rf

Definition at line 546 of file at32f403_tmr.h.

◆ c2swtr

__IO uint32_t tmr_type::c2swtr

Definition at line 563 of file at32f403_tmr.h.

◆ c3c

__IO uint32_t tmr_type::c3c

Definition at line 625 of file at32f403_tmr.h.

Referenced by tmr_input_channel_init().

◆ c3cen

__IO uint32_t tmr_type::c3cen

Definition at line 671 of file at32f403_tmr.h.

Referenced by tmr_channel_enable().

◆ c3cios

__IO uint32_t tmr_type::c3cios

Definition at line 475 of file at32f403_tmr.h.

◆ c3cp

__IO uint32_t tmr_type::c3cp

Definition at line 672 of file at32f403_tmr.h.

Referenced by tmr_input_channel_init(), and tmr_output_channel_polarity_set().

◆ c3den

__IO uint32_t tmr_type::c3den

Definition at line 520 of file at32f403_tmr.h.

◆ c3df

__IO uint32_t tmr_type::c3df

Definition at line 645 of file at32f403_tmr.h.

Referenced by tmr_input_channel_filter_set(), and tmr_input_channel_init().

◆ c3dt

__IO uint32_t tmr_type::c3dt

Definition at line 758 of file at32f403_tmr.h.

Referenced by tmr_channel_value_get(), and tmr_channel_value_set().

◆

struct { ... } tmr_type::c3dt_bit

◆ c3en

__IO uint32_t tmr_type::c3en

Definition at line 669 of file at32f403_tmr.h.

Referenced by tmr_channel_enable(), and tmr_input_channel_init().

◆ c3idiv

__IO uint32_t tmr_type::c3idiv

Definition at line 644 of file at32f403_tmr.h.

Referenced by tmr_input_channel_divider_set(), and tmr_input_channel_init().

◆ c3ien

__IO uint32_t tmr_type::c3ien

Definition at line 512 of file at32f403_tmr.h.

◆ c3if

__IO uint32_t tmr_type::c3if

Definition at line 539 of file at32f403_tmr.h.

◆ c3ios

__IO uint32_t tmr_type::c3ios

Definition at line 474 of file at32f403_tmr.h.

◆ c3oben

__IO uint32_t tmr_type::c3oben

Definition at line 627 of file at32f403_tmr.h.

Referenced by tmr_output_channel_buffer_enable().

◆ c3octrl

__IO uint32_t tmr_type::c3octrl

Definition at line 628 of file at32f403_tmr.h.

Referenced by tmr_force_output_set(), tmr_output_channel_config(), and tmr_output_channel_mode_select().

◆ c3oien

__IO uint32_t tmr_type::c3oien

Definition at line 626 of file at32f403_tmr.h.

Referenced by tmr_output_channel_immediately_set().

◆ c3osen

__IO uint32_t tmr_type::c3osen

Definition at line 629 of file at32f403_tmr.h.

Referenced by tmr_output_channel_switch_set().

◆ c3p

__IO uint32_t tmr_type::c3p

Definition at line 670 of file at32f403_tmr.h.

Referenced by tmr_input_channel_init(), and tmr_output_channel_polarity_set().

◆ c3rf

__IO uint32_t tmr_type::c3rf

Definition at line 547 of file at32f403_tmr.h.

◆ c3swtr

__IO uint32_t tmr_type::c3swtr

Definition at line 564 of file at32f403_tmr.h.

◆ c4c

__IO uint32_t tmr_type::c4c

Definition at line 630 of file at32f403_tmr.h.

Referenced by tmr_input_channel_init().

◆ c4den

__IO uint32_t tmr_type::c4den

Definition at line 521 of file at32f403_tmr.h.

◆ c4df

__IO uint32_t tmr_type::c4df

Definition at line 648 of file at32f403_tmr.h.

Referenced by tmr_input_channel_filter_set(), and tmr_input_channel_init().

◆ c4dt

__IO uint32_t tmr_type::c4dt

Definition at line 770 of file at32f403_tmr.h.

Referenced by tmr_channel_value_get(), and tmr_channel_value_set().

◆

struct { ... } tmr_type::c4dt_bit

◆ c4en

__IO uint32_t tmr_type::c4en

Definition at line 673 of file at32f403_tmr.h.

Referenced by tmr_channel_enable(), and tmr_input_channel_init().

◆ c4idiv

__IO uint32_t tmr_type::c4idiv

Definition at line 647 of file at32f403_tmr.h.

Referenced by tmr_input_channel_divider_set(), and tmr_input_channel_init().

◆ c4ien

__IO uint32_t tmr_type::c4ien

Definition at line 513 of file at32f403_tmr.h.

◆ c4if

__IO uint32_t tmr_type::c4if

Definition at line 540 of file at32f403_tmr.h.

◆ c4ios

__IO uint32_t tmr_type::c4ios

Definition at line 476 of file at32f403_tmr.h.

◆ c4oben

__IO uint32_t tmr_type::c4oben

Definition at line 632 of file at32f403_tmr.h.

Referenced by tmr_output_channel_buffer_enable().

◆ c4octrl

__IO uint32_t tmr_type::c4octrl

Definition at line 633 of file at32f403_tmr.h.

Referenced by tmr_force_output_set(), tmr_output_channel_config(), and tmr_output_channel_mode_select().

◆ c4oien

__IO uint32_t tmr_type::c4oien

Definition at line 631 of file at32f403_tmr.h.

Referenced by tmr_output_channel_immediately_set().

◆ c4osen

__IO uint32_t tmr_type::c4osen

Definition at line 634 of file at32f403_tmr.h.

Referenced by tmr_output_channel_switch_set().

◆ c4p

__IO uint32_t tmr_type::c4p

Definition at line 674 of file at32f403_tmr.h.

Referenced by tmr_input_channel_init(), and tmr_output_channel_polarity_set().

◆ c4rf

__IO uint32_t tmr_type::c4rf

Definition at line 548 of file at32f403_tmr.h.

◆ c4swtr

__IO uint32_t tmr_type::c4swtr

Definition at line 565 of file at32f403_tmr.h.

◆ cbctrl

__IO uint32_t tmr_type::cbctrl

Definition at line 464 of file at32f403_tmr.h.

Referenced by tmr_channel_buffer_enable().

◆ ccfs

__IO uint32_t tmr_type::ccfs

Definition at line 466 of file at32f403_tmr.h.

Referenced by tmr_hall_select().

◆ cctrl

uint32_t tmr_type::cctrl

Definition at line 658 of file at32f403_tmr.h.

Referenced by tmr_output_channel_config().

◆

struct { ... } tmr_type::cctrl_bit

Referenced by tmr_channel_enable(), tmr_encoder_mode_config(), tmr_input_channel_init(), tmr_output_channel_polarity_set(), and tmr_pwm_input_config().

◆ clkdiv

__IO uint32_t tmr_type::clkdiv

Definition at line 450 of file at32f403_tmr.h.

Referenced by tmr_clock_source_div_set().

◆ cm1

__IO uint32_t tmr_type::cm1

Definition at line 578 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::cm1_input_bit

input capture mode

Referenced by tmr_encoder_mode_config(), tmr_input_channel_divider_set(), tmr_input_channel_filter_set(), tmr_input_channel_init(), and tmr_pwm_input_config().

◆

struct { ... } tmr_type::cm1_output_bit

channel mode

Referenced by tmr_force_output_set(), tmr_output_channel_buffer_enable(), tmr_output_channel_config(), tmr_output_channel_immediately_set(), tmr_output_channel_mode_select(), and tmr_output_channel_switch_set().

◆ cm2

__IO uint32_t tmr_type::cm2

Definition at line 618 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::cm2_input_bit

input capture mode

Referenced by tmr_input_channel_divider_set(), tmr_input_channel_filter_set(), and tmr_input_channel_init().

◆

struct { ... } tmr_type::cm2_output_bit

channel mode

Referenced by tmr_force_output_set(), tmr_output_channel_buffer_enable(), tmr_output_channel_config(), tmr_output_channel_immediately_set(), tmr_output_channel_mode_select(), and tmr_output_channel_switch_set().

◆ cnt_dir

__IO uint32_t tmr_type::cnt_dir

Definition at line 448 of file at32f403_tmr.h.

Referenced by tmr_cnt_dir_set().

◆ ctrl1

__IO uint32_t tmr_type::ctrl1

Definition at line 441 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::ctrl1_bit

Referenced by tmr_32_bit_function_enable(), tmr_clock_source_div_set(), tmr_cnt_dir_set(), tmr_counter_enable(), tmr_one_cycle_mode_enable(), tmr_overflow_event_disable(), tmr_overflow_request_source_set(), and tmr_period_buffer_enable().

◆ ctrl2

__IO uint32_t tmr_type::ctrl2

Definition at line 461 of file at32f403_tmr.h.

Referenced by tmr_output_channel_config().

◆

struct { ... } tmr_type::ctrl2_bit

Referenced by tmr_channel1_input_select(), tmr_channel_buffer_enable(), tmr_channel_dma_select(), tmr_hall_select(), and tmr_primary_mode_select().

◆ cval

__IO uint32_t tmr_type::cval

Definition at line 684 of file at32f403_tmr.h.

Referenced by tmr_counter_value_get(), and tmr_counter_value_set().

◆

struct { ... } tmr_type::cval_bit

◆ div

__IO uint32_t tmr_type::div

Definition at line 696 of file at32f403_tmr.h.

Referenced by tmr_base_init(), tmr_div_value_get(), and tmr_div_value_set().

◆

struct { ... } tmr_type::div_bit

◆ dmactrl

__IO uint32_t tmr_type::dmactrl

Definition at line 801 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::dmactrl_bit

Referenced by tmr_dma_control_config().

◆ dmadt

__IO uint32_t tmr_type::dmadt

Definition at line 816 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::dmadt_bit

◆ drs

__IO uint32_t tmr_type::drs

Definition at line 467 of file at32f403_tmr.h.

Referenced by tmr_channel_dma_select().

◆ dtb

__IO uint32_t tmr_type::dtb

Definition at line 806 of file at32f403_tmr.h.

Referenced by tmr_dma_control_config().

◆ dtc

__IO uint32_t tmr_type::dtc

Definition at line 785 of file at32f403_tmr.h.

Referenced by tmr_brkdt_config().

◆ ecmben

__IO uint32_t tmr_type::ecmben

Definition at line 495 of file at32f403_tmr.h.

Referenced by tmr_external_clock_mode2_config().

◆ esdiv

__IO uint32_t tmr_type::esdiv

Definition at line 494 of file at32f403_tmr.h.

Referenced by tmr_external_clock_config().

◆ esf

__IO uint32_t tmr_type::esf

Definition at line 493 of file at32f403_tmr.h.

Referenced by tmr_external_clock_config().

◆ esp

__IO uint32_t tmr_type::esp

Definition at line 496 of file at32f403_tmr.h.

Referenced by tmr_external_clock_config().

◆ fcsodis

__IO uint32_t tmr_type::fcsodis

Definition at line 787 of file at32f403_tmr.h.

Referenced by tmr_brkdt_config().

◆ fcsoen

__IO uint32_t tmr_type::fcsoen

Definition at line 788 of file at32f403_tmr.h.

Referenced by tmr_brkdt_config().

◆ hallde

__IO uint32_t tmr_type::hallde

Definition at line 522 of file at32f403_tmr.h.

◆ hallien

__IO uint32_t tmr_type::hallien

Definition at line 514 of file at32f403_tmr.h.

◆ hallif

__IO uint32_t tmr_type::hallif

Definition at line 541 of file at32f403_tmr.h.

◆ hallswtr

__IO uint32_t tmr_type::hallswtr

Definition at line 566 of file at32f403_tmr.h.

◆ iden

__IO uint32_t tmr_type::iden

Definition at line 506 of file at32f403_tmr.h.

Referenced by tmr_dma_request_enable(), tmr_interrupt_enable(), and tmr_interrupt_flag_get().

◆

struct { ... } tmr_type::iden_bit

◆ ists

__IO uint32_t tmr_type::ists

Definition at line 533 of file at32f403_tmr.h.

Referenced by tmr_flag_clear(), tmr_flag_get(), and tmr_interrupt_flag_get().

◆

struct { ... } tmr_type::ists_bit

◆ ocmen

__IO uint32_t tmr_type::ocmen

Definition at line 447 of file at32f403_tmr.h.

Referenced by tmr_one_cycle_mode_enable().

◆ oen

__IO uint32_t tmr_type::oen

Definition at line 792 of file at32f403_tmr.h.

Referenced by tmr_output_enable().

◆ ovfden

__IO uint32_t tmr_type::ovfden

Definition at line 517 of file at32f403_tmr.h.

◆ ovfen

__IO uint32_t tmr_type::ovfen

Definition at line 445 of file at32f403_tmr.h.

Referenced by tmr_overflow_event_disable().

◆ ovfien

__IO uint32_t tmr_type::ovfien

Definition at line 509 of file at32f403_tmr.h.

◆ ovfif

__IO uint32_t tmr_type::ovfif

Definition at line 536 of file at32f403_tmr.h.

◆ ovfs

__IO uint32_t tmr_type::ovfs

Definition at line 446 of file at32f403_tmr.h.

Referenced by tmr_overflow_request_source_set().

◆ ovfswtr

__IO uint32_t tmr_type::ovfswtr

Definition at line 561 of file at32f403_tmr.h.

Referenced by tmr_base_init().

◆ pmen

__IO uint32_t tmr_type::pmen

Definition at line 451 of file at32f403_tmr.h.

Referenced by tmr_32_bit_function_enable().

◆ pr

__IO uint32_t tmr_type::pr

Definition at line 709 of file at32f403_tmr.h.

Referenced by tmr_base_init(), tmr_period_value_get(), and tmr_period_value_set().

◆

struct { ... } tmr_type::pr_bit

◆ prben

__IO uint32_t tmr_type::prben

Definition at line 449 of file at32f403_tmr.h.

Referenced by tmr_period_buffer_enable().

◆ ptos

__IO uint32_t tmr_type::ptos

Definition at line 468 of file at32f403_tmr.h.

Referenced by tmr_primary_mode_select().

◆ reserved

__IO uint32_t tmr_type::reserved

Definition at line 569 of file at32f403_tmr.h.

◆ reserved1

__IO uint32_t tmr_type::reserved1

Definition at line 452 of file at32f403_tmr.h.

◆ reserved2

__IO uint32_t tmr_type::reserved2

Definition at line 477 of file at32f403_tmr.h.

◆ rpr

__IO uint32_t tmr_type::rpr

Definition at line 721 of file at32f403_tmr.h.

Referenced by tmr_repetition_counter_set().

◆

struct { ... } tmr_type::rpr_bit

Referenced by tmr_repetition_counter_set().

◆ smsel

__IO uint32_t tmr_type::smsel

Definition at line 489 of file at32f403_tmr.h.

Referenced by tmr_encoder_mode_config(), tmr_external_clock_mode1_config(), tmr_internal_clock_set(), and tmr_sub_mode_select().

◆ stctrl

__IO uint32_t tmr_type::stctrl

Definition at line 486 of file at32f403_tmr.h.

◆

struct { ... } tmr_type::stctrl_bit

Referenced by tmr_encoder_mode_config(), tmr_external_clock_config(), tmr_external_clock_mode1_config(), tmr_external_clock_mode2_config(), tmr_internal_clock_set(), tmr_sub_mode_select(), tmr_sub_sync_mode_set(), and tmr_trigger_input_select().

◆ stis

__IO uint32_t tmr_type::stis

Definition at line 491 of file at32f403_tmr.h.

Referenced by tmr_external_clock_mode1_config(), and tmr_trigger_input_select().

◆ sts

__IO uint32_t tmr_type::sts

Definition at line 492 of file at32f403_tmr.h.

Referenced by tmr_sub_sync_mode_set().

◆ swevt

__IO uint32_t tmr_type::swevt

Definition at line 558 of file at32f403_tmr.h.

Referenced by tmr_event_sw_trigger().

◆

struct { ... } tmr_type::swevt_bit

Referenced by tmr_base_init().

◆ tden

__IO uint32_t tmr_type::tden

Definition at line 523 of file at32f403_tmr.h.

◆ tien

__IO uint32_t tmr_type::tien

Definition at line 515 of file at32f403_tmr.h.

◆ tmren

__IO uint32_t tmr_type::tmren

Definition at line 444 of file at32f403_tmr.h.

Referenced by tmr_counter_enable().

◆ trgif

__IO uint32_t tmr_type::trgif

Definition at line 542 of file at32f403_tmr.h.

◆ trgswtr

__IO uint32_t tmr_type::trgswtr

Definition at line 567 of file at32f403_tmr.h.

◆ wpc

__IO uint32_t tmr_type::wpc

Definition at line 786 of file at32f403_tmr.h.

Referenced by tmr_brkdt_config().

The documentation for this struct was generated from the following file:
  • at32f403_tmr.h


AT32F403 Firmwary Library: TMR_exported_functions

Functions
TMR_exported_functions
AT32F403_periph_driver » TMR

Functions

void | tmr_reset (tmr_type *tmr_x)
tmr reset by crm reset register More...
void | tmr_counter_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter More...
void | tmr_output_default_para_init (tmr_output_config_type *tmr_output_struct)
init tmr output default para More...
void | tmr_input_default_para_init (tmr_input_config_type *tmr_input_struct)
init tmr input default para More...
void | tmr_brkdt_default_para_init (tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para More...
void | tmr_base_init (tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base More...
void | tmr_clock_source_div_set (tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division More...
void | tmr_cnt_dir_set (tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction More...
void | tmr_repetition_counter_set (tmr_type *tmr_x, uint8_t tmr_rpr_value)
set the repetition counter register(rpr) value More...
void | tmr_counter_value_set (tmr_type *tmr_x, uint32_t tmr_cnt_value)
set tmr counter value More...
uint32_t | tmr_counter_value_get (tmr_type *tmr_x)
get tmr counter value More...
void | tmr_div_value_set (tmr_type *tmr_x, uint32_t tmr_div_value)
set tmr div value More...
uint32_t | tmr_div_value_get (tmr_type *tmr_x)
get tmr div value More...
void | tmr_output_channel_config (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel More...
void | tmr_output_channel_mode_select (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_control_mode_type oc_mode)
select tmr output channel mode More...
void | tmr_period_value_set (tmr_type *tmr_x, uint32_t tmr_pr_value)
set tmr period value More...
uint32_t | tmr_period_value_get (tmr_type *tmr_x)
get tmr period value More...
void | tmr_channel_value_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value More...
uint32_t | tmr_channel_value_get (tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value More...
void | tmr_period_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer More...
void | tmr_output_channel_buffer_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer More...
void | tmr_output_channel_immediately_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel immediately More...
void | tmr_output_channel_switch_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel switch More...
void | tmr_one_cycle_mode_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr one cycle mode More...
void | tmr_32_bit_function_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode) More...
void | tmr_overflow_request_source_set (tmr_type *tmr_x, confirm_state new_state)
select tmr the overflow event sources More...
void | tmr_overflow_event_disable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr overflow event generation More...
void | tmr_input_channel_init (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel More...
void | tmr_channel_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable More...
void | tmr_input_channel_filter_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint16_t filter_value)
set tmr input channel filter More...
void | tmr_pwm_input_config (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input More...
void | tmr_channel1_input_select (tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
select tmr channel1 input More...
void | tmr_input_channel_divider_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_channel_input_divider_type divider_factor)
set tmr input channel divider More...
void | tmr_primary_mode_select (tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode More...
void | tmr_sub_mode_select (tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode More...
void | tmr_channel_dma_select (tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select)
select tmr channel dma More...
void | tmr_hall_select (tmr_type *tmr_x, confirm_state new_state)
select tmr hall More...
void | tmr_channel_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr channel buffer More...
void | tmr_trigger_input_select (tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger More...
void | tmr_sub_sync_mode_set (tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode More...
void | tmr_dma_request_enable (tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request More...
void | tmr_interrupt_enable (tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt More...
flag_status | tmr_interrupt_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr interrupt flag More...
flag_status | tmr_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag More...
void | tmr_flag_clear (tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag More...
void | tmr_event_sw_trigger (tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event More...
void | tmr_output_enable (tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable More...
void | tmr_internal_clock_set (tmr_type *tmr_x)
set tmr select internal clock More...
void | tmr_output_channel_polarity_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_polarity_active_type oc_polarity)
set tmr output channel polarity More...
void | tmr_external_clock_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock More...
void | tmr_external_clock_mode1_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode1 More...
void | tmr_external_clock_mode2_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode2 More...
void | tmr_encoder_mode_config (tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type ic1_polarity, tmr_input_polarity_type ic2_polarity)
config tmr encoder mode More...
void | tmr_force_output_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_force_output_type force_output)
set tmr force output More...
void | tmr_dma_control_config (tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, tmr_dma_address_type dma_base_address)
config tmr dma control More...
void | tmr_brkdt_config (tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time More...

Detailed Description

Function Documentation

◆ tmr_32_bit_function_enable()

void tmr_32_bit_function_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr 32 bit function(plus mode)

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR2, TMR5
new_state | (TRUE or FALSE)
Return values
none

Definition at line 772 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_base_init()

void tmr_base_init | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_pr,
 |  | uint32_t | tmr_div
 | ) |  |

init tmr base

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_pr | (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
tmr_div | (timer div value:0x0000~0xFFFF)
Return values
none

Definition at line 198 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr2_config(), and tmr_init().

◆ tmr_brkdt_config()

void tmr_brkdt_config | ( | tmr_type * | tmr_x,
 |  | tmr_brkdt_config_type * | brkdt_struct
 | ) |  |

config tmr brake mode and dead-time

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
brkdt_struct
  • to the structure of tmr_brkdt_config_type
Return values
none

Definition at line 1771 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_brkdt_default_para_init()

void tmr_brkdt_default_para_init ( tmr_brkdt_config_type * tmr_brkdt_struct )

init tmr brkdt default para

Parameters
tmr_brkdt_struct
  • to the structure of tmr_brkdt_config_type
Return values
none

Definition at line 176 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_channel1_input_select()

void tmr_channel1_input_select | ( | tmr_type * | tmr_x,
 |  | tmr_channel1_input_connected_type | ch1_connect
 | ) |  |

select tmr channel1 input

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
ch1_connect this parameter can be one of the following values:
  • TMR_CHANEL1_CONNECTED_C1IRAW
  • TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR
Return values
none

Definition at line 1107 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_channel_buffer_enable()

void tmr_channel_buffer_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable tmr channel buffer

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1243 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_channel_dma_select()

void tmr_channel_dma_select | ( | tmr_type * | tmr_x,
 |  | tmr_dma_request_source_type | cc_dma_select
 | ) |  |

select tmr channel dma

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
cc_dma_select this parameter can be one of the following values:
  • TMR_DMA_REQUEST_BY_CHANNEL
  • TMR_DMA_REQUEST_BY_OVERFLOW
Return values
none

Definition at line 1217 of file at32f403_tmr.c.

◆ tmr_channel_enable()

void tmr_channel_enable | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

tmr channel enable

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_1C
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_2C
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_3C
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 897 of file at32f403_tmr.c.

Referenced by main(), and TMR1_TRG_HALL_TMR11_IRQHandler().

◆ tmr_channel_value_get()

uint32_t tmr_channel_value_get | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel
 | ) |  |

get tmr channel value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
Return values
tmr channel value

Definition at line 565 of file at32f403_tmr.c.

Referenced by TMR1_BRK_TMR9_IRQHandler(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_channel_value_set()

void tmr_channel_value_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | uint32_t | tmr_channel_value
 | ) |  |

set tmr channel value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
tmr_channel_value | (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
Return values
none

Definition at line 520 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), TMR1_BRK_TMR9_IRQHandler(), tmr1_config(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_clock_source_div_set()

void tmr_clock_source_div_set | ( | tmr_type * | tmr_x,
 |  | tmr_clock_division_type | tmr_clock_div
 | ) |  |

set tmr clock source division

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_clock_div this parameter can be one of the following values:
  • TMR_CLOCK_DIV1
  • TMR_CLOCK_DIV2
  • TMR_CLOCK_DIV4
Return values
none

Definition at line 223 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), and tmr2_config().

◆ tmr_cnt_dir_set()

void tmr_cnt_dir_set | ( | tmr_type * | tmr_x,
 |  | tmr_count_mode_type | tmr_cnt_dir
 | ) |  |

set tmr counter count direction

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_cnt_dir this parameter can be one of the following values:
  • TMR_COUNT_UP
  • TMR_COUNT_DOWN
  • TMR_COUNT_TWO_WAY_1
  • TMR_COUNT_TWO_WAY_2
  • TMR_COUNT_TWO_WAY_3
Return values
none

Definition at line 244 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr2_config(), and tmr_init().

◆ tmr_counter_enable()

void tmr_counter_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr counter

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 133 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr2_config(), TMR5_GLOBAL_IRQHandler(), and tmr_init().

◆ tmr_counter_value_get()

uint32_t tmr_counter_value_get ( tmr_type * tmr_x )

get tmr counter value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
tmr counter value

Definition at line 288 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_counter_value_set()

void tmr_counter_value_set | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_cnt_value
 | ) |  |

set tmr counter value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_cnt_value | (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
Return values
none

Definition at line 274 of file at32f403_tmr.c.

◆ tmr_div_value_get()

uint32_t tmr_div_value_get ( tmr_type * tmr_x )

get tmr div value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
tmr div value

Definition at line 316 of file at32f403_tmr.c.

◆ tmr_div_value_set()

void tmr_div_value_set | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_div_value
 | ) |  |

set tmr div value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_div_value | (0x0000~0xFFFF)
Return values
none

Definition at line 302 of file at32f403_tmr.c.

◆ tmr_dma_control_config()

void tmr_dma_control_config | ( | tmr_type * | tmr_x,
 |  | tmr_dma_transfer_length_type | dma_length,
 |  | tmr_dma_address_type | dma_base_address
 | ) |  |

config tmr dma control

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
dma_length this parameter can be one of the following values:
  • TMR_DMA_TRANSFER_1BYTE
  • TMR_DMA_TRANSFER_2BYTES
  • TMR_DMA_TRANSFER_3BYTES ...
  • TMR_DMA_TRANSFER_17BYTES
  • TMR_DMA_TRANSFER_18BYTES
dma_base_address this parameter can be one of the following values:
  • TMR_CTRL1_ADDRESS
  • TMR_CTRL2_ADDRESS
  • TMR_STCTRL_ADDRESS
  • TMR_IDEN_ADDRESS
  • TMR_ISTS_ADDRESS
  • TMR_SWEVT_ADDRESS
  • TMR_CM1_ADDRESS
  • TMR_CM2_ADDRESS
  • TMR_CCTRL_ADDRESS
  • TMR_CVAL_ADDRESS
  • TMR_DIV_ADDRESS
  • TMR_PR_ADDRESS
  • TMR_RPR_ADDRESS
  • TMR_C1DT_ADDRESS
  • TMR_C2DT_ADDRESS
  • TMR_C3DT_ADDRESS
  • TMR_C4DT_ADDRESS
  • TMR_BRK_ADDRESS
  • TMR_DMACTRL_ADDRESS
Return values
none

Definition at line 1755 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_dma_request_enable()

void tmr_dma_request_enable | ( | tmr_type * | tmr_x,
 |  | tmr_dma_request_type | dma_request,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr dma request

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
dma_request this parameter can be one of the following values:
  • TMR_OVERFLOW_DMA_REQUEST
  • TMR_C1_DMA_REQUEST
  • TMR_C2_DMA_REQUEST
  • TMR_C3_DMA_REQUEST
  • TMR_C4_DMA_REQUEST
  • TMR_HALL_DMA_REQUEST
  • TMR_TRIGGER_DMA_REQUEST
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1301 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_encoder_mode_config()

void tmr_encoder_mode_config | ( | tmr_type * | tmr_x,
 |  | tmr_encoder_mode_type | encoder_mode,
 |  | tmr_input_polarity_type | ic1_polarity,
 |  | tmr_input_polarity_type | ic2_polarity
 | ) |  |

config tmr encoder mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
encoder_mode this parameter can be one of the following values:
  • TMR_ENCODER_MODE_A
  • TMR_ENCODER_MODE_B
  • TMR_ENCODER_MODE_C
ic1_polarity this parameter can be one of the following values:
  • TMR_INPUT_RISING_EDGE
  • TMR_INPUT_FALLING_EDGE
  • TMR_INPUT_BOTH_EDGE
ic2_polarity this parameter can be one of the following values:
  • TMR_INPUT_RISING_EDGE
  • TMR_INPUT_FALLING_EDGE
  • TMR_INPUT_BOTH_EDGE
Return values
none

Definition at line 1653 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_event_sw_trigger()

void tmr_event_sw_trigger | ( | tmr_type * | tmr_x,
 |  | tmr_event_trigger_type | tmr_event
 | ) |  |

generate tmr event

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_event this parameter can be one of the following values:
  • TMR_OVERFLOW_SWTRIG
  • TMR_C1_SWTRIG
  • TMR_C2_SWTRIG
  • TMR_C3_SWTRIG
  • TMR_C4_SWTRIG
  • TMR_HALL_SWTRIG
  • TMR_TRIGGER_SWTRIG
  • TMR_BRK_SWTRIG
Return values
none

Definition at line 1461 of file at32f403_tmr.c.

Referenced by SysTick_Handler().

◆ tmr_external_clock_config()

void tmr_external_clock_config | ( | tmr_type * | tmr_x,
 |  | tmr_external_signal_divider_type | es_divide,
 |  | tmr_external_signal_polarity_type | es_polarity,
 |  | uint16_t | es_filter
 | ) |  |

config tmr external clock

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
es_divide this parameter can be one of the following values:
  • TMR_ES_FREQUENCY_DIV_1
  • TMR_ES_FREQUENCY_DIV_2
  • TMR_ES_FREQUENCY_DIV_4
  • TMR_ES_FREQUENCY_DIV_8
es_polarity this parameter can be one of the following values:
  • TMR_ES_POLARITY_NON_INVERTED
  • TMR_ES_POLARITY_INVERTED
es_filter | (0x0~0xf)
Return values
none

Definition at line 1572 of file at32f403_tmr.c.

Referenced by tmr_external_clock_mode1_config(), and tmr_external_clock_mode2_config().

◆ tmr_external_clock_mode1_config()

void tmr_external_clock_mode1_config | ( | tmr_type * | tmr_x,
 |  | tmr_external_signal_divider_type | es_divide,
 |  | tmr_external_signal_polarity_type | es_polarity,
 |  | uint16_t | es_filter
 | ) |  |

config tmr external clock mode1

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
es_divide this parameter can be one of the following values:
  • TMR_ES_FREQUENCY_DIV_1
  • TMR_ES_FREQUENCY_DIV_2
  • TMR_ES_FREQUENCY_DIV_4
  • TMR_ES_FREQUENCY_DIV_8
es_polarity this parameter can be one of the following values:
  • TMR_ES_POLARITY_NON_INVERTED
  • TMR_ES_POLARITY_INVERTED
es_filter | (0x0~0xf)
Return values
none

Definition at line 1598 of file at32f403_tmr.c.

◆ tmr_external_clock_mode2_config()

void tmr_external_clock_mode2_config | ( | tmr_type * | tmr_x,
 |  | tmr_external_signal_divider_type | es_divide,
 |  | tmr_external_signal_polarity_type | es_polarity,
 |  | uint16_t | es_filter
 | ) |  |

config tmr external clock mode2

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
es_divide this parameter can be one of the following values:
  • TMR_ES_FREQUENCY_DIV_1
  • TMR_ES_FREQUENCY_DIV_2
  • TMR_ES_FREQUENCY_DIV_4
  • TMR_ES_FREQUENCY_DIV_8
es_polarity this parameter can be one of the following values:
  • TMR_ES_POLARITY_NON_INVERTED
  • TMR_ES_POLARITY_INVERTED
es_filter | (0x0~0xf)
Return values
none

Definition at line 1624 of file at32f403_tmr.c.

◆ tmr_flag_clear()

void tmr_flag_clear | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_flag
 | ) |  |

clear tmr flag

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_flag this parameter can be any combination of the following values:
  • TMR_OVF_FLAG
  • TMR_C1_FLAG
  • TMR_C2_FLAG
  • TMR_C3_FLAG
  • TMR_C4_FLAG
  • TMR_HALL_FLAG
  • TMR_TRIGGER_FLAG
  • TMR_BRK_FLAG
  • TMR_C1_RECAPTURE_FLAG
  • TMR_C2_RECAPTURE_FLAG
  • TMR_C3_RECAPTURE_FLAG
  • TMR_C4_RECAPTURE_FLAG
Return values
none

Definition at line 1438 of file at32f403_tmr.c.

Referenced by TMR1_BRK_TMR9_IRQHandler(), TMR1_OVF_TMR10_IRQHandler(), TMR1_TRG_HALL_TMR11_IRQHandler(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_flag_get()

flag_status tmr_flag_get | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_flag
 | ) |  |

get tmr flag

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_flag this parameter can be one of the following values:
  • TMR_OVF_FLAG
  • TMR_C1_FLAG
  • TMR_C2_FLAG
  • TMR_C3_FLAG
  • TMR_C4_FLAG
  • TMR_HALL_FLAG
  • TMR_TRIGGER_FLAG
  • TMR_BRK_FLAG
  • TMR_C1_RECAPTURE_FLAG
  • TMR_C2_RECAPTURE_FLAG
  • TMR_C3_RECAPTURE_FLAG
  • TMR_C4_RECAPTURE_FLAG
Return values
state of tmr flag

Definition at line 1400 of file at32f403_tmr.c.

Referenced by main(), TMR1_BRK_TMR9_IRQHandler(), TMR1_OVF_TMR10_IRQHandler(), TMR2_GLOBAL_IRQHandler(), TMR3_GLOBAL_IRQHandler(), and TMR5_GLOBAL_IRQHandler().

◆ tmr_force_output_set()

void tmr_force_output_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_force_output_type | force_output
 | ) |  |

set tmr force output

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
force_output this parameter can be one of the following values:
  • TMR_FORCE_OUTPUT_HIGH
  • TMR_FORCE_OUTPUT_LOW
Return values
none

Definition at line 1689 of file at32f403_tmr.c.

◆ tmr_hall_select()

void tmr_hall_select | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

select tmr hall

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1230 of file at32f403_tmr.c.

◆ tmr_input_channel_divider_set()

void tmr_input_channel_divider_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_channel_input_divider_type | divider_factor
 | ) |  |

set tmr input channel divider

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
divider_factor this parameter can be one of the following values:
  • TMR_CHANNEL_INPUT_DIV_1
  • TMR_CHANNEL_INPUT_DIV_2
  • TMR_CHANNEL_INPUT_DIV_4
  • TMR_CHANNEL_INPUT_DIV_8
Return values
none

Definition at line 1132 of file at32f403_tmr.c.

◆ tmr_input_channel_filter_set()

void tmr_input_channel_filter_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | uint16_t | filter_value
 | ) |  |

set tmr input channel filter

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
filter_value | (0x0~0xf)
Return values
none

Definition at line 953 of file at32f403_tmr.c.

◆ tmr_input_channel_init()

void tmr_input_channel_init | ( | tmr_type * | tmr_x,
 |  | tmr_input_config_type * | input_struct,
 |  | tmr_channel_input_divider_type | divider_factor
 | ) |  |

init tmr input channel

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
input_struct
  • to the structure of tmr_input_config_type
divider_factor this parameter can be one of the following values:
  • TMR_CHANNEL_INPUT_DIV_1
  • TMR_CHANNEL_INPUT_DIV_2
  • TMR_CHANNEL_INPUT_DIV_4
  • TMR_CHANNEL_INPUT_DIV_8
Return values
none

Definition at line 825 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_input_default_para_init()

void tmr_input_default_para_init ( tmr_input_config_type * tmr_input_struct )

init tmr input default para

Parameters
tmr_input_struct
  • to the structure of tmr_input_config_type
Return values
none

Definition at line 162 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_internal_clock_set()

void tmr_internal_clock_set ( tmr_type * tmr_x )

set tmr select internal clock

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
Return values
none

Definition at line 1486 of file at32f403_tmr.c.

◆ tmr_interrupt_enable()

void tmr_interrupt_enable | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_interrupt,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr interrupt

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_interrupt this parameter can be one of the following values:
  • TMR_OVF_INT
  • TMR_C1_INT
  • TMR_C2_INT
  • TMR_C3_INT
  • TMR_C4_INT
  • TMR_HALL_INT
  • TMR_TRIGGER_INT
  • TMR_BRK_INT
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1332 of file at32f403_tmr.c.

Referenced by main(), tmr1_config(), tmr2_config(), TMR5_GLOBAL_IRQHandler(), and tmr_init().

◆ tmr_interrupt_flag_get()

flag_status tmr_interrupt_flag_get | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_flag
 | ) |  |

get tmr interrupt flag

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_flag this parameter can be one of the following values:
  • TMR_OVF_FLAG
  • TMR_C1_FLAG
  • TMR_C2_FLAG
  • TMR_C3_FLAG
  • TMR_C4_FLAG
  • TMR_HALL_FLAG
  • TMR_TRIGGER_FLAG
  • TMR_BRK_FLAG
Return values
state of tmr interrupt flag

Definition at line 1362 of file at32f403_tmr.c.

◆ tmr_one_cycle_mode_enable()

void tmr_one_cycle_mode_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr one cycle mode

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR12, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 758 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_output_channel_buffer_enable()

void tmr_output_channel_buffer_enable | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

enable tmr output channel buffer

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 627 of file at32f403_tmr.c.

Referenced by main(), and mclk_tmr1_init().

◆ tmr_output_channel_config()

void tmr_output_channel_config | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_output_config_type * | tmr_output_struct
 | ) |  |

config tmr output channel

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
tmr_output_struct
  • to the structure of tmr_output_config_type
Return values
none

Definition at line 337 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), and tmr1_config().

◆ tmr_output_channel_immediately_set()

void tmr_output_channel_immediately_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

set tmr output channel immediately

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 673 of file at32f403_tmr.c.

◆ tmr_output_channel_mode_select()

void tmr_output_channel_mode_select | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_output_control_mode_type | oc_mode
 | ) |  |

select tmr output channel mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
oc_mode this parameter can be one of the following values:
  • TMR_OUTPUT_CONTROL_OFF
  • TMR_OUTPUT_CONTROL_HIGH
  • TMR_OUTPUT_CONTROL_LOW
  • TMR_OUTPUT_CONTROL_SWITCH
  • TMR_OUTPUT_CONTROL_FORCE_HIGH
  • TMR_OUTPUT_CONTROL_FORCE_LOW
  • TMR_OUTPUT_CONTROL_PWM_MODE_A
  • TMR_OUTPUT_CONTROL_PWM_MODE_B
Return values
none

Definition at line 443 of file at32f403_tmr.c.

Referenced by TMR1_TRG_HALL_TMR11_IRQHandler().

◆ tmr_output_channel_polarity_set()

void tmr_output_channel_polarity_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_polarity_active_type | oc_polarity
 | ) |  |

set tmr output channel polarity

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
  • TMR_SELECT_CHANNEL_1C
  • TMR_SELECT_CHANNEL_2C
  • TMR_SELECT_CHANNEL_3C
oc_polarity this parameter can be one of the following values:
  • TMR_POLARITY_ACTIVE_HIGH
  • TMR_POLARITY_ACTIVE_LOW
Return values
none

Definition at line 1512 of file at32f403_tmr.c.

◆ tmr_output_channel_switch_set()

void tmr_output_channel_switch_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

set tmr output channel switch

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 719 of file at32f403_tmr.c.

◆ tmr_output_default_para_init()

void tmr_output_default_para_init ( tmr_output_config_type * tmr_output_struct )

init tmr output default para

Parameters
tmr_output_struct
  • to the structure of tmr_output_config_type
Return values
none

Definition at line 145 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), and tmr1_config().

◆ tmr_output_enable()

void tmr_output_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

tmr output enable(oen),this function is important for advtm output enable

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1474 of file at32f403_tmr.c.

Referenced by main(), and mclk_tmr1_init().

◆ tmr_overflow_event_disable()

void tmr_overflow_event_disable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr overflow event generation

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 804 of file at32f403_tmr.c.

◆ tmr_overflow_request_source_set()

void tmr_overflow_request_source_set | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

select tmr the overflow event sources

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 790 of file at32f403_tmr.c.

◆ tmr_period_buffer_enable()

void tmr_period_buffer_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable tmr period buffer

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 606 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_period_value_get()

uint32_t tmr_period_value_get ( tmr_type * tmr_x )

get tmr period value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
timer period register value of counter (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)

Definition at line 499 of file at32f403_tmr.c.

◆ tmr_period_value_set()

void tmr_period_value_set | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_pr_value
 | ) |  |

set tmr period value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_pr_value | timer period register value of counter (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
Return values
none

Definition at line 483 of file at32f403_tmr.c.

◆ tmr_primary_mode_select()

void tmr_primary_mode_select | ( | tmr_type * | tmr_x,
 |  | tmr_primary_select_type | primary_mode
 | ) |  |

select tmr primary mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR15
primary_mode this parameter can be one of the following values:
  • TMR_PRIMARY_SEL_RESET
  • TMR_PRIMARY_SEL_ENABLE
  • TMR_PRIMARY_SEL_OVERFLOW
  • TMR_PRIMARY_SEL_COMPARE
  • TMR_PRIMARY_SEL_C1ORAW
  • TMR_PRIMARY_SEL_C2ORAW
  • TMR_PRIMARY_SEL_C3ORAW
  • TMR_PRIMARY_SEL_C4ORAW
Return values
none

Definition at line 1179 of file at32f403_tmr.c.

Referenced by main(), and tmr1_config().

◆ tmr_pwm_input_config()

void tmr_pwm_input_config | ( | tmr_type * | tmr_x,
 |  | tmr_input_config_type * | input_struct,
 |  | tmr_channel_input_divider_type | divider_factor
 | ) |  |

config tmr pwm input

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
input_struct
  • to the structure of tmr_input_config_type
divider_factor this parameter can be one of the following values:
  • TMR_CHANNEL_INPUT_DIV_1
  • TMR_CHANNEL_INPUT_DIV_2
  • TMR_CHANNEL_INPUT_DIV_4
  • TMR_CHANNEL_INPUT_DIV_8
Return values
none

Definition at line 999 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_repetition_counter_set()

void tmr_repetition_counter_set | ( | tmr_type * | tmr_x,
 |  | uint8_t | tmr_rpr_value
 | ) |  |

set the repetition counter register(rpr) value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
tmr_rpr_value | (0x00~0xFF)
Return values
none

Definition at line 258 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_reset()

void tmr_reset ( tmr_type * tmr_x )

tmr reset by crm reset register

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
none

Definition at line 50 of file at32f403_tmr.c.

◆ tmr_sub_mode_select()

void tmr_sub_mode_select | ( | tmr_type * | tmr_x,
 |  | tmr_sub_mode_select_type | sub_mode
 | ) |  |

select tmr subordinate mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
sub_mode this parameter can be one of the following values:
  • TMR_SUB_MODE_DIABLE
  • TMR_SUB_ENCODER_MODE_A
  • TMR_SUB_ENCODER_MODE_B
  • TMR_SUB_ENCODER_MODE_C
  • TMR_SUB_RESET_MODE
  • TMR_SUB_HANG_MODE
  • TMR_SUB_TRIGGER_MODE
  • TMR_SUB_EXTERNAL_CLOCK_MODE_A
Return values
none

Definition at line 1201 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_sub_sync_mode_set()

void tmr_sub_sync_mode_set | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

set tmr subordinate synchronization mode

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1278 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_trigger_input_select()

void tmr_trigger_input_select | ( | tmr_type * | tmr_x,
 |  | sub_tmr_input_sel_type | trigger_select
 | ) |  |

select tmr sub-trigger

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
trigger_select this parameter can be one of the following values:
  • TMR_SUB_INPUT_SEL_IS0
  • TMR_SUB_INPUT_SEL_IS1
  • TMR_SUB_INPUT_SEL_IS2
  • TMR_SUB_INPUT_SEL_IS3
  • TMR_SUB_INPUT_SEL_C1INC
  • TMR_SUB_INPUT_SEL_C1DF1
  • TMR_SUB_INPUT_SEL_C2DF2
  • TMR_SUB_INPUT_SEL_EXTIN
Return values
none

Definition at line 1265 of file at32f403_tmr.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_private_functions

Functions
TMR_private_functions
AT32F403_periph_driver » TMR

Functions

void | tmr_reset (tmr_type *tmr_x)
tmr reset by crm reset register More...
void | tmr_counter_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter More...
void | tmr_output_default_para_init (tmr_output_config_type *tmr_output_struct)
init tmr output default para More...
void | tmr_input_default_para_init (tmr_input_config_type *tmr_input_struct)
init tmr input default para More...
void | tmr_brkdt_default_para_init (tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para More...
void | tmr_base_init (tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base More...
void | tmr_clock_source_div_set (tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division More...
void | tmr_cnt_dir_set (tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction More...
void | tmr_repetition_counter_set (tmr_type *tmr_x, uint8_t tmr_rpr_value)
set the repetition counter register(rpr) value More...
void | tmr_counter_value_set (tmr_type *tmr_x, uint32_t tmr_cnt_value)
set tmr counter value More...
uint32_t | tmr_counter_value_get (tmr_type *tmr_x)
get tmr counter value More...
void | tmr_div_value_set (tmr_type *tmr_x, uint32_t tmr_div_value)
set tmr div value More...
uint32_t | tmr_div_value_get (tmr_type *tmr_x)
get tmr div value More...
void | tmr_output_channel_config (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel More...
void | tmr_output_channel_mode_select (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_control_mode_type oc_mode)
select tmr output channel mode More...
void | tmr_period_value_set (tmr_type *tmr_x, uint32_t tmr_pr_value)
set tmr period value More...
uint32_t | tmr_period_value_get (tmr_type *tmr_x)
get tmr period value More...
void | tmr_channel_value_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value More...
uint32_t | tmr_channel_value_get (tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value More...
void | tmr_period_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer More...
void | tmr_output_channel_buffer_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer More...
void | tmr_output_channel_immediately_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel immediately More...
void | tmr_output_channel_switch_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel switch More...
void | tmr_one_cycle_mode_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr one cycle mode More...
void | tmr_32_bit_function_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode) More...
void | tmr_overflow_request_source_set (tmr_type *tmr_x, confirm_state new_state)
select tmr the overflow event sources More...
void | tmr_overflow_event_disable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr overflow event generation More...
void | tmr_input_channel_init (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel More...
void | tmr_channel_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable More...
void | tmr_input_channel_filter_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint16_t filter_value)
set tmr input channel filter More...
void | tmr_pwm_input_config (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input More...
void | tmr_channel1_input_select (tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
select tmr channel1 input More...
void | tmr_input_channel_divider_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_channel_input_divider_type divider_factor)
set tmr input channel divider More...
void | tmr_primary_mode_select (tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode More...
void | tmr_sub_mode_select (tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode More...
void | tmr_channel_dma_select (tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select)
select tmr channel dma More...
void | tmr_hall_select (tmr_type *tmr_x, confirm_state new_state)
select tmr hall More...
void | tmr_channel_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr channel buffer More...
void | tmr_trigger_input_select (tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger More...
void | tmr_sub_sync_mode_set (tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode More...
void | tmr_dma_request_enable (tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request More...
void | tmr_interrupt_enable (tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt More...
flag_status | tmr_interrupt_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr interrupt flag More...
flag_status | tmr_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag More...
void | tmr_flag_clear (tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag More...
void | tmr_event_sw_trigger (tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event More...
void | tmr_output_enable (tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable More...
void | tmr_internal_clock_set (tmr_type *tmr_x)
set tmr select internal clock More...
void | tmr_output_channel_polarity_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_polarity_active_type oc_polarity)
set tmr output channel polarity More...
void | tmr_external_clock_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock More...
void | tmr_external_clock_mode1_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode1 More...
void | tmr_external_clock_mode2_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode2 More...
void | tmr_encoder_mode_config (tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type ic1_polarity, tmr_input_polarity_type ic2_polarity)
config tmr encoder mode More...
void | tmr_force_output_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_force_output_type force_output)
set tmr force output More...
void | tmr_dma_control_config (tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, tmr_dma_address_type dma_base_address)
config tmr dma control More...
void | tmr_brkdt_config (tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time More...

Detailed Description

Function Documentation

◆ tmr_32_bit_function_enable()

void tmr_32_bit_function_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr 32 bit function(plus mode)

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR2, TMR5
new_state | (TRUE or FALSE)
Return values
none

Definition at line 772 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_base_init()

void tmr_base_init | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_pr,
 |  | uint32_t | tmr_div
 | ) |  |

init tmr base

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_pr | (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
tmr_div | (timer div value:0x0000~0xFFFF)
Return values
none

Definition at line 198 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr2_config(), and tmr_init().

◆ tmr_brkdt_config()

void tmr_brkdt_config | ( | tmr_type * | tmr_x,
 |  | tmr_brkdt_config_type * | brkdt_struct
 | ) |  |

config tmr brake mode and dead-time

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
brkdt_struct
  • to the structure of tmr_brkdt_config_type
Return values
none

Definition at line 1771 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_brkdt_default_para_init()

void tmr_brkdt_default_para_init ( tmr_brkdt_config_type * tmr_brkdt_struct )

init tmr brkdt default para

Parameters
tmr_brkdt_struct
  • to the structure of tmr_brkdt_config_type
Return values
none

Definition at line 176 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_channel1_input_select()

void tmr_channel1_input_select | ( | tmr_type * | tmr_x,
 |  | tmr_channel1_input_connected_type | ch1_connect
 | ) |  |

select tmr channel1 input

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
ch1_connect this parameter can be one of the following values:
  • TMR_CHANEL1_CONNECTED_C1IRAW
  • TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR
Return values
none

Definition at line 1107 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_channel_buffer_enable()

void tmr_channel_buffer_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable tmr channel buffer

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1243 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_channel_dma_select()

void tmr_channel_dma_select | ( | tmr_type * | tmr_x,
 |  | tmr_dma_request_source_type | cc_dma_select
 | ) |  |

select tmr channel dma

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
cc_dma_select this parameter can be one of the following values:
  • TMR_DMA_REQUEST_BY_CHANNEL
  • TMR_DMA_REQUEST_BY_OVERFLOW
Return values
none

Definition at line 1217 of file at32f403_tmr.c.

◆ tmr_channel_enable()

void tmr_channel_enable | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

tmr channel enable

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_1C
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_2C
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_3C
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 897 of file at32f403_tmr.c.

Referenced by main(), and TMR1_TRG_HALL_TMR11_IRQHandler().

◆ tmr_channel_value_get()

uint32_t tmr_channel_value_get | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel
 | ) |  |

get tmr channel value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
Return values
tmr channel value

Definition at line 565 of file at32f403_tmr.c.

Referenced by TMR1_BRK_TMR9_IRQHandler(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_channel_value_set()

void tmr_channel_value_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | uint32_t | tmr_channel_value
 | ) |  |

set tmr channel value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
tmr_channel_value | (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
Return values
none

Definition at line 520 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), TMR1_BRK_TMR9_IRQHandler(), tmr1_config(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_clock_source_div_set()

void tmr_clock_source_div_set | ( | tmr_type * | tmr_x,
 |  | tmr_clock_division_type | tmr_clock_div
 | ) |  |

set tmr clock source division

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_clock_div this parameter can be one of the following values:
  • TMR_CLOCK_DIV1
  • TMR_CLOCK_DIV2
  • TMR_CLOCK_DIV4
Return values
none

Definition at line 223 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), and tmr2_config().

◆ tmr_cnt_dir_set()

void tmr_cnt_dir_set | ( | tmr_type * | tmr_x,
 |  | tmr_count_mode_type | tmr_cnt_dir
 | ) |  |

set tmr counter count direction

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_cnt_dir this parameter can be one of the following values:
  • TMR_COUNT_UP
  • TMR_COUNT_DOWN
  • TMR_COUNT_TWO_WAY_1
  • TMR_COUNT_TWO_WAY_2
  • TMR_COUNT_TWO_WAY_3
Return values
none

Definition at line 244 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr1_config(), tmr2_config(), and tmr_init().

◆ tmr_counter_enable()

void tmr_counter_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr counter

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 133 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), tmr2_config(), TMR5_GLOBAL_IRQHandler(), and tmr_init().

◆ tmr_counter_value_get()

uint32_t tmr_counter_value_get ( tmr_type * tmr_x )

get tmr counter value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
tmr counter value

Definition at line 288 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_counter_value_set()

void tmr_counter_value_set | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_cnt_value
 | ) |  |

set tmr counter value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_cnt_value | (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
Return values
none

Definition at line 274 of file at32f403_tmr.c.

◆ tmr_div_value_get()

uint32_t tmr_div_value_get ( tmr_type * tmr_x )

get tmr div value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
tmr div value

Definition at line 316 of file at32f403_tmr.c.

◆ tmr_div_value_set()

void tmr_div_value_set | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_div_value
 | ) |  |

set tmr div value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_div_value | (0x0000~0xFFFF)
Return values
none

Definition at line 302 of file at32f403_tmr.c.

◆ tmr_dma_control_config()

void tmr_dma_control_config | ( | tmr_type * | tmr_x,
 |  | tmr_dma_transfer_length_type | dma_length,
 |  | tmr_dma_address_type | dma_base_address
 | ) |  |

config tmr dma control

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
dma_length this parameter can be one of the following values:
  • TMR_DMA_TRANSFER_1BYTE
  • TMR_DMA_TRANSFER_2BYTES
  • TMR_DMA_TRANSFER_3BYTES ...
  • TMR_DMA_TRANSFER_17BYTES
  • TMR_DMA_TRANSFER_18BYTES
dma_base_address this parameter can be one of the following values:
  • TMR_CTRL1_ADDRESS
  • TMR_CTRL2_ADDRESS
  • TMR_STCTRL_ADDRESS
  • TMR_IDEN_ADDRESS
  • TMR_ISTS_ADDRESS
  • TMR_SWEVT_ADDRESS
  • TMR_CM1_ADDRESS
  • TMR_CM2_ADDRESS
  • TMR_CCTRL_ADDRESS
  • TMR_CVAL_ADDRESS
  • TMR_DIV_ADDRESS
  • TMR_PR_ADDRESS
  • TMR_RPR_ADDRESS
  • TMR_C1DT_ADDRESS
  • TMR_C2DT_ADDRESS
  • TMR_C3DT_ADDRESS
  • TMR_C4DT_ADDRESS
  • TMR_BRK_ADDRESS
  • TMR_DMACTRL_ADDRESS
Return values
none

Definition at line 1755 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_dma_request_enable()

void tmr_dma_request_enable | ( | tmr_type * | tmr_x,
 |  | tmr_dma_request_type | dma_request,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr dma request

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
dma_request this parameter can be one of the following values:
  • TMR_OVERFLOW_DMA_REQUEST
  • TMR_C1_DMA_REQUEST
  • TMR_C2_DMA_REQUEST
  • TMR_C3_DMA_REQUEST
  • TMR_C4_DMA_REQUEST
  • TMR_HALL_DMA_REQUEST
  • TMR_TRIGGER_DMA_REQUEST
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1301 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_encoder_mode_config()

void tmr_encoder_mode_config | ( | tmr_type * | tmr_x,
 |  | tmr_encoder_mode_type | encoder_mode,
 |  | tmr_input_polarity_type | ic1_polarity,
 |  | tmr_input_polarity_type | ic2_polarity
 | ) |  |

config tmr encoder mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
encoder_mode this parameter can be one of the following values:
  • TMR_ENCODER_MODE_A
  • TMR_ENCODER_MODE_B
  • TMR_ENCODER_MODE_C
ic1_polarity this parameter can be one of the following values:
  • TMR_INPUT_RISING_EDGE
  • TMR_INPUT_FALLING_EDGE
  • TMR_INPUT_BOTH_EDGE
ic2_polarity this parameter can be one of the following values:
  • TMR_INPUT_RISING_EDGE
  • TMR_INPUT_FALLING_EDGE
  • TMR_INPUT_BOTH_EDGE
Return values
none

Definition at line 1653 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_event_sw_trigger()

void tmr_event_sw_trigger | ( | tmr_type * | tmr_x,
 |  | tmr_event_trigger_type | tmr_event
 | ) |  |

generate tmr event

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_event this parameter can be one of the following values:
  • TMR_OVERFLOW_SWTRIG
  • TMR_C1_SWTRIG
  • TMR_C2_SWTRIG
  • TMR_C3_SWTRIG
  • TMR_C4_SWTRIG
  • TMR_HALL_SWTRIG
  • TMR_TRIGGER_SWTRIG
  • TMR_BRK_SWTRIG
Return values
none

Definition at line 1461 of file at32f403_tmr.c.

Referenced by SysTick_Handler().

◆ tmr_external_clock_config()

void tmr_external_clock_config | ( | tmr_type * | tmr_x,
 |  | tmr_external_signal_divider_type | es_divide,
 |  | tmr_external_signal_polarity_type | es_polarity,
 |  | uint16_t | es_filter
 | ) |  |

config tmr external clock

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
es_divide this parameter can be one of the following values:
  • TMR_ES_FREQUENCY_DIV_1
  • TMR_ES_FREQUENCY_DIV_2
  • TMR_ES_FREQUENCY_DIV_4
  • TMR_ES_FREQUENCY_DIV_8
es_polarity this parameter can be one of the following values:
  • TMR_ES_POLARITY_NON_INVERTED
  • TMR_ES_POLARITY_INVERTED
es_filter | (0x0~0xf)
Return values
none

Definition at line 1572 of file at32f403_tmr.c.

Referenced by tmr_external_clock_mode1_config(), and tmr_external_clock_mode2_config().

◆ tmr_external_clock_mode1_config()

void tmr_external_clock_mode1_config | ( | tmr_type * | tmr_x,
 |  | tmr_external_signal_divider_type | es_divide,
 |  | tmr_external_signal_polarity_type | es_polarity,
 |  | uint16_t | es_filter
 | ) |  |

config tmr external clock mode1

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
es_divide this parameter can be one of the following values:
  • TMR_ES_FREQUENCY_DIV_1
  • TMR_ES_FREQUENCY_DIV_2
  • TMR_ES_FREQUENCY_DIV_4
  • TMR_ES_FREQUENCY_DIV_8
es_polarity this parameter can be one of the following values:
  • TMR_ES_POLARITY_NON_INVERTED
  • TMR_ES_POLARITY_INVERTED
es_filter | (0x0~0xf)
Return values
none

Definition at line 1598 of file at32f403_tmr.c.

◆ tmr_external_clock_mode2_config()

void tmr_external_clock_mode2_config | ( | tmr_type * | tmr_x,
 |  | tmr_external_signal_divider_type | es_divide,
 |  | tmr_external_signal_polarity_type | es_polarity,
 |  | uint16_t | es_filter
 | ) |  |

config tmr external clock mode2

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR15
es_divide this parameter can be one of the following values:
  • TMR_ES_FREQUENCY_DIV_1
  • TMR_ES_FREQUENCY_DIV_2
  • TMR_ES_FREQUENCY_DIV_4
  • TMR_ES_FREQUENCY_DIV_8
es_polarity this parameter can be one of the following values:
  • TMR_ES_POLARITY_NON_INVERTED
  • TMR_ES_POLARITY_INVERTED
es_filter | (0x0~0xf)
Return values
none

Definition at line 1624 of file at32f403_tmr.c.

◆ tmr_flag_clear()

void tmr_flag_clear | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_flag
 | ) |  |

clear tmr flag

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_flag this parameter can be any combination of the following values:
  • TMR_OVF_FLAG
  • TMR_C1_FLAG
  • TMR_C2_FLAG
  • TMR_C3_FLAG
  • TMR_C4_FLAG
  • TMR_HALL_FLAG
  • TMR_TRIGGER_FLAG
  • TMR_BRK_FLAG
  • TMR_C1_RECAPTURE_FLAG
  • TMR_C2_RECAPTURE_FLAG
  • TMR_C3_RECAPTURE_FLAG
  • TMR_C4_RECAPTURE_FLAG
Return values
none

Definition at line 1438 of file at32f403_tmr.c.

Referenced by TMR1_BRK_TMR9_IRQHandler(), TMR1_OVF_TMR10_IRQHandler(), TMR1_TRG_HALL_TMR11_IRQHandler(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_flag_get()

flag_status tmr_flag_get | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_flag
 | ) |  |

get tmr flag

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_flag this parameter can be one of the following values:
  • TMR_OVF_FLAG
  • TMR_C1_FLAG
  • TMR_C2_FLAG
  • TMR_C3_FLAG
  • TMR_C4_FLAG
  • TMR_HALL_FLAG
  • TMR_TRIGGER_FLAG
  • TMR_BRK_FLAG
  • TMR_C1_RECAPTURE_FLAG
  • TMR_C2_RECAPTURE_FLAG
  • TMR_C3_RECAPTURE_FLAG
  • TMR_C4_RECAPTURE_FLAG
Return values
state of tmr flag

Definition at line 1400 of file at32f403_tmr.c.

Referenced by main(), TMR1_BRK_TMR9_IRQHandler(), TMR1_OVF_TMR10_IRQHandler(), TMR2_GLOBAL_IRQHandler(), TMR3_GLOBAL_IRQHandler(), and TMR5_GLOBAL_IRQHandler().

◆ tmr_force_output_set()

void tmr_force_output_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_force_output_type | force_output
 | ) |  |

set tmr force output

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
force_output this parameter can be one of the following values:
  • TMR_FORCE_OUTPUT_HIGH
  • TMR_FORCE_OUTPUT_LOW
Return values
none

Definition at line 1689 of file at32f403_tmr.c.

◆ tmr_hall_select()

void tmr_hall_select | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

select tmr hall

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1230 of file at32f403_tmr.c.

◆ tmr_input_channel_divider_set()

void tmr_input_channel_divider_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_channel_input_divider_type | divider_factor
 | ) |  |

set tmr input channel divider

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
divider_factor this parameter can be one of the following values:
  • TMR_CHANNEL_INPUT_DIV_1
  • TMR_CHANNEL_INPUT_DIV_2
  • TMR_CHANNEL_INPUT_DIV_4
  • TMR_CHANNEL_INPUT_DIV_8
Return values
none

Definition at line 1132 of file at32f403_tmr.c.

◆ tmr_input_channel_filter_set()

void tmr_input_channel_filter_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | uint16_t | filter_value
 | ) |  |

set tmr input channel filter

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
filter_value | (0x0~0xf)
Return values
none

Definition at line 953 of file at32f403_tmr.c.

◆ tmr_input_channel_init()

void tmr_input_channel_init | ( | tmr_type * | tmr_x,
 |  | tmr_input_config_type * | input_struct,
 |  | tmr_channel_input_divider_type | divider_factor
 | ) |  |

init tmr input channel

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
input_struct
  • to the structure of tmr_input_config_type
divider_factor this parameter can be one of the following values:
  • TMR_CHANNEL_INPUT_DIV_1
  • TMR_CHANNEL_INPUT_DIV_2
  • TMR_CHANNEL_INPUT_DIV_4
  • TMR_CHANNEL_INPUT_DIV_8
Return values
none

Definition at line 825 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_input_default_para_init()

void tmr_input_default_para_init ( tmr_input_config_type * tmr_input_struct )

init tmr input default para

Parameters
tmr_input_struct
  • to the structure of tmr_input_config_type
Return values
none

Definition at line 162 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_internal_clock_set()

void tmr_internal_clock_set ( tmr_type * tmr_x )

set tmr select internal clock

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
Return values
none

Definition at line 1486 of file at32f403_tmr.c.

◆ tmr_interrupt_enable()

void tmr_interrupt_enable | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_interrupt,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr interrupt

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_interrupt this parameter can be one of the following values:
  • TMR_OVF_INT
  • TMR_C1_INT
  • TMR_C2_INT
  • TMR_C3_INT
  • TMR_C4_INT
  • TMR_HALL_INT
  • TMR_TRIGGER_INT
  • TMR_BRK_INT
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1332 of file at32f403_tmr.c.

Referenced by main(), tmr1_config(), tmr2_config(), TMR5_GLOBAL_IRQHandler(), and tmr_init().

◆ tmr_interrupt_flag_get()

flag_status tmr_interrupt_flag_get | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_flag
 | ) |  |

get tmr interrupt flag

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_flag this parameter can be one of the following values:
  • TMR_OVF_FLAG
  • TMR_C1_FLAG
  • TMR_C2_FLAG
  • TMR_C3_FLAG
  • TMR_C4_FLAG
  • TMR_HALL_FLAG
  • TMR_TRIGGER_FLAG
  • TMR_BRK_FLAG
Return values
state of tmr interrupt flag

Definition at line 1362 of file at32f403_tmr.c.

◆ tmr_one_cycle_mode_enable()

void tmr_one_cycle_mode_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr one cycle mode

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR12, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 758 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_output_channel_buffer_enable()

void tmr_output_channel_buffer_enable | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

enable tmr output channel buffer

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 627 of file at32f403_tmr.c.

Referenced by main(), and mclk_tmr1_init().

◆ tmr_output_channel_config()

void tmr_output_channel_config | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_output_config_type * | tmr_output_struct
 | ) |  |

config tmr output channel

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
tmr_output_struct
  • to the structure of tmr_output_config_type
Return values
none

Definition at line 337 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), and tmr1_config().

◆ tmr_output_channel_immediately_set()

void tmr_output_channel_immediately_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

set tmr output channel immediately

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 673 of file at32f403_tmr.c.

◆ tmr_output_channel_mode_select()

void tmr_output_channel_mode_select | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_output_control_mode_type | oc_mode
 | ) |  |

select tmr output channel mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
oc_mode this parameter can be one of the following values:
  • TMR_OUTPUT_CONTROL_OFF
  • TMR_OUTPUT_CONTROL_HIGH
  • TMR_OUTPUT_CONTROL_LOW
  • TMR_OUTPUT_CONTROL_SWITCH
  • TMR_OUTPUT_CONTROL_FORCE_HIGH
  • TMR_OUTPUT_CONTROL_FORCE_LOW
  • TMR_OUTPUT_CONTROL_PWM_MODE_A
  • TMR_OUTPUT_CONTROL_PWM_MODE_B
Return values
none

Definition at line 443 of file at32f403_tmr.c.

Referenced by TMR1_TRG_HALL_TMR11_IRQHandler().

◆ tmr_output_channel_polarity_set()

void tmr_output_channel_polarity_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | tmr_polarity_active_type | oc_polarity
 | ) |  |

set tmr output channel polarity

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
  • TMR_SELECT_CHANNEL_1C
  • TMR_SELECT_CHANNEL_2C
  • TMR_SELECT_CHANNEL_3C
oc_polarity this parameter can be one of the following values:
  • TMR_POLARITY_ACTIVE_HIGH
  • TMR_POLARITY_ACTIVE_LOW
Return values
none

Definition at line 1512 of file at32f403_tmr.c.

◆ tmr_output_channel_switch_set()

void tmr_output_channel_switch_set | ( | tmr_type * | tmr_x,
 |  | tmr_channel_select_type | tmr_channel,
 |  | confirm_state | new_state
 | ) |  |

set tmr output channel switch

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_channel this parameter can be one of the following values:
  • TMR_SELECT_CHANNEL_1
  • TMR_SELECT_CHANNEL_2
  • TMR_SELECT_CHANNEL_3
  • TMR_SELECT_CHANNEL_4
new_state | (TRUE or FALSE)
Return values
none

Definition at line 719 of file at32f403_tmr.c.

◆ tmr_output_default_para_init()

void tmr_output_default_para_init ( tmr_output_config_type * tmr_output_struct )

init tmr output default para

Parameters
tmr_output_struct
  • to the structure of tmr_output_config_type
Return values
none

Definition at line 145 of file at32f403_tmr.c.

Referenced by main(), mclk_tmr1_init(), and tmr1_config().

◆ tmr_output_enable()

void tmr_output_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

tmr output enable(oen),this function is important for advtm output enable

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1474 of file at32f403_tmr.c.

Referenced by main(), and mclk_tmr1_init().

◆ tmr_overflow_event_disable()

void tmr_overflow_event_disable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable tmr overflow event generation

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 804 of file at32f403_tmr.c.

◆ tmr_overflow_request_source_set()

void tmr_overflow_request_source_set | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

select tmr the overflow event sources

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 790 of file at32f403_tmr.c.

◆ tmr_period_buffer_enable()

void tmr_period_buffer_enable | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

enable tmr period buffer

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 606 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_period_value_get()

uint32_t tmr_period_value_get ( tmr_type * tmr_x )

get tmr period value

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
timer period register value of counter (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)

Definition at line 499 of file at32f403_tmr.c.

◆ tmr_period_value_set()

void tmr_period_value_set | ( | tmr_type * | tmr_x,
 |  | uint32_t | tmr_pr_value
 | ) |  |

set tmr period value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
tmr_pr_value | timer period register value of counter (for 16 bit tmr 0x0000~0xFFFF, for 32 bit tmr 0x0000_0000~0xFFFF_FFFF)
Return values
none

Definition at line 483 of file at32f403_tmr.c.

◆ tmr_primary_mode_select()

void tmr_primary_mode_select | ( | tmr_type * | tmr_x,
 |  | tmr_primary_select_type | primary_mode
 | ) |  |

select tmr primary mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR15
primary_mode this parameter can be one of the following values:
  • TMR_PRIMARY_SEL_RESET
  • TMR_PRIMARY_SEL_ENABLE
  • TMR_PRIMARY_SEL_OVERFLOW
  • TMR_PRIMARY_SEL_COMPARE
  • TMR_PRIMARY_SEL_C1ORAW
  • TMR_PRIMARY_SEL_C2ORAW
  • TMR_PRIMARY_SEL_C3ORAW
  • TMR_PRIMARY_SEL_C4ORAW
Return values
none

Definition at line 1179 of file at32f403_tmr.c.

Referenced by main(), and tmr1_config().

◆ tmr_pwm_input_config()

void tmr_pwm_input_config | ( | tmr_type * | tmr_x,
 |  | tmr_input_config_type * | input_struct,
 |  | tmr_channel_input_divider_type | divider_factor
 | ) |  |

config tmr pwm input

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
input_struct
  • to the structure of tmr_input_config_type
divider_factor this parameter can be one of the following values:
  • TMR_CHANNEL_INPUT_DIV_1
  • TMR_CHANNEL_INPUT_DIV_2
  • TMR_CHANNEL_INPUT_DIV_4
  • TMR_CHANNEL_INPUT_DIV_8
Return values
none

Definition at line 999 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_repetition_counter_set()

void tmr_repetition_counter_set | ( | tmr_type * | tmr_x,
 |  | uint8_t | tmr_rpr_value
 | ) |  |

set the repetition counter register(rpr) value

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR8, TMR15
tmr_rpr_value | (0x00~0xFF)
Return values
none

Definition at line 258 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_reset()

void tmr_reset ( tmr_type * tmr_x )

tmr reset by crm reset register

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR6, TMR7, TMR8, TMR9, TMR10, TMR11, TMR12, TMR13, TMR14, TMR15
Return values
none

Definition at line 50 of file at32f403_tmr.c.

◆ tmr_sub_mode_select()

void tmr_sub_mode_select | ( | tmr_type * | tmr_x,
 |  | tmr_sub_mode_select_type | sub_mode
 | ) |  |

select tmr subordinate mode

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
sub_mode this parameter can be one of the following values:
  • TMR_SUB_MODE_DIABLE
  • TMR_SUB_ENCODER_MODE_A
  • TMR_SUB_ENCODER_MODE_B
  • TMR_SUB_ENCODER_MODE_C
  • TMR_SUB_RESET_MODE
  • TMR_SUB_HANG_MODE
  • TMR_SUB_TRIGGER_MODE
  • TMR_SUB_EXTERNAL_CLOCK_MODE_A
Return values
none

Definition at line 1201 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_sub_sync_mode_set()

void tmr_sub_sync_mode_set | ( | tmr_type * | tmr_x,
 |  | confirm_state | new_state
 | ) |  |

set tmr subordinate synchronization mode

Parameters
tmr_x | select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
new_state | (TRUE or FALSE)
Return values
none

Definition at line 1278 of file at32f403_tmr.c.

Referenced by main().

◆ tmr_trigger_input_select()

void tmr_trigger_input_select | ( | tmr_type * | tmr_x,
 |  | sub_tmr_input_sel_type | trigger_select
 | ) |  |

select tmr sub-trigger

Parameters
tmr_x select the tmr peripheral. this parameter can be one of the following values: TMR1, TMR2, TMR3, TMR4, TMR5, TMR8, TMR9, TMR12, TMR15
trigger_select this parameter can be one of the following values:
  • TMR_SUB_INPUT_SEL_IS0
  • TMR_SUB_INPUT_SEL_IS1
  • TMR_SUB_INPUT_SEL_IS2
  • TMR_SUB_INPUT_SEL_IS3
  • TMR_SUB_INPUT_SEL_C1INC
  • TMR_SUB_INPUT_SEL_C1DF1
  • TMR_SUB_INPUT_SEL_C2DF2
  • TMR_SUB_INPUT_SEL_EXTIN
Return values
none

Definition at line 1265 of file at32f403_tmr.c.

Referenced by main().


AT32F403 Firmwary Library: USART

Modules | Macros
USART
AT32F403_periph_driver

USART driver modules. More...

Modules

USART_flags_definition
usart flag
USART_interrupts_definition
usart interrupt
USART_exported_types
USART_exported_functions
USART_private_functions

Macros

#define | USART1 ((usart_type *) USART1_BASE)
#define | USART2 ((usart_type *) USART2_BASE)
#define | USART3 ((usart_type *) USART3_BASE)

Detailed Description

USART driver modules.

Macro Definition Documentation

◆ USART1

#define USART1 ((usart_type *) USART1_BASE)

Definition at line 317 of file at32f403_usart.h.

◆ USART2

#define USART2 ((usart_type *) USART2_BASE)

Definition at line 318 of file at32f403_usart.h.

◆ USART3

#define USART3 ((usart_type *) USART3_BASE)

Definition at line 319 of file at32f403_usart.h.


AT32F403 Firmwary Library: USART_flags_definition

Macros
USART_flags_definition
AT32F403_periph_driver » USART

usart flag More...

Macros

#define | USART_PERR_FLAG ((uint32_t)0x00000001)
#define | USART_FERR_FLAG ((uint32_t)0x00000002)
#define | USART_NERR_FLAG ((uint32_t)0x00000004)
#define | USART_ROERR_FLAG ((uint32_t)0x00000008)
#define | USART_IDLEF_FLAG ((uint32_t)0x00000010)
#define | USART_RDBF_FLAG ((uint32_t)0x00000020)
#define | USART_TDC_FLAG ((uint32_t)0x00000040)
#define | USART_TDBE_FLAG ((uint32_t)0x00000080)
#define | USART_BFF_FLAG ((uint32_t)0x00000100)
#define | USART_CTSCF_FLAG ((uint32_t)0x00000200)

Detailed Description

usart flag

Macro Definition Documentation

◆ USART_BFF_FLAG

#define USART_BFF_FLAG ((uint32_t)0x00000100)

usart break frame flag

Definition at line 58 of file at32f403_usart.h.

◆ USART_CTSCF_FLAG

#define USART_CTSCF_FLAG ((uint32_t)0x00000200)

usart cts change flag

Definition at line 59 of file at32f403_usart.h.

◆ USART_FERR_FLAG

#define USART_FERR_FLAG ((uint32_t)0x00000002)

usart framing error flag

Definition at line 51 of file at32f403_usart.h.

◆ USART_IDLEF_FLAG

#define USART_IDLEF_FLAG ((uint32_t)0x00000010)

usart idle flag

Definition at line 54 of file at32f403_usart.h.

◆ USART_NERR_FLAG

#define USART_NERR_FLAG ((uint32_t)0x00000004)

usart noise error flag

Definition at line 52 of file at32f403_usart.h.

◆ USART_PERR_FLAG

#define USART_PERR_FLAG ((uint32_t)0x00000001)

usart parity error flag

Definition at line 50 of file at32f403_usart.h.

◆ USART_RDBF_FLAG

#define USART_RDBF_FLAG ((uint32_t)0x00000020)

usart receive data buffer full flag

Definition at line 55 of file at32f403_usart.h.

◆ USART_ROERR_FLAG

#define USART_ROERR_FLAG ((uint32_t)0x00000008)

usart receiver overflow error flag

Definition at line 53 of file at32f403_usart.h.

◆ USART_TDBE_FLAG

#define USART_TDBE_FLAG ((uint32_t)0x00000080)

usart transmit data buffer empty flag

Definition at line 57 of file at32f403_usart.h.

◆ USART_TDC_FLAG

#define USART_TDC_FLAG ((uint32_t)0x00000040)

usart transmit data complete flag

Definition at line 56 of file at32f403_usart.h.


AT32F403 Firmwary Library: USART_interrupts_definition

Macros
USART_interrupts_definition
AT32F403_periph_driver » USART

usart interrupt More...

Macros

#define | USART_IDLE_INT MAKE_VALUE(0x0C,0x04)
#define | USART_RDBF_INT MAKE_VALUE(0x0C,0x05)
#define | USART_TDC_INT MAKE_VALUE(0x0C,0x06)
#define | USART_TDBE_INT MAKE_VALUE(0x0C,0x07)
#define | USART_PERR_INT MAKE_VALUE(0x0C,0x08)
#define | USART_BF_INT MAKE_VALUE(0x10,0x06)
#define | USART_ERR_INT MAKE_VALUE(0x14,0x00)
#define | USART_CTSCF_INT MAKE_VALUE(0x14,0x0A)

Detailed Description

usart interrupt

Macro Definition Documentation

◆ USART_BF_INT

#define USART_BF_INT MAKE_VALUE(0x10,0x06)

usart break frame interrupt

Definition at line 75 of file at32f403_usart.h.

◆ USART_CTSCF_INT

#define USART_CTSCF_INT MAKE_VALUE(0x14,0x0A)

usart cts change interrupt

Definition at line 77 of file at32f403_usart.h.

◆ USART_ERR_INT

#define USART_ERR_INT MAKE_VALUE(0x14,0x00)

usart error interrupt

Definition at line 76 of file at32f403_usart.h.

◆ USART_IDLE_INT

#define USART_IDLE_INT MAKE_VALUE(0x0C,0x04)

usart idle interrupt

Definition at line 70 of file at32f403_usart.h.

◆ USART_PERR_INT

#define USART_PERR_INT MAKE_VALUE(0x0C,0x08)

usart parity error interrupt

Definition at line 74 of file at32f403_usart.h.

◆ USART_RDBF_INT

#define USART_RDBF_INT MAKE_VALUE(0x0C,0x05)

usart receive data buffer full interrupt

Definition at line 71 of file at32f403_usart.h.

◆ USART_TDBE_INT

#define USART_TDBE_INT MAKE_VALUE(0x0C,0x07)

usart transmit data buffer empty interrupt

Definition at line 73 of file at32f403_usart.h.

◆ USART_TDC_INT

#define USART_TDC_INT MAKE_VALUE(0x0C,0x06)

usart transmit data complete interrupt

Definition at line 72 of file at32f403_usart.h.


AT32F403 Firmwary Library: USART_exported_types

Data Structures | Enumerations
USART_exported_types
AT32F403_periph_driver » USART

Data Structures

struct usart_type
type define usart register all More...

Enumerations

enum | usart_parity_selection_type { USART_PARITY_NONE = 0x00 , USART_PARITY_EVEN = 0x01 , USART_PARITY_ODD = 0x02 }
usart parity selection type More...
enum | usart_wakeup_mode_type { USART_WAKEUP_BY_IDLE_FRAME = 0x00 , USART_WAKEUP_BY_MATCHING_ID = 0x01 }
usart wakeup mode type More...
enum | usart_data_bit_num_type { USART_DATA_8BITS = 0x00 , USART_DATA_9BITS = 0x01 }
usart data bit num type More...
enum | usart_break_bit_num_type { USART_BREAK_10BITS = 0x00 , USART_BREAK_11BITS = 0x01 }
usart break frame bit num type More...
enum | usart_clock_phase_type { USART_CLOCK_PHASE_1EDGE = 0x00 , USART_CLOCK_PHASE_2EDGE = 0x01 }
usart phase of the clock type More...
enum | usart_clock_polarity_type { USART_CLOCK_POLARITY_LOW = 0x00 , USART_CLOCK_POLARITY_HIGH = 0x01 }
usart polarity of the clock type More...
enum | usart_lbcp_type { USART_CLOCK_LAST_BIT_NONE = 0x00 , USART_CLOCK_LAST_BIT_OUTPUT = 0x01 }
usart last bit clock pulse type More...
enum | usart_stop_bit_num_type { USART_STOP_1_BIT = 0x00 , USART_STOP_0_5_BIT = 0x01 , USART_STOP_2_BIT = 0x02 , USART_STOP_1_5_BIT = 0x03 }
usart stop bit num type More...
enum | usart_hardware_flow_control_type { USART_HARDWARE_FLOW_NONE = 0x00 , USART_HARDWARE_FLOW_RTS = 0x01 , USART_HARDWARE_FLOW_CTS = 0x02 , USART_HARDWARE_FLOW_RTS_CTS = 0x03 }
usart hardware flow control type More...

Detailed Description

Enumeration Type Documentation

◆ usart_break_bit_num_type

enum usart_break_bit_num_type

usart break frame bit num type

Enumerator
USART_BREAK_10BITS | usart lin mode berak frame detection 10 bits
USART_BREAK_11BITS | usart lin mode berak frame detection 11 bits

Definition at line 118 of file at32f403_usart.h.

◆ usart_clock_phase_type

enum usart_clock_phase_type

usart phase of the clock type

Enumerator
USART_CLOCK_PHASE_1EDGE | usart data capture is done on the clock leading edge
USART_CLOCK_PHASE_2EDGE | usart data capture is done on the clock trailing edge

Definition at line 127 of file at32f403_usart.h.

◆ usart_clock_polarity_type

enum usart_clock_polarity_type

usart polarity of the clock type

Enumerator
USART_CLOCK_POLARITY_LOW | usart clock stay low level outside transmission window
USART_CLOCK_POLARITY_HIGH | usart clock stay high level outside transmission window

Definition at line 136 of file at32f403_usart.h.

◆ usart_data_bit_num_type

enum usart_data_bit_num_type

usart data bit num type

Enumerator
USART_DATA_8BITS | usart data size is 8 bits
USART_DATA_9BITS | usart data size is 9 bits

Definition at line 109 of file at32f403_usart.h.

◆ usart_hardware_flow_control_type

enum usart_hardware_flow_control_type

usart hardware flow control type

Enumerator
USART_HARDWARE_FLOW_NONE | usart without hardware flow
USART_HARDWARE_FLOW_RTS | usart hardware flow only rts
USART_HARDWARE_FLOW_CTS | usart hardware flow only cts
USART_HARDWARE_FLOW_RTS_CTS | usart hardware flow both rts and cts

Definition at line 165 of file at32f403_usart.h.

◆ usart_lbcp_type

enum usart_lbcp_type

usart last bit clock pulse type

Enumerator
USART_CLOCK_LAST_BIT_NONE | usart clock pulse of the last data bit is not outputted
USART_CLOCK_LAST_BIT_OUTPUT | usart clock pulse of the last data bit is outputted

Definition at line 145 of file at32f403_usart.h.

◆ usart_parity_selection_type

enum usart_parity_selection_type

usart parity selection type

Enumerator
USART_PARITY_NONE | usart no parity
USART_PARITY_EVEN | usart even parity
USART_PARITY_ODD | usart odd parity

Definition at line 90 of file at32f403_usart.h.

◆ usart_stop_bit_num_type

enum usart_stop_bit_num_type

usart stop bit num type

Enumerator
USART_STOP_1_BIT | usart stop bits num is 1
USART_STOP_0_5_BIT | usart stop bits num is 0.5
USART_STOP_2_BIT | usart stop bits num is 2
USART_STOP_1_5_BIT | usart stop bits num is 1.5

Definition at line 154 of file at32f403_usart.h.

◆ usart_wakeup_mode_type

enum usart_wakeup_mode_type

usart wakeup mode type

Enumerator
USART_WAKEUP_BY_IDLE_FRAME | usart wakeup by idle frame
USART_WAKEUP_BY_MATCHING_ID | usart wakeup by matching id

Definition at line 100 of file at32f403_usart.h.


AT32F403 Firmwary Library: usart_type Struct Reference

Data Fields
usart_type Struct Reference
AT32F403_periph_driver » USART » USART_exported_types

type define usart register all More...

#include <at32f403_usart.h>

Data Fields

union {
__IO uint32_t sts
struct {
__IO uint32_t perr: 1
__IO uint32_t ferr: 1
__IO uint32_t nerr: 1
__IO uint32_t roerr: 1
__IO uint32_t idlef: 1
__IO uint32_t rdbf: 1
__IO uint32_t tdc: 1
__IO uint32_t tdbe: 1
__IO uint32_t bff: 1
__IO uint32_t ctscf: 1
__IO uint32_t reserved1: 22
} sts_bit
};
usart sts register, offset:0x00 More...
union {
__IO uint32_t dt
struct {
__IO uint32_t dt: 9
__IO uint32_t reserved1: 23
} dt_bit
};
usart dt register, offset:0x04 More...
union {
__IO uint32_t baudr
struct {
__IO uint32_t div: 16
__IO uint32_t reserved1: 16
} baudr_bit
};
usart baudr register, offset:0x08 More...
union {
__IO uint32_t ctrl1
struct {
__IO uint32_t sbf: 1
__IO uint32_t rm: 1
__IO uint32_t ren: 1
__IO uint32_t ten: 1
__IO uint32_t idleien: 1
__IO uint32_t rdbfien: 1
__IO uint32_t tdcien: 1
__IO uint32_t tdbeien: 1
__IO uint32_t perrien: 1
__IO uint32_t psel: 1
__IO uint32_t pen: 1
__IO uint32_t wum: 1
__IO uint32_t dbn: 1
__IO uint32_t uen: 1
__IO uint32_t reserved1: 18
} ctrl1_bit
};
usart ctrl1 register, offset:0x0C More...
union {
__IO uint32_t ctrl2
struct {
__IO uint32_t id: 4
__IO uint32_t reserved1: 1
__IO uint32_t bfbn: 1
__IO uint32_t bfien: 1
__IO uint32_t reserved2: 1
__IO uint32_t lbcp: 1
__IO uint32_t clkpha: 1
__IO uint32_t clkpol: 1
__IO uint32_t clken: 1
__IO uint32_t stopbn: 2
__IO uint32_t linen: 1
__IO uint32_t reserved3: 17
} ctrl2_bit
};
usart ctrl2 register, offset:0x10 More...
union {
__IO uint32_t ctrl3
struct {
__IO uint32_t errien: 1
__IO uint32_t irdaen: 1
__IO uint32_t irdalp: 1
__IO uint32_t slben: 1
__IO uint32_t scnacken: 1
__IO uint32_t scmen: 1
__IO uint32_t dmaren: 1
__IO uint32_t dmaten: 1
__IO uint32_t rtsen: 1
__IO uint32_t ctsen: 1
__IO uint32_t ctscfien: 1
__IO uint32_t reserved1: 21
} ctrl3_bit
};
usart ctrl3 register, offset:0x14 More...
union {
__IO uint32_t gdiv
struct {
__IO uint32_t isdiv: 8
__IO uint32_t scgt: 8
__IO uint32_t reserved1: 16
} gdiv_bit
};
usart gdiv register, offset:0x18 More...

Detailed Description

type define usart register all

Definition at line 176 of file at32f403_usart.h.

Field Documentation

◆

union { ... } usart_type::@690

usart sts register, offset:0x00

◆

union { ... } usart_type::@692

usart dt register, offset:0x04

◆

union { ... } usart_type::@694

usart baudr register, offset:0x08

◆

union { ... } usart_type::@696

usart ctrl1 register, offset:0x0C

◆

union { ... } usart_type::@698

usart ctrl2 register, offset:0x10

◆

union { ... } usart_type::@700

usart ctrl3 register, offset:0x14

◆

union { ... } usart_type::@702

usart gdiv register, offset:0x18

◆ baudr

__IO uint32_t usart_type::baudr

Definition at line 218 of file at32f403_usart.h.

◆

struct { ... } usart_type::baudr_bit

Referenced by usart_init().

◆ bfbn

__IO uint32_t usart_type::bfbn

Definition at line 262 of file at32f403_usart.h.

Referenced by usart_break_bit_num_set().

◆ bff

__IO uint32_t usart_type::bff

Definition at line 194 of file at32f403_usart.h.

◆ bfien

__IO uint32_t usart_type::bfien

Definition at line 263 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ clken

__IO uint32_t usart_type::clken

Definition at line 268 of file at32f403_usart.h.

Referenced by usart_clock_enable().

◆ clkpha

__IO uint32_t usart_type::clkpha

Definition at line 266 of file at32f403_usart.h.

Referenced by usart_clock_config().

◆ clkpol

__IO uint32_t usart_type::clkpol

Definition at line 267 of file at32f403_usart.h.

Referenced by usart_clock_config().

◆ ctrl1

__IO uint32_t usart_type::ctrl1

Definition at line 231 of file at32f403_usart.h.

◆

struct { ... } usart_type::ctrl1_bit

Referenced by usart_break_send(), usart_enable(), usart_init(), usart_interrupt_flag_get(), usart_parity_selection_config(), usart_receiver_enable(), usart_receiver_mute_enable(), usart_transmitter_enable(), and usart_wakeup_mode_set().

◆ ctrl2

__IO uint32_t usart_type::ctrl2

Definition at line 257 of file at32f403_usart.h.

◆

struct { ... } usart_type::ctrl2_bit

Referenced by usart_break_bit_num_set(), usart_clock_config(), usart_clock_enable(), usart_init(), usart_interrupt_flag_get(), usart_lin_mode_enable(), and usart_wakeup_id_set().

◆ ctrl3

__IO uint32_t usart_type::ctrl3

Definition at line 280 of file at32f403_usart.h.

◆

struct { ... } usart_type::ctrl3_bit

Referenced by usart_dma_receiver_enable(), usart_dma_transmitter_enable(), usart_hardware_flow_control_set(), usart_interrupt_flag_get(), usart_irda_low_power_enable(), usart_irda_mode_enable(), usart_single_line_halfduplex_select(), usart_smartcard_mode_enable(), and usart_smartcard_nack_set().

◆ ctscf

__IO uint32_t usart_type::ctscf

Definition at line 195 of file at32f403_usart.h.

◆ ctscfien

__IO uint32_t usart_type::ctscfien

Definition at line 293 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ ctsen

__IO uint32_t usart_type::ctsen

Definition at line 292 of file at32f403_usart.h.

Referenced by usart_hardware_flow_control_set().

◆ dbn

__IO uint32_t usart_type::dbn

Definition at line 246 of file at32f403_usart.h.

Referenced by usart_init().

◆ div

__IO uint32_t usart_type::div

Definition at line 221 of file at32f403_usart.h.

Referenced by usart_init().

◆ dmaren

__IO uint32_t usart_type::dmaren

Definition at line 289 of file at32f403_usart.h.

Referenced by usart_dma_receiver_enable().

◆ dmaten

__IO uint32_t usart_type::dmaten

Definition at line 290 of file at32f403_usart.h.

Referenced by usart_dma_transmitter_enable().

◆ dt

__IO uint32_t usart_type::dt

Definition at line 205 of file at32f403_usart.h.

Referenced by usart_data_receive(), usart_data_transmit(), and usart_flag_clear().

◆

struct { ... } usart_type::dt_bit

◆ errien

__IO uint32_t usart_type::errien

Definition at line 283 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ ferr

__IO uint32_t usart_type::ferr

Definition at line 187 of file at32f403_usart.h.

◆ gdiv

__IO uint32_t usart_type::gdiv

Definition at line 303 of file at32f403_usart.h.

◆

struct { ... } usart_type::gdiv_bit

Referenced by usart_irda_smartcard_division_set(), and usart_smartcard_guard_time_set().

◆ id

__IO uint32_t usart_type::id

Definition at line 260 of file at32f403_usart.h.

Referenced by usart_wakeup_id_set().

◆ idlef

__IO uint32_t usart_type::idlef

Definition at line 190 of file at32f403_usart.h.

◆ idleien

__IO uint32_t usart_type::idleien

Definition at line 238 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ irdaen

__IO uint32_t usart_type::irdaen

Definition at line 284 of file at32f403_usart.h.

Referenced by usart_irda_mode_enable().

◆ irdalp

__IO uint32_t usart_type::irdalp

Definition at line 285 of file at32f403_usart.h.

Referenced by usart_irda_low_power_enable().

◆ isdiv

__IO uint32_t usart_type::isdiv

Definition at line 306 of file at32f403_usart.h.

Referenced by usart_irda_smartcard_division_set().

◆ lbcp

__IO uint32_t usart_type::lbcp

Definition at line 265 of file at32f403_usart.h.

Referenced by usart_clock_config().

◆ linen

__IO uint32_t usart_type::linen

Definition at line 270 of file at32f403_usart.h.

Referenced by usart_lin_mode_enable().

◆ nerr

__IO uint32_t usart_type::nerr

Definition at line 188 of file at32f403_usart.h.

◆ pen

__IO uint32_t usart_type::pen

Definition at line 244 of file at32f403_usart.h.

Referenced by usart_parity_selection_config().

◆ perr

__IO uint32_t usart_type::perr

Definition at line 186 of file at32f403_usart.h.

◆ perrien

__IO uint32_t usart_type::perrien

Definition at line 242 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ psel

__IO uint32_t usart_type::psel

Definition at line 243 of file at32f403_usart.h.

Referenced by usart_parity_selection_config().

◆ rdbf

__IO uint32_t usart_type::rdbf

Definition at line 191 of file at32f403_usart.h.

◆ rdbfien

__IO uint32_t usart_type::rdbfien

Definition at line 239 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ ren

__IO uint32_t usart_type::ren

Definition at line 236 of file at32f403_usart.h.

Referenced by usart_receiver_enable().

◆ reserved1

__IO uint32_t usart_type::reserved1

Definition at line 196 of file at32f403_usart.h.

◆ reserved2

__IO uint32_t usart_type::reserved2

Definition at line 264 of file at32f403_usart.h.

◆ reserved3

__IO uint32_t usart_type::reserved3

Definition at line 271 of file at32f403_usart.h.

◆ rm

__IO uint32_t usart_type::rm

Definition at line 235 of file at32f403_usart.h.

Referenced by usart_receiver_mute_enable().

◆ roerr

__IO uint32_t usart_type::roerr

Definition at line 189 of file at32f403_usart.h.

◆ rtsen

__IO uint32_t usart_type::rtsen

Definition at line 291 of file at32f403_usart.h.

Referenced by usart_hardware_flow_control_set().

◆ sbf

__IO uint32_t usart_type::sbf

Definition at line 234 of file at32f403_usart.h.

Referenced by usart_break_send().

◆ scgt

__IO uint32_t usart_type::scgt

Definition at line 307 of file at32f403_usart.h.

Referenced by usart_smartcard_guard_time_set().

◆ scmen

__IO uint32_t usart_type::scmen

Definition at line 288 of file at32f403_usart.h.

Referenced by usart_smartcard_mode_enable().

◆ scnacken

__IO uint32_t usart_type::scnacken

Definition at line 287 of file at32f403_usart.h.

Referenced by usart_smartcard_nack_set().

◆ slben

__IO uint32_t usart_type::slben

Definition at line 286 of file at32f403_usart.h.

Referenced by usart_single_line_halfduplex_select().

◆ stopbn

__IO uint32_t usart_type::stopbn

Definition at line 269 of file at32f403_usart.h.

Referenced by usart_init().

◆ sts

__IO uint32_t usart_type::sts

Definition at line 183 of file at32f403_usart.h.

Referenced by usart_flag_clear(), usart_flag_get(), and usart_interrupt_flag_get().

◆

struct { ... } usart_type::sts_bit

◆ tdbe

__IO uint32_t usart_type::tdbe

Definition at line 193 of file at32f403_usart.h.

◆ tdbeien

__IO uint32_t usart_type::tdbeien

Definition at line 241 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ tdc

__IO uint32_t usart_type::tdc

Definition at line 192 of file at32f403_usart.h.

◆ tdcien

__IO uint32_t usart_type::tdcien

Definition at line 240 of file at32f403_usart.h.

Referenced by usart_interrupt_flag_get().

◆ ten

__IO uint32_t usart_type::ten

Definition at line 237 of file at32f403_usart.h.

Referenced by usart_transmitter_enable().

◆ uen

__IO uint32_t usart_type::uen

Definition at line 247 of file at32f403_usart.h.

Referenced by usart_enable().

◆ wum

__IO uint32_t usart_type::wum

Definition at line 245 of file at32f403_usart.h.

Referenced by usart_wakeup_mode_set().

The documentation for this struct was generated from the following file:
  • at32f403_usart.h


AT32F403 Firmwary Library: USART_exported_functions

Functions
USART_exported_functions
AT32F403_periph_driver » USART

Functions

void | usart_reset (usart_type *usart_x)
deinitialize the usart peripheral registers to their default reset values. More...
void | usart_init (usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters. More...
void | usart_parity_selection_config (usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config. More...
void | usart_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral. More...
void | usart_transmitter_enable (usart_type *usart_x, confirm_state new_state)
usart transmitter enable. More...
void | usart_receiver_enable (usart_type *usart_x, confirm_state new_state)
usart receiver enable. More...
void | usart_clock_config (usart_type *usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
usart clock config. More...
void | usart_clock_enable (usart_type *usart_x, confirm_state new_state)
usart enable the ck pin. More...
void | usart_interrupt_enable (usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts. More...
void | usart_dma_transmitter_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface. More...
void | usart_dma_receiver_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface. More...
void | usart_wakeup_id_set (usart_type *usart_x, uint8_t usart_id)
set the wakeup id of the usart. More...
void | usart_wakeup_mode_set (usart_type *usart_x, usart_wakeup_mode_type wakeup_mode)
select the usart wakeup method in multi-processor communication. More...
void | usart_receiver_mute_enable (usart_type *usart_x, confirm_state new_state)
config the usart in mute mode in multi-processor communication. More...
void | usart_break_bit_num_set (usart_type *usart_x, usart_break_bit_num_type break_bit)
set the usart break frame bit num. More...
void | usart_lin_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart lin mode. More...
void | usart_data_transmit (usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral. More...
uint16_t | usart_data_receive (usart_type *usart_x)
return the most recent received data by the usart peripheral. More...
void | usart_break_send (usart_type *usart_x)
transmit break characters. More...
void | usart_smartcard_guard_time_set (usart_type *usart_x, uint8_t guard_time_val)
config the specified usart smartcard guard time. More...
void | usart_irda_smartcard_division_set (usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division. More...
void | usart_smartcard_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart smart card mode. More...
void | usart_smartcard_nack_set (usart_type *usart_x, confirm_state new_state)
enable or disable nack transmission in smartcard mode. More...
void | usart_single_line_halfduplex_select (usart_type *usart_x, confirm_state new_state)
enable or disable the usart single line bidirectional half-duplex communication. More...
void | usart_irda_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's irda interface. More...
void | usart_irda_low_power_enable (usart_type *usart_x, confirm_state new_state)
configure the usart's irda low power. More...
void | usart_hardware_flow_control_set (usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control. More...
flag_status | usart_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not. More...
flag_status | usart_interrupt_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart interrupt flag is set or not. More...
void | usart_flag_clear (usart_type *usart_x, uint32_t flag)
clear the usart's pending flags. More...

Detailed Description

Function Documentation

◆ usart_break_bit_num_set()

void usart_break_bit_num_set | ( | usart_type * | usart_x,
 |  | usart_break_bit_num_type | break_bit
 | ) |  |

set the usart break frame bit num.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
break_bit specifies the break bit num. this parameter can be one of the following values:
  • USART_BREAK_10BITS
  • USART_BREAK_11BITS
Return values
none

Definition at line 350 of file at32f403_usart.c.

◆ usart_break_send()

void usart_break_send ( usart_type * usart_x )

transmit break characters.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
Return values
none

Definition at line 401 of file at32f403_usart.c.

◆ usart_clock_config()

void usart_clock_config | ( | usart_type * | usart_x,
 |  | usart_clock_polarity_type | clk_pol,
 |  | usart_clock_phase_type | clk_pha,
 |  | usart_lbcp_type | clk_lb
 | ) |  |

usart clock config.

Note
clock config are not available for UART4, UART5, UART7 and UART8.
Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
clk_pol polarity of the clock output on the ck pin. this parameter can be one of the following values:
  • USART_CLOCK_POLARITY_LOW
  • USART_CLOCK_POLARITY_HIGH
clk_pha phase of the clock output on the ck pin. this parameter can be one of the following values:
  • USART_CLOCK_PHASE_1EDGE
  • USART_CLOCK_PHASE_2EDGE
clk_lb whether the clock pulse of the last data bit transmitted (MSB) is outputted on the ck pin. this parameter can be one of the following values:
  • USART_CLOCK_LAST_BIT_NONE
  • USART_CLOCK_LAST_BIT_OUTPUT
Return values
none

Definition at line 220 of file at32f403_usart.c.

Referenced by usart_spi_configuration().

◆ usart_clock_enable()

void usart_clock_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

usart enable the ck pin.

Note
clock enable are not available for UART4, UART5, UART7 and UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
new_state | TRUE or FALSE
Return values
none

Definition at line 236 of file at32f403_usart.c.

Referenced by usart_configuration(), and usart_spi_configuration().

◆ usart_data_receive()

uint16_t usart_data_receive ( usart_type * usart_x )

return the most recent received data by the usart peripheral.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
Return values
the received data.

Definition at line 389 of file at32f403_usart.c.

Referenced by main(), SC_USART_IRQHandler(), USART1_IRQHandler(), USART2_IRQHandler(), and USART3_IRQHandler().

◆ usart_data_transmit()

void usart_data_transmit | ( | usart_type * | usart_x,
 |  | uint16_t | data
 | ) |  |

transmit single data through the usart peripheral.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
data | the data to transmit.
Return values
none

Definition at line 377 of file at32f403_usart.c.

Referenced by back_err(), back_ok(), fputc(), main(), rs485_send_data(), USART2_IRQHandler(), USART3_IRQHandler(), and usart_send_data().

◆ usart_dma_receiver_enable()

void usart_dma_receiver_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart's dma receiver interface.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the dma request sources. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 291 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_dma_transmitter_enable()

void usart_dma_transmitter_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart's dma transmitter interface.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the dma request sources. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 277 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_enable()

void usart_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified usart peripheral.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the usart peripheral. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 169 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_flag_clear()

void usart_flag_clear | ( | usart_type * | usart_x,
 |  | uint32_t | flag
 | ) |  |

clear the usart's pending flags.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
flag specifies the flag to clear. this parameter can be any combination of the following values:
  • USART_CTSCF_FLAG: (not available for UART4,UART5).
  • USART_BFF_FLAG:
  • USART_TDC_FLAG:
  • USART_RDBF_FLAG:
  • USART_PERR_FLAG:
  • USART_FERR_FLAG:
  • USART_NERR_FLAG:
  • USART_ROERR_FLAG:
  • USART_IDLEF_FLAG:
Note
  • USART_PERR_FLAG, USART_FERR_FLAG, USART_NERR_FLAG, USART_ROERR_FLAG and USART_IDLEF_FLAG are cleared by software sequence: a read operation to usart sts register (usart_flag_get()) followed by a read operation to usart dt register (usart_data_receive()).
  • USART_RDBF_FLAG can be also cleared by a read to the usart dt register(usart_data_receive()).
  • USART_TDC_FLAG can be also cleared by software sequence: a read operation to usart sts register (usart_flag_get()) followed by a write operation to usart dt register (usart_data_transmit()).
  • USART_TDBE_FLAG is cleared only by a write to the usart dt register(usart_data_transmit()).
Return values
none

< usart parity error flag

< usart framing error flag

< usart noise error flag

< usart receiver overflow error flag

< usart idle flag

Definition at line 673 of file at32f403_usart.c.

Referenced by rs485_config().

◆ usart_flag_get()

flag_status usart_flag_get | ( | usart_type * | usart_x,
 |  | uint32_t | flag
 | ) |  |

check whether the specified usart flag is set or not.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
flag specifies the flag to check. this parameter can be one of the following values:
  • USART_CTSCF_FLAG: cts change flag (not available for UART4,UART5)
  • USART_BFF_FLAG: break frame flag
  • USART_TDBE_FLAG: transmit data buffer empty flag
  • USART_TDC_FLAG: transmit data complete flag
  • USART_RDBF_FLAG: receive data buffer full flag
  • USART_IDLEF_FLAG: idle flag
  • USART_ROERR_FLAG: receiver overflow error flag
  • USART_NERR_FLAG: noise error flag
  • USART_FERR_FLAG: framing error flag
  • USART_PERR_FLAG: parity error flag
Return values
the new state of usart_flag (SET or RESET).

Definition at line 562 of file at32f403_usart.c.

Referenced by back_err(), back_ok(), fputc(), main(), rs485_send_data(), SC_USART_IRQHandler(), USART1_IRQHandler(), USART2_IRQHandler(), USART3_IRQHandler(), and usart_send_data().

◆ usart_hardware_flow_control_set()

void usart_hardware_flow_control_set | ( | usart_type * | usart_x,
 |  | usart_hardware_flow_control_type | flow_state
 | ) |  |

configure the usart's hardware flow control.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3
flow_state specifies the hardware flow control. this parameter can be one of the following values:
  • USART_HARDWARE_FLOW_NONE
  • USART_HARDWARE_FLOW_RTS,
  • USART_HARDWARE_FLOW_CTS,
  • USART_HARDWARE_FLOW_RTS_CTS
Return values
none

Definition at line 519 of file at32f403_usart.c.

Referenced by usart1_config(), and usart_configuration().

◆ usart_init()

void usart_init | ( | usart_type * | usart_x,
 |  | uint32_t | baud_rate,
 |  | usart_data_bit_num_type | data_bit,
 |  | usart_stop_bit_num_type | stop_bit
 | ) |  |

initialize the usart peripheral according to the specified parameters.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
baud_rate | configure the usart communication baud rate.
data_bit data bits transmitted or received in a frame this parameter can be one of the following values:
  • USART_DATA_8BITS
  • USART_DATA_9BITS. note：
  • when parity check is disabled, the data bit width is the actual data bit number.
  • when parity check is enabled, the data bit width is the actual data bit number minus 1, and the MSB bit is replaced with the parity bit.
stop_bit stop bits transmitted this parameter can be one of the following values:
  • USART_STOP_1_BIT
  • USART_STOP_0_5_BIT.
  • USART_STOP_2_BIT
  • USART_STOP_1_5_BIT.
Return values
none

Definition at line 102 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_interrupt_enable()

void usart_interrupt_enable | ( | usart_type * | usart_x,
 |  | uint32_t | usart_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified usart interrupts.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
usart_int specifies the USART interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • USART_IDLE_INT: idle interrupt
  • USART_RDBF_INT: rdbf interrupt
  • USART_TDC_INT: tdc interrupt
  • USART_TDBE_INT: tdbe interrupt
  • USART_PERR_INT: perr interrupt
  • USART_BF_INT: break frame interrupt
  • USART_ERR_INT: err interrupt
  • USART_CTSCF_INT: ctscf interrupt
new_state | new state of the specified usart interrupts. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 260 of file at32f403_usart.c.

Referenced by data_take(), main(), rs485_config(), SC_USART_IRQHandler(), uart_init(), usart1_config(), USART2_IRQHandler(), USART3_IRQHandler(), usart_configuration(), and usb_usart_config().

◆ usart_interrupt_flag_get()

flag_status usart_interrupt_flag_get | ( | usart_type * | usart_x,
 |  | uint32_t | flag
 | ) |  |

check whether the specified usart interrupt flag is set or not.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
flag specifies the flag to check. this parameter can be one of the following values:
  • USART_CTSCF_FLAG: cts change flag (not available for UART4,UART5)
  • USART_BFF_FLAG: break frame flag
  • USART_TDBE_FLAG: transmit data buffer empty flag
  • USART_TDC_FLAG: transmit data complete flag
  • USART_RDBF_FLAG: receive data buffer full flag
  • USART_IDLEF_FLAG: idle flag
  • USART_ROERR_FLAG: receiver overflow error flag
  • USART_NERR_FLAG: noise error flag
  • USART_FERR_FLAG: framing error flag
  • USART_PERR_FLAG: parity error flag
Return values
the new state of usart_flag (SET or RESET).

< usart cts change flag

< usart break frame flag

< usart transmit data buffer empty flag

< usart transmit data complete flag

< usart receive data buffer full flag

< usart receiver overflow error flag

< usart idle flag

< usart noise error flag

< usart framing error flag

< usart parity error flag

Definition at line 593 of file at32f403_usart.c.

◆ usart_irda_low_power_enable()

void usart_irda_low_power_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

configure the usart's irda low power.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the irda mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 501 of file at32f403_usart.c.

◆ usart_irda_mode_enable()

void usart_irda_mode_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart's irda interface.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the irda mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 487 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_irda_smartcard_division_set()

void usart_irda_smartcard_division_set | ( | usart_type * | usart_x,
 |  | uint8_t | div_val
 | ) |  |

config the irda/smartcard division.

Note
the division are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
div_val | specifies the division.
Return values
none

Definition at line 429 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_lin_mode_enable()

void usart_lin_mode_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart lin mode.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the usart lin mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 364 of file at32f403_usart.c.

◆ usart_parity_selection_config()

void usart_parity_selection_config | ( | usart_type * | usart_x,
 |  | usart_parity_selection_type | parity
 | ) |  |

usart parity selection config.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
parity select the none, odd or even parity. this parameter can be one of the following values:
  • USART_PARITY_NONE
  • USART_PARITY_EVEN.
  • USART_PARITY_ODD
Return values
none

Definition at line 141 of file at32f403_usart.c.

Referenced by usart1_config(), usart_configuration(), and usb_usart_config().

◆ usart_receiver_enable()

void usart_receiver_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

usart receiver enable.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
new_state | TRUE or FALSE.
Return values
none

Definition at line 195 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_receiver_mute_enable()

void usart_receiver_mute_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

config the usart in mute mode in multi-processor communication.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the usart mute mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 334 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_reset()

void usart_reset ( usart_type * usart_x )

deinitialize the usart peripheral registers to their default reset values.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
Return values
none

Definition at line 50 of file at32f403_usart.c.

◆ usart_single_line_halfduplex_select()

void usart_single_line_halfduplex_select | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart single line bidirectional half-duplex communication.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the single line half-duplex select. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 473 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_smartcard_guard_time_set()

void usart_smartcard_guard_time_set | ( | usart_type * | usart_x,
 |  | uint8_t | guard_time_val
 | ) |  |

config the specified usart smartcard guard time.

Note
The guard time bits are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
guard_time_val | specifies the guard time (0x00~0xFF).
Return values
none

Definition at line 415 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_smartcard_mode_enable()

void usart_smartcard_mode_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart smart card mode.

Note
the smart card mode are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
new_state | new state of the smart card mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 444 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_smartcard_nack_set()

void usart_smartcard_nack_set | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable nack transmission in smartcard mode.

Note
the smart card nack are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
new_state | new state of the nack transmission. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 459 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_transmitter_enable()

void usart_transmitter_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

usart transmitter enable.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
new_state | TRUE or FALSE.
Return values
none

Definition at line 182 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_wakeup_id_set()

void usart_wakeup_id_set | ( | usart_type * | usart_x,
 |  | uint8_t | usart_id
 | ) |  |

set the wakeup id of the usart.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
usart_id | the matching id(0x0~0xF).
Return values
none

Definition at line 304 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_wakeup_mode_set()

void usart_wakeup_mode_set | ( | usart_type * | usart_x,
 |  | usart_wakeup_mode_type | wakeup_mode
 | ) |  |

select the usart wakeup method in multi-processor communication.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
wakeup_mode determines the way to wake up usart method. this parameter can be one of the following values:
  • USART_WAKEUP_BY_IDLE_FRAME
  • USART_WAKEUP_BY_MATCHING_ID
Return values
none

Definition at line 320 of file at32f403_usart.c.

Referenced by usart_configuration().


AT32F403 Firmwary Library: USART_private_functions

Functions
USART_private_functions
AT32F403_periph_driver » USART

Functions

void | usart_reset (usart_type *usart_x)
deinitialize the usart peripheral registers to their default reset values. More...
void | usart_init (usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters. More...
void | usart_parity_selection_config (usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config. More...
void | usart_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral. More...
void | usart_transmitter_enable (usart_type *usart_x, confirm_state new_state)
usart transmitter enable. More...
void | usart_receiver_enable (usart_type *usart_x, confirm_state new_state)
usart receiver enable. More...
void | usart_clock_config (usart_type *usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
usart clock config. More...
void | usart_clock_enable (usart_type *usart_x, confirm_state new_state)
usart enable the ck pin. More...
void | usart_interrupt_enable (usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts. More...
void | usart_dma_transmitter_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface. More...
void | usart_dma_receiver_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface. More...
void | usart_wakeup_id_set (usart_type *usart_x, uint8_t usart_id)
set the wakeup id of the usart. More...
void | usart_wakeup_mode_set (usart_type *usart_x, usart_wakeup_mode_type wakeup_mode)
select the usart wakeup method in multi-processor communication. More...
void | usart_receiver_mute_enable (usart_type *usart_x, confirm_state new_state)
config the usart in mute mode in multi-processor communication. More...
void | usart_break_bit_num_set (usart_type *usart_x, usart_break_bit_num_type break_bit)
set the usart break frame bit num. More...
void | usart_lin_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart lin mode. More...
void | usart_data_transmit (usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral. More...
uint16_t | usart_data_receive (usart_type *usart_x)
return the most recent received data by the usart peripheral. More...
void | usart_break_send (usart_type *usart_x)
transmit break characters. More...
void | usart_smartcard_guard_time_set (usart_type *usart_x, uint8_t guard_time_val)
config the specified usart smartcard guard time. More...
void | usart_irda_smartcard_division_set (usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division. More...
void | usart_smartcard_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart smart card mode. More...
void | usart_smartcard_nack_set (usart_type *usart_x, confirm_state new_state)
enable or disable nack transmission in smartcard mode. More...
void | usart_single_line_halfduplex_select (usart_type *usart_x, confirm_state new_state)
enable or disable the usart single line bidirectional half-duplex communication. More...
void | usart_irda_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's irda interface. More...
void | usart_irda_low_power_enable (usart_type *usart_x, confirm_state new_state)
configure the usart's irda low power. More...
void | usart_hardware_flow_control_set (usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control. More...
flag_status | usart_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not. More...
flag_status | usart_interrupt_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart interrupt flag is set or not. More...
void | usart_flag_clear (usart_type *usart_x, uint32_t flag)
clear the usart's pending flags. More...

Detailed Description

Function Documentation

◆ usart_break_bit_num_set()

void usart_break_bit_num_set | ( | usart_type * | usart_x,
 |  | usart_break_bit_num_type | break_bit
 | ) |  |

set the usart break frame bit num.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
break_bit specifies the break bit num. this parameter can be one of the following values:
  • USART_BREAK_10BITS
  • USART_BREAK_11BITS
Return values
none

Definition at line 350 of file at32f403_usart.c.

◆ usart_break_send()

void usart_break_send ( usart_type * usart_x )

transmit break characters.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
Return values
none

Definition at line 401 of file at32f403_usart.c.

◆ usart_clock_config()

void usart_clock_config | ( | usart_type * | usart_x,
 |  | usart_clock_polarity_type | clk_pol,
 |  | usart_clock_phase_type | clk_pha,
 |  | usart_lbcp_type | clk_lb
 | ) |  |

usart clock config.

Note
clock config are not available for UART4, UART5, UART7 and UART8.
Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
clk_pol polarity of the clock output on the ck pin. this parameter can be one of the following values:
  • USART_CLOCK_POLARITY_LOW
  • USART_CLOCK_POLARITY_HIGH
clk_pha phase of the clock output on the ck pin. this parameter can be one of the following values:
  • USART_CLOCK_PHASE_1EDGE
  • USART_CLOCK_PHASE_2EDGE
clk_lb whether the clock pulse of the last data bit transmitted (MSB) is outputted on the ck pin. this parameter can be one of the following values:
  • USART_CLOCK_LAST_BIT_NONE
  • USART_CLOCK_LAST_BIT_OUTPUT
Return values
none

Definition at line 220 of file at32f403_usart.c.

Referenced by usart_spi_configuration().

◆ usart_clock_enable()

void usart_clock_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

usart enable the ck pin.

Note
clock enable are not available for UART4, UART5, UART7 and UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
new_state | TRUE or FALSE
Return values
none

Definition at line 236 of file at32f403_usart.c.

Referenced by usart_configuration(), and usart_spi_configuration().

◆ usart_data_receive()

uint16_t usart_data_receive ( usart_type * usart_x )

return the most recent received data by the usart peripheral.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
Return values
the received data.

Definition at line 389 of file at32f403_usart.c.

Referenced by main(), SC_USART_IRQHandler(), USART1_IRQHandler(), USART2_IRQHandler(), and USART3_IRQHandler().

◆ usart_data_transmit()

void usart_data_transmit | ( | usart_type * | usart_x,
 |  | uint16_t | data
 | ) |  |

transmit single data through the usart peripheral.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
data | the data to transmit.
Return values
none

Definition at line 377 of file at32f403_usart.c.

Referenced by back_err(), back_ok(), fputc(), main(), rs485_send_data(), USART2_IRQHandler(), USART3_IRQHandler(), and usart_send_data().

◆ usart_dma_receiver_enable()

void usart_dma_receiver_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart's dma receiver interface.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the dma request sources. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 291 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_dma_transmitter_enable()

void usart_dma_transmitter_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart's dma transmitter interface.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the dma request sources. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 277 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_enable()

void usart_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified usart peripheral.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the usart peripheral. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 169 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_flag_clear()

void usart_flag_clear | ( | usart_type * | usart_x,
 |  | uint32_t | flag
 | ) |  |

clear the usart's pending flags.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
flag specifies the flag to clear. this parameter can be any combination of the following values:
  • USART_CTSCF_FLAG: (not available for UART4,UART5).
  • USART_BFF_FLAG:
  • USART_TDC_FLAG:
  • USART_RDBF_FLAG:
  • USART_PERR_FLAG:
  • USART_FERR_FLAG:
  • USART_NERR_FLAG:
  • USART_ROERR_FLAG:
  • USART_IDLEF_FLAG:
Note
  • USART_PERR_FLAG, USART_FERR_FLAG, USART_NERR_FLAG, USART_ROERR_FLAG and USART_IDLEF_FLAG are cleared by software sequence: a read operation to usart sts register (usart_flag_get()) followed by a read operation to usart dt register (usart_data_receive()).
  • USART_RDBF_FLAG can be also cleared by a read to the usart dt register(usart_data_receive()).
  • USART_TDC_FLAG can be also cleared by software sequence: a read operation to usart sts register (usart_flag_get()) followed by a write operation to usart dt register (usart_data_transmit()).
  • USART_TDBE_FLAG is cleared only by a write to the usart dt register(usart_data_transmit()).
Return values
none

< usart parity error flag

< usart framing error flag

< usart noise error flag

< usart receiver overflow error flag

< usart idle flag

Definition at line 673 of file at32f403_usart.c.

Referenced by rs485_config().

◆ usart_flag_get()

flag_status usart_flag_get | ( | usart_type * | usart_x,
 |  | uint32_t | flag
 | ) |  |

check whether the specified usart flag is set or not.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
flag specifies the flag to check. this parameter can be one of the following values:
  • USART_CTSCF_FLAG: cts change flag (not available for UART4,UART5)
  • USART_BFF_FLAG: break frame flag
  • USART_TDBE_FLAG: transmit data buffer empty flag
  • USART_TDC_FLAG: transmit data complete flag
  • USART_RDBF_FLAG: receive data buffer full flag
  • USART_IDLEF_FLAG: idle flag
  • USART_ROERR_FLAG: receiver overflow error flag
  • USART_NERR_FLAG: noise error flag
  • USART_FERR_FLAG: framing error flag
  • USART_PERR_FLAG: parity error flag
Return values
the new state of usart_flag (SET or RESET).

Definition at line 562 of file at32f403_usart.c.

Referenced by back_err(), back_ok(), fputc(), main(), rs485_send_data(), SC_USART_IRQHandler(), USART1_IRQHandler(), USART2_IRQHandler(), USART3_IRQHandler(), and usart_send_data().

◆ usart_hardware_flow_control_set()

void usart_hardware_flow_control_set | ( | usart_type * | usart_x,
 |  | usart_hardware_flow_control_type | flow_state
 | ) |  |

configure the usart's hardware flow control.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3
flow_state specifies the hardware flow control. this parameter can be one of the following values:
  • USART_HARDWARE_FLOW_NONE
  • USART_HARDWARE_FLOW_RTS,
  • USART_HARDWARE_FLOW_CTS,
  • USART_HARDWARE_FLOW_RTS_CTS
Return values
none

Definition at line 519 of file at32f403_usart.c.

Referenced by usart1_config(), and usart_configuration().

◆ usart_init()

void usart_init | ( | usart_type * | usart_x,
 |  | uint32_t | baud_rate,
 |  | usart_data_bit_num_type | data_bit,
 |  | usart_stop_bit_num_type | stop_bit
 | ) |  |

initialize the usart peripheral according to the specified parameters.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
baud_rate | configure the usart communication baud rate.
data_bit data bits transmitted or received in a frame this parameter can be one of the following values:
  • USART_DATA_8BITS
  • USART_DATA_9BITS. note：
  • when parity check is disabled, the data bit width is the actual data bit number.
  • when parity check is enabled, the data bit width is the actual data bit number minus 1, and the MSB bit is replaced with the parity bit.
stop_bit stop bits transmitted this parameter can be one of the following values:
  • USART_STOP_1_BIT
  • USART_STOP_0_5_BIT.
  • USART_STOP_2_BIT
  • USART_STOP_1_5_BIT.
Return values
none

Definition at line 102 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_interrupt_enable()

void usart_interrupt_enable | ( | usart_type * | usart_x,
 |  | uint32_t | usart_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified usart interrupts.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
usart_int specifies the USART interrupt sources to be enabled or disabled. this parameter can be one of the following values:
  • USART_IDLE_INT: idle interrupt
  • USART_RDBF_INT: rdbf interrupt
  • USART_TDC_INT: tdc interrupt
  • USART_TDBE_INT: tdbe interrupt
  • USART_PERR_INT: perr interrupt
  • USART_BF_INT: break frame interrupt
  • USART_ERR_INT: err interrupt
  • USART_CTSCF_INT: ctscf interrupt
new_state | new state of the specified usart interrupts. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 260 of file at32f403_usart.c.

Referenced by data_take(), main(), rs485_config(), SC_USART_IRQHandler(), uart_init(), usart1_config(), USART2_IRQHandler(), USART3_IRQHandler(), usart_configuration(), and usb_usart_config().

◆ usart_interrupt_flag_get()

flag_status usart_interrupt_flag_get | ( | usart_type * | usart_x,
 |  | uint32_t | flag
 | ) |  |

check whether the specified usart interrupt flag is set or not.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
flag specifies the flag to check. this parameter can be one of the following values:
  • USART_CTSCF_FLAG: cts change flag (not available for UART4,UART5)
  • USART_BFF_FLAG: break frame flag
  • USART_TDBE_FLAG: transmit data buffer empty flag
  • USART_TDC_FLAG: transmit data complete flag
  • USART_RDBF_FLAG: receive data buffer full flag
  • USART_IDLEF_FLAG: idle flag
  • USART_ROERR_FLAG: receiver overflow error flag
  • USART_NERR_FLAG: noise error flag
  • USART_FERR_FLAG: framing error flag
  • USART_PERR_FLAG: parity error flag
Return values
the new state of usart_flag (SET or RESET).

< usart cts change flag

< usart break frame flag

< usart transmit data buffer empty flag

< usart transmit data complete flag

< usart receive data buffer full flag

< usart receiver overflow error flag

< usart idle flag

< usart noise error flag

< usart framing error flag

< usart parity error flag

Definition at line 593 of file at32f403_usart.c.

◆ usart_irda_low_power_enable()

void usart_irda_low_power_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

configure the usart's irda low power.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the irda mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 501 of file at32f403_usart.c.

◆ usart_irda_mode_enable()

void usart_irda_mode_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart's irda interface.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the irda mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 487 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_irda_smartcard_division_set()

void usart_irda_smartcard_division_set | ( | usart_type * | usart_x,
 |  | uint8_t | div_val
 | ) |  |

config the irda/smartcard division.

Note
the division are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
div_val | specifies the division.
Return values
none

Definition at line 429 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_lin_mode_enable()

void usart_lin_mode_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart lin mode.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the usart lin mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 364 of file at32f403_usart.c.

◆ usart_parity_selection_config()

void usart_parity_selection_config | ( | usart_type * | usart_x,
 |  | usart_parity_selection_type | parity
 | ) |  |

usart parity selection config.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
parity select the none, odd or even parity. this parameter can be one of the following values:
  • USART_PARITY_NONE
  • USART_PARITY_EVEN.
  • USART_PARITY_ODD
Return values
none

Definition at line 141 of file at32f403_usart.c.

Referenced by usart1_config(), usart_configuration(), and usb_usart_config().

◆ usart_receiver_enable()

void usart_receiver_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

usart receiver enable.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
new_state | TRUE or FALSE.
Return values
none

Definition at line 195 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_receiver_mute_enable()

void usart_receiver_mute_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

config the usart in mute mode in multi-processor communication.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the usart mute mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 334 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_reset()

void usart_reset ( usart_type * usart_x )

deinitialize the usart peripheral registers to their default reset values.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
Return values
none

Definition at line 50 of file at32f403_usart.c.

◆ usart_single_line_halfduplex_select()

void usart_single_line_halfduplex_select | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart single line bidirectional half-duplex communication.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
new_state | new state of the single line half-duplex select. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 473 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_smartcard_guard_time_set()

void usart_smartcard_guard_time_set | ( | usart_type * | usart_x,
 |  | uint8_t | guard_time_val
 | ) |  |

config the specified usart smartcard guard time.

Note
The guard time bits are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
guard_time_val | specifies the guard time (0x00~0xFF).
Return values
none

Definition at line 415 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_smartcard_mode_enable()

void usart_smartcard_mode_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the usart smart card mode.

Note
the smart card mode are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
new_state | new state of the smart card mode. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 444 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_smartcard_nack_set()

void usart_smartcard_nack_set | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

enable or disable nack transmission in smartcard mode.

Note
the smart card nack are not available for UART4, UART5, UART7 or UART8.
Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3 or USART6.
new_state | new state of the nack transmission. this parameter can be: TRUE or FALSE.
Return values
none

Definition at line 459 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_transmitter_enable()

void usart_transmitter_enable | ( | usart_type * | usart_x,
 |  | confirm_state | new_state
 | ) |  |

usart transmitter enable.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4 ,UART5.
new_state | TRUE or FALSE.
Return values
none

Definition at line 182 of file at32f403_usart.c.

Referenced by rs485_config(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_spi_configuration(), and usb_usart_config().

◆ usart_wakeup_id_set()

void usart_wakeup_id_set | ( | usart_type * | usart_x,
 |  | uint8_t | usart_id
 | ) |  |

set the wakeup id of the usart.

Parameters
usart_x | select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
usart_id | the matching id(0x0~0xF).
Return values
none

Definition at line 304 of file at32f403_usart.c.

Referenced by usart_configuration().

◆ usart_wakeup_mode_set()

void usart_wakeup_mode_set | ( | usart_type * | usart_x,
 |  | usart_wakeup_mode_type | wakeup_mode
 | ) |  |

select the usart wakeup method in multi-processor communication.

Parameters
usart_x select the usart or the uart peripheral. this parameter can be one of the following values: USART1, USART2, USART3, UART4, UART5.
wakeup_mode determines the way to wake up usart method. this parameter can be one of the following values:
  • USART_WAKEUP_BY_IDLE_FRAME
  • USART_WAKEUP_BY_MATCHING_ID
Return values
none

Definition at line 320 of file at32f403_usart.c.

Referenced by usart_configuration().


AT32F403 Firmwary Library: USB

Modules | Macros | Typedefs | Variables
USB
AT32F403_periph_driver

USB driver modules. More...

Modules

USB_interrupts_definition
usb interrupt mask
USB_interrupt_flags_definition
usb interrupt flag
USB_endpoint_register_bit_definition
usb endpoint register bit define
USB_endpoint_tx_and_rx_status_definition
usb endpoint tx and rx status
USB_device_endpoint_register_type_definition
usb device endpoint register type define
USB_buffer_table_default_offset_address_definition
usb buffer table default offset address
USB_packet_buffer_start_address_definition
usb packet buffer start address
USB_exported_enum_types
USB_macro_definition
USB_exported_types
USB_exported_functions
USB_private_functions

Macros

#define USB ((usbd_type *) USBFS_BASE)

Typedefs

typedef usbd_type usb_reg_type

Variables

uint32_t g_usb_packet_address

Detailed Description

USB driver modules.

Macro Definition Documentation

◆ USB

#define USB ((usbd_type *) USBFS_BASE)

Definition at line 651 of file at32f403_usb.h.

Typedef Documentation

◆ usb_reg_type

typedef usbd_type usb_reg_type

Definition at line 653 of file at32f403_usb.h.

Variable Documentation

◆ g_usb_packet_address

uint32_t g_usb_packet_address
extern

usb buffer address

Definition at line 47 of file at32f403_usb.c.

Referenced by usb_read_packet(), usb_usbbufs_enable(), and usb_write_packet().


AT32F403 Firmwary Library: USB_interrupts_definition

Macros
USB_interrupts_definition
AT32F403_periph_driver » USB

usb interrupt mask More...

Macros

#define | USB_LSOF_INT ((uint32_t)0x00000100)
#define | USB_SOF_INT ((uint32_t)0x00000200)
#define | USB_RST_INT ((uint32_t)0x00000400)
#define | USB_SP_INT ((uint32_t)0x00000800)
#define | USB_WK_INT ((uint32_t)0x00001000)
#define | USB_BE_INT ((uint32_t)0x00002000)
#define | USB_UCFOR_INT ((uint32_t)0x00004000)
#define | USB_TC_INT ((uint32_t)0x00008000)

Detailed Description

usb interrupt mask

Macro Definition Documentation

◆ USB_BE_INT

#define USB_BE_INT ((uint32_t)0x00002000)

usb bus error interrupt

Definition at line 57 of file at32f403_usb.h.

◆ USB_LSOF_INT

#define USB_LSOF_INT ((uint32_t)0x00000100)

usb lost sof interrupt

Definition at line 52 of file at32f403_usb.h.

◆ USB_RST_INT

#define USB_RST_INT ((uint32_t)0x00000400)

usb reset interrupt

Definition at line 54 of file at32f403_usb.h.

◆ USB_SOF_INT

#define USB_SOF_INT ((uint32_t)0x00000200)

usb sof interrupt

Definition at line 53 of file at32f403_usb.h.

◆ USB_SP_INT

#define USB_SP_INT ((uint32_t)0x00000800)

usb suspend interrupt

Definition at line 55 of file at32f403_usb.h.

◆ USB_TC_INT

#define USB_TC_INT ((uint32_t)0x00008000)

usb transmission completed interrupt

Definition at line 59 of file at32f403_usb.h.

◆ USB_UCFOR_INT

#define USB_UCFOR_INT ((uint32_t)0x00004000)

usb core fifo overrun interrupt

Definition at line 58 of file at32f403_usb.h.

◆ USB_WK_INT

#define USB_WK_INT ((uint32_t)0x00001000)

usb wakeup interrupt

Definition at line 56 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_interrupt_flags_definition

Macros
USB_interrupt_flags_definition
AT32F403_periph_driver » USB

usb interrupt flag More...

Macros

#define | USB_EPT_NUM_FLAG ((uint32_t)0x0000000F)
#define | USB_INOUT_FLAG ((uint32_t)0x00000010)
#define | USB_LSOF_FLAG ((uint32_t)0x00000100)
#define | USB_SOF_FLAG ((uint32_t)0x00000200)
#define | USB_RST_FLAG ((uint32_t)0x00000400)
#define | USB_SP_FLAG ((uint32_t)0x00000800)
#define | USB_WK_FLAG ((uint32_t)0x00001000)
#define | USB_BE_FLAG ((uint32_t)0x00002000)
#define | USB_UCFOR_FLAG ((uint32_t)0x00004000)
#define | USB_TC_FLAG ((uint32_t)0x00008000)

Detailed Description

usb interrupt flag

Macro Definition Documentation

◆ USB_BE_FLAG

#define USB_BE_FLAG ((uint32_t)0x00002000)

usb bus error flag

Definition at line 77 of file at32f403_usb.h.

◆ USB_EPT_NUM_FLAG

#define USB_EPT_NUM_FLAG ((uint32_t)0x0000000F)

usb endpoint number

Definition at line 70 of file at32f403_usb.h.

◆ USB_INOUT_FLAG

#define USB_INOUT_FLAG ((uint32_t)0x00000010)

usb in/out transcation flag

Definition at line 71 of file at32f403_usb.h.

◆ USB_LSOF_FLAG

#define USB_LSOF_FLAG ((uint32_t)0x00000100)

usb lost sof flag

Definition at line 72 of file at32f403_usb.h.

◆ USB_RST_FLAG

#define USB_RST_FLAG ((uint32_t)0x00000400)

usb reset flag

Definition at line 74 of file at32f403_usb.h.

◆ USB_SOF_FLAG

#define USB_SOF_FLAG ((uint32_t)0x00000200)

usb sof flag

Definition at line 73 of file at32f403_usb.h.

◆ USB_SP_FLAG

#define USB_SP_FLAG ((uint32_t)0x00000800)

usb suspend flag

Definition at line 75 of file at32f403_usb.h.

◆ USB_TC_FLAG

#define USB_TC_FLAG ((uint32_t)0x00008000)

usb transmission completed flag

Definition at line 79 of file at32f403_usb.h.

◆ USB_UCFOR_FLAG

#define USB_UCFOR_FLAG ((uint32_t)0x00004000)

usb core fifo overrun flag

Definition at line 78 of file at32f403_usb.h.

◆ USB_WK_FLAG

#define USB_WK_FLAG ((uint32_t)0x00001000)

usb wakeup flag

Definition at line 76 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_endpoint_register_bit_definition

Macros
USB_endpoint_register_bit_definition
AT32F403_periph_driver » USB

usb endpoint register bit define More...

Macros

#define | USB_EPTADDR ((uint32_t)0x0000000F)
#define | USB_TXSTS ((uint32_t)0x00000030)
#define | USB_TXDTS ((uint32_t)0x00000040)
#define | USB_TXTC ((uint32_t)0x00000080)
#define | USB_EXF ((uint32_t)0x00000100)
#define | USB_TRANS_TYPE ((uint32_t)0x00000600)
#define | USB_SETUPTC ((uint32_t)0x00000800)
#define | USB_RXSTS ((uint32_t)0x00003000)
#define | USB_RXDTS ((uint32_t)0x00004000)
#define | USB_RXTC ((uint32_t)0x00008000)
#define | USB_EPT_BIT_MASK (uint32_t)(USB_TXTC | USB_SETUPTC | USB_EPTADDR | USB_EXF | USB_RXTC | USB_TRANS_TYPE)
#define | USB_TX_MASK (USB_TXSTS | USB_EPT_BIT_MASK)
#define | USB_RX_MASK (USB_RXSTS | USB_EPT_BIT_MASK)

Detailed Description

usb endpoint register bit define

Macro Definition Documentation

◆ USB_EPT_BIT_MASK

#define USB_EPT_BIT_MASK (uint32_t)(USB_TXTC | USB_SETUPTC | USB_EPTADDR | USB_EXF | USB_RXTC | USB_TRANS_TYPE)

usb bit mask

Definition at line 101 of file at32f403_usb.h.

◆ USB_EPTADDR

#define USB_EPTADDR ((uint32_t)0x0000000F)

usb endpoint address

Definition at line 90 of file at32f403_usb.h.

◆ USB_EXF

#define USB_EXF ((uint32_t)0x00000100)

usb endpoint extend funtion

Definition at line 94 of file at32f403_usb.h.

◆ USB_RX_MASK

#define USB_RX_MASK (USB_RXSTS | USB_EPT_BIT_MASK)

usb rx mask

Definition at line 103 of file at32f403_usb.h.

◆ USB_RXDTS

#define USB_RXDTS ((uint32_t)0x00004000)

usb rx data toggle synchronization

Definition at line 98 of file at32f403_usb.h.

◆ USB_RXSTS

#define USB_RXSTS ((uint32_t)0x00003000)

usb rx status

Definition at line 97 of file at32f403_usb.h.

◆ USB_RXTC

#define USB_RXTC ((uint32_t)0x00008000)

usb rx transcation completed

Definition at line 99 of file at32f403_usb.h.

◆ USB_SETUPTC

#define USB_SETUPTC ((uint32_t)0x00000800)

usb setup transcation completed

Definition at line 96 of file at32f403_usb.h.

◆ USB_TRANS_TYPE

#define USB_TRANS_TYPE ((uint32_t)0x00000600)

usb transfer type

Definition at line 95 of file at32f403_usb.h.

◆ USB_TX_MASK

#define USB_TX_MASK (USB_TXSTS | USB_EPT_BIT_MASK)

usb tx mask

Definition at line 102 of file at32f403_usb.h.

◆ USB_TXDTS

#define USB_TXDTS ((uint32_t)0x00000040)

usb tx data toggle synchronization

Definition at line 92 of file at32f403_usb.h.

◆ USB_TXSTS

#define USB_TXSTS ((uint32_t)0x00000030)

usb tx status

Definition at line 91 of file at32f403_usb.h.

◆ USB_TXTC

#define USB_TXTC ((uint32_t)0x00000080)

usb tx transcation completed

Definition at line 93 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_endpoint_tx_and_rx_status_definition

Macros
USB_endpoint_tx_and_rx_status_definition
AT32F403_periph_driver » USB

usb endpoint tx and rx status More...

Macros

#define | USB_TX_DISABLE ((uint32_t)0x00000000)
#define | USB_TX_STALL ((uint32_t)0x00000010)
#define | USB_TX_NAK ((uint32_t)0x00000020)
#define | USB_TX_VALID ((uint32_t)0x00000030)
#define | USB_TXDTS0 ((uint32_t)0x00000010)
#define | USB_TXDTS1 ((uint32_t)0x00000020)
#define | USB_RX_DISABLE ((uint32_t)0x00000000)
#define | USB_RX_STALL ((uint32_t)0x00001000)
#define | USB_RX_NAK ((uint32_t)0x00002000)
#define | USB_RX_VALID ((uint32_t)0x00003000)
#define | USB_RXDTS0 ((uint32_t)0x00001000)
#define | USB_RXDTS1 ((uint32_t)0x00002000)

Detailed Description

usb endpoint tx and rx status

Macro Definition Documentation

◆ USB_RX_DISABLE

#define USB_RX_DISABLE ((uint32_t)0x00000000)

usb rx status disable

Definition at line 122 of file at32f403_usb.h.

◆ USB_RX_NAK

#define USB_RX_NAK ((uint32_t)0x00002000)

usb rx status nak

Definition at line 124 of file at32f403_usb.h.

◆ USB_RX_STALL

#define USB_RX_STALL ((uint32_t)0x00001000)

usb rx status stall

Definition at line 123 of file at32f403_usb.h.

◆ USB_RX_VALID

#define USB_RX_VALID ((uint32_t)0x00003000)

usb rx status valid

Definition at line 125 of file at32f403_usb.h.

◆ USB_RXDTS0

#define USB_RXDTS0 ((uint32_t)0x00001000)

usb rx data toggle bit 0

Definition at line 127 of file at32f403_usb.h.

◆ USB_RXDTS1

#define USB_RXDTS1 ((uint32_t)0x00002000)

usb rx data toggle bit 1

Definition at line 128 of file at32f403_usb.h.

◆ USB_TX_DISABLE

#define USB_TX_DISABLE ((uint32_t)0x00000000)

usb tx status disable

Definition at line 114 of file at32f403_usb.h.

◆ USB_TX_NAK

#define USB_TX_NAK ((uint32_t)0x00000020)

usb tx status nak

Definition at line 116 of file at32f403_usb.h.

◆ USB_TX_STALL

#define USB_TX_STALL ((uint32_t)0x00000010)

usb tx status stall

Definition at line 115 of file at32f403_usb.h.

◆ USB_TX_VALID

#define USB_TX_VALID ((uint32_t)0x00000030)

usb tx status valid

Definition at line 117 of file at32f403_usb.h.

◆ USB_TXDTS0

#define USB_TXDTS0 ((uint32_t)0x00000010)

usb tx data toggle bit 0

Definition at line 119 of file at32f403_usb.h.

◆ USB_TXDTS1

#define USB_TXDTS1 ((uint32_t)0x00000020)

usb tx data toggle bit 1

Definition at line 120 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_device_endpoint_register_type_definition

Macros
USB_device_endpoint_register_type_definition
AT32F403_periph_driver » USB

usb device endpoint register type define More...

Macros

#define | USB_EPT_CONTROL ((uint32_t)0x00000200)
#define | USB_EPT_BULK ((uint32_t)0x00000000)
#define | USB_EPT_INT ((uint32_t)0x00000600)
#define | USB_EPT_ISO ((uint32_t)0x00000400)

Detailed Description

usb device endpoint register type define

Macro Definition Documentation

◆ USB_EPT_BULK

#define USB_EPT_BULK ((uint32_t)0x00000000)

usb endpoint transfer type bulk

Definition at line 140 of file at32f403_usb.h.

◆ USB_EPT_CONTROL

#define USB_EPT_CONTROL ((uint32_t)0x00000200)

usb endpoint transfer type control

Definition at line 139 of file at32f403_usb.h.

◆ USB_EPT_INT

#define USB_EPT_INT ((uint32_t)0x00000600)

usb endpoint transfer type interrupt

Definition at line 141 of file at32f403_usb.h.

◆ USB_EPT_ISO

#define USB_EPT_ISO ((uint32_t)0x00000400)

usb endpoint transfer type iso

Definition at line 142 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_buffer_table_default_offset_address_definition

Macros
USB_buffer_table_default_offset_address_definition
AT32F403_periph_driver » USB

usb buffer table default offset address More...

Macros

#define USB_BUFFER_TABLE_ADDRESS 0x0000

Detailed Description

usb buffer table default offset address

Macro Definition Documentation

◆ USB_BUFFER_TABLE_ADDRESS

#define USB_BUFFER_TABLE_ADDRESS 0x0000

usb buffer table address

Definition at line 153 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_packet_buffer_start_address_definition

Macros
USB_packet_buffer_start_address_definition
AT32F403_periph_driver » USB

usb packet buffer start address More...

Macros

#define | USB_PACKET_BUFFER_ADDRESS 0x40006000
#define | USB_PACKET_BUFFER_ADDRESS_EX 0x40007800

Detailed Description

usb packet buffer start address

Macro Definition Documentation

◆ USB_PACKET_BUFFER_ADDRESS

#define USB_PACKET_BUFFER_ADDRESS 0x40006000

usb buffer address

Definition at line 164 of file at32f403_usb.h.

◆ USB_PACKET_BUFFER_ADDRESS_EX

#define USB_PACKET_BUFFER_ADDRESS_EX 0x40007800

usb buffer extend address

Definition at line 165 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_exported_enum_types

Enumerations
USB_exported_enum_types
AT32F403_periph_driver » USB

Enumerations

enum usb_ept_number_type {
USB_EPT0 = 0x00 , USB_EPT1 = 0x01 , USB_EPT2 = 0x02 , USB_EPT3 = 0x03 ,
USB_EPT4 = 0x04 , USB_EPT5 = 0x05 , USB_EPT6 = 0x06 , USB_EPT7 = 0x07
}
usb endpoint number define More...
enum | ept_trans_type { EPT_CONTROL_TYPE = 0x00 , EPT_ISO_TYPE = 0x01 , EPT_BULK_TYPE = 0x02 , EPT_INT_TYPE = 0x03 }
usb endpoint max num define More...
enum | ept_inout_type { EPT_IN = 0x00 , EPT_OUT = 0x01 }
endpoint endpoint direction define More...
enum | data_trans_dir { DATA_TRANS_OUT = 0x00 , DATA_TRANS_IN = 0x01 }
data transfer direction More...
enum | usb_clk48_s { USB_CLK_HICK , USB_CLK_HEXT }
usb clock select More...

Detailed Description

Enumeration Type Documentation

◆ data_trans_dir

enum data_trans_dir

data transfer direction

Enumerator
DATA_TRANS_OUT | usb data transfer direction out
DATA_TRANS_IN | usb data transfer direction in

Definition at line 219 of file at32f403_usb.h.

◆ ept_inout_type

enum ept_inout_type

endpoint endpoint direction define

Enumerator
EPT_IN | usb endpoint direction in
EPT_OUT | usb endpoint direction out

Definition at line 210 of file at32f403_usb.h.

◆ ept_trans_type

enum ept_trans_type

usb endpoint max num define

endpoint transfer type define

Enumerator
EPT_CONTROL_TYPE | usb transfer type control
EPT_ISO_TYPE | usb transfer type iso
EPT_BULK_TYPE | usb transfer type bulk
EPT_INT_TYPE | usb transfer type interrupt

Definition at line 199 of file at32f403_usb.h.

◆ usb_clk48_s

enum usb_clk48_s

usb clock select

Enumerator
USB_CLK_HICK
USB_CLK_HEXT

Definition at line 228 of file at32f403_usb.h.

◆ usb_ept_number_type

enum usb_ept_number_type

usb endpoint number define

Enumerator
USB_EPT0 | usb endpoint 0
USB_EPT1 | usb endpoint 1
USB_EPT2 | usb endpoint 2
USB_EPT3 | usb endpoint 3
USB_EPT4 | usb endpoint 4
USB_EPT5 | usb endpoint 5
USB_EPT6 | usb endpoint 6
USB_EPT7 | usb endpoint 7

Definition at line 178 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_macro_definition

Macros
USB_macro_definition
AT32F403_periph_driver » USB

Macros

#define | USB_SET_TXSTS(ept_num, new_sts)
set usb endpoint tx status More...
#define | USB_SET_RXSTS(ept_num, new_sts)
set usb endpoint rx status More...
#define | GET_TX_LEN_ADDR(eptn) (uint32_t *)((USB->buftbl + eptn * 8 + 2) * 2 + g_usb_packet_address)
get usb endpoint tx/rx length address More...
#define | GET_RX_LEN_ADDR(eptn) (uint32_t *)((USB->buftbl + eptn * 8 + 6) * 2 + g_usb_packet_address)
#define | USB_GET_TX_LEN(eptn) ((uint16_t)(*GET_TX_LEN_ADDR(eptn)) & 0x3ff)
get usb endpoint tx/rx data length More...
#define | USB_GET_RX_LEN(eptn) ((uint16_t)(*GET_RX_LEN_ADDR(eptn)) & 0x3ff)
#define | USB_DBUF0_GET_LEN(eptn) USB_GET_TX_LEN(eptn)
double buffer mode get endpoint buf0/buf1 data length More...
#define | USB_DBUF1_GET_LEN(eptn) USB_GET_RX_LEN(eptn)
#define | BLK32(reg, len, blks)
set usb length of rx buffer More...
#define | BLK2(reg, len, blks)
#define | USB_SET_RXLEN_REG(reg, len)
#define | USB_SET_TXLEN(eptn, len) (*(GET_TX_LEN_ADDR(eptn)) = (len))
set endpoint tx/rx transfer length More...
#define | USB_SET_RXLEN(eptn, len)
#define | USB_OUT_EPT_DOUBLE_BUF0(eptn, len)
double buffer mode set endpoint rx buf0 length More...
#define | USB_SET_EPT_DOUBLE_BUF0_LEN(eptn, len, dir)
double buffer mode set endpoint buf0 length More...
#define | USB_SET_EPT_DOUBLE_BUF1_LEN(eptn, len, dir)
double buffer mode set endpoint buf1 length More...
#define | USB_SET_TX_ADDRESS(eptn, address) (*(uint32_t *)((USB->buftbl + eptn * 8) * 2 + g_usb_packet_address) = address)
set usb endpoint tx/rx fifo address More...
#define | USB_SET_RX_ADDRESS(eptn, address) (*(uint32_t *)((USB->buftbl + eptn * 8 + 4) * 2 + g_usb_packet_address) = address)
#define | USB_SET_DOUBLE_BUFF0_ADDRESS(eptn, address) (USB_SET_TX_ADDRESS(eptn, address))
set double buffer mode usb endpoint buf0/buf1 fifo address More...
#define | USB_SET_DOUBLE_BUFF1_ADDRESS(eptn, address) (USB_SET_RX_ADDRESS(eptn, address))
#define | USB_TOGGLE_TXDTS(eptn) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_TXDTS | USB_RXTC | USB_TXTC))
set usb tx/rx toggle More...
#define | USB_TOGGLE_RXDTS(eptn) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_RXDTS | USB_RXTC | USB_TXTC))
#define | USB_CLEAR_TXDTS(eptn)
clear usb tx/rx toggle More...
#define | USB_CLEAR_RXDTS(eptn)
#define | USB_SET_TRANS_TYPE(eptn, type) (USB->ept[eptn] = (USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_TRANS_TYPE)) | type)
set usb endpoint type More...
#define | USB_SET_EXF(eptn) (USB->ept[eptn] = USB_TXTC | USB_RXTC | ((USB->ept[eptn] | USB_EXF) & USB_EPT_BIT_MASK))
set/clear usb extend function More...
#define | USB_CLEAR_EXF(eptn) (USB->ept[eptn] = USB_TXTC | USB_RXTC | (USB->ept[eptn] & ((~USB_EXF) & USB_EPT_BIT_MASK)))
#define | USB_SET_EPT_ADDRESS(eptn, address) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_EPTADDR)) | address))
set usb device address More...
#define | USB_FREE_DB_USER_BUFFER(eptn, inout)
free buffer used by application More...
#define | USB_CLEAR_TXTC(eptn) (USB->ept[eptn] &= 0xFF7F & USB_EPT_BIT_MASK)
clear tx/rx transfer completed flag More...
#define | USB_CLEAR_RXTC(eptn) (USB->ept[eptn] &= 0x7FFF & USB_EPT_BIT_MASK)
#define | USB_SET_EPT_DOUBLE_BUFFER(eptn) USB_SET_EXF(eptn)
set/clear endpoint double buffer mode More...
#define | USB_CLEAR_EPT_DOUBLE_BUFFER(eptn) USB_CLEAR_EXF(eptn)

Detailed Description

Macro Definition Documentation

◆ BLK2

#define BLK2 | ( | reg,
 |  | len,
 |  | blks
 | ) |
Value:
{ \
blks = (len) >> 1; \
if(((len) & 0x1) == 0) \
blks ++; \
*reg = (uint16_t)((blks) << 10); \
}

Definition at line 308 of file at32f403_usb.h.

◆ BLK32

#define BLK32 | ( | reg,
 |  | len,
 |  | blks
 | ) |
Value:
{ \
blks = (len) >> 5; \
if(((len) & 0x1F) == 0) \
blks --; \
*reg = ((uint16_t)((blks) << 10) | 0x8000); \
}

set usb length of rx buffer

Parameters
reg | usb rx length register
len | rx max length
blks | number of blocks

Definition at line 301 of file at32f403_usb.h.

◆ GET_RX_LEN_ADDR

#define GET_RX_LEN_ADDR ( eptn ) (uint32_t *)((USB->buftbl + eptn * 8 + 6) * 2 + g_usb_packet_address)

Definition at line 277 of file at32f403_usb.h.

◆ GET_TX_LEN_ADDR

#define GET_TX_LEN_ADDR ( eptn ) (uint32_t *)((USB->buftbl + eptn * 8 + 2) * 2 + g_usb_packet_address)

get usb endpoint tx/rx length address

Parameters
eptn endpoint number
Return values
the length address of tx/rx

Definition at line 276 of file at32f403_usb.h.

◆ USB_CLEAR_EPT_DOUBLE_BUFFER

#define USB_CLEAR_EPT_DOUBLE_BUFFER ( eptn ) USB_CLEAR_EXF(eptn)

Definition at line 485 of file at32f403_usb.h.

◆ USB_CLEAR_EXF

#define USB_CLEAR_EXF ( eptn ) (USB->ept[eptn] = USB_TXTC | USB_RXTC | (USB->ept[eptn] & ((~USB_EXF) & USB_EPT_BIT_MASK)))

Definition at line 444 of file at32f403_usb.h.

◆ USB_CLEAR_RXDTS

#define USB_CLEAR_RXDTS ( eptn )
Value:
{ \
if(USB->ept_bit[eptn].rxdts != 0) \
USB_TOGGLE_RXDTS(eptn); \
}
USB
#define USB
Definition: at32f403_usb.h:651

Definition at line 421 of file at32f403_usb.h.

◆ USB_CLEAR_RXTC

#define USB_CLEAR_RXTC ( eptn ) (USB->ept[eptn] &= 0x7FFF & USB_EPT_BIT_MASK)

Definition at line 477 of file at32f403_usb.h.

◆ USB_CLEAR_TXDTS

#define USB_CLEAR_TXDTS ( eptn )
Value:
{ \
if(USB->ept_bit[eptn].txdts != 0) \
USB_TOGGLE_TXDTS(eptn); \
}

clear usb tx/rx toggle

Parameters
eptn endpoint number
Return values
none

Definition at line 417 of file at32f403_usb.h.

◆ USB_CLEAR_TXTC

#define USB_CLEAR_TXTC ( eptn ) (USB->ept[eptn] &= 0xFF7F & USB_EPT_BIT_MASK)

clear tx/rx transfer completed flag

Parameters
eptn endpoint number
Return values
none

Definition at line 476 of file at32f403_usb.h.

◆ USB_DBUF0_GET_LEN

#define USB_DBUF0_GET_LEN ( eptn ) USB_GET_TX_LEN(eptn)

double buffer mode get endpoint buf0/buf1 data length

Parameters
eptn endpoint number
Return values
the length of buf0/buf1

Definition at line 292 of file at32f403_usb.h.

◆ USB_DBUF1_GET_LEN

#define USB_DBUF1_GET_LEN ( eptn ) USB_GET_RX_LEN(eptn)

Definition at line 293 of file at32f403_usb.h.

◆ USB_FREE_DB_USER_BUFFER

#define USB_FREE_DB_USER_BUFFER | ( | eptn,
 |  | inout
 | ) |
Value:
{ \
if(inout == DATA_TRANS_IN) \
{ \
USB_TOGGLE_RXDTS(eptn); \
} \
else \
{ \
USB_TOGGLE_TXDTS(eptn); \
} \
}
DATA_TRANS_IN
@ DATA_TRANS_IN
Definition: at32f403_usb.h:222

free buffer used by application

Parameters
eptn | endpoint number
inout | transfer direction
Return values
none

Definition at line 460 of file at32f403_usb.h.

◆ USB_GET_RX_LEN

#define USB_GET_RX_LEN ( eptn ) ((uint16_t)(*GET_RX_LEN_ADDR(eptn)) & 0x3ff)

Definition at line 285 of file at32f403_usb.h.

◆ USB_GET_TX_LEN

#define USB_GET_TX_LEN ( eptn ) ((uint16_t)(*GET_TX_LEN_ADDR(eptn)) & 0x3ff)

get usb endpoint tx/rx data length

Parameters
eptn endpoint number
Return values
the length of tx/rx

Definition at line 284 of file at32f403_usb.h.

◆ USB_OUT_EPT_DOUBLE_BUF0

#define USB_OUT_EPT_DOUBLE_BUF0 | ( | eptn,
 |  | len
 | ) |
Value:
{ \
uint32_t *rx_reg = GET_TX_LEN_ADDR(eptn); \
USB_SET_RXLEN_REG(rx_reg, (len)); \
}
GET_TX_LEN_ADDR
#define GET_TX_LEN_ADDR(eptn)
get usb endpoint tx/rx length address
Definition: at32f403_usb.h:276

double buffer mode set endpoint rx buf0 length

Parameters
eptn | endpoint number
len | transfer length
Return values
none

Definition at line 345 of file at32f403_usb.h.

◆ USB_SET_DOUBLE_BUFF0_ADDRESS

#define USB_SET_DOUBLE_BUFF0_ADDRESS | ( | eptn,
 |  | address
 | ) | (USB_SET_TX_ADDRESS(eptn, address))

set double buffer mode usb endpoint buf0/buf1 fifo address

Parameters
eptn | endpoint number
address | offset of the fifo address
Return values
none

Definition at line 401 of file at32f403_usb.h.

◆ USB_SET_DOUBLE_BUFF1_ADDRESS

#define USB_SET_DOUBLE_BUFF1_ADDRESS | ( | eptn,
 |  | address
 | ) | (USB_SET_RX_ADDRESS(eptn, address))

Definition at line 402 of file at32f403_usb.h.

◆ USB_SET_EPT_ADDRESS

#define USB_SET_EPT_ADDRESS | ( | eptn,
 |  | address
 | ) | (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_EPTADDR)) | address))

set usb device address

Parameters
eptn | endpoint number
address | device address
Return values
none

Definition at line 452 of file at32f403_usb.h.

◆ USB_SET_EPT_DOUBLE_BUF0_LEN

#define USB_SET_EPT_DOUBLE_BUF0_LEN | ( | eptn,
 |  | len,
 |  | dir
 | ) |
Value:
{ \
if(dir == DATA_TRANS_OUT) \
{ \
USB_OUT_EPT_DOUBLE_BUF0(eptn, len); \
} \
else \
{ \
*(GET_TX_LEN_ADDR(eptn)) = (len); \
} \
}
DATA_TRANS_OUT
@ DATA_TRANS_OUT
Definition: at32f403_usb.h:221

double buffer mode set endpoint buf0 length

Parameters
eptn | endpoint number
len | transfer length
dir | transfer direction(in/out)
Return values
none

Definition at line 357 of file at32f403_usb.h.

◆ USB_SET_EPT_DOUBLE_BUF1_LEN

#define USB_SET_EPT_DOUBLE_BUF1_LEN | ( | eptn,
 |  | len,
 |  | dir
 | ) |
Value:
{ \
if(dir == DATA_TRANS_OUT) \
{ \
USB_SET_RXLEN(eptn, len); \
} \
else \
{ \
*(GET_RX_LEN_ADDR(eptn)) = (len); \
} \
}
GET_RX_LEN_ADDR
#define GET_RX_LEN_ADDR(eptn)
Definition: at32f403_usb.h:277

double buffer mode set endpoint buf1 length

Parameters
eptn | endpoint number
len | transfer length
dir | transfer direction(in/out)
Return values
none

Definition at line 375 of file at32f403_usb.h.

◆ USB_SET_EPT_DOUBLE_BUFFER

#define USB_SET_EPT_DOUBLE_BUFFER ( eptn ) USB_SET_EXF(eptn)

set/clear endpoint double buffer mode

Parameters
eptn endpoint number
Return values
none

Definition at line 484 of file at32f403_usb.h.

◆ USB_SET_EXF

#define USB_SET_EXF ( eptn ) (USB->ept[eptn] = USB_TXTC | USB_RXTC | ((USB->ept[eptn] | USB_EXF) & USB_EPT_BIT_MASK))

set/clear usb extend function

Parameters
eptn endpoint number
Return values
none

Definition at line 443 of file at32f403_usb.h.

◆ USB_SET_RX_ADDRESS

#define USB_SET_RX_ADDRESS | ( | eptn,
 |  | address
 | ) | (*(uint32_t *)((USB->buftbl + eptn * 8 + 4) * 2 + g_usb_packet_address) = address)

Definition at line 393 of file at32f403_usb.h.

◆ USB_SET_RXLEN

#define USB_SET_RXLEN | ( | eptn,
 |  | len
 | ) |
Value:
{ \
uint32_t *rx_reg = GET_RX_LEN_ADDR(eptn); \
USB_SET_RXLEN_REG(rx_reg, (len)); \
}

Definition at line 334 of file at32f403_usb.h.

◆ USB_SET_RXLEN_REG

#define USB_SET_RXLEN_REG | ( | reg,
 |  | len
 | ) |
Value:
{ \
uint16_t blks; \
if(len > 62) \
{ \
BLK32(reg, len, blks); \
} \
else \
{ \
BLK2(reg, len, blks); \
} \
}

Definition at line 315 of file at32f403_usb.h.

◆ USB_SET_RXSTS

#define USB_SET_RXSTS | ( | ept_num,
 |  | new_sts
 | ) |
Value:
{ \
register uint16_t epsts = (USB->ept[ept_num]) & USB_RX_MASK; \
if((new_sts & USB_RXDTS0) != 0) \
epsts ^= USB_RXDTS0; \
if((new_sts & USB_RXDTS1) != 0) \
epsts ^= USB_RXDTS1; \
USB->ept[ept_num] = epsts | USB_RXTC | USB_TXTC; \
}
USB_RXTC
#define USB_RXTC
Definition: at32f403_usb.h:99
USB_TXTC
#define USB_TXTC
Definition: at32f403_usb.h:93
USB_RX_MASK
#define USB_RX_MASK
Definition: at32f403_usb.h:103
USB_RXDTS0
#define USB_RXDTS0
Definition: at32f403_usb.h:127
USB_RXDTS1
#define USB_RXDTS1
Definition: at32f403_usb.h:128

set usb endpoint rx status

Parameters
ept_num | endpoint number
new_sts | the new rx status of this endpoint number
Return values
none

Definition at line 262 of file at32f403_usb.h.

◆ USB_SET_TRANS_TYPE

#define USB_SET_TRANS_TYPE | ( | eptn,
 |  | type
 | ) | (USB->ept[eptn] = (USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_TRANS_TYPE)) | type)

set usb endpoint type

set usb transfer type

Parameters
eptn | endpoint number
type | transfer type
Return values
none

Definition at line 436 of file at32f403_usb.h.

◆ USB_SET_TX_ADDRESS

#define USB_SET_TX_ADDRESS | ( | eptn,
 |  | address
 | ) | (*(uint32_t *)((USB->buftbl + eptn * 8) * 2 + g_usb_packet_address) = address)

set usb endpoint tx/rx fifo address

Parameters
eptn | endpoint number
address | offset of the fifo address
Return values
none

Definition at line 392 of file at32f403_usb.h.

◆ USB_SET_TXLEN

#define USB_SET_TXLEN | ( | eptn,
 |  | len
 | ) | (*(GET_TX_LEN_ADDR(eptn)) = (len))

set endpoint tx/rx transfer length

Parameters
eptn | endpoint number
len | transfer length
Return values
none

Definition at line 333 of file at32f403_usb.h.

◆ USB_SET_TXSTS

#define USB_SET_TXSTS | ( | ept_num,
 |  | new_sts
 | ) |
Value:
{ \
register uint16_t epsts = (USB->ept[ept_num]) & USB_TX_MASK; \
if((new_sts & USB_TXDTS0) != 0) \
epsts ^= USB_TXDTS0; \
if((new_sts & USB_TXDTS1) != 0) \
epsts ^= USB_TXDTS1; \
USB->ept[ept_num] = epsts | USB_RXTC | USB_TXTC; \
}
USB_TX_MASK
#define USB_TX_MASK
Definition: at32f403_usb.h:102
USB_TXDTS1
#define USB_TXDTS1
Definition: at32f403_usb.h:120
USB_TXDTS0
#define USB_TXDTS0
Definition: at32f403_usb.h:119

set usb endpoint tx status

Parameters
ept_num | endpoint number
new_sts | the new tx status of this endpoint number
Return values
none

Definition at line 247 of file at32f403_usb.h.

◆ USB_TOGGLE_RXDTS

#define USB_TOGGLE_RXDTS ( eptn ) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_RXDTS | USB_RXTC | USB_TXTC))

Definition at line 410 of file at32f403_usb.h.

◆ USB_TOGGLE_TXDTS

#define USB_TOGGLE_TXDTS ( eptn ) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_TXDTS | USB_RXTC | USB_TXTC))

set usb tx/rx toggle

Parameters
eptn endpoint number
Return values
none

Definition at line 409 of file at32f403_usb.h.


AT32F403 Firmwary Library: USB_exported_types

Data Structures
USB_exported_types
AT32F403_periph_driver » USB

Data Structures

struct | usb_ept_info
usb endpoint infomation structure definition More...
struct | usbd_type
type define usb register all More...

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: usb_ept_info Struct Reference

Data Fields
usb_ept_info Struct Reference
AT32F403_periph_driver » USB » USB_exported_types

usb endpoint infomation structure definition More...

#include <at32f403_usb.h>

Data Fields

uint8_t | eptn
uint8_t | ept_address
uint8_t | inout
uint8_t | trans_type
uint16_t | tx_addr
uint16_t | rx_addr
uint16_t | maxpacket
uint8_t | is_double_buffer
uint8_t | stall
uint16_t | status
uint16_t | total_len
uint16_t | trans_len
uint8_t * | trans_buf
uint16_t | last_len
uint16_t | rem0_len
uint16_t | ept0_slen

Detailed Description

usb endpoint infomation structure definition

Definition at line 498 of file at32f403_usb.h.

Field Documentation

◆ ept0_slen

uint16_t usb_ept_info::ept0_slen

endpoint 0 transfer sum length

Definition at line 519 of file at32f403_usb.h.

Referenced by usbd_core_in_handler(), usbd_ctrl_recv(), and usbd_ctrl_send().

◆ ept_address

uint8_t usb_ept_info::ept_address

endpoint address

Definition at line 501 of file at32f403_usb.h.

Referenced by usb_ept_open(), and usbd_ept_defaut_init().

◆ eptn

uint8_t usb_ept_info::eptn

endpoint register number (0~7)

Definition at line 500 of file at32f403_usb.h.

Referenced by usb_ept_close(), usb_ept_open(), usb_ept_stall(), usbd_clear_stall(), usbd_ept_defaut_init(), and usbd_set_stall().

◆ inout

uint8_t usb_ept_info::inout

endpoint dir DATA_TRANS_IN or DATA_TRANS_OUT

Definition at line 502 of file at32f403_usb.h.

Referenced by usb_ept_close(), usb_ept_open(), usb_ept_stall(), usbd_ept_buf_auto_define(), usbd_ept_buf_custom_define(), usbd_ept_defaut_init(), and usbd_ept_open().

◆ is_double_buffer

uint8_t usb_ept_info::is_double_buffer

endpoint double buffer flag

Definition at line 508 of file at32f403_usb.h.

Referenced by usb_ept_close(), usb_ept_open(), usbd_ept_buf_auto_define(), usbd_ept_buf_custom_define(), usbd_ept_dbuffer_enable(), usbd_ept_send(), and usbd_eptn_handler().

◆ last_len

uint16_t usb_ept_info::last_len

last transfer length

Definition at line 517 of file at32f403_usb.h.

Referenced by usbd_core_in_handler(), and usbd_ept_send().

◆ maxpacket

uint16_t usb_ept_info::maxpacket

endpoint max packet

Definition at line 507 of file at32f403_usb.h.

Referenced by usb_ept_open(), usbd_core_in_handler(), usbd_core_out_handler(), usbd_ept_buf_auto_define(), usbd_ept_defaut_init(), usbd_ept_open(), usbd_ept_recv(), and usbd_ept_send().

◆ rem0_len

uint16_t usb_ept_info::rem0_len

rem transfer length

Definition at line 518 of file at32f403_usb.h.

Referenced by usbd_core_in_handler(), usbd_core_out_handler(), usbd_ctrl_recv(), and usbd_ctrl_send().

◆ rx_addr

uint16_t usb_ept_info::rx_addr

endpoint rx buffer offset address

Definition at line 506 of file at32f403_usb.h.

Referenced by usb_ept_open(), usbd_ept_buf_auto_define(), usbd_ept_buf_custom_define(), usbd_ept_defaut_init(), usbd_ept_send(), and usbd_eptn_handler().

◆ stall

uint8_t usb_ept_info::stall

endpoint is stall state

Definition at line 509 of file at32f403_usb.h.

Referenced by usbd_clear_stall(), usbd_endpoint_request(), and usbd_set_stall().

◆ status

uint16_t usb_ept_info::status

endpoint status

Definition at line 510 of file at32f403_usb.h.

Referenced by usbd_endpoint_request().

◆ total_len

uint16_t usb_ept_info::total_len

endpoint transmission total length

Definition at line 513 of file at32f403_usb.h.

Referenced by usbd_ept_defaut_init(), usbd_ept_recv(), usbd_ept_send(), and usbd_eptn_handler().

◆ trans_buf

uint8_t* usb_ept_info::trans_buf

endpoint transmission buffer

Definition at line 515 of file at32f403_usb.h.

Referenced by usbd_core_in_handler(), usbd_core_out_handler(), usbd_ept_defaut_init(), usbd_ept_recv(), usbd_ept_send(), and usbd_eptn_handler().

◆ trans_len

uint16_t usb_ept_info::trans_len

endpoint transmission length

Definition at line 514 of file at32f403_usb.h.

Referenced by usbd_ept_recv(), usbd_ept_send(), usbd_eptn_handler(), and usbd_get_recv_len().

◆ trans_type

uint8_t usb_ept_info::trans_type

endpoint type: EPT_CONTROL_TYPE, EPT_BULK_TYPE, EPT_INT_TYPE, EPT_ISO_TYPE

Definition at line 503 of file at32f403_usb.h.

Referenced by usb_ept_open(), and usbd_ept_open().

◆ tx_addr

uint16_t usb_ept_info::tx_addr

endpoint tx buffer offset address

Definition at line 505 of file at32f403_usb.h.

Referenced by usb_ept_open(), usbd_ept_buf_auto_define(), usbd_ept_buf_custom_define(), usbd_ept_defaut_init(), usbd_ept_send(), and usbd_eptn_handler().

The documentation for this struct was generated from the following file:
  • at32f403_usb.h


AT32F403 Firmwary Library: usbd_type Struct Reference

Data Fields
usbd_type Struct Reference
AT32F403_periph_driver » USB » USB_exported_types

type define usb register all More...

#include <at32f403_usb.h>

Data Fields

union {
__IO uint32_t ept [8]
struct {
__IO uint32_t eptaddr: 4
__IO uint32_t txsts: 2
__IO uint32_t txdts: 1
__IO uint32_t txtc: 1
__IO uint32_t exf: 1
__IO uint32_t trans_type: 2
__IO uint32_t setuptc: 1
__IO uint32_t rxsts: 2
__IO uint32_t rxdts: 1
__IO uint32_t rxtc: 1
__IO uint32_t reserved1: 16
} ept_bit [8]
};
usb endpoint register, offset:0x00 More...
union {
__IO uint32_t ctrl
struct {
__IO uint32_t csrst: 1
__IO uint32_t disusb: 1
__IO uint32_t lpm: 1
__IO uint32_t ssp: 1
__IO uint32_t gresume: 1
__IO uint32_t reserved1: 3
__IO uint32_t lsofien: 1
__IO uint32_t sofien: 1
__IO uint32_t rstien: 1
__IO uint32_t spien: 1
__IO uint32_t wkien: 1
__IO uint32_t beien: 1
__IO uint32_t ucforien: 1
__IO uint32_t tcien: 1
__IO uint32_t reserved2: 16
} ctrl_bit
};
usb control register, offset:0x40 More...
union {
__IO uint32_t intsts
struct {
__IO uint32_t ept_num: 4
__IO uint32_t inout: 1
__IO uint32_t reserved1: 3
__IO uint32_t lsof: 1
__IO uint32_t sof: 1
__IO uint32_t rst: 1
__IO uint32_t sp: 1
__IO uint32_t wk: 1
__IO uint32_t be: 1
__IO uint32_t ucfor: 1
__IO uint32_t tc: 1
__IO uint32_t reserved2: 16
} intsts_bit
};
usb interrupt status register, offset:0x44 More...
union {
__IO uint32_t sofrnum
struct {
__IO uint32_t sofnum: 11
__IO uint32_t lsofnum: 2
__IO uint32_t clck: 1
__IO uint32_t dmsts: 1
__IO uint32_t dpsts: 1
__IO uint32_t reserved1: 16
} sofrnum_bit
};
usb frame number register, offset:0x48 More...
union {
__IO uint32_t devaddr
struct {
__IO uint32_t addr: 7
__IO uint32_t cen: 1
__IO uint32_t reserved1: 24
} devaddr_bit
};
usb device address register, offset:0x4c More...
union {
__IO uint32_t buftbl
struct {
__IO uint32_t reserved1: 3
__IO uint32_t btaddr: 13
__IO uint32_t reserved2: 16
} buftbl_bit
};
usb buffer address register, offset:0x50 More...

Detailed Description

type define usb register all

Definition at line 525 of file at32f403_usb.h.

Field Documentation

◆

union { ... } usbd_type::@711

usb endpoint register, offset:0x00

◆

union { ... } usbd_type::@713

usb control register, offset:0x40

◆

union { ... } usbd_type::@715

usb interrupt status register, offset:0x44

◆

union { ... } usbd_type::@717

usb frame number register, offset:0x48

◆

union { ... } usbd_type::@719

usb device address register, offset:0x4c

◆

union { ... } usbd_type::@721

usb buffer address register, offset:0x50

◆ addr

__IO uint32_t usbd_type::addr

Definition at line 625 of file at32f403_usb.h.

Referenced by usb_set_address().

◆ be

__IO uint32_t usbd_type::be

Definition at line 593 of file at32f403_usb.h.

◆ beien

__IO uint32_t usbd_type::beien

Definition at line 570 of file at32f403_usb.h.

◆ btaddr

__IO uint32_t usbd_type::btaddr

Definition at line 640 of file at32f403_usb.h.

◆ buftbl

__IO uint32_t usbd_type::buftbl

Definition at line 636 of file at32f403_usb.h.

Referenced by usb_dev_init().

◆

struct { ... } usbd_type::buftbl_bit

◆ cen

__IO uint32_t usbd_type::cen

Definition at line 626 of file at32f403_usb.h.

Referenced by usb_set_address().

◆ clck

__IO uint32_t usbd_type::clck

Definition at line 610 of file at32f403_usb.h.

◆ csrst

__IO uint32_t usbd_type::csrst

Definition at line 559 of file at32f403_usb.h.

Referenced by usb_dev_init().

◆ ctrl

__IO uint32_t usbd_type::ctrl

Definition at line 556 of file at32f403_usb.h.

Referenced by usb_interrupt_enable(), usb_interrupt_flag_get(), and usbd_irq_handler().

◆

struct { ... } usbd_type::ctrl_bit

Referenced by usb_connect(), usb_dev_init(), usb_disconnect(), usb_enter_suspend(), usb_exit_suspend(), usb_remote_wkup_clear(), and usb_remote_wkup_set().

◆ devaddr

__IO uint32_t usbd_type::devaddr

Definition at line 622 of file at32f403_usb.h.

Referenced by usb_dev_init().

◆

struct { ... } usbd_type::devaddr_bit

Referenced by usb_set_address().

◆ disusb

__IO uint32_t usbd_type::disusb

Definition at line 560 of file at32f403_usb.h.

Referenced by usb_connect(), and usb_disconnect().

◆ dmsts

__IO uint32_t usbd_type::dmsts

Definition at line 611 of file at32f403_usb.h.

◆ dpsts

__IO uint32_t usbd_type::dpsts

Definition at line 612 of file at32f403_usb.h.

◆ ept

__IO uint32_t usbd_type::ept[8]

Definition at line 532 of file at32f403_usb.h.

Referenced by usbd_eptn_handler().

◆

struct { ... } usbd_type::ept_bit[8]

Referenced by usbd_ept_send().

◆ ept_num

__IO uint32_t usbd_type::ept_num

Definition at line 585 of file at32f403_usb.h.

◆ eptaddr

__IO uint32_t usbd_type::eptaddr

Definition at line 535 of file at32f403_usb.h.

◆ exf

__IO uint32_t usbd_type::exf

Definition at line 539 of file at32f403_usb.h.

◆ gresume

__IO uint32_t usbd_type::gresume

Definition at line 563 of file at32f403_usb.h.

Referenced by usb_remote_wkup_clear(), and usb_remote_wkup_set().

◆ inout

__IO uint32_t usbd_type::inout

Definition at line 586 of file at32f403_usb.h.

◆ intsts

__IO uint32_t usbd_type::intsts

Definition at line 582 of file at32f403_usb.h.

Referenced by usb_dev_init(), usb_flag_clear(), usb_flag_get(), usb_interrupt_flag_get(), usbd_ept_loop_handler(), and usbd_irq_handler().

◆

struct { ... } usbd_type::intsts_bit

◆ lpm

__IO uint32_t usbd_type::lpm

Definition at line 561 of file at32f403_usb.h.

Referenced by usb_enter_suspend(), and usb_exit_suspend().

◆ lsof

__IO uint32_t usbd_type::lsof

Definition at line 588 of file at32f403_usb.h.

◆ lsofien

__IO uint32_t usbd_type::lsofien

Definition at line 565 of file at32f403_usb.h.

◆ lsofnum

__IO uint32_t usbd_type::lsofnum

Definition at line 609 of file at32f403_usb.h.

◆ reserved1

__IO uint32_t usbd_type::reserved1

Definition at line 545 of file at32f403_usb.h.

◆ reserved2

__IO uint32_t usbd_type::reserved2

Definition at line 573 of file at32f403_usb.h.

◆ rst

__IO uint32_t usbd_type::rst

Definition at line 590 of file at32f403_usb.h.

◆ rstien

__IO uint32_t usbd_type::rstien

Definition at line 567 of file at32f403_usb.h.

◆ rxdts

__IO uint32_t usbd_type::rxdts

Definition at line 543 of file at32f403_usb.h.

◆ rxsts

__IO uint32_t usbd_type::rxsts

Definition at line 542 of file at32f403_usb.h.

◆ rxtc

__IO uint32_t usbd_type::rxtc

Definition at line 544 of file at32f403_usb.h.

◆ setuptc

__IO uint32_t usbd_type::setuptc

Definition at line 541 of file at32f403_usb.h.

◆ sof

__IO uint32_t usbd_type::sof

Definition at line 589 of file at32f403_usb.h.

◆ sofien

__IO uint32_t usbd_type::sofien

Definition at line 566 of file at32f403_usb.h.

◆ sofnum

__IO uint32_t usbd_type::sofnum

Definition at line 608 of file at32f403_usb.h.

◆ sofrnum

__IO uint32_t usbd_type::sofrnum

Definition at line 605 of file at32f403_usb.h.

◆

struct { ... } usbd_type::sofrnum_bit

◆ sp

__IO uint32_t usbd_type::sp

Definition at line 591 of file at32f403_usb.h.

◆ spien

__IO uint32_t usbd_type::spien

Definition at line 568 of file at32f403_usb.h.

◆ ssp

__IO uint32_t usbd_type::ssp

Definition at line 562 of file at32f403_usb.h.

Referenced by usb_enter_suspend(), and usb_exit_suspend().

◆ tc

__IO uint32_t usbd_type::tc

Definition at line 595 of file at32f403_usb.h.

◆ tcien

__IO uint32_t usbd_type::tcien

Definition at line 572 of file at32f403_usb.h.

◆ trans_type

__IO uint32_t usbd_type::trans_type

Definition at line 540 of file at32f403_usb.h.

◆ txdts

__IO uint32_t usbd_type::txdts

Definition at line 537 of file at32f403_usb.h.

Referenced by usbd_ept_send().

◆ txsts

__IO uint32_t usbd_type::txsts

Definition at line 536 of file at32f403_usb.h.

◆ txtc

__IO uint32_t usbd_type::txtc

Definition at line 538 of file at32f403_usb.h.

◆ ucfor

__IO uint32_t usbd_type::ucfor

Definition at line 594 of file at32f403_usb.h.

◆ ucforien

__IO uint32_t usbd_type::ucforien

Definition at line 571 of file at32f403_usb.h.

◆ wk

__IO uint32_t usbd_type::wk

Definition at line 592 of file at32f403_usb.h.

◆ wkien

__IO uint32_t usbd_type::wkien

Definition at line 569 of file at32f403_usb.h.

The documentation for this struct was generated from the following file:
  • at32f403_usb.h


AT32F403 Firmwary Library: USB_exported_functions

Functions
USB_exported_functions
AT32F403_periph_driver » USB

Functions

void | usb_dev_init (usbd_type *usbx)
initialize usb peripheral controller register More...
void | usb_connect (usbd_type *usbx)
connect usb device More...
void | usb_disconnect (usbd_type *usbx)
disconnect usb device More...
void | usb_usbbufs_enable (usbd_type *usbx, confirm_state state)
mapping usb packet buffer area two mapping intervals are available for packet buffer area, and are select by the usbbufs in the crm misc1 register. when usbbufs is 0,sram size is 512 bytes, packet buffer start address is 0x40006000.when usbbufs is 1, sram size is fixed to 768 bytes, and the packet buffer start address is fixed to 0x40007800, usb packet buffer can be set to the maximum of 768 bytes. More...
void | usb_ept_open (usbd_type *usbx, usb_ept_info *ept_info)
open usb endpoint More...
void | usb_ept_close (usbd_type *usbx, usb_ept_info *ept_info)
close usb endpoint More...
void | usb_write_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
write data from user memory to usb buffer More...
void | usb_read_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
read data from usb buffer to user buffer More...
void | usb_interrupt_enable (usbd_type *usbx, uint16_t interrupt, confirm_state new_state)
usb interrupt enable More...
void | usb_set_address (usbd_type *usbx, uint8_t address)
set the host assignment address More...
void | usb_ept_stall (usbd_type *usbx, usb_ept_info *ept_info)
set endpoint tx or rx status to stall More...
void | usb_enter_suspend (usbd_type *usbx)
usb device enter suspend mode More...
void | usb_exit_suspend (usbd_type *usbx)
usb device exit suspend mode More...
void | usb_remote_wkup_set (usbd_type *usbx)
usb remote wakeup set More...
void | usb_remote_wkup_clear (usbd_type *usbx)
usb remote wakeup clear More...
uint16_t | usb_buffer_malloc (uint16_t maxpacket)
usb auto malloc endpoint buffer More...
void | usb_buffer_free (void)
free usb endpoint buffer More...
flag_status | usb_flag_get (usbd_type *usbx, uint16_t flag)
get flag of usb. More...
flag_status | usb_interrupt_flag_get (usbd_type *usbx, uint16_t flag)
get interrupt flag of usb. More...
void | usb_flag_clear (usbd_type *usbx, uint16_t flag)
clear flag of usb. More...

Detailed Description

Function Documentation

◆ usb_buffer_free()

void usb_buffer_free ( void )

free usb endpoint buffer

Parameters
none
Return values
none

Definition at line 485 of file at32f403_usb.c.

Referenced by usbd_reset_handler().

◆ usb_buffer_malloc()

uint16_t usb_buffer_malloc ( uint16_t maxpacket )

usb auto malloc endpoint buffer

Parameters
mapacket endpoint support max packet size
Return values
none

Definition at line 473 of file at32f403_usb.c.

Referenced by usbd_ept_buf_auto_define().

◆ usb_connect()

void usb_connect ( usbd_type * usbx )

connect usb device

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 79 of file at32f403_usb.c.

Referenced by usbd_connect().

◆ usb_dev_init()

void usb_dev_init ( usbd_type * usbx )

initialize usb peripheral controller register

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

< usb buffer table address

< usb sof interrupt

< usb reset interrupt

< usb suspend interrupt

< usb wakeup interrupt

< usb transmission completed interrupt

Definition at line 56 of file at32f403_usb.c.

Referenced by usbd_core_init().

◆ usb_disconnect()

void usb_disconnect ( usbd_type * usbx )

disconnect usb device

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 91 of file at32f403_usb.c.

Referenced by usbd_disconnect().

◆ usb_enter_suspend()

void usb_enter_suspend ( usbd_type * usbx )

usb device enter suspend mode

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 428 of file at32f403_usb.c.

Referenced by usbd_enter_suspend().

◆ usb_ept_close()

void usb_ept_close | ( | usbd_type * | usbx,
 |  | usb_ept_info * | ept_info
 | ) |  |

close usb endpoint

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
ept_info | endpoint information structure
Return values
none

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

Definition at line 255 of file at32f403_usb.c.

Referenced by usbd_ept_close().

◆ usb_ept_open()

void usb_ept_open | ( | usbd_type * | usbx,
 |  | usb_ept_info * | ept_info
 | ) |  |

open usb endpoint

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
ept_info | endpoint information structure
Return values
none

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb endpoint address

< usb endpoint transfer type control

< usb endpoint transfer type bulk

< usb endpoint transfer type interrupt

< usb endpoint transfer type iso

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb transfer type

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status nak

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status nak

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb rx transcation completed

< usb endpoint extend funtion

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status nak

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status nak

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status valid

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status valid

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb rx transcation completed

< usb endpoint extend funtion

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status valid

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status valid

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

Definition at line 135 of file at32f403_usb.c.

Referenced by usbd_ept_open().

◆ usb_ept_stall()

void usb_ept_stall | ( | usbd_type * | usbx,
 |  | usb_ept_info * | ept_info
 | ) |  |

set endpoint tx or rx status to stall

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
ept_info | endpoint information structure
Return values
none

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status stall

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status stall

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status stall

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status stall

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

Definition at line 409 of file at32f403_usb.c.

◆ usb_exit_suspend()

void usb_exit_suspend ( usbd_type * usbx )

usb device exit suspend mode

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 440 of file at32f403_usb.c.

Referenced by usbd_remote_wakeup(), and usbd_wakeup_handler().

◆ usb_flag_clear()

void usb_flag_clear | ( | usbd_type * | usbx,
 |  | uint16_t | flag
 | ) |  |

clear flag of usb.

Parameters
usbx select the usb peripheral
flag select the usb flag this parameter can be one of the following values:
  • USB_INOUT_FLAG
  • USB_LSOF_FLAG
  • USB_SOF_FLAG
  • USB_RST_FLAG
  • USB_SP_FLAG
  • USB_WK_FLAG
  • USB_BE_FLAG
  • USB_UCFOR_FLAG
  • USB_TC_FLAG
Return values
none

Definition at line 571 of file at32f403_usb.c.

Referenced by usbd_irq_handler().

◆ usb_flag_get()

flag_status usb_flag_get | ( | usbd_type * | usbx,
 |  | uint16_t | flag
 | ) |  |

get flag of usb.

Parameters
usbx select the usb peripheral
flag select the usb flag this parameter can be one of the following values:
  • USB_INOUT_FLAG
  • USB_LSOF_FLAG
  • USB_SOF_FLAG
  • USB_RST_FLAG
  • USB_SP_FLAG
  • USB_WK_FLAG
  • USB_BE_FLAG
  • USB_UCFOR_FLAG
  • USB_TC_FLAG
Return values
none

Definition at line 506 of file at32f403_usb.c.

◆ usb_interrupt_enable()

void usb_interrupt_enable | ( | usbd_type * | usbx,
 |  | uint16_t | interrupt,
 |  | confirm_state | new_state
 | ) |  |

usb interrupt enable

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
interrupt this parameter can be any combination of the following values:
  • USB_LSOF_INT
  • USB_SOF_INT
  • USB_RST_INT
  • USB_SP_INT
  • USB_WK_INT
  • USB_BE_INT
  • USB_UCFOR_INT
  • USB_TC_INT
new_state | (TRUE or FALSE)
Return values
none

Definition at line 377 of file at32f403_usb.c.

Referenced by usb_dev_init().

◆ usb_interrupt_flag_get()

flag_status usb_interrupt_flag_get | ( | usbd_type * | usbx,
 |  | uint16_t | flag
 | ) |  |

get interrupt flag of usb.

Parameters
usbx select the usb peripheral
flag select the usb flag this parameter can be one of the following values:
  • USB_LSOF_FLAG
  • USB_SOF_FLAG
  • USB_RST_FLAG
  • USB_SP_FLAG
  • USB_WK_FLAG
  • USB_BE_FLAG
  • USB_UCFOR_FLAG
  • USB_TC_FLAG
Return values
none

< usb transmission completed flag

< usb transmission completed flag

Definition at line 536 of file at32f403_usb.c.

◆ usb_read_packet()

void usb_read_packet | ( | uint8_t * | pusr_buf,
 |  | uint16_t | offset_addr,
 |  | uint16_t | nbytes
 | ) |  |

read data from usb buffer to user buffer

Parameters
pusr_buf | point to user buffer
offset_addr | endpoint rx offset address
nbytes | number of bytes data write to usb buffer
Return values
none

Definition at line 341 of file at32f403_usb.c.

Referenced by usbd_eptn_handler().

◆ usb_remote_wkup_clear()

void usb_remote_wkup_clear ( usbd_type * usbx )

usb remote wakeup clear

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 463 of file at32f403_usb.c.

Referenced by usbd_remote_wakeup().

◆ usb_remote_wkup_set()

void usb_remote_wkup_set ( usbd_type * usbx )

usb remote wakeup set

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 452 of file at32f403_usb.c.

Referenced by usbd_remote_wakeup().

◆ usb_set_address()

void usb_set_address | ( | usbd_type * | usbx,
 |  | uint8_t | address
 | ) |  |

set the host assignment address

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
address | host assignment address
Return values
none

Definition at line 396 of file at32f403_usb.c.

Referenced by usbd_eptn_handler(), usbd_reset_handler(), and usbd_set_device_addr().

◆ usb_usbbufs_enable()

void usb_usbbufs_enable | ( | usbd_type * | usbx,
 |  | confirm_state | state
 | ) |  |

mapping usb packet buffer area two mapping intervals are available for packet buffer area, and are select by the usbbufs in the crm misc1 register. when usbbufs is 0,sram size is 512 bytes, packet buffer start address is 0x40006000.when usbbufs is 1, sram size is fixed to 768 bytes, and the packet buffer start address is fixed to 0x40007800, usb packet buffer can be set to the maximum of 768 bytes.

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

< usb buffer extend address

< usb buffer address

Definition at line 111 of file at32f403_usb.c.

Referenced by usbd_core_init().

◆ usb_write_packet()

void usb_write_packet | ( | uint8_t * | pusr_buf,
 |  | uint16_t | offset_addr,
 |  | uint16_t | nbytes
 | ) |  |

write data from user memory to usb buffer

Parameters
pusr_buf | point to user buffer
offset_addr | endpoint tx offset address
nbytes | number of bytes data write to usb buffer
Return values
none

Definition at line 314 of file at32f403_usb.c.

Referenced by usbd_ept_send().


AT32F403 Firmwary Library: USB_private_functions

Macros | Functions | Variables
USB_private_functions
AT32F403_periph_driver » USB

Macros

#define USB_ENDP_DESC_TABLE_OFFSET 0x40
usb packet buffer start address More...

Functions

void | usb_dev_init (usbd_type *usbx)
initialize usb peripheral controller register More...
void | usb_connect (usbd_type *usbx)
connect usb device More...
void | usb_disconnect (usbd_type *usbx)
disconnect usb device More...
void | usb_usbbufs_enable (usbd_type *usbx, confirm_state state)
mapping usb packet buffer area two mapping intervals are available for packet buffer area, and are select by the usbbufs in the crm misc1 register. when usbbufs is 0,sram size is 512 bytes, packet buffer start address is 0x40006000.when usbbufs is 1, sram size is fixed to 768 bytes, and the packet buffer start address is fixed to 0x40007800, usb packet buffer can be set to the maximum of 768 bytes. More...
void | usb_ept_open (usbd_type *usbx, usb_ept_info *ept_info)
open usb endpoint More...
void | usb_ept_close (usbd_type *usbx, usb_ept_info *ept_info)
close usb endpoint More...
void | usb_write_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
write data from user memory to usb buffer More...
void | usb_read_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
read data from usb buffer to user buffer More...
void | usb_interrupt_enable (usbd_type *usbx, uint16_t interrupt, confirm_state new_state)
usb interrupt enable More...
void | usb_set_address (usbd_type *usbx, uint8_t address)
set the host assignment address More...
void | usb_ept_stall (usbd_type *usbx, usb_ept_info *ept_info)
set endpoint tx or rx status to stall More...
void | usb_enter_suspend (usbd_type *usbx)
usb device enter suspend mode More...
void | usb_exit_suspend (usbd_type *usbx)
usb device exit suspend mode More...
void | usb_remote_wkup_set (usbd_type *usbx)
usb remote wakeup set More...
void | usb_remote_wkup_clear (usbd_type *usbx)
usb remote wakeup clear More...
uint16_t | usb_buffer_malloc (uint16_t maxpacket)
usb auto malloc endpoint buffer More...
void | usb_buffer_free (void)
free usb endpoint buffer More...
flag_status | usb_flag_get (usbd_type *usbx, uint16_t flag)
get flag of usb. More...
flag_status | usb_interrupt_flag_get (usbd_type *usbx, uint16_t flag)
get interrupt flag of usb. More...
void | usb_flag_clear (usbd_type *usbx, uint16_t flag)
clear flag of usb. More...

Variables

uint32_t | g_usb_packet_address = 0x40006000
static uint16_t | g_usb_offset_addr = 0x40

Detailed Description

Macro Definition Documentation

◆ USB_ENDP_DESC_TABLE_OFFSET

#define USB_ENDP_DESC_TABLE_OFFSET 0x40

usb packet buffer start address

Definition at line 46 of file at32f403_usb.c.

Function Documentation

◆ usb_buffer_free()

void usb_buffer_free ( void )

free usb endpoint buffer

Parameters
none
Return values
none

Definition at line 485 of file at32f403_usb.c.

Referenced by usbd_reset_handler().

◆ usb_buffer_malloc()

uint16_t usb_buffer_malloc ( uint16_t maxpacket )

usb auto malloc endpoint buffer

Parameters
mapacket endpoint support max packet size
Return values
none

Definition at line 473 of file at32f403_usb.c.

Referenced by usbd_ept_buf_auto_define().

◆ usb_connect()

void usb_connect ( usbd_type * usbx )

connect usb device

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 79 of file at32f403_usb.c.

Referenced by usbd_connect().

◆ usb_dev_init()

void usb_dev_init ( usbd_type * usbx )

initialize usb peripheral controller register

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

< usb buffer table address

< usb sof interrupt

< usb reset interrupt

< usb suspend interrupt

< usb wakeup interrupt

< usb transmission completed interrupt

Definition at line 56 of file at32f403_usb.c.

Referenced by usbd_core_init().

◆ usb_disconnect()

void usb_disconnect ( usbd_type * usbx )

disconnect usb device

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 91 of file at32f403_usb.c.

Referenced by usbd_disconnect().

◆ usb_enter_suspend()

void usb_enter_suspend ( usbd_type * usbx )

usb device enter suspend mode

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 428 of file at32f403_usb.c.

Referenced by usbd_enter_suspend().

◆ usb_ept_close()

void usb_ept_close | ( | usbd_type * | usbx,
 |  | usb_ept_info * | ept_info
 | ) |  |

close usb endpoint

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
ept_info | endpoint information structure
Return values
none

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

Definition at line 255 of file at32f403_usb.c.

Referenced by usbd_ept_close().

◆ usb_ept_open()

void usb_ept_open | ( | usbd_type * | usbx,
 |  | usb_ept_info * | ept_info
 | ) |  |

open usb endpoint

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
ept_info | endpoint information structure
Return values
none

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb endpoint address

< usb endpoint transfer type control

< usb endpoint transfer type bulk

< usb endpoint transfer type interrupt

< usb endpoint transfer type iso

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb transfer type

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status nak

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status nak

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb rx transcation completed

< usb endpoint extend funtion

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status disable

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status disable

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status nak

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status nak

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status valid

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status valid

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb rx transcation completed

< usb endpoint extend funtion

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx data toggle synchronization

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status valid

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status valid

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status disable

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status disable

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

Definition at line 135 of file at32f403_usb.c.

Referenced by usbd_ept_open().

◆ usb_ept_stall()

void usb_ept_stall | ( | usbd_type * | usbx,
 |  | usb_ept_info * | ept_info
 | ) |  |

set endpoint tx or rx status to stall

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
ept_info | endpoint information structure
Return values
none

< usb tx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb tx mask

< usb tx status stall

< usb tx data toggle bit 0

< usb tx data toggle bit 0

< usb tx status stall

< usb tx data toggle bit 1

< usb tx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

< usb rx status

< usb tx transcation completed

< usb setup transcation completed

< usb endpoint address

< usb endpoint extend funtion

< usb rx transcation completed

< usb transfer type

< usb bit mask

< usb rx mask

< usb rx status stall

< usb rx data toggle bit 0

< usb rx data toggle bit 0

< usb rx status stall

< usb rx data toggle bit 1

< usb rx data toggle bit 1

< usb rx transcation completed

< usb tx transcation completed

Definition at line 409 of file at32f403_usb.c.

◆ usb_exit_suspend()

void usb_exit_suspend ( usbd_type * usbx )

usb device exit suspend mode

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 440 of file at32f403_usb.c.

Referenced by usbd_remote_wakeup(), and usbd_wakeup_handler().

◆ usb_flag_clear()

void usb_flag_clear | ( | usbd_type * | usbx,
 |  | uint16_t | flag
 | ) |  |

clear flag of usb.

Parameters
usbx select the usb peripheral
flag select the usb flag this parameter can be one of the following values:
  • USB_INOUT_FLAG
  • USB_LSOF_FLAG
  • USB_SOF_FLAG
  • USB_RST_FLAG
  • USB_SP_FLAG
  • USB_WK_FLAG
  • USB_BE_FLAG
  • USB_UCFOR_FLAG
  • USB_TC_FLAG
Return values
none

Definition at line 571 of file at32f403_usb.c.

Referenced by usbd_irq_handler().

◆ usb_flag_get()

flag_status usb_flag_get | ( | usbd_type * | usbx,
 |  | uint16_t | flag
 | ) |  |

get flag of usb.

Parameters
usbx select the usb peripheral
flag select the usb flag this parameter can be one of the following values:
  • USB_INOUT_FLAG
  • USB_LSOF_FLAG
  • USB_SOF_FLAG
  • USB_RST_FLAG
  • USB_SP_FLAG
  • USB_WK_FLAG
  • USB_BE_FLAG
  • USB_UCFOR_FLAG
  • USB_TC_FLAG
Return values
none

Definition at line 506 of file at32f403_usb.c.

◆ usb_interrupt_enable()

void usb_interrupt_enable | ( | usbd_type * | usbx,
 |  | uint16_t | interrupt,
 |  | confirm_state | new_state
 | ) |  |

usb interrupt enable

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
interrupt this parameter can be any combination of the following values:
  • USB_LSOF_INT
  • USB_SOF_INT
  • USB_RST_INT
  • USB_SP_INT
  • USB_WK_INT
  • USB_BE_INT
  • USB_UCFOR_INT
  • USB_TC_INT
new_state | (TRUE or FALSE)
Return values
none

Definition at line 377 of file at32f403_usb.c.

Referenced by usb_dev_init().

◆ usb_interrupt_flag_get()

flag_status usb_interrupt_flag_get | ( | usbd_type * | usbx,
 |  | uint16_t | flag
 | ) |  |

get interrupt flag of usb.

Parameters
usbx select the usb peripheral
flag select the usb flag this parameter can be one of the following values:
  • USB_LSOF_FLAG
  • USB_SOF_FLAG
  • USB_RST_FLAG
  • USB_SP_FLAG
  • USB_WK_FLAG
  • USB_BE_FLAG
  • USB_UCFOR_FLAG
  • USB_TC_FLAG
Return values
none

< usb transmission completed flag

< usb transmission completed flag

Definition at line 536 of file at32f403_usb.c.

◆ usb_read_packet()

void usb_read_packet | ( | uint8_t * | pusr_buf,
 |  | uint16_t | offset_addr,
 |  | uint16_t | nbytes
 | ) |  |

read data from usb buffer to user buffer

Parameters
pusr_buf | point to user buffer
offset_addr | endpoint rx offset address
nbytes | number of bytes data write to usb buffer
Return values
none

Definition at line 341 of file at32f403_usb.c.

Referenced by usbd_eptn_handler().

◆ usb_remote_wkup_clear()

void usb_remote_wkup_clear ( usbd_type * usbx )

usb remote wakeup clear

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 463 of file at32f403_usb.c.

Referenced by usbd_remote_wakeup().

◆ usb_remote_wkup_set()

void usb_remote_wkup_set ( usbd_type * usbx )

usb remote wakeup set

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

Definition at line 452 of file at32f403_usb.c.

Referenced by usbd_remote_wakeup().

◆ usb_set_address()

void usb_set_address | ( | usbd_type * | usbx,
 |  | uint8_t | address
 | ) |  |

set the host assignment address

Parameters
usbx | to select the usb peripheral. parameter as following values: USB
address | host assignment address
Return values
none

Definition at line 396 of file at32f403_usb.c.

Referenced by usbd_eptn_handler(), usbd_reset_handler(), and usbd_set_device_addr().

◆ usb_usbbufs_enable()

void usb_usbbufs_enable | ( | usbd_type * | usbx,
 |  | confirm_state | state
 | ) |  |

mapping usb packet buffer area two mapping intervals are available for packet buffer area, and are select by the usbbufs in the crm misc1 register. when usbbufs is 0,sram size is 512 bytes, packet buffer start address is 0x40006000.when usbbufs is 1, sram size is fixed to 768 bytes, and the packet buffer start address is fixed to 0x40007800, usb packet buffer can be set to the maximum of 768 bytes.

Parameters
usbx to select the usb peripheral. parameter as following values: USB
Return values
none

< usb buffer extend address

< usb buffer address

Definition at line 111 of file at32f403_usb.c.

Referenced by usbd_core_init().

◆ usb_write_packet()

void usb_write_packet | ( | uint8_t * | pusr_buf,
 |  | uint16_t | offset_addr,
 |  | uint16_t | nbytes
 | ) |  |

write data from user memory to usb buffer

Parameters
pusr_buf | point to user buffer
offset_addr | endpoint tx offset address
nbytes | number of bytes data write to usb buffer
Return values
none

Definition at line 314 of file at32f403_usb.c.

Referenced by usbd_ept_send().

Variable Documentation

◆ g_usb_offset_addr

uint16_t g_usb_offset_addr = 0x40
static

Definition at line 48 of file at32f403_usb.c.

Referenced by usb_buffer_free(), and usb_buffer_malloc().

◆ g_usb_packet_address

uint32_t g_usb_packet_address = 0x40006000

usb buffer address

Definition at line 47 of file at32f403_usb.c.

Referenced by usb_read_packet(), usb_usbbufs_enable(), and usb_write_packet().


AT32F403 Firmwary Library: WDT

Modules | Macros
WDT
AT32F403_periph_driver

WDT driver modules. More...

Modules

WDT_flags_definition
wdt flag
WDT_exported_types
WDT_exported_functions
WDT_private_functions

Macros

#define WDT ((wdt_type *) WDT_BASE)

Detailed Description

WDT driver modules.

Macro Definition Documentation

◆ WDT

#define WDT ((wdt_type *) WDT_BASE)

Definition at line 152 of file at32f403_wdt.h.


AT32F403 Firmwary Library: WDT_flags_definition

Macros
WDT_flags_definition
AT32F403_periph_driver » WDT

wdt flag More...

Macros

#define | WDT_DIVF_UPDATE_FLAG ((uint16_t)0x0001)
#define | WDT_RLDF_UPDATE_FLAG ((uint16_t)0x0002)

Detailed Description

wdt flag

Macro Definition Documentation

◆ WDT_DIVF_UPDATE_FLAG

#define WDT_DIVF_UPDATE_FLAG ((uint16_t)0x0001)

wdt division value update complete flag

Definition at line 51 of file at32f403_wdt.h.

◆ WDT_RLDF_UPDATE_FLAG

#define WDT_RLDF_UPDATE_FLAG ((uint16_t)0x0002)

wdt reload value update complete flag

Definition at line 52 of file at32f403_wdt.h.


AT32F403 Firmwary Library: WDT_exported_types

Data Structures | Enumerations
WDT_exported_types
AT32F403_periph_driver » WDT

Data Structures

struct wdt_type
type define wdt register all More...

Enumerations

enum wdt_division_type {
WDT_CLK_DIV_4 = 0x00 , WDT_CLK_DIV_8 = 0x01 , WDT_CLK_DIV_16 = 0x02 , WDT_CLK_DIV_32 = 0x03 ,
WDT_CLK_DIV_64 = 0x04 , WDT_CLK_DIV_128 = 0x05 , WDT_CLK_DIV_256 = 0x06
}
wdt division value type More...
enum wdt_cmd_value_type { WDT_CMD_LOCK = 0x0000 , WDT_CMD_UNLOCK = 0x5555 , WDT_CMD_ENABLE = 0xCCCC , WDT_CMD_RELOAD = 0xAAAA }
wdt cmd value type More...

Detailed Description

Enumeration Type Documentation

◆ wdt_cmd_value_type

enum wdt_cmd_value_type

wdt cmd value type

Enumerator
WDT_CMD_LOCK | disable write protection command
WDT_CMD_UNLOCK | enable write protection command
WDT_CMD_ENABLE | enable wdt command
WDT_CMD_RELOAD | reload command

Definition at line 79 of file at32f403_wdt.h.

◆ wdt_division_type

enum wdt_division_type

wdt division value type

Enumerator
WDT_CLK_DIV_4 | wdt clock divider value is 4
WDT_CLK_DIV_8 | wdt clock divider value is 8
WDT_CLK_DIV_16 | wdt clock divider value is 16
WDT_CLK_DIV_32 | wdt clock divider value is 32
WDT_CLK_DIV_64 | wdt clock divider value is 64
WDT_CLK_DIV_128 | wdt clock divider value is 128
WDT_CLK_DIV_256 | wdt clock divider value is 256

Definition at line 65 of file at32f403_wdt.h.


AT32F403 Firmwary Library: wdt_type Struct Reference

Data Fields
wdt_type Struct Reference
AT32F403_periph_driver » WDT » WDT_exported_types

type define wdt register all More...

#include <at32f403_wdt.h>

Data Fields

union {
__IO uint32_t cmd
struct {
__IO uint32_t cmd: 16
__IO uint32_t reserved1: 16
} cmd_bit
};
wdt cmd register, offset:0x00 More...
union {
__IO uint32_t div
struct {
__IO uint32_t div: 3
__IO uint32_t reserved1: 29
} div_bit
};
wdt div register, offset:0x04 More...
union {
__IO uint32_t rld
struct {
__IO uint32_t rld: 12
__IO uint32_t reserved1: 20
} rld_bit
};
wdt rld register, offset:0x08 More...
union {
__IO uint32_t sts
struct {
__IO uint32_t divf: 1
__IO uint32_t rldf: 1
__IO uint32_t reserved1: 30
} sts_bit
};
wdt sts register, offset:0x0C More...

Detailed Description

type define wdt register all

Definition at line 90 of file at32f403_wdt.h.

Field Documentation

◆

union { ... } wdt_type::@729

wdt cmd register, offset:0x00

◆

union { ... } wdt_type::@731

wdt div register, offset:0x04

◆

union { ... } wdt_type::@733

wdt rld register, offset:0x08

◆

union { ... } wdt_type::@735

wdt sts register, offset:0x0C

◆ cmd

__IO uint32_t wdt_type::cmd

Definition at line 98 of file at32f403_wdt.h.

◆

struct { ... } wdt_type::cmd_bit

◆ div

__IO uint32_t wdt_type::div

Definition at line 111 of file at32f403_wdt.h.

◆

struct { ... } wdt_type::div_bit

◆ divf

__IO uint32_t wdt_type::divf

Definition at line 140 of file at32f403_wdt.h.

◆ reserved1

__IO uint32_t wdt_type::reserved1

Definition at line 102 of file at32f403_wdt.h.

◆ rld

__IO uint32_t wdt_type::rld

Definition at line 124 of file at32f403_wdt.h.

◆

struct { ... } wdt_type::rld_bit

◆ rldf

__IO uint32_t wdt_type::rldf

Definition at line 141 of file at32f403_wdt.h.

◆ sts

__IO uint32_t wdt_type::sts

Definition at line 137 of file at32f403_wdt.h.

◆

struct { ... } wdt_type::sts_bit
The documentation for this struct was generated from the following file:
  • at32f403_wdt.h


AT32F403 Firmwary Library: WDT_exported_functions

Functions
WDT_exported_functions
AT32F403_periph_driver » WDT

Functions

void | wdt_enable (void)
wdt enable ,the reload value will be sent to the counter More...
void | wdt_counter_reload (void)
reload wdt counter More...
void | wdt_reload_value_set (uint16_t reload_value)
set wdt counter reload value More...
void | wdt_divider_set (wdt_division_type division)
set wdt division divider More...
void | wdt_register_write_enable (confirm_state new_state)
enable or disable wdt cmd register write More...
flag_status | wdt_flag_get (uint16_t wdt_flag)
get wdt flag More...

Detailed Description

Function Documentation

◆ wdt_counter_reload()

void wdt_counter_reload ( void )

reload wdt counter

Parameters
none
Return values
none

Definition at line 57 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_divider_set()

void wdt_divider_set ( wdt_division_type division )

set wdt division divider

Parameters
division this parameter can be one of the following values:
  • WDT_CLK_DIV_4
  • WDT_CLK_DIV_8
  • WDT_CLK_DIV_16
  • WDT_CLK_DIV_32
  • WDT_CLK_DIV_64
  • WDT_CLK_DIV_128
  • WDT_CLK_DIV_256
Return values
none

Definition at line 85 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_enable()

void wdt_enable ( void )

wdt enable ,the reload value will be sent to the counter

Parameters
none
Return values
none

Definition at line 47 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_flag_get()

flag_status wdt_flag_get ( uint16_t wdt_flag )

get wdt flag

Parameters
wdt_flag this parameter can be one of the following values:
  • WDT_DIVF_UPDATE_FLAG: division value update complete flag.
  • WDT_RLDF_UPDATE_FLAG: reload value update complete flag.
Return values
state of wdt flag

Definition at line 115 of file at32f403_wdt.c.

◆ wdt_register_write_enable()

void wdt_register_write_enable ( confirm_state new_state )

enable or disable wdt cmd register write

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 95 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_reload_value_set()

void wdt_reload_value_set ( uint16_t reload_value )

set wdt counter reload value

Parameters
reload_value (0x0000~0x0FFF)
Return values
none

Definition at line 67 of file at32f403_wdt.c.

Referenced by main().


AT32F403 Firmwary Library: WDT_private_functions

Functions
WDT_private_functions
AT32F403_periph_driver » WDT

Functions

void | wdt_enable (void)
wdt enable ,the reload value will be sent to the counter More...
void | wdt_counter_reload (void)
reload wdt counter More...
void | wdt_reload_value_set (uint16_t reload_value)
set wdt counter reload value More...
void | wdt_divider_set (wdt_division_type division)
set wdt division divider More...
void | wdt_register_write_enable (confirm_state new_state)
enable or disable wdt cmd register write More...
flag_status | wdt_flag_get (uint16_t wdt_flag)
get wdt flag More...

Detailed Description

Function Documentation

◆ wdt_counter_reload()

void wdt_counter_reload ( void )

reload wdt counter

Parameters
none
Return values
none

Definition at line 57 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_divider_set()

void wdt_divider_set ( wdt_division_type division )

set wdt division divider

Parameters
division this parameter can be one of the following values:
  • WDT_CLK_DIV_4
  • WDT_CLK_DIV_8
  • WDT_CLK_DIV_16
  • WDT_CLK_DIV_32
  • WDT_CLK_DIV_64
  • WDT_CLK_DIV_128
  • WDT_CLK_DIV_256
Return values
none

Definition at line 85 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_enable()

void wdt_enable ( void )

wdt enable ,the reload value will be sent to the counter

Parameters
none
Return values
none

Definition at line 47 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_flag_get()

flag_status wdt_flag_get ( uint16_t wdt_flag )

get wdt flag

Parameters
wdt_flag this parameter can be one of the following values:
  • WDT_DIVF_UPDATE_FLAG: division value update complete flag.
  • WDT_RLDF_UPDATE_FLAG: reload value update complete flag.
Return values
state of wdt flag

Definition at line 115 of file at32f403_wdt.c.

◆ wdt_register_write_enable()

void wdt_register_write_enable ( confirm_state new_state )

enable or disable wdt cmd register write

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 95 of file at32f403_wdt.c.

Referenced by main().

◆ wdt_reload_value_set()

void wdt_reload_value_set ( uint16_t reload_value )

set wdt counter reload value

Parameters
reload_value (0x0000~0x0FFF)
Return values
none

Definition at line 67 of file at32f403_wdt.c.

Referenced by main().


AT32F403 Firmwary Library: WWDT

Modules | Macros
WWDT
AT32F403_periph_driver

WWDT driver modules. More...

Modules

WWDT_enable_bit_definition
wwdt enable bit
WWDT_exported_types
WWDT_exported_functions
WWDT_private_functions

Macros

#define WWDT ((wwdt_type *) WWDT_BASE)

Detailed Description

WWDT driver modules.

Macro Definition Documentation

◆ WWDT

#define WWDT ((wwdt_type *) WWDT_BASE)

Definition at line 125 of file at32f403_wwdt.h.


AT32F403 Firmwary Library: WWDT_enable_bit_definition

Macros
WWDT_enable_bit_definition
AT32F403_periph_driver » WWDT

wwdt enable bit More...

Macros

#define WWDT_EN_BIT ((uint32_t)0x00000080)

Detailed Description

wwdt enable bit

Macro Definition Documentation

◆ WWDT_EN_BIT

#define WWDT_EN_BIT ((uint32_t)0x00000080)

wwdt enable bit

Definition at line 50 of file at32f403_wwdt.h.


AT32F403 Firmwary Library: WWDT_exported_types

Data Structures | Enumerations
WWDT_exported_types
AT32F403_periph_driver » WWDT

Data Structures

struct wwdt_type
type define wwdt register all More...

Enumerations

enum wwdt_division_type { WWDT_PCLK1_DIV_4096 = 0x00 , WWDT_PCLK1_DIV_8192 = 0x01 , WWDT_PCLK1_DIV_16384 = 0x02 , WWDT_PCLK1_DIV_32768 = 0x03 }
wwdt division type More...

Detailed Description

Enumeration Type Documentation

◆ wwdt_division_type

enum wwdt_division_type

wwdt division type

Enumerator
WWDT_PCLK1_DIV_4096 | wwdt counter clock = (pclk1/4096)/1)
WWDT_PCLK1_DIV_8192 | wwdt counter clock = (pclk1/4096)/2)
WWDT_PCLK1_DIV_16384 | wwdt counter clock = (pclk1/4096)/4)
WWDT_PCLK1_DIV_32768 | wwdt counter clock = (pclk1/4096)/8)

Definition at line 63 of file at32f403_wwdt.h.


AT32F403 Firmwary Library: wwdt_type Struct Reference

Data Fields
wwdt_type Struct Reference
AT32F403_periph_driver » WWDT » WWDT_exported_types

type define wwdt register all More...

#include <at32f403_wwdt.h>

Data Fields

union {
__IO uint32_t ctrl
struct {
__IO uint32_t cnt: 7
__IO uint32_t wwdten: 1
__IO uint32_t reserved1: 24
} ctrl_bit
};
wwdt ctrl register, offset:0x00 More...
union {
__IO uint32_t cfg
struct {
__IO uint32_t win: 7
__IO uint32_t div: 2
__IO uint32_t rldien: 1
__IO uint32_t reserved1: 22
} cfg_bit
};
wwdt cfg register, offset:0x04 More...
union {
__IO uint32_t sts
struct {
__IO uint32_t rldf: 1
__IO uint32_t reserved1: 31
} sts_bit
};
wwdt cfg register, offset:0x08 More...

Detailed Description

type define wwdt register all

Definition at line 74 of file at32f403_wwdt.h.

Field Documentation

◆

union { ... } wwdt_type::@741

wwdt ctrl register, offset:0x00

◆

union { ... } wwdt_type::@743

wwdt cfg register, offset:0x04

◆

union { ... } wwdt_type::@745

wwdt cfg register, offset:0x08

◆ cfg

__IO uint32_t wwdt_type::cfg

Definition at line 96 of file at32f403_wwdt.h.

◆

struct { ... } wwdt_type::cfg_bit

◆ cnt

__IO uint32_t wwdt_type::cnt

Definition at line 85 of file at32f403_wwdt.h.

◆ ctrl

__IO uint32_t wwdt_type::ctrl

Definition at line 82 of file at32f403_wwdt.h.

◆

struct { ... } wwdt_type::ctrl_bit

◆ div

__IO uint32_t wwdt_type::div

Definition at line 100 of file at32f403_wwdt.h.

◆ reserved1

__IO uint32_t wwdt_type::reserved1

Definition at line 87 of file at32f403_wwdt.h.

◆ rldf

__IO uint32_t wwdt_type::rldf

Definition at line 114 of file at32f403_wwdt.h.

◆ rldien

__IO uint32_t wwdt_type::rldien

Definition at line 101 of file at32f403_wwdt.h.

◆ sts

__IO uint32_t wwdt_type::sts

Definition at line 111 of file at32f403_wwdt.h.

◆

struct { ... } wwdt_type::sts_bit

◆ win

__IO uint32_t wwdt_type::win

Definition at line 99 of file at32f403_wwdt.h.

◆ wwdten

__IO uint32_t wwdt_type::wwdten

Definition at line 86 of file at32f403_wwdt.h.

The documentation for this struct was generated from the following file:
  • at32f403_wwdt.h


AT32F403 Firmwary Library: WWDT_exported_functions

Functions
WWDT_exported_functions
AT32F403_periph_driver » WWDT

Functions

void | wwdt_reset (void)
wwdt reset by crm reset register More...
void | wwdt_divider_set (wwdt_division_type division)
wwdt division set More...
void | wwdt_flag_clear (void)
wwdt reload counter interrupt flag clear More...
void | wwdt_enable (uint8_t wwdt_cnt)
wwdt enable and the counter value load More...
void | wwdt_interrupt_enable (void)
wwdt reload counter interrupt enable More...
flag_status | wwdt_flag_get (void)
wwdt reload counter interrupt flag get More...
flag_status | wwdt_interrupt_flag_get (void)
wwdt reload counter interrupt flag get More...
void | wwdt_counter_set (uint8_t wwdt_cnt)
wwdt counter value set More...
void | wwdt_window_counter_set (uint8_t window_cnt)
wwdt window counter value set More...

Detailed Description

Function Documentation

◆ wwdt_counter_set()

void wwdt_counter_set ( uint8_t wwdt_cnt )

wwdt counter value set

Parameters
wwdt_cnt (0x40~0x7f)
Return values
none

Definition at line 122 of file at32f403_wwdt.c.

Referenced by main().

◆ wwdt_divider_set()

void wwdt_divider_set ( wwdt_division_type division )

wwdt division set

Parameters
division this parameter can be one of the following values:
  • WWDT_PCLK1_DIV_4096 (wwdt counter clock = (pclk1/4096)/1)
  • WWDT_PCLK1_DIV_8192 (wwdt counter clock = (pclk1/4096)/2)
  • WWDT_PCLK1_DIV_16384 (wwdt counter clock = (pclk1/4096)/4)
  • WWDT_PCLK1_DIV_32768 (wwdt counter clock = (pclk1/4096)/8)
Return values
none

Definition at line 62 of file at32f403_wwdt.c.

Referenced by main().

◆ wwdt_enable()

void wwdt_enable ( uint8_t wwdt_cnt )

wwdt enable and the counter value load

Parameters
wwdt_cnt (0x40~0x7f)
Return values
none

< wwdt enable bit

Definition at line 82 of file at32f403_wwdt.c.

Referenced by main().

◆ wwdt_flag_clear()

void wwdt_flag_clear ( void )

wwdt reload counter interrupt flag clear

Parameters
none
Return values
none

Definition at line 72 of file at32f403_wwdt.c.

◆ wwdt_flag_get()

flag_status wwdt_flag_get ( void )

wwdt reload counter interrupt flag get

Parameters
none
Return values
state of reload counter interrupt flag

Definition at line 102 of file at32f403_wwdt.c.

◆ wwdt_interrupt_enable()

void wwdt_interrupt_enable ( void )

wwdt reload counter interrupt enable

Parameters
none
Return values
none

Definition at line 92 of file at32f403_wwdt.c.

◆ wwdt_interrupt_flag_get()

flag_status wwdt_interrupt_flag_get ( void )

wwdt reload counter interrupt flag get

Parameters
none
Return values
state of reload counter interrupt flag

Definition at line 112 of file at32f403_wwdt.c.

◆ wwdt_reset()

void wwdt_reset ( void )

wwdt reset by crm reset register

Return values
none

Definition at line 46 of file at32f403_wwdt.c.

◆ wwdt_window_counter_set()

void wwdt_window_counter_set ( uint8_t window_cnt )

wwdt window counter value set

Parameters
window_cnt (0x40~0x7f)
Return values
none

Definition at line 132 of file at32f403_wwdt.c.

Referenced by main().


AT32F403 Firmwary Library: WWDT_private_functions

Functions
WWDT_private_functions
AT32F403_periph_driver » WWDT

Functions

void | wwdt_reset (void)
wwdt reset by crm reset register More...
void | wwdt_divider_set (wwdt_division_type division)
wwdt division set More...
void | wwdt_flag_clear (void)
wwdt reload counter interrupt flag clear More...
void | wwdt_enable (uint8_t wwdt_cnt)
wwdt enable and the counter value load More...
void | wwdt_interrupt_enable (void)
wwdt reload counter interrupt enable More...
flag_status | wwdt_flag_get (void)
wwdt reload counter interrupt flag get More...
flag_status | wwdt_interrupt_flag_get (void)
wwdt reload counter interrupt flag get More...
void | wwdt_counter_set (uint8_t wwdt_cnt)
wwdt counter value set More...
void | wwdt_window_counter_set (uint8_t window_cnt)
wwdt window counter value set More...

Detailed Description

Function Documentation

◆ wwdt_counter_set()

void wwdt_counter_set ( uint8_t wwdt_cnt )

wwdt counter value set

Parameters
wwdt_cnt (0x40~0x7f)
Return values
none

Definition at line 122 of file at32f403_wwdt.c.

Referenced by main().

◆ wwdt_divider_set()

void wwdt_divider_set ( wwdt_division_type division )

wwdt division set

Parameters
division this parameter can be one of the following values:
  • WWDT_PCLK1_DIV_4096 (wwdt counter clock = (pclk1/4096)/1)
  • WWDT_PCLK1_DIV_8192 (wwdt counter clock = (pclk1/4096)/2)
  • WWDT_PCLK1_DIV_16384 (wwdt counter clock = (pclk1/4096)/4)
  • WWDT_PCLK1_DIV_32768 (wwdt counter clock = (pclk1/4096)/8)
Return values
none

Definition at line 62 of file at32f403_wwdt.c.

Referenced by main().

◆ wwdt_enable()

void wwdt_enable ( uint8_t wwdt_cnt )

wwdt enable and the counter value load

Parameters
wwdt_cnt (0x40~0x7f)
Return values
none

< wwdt enable bit

Definition at line 82 of file at32f403_wwdt.c.

Referenced by main().

◆ wwdt_flag_clear()

void wwdt_flag_clear ( void )

wwdt reload counter interrupt flag clear

Parameters
none
Return values
none

Definition at line 72 of file at32f403_wwdt.c.

◆ wwdt_flag_get()

flag_status wwdt_flag_get ( void )

wwdt reload counter interrupt flag get

Parameters
none
Return values
state of reload counter interrupt flag

Definition at line 102 of file at32f403_wwdt.c.

◆ wwdt_interrupt_enable()

void wwdt_interrupt_enable ( void )

wwdt reload counter interrupt enable

Parameters
none
Return values
none

Definition at line 92 of file at32f403_wwdt.c.

◆ wwdt_interrupt_flag_get()

flag_status wwdt_interrupt_flag_get ( void )

wwdt reload counter interrupt flag get

Parameters
none
Return values
state of reload counter interrupt flag

Definition at line 112 of file at32f403_wwdt.c.

◆ wwdt_reset()

void wwdt_reset ( void )

wwdt reset by crm reset register

Return values
none

Definition at line 46 of file at32f403_wwdt.c.

◆ wwdt_window_counter_set()

void wwdt_window_counter_set ( uint8_t window_cnt )

wwdt window counter value set

Parameters
window_cnt (0x40~0x7f)
Return values
none

Definition at line 132 of file at32f403_wwdt.c.

Referenced by main().


AT32F403 Firmwary Library: XMC

Modules | Macros
XMC
AT32F403_periph_driver

XMC driver modules. More...

Modules

XMC_exported_types
XMC_exported_functions
XMC_private_functions

Macros

#define | XMC_BANK1 ((xmc_bank1_type *) XMC_BANK1_REG_BASE)
#define | XMC_BANK2 ((xmc_bank2_type *) XMC_BANK2_REG_BASE)
#define | XMC_BANK3 ((xmc_bank3_type *) XMC_BANK3_REG_BASE)
#define | XMC_BANK4 ((xmc_bank4_type *) XMC_BANK4_REG_BASE)

Detailed Description

XMC driver modules.

Macro Definition Documentation

◆ XMC_BANK1

#define XMC_BANK1 ((xmc_bank1_type *) XMC_BANK1_REG_BASE)

Definition at line 722 of file at32f403_xmc.h.

◆ XMC_BANK2

#define XMC_BANK2 ((xmc_bank2_type *) XMC_BANK2_REG_BASE)

Definition at line 723 of file at32f403_xmc.h.

◆ XMC_BANK3

#define XMC_BANK3 ((xmc_bank3_type *) XMC_BANK3_REG_BASE)

Definition at line 724 of file at32f403_xmc.h.

◆ XMC_BANK4

#define XMC_BANK4 ((xmc_bank4_type *) XMC_BANK4_REG_BASE)

Definition at line 725 of file at32f403_xmc.h.


AT32F403 Firmwary Library: XMC_exported_types

Data Structures | Enumerations
XMC_exported_types
AT32F403_periph_driver » XMC

Data Structures

struct | xmc_norsram_timing_init_type
nor/sram banks timing parameters More...
struct | xmc_norsram_init_type
xmc nor/sram init structure definition More...
struct | xmc_nand_pccard_timinginit_type
nand timing parameters xmc More...
struct | xmc_nand_init_type
xmc nand init structure definition More...
struct | xmc_pccard_init_type
xmc pccard init structure definition More...
struct | xmc_bank1_ctrl_tmg_reg_type
struct | xmc_bank1_tmgwr_reg_type
struct | xmc_bank1_type
xmc bank1 registers More...
struct | xmc_bank2_type
xmc bank2 registers More...
struct | xmc_bank3_type
xmc bank3 registers More...
struct | xmc_bank4_type
xmc bank4 registers More...

Enumerations

enum | xmc_data_addr_mux_type { XMC_DATA_ADDR_MUX_DISABLE = 0x00000000 , XMC_DATA_ADDR_MUX_ENABLE = 0x00000002 }
xmc data address bus multiplexing type More...
enum | xmc_burst_access_mode_type { XMC_BURST_MODE_DISABLE = 0x00000000 , XMC_BURST_MODE_ENABLE = 0x00000100 }
xmc burst access mode type More...
enum | xmc_asyn_wait_type { XMC_ASYN_WAIT_DISABLE = 0x00000000 , XMC_ASYN_WAIT_ENABLE = 0x00008000 }
xmc asynchronous wait type More...
enum | xmc_wrap_mode_type { XMC_WRAPPED_MODE_DISABLE = 0x00000000 , XMC_WRAPPED_MODE_ENABLE = 0x00000400 }
xmc wrapped mode type More...
enum | xmc_write_operation_type { XMC_WRITE_OPERATION_DISABLE = 0x00000000 , XMC_WRITE_OPERATION_ENABLE = 0x00001000 }
xmc write operation type More...
enum | xmc_wait_signal_type { XMC_WAIT_SIGNAL_DISABLE = 0x00000000 , XMC_WAIT_SIGNAL_ENABLE = 0x00002000 }
xmc wait signal type More...
enum | xmc_write_burst_type { XMC_WRITE_BURST_SYN_DISABLE = 0x00000000 , XMC_WRITE_BURST_SYN_ENABLE = 0x00080000 }
xmc write burst type More...
enum | xmc_extended_mode_type { XMC_WRITE_TIMING_DISABLE = 0x00000000 , XMC_WRITE_TIMING_ENABLE = 0x00004000 }
xmc extended mode type More...
enum | xmc_nand_pccard_wait_type { XMC_WAIT_OPERATION_DISABLE = 0x00000000 , XMC_WAIT_OPERATION_ENABLE = 0x00000002 }
xmc nand wait type More...
enum | xmc_ecc_enable_type { XMC_ECC_OPERATION_DISABLE = 0x00000000 , XMC_ECC_OPERATION_ENABLE = 0x00000040 }
xmc ecc enable type More...
enum | xmc_nor_sram_subbank_type { XMC_BANK1_NOR_SRAM1 = 0x00000000 , XMC_BANK1_NOR_SRAM2 = 0x00000001 , XMC_BANK1_NOR_SRAM3 = 0x00000002 , XMC_BANK1_NOR_SRAM4 = 0x00000003 }
xmc nor/sram bank type More...
enum | xmc_class_bank_type { XMC_BANK2_NAND = 0x00000000 , XMC_BANK3_NAND = 0x00000001 , XMC_BANK4_PCCARD = 0x00000002 }
xmc class bank type More...
enum | xmc_memory_type { XMC_DEVICE_SRAM = 0x00000000 , XMC_DEVICE_PSRAM = 0x00000004 , XMC_DEVICE_NOR = 0x00000008 }
xmc memory type More...
enum | xmc_data_width_type { XMC_BUSTYPE_8_BITS = 0x00000000 , XMC_BUSTYPE_16_BITS = 0x00000010 }
xmc data width type More...
enum | xmc_wait_signal_polarity_type { XMC_WAIT_SIGNAL_LEVEL_LOW = 0x00000000 , XMC_WAIT_SIGNAL_LEVEL_HIGH = 0x00000200 }
xmc wait signal polarity type More...
enum | xmc_wait_timing_type { XMC_WAIT_SIGNAL_SYN_BEFORE = 0x00000000 , XMC_WAIT_SIGNAL_SYN_DURING = 0x00000800 }
xmc wait timing type More...
enum | xmc_access_mode_type { XMC_ACCESS_MODE_A = 0x00000000 , XMC_ACCESS_MODE_B = 0x10000000 , XMC_ACCESS_MODE_C = 0x20000000 , XMC_ACCESS_MODE_D = 0x30000000 }
xmc access mode type More...
enum xmc_ecc_pagesize_type {
XMC_ECC_PAGESIZE_256_BYTES = 0x00000000 , XMC_ECC_PAGESIZE_512_BYTES = 0x00020000 , XMC_ECC_PAGESIZE_1024_BYTES = 0x00040000 , XMC_ECC_PAGESIZE_2048_BYTES = 0x00060000 ,
XMC_ECC_PAGESIZE_4096_BYTES = 0x00080000 , XMC_ECC_PAGESIZE_8192_BYTES = 0x000A0000
}
xmc ecc page size type More...
enum | xmc_interrupt_sources_type { XMC_INT_RISING_EDGE = 0x00000008 , XMC_INT_LEVEL = 0x00000010 , XMC_INT_FALLING_EDGE = 0x00000020 }
xmc interrupt sources type More...
enum | xmc_interrupt_flag_type { XMC_RISINGEDGE_FLAG = 0x00000001 , XMC_LEVEL_FLAG = 0x00000002 , XMC_FALLINGEDGE_FLAG = 0x00000004 , XMC_FEMPT_FLAG = 0x00000040 }
xmc interrupt flag type More...

Detailed Description

Enumeration Type Documentation

◆ xmc_access_mode_type

enum xmc_access_mode_type

xmc access mode type

Enumerator
XMC_ACCESS_MODE_A | xmc access mode A
XMC_ACCESS_MODE_B | xmc access mode B
XMC_ACCESS_MODE_C | xmc access mode C
XMC_ACCESS_MODE_D | xmc access mode D

Definition at line 200 of file at32f403_xmc.h.

◆ xmc_asyn_wait_type

enum xmc_asyn_wait_type

xmc asynchronous wait type

Enumerator
XMC_ASYN_WAIT_DISABLE | xmc wait signal during asynchronous transfers disbale
XMC_ASYN_WAIT_ENABLE | xmc wait signal during asynchronous transfers enable

Definition at line 70 of file at32f403_xmc.h.

◆ xmc_burst_access_mode_type

enum xmc_burst_access_mode_type

xmc burst access mode type

Enumerator
XMC_BURST_MODE_DISABLE | xmc burst mode disable
XMC_BURST_MODE_ENABLE | xmc burst mode enable

Definition at line 61 of file at32f403_xmc.h.

◆ xmc_class_bank_type

enum xmc_class_bank_type

xmc class bank type

Enumerator
XMC_BANK2_NAND | xmc nand flash bank2
XMC_BANK3_NAND | xmc nand flash bank3
XMC_BANK4_PCCARD | xmc pc card bank4

Definition at line 153 of file at32f403_xmc.h.

◆ xmc_data_addr_mux_type

enum xmc_data_addr_mux_type

xmc data address bus multiplexing type

Enumerator
XMC_DATA_ADDR_MUX_DISABLE | xmc address/data multiplexing disable
XMC_DATA_ADDR_MUX_ENABLE | xmc address/data multiplexing enable

Definition at line 52 of file at32f403_xmc.h.

◆ xmc_data_width_type

enum xmc_data_width_type

xmc data width type

Enumerator
XMC_BUSTYPE_8_BITS | xmc databuss width 8bits
XMC_BUSTYPE_16_BITS | xmc databuss width 16bits

Definition at line 173 of file at32f403_xmc.h.

◆ xmc_ecc_enable_type

enum xmc_ecc_enable_type

xmc ecc enable type

Enumerator
XMC_ECC_OPERATION_DISABLE | xmc ecc module disable
XMC_ECC_OPERATION_ENABLE | xmc ecc module enable

Definition at line 133 of file at32f403_xmc.h.

◆ xmc_ecc_pagesize_type

enum xmc_ecc_pagesize_type

xmc ecc page size type

Enumerator
XMC_ECC_PAGESIZE_256_BYTES | xmc ecc page size 256 bytes
XMC_ECC_PAGESIZE_512_BYTES | xmc ecc page size 512 bytes
XMC_ECC_PAGESIZE_1024_BYTES | xmc ecc page size 1024 bytes
XMC_ECC_PAGESIZE_2048_BYTES | xmc ecc page size 2048 bytes
XMC_ECC_PAGESIZE_4096_BYTES | xmc ecc page size 4096 bytes
XMC_ECC_PAGESIZE_8192_BYTES | xmc ecc page size 8192 bytes

Definition at line 211 of file at32f403_xmc.h.

◆ xmc_extended_mode_type

enum xmc_extended_mode_type

xmc extended mode type

Enumerator
XMC_WRITE_TIMING_DISABLE | xmc write timing disable
XMC_WRITE_TIMING_ENABLE | xmc write timing enable

Definition at line 115 of file at32f403_xmc.h.

◆ xmc_interrupt_flag_type

enum xmc_interrupt_flag_type

xmc interrupt flag type

Enumerator
XMC_RISINGEDGE_FLAG | xmc interrupt rising edge detection flag
XMC_LEVEL_FLAG | xmc interrupt high-level edge detection flag
XMC_FALLINGEDGE_FLAG | xmc interrupt falling edge detection flag
XMC_FEMPT_FLAG | xmc fifo empty flag

Definition at line 234 of file at32f403_xmc.h.

◆ xmc_interrupt_sources_type

enum xmc_interrupt_sources_type

xmc interrupt sources type

Enumerator
XMC_INT_RISING_EDGE | xmc rising edge detection interrupt enable
XMC_INT_LEVEL | xmc high-level edge detection interrupt enable
XMC_INT_FALLING_EDGE | xmc falling edge detection interrupt enable

Definition at line 224 of file at32f403_xmc.h.

◆ xmc_memory_type

enum xmc_memory_type

xmc memory type

Enumerator
XMC_DEVICE_SRAM | xmc device choice sram
XMC_DEVICE_PSRAM | xmc device choice psram
XMC_DEVICE_NOR | xmc device choice nor flash

Definition at line 163 of file at32f403_xmc.h.

◆ xmc_nand_pccard_wait_type

enum xmc_nand_pccard_wait_type

xmc nand wait type

Enumerator
XMC_WAIT_OPERATION_DISABLE | xmc wait operation for the pc card/nand flash memory bank disable
XMC_WAIT_OPERATION_ENABLE | xmc wait operation for the pc card/nand flash memory bank enable

Definition at line 124 of file at32f403_xmc.h.

◆ xmc_nor_sram_subbank_type

enum xmc_nor_sram_subbank_type

xmc nor/sram bank type

Enumerator
XMC_BANK1_NOR_SRAM1 | xmc nor/sram subbank1
XMC_BANK1_NOR_SRAM2 | xmc nor/sram subbank2
XMC_BANK1_NOR_SRAM3 | xmc nor/sram subbank3
XMC_BANK1_NOR_SRAM4 | xmc nor/sram subbank4

Definition at line 142 of file at32f403_xmc.h.

◆ xmc_wait_signal_polarity_type

enum xmc_wait_signal_polarity_type

xmc wait signal polarity type

Enumerator
XMC_WAIT_SIGNAL_LEVEL_LOW | xmc nwait active low
XMC_WAIT_SIGNAL_LEVEL_HIGH | xmc nwait active high

Definition at line 182 of file at32f403_xmc.h.

◆ xmc_wait_signal_type

enum xmc_wait_signal_type

xmc wait signal type

Enumerator
XMC_WAIT_SIGNAL_DISABLE | xmc nwait signal is disable
XMC_WAIT_SIGNAL_ENABLE | xmc nwait signal is enable

Definition at line 97 of file at32f403_xmc.h.

◆ xmc_wait_timing_type

enum xmc_wait_timing_type

xmc wait timing type

Enumerator
XMC_WAIT_SIGNAL_SYN_BEFORE | xmc nwait signal is active one data cycle before wait state
XMC_WAIT_SIGNAL_SYN_DURING | xmc nwait signal is active during wait state

Definition at line 191 of file at32f403_xmc.h.

◆ xmc_wrap_mode_type

enum xmc_wrap_mode_type

xmc wrapped mode type

Enumerator
XMC_WRAPPED_MODE_DISABLE | xmc direct wrapped burst is disbale
XMC_WRAPPED_MODE_ENABLE | xmc direct wrapped burst is enable

Definition at line 79 of file at32f403_xmc.h.

◆ xmc_write_burst_type

enum xmc_write_burst_type

xmc write burst type

Enumerator
XMC_WRITE_BURST_SYN_DISABLE | xmc write operations are always performed in asynchronous mode
XMC_WRITE_BURST_SYN_ENABLE | xmc write operations are performed in synchronous mode

Definition at line 106 of file at32f403_xmc.h.

◆ xmc_write_operation_type

enum xmc_write_operation_type

xmc write operation type

Enumerator
XMC_WRITE_OPERATION_DISABLE | xmc write operations is disable
XMC_WRITE_OPERATION_ENABLE | xmc write operations is enable

Definition at line 88 of file at32f403_xmc.h.


AT32F403 Firmwary Library: xmc_norsram_timing_init_type Struct Reference

Data Fields
xmc_norsram_timing_init_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

nor/sram banks timing parameters More...

#include <at32f403_xmc.h>

Data Fields

xmc_nor_sram_subbank_type subbank
xmc_extended_mode_type write_timing_enable
uint32_t | addr_setup_time
uint32_t | addr_hold_time
uint32_t | data_setup_time
uint32_t | bus_latency_time
uint32_t | clk_psc
uint32_t | data_latency_time
xmc_access_mode_type mode

Detailed Description

nor/sram banks timing parameters

Definition at line 245 of file at32f403_xmc.h.

Field Documentation

◆ addr_hold_time

uint32_t xmc_norsram_timing_init_type::addr_hold_time

xmc nor/sram address hold time

Definition at line 250 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ addr_setup_time

uint32_t xmc_norsram_timing_init_type::addr_setup_time

xmc nor/sram address setup time

Definition at line 249 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ bus_latency_time

uint32_t xmc_norsram_timing_init_type::bus_latency_time

xmc nor/sram bus latency time

Definition at line 252 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ clk_psc

uint32_t xmc_norsram_timing_init_type::clk_psc

xmc nor/sram clock prescale

Definition at line 253 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ data_latency_time

uint32_t xmc_norsram_timing_init_type::data_latency_time

xmc nor/sram data latency time

Definition at line 254 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ data_setup_time

uint32_t xmc_norsram_timing_init_type::data_setup_time

xmc nor/sram data setup time

Definition at line 251 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ mode

xmc_access_mode_type xmc_norsram_timing_init_type::mode

xmc nor/sram access mode

Definition at line 255 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ subbank

xmc_nor_sram_subbank_type xmc_norsram_timing_init_type::subbank

xmc nor/sram subbank

Definition at line 247 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

◆ write_timing_enable

xmc_extended_mode_type xmc_norsram_timing_init_type::write_timing_enable

xmc nor/sram write timing enable

Definition at line 248 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_timing_config(), and xmc_norsram_timing_default_para_init().

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_norsram_init_type Struct Reference

Data Fields
xmc_norsram_init_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

xmc nor/sram init structure definition More...

#include <at32f403_xmc.h>

Data Fields

xmc_nor_sram_subbank_type subbank
xmc_data_addr_mux_type data_addr_multiplex
xmc_memory_type device
xmc_data_width_type bus_type
xmc_burst_access_mode_type burst_mode_enable
xmc_asyn_wait_type asynwait_enable
xmc_wait_signal_polarity_type wait_signal_lv
xmc_wrap_mode_type wrapped_mode_enable
xmc_wait_timing_type wait_signal_config
xmc_write_operation_type write_enable
xmc_wait_signal_type wait_signal_enable
xmc_extended_mode_type write_timing_enable
xmc_write_burst_type write_burst_syn

Detailed Description

xmc nor/sram init structure definition

Definition at line 261 of file at32f403_xmc.h.

Field Documentation

◆ asynwait_enable

xmc_asyn_wait_type xmc_norsram_init_type::asynwait_enable

xmc nor/sram nwait in asynchronous transfer enable

Definition at line 268 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ burst_mode_enable

xmc_burst_access_mode_type xmc_norsram_init_type::burst_mode_enable

xmc nor/sram burst mode enable

Definition at line 267 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ bus_type

xmc_data_width_type xmc_norsram_init_type::bus_type

xmc nor/sram data bus width

Definition at line 266 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ data_addr_multiplex

xmc_data_addr_mux_type xmc_norsram_init_type::data_addr_multiplex

xmc nor/sram address/data multiplexing enable

Definition at line 264 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ device

xmc_memory_type xmc_norsram_init_type::device

xmc nor/sram memory device

Definition at line 265 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ subbank

xmc_nor_sram_subbank_type xmc_norsram_init_type::subbank

xmc nor/sram subbank

Definition at line 263 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ wait_signal_config

xmc_wait_timing_type xmc_norsram_init_type::wait_signal_config

xmc nor/sram nwait timing configuration

Definition at line 271 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ wait_signal_enable

xmc_wait_signal_type xmc_norsram_init_type::wait_signal_enable

xmc nor/sram nwait in synchronous transfer enable

Definition at line 273 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ wait_signal_lv

xmc_wait_signal_polarity_type xmc_norsram_init_type::wait_signal_lv

xmc nor/sram nwait polarity

Definition at line 269 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ wrapped_mode_enable

xmc_wrap_mode_type xmc_norsram_init_type::wrapped_mode_enable

xmc nor/sram wrapped enable

Definition at line 270 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ write_burst_syn

xmc_write_burst_type xmc_norsram_init_type::write_burst_syn

xmc nor/sram memory write mode control

Definition at line 275 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ write_enable

xmc_write_operation_type xmc_norsram_init_type::write_enable

xmc nor/sram write enable

Definition at line 272 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

◆ write_timing_enable

xmc_extended_mode_type xmc_norsram_init_type::write_timing_enable

xmc nor/sram read-write timing different

Definition at line 274 of file at32f403_xmc.h.

Referenced by nor_init(), psram_init(), sram_init(), xmc_init(), xmc_nor_sram_init(), and xmc_norsram_default_para_init().

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_nand_pccard_timinginit_type Struct Reference

Data Fields
xmc_nand_pccard_timinginit_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

nand timing parameters xmc More...

#include <at32f403_xmc.h>

Data Fields

xmc_class_bank_type class_bank
uint32_t | mem_setup_time
uint32_t | mem_waite_time
uint32_t | mem_hold_time
uint32_t | mem_hiz_time

Detailed Description

nand timing parameters xmc

Definition at line 282 of file at32f403_xmc.h.

Field Documentation

◆ class_bank

xmc_class_bank_type xmc_nand_pccard_timinginit_type::class_bank

xmc nand/pccard bank

Definition at line 284 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_timing_config(), xmc_nand_timing_default_para_init(), and xmc_pccard_timing_default_para_init().

◆ mem_hiz_time

uint32_t xmc_nand_pccard_timinginit_type::mem_hiz_time

xmc nand/pccard memory databus high resistance time

Definition at line 288 of file at32f403_xmc.h.

Referenced by main(), nand_init(), xmc_nand_timing_config(), xmc_nand_timing_default_para_init(), XMC_PCCARD_InitAttributeSpaceTiming(), XMC_PCCARD_InitCommonSpaceTiming(), XMC_PCCARD_InitIOSpaceTiming(), xmc_pccard_timing_config(), and xmc_pccard_timing_default_para_init().

◆ mem_hold_time

uint32_t xmc_nand_pccard_timinginit_type::mem_hold_time

xmc nand/pccard memory hold time

Definition at line 287 of file at32f403_xmc.h.

Referenced by main(), nand_init(), xmc_nand_timing_config(), xmc_nand_timing_default_para_init(), XMC_PCCARD_InitAttributeSpaceTiming(), XMC_PCCARD_InitCommonSpaceTiming(), XMC_PCCARD_InitIOSpaceTiming(), xmc_pccard_timing_config(), and xmc_pccard_timing_default_para_init().

◆ mem_setup_time

uint32_t xmc_nand_pccard_timinginit_type::mem_setup_time

xmc nand/pccard memory setup time

Definition at line 285 of file at32f403_xmc.h.

Referenced by main(), nand_init(), xmc_nand_timing_config(), xmc_nand_timing_default_para_init(), XMC_PCCARD_InitAttributeSpaceTiming(), XMC_PCCARD_InitCommonSpaceTiming(), XMC_PCCARD_InitIOSpaceTiming(), xmc_pccard_timing_config(), and xmc_pccard_timing_default_para_init().

◆ mem_waite_time

uint32_t xmc_nand_pccard_timinginit_type::mem_waite_time

xmc nand/pccard memory wait time

Definition at line 286 of file at32f403_xmc.h.

Referenced by main(), nand_init(), xmc_nand_timing_config(), xmc_nand_timing_default_para_init(), XMC_PCCARD_InitAttributeSpaceTiming(), XMC_PCCARD_InitCommonSpaceTiming(), XMC_PCCARD_InitIOSpaceTiming(), xmc_pccard_timing_config(), and xmc_pccard_timing_default_para_init().

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_nand_init_type Struct Reference

Data Fields
xmc_nand_init_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

xmc nand init structure definition More...

#include <at32f403_xmc.h>

Data Fields

xmc_class_bank_type nand_bank
xmc_nand_pccard_wait_type wait_enable
xmc_data_width_type bus_type
xmc_ecc_enable_type ecc_enable
xmc_ecc_pagesize_type ecc_pagesize
uint32_t | delay_time_cycle
uint32_t | delay_time_ar

Detailed Description

xmc nand init structure definition

Definition at line 295 of file at32f403_xmc.h.

Field Documentation

◆ bus_type

xmc_data_width_type xmc_nand_init_type::bus_type

xmc nand bus width

Definition at line 299 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_default_para_init(), and xmc_nand_init().

◆ delay_time_ar

uint32_t xmc_nand_init_type::delay_time_ar

xmc nand ale to re delay

Definition at line 303 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_default_para_init(), and xmc_nand_init().

◆ delay_time_cycle

uint32_t xmc_nand_init_type::delay_time_cycle

xmc nand cle to re delay

Definition at line 302 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_default_para_init(), and xmc_nand_init().

◆ ecc_enable

xmc_ecc_enable_type xmc_nand_init_type::ecc_enable

xmc nand ecc enable

Definition at line 300 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_default_para_init(), and xmc_nand_init().

◆ ecc_pagesize

xmc_ecc_pagesize_type xmc_nand_init_type::ecc_pagesize

xmc nand ecc page size

Definition at line 301 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_default_para_init(), and xmc_nand_init().

◆ nand_bank

xmc_class_bank_type xmc_nand_init_type::nand_bank

xmc nand bank

Definition at line 297 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_default_para_init(), and xmc_nand_init().

◆ wait_enable

xmc_nand_pccard_wait_type xmc_nand_init_type::wait_enable

xmc wait feature enable

Definition at line 298 of file at32f403_xmc.h.

Referenced by nand_init(), xmc_nand_default_para_init(), and xmc_nand_init().

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_pccard_init_type Struct Reference

Data Fields
xmc_pccard_init_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

xmc pccard init structure definition More...

#include <at32f403_xmc.h>

Data Fields

xmc_nand_pccard_wait_type enable_wait
uint32_t | delay_time_cr
uint32_t | delay_time_ar

Detailed Description

xmc pccard init structure definition

Definition at line 310 of file at32f403_xmc.h.

Field Documentation

◆ delay_time_ar

uint32_t xmc_pccard_init_type::delay_time_ar

xmc pccard ale to re delay

Definition at line 314 of file at32f403_xmc.h.

Referenced by main(), xmc_pccard_default_para_init(), xmc_pccard_init(), and XMC_PCCARD_InitCtrl().

◆ delay_time_cr

uint32_t xmc_pccard_init_type::delay_time_cr

xmc pccard cle to re delay

Definition at line 313 of file at32f403_xmc.h.

Referenced by main(), xmc_pccard_default_para_init(), xmc_pccard_init(), and XMC_PCCARD_InitCtrl().

◆ enable_wait

xmc_nand_pccard_wait_type xmc_pccard_init_type::enable_wait

xmc pccard wait feature enable

Definition at line 312 of file at32f403_xmc.h.

Referenced by main(), XMC_Enable_Wait_Feature(), xmc_pccard_default_para_init(), and xmc_pccard_init().

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_bank1_ctrl_tmg_reg_type Struct Reference

Data Fields
xmc_bank1_ctrl_tmg_reg_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

#include <at32f403_xmc.h>

Data Fields

union {
__IO uint32_t bk1ctrl
struct {
__IO uint32_t en: 1
__IO uint32_t admuxen: 1
__IO uint32_t dev: 2
__IO uint32_t extmdbw: 2
__IO uint32_t noren: 1
__IO uint32_t reserved1: 1
__IO uint32_t syncben: 1
__IO uint32_t nwpol: 1
__IO uint32_t wrapen: 1
__IO uint32_t nwtcfg: 1
__IO uint32_t wen: 1
__IO uint32_t nwsen: 1
__IO uint32_t rwtd: 1
__IO uint32_t nwasen: 1
__IO uint32_t crpgs: 3
__IO uint32_t mwmc: 1
__IO uint32_t reserved2: 12
} bk1ctrl_bit
};
xmc bank1 bk1ctrl register, offset:0x00+0x08*(x-1) x= 1 or 4 More...
union {
__IO uint32_t bk1tmg
struct {
__IO uint32_t addrst: 4
__IO uint32_t addrht: 4
__IO uint32_t dtst: 8
__IO uint32_t buslat: 4
__IO uint32_t clkpsc: 4
__IO uint32_t dtlat: 4
__IO uint32_t asyncm: 2
__IO uint32_t reserved1: 2
} bk1tmg_bit
};
xmc bank1 bk1tmg register, offset:0x04+0x08*(x-1) x= 1 or 4 More...

Detailed Description

Definition at line 317 of file at32f403_xmc.h.

Field Documentation

◆

union { ... } xmc_bank1_ctrl_tmg_reg_type::@750

xmc bank1 bk1ctrl register, offset:0x00+0x08*(x-1) x= 1 or 4

◆

union { ... } xmc_bank1_ctrl_tmg_reg_type::@752

xmc bank1 bk1tmg register, offset:0x04+0x08*(x-1) x= 1 or 4

◆ addrht

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::addrht

Definition at line 356 of file at32f403_xmc.h.

◆ addrst

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::addrst

Definition at line 355 of file at32f403_xmc.h.

◆ admuxen

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::admuxen

Definition at line 328 of file at32f403_xmc.h.

◆ asyncm

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::asyncm

Definition at line 361 of file at32f403_xmc.h.

◆ bk1ctrl

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::bk1ctrl

Definition at line 324 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank1_ctrl_tmg_reg_type::bk1ctrl_bit

◆ bk1tmg

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::bk1tmg

Definition at line 352 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank1_ctrl_tmg_reg_type::bk1tmg_bit

◆ buslat

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::buslat

Definition at line 358 of file at32f403_xmc.h.

◆ clkpsc

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::clkpsc

Definition at line 359 of file at32f403_xmc.h.

◆ crpgs

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::crpgs

Definition at line 341 of file at32f403_xmc.h.

◆ dev

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::dev

Definition at line 329 of file at32f403_xmc.h.

◆ dtlat

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::dtlat

Definition at line 360 of file at32f403_xmc.h.

◆ dtst

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::dtst

Definition at line 357 of file at32f403_xmc.h.

◆ en

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::en

Definition at line 327 of file at32f403_xmc.h.

◆ extmdbw

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::extmdbw

Definition at line 330 of file at32f403_xmc.h.

◆ mwmc

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::mwmc

Definition at line 342 of file at32f403_xmc.h.

◆ noren

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::noren

Definition at line 331 of file at32f403_xmc.h.

◆ nwasen

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::nwasen

Definition at line 340 of file at32f403_xmc.h.

◆ nwpol

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::nwpol

Definition at line 334 of file at32f403_xmc.h.

◆ nwsen

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::nwsen

Definition at line 338 of file at32f403_xmc.h.

◆ nwtcfg

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::nwtcfg

Definition at line 336 of file at32f403_xmc.h.

◆ reserved1

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::reserved1

Definition at line 332 of file at32f403_xmc.h.

◆ reserved2

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::reserved2

Definition at line 343 of file at32f403_xmc.h.

◆ rwtd

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::rwtd

Definition at line 339 of file at32f403_xmc.h.

◆ syncben

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::syncben

Definition at line 333 of file at32f403_xmc.h.

◆ wen

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::wen

Definition at line 337 of file at32f403_xmc.h.

◆ wrapen

__IO uint32_t xmc_bank1_ctrl_tmg_reg_type::wrapen

Definition at line 335 of file at32f403_xmc.h.

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_bank1_tmgwr_reg_type Struct Reference

Data Fields
xmc_bank1_tmgwr_reg_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

#include <at32f403_xmc.h>

Data Fields

union {
__IO uint32_t bk1tmgwr
struct {
__IO uint32_t addrst: 4
__IO uint32_t addrht: 4
__IO uint32_t dtst: 8
__IO uint32_t buslat: 4
__IO uint32_t reserved1: 8
__IO uint32_t asyncm: 2
__IO uint32_t reserved2: 2
} bk1tmgwr_bit
};
xmc bank1 bk1tmgwr register, offset:0x104+0x08*(x-1) x= 1 or 4 More...

Detailed Description

Definition at line 368 of file at32f403_xmc.h.

Field Documentation

◆

union { ... } xmc_bank1_tmgwr_reg_type::@756

xmc bank1 bk1tmgwr register, offset:0x104+0x08*(x-1) x= 1 or 4

◆ addrht

__IO uint32_t xmc_bank1_tmgwr_reg_type::addrht

Definition at line 379 of file at32f403_xmc.h.

◆ addrst

__IO uint32_t xmc_bank1_tmgwr_reg_type::addrst

Definition at line 378 of file at32f403_xmc.h.

◆ asyncm

__IO uint32_t xmc_bank1_tmgwr_reg_type::asyncm

Definition at line 383 of file at32f403_xmc.h.

◆ bk1tmgwr

__IO uint32_t xmc_bank1_tmgwr_reg_type::bk1tmgwr

Definition at line 375 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank1_tmgwr_reg_type::bk1tmgwr_bit

◆ buslat

__IO uint32_t xmc_bank1_tmgwr_reg_type::buslat

Definition at line 381 of file at32f403_xmc.h.

◆ dtst

__IO uint32_t xmc_bank1_tmgwr_reg_type::dtst

Definition at line 380 of file at32f403_xmc.h.

◆ reserved1

__IO uint32_t xmc_bank1_tmgwr_reg_type::reserved1

xmc bank1 reserved register

Definition at line 382 of file at32f403_xmc.h.

◆ reserved2

__IO uint32_t xmc_bank1_tmgwr_reg_type::reserved2

Definition at line 384 of file at32f403_xmc.h.

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_bank1_type Struct Reference

Data Fields
xmc_bank1_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

xmc bank1 registers More...

#include <at32f403_xmc.h>

Data Fields

xmc_bank1_ctrl_tmg_reg_type | ctrl_tmg_group [4]
xmc bank1 ctrl and tmg register, offset:0x00~0x1C More...
__IO uint32_t | reserved1 [57]
xmc bank1 reserved register, offset:0x20~0x100 More...
xmc_bank1_tmgwr_reg_type | tmgwr_group [4]
xmc bank1 tmgwr register, offset:0x104~0x11C More...
__IO uint32_t | reserved2 [63]
xmc bank1 reserved register, offset:0x120~0x21C More...
union {
__IO uint32_t ext [4]
struct {
__IO uint32_t buslatw2w: 8
__IO uint32_t buslatr2r: 8
__IO uint32_t reserved1: 16
} ext_bit [4]
};
xmc bank1 ext register, offset:0x220~0x22C More...

Detailed Description

xmc bank1 registers

Definition at line 398 of file at32f403_xmc.h.

Field Documentation

◆

union { ... } xmc_bank1_type::@759

xmc bank1 ext register, offset:0x220~0x22C

◆ buslatr2r

__IO uint32_t xmc_bank1_type::buslatr2r

Definition at line 429 of file at32f403_xmc.h.

◆ buslatw2w

__IO uint32_t xmc_bank1_type::buslatw2w

Definition at line 428 of file at32f403_xmc.h.

◆ ctrl_tmg_group

xmc_bank1_ctrl_tmg_reg_type xmc_bank1_type::ctrl_tmg_group[4]

xmc bank1 ctrl and tmg register, offset:0x00~0x1C

Definition at line 403 of file at32f403_xmc.h.

◆ ext

__IO uint32_t xmc_bank1_type::ext[4]

Definition at line 425 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank1_type::ext_bit[4]

◆ reserved1

__IO uint32_t xmc_bank1_type::reserved1

xmc bank1 reserved register, offset:0x20~0x100

Definition at line 408 of file at32f403_xmc.h.

◆ reserved2

__IO uint32_t xmc_bank1_type::reserved2[63]

xmc bank1 reserved register, offset:0x120~0x21C

Definition at line 418 of file at32f403_xmc.h.

◆ tmgwr_group

xmc_bank1_tmgwr_reg_type xmc_bank1_type::tmgwr_group[4]

xmc bank1 tmgwr register, offset:0x104~0x11C

Definition at line 413 of file at32f403_xmc.h.

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_bank2_type Struct Reference

Data Fields
xmc_bank2_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

xmc bank2 registers More...

#include <at32f403_xmc.h>

Data Fields

union {
__IO uint32_t bk2ctrl
struct {
__IO uint32_t reserved1: 1
__IO uint32_t nwen: 1
__IO uint32_t en: 1
__IO uint32_t dev: 1
__IO uint32_t extmdbw: 2
__IO uint32_t eccen: 1
__IO uint32_t reserved2: 2
__IO uint32_t tcr: 4
__IO uint32_t tar: 4
__IO uint32_t eccpgs: 3
__IO uint32_t reserved3: 12
} bk2ctrl_bit
};
xmc bk2ctrl register, offset:0x60 More...
union {
__IO uint32_t bk2is
struct {
__IO uint32_t res: 1
__IO uint32_t hls: 1
__IO uint32_t fes: 1
__IO uint32_t reien: 1
__IO uint32_t hlien: 1
__IO uint32_t feien: 1
__IO uint32_t fifoe: 1
__IO uint32_t reserved1: 25
} bk2is_bit
};
xmc bk2is register, offset:0x64 More...
union {
__IO uint32_t bk2tmgmem
struct {
__IO uint32_t cmst: 8
__IO uint32_t cmwt: 8
__IO uint32_t cmht: 8
__IO uint32_t cmdhizt: 8
} bk2tmgmem_bit
};
xmc bk2tmgmem register, offset:0x68 More...
union {
__IO uint32_t bk2tmgatt
struct {
__IO uint32_t amst: 8
__IO uint32_t amwt: 8
__IO uint32_t amht: 8
__IO uint32_t amdhizt: 8
} bk2tmgatt_bit
};
xmc bk2tmgatt register, offset:0x6C More...
union {
__IO uint32_t bk2ecc
struct {
__IO uint32_t ecc: 32
} bk2ecc_bit
};
xmc bk2ecc register, offset:0x74 More...

Detailed Description

xmc bank2 registers

Definition at line 439 of file at32f403_xmc.h.

Field Documentation

◆

union { ... } xmc_bank2_type::@762

xmc bk2ctrl register, offset:0x60

◆

union { ... } xmc_bank2_type::@764

xmc bk2is register, offset:0x64

◆

union { ... } xmc_bank2_type::@766

xmc bk2tmgmem register, offset:0x68

◆

union { ... } xmc_bank2_type::@768

xmc bk2tmgatt register, offset:0x6C

◆

union { ... } xmc_bank2_type::@770

xmc bk2ecc register, offset:0x74

◆ amdhizt

__IO uint32_t xmc_bank2_type::amdhizt

Definition at line 508 of file at32f403_xmc.h.

◆ amht

__IO uint32_t xmc_bank2_type::amht

Definition at line 507 of file at32f403_xmc.h.

◆ amst

__IO uint32_t xmc_bank2_type::amst

Definition at line 505 of file at32f403_xmc.h.

◆ amwt

__IO uint32_t xmc_bank2_type::amwt

Definition at line 506 of file at32f403_xmc.h.

◆ bk2ctrl

__IO uint32_t xmc_bank2_type::bk2ctrl

Definition at line 446 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank2_type::bk2ctrl_bit

◆ bk2ecc

__IO uint32_t xmc_bank2_type::bk2ecc

Definition at line 522 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank2_type::bk2ecc_bit

◆ bk2is

__IO uint32_t xmc_bank2_type::bk2is

Definition at line 468 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank2_type::bk2is_bit

◆ bk2tmgatt

__IO uint32_t xmc_bank2_type::bk2tmgatt

Definition at line 502 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank2_type::bk2tmgatt_bit

◆ bk2tmgmem

__IO uint32_t xmc_bank2_type::bk2tmgmem

Definition at line 487 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank2_type::bk2tmgmem_bit

◆ cmdhizt

__IO uint32_t xmc_bank2_type::cmdhizt

Definition at line 493 of file at32f403_xmc.h.

◆ cmht

__IO uint32_t xmc_bank2_type::cmht

Definition at line 492 of file at32f403_xmc.h.

◆ cmst

__IO uint32_t xmc_bank2_type::cmst

Definition at line 490 of file at32f403_xmc.h.

◆ cmwt

__IO uint32_t xmc_bank2_type::cmwt

Definition at line 491 of file at32f403_xmc.h.

◆ dev

__IO uint32_t xmc_bank2_type::dev

Definition at line 452 of file at32f403_xmc.h.

◆ ecc

__IO uint32_t xmc_bank2_type::ecc

Definition at line 525 of file at32f403_xmc.h.

◆ eccen

__IO uint32_t xmc_bank2_type::eccen

Definition at line 454 of file at32f403_xmc.h.

◆ eccpgs

__IO uint32_t xmc_bank2_type::eccpgs

Definition at line 458 of file at32f403_xmc.h.

◆ en

__IO uint32_t xmc_bank2_type::en

Definition at line 451 of file at32f403_xmc.h.

◆ extmdbw

__IO uint32_t xmc_bank2_type::extmdbw

Definition at line 453 of file at32f403_xmc.h.

◆ feien

__IO uint32_t xmc_bank2_type::feien

Definition at line 476 of file at32f403_xmc.h.

◆ fes

__IO uint32_t xmc_bank2_type::fes

Definition at line 473 of file at32f403_xmc.h.

◆ fifoe

__IO uint32_t xmc_bank2_type::fifoe

Definition at line 477 of file at32f403_xmc.h.

◆ hlien

__IO uint32_t xmc_bank2_type::hlien

Definition at line 475 of file at32f403_xmc.h.

◆ hls

__IO uint32_t xmc_bank2_type::hls

Definition at line 472 of file at32f403_xmc.h.

◆ nwen

__IO uint32_t xmc_bank2_type::nwen

Definition at line 450 of file at32f403_xmc.h.

◆ reien

__IO uint32_t xmc_bank2_type::reien

Definition at line 474 of file at32f403_xmc.h.

◆ res

__IO uint32_t xmc_bank2_type::res

Definition at line 471 of file at32f403_xmc.h.

◆ reserved1

__IO uint32_t xmc_bank2_type::reserved1

xmc reserved register, offset:0x70

Definition at line 449 of file at32f403_xmc.h.

◆ reserved2

__IO uint32_t xmc_bank2_type::reserved2

Definition at line 455 of file at32f403_xmc.h.

◆ reserved3

__IO uint32_t xmc_bank2_type::reserved3

Definition at line 459 of file at32f403_xmc.h.

◆ tar

__IO uint32_t xmc_bank2_type::tar

Definition at line 457 of file at32f403_xmc.h.

◆ tcr

__IO uint32_t xmc_bank2_type::tcr

Definition at line 456 of file at32f403_xmc.h.

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_bank3_type Struct Reference

Data Fields
xmc_bank3_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

xmc bank3 registers More...

#include <at32f403_xmc.h>

Data Fields

union {
__IO uint32_t bk3ctrl
struct {
__IO uint32_t reserved1: 1
__IO uint32_t nwen: 1
__IO uint32_t en: 1
__IO uint32_t dev: 1
__IO uint32_t extmdbw: 2
__IO uint32_t eccen: 1
__IO uint32_t reserved2: 2
__IO uint32_t tcr: 4
__IO uint32_t tar: 4
__IO uint32_t eccpgs: 3
__IO uint32_t reserved3: 12
} bk3ctrl_bit
};
xmc bk3ctrl register, offset:0x80 More...
union {
__IO uint32_t bk3is
struct {
__IO uint32_t res: 1
__IO uint32_t hls: 1
__IO uint32_t fes: 1
__IO uint32_t reien: 1
__IO uint32_t hlien: 1
__IO uint32_t feien: 1
__IO uint32_t fifoe: 1
__IO uint32_t reserved1: 25
} bk3is_bit
};
xmc bk3is register, offset:0x84 More...
union {
__IO uint32_t bk3tmgmem
struct {
__IO uint32_t cmst: 8
__IO uint32_t cmwt: 8
__IO uint32_t cmht: 8
__IO uint32_t cmdhizt: 8
} bk3tmgmem_bit
};
xmc bk3tmgmem register, offset:0x88 More...
union {
__IO uint32_t bk3tmgatt
struct {
__IO uint32_t amst: 8
__IO uint32_t amwt: 8
__IO uint32_t amht: 8
__IO uint32_t amdhizt: 8
} bk3tmgatt_bit
};
xmc bk3tmgatt register, offset:0x8C More...
union {
__IO uint32_t bk3ecc
struct {
__IO uint32_t ecc: 32
} bk3ecc_bit
};
xmc bk3ecc register, offset:0x94 More...

Detailed Description

xmc bank3 registers

Definition at line 534 of file at32f403_xmc.h.

Field Documentation

◆

union { ... } xmc_bank3_type::@777

xmc bk3ctrl register, offset:0x80

◆

union { ... } xmc_bank3_type::@779

xmc bk3is register, offset:0x84

◆

union { ... } xmc_bank3_type::@781

xmc bk3tmgmem register, offset:0x88

◆

union { ... } xmc_bank3_type::@783

xmc bk3tmgatt register, offset:0x8C

◆

union { ... } xmc_bank3_type::@785

xmc bk3ecc register, offset:0x94

◆ amdhizt

__IO uint32_t xmc_bank3_type::amdhizt

Definition at line 603 of file at32f403_xmc.h.

◆ amht

__IO uint32_t xmc_bank3_type::amht

Definition at line 602 of file at32f403_xmc.h.

◆ amst

__IO uint32_t xmc_bank3_type::amst

Definition at line 600 of file at32f403_xmc.h.

◆ amwt

__IO uint32_t xmc_bank3_type::amwt

Definition at line 601 of file at32f403_xmc.h.

◆ bk3ctrl

__IO uint32_t xmc_bank3_type::bk3ctrl

Definition at line 541 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank3_type::bk3ctrl_bit

◆ bk3ecc

__IO uint32_t xmc_bank3_type::bk3ecc

Definition at line 617 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank3_type::bk3ecc_bit

◆ bk3is

__IO uint32_t xmc_bank3_type::bk3is

Definition at line 563 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank3_type::bk3is_bit

◆ bk3tmgatt

__IO uint32_t xmc_bank3_type::bk3tmgatt

Definition at line 597 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank3_type::bk3tmgatt_bit

◆ bk3tmgmem

__IO uint32_t xmc_bank3_type::bk3tmgmem

Definition at line 582 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank3_type::bk3tmgmem_bit

◆ cmdhizt

__IO uint32_t xmc_bank3_type::cmdhizt

Definition at line 588 of file at32f403_xmc.h.

◆ cmht

__IO uint32_t xmc_bank3_type::cmht

Definition at line 587 of file at32f403_xmc.h.

◆ cmst

__IO uint32_t xmc_bank3_type::cmst

Definition at line 585 of file at32f403_xmc.h.

◆ cmwt

__IO uint32_t xmc_bank3_type::cmwt

Definition at line 586 of file at32f403_xmc.h.

◆ dev

__IO uint32_t xmc_bank3_type::dev

Definition at line 547 of file at32f403_xmc.h.

◆ ecc

__IO uint32_t xmc_bank3_type::ecc

Definition at line 620 of file at32f403_xmc.h.

◆ eccen

__IO uint32_t xmc_bank3_type::eccen

Definition at line 549 of file at32f403_xmc.h.

◆ eccpgs

__IO uint32_t xmc_bank3_type::eccpgs

Definition at line 553 of file at32f403_xmc.h.

◆ en

__IO uint32_t xmc_bank3_type::en

Definition at line 546 of file at32f403_xmc.h.

◆ extmdbw

__IO uint32_t xmc_bank3_type::extmdbw

Definition at line 548 of file at32f403_xmc.h.

◆ feien

__IO uint32_t xmc_bank3_type::feien

Definition at line 571 of file at32f403_xmc.h.

◆ fes

__IO uint32_t xmc_bank3_type::fes

Definition at line 568 of file at32f403_xmc.h.

◆ fifoe

__IO uint32_t xmc_bank3_type::fifoe

Definition at line 572 of file at32f403_xmc.h.

◆ hlien

__IO uint32_t xmc_bank3_type::hlien

Definition at line 570 of file at32f403_xmc.h.

◆ hls

__IO uint32_t xmc_bank3_type::hls

Definition at line 567 of file at32f403_xmc.h.

◆ nwen

__IO uint32_t xmc_bank3_type::nwen

Definition at line 545 of file at32f403_xmc.h.

◆ reien

__IO uint32_t xmc_bank3_type::reien

Definition at line 569 of file at32f403_xmc.h.

◆ res

__IO uint32_t xmc_bank3_type::res

Definition at line 566 of file at32f403_xmc.h.

◆ reserved1

__IO uint32_t xmc_bank3_type::reserved1

xmc reserved register, offset:0x90

Definition at line 544 of file at32f403_xmc.h.

◆ reserved2

__IO uint32_t xmc_bank3_type::reserved2

Definition at line 550 of file at32f403_xmc.h.

◆ reserved3

__IO uint32_t xmc_bank3_type::reserved3

Definition at line 554 of file at32f403_xmc.h.

◆ tar

__IO uint32_t xmc_bank3_type::tar

Definition at line 552 of file at32f403_xmc.h.

◆ tcr

__IO uint32_t xmc_bank3_type::tcr

Definition at line 551 of file at32f403_xmc.h.

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: xmc_bank4_type Struct Reference

Data Fields
xmc_bank4_type Struct Reference
AT32F403_periph_driver » XMC » XMC_exported_types

xmc bank4 registers More...

#include <at32f403_xmc.h>

Data Fields

union {
__IO uint32_t bk4ctrl
struct {
__IO uint32_t reserved1: 1
__IO uint32_t nwen: 1
__IO uint32_t en: 1
__IO uint32_t dev: 1
__IO uint32_t extmdbw: 2
__IO uint32_t eccen: 1
__IO uint32_t reserved2: 2
__IO uint32_t tcr: 4
__IO uint32_t tar: 4
__IO uint32_t eccpgs: 3
__IO uint32_t reserved3: 12
} bk4ctrl_bit
};
xmc bk4ctrl register, offset:0xA0 More...
union {
__IO uint32_t bk4is
struct {
__IO uint32_t res: 1
__IO uint32_t hls: 1
__IO uint32_t fes: 1
__IO uint32_t reien: 1
__IO uint32_t hlien: 1
__IO uint32_t feien: 1
__IO uint32_t fifoe: 1
__IO uint32_t reserved1: 25
} bk4is_bit
};
xmc bk4is register, offset:0xA4 More...
union {
__IO uint32_t bk4tmgmem
struct {
__IO uint32_t cmst: 8
__IO uint32_t cmwt: 8
__IO uint32_t cmht: 8
__IO uint32_t cmdhizt: 8
} bk4tmgmem_bit
};
xmc bk4tmgmem register, offset:0xA8 More...
union {
__IO uint32_t bk4tmgatt
struct {
__IO uint32_t amst: 8
__IO uint32_t amwt: 8
__IO uint32_t amht: 8
__IO uint32_t amdhizt: 8
} bk4tmgatt_bit
};
xmc bk4tmgatt register, offset:0xAC More...
union {
__IO uint32_t bk4tmgio
struct {
__IO uint32_t iost: 8
__IO uint32_t iowt: 8
__IO uint32_t ioht: 8
__IO uint32_t iohizt: 8
} bk4tmgio_bit
};
xmc bk4tmgio register, offset:0xB0 More...

Detailed Description

xmc bank4 registers

Definition at line 628 of file at32f403_xmc.h.

Field Documentation

◆

union { ... } xmc_bank4_type::@792

xmc bk4ctrl register, offset:0xA0

◆

union { ... } xmc_bank4_type::@794

xmc bk4is register, offset:0xA4

◆

union { ... } xmc_bank4_type::@796

xmc bk4tmgmem register, offset:0xA8

◆

union { ... } xmc_bank4_type::@798

xmc bk4tmgatt register, offset:0xAC

◆

union { ... } xmc_bank4_type::@800

xmc bk4tmgio register, offset:0xB0

◆ amdhizt

__IO uint32_t xmc_bank4_type::amdhizt

Definition at line 698 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitAttributeSpaceTiming().

◆ amht

__IO uint32_t xmc_bank4_type::amht

Definition at line 697 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitAttributeSpaceTiming().

◆ amst

__IO uint32_t xmc_bank4_type::amst

Definition at line 695 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitAttributeSpaceTiming().

◆ amwt

__IO uint32_t xmc_bank4_type::amwt

Definition at line 696 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitAttributeSpaceTiming().

◆ bk4ctrl

__IO uint32_t xmc_bank4_type::bk4ctrl

Definition at line 636 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank4_type::bk4ctrl_bit

Referenced by XMC_Enable_16bit_Feature(), XMC_Enable_Wait_Feature(), and XMC_PCCARD_InitCtrl().

◆ bk4is

__IO uint32_t xmc_bank4_type::bk4is

Definition at line 658 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank4_type::bk4is_bit

◆ bk4tmgatt

__IO uint32_t xmc_bank4_type::bk4tmgatt

Definition at line 692 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank4_type::bk4tmgatt_bit

Referenced by XMC_PCCARD_InitAttributeSpaceTiming().

◆ bk4tmgio

__IO uint32_t xmc_bank4_type::bk4tmgio

Definition at line 707 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank4_type::bk4tmgio_bit

Referenced by XMC_PCCARD_InitIOSpaceTiming().

◆ bk4tmgmem

__IO uint32_t xmc_bank4_type::bk4tmgmem

Definition at line 677 of file at32f403_xmc.h.

◆

struct { ... } xmc_bank4_type::bk4tmgmem_bit

Referenced by XMC_PCCARD_InitCommonSpaceTiming().

◆ cmdhizt

__IO uint32_t xmc_bank4_type::cmdhizt

Definition at line 683 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitCommonSpaceTiming().

◆ cmht

__IO uint32_t xmc_bank4_type::cmht

Definition at line 682 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitCommonSpaceTiming().

◆ cmst

__IO uint32_t xmc_bank4_type::cmst

Definition at line 680 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitCommonSpaceTiming().

◆ cmwt

__IO uint32_t xmc_bank4_type::cmwt

Definition at line 681 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitCommonSpaceTiming().

◆ dev

__IO uint32_t xmc_bank4_type::dev

Definition at line 642 of file at32f403_xmc.h.

◆ eccen

__IO uint32_t xmc_bank4_type::eccen

Definition at line 644 of file at32f403_xmc.h.

◆ eccpgs

__IO uint32_t xmc_bank4_type::eccpgs

Definition at line 648 of file at32f403_xmc.h.

◆ en

__IO uint32_t xmc_bank4_type::en

Definition at line 641 of file at32f403_xmc.h.

◆ extmdbw

__IO uint32_t xmc_bank4_type::extmdbw

Definition at line 643 of file at32f403_xmc.h.

Referenced by XMC_Enable_16bit_Feature(), and XMC_PCCARD_InitCtrl().

◆ feien

__IO uint32_t xmc_bank4_type::feien

Definition at line 666 of file at32f403_xmc.h.

◆ fes

__IO uint32_t xmc_bank4_type::fes

Definition at line 663 of file at32f403_xmc.h.

◆ fifoe

__IO uint32_t xmc_bank4_type::fifoe

Definition at line 667 of file at32f403_xmc.h.

◆ hlien

__IO uint32_t xmc_bank4_type::hlien

Definition at line 665 of file at32f403_xmc.h.

◆ hls

__IO uint32_t xmc_bank4_type::hls

Definition at line 662 of file at32f403_xmc.h.

◆ iohizt

__IO uint32_t xmc_bank4_type::iohizt

Definition at line 713 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitIOSpaceTiming().

◆ ioht

__IO uint32_t xmc_bank4_type::ioht

Definition at line 712 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitIOSpaceTiming().

◆ iost

__IO uint32_t xmc_bank4_type::iost

Definition at line 710 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitIOSpaceTiming().

◆ iowt

__IO uint32_t xmc_bank4_type::iowt

Definition at line 711 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitIOSpaceTiming().

◆ nwen

__IO uint32_t xmc_bank4_type::nwen

Definition at line 640 of file at32f403_xmc.h.

Referenced by XMC_Enable_Wait_Feature().

◆ reien

__IO uint32_t xmc_bank4_type::reien

Definition at line 664 of file at32f403_xmc.h.

◆ res

__IO uint32_t xmc_bank4_type::res

Definition at line 661 of file at32f403_xmc.h.

◆ reserved1

__IO uint32_t xmc_bank4_type::reserved1

Definition at line 639 of file at32f403_xmc.h.

◆ reserved2

__IO uint32_t xmc_bank4_type::reserved2

Definition at line 645 of file at32f403_xmc.h.

◆ reserved3

__IO uint32_t xmc_bank4_type::reserved3

Definition at line 649 of file at32f403_xmc.h.

◆ tar

__IO uint32_t xmc_bank4_type::tar

Definition at line 647 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitCtrl().

◆ tcr

__IO uint32_t xmc_bank4_type::tcr

Definition at line 646 of file at32f403_xmc.h.

Referenced by XMC_PCCARD_InitCtrl().

The documentation for this struct was generated from the following file:
  • at32f403_xmc.h


AT32F403 Firmwary Library: XMC_exported_functions

Functions
XMC_exported_functions
AT32F403_periph_driver » XMC

Functions

void | xmc_nor_sram_reset (xmc_nor_sram_subbank_type xmc_subbank)
xmc nor or sram registers reset More...
void | xmc_nor_sram_init (xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct. More...
void | xmc_nor_sram_timing_config (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct and xmc_w_timing_struct. More...
void | xmc_norsram_default_para_init (xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value. More...
void | xmc_norsram_timing_default_para_init (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value. More...
void | xmc_nor_sram_enable (xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank. More...
void | xmc_ext_timing_config (volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase. More...
void | xmc_nand_reset (xmc_class_bank_type xmc_bank)
xmc nand flash registers reset More...
void | xmc_nand_init (xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_timing_config (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_default_para_init (xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value. More...
void | xmc_nand_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default value. More...
void | xmc_nand_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank. More...
void | xmc_nand_ecc_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature. More...
uint32_t | xmc_ecc_get (xmc_class_bank_type xmc_bank)
return the error correction code register value. More...
void | xmc_interrupt_enable (xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state)
enable or disable the specified xmc interrupts. More...
flag_status | xmc_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc flag is set or not. More...
flag_status | xmc_interrupt_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc interrupt flag is set or not. More...
void | xmc_flag_clear (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
clear the xmc's pending flags. More...
void | xmc_pccard_reset (void)
xmc pc card registers reset More...
void | xmc_pccard_init (xmc_pccard_init_type *xmc_pccard_init_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct. More...
void | xmc_pccard_timing_config (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct. More...
void | xmc_pccard_default_para_init (xmc_pccard_init_type *xmc_pccard_init_struct)
fill each xmc_pccard_init_struct member with its default value. More...
void | xmc_pccard_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct member with its default value. More...
void | xmc_pccard_enable (confirm_state new_state)
enable or disable the pccard memory bank. More...

Detailed Description

Function Documentation

◆ xmc_ecc_get()

uint32_t xmc_ecc_get ( xmc_class_bank_type xmc_bank )

return the error correction code register value.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
Return values
the error correction code (ecc) value.

Definition at line 389 of file at32f403_xmc.c.

Referenced by nand_read_small_page(), and nand_write_small_page().

◆ xmc_ext_timing_config()

void xmc_ext_timing_config | ( | volatile xmc_nor_sram_subbank_type | xmc_sub_bank,
 |  | uint16_t | w2w_timing,
 |  | uint16_t | r2r_timing
 | ) |  |

config the bus turnaround phase.

Parameters
xmc_sub_bank this parameter can be one of the following values:
  • XMC_BANK1_NOR_SRAM1
  • XMC_BANK1_NOR_SRAM4
w2w_timing | :write timing
r2r_timing | :read timing
Return values
none

Definition at line 219 of file at32f403_xmc.c.

Referenced by psram_init(), sram_init(), and xmc_init().

◆ xmc_flag_clear()

void xmc_flag_clear | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_flag_type | xmc_flag
 | ) |  |

clear the xmc's pending flags.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_flag specifies the flag to check. this parameter can be any combination of the following values:
  • XMC_RISINGEDGE_FLAG
  • XMC_LEVEL_FLAG
  • XMC_FALLINGEDGE_FLAG
  • XMC_FEMPT_FLAG
Return values
none

Definition at line 525 of file at32f403_xmc.c.

◆ xmc_flag_status_get()

flag_status xmc_flag_status_get | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_flag_type | xmc_flag
 | ) |  |

check whether the specified xmc flag is set or not.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_flag specifies the flag to check. this parameter can be any combination of the following values:
  • XMC_RISINGEDGE_FLAG
  • XMC_LEVEL_FLAG
  • XMC_FALLINGEDGE_FLAG
  • XMC_FEMPT_FLAG
Return values
none

Definition at line 449 of file at32f403_xmc.c.

Referenced by nand_write_small_page().

◆ xmc_interrupt_enable()

void xmc_interrupt_enable | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_sources_type | xmc_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified xmc interrupts.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_int specifies the xmc interrupt sources to be enabled or disabled. this parameter can be any combination of the following values:
  • XMC_INT_RISING_EDGE
  • XMC_INT_LEVEL
  • XMC_INT_FALLING_EDGE
new_state (TRUE or FALSE)
Return values
none

Definition at line 416 of file at32f403_xmc.c.

◆ xmc_interrupt_flag_status_get()

flag_status xmc_interrupt_flag_status_get | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_flag_type | xmc_flag
 | ) |  |

check whether the specified xmc interrupt flag is set or not.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_flag specifies the flag to check. this parameter can be any combination of the following values:
  • XMC_RISINGEDGE_FLAG
  • XMC_LEVEL_FLAG
  • XMC_FALLINGEDGE_FLAG
Return values
none

Definition at line 483 of file at32f403_xmc.c.

◆ xmc_nand_default_para_init()

void xmc_nand_default_para_init ( xmc_nand_init_type * xmc_nand_init_struct )

fill each xmc_nand_init_struct member with its default value.

Parameters
xmc_nand_init_struct pointer to a xmc_nand_init_type structure which will be initialized.
Return values
none

Definition at line 313 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_ecc_enable()

void xmc_nand_ecc_enable | ( | xmc_class_bank_type | xmc_bank,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the xmc nand ecc feature.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
new_state (TRUE or FALSE)
Return values
none

Definition at line 373 of file at32f403_xmc.c.

Referenced by main(), nand_read_small_page(), and nand_write_small_page().

◆ xmc_nand_enable()

void xmc_nand_enable | ( | xmc_class_bank_type | xmc_bank,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified nand memory bank.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
new_state (TRUE or FALSE)
Return values
none

Definition at line 356 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_init()

void xmc_nand_init ( xmc_nand_init_type * xmc_nand_init_struct )

initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.

Parameters
xmc_nand_init_struct : pointer to a xmc_nand_init_type structure that contains the configuration information for the xmc nand specified banks.
Return values
none

Definition at line 252 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_reset()

void xmc_nand_reset ( xmc_class_bank_type xmc_bank )

xmc nand flash registers reset

Parameters
xmc_bank this parameter can be one of the following values:
  • XMC_BANK2_NAND
Return values
none

Definition at line 232 of file at32f403_xmc.c.

◆ xmc_nand_timing_config()

void xmc_nand_timing_config | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct
 | ) |  |

initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.

Parameters
xmc_regular_spacetiming_struct | : pointer to a xmc_nand_timinginit_type structure that contains the configuration information for the xmc nand specified banks.
xmc_special_spacetiming_struct | : pointer to a xmc_nand_timinginit_type structure that contains the configuration information for the xmc nand specified banks.
Return values
none

Definition at line 283 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_timing_default_para_init()

void xmc_nand_timing_default_para_init | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct
 | ) |  |

fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default value.

Parameters
xmc_common_spacetiming_struct | pointer to a xmc_nand_timinginit_type structure which will be initialized.
xmc_special_spacetiming_struct | pointer to a xmc_nand_timinginit_type structure which will be initialized.
Return values
none

Definition at line 333 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nor_sram_enable()

void xmc_nor_sram_enable | ( | xmc_nor_sram_subbank_type | xmc_subbank,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified nor/sram memory bank.

Parameters
xmc_subbank this parameter can be one of the following values:
  • XMC_BANK1_NOR_SRAM1
  • XMC_BANK1_NOR_SRAM4
new_state (TRUE or FALSE)
Return values
none

Definition at line 204 of file at32f403_xmc.c.

Referenced by nor_init(), psram_init(), sram_init(), and xmc_init().

◆ xmc_nor_sram_init()

void xmc_nor_sram_init ( xmc_norsram_init_type * xmc_norsram_init_struct )

initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.

Parameters
xmc_norsram_init_struct : pointer to a xmc_norsram_init_type structure that contains the configuration information for the xmc nor/sram specified banks.
Return values
none

Definition at line 74 of file at32f403_xmc.c.

Referenced by nor_init(), psram_init(), sram_init(), and xmc_init().

◆ xmc_nor_sram_reset()

void xmc_nor_sram_reset ( xmc_nor_sram_subbank_type xmc_subbank )

xmc nor or sram registers reset

Parameters
xmc_subbank this parameter can be one of the following values:
  • XMC_BANK1_NOR_SRAM1
  • XMC_BANK1_NOR_SRAM4
Return values
none

Definition at line 50 of file at32f403_xmc.c.

◆ xmc_nor_sram_timing_config()

void xmc_nor_sram_timing_config | ( | xmc_norsram_timing_init_type * | xmc_rw_timing_struct,
 |  | xmc_norsram_timing_init_type * | xmc_w_timing_struct
 | ) |  |

initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct and xmc_w_timing_struct.

Parameters
xmc_rw_timing_struct | : pointer to a xmc_norsram_timing_init_type structure that contains the configuration information for the xmc nor/sram specified banks.
xmc_w_timing_struct | : pointer to a xmc_norsram_timing_init_type structure that contains the configuration information for the xmc nor/sram specified banks.
Return values
none

Definition at line 109 of file at32f403_xmc.c.

Referenced by nor_init(), psram_init(), sram_init(), and xmc_init().

◆ xmc_norsram_default_para_init()

void xmc_norsram_default_para_init ( xmc_norsram_init_type * xmc_nor_sram_init_struct )

fill each xmc_nor_sram_init_struct member with its default value.

Parameters
xmc_nor_sram_init_struct pointer to a xmc_norsram_init_type structure which will be initialized.
Return values
none

Definition at line 146 of file at32f403_xmc.c.

Referenced by nor_init(), sram_init(), and xmc_init().

◆ xmc_norsram_timing_default_para_init()

void xmc_norsram_timing_default_para_init | ( | xmc_norsram_timing_init_type * | xmc_rw_timing_struct,
 |  | xmc_norsram_timing_init_type * | xmc_w_timing_struct
 | ) |  |

fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.

Parameters
xmc_rw_timing_struct | pointer to a xmc_norsram_timing_init_type structure which will be initialized.
xmc_w_timing_struct | pointer to a xmc_norsram_timing_init_type structure which will be initialized.
Return values
none

Definition at line 172 of file at32f403_xmc.c.

Referenced by nor_init(), sram_init(), and xmc_init().

◆ xmc_pccard_default_para_init()

void xmc_pccard_default_para_init ( xmc_pccard_init_type * xmc_pccard_init_struct )

fill each xmc_pccard_init_struct member with its default value.

Parameters
xmc_pccard_init_struct pointer to a xmc_pccardinittype structure which will be initialized.
Return values
none

Definition at line 610 of file at32f403_xmc.c.

◆ xmc_pccard_enable()

void xmc_pccard_enable ( confirm_state new_state )

enable or disable the pccard memory bank.

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 657 of file at32f403_xmc.c.

Referenced by PCCARD_Init().

◆ xmc_pccard_init()

void xmc_pccard_init ( xmc_pccard_init_type * xmc_pccard_init_struct )

initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct.

Parameters
xmc_pccard_init_struct : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
Return values
none

Definition at line 558 of file at32f403_xmc.c.

◆ xmc_pccard_reset()

void xmc_pccard_reset ( void )

xmc pc card registers reset

Parameters
none
Return values
none

Definition at line 540 of file at32f403_xmc.c.

Referenced by PCCARD_DeInit().

◆ xmc_pccard_timing_config()

void xmc_pccard_timing_config | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_iospace_timing_struct
 | ) |  |

initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct.

Parameters
xmc_regular_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_special_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_iospace_timing_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
Return values
none

Definition at line 582 of file at32f403_xmc.c.

◆ xmc_pccard_timing_default_para_init()

void xmc_pccard_timing_default_para_init | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_iospace_timing_struct
 | ) |  |

fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct member with its default value.

Parameters
xmc_regular_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_special_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_iospace_timing_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
Return values
none

Definition at line 632 of file at32f403_xmc.c.


AT32F403 Firmwary Library: XMC_private_functions

Functions
XMC_private_functions
AT32F403_periph_driver » XMC

Functions

void | xmc_nor_sram_reset (xmc_nor_sram_subbank_type xmc_subbank)
xmc nor or sram registers reset More...
void | xmc_nor_sram_init (xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct. More...
void | xmc_nor_sram_timing_config (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct and xmc_w_timing_struct. More...
void | xmc_norsram_default_para_init (xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value. More...
void | xmc_norsram_timing_default_para_init (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value. More...
void | xmc_nor_sram_enable (xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank. More...
void | xmc_ext_timing_config (volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase. More...
void | xmc_nand_reset (xmc_class_bank_type xmc_bank)
xmc nand flash registers reset More...
void | xmc_nand_init (xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_timing_config (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_default_para_init (xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value. More...
void | xmc_nand_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default value. More...
void | xmc_nand_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank. More...
void | xmc_nand_ecc_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature. More...
uint32_t | xmc_ecc_get (xmc_class_bank_type xmc_bank)
return the error correction code register value. More...
void | xmc_interrupt_enable (xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state)
enable or disable the specified xmc interrupts. More...
flag_status | xmc_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc flag is set or not. More...
flag_status | xmc_interrupt_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc interrupt flag is set or not. More...
void | xmc_flag_clear (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
clear the xmc's pending flags. More...
void | xmc_pccard_reset (void)
xmc pc card registers reset More...
void | xmc_pccard_init (xmc_pccard_init_type *xmc_pccard_init_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct. More...
void | xmc_pccard_timing_config (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct. More...
void | xmc_pccard_default_para_init (xmc_pccard_init_type *xmc_pccard_init_struct)
fill each xmc_pccard_init_struct member with its default value. More...
void | xmc_pccard_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct member with its default value. More...
void | xmc_pccard_enable (confirm_state new_state)
enable or disable the pccard memory bank. More...

Detailed Description

Function Documentation

◆ xmc_ecc_get()

uint32_t xmc_ecc_get ( xmc_class_bank_type xmc_bank )

return the error correction code register value.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
Return values
the error correction code (ecc) value.

Definition at line 389 of file at32f403_xmc.c.

Referenced by nand_read_small_page(), and nand_write_small_page().

◆ xmc_ext_timing_config()

void xmc_ext_timing_config | ( | volatile xmc_nor_sram_subbank_type | xmc_sub_bank,
 |  | uint16_t | w2w_timing,
 |  | uint16_t | r2r_timing
 | ) |  |

config the bus turnaround phase.

Parameters
xmc_sub_bank this parameter can be one of the following values:
  • XMC_BANK1_NOR_SRAM1
  • XMC_BANK1_NOR_SRAM4
w2w_timing | :write timing
r2r_timing | :read timing
Return values
none

Definition at line 219 of file at32f403_xmc.c.

Referenced by psram_init(), sram_init(), and xmc_init().

◆ xmc_flag_clear()

void xmc_flag_clear | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_flag_type | xmc_flag
 | ) |  |

clear the xmc's pending flags.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_flag specifies the flag to check. this parameter can be any combination of the following values:
  • XMC_RISINGEDGE_FLAG
  • XMC_LEVEL_FLAG
  • XMC_FALLINGEDGE_FLAG
  • XMC_FEMPT_FLAG
Return values
none

Definition at line 525 of file at32f403_xmc.c.

◆ xmc_flag_status_get()

flag_status xmc_flag_status_get | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_flag_type | xmc_flag
 | ) |  |

check whether the specified xmc flag is set or not.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_flag specifies the flag to check. this parameter can be any combination of the following values:
  • XMC_RISINGEDGE_FLAG
  • XMC_LEVEL_FLAG
  • XMC_FALLINGEDGE_FLAG
  • XMC_FEMPT_FLAG
Return values
none

Definition at line 449 of file at32f403_xmc.c.

Referenced by nand_write_small_page().

◆ xmc_interrupt_enable()

void xmc_interrupt_enable | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_sources_type | xmc_int,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified xmc interrupts.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_int specifies the xmc interrupt sources to be enabled or disabled. this parameter can be any combination of the following values:
  • XMC_INT_RISING_EDGE
  • XMC_INT_LEVEL
  • XMC_INT_FALLING_EDGE
new_state (TRUE or FALSE)
Return values
none

Definition at line 416 of file at32f403_xmc.c.

◆ xmc_interrupt_flag_status_get()

flag_status xmc_interrupt_flag_status_get | ( | xmc_class_bank_type | xmc_bank,
 |  | xmc_interrupt_flag_type | xmc_flag
 | ) |  |

check whether the specified xmc interrupt flag is set or not.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
xmc_flag specifies the flag to check. this parameter can be any combination of the following values:
  • XMC_RISINGEDGE_FLAG
  • XMC_LEVEL_FLAG
  • XMC_FALLINGEDGE_FLAG
Return values
none

Definition at line 483 of file at32f403_xmc.c.

◆ xmc_nand_default_para_init()

void xmc_nand_default_para_init ( xmc_nand_init_type * xmc_nand_init_struct )

fill each xmc_nand_init_struct member with its default value.

Parameters
xmc_nand_init_struct pointer to a xmc_nand_init_type structure which will be initialized.
Return values
none

Definition at line 313 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_ecc_enable()

void xmc_nand_ecc_enable | ( | xmc_class_bank_type | xmc_bank,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the xmc nand ecc feature.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
new_state (TRUE or FALSE)
Return values
none

Definition at line 373 of file at32f403_xmc.c.

Referenced by main(), nand_read_small_page(), and nand_write_small_page().

◆ xmc_nand_enable()

void xmc_nand_enable | ( | xmc_class_bank_type | xmc_bank,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified nand memory bank.

Parameters
xmc_bank specifies the xmc bank to be used this parameter can be one of the following values:
  • XMC_BANK2_NAND
new_state (TRUE or FALSE)
Return values
none

Definition at line 356 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_init()

void xmc_nand_init ( xmc_nand_init_type * xmc_nand_init_struct )

initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.

Parameters
xmc_nand_init_struct : pointer to a xmc_nand_init_type structure that contains the configuration information for the xmc nand specified banks.
Return values
none

Definition at line 252 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_reset()

void xmc_nand_reset ( xmc_class_bank_type xmc_bank )

xmc nand flash registers reset

Parameters
xmc_bank this parameter can be one of the following values:
  • XMC_BANK2_NAND
Return values
none

Definition at line 232 of file at32f403_xmc.c.

◆ xmc_nand_timing_config()

void xmc_nand_timing_config | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct
 | ) |  |

initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.

Parameters
xmc_regular_spacetiming_struct | : pointer to a xmc_nand_timinginit_type structure that contains the configuration information for the xmc nand specified banks.
xmc_special_spacetiming_struct | : pointer to a xmc_nand_timinginit_type structure that contains the configuration information for the xmc nand specified banks.
Return values
none

Definition at line 283 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nand_timing_default_para_init()

void xmc_nand_timing_default_para_init | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct
 | ) |  |

fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default value.

Parameters
xmc_common_spacetiming_struct | pointer to a xmc_nand_timinginit_type structure which will be initialized.
xmc_special_spacetiming_struct | pointer to a xmc_nand_timinginit_type structure which will be initialized.
Return values
none

Definition at line 333 of file at32f403_xmc.c.

Referenced by nand_init().

◆ xmc_nor_sram_enable()

void xmc_nor_sram_enable | ( | xmc_nor_sram_subbank_type | xmc_subbank,
 |  | confirm_state | new_state
 | ) |  |

enable or disable the specified nor/sram memory bank.

Parameters
xmc_subbank this parameter can be one of the following values:
  • XMC_BANK1_NOR_SRAM1
  • XMC_BANK1_NOR_SRAM4
new_state (TRUE or FALSE)
Return values
none

Definition at line 204 of file at32f403_xmc.c.

Referenced by nor_init(), psram_init(), sram_init(), and xmc_init().

◆ xmc_nor_sram_init()

void xmc_nor_sram_init ( xmc_norsram_init_type * xmc_norsram_init_struct )

initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.

Parameters
xmc_norsram_init_struct : pointer to a xmc_norsram_init_type structure that contains the configuration information for the xmc nor/sram specified banks.
Return values
none

Definition at line 74 of file at32f403_xmc.c.

Referenced by nor_init(), psram_init(), sram_init(), and xmc_init().

◆ xmc_nor_sram_reset()

void xmc_nor_sram_reset ( xmc_nor_sram_subbank_type xmc_subbank )

xmc nor or sram registers reset

Parameters
xmc_subbank this parameter can be one of the following values:
  • XMC_BANK1_NOR_SRAM1
  • XMC_BANK1_NOR_SRAM4
Return values
none

Definition at line 50 of file at32f403_xmc.c.

◆ xmc_nor_sram_timing_config()

void xmc_nor_sram_timing_config | ( | xmc_norsram_timing_init_type * | xmc_rw_timing_struct,
 |  | xmc_norsram_timing_init_type * | xmc_w_timing_struct
 | ) |  |

initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct and xmc_w_timing_struct.

Parameters
xmc_rw_timing_struct | : pointer to a xmc_norsram_timing_init_type structure that contains the configuration information for the xmc nor/sram specified banks.
xmc_w_timing_struct | : pointer to a xmc_norsram_timing_init_type structure that contains the configuration information for the xmc nor/sram specified banks.
Return values
none

Definition at line 109 of file at32f403_xmc.c.

Referenced by nor_init(), psram_init(), sram_init(), and xmc_init().

◆ xmc_norsram_default_para_init()

void xmc_norsram_default_para_init ( xmc_norsram_init_type * xmc_nor_sram_init_struct )

fill each xmc_nor_sram_init_struct member with its default value.

Parameters
xmc_nor_sram_init_struct pointer to a xmc_norsram_init_type structure which will be initialized.
Return values
none

Definition at line 146 of file at32f403_xmc.c.

Referenced by nor_init(), sram_init(), and xmc_init().

◆ xmc_norsram_timing_default_para_init()

void xmc_norsram_timing_default_para_init | ( | xmc_norsram_timing_init_type * | xmc_rw_timing_struct,
 |  | xmc_norsram_timing_init_type * | xmc_w_timing_struct
 | ) |  |

fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.

Parameters
xmc_rw_timing_struct | pointer to a xmc_norsram_timing_init_type structure which will be initialized.
xmc_w_timing_struct | pointer to a xmc_norsram_timing_init_type structure which will be initialized.
Return values
none

Definition at line 172 of file at32f403_xmc.c.

Referenced by nor_init(), sram_init(), and xmc_init().

◆ xmc_pccard_default_para_init()

void xmc_pccard_default_para_init ( xmc_pccard_init_type * xmc_pccard_init_struct )

fill each xmc_pccard_init_struct member with its default value.

Parameters
xmc_pccard_init_struct pointer to a xmc_pccardinittype structure which will be initialized.
Return values
none

Definition at line 610 of file at32f403_xmc.c.

◆ xmc_pccard_enable()

void xmc_pccard_enable ( confirm_state new_state )

enable or disable the pccard memory bank.

Parameters
new_state (TRUE or FALSE)
Return values
none

Definition at line 657 of file at32f403_xmc.c.

Referenced by PCCARD_Init().

◆ xmc_pccard_init()

void xmc_pccard_init ( xmc_pccard_init_type * xmc_pccard_init_struct )

initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct.

Parameters
xmc_pccard_init_struct : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
Return values
none

Definition at line 558 of file at32f403_xmc.c.

◆ xmc_pccard_reset()

void xmc_pccard_reset ( void )

xmc pc card registers reset

Parameters
none
Return values
none

Definition at line 540 of file at32f403_xmc.c.

Referenced by PCCARD_DeInit().

◆ xmc_pccard_timing_config()

void xmc_pccard_timing_config | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_iospace_timing_struct
 | ) |  |

initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct.

Parameters
xmc_regular_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_special_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_iospace_timing_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
Return values
none

Definition at line 582 of file at32f403_xmc.c.

◆ xmc_pccard_timing_default_para_init()

void xmc_pccard_timing_default_para_init | ( | xmc_nand_pccard_timinginit_type * | xmc_regular_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_special_spacetiming_struct,
 |  | xmc_nand_pccard_timinginit_type * | xmc_iospace_timing_struct
 | ) |  |

fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct member with its default value.

Parameters
xmc_regular_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_special_spacetiming_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
xmc_iospace_timing_struct | : pointer to a xmc_pccard_init_type structure that contains the configuration information for the xmc pccard bank.
Return values
none

Definition at line 632 of file at32f403_xmc.c.


AT32F403 Firmwary Library: AT32F403_middlewares_i2c_application_library

Modules | Macros | Functions
AT32F403_middlewares_i2c_application_library

Modules

I2C_library_event_check_flag
I2C_library_memory_address_width_mode
I2C_library_transmission_mode
I2C_library_status_code
I2C_library_handler
I2C_library_exported_functions

Macros

#define | DMA_GET_TC_FLAG(DMA_CHANNEL)
get the dma transfer complete flag through the channel More...
#define | DMA_GET_HT_FLAG(DMA_CHANNEL)
get the dma half transfer flag through the channel More...
#define | DMA_GET_TERR_FLAG(DMA_CHANNEL)
get the dma transfer error flag through the channel More...
#define | I2C_START 0
i2c transmission status More...
#define | I2C_END 1

Functions

__WEAK void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | i2c_config (i2c_handle_type *hi2c)
i2c peripheral initialization. More...
i2c_status_type | i2c_wait_end (i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end. More...
i2c_status_type | i2c_wait_flag (i2c_handle_type *hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout)
wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are waiting to be set More...
void | i2c_dma_config (i2c_handle_type *hi2c, dma_channel_type *dma_channelx, uint8_t *pdata, uint16_t size)
dma transfer cofiguration. More...
i2c_status_type | i2c_master_write_addr (i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
send address in master transmits mode. More...
i2c_status_type | i2c_master_read_addr (i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
send address in master receive mode. More...
i2c_status_type | i2c_master_transmit (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode. More...
i2c_status_type | i2c_slave_receive (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through polling mode. More...
i2c_status_type | i2c_master_receive (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through polling mode. More...
i2c_status_type | i2c_slave_transmit (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through polling mode. More...
i2c_status_type | i2c_master_transmit_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through interrupt mode. More...
i2c_status_type | i2c_slave_receive_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through interrupt mode. More...
i2c_status_type | i2c_master_receive_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through interrupt mode. More...
i2c_status_type | i2c_slave_transmit_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through interrupt mode. More...
i2c_status_type | i2c_master_transmit_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through dma mode. More...
i2c_status_type | i2c_slave_receive_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through dma mode. More...
i2c_status_type | i2c_master_receive_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through dma mode. More...
i2c_status_type | i2c_slave_transmit_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through dma mode. More...
i2c_status_type | i2c_memory_address_send (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t mem_address, int32_t timeout)
send memory address. More...
i2c_status_type | i2c_memory_write (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through polling mode. More...
i2c_status_type | i2c_memory_read (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
i2c_status_type | i2c_memory_write_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through interrupt mode. More...
i2c_status_type | i2c_memory_read_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through interrupt mode. More...
i2c_status_type | i2c_memory_write_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through dma mode. More...
i2c_status_type | i2c_memory_read_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
void | i2c_master_tx_isr_int (i2c_handle_type *hi2c)
master transfer mode interrupt procession function More...
void | i2c_master_rx_isr_int (i2c_handle_type *hi2c)
master receive mode interrupt procession function More...
void | i2c_slave_tx_isr_int (i2c_handle_type *hi2c)
slave transfer mode interrupt procession function More...
void | i2c_slave_rx_isr_int (i2c_handle_type *hi2c)
slave receive mode interrupt procession function More...
void | i2c_master_tx_isr_dma (i2c_handle_type *hi2c)
master interrupt processing function in dma mode. More...
void | i2c_slave_tx_rx_isr_dma (i2c_handle_type *hi2c)
slave interrupt processing function in dma mode. More...
void | i2c_evt_irq_handler (i2c_handle_type *hi2c)
interrupt procession function. More...
void | i2c_dma_tx_irq_handler (i2c_handle_type *hi2c)
dma transmission complete interrupt function. More...
void | i2c_dma_rx_irq_handler (i2c_handle_type *hi2c)
dma reveive complete interrupt function. More...
void | i2c_err_irq_handler (i2c_handle_type *hi2c)
i2c error interrupt function. More...

Detailed Description

< define to prevent recursive inclusion ----------------------------------—

Macro Definition Documentation

◆ DMA_GET_HT_FLAG

#define DMA_GET_HT_FLAG ( DMA_CHANNEL )
Value:
(((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL1))? DMA1_HDT1_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL2))? DMA1_HDT2_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL3))? DMA1_HDT3_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL4))? DMA1_HDT4_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL5))? DMA1_HDT5_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL6))? DMA1_HDT6_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL7))? DMA1_HDT7_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL1))? DMA2_HDT1_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL2))? DMA2_HDT2_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL3))? DMA2_HDT3_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL4))? DMA2_HDT4_FLAG : \
DMA2_HDT5_FLAG)
DMA1_HDT5_FLAG
#define DMA1_HDT5_FLAG
Definition: at32f403_dma.h:81
DMA1_HDT7_FLAG
#define DMA1_HDT7_FLAG
Definition: at32f403_dma.h:89
DMA2_HDT3_FLAG
#define DMA2_HDT3_FLAG
Definition: at32f403_dma.h:102
DMA1_HDT4_FLAG
#define DMA1_HDT4_FLAG
Definition: at32f403_dma.h:77
DMA2_HDT5_FLAG
#define DMA2_HDT5_FLAG
Definition: at32f403_dma.h:110
DMA1_HDT3_FLAG
#define DMA1_HDT3_FLAG
Definition: at32f403_dma.h:73
DMA2_HDT1_FLAG
#define DMA2_HDT1_FLAG
Definition: at32f403_dma.h:94
DMA2_HDT2_FLAG
#define DMA2_HDT2_FLAG
Definition: at32f403_dma.h:98
DMA1_HDT1_FLAG
#define DMA1_HDT1_FLAG
Definition: at32f403_dma.h:65
DMA2_HDT4_FLAG
#define DMA2_HDT4_FLAG
Definition: at32f403_dma.h:106
DMA1_HDT2_FLAG
#define DMA1_HDT2_FLAG
Definition: at32f403_dma.h:69
DMA1_HDT6_FLAG
#define DMA1_HDT6_FLAG
Definition: at32f403_dma.h:85
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL5
#define DMA1_CHANNEL5
Definition: at32f403_dma.h:359
DMA2_CHANNEL2
#define DMA2_CHANNEL2
Definition: at32f403_dma.h:365
DMA2_CHANNEL3
#define DMA2_CHANNEL3
Definition: at32f403_dma.h:366
DMA1_CHANNEL4
#define DMA1_CHANNEL4
Definition: at32f403_dma.h:358
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
DMA1_CHANNEL2
#define DMA1_CHANNEL2
Definition: at32f403_dma.h:356
DMA2_CHANNEL4
#define DMA2_CHANNEL4
Definition: at32f403_dma.h:367
DMA2_CHANNEL1
#define DMA2_CHANNEL1
Definition: at32f403_dma.h:364
DMA1_CHANNEL6
#define DMA1_CHANNEL6
Definition: at32f403_dma.h:360
DMA1_CHANNEL7
#define DMA1_CHANNEL7
Definition: at32f403_dma.h:361

get the dma half transfer flag through the channel

Definition at line 52 of file i2c_application.c.

◆ DMA_GET_TC_FLAG

#define DMA_GET_TC_FLAG ( DMA_CHANNEL )
Value:
(((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL1))? DMA1_FDT1_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL2))? DMA1_FDT2_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL3))? DMA1_FDT3_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL4))? DMA1_FDT4_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL5))? DMA1_FDT5_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL6))? DMA1_FDT6_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL7))? DMA1_FDT7_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL1))? DMA2_FDT1_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL2))? DMA2_FDT2_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL3))? DMA2_FDT3_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL4))? DMA2_FDT4_FLAG : \
DMA2_FDT5_FLAG)
DMA1_FDT7_FLAG
#define DMA1_FDT7_FLAG
Definition: at32f403_dma.h:88
DMA2_FDT4_FLAG
#define DMA2_FDT4_FLAG
Definition: at32f403_dma.h:105
DMA2_FDT2_FLAG
#define DMA2_FDT2_FLAG
Definition: at32f403_dma.h:97
DMA1_FDT4_FLAG
#define DMA1_FDT4_FLAG
Definition: at32f403_dma.h:76
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
DMA1_FDT6_FLAG
#define DMA1_FDT6_FLAG
Definition: at32f403_dma.h:84
DMA2_FDT5_FLAG
#define DMA2_FDT5_FLAG
Definition: at32f403_dma.h:109
DMA2_FDT1_FLAG
#define DMA2_FDT1_FLAG
Definition: at32f403_dma.h:93
DMA2_FDT3_FLAG
#define DMA2_FDT3_FLAG
Definition: at32f403_dma.h:101
DMA1_FDT5_FLAG
#define DMA1_FDT5_FLAG
Definition: at32f403_dma.h:80
DMA1_FDT2_FLAG
#define DMA1_FDT2_FLAG
Definition: at32f403_dma.h:68
DMA1_FDT3_FLAG
#define DMA1_FDT3_FLAG
Definition: at32f403_dma.h:72

get the dma transfer complete flag through the channel

Definition at line 35 of file i2c_application.c.

◆ DMA_GET_TERR_FLAG

#define DMA_GET_TERR_FLAG ( DMA_CHANNEL )
Value:
(((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL1))? DMA1_DTERR1_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL2))? DMA1_DTERR2_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL3))? DMA1_DTERR3_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL4))? DMA1_DTERR4_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL5))? DMA1_DTERR5_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL6))? DMA1_DTERR6_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL7))? DMA1_DTERR7_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL1))? DMA2_DTERR1_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL2))? DMA2_DTERR2_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL3))? DMA2_DTERR3_FLAG : \
((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL4))? DMA2_DTERR4_FLAG : \
DMA2_DTERR5_FLAG)
DMA1_DTERR7_FLAG
#define DMA1_DTERR7_FLAG
Definition: at32f403_dma.h:90
DMA1_DTERR3_FLAG
#define DMA1_DTERR3_FLAG
Definition: at32f403_dma.h:74
DMA2_DTERR4_FLAG
#define DMA2_DTERR4_FLAG
Definition: at32f403_dma.h:107
DMA1_DTERR1_FLAG
#define DMA1_DTERR1_FLAG
Definition: at32f403_dma.h:66
DMA1_DTERR4_FLAG
#define DMA1_DTERR4_FLAG
Definition: at32f403_dma.h:78
DMA1_DTERR6_FLAG
#define DMA1_DTERR6_FLAG
Definition: at32f403_dma.h:86
DMA1_DTERR5_FLAG
#define DMA1_DTERR5_FLAG
Definition: at32f403_dma.h:82
DMA1_DTERR2_FLAG
#define DMA1_DTERR2_FLAG
Definition: at32f403_dma.h:70
DMA2_DTERR3_FLAG
#define DMA2_DTERR3_FLAG
Definition: at32f403_dma.h:103
DMA2_DTERR5_FLAG
#define DMA2_DTERR5_FLAG
Definition: at32f403_dma.h:111
DMA2_DTERR1_FLAG
#define DMA2_DTERR1_FLAG
Definition: at32f403_dma.h:95
DMA2_DTERR2_FLAG
#define DMA2_DTERR2_FLAG
Definition: at32f403_dma.h:99

get the dma transfer error flag through the channel

Definition at line 69 of file i2c_application.c.

◆ I2C_END

#define I2C_END 1

Definition at line 87 of file i2c_application.c.

◆ I2C_START

#define I2C_START 0

i2c transmission status

Definition at line 86 of file i2c_application.c.

Function Documentation

◆ i2c_config()

void i2c_config ( i2c_handle_type * hi2c )

i2c peripheral initialization.

Parameters
hi2c the handle points to the operation information.
Return values
none.

Definition at line 104 of file i2c_application.c.

Referenced by audio_codec_init(), and main().

◆ i2c_dma_config()

void i2c_dma_config | ( | i2c_handle_type * | hi2c,
 |  | dma_channel_type * | dma_channelx,
 |  | uint8_t * | pdata,
 |  | uint16_t | size
 | ) |  |

dma transfer cofiguration.

Parameters
hi2c | the handle points to the operation information.
dma_channelx | dma channel to be cofigured.
pdata | data buffer.
size | data size.
Return values
none.

< dma full data transfer interrupt

< dma full data transfer interrupt

Definition at line 249 of file i2c_application.c.

Referenced by i2c_master_receive_dma(), i2c_master_transmit_dma(), i2c_memory_read_dma(), i2c_memory_write_dma(), i2c_slave_receive_dma(), and i2c_slave_transmit_dma().

◆ i2c_dma_rx_irq_handler()

void i2c_dma_rx_irq_handler ( i2c_handle_type * hi2c )

dma reveive complete interrupt function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< dma full data transfer interrupt

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< i2c acknowledge failure flag

< i2c event interrupt

Definition at line 2286 of file i2c_application.c.

Referenced by DMA1_Channel5_IRQHandler(), and DMA1_Channel7_IRQHandler().

◆ i2c_dma_tx_irq_handler()

void i2c_dma_tx_irq_handler ( i2c_handle_type * hi2c )

dma transmission complete interrupt function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< dma full data transfer interrupt

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< i2c event interrupt

< i2c error interrupt

Definition at line 2249 of file i2c_application.c.

Referenced by DMA1_Channel4_IRQHandler(), and DMA1_Channel6_IRQHandler().

◆ i2c_err_irq_handler()

void i2c_err_irq_handler ( i2c_handle_type * hi2c )

i2c error interrupt function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c bus error flag

< i2c bus error flag

< i2c arbitration lost flag

< i2c arbitration lost flag

< i2c acknowledge failure flag

< i2c acknowledge failure flag

< i2c event interrupt

< i2c overflow or underflow flag

< i2c overflow or underflow flag

< i2c pec receive error flag

< i2c pec receive error flag

< i2c smbus timeout flag

< i2c smbus timeout flag

< i2c smbus alert flag

< i2c smbus alert flag

< i2c error interrupt

Definition at line 2332 of file i2c_application.c.

Referenced by I2C1_ERR_IRQHandler(), and I2C2_ERR_IRQHandler().

◆ i2c_evt_irq_handler()

void i2c_evt_irq_handler ( i2c_handle_type * hi2c )

interrupt procession function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

Definition at line 2216 of file i2c_application.c.

Referenced by I2C1_EVT_IRQHandler(), and I2C2_EVT_IRQHandler().

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

Definition at line 94 of file i2c_application.c.

Referenced by i2c_config().

◆ i2c_master_read_addr()

i2c_status_type i2c_master_read_addr | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint32_t | timeout
 | ) |  |

send address in master receive mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
timeout | maximum waiting time.
Return values
i2c status.

< i2c start condition generation complete flag

< check flag none

< i2c master 9~8 bit address header match flag

< check flag ackfail

< i2c 0~7 bit address match flag

< check flag ackfail

< i2c 0~7 bit address match flag

< i2c start condition generation complete flag

< check flag none

< i2c 0~7 bit address match flag

< check flag ackfail

Definition at line 331 of file i2c_application.c.

Referenced by i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_memory_read(), i2c_memory_read_dma(), and i2c_memory_read_int().

◆ i2c_master_receive()

i2c_status_type i2c_master_receive | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master receive data through polling mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c receive data buffer full flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c receive data buffer full flag

< check flag none

Definition at line 557 of file i2c_application.c.

Referenced by main().

◆ i2c_master_receive_dma()

i2c_status_type i2c_master_receive_dma | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master receive data through dma mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

Definition at line 1119 of file i2c_application.c.

Referenced by main().

◆ i2c_master_receive_int()

i2c_status_type i2c_master_receive_int | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master receive data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 901 of file i2c_application.c.

Referenced by main().

◆ i2c_master_rx_isr_int()

void i2c_master_rx_isr_int ( i2c_handle_type * hi2c )

master receive mode interrupt procession function

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c transmit data complete flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

< i2c receive data buffer full flag

< i2c data transmission interrupt

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 2010 of file i2c_application.c.

Referenced by i2c_evt_irq_handler().

◆ i2c_master_transmit()

i2c_status_type i2c_master_transmit | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master transmits data through polling mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data complete flag

< check flag ackfail

Definition at line 414 of file i2c_application.c.

Referenced by audio_codec_init(), audio_codec_loop(), audio_codec_modify_freq(), and main().

◆ i2c_master_transmit_dma()

i2c_status_type i2c_master_transmit_dma | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master transmits data through dma mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

Definition at line 1018 of file i2c_application.c.

Referenced by main().

◆ i2c_master_transmit_int()

i2c_status_type i2c_master_transmit_int | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master transmits data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 815 of file i2c_application.c.

Referenced by main().

◆ i2c_master_tx_isr_dma()

void i2c_master_tx_isr_dma ( i2c_handle_type * hi2c )

master interrupt processing function in dma mode.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c transmit data complete flag

< i2c event interrupt

Definition at line 2164 of file i2c_application.c.

Referenced by i2c_evt_irq_handler().

◆ i2c_master_tx_isr_int()

void i2c_master_tx_isr_int ( i2c_handle_type * hi2c )

master transfer mode interrupt procession function

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c transmit data buffer empty flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 1980 of file i2c_application.c.

Referenced by i2c_evt_irq_handler().

◆ i2c_master_write_addr()

i2c_status_type i2c_master_write_addr | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint32_t | timeout
 | ) |  |

send address in master transmits mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
timeout | maximum waiting time.
Return values
i2c status.

< i2c start condition generation complete flag

< check flag none

< i2c master 9~8 bit address header match flag

< check flag ackfail

< i2c 0~7 bit address match flag

< check flag ackfail

Definition at line 278 of file i2c_application.c.

Referenced by i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), and i2c_memory_write_int().

◆ i2c_memory_address_send()

i2c_status_type i2c_memory_address_send | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | mem_address,
 |  | int32_t | timeout
 | ) |  |

send memory address.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
timeout | maximum waiting time.
Return values
i2c status.

< i2c transmit data buffer empty flag

< check flag ackfail

Definition at line 1246 of file i2c_application.c.

Referenced by i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), and i2c_memory_write_int().

◆ i2c_memory_read()

i2c_status_type i2c_memory_read | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

read data from memory device through polling mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c receive data buffer full flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c receive data buffer full flag

< check flag none

Definition at line 1381 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_read_dma()

i2c_status_type i2c_memory_read_dma | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

read data from memory device through polling mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

Definition at line 1871 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_read_int()

i2c_status_type i2c_memory_read_int | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

read data from memory device through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 1671 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_write()

i2c_status_type i2c_memory_write | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

write data to the memory device through polling mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data complete flag

< check flag ackfail

Definition at line 1292 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_write_dma()

i2c_status_type i2c_memory_write_dma | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

write data to the memory device through dma mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

Definition at line 1788 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_write_int()

i2c_status_type i2c_memory_write_int | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

write data to the memory device through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 1594 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_receive()

i2c_status_type i2c_slave_receive | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave receive data through polling mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< check flag none

< i2c 0~7 bit address match flag

< i2c receive data buffer full flag

< check flag stop

< i2c stop condition generation complete flag

< check flag ackfail

< i2c stop condition generation complete flag

Definition at line 482 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_receive_dma()

i2c_status_type i2c_slave_receive_dma | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave receive data through dma mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

Definition at line 1071 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_receive_int()

i2c_status_type i2c_slave_receive_int | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave receive data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 862 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_rx_isr_int()

void i2c_slave_rx_isr_int ( i2c_handle_type * hi2c )

slave receive mode interrupt procession function

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c receive data buffer full flag

< i2c stop condition generation complete flag

< i2c stop condition generation complete flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 2124 of file i2c_application.c.

Referenced by i2c_evt_irq_handler().

◆ i2c_slave_transmit()

i2c_status_type i2c_slave_transmit | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave transmits data through polling mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c acknowledge failure flag

< check flag none

< i2c acknowledge failure flag

Definition at line 728 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_transmit_dma()

i2c_status_type i2c_slave_transmit_dma | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave transmits data through dma mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

Definition at line 1195 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_transmit_int()

i2c_status_type i2c_slave_transmit_int | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave transmits data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 979 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_tx_isr_int()

void i2c_slave_tx_isr_int ( i2c_handle_type * hi2c )

slave transfer mode interrupt procession function

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< i2c data transmission interrupt

< i2c event interrupt

< i2c error interrupt

< i2c acknowledge failure flag

< check flag none

< i2c acknowledge failure flag

Definition at line 2083 of file i2c_application.c.

Referenced by i2c_evt_irq_handler().

◆ i2c_slave_tx_rx_isr_dma()

void i2c_slave_tx_rx_isr_dma ( i2c_handle_type * hi2c )

slave interrupt processing function in dma mode.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c stop condition generation complete flag

< i2c stop condition generation complete flag

< i2c event interrupt

Definition at line 2185 of file i2c_application.c.

Referenced by i2c_evt_irq_handler().

◆ i2c_wait_end()

i2c_status_type i2c_wait_end | ( | i2c_handle_type * | hi2c,
 |  | uint32_t | timeout
 | ) |  |

wait for the transfer to end.

Parameters
hi2c | the handle points to the operation information.
timeout | maximum waiting time.
Return values
i2c status.

Definition at line 122 of file i2c_application.c.

Referenced by main().

◆ i2c_wait_flag()

i2c_status_type i2c_wait_flag | ( | i2c_handle_type * | hi2c,
 |  | uint32_t | flag,
 |  | uint32_t | event_check,
 |  | uint32_t | timeout
 | ) |  |

wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are waiting to be set

Parameters
hi2c | the handle points to the operation information.
flag specifies the flag to check. this parameter can be one of the following values:
  • I2C_STARTF_FLAG: start condition generation complete flag.
  • I2C_ADDR7F_FLAG: 0~7 bit address match flag.
  • I2C_TDC_FLAG: transmit data complete flag.
  • I2C_ADDRHF_FLAG: master 9~8 bit address header match flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_RDBF_FLAG: receive data buffer full flag.
  • I2C_TDBE_FLAG: transmit data buffer empty flag.
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
  • I2C_TRMODE_FLAG: transmission mode.
  • I2C_BUSYF_FLAG: bus busy flag transmission mode.
  • I2C_DIRF_FLAG: transmission direction flag.
  • I2C_GCADDRF_FLAG: general call address received flag.
  • I2C_DEVADDRF_FLAG: smbus device address received flag.
  • I2C_HOSTADDRF_FLAG: smbus host address received flag.
  • I2C_ADDR2_FLAG: own address 2 received flag.
event_check check other error flags while waiting for the flag. parameter as following values:
  • I2C_EVENT_CHECK_NONE
  • I2C_EVENT_CHECK_ACKFAIL
  • I2C_EVENT_CHECK_STOP
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag ackfail

< i2c acknowledge failure flag

< i2c acknowledge failure flag

< check flag stop

< i2c stop condition generation complete flag

< i2c stop condition generation complete flag

Definition at line 178 of file i2c_application.c.

Referenced by i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_write_addr(), i2c_memory_address_send(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), and i2c_slave_tx_isr_int().


AT32F403 Firmwary Library: I2C_library_event_check_flag

Macros
I2C_library_event_check_flag
AT32F403_middlewares_i2c_application_library

Macros

#define | I2C_EVENT_CHECK_NONE ((uint32_t)0x00000000)
#define | I2C_EVENT_CHECK_ACKFAIL ((uint32_t)0x00000001)
#define | I2C_EVENT_CHECK_STOP ((uint32_t)0x00000002)

Detailed Description

Macro Definition Documentation

◆ I2C_EVENT_CHECK_ACKFAIL

#define I2C_EVENT_CHECK_ACKFAIL ((uint32_t)0x00000001)

check flag ackfail

Definition at line 46 of file i2c_application.h.

◆ I2C_EVENT_CHECK_NONE

#define I2C_EVENT_CHECK_NONE ((uint32_t)0x00000000)

check flag none

Definition at line 45 of file i2c_application.h.

◆ I2C_EVENT_CHECK_STOP

#define I2C_EVENT_CHECK_STOP ((uint32_t)0x00000002)

check flag stop

Definition at line 47 of file i2c_application.h.


AT32F403 Firmwary Library: I2C_library_memory_address_width_mode

Enumerations
I2C_library_memory_address_width_mode
AT32F403_middlewares_i2c_application_library

Enumerations

enum i2c_mem_address_width_type { I2C_MEM_ADDR_WIDIH_8 = 0x01 , I2C_MEM_ADDR_WIDIH_16 = 0x02 }

Detailed Description

Enumeration Type Documentation

◆ i2c_mem_address_width_type

enum i2c_mem_address_width_type
Enumerator
I2C_MEM_ADDR_WIDIH_8 | memory address is 8 bit
I2C_MEM_ADDR_WIDIH_16 | memory address is 16 bit

Definition at line 57 of file i2c_application.h.


AT32F403 Firmwary Library: I2C_library_transmission_mode

Enumerations
I2C_library_transmission_mode
AT32F403_middlewares_i2c_application_library

Enumerations

enum i2c_mode_type {
I2C_INT_MA_TX = 0 , I2C_INT_MA_RX , I2C_INT_SLA_TX , I2C_INT_SLA_RX ,
I2C_DMA_MA_TX , I2C_DMA_MA_RX , I2C_DMA_SLA_TX , I2C_DMA_SLA_RX
}

Detailed Description

Enumeration Type Documentation

◆ i2c_mode_type

enum i2c_mode_type
Enumerator
I2C_INT_MA_TX
I2C_INT_MA_RX
I2C_INT_SLA_TX
I2C_INT_SLA_RX
I2C_DMA_MA_TX
I2C_DMA_MA_RX
I2C_DMA_SLA_TX
I2C_DMA_SLA_RX

Definition at line 71 of file i2c_application.h.


AT32F403 Firmwary Library: I2C_library_status_code

Enumerations
I2C_library_status_code
AT32F403_middlewares_i2c_application_library

Enumerations

enum i2c_status_type {
I2C_OK = 0 , I2C_ERR_STEP_1 , I2C_ERR_STEP_2 , I2C_ERR_STEP_3 ,
I2C_ERR_STEP_4 , I2C_ERR_STEP_5 , I2C_ERR_STEP_6 , I2C_ERR_STEP_7 ,
I2C_ERR_STEP_8 , I2C_ERR_STEP_9 , I2C_ERR_STEP_10 , I2C_ERR_STEP_11 ,
I2C_ERR_STEP_12 , I2C_ERR_START , I2C_ERR_ADDR10 , I2C_ERR_ADDR ,
I2C_ERR_STOP , I2C_ERR_ACKFAIL , I2C_ERR_TIMEOUT , I2C_ERR_INTERRUPT
}

Detailed Description

Enumeration Type Documentation

◆ i2c_status_type

enum i2c_status_type
Enumerator
I2C_OK | no error
I2C_ERR_STEP_1 | step 1 error
I2C_ERR_STEP_2 | step 2 error
I2C_ERR_STEP_3 | step 3 error
I2C_ERR_STEP_4 | step 4 error
I2C_ERR_STEP_5 | step 5 error
I2C_ERR_STEP_6 | step 6 error
I2C_ERR_STEP_7 | step 7 error
I2C_ERR_STEP_8 | step 8 error
I2C_ERR_STEP_9 | step 9 error
I2C_ERR_STEP_10 | step 10 error
I2C_ERR_STEP_11 | step 11 error
I2C_ERR_STEP_12 | step 12 error
I2C_ERR_START | start error
I2C_ERR_ADDR10 | addr10 error
I2C_ERR_ADDR | addr error
I2C_ERR_STOP | stop error
I2C_ERR_ACKFAIL | ackfail error
I2C_ERR_TIMEOUT | timeout error
I2C_ERR_INTERRUPT | interrupt error

Definition at line 92 of file i2c_application.h.


AT32F403 Firmwary Library: I2C_library_handler

Data Structures
I2C_library_handler
AT32F403_middlewares_i2c_application_library

Data Structures

struct i2c_handle_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: i2c_handle_type Struct Reference

Data Fields
i2c_handle_type Struct Reference
AT32F403_middlewares_i2c_application_library » I2C_library_handler

#include <i2c_application.h>

Data Fields

i2c_type * i2cx
uint8_t * | pbuff
__IO uint16_t | pcount
__IO uint32_t | mode
__IO uint32_t | timeout
__IO uint32_t | status
__IO i2c_status_type | error_code
dma_channel_type * dma_tx_channel
dma_channel_type * dma_rx_channel
dma_init_type dma_init_struct

Detailed Description

Definition at line 125 of file i2c_application.h.

Field Documentation

◆ dma_init_struct

dma_init_type i2c_handle_type::dma_init_struct

dma init parameters

Definition at line 136 of file i2c_application.h.

Referenced by i2c_dma_config(), and i2c_lowlevel_init().

◆ dma_rx_channel

dma_channel_type* i2c_handle_type::dma_rx_channel

dma receive channel

Definition at line 135 of file i2c_application.h.

Referenced by i2c_dma_rx_irq_handler(), i2c_lowlevel_init(), i2c_master_receive_dma(), i2c_memory_read_dma(), and i2c_slave_receive_dma().

◆ dma_tx_channel

dma_channel_type* i2c_handle_type::dma_tx_channel

dma transmit channel

Definition at line 134 of file i2c_application.h.

Referenced by i2c_dma_config(), i2c_dma_tx_irq_handler(), i2c_lowlevel_init(), i2c_master_transmit_dma(), i2c_memory_write_dma(), and i2c_slave_transmit_dma().

◆ error_code

__IO i2c_status_type i2c_handle_type::error_code

i2c error code

Definition at line 133 of file i2c_application.h.

Referenced by i2c_err_irq_handler(), i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_write_addr(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), i2c_wait_end(), and i2c_wait_flag().

◆ i2cx

i2c_type* i2c_handle_type::i2cx

i2c registers base address

Definition at line 127 of file i2c_application.h.

Referenced by audio_codec_init(), i2c_config(), i2c_dma_config(), i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), i2c_err_irq_handler(), i2c_lowlevel_init(), i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_master_write_addr(), i2c_memory_address_send(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_rx_isr_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), i2c_slave_tx_isr_int(), i2c_slave_tx_rx_isr_dma(), i2c_wait_flag(), and main().

◆ mode

__IO uint32_t i2c_handle_type::mode

i2c communication mode

Definition at line 130 of file i2c_application.h.

Referenced by i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), i2c_err_irq_handler(), i2c_evt_irq_handler(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit_dma(), and i2c_slave_transmit_int().

◆ pbuff

uint8_t* i2c_handle_type::pbuff

pointer to i2c transfer buffer

Definition at line 128 of file i2c_application.h.

Referenced by i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_tx_isr_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_rx_isr_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), and i2c_slave_tx_isr_int().

◆ pcount

__IO uint16_t i2c_handle_type::pcount

i2c transfer counter

Definition at line 129 of file i2c_application.h.

Referenced by i2c_dma_rx_irq_handler(), i2c_dma_tx_irq_handler(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_tx_isr_int(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_rx_isr_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), and i2c_slave_tx_isr_int().

◆ status

__IO uint32_t i2c_handle_type::status

i2c communication status

Definition at line 132 of file i2c_application.h.

Referenced by i2c_dma_rx_irq_handler(), i2c_err_irq_handler(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_rx_isr_int(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_tx_isr_dma(), i2c_master_tx_isr_int(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_rx_isr_int(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), i2c_slave_tx_isr_int(), i2c_slave_tx_rx_isr_dma(), and i2c_wait_end().

◆ timeout

__IO uint32_t i2c_handle_type::timeout

i2c wait time

Definition at line 131 of file i2c_application.h.

Referenced by i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), and i2c_slave_tx_isr_int().

The documentation for this struct was generated from the following file:
  • i2c_application.h


AT32F403 Firmwary Library: I2C_library_exported_functions

Functions
I2C_library_exported_functions
AT32F403_middlewares_i2c_application_library

Functions

void | i2c_config (i2c_handle_type *hi2c)
i2c peripheral initialization. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
i2c_status_type | i2c_wait_end (i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end. More...
i2c_status_type | i2c_wait_flag (i2c_handle_type *hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout)
wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are waiting to be set More...
i2c_status_type | i2c_master_transmit (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode. More...
i2c_status_type | i2c_master_receive (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through polling mode. More...
i2c_status_type | i2c_slave_transmit (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through polling mode. More...
i2c_status_type | i2c_slave_receive (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through polling mode. More...
i2c_status_type | i2c_master_transmit_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through interrupt mode. More...
i2c_status_type | i2c_master_receive_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through interrupt mode. More...
i2c_status_type | i2c_slave_transmit_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through interrupt mode. More...
i2c_status_type | i2c_slave_receive_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through interrupt mode. More...
i2c_status_type | i2c_master_transmit_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through dma mode. More...
i2c_status_type | i2c_master_receive_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through dma mode. More...
i2c_status_type | i2c_slave_transmit_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through dma mode. More...
i2c_status_type | i2c_slave_receive_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through dma mode. More...
i2c_status_type | i2c_memory_write (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through polling mode. More...
i2c_status_type | i2c_memory_write_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through interrupt mode. More...
i2c_status_type | i2c_memory_write_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through dma mode. More...
i2c_status_type | i2c_memory_read (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
i2c_status_type | i2c_memory_read_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through interrupt mode. More...
i2c_status_type | i2c_memory_read_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
void | i2c_evt_irq_handler (i2c_handle_type *hi2c)
interrupt procession function. More...
void | i2c_err_irq_handler (i2c_handle_type *hi2c)
i2c error interrupt function. More...
void | i2c_dma_tx_irq_handler (i2c_handle_type *hi2c)
dma transmission complete interrupt function. More...
void | i2c_dma_rx_irq_handler (i2c_handle_type *hi2c)
dma reveive complete interrupt function. More...

Detailed Description

Function Documentation

◆ i2c_config()

void i2c_config ( i2c_handle_type * hi2c )

i2c peripheral initialization.

Parameters
hi2c the handle points to the operation information.
Return values
none.

Definition at line 104 of file i2c_application.c.

Referenced by audio_codec_init(), and main().

◆ i2c_dma_rx_irq_handler()

void i2c_dma_rx_irq_handler ( i2c_handle_type * hi2c )

dma reveive complete interrupt function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< dma full data transfer interrupt

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< i2c acknowledge failure flag

< i2c event interrupt

Definition at line 2286 of file i2c_application.c.

Referenced by DMA1_Channel5_IRQHandler(), and DMA1_Channel7_IRQHandler().

◆ i2c_dma_tx_irq_handler()

void i2c_dma_tx_irq_handler ( i2c_handle_type * hi2c )

dma transmission complete interrupt function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< dma full data transfer interrupt

< dma1 channel1 full data transfer flag

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel4 full data transfer flag

< dma1 channel5 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

< dma2 channel1 full data transfer flag

< dma2 channel2 full data transfer flag

< dma2 channel3 full data transfer flag

< dma2 channel4 full data transfer flag

< dma2 channel5 full data transfer flag

< i2c event interrupt

< i2c error interrupt

Definition at line 2249 of file i2c_application.c.

Referenced by DMA1_Channel4_IRQHandler(), and DMA1_Channel6_IRQHandler().

◆ i2c_err_irq_handler()

void i2c_err_irq_handler ( i2c_handle_type * hi2c )

i2c error interrupt function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

< i2c bus error flag

< i2c bus error flag

< i2c arbitration lost flag

< i2c arbitration lost flag

< i2c acknowledge failure flag

< i2c acknowledge failure flag

< i2c event interrupt

< i2c overflow or underflow flag

< i2c overflow or underflow flag

< i2c pec receive error flag

< i2c pec receive error flag

< i2c smbus timeout flag

< i2c smbus timeout flag

< i2c smbus alert flag

< i2c smbus alert flag

< i2c error interrupt

Definition at line 2332 of file i2c_application.c.

Referenced by I2C1_ERR_IRQHandler(), and I2C2_ERR_IRQHandler().

◆ i2c_evt_irq_handler()

void i2c_evt_irq_handler ( i2c_handle_type * hi2c )

interrupt procession function.

Parameters
hi2c the handle points to the operation information.
Return values
none.

Definition at line 2216 of file i2c_application.c.

Referenced by I2C1_EVT_IRQHandler(), and I2C2_EVT_IRQHandler().

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 10

< gpio pins number 11

Definition at line 94 of file i2c_application.c.

Referenced by i2c_config().

◆ i2c_master_receive()

i2c_status_type i2c_master_receive | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master receive data through polling mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c receive data buffer full flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c receive data buffer full flag

< check flag none

Definition at line 557 of file i2c_application.c.

Referenced by main().

◆ i2c_master_receive_dma()

i2c_status_type i2c_master_receive_dma | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master receive data through dma mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

Definition at line 1119 of file i2c_application.c.

Referenced by main().

◆ i2c_master_receive_int()

i2c_status_type i2c_master_receive_int | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master receive data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 901 of file i2c_application.c.

Referenced by main().

◆ i2c_master_transmit()

i2c_status_type i2c_master_transmit | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master transmits data through polling mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data complete flag

< check flag ackfail

Definition at line 414 of file i2c_application.c.

Referenced by audio_codec_init(), audio_codec_loop(), audio_codec_modify_freq(), and main().

◆ i2c_master_transmit_dma()

i2c_status_type i2c_master_transmit_dma | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master transmits data through dma mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

Definition at line 1018 of file i2c_application.c.

Referenced by main().

◆ i2c_master_transmit_int()

i2c_status_type i2c_master_transmit_int | ( | i2c_handle_type * | hi2c,
 |  | uint16_t | address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the master transmits data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
address | slave address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 815 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_read()

i2c_status_type i2c_memory_read | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

read data from memory device through polling mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c receive data buffer full flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c transmit data complete flag

< check flag none

< i2c receive data buffer full flag

< check flag none

Definition at line 1381 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_read_dma()

i2c_status_type i2c_memory_read_dma | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

read data from memory device through polling mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

Definition at line 1871 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_read_int()

i2c_status_type i2c_memory_read_int | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

read data from memory device through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 1671 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_write()

i2c_status_type i2c_memory_write | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

write data to the memory device through polling mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data complete flag

< check flag ackfail

Definition at line 1292 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_write_dma()

i2c_status_type i2c_memory_write_dma | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

write data to the memory device through dma mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

Definition at line 1788 of file i2c_application.c.

Referenced by main().

◆ i2c_memory_write_int()

i2c_status_type i2c_memory_write_int | ( | i2c_handle_type * | hi2c,
 |  | i2c_mem_address_width_type | mem_address_width,
 |  | uint16_t | address,
 |  | uint16_t | mem_address,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

write data to the memory device through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
mem_address_width memory address width. this parameter can be one of the following values:
  • I2C_MEM_ADDR_WIDIH_8: memory address is 8 bit
  • I2C_MEM_ADDR_WIDIH_16: memory address is 16 bit
address | memory device address.
mem_address | memory address.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 1594 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_receive()

i2c_status_type i2c_slave_receive | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave receive data through polling mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< check flag none

< i2c 0~7 bit address match flag

< i2c receive data buffer full flag

< check flag stop

< i2c stop condition generation complete flag

< check flag ackfail

< i2c stop condition generation complete flag

Definition at line 482 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_receive_dma()

i2c_status_type i2c_slave_receive_dma | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave receive data through dma mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

Definition at line 1071 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_receive_int()

i2c_status_type i2c_slave_receive_int | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave receive data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 862 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_transmit()

i2c_status_type i2c_slave_transmit | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave transmits data through polling mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c 0~7 bit address match flag

< check flag none

< i2c 0~7 bit address match flag

< i2c 0~7 bit address match flag

< check flag none

< i2c 0~7 bit address match flag

< i2c transmit data buffer empty flag

< check flag ackfail

< i2c acknowledge failure flag

< check flag none

< i2c acknowledge failure flag

Definition at line 728 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_transmit_dma()

i2c_status_type i2c_slave_transmit_dma | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave transmits data through dma mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

Definition at line 1195 of file i2c_application.c.

Referenced by main().

◆ i2c_slave_transmit_int()

i2c_status_type i2c_slave_transmit_int | ( | i2c_handle_type * | hi2c,
 |  | uint8_t * | pdata,
 |  | uint16_t | size,
 |  | uint32_t | timeout
 | ) |  |

the slave transmits data through interrupt mode.

Parameters
hi2c | the handle points to the operation information.
pdata | data buffer.
size | data size.
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag none

< i2c event interrupt

< i2c data transmission interrupt

< i2c error interrupt

Definition at line 979 of file i2c_application.c.

Referenced by main().

◆ i2c_wait_end()

i2c_status_type i2c_wait_end | ( | i2c_handle_type * | hi2c,
 |  | uint32_t | timeout
 | ) |  |

wait for the transfer to end.

Parameters
hi2c | the handle points to the operation information.
timeout | maximum waiting time.
Return values
i2c status.

Definition at line 122 of file i2c_application.c.

Referenced by main().

◆ i2c_wait_flag()

i2c_status_type i2c_wait_flag | ( | i2c_handle_type * | hi2c,
 |  | uint32_t | flag,
 |  | uint32_t | event_check,
 |  | uint32_t | timeout
 | ) |  |

wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are waiting to be set

Parameters
hi2c | the handle points to the operation information.
flag specifies the flag to check. this parameter can be one of the following values:
  • I2C_STARTF_FLAG: start condition generation complete flag.
  • I2C_ADDR7F_FLAG: 0~7 bit address match flag.
  • I2C_TDC_FLAG: transmit data complete flag.
  • I2C_ADDRHF_FLAG: master 9~8 bit address header match flag.
  • I2C_STOPF_FLAG: stop condition generation complete flag.
  • I2C_RDBF_FLAG: receive data buffer full flag.
  • I2C_TDBE_FLAG: transmit data buffer empty flag.
  • I2C_BUSERR_FLAG: bus error flag.
  • I2C_ARLOST_FLAG: arbitration lost flag.
  • I2C_ACKFAIL_FLAG: acknowledge failure flag.
  • I2C_OUF_FLAG: overflow or underflow flag.
  • I2C_PECERR_FLAG: pec receive error flag.
  • I2C_TMOUT_FLAG: smbus timeout flag.
  • I2C_ALERTF_FLAG: smbus alert flag.
  • I2C_TRMODE_FLAG: transmission mode.
  • I2C_BUSYF_FLAG: bus busy flag transmission mode.
  • I2C_DIRF_FLAG: transmission direction flag.
  • I2C_GCADDRF_FLAG: general call address received flag.
  • I2C_DEVADDRF_FLAG: smbus device address received flag.
  • I2C_HOSTADDRF_FLAG: smbus host address received flag.
  • I2C_ADDR2_FLAG: own address 2 received flag.
event_check check other error flags while waiting for the flag. parameter as following values:
  • I2C_EVENT_CHECK_NONE
  • I2C_EVENT_CHECK_ACKFAIL
  • I2C_EVENT_CHECK_STOP
timeout | maximum waiting time.
Return values
i2c status.

< i2c bus busy flag transmission mode

< check flag ackfail

< i2c acknowledge failure flag

< i2c acknowledge failure flag

< check flag stop

< i2c stop condition generation complete flag

< i2c stop condition generation complete flag

Definition at line 178 of file i2c_application.c.

Referenced by i2c_master_read_addr(), i2c_master_receive(), i2c_master_receive_dma(), i2c_master_receive_int(), i2c_master_transmit(), i2c_master_transmit_dma(), i2c_master_transmit_int(), i2c_master_write_addr(), i2c_memory_address_send(), i2c_memory_read(), i2c_memory_read_dma(), i2c_memory_read_int(), i2c_memory_write(), i2c_memory_write_dma(), i2c_memory_write_int(), i2c_slave_receive(), i2c_slave_receive_dma(), i2c_slave_receive_int(), i2c_slave_transmit(), i2c_slave_transmit_dma(), i2c_slave_transmit_int(), and i2c_slave_tx_isr_int().


AT32F403 Firmwary Library: AT32F403_middlewares_usbd_class

Modules | Variables
AT32F403_middlewares_usbd_class

Modules

USB_audio_class
usb device class audio demo
USB_audio_desc
usb device audio descriptor
USB_audio_hid_class
usb device class audio hid demo
USB_audio_hid_desc
usb device audio hid descriptor
USB_cdc_class
usb device class cdc demo
USB_cdc_desc
usb device cdc descriptor
USB_cdc_keyboard_class
usb device class composite cdc and keyboard
USB_cdc_keyboard_desc
usb device cdc keyboard descriptor
USB_cdc_msc_class
usb device class cdc msc demo
USB_cdc_msc_desc
usb device cdc msc descriptor
USB_msc_bot_scsi
usb device class mass storage demo
USB_custom_hid_class
usb device custom hid demo
USB_custom_hid_desc
usb device custom_hid descriptor
USB_hid_iap_class
usb device class hid iap demo
USB_hid_iap_desc
usb device hid_iap descriptor
USB_keyboard_class
usb device keyboard demo
USB_keyboard_desc
usb device keyboard descriptor
USB_mouse_class
usb device mouse demo
USB_mouse_desc
usb device mouse descriptor
USB_msc_class
usb device class msc demo
USB_msc_desc
usb device msc descriptor
USB_printer_class
usb device class printer demo
USB_printer_desc
usb device printer descriptor

Variables

uint8_t | cbd_typical_type::opcode
uint8_t | cbd_typical_type::lun
uint32_t | cbd_typical_type::address
uint8_t | cbd_typical_type::reserved1
uint32_t | cbd_typical_type::alloc_length
uint16_t | cbd_typical_type::reserved2
uint8_t | cbd_extended_type::opcode
uint8_t | cbd_extended_type::lun
uint32_t | cbd_extended_type::address
uint8_t | cbd_extended_type::reserved1
uint32_t | cbd_extended_type::alloc_length
uint16_t | cbd_extended_type::reserved2
uint32_t | cbw_type::dCBWSignature
uint32_t | cbw_type::dCBWTage
uint32_t | cbw_type::dCBWDataTransferLength
uint8_t | cbw_type::bmCBWFlags
uint8_t | cbw_type::bCBWLUN
uint8_t | cbw_type::bCBWCBLength
uint8_t | cbw_type::CBWCB [16]
uint32_t | csw_type::dCSWSignature
uint32_t | csw_type::dCSWTag
uint32_t | csw_type::dCSWDataResidue
uint32_t | csw_type::bCSWStatus
uint8_t | sense_type::err_code
uint8_t | sense_type::reserved1
uint8_t | sense_type::sense_key
uint32_t | sense_type::information
uint8_t | sense_type::as_length
uint32_t | sense_type::reserved2
uint8_t | sense_type::asc
uint8_t | sense_type::ascq
uint32_t | sense_type::reserved3
uint8_t | msc_type::msc_state
uint8_t | msc_type::bot_status
uint32_t | msc_type::max_lun
uint32_t | msc_type::blk_nbr [1]
uint32_t | msc_type::blk_size [1]
uint32_t | msc_type::blk_addr
uint32_t | msc_type::blk_len
uint32_t | msc_type::data_len
uint8_t | msc_type::data [4096]
uint32_t | msc_type::alt_setting
cbw_type msc_type::cbw_struct
csw_type msc_type::csw_struct
uint32_t | cdc_msc_struct_type::alt_setting
uint8_t | cdc_msc_struct_type::g_rx_buff [0x40]
uint8_t | cdc_msc_struct_type::g_cmd [0x08]
uint8_t | cdc_msc_struct_type::g_req
uint16_t | cdc_msc_struct_type::g_len
uint16_t | cdc_msc_struct_type::g_rxlen
__IO uint8_t | cdc_msc_struct_type::g_tx_completed
__IO uint8_t | cdc_msc_struct_type::g_rx_completed
linecoding_type cdc_msc_struct_type::linecoding
uint8_t | cdc_msc_struct_type::msc_state
uint8_t | cdc_msc_struct_type::bot_status
uint32_t | cdc_msc_struct_type::max_lun
uint32_t | cdc_msc_struct_type::blk_nbr [1]
uint32_t | cdc_msc_struct_type::blk_size [1]
uint64_t | cdc_msc_struct_type::blk_addr
uint32_t | cdc_msc_struct_type::blk_len
uint32_t | cdc_msc_struct_type::data_len
uint8_t | cdc_msc_struct_type::data [4096]
cbw_type cdc_msc_struct_type::cbw_struct
csw_type cdc_msc_struct_type::csw_struct

Detailed Description

Variable Documentation

◆ address [1/2]

uint32_t cbd_typical_type::address

Definition at line 164 of file cdc_msc_class.h.

◆ address [2/2]

uint32_t cbd_extended_type::address

Definition at line 177 of file cdc_msc_class.h.

◆ alloc_length [1/2]

uint32_t cbd_typical_type::alloc_length

Definition at line 166 of file cdc_msc_class.h.

◆ alloc_length [2/2]

uint32_t cbd_extended_type::alloc_length

Definition at line 179 of file cdc_msc_class.h.

◆ alt_setting [1/2]

uint32_t msc_type::alt_setting

Definition at line 240 of file cdc_msc_class.h.

Referenced by class_setup_handler().

◆ alt_setting [2/2]

uint32_t cdc_msc_struct_type::alt_setting

Definition at line 253 of file cdc_msc_class.h.

Referenced by cdc_class_setup_handler(), cdc_struct_init(), and msc_class_setup_handler().

◆ as_length

uint8_t sense_type::as_length

Definition at line 217 of file cdc_msc_class.h.

◆ asc

uint8_t sense_type::asc

Definition at line 219 of file cdc_msc_class.h.

◆ ascq

uint8_t sense_type::ascq

Definition at line 220 of file cdc_msc_class.h.

◆ bCBWCBLength

uint8_t cbw_type::bCBWCBLength

Definition at line 193 of file cdc_msc_class.h.

Referenced by bot_cbw_decode().

◆ bCBWLUN

uint8_t cbw_type::bCBWLUN

Definition at line 192 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), and bot_scsi_cmd_process().

◆ bCSWStatus

uint32_t csw_type::bCSWStatus

Definition at line 205 of file cdc_msc_class.h.

Referenced by bot_scsi_send_csw(), and bot_scsi_send_data().

◆ blk_addr [1/2]

uint32_t msc_type::blk_addr

Definition at line 234 of file cdc_msc_class.h.

Referenced by bot_scsi_read10(), bot_scsi_verify(), and bot_scsi_write10().

◆ blk_addr [2/2]

uint64_t cdc_msc_struct_type::blk_addr

Definition at line 269 of file cdc_msc_class.h.

Referenced by bot_scsi_read10(), bot_scsi_verify(), and bot_scsi_write10().

◆ blk_len [1/2]

uint32_t msc_type::blk_len

Definition at line 235 of file cdc_msc_class.h.

Referenced by bot_scsi_read10(), bot_scsi_verify(), and bot_scsi_write10().

◆ blk_len [2/2]

uint32_t cdc_msc_struct_type::blk_len

Definition at line 270 of file cdc_msc_class.h.

Referenced by bot_scsi_read10(), bot_scsi_verify(), and bot_scsi_write10().

◆ blk_nbr [1/2]

uint32_t msc_type::blk_nbr

Definition at line 231 of file cdc_msc_class.h.

Referenced by bot_scsi_capacity(), bot_scsi_check_address(), and bot_scsi_format_capacity().

◆ blk_nbr [2/2]

uint32_t cdc_msc_struct_type::blk_nbr[1]

Definition at line 266 of file cdc_msc_class.h.

Referenced by bot_scsi_capacity(), bot_scsi_check_address(), and bot_scsi_format_capacity().

◆ blk_size [1/2]

uint32_t msc_type::blk_size

Definition at line 232 of file cdc_msc_class.h.

Referenced by bot_scsi_capacity(), bot_scsi_format_capacity(), bot_scsi_read10(), and bot_scsi_write10().

◆ blk_size [2/2]

uint32_t cdc_msc_struct_type::blk_size[1]

Definition at line 267 of file cdc_msc_class.h.

Referenced by bot_scsi_capacity(), bot_scsi_format_capacity(), bot_scsi_read10(), and bot_scsi_write10().

◆ bmCBWFlags

uint8_t cbw_type::bmCBWFlags

Definition at line 191 of file cdc_msc_class.h.

Referenced by bot_scsi_read10(), bot_scsi_stall(), and bot_scsi_write10().

◆ bot_status [1/2]

uint8_t msc_type::bot_status

Definition at line 228 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_clear_feature(), bot_scsi_init(), bot_scsi_reset(), and bot_scsi_stall().

◆ bot_status [2/2]

uint8_t cdc_msc_struct_type::bot_status

Definition at line 263 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_clear_feature(), bot_scsi_init(), bot_scsi_reset(), and bot_scsi_stall().

◆ cbw_struct [1/2]

cbw_type msc_type::cbw_struct

Definition at line 242 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_cmd_process(), bot_scsi_init(), bot_scsi_inquiry(), bot_scsi_read10(), bot_scsi_request_sense(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_send_data(), bot_scsi_stall(), bot_scsi_test_unit(), bot_scsi_verify(), and bot_scsi_write10().

◆ cbw_struct [2/2]

cbw_type cdc_msc_struct_type::cbw_struct

Definition at line 275 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_cmd_process(), bot_scsi_init(), bot_scsi_inquiry(), bot_scsi_read10(), bot_scsi_request_sense(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_send_data(), bot_scsi_stall(), bot_scsi_test_unit(), bot_scsi_verify(), and bot_scsi_write10().

◆ CBWCB

uint8_t cbw_type::CBWCB

Definition at line 194 of file cdc_msc_class.h.

Referenced by bot_scsi_cmd_process(), bot_scsi_inquiry(), bot_scsi_read10(), bot_scsi_verify(), and bot_scsi_write10().

◆ csw_struct [1/2]

csw_type msc_type::csw_struct

Definition at line 243 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_init(), bot_scsi_read10(), bot_scsi_send_csw(), bot_scsi_send_data(), and bot_scsi_write10().

◆ csw_struct [2/2]

csw_type cdc_msc_struct_type::csw_struct

Definition at line 276 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_init(), bot_scsi_read10(), bot_scsi_send_csw(), bot_scsi_send_data(), and bot_scsi_write10().

◆ data [1/2]

uint8_t msc_type::data

Definition at line 238 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_capacity(), bot_scsi_format_capacity(), bot_scsi_inquiry(), bot_scsi_mode_sense10(), bot_scsi_mode_sense6(), bot_scsi_read10(), bot_scsi_request_sense(), and bot_scsi_write10().

◆ data [2/2]

uint8_t cdc_msc_struct_type::data[4096]

Definition at line 273 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_capacity(), bot_scsi_format_capacity(), bot_scsi_inquiry(), bot_scsi_mode_sense10(), bot_scsi_mode_sense6(), bot_scsi_read10(), bot_scsi_request_sense(), and bot_scsi_write10().

◆ data_len [1/2]

uint32_t msc_type::data_len

Definition at line 237 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_allow_medium_removal(), bot_scsi_capacity(), bot_scsi_format_capacity(), bot_scsi_inquiry(), bot_scsi_mode_sense10(), bot_scsi_mode_sense6(), bot_scsi_read10(), bot_scsi_request_sense(), bot_scsi_start_stop(), bot_scsi_test_unit(), and bot_scsi_verify().

◆ data_len [2/2]

uint32_t cdc_msc_struct_type::data_len

Definition at line 272 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_allow_medium_removal(), bot_scsi_capacity(), bot_scsi_format_capacity(), bot_scsi_inquiry(), bot_scsi_mode_sense10(), bot_scsi_mode_sense6(), bot_scsi_read10(), bot_scsi_request_sense(), bot_scsi_start_stop(), bot_scsi_test_unit(), and bot_scsi_verify().

◆ dCBWDataTransferLength

uint32_t cbw_type::dCBWDataTransferLength

Definition at line 190 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_inquiry(), bot_scsi_read10(), bot_scsi_request_sense(), bot_scsi_send_data(), bot_scsi_stall(), bot_scsi_test_unit(), and bot_scsi_write10().

◆ dCBWSignature

uint32_t cbw_type::dCBWSignature

Definition at line 188 of file cdc_msc_class.h.

Referenced by bot_cbw_decode().

◆ dCBWTage

uint32_t cbw_type::dCBWTage

Definition at line 189 of file cdc_msc_class.h.

Referenced by bot_cbw_decode().

◆ dCSWDataResidue

uint32_t csw_type::dCSWDataResidue

Definition at line 204 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_init(), bot_scsi_read10(), bot_scsi_send_data(), and bot_scsi_write10().

◆ dCSWSignature

uint32_t csw_type::dCSWSignature

Definition at line 202 of file cdc_msc_class.h.

Referenced by bot_scsi_init(), and bot_scsi_send_csw().

◆ dCSWTag

uint32_t csw_type::dCSWTag

Definition at line 203 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), and bot_scsi_init().

◆ err_code

uint8_t sense_type::err_code

Definition at line 213 of file cdc_msc_class.h.

◆ g_cmd

uint8_t cdc_msc_struct_type::g_cmd[0x08]

Definition at line 255 of file cdc_msc_class.h.

Referenced by cdc_class_setup_handler(), and class_ept0_rx_handler().

◆ g_len

uint16_t cdc_msc_struct_type::g_len

Definition at line 257 of file cdc_msc_class.h.

Referenced by cdc_class_setup_handler().

◆ g_req

uint8_t cdc_msc_struct_type::g_req

Definition at line 256 of file cdc_msc_class.h.

Referenced by cdc_class_setup_handler(), and class_ept0_rx_handler().

◆ g_rx_buff

uint8_t cdc_msc_struct_type::g_rx_buff[0x40]

Definition at line 254 of file cdc_msc_class.h.

Referenced by class_init_handler(), and usb_vcp_get_rxdata().

◆ g_rx_completed

__IO uint8_t cdc_msc_struct_type::g_rx_completed

Definition at line 258 of file cdc_msc_class.h.

Referenced by cdc_struct_init(), class_out_handler(), and usb_vcp_get_rxdata().

◆ g_rxlen

uint16_t cdc_msc_struct_type::g_rxlen

Definition at line 257 of file cdc_msc_class.h.

Referenced by class_out_handler(), and usb_vcp_get_rxdata().

◆ g_tx_completed

__IO uint8_t cdc_msc_struct_type::g_tx_completed

Definition at line 258 of file cdc_msc_class.h.

Referenced by cdc_struct_init(), class_in_handler(), and usb_vcp_send_data().

◆ information

uint32_t sense_type::information

Definition at line 216 of file cdc_msc_class.h.

◆ linecoding

linecoding_type cdc_msc_struct_type::linecoding

Definition at line 259 of file cdc_msc_class.h.

Referenced by cdc_struct_init(), and usb_vcp_cmd_process().

◆ lun [1/2]

uint8_t cbd_typical_type::lun

Definition at line 163 of file cdc_msc_class.h.

◆ lun [2/2]

uint8_t cbd_extended_type::lun

Definition at line 176 of file cdc_msc_class.h.

◆ max_lun [1/2]

uint32_t msc_type::max_lun

Definition at line 229 of file cdc_msc_class.h.

Referenced by bot_scsi_init(), bot_scsi_reset(), and class_setup_handler().

◆ max_lun [2/2]

uint32_t cdc_msc_struct_type::max_lun

Definition at line 264 of file cdc_msc_class.h.

Referenced by bot_scsi_init(), bot_scsi_reset(), and msc_class_setup_handler().

◆ msc_state [1/2]

uint8_t msc_type::msc_state

Definition at line 227 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_datain_handler(), bot_scsi_dataout_handler(), bot_scsi_init(), bot_scsi_read10(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_send_data(), and bot_scsi_write10().

◆ msc_state [2/2]

uint8_t cdc_msc_struct_type::msc_state

Definition at line 262 of file cdc_msc_class.h.

Referenced by bot_cbw_decode(), bot_scsi_datain_handler(), bot_scsi_dataout_handler(), bot_scsi_init(), bot_scsi_read10(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_send_data(), and bot_scsi_write10().

◆ opcode [1/2]

uint8_t cbd_typical_type::opcode

Definition at line 162 of file cdc_msc_class.h.

◆ opcode [2/2]

uint8_t cbd_extended_type::opcode

Definition at line 175 of file cdc_msc_class.h.

◆ reserved1 [1/3]

uint8_t cbd_typical_type::reserved1

Definition at line 165 of file cdc_msc_class.h.

◆ reserved1 [2/3]

uint8_t cbd_extended_type::reserved1

Definition at line 178 of file cdc_msc_class.h.

◆ reserved1 [3/3]

uint8_t sense_type::reserved1

Definition at line 214 of file cdc_msc_class.h.

◆ reserved2 [1/3]

uint16_t cbd_typical_type::reserved2

Definition at line 167 of file cdc_msc_class.h.

◆ reserved2 [2/3]

uint16_t cbd_extended_type::reserved2

Definition at line 180 of file cdc_msc_class.h.

◆ reserved2 [3/3]

uint32_t sense_type::reserved2

Definition at line 218 of file cdc_msc_class.h.

◆ reserved3

uint32_t sense_type::reserved3

Definition at line 221 of file cdc_msc_class.h.

◆ sense_key

uint8_t sense_type::sense_key

Definition at line 215 of file cdc_msc_class.h.


AT32F403 Firmwary Library: USB_audio_class

Modules
USB_audio_class
AT32F403_middlewares_usbd_class

usb device class audio demo More...

Modules

USB_audio_class_private_functions
USB_audio_class_definition
USB_device_audio_config_definition

Detailed Description

usb device class audio demo


AT32F403 Firmwary Library: USB_audio_class_private_functions

Functions | Variables
USB_audio_class_private_functions
AT32F403_middlewares_usbd_class » USB_audio_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
static void | audio_req_get_cur (void *udev, usb_setup_type *setup)
usb audio request get cur More...
static void | audio_req_set_cur (void *udev, usb_setup_type *setup)
usb audio request set cur More...
static void | audio_req_get_min (void *udev, usb_setup_type *setup)
usb audio request get min More...
static void | audio_req_get_max (void *udev, usb_setup_type *setup)
usb audio request get max More...
static void | audio_req_get_res (void *udev, usb_setup_type *setup)
usb audio request get res More...
static void | audio_get_interface (void *udev, usb_setup_type *setup)
usb audio get interface More...
static void | audio_set_interface (void *udev, usb_setup_type *setup)
usb audio set interface More...

Variables

usb_audio_type audio_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0}
usbd_class_handler audio_class_handler

Detailed Description

Function Documentation

◆ audio_get_interface()

static void audio_get_interface | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio get interface

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 598 of file audio_class.c.

Referenced by class_setup_handler().

◆ audio_req_get_cur()

static void audio_req_get_cur | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get cur

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 416 of file audio_class.c.

Referenced by class_setup_handler().

◆ audio_req_get_max()

static void audio_req_get_max | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get max

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 517 of file audio_class.c.

Referenced by class_setup_handler().

◆ audio_req_get_min()

static void audio_req_get_min | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get min

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 495 of file audio_class.c.

Referenced by class_setup_handler().

◆ audio_req_get_res()

static void audio_req_get_res | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get res

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 539 of file audio_class.c.

Referenced by class_setup_handler().

◆ audio_req_set_cur()

static void audio_req_set_cur | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request set cur

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 455 of file audio_class.c.

Referenced by class_setup_handler().

◆ audio_set_interface()

static void audio_set_interface | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio set interface

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 561 of file audio_class.c.

Referenced by class_setup_handler().

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 116 of file audio_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device endpoint 0 out status stage complete

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 236 of file audio_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device endpoint 0 in status stage complete

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 222 of file audio_class.c.

◆ class_event_handler()

usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device event handler

Parameters
udev | usb device core handler type
event | usb device event
Return values
status of usb_sts_type

Definition at line 380 of file audio_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device transmision complete handler

Parameters
udev | usb device core handler type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 307 of file audio_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb custom hid endpoint

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 82 of file audio_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device endpoint receive data

Parameters
udev | usb device core handler type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 338 of file audio_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | usb device core handler type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 139 of file audio_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device sof handler

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 365 of file audio_class.c.

Variable Documentation

◆ audio_class_handler

usbd_class_handler audio_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&audio_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: audio_class.c:365
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: audio_class.c:307
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: audio_class.c:116
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: audio_class.c:139
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: audio_class.c:222
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: audio_class.c:380
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: audio_class.c:236
audio_struct
usb_audio_type audio_struct
Definition: audio_class.c:60
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: audio_class.c:82
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: audio_class.c:338

Definition at line 63 of file audio_class.c.

Referenced by main().

◆ audio_struct

usb_audio_type audio_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0}

Definition at line 60 of file audio_class.c.


AT32F403 Firmwary Library: USB_audio_class_definition

Data Structures | Macros | Variables
USB_audio_class_definition
AT32F403_middlewares_usbd_class » USB_audio_class

Data Structures

struct usb_audio_type
usb audio control struct More...

Macros

#define | USBD_AUDIO_MIC_IN_EPT 0x81
endpoint define More...
#define | USBD_AUDIO_SPK_OUT_EPT 0x02
#define | USBD_AUDIO_FEEDBACK_EPT 0x83
#define | AUDIO_REMAIN_SIZE 40
endpoint support max size More...
#define | AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3
#define | FEEDBACK_REFRESH_TIME 0x8
#define | AUDIO_REQ_CONTROL_INTERFACE 0x01
request type define More...
#define | AUDIO_REQ_CONTROL_ENDPOINT 0x02
#define | AUDIO_REQ_CONTROL_MASK 0x03
#define | AUDIO_MUTE_CONTROL 0x01
audio set cur type define More...
#define | AUDIO_VOLUME_CONTROL 0x02
#define | AUDIO_FREQ_SET_CONTROL 0x03
#define | AUDIO_DESCRIPTOR_TYPE 0x21
audio descriptor type More...
#define | AUDIO_DESCRIPTOR_SIZE 0x09

Variables

usbd_class_handler audio_class_handler

Detailed Description

Macro Definition Documentation

◆ AUDIO_DESCRIPTOR_SIZE

#define AUDIO_DESCRIPTOR_SIZE 0x09

Definition at line 82 of file audio_class.h.

◆ AUDIO_DESCRIPTOR_TYPE

#define AUDIO_DESCRIPTOR_TYPE 0x21

audio descriptor type

Definition at line 81 of file audio_class.h.

◆ AUDIO_FEEDBACK_MAXPACKET_SIZE

#define AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3

Definition at line 62 of file audio_class.h.

◆ AUDIO_FREQ_SET_CONTROL

#define AUDIO_FREQ_SET_CONTROL 0x03

Definition at line 76 of file audio_class.h.

◆ AUDIO_MIC_IN_MAXPACKET_SIZE

#define AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)

Definition at line 60 of file audio_class.h.

◆ AUDIO_MUTE_CONTROL

#define AUDIO_MUTE_CONTROL 0x01

audio set cur type define

Definition at line 74 of file audio_class.h.

◆ AUDIO_REMAIN_SIZE

#define AUDIO_REMAIN_SIZE 40

endpoint support max size

Definition at line 59 of file audio_class.h.

◆ AUDIO_REQ_CONTROL_ENDPOINT

#define AUDIO_REQ_CONTROL_ENDPOINT 0x02

Definition at line 68 of file audio_class.h.

◆ AUDIO_REQ_CONTROL_INTERFACE

#define AUDIO_REQ_CONTROL_INTERFACE 0x01

request type define

Definition at line 67 of file audio_class.h.

◆ AUDIO_REQ_CONTROL_MASK

#define AUDIO_REQ_CONTROL_MASK 0x03

Definition at line 69 of file audio_class.h.

◆ AUDIO_SPK_OUT_MAXPACKET_SIZE

#define AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)

Definition at line 61 of file audio_class.h.

◆ AUDIO_VOLUME_CONTROL

#define AUDIO_VOLUME_CONTROL 0x02

Definition at line 75 of file audio_class.h.

◆ FEEDBACK_REFRESH_TIME

#define FEEDBACK_REFRESH_TIME 0x8

Definition at line 63 of file audio_class.h.

◆ USBD_AUDIO_FEEDBACK_EPT

#define USBD_AUDIO_FEEDBACK_EPT 0x83

Definition at line 54 of file audio_class.h.

◆ USBD_AUDIO_MIC_IN_EPT

#define USBD_AUDIO_MIC_IN_EPT 0x81

endpoint define

Definition at line 52 of file audio_class.h.

◆ USBD_AUDIO_SPK_OUT_EPT

#define USBD_AUDIO_SPK_OUT_EPT 0x02

Definition at line 53 of file audio_class.h.

Variable Documentation

◆ audio_class_handler

usbd_class_handler audio_class_handler
extern

Definition at line 63 of file audio_class.c.

Referenced by main().


AT32F403 Firmwary Library: usb_audio_type Struct Reference

Data Fields
usb_audio_type Struct Reference
AT32F403_middlewares_usbd_class » USB_audio_class » USB_audio_class_definition

usb audio control struct More...

#include <audio_class.h>

Data Fields

uint8_t | enpd
uint8_t | interface
uint8_t | request_no
uint8_t | spk_mute
uint8_t | mic_mute
uint16_t | spk_volume
uint16_t | mic_volume
uint32_t | spk_freq
uint32_t | mic_freq
uint16_t | spk_volume_limits [3]
uint16_t | mic_volume_limits [3]
uint8_t | audio_cmd
uint32_t | audio_cmd_len
uint32_t | spk_alt_setting
uint32_t | mic_alt_setting
uint8_t | g_audio_cur [64]
uint8_t | audio_spk_data [(16 *2 *(16/8)+40)]
uint8_t | audio_mic_data [(16 *2 *(16/8)+40)]
uint8_t | audio_feed_back [0x3+1]

Detailed Description

usb audio control struct

Definition at line 87 of file audio_class.h.

Field Documentation

◆ audio_cmd

uint8_t usb_audio_type::audio_cmd

Definition at line 101 of file audio_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ audio_cmd_len

uint32_t usb_audio_type::audio_cmd_len

Definition at line 102 of file audio_class.h.

Referenced by audio_req_set_cur().

◆ audio_feed_back

uint8_t usb_audio_type::audio_feed_back[0x3+1]

Definition at line 108 of file audio_class.h.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_mic_data

uint8_t usb_audio_type::audio_mic_data[(16 * 2 *( 16/8)+ 40)]

Definition at line 107 of file audio_class.h.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_spk_data

uint8_t usb_audio_type::audio_spk_data[(16 * 2 *( 16/8)+ 40)]

Definition at line 106 of file audio_class.h.

Referenced by audio_set_interface(), class_init_handler(), and class_out_handler().

◆ enpd

uint8_t usb_audio_type::enpd

Definition at line 89 of file audio_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ g_audio_cur

uint8_t usb_audio_type::g_audio_cur[64]

Definition at line 105 of file audio_class.h.

Referenced by audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), audio_req_set_cur(), and class_ept0_rx_handler().

◆ interface

uint8_t usb_audio_type::interface

Definition at line 90 of file audio_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ mic_alt_setting

uint32_t usb_audio_type::mic_alt_setting

Definition at line 104 of file audio_class.h.

Referenced by audio_get_interface(), audio_set_interface(), and class_event_handler().

◆ mic_freq

uint32_t usb_audio_type::mic_freq

Definition at line 97 of file audio_class.h.

Referenced by class_ept0_rx_handler().

◆ mic_mute

uint8_t usb_audio_type::mic_mute

Definition at line 93 of file audio_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ mic_volume

uint16_t usb_audio_type::mic_volume

Definition at line 95 of file audio_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ mic_volume_limits

uint16_t usb_audio_type::mic_volume_limits[3]

Definition at line 99 of file audio_class.h.

Referenced by audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), and class_ept0_rx_handler().

◆ request_no

uint8_t usb_audio_type::request_no

Definition at line 91 of file audio_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ spk_alt_setting

uint32_t usb_audio_type::spk_alt_setting

Definition at line 103 of file audio_class.h.

Referenced by audio_get_interface(), audio_set_interface(), and class_event_handler().

◆ spk_freq

uint32_t usb_audio_type::spk_freq

Definition at line 96 of file audio_class.h.

Referenced by class_ept0_rx_handler().

◆ spk_mute

uint8_t usb_audio_type::spk_mute

Definition at line 92 of file audio_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ spk_volume

uint16_t usb_audio_type::spk_volume

Definition at line 94 of file audio_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ spk_volume_limits

uint16_t usb_audio_type::spk_volume_limits[3]

Definition at line 98 of file audio_class.h.

Referenced by audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), and class_ept0_rx_handler().

The documentation for this struct was generated from the following file:
  • audio_class.h


AT32F403 Firmwary Library: USB_device_audio_config_definition

Macros
USB_device_audio_config_definition
AT32F403_middlewares_usbd_class » USB_audio_class

Macros

#define | AUDIO_SUPPORT_SPK 1
#define | AUDIO_SUPPORT_MIC 1
#define | AUDIO_SUPPORT_FEEDBACK 1
#define | AUDIO_SUPPORT_FREQ_16K 1
#define | AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/
#define | AUDIO_SUPPORT_FREQ
#define | AUDIO_FREQ_16K 16000
#define | AUDIO_FREQ_48K 48000 /*usb fifo not support*/
#define | AUDIO_BITW_16 16
#define | AUDIO_MIC_CHANEL_NUM 2
#define | AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SPK_CHANEL_NUM 2
#define | AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SUPPORT_MAX_FREQ 16
#define | AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K
#define | AUDIO_DEFAULT_BITW AUDIO_BITW_16

Detailed Description

Macro Definition Documentation

◆ AUDIO_BITW_16

#define AUDIO_BITW_16 16

Definition at line 59 of file audio/audio_conf.h.

◆ AUDIO_DEFAULT_BITW

#define AUDIO_DEFAULT_BITW AUDIO_BITW_16

Definition at line 70 of file audio/audio_conf.h.

◆ AUDIO_DEFAULT_FREQ

#define AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K

Definition at line 69 of file audio/audio_conf.h.

◆ AUDIO_FREQ_16K

#define AUDIO_FREQ_16K 16000

Definition at line 57 of file audio/audio_conf.h.

◆ AUDIO_FREQ_48K

#define AUDIO_FREQ_48K 48000 /*usb fifo not support*/

Definition at line 58 of file audio/audio_conf.h.

◆ AUDIO_MIC_CHANEL_NUM

#define AUDIO_MIC_CHANEL_NUM 2

Definition at line 61 of file audio/audio_conf.h.

◆ AUDIO_MIC_DEFAULT_BITW

#define AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16

Definition at line 62 of file audio/audio_conf.h.

◆ AUDIO_SPK_CHANEL_NUM

#define AUDIO_SPK_CHANEL_NUM 2

Definition at line 64 of file audio/audio_conf.h.

◆ AUDIO_SPK_DEFAULT_BITW

#define AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16

Definition at line 65 of file audio/audio_conf.h.

◆ AUDIO_SUPPORT_FEEDBACK

#define AUDIO_SUPPORT_FEEDBACK 1

Definition at line 47 of file audio/audio_conf.h.

◆ AUDIO_SUPPORT_FREQ

#define AUDIO_SUPPORT_FREQ
Value:
(AUDIO_SUPPORT_FREQ_16K + \
AUDIO_SUPPORT_FREQ_48K \
)
AUDIO_SUPPORT_FREQ_16K
#define AUDIO_SUPPORT_FREQ_16K
Definition: audio/audio_conf.h:49

Definition at line 53 of file audio/audio_conf.h.

◆ AUDIO_SUPPORT_FREQ_16K

#define AUDIO_SUPPORT_FREQ_16K 1

Definition at line 49 of file audio/audio_conf.h.

◆ AUDIO_SUPPORT_FREQ_48K

#define AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/

Definition at line 50 of file audio/audio_conf.h.

◆ AUDIO_SUPPORT_MAX_FREQ

#define AUDIO_SUPPORT_MAX_FREQ 16

Definition at line 68 of file audio/audio_conf.h.

◆ AUDIO_SUPPORT_MIC

#define AUDIO_SUPPORT_MIC 1

Definition at line 46 of file audio/audio_conf.h.

◆ AUDIO_SUPPORT_SPK

#define AUDIO_SUPPORT_SPK 1

Definition at line 45 of file audio/audio_conf.h.


AT32F403 Firmwary Library: USB_audio_desc

Modules
USB_audio_desc
AT32F403_middlewares_usbd_class

usb device audio descriptor More...

Modules

USB_audio_desc_private_functions
USB_audio_desc_definition

Detailed Description

usb device audio descriptor


AT32F403 Firmwary Library: USB_audio_desc_private_functions

Functions | Variables
USB_audio_desc_private_functions
AT32F403_middlewares_usbd_class » USB_audio_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler audio_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 623 of file audio_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 545 of file audio_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 525 of file audio_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 611 of file audio_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 565 of file audio_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 576 of file audio_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 555 of file audio_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 588 of file audio_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 535 of file audio_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 600 of file audio_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 503 of file audio_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 477 of file audio_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 451 of file audio_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5730 ),
HBYTE( 0x5730 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
0x01
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb configuration standard descriptor

Definition at line 58 of file audio_desc.c.

◆ audio_desc_handler

usbd_desc_handler audio_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: audio_desc.c:545
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: audio_desc.c:525
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: audio_desc.c:576
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: audio_desc.c:535
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: audio_desc.c:611
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: audio_desc.c:555
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: audio_desc.c:588
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: audio_desc.c:623
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: audio_desc.c:565
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: audio_desc.c:600

device descriptor handler structure

Definition at line 63 of file audio_desc.c.

Referenced by main().

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
( 0x12 + ((0x08 + ( 1 + 1 ) ) + ( 1 + 1 ) * 0x22) + + (0x31 + ( ( 1 + 0 ) ) * 3) + (0x31 + ( ( 1 + 0 ) ) * 3) + (9 * 1 ) ) ,
g_usbd_configuration
}

Definition at line 423 of file audio_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 416 of file audio_desc.c.

Referenced by get_device_descriptor().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 430 of file audio_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 437 of file audio_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 443 of file audio_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_audio_desc_definition

Macros | Variables
USB_audio_desc_definition
AT32F403_middlewares_usbd_class » USB_audio_desc

Macros

#define | AUDIO_BCD_NUM 0x0100
#define | USBD_AUDIO_VENDOR_ID 0x2E3C
#define | USBD_AUDIO_PRODUCT_ID 0x5730
#define | USBD_AUDIO_SIZ_STRING_LANGID 4
#define | USBD_AUDIO_SIZ_STRING_SERIAL 0x1A
#define | USBD_AUDIO_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_AUDIO_DESC_PRODUCT_STRING "AT32 Audio"
#define | USBD_AUDIO_DESC_CONFIGURATION_STRING "Audio Config"
#define | USBD_AUDIO_DESC_INTERFACE_STRING "Audio Interface"
#define | AUDIO_SUBCLASS_UNDEFINED 0x00
audio interface subclass codes More...
#define | AUDIO_SUBCLASS_AUDIOCONTROL 0x01
#define | AUDIO_SUBCLASS_AUDIOSTREAMING 0x02
#define | AUDIO_SUBCLASS_MIDISTREMING 0x03
#define | AUDIO_CS_INTERFACE 0x24
audio class-specific descriptor types More...
#define | AUDIO_CS_ENDPOINT 0x25
#define | AUDIO_CS_STRING 0x23
#define | AUDIO_CS_CONFIGURATION 0x22
#define | AUDIO_CS_DEVICE 0x21
#define | AUDIO_CS_UNDEFINED 0x20
#define | AUDIO_PROTOCOL_UNDEFINED 0x00
audio interface protocol codes More...
#define | AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00
audio class-specific ac interface descriptor subtypes More...
#define | AUDIO_AC_HEADER 0x01
#define | AUDIO_AC_INPUT_TERMINAL 0x02
#define | AUDIO_AC_OUTPUT_TERMINAL 0x03
#define | AUDIO_AC_MIXER_UNIT 0x04
#define | AUDIO_AC_SELECTOR_UNIT 0x05
#define | AUDIO_AC_FEATURE_UNIT 0x06
#define | AUDIO_AC_PROCESSING_UNIT 0x07
#define | AUDIO_AC_EXTENSION_UNIT 0x08
#define | AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00
audio class-specific as interface descriptor subtypes More...
#define | AUDIO_AS_GENERAL 0x01
#define | AUDIO_AS_FORMAT_TYPE 0x02
#define | AUDIO_AS_FORMAT_SPECIFIC 0x03
#define | AUDIO_REQUEST_CODE_UNDEFINED 0x00
audio class-specific request codes More...
#define | AUDIO_REQ_SET_CUR 0x01
#define | AUDIO_REQ_GET_CUR 0x81
#define | AUDIO_REQ_SET_MIN 0x02
#define | AUDIO_REQ_GET_MIN 0x82
#define | AUDIO_REQ_SET_MAX 0x03
#define | AUDIO_REQ_GET_MAX 0x83
#define | AUDIO_REQ_SET_RES 0x04
#define | AUDIO_REQ_GET_RES 0x84
#define | AUDIO_REQ_SET_MEM 0x05
#define | AUDIO_REQ_GET_MEM 0x85
#define | AUDIO_REQ_GET_STAT 0xFF
#define | AUDIO_FU_CONTROL_UNDEFINED 0x00
audio feature unit control selectors More...
#define | AUDIO_FU_MUTE_CONTROL 0x01
#define | AUDIO_FU_VOLUME_CONTROL 0x02
#define | AUDIO_FU_BASS_CONTROL 0x03
#define | AUDIO_FU_MID_CONTROL 0x04
#define | AUDIO_FU_TREBLE_CONTROL 0x05
#define | AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100
audio terminal type More...
#define | AUDIO_TERMINAL_TYPE_STREAMING 0x0101
#define | AUDIO_TERMINAL_TYPE_VENDOR 0x01FF
#define | AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200
#define | AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201
#define | AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300
#define | AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301
#define | AUDIO_FORMAT_TYPE_I 0x01
audio format type 1 More...
#define | AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)
audio interface config More...
#define | AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)
#define | AUDIO_MIC_INTERFACE 0x01
#define | AUDIO_SPK_INTERFACE 0x02
#define | AUDIO_INPUT_TERMINAL_SIZE 0x0C
audio interface descriptor size define More...
#define | AUDIO_OUTPUT_TERMINAL_SIZE 0x09
#define | AUDIO_FEATURE_UNIT_SIZE 0x0D
#define | AUDIO_MIC_INPUT_TERMINAL_ID 0x01
audio terminal id define More...
#define | AUDIO_MIC_FEATURE_UNIT_ID 0x02
#define | AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03
#define | AUDIO_SPK_INPUT_TERMINAL_ID 0x04
#define | AUDIO_SPK_FEATURE_UNIT_ID 0x05
#define | AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06
#define | AUDIO_MIC_INTERFACE_NUMBER 0x01
audio interface number More...
#define | AUDIO_SPK_INTERFACE_NUMBER 0x02
#define | AT32_AUDIO_FREQ_16K 16000
audio support freq More...
#define | AT32_AUDIO_FREQ_48K 48000
#define | AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio microphone freq and channel config More...
#define | AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM
#define | AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)
#define | AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio speaker freq and channel config More...
#define | AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM
#define | AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)
#define | AUDIO_BINTERVAL_TIME 0x01
#define | USBD_AUDIO_CONFIG_DESC_SIZE
#define | SAMPLE_FREQ(frq) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler audio_desc_handler
device descriptor handler structure More...

Detailed Description

Macro Definition Documentation

◆ AT32_AUDIO_FREQ_16K

#define AT32_AUDIO_FREQ_16K 16000

audio support freq

Definition at line 186 of file audio_desc.h.

◆ AT32_AUDIO_FREQ_48K

#define AT32_AUDIO_FREQ_48K 48000

Definition at line 187 of file audio_desc.h.

◆ AUDIO_AC_DESCRIPTOR_UNDEFINED

#define AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00

audio class-specific ac interface descriptor subtypes

Definition at line 88 of file audio_desc.h.

◆ AUDIO_AC_EXTENSION_UNIT

#define AUDIO_AC_EXTENSION_UNIT 0x08

Definition at line 96 of file audio_desc.h.

◆ AUDIO_AC_FEATURE_UNIT

#define AUDIO_AC_FEATURE_UNIT 0x06

Definition at line 94 of file audio_desc.h.

◆ AUDIO_AC_HEADER

#define AUDIO_AC_HEADER 0x01

Definition at line 89 of file audio_desc.h.

◆ AUDIO_AC_INPUT_TERMINAL

#define AUDIO_AC_INPUT_TERMINAL 0x02

Definition at line 90 of file audio_desc.h.

◆ AUDIO_AC_MIXER_UNIT

#define AUDIO_AC_MIXER_UNIT 0x04

Definition at line 92 of file audio_desc.h.

◆ AUDIO_AC_OUTPUT_TERMINAL

#define AUDIO_AC_OUTPUT_TERMINAL 0x03

Definition at line 91 of file audio_desc.h.

◆ AUDIO_AC_PROCESSING_UNIT

#define AUDIO_AC_PROCESSING_UNIT 0x07

Definition at line 95 of file audio_desc.h.

◆ AUDIO_AC_SELECTOR_UNIT

#define AUDIO_AC_SELECTOR_UNIT 0x05

Definition at line 93 of file audio_desc.h.

◆ AUDIO_AS_DESCRIPTOR_UNDEFINED

#define AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00

audio class-specific as interface descriptor subtypes

Definition at line 101 of file audio_desc.h.

◆ AUDIO_AS_FORMAT_SPECIFIC

#define AUDIO_AS_FORMAT_SPECIFIC 0x03

Definition at line 104 of file audio_desc.h.

◆ AUDIO_AS_FORMAT_TYPE

#define AUDIO_AS_FORMAT_TYPE 0x02

Definition at line 103 of file audio_desc.h.

◆ AUDIO_AS_GENERAL

#define AUDIO_AS_GENERAL 0x01

Definition at line 102 of file audio_desc.h.

◆ AUDIO_BCD_NUM

#define AUDIO_BCD_NUM 0x0100

Definition at line 49 of file audio_desc.h.

◆ AUDIO_BINTERVAL_TIME

#define AUDIO_BINTERVAL_TIME 0x01

Definition at line 203 of file audio_desc.h.

◆ AUDIO_CS_CONFIGURATION

#define AUDIO_CS_CONFIGURATION 0x22

Definition at line 76 of file audio_desc.h.

◆ AUDIO_CS_DEVICE

#define AUDIO_CS_DEVICE 0x21

Definition at line 77 of file audio_desc.h.

◆ AUDIO_CS_ENDPOINT

#define AUDIO_CS_ENDPOINT 0x25

Definition at line 74 of file audio_desc.h.

◆ AUDIO_CS_INTERFACE

#define AUDIO_CS_INTERFACE 0x24

audio class-specific descriptor types

Definition at line 73 of file audio_desc.h.

◆ AUDIO_CS_STRING

#define AUDIO_CS_STRING 0x23

Definition at line 75 of file audio_desc.h.

◆ AUDIO_CS_UNDEFINED

#define AUDIO_CS_UNDEFINED 0x20

Definition at line 78 of file audio_desc.h.

◆ AUDIO_FEATURE_UNIT_SIZE

#define AUDIO_FEATURE_UNIT_SIZE 0x0D

Definition at line 161 of file audio_desc.h.

◆ AUDIO_FORMAT_TYPE_I

#define AUDIO_FORMAT_TYPE_I 0x01

audio format type 1

Definition at line 146 of file audio_desc.h.

◆ AUDIO_FU_BASS_CONTROL

#define AUDIO_FU_BASS_CONTROL 0x03

Definition at line 128 of file audio_desc.h.

◆ AUDIO_FU_CONTROL_UNDEFINED

#define AUDIO_FU_CONTROL_UNDEFINED 0x00

audio feature unit control selectors

Definition at line 125 of file audio_desc.h.

◆ AUDIO_FU_MID_CONTROL

#define AUDIO_FU_MID_CONTROL 0x04

Definition at line 129 of file audio_desc.h.

◆ AUDIO_FU_MUTE_CONTROL

#define AUDIO_FU_MUTE_CONTROL 0x01

Definition at line 126 of file audio_desc.h.

◆ AUDIO_FU_TREBLE_CONTROL

#define AUDIO_FU_TREBLE_CONTROL 0x05

Definition at line 130 of file audio_desc.h.

◆ AUDIO_FU_VOLUME_CONTROL

#define AUDIO_FU_VOLUME_CONTROL 0x02

Definition at line 127 of file audio_desc.h.

◆ AUDIO_INPUT_TERMINAL_MICROPHONE

#define AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201

Definition at line 139 of file audio_desc.h.

◆ AUDIO_INPUT_TERMINAL_SIZE

#define AUDIO_INPUT_TERMINAL_SIZE 0x0C

audio interface descriptor size define

Definition at line 159 of file audio_desc.h.

◆ AUDIO_INPUT_TERMINAL_UNDEFINED

#define AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200

Definition at line 138 of file audio_desc.h.

◆ AUDIO_INTERFACE_LEN

#define AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)

Definition at line 152 of file audio_desc.h.

◆ AUDIO_INTERFACE_NUM

#define AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)

audio interface config

Definition at line 151 of file audio_desc.h.

◆ AUDIO_MIC_BITW

#define AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)

Definition at line 194 of file audio_desc.h.

◆ AUDIO_MIC_CHR

#define AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM

Definition at line 193 of file audio_desc.h.

◆ AUDIO_MIC_FEATURE_UNIT_ID

#define AUDIO_MIC_FEATURE_UNIT_ID 0x02

Definition at line 167 of file audio_desc.h.

◆ AUDIO_MIC_FREQ_SIZE

#define AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)

audio microphone freq and channel config

Definition at line 192 of file audio_desc.h.

◆ AUDIO_MIC_INPUT_TERMINAL_ID

#define AUDIO_MIC_INPUT_TERMINAL_ID 0x01

audio terminal id define

Definition at line 166 of file audio_desc.h.

◆ AUDIO_MIC_INTERFACE

#define AUDIO_MIC_INTERFACE 0x01

Definition at line 153 of file audio_desc.h.

◆ AUDIO_MIC_INTERFACE_NUMBER

#define AUDIO_MIC_INTERFACE_NUMBER 0x01

audio interface number

Definition at line 176 of file audio_desc.h.

◆ AUDIO_MIC_OUTPUT_TERMINAL_ID

#define AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03

Definition at line 168 of file audio_desc.h.

◆ AUDIO_OUTPUT_TERMINAL_SIZE

#define AUDIO_OUTPUT_TERMINAL_SIZE 0x09

Definition at line 160 of file audio_desc.h.

◆ AUDIO_OUTPUT_TERMINAL_SPEAKER

#define AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301

Definition at line 141 of file audio_desc.h.

◆ AUDIO_OUTPUT_TERMINAL_UNDEFINED

#define AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300

Definition at line 140 of file audio_desc.h.

◆ AUDIO_PROTOCOL_UNDEFINED

#define AUDIO_PROTOCOL_UNDEFINED 0x00

audio interface protocol codes

Definition at line 83 of file audio_desc.h.

◆ AUDIO_REQ_GET_CUR

#define AUDIO_REQ_GET_CUR 0x81

Definition at line 111 of file audio_desc.h.

◆ AUDIO_REQ_GET_MAX

#define AUDIO_REQ_GET_MAX 0x83

Definition at line 115 of file audio_desc.h.

◆ AUDIO_REQ_GET_MEM

#define AUDIO_REQ_GET_MEM 0x85

Definition at line 119 of file audio_desc.h.

◆ AUDIO_REQ_GET_MIN

#define AUDIO_REQ_GET_MIN 0x82

Definition at line 113 of file audio_desc.h.

◆ AUDIO_REQ_GET_RES

#define AUDIO_REQ_GET_RES 0x84

Definition at line 117 of file audio_desc.h.

◆ AUDIO_REQ_GET_STAT

#define AUDIO_REQ_GET_STAT 0xFF

Definition at line 120 of file audio_desc.h.

◆ AUDIO_REQ_SET_CUR

#define AUDIO_REQ_SET_CUR 0x01

Definition at line 110 of file audio_desc.h.

◆ AUDIO_REQ_SET_MAX

#define AUDIO_REQ_SET_MAX 0x03

Definition at line 114 of file audio_desc.h.

◆ AUDIO_REQ_SET_MEM

#define AUDIO_REQ_SET_MEM 0x05

Definition at line 118 of file audio_desc.h.

◆ AUDIO_REQ_SET_MIN

#define AUDIO_REQ_SET_MIN 0x02

Definition at line 112 of file audio_desc.h.

◆ AUDIO_REQ_SET_RES

#define AUDIO_REQ_SET_RES 0x04

Definition at line 116 of file audio_desc.h.

◆ AUDIO_REQUEST_CODE_UNDEFINED

#define AUDIO_REQUEST_CODE_UNDEFINED 0x00

audio class-specific request codes

Definition at line 109 of file audio_desc.h.

◆ AUDIO_SPK_BITW

#define AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)

Definition at line 201 of file audio_desc.h.

◆ AUDIO_SPK_CHR

#define AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM

Definition at line 200 of file audio_desc.h.

◆ AUDIO_SPK_FEATURE_UNIT_ID

#define AUDIO_SPK_FEATURE_UNIT_ID 0x05

Definition at line 170 of file audio_desc.h.

◆ AUDIO_SPK_FREQ_SIZE

#define AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)

audio speaker freq and channel config

Definition at line 199 of file audio_desc.h.

◆ AUDIO_SPK_INPUT_TERMINAL_ID

#define AUDIO_SPK_INPUT_TERMINAL_ID 0x04

Definition at line 169 of file audio_desc.h.

◆ AUDIO_SPK_INTERFACE

#define AUDIO_SPK_INTERFACE 0x02

Definition at line 154 of file audio_desc.h.

◆ AUDIO_SPK_INTERFACE_NUMBER

#define AUDIO_SPK_INTERFACE_NUMBER 0x02

Definition at line 178 of file audio_desc.h.

◆ AUDIO_SPK_OUTPUT_TERMINAL_ID

#define AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06

Definition at line 171 of file audio_desc.h.

◆ AUDIO_SUBCLASS_AUDIOCONTROL

#define AUDIO_SUBCLASS_AUDIOCONTROL 0x01

Definition at line 66 of file audio_desc.h.

◆ AUDIO_SUBCLASS_AUDIOSTREAMING

#define AUDIO_SUBCLASS_AUDIOSTREAMING 0x02

Definition at line 67 of file audio_desc.h.

◆ AUDIO_SUBCLASS_MIDISTREMING

#define AUDIO_SUBCLASS_MIDISTREMING 0x03

Definition at line 68 of file audio_desc.h.

◆ AUDIO_SUBCLASS_UNDEFINED

#define AUDIO_SUBCLASS_UNDEFINED 0x00

audio interface subclass codes

Definition at line 65 of file audio_desc.h.

◆ AUDIO_TERMINAL_TYPE_STREAMING

#define AUDIO_TERMINAL_TYPE_STREAMING 0x0101

Definition at line 136 of file audio_desc.h.

◆ AUDIO_TERMINAL_TYPE_UNDEFINED

#define AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100

audio terminal type

Definition at line 135 of file audio_desc.h.

◆ AUDIO_TERMINAL_TYPE_VENDOR

#define AUDIO_TERMINAL_TYPE_VENDOR 0x01FF

Definition at line 137 of file audio_desc.h.

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

Definition at line 213 of file audio_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 214 of file audio_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 215 of file audio_desc.h.

◆ SAMPLE_FREQ

#define SAMPLE_FREQ ( frq ) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))

Definition at line 211 of file audio_desc.h.

◆ USBD_AUDIO_CONFIG_DESC_SIZE

#define USBD_AUDIO_CONFIG_DESC_SIZE
Value:
( 0x12 + AUDIO_INTERFACE_LEN + \
+ (0x31 + AUDIO_SPK_FREQ_SIZE * 3) \
+ (0x31 + AUDIO_MIC_FREQ_SIZE * 3) \
+ (9 * AUDIO_SUPPORT_FEEDBACK) \
)
AUDIO_MIC_FREQ_SIZE
#define AUDIO_MIC_FREQ_SIZE
audio microphone freq and channel config
Definition: audio_desc.h:192
AUDIO_SPK_FREQ_SIZE
#define AUDIO_SPK_FREQ_SIZE
audio speaker freq and channel config
Definition: audio_desc.h:199
AUDIO_INTERFACE_LEN
#define AUDIO_INTERFACE_LEN
Definition: audio_desc.h:152
AUDIO_SUPPORT_FEEDBACK
#define AUDIO_SUPPORT_FEEDBACK
Definition: audio/audio_conf.h:47

Definition at line 206 of file audio_desc.h.

◆ USBD_AUDIO_DESC_CONFIGURATION_STRING

#define USBD_AUDIO_DESC_CONFIGURATION_STRING "Audio Config"

Definition at line 59 of file audio_desc.h.

◆ USBD_AUDIO_DESC_INTERFACE_STRING

#define USBD_AUDIO_DESC_INTERFACE_STRING "Audio Interface"

Definition at line 60 of file audio_desc.h.

◆ USBD_AUDIO_DESC_MANUFACTURER_STRING

#define USBD_AUDIO_DESC_MANUFACTURER_STRING "Artery"

Definition at line 57 of file audio_desc.h.

◆ USBD_AUDIO_DESC_PRODUCT_STRING

#define USBD_AUDIO_DESC_PRODUCT_STRING "AT32 Audio"

Definition at line 58 of file audio_desc.h.

◆ USBD_AUDIO_PRODUCT_ID

#define USBD_AUDIO_PRODUCT_ID 0x5730

Definition at line 52 of file audio_desc.h.

◆ USBD_AUDIO_SIZ_STRING_LANGID

#define USBD_AUDIO_SIZ_STRING_LANGID 4

Definition at line 54 of file audio_desc.h.

◆ USBD_AUDIO_SIZ_STRING_SERIAL

#define USBD_AUDIO_SIZ_STRING_SERIAL 0x1A

Definition at line 55 of file audio_desc.h.

◆ USBD_AUDIO_VENDOR_ID

#define USBD_AUDIO_VENDOR_ID 0x2E3C

Definition at line 51 of file audio_desc.h.

Variable Documentation

◆ audio_desc_handler

usbd_desc_handler audio_desc_handler
extern

device descriptor handler structure

Definition at line 63 of file audio_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_audio_hid_class

Modules
USB_audio_hid_class
AT32F403_middlewares_usbd_class

usb device class audio hid demo More...

Modules

USB_device_audio_hid_config_definition
USB_audio_hid_class_private_functions
USB_audio_hid_class_definition

Detailed Description

usb device class audio hid demo


AT32F403 Firmwary Library: USB_device_audio_hid_config_definition

Macros
USB_device_audio_hid_config_definition
AT32F403_middlewares_usbd_class » USB_audio_hid_class

Macros

#define | AUDIO_SUPPORT_SPK 1
#define | AUDIO_SUPPORT_MIC 1
#define | AUDIO_SUPPORT_FEEDBACK 1
#define | AUDIO_SUPPORT_FREQ_16K 1
#define | AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/
#define | AUDIO_SUPPORT_FREQ
#define | AUDIO_FREQ_16K 16000
#define | AUDIO_FREQ_48K 48000 /*usb fifo not support*/
#define | AUDIO_BITW_16 16
#define | AUDIO_MIC_CHANEL_NUM 2
#define | AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SPK_CHANEL_NUM 2
#define | AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SUPPORT_MAX_FREQ 16
#define | AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K
#define | AUDIO_DEFAULT_BITW AUDIO_BITW_16

Detailed Description

Macro Definition Documentation

◆ AUDIO_BITW_16

#define AUDIO_BITW_16 16

Definition at line 59 of file audio_hid/audio_conf.h.

◆ AUDIO_DEFAULT_BITW

#define AUDIO_DEFAULT_BITW AUDIO_BITW_16

Definition at line 70 of file audio_hid/audio_conf.h.

◆ AUDIO_DEFAULT_FREQ

#define AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K

Definition at line 69 of file audio_hid/audio_conf.h.

◆ AUDIO_FREQ_16K

#define AUDIO_FREQ_16K 16000

Definition at line 57 of file audio_hid/audio_conf.h.

◆ AUDIO_FREQ_48K

#define AUDIO_FREQ_48K 48000 /*usb fifo not support*/

Definition at line 58 of file audio_hid/audio_conf.h.

◆ AUDIO_MIC_CHANEL_NUM

#define AUDIO_MIC_CHANEL_NUM 2

Definition at line 61 of file audio_hid/audio_conf.h.

◆ AUDIO_MIC_DEFAULT_BITW

#define AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16

Definition at line 62 of file audio_hid/audio_conf.h.

◆ AUDIO_SPK_CHANEL_NUM

#define AUDIO_SPK_CHANEL_NUM 2

Definition at line 64 of file audio_hid/audio_conf.h.

◆ AUDIO_SPK_DEFAULT_BITW

#define AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16

Definition at line 65 of file audio_hid/audio_conf.h.

◆ AUDIO_SUPPORT_FEEDBACK

#define AUDIO_SUPPORT_FEEDBACK 1

Definition at line 47 of file audio_hid/audio_conf.h.

◆ AUDIO_SUPPORT_FREQ

#define AUDIO_SUPPORT_FREQ
Value:
(AUDIO_SUPPORT_FREQ_16K + \
AUDIO_SUPPORT_FREQ_48K \
)
AUDIO_SUPPORT_FREQ_16K
#define AUDIO_SUPPORT_FREQ_16K
Definition: audio_hid/audio_conf.h:49

Definition at line 53 of file audio_hid/audio_conf.h.

◆ AUDIO_SUPPORT_FREQ_16K

#define AUDIO_SUPPORT_FREQ_16K 1

Definition at line 49 of file audio_hid/audio_conf.h.

◆ AUDIO_SUPPORT_FREQ_48K

#define AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/

Definition at line 50 of file audio_hid/audio_conf.h.

◆ AUDIO_SUPPORT_MAX_FREQ

#define AUDIO_SUPPORT_MAX_FREQ 16

Definition at line 68 of file audio_hid/audio_conf.h.

◆ AUDIO_SUPPORT_MIC

#define AUDIO_SUPPORT_MIC 1

Definition at line 46 of file audio_hid/audio_conf.h.

◆ AUDIO_SUPPORT_SPK

#define AUDIO_SUPPORT_SPK 1

Definition at line 45 of file audio_hid/audio_conf.h.


AT32F403 Firmwary Library: USB_audio_hid_class_private_functions

Functions | Variables
USB_audio_hid_class_private_functions
AT32F403_middlewares_usbd_class » USB_audio_hid_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
static void | audio_req_get_cur (void *udev, usb_setup_type *setup)
usb audio request get cur More...
static void | audio_req_set_cur (void *udev, usb_setup_type *setup)
usb audio request set cur More...
static void | audio_req_get_min (void *udev, usb_setup_type *setup)
usb audio request get min More...
static void | audio_req_get_max (void *udev, usb_setup_type *setup)
usb audio request get max More...
static void | audio_req_get_res (void *udev, usb_setup_type *setup)
usb audio request get res More...
static void | audio_get_interface (void *udev, usb_setup_type *setup)
usb audio get interface More...
static void | audio_set_interface (void *udev, usb_setup_type *setup)
usb audio set interface More...
static void | usb_hid_buf_process (void *udev, uint8_t *report, uint16_t len)
usb device report function More...
usb_sts_type | class_audio_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
usb_sts_type | class_hid_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
usb_sts_type | audio_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

usb_audio_hid_type audio_hid_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0}
usbd_class_handler audio_hid_class_handler

Detailed Description

Function Documentation

◆ audio_get_interface()

static void audio_get_interface | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio get interface

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 756 of file audio_hid_class.c.

Referenced by class_audio_setup_handler().

◆ audio_hid_class_send_report()

usb_sts_type audio_hid_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 778 of file audio_hid_class.c.

◆ audio_req_get_cur()

static void audio_req_get_cur | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get cur

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 574 of file audio_hid_class.c.

Referenced by class_audio_setup_handler().

◆ audio_req_get_max()

static void audio_req_get_max | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get max

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 675 of file audio_hid_class.c.

Referenced by class_audio_setup_handler().

◆ audio_req_get_min()

static void audio_req_get_min | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get min

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 653 of file audio_hid_class.c.

Referenced by class_audio_setup_handler().

◆ audio_req_get_res()

static void audio_req_get_res | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request get res

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 697 of file audio_hid_class.c.

Referenced by class_audio_setup_handler().

◆ audio_req_set_cur()

static void audio_req_set_cur | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio request set cur

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 613 of file audio_hid_class.c.

Referenced by class_audio_setup_handler().

◆ audio_set_interface()

static void audio_set_interface | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb audio set interface

Parameters
udev | usb device core handler type
setup | setup class
Return values
none

Definition at line 719 of file audio_hid_class.c.

Referenced by class_audio_setup_handler().

◆ class_audio_setup_handler()

usb_sts_type class_audio_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |

usb device class setup request handler

Parameters
udev | usb device core handler type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 157 of file audio_hid_class.c.

Referenced by class_setup_handler().

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 126 of file audio_hid_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device endpoint 0 out status stage complete

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 367 of file audio_hid_class.c.

◆ class_ept0_tx_handler()

usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device endpoint 0 in status stage complete

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 353 of file audio_hid_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device event handler

Parameters
udev | usb device core handler type
event | usb device event
Return values
status of usb_sts_type

Definition at line 538 of file audio_hid_class.c.

◆ class_hid_setup_handler()

usb_sts_type class_hid_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |

usb device class setup request handler

Parameters
udev | usb device core handler type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 243 of file audio_hid_class.c.

Referenced by class_setup_handler().

◆ class_in_handler()

usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device transmision complete handler

Parameters
udev | usb device core handler type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 453 of file audio_hid_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb custom hid endpoint

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 81 of file audio_hid_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device endpoint receive data

Parameters
udev | usb device core handler type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 489 of file audio_hid_class.c.

◆ class_setup_handler()

usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | usb device core handler type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 322 of file audio_hid_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device sof handler

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 523 of file audio_hid_class.c.

◆ usb_hid_buf_process()

static void usb_hid_buf_process | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |
static

usb device report function

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
none

Definition at line 797 of file audio_hid_class.c.

Referenced by class_ept0_rx_handler(), and class_out_handler().

Variable Documentation

◆ audio_hid_class_handler

usbd_class_handler audio_hid_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&audio_hid_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: audio_hid_class.c:523
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: audio_hid_class.c:126
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: audio_hid_class.c:367
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: audio_hid_class.c:538
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: audio_hid_class.c:322
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: audio_hid_class.c:81
audio_hid_struct
usb_audio_hid_type audio_hid_struct
Definition: audio_hid_class.c:60
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: audio_hid_class.c:353
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: audio_hid_class.c:489
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: audio_hid_class.c:453

Definition at line 62 of file audio_hid_class.c.

◆ audio_hid_struct

usb_audio_hid_type audio_hid_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0}

Definition at line 60 of file audio_hid_class.c.


AT32F403 Firmwary Library: USB_audio_hid_class_definition

Data Structures | Macros | Functions | Variables
USB_audio_hid_class_definition
AT32F403_middlewares_usbd_class » USB_audio_hid_class

Data Structures

struct usb_audio_hid_type
usb audio control struct More...

Macros

#define | USBD_AUHID_AUDIO_MIC_IN_EPT 0x81
endpoint define More...
#define | USBD_AUHID_AUDIO_SPK_OUT_EPT 0x02
#define | USBD_AUHID_AUDIO_FEEDBACK_EPT 0x83
#define | USBD_AUHID_HID_IN_EPT 0x84
usb custom hid use endpoint define More...
#define | USBD_AUHID_HID_OUT_EPT 0x05
#define | USBD_AUHID_IN_MAXPACKET_SIZE 0x40
usb custom hid in and out max packet size define More...
#define | USBD_AUHID_OUT_MAXPACKET_SIZE 0x40
#define | AUDIO_REMAIN_SIZE 40
endpoint support max size More...
#define | AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3
#define | FEEDBACK_REFRESH_TIME 0x8
#define | AUDIO_REQ_CONTROL_INTERFACE 0x01
request type define More...
#define | AUDIO_REQ_CONTROL_ENDPOINT 0x02
#define | AUDIO_REQ_CONTROL_MASK 0x03
#define | AUDIO_MUTE_CONTROL 0x01
audio set cur type define More...
#define | AUDIO_MUTE_CONTROL 0x01
audio set cur type define More...
#define | AUDIO_VOLUME_CONTROL 0x02
#define | AUDIO_VOLUME_CONTROL 0x02
#define | AUDIO_FREQ_SET_CONTROL 0x03
#define | AUDIO_FREQ_SET_CONTROL 0x03
#define | AUDIO_DESCRIPTOR_TYPE 0x21
audio descriptor type More...
#define | AUDIO_DESCRIPTOR_SIZE 0x09

Functions

usb_sts_type audio_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

usbd_class_handler audio_hid_class_handler

Detailed Description

Macro Definition Documentation

◆ AUDIO_DESCRIPTOR_SIZE

#define AUDIO_DESCRIPTOR_SIZE 0x09

Definition at line 105 of file audio_hid_class.h.

◆ AUDIO_DESCRIPTOR_TYPE

#define AUDIO_DESCRIPTOR_TYPE 0x21

audio descriptor type

Definition at line 104 of file audio_hid_class.h.

◆ AUDIO_FEEDBACK_MAXPACKET_SIZE

#define AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3

Definition at line 74 of file audio_hid_class.h.

◆ AUDIO_FREQ_SET_CONTROL [1/2]

#define AUDIO_FREQ_SET_CONTROL 0x03

Definition at line 99 of file audio_hid_class.h.

◆ AUDIO_FREQ_SET_CONTROL [2/2]

#define AUDIO_FREQ_SET_CONTROL 0x03

Definition at line 99 of file audio_hid_class.h.

◆ AUDIO_MIC_IN_MAXPACKET_SIZE

#define AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)

Definition at line 72 of file audio_hid_class.h.

◆ AUDIO_MUTE_CONTROL [1/2]

#define AUDIO_MUTE_CONTROL 0x01

audio set cur type define

audio descriptor type

audio set cur type define

Definition at line 97 of file audio_hid_class.h.

◆ AUDIO_MUTE_CONTROL [2/2]

#define AUDIO_MUTE_CONTROL 0x01

audio set cur type define

audio descriptor type

audio set cur type define

Definition at line 97 of file audio_hid_class.h.

◆ AUDIO_REMAIN_SIZE

#define AUDIO_REMAIN_SIZE 40

endpoint support max size

Definition at line 71 of file audio_hid_class.h.

◆ AUDIO_REQ_CONTROL_ENDPOINT

#define AUDIO_REQ_CONTROL_ENDPOINT 0x02

Definition at line 80 of file audio_hid_class.h.

◆ AUDIO_REQ_CONTROL_INTERFACE

#define AUDIO_REQ_CONTROL_INTERFACE 0x01

request type define

Definition at line 79 of file audio_hid_class.h.

◆ AUDIO_REQ_CONTROL_MASK

#define AUDIO_REQ_CONTROL_MASK 0x03

Definition at line 81 of file audio_hid_class.h.

◆ AUDIO_SPK_OUT_MAXPACKET_SIZE

#define AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)

Definition at line 73 of file audio_hid_class.h.

◆ AUDIO_VOLUME_CONTROL [1/2]

#define AUDIO_VOLUME_CONTROL 0x02

Definition at line 98 of file audio_hid_class.h.

◆ AUDIO_VOLUME_CONTROL [2/2]

#define AUDIO_VOLUME_CONTROL 0x02

Definition at line 98 of file audio_hid_class.h.

◆ FEEDBACK_REFRESH_TIME

#define FEEDBACK_REFRESH_TIME 0x8

Definition at line 75 of file audio_hid_class.h.

◆ USBD_AUHID_AUDIO_FEEDBACK_EPT

#define USBD_AUHID_AUDIO_FEEDBACK_EPT 0x83

Definition at line 54 of file audio_hid_class.h.

◆ USBD_AUHID_AUDIO_MIC_IN_EPT

#define USBD_AUHID_AUDIO_MIC_IN_EPT 0x81

endpoint define

Definition at line 52 of file audio_hid_class.h.

◆ USBD_AUHID_AUDIO_SPK_OUT_EPT

#define USBD_AUHID_AUDIO_SPK_OUT_EPT 0x02

Definition at line 53 of file audio_hid_class.h.

◆ USBD_AUHID_HID_IN_EPT

#define USBD_AUHID_HID_IN_EPT 0x84

usb custom hid use endpoint define

Definition at line 59 of file audio_hid_class.h.

◆ USBD_AUHID_HID_OUT_EPT

#define USBD_AUHID_HID_OUT_EPT 0x05

Definition at line 60 of file audio_hid_class.h.

◆ USBD_AUHID_IN_MAXPACKET_SIZE

#define USBD_AUHID_IN_MAXPACKET_SIZE 0x40

usb custom hid in and out max packet size define

Definition at line 65 of file audio_hid_class.h.

◆ USBD_AUHID_OUT_MAXPACKET_SIZE

#define USBD_AUHID_OUT_MAXPACKET_SIZE 0x40

Definition at line 66 of file audio_hid_class.h.

Function Documentation

◆ audio_hid_class_send_report()

usb_sts_type audio_hid_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 778 of file audio_hid_class.c.

Variable Documentation

◆ audio_hid_class_handler

usbd_class_handler audio_hid_class_handler
extern

Definition at line 62 of file audio_hid_class.c.


AT32F403 Firmwary Library: usb_audio_hid_type Struct Reference

Data Fields
usb_audio_hid_type Struct Reference
AT32F403_middlewares_usbd_class » USB_audio_hid_class » USB_audio_hid_class_definition

usb audio control struct More...

#include <audio_hid_class.h>

Data Fields

uint8_t | enpd
uint8_t | interface
uint8_t | request_no
uint8_t | spk_mute
uint8_t | mic_mute
uint16_t | spk_volume
uint16_t | mic_volume
uint32_t | spk_freq
uint32_t | mic_freq
uint16_t | spk_volume_limits [3]
uint16_t | mic_volume_limits [3]
uint8_t | audio_cmd
uint32_t | audio_cmd_len
uint32_t | spk_alt_setting
uint32_t | mic_alt_setting
uint8_t | g_audio_cur [64]
uint8_t | audio_spk_data [(16 *2 *(16/8)+40)]
uint8_t | audio_mic_data [(16 *2 *(16/8)+40)]
uint8_t | audio_feed_back [0x3+1]
uint32_t | hid_protocol
uint32_t | hid_set_idle
uint32_t | alt_setting
uint8_t | hid_set_report [64]
uint8_t | g_rxhid_buff [0x40]
uint8_t | g_txhid_buff [0x40]
uint8_t | hid_state

Detailed Description

usb audio control struct

Definition at line 110 of file audio_hid_class.h.

Field Documentation

◆ alt_setting

uint32_t usb_audio_hid_type::alt_setting

Definition at line 137 of file audio_hid_class.h.

Referenced by class_hid_setup_handler().

◆ audio_cmd

uint8_t usb_audio_hid_type::audio_cmd

Definition at line 124 of file audio_hid_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ audio_cmd_len

uint32_t usb_audio_hid_type::audio_cmd_len

Definition at line 125 of file audio_hid_class.h.

Referenced by audio_req_set_cur().

◆ audio_feed_back

uint8_t usb_audio_hid_type::audio_feed_back[0x3+1]

Definition at line 131 of file audio_hid_class.h.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_mic_data

uint8_t usb_audio_hid_type::audio_mic_data[(16 * 2 *( 16/8)+ 40)]

Definition at line 130 of file audio_hid_class.h.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_spk_data

uint8_t usb_audio_hid_type::audio_spk_data[(16 * 2 *( 16/8)+ 40)]

Definition at line 129 of file audio_hid_class.h.

Referenced by audio_set_interface(), class_init_handler(), and class_out_handler().

◆ enpd

uint8_t usb_audio_hid_type::enpd

Definition at line 112 of file audio_hid_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ g_audio_cur

uint8_t usb_audio_hid_type::g_audio_cur[64]

Definition at line 128 of file audio_hid_class.h.

Referenced by audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), audio_req_set_cur(), and class_ept0_rx_handler().

◆ g_rxhid_buff

uint8_t usb_audio_hid_type::g_rxhid_buff[0x40]

Definition at line 139 of file audio_hid_class.h.

Referenced by class_init_handler(), class_out_handler(), and usb_hid_buf_process().

◆ g_txhid_buff

uint8_t usb_audio_hid_type::g_txhid_buff[0x40]

Definition at line 140 of file audio_hid_class.h.

Referenced by usb_hid_buf_process().

◆ hid_protocol

uint32_t usb_audio_hid_type::hid_protocol

Definition at line 135 of file audio_hid_class.h.

Referenced by class_hid_setup_handler().

◆ hid_set_idle

uint32_t usb_audio_hid_type::hid_set_idle

Definition at line 136 of file audio_hid_class.h.

Referenced by class_hid_setup_handler().

◆ hid_set_report

uint8_t usb_audio_hid_type::hid_set_report[64]

Definition at line 138 of file audio_hid_class.h.

Referenced by class_ept0_rx_handler(), and class_hid_setup_handler().

◆ hid_state

uint8_t usb_audio_hid_type::hid_state

Definition at line 141 of file audio_hid_class.h.

Referenced by class_ept0_rx_handler(), and class_hid_setup_handler().

◆ interface

uint8_t usb_audio_hid_type::interface

Definition at line 113 of file audio_hid_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ mic_alt_setting

uint32_t usb_audio_hid_type::mic_alt_setting

Definition at line 127 of file audio_hid_class.h.

Referenced by audio_get_interface(), audio_set_interface(), and class_event_handler().

◆ mic_freq

uint32_t usb_audio_hid_type::mic_freq

Definition at line 120 of file audio_hid_class.h.

Referenced by class_ept0_rx_handler().

◆ mic_mute

uint8_t usb_audio_hid_type::mic_mute

Definition at line 116 of file audio_hid_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ mic_volume

uint16_t usb_audio_hid_type::mic_volume

Definition at line 118 of file audio_hid_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ mic_volume_limits

uint16_t usb_audio_hid_type::mic_volume_limits[3]

Definition at line 122 of file audio_hid_class.h.

Referenced by audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), and class_ept0_rx_handler().

◆ request_no

uint8_t usb_audio_hid_type::request_no

Definition at line 114 of file audio_hid_class.h.

Referenced by audio_req_set_cur(), and class_ept0_rx_handler().

◆ spk_alt_setting

uint32_t usb_audio_hid_type::spk_alt_setting

Definition at line 126 of file audio_hid_class.h.

Referenced by audio_get_interface(), audio_set_interface(), and class_event_handler().

◆ spk_freq

uint32_t usb_audio_hid_type::spk_freq

Definition at line 119 of file audio_hid_class.h.

Referenced by class_ept0_rx_handler().

◆ spk_mute

uint8_t usb_audio_hid_type::spk_mute

Definition at line 115 of file audio_hid_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ spk_volume

uint16_t usb_audio_hid_type::spk_volume

Definition at line 117 of file audio_hid_class.h.

Referenced by audio_req_get_cur(), and class_ept0_rx_handler().

◆ spk_volume_limits

uint16_t usb_audio_hid_type::spk_volume_limits[3]

Definition at line 121 of file audio_hid_class.h.

Referenced by audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), and class_ept0_rx_handler().

The documentation for this struct was generated from the following file:
  • audio_hid_class.h


AT32F403 Firmwary Library: USB_audio_hid_desc

Modules
USB_audio_hid_desc
AT32F403_middlewares_usbd_class

usb device audio hid descriptor More...

Modules

USB_audio_hid_desc_private_functions
USB_audio_hid_desc_definition

Detailed Description

usb device audio hid descriptor


AT32F403 Firmwary Library: USB_audio_hid_desc_private_functions

Functions | Variables
USB_audio_hid_desc_private_functions
AT32F403_middlewares_usbd_class » USB_audio_hid_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler audio_hid_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 778 of file audio_hid_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 700 of file audio_hid_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 680 of file audio_hid_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 766 of file audio_hid_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 720 of file audio_hid_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 731 of file audio_hid_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 710 of file audio_hid_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 743 of file audio_hid_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 690 of file audio_hid_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 755 of file audio_hid_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 658 of file audio_hid_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 632 of file audio_hid_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 606 of file audio_hid_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5555 ),
HBYTE( 0x5555 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
0x01
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb hid descriptor

usb hid report descriptor

usb configuration standard descriptor

Definition at line 60 of file audio_hid_desc.c.

◆ audio_hid_desc_handler

usbd_desc_handler audio_hid_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: audio_hid_desc.c:700
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: audio_hid_desc.c:680
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: audio_hid_desc.c:731
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: audio_hid_desc.c:690
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: audio_hid_desc.c:766
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: audio_hid_desc.c:710
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: audio_hid_desc.c:743
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: audio_hid_desc.c:778
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: audio_hid_desc.c:720
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: audio_hid_desc.c:755

device descriptor handler structure

Definition at line 65 of file audio_hid_desc.c.

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
( 0x12 + ((0x08 + ( 1 + 1 ) ) + ( 1 + 1 ) * 0x22) + + (0x31 + ( ( 1 + 0 ) ) * 3) + (0x31 + ( ( 1 + 0 ) ) * 3) + (9 * 1 ) + 32 ) ,
g_usbd_configuration
}

Definition at line 578 of file audio_hid_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 571 of file audio_hid_desc.c.

Referenced by get_device_descriptor().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 585 of file audio_hid_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 592 of file audio_hid_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 598 of file audio_hid_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_audio_hid_desc_definition

Macros | Variables
USB_audio_hid_desc_definition
AT32F403_middlewares_usbd_class » USB_audio_hid_desc

Macros

#define | AUHID_BCD_NUM 0x0100
#define | USBD_AUHID_VENDOR_ID 0x2E3C
#define | USBD_AUHID_PRODUCT_ID 0x5555
#define | USBD_AUHID_SIZ_STRING_LANGID 4
#define | USBD_AUHID_SIZ_STRING_SERIAL 0x1A
#define | USBD_AUHID_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_AUHID_DESC_PRODUCT_STRING "AT32 Audio"
#define | USBD_AUHID_DESC_CONFIGURATION_STRING "Audio Config"
#define | USBD_AUHID_DESC_INTERFACE_STRING "Audio Interface"
#define | AUDIO_SUBCLASS_UNDEFINED 0x00
audio interface subclass codes More...
#define | AUDIO_SUBCLASS_AUDIOCONTROL 0x01
#define | AUDIO_SUBCLASS_AUDIOSTREAMING 0x02
#define | AUDIO_SUBCLASS_MIDISTREMING 0x03
#define | AUDIO_CS_INTERFACE 0x24
audio class-specific descriptor types More...
#define | AUDIO_CS_ENDPOINT 0x25
#define | AUDIO_CS_STRING 0x23
#define | AUDIO_CS_CONFIGURATION 0x22
#define | AUDIO_CS_DEVICE 0x21
#define | AUDIO_CS_UNDEFINED 0x20
#define | AUDIO_PROTOCOL_UNDEFINED 0x00
audio interface protocol codes More...
#define | AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00
audio class-specific ac interface descriptor subtypes More...
#define | AUDIO_AC_HEADER 0x01
#define | AUDIO_AC_INPUT_TERMINAL 0x02
#define | AUDIO_AC_OUTPUT_TERMINAL 0x03
#define | AUDIO_AC_MIXER_UNIT 0x04
#define | AUDIO_AC_SELECTOR_UNIT 0x05
#define | AUDIO_AC_FEATURE_UNIT 0x06
#define | AUDIO_AC_PROCESSING_UNIT 0x07
#define | AUDIO_AC_EXTENSION_UNIT 0x08
#define | AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00
audio class-specific as interface descriptor subtypes More...
#define | AUDIO_AS_GENERAL 0x01
#define | AUDIO_AS_FORMAT_TYPE 0x02
#define | AUDIO_AS_FORMAT_SPECIFIC 0x03
#define | AUDIO_REQUEST_CODE_UNDEFINED 0x00
audio class-specific request codes More...
#define | AUDIO_REQ_SET_CUR 0x01
#define | AUDIO_REQ_GET_CUR 0x81
#define | AUDIO_REQ_SET_MIN 0x02
#define | AUDIO_REQ_GET_MIN 0x82
#define | AUDIO_REQ_SET_MAX 0x03
#define | AUDIO_REQ_GET_MAX 0x83
#define | AUDIO_REQ_SET_RES 0x04
#define | AUDIO_REQ_GET_RES 0x84
#define | AUDIO_REQ_SET_MEM 0x05
#define | AUDIO_REQ_GET_MEM 0x85
#define | AUDIO_REQ_GET_STAT 0xFF
#define | AUDIO_FU_CONTROL_UNDEFINED 0x00
audio feature unit control selectors More...
#define | AUDIO_FU_MUTE_CONTROL 0x01
#define | AUDIO_FU_VOLUME_CONTROL 0x02
#define | AUDIO_FU_BASS_CONTROL 0x03
#define | AUDIO_FU_MID_CONTROL 0x04
#define | AUDIO_FU_TREBLE_CONTROL 0x05
#define | AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100
audio terminal type More...
#define | AUDIO_TERMINAL_TYPE_STREAMING 0x0101
#define | AUDIO_TERMINAL_TYPE_VENDOR 0x01FF
#define | AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200
#define | AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201
#define | AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300
#define | AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301
#define | AUDIO_FORMAT_TYPE_I 0x01
audio format type 1 More...
#define | AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)
audio interface config More...
#define | AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)
#define | AUDIO_MIC_INTERFACE 0x01
#define | AUDIO_SPK_INTERFACE 0x02
#define | AUDIO_INPUT_TERMINAL_SIZE 0x0C
audio interface descriptor size define More...
#define | AUDIO_OUTPUT_TERMINAL_SIZE 0x09
#define | AUDIO_FEATURE_UNIT_SIZE 0x0D
#define | AUDIO_MIC_INPUT_TERMINAL_ID 0x01
audio terminal id define More...
#define | AUDIO_MIC_FEATURE_UNIT_ID 0x02
#define | AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03
#define | AUDIO_SPK_INPUT_TERMINAL_ID 0x04
#define | AUDIO_SPK_FEATURE_UNIT_ID 0x05
#define | AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06
#define | AUDIO_MIC_INTERFACE_NUMBER 0x01
audio interface number More...
#define | AUDIO_SPK_INTERFACE_NUMBER 0x02
#define | HID_INTERFACE_NUMBER 0x03
#define | AT32_AUDIO_FREQ_16K 16000
audio support freq More...
#define | AT32_AUDIO_FREQ_48K 48000
#define | AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio microphone freq and channel config More...
#define | AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM
#define | AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)
#define | AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio speaker freq and channel config More...
#define | AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM
#define | AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)
#define | AUHID_HID_BINTERVAL_TIME 0x01
#define | AUHID_HID_BCD_NUM 0x0110
usb bcd number define More...
#define | HID_CLASS_DESC_HID 0x21
usb hid class descriptor define More...
#define | HID_CLASS_DESC_REPORT 0x22
#define | HID_CLASS_DESC_PHYSICAL 0x23
#define | HID_REPORT_ID_1 0x01
usb hid report id define More...
#define | HID_REPORT_ID_2 0x02
#define | HID_REPORT_ID_3 0x03
#define | HID_REPORT_ID_4 0x04
#define | HID_REPORT_ID_5 0x05
#define | HID_REPORT_ID_6 0xF0
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)
#define | SAMPLE_FREQ(frq) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))
#define | USBD_AUHID_HID_SIZ_REPORT_DESC 126
#define | USBD_AUHID_HID_DESC_SIZE 32
#define | USBD_AUHID_CONFIG_DESC_SIZE

Variables

uint8_t | g_usbd_audio_hid_report [126]
usb hid report descriptor More...
uint8_t | g_audio_hid_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler audio_hid_desc_handler
device descriptor handler structure More...

Detailed Description

Macro Definition Documentation

◆ AT32_AUDIO_FREQ_16K

#define AT32_AUDIO_FREQ_16K 16000

audio support freq

Definition at line 186 of file audio_hid_desc.h.

◆ AT32_AUDIO_FREQ_48K

#define AT32_AUDIO_FREQ_48K 48000

Definition at line 187 of file audio_hid_desc.h.

◆ AUDIO_AC_DESCRIPTOR_UNDEFINED

#define AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00

audio class-specific ac interface descriptor subtypes

Definition at line 87 of file audio_hid_desc.h.

◆ AUDIO_AC_EXTENSION_UNIT

#define AUDIO_AC_EXTENSION_UNIT 0x08

Definition at line 95 of file audio_hid_desc.h.

◆ AUDIO_AC_FEATURE_UNIT

#define AUDIO_AC_FEATURE_UNIT 0x06

Definition at line 93 of file audio_hid_desc.h.

◆ AUDIO_AC_HEADER

#define AUDIO_AC_HEADER 0x01

Definition at line 88 of file audio_hid_desc.h.

◆ AUDIO_AC_INPUT_TERMINAL

#define AUDIO_AC_INPUT_TERMINAL 0x02

Definition at line 89 of file audio_hid_desc.h.

◆ AUDIO_AC_MIXER_UNIT

#define AUDIO_AC_MIXER_UNIT 0x04

Definition at line 91 of file audio_hid_desc.h.

◆ AUDIO_AC_OUTPUT_TERMINAL

#define AUDIO_AC_OUTPUT_TERMINAL 0x03

Definition at line 90 of file audio_hid_desc.h.

◆ AUDIO_AC_PROCESSING_UNIT

#define AUDIO_AC_PROCESSING_UNIT 0x07

Definition at line 94 of file audio_hid_desc.h.

◆ AUDIO_AC_SELECTOR_UNIT

#define AUDIO_AC_SELECTOR_UNIT 0x05

Definition at line 92 of file audio_hid_desc.h.

◆ AUDIO_AS_DESCRIPTOR_UNDEFINED

#define AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00

audio class-specific as interface descriptor subtypes

Definition at line 100 of file audio_hid_desc.h.

◆ AUDIO_AS_FORMAT_SPECIFIC

#define AUDIO_AS_FORMAT_SPECIFIC 0x03

Definition at line 103 of file audio_hid_desc.h.

◆ AUDIO_AS_FORMAT_TYPE

#define AUDIO_AS_FORMAT_TYPE 0x02

Definition at line 102 of file audio_hid_desc.h.

◆ AUDIO_AS_GENERAL

#define AUDIO_AS_GENERAL 0x01

Definition at line 101 of file audio_hid_desc.h.

◆ AUDIO_CS_CONFIGURATION

#define AUDIO_CS_CONFIGURATION 0x22

Definition at line 75 of file audio_hid_desc.h.

◆ AUDIO_CS_DEVICE

#define AUDIO_CS_DEVICE 0x21

Definition at line 76 of file audio_hid_desc.h.

◆ AUDIO_CS_ENDPOINT

#define AUDIO_CS_ENDPOINT 0x25

Definition at line 73 of file audio_hid_desc.h.

◆ AUDIO_CS_INTERFACE

#define AUDIO_CS_INTERFACE 0x24

audio class-specific descriptor types

Definition at line 72 of file audio_hid_desc.h.

◆ AUDIO_CS_STRING

#define AUDIO_CS_STRING 0x23

Definition at line 74 of file audio_hid_desc.h.

◆ AUDIO_CS_UNDEFINED

#define AUDIO_CS_UNDEFINED 0x20

Definition at line 77 of file audio_hid_desc.h.

◆ AUDIO_FEATURE_UNIT_SIZE

#define AUDIO_FEATURE_UNIT_SIZE 0x0D

Definition at line 160 of file audio_hid_desc.h.

◆ AUDIO_FORMAT_TYPE_I

#define AUDIO_FORMAT_TYPE_I 0x01

audio format type 1

Definition at line 145 of file audio_hid_desc.h.

◆ AUDIO_FU_BASS_CONTROL

#define AUDIO_FU_BASS_CONTROL 0x03

Definition at line 127 of file audio_hid_desc.h.

◆ AUDIO_FU_CONTROL_UNDEFINED

#define AUDIO_FU_CONTROL_UNDEFINED 0x00

audio feature unit control selectors

Definition at line 124 of file audio_hid_desc.h.

◆ AUDIO_FU_MID_CONTROL

#define AUDIO_FU_MID_CONTROL 0x04

Definition at line 128 of file audio_hid_desc.h.

◆ AUDIO_FU_MUTE_CONTROL

#define AUDIO_FU_MUTE_CONTROL 0x01

Definition at line 125 of file audio_hid_desc.h.

◆ AUDIO_FU_TREBLE_CONTROL

#define AUDIO_FU_TREBLE_CONTROL 0x05

Definition at line 129 of file audio_hid_desc.h.

◆ AUDIO_FU_VOLUME_CONTROL

#define AUDIO_FU_VOLUME_CONTROL 0x02

Definition at line 126 of file audio_hid_desc.h.

◆ AUDIO_INPUT_TERMINAL_MICROPHONE

#define AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201

Definition at line 138 of file audio_hid_desc.h.

◆ AUDIO_INPUT_TERMINAL_SIZE

#define AUDIO_INPUT_TERMINAL_SIZE 0x0C

audio interface descriptor size define

Definition at line 158 of file audio_hid_desc.h.

◆ AUDIO_INPUT_TERMINAL_UNDEFINED

#define AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200

Definition at line 137 of file audio_hid_desc.h.

◆ AUDIO_INTERFACE_LEN

#define AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)

Definition at line 151 of file audio_hid_desc.h.

◆ AUDIO_INTERFACE_NUM

#define AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)

audio interface config

Definition at line 150 of file audio_hid_desc.h.

◆ AUDIO_MIC_BITW

#define AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)

Definition at line 194 of file audio_hid_desc.h.

◆ AUDIO_MIC_CHR

#define AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM

Definition at line 193 of file audio_hid_desc.h.

◆ AUDIO_MIC_FEATURE_UNIT_ID

#define AUDIO_MIC_FEATURE_UNIT_ID 0x02

Definition at line 166 of file audio_hid_desc.h.

◆ AUDIO_MIC_FREQ_SIZE

#define AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)

audio microphone freq and channel config

Definition at line 192 of file audio_hid_desc.h.

◆ AUDIO_MIC_INPUT_TERMINAL_ID

#define AUDIO_MIC_INPUT_TERMINAL_ID 0x01

audio terminal id define

Definition at line 165 of file audio_hid_desc.h.

◆ AUDIO_MIC_INTERFACE

#define AUDIO_MIC_INTERFACE 0x01

Definition at line 152 of file audio_hid_desc.h.

◆ AUDIO_MIC_INTERFACE_NUMBER

#define AUDIO_MIC_INTERFACE_NUMBER 0x01

audio interface number

Definition at line 175 of file audio_hid_desc.h.

◆ AUDIO_MIC_OUTPUT_TERMINAL_ID

#define AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03

Definition at line 167 of file audio_hid_desc.h.

◆ AUDIO_OUTPUT_TERMINAL_SIZE

#define AUDIO_OUTPUT_TERMINAL_SIZE 0x09

Definition at line 159 of file audio_hid_desc.h.

◆ AUDIO_OUTPUT_TERMINAL_SPEAKER

#define AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301

Definition at line 140 of file audio_hid_desc.h.

◆ AUDIO_OUTPUT_TERMINAL_UNDEFINED

#define AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300

Definition at line 139 of file audio_hid_desc.h.

◆ AUDIO_PROTOCOL_UNDEFINED

#define AUDIO_PROTOCOL_UNDEFINED 0x00

audio interface protocol codes

Definition at line 82 of file audio_hid_desc.h.

◆ AUDIO_REQ_GET_CUR

#define AUDIO_REQ_GET_CUR 0x81

Definition at line 110 of file audio_hid_desc.h.

◆ AUDIO_REQ_GET_MAX

#define AUDIO_REQ_GET_MAX 0x83

Definition at line 114 of file audio_hid_desc.h.

◆ AUDIO_REQ_GET_MEM

#define AUDIO_REQ_GET_MEM 0x85

Definition at line 118 of file audio_hid_desc.h.

◆ AUDIO_REQ_GET_MIN

#define AUDIO_REQ_GET_MIN 0x82

Definition at line 112 of file audio_hid_desc.h.

◆ AUDIO_REQ_GET_RES

#define AUDIO_REQ_GET_RES 0x84

Definition at line 116 of file audio_hid_desc.h.

◆ AUDIO_REQ_GET_STAT

#define AUDIO_REQ_GET_STAT 0xFF

Definition at line 119 of file audio_hid_desc.h.

◆ AUDIO_REQ_SET_CUR

#define AUDIO_REQ_SET_CUR 0x01

Definition at line 109 of file audio_hid_desc.h.

◆ AUDIO_REQ_SET_MAX

#define AUDIO_REQ_SET_MAX 0x03

Definition at line 113 of file audio_hid_desc.h.

◆ AUDIO_REQ_SET_MEM

#define AUDIO_REQ_SET_MEM 0x05

Definition at line 117 of file audio_hid_desc.h.

◆ AUDIO_REQ_SET_MIN

#define AUDIO_REQ_SET_MIN 0x02

Definition at line 111 of file audio_hid_desc.h.

◆ AUDIO_REQ_SET_RES

#define AUDIO_REQ_SET_RES 0x04

Definition at line 115 of file audio_hid_desc.h.

◆ AUDIO_REQUEST_CODE_UNDEFINED

#define AUDIO_REQUEST_CODE_UNDEFINED 0x00

audio class-specific request codes

Definition at line 108 of file audio_hid_desc.h.

◆ AUDIO_SPK_BITW

#define AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)

Definition at line 201 of file audio_hid_desc.h.

◆ AUDIO_SPK_CHR

#define AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM

Definition at line 200 of file audio_hid_desc.h.

◆ AUDIO_SPK_FEATURE_UNIT_ID

#define AUDIO_SPK_FEATURE_UNIT_ID 0x05

Definition at line 169 of file audio_hid_desc.h.

◆ AUDIO_SPK_FREQ_SIZE

#define AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)

audio speaker freq and channel config

Definition at line 199 of file audio_hid_desc.h.

◆ AUDIO_SPK_INPUT_TERMINAL_ID

#define AUDIO_SPK_INPUT_TERMINAL_ID 0x04

Definition at line 168 of file audio_hid_desc.h.

◆ AUDIO_SPK_INTERFACE

#define AUDIO_SPK_INTERFACE 0x02

Definition at line 153 of file audio_hid_desc.h.

◆ AUDIO_SPK_INTERFACE_NUMBER

#define AUDIO_SPK_INTERFACE_NUMBER 0x02

Definition at line 177 of file audio_hid_desc.h.

◆ AUDIO_SPK_OUTPUT_TERMINAL_ID

#define AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06

Definition at line 170 of file audio_hid_desc.h.

◆ AUDIO_SUBCLASS_AUDIOCONTROL

#define AUDIO_SUBCLASS_AUDIOCONTROL 0x01

Definition at line 65 of file audio_hid_desc.h.

◆ AUDIO_SUBCLASS_AUDIOSTREAMING

#define AUDIO_SUBCLASS_AUDIOSTREAMING 0x02

Definition at line 66 of file audio_hid_desc.h.

◆ AUDIO_SUBCLASS_MIDISTREMING

#define AUDIO_SUBCLASS_MIDISTREMING 0x03

Definition at line 67 of file audio_hid_desc.h.

◆ AUDIO_SUBCLASS_UNDEFINED

#define AUDIO_SUBCLASS_UNDEFINED 0x00

audio interface subclass codes

Definition at line 64 of file audio_hid_desc.h.

◆ AUDIO_TERMINAL_TYPE_STREAMING

#define AUDIO_TERMINAL_TYPE_STREAMING 0x0101

Definition at line 135 of file audio_hid_desc.h.

◆ AUDIO_TERMINAL_TYPE_UNDEFINED

#define AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100

audio terminal type

Definition at line 134 of file audio_hid_desc.h.

◆ AUDIO_TERMINAL_TYPE_VENDOR

#define AUDIO_TERMINAL_TYPE_VENDOR 0x01FF

Definition at line 136 of file audio_hid_desc.h.

◆ AUHID_BCD_NUM

#define AUHID_BCD_NUM 0x0100

Definition at line 49 of file audio_hid_desc.h.

◆ AUHID_HID_BCD_NUM

#define AUHID_HID_BCD_NUM 0x0110

usb bcd number define

Definition at line 208 of file audio_hid_desc.h.

◆ AUHID_HID_BINTERVAL_TIME

#define AUHID_HID_BINTERVAL_TIME 0x01

Definition at line 203 of file audio_hid_desc.h.

◆ HID_CLASS_DESC_HID

#define HID_CLASS_DESC_HID 0x21

usb hid class descriptor define

Definition at line 213 of file audio_hid_desc.h.

◆ HID_CLASS_DESC_PHYSICAL

#define HID_CLASS_DESC_PHYSICAL 0x23

Definition at line 215 of file audio_hid_desc.h.

◆ HID_CLASS_DESC_REPORT

#define HID_CLASS_DESC_REPORT 0x22

Definition at line 214 of file audio_hid_desc.h.

◆ HID_INTERFACE_NUMBER

#define HID_INTERFACE_NUMBER 0x03

Definition at line 181 of file audio_hid_desc.h.

◆ HID_REPORT_ID_1

#define HID_REPORT_ID_1 0x01

usb hid report id define

Definition at line 220 of file audio_hid_desc.h.

◆ HID_REPORT_ID_2

#define HID_REPORT_ID_2 0x02

Definition at line 221 of file audio_hid_desc.h.

◆ HID_REPORT_ID_3

#define HID_REPORT_ID_3 0x03

Definition at line 222 of file audio_hid_desc.h.

◆ HID_REPORT_ID_4

#define HID_REPORT_ID_4 0x04

Definition at line 223 of file audio_hid_desc.h.

◆ HID_REPORT_ID_5

#define HID_REPORT_ID_5 0x05

Definition at line 224 of file audio_hid_desc.h.

◆ HID_REPORT_ID_6

#define HID_REPORT_ID_6 0xF0

Definition at line 225 of file audio_hid_desc.h.

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

Definition at line 227 of file audio_hid_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 228 of file audio_hid_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 229 of file audio_hid_desc.h.

◆ SAMPLE_FREQ

#define SAMPLE_FREQ ( frq ) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))

Definition at line 232 of file audio_hid_desc.h.

◆ USBD_AUHID_CONFIG_DESC_SIZE

#define USBD_AUHID_CONFIG_DESC_SIZE
Value:
( 0x12 + AUDIO_INTERFACE_LEN + \
+ (0x31 + AUDIO_SPK_FREQ_SIZE * 3) \
+ (0x31 + AUDIO_MIC_FREQ_SIZE * 3) \
+ (9 * AUDIO_SUPPORT_FEEDBACK) \
+ USBD_AUHID_HID_DESC_SIZE)
AUDIO_MIC_FREQ_SIZE
#define AUDIO_MIC_FREQ_SIZE
audio microphone freq and channel config
Definition: audio_hid_desc.h:192
AUDIO_SPK_FREQ_SIZE
#define AUDIO_SPK_FREQ_SIZE
audio speaker freq and channel config
Definition: audio_hid_desc.h:199
USBD_AUHID_HID_DESC_SIZE
#define USBD_AUHID_HID_DESC_SIZE
Definition: audio_hid_desc.h:235
AUDIO_INTERFACE_LEN
#define AUDIO_INTERFACE_LEN
Definition: audio_hid_desc.h:151
AUDIO_SUPPORT_FEEDBACK
#define AUDIO_SUPPORT_FEEDBACK
Definition: audio/audio_conf.h:47

Definition at line 236 of file audio_hid_desc.h.

◆ USBD_AUHID_DESC_CONFIGURATION_STRING

#define USBD_AUHID_DESC_CONFIGURATION_STRING "Audio Config"

Definition at line 59 of file audio_hid_desc.h.

◆ USBD_AUHID_DESC_INTERFACE_STRING

#define USBD_AUHID_DESC_INTERFACE_STRING "Audio Interface"

Definition at line 60 of file audio_hid_desc.h.

◆ USBD_AUHID_DESC_MANUFACTURER_STRING

#define USBD_AUHID_DESC_MANUFACTURER_STRING "Artery"

Definition at line 57 of file audio_hid_desc.h.

◆ USBD_AUHID_DESC_PRODUCT_STRING

#define USBD_AUHID_DESC_PRODUCT_STRING "AT32 Audio"

Definition at line 58 of file audio_hid_desc.h.

◆ USBD_AUHID_HID_DESC_SIZE

#define USBD_AUHID_HID_DESC_SIZE 32

Definition at line 235 of file audio_hid_desc.h.

◆ USBD_AUHID_HID_SIZ_REPORT_DESC

#define USBD_AUHID_HID_SIZ_REPORT_DESC 126

Definition at line 234 of file audio_hid_desc.h.

◆ USBD_AUHID_PRODUCT_ID

#define USBD_AUHID_PRODUCT_ID 0x5555

Definition at line 52 of file audio_hid_desc.h.

◆ USBD_AUHID_SIZ_STRING_LANGID

#define USBD_AUHID_SIZ_STRING_LANGID 4

Definition at line 54 of file audio_hid_desc.h.

◆ USBD_AUHID_SIZ_STRING_SERIAL

#define USBD_AUHID_SIZ_STRING_SERIAL 0x1A

Definition at line 55 of file audio_hid_desc.h.

◆ USBD_AUHID_VENDOR_ID

#define USBD_AUHID_VENDOR_ID 0x2E3C

Definition at line 51 of file audio_hid_desc.h.

Variable Documentation

◆ audio_hid_desc_handler

usbd_desc_handler audio_hid_desc_handler
extern

device descriptor handler structure

Definition at line 65 of file audio_hid_desc.c.

◆ g_audio_hid_usb_desc

ALIGNED_HEAD uint8_t g_audio_hid_usb_desc
extern
Initial value:
=
{
0x09,
0x21 ,
LBYTE( 0x0110 ),
HBYTE( 0x0110 ),
0x00,
0x01,
0x22 ,
LBYTE(sizeof(g_usbd_audio_hid_report)),
HBYTE(sizeof(g_usbd_audio_hid_report)),
}
g_usbd_audio_hid_report
uint8_t g_usbd_audio_hid_report[126]
usb hid report descriptor
Definition: audio_hid_desc.c:432
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263

usb hid descriptor

Definition at line 530 of file audio_hid_desc.c.

Referenced by class_hid_setup_handler().

◆ g_usbd_audio_hid_report

ALIGNED_HEAD uint8_t g_usbd_audio_hid_report
extern

usb hid report descriptor

Definition at line 432 of file audio_hid_desc.c.

Referenced by class_hid_setup_handler().


AT32F403 Firmwary Library: USB_cdc_class

Modules
USB_cdc_class
AT32F403_middlewares_usbd_class

usb device class cdc demo More...

Modules

USB_cdc_class_private_functions
USB_cdc_class_definition
USB_cdc_class_exported_types
USB_cdc_class_exported_functions

Detailed Description

usb device class cdc demo


AT32F403 Firmwary Library: USB_cdc_class_private_functions

Functions | Variables
USB_cdc_class_private_functions
AT32F403_middlewares_usbd_class » USB_cdc_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
static usb_sts_type | cdc_struct_init (cdc_struct_type *pcdc)
usb device cdc init More...
void | usb_usart_config (linecoding_type linecoding)
this function handles usart2 and linecoding config. More...
static void | usb_vcp_cmd_process (void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device class request function More...
uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

linecoding_type linecoding
cdc_struct_type cdc_struct
usbd_class_handler cdc_class_handler

Detailed Description

Function Documentation

◆ cdc_struct_init()

static usb_sts_type cdc_struct_init ( cdc_struct_type * pcdc )
static

usb device cdc init

Parameters
pcdc to the structure of cdc_struct
Return values
status of usb_sts_type

Definition at line 325 of file cdc_class.c.

Referenced by class_init_handler().

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 121 of file cdc_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device class endpoint 0 out status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 218 of file cdc_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device class endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 204 of file cdc_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device class event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 295 of file cdc_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 240 of file cdc_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 86 of file cdc_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 260 of file cdc_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 144 of file cdc_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device class sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 280 of file cdc_class.c.

◆ usb_usart_config()

void usb_usart_config ( linecoding_type linecoding )

this function handles usart2 and linecoding config.

Parameters
linecoding linecoding value
Return values
none

< usart receive data buffer full interrupt

< usart receive data buffer full interrupt

Definition at line 279 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

Referenced by usb_vcp_cmd_process().

◆ usb_vcp_cmd_process()

static void usb_vcp_cmd_process | ( | void * | udev,
 |  | uint8_t | cmd,
 |  | uint8_t * | buff,
 |  | uint16_t | len
 | ) |  |
static

usb device class request function

Parameters
udev | to the structure of usbd_core_type
cmd | request number
buff | request buffer
len | buffer length
Return values
none

Definition at line 399 of file cdc_class.c.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

◆ usb_vcp_get_rxdata()

uint16_t usb_vcp_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 343 of file cdc_class.c.

Referenced by main().

◆ usb_vcp_send_data()

error_status usb_vcp_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 373 of file cdc_class.c.

Referenced by main().

Variable Documentation

◆ cdc_class_handler

usbd_class_handler cdc_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&cdc_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: cdc_class.c:280
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: cdc_class.c:240
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: cdc_class.c:121
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_class.c:144
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: cdc_class.c:204
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: cdc_class.c:218
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: cdc_class.c:295
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: cdc_class.c:86
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: cdc_class.c:260
cdc_struct
cdc_struct_type cdc_struct
Definition: cdc_class.c:64

Definition at line 67 of file cdc_class.c.

Referenced by main().

◆ cdc_struct

cdc_struct_type cdc_struct

Definition at line 64 of file cdc_class.c.

◆ linecoding

linecoding_type linecoding
Initial value:
=
{
115200,
0,
0,
8
}

Definition at line 55 of file cdc_class.c.

Referenced by cdc_struct_init().


AT32F403 Firmwary Library: USB_cdc_class_definition

Macros
USB_cdc_class_definition
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class

Macros

#define | USBD_CDC_INT_EPT 0x82
usb cdc use endpoint define More...
#define | USBD_CDC_BULK_IN_EPT 0x81
#define | USBD_CDC_BULK_OUT_EPT 0x01
#define | USBD_CDC_IN_MAXPACKET_SIZE 0x40
usb cdc in and out max packet size define More...
#define | USBD_CDC_OUT_MAXPACKET_SIZE 0x40
#define | USBD_CDC_CMD_MAXPACKET_SIZE 0x08
#define | USBD_CDC_INT_EPT 0x82
usb cdc use endpoint define More...
#define | USBD_CDC_BULK_IN_EPT 0x83
#define | USBD_CDC_BULK_OUT_EPT 0x02
#define | USBD_MSC_BULK_IN_EPT 0x81
#define | USBD_MSC_BULK_OUT_EPT 0x01
#define | USBD_CDC_MSC_IN_MAXPACKET_SIZE 0x40
usb cdc in and out max packet size define More...
#define | USBD_CDC_MSC_OUT_MAXPACKET_SIZE 0x40
#define | USBD_CDC_CMD_MAXPACKET_SIZE 0x08

Detailed Description

Macro Definition Documentation

◆ USBD_CDC_BULK_IN_EPT [1/2]

#define USBD_CDC_BULK_IN_EPT 0x81

Definition at line 52 of file cdc_class.h.

◆ USBD_CDC_BULK_IN_EPT [2/2]

#define USBD_CDC_BULK_IN_EPT 0x83

Definition at line 52 of file cdc_msc_class.h.

◆ USBD_CDC_BULK_OUT_EPT [1/2]

#define USBD_CDC_BULK_OUT_EPT 0x01

Definition at line 53 of file cdc_class.h.

◆ USBD_CDC_BULK_OUT_EPT [2/2]

#define USBD_CDC_BULK_OUT_EPT 0x02

Definition at line 53 of file cdc_msc_class.h.

◆ USBD_CDC_CMD_MAXPACKET_SIZE [1/2]

#define USBD_CDC_CMD_MAXPACKET_SIZE 0x08

Definition at line 60 of file cdc_class.h.

◆ USBD_CDC_CMD_MAXPACKET_SIZE [2/2]

#define USBD_CDC_CMD_MAXPACKET_SIZE 0x08

Definition at line 64 of file cdc_msc_class.h.

◆ USBD_CDC_IN_MAXPACKET_SIZE

#define USBD_CDC_IN_MAXPACKET_SIZE 0x40

usb cdc in and out max packet size define

Definition at line 58 of file cdc_class.h.

◆ USBD_CDC_INT_EPT [1/2]

#define USBD_CDC_INT_EPT 0x82

usb cdc use endpoint define

Definition at line 51 of file cdc_class.h.

◆ USBD_CDC_INT_EPT [2/2]

#define USBD_CDC_INT_EPT 0x82

usb cdc use endpoint define

Definition at line 51 of file cdc_msc_class.h.

◆ USBD_CDC_MSC_IN_MAXPACKET_SIZE

#define USBD_CDC_MSC_IN_MAXPACKET_SIZE 0x40

usb cdc in and out max packet size define

Definition at line 61 of file cdc_msc_class.h.

◆ USBD_CDC_MSC_OUT_MAXPACKET_SIZE

#define USBD_CDC_MSC_OUT_MAXPACKET_SIZE 0x40

Definition at line 63 of file cdc_msc_class.h.

◆ USBD_CDC_OUT_MAXPACKET_SIZE

#define USBD_CDC_OUT_MAXPACKET_SIZE 0x40

Definition at line 59 of file cdc_class.h.

◆ USBD_MSC_BULK_IN_EPT

#define USBD_MSC_BULK_IN_EPT 0x81

Definition at line 55 of file cdc_msc_class.h.

◆ USBD_MSC_BULK_OUT_EPT

#define USBD_MSC_BULK_OUT_EPT 0x01

Definition at line 56 of file cdc_msc_class.h.


AT32F403 Firmwary Library: USB_cdc_class_exported_types

Modules | Data Structures
USB_cdc_class_exported_types
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class

Modules

USB_msc_bot_scsi_definition
USB_cdc_msc_class_exported_functions

Data Structures

struct | cdc_struct_type
usb cdc class struct More...
struct | vcp_keyboard_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: USB_msc_bot_scsi_definition

Data Structures | Macros | Functions
USB_msc_bot_scsi_definition
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi

Data Structures

struct | cbd_typical_type
typical command block description More...
struct | cbd_extended_type
extended command block description More...
struct | cbw_type
command block wrapper More...
struct | csw_type
command block wrapper More...
struct | sense_type
request sense standard data More...
struct | msc_type
struct | cdc_msc_struct_type
usb cdc class struct More...

Macros

#define | MSC_SUPPORT_MAX_LUN 1
#define | MSC_MAX_DATA_BUF_LEN 4096
#define | MSC_CMD_FORMAT_UNIT 0x04
#define | MSC_CMD_INQUIRY 0x12
#define | MSC_CMD_START_STOP 0x1B
#define | MSC_CMD_MODE_SENSE6 0x1A
#define | MSC_CMD_MODE_SENSE10 0x5A
#define | MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E
#define | MSC_CMD_READ_10 0x28
#define | MSC_CMD_READ_12 0xA8
#define | MSC_CMD_READ_CAPACITY 0x25
#define | MSC_CMD_READ_FORMAT_CAPACITY 0x23
#define | MSC_CMD_REQUEST_SENSE 0x03
#define | MSC_CMD_TEST_UNIT 0x00
#define | MSC_CMD_VERIFY 0x2F
#define | MSC_CMD_WRITE_10 0x2A
#define | MSC_CMD_WRITE_12 0xAA
#define | MSC_CMD_WRITE_VERIFY 0x2E
#define | MSC_REQ_GET_MAX_LUN 0xFE
#define | MSC_REQ_BO_RESET 0xFF
#define | SET_LINE_CODING 0x20
#define | GET_LINE_CODING 0x21
#define | CBW_CMD_LENGTH 31
#define | CBW_DCBWSIGNATURE 0x43425355
#define | CBW_BMCBWFLAGS_DIR_OUT 0x00
#define | CBW_BMCBWFLAGS_DIR_IN 0x80
#define | CSW_CMD_LENGTH 13
#define | CSW_DCSWSIGNATURE 0x53425355
#define | CSW_BCSWSTATUS_PASS 0x00
#define | CSW_BCSWSTATUS_FAILED 0x01
#define | CSW_BCSWSTATUS_PHASE_ERR 0x02
#define | MSC_STATE_MACHINE_CMD 0x00
#define | MSC_STATE_MACHINE_DATA_IN 0x01
#define | MSC_STATE_MACHINE_DATA_OUT 0x02
#define | MSC_STATE_MACHINE_SEND_DATA 0x03
#define | MSC_STATE_MACHINE_LAST_DATA 0x04
#define | MSC_STATE_MACHINE_STATUS 0x05
#define | MSC_STATE_MACHINE_FAILED 0x06
#define | MSC_STATE_MACHINE_IDLE 0x07
#define | MSC_BOT_STATE_IDLE 0x00
#define | MSC_BOT_STATE_RECOVERY 0x01
#define | MSC_BOT_STATE_ERROR 0x02
#define | REQ_SENSE_STANDARD_DATA_LEN 0x12
#define | SENSE_KEY_NO_SENSE 0x00
#define | SENSE_KEY_RECOVERED_ERROR 0x01
#define | SENSE_KEY_NOT_READY 0x02
#define | SENSE_KEY_MEDIUM_ERROR 0x03
#define | SENSE_KEY_HARDWARE_ERROR 0x04
#define | SENSE_KEY_ILLEGAL_REQUEST 0x05
#define | SENSE_KEY_UNIT_ATTENTION 0x06
#define | SENSE_KEY_DATA_PROTECT 0x07
#define | SENSE_KEY_BLANK_CHECK 0x08
#define | SENSE_KEY_VENDERO_SPECIFIC 0x09
#define | SENSE_KEY_ABORTED_COMMAND 0x0B
#define | SENSE_KEY_VOLUME_OVERFLOW 0x0D
#define | SENSE_KEY_MISCOMPARE 0x0E
#define | INVALID_COMMAND 0x20
#define | INVALID_FIELED_IN_COMMAND 0x24
#define | PARAMETER_LIST_LENGTH_ERROR 0x1A
#define | INVALID_FIELD_IN_PARAMETER_LIST 0x26
#define | ADDRESS_OUT_OF_RANGE 0x21
#define | MEDIUM_NOT_PRESENT 0x3A
#define | MEDIUM_HAVE_CHANGED 0x28
#define | SCSI_INQUIRY_DATA_LENGTH 36
#define | MSC_SUPPORT_MAX_LUN 1
#define | MSC_MAX_DATA_BUF_LEN 4096
#define | MSC_CMD_FORMAT_UNIT 0x04
#define | MSC_CMD_INQUIRY 0x12
#define | MSC_CMD_START_STOP 0x1B
#define | MSC_CMD_MODE_SENSE6 0x1A
#define | MSC_CMD_MODE_SENSE10 0x5A
#define | MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E
#define | MSC_CMD_READ_10 0x28
#define | MSC_CMD_READ_12 0xA8
#define | MSC_CMD_READ_CAPACITY 0x25
#define | MSC_CMD_READ_FORMAT_CAPACITY 0x23
#define | MSC_CMD_REQUEST_SENSE 0x03
#define | MSC_CMD_TEST_UNIT 0x00
#define | MSC_CMD_VERIFY 0x2F
#define | MSC_CMD_WRITE_10 0x2A
#define | MSC_CMD_WRITE_12 0xAA
#define | MSC_CMD_WRITE_VERIFY 0x2E
#define | MSC_REQ_GET_MAX_LUN 0xFE
#define | MSC_REQ_BO_RESET 0xFF
#define | SET_LINE_CODING 0x20
#define | GET_LINE_CODING 0x21
#define | CBW_CMD_LENGTH 31
#define | CBW_DCBWSIGNATURE 0x43425355
#define | CBW_BMCBWFLAGS_DIR_OUT 0x00
#define | CBW_BMCBWFLAGS_DIR_IN 0x80
#define | CSW_CMD_LENGTH 13
#define | CSW_DCSWSIGNATURE 0x53425355
#define | CSW_BCSWSTATUS_PASS 0x00
#define | CSW_BCSWSTATUS_FAILED 0x01
#define | CSW_BCSWSTATUS_PHASE_ERR 0x02
#define | MSC_STATE_MACHINE_CMD 0x00
#define | MSC_STATE_MACHINE_DATA_IN 0x01
#define | MSC_STATE_MACHINE_DATA_OUT 0x02
#define | MSC_STATE_MACHINE_SEND_DATA 0x03
#define | MSC_STATE_MACHINE_LAST_DATA 0x04
#define | MSC_STATE_MACHINE_STATUS 0x05
#define | MSC_STATE_MACHINE_FAILED 0x06
#define | MSC_STATE_MACHINE_IDLE 0x07
#define | MSC_BOT_STATE_IDLE 0x00
#define | MSC_BOT_STATE_RECOVERY 0x01
#define | MSC_BOT_STATE_ERROR 0x02
#define | REQ_SENSE_STANDARD_DATA_LEN 0x12
#define | SENSE_KEY_NO_SENSE 0x00
#define | SENSE_KEY_RECOVERED_ERROR 0x01
#define | SENSE_KEY_NOT_READY 0x02
#define | SENSE_KEY_MEDIUM_ERROR 0x03
#define | SENSE_KEY_HARDWARE_ERROR 0x04
#define | SENSE_KEY_ILLEGAL_REQUEST 0x05
#define | SENSE_KEY_UNIT_ATTENTION 0x06
#define | SENSE_KEY_DATA_PROTECT 0x07
#define | SENSE_KEY_BLANK_CHECK 0x08
#define | SENSE_KEY_VENDERO_SPECIFIC 0x09
#define | SENSE_KEY_ABORTED_COMMAND 0x0B
#define | SENSE_KEY_VOLUME_OVERFLOW 0x0D
#define | SENSE_KEY_MISCOMPARE 0x0E
#define | INVALID_COMMAND 0x20
#define | INVALID_FIELED_IN_COMMAND 0x24
#define | PARAMETER_LIST_LENGTH_ERROR 0x1A
#define | INVALID_FIELD_IN_PARAMETER_LIST 0x26
#define | ADDRESS_OUT_OF_RANGE 0x21
#define | MEDIUM_NOT_PRESENT 0x3A
#define | MEDIUM_HAVE_CHANGED 0x28
#define | SCSI_INQUIRY_DATA_LENGTH 36

Functions

void | bot_scsi_init (void *udev)
initialize bulk-only transport and scsi More...
void | bot_scsi_reset (void *udev)
reset bulk-only transport and scsi More...
void | bot_scsi_datain_handler (void *pudev, uint8_t ept_num)
bulk-only transport data in handler More...
void | bot_scsi_dataout_handler (void *pudev, uint8_t ept_num)
bulk-only transport data out handler More...
void | bot_cbw_decode (void *udev)
bulk-only cbw decode More...
void | bot_scsi_send_data (void *udev, uint8_t *buffer, uint32_t len)
send bot data More...
void | bot_scsi_send_csw (void *udev, uint8_t status)
send command status More...
void | bot_scsi_sense_code (void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code More...
usb_sts_type | bot_scsi_check_address (void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address More...
void | bot_scsi_stall (void *udev)
bot endpoint stall More...
usb_sts_type | bot_scsi_cmd_process (void *udev)
bulk-only transport scsi command process More...
usb_sts_type | bot_scsi_test_unit (void *udev, uint8_t lun)
bulk-only transport scsi command test unit More...
usb_sts_type | bot_scsi_inquiry (void *udev, uint8_t lun)
bulk-only transport scsi command inquiry More...
usb_sts_type | bot_scsi_start_stop (void *udev, uint8_t lun)
bulk-only transport scsi command start stop More...
usb_sts_type | bot_scsi_allow_medium_removal (void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal More...
usb_sts_type | bot_scsi_mode_sense6 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6 More...
usb_sts_type | bot_scsi_mode_sense10 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10 More...
usb_sts_type | bot_scsi_read10 (void *udev, uint8_t lun)
bulk-only transport scsi command read10 More...
usb_sts_type | bot_scsi_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command capacity More...
usb_sts_type | bot_scsi_format_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command format capacity More...
usb_sts_type | bot_scsi_request_sense (void *udev, uint8_t lun)
bulk-only transport scsi command request sense More...
usb_sts_type | bot_scsi_verify (void *udev, uint8_t lun)
bulk-only transport scsi command verify More...
usb_sts_type | bot_scsi_write10 (void *udev, uint8_t lun)
bulk-only transport scsi command write10 More...
void | bot_scsi_clear_feature (void *udev, uint8_t ept_num)
clear feature More...

Detailed Description

Macro Definition Documentation

◆ ADDRESS_OUT_OF_RANGE [1/2]

#define ADDRESS_OUT_OF_RANGE 0x21

Definition at line 151 of file cdc_msc_class.h.

◆ ADDRESS_OUT_OF_RANGE [2/2]

#define ADDRESS_OUT_OF_RANGE 0x21

Definition at line 117 of file msc_bot_scsi.h.

◆ CBW_BMCBWFLAGS_DIR_IN [1/2]

#define CBW_BMCBWFLAGS_DIR_IN 0x80

Definition at line 110 of file cdc_msc_class.h.

◆ CBW_BMCBWFLAGS_DIR_IN [2/2]

#define CBW_BMCBWFLAGS_DIR_IN 0x80

Definition at line 76 of file msc_bot_scsi.h.

◆ CBW_BMCBWFLAGS_DIR_OUT [1/2]

#define CBW_BMCBWFLAGS_DIR_OUT 0x00

Definition at line 109 of file cdc_msc_class.h.

◆ CBW_BMCBWFLAGS_DIR_OUT [2/2]

#define CBW_BMCBWFLAGS_DIR_OUT 0x00

Definition at line 75 of file msc_bot_scsi.h.

◆ CBW_CMD_LENGTH [1/2]

#define CBW_CMD_LENGTH 31

Definition at line 107 of file cdc_msc_class.h.

◆ CBW_CMD_LENGTH [2/2]

#define CBW_CMD_LENGTH 31

Definition at line 73 of file msc_bot_scsi.h.

◆ CBW_DCBWSIGNATURE [1/2]

#define CBW_DCBWSIGNATURE 0x43425355

Definition at line 108 of file cdc_msc_class.h.

◆ CBW_DCBWSIGNATURE [2/2]

#define CBW_DCBWSIGNATURE 0x43425355

Definition at line 74 of file msc_bot_scsi.h.

◆ CSW_BCSWSTATUS_FAILED [1/2]

#define CSW_BCSWSTATUS_FAILED 0x01

Definition at line 115 of file cdc_msc_class.h.

◆ CSW_BCSWSTATUS_FAILED [2/2]

#define CSW_BCSWSTATUS_FAILED 0x01

Definition at line 81 of file msc_bot_scsi.h.

◆ CSW_BCSWSTATUS_PASS [1/2]

#define CSW_BCSWSTATUS_PASS 0x00

Definition at line 114 of file cdc_msc_class.h.

◆ CSW_BCSWSTATUS_PASS [2/2]

#define CSW_BCSWSTATUS_PASS 0x00

Definition at line 80 of file msc_bot_scsi.h.

◆ CSW_BCSWSTATUS_PHASE_ERR [1/2]

#define CSW_BCSWSTATUS_PHASE_ERR 0x02

Definition at line 116 of file cdc_msc_class.h.

◆ CSW_BCSWSTATUS_PHASE_ERR [2/2]

#define CSW_BCSWSTATUS_PHASE_ERR 0x02

Definition at line 82 of file msc_bot_scsi.h.

◆ CSW_CMD_LENGTH [1/2]

#define CSW_CMD_LENGTH 13

Definition at line 112 of file cdc_msc_class.h.

◆ CSW_CMD_LENGTH [2/2]

#define CSW_CMD_LENGTH 13

Definition at line 78 of file msc_bot_scsi.h.

◆ CSW_DCSWSIGNATURE [1/2]

#define CSW_DCSWSIGNATURE 0x53425355

Definition at line 113 of file cdc_msc_class.h.

◆ CSW_DCSWSIGNATURE [2/2]

#define CSW_DCSWSIGNATURE 0x53425355

Definition at line 79 of file msc_bot_scsi.h.

◆ GET_LINE_CODING [1/2]

#define GET_LINE_CODING 0x21

Definition at line 105 of file cdc_msc_class.h.

◆ GET_LINE_CODING [2/2]

#define GET_LINE_CODING 0x21

Definition at line 71 of file msc_bot_scsi.h.

◆ INVALID_COMMAND [1/2]

#define INVALID_COMMAND 0x20

Definition at line 147 of file cdc_msc_class.h.

◆ INVALID_COMMAND [2/2]

#define INVALID_COMMAND 0x20

Definition at line 113 of file msc_bot_scsi.h.

◆ INVALID_FIELD_IN_PARAMETER_LIST [1/2]

#define INVALID_FIELD_IN_PARAMETER_LIST 0x26

Definition at line 150 of file cdc_msc_class.h.

◆ INVALID_FIELD_IN_PARAMETER_LIST [2/2]

#define INVALID_FIELD_IN_PARAMETER_LIST 0x26

Definition at line 116 of file msc_bot_scsi.h.

◆ INVALID_FIELED_IN_COMMAND [1/2]

#define INVALID_FIELED_IN_COMMAND 0x24

Definition at line 148 of file cdc_msc_class.h.

◆ INVALID_FIELED_IN_COMMAND [2/2]

#define INVALID_FIELED_IN_COMMAND 0x24

Definition at line 114 of file msc_bot_scsi.h.

◆ MEDIUM_HAVE_CHANGED [1/2]

#define MEDIUM_HAVE_CHANGED 0x28

Definition at line 153 of file cdc_msc_class.h.

◆ MEDIUM_HAVE_CHANGED [2/2]

#define MEDIUM_HAVE_CHANGED 0x28

Definition at line 119 of file msc_bot_scsi.h.

◆ MEDIUM_NOT_PRESENT [1/2]

#define MEDIUM_NOT_PRESENT 0x3A

Definition at line 152 of file cdc_msc_class.h.

◆ MEDIUM_NOT_PRESENT [2/2]

#define MEDIUM_NOT_PRESENT 0x3A

Definition at line 118 of file msc_bot_scsi.h.

◆ MSC_BOT_STATE_ERROR [1/2]

#define MSC_BOT_STATE_ERROR 0x02

Definition at line 129 of file cdc_msc_class.h.

◆ MSC_BOT_STATE_ERROR [2/2]

#define MSC_BOT_STATE_ERROR 0x02

Definition at line 95 of file msc_bot_scsi.h.

◆ MSC_BOT_STATE_IDLE [1/2]

#define MSC_BOT_STATE_IDLE 0x00

Definition at line 127 of file cdc_msc_class.h.

◆ MSC_BOT_STATE_IDLE [2/2]

#define MSC_BOT_STATE_IDLE 0x00

Definition at line 93 of file msc_bot_scsi.h.

◆ MSC_BOT_STATE_RECOVERY [1/2]

#define MSC_BOT_STATE_RECOVERY 0x01

Definition at line 128 of file cdc_msc_class.h.

◆ MSC_BOT_STATE_RECOVERY [2/2]

#define MSC_BOT_STATE_RECOVERY 0x01

Definition at line 94 of file msc_bot_scsi.h.

◆ MSC_CMD_ALLOW_MEDIUM_REMOVAL [1/2]

#define MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E

Definition at line 89 of file cdc_msc_class.h.

◆ MSC_CMD_ALLOW_MEDIUM_REMOVAL [2/2]

#define MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E

Definition at line 55 of file msc_bot_scsi.h.

◆ MSC_CMD_FORMAT_UNIT [1/2]

#define MSC_CMD_FORMAT_UNIT 0x04

Definition at line 84 of file cdc_msc_class.h.

◆ MSC_CMD_FORMAT_UNIT [2/2]

#define MSC_CMD_FORMAT_UNIT 0x04

Definition at line 50 of file msc_bot_scsi.h.

◆ MSC_CMD_INQUIRY [1/2]

#define MSC_CMD_INQUIRY 0x12

Definition at line 85 of file cdc_msc_class.h.

◆ MSC_CMD_INQUIRY [2/2]

#define MSC_CMD_INQUIRY 0x12

Definition at line 51 of file msc_bot_scsi.h.

◆ MSC_CMD_MODE_SENSE10 [1/2]

#define MSC_CMD_MODE_SENSE10 0x5A

Definition at line 88 of file cdc_msc_class.h.

◆ MSC_CMD_MODE_SENSE10 [2/2]

#define MSC_CMD_MODE_SENSE10 0x5A

Definition at line 54 of file msc_bot_scsi.h.

◆ MSC_CMD_MODE_SENSE6 [1/2]

#define MSC_CMD_MODE_SENSE6 0x1A

Definition at line 87 of file cdc_msc_class.h.

◆ MSC_CMD_MODE_SENSE6 [2/2]

#define MSC_CMD_MODE_SENSE6 0x1A

Definition at line 53 of file msc_bot_scsi.h.

◆ MSC_CMD_READ_10 [1/2]

#define MSC_CMD_READ_10 0x28

Definition at line 90 of file cdc_msc_class.h.

◆ MSC_CMD_READ_10 [2/2]

#define MSC_CMD_READ_10 0x28

Definition at line 56 of file msc_bot_scsi.h.

◆ MSC_CMD_READ_12 [1/2]

#define MSC_CMD_READ_12 0xA8

Definition at line 91 of file cdc_msc_class.h.

◆ MSC_CMD_READ_12 [2/2]

#define MSC_CMD_READ_12 0xA8

Definition at line 57 of file msc_bot_scsi.h.

◆ MSC_CMD_READ_CAPACITY [1/2]

#define MSC_CMD_READ_CAPACITY 0x25

Definition at line 92 of file cdc_msc_class.h.

◆ MSC_CMD_READ_CAPACITY [2/2]

#define MSC_CMD_READ_CAPACITY 0x25

Definition at line 58 of file msc_bot_scsi.h.

◆ MSC_CMD_READ_FORMAT_CAPACITY [1/2]

#define MSC_CMD_READ_FORMAT_CAPACITY 0x23

Definition at line 93 of file cdc_msc_class.h.

◆ MSC_CMD_READ_FORMAT_CAPACITY [2/2]

#define MSC_CMD_READ_FORMAT_CAPACITY 0x23

Definition at line 59 of file msc_bot_scsi.h.

◆ MSC_CMD_REQUEST_SENSE [1/2]

#define MSC_CMD_REQUEST_SENSE 0x03

Definition at line 94 of file cdc_msc_class.h.

◆ MSC_CMD_REQUEST_SENSE [2/2]

#define MSC_CMD_REQUEST_SENSE 0x03

Definition at line 60 of file msc_bot_scsi.h.

◆ MSC_CMD_START_STOP [1/2]

#define MSC_CMD_START_STOP 0x1B

Definition at line 86 of file cdc_msc_class.h.

◆ MSC_CMD_START_STOP [2/2]

#define MSC_CMD_START_STOP 0x1B

Definition at line 52 of file msc_bot_scsi.h.

◆ MSC_CMD_TEST_UNIT [1/2]

#define MSC_CMD_TEST_UNIT 0x00

Definition at line 95 of file cdc_msc_class.h.

◆ MSC_CMD_TEST_UNIT [2/2]

#define MSC_CMD_TEST_UNIT 0x00

Definition at line 61 of file msc_bot_scsi.h.

◆ MSC_CMD_VERIFY [1/2]

#define MSC_CMD_VERIFY 0x2F

Definition at line 96 of file cdc_msc_class.h.

◆ MSC_CMD_VERIFY [2/2]

#define MSC_CMD_VERIFY 0x2F

Definition at line 62 of file msc_bot_scsi.h.

◆ MSC_CMD_WRITE_10 [1/2]

#define MSC_CMD_WRITE_10 0x2A

Definition at line 97 of file cdc_msc_class.h.

◆ MSC_CMD_WRITE_10 [2/2]

#define MSC_CMD_WRITE_10 0x2A

Definition at line 63 of file msc_bot_scsi.h.

◆ MSC_CMD_WRITE_12 [1/2]

#define MSC_CMD_WRITE_12 0xAA

Definition at line 98 of file cdc_msc_class.h.

◆ MSC_CMD_WRITE_12 [2/2]

#define MSC_CMD_WRITE_12 0xAA

Definition at line 64 of file msc_bot_scsi.h.

◆ MSC_CMD_WRITE_VERIFY [1/2]

#define MSC_CMD_WRITE_VERIFY 0x2E

Definition at line 99 of file cdc_msc_class.h.

◆ MSC_CMD_WRITE_VERIFY [2/2]

#define MSC_CMD_WRITE_VERIFY 0x2E

Definition at line 65 of file msc_bot_scsi.h.

◆ MSC_MAX_DATA_BUF_LEN [1/2]

#define MSC_MAX_DATA_BUF_LEN 4096

Definition at line 82 of file cdc_msc_class.h.

◆ MSC_MAX_DATA_BUF_LEN [2/2]

#define MSC_MAX_DATA_BUF_LEN 4096

Definition at line 48 of file msc_bot_scsi.h.

◆ MSC_REQ_BO_RESET [1/2]

#define MSC_REQ_BO_RESET 0xFF

bulk only mass storage reset

Definition at line 102 of file cdc_msc_class.h.

◆ MSC_REQ_BO_RESET [2/2]

#define MSC_REQ_BO_RESET 0xFF

bulk only mass storage reset

Definition at line 68 of file msc_bot_scsi.h.

◆ MSC_REQ_GET_MAX_LUN [1/2]

#define MSC_REQ_GET_MAX_LUN 0xFE

get max lun

Definition at line 101 of file cdc_msc_class.h.

◆ MSC_REQ_GET_MAX_LUN [2/2]

#define MSC_REQ_GET_MAX_LUN 0xFE

get max lun

Definition at line 67 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_CMD [1/2]

#define MSC_STATE_MACHINE_CMD 0x00

Definition at line 118 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_CMD [2/2]

#define MSC_STATE_MACHINE_CMD 0x00

Definition at line 84 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_DATA_IN [1/2]

#define MSC_STATE_MACHINE_DATA_IN 0x01

Definition at line 119 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_DATA_IN [2/2]

#define MSC_STATE_MACHINE_DATA_IN 0x01

Definition at line 85 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_DATA_OUT [1/2]

#define MSC_STATE_MACHINE_DATA_OUT 0x02

Definition at line 120 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_DATA_OUT [2/2]

#define MSC_STATE_MACHINE_DATA_OUT 0x02

Definition at line 86 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_FAILED [1/2]

#define MSC_STATE_MACHINE_FAILED 0x06

Definition at line 124 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_FAILED [2/2]

#define MSC_STATE_MACHINE_FAILED 0x06

Definition at line 90 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_IDLE [1/2]

#define MSC_STATE_MACHINE_IDLE 0x07

Definition at line 125 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_IDLE [2/2]

#define MSC_STATE_MACHINE_IDLE 0x07

Definition at line 91 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_LAST_DATA [1/2]

#define MSC_STATE_MACHINE_LAST_DATA 0x04

Definition at line 122 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_LAST_DATA [2/2]

#define MSC_STATE_MACHINE_LAST_DATA 0x04

Definition at line 88 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_SEND_DATA [1/2]

#define MSC_STATE_MACHINE_SEND_DATA 0x03

Definition at line 121 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_SEND_DATA [2/2]

#define MSC_STATE_MACHINE_SEND_DATA 0x03

Definition at line 87 of file msc_bot_scsi.h.

◆ MSC_STATE_MACHINE_STATUS [1/2]

#define MSC_STATE_MACHINE_STATUS 0x05

Definition at line 123 of file cdc_msc_class.h.

◆ MSC_STATE_MACHINE_STATUS [2/2]

#define MSC_STATE_MACHINE_STATUS 0x05

Definition at line 89 of file msc_bot_scsi.h.

◆ MSC_SUPPORT_MAX_LUN [1/2]

#define MSC_SUPPORT_MAX_LUN 1

Definition at line 81 of file cdc_msc_class.h.

◆ MSC_SUPPORT_MAX_LUN [2/2]

#define MSC_SUPPORT_MAX_LUN 1

Definition at line 47 of file msc_bot_scsi.h.

◆ PARAMETER_LIST_LENGTH_ERROR [1/2]

#define PARAMETER_LIST_LENGTH_ERROR 0x1A

Definition at line 149 of file cdc_msc_class.h.

◆ PARAMETER_LIST_LENGTH_ERROR [2/2]

#define PARAMETER_LIST_LENGTH_ERROR 0x1A

Definition at line 115 of file msc_bot_scsi.h.

◆ REQ_SENSE_STANDARD_DATA_LEN [1/2]

#define REQ_SENSE_STANDARD_DATA_LEN 0x12

Definition at line 131 of file cdc_msc_class.h.

◆ REQ_SENSE_STANDARD_DATA_LEN [2/2]

#define REQ_SENSE_STANDARD_DATA_LEN 0x12

Definition at line 97 of file msc_bot_scsi.h.

◆ SCSI_INQUIRY_DATA_LENGTH [1/2]

#define SCSI_INQUIRY_DATA_LENGTH 36

Definition at line 155 of file cdc_msc_class.h.

◆ SCSI_INQUIRY_DATA_LENGTH [2/2]

#define SCSI_INQUIRY_DATA_LENGTH 36

Definition at line 121 of file msc_bot_scsi.h.

◆ SENSE_KEY_ABORTED_COMMAND [1/2]

#define SENSE_KEY_ABORTED_COMMAND 0x0B

Definition at line 142 of file cdc_msc_class.h.

◆ SENSE_KEY_ABORTED_COMMAND [2/2]

#define SENSE_KEY_ABORTED_COMMAND 0x0B

Definition at line 108 of file msc_bot_scsi.h.

◆ SENSE_KEY_BLANK_CHECK [1/2]

#define SENSE_KEY_BLANK_CHECK 0x08

Definition at line 140 of file cdc_msc_class.h.

◆ SENSE_KEY_BLANK_CHECK [2/2]

#define SENSE_KEY_BLANK_CHECK 0x08

Definition at line 106 of file msc_bot_scsi.h.

◆ SENSE_KEY_DATA_PROTECT [1/2]

#define SENSE_KEY_DATA_PROTECT 0x07

Definition at line 139 of file cdc_msc_class.h.

◆ SENSE_KEY_DATA_PROTECT [2/2]

#define SENSE_KEY_DATA_PROTECT 0x07

Definition at line 105 of file msc_bot_scsi.h.

◆ SENSE_KEY_HARDWARE_ERROR [1/2]

#define SENSE_KEY_HARDWARE_ERROR 0x04

Definition at line 136 of file cdc_msc_class.h.

◆ SENSE_KEY_HARDWARE_ERROR [2/2]

#define SENSE_KEY_HARDWARE_ERROR 0x04

Definition at line 102 of file msc_bot_scsi.h.

◆ SENSE_KEY_ILLEGAL_REQUEST [1/2]

#define SENSE_KEY_ILLEGAL_REQUEST 0x05

Definition at line 137 of file cdc_msc_class.h.

◆ SENSE_KEY_ILLEGAL_REQUEST [2/2]

#define SENSE_KEY_ILLEGAL_REQUEST 0x05

Definition at line 103 of file msc_bot_scsi.h.

◆ SENSE_KEY_MEDIUM_ERROR [1/2]

#define SENSE_KEY_MEDIUM_ERROR 0x03

Definition at line 135 of file cdc_msc_class.h.

◆ SENSE_KEY_MEDIUM_ERROR [2/2]

#define SENSE_KEY_MEDIUM_ERROR 0x03

Definition at line 101 of file msc_bot_scsi.h.

◆ SENSE_KEY_MISCOMPARE [1/2]

#define SENSE_KEY_MISCOMPARE 0x0E

Definition at line 144 of file cdc_msc_class.h.

◆ SENSE_KEY_MISCOMPARE [2/2]

#define SENSE_KEY_MISCOMPARE 0x0E

Definition at line 110 of file msc_bot_scsi.h.

◆ SENSE_KEY_NO_SENSE [1/2]

#define SENSE_KEY_NO_SENSE 0x00

Definition at line 132 of file cdc_msc_class.h.

◆ SENSE_KEY_NO_SENSE [2/2]

#define SENSE_KEY_NO_SENSE 0x00

Definition at line 98 of file msc_bot_scsi.h.

◆ SENSE_KEY_NOT_READY [1/2]

#define SENSE_KEY_NOT_READY 0x02

Definition at line 134 of file cdc_msc_class.h.

◆ SENSE_KEY_NOT_READY [2/2]

#define SENSE_KEY_NOT_READY 0x02

Definition at line 100 of file msc_bot_scsi.h.

◆ SENSE_KEY_RECOVERED_ERROR [1/2]

#define SENSE_KEY_RECOVERED_ERROR 0x01

Definition at line 133 of file cdc_msc_class.h.

◆ SENSE_KEY_RECOVERED_ERROR [2/2]

#define SENSE_KEY_RECOVERED_ERROR 0x01

Definition at line 99 of file msc_bot_scsi.h.

◆ SENSE_KEY_UNIT_ATTENTION [1/2]

#define SENSE_KEY_UNIT_ATTENTION 0x06

Definition at line 138 of file cdc_msc_class.h.

◆ SENSE_KEY_UNIT_ATTENTION [2/2]

#define SENSE_KEY_UNIT_ATTENTION 0x06

Definition at line 104 of file msc_bot_scsi.h.

◆ SENSE_KEY_VENDERO_SPECIFIC [1/2]

#define SENSE_KEY_VENDERO_SPECIFIC 0x09

Definition at line 141 of file cdc_msc_class.h.

◆ SENSE_KEY_VENDERO_SPECIFIC [2/2]

#define SENSE_KEY_VENDERO_SPECIFIC 0x09

Definition at line 107 of file msc_bot_scsi.h.

◆ SENSE_KEY_VOLUME_OVERFLOW [1/2]

#define SENSE_KEY_VOLUME_OVERFLOW 0x0D

Definition at line 143 of file cdc_msc_class.h.

◆ SENSE_KEY_VOLUME_OVERFLOW [2/2]

#define SENSE_KEY_VOLUME_OVERFLOW 0x0D

Definition at line 109 of file msc_bot_scsi.h.

◆ SET_LINE_CODING [1/2]

#define SET_LINE_CODING 0x20

Definition at line 104 of file cdc_msc_class.h.

◆ SET_LINE_CODING [2/2]

#define SET_LINE_CODING 0x20

Definition at line 70 of file msc_bot_scsi.h.

Function Documentation

◆ bot_cbw_decode()

void bot_cbw_decode ( void * udev )

bulk-only cbw decode

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 196 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_dataout_handler().

◆ bot_scsi_allow_medium_removal()

usb_sts_type bot_scsi_allow_medium_removal | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command meidum removal

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 423 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_capacity()

usb_sts_type bot_scsi_capacity | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command capacity

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 477 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_check_address()

usb_sts_type bot_scsi_check_address | ( | void * | udev,
 |  | uint8_t | lun,
 |  | uint32_t | blk_offset,
 |  | uint32_t | blk_count
 | ) |  |

check address

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
blk_offset | blk offset address
blk_count | blk number
Return values
usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
blk_offset | blk offset address
blk_count | blk number
Return values
usb_sts_type

Definition at line 303 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_read10(), bot_scsi_verify(), and bot_scsi_write10().

◆ bot_scsi_clear_feature()

void bot_scsi_clear_feature | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |

clear feature

Parameters
udev | to the structure of usbd_core_type
etp_num | endpoint number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
etp_num | endpoint number
Return values
status of usb_sts_type

Definition at line 729 of file composite_cdc_msc/msc_bot_scsi.c.

◆ bot_scsi_cmd_process()

usb_sts_type bot_scsi_cmd_process ( void * udev )

bulk-only transport scsi command process

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type
Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 749 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode(), bot_scsi_datain_handler(), and bot_scsi_dataout_handler().

◆ bot_scsi_datain_handler()

void bot_scsi_datain_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |

bulk-only transport data in handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none
Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none

Definition at line 143 of file composite_cdc_msc/msc_bot_scsi.c.

◆ bot_scsi_dataout_handler()

void bot_scsi_dataout_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |

bulk-only transport data out handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none
Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none

Definition at line 172 of file composite_cdc_msc/msc_bot_scsi.c.

◆ bot_scsi_format_capacity()

usb_sts_type bot_scsi_format_capacity | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command format capacity

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 504 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_init()

void bot_scsi_init ( void * udev )

initialize bulk-only transport and scsi

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 103 of file composite_cdc_msc/msc_bot_scsi.c.

◆ bot_scsi_inquiry()

usb_sts_type bot_scsi_inquiry | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command inquiry

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 368 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_mode_sense10()

usb_sts_type bot_scsi_mode_sense10 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command mode sense10

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 457 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_mode_sense6()

usb_sts_type bot_scsi_mode_sense6 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command mode sense6

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 437 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_read10()

usb_sts_type bot_scsi_read10 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command read10

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 598 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_request_sense()

usb_sts_type bot_scsi_request_sense | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command request sense

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 539 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_reset()

void bot_scsi_reset ( void * udev )

reset bulk-only transport and scsi

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 125 of file composite_cdc_msc/msc_bot_scsi.c.

◆ bot_scsi_send_csw()

void bot_scsi_send_csw | ( | void * | udev,
 |  | uint8_t | status
 | ) |  |

send command status

Parameters
udev | to the structure of usbd_core_type
status | csw status
Return values
none
Parameters
udev | to the structure of usbd_core_type
status | csw status
Return values
none

Definition at line 264 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode(), bot_scsi_clear_feature(), bot_scsi_datain_handler(), bot_scsi_dataout_handler(), and bot_scsi_write10().

◆ bot_scsi_send_data()

void bot_scsi_send_data | ( | void * | udev,
 |  | uint8_t * | buffer,
 |  | uint32_t | len
 | ) |  |

send bot data

Parameters
udev | to the structure of usbd_core_type
buffer | data buffer
len | data len
Return values
none
Parameters
udev | to the structure of usbd_core_type
buffer | data buffer
len | data len
Return values
none

Definition at line 243 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode().

◆ bot_scsi_sense_code()

void bot_scsi_sense_code | ( | void * | udev,
 |  | uint8_t | sense_key,
 |  | uint8_t | asc
 | ) |  |

send scsi sense code

Parameters
udev | to the structure of usbd_core_type
sense_key | sense key
asc | asc
Return values
none
Parameters
udev | to the structure of usbd_core_type
sense_key | sense key
asc | asc
Return values
none

Definition at line 288 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode(), bot_scsi_check_address(), bot_scsi_cmd_process(), bot_scsi_read10(), bot_scsi_test_unit(), bot_scsi_verify(), and bot_scsi_write10().

◆ bot_scsi_stall()

void bot_scsi_stall ( void * udev )

bot endpoint stall

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 320 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode().

◆ bot_scsi_start_stop()

usb_sts_type bot_scsi_start_stop | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command start stop

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 409 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_test_unit()

usb_sts_type bot_scsi_test_unit | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command test unit

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 346 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_verify()

usb_sts_type bot_scsi_verify | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command verify

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 570 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_write10()

usb_sts_type bot_scsi_write10 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command write10

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 659 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().


AT32F403 Firmwary Library: cbd_typical_type Struct Reference

Data Fields
cbd_typical_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi » USB_msc_bot_scsi_definition

typical command block description More...

#include <cdc_msc_class.h>

Data Fields

uint8_t | opcode
uint8_t | lun
uint32_t | address
uint8_t | reserved1
uint32_t | alloc_length
uint16_t | reserved2

Detailed Description

typical command block description

Definition at line 160 of file cdc_msc_class.h.

The documentation for this struct was generated from the following files:
  • cdc_msc_class.h
  • msc_bot_scsi.h


AT32F403 Firmwary Library: cbd_extended_type Struct Reference

Data Fields
cbd_extended_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi » USB_msc_bot_scsi_definition

extended command block description More...

#include <cdc_msc_class.h>

Data Fields

uint8_t | opcode
uint8_t | lun
uint32_t | address
uint8_t | reserved1
uint32_t | alloc_length
uint16_t | reserved2

Detailed Description

extended command block description

Definition at line 173 of file cdc_msc_class.h.

The documentation for this struct was generated from the following files:
  • cdc_msc_class.h
  • msc_bot_scsi.h


AT32F403 Firmwary Library: cbw_type Struct Reference

Data Fields
cbw_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi » USB_msc_bot_scsi_definition

command block wrapper More...

#include <cdc_msc_class.h>

Data Fields

uint32_t | dCBWSignature
uint32_t | dCBWTage
uint32_t | dCBWDataTransferLength
uint8_t | bmCBWFlags
uint8_t | bCBWLUN
uint8_t | bCBWCBLength
uint8_t | CBWCB [16]

Detailed Description

command block wrapper

Definition at line 186 of file cdc_msc_class.h.

The documentation for this struct was generated from the following files:
  • cdc_msc_class.h
  • msc_bot_scsi.h


AT32F403 Firmwary Library: csw_type Struct Reference

Data Fields
csw_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi » USB_msc_bot_scsi_definition

command block wrapper More...

#include <cdc_msc_class.h>

Data Fields

uint32_t | dCSWSignature
uint32_t | dCSWTag
uint32_t | dCSWDataResidue
uint32_t | bCSWStatus

Detailed Description

command block wrapper

Definition at line 200 of file cdc_msc_class.h.

The documentation for this struct was generated from the following files:
  • cdc_msc_class.h
  • msc_bot_scsi.h


AT32F403 Firmwary Library: sense_type Struct Reference

Data Fields
sense_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi » USB_msc_bot_scsi_definition

request sense standard data More...

#include <cdc_msc_class.h>

Data Fields

uint8_t | err_code
uint8_t | reserved1
uint8_t | sense_key
uint32_t | information
uint8_t | as_length
uint32_t | reserved2
uint8_t | asc
uint8_t | ascq
uint32_t | reserved3

Detailed Description

request sense standard data

Definition at line 211 of file cdc_msc_class.h.

The documentation for this struct was generated from the following files:
  • cdc_msc_class.h
  • msc_bot_scsi.h


AT32F403 Firmwary Library: msc_type Struct Reference

Data Fields
msc_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi » USB_msc_bot_scsi_definition

#include <cdc_msc_class.h>

Data Fields

uint8_t | msc_state
uint8_t | bot_status
uint32_t | max_lun
uint32_t | blk_nbr [1]
uint32_t | blk_size [1]
uint32_t | blk_addr
uint32_t | blk_len
uint32_t | data_len
uint8_t | data [4096]
uint32_t | alt_setting
cbw_type cbw_struct
csw_type csw_struct
uint64_t | blk_addr

Detailed Description

Definition at line 225 of file cdc_msc_class.h.

Field Documentation

◆ blk_addr

uint64_t msc_type::blk_addr

Definition at line 200 of file msc_bot_scsi.h.

The documentation for this struct was generated from the following files:
  • cdc_msc_class.h
  • msc_bot_scsi.h


AT32F403 Firmwary Library: cdc_msc_struct_type Struct Reference

Data Fields
cdc_msc_struct_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types | AT32F403_middlewares_usbd_class » USB_msc_bot_scsi » USB_msc_bot_scsi_definition

usb cdc class struct More...

#include <cdc_msc_class.h>

Data Fields

uint32_t | alt_setting
uint8_t | g_rx_buff [0x40]
uint8_t | g_cmd [0x08]
uint8_t | g_req
uint16_t | g_len
uint16_t | g_rxlen
__IO uint8_t | g_tx_completed
__IO uint8_t | g_rx_completed
linecoding_type linecoding
uint8_t | msc_state
uint8_t | bot_status
uint32_t | max_lun
uint32_t | blk_nbr [1]
uint32_t | blk_size [1]
uint64_t | blk_addr
uint32_t | blk_len
uint32_t | data_len
uint8_t | data [4096]
cbw_type cbw_struct
csw_type csw_struct

Detailed Description

usb cdc class struct

Definition at line 250 of file cdc_msc_class.h.

The documentation for this struct was generated from the following file:
  • cdc_msc_class.h


AT32F403 Firmwary Library: USB_cdc_msc_class_exported_functions

Functions | Variables
USB_cdc_msc_class_exported_functions
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types

Functions

uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

usbd_class_handler cdc_msc_class_handler

Detailed Description

Function Documentation

◆ usb_vcp_get_rxdata()

uint16_t usb_vcp_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len
Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 343 of file cdc_class.c.

Referenced by main().

◆ usb_vcp_send_data()

error_status usb_vcp_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status
Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 373 of file cdc_class.c.

Referenced by main().

Variable Documentation

◆ cdc_msc_class_handler

usbd_class_handler cdc_msc_class_handler
extern

Definition at line 70 of file cdc_msc_class.c.

Referenced by main().


AT32F403 Firmwary Library: cdc_struct_type Struct Reference

Data Fields
cdc_struct_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types

usb cdc class struct More...

#include <cdc_class.h>

Data Fields

uint32_t | alt_setting
uint8_t | g_rx_buff [0x40]
uint8_t | g_cmd [0x08]
uint8_t | g_req
uint16_t | g_len
uint16_t | g_rxlen
__IO uint8_t | g_tx_completed
__IO uint8_t | g_rx_completed
linecoding_type linecoding

Detailed Description

usb cdc class struct

Definition at line 73 of file cdc_class.h.

Field Documentation

◆ alt_setting

uint32_t cdc_struct_type::alt_setting

Definition at line 75 of file cdc_class.h.

Referenced by cdc_struct_init(), and class_setup_handler().

◆ g_cmd

uint8_t cdc_struct_type::g_cmd[0x08]

Definition at line 77 of file cdc_class.h.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

◆ g_len

uint16_t cdc_struct_type::g_len

Definition at line 79 of file cdc_class.h.

Referenced by class_setup_handler().

◆ g_req

uint8_t cdc_struct_type::g_req

Definition at line 78 of file cdc_class.h.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

◆ g_rx_buff

uint8_t cdc_struct_type::g_rx_buff[0x40]

Definition at line 76 of file cdc_class.h.

Referenced by class_init_handler(), and usb_vcp_get_rxdata().

◆ g_rx_completed

__IO uint8_t cdc_struct_type::g_rx_completed

Definition at line 80 of file cdc_class.h.

Referenced by cdc_struct_init(), class_out_handler(), and usb_vcp_get_rxdata().

◆ g_rxlen

uint16_t cdc_struct_type::g_rxlen

Definition at line 79 of file cdc_class.h.

Referenced by class_out_handler(), and usb_vcp_get_rxdata().

◆ g_tx_completed

__IO uint8_t cdc_struct_type::g_tx_completed

Definition at line 80 of file cdc_class.h.

Referenced by cdc_struct_init(), class_in_handler(), and usb_vcp_send_data().

◆ linecoding

linecoding_type cdc_struct_type::linecoding

Definition at line 81 of file cdc_class.h.

Referenced by cdc_struct_init(), and usb_vcp_cmd_process().

The documentation for this struct was generated from the following file:
  • cdc_class.h


AT32F403 Firmwary Library: vcp_keyboard_type Struct Reference

Data Fields
vcp_keyboard_type Struct Reference
AT32F403_middlewares_usbd_class » USB_cdc_class | AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class | AT32F403_middlewares_usbd_class » USB_cdc_msc_class » USB_cdc_class_exported_types

#include <cdc_keyboard_class.h>

Data Fields

uint32_t | alt_setting
uint32_t | hid_protocol
uint32_t | hid_set_idle
uint8_t | hid_set_report [64]
uint8_t | g_rx_buff [0x40]
uint8_t | g_cmd [0x08]
uint8_t | g_req
uint8_t | hid_state
uint16_t | g_len
uint16_t | g_rxlen
__IO uint8_t | g_tx_completed
__IO uint8_t | g_rx_completed
__IO uint8_t | g_keyboard_tx_completed
linecoding_type linecoding

Detailed Description

Definition at line 72 of file cdc_keyboard_class.h.

Field Documentation

◆ alt_setting

uint32_t vcp_keyboard_type::alt_setting

Definition at line 74 of file cdc_keyboard_class.h.

Referenced by cdc_class_setup_handler(), and keyboard_class_setup_handler().

◆ g_cmd

uint8_t vcp_keyboard_type::g_cmd[0x08]

Definition at line 80 of file cdc_keyboard_class.h.

Referenced by cdc_class_setup_handler(), and class_ept0_rx_handler().

◆ g_keyboard_tx_completed

__IO uint8_t vcp_keyboard_type::g_keyboard_tx_completed

Definition at line 86 of file cdc_keyboard_class.h.

Referenced by class_in_handler(), class_init_handler(), and keyboard_send_string().

◆ g_len

uint16_t vcp_keyboard_type::g_len

Definition at line 83 of file cdc_keyboard_class.h.

Referenced by cdc_class_setup_handler().

◆ g_req

uint8_t vcp_keyboard_type::g_req

Definition at line 81 of file cdc_keyboard_class.h.

Referenced by cdc_class_setup_handler(), and class_ept0_rx_handler().

◆ g_rx_buff

uint8_t vcp_keyboard_type::g_rx_buff[0x40]

Definition at line 79 of file cdc_keyboard_class.h.

Referenced by class_init_handler(), and usb_vcpkybrd_vcp_get_rxdata().

◆ g_rx_completed

__IO uint8_t vcp_keyboard_type::g_rx_completed

Definition at line 85 of file cdc_keyboard_class.h.

Referenced by class_out_handler(), and usb_vcpkybrd_vcp_get_rxdata().

◆ g_rxlen

uint16_t vcp_keyboard_type::g_rxlen

Definition at line 83 of file cdc_keyboard_class.h.

Referenced by class_out_handler(), and usb_vcpkybrd_vcp_get_rxdata().

◆ g_tx_completed

__IO uint8_t vcp_keyboard_type::g_tx_completed

Definition at line 84 of file cdc_keyboard_class.h.

Referenced by class_in_handler(), class_init_handler(), and usb_vcpkybrd_vcp_send_data().

◆ hid_protocol

uint32_t vcp_keyboard_type::hid_protocol

Definition at line 75 of file cdc_keyboard_class.h.

Referenced by keyboard_class_setup_handler().

◆ hid_set_idle

uint32_t vcp_keyboard_type::hid_set_idle

Definition at line 76 of file cdc_keyboard_class.h.

Referenced by keyboard_class_setup_handler().

◆ hid_set_report

uint8_t vcp_keyboard_type::hid_set_report[64]

Definition at line 78 of file cdc_keyboard_class.h.

Referenced by keyboard_class_setup_handler().

◆ hid_state

uint8_t vcp_keyboard_type::hid_state

Definition at line 82 of file cdc_keyboard_class.h.

Referenced by class_ept0_rx_handler(), and keyboard_class_setup_handler().

◆ linecoding

linecoding_type vcp_keyboard_type::linecoding

Definition at line 88 of file cdc_keyboard_class.h.

Referenced by class_init_handler(), and usb_vcp_cmd_process().

The documentation for this struct was generated from the following file:
  • cdc_keyboard_class.h


AT32F403 Firmwary Library: USB_cdc_class_exported_functions

Functions | Variables
USB_cdc_class_exported_functions
AT32F403_middlewares_usbd_class » USB_cdc_class

Functions

uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

usbd_class_handler cdc_class_handler

Detailed Description

Function Documentation

◆ usb_vcp_get_rxdata()

uint16_t usb_vcp_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len
Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 343 of file cdc_class.c.

◆ usb_vcp_send_data()

error_status usb_vcp_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status
Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 373 of file cdc_class.c.

Variable Documentation

◆ cdc_class_handler

usbd_class_handler cdc_class_handler
extern

Definition at line 67 of file cdc_class.c.

Referenced by main().


AT32F403 Firmwary Library: USB_cdc_desc

Modules | Variables
USB_cdc_desc
AT32F403_middlewares_usbd_class

usb device cdc descriptor More...

Modules

USB_cdc_desc_private_functions
USB_cdc_desc_definition

Variables

usbd_desc_handler cdc_desc_handler
device descriptor handler structure More...

Detailed Description

usb device cdc descriptor

Variable Documentation

◆ cdc_desc_handler

usbd_desc_handler cdc_desc_handler
extern

device descriptor handler structure

Definition at line 64 of file cdc_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_cdc_desc_private_functions

Functions | Variables
USB_cdc_desc_private_functions
AT32F403_middlewares_usbd_class » USB_cdc_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler cdc_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 429 of file cdc_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 351 of file cdc_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 331 of file cdc_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 417 of file cdc_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 371 of file cdc_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 382 of file cdc_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 361 of file cdc_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 394 of file cdc_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 341 of file cdc_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 406 of file cdc_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 309 of file cdc_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 283 of file cdc_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 257 of file cdc_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x02,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5740 ),
HBYTE( 0x5740 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb configuration standard descriptor

Definition at line 59 of file cdc_desc.c.

◆ cdc_desc_handler

usbd_desc_handler cdc_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: cdc_desc.c:351
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: cdc_desc.c:331
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: cdc_desc.c:382
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: cdc_desc.c:341
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: cdc_desc.c:417
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: cdc_desc.c:361
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: cdc_desc.c:394
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: cdc_desc.c:429
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: cdc_desc.c:371
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: cdc_desc.c:406

device descriptor handler structure

Definition at line 64 of file cdc_desc.c.

Referenced by main().

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
67 ,
g_usbd_configuration
}

Definition at line 229 of file cdc_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 222 of file cdc_desc.c.

Referenced by get_device_descriptor().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 236 of file cdc_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 243 of file cdc_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 249 of file cdc_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_cdc_desc_definition

Macros
USB_cdc_desc_definition
AT32F403_middlewares_usbd_class » USB_cdc_desc | AT32F403_middlewares_usbd_class » USB_cdc_msc_desc

Macros

#define | CDC_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_CDC_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_CDC_PRODUCT_ID 0x5740
#define | USBD_CDC_CONFIG_DESC_SIZE 67
usb descriptor size define More...
#define | USBD_CDC_SIZ_STRING_LANGID 4
#define | USBD_CDC_SIZ_STRING_SERIAL 0x1A
#define | USBD_CDC_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_CDC_DESC_PRODUCT_STRING "AT32 Virtual Com Port "
#define | USBD_CDC_DESC_CONFIGURATION_STRING "Virtual ComPort Config"
#define | USBD_CDC_DESC_INTERFACE_STRING "Virtual ComPort Interface"
#define | CDC_HID_BINTERVAL_TIME 0xFF
usb endpoint interval define More...
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)
#define | CDC_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_CDC_MSC_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_CDC_MSC_PRODUCT_ID 0x5760
#define | USBD_CDC_MSC_CONFIG_DESC_SIZE 106
usb descriptor size define More...
#define | USBD_CDC_SIZ_STRING_LANGID 4
#define | USBD_CDC_SIZ_STRING_SERIAL 0x1A
#define | USBD_CDC_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_CDC_DESC_PRODUCT_STRING "AT32 Composite VCP and MSC "
#define | USBD_CDC_DESC_CONFIGURATION_STRING "Composite VCP and MSC Config"
#define | USBD_CDC_DESC_INTERFACE_STRING "Composite VCP and MSC Interface"
#define | CDC_HID_BINTERVAL_TIME 0xFF
usb endpoint interval define More...
#define | VCPMSC_MSC_INTERFACE 0x00
usb interface define More...
#define | VCPMSC_CDC_INTERFACE 0x01
#define | VCPMSC_CDC_DATA_INTERFACE 0x02
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Detailed Description

Macro Definition Documentation

◆ CDC_BCD_NUM [1/2]

#define CDC_BCD_NUM 0x0110

usb bcd number define

Definition at line 50 of file cdc_desc.h.

◆ CDC_BCD_NUM [2/2]

#define CDC_BCD_NUM 0x0110

usb bcd number define

Definition at line 50 of file cdc_msc_desc.h.

◆ CDC_HID_BINTERVAL_TIME [1/2]

#define CDC_HID_BINTERVAL_TIME 0xFF

usb endpoint interval define

Definition at line 76 of file cdc_desc.h.

◆ CDC_HID_BINTERVAL_TIME [2/2]

#define CDC_HID_BINTERVAL_TIME 0xFF

usb endpoint interval define

Definition at line 77 of file cdc_msc_desc.h.

◆ MCU_ID1 [1/2]

#define MCU_ID1 (0x1FFFF7E8)

usb mcu id address deine

Definition at line 81 of file cdc_desc.h.

◆ MCU_ID1 [2/2]

#define MCU_ID1 (0x1FFFF7E8)

usb mcu id address deine

Definition at line 90 of file cdc_msc_desc.h.

◆ MCU_ID2 [1/2]

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 82 of file cdc_desc.h.

◆ MCU_ID2 [2/2]

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 91 of file cdc_msc_desc.h.

◆ MCU_ID3 [1/2]

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 83 of file cdc_desc.h.

◆ MCU_ID3 [2/2]

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 92 of file cdc_msc_desc.h.

◆ USBD_CDC_CONFIG_DESC_SIZE

#define USBD_CDC_CONFIG_DESC_SIZE 67

usb descriptor size define

Definition at line 61 of file cdc_desc.h.

◆ USBD_CDC_DESC_CONFIGURATION_STRING [1/2]

#define USBD_CDC_DESC_CONFIGURATION_STRING "Virtual ComPort Config"

Definition at line 70 of file cdc_desc.h.

◆ USBD_CDC_DESC_CONFIGURATION_STRING [2/2]

#define USBD_CDC_DESC_CONFIGURATION_STRING "Composite VCP and MSC Config"

Definition at line 71 of file cdc_msc_desc.h.

◆ USBD_CDC_DESC_INTERFACE_STRING [1/2]

#define USBD_CDC_DESC_INTERFACE_STRING "Virtual ComPort Interface"

Definition at line 71 of file cdc_desc.h.

◆ USBD_CDC_DESC_INTERFACE_STRING [2/2]

#define USBD_CDC_DESC_INTERFACE_STRING "Composite VCP and MSC Interface"

Definition at line 72 of file cdc_msc_desc.h.

◆ USBD_CDC_DESC_MANUFACTURER_STRING [1/2]

#define USBD_CDC_DESC_MANUFACTURER_STRING "Artery"

usb string define(vendor, product configuration, interface)

Definition at line 68 of file cdc_desc.h.

◆ USBD_CDC_DESC_MANUFACTURER_STRING [2/2]

#define USBD_CDC_DESC_MANUFACTURER_STRING "Artery"

usb string define(vendor, product configuration, interface)

Definition at line 69 of file cdc_msc_desc.h.

◆ USBD_CDC_DESC_PRODUCT_STRING [1/2]

#define USBD_CDC_DESC_PRODUCT_STRING "AT32 Virtual Com Port "

Definition at line 69 of file cdc_desc.h.

◆ USBD_CDC_DESC_PRODUCT_STRING [2/2]

#define USBD_CDC_DESC_PRODUCT_STRING "AT32 Composite VCP and MSC "

Definition at line 70 of file cdc_msc_desc.h.

◆ USBD_CDC_MSC_CONFIG_DESC_SIZE

#define USBD_CDC_MSC_CONFIG_DESC_SIZE 106

usb descriptor size define

Definition at line 62 of file cdc_msc_desc.h.

◆ USBD_CDC_MSC_PRODUCT_ID

#define USBD_CDC_MSC_PRODUCT_ID 0x5760

Definition at line 56 of file cdc_msc_desc.h.

◆ USBD_CDC_MSC_VENDOR_ID

#define USBD_CDC_MSC_VENDOR_ID 0x2E3C

usb vendor id and product id define

Definition at line 55 of file cdc_msc_desc.h.

◆ USBD_CDC_PRODUCT_ID

#define USBD_CDC_PRODUCT_ID 0x5740

Definition at line 56 of file cdc_desc.h.

◆ USBD_CDC_SIZ_STRING_LANGID [1/2]

#define USBD_CDC_SIZ_STRING_LANGID 4

Definition at line 62 of file cdc_desc.h.

◆ USBD_CDC_SIZ_STRING_LANGID [2/2]

#define USBD_CDC_SIZ_STRING_LANGID 4

Definition at line 63 of file cdc_msc_desc.h.

◆ USBD_CDC_SIZ_STRING_SERIAL [1/2]

#define USBD_CDC_SIZ_STRING_SERIAL 0x1A

Definition at line 63 of file cdc_desc.h.

◆ USBD_CDC_SIZ_STRING_SERIAL [2/2]

#define USBD_CDC_SIZ_STRING_SERIAL 0x1A

Definition at line 64 of file cdc_msc_desc.h.

◆ USBD_CDC_VENDOR_ID

#define USBD_CDC_VENDOR_ID 0x2E3C

usb vendor id and product id define

Definition at line 55 of file cdc_desc.h.

◆ VCPMSC_CDC_DATA_INTERFACE

#define VCPMSC_CDC_DATA_INTERFACE 0x02

Definition at line 84 of file cdc_msc_desc.h.

◆ VCPMSC_CDC_INTERFACE

#define VCPMSC_CDC_INTERFACE 0x01

Definition at line 83 of file cdc_msc_desc.h.

◆ VCPMSC_MSC_INTERFACE

#define VCPMSC_MSC_INTERFACE 0x00

usb interface define

Definition at line 82 of file cdc_msc_desc.h.


AT32F403 Firmwary Library: USB_cdc_keyboard_class

Modules
USB_cdc_keyboard_class
AT32F403_middlewares_usbd_class

usb device class composite cdc and keyboard More...

Modules

USB_cdc_keyboard_class_private_functions
USB_cdc_keyboard_class_definition
USB_cdc_class_exported_types
USB_cdc_keyboar_class_exported_functions

Detailed Description

usb device class composite cdc and keyboard


AT32F403 Firmwary Library: USB_cdc_keyboard_class_private_functions

Macros | Functions | Variables
USB_cdc_keyboard_class_private_functions
AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class

Macros

#define SHIFT 0x80

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
static usb_sts_type | cdc_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | keyboard_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static void | usb_vcp_cmd_process (void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device class request function More...
uint16_t | usb_vcpkybrd_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcpkybrd_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...
usb_sts_type | usb_vcpkybrd_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_vcpkybrd_keyboard_send_char (void *udev, uint8_t ascii_code)
usb keyoard send char More...

Variables

vcp_keyboard_type vcp_keyboard_struct
static const unsigned char _asciimap [128]
linecoding_type linecoding_vcpkybrd
usbd_class_handler cdc_keyboard_class_handler

Detailed Description

Macro Definition Documentation

◆ SHIFT

#define SHIFT 0x80

Definition at line 57 of file cdc_keyboard_class.c.

Function Documentation

◆ cdc_class_setup_handler()

static usb_sts_type cdc_class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 320 of file cdc_keyboard_class.c.

Referenced by class_setup_handler().

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 265 of file cdc_keyboard_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device class endpoint 0 out status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 474 of file cdc_keyboard_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device class endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 460 of file cdc_keyboard_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device class event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 564 of file cdc_keyboard_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 501 of file cdc_keyboard_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 222 of file cdc_keyboard_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 529 of file cdc_keyboard_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 291 of file cdc_keyboard_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device class sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 549 of file cdc_keyboard_class.c.

◆ keyboard_class_setup_handler()

static usb_sts_type keyboard_class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 381 of file cdc_keyboard_class.c.

Referenced by class_setup_handler().

◆ usb_vcp_cmd_process()

static void usb_vcp_cmd_process | ( | void * | udev,
 |  | uint8_t | cmd,
 |  | uint8_t * | buff,
 |  | uint16_t | len
 | ) |  |
static

usb device class request function

Parameters
udev | to the structure of usbd_core_type
cmd | request number
buff | request buffer
len | buffer length
Return values
none

Definition at line 652 of file cdc_keyboard_class.c.

Referenced by cdc_class_setup_handler(), and class_ept0_rx_handler().

◆ usb_vcpkybrd_class_send_report()

usb_sts_type usb_vcpkybrd_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 687 of file cdc_keyboard_class.c.

Referenced by usb_vcpkybrd_keyboard_send_char().

◆ usb_vcpkybrd_keyboard_send_char()

void usb_vcpkybrd_keyboard_send_char | ( | void * | udev,
 |  | uint8_t | ascii_code
 | ) |  |

usb keyoard send char

Parameters
udev | to the structure of usbd_core_type
op | operation
Return values
none

Definition at line 705 of file cdc_keyboard_class.c.

Referenced by keyboard_send_string().

◆ usb_vcpkybrd_vcp_get_rxdata()

uint16_t usb_vcpkybrd_vcp_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 595 of file cdc_keyboard_class.c.

Referenced by main().

◆ usb_vcpkybrd_vcp_send_data()

error_status usb_vcpkybrd_vcp_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 626 of file cdc_keyboard_class.c.

Referenced by main().

Variable Documentation

◆ _asciimap

const unsigned char _asciimap[128]
static

Definition at line 58 of file cdc_keyboard_class.c.

Referenced by usb_vcpkybrd_keyboard_send_char().

◆ cdc_keyboard_class_handler

usbd_class_handler cdc_keyboard_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&vcp_keyboard_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: cdc_keyboard_class.c:549
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: cdc_keyboard_class.c:501
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: cdc_keyboard_class.c:265
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_keyboard_class.c:291
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: cdc_keyboard_class.c:460
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: cdc_keyboard_class.c:474
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: cdc_keyboard_class.c:564
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: cdc_keyboard_class.c:222
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: cdc_keyboard_class.c:529
vcp_keyboard_struct
vcp_keyboard_type vcp_keyboard_struct
Definition: cdc_keyboard_class.c:55

Definition at line 203 of file cdc_keyboard_class.c.

Referenced by main().

◆ linecoding_vcpkybrd

linecoding_type linecoding_vcpkybrd
Initial value:
=
{
115200,
0x00,
0x00,
0x08
}

Definition at line 191 of file cdc_keyboard_class.c.

Referenced by class_init_handler().

◆ vcp_keyboard_struct

vcp_keyboard_type vcp_keyboard_struct

Definition at line 55 of file cdc_keyboard_class.c.


AT32F403 Firmwary Library: USB_cdc_keyboard_class_definition

Macros
USB_cdc_keyboard_class_definition
AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class

Macros

#define | USBD_VCPKYBRD_CDC_INT_EPT 0x82
usb use endpoint define More...
#define | USBD_VCPKYBRD_CDC_BULK_IN_EPT 0x81
#define | USBD_VCPKYBRD_CDC_BULK_OUT_EPT 0x01
#define | USBD_VCPKYBRD_HID_IN_EPT 0x83
#define | USBD_VCPKYBRD_IN_MAXPACKET_SIZE 0x40
usb in and out max packet size define More...
#define | USBD_VCPKYBRD_OUT_MAXPACKET_SIZE 0x40
#define | USBD_VCPKYBRD_CMD_MAXPACKET_SIZE 0x08

Detailed Description

Macro Definition Documentation

◆ USBD_VCPKYBRD_CDC_BULK_IN_EPT

#define USBD_VCPKYBRD_CDC_BULK_IN_EPT 0x81

Definition at line 52 of file cdc_keyboard_class.h.

◆ USBD_VCPKYBRD_CDC_BULK_OUT_EPT

#define USBD_VCPKYBRD_CDC_BULK_OUT_EPT 0x01

Definition at line 53 of file cdc_keyboard_class.h.

◆ USBD_VCPKYBRD_CDC_INT_EPT

#define USBD_VCPKYBRD_CDC_INT_EPT 0x82

usb use endpoint define

Definition at line 51 of file cdc_keyboard_class.h.

◆ USBD_VCPKYBRD_CMD_MAXPACKET_SIZE

#define USBD_VCPKYBRD_CMD_MAXPACKET_SIZE 0x08

Definition at line 61 of file cdc_keyboard_class.h.

◆ USBD_VCPKYBRD_HID_IN_EPT

#define USBD_VCPKYBRD_HID_IN_EPT 0x83

Definition at line 54 of file cdc_keyboard_class.h.

◆ USBD_VCPKYBRD_IN_MAXPACKET_SIZE

#define USBD_VCPKYBRD_IN_MAXPACKET_SIZE 0x40

usb in and out max packet size define

Definition at line 59 of file cdc_keyboard_class.h.

◆ USBD_VCPKYBRD_OUT_MAXPACKET_SIZE

#define USBD_VCPKYBRD_OUT_MAXPACKET_SIZE 0x40

Definition at line 60 of file cdc_keyboard_class.h.


AT32F403 Firmwary Library: USB_cdc_keyboar_class_exported_functions

Functions | Variables
USB_cdc_keyboar_class_exported_functions
AT32F403_middlewares_usbd_class » USB_cdc_keyboard_class

Functions

uint16_t | usb_vcpkybrd_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcpkybrd_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...
usb_sts_type | usb_vcpkybrd_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_vcpkybrd_keyboard_send_char (void *udev, uint8_t ascii_code)
usb keyoard send char More...

Variables

usbd_class_handler cdc_keyboard_class_handler

Detailed Description

Function Documentation

◆ usb_vcpkybrd_class_send_report()

usb_sts_type usb_vcpkybrd_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 687 of file cdc_keyboard_class.c.

Referenced by usb_vcpkybrd_keyboard_send_char().

◆ usb_vcpkybrd_keyboard_send_char()

void usb_vcpkybrd_keyboard_send_char | ( | void * | udev,
 |  | uint8_t | ascii_code
 | ) |  |

usb keyoard send char

Parameters
udev | to the structure of usbd_core_type
op | operation
Return values
none

Definition at line 705 of file cdc_keyboard_class.c.

Referenced by keyboard_send_string().

◆ usb_vcpkybrd_vcp_get_rxdata()

uint16_t usb_vcpkybrd_vcp_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 595 of file cdc_keyboard_class.c.

Referenced by main().

◆ usb_vcpkybrd_vcp_send_data()

error_status usb_vcpkybrd_vcp_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 626 of file cdc_keyboard_class.c.

Referenced by main().

Variable Documentation

◆ cdc_keyboard_class_handler

usbd_class_handler cdc_keyboard_class_handler
extern

Definition at line 203 of file cdc_keyboard_class.c.

Referenced by main().


AT32F403 Firmwary Library: USB_cdc_keyboard_desc

Modules | Variables
USB_cdc_keyboard_desc
AT32F403_middlewares_usbd_class

usb device cdc keyboard descriptor More...

Modules

USB_cdc_keyboard_desc_private_functions
USB_cdc_keyboard_desc_definition

Variables

usbd_desc_handler cdc_keyboard_desc_handler
device descriptor handler structure More...

Detailed Description

usb device cdc keyboard descriptor

Variable Documentation

◆ cdc_keyboard_desc_handler

usbd_desc_handler cdc_keyboard_desc_handler
extern

device descriptor handler structure

Definition at line 63 of file cdc_keyboard_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_cdc_keyboard_desc_private_functions

Functions | Variables
USB_cdc_keyboard_desc_private_functions
AT32F403_middlewares_usbd_class » USB_cdc_keyboard_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler cdc_keyboard_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc
uint8_t | g_vcpkybrd_hid_usb_desc [9]
usb hid descriptor More...
uint8_t | g_usbd_vcpkybrd_hid_report [63]
usb hid keyboard report descriptor More...

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 534 of file cdc_keyboard_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 456 of file cdc_keyboard_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 436 of file cdc_keyboard_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 522 of file cdc_keyboard_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 476 of file cdc_keyboard_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 487 of file cdc_keyboard_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 466 of file cdc_keyboard_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 499 of file cdc_keyboard_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 446 of file cdc_keyboard_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 511 of file cdc_keyboard_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 414 of file cdc_keyboard_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 388 of file cdc_keyboard_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 362 of file cdc_keyboard_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0xEF,
0x02,
0x01,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5750 ),
HBYTE( 0x5750 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb hid keyboard report descriptor

usb hid descriptor

usb configuration standard descriptor

Definition at line 58 of file cdc_keyboard_desc.c.

◆ cdc_keyboard_desc_handler

usbd_desc_handler cdc_keyboard_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: cdc_keyboard_desc.c:456
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: cdc_keyboard_desc.c:436
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: cdc_keyboard_desc.c:487
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: cdc_keyboard_desc.c:446
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: cdc_keyboard_desc.c:522
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: cdc_keyboard_desc.c:466
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: cdc_keyboard_desc.c:499
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: cdc_keyboard_desc.c:534
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: cdc_keyboard_desc.c:476
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: cdc_keyboard_desc.c:511

device descriptor handler structure

Definition at line 63 of file cdc_keyboard_desc.c.

Referenced by main().

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
108 ,
g_usbd_configuration
}

Definition at line 334 of file cdc_keyboard_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 327 of file cdc_keyboard_desc.c.

Referenced by get_device_descriptor().

◆ g_usbd_vcpkybrd_hid_report

ALIGNED_HEAD uint8_t g_usbd_vcpkybrd_hid_report
extern

usb hid keyboard report descriptor

Definition at line 264 of file cdc_keyboard_desc.c.

Referenced by keyboard_class_setup_handler().

◆ g_vcpkybrd_hid_usb_desc

ALIGNED_HEAD uint8_t g_vcpkybrd_hid_usb_desc
extern
Initial value:
=
{
0x09,
HID_CLASS_DESC_HID,
LBYTE( 0x0110 ),
HBYTE( 0x0110 ),
0x00,
0x01,
HID_CLASS_DESC_REPORT,
LBYTE(sizeof(g_usbd_vcpkybrd_hid_report)),
HBYTE(sizeof(g_usbd_vcpkybrd_hid_report)),
}
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
g_usbd_vcpkybrd_hid_report
uint8_t g_usbd_vcpkybrd_hid_report[63]
usb hid keyboard report descriptor
Definition: cdc_keyboard_desc.c:264

usb hid descriptor

Definition at line 245 of file cdc_keyboard_desc.c.

Referenced by keyboard_class_setup_handler().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 341 of file cdc_keyboard_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 348 of file cdc_keyboard_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 354 of file cdc_keyboard_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_cdc_keyboard_desc_definition

Macros
USB_cdc_keyboard_desc_definition
AT32F403_middlewares_usbd_class » USB_cdc_keyboard_desc

Macros

#define | VCPKYBRD_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_VCPKYBRD_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_VCPKYBRD_PRODUCT_ID 0x5750
#define | USBD_VCPKYBRD_CONFIG_DESC_SIZE 108
usb descriptor size define More...
#define | USBD_VCPKYBRD_HID_SIZ_REPORT_DESC 63
#define | USBD_VCPKYBRD_SIZ_STRING_LANGID 4
#define | USBD_VCPKYBRD_SIZ_STRING_SERIAL 0x1A
#define | USBD_VCPKYBRD_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_VCPKYBRD_DESC_PRODUCT_STRING "AT32 Composite VCP and Keyboard"
#define | USBD_VCPKYBRD_DESC_CONFIGURATION_STRING "Composite VCP and Keyboard Config"
#define | USBD_VCPKYBRD_DESC_INTERFACE_STRING "Composite VCP and Keyboard Interface"
#define | VCPKYBRD_HID_BINTERVAL_TIME 0x0A
usb endpoint interval define More...
#define | VCPKYBRD_CDC_INTERFACE 0x00
usb interface define More...
#define | VCPKYBRD_CDC_DATA_INTERFACE 0x01
#define | VCPKYBRD_KEYBOARD_INTERFACE 0x02
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Detailed Description

Macro Definition Documentation

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

usb mcu id address deine

Definition at line 91 of file cdc_keyboard_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 92 of file cdc_keyboard_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 93 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_CONFIG_DESC_SIZE

#define USBD_VCPKYBRD_CONFIG_DESC_SIZE 108

usb descriptor size define

Definition at line 63 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_DESC_CONFIGURATION_STRING

#define USBD_VCPKYBRD_DESC_CONFIGURATION_STRING "Composite VCP and Keyboard Config"

Definition at line 73 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_DESC_INTERFACE_STRING

#define USBD_VCPKYBRD_DESC_INTERFACE_STRING "Composite VCP and Keyboard Interface"

Definition at line 74 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_DESC_MANUFACTURER_STRING

#define USBD_VCPKYBRD_DESC_MANUFACTURER_STRING "Artery"

usb string define(vendor, product configuration, interface)

Definition at line 71 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_DESC_PRODUCT_STRING

#define USBD_VCPKYBRD_DESC_PRODUCT_STRING "AT32 Composite VCP and Keyboard"

Definition at line 72 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_HID_SIZ_REPORT_DESC

#define USBD_VCPKYBRD_HID_SIZ_REPORT_DESC 63

Definition at line 64 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_PRODUCT_ID

#define USBD_VCPKYBRD_PRODUCT_ID 0x5750

Definition at line 57 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_SIZ_STRING_LANGID

#define USBD_VCPKYBRD_SIZ_STRING_LANGID 4

Definition at line 65 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_SIZ_STRING_SERIAL

#define USBD_VCPKYBRD_SIZ_STRING_SERIAL 0x1A

Definition at line 66 of file cdc_keyboard_desc.h.

◆ USBD_VCPKYBRD_VENDOR_ID

#define USBD_VCPKYBRD_VENDOR_ID 0x2E3C

usb vendor id and product id define

Definition at line 56 of file cdc_keyboard_desc.h.

◆ VCPKYBRD_BCD_NUM

#define VCPKYBRD_BCD_NUM 0x0110

usb bcd number define

Definition at line 51 of file cdc_keyboard_desc.h.

◆ VCPKYBRD_CDC_DATA_INTERFACE

#define VCPKYBRD_CDC_DATA_INTERFACE 0x01

Definition at line 85 of file cdc_keyboard_desc.h.

◆ VCPKYBRD_CDC_INTERFACE

#define VCPKYBRD_CDC_INTERFACE 0x00

usb interface define

Definition at line 84 of file cdc_keyboard_desc.h.

◆ VCPKYBRD_HID_BINTERVAL_TIME

#define VCPKYBRD_HID_BINTERVAL_TIME 0x0A

usb endpoint interval define

Definition at line 79 of file cdc_keyboard_desc.h.

◆ VCPKYBRD_KEYBOARD_INTERFACE

#define VCPKYBRD_KEYBOARD_INTERFACE 0x02

Definition at line 86 of file cdc_keyboard_desc.h.


AT32F403 Firmwary Library: USB_cdc_msc_class

Modules
USB_cdc_msc_class
AT32F403_middlewares_usbd_class

usb device class cdc msc demo More...

Modules

USB_cdc_msc_class_private_functions
USB_cdc_class_definition
USB_cdc_class_exported_types

Detailed Description

usb device class cdc msc demo


AT32F403 Firmwary Library: USB_cdc_msc_class_private_functions

Functions | Variables
USB_cdc_msc_class_private_functions
AT32F403_middlewares_usbd_class » USB_cdc_msc_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
static usb_sts_type | cdc_struct_init (cdc_msc_struct_type *pcdc)
usb device cdc init More...
void | usb_usart_config (linecoding_type linecoding)
this function handles usart2 and linecoding config. More...
static void | usb_vcp_cmd_process (void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device function More...
static usb_sts_type | cdc_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | msc_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

linecoding_type linecoding
cdc_msc_struct_type cdc_msc_struct
usbd_class_handler cdc_msc_class_handler

Detailed Description

Function Documentation

◆ cdc_class_setup_handler()

static usb_sts_type cdc_class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 191 of file cdc_msc_class.c.

Referenced by class_setup_handler().

◆ cdc_struct_init()

static usb_sts_type cdc_struct_init ( cdc_msc_struct_type * pcdc )
static

usb device cdc init

Parameters
pcdc to the structure of cdc_struct
Return values
status of usb_sts_type

Definition at line 461 of file cdc_msc_class.c.

Referenced by class_init_handler().

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 125 of file cdc_msc_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device endpoint 0 out status stage complete

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 337 of file cdc_msc_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 323 of file cdc_msc_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 431 of file cdc_msc_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 359 of file cdc_msc_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb custom hid endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 88 of file cdc_msc_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 387 of file cdc_msc_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 154 of file cdc_msc_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 416 of file cdc_msc_class.c.

◆ msc_class_setup_handler()

static usb_sts_type msc_class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

< get max lun

< bulk only mass storage reset

Definition at line 252 of file cdc_msc_class.c.

Referenced by class_setup_handler().

◆ usb_usart_config()

void usb_usart_config ( linecoding_type linecoding )

this function handles usart2 and linecoding config.

Parameters
linecoding linecoding value
Return values
none

< usart receive data buffer full interrupt

Definition at line 279 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

Referenced by usb_vcp_cmd_process().

◆ usb_vcp_cmd_process()

static void usb_vcp_cmd_process | ( | void * | udev,
 |  | uint8_t | cmd,
 |  | uint8_t * | buff,
 |  | uint16_t | len
 | ) |  |
static

usb device function

Parameters
udev | to the structure of usbd_core_type
cmd | request number
buff | request buffer
len | buffer length
Return values
none

Definition at line 534 of file cdc_msc_class.c.

Referenced by cdc_class_setup_handler(), and class_ept0_rx_handler().

◆ usb_vcp_get_rxdata()

uint16_t usb_vcp_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 479 of file cdc_msc_class.c.

◆ usb_vcp_send_data()

error_status usb_vcp_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 509 of file cdc_msc_class.c.

Variable Documentation

◆ cdc_msc_class_handler

usbd_class_handler cdc_msc_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&cdc_msc_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: cdc_msc_class.c:416
cdc_msc_struct
cdc_msc_struct_type cdc_msc_struct
Definition: cdc_msc_class.c:67
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: cdc_msc_class.c:359
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: cdc_msc_class.c:125
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_msc_class.c:154
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: cdc_msc_class.c:323
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: cdc_msc_class.c:337
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: cdc_msc_class.c:431
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: cdc_msc_class.c:88
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: cdc_msc_class.c:387

Definition at line 70 of file cdc_msc_class.c.

Referenced by main().

◆ cdc_msc_struct

cdc_msc_struct_type cdc_msc_struct

Definition at line 67 of file cdc_msc_class.c.

Referenced by msc_class_setup_handler().

◆ linecoding

linecoding_type linecoding
Initial value:
=
{
115200,
0,
0,
8
}

Definition at line 58 of file cdc_msc_class.c.

Referenced by cdc_struct_init(), and usb_usart_config().


AT32F403 Firmwary Library: USB_cdc_msc_desc

Modules | Variables
USB_cdc_msc_desc
AT32F403_middlewares_usbd_class

usb device cdc msc descriptor More...

Modules

USB_cdc_msc_desc_private_functions
USB_cdc_desc_definition

Variables

usbd_desc_handler cdc_msc_desc_handler
device descriptor handler structure More...

Detailed Description

usb device cdc msc descriptor

Variable Documentation

◆ cdc_msc_desc_handler

usbd_desc_handler cdc_msc_desc_handler
extern

device descriptor handler structure

Definition at line 67 of file cdc_msc_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_cdc_msc_desc_private_functions

Macros | Functions | Variables
USB_cdc_msc_desc_private_functions
AT32F403_middlewares_usbd_class » USB_cdc_msc_desc

Macros

#define USB_INTERFACE_ASSOCIATION_TYPE 0x0B

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler cdc_msc_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

Macro Definition Documentation

◆ USB_INTERFACE_ASSOCIATION_TYPE

#define USB_INTERFACE_ASSOCIATION_TYPE 0x0B

Definition at line 43 of file cdc_msc_desc.c.

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 482 of file cdc_msc_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 404 of file cdc_msc_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 384 of file cdc_msc_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 470 of file cdc_msc_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 424 of file cdc_msc_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 435 of file cdc_msc_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 414 of file cdc_msc_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 447 of file cdc_msc_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 394 of file cdc_msc_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 459 of file cdc_msc_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 362 of file cdc_msc_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 336 of file cdc_msc_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 310 of file cdc_msc_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0xEF,
0x02,
0x01,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5760 ),
HBYTE( 0x5760 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb configuration standard descriptor

Definition at line 62 of file cdc_msc_desc.c.

◆ cdc_msc_desc_handler

usbd_desc_handler cdc_msc_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: cdc_msc_desc.c:404
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: cdc_msc_desc.c:384
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: cdc_msc_desc.c:435
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: cdc_msc_desc.c:394
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: cdc_msc_desc.c:470
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: cdc_msc_desc.c:414
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: cdc_msc_desc.c:447
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: cdc_msc_desc.c:482
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: cdc_msc_desc.c:424
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: cdc_msc_desc.c:459

device descriptor handler structure

Definition at line 67 of file cdc_msc_desc.c.

Referenced by main().

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
106 ,
g_usbd_configuration
}

Definition at line 282 of file cdc_msc_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 275 of file cdc_msc_desc.c.

Referenced by get_device_descriptor().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 289 of file cdc_msc_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 296 of file cdc_msc_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 302 of file cdc_msc_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_msc_bot_scsi

Modules
USB_msc_bot_scsi
AT32F403_middlewares_usbd_class

usb device class mass storage demo More...

Modules

USB_msc_bot_functions
USB_msc_bot_scsi_definition

Detailed Description

usb device class mass storage demo


AT32F403 Firmwary Library: USB_msc_bot_functions

Functions | Variables
USB_msc_bot_functions
AT32F403_middlewares_usbd_class » USB_msc_bot_scsi

Functions

void | bot_scsi_init (void *udev)
initialize bulk-only transport and scsi More...
void | bot_scsi_reset (void *udev)
reset bulk-only transport and scsi More...
void | bot_scsi_datain_handler (void *udev, uint8_t ept_num)
bulk-only transport data in handler More...
void | bot_scsi_dataout_handler (void *udev, uint8_t ept_num)
bulk-only transport data out handler More...
void | bot_cbw_decode (void *udev)
bulk-only cbw decode More...
void | bot_scsi_send_data (void *udev, uint8_t *buffer, uint32_t len)
send bot data More...
void | bot_scsi_send_csw (void *udev, uint8_t status)
send command status More...
void | bot_scsi_sense_code (void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code More...
usb_sts_type | bot_scsi_check_address (void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address More...
void | bot_scsi_stall (void *udev)
bot endpoint stall More...
usb_sts_type | bot_scsi_test_unit (void *udev, uint8_t lun)
bulk-only transport scsi command test unit More...
usb_sts_type | bot_scsi_inquiry (void *udev, uint8_t lun)
bulk-only transport scsi command inquiry More...
usb_sts_type | bot_scsi_start_stop (void *udev, uint8_t lun)
bulk-only transport scsi command start stop More...
usb_sts_type | bot_scsi_allow_medium_removal (void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal More...
usb_sts_type | bot_scsi_mode_sense6 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6 More...
usb_sts_type | bot_scsi_mode_sense10 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10 More...
usb_sts_type | bot_scsi_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command capacity More...
usb_sts_type | bot_scsi_format_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command format capacity More...
usb_sts_type | bot_scsi_request_sense (void *udev, uint8_t lun)
bulk-only transport scsi command request sense More...
usb_sts_type | bot_scsi_verify (void *udev, uint8_t lun)
bulk-only transport scsi command verify More...
usb_sts_type | bot_scsi_read10 (void *udev, uint8_t lun)
bulk-only transport scsi command read10 More...
usb_sts_type | bot_scsi_write10 (void *udev, uint8_t lun)
bulk-only transport scsi command write10 More...
void | bot_scsi_clear_feature (void *udev, uint8_t ept_num)
clear feature More...
usb_sts_type | bot_scsi_cmd_process (void *udev)
bulk-only transport scsi command process More...

Variables

ALIGNED_HEAD uint8_t page00_inquiry_data[] | ALIGNED_TAIL
ALIGNED_HEAD uint8_t page00_inquiry_data[] | ALIGNED_TAIL

Detailed Description

Function Documentation

◆ bot_cbw_decode()

void bot_cbw_decode ( void * udev )

bulk-only cbw decode

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 196 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_dataout_handler().

◆ bot_scsi_allow_medium_removal()

usb_sts_type bot_scsi_allow_medium_removal | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command meidum removal

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 423 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_capacity()

usb_sts_type bot_scsi_capacity | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command capacity

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 477 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_check_address()

usb_sts_type bot_scsi_check_address | ( | void * | udev,
 |  | uint8_t | lun,
 |  | uint32_t | blk_offset,
 |  | uint32_t | blk_count
 | ) |  |

check address

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
blk_offset | blk offset address
blk_count | blk number
Return values
usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
blk_offset | blk offset address
blk_count | blk number
Return values
usb_sts_type

Definition at line 303 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_read10(), bot_scsi_verify(), and bot_scsi_write10().

◆ bot_scsi_clear_feature()

void bot_scsi_clear_feature | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |

clear feature

Parameters
udev | to the structure of usbd_core_type
etp_num | endpoint number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
etp_num | endpoint number
Return values
status of usb_sts_type

Definition at line 729 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by class_setup_handler(), and msc_class_setup_handler().

◆ bot_scsi_cmd_process()

usb_sts_type bot_scsi_cmd_process ( void * udev )

bulk-only transport scsi command process

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type
Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 749 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode(), bot_scsi_datain_handler(), and bot_scsi_dataout_handler().

◆ bot_scsi_datain_handler()

void bot_scsi_datain_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |

bulk-only transport data in handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none
Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none

Definition at line 143 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by class_in_handler().

◆ bot_scsi_dataout_handler()

void bot_scsi_dataout_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |

bulk-only transport data out handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none
Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none

Definition at line 172 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by class_out_handler().

◆ bot_scsi_format_capacity()

usb_sts_type bot_scsi_format_capacity | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command format capacity

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 504 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_init()

void bot_scsi_init ( void * udev )

initialize bulk-only transport and scsi

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 103 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by class_init_handler().

◆ bot_scsi_inquiry()

usb_sts_type bot_scsi_inquiry | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command inquiry

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 368 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_mode_sense10()

usb_sts_type bot_scsi_mode_sense10 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command mode sense10

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 457 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_mode_sense6()

usb_sts_type bot_scsi_mode_sense6 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command mode sense6

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 437 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_read10()

usb_sts_type bot_scsi_read10 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command read10

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 598 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_request_sense()

usb_sts_type bot_scsi_request_sense | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command request sense

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 539 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_reset()

void bot_scsi_reset ( void * udev )

reset bulk-only transport and scsi

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 125 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by class_setup_handler(), and msc_class_setup_handler().

◆ bot_scsi_send_csw()

void bot_scsi_send_csw | ( | void * | udev,
 |  | uint8_t | status
 | ) |  |

send command status

Parameters
udev | to the structure of usbd_core_type
status | csw status
Return values
none
Parameters
udev | to the structure of usbd_core_type
status | csw status
Return values
none

Definition at line 264 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode(), bot_scsi_clear_feature(), bot_scsi_datain_handler(), bot_scsi_dataout_handler(), and bot_scsi_write10().

◆ bot_scsi_send_data()

void bot_scsi_send_data | ( | void * | udev,
 |  | uint8_t * | buffer,
 |  | uint32_t | len
 | ) |  |

send bot data

Parameters
udev | to the structure of usbd_core_type
buffer | data buffer
len | data len
Return values
none
Parameters
udev | to the structure of usbd_core_type
buffer | data buffer
len | data len
Return values
none

Definition at line 243 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode().

◆ bot_scsi_sense_code()

void bot_scsi_sense_code | ( | void * | udev,
 |  | uint8_t | sense_key,
 |  | uint8_t | asc
 | ) |  |

send scsi sense code

Parameters
udev | to the structure of usbd_core_type
sense_key | sense key
asc | asc
Return values
none
Parameters
udev | to the structure of usbd_core_type
sense_key | sense key
asc | asc
Return values
none

Definition at line 288 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode(), bot_scsi_check_address(), bot_scsi_cmd_process(), bot_scsi_read10(), bot_scsi_test_unit(), bot_scsi_verify(), and bot_scsi_write10().

◆ bot_scsi_stall()

void bot_scsi_stall ( void * udev )

bot endpoint stall

Parameters
udev to the structure of usbd_core_type
Return values
none
Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 320 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_cbw_decode().

◆ bot_scsi_start_stop()

usb_sts_type bot_scsi_start_stop | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command start stop

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 409 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_test_unit()

usb_sts_type bot_scsi_test_unit | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command test unit

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 346 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_verify()

usb_sts_type bot_scsi_verify | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command verify

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 570 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

◆ bot_scsi_write10()

usb_sts_type bot_scsi_write10 | ( | void * | udev,
 |  | uint8_t | lun
 | ) |  |

bulk-only transport scsi command write10

Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type
Parameters
udev | to the structure of usbd_core_type
lun | logical units number
Return values
status of usb_sts_type

Definition at line 659 of file composite_cdc_msc/msc_bot_scsi.c.

Referenced by bot_scsi_cmd_process().

Variable Documentation

◆ ALIGNED_TAIL [1/2]

ALIGNED_HEAD sense_type sense_data ALIGNED_TAIL
Initial value:
= {
0x00,
0x00,
0x00,
0x00,
0x00,
}

Definition at line 45 of file composite_cdc_msc/msc_bot_scsi.c.

◆ ALIGNED_TAIL [2/2]

ALIGNED_HEAD uint8_t mode_sense10_data [8] ALIGNED_TAIL
Initial value:
= {
0x00,
0x00,
0x00,
0x00,
0x00,
}

Definition at line 44 of file msc/msc_bot_scsi.c.


AT32F403 Firmwary Library: USB_custom_hid_class

Modules
USB_custom_hid_class
AT32F403_middlewares_usbd_class

usb device custom hid demo More...

Modules

USB_custom_hid_class_private_functions
USB_custom_hid_class_endpoint_definition
USB_custom_hid_class_request_code_definition
USB_custom_hid_class_exported_functions

Detailed Description

usb device custom hid demo


AT32F403 Firmwary Library: USB_custom_hid_class_private_functions

Functions | Variables
USB_custom_hid_class_private_functions
AT32F403_middlewares_usbd_class » USB_custom_hid_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
static void | usb_hid_buf_process (void *udev, uint8_t *report, uint16_t len)
usb device class report function More...
usb_sts_type | custom_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

custom_hid_type custom_hid_struct
usbd_class_handler custom_hid_class_handler

Detailed Description

Function Documentation

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 102 of file custom_hid_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device class endpoint 0 out status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 218 of file custom_hid_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device class endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 204 of file custom_hid_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device class event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 296 of file custom_hid_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 241 of file custom_hid_class.c.

◆ class_init_handler()

usb_sts_type class_init_handler ( void * udev )
static

initialize usb endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 74 of file custom_hid_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 258 of file custom_hid_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 122 of file custom_hid_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device class sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 281 of file custom_hid_class.c.

◆ custom_hid_class_send_report()

usb_sts_type custom_hid_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 328 of file custom_hid_class.c.

Referenced by main().

◆ usb_hid_buf_process()

static void usb_hid_buf_process | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |
static

usb device class report function

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
none

Definition at line 346 of file custom_hid_class.c.

Referenced by class_ept0_rx_handler(), and class_out_handler().

Variable Documentation

◆ custom_hid_class_handler

usbd_class_handler custom_hid_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&custom_hid_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: custom_hid_class.c:281
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: custom_hid_class.c:241
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: custom_hid_class.c:102
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: custom_hid_class.c:122
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: custom_hid_class.c:204
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: custom_hid_class.c:218
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: custom_hid_class.c:296
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: custom_hid_class.c:258
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: custom_hid_class.c:74
custom_hid_struct
custom_hid_type custom_hid_struct
Definition: custom_hid_class.c:52

Definition at line 55 of file custom_hid_class.c.

Referenced by main().

◆ custom_hid_struct

custom_hid_type custom_hid_struct

Definition at line 52 of file custom_hid_class.c.


AT32F403 Firmwary Library: USB_custom_hid_class_endpoint_definition

Macros
USB_custom_hid_class_endpoint_definition
AT32F403_middlewares_usbd_class » USB_custom_hid_class

Macros

#define | USBD_CUSTOM_HID_IN_EPT 0x81
usb custom hid use endpoint define More...
#define | USBD_CUSTOM_HID_OUT_EPT 0x01
#define | USBD_CUSTOM_IN_MAXPACKET_SIZE 0x40
usb custom hid in and out max packet size define More...
#define | USBD_CUSTOM_OUT_MAXPACKET_SIZE 0x40

Detailed Description

Macro Definition Documentation

◆ USBD_CUSTOM_HID_IN_EPT

#define USBD_CUSTOM_HID_IN_EPT 0x81

usb custom hid use endpoint define

Definition at line 51 of file custom_hid_class.h.

◆ USBD_CUSTOM_HID_OUT_EPT

#define USBD_CUSTOM_HID_OUT_EPT 0x01

Definition at line 52 of file custom_hid_class.h.

◆ USBD_CUSTOM_IN_MAXPACKET_SIZE

#define USBD_CUSTOM_IN_MAXPACKET_SIZE 0x40

usb custom hid in and out max packet size define

Definition at line 57 of file custom_hid_class.h.

◆ USBD_CUSTOM_OUT_MAXPACKET_SIZE

#define USBD_CUSTOM_OUT_MAXPACKET_SIZE 0x40

Definition at line 58 of file custom_hid_class.h.


AT32F403 Firmwary Library: USB_custom_hid_class_request_code_definition

Data Structures
USB_custom_hid_class_request_code_definition
AT32F403_middlewares_usbd_class » USB_custom_hid_class

Data Structures

struct custom_hid_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: custom_hid_type Struct Reference

Data Fields
custom_hid_type Struct Reference
AT32F403_middlewares_usbd_class » USB_custom_hid_class » USB_custom_hid_class_request_code_definition

#include <custom_hid_class.h>

Data Fields

uint8_t | g_rxhid_buff [0x40]
uint8_t | g_txhid_buff [0x40]
uint32_t | hid_protocol
uint32_t | hid_set_idle
uint32_t | alt_setting
uint8_t | hid_set_report [64]
uint8_t | hid_get_report [64]
uint8_t | hid_state

Detailed Description

Definition at line 68 of file custom_hid_class.h.

Field Documentation

◆ alt_setting

uint32_t custom_hid_type::alt_setting

Definition at line 75 of file custom_hid_class.h.

Referenced by class_setup_handler().

◆ g_rxhid_buff

uint8_t custom_hid_type::g_rxhid_buff[0x40]

Definition at line 70 of file custom_hid_class.h.

Referenced by class_init_handler(), class_out_handler(), and usb_hid_buf_process().

◆ g_txhid_buff

uint8_t custom_hid_type::g_txhid_buff[0x40]

Definition at line 71 of file custom_hid_class.h.

Referenced by usb_hid_buf_process().

◆ hid_get_report

uint8_t custom_hid_type::hid_get_report[64]

Definition at line 78 of file custom_hid_class.h.

Referenced by class_setup_handler().

◆ hid_protocol

uint32_t custom_hid_type::hid_protocol

Definition at line 73 of file custom_hid_class.h.

Referenced by class_setup_handler().

◆ hid_set_idle

uint32_t custom_hid_type::hid_set_idle

Definition at line 74 of file custom_hid_class.h.

Referenced by class_setup_handler().

◆ hid_set_report

uint8_t custom_hid_type::hid_set_report[64]

Definition at line 77 of file custom_hid_class.h.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

◆ hid_state

uint8_t custom_hid_type::hid_state

Definition at line 79 of file custom_hid_class.h.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

The documentation for this struct was generated from the following file:
  • custom_hid_class.h


AT32F403 Firmwary Library: USB_custom_hid_class_exported_functions

Functions | Variables
USB_custom_hid_class_exported_functions
AT32F403_middlewares_usbd_class » USB_custom_hid_class

Functions

usb_sts_type custom_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

usbd_class_handler custom_hid_class_handler

Detailed Description

Function Documentation

◆ custom_hid_class_send_report()

usb_sts_type custom_hid_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 328 of file custom_hid_class.c.

Referenced by main().

Variable Documentation

◆ custom_hid_class_handler

usbd_class_handler custom_hid_class_handler
extern

Definition at line 55 of file custom_hid_class.c.

Referenced by main().


AT32F403 Firmwary Library: USB_custom_hid_desc

Modules | Variables
USB_custom_hid_desc
AT32F403_middlewares_usbd_class

usb device custom_hid descriptor More...

Modules

USB_custom_hid_desc_private_functions
USB_custom_hid_desc_definition

Variables

usbd_desc_handler custom_hid_desc_handler
custom hid device descriptor handler structure More...

Detailed Description

usb device custom_hid descriptor

Variable Documentation

◆ custom_hid_desc_handler

usbd_desc_handler custom_hid_desc_handler
extern

custom hid device descriptor handler structure

Definition at line 63 of file custom_hid_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_custom_hid_desc_private_functions

Functions | Variables
USB_custom_hid_desc_private_functions
AT32F403_middlewares_usbd_class » USB_custom_hid_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler custom_hid_desc_handler
custom hid device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc
uint8_t | g_usbd_custom_hid_report [126]
usb hid report descriptor More...
uint8_t | g_custom_hid_usb_desc [9]
usb hid descriptor More...

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 514 of file custom_hid_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 436 of file custom_hid_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 416 of file custom_hid_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 502 of file custom_hid_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 456 of file custom_hid_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 467 of file custom_hid_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 446 of file custom_hid_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 479 of file custom_hid_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 426 of file custom_hid_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 491 of file custom_hid_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 394 of file custom_hid_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 368 of file custom_hid_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 342 of file custom_hid_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5745 ),
HBYTE( 0x5745 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb hid descriptor

usb hid report descriptor

usb configuration standard descriptor

Definition at line 58 of file custom_hid_desc.c.

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
41 ,
g_usbd_configuration
}

Definition at line 314 of file custom_hid_desc.c.

Referenced by get_device_configuration().

◆ custom_hid_desc_handler

usbd_desc_handler custom_hid_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: custom_hid_desc.c:436
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: custom_hid_desc.c:416
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: custom_hid_desc.c:467
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: custom_hid_desc.c:426
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: custom_hid_desc.c:502
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: custom_hid_desc.c:446
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: custom_hid_desc.c:479
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: custom_hid_desc.c:514
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: custom_hid_desc.c:456
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: custom_hid_desc.c:491

custom hid device descriptor handler structure

Definition at line 63 of file custom_hid_desc.c.

Referenced by main().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 307 of file custom_hid_desc.c.

Referenced by get_device_descriptor().

◆ g_custom_hid_usb_desc

ALIGNED_HEAD uint8_t g_custom_hid_usb_desc
extern
Initial value:
=
{
0x09,
HID_CLASS_DESC_HID,
LBYTE( 0x0110 ),
HBYTE( 0x0110 ),
0x00,
0x01,
HID_CLASS_DESC_REPORT,
LBYTE(sizeof(g_usbd_custom_hid_report)),
HBYTE(sizeof(g_usbd_custom_hid_report)),
}
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
g_usbd_custom_hid_report
uint8_t g_usbd_custom_hid_report[126]
usb hid report descriptor
Definition: custom_hid_desc.c:167

usb hid descriptor

Definition at line 265 of file custom_hid_desc.c.

Referenced by class_setup_handler().

◆ g_usbd_custom_hid_report

ALIGNED_HEAD uint8_t g_usbd_custom_hid_report
extern

usb hid report descriptor

Definition at line 167 of file custom_hid_desc.c.

Referenced by class_setup_handler().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 321 of file custom_hid_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 328 of file custom_hid_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 334 of file custom_hid_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_custom_hid_desc_definition

Macros
USB_custom_hid_desc_definition
AT32F403_middlewares_usbd_class » USB_custom_hid_desc

Macros

#define | CUSHID_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_CUSHID_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_CUSHID_PRODUCT_ID 0x5745
#define | USBD_CUSHID_CONFIG_DESC_SIZE 41
usb descriptor size define More...
#define | USBD_CUSHID_SIZ_REPORT_DESC 126
#define | USBD_CUSHID_SIZ_STRING_LANGID 4
#define | USBD_CUSHID_SIZ_STRING_SERIAL 0x1A
#define | USBD_CUSHID_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_CUSHID_DESC_PRODUCT_STRING "Custom HID"
#define | USBD_CUSHID_DESC_CONFIGURATION_STRING "Custom HID Config"
#define | USBD_CUSHID_DESC_INTERFACE_STRING "Custom HID Interface"
#define | CUSHID_BINTERVAL_TIME 0x0A
#define | HID_REPORT_ID_1 0x01
usb hid report id define More...
#define | HID_REPORT_ID_2 0x02
#define | HID_REPORT_ID_3 0x03
#define | HID_REPORT_ID_4 0x04
#define | HID_REPORT_ID_5 0x05
#define | HID_REPORT_ID_6 0xF0
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Detailed Description

Macro Definition Documentation

◆ CUSHID_BCD_NUM

#define CUSHID_BCD_NUM 0x0110

usb bcd number define

Definition at line 52 of file custom_hid_desc.h.

◆ CUSHID_BINTERVAL_TIME

#define CUSHID_BINTERVAL_TIME 0x0A

Definition at line 76 of file custom_hid_desc.h.

◆ HID_REPORT_ID_1

#define HID_REPORT_ID_1 0x01

usb hid report id define

usb hid report id define

Definition at line 84 of file custom_hid_desc.h.

◆ HID_REPORT_ID_2

#define HID_REPORT_ID_2 0x02

Definition at line 85 of file custom_hid_desc.h.

◆ HID_REPORT_ID_3

#define HID_REPORT_ID_3 0x03

Definition at line 86 of file custom_hid_desc.h.

◆ HID_REPORT_ID_4

#define HID_REPORT_ID_4 0x04

Definition at line 87 of file custom_hid_desc.h.

◆ HID_REPORT_ID_5

#define HID_REPORT_ID_5 0x05

Definition at line 88 of file custom_hid_desc.h.

◆ HID_REPORT_ID_6

#define HID_REPORT_ID_6 0xF0

Definition at line 89 of file custom_hid_desc.h.

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

usb mcu id address deine

Definition at line 94 of file custom_hid_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 95 of file custom_hid_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 96 of file custom_hid_desc.h.

◆ USBD_CUSHID_CONFIG_DESC_SIZE

#define USBD_CUSHID_CONFIG_DESC_SIZE 41

usb descriptor size define

Definition at line 63 of file custom_hid_desc.h.

◆ USBD_CUSHID_DESC_CONFIGURATION_STRING

#define USBD_CUSHID_DESC_CONFIGURATION_STRING "Custom HID Config"

Definition at line 73 of file custom_hid_desc.h.

◆ USBD_CUSHID_DESC_INTERFACE_STRING

#define USBD_CUSHID_DESC_INTERFACE_STRING "Custom HID Interface"

Definition at line 74 of file custom_hid_desc.h.

◆ USBD_CUSHID_DESC_MANUFACTURER_STRING

#define USBD_CUSHID_DESC_MANUFACTURER_STRING "Artery"

usb string define(vendor, product configuration, interface)

Definition at line 71 of file custom_hid_desc.h.

◆ USBD_CUSHID_DESC_PRODUCT_STRING

#define USBD_CUSHID_DESC_PRODUCT_STRING "Custom HID"

Definition at line 72 of file custom_hid_desc.h.

◆ USBD_CUSHID_PRODUCT_ID

#define USBD_CUSHID_PRODUCT_ID 0x5745

Definition at line 58 of file custom_hid_desc.h.

◆ USBD_CUSHID_SIZ_REPORT_DESC

#define USBD_CUSHID_SIZ_REPORT_DESC 126

Definition at line 64 of file custom_hid_desc.h.

◆ USBD_CUSHID_SIZ_STRING_LANGID

#define USBD_CUSHID_SIZ_STRING_LANGID 4

Definition at line 65 of file custom_hid_desc.h.

◆ USBD_CUSHID_SIZ_STRING_SERIAL

#define USBD_CUSHID_SIZ_STRING_SERIAL 0x1A

Definition at line 66 of file custom_hid_desc.h.

◆ USBD_CUSHID_VENDOR_ID

#define USBD_CUSHID_VENDOR_ID 0x2E3C

usb vendor id and product id define

Definition at line 57 of file custom_hid_desc.h.


AT32F403 Firmwary Library: USB_hid_iap_class

Modules
USB_hid_iap_class
AT32F403_middlewares_usbd_class

usb device class hid iap demo More...

Modules

USB_hid_iap_class_private_functions
USB_hid_iap_class_definition

Detailed Description

usb device class hid iap demo


AT32F403 Firmwary Library: USB_hid_iap_class_private_functions

Functions | Variables
USB_hid_iap_class_private_functions
AT32F403_middlewares_usbd_class » USB_hid_iap_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
usb_sts_type | usb_iap_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

iap_info_type iap_info
usbd_class_handler hid_iap_class_handler

Detailed Description

Function Documentation

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 96 of file hid_iap_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device endpoint 0 out status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 209 of file hid_iap_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 195 of file hid_iap_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 287 of file hid_iap_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 231 of file hid_iap_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb custom hid endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 74 of file hid_iap_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 249 of file hid_iap_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 116 of file hid_iap_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 272 of file hid_iap_class.c.

◆ usb_iap_class_send_report()

usb_sts_type usb_iap_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 319 of file hid_iap_class.c.

Referenced by usbd_hid_iap_process().

Variable Documentation

◆ hid_iap_class_handler

usbd_class_handler hid_iap_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&iap_info
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: hid_iap_class.c:272
iap_info
iap_info_type iap_info
Definition: hid_iap_class.c:52
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: hid_iap_class.c:231
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: hid_iap_class.c:96
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: hid_iap_class.c:116
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: hid_iap_class.c:195
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: hid_iap_class.c:209
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: hid_iap_class.c:287
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: hid_iap_class.c:74
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: hid_iap_class.c:249

Definition at line 55 of file hid_iap_class.c.

Referenced by main().

◆ iap_info

iap_info_type iap_info

Definition at line 52 of file hid_iap_class.c.

Referenced by app_loop(), iap_address(), iap_clear_upgrade_flag(), iap_crc(), iap_data_write(), iap_erase_sector(), iap_finish(), iap_get(), iap_get_upgrade_flag(), iap_idle(), iap_init(), iap_jump(), iap_loop(), iap_respond(), iap_set_upgrade_flag(), iap_start(), usbd_hid_iap_in_complete(), and usbd_hid_iap_process().


AT32F403 Firmwary Library: USB_hid_iap_class_definition

Data Structures | Macros | Enumerations | Functions | Variables
USB_hid_iap_class_definition
AT32F403_middlewares_usbd_class » USB_hid_iap_class

Data Structures

struct iap_info_type

Macros

#define | USBD_HIDIAP_IN_EPT 0x81
#define | USBD_HIDIAP_OUT_EPT 0x01
#define | USBD_HIDIAP_IN_MAXPACKET_SIZE 0x40
#define | USBD_HIDIAP_OUT_MAXPACKET_SIZE 0x40
#define | FLASH_SIZE_REG() ((*(uint32_t *)0x1FFFF7E0) & 0xFFFF) /*Get Flash size*/
#define | KB_TO_B(kb) ((kb) << 10)
#define | SECTOR_SIZE_1K 0x400
#define | SECTOR_SIZE_2K 0x800
#define | SECTOR_SIZE_4K 0x1000
#define | IAP_CMD_IDLE 0x5AA0
iap command More...
#define | IAP_CMD_START 0x5AA1
#define | IAP_CMD_ADDR 0x5AA2
#define | IAP_CMD_DATA 0x5AA3
#define | IAP_CMD_FINISH 0x5AA4
#define | IAP_CMD_CRC 0x5AA5
#define | IAP_CMD_JMP 0x5AA6
#define | IAP_CMD_GET 0x5AA7
#define | HID_IAP_BUFFER_LEN 1024
#define | IAP_UPGRADE_COMPLETE_FLAG 0x41544B38
#define | CONVERT_ENDIAN(dwValue)
#define | IAP_ACK 0xFF00
#define | IAP_NACK 0x00FF

Enumerations

enum iap_result_type { IAP_SUCCESS , IAP_WAIT , IAP_FAILED }
enum iap_machine_state_type {
IAP_STS_IDLE , IAP_STS_START , IAP_STS_ADDR , IAP_STS_DATA ,
IAP_STS_FINISH , IAP_STS_CRC , IAP_STS_JMP_WAIT , IAP_STS_JMP
}

Functions

usb_sts_type | usb_iap_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *report, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...

Variables

usbd_class_handler hid_iap_class_handler
iap_info_type iap_info

Detailed Description

Macro Definition Documentation

◆ CONVERT_ENDIAN

#define CONVERT_ENDIAN ( dwValue )
Value:
((dwValue >> 24) | ((dwValue >> 8) & 0xFF00) | \
((dwValue << 8) & 0xFF0000) | (dwValue << 24) )

Definition at line 77 of file hid_iap_class.h.

◆ FLASH_SIZE_REG

#define FLASH_SIZE_REG ( ) ((*(uint32_t *)0x1FFFF7E0) & 0xFFFF) /*Get Flash size*/

Definition at line 56 of file hid_iap_class.h.

◆ HID_IAP_BUFFER_LEN

#define HID_IAP_BUFFER_LEN 1024

Definition at line 75 of file hid_iap_class.h.

◆ IAP_ACK

#define IAP_ACK 0xFF00

Definition at line 80 of file hid_iap_class.h.

◆ IAP_CMD_ADDR

#define IAP_CMD_ADDR 0x5AA2

Definition at line 68 of file hid_iap_class.h.

◆ IAP_CMD_CRC

#define IAP_CMD_CRC 0x5AA5

Definition at line 71 of file hid_iap_class.h.

◆ IAP_CMD_DATA

#define IAP_CMD_DATA 0x5AA3

Definition at line 69 of file hid_iap_class.h.

◆ IAP_CMD_FINISH

#define IAP_CMD_FINISH 0x5AA4

Definition at line 70 of file hid_iap_class.h.

◆ IAP_CMD_GET

#define IAP_CMD_GET 0x5AA7

Definition at line 73 of file hid_iap_class.h.

◆ IAP_CMD_IDLE

#define IAP_CMD_IDLE 0x5AA0

iap command

Definition at line 66 of file hid_iap_class.h.

◆ IAP_CMD_JMP

#define IAP_CMD_JMP 0x5AA6

Definition at line 72 of file hid_iap_class.h.

◆ IAP_CMD_START

#define IAP_CMD_START 0x5AA1

Definition at line 67 of file hid_iap_class.h.

◆ IAP_NACK

#define IAP_NACK 0x00FF

Definition at line 81 of file hid_iap_class.h.

◆ IAP_UPGRADE_COMPLETE_FLAG

#define IAP_UPGRADE_COMPLETE_FLAG 0x41544B38

Definition at line 76 of file hid_iap_class.h.

◆ KB_TO_B

#define KB_TO_B ( kb ) ((kb) << 10)

Definition at line 57 of file hid_iap_class.h.

◆ SECTOR_SIZE_1K

#define SECTOR_SIZE_1K 0x400

Definition at line 59 of file hid_iap_class.h.

◆ SECTOR_SIZE_2K

#define SECTOR_SIZE_2K 0x800

Definition at line 60 of file hid_iap_class.h.

◆ SECTOR_SIZE_4K

#define SECTOR_SIZE_4K 0x1000

Definition at line 61 of file hid_iap_class.h.

◆ USBD_HIDIAP_IN_EPT

#define USBD_HIDIAP_IN_EPT 0x81

Definition at line 50 of file hid_iap_class.h.

◆ USBD_HIDIAP_IN_MAXPACKET_SIZE

#define USBD_HIDIAP_IN_MAXPACKET_SIZE 0x40

Definition at line 53 of file hid_iap_class.h.

◆ USBD_HIDIAP_OUT_EPT

#define USBD_HIDIAP_OUT_EPT 0x01

Definition at line 51 of file hid_iap_class.h.

◆ USBD_HIDIAP_OUT_MAXPACKET_SIZE

#define USBD_HIDIAP_OUT_MAXPACKET_SIZE 0x40

Definition at line 54 of file hid_iap_class.h.

Enumeration Type Documentation

◆ iap_machine_state_type

enum iap_machine_state_type
Enumerator
IAP_STS_IDLE
IAP_STS_START
IAP_STS_ADDR
IAP_STS_DATA
IAP_STS_FINISH
IAP_STS_CRC
IAP_STS_JMP_WAIT
IAP_STS_JMP

Definition at line 90 of file hid_iap_class.h.

◆ iap_result_type

enum iap_result_type
Enumerator
IAP_SUCCESS
IAP_WAIT
IAP_FAILED

Definition at line 83 of file hid_iap_class.h.

Function Documentation

◆ usb_iap_class_send_report()

usb_sts_type usb_iap_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 319 of file hid_iap_class.c.

Referenced by usbd_hid_iap_process().

◆ usbd_hid_iap_in_complete()

void usbd_hid_iap_in_complete ( void * udev )

usb device in transfer complete function

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 238 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by class_in_handler().

◆ usbd_hid_iap_process()

iap_result_type usbd_hid_iap_process | ( | void * | udev,
 |  | uint8_t * | pdata,
 |  | uint16_t | len
 | ) |  |

usb device iap function

Parameters
udev | to the structure of usbd_core_type
pdata | data buffer point
len | data length
Return values
iap_result_type

Definition at line 192 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by class_out_handler().

Variable Documentation

◆ hid_iap_class_handler

usbd_class_handler hid_iap_class_handler
extern

Definition at line 55 of file hid_iap_class.c.

Referenced by main().

◆ iap_info

iap_info_type iap_info
extern

Definition at line 52 of file hid_iap_class.c.

Referenced by app_loop(), iap_address(), iap_clear_upgrade_flag(), iap_crc(), iap_data_write(), iap_erase_sector(), iap_finish(), iap_get(), iap_get_upgrade_flag(), iap_idle(), iap_init(), iap_jump(), iap_loop(), iap_respond(), iap_set_upgrade_flag(), iap_start(), usbd_hid_iap_in_complete(), and usbd_hid_iap_process().


AT32F403 Firmwary Library: iap_info_type Struct Reference

Data Fields
iap_info_type Struct Reference
AT32F403_middlewares_usbd_class » USB_hid_iap_class » USB_hid_iap_class_definition

#include <hid_iap_class.h>

Data Fields

uint8_t | iap_fifo [1024]
uint8_t | iap_rx [0x40]
uint8_t | iap_tx [0x40]
uint32_t | fifo_length
uint32_t | tx_length
uint32_t | app_address
uint32_t | iap_address
uint32_t | flag_address
uint32_t | flash_start_address
uint32_t | flash_end_address
uint32_t | sector_size
uint32_t | flash_size
uint32_t | respond_flag
uint8_t | g_rxhid_buff [0x40]
uint32_t | hid_protocol
uint32_t | hid_set_idle
uint32_t | alt_setting
uint32_t | hid_state
uint8_t | hid_set_report [64]
iap_machine_state_type state

Detailed Description

Definition at line 102 of file hid_iap_class.h.

Field Documentation

◆ alt_setting

uint32_t iap_info_type::alt_setting

Definition at line 127 of file hid_iap_class.h.

Referenced by class_setup_handler().

◆ app_address

uint32_t iap_info_type::app_address

Definition at line 112 of file hid_iap_class.h.

Referenced by iap_get(), iap_init(), and iap_loop().

◆ fifo_length

uint32_t iap_info_type::fifo_length

Definition at line 109 of file hid_iap_class.h.

Referenced by iap_data_write(), and iap_init().

◆ flag_address

uint32_t iap_info_type::flag_address

Definition at line 114 of file hid_iap_class.h.

Referenced by iap_clear_upgrade_flag(), iap_get_upgrade_flag(), iap_init(), and iap_set_upgrade_flag().

◆ flash_end_address

uint32_t iap_info_type::flash_end_address

Definition at line 117 of file hid_iap_class.h.

Referenced by iap_address(), and iap_init().

◆ flash_size

uint32_t iap_info_type::flash_size

Definition at line 120 of file hid_iap_class.h.

Referenced by iap_init().

◆ flash_start_address

uint32_t iap_info_type::flash_start_address

Definition at line 116 of file hid_iap_class.h.

Referenced by iap_init().

◆ g_rxhid_buff

uint8_t iap_info_type::g_rxhid_buff[0x40]

Definition at line 124 of file hid_iap_class.h.

Referenced by class_init_handler(), and class_out_handler().

◆ hid_protocol

uint32_t iap_info_type::hid_protocol

Definition at line 125 of file hid_iap_class.h.

Referenced by class_setup_handler().

◆ hid_set_idle

uint32_t iap_info_type::hid_set_idle

Definition at line 126 of file hid_iap_class.h.

Referenced by class_setup_handler().

◆ hid_set_report

uint8_t iap_info_type::hid_set_report[64]

Definition at line 129 of file hid_iap_class.h.

Referenced by class_setup_handler().

◆ hid_state

uint32_t iap_info_type::hid_state

Definition at line 128 of file hid_iap_class.h.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

◆ iap_address

uint32_t iap_info_type::iap_address

Definition at line 113 of file hid_iap_class.h.

Referenced by iap_address(), iap_data_write(), and iap_init().

◆ iap_fifo

uint8_t iap_info_type::iap_fifo[1024]

Definition at line 105 of file hid_iap_class.h.

Referenced by iap_data_write().

◆ iap_rx

uint8_t iap_info_type::iap_rx[0x40]

Definition at line 106 of file hid_iap_class.h.

◆ iap_tx

uint8_t iap_info_type::iap_tx[0x40]

Definition at line 107 of file hid_iap_class.h.

Referenced by iap_address(), iap_crc(), iap_data_write(), iap_finish(), iap_get(), iap_idle(), iap_jump(), iap_start(), and usbd_hid_iap_process().

◆ respond_flag

uint32_t iap_info_type::respond_flag

Definition at line 122 of file hid_iap_class.h.

Referenced by iap_respond(), and usbd_hid_iap_process().

◆ sector_size

uint32_t iap_info_type::sector_size

Definition at line 119 of file hid_iap_class.h.

Referenced by iap_erase_sector(), and iap_init().

◆ state

iap_machine_state_type iap_info_type::state

Definition at line 131 of file hid_iap_class.h.

Referenced by app_loop(), iap_address(), iap_data_write(), iap_finish(), iap_idle(), iap_jump(), iap_loop(), iap_start(), and usbd_hid_iap_in_complete().

◆ tx_length

uint32_t iap_info_type::tx_length

Definition at line 110 of file hid_iap_class.h.

The documentation for this struct was generated from the following file:
  • hid_iap_class.h


AT32F403 Firmwary Library: USB_hid_iap_desc

Modules
USB_hid_iap_desc
AT32F403_middlewares_usbd_class

usb device hid_iap descriptor More...

Modules

USB_hid_iap_desc_private_functions
USB_hid_iap_desc_definition

Detailed Description

usb device hid_iap descriptor


AT32F403 Firmwary Library: USB_hid_iap_desc_private_functions

Functions | Variables
USB_hid_iap_desc_private_functions
AT32F403_middlewares_usbd_class » USB_hid_iap_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 450 of file hid_iap_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 372 of file hid_iap_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 352 of file hid_iap_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 438 of file hid_iap_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 392 of file hid_iap_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 403 of file hid_iap_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 382 of file hid_iap_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 415 of file hid_iap_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 362 of file hid_iap_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 427 of file hid_iap_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 330 of file hid_iap_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 304 of file hid_iap_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 278 of file hid_iap_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0xAF01 ),
HBYTE( 0xAF01 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb hid descriptor

usb hid report descriptor

usb configuration standard descriptor

Definition at line 61 of file hid_iap_desc.c.

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
41 ,
g_usbd_configuration
}

Definition at line 250 of file hid_iap_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 243 of file hid_iap_desc.c.

Referenced by get_device_descriptor().

◆ hid_iap_desc_handler

usbd_desc_handler hid_iap_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: hid_iap_desc.c:372
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: hid_iap_desc.c:352
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: hid_iap_desc.c:403
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: hid_iap_desc.c:362
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: hid_iap_desc.c:438
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: hid_iap_desc.c:382
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: hid_iap_desc.c:415
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: hid_iap_desc.c:450
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: hid_iap_desc.c:392
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: hid_iap_desc.c:427

hid device descriptor handler structure

Definition at line 66 of file hid_iap_desc.c.

Referenced by main().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 257 of file hid_iap_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 264 of file hid_iap_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 270 of file hid_iap_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_hid_iap_desc_definition

Macros | Variables
USB_hid_iap_desc_definition
AT32F403_middlewares_usbd_class » USB_hid_iap_desc

Macros

#define | HIDIAP_BCD_NUM 0x0110
#define | USBD_HIDIAP_VENDOR_ID 0x2E3C
#define | USBD_HIDIAP_PRODUCT_ID 0xAF01
#define | USBD_HIDIAP_CONFIG_DESC_SIZE 41
#define | USBD_HIDIAP_SIZ_REPORT_DESC 32
#define | USBD_HIDIAP_SIZ_STRING_LANGID 4
#define | USBD_HIDIAP_SIZ_STRING_SERIAL 0x1A
#define | USBD_HIDIAP_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_HIDIAP_DESC_PRODUCT_STRING "HID IAP"
#define | USBD_HIDIAP_DESC_CONFIGURATION_STRING "HID IAP Config"
#define | USBD_HIDIAP_DESC_INTERFACE_STRING "HID IAP Interface"
#define | HIDIAP_BINTERVAL_TIME 0x01
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

uint8_t | g_usbd_hidiap_report [32]
usb hid report descriptor More...
uint8_t | g_hidiap_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure More...

Detailed Description

Macro Definition Documentation

◆ HIDIAP_BCD_NUM

#define HIDIAP_BCD_NUM 0x0110

Definition at line 49 of file hid_iap_desc.h.

◆ HIDIAP_BINTERVAL_TIME

#define HIDIAP_BINTERVAL_TIME 0x01

Definition at line 64 of file hid_iap_desc.h.

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

Definition at line 66 of file hid_iap_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 67 of file hid_iap_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 68 of file hid_iap_desc.h.

◆ USBD_HIDIAP_CONFIG_DESC_SIZE

#define USBD_HIDIAP_CONFIG_DESC_SIZE 41

Definition at line 54 of file hid_iap_desc.h.

◆ USBD_HIDIAP_DESC_CONFIGURATION_STRING

#define USBD_HIDIAP_DESC_CONFIGURATION_STRING "HID IAP Config"

Definition at line 61 of file hid_iap_desc.h.

◆ USBD_HIDIAP_DESC_INTERFACE_STRING

#define USBD_HIDIAP_DESC_INTERFACE_STRING "HID IAP Interface"

Definition at line 62 of file hid_iap_desc.h.

◆ USBD_HIDIAP_DESC_MANUFACTURER_STRING

#define USBD_HIDIAP_DESC_MANUFACTURER_STRING "Artery"

Definition at line 59 of file hid_iap_desc.h.

◆ USBD_HIDIAP_DESC_PRODUCT_STRING

#define USBD_HIDIAP_DESC_PRODUCT_STRING "HID IAP"

Definition at line 60 of file hid_iap_desc.h.

◆ USBD_HIDIAP_PRODUCT_ID

#define USBD_HIDIAP_PRODUCT_ID 0xAF01

Definition at line 52 of file hid_iap_desc.h.

◆ USBD_HIDIAP_SIZ_REPORT_DESC

#define USBD_HIDIAP_SIZ_REPORT_DESC 32

Definition at line 55 of file hid_iap_desc.h.

◆ USBD_HIDIAP_SIZ_STRING_LANGID

#define USBD_HIDIAP_SIZ_STRING_LANGID 4

Definition at line 56 of file hid_iap_desc.h.

◆ USBD_HIDIAP_SIZ_STRING_SERIAL

#define USBD_HIDIAP_SIZ_STRING_SERIAL 0x1A

Definition at line 57 of file hid_iap_desc.h.

◆ USBD_HIDIAP_VENDOR_ID

#define USBD_HIDIAP_VENDOR_ID 0x2E3C

Definition at line 51 of file hid_iap_desc.h.

Variable Documentation

◆ g_hidiap_usb_desc

ALIGNED_HEAD uint8_t g_hidiap_usb_desc
extern
Initial value:
=
{
0x09,
HID_CLASS_DESC_HID,
LBYTE( 0x0110 ),
HBYTE( 0x0110 ),
0x00,
0x01,
HID_CLASS_DESC_REPORT,
LBYTE(sizeof(g_usbd_hidiap_report)),
HBYTE(sizeof(g_usbd_hidiap_report)),
}
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
g_usbd_hidiap_report
uint8_t g_usbd_hidiap_report[32]
usb hid report descriptor
Definition: hid_iap_desc.c:170
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263

usb hid descriptor

Definition at line 201 of file hid_iap_desc.c.

Referenced by class_setup_handler().

◆ g_usbd_hidiap_report

ALIGNED_HEAD uint8_t g_usbd_hidiap_report
extern
Initial value:
=
{
0x06, 0xFF, 0x00,
0x09, 0x01,
0xa1, 0x01,
0x15, 0x00,
0x25, 0xFF,
0x75, 0x08,
0x95, 0x40,
0x09, 0x01,
0x81, 0x02,
0x95, 0x40,
0x09, 0x01,
0x91, 0x02,
0x95, 0x01,
0x09, 0x01,
0xB1, 0x02,
0xC0
}

usb hid report descriptor

Definition at line 170 of file hid_iap_desc.c.

Referenced by class_setup_handler().

◆ hid_iap_desc_handler

usbd_desc_handler hid_iap_desc_handler
extern

hid device descriptor handler structure

Definition at line 66 of file hid_iap_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_keyboard_class

Modules | Data Structures
USB_keyboard_class
AT32F403_middlewares_usbd_class

usb device keyboard demo More...

Modules

USB_keyboard_class_private_functions
USB_keyboard_class_endpoint_definition
USB_hid_class_exported_functions

Data Structures

struct keyboard_type

Detailed Description

usb device keyboard demo


AT32F403 Firmwary Library: USB_keyboard_class_private_functions

Macros | Functions | Variables
USB_keyboard_class_private_functions
AT32F403_middlewares_usbd_class » USB_keyboard_class

Macros

#define SHIFT 0x80

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
usb_sts_type | usb_keyboard_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_keyboard_send_char (void *udev, uint8_t ascii_code)
usb device class report function More...

Variables

keyboard_type keyboard_struct
static const unsigned char _asciimap [128]
usbd_class_handler keyboard_class_handler

Detailed Description

Macro Definition Documentation

◆ SHIFT

#define SHIFT 0x80

Definition at line 52 of file keyboard_class.c.

Function Documentation

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 229 of file keyboard_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device class endpoint 0 out status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 339 of file keyboard_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device class endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 325 of file keyboard_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device class event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 408 of file keyboard_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 361 of file keyboard_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 206 of file keyboard_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 381 of file keyboard_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 246 of file keyboard_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device class sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 393 of file keyboard_class.c.

◆ usb_hid_keyboard_send_char()

void usb_hid_keyboard_send_char | ( | void * | udev,
 |  | uint8_t | ascii_code
 | ) |  |

usb device class report function

Parameters
udev | to the structure of usbd_core_type
op | operation
Return values
none

Definition at line 460 of file keyboard_class.c.

Referenced by keyboard_send_string().

◆ usb_keyboard_class_send_report()

usb_sts_type usb_keyboard_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 442 of file keyboard_class.c.

Referenced by usb_hid_keyboard_send_char().

Variable Documentation

◆ _asciimap

const unsigned char _asciimap[128]
static

Definition at line 53 of file keyboard_class.c.

Referenced by usb_hid_keyboard_send_char().

◆ keyboard_class_handler

usbd_class_handler keyboard_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&keyboard_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: keyboard_class.c:393
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: keyboard_class.c:361
keyboard_struct
keyboard_type keyboard_struct
Definition: keyboard_class.c:51
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: keyboard_class.c:229
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: keyboard_class.c:246
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: keyboard_class.c:325
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: keyboard_class.c:339
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: keyboard_class.c:408
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: keyboard_class.c:206
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: keyboard_class.c:381

Definition at line 187 of file keyboard_class.c.

Referenced by main().

◆ keyboard_struct

keyboard_type keyboard_struct

Definition at line 51 of file keyboard_class.c.


AT32F403 Firmwary Library: USB_keyboard_class_endpoint_definition

Macros
USB_keyboard_class_endpoint_definition
AT32F403_middlewares_usbd_class » USB_keyboard_class

Macros

#define | USBD_KEYBOARD_IN_EPT 0x81
usb hid use endpoint define More...
#define | USBD_KEYBOARD_IN_MAXPACKET_SIZE 0x40
usb hid in and out max packet size define More...
#define | USBD_KEYBOARD_OUT_MAXPACKET_SIZE 0x40

Detailed Description

Macro Definition Documentation

◆ USBD_KEYBOARD_IN_EPT

#define USBD_KEYBOARD_IN_EPT 0x81

usb hid use endpoint define

Definition at line 51 of file keyboard_class.h.

◆ USBD_KEYBOARD_IN_MAXPACKET_SIZE

#define USBD_KEYBOARD_IN_MAXPACKET_SIZE 0x40

usb hid in and out max packet size define

Definition at line 56 of file keyboard_class.h.

◆ USBD_KEYBOARD_OUT_MAXPACKET_SIZE

#define USBD_KEYBOARD_OUT_MAXPACKET_SIZE 0x40

Definition at line 57 of file keyboard_class.h.


AT32F403 Firmwary Library: USB_hid_class_exported_functions

Functions | Variables
USB_hid_class_exported_functions
AT32F403_middlewares_usbd_class » USB_keyboard_class | AT32F403_middlewares_usbd_class » USB_mouse_class

Functions

usb_sts_type | usb_keyboard_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_keyboard_send_char (void *udev, uint8_t ascii_code)
usb device class report function More...
usb_sts_type | usb_mouse_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_mouse_send (void *udev, uint8_t op)
usb device class report function More...

Variables

usbd_class_handler keyboard_class_handler
usbd_class_handler mouse_class_handler

Detailed Description

Function Documentation

◆ usb_hid_keyboard_send_char()

void usb_hid_keyboard_send_char | ( | void * | udev,
 |  | uint8_t | ascii_code
 | ) |  |

usb device class report function

Parameters
udev | to the structure of usbd_core_type
op | operation
Return values
none

Definition at line 460 of file keyboard_class.c.

Referenced by keyboard_send_string().

◆ usb_hid_mouse_send()

void usb_hid_mouse_send | ( | void * | udev,
 |  | uint8_t | op
 | ) |  |

usb device class report function

Parameters
udev | to the structure of usbd_core_type
op | operation
Return values
none

Definition at line 321 of file mouse_class.c.

Referenced by main().

◆ usb_keyboard_class_send_report()

usb_sts_type usb_keyboard_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 442 of file keyboard_class.c.

Referenced by usb_hid_keyboard_send_char().

◆ usb_mouse_class_send_report()

usb_sts_type usb_mouse_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 304 of file mouse_class.c.

Referenced by usb_hid_mouse_send().

Variable Documentation

◆ keyboard_class_handler

usbd_class_handler keyboard_class_handler
extern

Definition at line 187 of file keyboard_class.c.

Referenced by main().

◆ mouse_class_handler

usbd_class_handler mouse_class_handler
extern

Definition at line 54 of file mouse_class.c.

Referenced by main().


AT32F403 Firmwary Library: keyboard_type Struct Reference

Data Fields
keyboard_type Struct Reference
AT32F403_middlewares_usbd_class » USB_keyboard_class

#include <keyboard_class.h>

Data Fields

uint32_t | hid_protocol
uint32_t | hid_set_idle
uint32_t | alt_setting
uint8_t | hid_set_report [64]
uint8_t | keyboard_buf [8]
__IO uint8_t | hid_suspend_flag
__IO uint8_t | g_u8tx_completed
uint8_t | hid_state
uint8_t | temp

Detailed Description

Definition at line 64 of file keyboard_class.h.

Field Documentation

◆ alt_setting

uint32_t keyboard_type::alt_setting

Definition at line 68 of file keyboard_class.h.

Referenced by class_setup_handler().

◆ g_u8tx_completed

__IO uint8_t keyboard_type::g_u8tx_completed

Definition at line 73 of file keyboard_class.h.

Referenced by class_in_handler(), class_init_handler(), and keyboard_send_string().

◆ hid_protocol

uint32_t keyboard_type::hid_protocol

Definition at line 66 of file keyboard_class.h.

Referenced by class_setup_handler().

◆ hid_set_idle

uint32_t keyboard_type::hid_set_idle

Definition at line 67 of file keyboard_class.h.

Referenced by class_setup_handler().

◆ hid_set_report

uint8_t keyboard_type::hid_set_report[64]

Definition at line 69 of file keyboard_class.h.

Referenced by class_setup_handler().

◆ hid_state

uint8_t keyboard_type::hid_state

Definition at line 74 of file keyboard_class.h.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

◆ hid_suspend_flag

__IO uint8_t keyboard_type::hid_suspend_flag

Definition at line 72 of file keyboard_class.h.

Referenced by class_event_handler().

◆ keyboard_buf

uint8_t keyboard_type::keyboard_buf[8]

Definition at line 70 of file keyboard_class.h.

Referenced by usb_hid_keyboard_send_char().

◆ temp

uint8_t keyboard_type::temp

Definition at line 75 of file keyboard_class.h.

Referenced by usb_hid_keyboard_send_char().

The documentation for this struct was generated from the following file:
  • keyboard_class.h


AT32F403 Firmwary Library: USB_keyboard_desc

Modules | Variables
USB_keyboard_desc
AT32F403_middlewares_usbd_class

usb device keyboard descriptor More...

Modules

USB_keyboard_desc_private_functions
USB_keyboard_desc_definition

Variables

usbd_desc_handler keyboard_desc_handler
keyboard device descriptor handler structure More...

Detailed Description

usb device keyboard descriptor

Variable Documentation

◆ keyboard_desc_handler

usbd_desc_handler keyboard_desc_handler
extern

keyboard device descriptor handler structure

Definition at line 64 of file keyboard_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_keyboard_desc_private_functions

Functions | Variables
USB_keyboard_desc_private_functions
AT32F403_middlewares_usbd_class » USB_keyboard_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler keyboard_desc_handler
keyboard device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc
uint8_t | g_usbd_keyboard_report [63]
usb mouse report descriptor More...
uint8_t | g_keyboard_usb_desc [9]
usb hid descriptor More...

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 451 of file keyboard_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 373 of file keyboard_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 353 of file keyboard_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 439 of file keyboard_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 393 of file keyboard_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 404 of file keyboard_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 383 of file keyboard_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 416 of file keyboard_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 363 of file keyboard_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 428 of file keyboard_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 331 of file keyboard_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 305 of file keyboard_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 279 of file keyboard_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x6040 ),
HBYTE( 0x6040 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb hid descriptor

usb mouse report descriptor

usb configuration standard descriptor

Definition at line 59 of file keyboard_desc.c.

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
34 ,
g_usbd_configuration
}

Definition at line 251 of file keyboard_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 244 of file keyboard_desc.c.

Referenced by get_device_descriptor().

◆ g_keyboard_usb_desc

ALIGNED_HEAD uint8_t g_keyboard_usb_desc
extern
Initial value:
=
{
0x09,
HID_CLASS_DESC_HID,
LBYTE( 0x0110 ),
HBYTE( 0x0110 ),
0x00,
0x01,
HID_CLASS_DESC_REPORT,
LBYTE(sizeof(g_usbd_keyboard_report)),
HBYTE(sizeof(g_usbd_keyboard_report)),
}
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
g_usbd_keyboard_report
uint8_t g_usbd_keyboard_report[63]
usb mouse report descriptor
Definition: keyboard_desc.c:160

usb hid descriptor

Definition at line 202 of file keyboard_desc.c.

Referenced by class_setup_handler().

◆ g_usbd_keyboard_report

ALIGNED_HEAD uint8_t g_usbd_keyboard_report
extern

usb mouse report descriptor

Definition at line 160 of file keyboard_desc.c.

Referenced by class_setup_handler().

◆ keyboard_desc_handler

usbd_desc_handler keyboard_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: keyboard_desc.c:373
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: keyboard_desc.c:353
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: keyboard_desc.c:404
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: keyboard_desc.c:363
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: keyboard_desc.c:439
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: keyboard_desc.c:383
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: keyboard_desc.c:416
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: keyboard_desc.c:451
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: keyboard_desc.c:393
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: keyboard_desc.c:428

keyboard device descriptor handler structure

Definition at line 64 of file keyboard_desc.c.

Referenced by main().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 258 of file keyboard_desc.c.

Referenced by get_device_lang_id().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 265 of file keyboard_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 271 of file keyboard_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_keyboard_desc_definition

Macros
USB_keyboard_desc_definition
AT32F403_middlewares_usbd_class » USB_keyboard_desc

Macros

#define | KEYBOARD_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_KEYBOARD_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_KEYBOARD_PRODUCT_ID 0x6040
#define | USBD_KEYBOARD_CONFIG_DESC_SIZE 34
usb descriptor size define More...
#define | USBD_KEYBOARD_SIZ_REPORT_DESC 63
#define | USBD_KEYBOARD_SIZ_STRING_LANGID 4
#define | USBD_KEYBOARD_SIZ_STRING_SERIAL 0x1A
#define | USBD_KEYBOARD_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_KEYBOARD_DESC_PRODUCT_STRING "Keyboard"
#define | USBD_KEYBOARD_DESC_CONFIGURATION_STRING "Keyboard Config"
#define | USBD_KEYBOARD_DESC_INTERFACE_STRING "Keyboard Interface"
#define | KEYBOARD_BINTERVAL_TIME 0x0A
usb hid endpoint interval define More...
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Detailed Description

Macro Definition Documentation

◆ KEYBOARD_BCD_NUM

#define KEYBOARD_BCD_NUM 0x0110

usb bcd number define

Definition at line 51 of file keyboard_desc.h.

◆ KEYBOARD_BINTERVAL_TIME

#define KEYBOARD_BINTERVAL_TIME 0x0A

usb hid endpoint interval define

Definition at line 78 of file keyboard_desc.h.

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

usb mcu id address deine

Definition at line 83 of file keyboard_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 84 of file keyboard_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 85 of file keyboard_desc.h.

◆ USBD_KEYBOARD_CONFIG_DESC_SIZE

#define USBD_KEYBOARD_CONFIG_DESC_SIZE 34

usb descriptor size define

Definition at line 62 of file keyboard_desc.h.

◆ USBD_KEYBOARD_DESC_CONFIGURATION_STRING

#define USBD_KEYBOARD_DESC_CONFIGURATION_STRING "Keyboard Config"

Definition at line 72 of file keyboard_desc.h.

◆ USBD_KEYBOARD_DESC_INTERFACE_STRING

#define USBD_KEYBOARD_DESC_INTERFACE_STRING "Keyboard Interface"

Definition at line 73 of file keyboard_desc.h.

◆ USBD_KEYBOARD_DESC_MANUFACTURER_STRING

#define USBD_KEYBOARD_DESC_MANUFACTURER_STRING "Artery"

usb string define(vendor, product configuration, interface)

Definition at line 70 of file keyboard_desc.h.

◆ USBD_KEYBOARD_DESC_PRODUCT_STRING

#define USBD_KEYBOARD_DESC_PRODUCT_STRING "Keyboard"

Definition at line 71 of file keyboard_desc.h.

◆ USBD_KEYBOARD_PRODUCT_ID

#define USBD_KEYBOARD_PRODUCT_ID 0x6040

Definition at line 57 of file keyboard_desc.h.

◆ USBD_KEYBOARD_SIZ_REPORT_DESC

#define USBD_KEYBOARD_SIZ_REPORT_DESC 63

Definition at line 63 of file keyboard_desc.h.

◆ USBD_KEYBOARD_SIZ_STRING_LANGID

#define USBD_KEYBOARD_SIZ_STRING_LANGID 4

Definition at line 64 of file keyboard_desc.h.

◆ USBD_KEYBOARD_SIZ_STRING_SERIAL

#define USBD_KEYBOARD_SIZ_STRING_SERIAL 0x1A

Definition at line 65 of file keyboard_desc.h.

◆ USBD_KEYBOARD_VENDOR_ID

#define USBD_KEYBOARD_VENDOR_ID 0x2E3C

usb vendor id and product id define

Definition at line 56 of file keyboard_desc.h.


AT32F403 Firmwary Library: USB_mouse_class

Modules
USB_mouse_class
AT32F403_middlewares_usbd_class

usb device mouse demo More...

Modules

USB_mouse_class_private_functions
USB_mouse_class_endpoint_definition
USB_mouse_class_request_code_definition
USB_hid_class_exported_functions

Detailed Description

usb device mouse demo


AT32F403 Firmwary Library: USB_mouse_class_private_functions

Functions | Variables
USB_mouse_class_private_functions
AT32F403_middlewares_usbd_class » USB_mouse_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
usb_sts_type | usb_mouse_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_mouse_send (void *udev, uint8_t op)
usb device class report function More...

Variables

mouse_type mouse_struct
usbd_class_handler mouse_class_handler

Detailed Description

Function Documentation

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 94 of file mouse_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device class endpoint 0 out status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 204 of file mouse_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device class endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 190 of file mouse_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device class event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 270 of file mouse_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 226 of file mouse_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 73 of file mouse_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device class endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 243 of file mouse_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 111 of file mouse_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device class sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 255 of file mouse_class.c.

◆ usb_hid_mouse_send()

void usb_hid_mouse_send | ( | void * | udev,
 |  | uint8_t | op
 | ) |  |

usb device class report function

Parameters
udev | to the structure of usbd_core_type
op | operation
Return values
none

Definition at line 321 of file mouse_class.c.

Referenced by main().

◆ usb_mouse_class_send_report()

usb_sts_type usb_mouse_class_send_report | ( | void * | udev,
 |  | uint8_t * | report,
 |  | uint16_t | len
 | ) |  |

usb device class send report

Parameters
udev | to the structure of usbd_core_type
report | report buffer
len | report length
Return values
status of usb_sts_type

Definition at line 304 of file mouse_class.c.

Referenced by usb_hid_mouse_send().

Variable Documentation

◆ mouse_class_handler

usbd_class_handler mouse_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&mouse_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: mouse_class.c:255
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: mouse_class.c:226
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: mouse_class.c:94
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: mouse_class.c:111
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: mouse_class.c:190
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: mouse_class.c:204
mouse_struct
mouse_type mouse_struct
Definition: mouse_class.c:51
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: mouse_class.c:270
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: mouse_class.c:73
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: mouse_class.c:243

Definition at line 54 of file mouse_class.c.

Referenced by main().

◆ mouse_struct

mouse_type mouse_struct

Definition at line 51 of file mouse_class.c.


AT32F403 Firmwary Library: USB_mouse_class_endpoint_definition

Macros
USB_mouse_class_endpoint_definition
AT32F403_middlewares_usbd_class » USB_mouse_class

Macros

#define | USBD_MOUSE_IN_EPT 0x81
usb hid use endpoint define More...
#define | USBD_MOUSE_IN_MAXPACKET_SIZE 0x40
usb hid in and out max packet size define More...

Detailed Description

Macro Definition Documentation

◆ USBD_MOUSE_IN_EPT

#define USBD_MOUSE_IN_EPT 0x81

usb hid use endpoint define

Definition at line 51 of file mouse_class.h.

◆ USBD_MOUSE_IN_MAXPACKET_SIZE

#define USBD_MOUSE_IN_MAXPACKET_SIZE 0x40

usb hid in and out max packet size define

Definition at line 56 of file mouse_class.h.


AT32F403 Firmwary Library: USB_mouse_class_request_code_definition

Data Structures | Macros
USB_mouse_class_request_code_definition
AT32F403_middlewares_usbd_class » USB_mouse_class

Data Structures

struct mouse_type

Macros

#define | MOVE_STEP 20
usb hid mouse operation More...
#define | BUTTON_RELEASE 0
#define | LEFT_BUTTON 1
#define | RIGHT_BUTTON 2
#define | LEFT_MOVE 3
#define | RIGHT_MOVE 4
#define | UP_MOVE 5
#define | DOWN_MOVE 6

Detailed Description

Macro Definition Documentation

◆ BUTTON_RELEASE

#define BUTTON_RELEASE 0

Definition at line 72 of file mouse_class.h.

◆ DOWN_MOVE

#define DOWN_MOVE 6

Definition at line 78 of file mouse_class.h.

◆ LEFT_BUTTON

#define LEFT_BUTTON 1

Definition at line 73 of file mouse_class.h.

◆ LEFT_MOVE

#define LEFT_MOVE 3

Definition at line 75 of file mouse_class.h.

◆ MOVE_STEP

#define MOVE_STEP 20

usb hid mouse operation

Definition at line 70 of file mouse_class.h.

◆ RIGHT_BUTTON

#define RIGHT_BUTTON 2

Definition at line 74 of file mouse_class.h.

◆ RIGHT_MOVE

#define RIGHT_MOVE 4

Definition at line 76 of file mouse_class.h.

◆ UP_MOVE

#define UP_MOVE 5

Definition at line 77 of file mouse_class.h.


AT32F403 Firmwary Library: mouse_type Struct Reference

Data Fields
mouse_type Struct Reference
AT32F403_middlewares_usbd_class » USB_mouse_class » USB_mouse_class_request_code_definition

#include <mouse_class.h>

Data Fields

uint32_t | hid_protocol
uint32_t | hid_set_idle
uint32_t | alt_setting
uint8_t | hid_set_report [64]
uint8_t | mouse_buffer [4]
uint8_t | hid_state
__IO uint8_t | hid_suspend_flag

Detailed Description

Definition at line 80 of file mouse_class.h.

Field Documentation

◆ alt_setting

uint32_t mouse_type::alt_setting

Definition at line 84 of file mouse_class.h.

Referenced by class_setup_handler().

◆ hid_protocol

uint32_t mouse_type::hid_protocol

Definition at line 82 of file mouse_class.h.

Referenced by class_setup_handler().

◆ hid_set_idle

uint32_t mouse_type::hid_set_idle

Definition at line 83 of file mouse_class.h.

Referenced by class_setup_handler().

◆ hid_set_report

uint8_t mouse_type::hid_set_report[64]

Definition at line 86 of file mouse_class.h.

Referenced by class_setup_handler().

◆ hid_state

uint8_t mouse_type::hid_state

Definition at line 88 of file mouse_class.h.

Referenced by class_ept0_rx_handler(), and class_setup_handler().

◆ hid_suspend_flag

__IO uint8_t mouse_type::hid_suspend_flag

Definition at line 89 of file mouse_class.h.

Referenced by class_event_handler().

◆ mouse_buffer

uint8_t mouse_type::mouse_buffer[4]

Definition at line 87 of file mouse_class.h.

Referenced by usb_hid_mouse_send().

The documentation for this struct was generated from the following file:
  • mouse_class.h


AT32F403 Firmwary Library: USB_mouse_desc

Modules | Variables
USB_mouse_desc
AT32F403_middlewares_usbd_class

usb device mouse descriptor More...

Modules

USB_mouse_desc_private_functions
USB_mouse_desc_definition

Variables

usbd_desc_handler mouse_desc_handler
mouse device descriptor handler structure More...

Detailed Description

usb device mouse descriptor

Variable Documentation

◆ mouse_desc_handler

usbd_desc_handler mouse_desc_handler
extern

mouse device descriptor handler structure

Definition at line 64 of file mouse_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_mouse_desc_private_functions

Functions | Variables
USB_mouse_desc_private_functions
AT32F403_middlewares_usbd_class » USB_mouse_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler mouse_desc_handler
mouse device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc
uint8_t | g_usbd_mouse_report [74]
usb mouse report descriptor More...
uint8_t | g_mouse_usb_desc [9]
usb hid descriptor More...

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 465 of file mouse_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 387 of file mouse_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 367 of file mouse_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 453 of file mouse_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 407 of file mouse_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 418 of file mouse_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 397 of file mouse_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 430 of file mouse_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 377 of file mouse_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 442 of file mouse_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 345 of file mouse_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 319 of file mouse_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 293 of file mouse_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5710 ),
HBYTE( 0x5710 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb hid descriptor

usb mouse report descriptor

usb configuration standard descriptor

Definition at line 59 of file mouse_desc.c.

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
34 ,
g_usbd_configuration
}

Definition at line 265 of file mouse_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 258 of file mouse_desc.c.

Referenced by get_device_descriptor().

◆ g_mouse_usb_desc

ALIGNED_HEAD uint8_t g_mouse_usb_desc
extern
Initial value:
=
{
0x09,
HID_CLASS_DESC_HID,
LBYTE( 0x0110 ),
HBYTE( 0x0110 ),
0x00,
0x01,
HID_CLASS_DESC_REPORT,
LBYTE(sizeof(g_usbd_mouse_report)),
HBYTE(sizeof(g_usbd_mouse_report)),
}
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
g_usbd_mouse_report
uint8_t g_usbd_mouse_report[74]
usb mouse report descriptor
Definition: mouse_desc.c:160

usb hid descriptor

Definition at line 216 of file mouse_desc.c.

Referenced by class_setup_handler().

◆ g_usbd_mouse_report

ALIGNED_HEAD uint8_t g_usbd_mouse_report
extern

usb mouse report descriptor

Definition at line 160 of file mouse_desc.c.

Referenced by class_setup_handler().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 272 of file mouse_desc.c.

Referenced by get_device_lang_id().

◆ mouse_desc_handler

usbd_desc_handler mouse_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: mouse_desc.c:387
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: mouse_desc.c:367
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: mouse_desc.c:418
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: mouse_desc.c:377
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: mouse_desc.c:453
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: mouse_desc.c:397
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: mouse_desc.c:430
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: mouse_desc.c:465
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: mouse_desc.c:407
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: mouse_desc.c:442

mouse device descriptor handler structure

Definition at line 64 of file mouse_desc.c.

Referenced by main().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 279 of file mouse_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 285 of file mouse_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_mouse_desc_definition

Macros
USB_mouse_desc_definition
AT32F403_middlewares_usbd_class » USB_mouse_desc

Macros

#define | MOUSE_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_MOUSE_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_MOUSE_PRODUCT_ID 0x5710
#define | USBD_MOUSE_CONFIG_DESC_SIZE 34
usb descriptor size define More...
#define | USBD_MOUSE_SIZ_REPORT_DESC 74
#define | USBD_MOUSE_SIZ_STRING_LANGID 4
#define | USBD_MOUSE_SIZ_STRING_SERIAL 0x1A
#define | USBD_MOUSE_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_MOUSE_DESC_PRODUCT_STRING "Mouse"
#define | USBD_MOUSE_DESC_CONFIGURATION_STRING "Mouse Config"
#define | USBD_MOUSE_DESC_INTERFACE_STRING "Mouse Interface"
#define | MOUSE_BINTERVAL_TIME 0x0A
usb hid endpoint interval define More...
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Detailed Description

Macro Definition Documentation

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

usb mcu id address deine

Definition at line 83 of file mouse_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 84 of file mouse_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 85 of file mouse_desc.h.

◆ MOUSE_BCD_NUM

#define MOUSE_BCD_NUM 0x0110

usb bcd number define

Definition at line 51 of file mouse_desc.h.

◆ MOUSE_BINTERVAL_TIME

#define MOUSE_BINTERVAL_TIME 0x0A

usb hid endpoint interval define

Definition at line 78 of file mouse_desc.h.

◆ USBD_MOUSE_CONFIG_DESC_SIZE

#define USBD_MOUSE_CONFIG_DESC_SIZE 34

usb descriptor size define

Definition at line 62 of file mouse_desc.h.

◆ USBD_MOUSE_DESC_CONFIGURATION_STRING

#define USBD_MOUSE_DESC_CONFIGURATION_STRING "Mouse Config"

Definition at line 72 of file mouse_desc.h.

◆ USBD_MOUSE_DESC_INTERFACE_STRING

#define USBD_MOUSE_DESC_INTERFACE_STRING "Mouse Interface"

Definition at line 73 of file mouse_desc.h.

◆ USBD_MOUSE_DESC_MANUFACTURER_STRING

#define USBD_MOUSE_DESC_MANUFACTURER_STRING "Artery"

usb string define(vendor, product configuration, interface)

Definition at line 70 of file mouse_desc.h.

◆ USBD_MOUSE_DESC_PRODUCT_STRING

#define USBD_MOUSE_DESC_PRODUCT_STRING "Mouse"

Definition at line 71 of file mouse_desc.h.

◆ USBD_MOUSE_PRODUCT_ID

#define USBD_MOUSE_PRODUCT_ID 0x5710

Definition at line 57 of file mouse_desc.h.

◆ USBD_MOUSE_SIZ_REPORT_DESC

#define USBD_MOUSE_SIZ_REPORT_DESC 74

Definition at line 63 of file mouse_desc.h.

◆ USBD_MOUSE_SIZ_STRING_LANGID

#define USBD_MOUSE_SIZ_STRING_LANGID 4

Definition at line 64 of file mouse_desc.h.

◆ USBD_MOUSE_SIZ_STRING_SERIAL

#define USBD_MOUSE_SIZ_STRING_SERIAL 0x1A

Definition at line 65 of file mouse_desc.h.

◆ USBD_MOUSE_VENDOR_ID

#define USBD_MOUSE_VENDOR_ID 0x2E3C

usb vendor id and product id define

Definition at line 56 of file mouse_desc.h.


AT32F403 Firmwary Library: USB_msc_class

Modules
USB_msc_class
AT32F403_middlewares_usbd_class

usb device class msc demo More...

Modules

USB_msc_class_private_functions
USB_msc_class_definition

Detailed Description

usb device class msc demo


AT32F403 Firmwary Library: USB_msc_class_private_functions

Functions | Variables
USB_msc_class_private_functions
AT32F403_middlewares_usbd_class » USB_msc_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...

Variables

msc_type msc_struct
usbd_class_handler msc_class_handler

Detailed Description

Function Documentation

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 95 of file msc_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device endpoint 0 out status stage complete

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 200 of file msc_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 186 of file msc_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 256 of file msc_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 215 of file msc_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 74 of file msc_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 229 of file msc_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

< get max lun

< bulk only mass storage reset

Definition at line 115 of file msc_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 241 of file msc_class.c.

Variable Documentation

◆ msc_class_handler

usbd_class_handler msc_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&msc_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: msc_class.c:241
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: msc_class.c:215
msc_struct
msc_type msc_struct
Definition: msc_class.c:52
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: msc_class.c:95
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: msc_class.c:115
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: msc_class.c:186
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: msc_class.c:200
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: msc_class.c:256
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: msc_class.c:74
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: msc_class.c:229

Definition at line 55 of file msc_class.c.

Referenced by main().

◆ msc_struct

msc_type msc_struct

Definition at line 52 of file msc_class.c.


AT32F403 Firmwary Library: USB_msc_class_definition

Macros | Variables
USB_msc_class_definition
AT32F403_middlewares_usbd_class » USB_msc_class

Macros

#define | USBD_MSC_BULK_IN_EPT 0x81
#define | USBD_MSC_BULK_OUT_EPT 0x01
#define | USBD_IN_MAXPACKET_SIZE 0x40
#define | USBD_OUT_MAXPACKET_SIZE 0x40

Variables

usbd_class_handler msc_class_handler

Detailed Description

Macro Definition Documentation

◆ USBD_IN_MAXPACKET_SIZE

#define USBD_IN_MAXPACKET_SIZE 0x40

Definition at line 50 of file msc_class.h.

◆ USBD_MSC_BULK_IN_EPT

#define USBD_MSC_BULK_IN_EPT 0x81

Definition at line 47 of file msc_class.h.

◆ USBD_MSC_BULK_OUT_EPT

#define USBD_MSC_BULK_OUT_EPT 0x01

Definition at line 48 of file msc_class.h.

◆ USBD_OUT_MAXPACKET_SIZE

#define USBD_OUT_MAXPACKET_SIZE 0x40

Definition at line 51 of file msc_class.h.

Variable Documentation

◆ msc_class_handler

usbd_class_handler msc_class_handler
extern

Definition at line 55 of file msc_class.c.

Referenced by main().


AT32F403 Firmwary Library: USB_msc_desc

Modules
USB_msc_desc
AT32F403_middlewares_usbd_class

usb device msc descriptor More...

Modules

USB_msc_desc_private_functions
USB_msc_desc_definition

Detailed Description

usb device msc descriptor


AT32F403 Firmwary Library: USB_msc_desc_private_functions

Functions | Variables
USB_msc_desc_private_functions
AT32F403_middlewares_usbd_class » USB_msc_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler msc_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 388 of file msc_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 310 of file msc_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 290 of file msc_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 376 of file msc_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 330 of file msc_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 341 of file msc_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 320 of file msc_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 353 of file msc_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 300 of file msc_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 365 of file msc_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 268 of file msc_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 242 of file msc_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 216 of file msc_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x5720 ),
HBYTE( 0x5720 ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb configuration standard descriptor

Definition at line 60 of file msc_desc.c.

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
32 ,
g_usbd_configuration
}

Definition at line 188 of file msc_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 181 of file msc_desc.c.

Referenced by get_device_descriptor().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 195 of file msc_desc.c.

Referenced by get_device_lang_id().

◆ msc_desc_handler

usbd_desc_handler msc_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: msc_desc.c:310
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: msc_desc.c:290
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: msc_desc.c:341
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: msc_desc.c:300
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: msc_desc.c:376
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: msc_desc.c:320
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: msc_desc.c:353
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: msc_desc.c:388
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: msc_desc.c:330
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: msc_desc.c:365

device descriptor handler structure

Definition at line 65 of file msc_desc.c.

Referenced by main().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 202 of file msc_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 208 of file msc_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_msc_desc_definition

Macros | Variables
USB_msc_desc_definition
AT32F403_middlewares_usbd_class » USB_msc_desc

Macros

#define | MSC_BCD_NUM 0x0110
#define | USBD_MSC_VENDOR_ID 0x2E3C
#define | USBD_MSC_PRODUCT_ID 0x5720
#define | USBD_MSC_CONFIG_DESC_SIZE 32
#define | USBD_MSC_SIZ_STRING_LANGID 4
#define | USBD_MSC_SIZ_STRING_SERIAL 0x1A
#define | USBD_MSC_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_MSC_DESC_PRODUCT_STRING "AT32 Mass Storage"
#define | USBD_MSC_DESC_CONFIGURATION_STRING "Mass Storage Config"
#define | USBD_MSC_DESC_INTERFACE_STRING "Mass Storage Interface"
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler msc_desc_handler
device descriptor handler structure More...

Detailed Description

Macro Definition Documentation

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

Definition at line 62 of file msc_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 63 of file msc_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 64 of file msc_desc.h.

◆ MSC_BCD_NUM

#define MSC_BCD_NUM 0x0110

Definition at line 48 of file msc_desc.h.

◆ USBD_MSC_CONFIG_DESC_SIZE

#define USBD_MSC_CONFIG_DESC_SIZE 32

Definition at line 53 of file msc_desc.h.

◆ USBD_MSC_DESC_CONFIGURATION_STRING

#define USBD_MSC_DESC_CONFIGURATION_STRING "Mass Storage Config"

Definition at line 59 of file msc_desc.h.

◆ USBD_MSC_DESC_INTERFACE_STRING

#define USBD_MSC_DESC_INTERFACE_STRING "Mass Storage Interface"

Definition at line 60 of file msc_desc.h.

◆ USBD_MSC_DESC_MANUFACTURER_STRING

#define USBD_MSC_DESC_MANUFACTURER_STRING "Artery"

Definition at line 57 of file msc_desc.h.

◆ USBD_MSC_DESC_PRODUCT_STRING

#define USBD_MSC_DESC_PRODUCT_STRING "AT32 Mass Storage"

Definition at line 58 of file msc_desc.h.

◆ USBD_MSC_PRODUCT_ID

#define USBD_MSC_PRODUCT_ID 0x5720

Definition at line 51 of file msc_desc.h.

◆ USBD_MSC_SIZ_STRING_LANGID

#define USBD_MSC_SIZ_STRING_LANGID 4

Definition at line 54 of file msc_desc.h.

◆ USBD_MSC_SIZ_STRING_SERIAL

#define USBD_MSC_SIZ_STRING_SERIAL 0x1A

Definition at line 55 of file msc_desc.h.

◆ USBD_MSC_VENDOR_ID

#define USBD_MSC_VENDOR_ID 0x2E3C

Definition at line 50 of file msc_desc.h.

Variable Documentation

◆ msc_desc_handler

usbd_desc_handler msc_desc_handler
extern

device descriptor handler structure

Definition at line 65 of file msc_desc.c.

Referenced by main().


AT32F403 Firmwary Library: USB_printer_class

Modules
USB_printer_class
AT32F403_middlewares_usbd_class

usb device class printer demo More...

Modules

USB_printer_class_private_functions
USB_printer_class_definition

Detailed Description

usb device class printer demo


AT32F403 Firmwary Library: USB_printer_class_private_functions

Functions | Variables
USB_printer_class_private_functions
AT32F403_middlewares_usbd_class » USB_printer_class

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
uint16_t | usb_printer_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_printer_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

static ALIGNED_HEAD uint8_t printer_device_id[24] ALIGNED_TAIL
printer_type printer_struct
usbd_class_handler printer_class_handler

Detailed Description

Function Documentation

◆ class_clear_handler()

static usb_sts_type class_clear_handler ( void * udev )
static

clear endpoint or other state

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 107 of file printer_class.c.

◆ class_ept0_rx_handler()

static usb_sts_type class_ept0_rx_handler ( void * udev )
static

usb device endpoint 0 out status stage complete

Parameters
udev usb device core handler type
Return values
status of usb_sts_type

Definition at line 201 of file printer_class.c.

◆ class_ept0_tx_handler()

static usb_sts_type class_ept0_tx_handler ( void * udev )
static

usb device endpoint 0 in status stage complete

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 187 of file printer_class.c.

◆ class_event_handler()

static usb_sts_type class_event_handler | ( | void * | udev,
 |  | usbd_event_type | event
 | ) |  |
static

usb device event handler

Parameters
udev | to the structure of usbd_core_type
event | usb device event
Return values
status of usb_sts_type

Definition at line 270 of file printer_class.c.

◆ class_in_handler()

static usb_sts_type class_in_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device transmision complete handler

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 216 of file printer_class.c.

◆ class_init_handler()

static usb_sts_type class_init_handler ( void * udev )
static

initialize usb custom hid endpoint

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 81 of file printer_class.c.

◆ class_out_handler()

static usb_sts_type class_out_handler | ( | void * | udev,
 |  | uint8_t | ept_num
 | ) |  |
static

usb device endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
status of usb_sts_type

Definition at line 236 of file printer_class.c.

◆ class_setup_handler()

static usb_sts_type class_setup_handler | ( | void * | udev,
 |  | usb_setup_type * | setup
 | ) |  |
static

usb device class setup request handler

Parameters
udev | to the structure of usbd_core_type
setup | setup packet
Return values
status of usb_sts_type

Definition at line 127 of file printer_class.c.

◆ class_sof_handler()

static usb_sts_type class_sof_handler ( void * udev )
static

usb device sof handler

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 255 of file printer_class.c.

◆ usb_printer_get_rxdata()

uint16_t usb_printer_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 302 of file printer_class.c.

Referenced by main().

◆ usb_printer_send_data()

error_status usb_printer_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 332 of file printer_class.c.

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t printer_device_id [ 24 ] ALIGNED_TAIL
static
Initial value:
=
{
0x00, 0x16,
'M', 'F', 'G',':','A','r','t','e', 'r', 'y' ,' ',
'C','M', 'D', ':', 'E', 'S', 'C', 'P', 'O', 'S',' ',
}

Definition at line 51 of file printer_class.c.

◆ printer_class_handler

usbd_class_handler printer_class_handler
Initial value:
=
{
class_init_handler,
class_clear_handler,
class_setup_handler,
class_ept0_tx_handler,
class_ept0_rx_handler,
class_in_handler,
class_out_handler,
class_sof_handler,
class_event_handler,
&printer_struct
}
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: printer_class.c:255
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: printer_class.c:216
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: printer_class.c:107
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: printer_class.c:127
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: printer_class.c:187
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: printer_class.c:201
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: printer_class.c:270
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: printer_class.c:81
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: printer_class.c:236
printer_struct
printer_type printer_struct
Definition: printer_class.c:59

Definition at line 62 of file printer_class.c.

Referenced by main().

◆ printer_struct

printer_type printer_struct

Definition at line 59 of file printer_class.c.


AT32F403 Firmwary Library: USB_printer_class_definition

Data Structures | Macros | Enumerations | Functions | Variables
USB_printer_class_definition
AT32F403_middlewares_usbd_class » USB_printer_class

Data Structures

struct printer_type

Macros

#define | USBD_PRINTER_BULK_IN_EPT 0x81
#define | USBD_PRINTER_BULK_OUT_EPT 0x01
#define | USBD_PRINTER_IN_MAXPACKET_SIZE 0x40
#define | USBD_PRINTER_OUT_MAXPACKET_SIZE 0x40
#define | PRINTER_DEVICE_ID_LEN 24

Enumerations

enum printer_req_type { PRINTER_REQ_GET_DEVICE_ID = 0x00 , PRINTER_REQ_GET_PORT_STATUS = 0x01 , PRINTER_REQ_GET_SOFT_RESET = 0x02 }

Functions

uint16_t | usb_printer_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_printer_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

usbd_class_handler printer_class_handler

Detailed Description

Macro Definition Documentation

◆ PRINTER_DEVICE_ID_LEN

#define PRINTER_DEVICE_ID_LEN 24

Definition at line 55 of file printer_class.h.

◆ USBD_PRINTER_BULK_IN_EPT

#define USBD_PRINTER_BULK_IN_EPT 0x81

Definition at line 48 of file printer_class.h.

◆ USBD_PRINTER_BULK_OUT_EPT

#define USBD_PRINTER_BULK_OUT_EPT 0x01

Definition at line 49 of file printer_class.h.

◆ USBD_PRINTER_IN_MAXPACKET_SIZE

#define USBD_PRINTER_IN_MAXPACKET_SIZE 0x40

Definition at line 52 of file printer_class.h.

◆ USBD_PRINTER_OUT_MAXPACKET_SIZE

#define USBD_PRINTER_OUT_MAXPACKET_SIZE 0x40

Definition at line 53 of file printer_class.h.

Enumeration Type Documentation

◆ printer_req_type

enum printer_req_type
Enumerator
PRINTER_REQ_GET_DEVICE_ID
PRINTER_REQ_GET_PORT_STATUS
PRINTER_REQ_GET_SOFT_RESET

Definition at line 57 of file printer_class.h.

Function Documentation

◆ usb_printer_get_rxdata()

uint16_t usb_printer_get_rxdata | ( | void * | udev,
 |  | uint8_t * | recv_data
 | ) |  |

usb device class rx data process

Parameters
udev | to the structure of usbd_core_type
recv_data | receive buffer
Return values
receive data len

Definition at line 302 of file printer_class.c.

Referenced by main().

◆ usb_printer_send_data()

error_status usb_printer_send_data | ( | void * | udev,
 |  | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

usb device class send data

Parameters
udev | to the structure of usbd_core_type
send_data | send data buffer
len | send length
Return values
error status

Definition at line 332 of file printer_class.c.

Variable Documentation

◆ printer_class_handler

usbd_class_handler printer_class_handler
extern

Definition at line 62 of file printer_class.c.

Referenced by main().


AT32F403 Firmwary Library: printer_type Struct Reference

Data Fields
printer_type Struct Reference
AT32F403_middlewares_usbd_class » USB_printer_class » USB_printer_class_definition

#include <printer_class.h>

Data Fields

uint32_t | alt_setting
uint32_t | g_printer_port_status
uint8_t | g_rx_buff [0x40]
uint8_t | g_printer_data [0x40]
__IO uint8_t | g_tx_completed
__IO uint8_t | g_rx_completed
uint32_t | g_rxlen

Detailed Description

Definition at line 65 of file printer_class.h.

Field Documentation

◆ alt_setting

uint32_t printer_type::alt_setting

Definition at line 67 of file printer_class.h.

Referenced by class_setup_handler().

◆ g_printer_data

uint8_t printer_type::g_printer_data[0x40]

Definition at line 70 of file printer_class.h.

Referenced by class_setup_handler().

◆ g_printer_port_status

uint32_t printer_type::g_printer_port_status

Definition at line 68 of file printer_class.h.

Referenced by class_init_handler(), and class_setup_handler().

◆ g_rx_buff

uint8_t printer_type::g_rx_buff[0x40]

Definition at line 69 of file printer_class.h.

Referenced by class_init_handler(), and usb_printer_get_rxdata().

◆ g_rx_completed

__IO uint8_t printer_type::g_rx_completed

Definition at line 72 of file printer_class.h.

Referenced by class_out_handler(), and usb_printer_get_rxdata().

◆ g_rxlen

uint32_t printer_type::g_rxlen

Definition at line 73 of file printer_class.h.

Referenced by class_out_handler(), and usb_printer_get_rxdata().

◆ g_tx_completed

__IO uint8_t printer_type::g_tx_completed

Definition at line 71 of file printer_class.h.

Referenced by class_in_handler(), class_init_handler(), and usb_printer_send_data().

The documentation for this struct was generated from the following file:
  • printer_class.h


AT32F403 Firmwary Library: USB_printer_desc

Modules
USB_printer_desc
AT32F403_middlewares_usbd_class

usb device printer descriptor More...

Modules

USB_printer_desc_private_functions
USB_printer_desc_definition

Detailed Description

usb device printer descriptor


AT32F403 Firmwary Library: USB_printer_desc_private_functions

Functions | Variables
USB_printer_desc_private_functions
AT32F403_middlewares_usbd_class » USB_printer_desc

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler printer_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

Function Documentation

◆ get_device_config_string()

static usbd_desc_t * get_device_config_string ( void )
static

get device config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 388 of file printer_desc.c.

◆ get_device_configuration()

static usbd_desc_t * get_device_configuration ( void )
static

get config descriptor

Parameters
none
Return values
usbd_desc

Definition at line 310 of file printer_desc.c.

◆ get_device_descriptor()

static usbd_desc_t * get_device_descriptor ( void )
static

get device descriptor

Parameters
none
Return values
usbd_desc

Definition at line 290 of file printer_desc.c.

◆ get_device_interface_string()

static usbd_desc_t * get_device_interface_string ( void )
static

get interface descriptor

Parameters
none
Return values
usbd_desc

Definition at line 376 of file printer_desc.c.

◆ get_device_lang_id()

static usbd_desc_t * get_device_lang_id ( void )
static

get lang id descriptor

Parameters
none
Return values
usbd_desc

Definition at line 330 of file printer_desc.c.

◆ get_device_manufacturer_string()

static usbd_desc_t * get_device_manufacturer_string ( void )
static

get manufacturer descriptor

Parameters
none
Return values
usbd_desc

Definition at line 341 of file printer_desc.c.

◆ get_device_other_speed()

static usbd_desc_t * get_device_other_speed ( void )
static

get other speed descriptor

Parameters
none
Return values
usbd_desc

Definition at line 320 of file printer_desc.c.

◆ get_device_product_string()

static usbd_desc_t * get_device_product_string ( void )
static

get product descriptor

Parameters
none
Return values
usbd_desc

Definition at line 353 of file printer_desc.c.

◆ get_device_qualifier()

static usbd_desc_t * get_device_qualifier ( void )
static

get device qualifier

Parameters
none
Return values
usbd_desc

Definition at line 300 of file printer_desc.c.

◆ get_device_serial_string()

static usbd_desc_t * get_device_serial_string ( void )
static

get serial descriptor

Parameters
none
Return values
usbd_desc

Definition at line 365 of file printer_desc.c.

◆ get_serial_num()

static void get_serial_num ( void )
static

usb get serial number

Parameters
none
Return values
none

Definition at line 268 of file printer_desc.c.

Referenced by get_device_serial_string().

◆ usbd_int_to_unicode()

static void usbd_int_to_unicode | ( | uint32_t | value,
 |  | uint8_t * | pbuf,
 |  | uint8_t | len
 | ) |  |
static

usb int convert to unicode

Parameters
value | int value
pbus | unicode buffer
len | length
Return values
none

Definition at line 242 of file printer_desc.c.

Referenced by get_serial_num().

◆ usbd_unicode_convert()

static uint16_t usbd_unicode_convert | ( | uint8_t * | string,
 |  | uint8_t * | unicode_buf
 | ) |  |
static

standard usb unicode convert

Parameters
string | source string
unicode_buf | unicode buffer
Return values
length

Definition at line 216 of file printer_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().

Variable Documentation

◆ ALIGNED_TAIL

ALIGNED_HEAD uint8_t g_string_serial [ 0x1A ] ALIGNED_TAIL
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
USB_DESCIPTOR_TYPE_DEVICE,
0x00,
0x02,
0x00,
0x00,
0x00,
USB_MAX_EP0_SIZE,
LBYTE( 0x2E3C ),
HBYTE( 0x2E3C ),
LBYTE( 0x57FF ),
HBYTE( 0x57FF ),
0x00,
0x02,
USB_MFC_STRING,
USB_PRODUCT_STRING,
USB_SERIAL_STRING,
1
}
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90

usb device standard descriptor

usb string serial

usb string lang id

usb configuration standard descriptor

Definition at line 60 of file printer_desc.c.

◆ config_descriptor

usbd_desc_t config_descriptor
static
Initial value:
=
{
32 ,
g_usbd_configuration
}

Definition at line 188 of file printer_desc.c.

Referenced by get_device_configuration().

◆ device_descriptor

usbd_desc_t device_descriptor
static
Initial value:
=
{
USB_DEVICE_DESC_LEN,
g_usbd_descriptor
}

Definition at line 181 of file printer_desc.c.

Referenced by get_device_descriptor().

◆ langid_descriptor

usbd_desc_t langid_descriptor
static
Initial value:
=
{
4 ,
g_string_lang_id
}

Definition at line 195 of file printer_desc.c.

Referenced by get_device_lang_id().

◆ printer_desc_handler

usbd_desc_handler printer_desc_handler
Initial value:
=
{
get_device_descriptor,
get_device_qualifier,
get_device_configuration,
get_device_other_speed,
get_device_lang_id,
get_device_manufacturer_string,
get_device_product_string,
get_device_serial_string,
get_device_interface_string,
get_device_config_string,
}
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: printer_desc.c:310
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: printer_desc.c:290
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: printer_desc.c:341
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: printer_desc.c:300
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: printer_desc.c:376
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: printer_desc.c:320
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: printer_desc.c:353
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: printer_desc.c:388
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: printer_desc.c:330
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: printer_desc.c:365

device descriptor handler structure

Definition at line 65 of file printer_desc.c.

Referenced by main().

◆ serial_descriptor

usbd_desc_t serial_descriptor
static
Initial value:
=
{
0x1A ,
g_string_serial
}

Definition at line 202 of file printer_desc.c.

Referenced by get_device_serial_string().

◆ vp_desc

usbd_desc_t vp_desc
static

Definition at line 208 of file printer_desc.c.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), and get_device_product_string().


AT32F403 Firmwary Library: USB_printer_desc_definition

Macros | Variables
USB_printer_desc_definition
AT32F403_middlewares_usbd_class » USB_printer_desc

Macros

#define | PRINTER_BCD_NUM 0x0110
#define | USBD_PRINTER_VENDOR_ID 0x2E3C
#define | USBD_PRINTER_PRODUCT_ID 0x57FF
#define | USBD_PRINTER_CONFIG_DESC_SIZE 32
#define | USBD_PRINTER_SIZ_STRING_LANGID 4
#define | USBD_PRINTER_SIZ_STRING_SERIAL 0x1A
#define | USBD_PRINTER_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_PRINTER_DESC_PRODUCT_STRING "AT32 Printer"
#define | USBD_PRINTER_DESC_CONFIGURATION_STRING "Printer Config"
#define | USBD_PRINTER_DESC_INTERFACE_STRING "Printer Interface"
#define | PRINTER_PROTOCOL_UNIDIRECTIONAL 0x01
#define | PRINTER_PROTOCOL_BI_DIRECTIONAL 0x02
#define | PRINTER_PROTOCOL_1284_4 0x03
#define | PRINTER_PROTOCOL_VENDOR_SPECIFIC 0xFF
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler printer_desc_handler
device descriptor handler structure More...

Detailed Description

Macro Definition Documentation

◆ MCU_ID1

#define MCU_ID1 (0x1FFFF7E8)

Definition at line 68 of file printer_desc.h.

◆ MCU_ID2

#define MCU_ID2 (0x1FFFF7EC)

Definition at line 69 of file printer_desc.h.

◆ MCU_ID3

#define MCU_ID3 (0x1FFFF7F0)

Definition at line 70 of file printer_desc.h.

◆ PRINTER_BCD_NUM

#define PRINTER_BCD_NUM 0x0110

Definition at line 48 of file printer_desc.h.

◆ PRINTER_PROTOCOL_1284_4

#define PRINTER_PROTOCOL_1284_4 0x03

Definition at line 64 of file printer_desc.h.

◆ PRINTER_PROTOCOL_BI_DIRECTIONAL

#define PRINTER_PROTOCOL_BI_DIRECTIONAL 0x02

Definition at line 63 of file printer_desc.h.

◆ PRINTER_PROTOCOL_UNIDIRECTIONAL

#define PRINTER_PROTOCOL_UNIDIRECTIONAL 0x01

Definition at line 62 of file printer_desc.h.

◆ PRINTER_PROTOCOL_VENDOR_SPECIFIC

#define PRINTER_PROTOCOL_VENDOR_SPECIFIC 0xFF

Definition at line 65 of file printer_desc.h.

◆ USBD_PRINTER_CONFIG_DESC_SIZE

#define USBD_PRINTER_CONFIG_DESC_SIZE 32

Definition at line 53 of file printer_desc.h.

◆ USBD_PRINTER_DESC_CONFIGURATION_STRING

#define USBD_PRINTER_DESC_CONFIGURATION_STRING "Printer Config"

Definition at line 59 of file printer_desc.h.

◆ USBD_PRINTER_DESC_INTERFACE_STRING

#define USBD_PRINTER_DESC_INTERFACE_STRING "Printer Interface"

Definition at line 60 of file printer_desc.h.

◆ USBD_PRINTER_DESC_MANUFACTURER_STRING

#define USBD_PRINTER_DESC_MANUFACTURER_STRING "Artery"

Definition at line 57 of file printer_desc.h.

◆ USBD_PRINTER_DESC_PRODUCT_STRING

#define USBD_PRINTER_DESC_PRODUCT_STRING "AT32 Printer"

Definition at line 58 of file printer_desc.h.

◆ USBD_PRINTER_PRODUCT_ID

#define USBD_PRINTER_PRODUCT_ID 0x57FF

Definition at line 51 of file printer_desc.h.

◆ USBD_PRINTER_SIZ_STRING_LANGID

#define USBD_PRINTER_SIZ_STRING_LANGID 4

Definition at line 54 of file printer_desc.h.

◆ USBD_PRINTER_SIZ_STRING_SERIAL

#define USBD_PRINTER_SIZ_STRING_SERIAL 0x1A

Definition at line 55 of file printer_desc.h.

◆ USBD_PRINTER_VENDOR_ID

#define USBD_PRINTER_VENDOR_ID 0x2E3C

Definition at line 50 of file printer_desc.h.

Variable Documentation

◆ printer_desc_handler

usbd_desc_handler printer_desc_handler
extern

device descriptor handler structure

Definition at line 65 of file printer_desc.c.

Referenced by main().


AT32F403 Firmwary Library: AT32F403_middlewares_usbd_drivers

Modules
AT32F403_middlewares_usbd_drivers

Modules

USBD_drivers_core
usb device drivers core
USBD_drivers_interrupt
usb device interrupt
USBD_drivers_standard_request
usb device standard_request
USB_standard

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: USBD_drivers_core

Modules
USBD_drivers_core
AT32F403_middlewares_usbd_drivers

usb device drivers core More...

Modules

USBD_core_exported_types
USBD_core_exported_functions
USBD_core_private_functions

Detailed Description

usb device drivers core


AT32F403 Firmwary Library: USBD_core_exported_types

Data Structures | Enumerations
USBD_core_exported_types
AT32F403_middlewares_usbd_drivers » USBD_drivers_core

Data Structures

struct | usbd_desc_t
usb device descriptor struct More...
struct | usbd_desc_handler
usb device descriptor handler More...
struct | usbd_class_handler
usb device class handler More...
struct | usbd_core_type
usb device core struct type More...

Enumerations

enum usbd_event_type {
USBD_NOP_EVENT , USBD_RESET_EVENT , USBD_SUSPEND_EVENT , USBD_WAKEUP_EVENT ,
USBD_ERR_EVENT
}
usb device event More...

Detailed Description

Enumeration Type Documentation

◆ usbd_event_type

enum usbd_event_type

usb device event

Enumerator
USBD_NOP_EVENT | usb device event nop
USBD_RESET_EVENT | usb device event reset
USBD_SUSPEND_EVENT | usb device event suspend
USBD_WAKEUP_EVENT | usb device event wakeup
USBD_ERR_EVENT | usb device event error

Definition at line 52 of file usbd_core.h.


AT32F403 Firmwary Library: usbd_desc_t Struct Reference

Data Fields
usbd_desc_t Struct Reference
AT32F403_middlewares_usbd_drivers » USBD_drivers_core » USBD_core_exported_types

usb device descriptor struct More...

#include <usbd_core.h>

Data Fields

uint16_t | length
uint8_t * | descriptor

Detailed Description

usb device descriptor struct

Definition at line 64 of file usbd_core.h.

Field Documentation

◆ descriptor

uint8_t* usbd_desc_t::descriptor

descriptor string

Definition at line 67 of file usbd_core.h.

Referenced by class_audio_setup_handler(), class_setup_handler(), get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), get_device_product_string(), and usbd_get_descriptor().

◆ length

uint16_t usbd_desc_t::length

descriptor length

Definition at line 66 of file usbd_core.h.

Referenced by get_device_config_string(), get_device_interface_string(), get_device_manufacturer_string(), get_device_product_string(), and usbd_get_descriptor().

The documentation for this struct was generated from the following file:
  • usbd_core.h


AT32F403 Firmwary Library: usbd_desc_handler Struct Reference

Data Fields
usbd_desc_handler Struct Reference
AT32F403_middlewares_usbd_drivers » USBD_drivers_core » USBD_core_exported_types

usb device descriptor handler More...

#include <usbd_core.h>

Data Fields

usbd_desc_t *(* | get_device_descriptor )(void)
usbd_desc_t *(* | get_device_qualifier )(void)
usbd_desc_t *(* | get_device_configuration )(void)
usbd_desc_t *(* | get_device_other_speed )(void)
usbd_desc_t *(* | get_device_lang_id )(void)
usbd_desc_t *(* | get_device_manufacturer_string )(void)
usbd_desc_t *(* | get_device_product_string )(void)
usbd_desc_t *(* | get_device_serial_string )(void)
usbd_desc_t *(* | get_device_interface_string )(void)
usbd_desc_t *(* | get_device_config_string )(void)

Detailed Description

usb device descriptor handler

Definition at line 73 of file usbd_core.h.

Field Documentation

◆ get_device_config_string

usbd_desc_t *(* usbd_desc_handler::get_device_config_string) (void)

get device device config callback

Definition at line 84 of file usbd_core.h.

Referenced by usbd_get_descriptor().

◆ get_device_configuration

usbd_desc_t *(* usbd_desc_handler::get_device_configuration) (void)

get device configuration callback

Definition at line 77 of file usbd_core.h.

Referenced by class_audio_setup_handler(), class_setup_handler(), and usbd_get_descriptor().

◆ get_device_descriptor

usbd_desc_t *(* usbd_desc_handler::get_device_descriptor) (void)

get device descriptor callback

Definition at line 75 of file usbd_core.h.

Referenced by usbd_get_descriptor().

◆ get_device_interface_string

usbd_desc_t *(* usbd_desc_handler::get_device_interface_string) (void)

get device interface string callback

Definition at line 83 of file usbd_core.h.

Referenced by usbd_get_descriptor().

◆ get_device_lang_id

usbd_desc_t *(* usbd_desc_handler::get_device_lang_id) (void)

get device lang id callback

Definition at line 79 of file usbd_core.h.

Referenced by usbd_get_descriptor().

◆ get_device_manufacturer_string

usbd_desc_t *(* usbd_desc_handler::get_device_manufacturer_string) (void)

get device manufacturer callback

Definition at line 80 of file usbd_core.h.

Referenced by usbd_get_descriptor().

◆ get_device_other_speed

usbd_desc_t *(* usbd_desc_handler::get_device_other_speed) (void)

get device other speed callback

Definition at line 78 of file usbd_core.h.

◆ get_device_product_string

usbd_desc_t *(* usbd_desc_handler::get_device_product_string) (void)

get device product callback

Definition at line 81 of file usbd_core.h.

Referenced by usbd_get_descriptor().

◆ get_device_qualifier

usbd_desc_t *(* usbd_desc_handler::get_device_qualifier) (void)

get device qualifier callback

Definition at line 76 of file usbd_core.h.

◆ get_device_serial_string

usbd_desc_t *(* usbd_desc_handler::get_device_serial_string) (void)

get device serial callback

Definition at line 82 of file usbd_core.h.

Referenced by usbd_get_descriptor().

The documentation for this struct was generated from the following file:
  • usbd_core.h


AT32F403 Firmwary Library: usbd_class_handler Struct Reference

Data Fields
usbd_class_handler Struct Reference
AT32F403_middlewares_usbd_drivers » USBD_drivers_core » USBD_core_exported_types

usb device class handler More...

#include <usbd_core.h>

Data Fields

usb_sts_type(* | init_handler )(void *udev)
usb_sts_type(* | clear_handler )(void *udev)
usb_sts_type(* | setup_handler )(void *udev, usb_setup_type *setup)
usb_sts_type(* | ept0_tx_handler )(void *udev)
usb_sts_type(* | ept0_rx_handler )(void *udev)
usb_sts_type(* | in_handler )(void *udev, uint8_t ept_num)
usb_sts_type(* | out_handler )(void *udev, uint8_t ept_num)
usb_sts_type(* | sof_handler )(void *udev)
usb_sts_type(* | event_handler )(void *udev, usbd_event_type event)
void * | pdata

Detailed Description

usb device class handler

Definition at line 90 of file usbd_core.h.

Field Documentation

◆ clear_handler

usb_sts_type(* usbd_class_handler::clear_handler) (void *udev)

usb class clear handler

Definition at line 93 of file usbd_core.h.

Referenced by usbd_set_configuration().

◆ ept0_rx_handler

usb_sts_type(* usbd_class_handler::ept0_rx_handler) (void *udev)

usb class endpoint 0 rx complete handler

Definition at line 96 of file usbd_core.h.

Referenced by usbd_core_out_handler().

◆ ept0_tx_handler

usb_sts_type(* usbd_class_handler::ept0_tx_handler) (void *udev)

usb class endpoint 0 tx complete handler

Definition at line 95 of file usbd_core.h.

Referenced by usbd_core_in_handler().

◆ event_handler

usb_sts_type(* usbd_class_handler::event_handler) (void *udev, usbd_event_type event)

usb class event handler

Definition at line 100 of file usbd_core.h.

Referenced by usbd_reset_handler(), usbd_suspend_handler(), and usbd_wakeup_handler().

◆ in_handler

usb_sts_type(* usbd_class_handler::in_handler) (void *udev, uint8_t ept_num)

usb class in transfer complete handler

Definition at line 97 of file usbd_core.h.

Referenced by usbd_core_in_handler().

◆ init_handler

usb_sts_type(* usbd_class_handler::init_handler) (void *udev)

usb class init handler

Definition at line 92 of file usbd_core.h.

Referenced by usbd_set_configuration().

◆ out_handler

usb_sts_type(* usbd_class_handler::out_handler) (void *udev, uint8_t ept_num)

usb class out transfer complete handler

Definition at line 98 of file usbd_core.h.

Referenced by usbd_core_out_handler().

◆ pdata

void* usbd_class_handler::pdata

usb class data pointer

Definition at line 101 of file usbd_core.h.

Referenced by audio_get_interface(), audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), audio_req_set_cur(), audio_set_interface(), bot_cbw_decode(), bot_scsi_allow_medium_removal(), bot_scsi_capacity(), bot_scsi_check_address(), bot_scsi_clear_feature(), bot_scsi_cmd_process(), bot_scsi_datain_handler(), bot_scsi_dataout_handler(), bot_scsi_format_capacity(), bot_scsi_init(), bot_scsi_inquiry(), bot_scsi_mode_sense10(), bot_scsi_mode_sense6(), bot_scsi_read10(), bot_scsi_request_sense(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_send_data(), bot_scsi_stall(), bot_scsi_start_stop(), bot_scsi_test_unit(), bot_scsi_verify(), bot_scsi_write10(), cdc_class_setup_handler(), class_ept0_rx_handler(), class_event_handler(), class_hid_setup_handler(), class_in_handler(), class_init_handler(), class_out_handler(), class_setup_handler(), keyboard_class_setup_handler(), keyboard_send_string(), main(), msc_class_setup_handler(), usb_hid_buf_process(), usb_hid_keyboard_send_char(), usb_hid_mouse_send(), usb_printer_get_rxdata(), usb_printer_send_data(), usb_vcp_cmd_process(), usb_vcp_get_rxdata(), usb_vcp_send_data(), usb_vcpkybrd_vcp_get_rxdata(), and usb_vcpkybrd_vcp_send_data().

◆ setup_handler

usb_sts_type(* usbd_class_handler::setup_handler) (void *udev, usb_setup_type *setup)

usb class setup handler

Definition at line 94 of file usbd_core.h.

Referenced by usbd_clear_feature(), usbd_device_request(), usbd_endpoint_request(), usbd_get_descriptor(), usbd_interface_request(), and usbd_set_feature().

◆ sof_handler

usb_sts_type(* usbd_class_handler::sof_handler) (void *udev)

usb class sof handler

Definition at line 99 of file usbd_core.h.

Referenced by usbd_sof_handler().

The documentation for this struct was generated from the following file:
  • usbd_core.h


AT32F403 Firmwary Library: usbd_core_type Struct Reference

Data Fields
usbd_core_type Struct Reference
AT32F403_middlewares_usbd_drivers » USBD_drivers_core » USBD_core_exported_types

usb device core struct type More...

#include <usbd_core.h>

Data Fields

usb_reg_type * usb_reg
usbd_class_handler * class_handler
usbd_desc_handler * desc_handler
usb_ept_info | ept_in [USB_EPT_MAX_NUM]
usb_ept_info | ept_out [USB_EPT_MAX_NUM]
usb_setup_type setup
uint8_t | setup_buffer [12]
uint8_t | ept0_sts
uint8_t | speed
uint16_t | ept0_wlength
usbd_conn_state conn_state
usbd_conn_state old_conn_state
uint8_t | device_addr
uint8_t | remote_wakup
uint8_t | default_config
uint8_t | dev_config
uint16_t | config_status

Detailed Description

usb device core struct type

Definition at line 107 of file usbd_core.h.

Field Documentation

◆ class_handler

usbd_class_handler* usbd_core_type::class_handler

usb device class handler pointer

Definition at line 111 of file usbd_core.h.

Referenced by audio_get_interface(), audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), audio_req_set_cur(), audio_set_interface(), bot_cbw_decode(), bot_scsi_allow_medium_removal(), bot_scsi_capacity(), bot_scsi_check_address(), bot_scsi_clear_feature(), bot_scsi_cmd_process(), bot_scsi_datain_handler(), bot_scsi_dataout_handler(), bot_scsi_format_capacity(), bot_scsi_init(), bot_scsi_inquiry(), bot_scsi_mode_sense10(), bot_scsi_mode_sense6(), bot_scsi_read10(), bot_scsi_request_sense(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_send_data(), bot_scsi_stall(), bot_scsi_start_stop(), bot_scsi_test_unit(), bot_scsi_verify(), bot_scsi_write10(), cdc_class_setup_handler(), class_ept0_rx_handler(), class_event_handler(), class_hid_setup_handler(), class_in_handler(), class_init_handler(), class_out_handler(), class_setup_handler(), keyboard_class_setup_handler(), keyboard_send_string(), main(), msc_class_setup_handler(), usb_hid_buf_process(), usb_hid_keyboard_send_char(), usb_hid_mouse_send(), usb_printer_get_rxdata(), usb_printer_send_data(), usb_vcp_cmd_process(), usb_vcp_get_rxdata(), usb_vcp_send_data(), usb_vcpkybrd_vcp_get_rxdata(), usb_vcpkybrd_vcp_send_data(), usbd_clear_feature(), usbd_core_in_handler(), usbd_core_init(), usbd_core_out_handler(), usbd_device_request(), usbd_endpoint_request(), usbd_get_descriptor(), usbd_interface_request(), usbd_reset_handler(), usbd_set_configuration(), usbd_set_feature(), usbd_sof_handler(), usbd_suspend_handler(), and usbd_wakeup_handler().

◆ config_status

uint16_t usbd_core_type::config_status

usb configure status

Definition at line 131 of file usbd_core.h.

Referenced by usbd_clear_feature(), and usbd_get_status().

◆ conn_state

usbd_conn_state usbd_core_type::conn_state

usb current connect state

Definition at line 124 of file usbd_core.h.

Referenced by usbd_clear_feature(), usbd_connect_state_get(), usbd_core_in_handler(), usbd_core_init(), usbd_core_out_handler(), usbd_endpoint_request(), usbd_eptn_handler(), usbd_get_configuration(), usbd_get_status(), usbd_interface_request(), usbd_remote_wakeup(), usbd_reset_handler(), usbd_set_address(), usbd_set_configuration(), usbd_suspend_handler(), and usbd_wakeup_handler().

◆ default_config

uint8_t usbd_core_type::default_config

usb default config state

Definition at line 129 of file usbd_core.h.

Referenced by usbd_get_configuration().

◆ desc_handler

usbd_desc_handler* usbd_core_type::desc_handler

usb device descriptor handler pointer

Definition at line 112 of file usbd_core.h.

Referenced by class_audio_setup_handler(), class_setup_handler(), usbd_core_init(), and usbd_get_descriptor().

◆ dev_config

uint8_t usbd_core_type::dev_config

usb device config state

Definition at line 130 of file usbd_core.h.

Referenced by usbd_get_configuration(), and usbd_set_configuration().

◆ device_addr

uint8_t usbd_core_type::device_addr

device address

Definition at line 127 of file usbd_core.h.

Referenced by usbd_eptn_handler(), and usbd_set_address().

◆ ept0_sts

uint8_t usbd_core_type::ept0_sts

usb control endpoint 0 state

Definition at line 120 of file usbd_core.h.

Referenced by usbd_core_in_handler(), usbd_core_out_handler(), usbd_core_setup_handler(), usbd_ctrl_recv(), usbd_ctrl_recv_status(), usbd_ctrl_send(), and usbd_ctrl_send_status().

◆ ept0_wlength

uint16_t usbd_core_type::ept0_wlength

usb endpoint 0 transfer length

Definition at line 122 of file usbd_core.h.

Referenced by usbd_core_in_handler(), and usbd_core_setup_handler().

◆ ept_in

usb_ept_info usbd_core_type::ept_in[USB_EPT_MAX_NUM]

usb in endpoint infomation struct

Definition at line 114 of file usbd_core.h.

Referenced by usbd_clear_stall(), usbd_core_in_handler(), usbd_ctrl_send(), usbd_endpoint_request(), usbd_ept_buf_custom_define(), usbd_ept_close(), usbd_ept_dbuffer_enable(), usbd_ept_defaut_init(), usbd_ept_open(), usbd_ept_send(), usbd_eptn_handler(), and usbd_set_stall().

◆ ept_out

usb_ept_info usbd_core_type::ept_out[USB_EPT_MAX_NUM]

usb out endpoint infomation struct

Definition at line 115 of file usbd_core.h.

Referenced by usbd_clear_stall(), usbd_core_out_handler(), usbd_ctrl_recv(), usbd_endpoint_request(), usbd_ept_buf_custom_define(), usbd_ept_close(), usbd_ept_dbuffer_enable(), usbd_ept_defaut_init(), usbd_ept_open(), usbd_ept_recv(), usbd_eptn_handler(), usbd_get_recv_len(), and usbd_set_stall().

◆ old_conn_state

usbd_conn_state usbd_core_type::old_conn_state

usb save the previous connect state

Definition at line 125 of file usbd_core.h.

Referenced by usbd_remote_wakeup(), usbd_suspend_handler(), and usbd_wakeup_handler().

◆ remote_wakup

uint8_t usbd_core_type::remote_wakup

remote wakeup state

Definition at line 128 of file usbd_core.h.

Referenced by main(), usbd_clear_feature(), usbd_get_status(), and usbd_set_feature().

◆ setup

usb_setup_type usbd_core_type::setup

usb setup type struct

Definition at line 117 of file usbd_core.h.

Referenced by class_ept0_rx_handler(), usbd_clear_feature(), usbd_core_setup_handler(), usbd_device_request(), usbd_endpoint_request(), usbd_get_configuration(), usbd_get_descriptor(), usbd_interface_request(), usbd_set_address(), usbd_set_configuration(), and usbd_set_feature().

◆ setup_buffer

uint8_t usbd_core_type::setup_buffer[12]

usb setup request buffer

Definition at line 118 of file usbd_core.h.

Referenced by usbd_core_setup_handler(), and usbd_eptn_handler().

◆ speed

uint8_t usbd_core_type::speed

usb speed

Definition at line 121 of file usbd_core.h.

◆ usb_reg

usb_reg_type* usbd_core_type::usb_reg

usb register pointer

Definition at line 109 of file usbd_core.h.

Referenced by usbd_connect(), usbd_core_init(), usbd_disconnect(), usbd_enter_suspend(), usbd_ept_close(), usbd_ept_loop_handler(), usbd_ept_open(), usbd_ept_send(), usbd_eptn_handler(), usbd_irq_handler(), usbd_remote_wakeup(), usbd_reset_handler(), usbd_set_device_addr(), and usbd_wakeup_handler().

The documentation for this struct was generated from the following file:
  • usbd_core.h


AT32F403 Firmwary Library: USBD_core_exported_functions

Functions
USBD_core_exported_functions
AT32F403_middlewares_usbd_drivers » USBD_drivers_core

Functions

void | usbd_core_in_handler (usbd_core_type *udev, uint8_t ept_num)
usb core in transfer complete handler More...
void | usbd_core_out_handler (usbd_core_type *udev, uint8_t ept_num)
usb core out transfer complete handler More...
void | usbd_core_setup_handler (usbd_core_type *udev, uint8_t ept_num)
usb core setup transfer complete handler More...
void | usbd_ctrl_unsupport (usbd_core_type *udev)
un-support device request More...
void | usbd_ctrl_send (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data More...
void | usbd_ctrl_recv (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data More...
void | usbd_ctrl_send_status (usbd_core_type *udev)
usb control endpoint send in status More...
void | usbd_ctrl_recv_status (usbd_core_type *udev)
usb control endpoint send out status More...
void | usbd_set_stall (usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall. More...
void | usbd_clear_stall (usbd_core_type *udev, uint8_t ept_addr)
clear endpoint stall More...
void | usbd_ept_open (usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint More...
void | usbd_ept_close (usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint More...
void | usbd_ept_send (usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data More...
void | usbd_ept_recv (usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data More...
void | usbd_connect (usbd_core_type *udev)
usb device connect to host More...
void | usbd_disconnect (usbd_core_type *udev)
usb device disconnect to host More...
void | usbd_set_device_addr (usbd_core_type *udev, uint8_t address)
usb device set device address. More...
uint32_t | usbd_get_recv_len (usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length More...
usbd_conn_state | usbd_connect_state_get (usbd_core_type *udev)
get usb connect state More...
void | usbd_ept_dbuffer_enable (usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer. More...
void | usbd_ept_buf_auto_define (usb_ept_info *ept_info)
usb auto define endpoint buffer More...
void | usbd_ept_buf_custom_define (usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer More...
void | usbd_ept_defaut_init (usbd_core_type *udev)
usb endpoint structure initialization More...
void | usbd_remote_wakeup (usbd_core_type *udev)
usb device remote wakeup More...
void | usbd_enter_suspend (usbd_core_type *udev)
usb device enter suspend mode More...
void | usbd_core_init (usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core More...

Detailed Description

Function Documentation

◆ usbd_clear_stall()

void usbd_clear_stall | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

clear endpoint stall

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 234 of file usbd_core.c.

Referenced by usbd_endpoint_request().

◆ usbd_connect()

void usbd_connect ( usbd_core_type * udev )

usb device connect to host

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 559 of file usbd_core.c.

Referenced by main(), and usb_reset().

◆ usbd_connect_state_get()

usbd_conn_state usbd_connect_state_get ( usbd_core_type * udev )

get usb connect state

Parameters
udev to the structure of usbd_core_type
Return values
usb connect state

Definition at line 590 of file usbd_core.c.

Referenced by audio_hid_class_send_report(), custom_hid_class_send_report(), main(), usb_iap_class_send_report(), usb_keyboard_class_send_report(), usb_mouse_class_send_report(), and usb_vcpkybrd_class_send_report().

◆ usbd_core_in_handler()

void usbd_core_in_handler | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb core in transfer complete handler

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 46 of file usbd_core.c.

Referenced by usbd_eptn_handler().

◆ usbd_core_init()

void usbd_core_init | ( | usbd_core_type * | udev,
 |  | usb_reg_type * | usb_reg,
 |  | usbd_class_handler * | class_handler,
 |  | usbd_desc_handler * | desc_handler,
 |  | uint8_t | core_id
 | ) |  |

initializes the usb core

Parameters
udev | to the structure of usbd_core_type
usb_reg | usb register pointer (USB)
class_handler | usb class handler
desc_handler | device config handler
core_id | usb core id number
Return values
none

Definition at line 670 of file usbd_core.c.

Referenced by main().

◆ usbd_core_out_handler()

void usbd_core_out_handler | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb core out transfer complete handler

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 98 of file usbd_core.c.

Referenced by usbd_eptn_handler().

◆ usbd_core_setup_handler()

void usbd_core_setup_handler | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_num
 | ) |  |

usb core setup transfer complete handler

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 138 of file usbd_core.c.

Referenced by usbd_eptn_handler().

◆ usbd_ctrl_recv()

void usbd_ctrl_recv | ( | usbd_core_type * | udev,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb control endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | recv data buffer
len | recv data length
Return values
none

Definition at line 193 of file usbd_core.c.

Referenced by audio_req_set_cur(), cdc_class_setup_handler(), class_hid_setup_handler(), class_setup_handler(), and keyboard_class_setup_handler().

◆ usbd_ctrl_recv_status()

void usbd_ctrl_recv_status ( usbd_core_type * udev )

usb control endpoint send out status

Parameters
udev usb device core handler type
Return values
none

Definition at line 221 of file usbd_core.c.

Referenced by usbd_core_in_handler().

◆ usbd_ctrl_send()

void usbd_ctrl_send | ( | usbd_core_type * | udev,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb control endpoint send data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | send data buffer
len | send data length
Return values
none

Definition at line 174 of file usbd_core.c.

Referenced by audio_get_interface(), audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), msc_class_setup_handler(), usbd_endpoint_request(), usbd_get_configuration(), usbd_get_descriptor(), and usbd_get_status().

◆ usbd_ctrl_send_status()

void usbd_ctrl_send_status ( usbd_core_type * udev )

usb control endpoint send in status

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 209 of file usbd_core.c.

Referenced by class_audio_setup_handler(), class_setup_handler(), msc_class_setup_handler(), usbd_clear_feature(), usbd_core_out_handler(), usbd_endpoint_request(), usbd_interface_request(), usbd_set_address(), usbd_set_configuration(), and usbd_set_feature().

◆ usbd_ctrl_unsupport()

void usbd_ctrl_unsupport ( usbd_core_type * udev )

un-support device request

Parameters
udev usb device core handler type
Return values
none

Definition at line 284 of file usbd_core.c.

Referenced by cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), msc_class_setup_handler(), usbd_clear_feature(), usbd_device_request(), usbd_endpoint_request(), usbd_get_configuration(), usbd_get_descriptor(), usbd_get_status(), usbd_interface_request(), usbd_set_address(), and usbd_set_configuration().

◆ usbd_disconnect()

void usbd_disconnect ( usbd_core_type * udev )

usb device disconnect to host

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 569 of file usbd_core.c.

Referenced by usb_reset().

◆ usbd_enter_suspend()

void usbd_enter_suspend ( usbd_core_type * udev )

usb device enter suspend mode

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 620 of file usbd_core.c.

Referenced by usbd_suspend_handler().

◆ usbd_ept_buf_auto_define()

void usbd_ept_buf_auto_define ( usb_ept_info * ept_info )

usb auto define endpoint buffer

Parameters
usb_ept_info endpoint information
Return values
none

Definition at line 425 of file usbd_core.c.

Referenced by usbd_ept_open().

◆ usbd_ept_buf_custom_define()

void usbd_ept_buf_custom_define | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint32_t | addr
 | ) |  |

usb custom define endpoint buffer

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
addr | usb fifo offset address
Return values
none

Definition at line 459 of file usbd_core.c.

Referenced by class_init_handler(), and usbd_reset_handler().

◆ usbd_ept_close()

void usbd_ept_close | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb close endpoint

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 536 of file usbd_core.c.

Referenced by class_clear_handler(), class_setup_handler(), and msc_class_setup_handler().

◆ usbd_ept_dbuffer_enable()

void usbd_ept_dbuffer_enable | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

enable endpoint double buffer.

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 404 of file usbd_core.c.

Referenced by class_init_handler().

◆ usbd_ept_defaut_init()

void usbd_ept_defaut_init ( usbd_core_type * udev )

usb endpoint structure initialization

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 630 of file usbd_core.c.

Referenced by usbd_core_init(), and usbd_reset_handler().

◆ usbd_ept_open()

void usbd_ept_open | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint8_t | ept_type,
 |  | uint16_t | maxpacket
 | ) |  |

usb open endpoint

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
ept_type | endpoint type
maxpacket | endpoint support max buffer size
Return values
none

Definition at line 501 of file usbd_core.c.

Referenced by class_init_handler(), class_setup_handler(), msc_class_setup_handler(), and usbd_reset_handler().

◆ usbd_ept_recv()

void usbd_ept_recv | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | receive data buffer
len | receive data length
Return values
none

Definition at line 359 of file usbd_core.c.

Referenced by audio_set_interface(), bot_scsi_init(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_stall(), bot_scsi_write10(), class_init_handler(), class_out_handler(), usb_printer_get_rxdata(), usb_vcp_get_rxdata(), usb_vcpkybrd_vcp_get_rxdata(), usbd_core_in_handler(), usbd_core_out_handler(), usbd_ctrl_recv(), usbd_ctrl_recv_status(), and usbd_eptn_handler().

◆ usbd_ept_send()

void usbd_ept_send | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb endpoint send data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | send data buffer
len | send data length
Return values
none

Definition at line 299 of file usbd_core.c.

Referenced by audio_hid_class_send_report(), audio_set_interface(), bot_scsi_read10(), bot_scsi_send_csw(), bot_scsi_send_data(), class_in_handler(), custom_hid_class_send_report(), usb_hid_buf_process(), usb_iap_class_send_report(), usb_keyboard_class_send_report(), usb_mouse_class_send_report(), usb_printer_send_data(), usb_vcp_send_data(), usb_vcpkybrd_class_send_report(), usb_vcpkybrd_vcp_send_data(), usbd_core_in_handler(), usbd_ctrl_send(), usbd_ctrl_send_status(), and usbd_eptn_handler().

◆ usbd_get_recv_len()

uint32_t usbd_get_recv_len | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb endpoint get receive data length

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 392 of file usbd_core.c.

Referenced by bot_cbw_decode(), class_ept0_rx_handler(), and class_out_handler().

◆ usbd_remote_wakeup()

void usbd_remote_wakeup ( usbd_core_type * udev )

usb device remote wakeup

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 600 of file usbd_core.c.

Referenced by main().

◆ usbd_set_device_addr()

void usbd_set_device_addr | ( | usbd_core_type * | udev,
 |  | uint8_t | address
 | ) |  |

usb device set device address.

Parameters
udev | to the structure of usbd_core_type
address | host assignment address
Return values
none

Definition at line 580 of file usbd_core.c.

◆ usbd_set_stall()

void usbd_set_stall | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb set endpoint to stall.

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 259 of file usbd_core.c.

Referenced by bot_scsi_clear_feature(), bot_scsi_stall(), usbd_ctrl_unsupport(), and usbd_endpoint_request().


AT32F403 Firmwary Library: USBD_core_private_functions

Functions
USBD_core_private_functions
AT32F403_middlewares_usbd_drivers » USBD_drivers_core

Functions

void | usbd_core_in_handler (usbd_core_type *udev, uint8_t ept_addr)
usb core in transfer complete handler More...
void | usbd_core_out_handler (usbd_core_type *udev, uint8_t ept_addr)
usb core out transfer complete handler More...
void | usbd_core_setup_handler (usbd_core_type *udev, uint8_t ept_num)
usb core setup transfer complete handler More...
void | usbd_ctrl_send (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data More...
void | usbd_ctrl_recv (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data More...
void | usbd_ctrl_send_status (usbd_core_type *udev)
usb control endpoint send in status More...
void | usbd_ctrl_recv_status (usbd_core_type *udev)
usb control endpoint send out status More...
void | usbd_clear_stall (usbd_core_type *udev, uint8_t ept_addr)
clear endpoint stall More...
void | usbd_set_stall (usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall. More...
void | usbd_ctrl_unsupport (usbd_core_type *udev)
un-support device request More...
void | usbd_ept_send (usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
usb endpoint send data More...
void | usbd_ept_recv (usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
usb endpoint receive data More...
uint32_t | usbd_get_recv_len (usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length More...
void | usbd_ept_dbuffer_enable (usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer. More...
void | usbd_ept_buf_auto_define (usb_ept_info *ept_info)
usb auto define endpoint buffer More...
void | usbd_ept_buf_custom_define (usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer More...
void | usbd_ept_open (usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint More...
void | usbd_ept_close (usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint More...
void | usbd_connect (usbd_core_type *udev)
usb device connect to host More...
void | usbd_disconnect (usbd_core_type *udev)
usb device disconnect to host More...
void | usbd_set_device_addr (usbd_core_type *udev, uint8_t address)
usb device set device address. More...
usbd_conn_state | usbd_connect_state_get (usbd_core_type *udev)
get usb connect state More...
void | usbd_remote_wakeup (usbd_core_type *udev)
usb device remote wakeup More...
void | usbd_enter_suspend (usbd_core_type *udev)
usb device enter suspend mode More...
void | usbd_ept_defaut_init (usbd_core_type *udev)
usb endpoint structure initialization More...
void | usbd_core_init (usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *class_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core More...

Detailed Description

Function Documentation

◆ usbd_clear_stall()

void usbd_clear_stall | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

clear endpoint stall

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 234 of file usbd_core.c.

Referenced by usbd_endpoint_request().

◆ usbd_connect()

void usbd_connect ( usbd_core_type * udev )

usb device connect to host

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 559 of file usbd_core.c.

Referenced by main(), and usb_reset().

◆ usbd_connect_state_get()

usbd_conn_state usbd_connect_state_get ( usbd_core_type * udev )

get usb connect state

Parameters
udev to the structure of usbd_core_type
Return values
usb connect state

Definition at line 590 of file usbd_core.c.

Referenced by audio_hid_class_send_report(), custom_hid_class_send_report(), main(), usb_iap_class_send_report(), usb_keyboard_class_send_report(), usb_mouse_class_send_report(), and usb_vcpkybrd_class_send_report().

◆ usbd_core_in_handler()

void usbd_core_in_handler | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb core in transfer complete handler

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 46 of file usbd_core.c.

Referenced by usbd_eptn_handler().

◆ usbd_core_init()

void usbd_core_init | ( | usbd_core_type * | udev,
 |  | usb_reg_type * | usb_reg,
 |  | usbd_class_handler * | class_handler,
 |  | usbd_desc_handler * | desc_handler,
 |  | uint8_t | core_id
 | ) |  |

initializes the usb core

Parameters
udev | to the structure of usbd_core_type
usb_reg | usb register pointer (USB)
class_handler | usb class handler
desc_handler | device config handler
core_id | usb core id number
Return values
none

Definition at line 670 of file usbd_core.c.

Referenced by main().

◆ usbd_core_out_handler()

void usbd_core_out_handler | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb core out transfer complete handler

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 98 of file usbd_core.c.

Referenced by usbd_eptn_handler().

◆ usbd_core_setup_handler()

void usbd_core_setup_handler | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_num
 | ) |  |

usb core setup transfer complete handler

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 138 of file usbd_core.c.

Referenced by usbd_eptn_handler().

◆ usbd_ctrl_recv()

void usbd_ctrl_recv | ( | usbd_core_type * | udev,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb control endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | recv data buffer
len | recv data length
Return values
none

Definition at line 193 of file usbd_core.c.

Referenced by audio_req_set_cur(), cdc_class_setup_handler(), class_hid_setup_handler(), class_setup_handler(), and keyboard_class_setup_handler().

◆ usbd_ctrl_recv_status()

void usbd_ctrl_recv_status ( usbd_core_type * udev )

usb control endpoint send out status

Parameters
udev usb device core handler type
Return values
none

Definition at line 221 of file usbd_core.c.

Referenced by usbd_core_in_handler().

◆ usbd_ctrl_send()

void usbd_ctrl_send | ( | usbd_core_type * | udev,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb control endpoint send data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | send data buffer
len | send data length
Return values
none

Definition at line 174 of file usbd_core.c.

Referenced by audio_get_interface(), audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), msc_class_setup_handler(), usbd_endpoint_request(), usbd_get_configuration(), usbd_get_descriptor(), and usbd_get_status().

◆ usbd_ctrl_send_status()

void usbd_ctrl_send_status ( usbd_core_type * udev )

usb control endpoint send in status

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 209 of file usbd_core.c.

Referenced by class_audio_setup_handler(), class_setup_handler(), msc_class_setup_handler(), usbd_clear_feature(), usbd_core_out_handler(), usbd_endpoint_request(), usbd_interface_request(), usbd_set_address(), usbd_set_configuration(), and usbd_set_feature().

◆ usbd_ctrl_unsupport()

void usbd_ctrl_unsupport ( usbd_core_type * udev )

un-support device request

Parameters
udev usb device core handler type
Return values
none

Definition at line 284 of file usbd_core.c.

Referenced by cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), msc_class_setup_handler(), usbd_clear_feature(), usbd_device_request(), usbd_endpoint_request(), usbd_get_configuration(), usbd_get_descriptor(), usbd_get_status(), usbd_interface_request(), usbd_set_address(), and usbd_set_configuration().

◆ usbd_disconnect()

void usbd_disconnect ( usbd_core_type * udev )

usb device disconnect to host

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 569 of file usbd_core.c.

Referenced by usb_reset().

◆ usbd_enter_suspend()

void usbd_enter_suspend ( usbd_core_type * udev )

usb device enter suspend mode

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 620 of file usbd_core.c.

Referenced by usbd_suspend_handler().

◆ usbd_ept_buf_auto_define()

void usbd_ept_buf_auto_define ( usb_ept_info * ept_info )

usb auto define endpoint buffer

Parameters
usb_ept_info endpoint information
Return values
none

Definition at line 425 of file usbd_core.c.

Referenced by usbd_ept_open().

◆ usbd_ept_buf_custom_define()

void usbd_ept_buf_custom_define | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint32_t | addr
 | ) |  |

usb custom define endpoint buffer

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
addr | usb fifo offset address
Return values
none

Definition at line 459 of file usbd_core.c.

Referenced by class_init_handler(), and usbd_reset_handler().

◆ usbd_ept_close()

void usbd_ept_close | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb close endpoint

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 536 of file usbd_core.c.

Referenced by class_clear_handler(), class_setup_handler(), and msc_class_setup_handler().

◆ usbd_ept_dbuffer_enable()

void usbd_ept_dbuffer_enable | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

enable endpoint double buffer.

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 404 of file usbd_core.c.

Referenced by class_init_handler().

◆ usbd_ept_defaut_init()

void usbd_ept_defaut_init ( usbd_core_type * udev )

usb endpoint structure initialization

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 630 of file usbd_core.c.

Referenced by usbd_core_init(), and usbd_reset_handler().

◆ usbd_ept_open()

void usbd_ept_open | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint8_t | ept_type,
 |  | uint16_t | maxpacket
 | ) |  |

usb open endpoint

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
ept_type | endpoint type
maxpacket | endpoint support max buffer size
Return values
none

Definition at line 501 of file usbd_core.c.

Referenced by class_init_handler(), class_setup_handler(), msc_class_setup_handler(), and usbd_reset_handler().

◆ usbd_ept_recv()

void usbd_ept_recv | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb endpoint receive data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | receive data buffer
len | receive data length
Return values
none

Definition at line 359 of file usbd_core.c.

Referenced by audio_set_interface(), bot_scsi_init(), bot_scsi_reset(), bot_scsi_send_csw(), bot_scsi_stall(), bot_scsi_write10(), class_init_handler(), class_out_handler(), usb_printer_get_rxdata(), usb_vcp_get_rxdata(), usb_vcpkybrd_vcp_get_rxdata(), usbd_core_in_handler(), usbd_core_out_handler(), usbd_ctrl_recv(), usbd_ctrl_recv_status(), and usbd_eptn_handler().

◆ usbd_ept_send()

void usbd_ept_send | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr,
 |  | uint8_t * | buffer,
 |  | uint16_t | len
 | ) |  |

usb endpoint send data

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
buffer | send data buffer
len | send data length
Return values
none

Definition at line 299 of file usbd_core.c.

Referenced by audio_hid_class_send_report(), audio_set_interface(), bot_scsi_read10(), bot_scsi_send_csw(), bot_scsi_send_data(), class_in_handler(), custom_hid_class_send_report(), usb_hid_buf_process(), usb_iap_class_send_report(), usb_keyboard_class_send_report(), usb_mouse_class_send_report(), usb_printer_send_data(), usb_vcp_send_data(), usb_vcpkybrd_class_send_report(), usb_vcpkybrd_vcp_send_data(), usbd_core_in_handler(), usbd_ctrl_send(), usbd_ctrl_send_status(), and usbd_eptn_handler().

◆ usbd_get_recv_len()

uint32_t usbd_get_recv_len | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb endpoint get receive data length

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 392 of file usbd_core.c.

Referenced by bot_cbw_decode(), class_ept0_rx_handler(), and class_out_handler().

◆ usbd_remote_wakeup()

void usbd_remote_wakeup ( usbd_core_type * udev )

usb device remote wakeup

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 600 of file usbd_core.c.

Referenced by main().

◆ usbd_set_device_addr()

void usbd_set_device_addr | ( | usbd_core_type * | udev,
 |  | uint8_t | address
 | ) |  |

usb device set device address.

Parameters
udev | to the structure of usbd_core_type
address | host assignment address
Return values
none

Definition at line 580 of file usbd_core.c.

◆ usbd_set_stall()

void usbd_set_stall | ( | usbd_core_type * | udev,
 |  | uint8_t | ept_addr
 | ) |  |

usb set endpoint to stall.

Parameters
udev | to the structure of usbd_core_type
ept_addr | endpoint number
Return values
none

Definition at line 259 of file usbd_core.c.

Referenced by bot_scsi_clear_feature(), bot_scsi_stall(), usbd_ctrl_unsupport(), and usbd_endpoint_request().


AT32F403 Firmwary Library: USBD_drivers_interrupt

Modules
USBD_drivers_interrupt
AT32F403_middlewares_usbd_drivers

usb device interrupt More...

Modules

USBD_int_exported_functions
USBD_int_private_functions

Detailed Description

usb device interrupt


AT32F403 Firmwary Library: USBD_int_exported_functions

Functions
USBD_int_exported_functions
AT32F403_middlewares_usbd_drivers » USBD_drivers_interrupt

Functions

void | usbd_irq_handler (usbd_core_type *udev)
usb device interrput request handler. More...
void | usbd_ept_loop_handler (usbd_core_type *udev)
usb device endpoint loop handler. More...
void | usbd_eptn_handler (usbd_core_type *udev, usb_ept_number_type ept_num)
usb device endpoint request handler. More...
void | usbd_reset_handler (usbd_core_type *udev)
usb device reset interrupt request handler. More...
void | usbd_sof_handler (usbd_core_type *udev)
usb device sof interrupt request handler. More...
void | usbd_suspend_handler (usbd_core_type *udev)
usb device suspend interrupt request handler. More...
void | usbd_wakeup_handler (usbd_core_type *udev)
usb device wakup interrupt request handler. More...

Detailed Description

Function Documentation

◆ usbd_ept_loop_handler()

void usbd_ept_loop_handler ( usbd_core_type * udev )

usb device endpoint loop handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 222 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_eptn_handler()

void usbd_eptn_handler | ( | usbd_core_type * | udev,
 |  | usb_ept_number_type | ept_num
 | ) |  |

usb device endpoint request handler.

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none

Definition at line 109 of file usbd_int.c.

Referenced by usbd_ept_loop_handler().

◆ usbd_irq_handler()

void usbd_irq_handler ( usbd_core_type * udev )

usb device interrput request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 44 of file usbd_int.c.

Referenced by USBFS_L_CAN1_RX0_IRQHandler().

◆ usbd_reset_handler()

void usbd_reset_handler ( usbd_core_type * udev )

usb device reset interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 242 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_sof_handler()

void usbd_sof_handler ( usbd_core_type * udev )

usb device sof interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 275 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_suspend_handler()

void usbd_suspend_handler ( usbd_core_type * udev )

usb device suspend interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 287 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_wakeup_handler()

void usbd_wakeup_handler ( usbd_core_type * udev )

usb device wakup interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 308 of file usbd_int.c.

Referenced by usbd_irq_handler().


AT32F403 Firmwary Library: USBD_int_private_functions

Functions
USBD_int_private_functions
AT32F403_middlewares_usbd_drivers » USBD_drivers_interrupt

Functions

void | usbd_irq_handler (usbd_core_type *udev)
usb device interrput request handler. More...
void | usbd_eptn_handler (usbd_core_type *udev, usb_ept_number_type ept_num)
usb device endpoint request handler. More...
void | usbd_ept_loop_handler (usbd_core_type *udev)
usb device endpoint loop handler. More...
void | usbd_reset_handler (usbd_core_type *udev)
usb device reset interrupt request handler. More...
void | usbd_sof_handler (usbd_core_type *udev)
usb device sof interrupt request handler. More...
void | usbd_suspend_handler (usbd_core_type *udev)
usb device suspend interrupt request handler. More...
void | usbd_wakeup_handler (usbd_core_type *udev)
usb device wakup interrupt request handler. More...

Detailed Description

Function Documentation

◆ usbd_ept_loop_handler()

void usbd_ept_loop_handler ( usbd_core_type * udev )

usb device endpoint loop handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 222 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_eptn_handler()

void usbd_eptn_handler | ( | usbd_core_type * | udev,
 |  | usb_ept_number_type | ept_num
 | ) |  |

usb device endpoint request handler.

Parameters
udev | to the structure of usbd_core_type
ept_num | endpoint number
Return values
none

Definition at line 109 of file usbd_int.c.

Referenced by usbd_ept_loop_handler().

◆ usbd_irq_handler()

void usbd_irq_handler ( usbd_core_type * udev )

usb device interrput request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 44 of file usbd_int.c.

Referenced by USBFS_L_CAN1_RX0_IRQHandler().

◆ usbd_reset_handler()

void usbd_reset_handler ( usbd_core_type * udev )

usb device reset interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 242 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_sof_handler()

void usbd_sof_handler ( usbd_core_type * udev )

usb device sof interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 275 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_suspend_handler()

void usbd_suspend_handler ( usbd_core_type * udev )

usb device suspend interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 287 of file usbd_int.c.

Referenced by usbd_irq_handler().

◆ usbd_wakeup_handler()

void usbd_wakeup_handler ( usbd_core_type * udev )

usb device wakup interrupt request handler.

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 308 of file usbd_int.c.

Referenced by usbd_irq_handler().


AT32F403 Firmwary Library: USBD_drivers_standard_request

Modules
USBD_drivers_standard_request
AT32F403_middlewares_usbd_drivers

usb device standard_request More...

Modules

USBD_sdr_exported_functions
USBD_sdr_private_functions

Detailed Description

usb device standard_request


AT32F403 Firmwary Library: USBD_sdr_exported_functions

Functions
USBD_sdr_exported_functions
AT32F403_middlewares_usbd_drivers » USBD_drivers_standard_request

Functions

void | usbd_setup_request_parse (usb_setup_type *setup, uint8_t *buf)
usb parse standard setup request More...
usb_sts_type | usbd_device_request (usbd_core_type *udev)
standard usb device requests More...
usb_sts_type | usbd_interface_request (usbd_core_type *udev)
standard usb interface requests More...
usb_sts_type | usbd_endpoint_request (usbd_core_type *udev)
standard usb endpoint requests More...

Detailed Description

Function Documentation

◆ usbd_device_request()

usb_sts_type usbd_device_request ( usbd_core_type * udev )

standard usb device requests

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 348 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().

◆ usbd_endpoint_request()

usb_sts_type usbd_endpoint_request ( usbd_core_type * udev )

standard usb endpoint requests

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 419 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().

◆ usbd_interface_request()

usb_sts_type usbd_interface_request ( usbd_core_type * udev )

standard usb interface requests

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 392 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().

◆ usbd_setup_request_parse()

void usbd_setup_request_parse | ( | usb_setup_type * | setup,
 |  | uint8_t * | buf
 | ) |  |

usb parse standard setup request

Parameters
setup | setup structure
buf | setup buffer
Return values
none

Definition at line 53 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().


AT32F403 Firmwary Library: USBD_sdr_private_functions

Functions
USBD_sdr_private_functions
AT32F403_middlewares_usbd_drivers » USBD_drivers_standard_request

Functions

static usb_sts_type | usbd_get_descriptor (usbd_core_type *udev)
get usb standard device description request More...
static usb_sts_type | usbd_set_address (usbd_core_type *udev)
this request sets the device address More...
static usb_sts_type | usbd_get_status (usbd_core_type *udev)
get usb status request More...
static usb_sts_type | usbd_clear_feature (usbd_core_type *udev)
clear usb feature request More...
static usb_sts_type | usbd_set_feature (usbd_core_type *udev)
set usb feature request More...
static usb_sts_type | usbd_get_configuration (usbd_core_type *udev)
get usb configuration request More...
static usb_sts_type | usbd_set_configuration (usbd_core_type *udev)
sets the usb device configuration request More...
void | usbd_setup_request_parse (usb_setup_type *setup, uint8_t *buf)
usb parse standard setup request More...
usb_sts_type | usbd_device_request (usbd_core_type *udev)
standard usb device requests More...
usb_sts_type | usbd_interface_request (usbd_core_type *udev)
standard usb interface requests More...
usb_sts_type | usbd_endpoint_request (usbd_core_type *udev)
standard usb endpoint requests More...

Detailed Description

Function Documentation

◆ usbd_clear_feature()

static usb_sts_type usbd_clear_feature ( usbd_core_type * udev )
static

clear usb feature request

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 208 of file usbd_sdr.c.

Referenced by usbd_device_request().

◆ usbd_device_request()

usb_sts_type usbd_device_request ( usbd_core_type * udev )

standard usb device requests

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 348 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().

◆ usbd_endpoint_request()

usb_sts_type usbd_endpoint_request ( usbd_core_type * udev )

standard usb endpoint requests

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 419 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().

◆ usbd_get_configuration()

static usb_sts_type usbd_get_configuration ( usbd_core_type * udev )
static

get usb configuration request

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 254 of file usbd_sdr.c.

Referenced by usbd_device_request().

◆ usbd_get_descriptor()

static usb_sts_type usbd_get_descriptor ( usbd_core_type * udev )
static

get usb standard device description request

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 67 of file usbd_sdr.c.

Referenced by usbd_device_request().

◆ usbd_get_status()

static usb_sts_type usbd_get_status ( usbd_core_type * udev )
static

get usb status request

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 183 of file usbd_sdr.c.

Referenced by usbd_device_request().

◆ usbd_interface_request()

usb_sts_type usbd_interface_request ( usbd_core_type * udev )

standard usb interface requests

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 392 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().

◆ usbd_set_address()

static usb_sts_type usbd_set_address ( usbd_core_type * udev )
static

this request sets the device address

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 137 of file usbd_sdr.c.

Referenced by usbd_device_request().

◆ usbd_set_configuration()

static usb_sts_type usbd_set_configuration ( usbd_core_type * udev )
static

sets the usb device configuration request

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 286 of file usbd_sdr.c.

Referenced by usbd_device_request().

◆ usbd_set_feature()

static usb_sts_type usbd_set_feature ( usbd_core_type * udev )
static

set usb feature request

Parameters
udev to the structure of usbd_core_type
Return values
status of usb_sts_type

Definition at line 236 of file usbd_sdr.c.

Referenced by usbd_device_request().

◆ usbd_setup_request_parse()

void usbd_setup_request_parse | ( | usb_setup_type * | setup,
 |  | uint8_t * | buf
 | ) |  |

usb parse standard setup request

Parameters
setup | setup structure
buf | setup buffer
Return values
none

Definition at line 53 of file usbd_sdr.c.

Referenced by usbd_core_setup_handler().


AT32F403 Firmwary Library: USB_standard

Modules
USB_standard
AT32F403_middlewares_usbd_drivers

Modules

USB_standard_define
USB_standard_exported_types

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: USB_standard_define

Data Structures | Macros | Enumerations
USB_standard_define
AT32F403_middlewares_usbd_drivers » USB_standard

Data Structures

struct linecoding_type
usb cdc class set line coding struct More...

Macros

#define | USB_REQ_RECIPIENT_DEVICE 0x00
usb request recipient More...
#define | USB_REQ_RECIPIENT_INTERFACE 0x01
#define | USB_REQ_RECIPIENT_ENDPOINT 0x02
#define | USB_REQ_RECIPIENT_OTHER 0x03
#define | USB_REQ_RECIPIENT_MASK 0x1F
#define | USB_REQ_TYPE_STANDARD 0x00
usb request type More...
#define | USB_REQ_TYPE_CLASS 0x20
#define | USB_REQ_TYPE_VENDOR 0x40
#define | USB_REQ_TYPE_RESERVED 0x60
#define | USB_REQ_DIR_HTD 0x00
usb request data transfer direction More...
#define | USB_REQ_DIR_DTH 0x80
#define | USB_STD_REQ_GET_STATUS 0
usb standard device requests codes More...
#define | USB_STD_REQ_CLEAR_FEATURE 1
#define | USB_STD_REQ_SET_FEATURE 3
#define | USB_STD_REQ_SET_ADDRESS 5
#define | USB_STD_REQ_GET_DESCRIPTOR 6
#define | USB_STD_REQ_SET_DESCRIPTOR 7
#define | USB_STD_REQ_GET_CONFIGURATION 8
#define | USB_STD_REQ_SET_CONFIGURATION 9
#define | USB_STD_REQ_GET_INTERFACE 10
#define | USB_STD_REQ_SET_INTERFACE 11
#define | USB_STD_REQ_SYNCH_FRAME 12
#define | USB_DESCIPTOR_TYPE_DEVICE 1
usb standard device type More...
#define | USB_DESCIPTOR_TYPE_CONFIGURATION 2
#define | USB_DESCIPTOR_TYPE_STRING 3
#define | USB_DESCIPTOR_TYPE_INTERFACE 4
#define | USB_DESCIPTOR_TYPE_ENDPOINT 5
#define | USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER 6
#define | USB_DESCIPTOR_TYPE_OTHER_SPEED 7
#define | USB_DESCIPTOR_TYPE_INTERFACE_POWER 8
#define | USB_LANGID_STRING 0
usb standard string type More...
#define | USB_MFC_STRING 1
#define | USB_PRODUCT_STRING 2
#define | USB_SERIAL_STRING 3
#define | USB_CONFIG_STRING 4
#define | USB_INTERFACE_STRING 5
#define | USB_CONF_REMOTE_WAKEUP 2
usb configuration attributes More...
#define | USB_CONF_SELF_POWERED 1
#define | USB_FEATURE_EPT_HALT 0
usb standard feature selectors More...
#define | USB_FEATURE_REMOTE_WAKEUP 1
#define | USB_FEATURE_TEST_MODE 2
#define | USB_EPT0_IDLE 0
endpoint 0 state More...
#define | USB_EPT0_SETUP 1
#define | USB_EPT0_DATA_IN 2
#define | USB_EPT0_DATA_OUT 3
#define | USB_EPT0_STATUS_IN 4
#define | USB_EPT0_STATUS_OUT 5
#define | USB_EPT0_STALL 6
#define | USB_DEVICE_QUALIFIER_DESC_LEN 0x0A
usb descriptor length More...
#define | USB_DEVICE_DESC_LEN 0x12
#define | USB_DEVICE_CFG_DESC_LEN 0x09
#define | USB_DEVICE_IF_DESC_LEN 0x09
#define | USB_DEVICE_EPT_LEN 0x07
#define | USB_DEVICE_OTG_DESC_LEN 0x03
#define | USB_DEVICE_LANGID_STR_DESC_LEN 0x04
#define | USB_DEVICE_OTHER_SPEED_DESC_SIZ_LEN 0x09
#define | USB_CLASS_CODE_AUDIO 0x01
usb class code More...
#define | USB_CLASS_CODE_CDC 0x02
#define | USB_CLASS_CODE_HID 0x03
#define | USB_CLASS_CODE_PRINTER 0x07
#define | USB_CLASS_CODE_MSC 0x08
#define | USB_CLASS_CODE_HUB 0x09
#define | USB_CLASS_CODE_CDCDATA 0x0A
#define | USB_CLASS_CODE_CCID 0x0B
#define | USB_CLASS_CODE_VIDEO 0x0E
#define | USB_CLASS_CODE_VENDOR 0xFF
#define | USB_EPT_DESC_CONTROL 0x00
usb endpoint type More...
#define | USB_EPT_DESC_ISO 0x01
#define | USB_EPT_DESC_BULK 0x02
#define | USB_EPT_DESC_INTERRUPT 0x03
#define | USB_EPT_DESC_NSYNC 0x00
#define | USB_ETP_DESC_ASYNC 0x04
#define | USB_ETP_DESC_ADAPTIVE 0x08
#define | USB_ETP_DESC_SYNC 0x0C
#define | USB_EPT_DESC_DATA_EPT 0x00
#define | USB_EPT_DESC_FD_EPT 0x10
#define | USB_EPT_DESC_FDDATA_EPT 0x20
#define | USBD_CDC_CS_INTERFACE 0x24
usb cdc class descriptor define More...
#define | USBD_CDC_CS_ENDPOINT 0x25
#define | USBD_CDC_SUBTYPE_HEADER 0x00
usb cdc class sub-type define More...
#define | USBD_CDC_SUBTYPE_CMF 0x01
#define | USBD_CDC_SUBTYPE_ACM 0x02
#define | USBD_CDC_SUBTYPE_UFD 0x06
#define | SET_LINE_CODING 0x20
usb cdc class request code define More...
#define | GET_LINE_CODING 0x21
#define | HID_CLASS_DESC_HID 0x21
usb hid class descriptor define More...
#define | HID_CLASS_DESC_REPORT 0x22
#define | HID_CLASS_DESC_PHYSICAL 0x23
#define | HID_REQ_SET_PROTOCOL 0x0B
usb hid class request code define More...
#define | HID_REQ_GET_PROTOCOL 0x03
#define | HID_REQ_SET_IDLE 0x0A
#define | HID_REQ_GET_IDLE 0x02
#define | HID_REQ_SET_REPORT 0x09
#define | HID_REQ_GET_REPORT 0x01
#define | HID_DESCRIPTOR_TYPE 0x21
#define | HID_REPORT_DESC 0x22
#define | USB_MAX_EP0_SIZE 64
endpoint 0 max size More...
#define | SWAPBYTE(addr)
usb swap address More...
#define | MIN(a, b) (uint16_t)(((a) < (b)) ? (a) : (b))
min and max define More...
#define | MAX(a, b) (uint16_t)(((a) > (b)) ? (a) : (b))
#define | LBYTE(x) ((uint8_t)(x & 0x00FF))
low byte and high byte define More...
#define | HBYTE(x) ((uint8_t)((x & 0xFF00) >>8))

Enumerations

enum usbd_conn_state { USB_CONN_STATE_DEFAULT =1 , USB_CONN_STATE_ADDRESSED , USB_CONN_STATE_CONFIGURED , USB_CONN_STATE_SUSPENDED }
usb device connect state More...

Detailed Description

Macro Definition Documentation

◆ GET_LINE_CODING

#define GET_LINE_CODING 0x21

Definition at line 205 of file usb_std.h.

◆ HBYTE

#define HBYTE ( x ) ((uint8_t)((x & 0xFF00) >>8))

high byte define

Definition at line 264 of file usb_std.h.

◆ HID_CLASS_DESC_HID

#define HID_CLASS_DESC_HID 0x21

usb hid class descriptor define

Definition at line 221 of file usb_std.h.

◆ HID_CLASS_DESC_PHYSICAL

#define HID_CLASS_DESC_PHYSICAL 0x23

Definition at line 223 of file usb_std.h.

◆ HID_CLASS_DESC_REPORT

#define HID_CLASS_DESC_REPORT 0x22

Definition at line 222 of file usb_std.h.

◆ HID_DESCRIPTOR_TYPE

#define HID_DESCRIPTOR_TYPE 0x21

Definition at line 234 of file usb_std.h.

◆ HID_REPORT_DESC

#define HID_REPORT_DESC 0x22

Definition at line 235 of file usb_std.h.

◆ HID_REQ_GET_IDLE

#define HID_REQ_GET_IDLE 0x02

Definition at line 231 of file usb_std.h.

◆ HID_REQ_GET_PROTOCOL

#define HID_REQ_GET_PROTOCOL 0x03

Definition at line 229 of file usb_std.h.

◆ HID_REQ_GET_REPORT

#define HID_REQ_GET_REPORT 0x01

Definition at line 233 of file usb_std.h.

◆ HID_REQ_SET_IDLE

#define HID_REQ_SET_IDLE 0x0A

Definition at line 230 of file usb_std.h.

◆ HID_REQ_SET_PROTOCOL

#define HID_REQ_SET_PROTOCOL 0x0B

usb hid class request code define

Definition at line 228 of file usb_std.h.

◆ HID_REQ_SET_REPORT

#define HID_REQ_SET_REPORT 0x09

Definition at line 232 of file usb_std.h.

◆ LBYTE

#define LBYTE ( x ) ((uint8_t)(x & 0x00FF))

low byte and high byte define

low byte define

Definition at line 263 of file usb_std.h.

◆ MAX

#define MAX | ( | a,
 |  | b
 | ) | (uint16_t)(((a) > (b)) ? (a) : (b))

max define

Definition at line 257 of file usb_std.h.

◆ MIN

#define MIN | ( | a,
 |  | b
 | ) | (uint16_t)(((a) < (b)) ? (a) : (b))

min and max define

min define

Definition at line 253 of file usb_std.h.

◆ SET_LINE_CODING

#define SET_LINE_CODING 0x20

usb cdc class request code define

Definition at line 204 of file usb_std.h.

◆ SWAPBYTE

#define SWAPBYTE ( addr )
Value:
(uint16_t)(((uint16_t)(*((uint8_t *)(addr)))) + \
(((uint16_t)(*(((uint8_t *)(addr)) + 1))) << 8))

usb swap address

swap address

Definition at line 247 of file usb_std.h.

◆ USB_CLASS_CODE_AUDIO

#define USB_CLASS_CODE_AUDIO 0x01

usb class code

usb class code audio

Definition at line 159 of file usb_std.h.

◆ USB_CLASS_CODE_CCID

#define USB_CLASS_CODE_CCID 0x0B

usb class code ccid

Definition at line 166 of file usb_std.h.

◆ USB_CLASS_CODE_CDC

#define USB_CLASS_CODE_CDC 0x02

usb class code cdc

Definition at line 160 of file usb_std.h.

◆ USB_CLASS_CODE_CDCDATA

#define USB_CLASS_CODE_CDCDATA 0x0A

usb class code cdc data

Definition at line 165 of file usb_std.h.

◆ USB_CLASS_CODE_HID

#define USB_CLASS_CODE_HID 0x03

usb class code hid

Definition at line 161 of file usb_std.h.

◆ USB_CLASS_CODE_HUB

#define USB_CLASS_CODE_HUB 0x09

usb class code hub

Definition at line 164 of file usb_std.h.

◆ USB_CLASS_CODE_MSC

#define USB_CLASS_CODE_MSC 0x08

usb class code msc

Definition at line 163 of file usb_std.h.

◆ USB_CLASS_CODE_PRINTER

#define USB_CLASS_CODE_PRINTER 0x07

usb class code printer

Definition at line 162 of file usb_std.h.

◆ USB_CLASS_CODE_VENDOR

#define USB_CLASS_CODE_VENDOR 0xFF

usb class code vendor

Definition at line 168 of file usb_std.h.

◆ USB_CLASS_CODE_VIDEO

#define USB_CLASS_CODE_VIDEO 0x0E

usb class code video

Definition at line 167 of file usb_std.h.

◆ USB_CONF_REMOTE_WAKEUP

#define USB_CONF_REMOTE_WAKEUP 2

usb configuration attributes

usb configuration attributes remote wakeup

Definition at line 112 of file usb_std.h.

◆ USB_CONF_SELF_POWERED

#define USB_CONF_SELF_POWERED 1

usb configuration attributes self powered

Definition at line 113 of file usb_std.h.

◆ USB_CONFIG_STRING

#define USB_CONFIG_STRING 4

usb standard string type config

Definition at line 106 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_CONFIGURATION

#define USB_DESCIPTOR_TYPE_CONFIGURATION 2

usb standard device type configuration

Definition at line 91 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_DEVICE

#define USB_DESCIPTOR_TYPE_DEVICE 1

usb standard device type

usb standard device type device

Definition at line 90 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER

#define USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER 6

usb standard device type qualifier

Definition at line 95 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_ENDPOINT

#define USB_DESCIPTOR_TYPE_ENDPOINT 5

usb standard device type endpoint

Definition at line 94 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_INTERFACE

#define USB_DESCIPTOR_TYPE_INTERFACE 4

usb standard device type interface

Definition at line 93 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_INTERFACE_POWER

#define USB_DESCIPTOR_TYPE_INTERFACE_POWER 8

usb standard device type interface power

Definition at line 97 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_OTHER_SPEED

#define USB_DESCIPTOR_TYPE_OTHER_SPEED 7

usb standard device type other speed

Definition at line 96 of file usb_std.h.

◆ USB_DESCIPTOR_TYPE_STRING

#define USB_DESCIPTOR_TYPE_STRING 3

usb standard device type string

Definition at line 92 of file usb_std.h.

◆ USB_DEVICE_CFG_DESC_LEN

#define USB_DEVICE_CFG_DESC_LEN 0x09

usb configuration descriptor length

Definition at line 149 of file usb_std.h.

◆ USB_DEVICE_DESC_LEN

#define USB_DEVICE_DESC_LEN 0x12

usb device descriptor length

Definition at line 148 of file usb_std.h.

◆ USB_DEVICE_EPT_LEN

#define USB_DEVICE_EPT_LEN 0x07

usb endpoint descriptor length

Definition at line 151 of file usb_std.h.

◆ USB_DEVICE_IF_DESC_LEN

#define USB_DEVICE_IF_DESC_LEN 0x09

usb interface descriptor length

Definition at line 150 of file usb_std.h.

◆ USB_DEVICE_LANGID_STR_DESC_LEN

#define USB_DEVICE_LANGID_STR_DESC_LEN 0x04

usb lang id string descriptor length

Definition at line 153 of file usb_std.h.

◆ USB_DEVICE_OTG_DESC_LEN

#define USB_DEVICE_OTG_DESC_LEN 0x03

usb otg descriptor length

Definition at line 152 of file usb_std.h.

◆ USB_DEVICE_OTHER_SPEED_DESC_SIZ_LEN

#define USB_DEVICE_OTHER_SPEED_DESC_SIZ_LEN 0x09

usb other speed descriptor length

Definition at line 154 of file usb_std.h.

◆ USB_DEVICE_QUALIFIER_DESC_LEN

#define USB_DEVICE_QUALIFIER_DESC_LEN 0x0A

usb descriptor length

usb qualifier descriptor length

Definition at line 147 of file usb_std.h.

◆ USB_EPT0_DATA_IN

#define USB_EPT0_DATA_IN 2

usb endpoint state data in

Definition at line 138 of file usb_std.h.

◆ USB_EPT0_DATA_OUT

#define USB_EPT0_DATA_OUT 3

usb endpoint state data out

Definition at line 139 of file usb_std.h.

◆ USB_EPT0_IDLE

#define USB_EPT0_IDLE 0

endpoint 0 state

usb endpoint state idle

Definition at line 136 of file usb_std.h.

◆ USB_EPT0_SETUP

#define USB_EPT0_SETUP 1

usb endpoint state setup

Definition at line 137 of file usb_std.h.

◆ USB_EPT0_STALL

#define USB_EPT0_STALL 6

usb endpoint state stall

Definition at line 142 of file usb_std.h.

◆ USB_EPT0_STATUS_IN

#define USB_EPT0_STATUS_IN 4

usb endpoint state status in

Definition at line 140 of file usb_std.h.

◆ USB_EPT0_STATUS_OUT

#define USB_EPT0_STATUS_OUT 5

usb endpoint state status out

Definition at line 141 of file usb_std.h.

◆ USB_EPT_DESC_BULK

#define USB_EPT_DESC_BULK 0x02

usb endpoint description type bulk

Definition at line 175 of file usb_std.h.

◆ USB_EPT_DESC_CONTROL

#define USB_EPT_DESC_CONTROL 0x00

usb endpoint type

usb endpoint description type control

Definition at line 173 of file usb_std.h.

◆ USB_EPT_DESC_DATA_EPT

#define USB_EPT_DESC_DATA_EPT 0x00

usb endpoint description data

Definition at line 183 of file usb_std.h.

◆ USB_EPT_DESC_FD_EPT

#define USB_EPT_DESC_FD_EPT 0x10

usb endpoint description fd

Definition at line 184 of file usb_std.h.

◆ USB_EPT_DESC_FDDATA_EPT

#define USB_EPT_DESC_FDDATA_EPT 0x20

usb endpoint description fddata

Definition at line 185 of file usb_std.h.

◆ USB_EPT_DESC_INTERRUPT

#define USB_EPT_DESC_INTERRUPT 0x03

usb endpoint description type interrupt

Definition at line 176 of file usb_std.h.

◆ USB_EPT_DESC_ISO

#define USB_EPT_DESC_ISO 0x01

usb endpoint description type iso

Definition at line 174 of file usb_std.h.

◆ USB_EPT_DESC_NSYNC

#define USB_EPT_DESC_NSYNC 0x00

usb endpoint description nsync

Definition at line 178 of file usb_std.h.

◆ USB_ETP_DESC_ADAPTIVE

#define USB_ETP_DESC_ADAPTIVE 0x08

usb endpoint description adaptive

Definition at line 180 of file usb_std.h.

◆ USB_ETP_DESC_ASYNC

#define USB_ETP_DESC_ASYNC 0x04

usb endpoint description async

Definition at line 179 of file usb_std.h.

◆ USB_ETP_DESC_SYNC

#define USB_ETP_DESC_SYNC 0x0C

usb endpoint description sync

Definition at line 181 of file usb_std.h.

◆ USB_FEATURE_EPT_HALT

#define USB_FEATURE_EPT_HALT 0

usb standard feature selectors

usb standard feature selectors endpoint halt

Definition at line 118 of file usb_std.h.

◆ USB_FEATURE_REMOTE_WAKEUP

#define USB_FEATURE_REMOTE_WAKEUP 1

usb standard feature selectors remote wakeup

Definition at line 119 of file usb_std.h.

◆ USB_FEATURE_TEST_MODE

#define USB_FEATURE_TEST_MODE 2

usb standard feature selectors test mode

Definition at line 120 of file usb_std.h.

◆ USB_INTERFACE_STRING

#define USB_INTERFACE_STRING 5

usb standard string type interface

Definition at line 107 of file usb_std.h.

◆ USB_LANGID_STRING

#define USB_LANGID_STRING 0

usb standard string type

usb standard string type lang id

Definition at line 102 of file usb_std.h.

◆ USB_MAX_EP0_SIZE

#define USB_MAX_EP0_SIZE 64

endpoint 0 max size

usb endpoint 0 max size

Definition at line 240 of file usb_std.h.

◆ USB_MFC_STRING

#define USB_MFC_STRING 1

usb standard string type mfc

Definition at line 103 of file usb_std.h.

◆ USB_PRODUCT_STRING

#define USB_PRODUCT_STRING 2

usb standard string type product

Definition at line 104 of file usb_std.h.

◆ USB_REQ_DIR_DTH

#define USB_REQ_DIR_DTH 0x80

usb request data transfer direction device to host

Definition at line 70 of file usb_std.h.

◆ USB_REQ_DIR_HTD

#define USB_REQ_DIR_HTD 0x00

usb request data transfer direction

usb request data transfer direction host to device

Definition at line 69 of file usb_std.h.

◆ USB_REQ_RECIPIENT_DEVICE

#define USB_REQ_RECIPIENT_DEVICE 0x00

usb request recipient

usb request recipient device

Definition at line 52 of file usb_std.h.

◆ USB_REQ_RECIPIENT_ENDPOINT

#define USB_REQ_RECIPIENT_ENDPOINT 0x02

usb request recipient endpoint

Definition at line 54 of file usb_std.h.

◆ USB_REQ_RECIPIENT_INTERFACE

#define USB_REQ_RECIPIENT_INTERFACE 0x01

usb request recipient interface

Definition at line 53 of file usb_std.h.

◆ USB_REQ_RECIPIENT_MASK

#define USB_REQ_RECIPIENT_MASK 0x1F

usb request recipient mask

Definition at line 56 of file usb_std.h.

◆ USB_REQ_RECIPIENT_OTHER

#define USB_REQ_RECIPIENT_OTHER 0x03

usb request recipient other

Definition at line 55 of file usb_std.h.

◆ USB_REQ_TYPE_CLASS

#define USB_REQ_TYPE_CLASS 0x20

usb request type class

Definition at line 62 of file usb_std.h.

◆ USB_REQ_TYPE_RESERVED

#define USB_REQ_TYPE_RESERVED 0x60

usb request type reserved

Definition at line 64 of file usb_std.h.

◆ USB_REQ_TYPE_STANDARD

#define USB_REQ_TYPE_STANDARD 0x00

usb request type

usb request type standard

Definition at line 61 of file usb_std.h.

◆ USB_REQ_TYPE_VENDOR

#define USB_REQ_TYPE_VENDOR 0x40

usb request type vendor

Definition at line 63 of file usb_std.h.

◆ USB_SERIAL_STRING

#define USB_SERIAL_STRING 3

usb standard string type serial

Definition at line 105 of file usb_std.h.

◆ USB_STD_REQ_CLEAR_FEATURE

#define USB_STD_REQ_CLEAR_FEATURE 1

usb request code clear feature

Definition at line 76 of file usb_std.h.

◆ USB_STD_REQ_GET_CONFIGURATION

#define USB_STD_REQ_GET_CONFIGURATION 8

usb request code get configuration

Definition at line 81 of file usb_std.h.

◆ USB_STD_REQ_GET_DESCRIPTOR

#define USB_STD_REQ_GET_DESCRIPTOR 6

usb request code get descriptor

Definition at line 79 of file usb_std.h.

◆ USB_STD_REQ_GET_INTERFACE

#define USB_STD_REQ_GET_INTERFACE 10

usb request code get interface

Definition at line 83 of file usb_std.h.

◆ USB_STD_REQ_GET_STATUS

#define USB_STD_REQ_GET_STATUS 0

usb standard device requests codes

usb request code status

Definition at line 75 of file usb_std.h.

◆ USB_STD_REQ_SET_ADDRESS

#define USB_STD_REQ_SET_ADDRESS 5

usb request code address

Definition at line 78 of file usb_std.h.

◆ USB_STD_REQ_SET_CONFIGURATION

#define USB_STD_REQ_SET_CONFIGURATION 9

usb request code set configuration

Definition at line 82 of file usb_std.h.

◆ USB_STD_REQ_SET_DESCRIPTOR

#define USB_STD_REQ_SET_DESCRIPTOR 7

usb request code set descriptor

Definition at line 80 of file usb_std.h.

◆ USB_STD_REQ_SET_FEATURE

#define USB_STD_REQ_SET_FEATURE 3

usb request code feature

Definition at line 77 of file usb_std.h.

◆ USB_STD_REQ_SET_INTERFACE

#define USB_STD_REQ_SET_INTERFACE 11

usb request code set interface

Definition at line 84 of file usb_std.h.

◆ USB_STD_REQ_SYNCH_FRAME

#define USB_STD_REQ_SYNCH_FRAME 12

usb request code synch frame

Definition at line 85 of file usb_std.h.

◆ USBD_CDC_CS_ENDPOINT

#define USBD_CDC_CS_ENDPOINT 0x25

Definition at line 191 of file usb_std.h.

◆ USBD_CDC_CS_INTERFACE

#define USBD_CDC_CS_INTERFACE 0x24

usb cdc class descriptor define

Definition at line 190 of file usb_std.h.

◆ USBD_CDC_SUBTYPE_ACM

#define USBD_CDC_SUBTYPE_ACM 0x02

Definition at line 198 of file usb_std.h.

◆ USBD_CDC_SUBTYPE_CMF

#define USBD_CDC_SUBTYPE_CMF 0x01

Definition at line 197 of file usb_std.h.

◆ USBD_CDC_SUBTYPE_HEADER

#define USBD_CDC_SUBTYPE_HEADER 0x00

usb cdc class sub-type define

Definition at line 196 of file usb_std.h.

◆ USBD_CDC_SUBTYPE_UFD

#define USBD_CDC_SUBTYPE_UFD 0x06

Definition at line 199 of file usb_std.h.

Enumeration Type Documentation

◆ usbd_conn_state

enum usbd_conn_state

usb device connect state

Enumerator
USB_CONN_STATE_DEFAULT | usb device connect state default
USB_CONN_STATE_ADDRESSED | usb device connect state address
USB_CONN_STATE_CONFIGURED | usb device connect state configured
USB_CONN_STATE_SUSPENDED | usb device connect state suspend

Definition at line 125 of file usb_std.h.


AT32F403 Firmwary Library: linecoding_type Struct Reference

Data Fields
linecoding_type Struct Reference
AT32F403_middlewares_usbd_drivers » USB_standard » USB_standard_define

usb cdc class set line coding struct More...

#include <usb_std.h>

Data Fields

uint32_t | bitrate
uint8_t | format
uint8_t | parity
uint8_t | data

Detailed Description

usb cdc class set line coding struct

Definition at line 210 of file usb_std.h.

Field Documentation

◆ bitrate

uint32_t linecoding_type::bitrate

Definition at line 212 of file usb_std.h.

Referenced by cdc_struct_init(), class_init_handler(), usb_usart_config(), and usb_vcp_cmd_process().

◆ data

uint8_t linecoding_type::data

Definition at line 215 of file usb_std.h.

Referenced by cdc_struct_init(), class_init_handler(), usb_usart_config(), and usb_vcp_cmd_process().

◆ format

uint8_t linecoding_type::format

Definition at line 213 of file usb_std.h.

Referenced by cdc_struct_init(), class_init_handler(), usb_usart_config(), and usb_vcp_cmd_process().

◆ parity

uint8_t linecoding_type::parity

Definition at line 214 of file usb_std.h.

Referenced by cdc_struct_init(), class_init_handler(), usb_usart_config(), and usb_vcp_cmd_process().

The documentation for this struct was generated from the following file:
  • usb_std.h


AT32F403 Firmwary Library: USB_standard_exported_types

Data Structures | Enumerations
USB_standard_exported_types
AT32F403_middlewares_usbd_drivers » USB_standard

Data Structures

struct | usb_setup_type
format of usb setup data More...
struct | usb_device_desc_type
format of standard device descriptor More...
struct | usb_configuration_desc_type
format of standard configuration descriptor More...
struct | usb_interface_desc_type
format of standard interface descriptor More...
struct | usb_endpoint_desc_type
format of standard endpoint descriptor More...
struct | usb_header_desc_type
format of header More...

Enumerations

enum usb_sts_type {
USB_OK , USB_FAIL , USB_WAIT , USB_NOT_SUPPORT ,
USB_ERROR
}
usb return status More...

Detailed Description

Enumeration Type Documentation

◆ usb_sts_type

enum usb_sts_type

usb return status

Enumerator
USB_OK | usb status ok
USB_FAIL | usb status fail
USB_WAIT | usb status wait
USB_NOT_SUPPORT | usb status not support
USB_ERROR | usb status error

Definition at line 277 of file usb_std.h.


AT32F403 Firmwary Library: usb_setup_type Struct Reference

Data Fields
usb_setup_type Struct Reference
AT32F403_middlewares_usbd_drivers » USB_standard » USB_standard_exported_types

format of usb setup data More...

#include <usb_std.h>

Data Fields

uint8_t | bmRequestType
uint8_t | bRequest
uint16_t | wValue
uint16_t | wIndex
uint16_t | wLength

Detailed Description

format of usb setup data

Definition at line 289 of file usb_std.h.

Field Documentation

◆ bmRequestType

uint8_t usb_setup_type::bmRequestType

characteristics of request

Definition at line 291 of file usb_std.h.

Referenced by audio_req_set_cur(), cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), msc_class_setup_handler(), usbd_core_setup_handler(), usbd_device_request(), usbd_endpoint_request(), and usbd_setup_request_parse().

◆ bRequest

uint8_t usb_setup_type::bRequest

specific request

Definition at line 292 of file usb_std.h.

Referenced by cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), msc_class_setup_handler(), usbd_device_request(), usbd_endpoint_request(), and usbd_setup_request_parse().

◆ wIndex

uint16_t usb_setup_type::wIndex

word-sized field that varies according to request typically used to pass an index or offset

Definition at line 294 of file usb_std.h.

Referenced by audio_get_interface(), audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), audio_req_set_cur(), audio_set_interface(), class_setup_handler(), msc_class_setup_handler(), usbd_endpoint_request(), usbd_set_address(), usbd_set_configuration(), and usbd_setup_request_parse().

◆ wLength

uint16_t usb_setup_type::wLength

number of bytes to transfer if there is a data stage

Definition at line 296 of file usb_std.h.

Referenced by audio_req_get_cur(), audio_req_get_max(), audio_req_get_min(), audio_req_get_res(), audio_req_set_cur(), cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), usbd_core_setup_handler(), usbd_get_configuration(), usbd_get_descriptor(), usbd_interface_request(), usbd_set_address(), usbd_set_configuration(), and usbd_setup_request_parse().

◆ wValue

uint16_t usb_setup_type::wValue

word-sized field that varies according to request

Definition at line 293 of file usb_std.h.

Referenced by audio_req_get_cur(), audio_req_set_cur(), audio_set_interface(), cdc_class_setup_handler(), class_audio_setup_handler(), class_hid_setup_handler(), class_setup_handler(), keyboard_class_setup_handler(), msc_class_setup_handler(), usbd_clear_feature(), usbd_endpoint_request(), usbd_get_descriptor(), usbd_set_address(), usbd_set_configuration(), usbd_set_feature(), and usbd_setup_request_parse().

The documentation for this struct was generated from the following file:
  • usb_std.h


AT32F403 Firmwary Library: usb_device_desc_type Struct Reference

Data Fields
usb_device_desc_type Struct Reference
AT32F403_middlewares_usbd_drivers » USB_standard » USB_standard_exported_types

format of standard device descriptor More...

#include <usb_std.h>

Data Fields

uint8_t | bLength
uint8_t | bDescriptorType
uint16_t | bcdUSB
uint8_t | bDeviceClass
uint8_t | bDeviceSubClass
uint8_t | bDeviceProtocol
uint8_t | bMaxPacketSize0
uint16_t | idVendor
uint16_t | idProduct
uint16_t | bcdDevice
uint8_t | iManufacturer
uint8_t | iProduct
uint8_t | iSerialNumber
uint8_t | bNumConfigurations

Detailed Description

format of standard device descriptor

Definition at line 302 of file usb_std.h.

Field Documentation

◆ bcdDevice

uint16_t usb_device_desc_type::bcdDevice

device release number in binary-coded decimal

Definition at line 313 of file usb_std.h.

◆ bcdUSB

uint16_t usb_device_desc_type::bcdUSB

usb specification release number

Definition at line 306 of file usb_std.h.

◆ bDescriptorType

uint8_t usb_device_desc_type::bDescriptorType

device descriptor type

Definition at line 305 of file usb_std.h.

◆ bDeviceClass

uint8_t usb_device_desc_type::bDeviceClass

class code (assigned by the usb-if)

Definition at line 307 of file usb_std.h.

◆ bDeviceProtocol

uint8_t usb_device_desc_type::bDeviceProtocol

protocol code ((assigned by the usb-if))

Definition at line 309 of file usb_std.h.

◆ bDeviceSubClass

uint8_t usb_device_desc_type::bDeviceSubClass

subclass code (assigned by the usb-if)

Definition at line 308 of file usb_std.h.

◆ bLength

uint8_t usb_device_desc_type::bLength

size of this descriptor in bytes

Definition at line 304 of file usb_std.h.

◆ bMaxPacketSize0

uint8_t usb_device_desc_type::bMaxPacketSize0

maximum packet size for endpoint zero

Definition at line 310 of file usb_std.h.

◆ bNumConfigurations

uint8_t usb_device_desc_type::bNumConfigurations

number of possible configurations

Definition at line 317 of file usb_std.h.

◆ idProduct

uint16_t usb_device_desc_type::idProduct

product id ((assigned by the usb-if))

Definition at line 312 of file usb_std.h.

◆ idVendor

uint16_t usb_device_desc_type::idVendor

verndor id ((assigned by the usb-if))

Definition at line 311 of file usb_std.h.

◆ iManufacturer

uint8_t usb_device_desc_type::iManufacturer

index of string descriptor describing manufacturer

Definition at line 314 of file usb_std.h.

◆ iProduct

uint8_t usb_device_desc_type::iProduct

index of string descriptor describing product

Definition at line 315 of file usb_std.h.

◆ iSerialNumber

uint8_t usb_device_desc_type::iSerialNumber

index of string descriptor describing serial number

Definition at line 316 of file usb_std.h.

The documentation for this struct was generated from the following file:
  • usb_std.h


AT32F403 Firmwary Library: usb_configuration_desc_type Struct Reference

Data Fields
usb_configuration_desc_type Struct Reference
AT32F403_middlewares_usbd_drivers » USB_standard » USB_standard_exported_types

format of standard configuration descriptor More...

#include <usb_std.h>

Data Fields

uint8_t | bLength
uint8_t | bDescriptorType
uint16_t | wTotalLength
uint8_t | bNumInterfaces
uint8_t | bConfigurationValue
uint8_t | iConfiguration
uint8_t | bmAttributes
uint8_t | bMaxPower

Detailed Description

format of standard configuration descriptor

Definition at line 323 of file usb_std.h.

Field Documentation

◆ bConfigurationValue

uint8_t usb_configuration_desc_type::bConfigurationValue

value to use as an argument to the SetConfiguration() request

Definition at line 329 of file usb_std.h.

◆ bDescriptorType

uint8_t usb_configuration_desc_type::bDescriptorType

configuration descriptor type

Definition at line 326 of file usb_std.h.

◆ bLength

uint8_t usb_configuration_desc_type::bLength

size of this descriptor in bytes

Definition at line 325 of file usb_std.h.

◆ bmAttributes

uint8_t usb_configuration_desc_type::bmAttributes

configuration characteristics D7 reserved D6 self-powered D5 remote wakeup D4~D0 reserved

Definition at line 331 of file usb_std.h.

◆ bMaxPower

uint8_t usb_configuration_desc_type::bMaxPower

maximum power consumption of the usb device from the bus

Definition at line 336 of file usb_std.h.

◆ bNumInterfaces

uint8_t usb_configuration_desc_type::bNumInterfaces

number of interfaces supported by this configuration

Definition at line 328 of file usb_std.h.

◆ iConfiguration

uint8_t usb_configuration_desc_type::iConfiguration

index of string descriptor describing this configuration

Definition at line 330 of file usb_std.h.

◆ wTotalLength

uint16_t usb_configuration_desc_type::wTotalLength

total length of data returned for this configuration

Definition at line 327 of file usb_std.h.

The documentation for this struct was generated from the following file:
  • usb_std.h


AT32F403 Firmwary Library: usb_interface_desc_type Struct Reference

Data Fields
usb_interface_desc_type Struct Reference
AT32F403_middlewares_usbd_drivers » USB_standard » USB_standard_exported_types

format of standard interface descriptor More...

#include <usb_std.h>

Data Fields

uint8_t | bLength
uint8_t | bDescriptorType
uint8_t | bInterfaceNumber
uint8_t | bAlternateSetting
uint8_t | bNumEndpoints
uint8_t | bInterfaceClass
uint8_t | bInterfaceSubClass
uint8_t | bInterfaceProtocol
uint8_t | iInterface

Detailed Description

format of standard interface descriptor

Definition at line 344 of file usb_std.h.

Field Documentation

◆ bAlternateSetting

uint8_t usb_interface_desc_type::bAlternateSetting

value used to select this alternate setting for the interface

Definition at line 349 of file usb_std.h.

◆ bDescriptorType

uint8_t usb_interface_desc_type::bDescriptorType

interface descriptor type

Definition at line 347 of file usb_std.h.

◆ bInterfaceClass

uint8_t usb_interface_desc_type::bInterfaceClass

class code (assigned by the usb-if)

Definition at line 351 of file usb_std.h.

◆ bInterfaceNumber

uint8_t usb_interface_desc_type::bInterfaceNumber

number of this interface

Definition at line 348 of file usb_std.h.

◆ bInterfaceProtocol

uint8_t usb_interface_desc_type::bInterfaceProtocol

protocol code (assigned by the usb-if)

Definition at line 353 of file usb_std.h.

◆ bInterfaceSubClass

uint8_t usb_interface_desc_type::bInterfaceSubClass

subclass code (assigned by the usb-if)

Definition at line 352 of file usb_std.h.

◆ bLength

uint8_t usb_interface_desc_type::bLength

size of this descriptor in bytes

Definition at line 346 of file usb_std.h.

◆ bNumEndpoints

uint8_t usb_interface_desc_type::bNumEndpoints

number of endpoints used by this interface

Definition at line 350 of file usb_std.h.

◆ iInterface

uint8_t usb_interface_desc_type::iInterface

index of string descriptor describing this interface

Definition at line 354 of file usb_std.h.

The documentation for this struct was generated from the following file:
  • usb_std.h


AT32F403 Firmwary Library: usb_endpoint_desc_type Struct Reference

Data Fields
usb_endpoint_desc_type Struct Reference
AT32F403_middlewares_usbd_drivers » USB_standard » USB_standard_exported_types

format of standard endpoint descriptor More...

#include <usb_std.h>

Data Fields

uint8_t | bLength
uint8_t | bDescriptorType
uint8_t | bEndpointAddress
uint8_t | bmAttributes
uint16_t | wMaxPacketSize
uint8_t | bInterval

Detailed Description

format of standard endpoint descriptor

Definition at line 360 of file usb_std.h.

Field Documentation

◆ bDescriptorType

uint8_t usb_endpoint_desc_type::bDescriptorType

endpoint descriptor type

Definition at line 363 of file usb_std.h.

◆ bEndpointAddress

uint8_t usb_endpoint_desc_type::bEndpointAddress

the address of the endpoint on the usb device described by this descriptor

Definition at line 364 of file usb_std.h.

◆ bInterval

uint8_t usb_endpoint_desc_type::bInterval

interval for polling endpoint for data transfers

Definition at line 367 of file usb_std.h.

◆ bLength

uint8_t usb_endpoint_desc_type::bLength

size of this descriptor in bytes

Definition at line 362 of file usb_std.h.

◆ bmAttributes

uint8_t usb_endpoint_desc_type::bmAttributes

describes the endpoints attributes when it is configured using bConfiguration value

Definition at line 365 of file usb_std.h.

◆ wMaxPacketSize

uint16_t usb_endpoint_desc_type::wMaxPacketSize

maximum packet size this endpoint

Definition at line 366 of file usb_std.h.

The documentation for this struct was generated from the following file:
  • usb_std.h


AT32F403 Firmwary Library: usb_header_desc_type Struct Reference

Data Fields
usb_header_desc_type Struct Reference
AT32F403_middlewares_usbd_drivers » USB_standard » USB_standard_exported_types

format of header More...

#include <usb_std.h>

Data Fields

uint8_t | bLength
uint8_t | bDescriptorType

Detailed Description

format of header

Definition at line 373 of file usb_std.h.

Field Documentation

◆ bDescriptorType

uint8_t usb_header_desc_type::bDescriptorType

descriptor type

Definition at line 376 of file usb_std.h.

◆ bLength

uint8_t usb_header_desc_type::bLength

size of this descriptor in bytes

Definition at line 375 of file usb_std.h.

The documentation for this struct was generated from the following file:
  • usb_std.h


AT32F403 Firmwary Library: AT32F403_board

Modules
AT32F403_board

Modules

BOARD
onboard periph driver

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: BOARD

Modules | Macros | Functions | Variables
BOARD
AT32F403_board

onboard periph driver More...

Modules

BOARD_pins_definition
BOARD_exported_functions

Macros

#define | STEP_DELAY_MS 50
#define | PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)

Functions

int | fputc (int ch, FILE *f)
retargets the c library printf function to the usart. More...
void | uart_print_init (uint32_t baudrate)
initialize uart More...
void | at32_board_init ()
board initialize interface init led and button More...
void | at32_button_init (void)
configure button gpio More...
uint8_t | at32_button_state (void)
returns the selected button state More...
button_type at32_button_press ()
returns which button have press down More...
void | at32_led_init (led_type led)
configure led gpio More...
void | at32_led_on (led_type led)
turns selected led on. More...
void | at32_led_off (led_type led)
turns selected led off. More...
void | at32_led_toggle (led_type led)
turns selected led toggle. More...
void | delay_init ()
initialize delay function More...
void | delay_us (uint32_t nus)
inserts a delay time. More...
void | delay_ms (uint16_t nms)
inserts a delay time. More...
void | delay_sec (uint16_t sec)
inserts a delay time. More...

Variables

gpio_type * | led_gpio_port [3] = {LED2_GPIO, LED3_GPIO, LED4_GPIO}
uint16_t | led_gpio_pin [3] = {LED2_PIN, LED3_PIN, LED4_PIN}
crm_periph_clock_type | led_gpio_crm_clk [3] = {LED2_GPIO_CRM_CLK, LED3_GPIO_CRM_CLK, LED4_GPIO_CRM_CLK}
static __IO uint32_t | fac_us
static __IO uint32_t | fac_ms

Detailed Description

onboard periph driver

Macro Definition Documentation

◆ PUTCHAR_PROTOTYPE

#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)

Definition at line 85 of file at32f403_board.c.

◆ STEP_DELAY_MS

#define STEP_DELAY_MS 50

Definition at line 38 of file at32f403_board.c.

Function Documentation

◆ at32_board_init()

void at32_board_init ( void )

board initialize interface init led and button

Parameters
none
Return values
none

Definition at line 158 of file at32f403_board.c.

Referenced by main().

◆ at32_button_init()

void at32_button_init ( void )

configure button gpio

Parameters
button specifies the button to be configured.
Return values
none

< gpio pins number 0

Definition at line 180 of file at32f403_board.c.

Referenced by at32_board_init().

◆ at32_button_press()

button_type at32_button_press ( void )

returns which button have press down

Parameters
none
Return values
the button have press down

Definition at line 214 of file at32f403_board.c.

Referenced by main().

◆ at32_button_state()

uint8_t at32_button_state ( void )

returns the selected button state

Parameters
none
Return values
the button gpio pin value

< gpio pins number 0

Definition at line 204 of file at32f403_board.c.

Referenced by at32_button_press().

◆ at32_led_init()

void at32_led_init ( led_type led )

configure led gpio

Parameters
led specifies the led to be configured.
Return values
none

Definition at line 238 of file at32f403_board.c.

Referenced by at32_board_init(), and main().

◆ at32_led_off()

void at32_led_off ( led_type led )

turns selected led off.

Parameters
led specifies the led to be set off. this parameter can be one of following parameters:
  • LED2
  • LED3
  • LED4
Return values
none

Definition at line 283 of file at32f403_board.c.

Referenced by at32_board_init(), main(), sd_test_error(), TAMPER_IRQHandler(), and usb_hid_buf_process().

◆ at32_led_on()

void at32_led_on ( led_type led )

turns selected led on.

Parameters
led specifies the led to be set on. this parameter can be one of following parameters:
  • LED2
  • LED3
  • LED4
Return values
none

Definition at line 266 of file at32f403_board.c.

Referenced by DMA1_Channel2_IRQHandler(), main(), sd_test_error(), TAMPER_IRQHandler(), USART2_IRQHandler(), and usb_hid_buf_process().

◆ at32_led_toggle()

void at32_led_toggle ( led_type led )

turns selected led toggle.

Parameters
led specifies the led to be set off. this parameter can be one of following parameters:
  • LED2
  • LED3
  • LED4
Return values
none

Definition at line 300 of file at32f403_board.c.

Referenced by ADC1_2_IRQHandler(), error_handler(), EXINT0_IRQHandler(), EXINT4_IRQHandler(), led2_task_function(), led3_task_function(), main(), PVM_IRQHandler(), result_error(), RTC_IRQHandler(), RTCAlarm_IRQHandler(), spim_operate(), spim_run(), systick_handler(), TMR1_OVF_TMR10_IRQHandler(), TMR2_GLOBAL_IRQHandler(), TMR3_GLOBAL_IRQHandler(), USART1_IRQHandler(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ delay_init()

void delay_init ( void )

initialize delay function

Parameters
none
Return values
none

Definition at line 313 of file at32f403_board.c.

Referenced by at32_board_init(), sclk_192m_hick_config(), sclk_64m_hick_config(), and sclk_96m_hext_config().

◆ delay_ms()

void delay_ms ( uint16_t nms )

inserts a delay time.

Parameters
nms specifies the delay time length, in milliseconds.
Return values
none

Definition at line 346 of file at32f403_board.c.

Referenced by at32_button_press(), button_isr(), delay_sec(), error_handler(), flash_fat16_loop_status(), iap_loop(), lcd_display_number(), lcd_init(), main(), nand_read_small_page(), nand_read_spare_area(), PCCARD_Reset(), randnum_test(), sd_power_on(), sd_test_error(), spim_operate(), spim_run(), usb_delay_ms(), and usb_reset().

◆ delay_sec()

void delay_sec ( uint16_t sec )

inserts a delay time.

Parameters
sec specifies the delay time, in seconds.
Return values
none

Definition at line 378 of file at32f403_board.c.

Referenced by main(), and result_error().

◆ delay_us()

void delay_us ( uint32_t nus )

inserts a delay time.

Parameters
nus specifies the delay time length, in microsecond.
Return values
none

Definition at line 326 of file at32f403_board.c.

Referenced by main(), touch_read_ad(), and usb_delay_us().

◆ fputc()

int fputc | ( | int | ch,
 |  | FILE * | f
 | ) |  |

retargets the c library printf function to the usart.

Parameters
none
Return values
none

< usart transmit data buffer empty flag

< usart transmit data complete flag

Definition at line 93 of file at32f403_board.c.

◆ uart_print_init()

void uart_print_init ( uint32_t baudrate )

initialize uart

Parameters
baudrate uart baudrate
Return values
none

< gpio pins number 9

Definition at line 125 of file at32f403_board.c.

Referenced by main().

Variable Documentation

◆ fac_ms

__IO uint32_t fac_ms
static

Definition at line 47 of file at32f403_board.c.

Referenced by delay_init(), and delay_ms().

◆ fac_us

__IO uint32_t fac_us
static

Definition at line 46 of file at32f403_board.c.

Referenced by delay_init(), and delay_us().

◆ led_gpio_crm_clk

crm_periph_clock_type led_gpio_crm_clk[3] = {LED2_GPIO_CRM_CLK, LED3_GPIO_CRM_CLK, LED4_GPIO_CRM_CLK}

Definition at line 43 of file at32f403_board.c.

Referenced by at32_led_init().

◆ led_gpio_pin

uint16_t led_gpio_pin[3] = {LED2_PIN, LED3_PIN, LED4_PIN}

Definition at line 42 of file at32f403_board.c.

Referenced by at32_led_init(), at32_led_off(), at32_led_on(), and at32_led_toggle().

◆ led_gpio_port

gpio_type* led_gpio_port[3] = {LED2_GPIO, LED3_GPIO, LED4_GPIO}

Definition at line 41 of file at32f403_board.c.

Referenced by at32_led_init(), at32_led_off(), at32_led_on(), and at32_led_toggle().


AT32F403 Firmwary Library: BOARD_pins_definition

Macros | Enumerations
BOARD_pins_definition
AT32F403_board » BOARD

Macros

#define | LED_NUM 3
#define | PRINT_UART USART1
#define | PRINT_UART_CRM_CLK CRM_USART1_PERIPH_CLOCK
#define | PRINT_UART_TX_PIN GPIO_PINS_9
#define | PRINT_UART_TX_GPIO GPIOA
#define | PRINT_UART_TX_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
#define | USER_BUTTON_PIN GPIO_PINS_0
#define | USER_BUTTON_PORT GPIOA
#define | USER_BUTTON_CRM_CLK CRM_GPIOA_PERIPH_CLOCK

Enumerations

enum | led_type { LED2 = 0 , LED3 = 1 , LED4 = 2 }
enum | button_type { USER_BUTTON = 0 , NO_BUTTON = 1 }

Detailed Description

Macro Definition Documentation

◆ LED_NUM

#define LED_NUM 3

Definition at line 66 of file at32f403_board.h.

◆ PRINT_UART

#define PRINT_UART USART1

Definition at line 83 of file at32f403_board.h.

◆ PRINT_UART_CRM_CLK

#define PRINT_UART_CRM_CLK CRM_USART1_PERIPH_CLOCK

Definition at line 84 of file at32f403_board.h.

◆ PRINT_UART_TX_GPIO

#define PRINT_UART_TX_GPIO GPIOA

Definition at line 86 of file at32f403_board.h.

◆ PRINT_UART_TX_GPIO_CRM_CLK

#define PRINT_UART_TX_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 87 of file at32f403_board.h.

◆ PRINT_UART_TX_PIN

#define PRINT_UART_TX_PIN GPIO_PINS_9

Definition at line 85 of file at32f403_board.h.

◆ USER_BUTTON_CRM_CLK

#define USER_BUTTON_CRM_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 98 of file at32f403_board.h.

◆ USER_BUTTON_PIN

#define USER_BUTTON_PIN GPIO_PINS_0

Definition at line 96 of file at32f403_board.h.

◆ USER_BUTTON_PORT

#define USER_BUTTON_PORT GPIOA

Definition at line 97 of file at32f403_board.h.

Enumeration Type Documentation

◆ button_type

enum button_type
Enumerator
USER_BUTTON
NO_BUTTON

Definition at line 90 of file at32f403_board.h.

◆ led_type

enum led_type

this header include define support list:

  1. at-start-f403 v1.x board if define AT_START_F403_V1, the header file support at-start-f403 v1.x board
Enumerator
LED2
LED3
LED4

Definition at line 59 of file at32f403_board.h.


AT32F403 Firmwary Library: BOARD_exported_functions

Functions
BOARD_exported_functions
AT32F403_board » BOARD

Functions

void | at32_board_init (void)
board initialize interface init led and button More...
void | at32_led_init (led_type led)
configure led gpio More...
void | at32_led_on (led_type led)
turns selected led on. More...
void | at32_led_off (led_type led)
turns selected led off. More...
void | at32_led_toggle (led_type led)
turns selected led toggle. More...
void | at32_button_init (void)
configure button gpio More...
button_type | at32_button_press (void)
returns which button have press down More...
uint8_t | at32_button_state (void)
returns the selected button state More...
void | delay_init (void)
initialize delay function More...
void | delay_us (uint32_t nus)
inserts a delay time. More...
void | delay_ms (uint16_t nms)
inserts a delay time. More...
void | delay_sec (uint16_t sec)
inserts a delay time. More...
void | uart_print_init (uint32_t baudrate)
initialize uart More...

Detailed Description

Function Documentation

◆ at32_board_init()

void at32_board_init ( void )

board initialize interface init led and button

Parameters
none
Return values
none

Definition at line 158 of file at32f403_board.c.

Referenced by main().

◆ at32_button_init()

void at32_button_init ( void )

configure button gpio

Parameters
button specifies the button to be configured.
Return values
none

< gpio pins number 0

Definition at line 180 of file at32f403_board.c.

Referenced by at32_board_init().

◆ at32_button_press()

button_type at32_button_press ( void )

returns which button have press down

Parameters
none
Return values
the button have press down

Definition at line 214 of file at32f403_board.c.

Referenced by main().

◆ at32_button_state()

uint8_t at32_button_state ( void )

returns the selected button state

Parameters
none
Return values
the button gpio pin value

< gpio pins number 0

Definition at line 204 of file at32f403_board.c.

Referenced by at32_button_press().

◆ at32_led_init()

void at32_led_init ( led_type led )

configure led gpio

Parameters
led specifies the led to be configured.
Return values
none

Definition at line 238 of file at32f403_board.c.

Referenced by at32_board_init(), and main().

◆ at32_led_off()

void at32_led_off ( led_type led )

turns selected led off.

Parameters
led specifies the led to be set off. this parameter can be one of following parameters:
  • LED2
  • LED3
  • LED4
Return values
none

Definition at line 283 of file at32f403_board.c.

Referenced by at32_board_init(), main(), sd_test_error(), TAMPER_IRQHandler(), and usb_hid_buf_process().

◆ at32_led_on()

void at32_led_on ( led_type led )

turns selected led on.

Parameters
led specifies the led to be set on. this parameter can be one of following parameters:
  • LED2
  • LED3
  • LED4
Return values
none

Definition at line 266 of file at32f403_board.c.

Referenced by DMA1_Channel2_IRQHandler(), main(), sd_test_error(), TAMPER_IRQHandler(), USART2_IRQHandler(), and usb_hid_buf_process().

◆ at32_led_toggle()

void at32_led_toggle ( led_type led )

turns selected led toggle.

Parameters
led specifies the led to be set off. this parameter can be one of following parameters:
  • LED2
  • LED3
  • LED4
Return values
none

Definition at line 300 of file at32f403_board.c.

Referenced by ADC1_2_IRQHandler(), error_handler(), EXINT0_IRQHandler(), EXINT4_IRQHandler(), led2_task_function(), led3_task_function(), main(), PVM_IRQHandler(), result_error(), RTC_IRQHandler(), RTCAlarm_IRQHandler(), spim_operate(), spim_run(), systick_handler(), TMR1_OVF_TMR10_IRQHandler(), TMR2_GLOBAL_IRQHandler(), TMR3_GLOBAL_IRQHandler(), USART1_IRQHandler(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ delay_init()

void delay_init ( void )

initialize delay function

Parameters
none
Return values
none

Definition at line 313 of file at32f403_board.c.

Referenced by at32_board_init(), sclk_192m_hick_config(), sclk_64m_hick_config(), and sclk_96m_hext_config().

◆ delay_ms()

void delay_ms ( uint16_t nms )

inserts a delay time.

Parameters
nms specifies the delay time length, in milliseconds.
Return values
none

Definition at line 346 of file at32f403_board.c.

Referenced by at32_button_press(), button_isr(), delay_sec(), error_handler(), flash_fat16_loop_status(), iap_loop(), lcd_display_number(), lcd_init(), main(), nand_read_small_page(), nand_read_spare_area(), PCCARD_Reset(), randnum_test(), sd_power_on(), sd_test_error(), spim_operate(), spim_run(), usb_delay_ms(), and usb_reset().

◆ delay_sec()

void delay_sec ( uint16_t sec )

inserts a delay time.

Parameters
sec specifies the delay time, in seconds.
Return values
none

Definition at line 378 of file at32f403_board.c.

Referenced by main(), and result_error().

◆ delay_us()

void delay_us ( uint32_t nus )

inserts a delay time.

Parameters
nus specifies the delay time length, in microsecond.
Return values
none

Definition at line 326 of file at32f403_board.c.

Referenced by main(), touch_read_ad(), and usb_delay_us().

◆ uart_print_init()

void uart_print_init ( uint32_t baudrate )

initialize uart

Parameters
baudrate uart baudrate
Return values
none

< gpio pins number 9

Definition at line 125 of file at32f403_board.c.

Referenced by main().


AT32F403 Firmwary Library: AT32F403_periph_examples

Modules
AT32F403_periph_examples

Modules

ADC_combine_mode_ordinary_simult
ADC_current_vref_value_check
ADC_exint_trigger_partitioned
ADC_internal_temperature_sensor
ADC_repeat_conversion_loop_transfer
ADC_software_trigger_repeat
ADC_tmr_trigger_automatic_preempted
ADC_triple_adc_synchro_trigger
ADC_voltage_monitoring
BPR_data
BPR_tamper
CAN_communication_mode
CAN_filter
CAN_loopback_mode
CORTEX_m4_bit_band
CORTEX_m4_cmsis_dsp
CORTEX_m4_fpu
CORTEX_m4_systick_interrupt
CRC_calculation
CRM_clock_failure_detection
CRM_sysclk_switch
DAC_double_mode_dma_sinewave
DAC_double_mode_dma_squarewave
DAC_one_dac_dma_escalator
DAC_one_dac_noisewave
DAC_two_dac_trianglewave
DEBUG_tmr
DMA_data_to_gpio_flexible
DMA_flash_to_sram
EXINT_config
EXINT_software_trigger
FLASH_fap_enable
FLASH_write_read
FLASH_operate_spim
FLASH_run_in_spim
GPIO_io_toggle
GPIO_led_toggle
GPIO_swjtag_remap
I2C_communication_dma
I2C_communication_int
I2C_communication_poll
I2C_eeprom
I2S_halfduplex_dma
I2S_halfduplex_interrupt
I2S_spii2s_switch_halfduplex_polling
PWC_deepsleep_rtc
PWC_power_voltage_monitor
PWC_sleep_tmr2
PWC_sleep_usart1
PWC_standby_rtc
PWC_standby_wakeup_pin
RTC_calendar
RTC_lick_calibration
SDIO_sd_mmc_card
SDIO_sdio_fatfs
SPI_crc_transfer_polling
SPI_fullduplex_polling
SPI_halfduplex_interrupt
SPI_halfduplex_transceiver_switch
SPI_only_receive_mode_polling
SPI_use_jtagpin_hardwarecs_dma
SPI_w25q_flash
TMR_6_steps
TMR_7_pwm_output
TMR_cascade_synchro
TMR_complementary_signals
TMR_dma
TMR_dma_burst
TMR_encoder_tmr2
TMR_external_clock
TMR_hall_xor_tmr2
TMR_hang_mode
TMR_input_capture
TMR_oc_high
TMR_oc_low
TMR_oc_toggle_tmr3
TMR_oc_toggle_tmr9
TMR_one_cycle
TMR_parallel_synchro
TMR_pwm_input
TMR_pwm_input_dma
TMR_pwm_output_simulate
TMR_pwm_output_tmr10
TMR_pwm_output_tmr3
TMR_timer_base
TMR_tmr1_synchro
TMR_tmr2_32bit
USART_half_duplex
USART_hw_flow_control
USART_idle_detection
USART_interrupt
USART_irda
USART_polling
USART_printf
USART_receiver_mute
F403_USART_rs485
USART_smartcard
USART_synchronous
USART_transfer_by_dma_interrupt
USART_transfer_by_dma_polling
USB_device_audio
_USB_device_audio_hid
USB_device_composite_vcp_keyboard
_USB_device_vcp_msc
USB_device_composite_vcp_msc
USB_device_custom_hid
USB_device_keyboard
USB_device_mouse
USB_device_msc
USB_device_printer
USB_device_vcp_loopback
USB_device_virtual_msc_iap
WDT_reset
WDT_standby
WWDT_reset
XMC_lcd_8bit
XMC_lcd_touch_16bit
XMC_nand_ecc
XMC_nand
_XMC_nor
XMC_nor
XMC_CF_CARD
_XMC_pc_card
XMC_psram

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: ADC_combine_mode_ordinary_simult

Functions | Variables
ADC_combine_mode_ordinary_simult
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint32_t | adc1_ordinary_valuetab [5][3]
__IO uint32_t | dma1_trans_complete_flag = 0

Detailed Description

Function Documentation

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

Definition at line 98 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 80 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 115 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ DMA1_Channel1_IRQHandler()

void DMA1_Channel1_IRQHandler ( void )

this function handles dma1_channel1 handler.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 142 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

< dma full data transfer interrupt

Definition at line 70 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c.

Referenced by main().

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 6

< gpio pins number 7

< gpio pins number 0

< gpio pins number 1

Definition at line 49 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 54 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 142 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 67 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 45 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 124 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 106 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 133 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 93 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_valuetab

__IO uint32_t adc1_ordinary_valuetab[5][3]

Definition at line 37 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c.

Referenced by dma_config(), and main().

◆ dma1_trans_complete_flag

__IO uint32_t dma1_trans_complete_flag = 0

Definition at line 38 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: ADC_current_vref_value_check

Functions | Variables
ADC_current_vref_value_check
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t adc1_ordinary_value = 0

Detailed Description

Function Documentation

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

Definition at line 72 of file project/at_start_f403/examples/adc/current_vref_value_check/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/adc/current_vref_value_check/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 103 of file project/at_start_f403/examples/adc/current_vref_value_check/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_value

__IO uint16_t adc1_ordinary_value = 0

Definition at line 36 of file project/at_start_f403/examples/adc/current_vref_value_check/src/main.c.

Referenced by dma_config(), and main().


AT32F403 Firmwary Library: ADC_exint_trigger_partitioned

Functions | Variables
ADC_exint_trigger_partitioned
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
void | ADC1_2_IRQHandler (void)
this function handles adc1_2 handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | exint_config (void)
exint configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3][3] = {0}
__IO uint16_t | adc1_preempt_valuetab [3][3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0
__IO uint16_t | preempt_trigger_count = 0

Detailed Description

Function Documentation

◆ ADC1_2_IRQHandler()

void ADC1_2_IRQHandler ( void )

this function handles adc1_2 handler.

Parameters
none
Return values
none

< preempt channels conversion end flag

< preempt channels conversion end flag

Definition at line 157 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

< preempt channels conversion end interrupt

Definition at line 141 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 116 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ DMA1_Channel1_IRQHandler()

void DMA1_Channel1_IRQHandler ( void )

this function handles dma1_channel1 handler.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 143 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

< dma full data transfer interrupt

Definition at line 113 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by main().

◆ exint_config()

static void exint_config ( void )
static

exint configuration.

Parameters
none
Return values
none

< gpio pins number 11

< gpio pins number 15

< external interrupt line 11

< external interrupt line 15

Definition at line 73 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by main().

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 6

< gpio pins number 7

< gpio pins number 0

< gpio pins number 1

Definition at line 52 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 55 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 183 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 125 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 107 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 134 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 94 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_valuetab

__IO uint16_t adc1_ordinary_valuetab[3][3] = {0}

Definition at line 37 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by dma_config(), and main().

◆ adc1_preempt_valuetab

__IO uint16_t adc1_preempt_valuetab[3][3] = {0}

Definition at line 38 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by main().

◆ dma_trans_complete_flag

__IO uint16_t dma_trans_complete_flag = 0

Definition at line 39 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by main().

◆ preempt_trigger_count

__IO uint16_t preempt_trigger_count = 0

Definition at line 40 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.

Referenced by ADC1_2_IRQHandler(), and main().


AT32F403 Firmwary Library: ADC_internal_temperature_sensor

Macros | Functions | Variables
ADC_internal_temperature_sensor
AT32F403_periph_examples

Macros

#define | ADC_VREF (3.3)
#define | ADC_TEMP_BASE (1.26)
#define | ADC_TEMP_SLOPE (-0.00423)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t adc1_ordinary_value = 0

Detailed Description

Macro Definition Documentation

◆ ADC_TEMP_BASE

#define ADC_TEMP_BASE (1.26)

Definition at line 38 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.

◆ ADC_TEMP_SLOPE

#define ADC_TEMP_SLOPE (-0.00423)

Definition at line 39 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.

◆ ADC_VREF

#define ADC_VREF (3.3)

Definition at line 37 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.

Function Documentation

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 108 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_value

__IO uint16_t adc1_ordinary_value = 0

Definition at line 41 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.

Referenced by dma_config(), and main().


AT32F403 Firmwary Library: ADC_repeat_conversion_loop_transfer

Functions | Variables
ADC_repeat_conversion_loop_transfer
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0

Detailed Description

Function Documentation

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ DMA1_Channel1_IRQHandler()

void DMA1_Channel1_IRQHandler ( void )

this function handles dma1_channel1 handler.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 141 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

< dma full data transfer interrupt

Definition at line 64 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c.

Referenced by main().

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 6

Definition at line 48 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 124 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_valuetab

__IO uint16_t adc1_ordinary_valuetab[3] = {0}

Definition at line 36 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c.

Referenced by dma_config().

◆ dma_trans_complete_flag

__IO uint16_t dma_trans_complete_flag = 0

Definition at line 37 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c.


AT32F403 Firmwary Library: ADC_software_trigger_repeat

Functions | Variables
ADC_software_trigger_repeat
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0

Detailed Description

Function Documentation

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ DMA1_Channel1_IRQHandler()

void DMA1_Channel1_IRQHandler ( void )

this function handles dma1_channel1 handler.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 141 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

< dma full data transfer interrupt

Definition at line 64 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c.

Referenced by main().

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 6

Definition at line 48 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 124 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_valuetab

__IO uint16_t adc1_ordinary_valuetab[3] = {0}

Definition at line 36 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c.

Referenced by dma_config().

◆ dma_trans_complete_flag

__IO uint16_t dma_trans_complete_flag = 0

Definition at line 37 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c.


AT32F403 Firmwary Library: ADC_tmr_trigger_automatic_preempted

Functions | Variables
ADC_tmr_trigger_automatic_preempted
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
void | ADC1_2_IRQHandler (void)
this function handles adc1_2 handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | tmr1_config (void)
tmr1 configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [5][3] = {0}
__IO uint16_t | adc1_preempt_valuetab [5][3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0
__IO uint16_t | preempt_conversion_count = 0

Detailed Description

Function Documentation

◆ ADC1_2_IRQHandler()

void ADC1_2_IRQHandler ( void )

this function handles adc1_2 handler.

Parameters
none
Return values
none

< preempt channels conversion end flag

< preempt channels conversion end flag

Definition at line 158 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

< preempt channels conversion end interrupt

Definition at line 140 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 82 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 117 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ DMA1_Channel1_IRQHandler()

void DMA1_Channel1_IRQHandler ( void )

this function handles dma1_channel1 handler.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 144 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

< dma full data transfer interrupt

Definition at line 73 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by main().

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 6

< gpio pins number 7

< gpio pins number 0

< gpio pins number 1

Definition at line 52 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 56 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 184 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 69 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 47 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 126 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 108 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 135 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

◆ tmr1_config()

static void tmr1_config ( void )
static

tmr1 configuration.

Parameters
none
Return values
none

< gpio pins number 8

Definition at line 101 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by main().

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 95 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_valuetab

__IO uint16_t adc1_ordinary_valuetab[5][3] = {0}

Definition at line 37 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by dma_config(), and main().

◆ adc1_preempt_valuetab

__IO uint16_t adc1_preempt_valuetab[5][3] = {0}

Definition at line 38 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by ADC1_2_IRQHandler(), and main().

◆ dma_trans_complete_flag

__IO uint16_t dma_trans_complete_flag = 0

Definition at line 39 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by DMA1_Channel1_IRQHandler(), and main().

◆ preempt_conversion_count

__IO uint16_t preempt_conversion_count = 0

Definition at line 40 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.

Referenced by ADC1_2_IRQHandler(), and main().


AT32F403 Firmwary Library: ADC_triple_adc_synchro_trigger

Functions | Variables
ADC_triple_adc_synchro_trigger
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
void | DMA2_Channel4_5_IRQHandler (void)
this function handles dma2_channel4_5 handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | tmr1_config (void)
tmr1 configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint32_t | adc1_ordinary_valuetab [5][3]
__IO uint16_t | adc3_ordinary_valuetab [5][3]
__IO uint32_t | dma1_trans_complete_flag = 0
__IO uint32_t | dma2_trans_complete_flag = 0

Detailed Description

Function Documentation

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

Definition at line 137 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 82 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 117 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ DMA1_Channel1_IRQHandler()

void DMA1_Channel1_IRQHandler ( void )

this function handles dma1_channel1 handler.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 144 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ DMA2_Channel4_5_IRQHandler()

void DMA2_Channel4_5_IRQHandler ( void )

this function handles dma2_channel4_5 handler.

Parameters
none
Return values
none

< dma2 channel5 full data transfer flag

< dma2 channel5 full data transfer flag

Definition at line 158 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

< dma full data transfer interrupt

< dma full data transfer interrupt

Definition at line 77 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by main().

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 6

< gpio pins number 7

< gpio pins number 0

< gpio pins number 1

< gpio pins number 0

< gpio pins number 1

< gpio pins number 2

Definition at line 51 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 56 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 195 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 69 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 47 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 126 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 108 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 135 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

◆ tmr1_config()

static void tmr1_config ( void )
static

tmr1 configuration.

Parameters
none
Return values
none

Definition at line 116 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by main().

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 95 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_valuetab

__IO uint32_t adc1_ordinary_valuetab[5][3]

Definition at line 36 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by dma_config(), and main().

◆ adc3_ordinary_valuetab

__IO uint16_t adc3_ordinary_valuetab[5][3]

Definition at line 37 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by dma_config(), and main().

◆ dma1_trans_complete_flag

__IO uint32_t dma1_trans_complete_flag = 0

Definition at line 38 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by DMA1_Channel1_IRQHandler(), and main().

◆ dma2_trans_complete_flag

__IO uint32_t dma2_trans_complete_flag = 0

Definition at line 39 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.

Referenced by DMA2_Channel4_5_IRQHandler(), and main().


AT32F403 Firmwary Library: ADC_voltage_monitoring

Functions | Variables
ADC_voltage_monitoring
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | ADC1_2_IRQHandler (void)
this function handles adc1_2 handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3] = {0}
__IO uint16_t | vmor_flag_index = 0

Detailed Description

Function Documentation

◆ ADC1_2_IRQHandler()

void ADC1_2_IRQHandler ( void )

this function handles adc1_2 handler.

Parameters
none
Return values
none

< voltage monitoring out of range flag

< voltage monitoring out of range flag

Definition at line 143 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ adc_config()

static void adc_config ( void )
static

adc configuration.

Parameters
none
Return values
none

< voltage monitoring out of range interrupt

Definition at line 90 of file project/at_start_f403/examples/adc/voltage_monitoring/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 116 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ dma_config()

static void dma_config ( void )
static

dma configuration.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/adc/voltage_monitoring/src/main.c.

Referenced by main().

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 6

Definition at line 48 of file project/at_start_f403/examples/adc/voltage_monitoring/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 55 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 127 of file project/at_start_f403/examples/adc/voltage_monitoring/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 125 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 107 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 134 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 94 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.

Variable Documentation

◆ adc1_ordinary_valuetab

__IO uint16_t adc1_ordinary_valuetab[3] = {0}

Definition at line 36 of file project/at_start_f403/examples/adc/voltage_monitoring/src/main.c.

Referenced by dma_config(), and main().

◆ vmor_flag_index

__IO uint16_t vmor_flag_index = 0

Definition at line 37 of file project/at_start_f403/examples/adc/voltage_monitoring/src/main.c.

Referenced by ADC1_2_IRQHandler(), and main().


AT32F403 Firmwary Library: BPR_data

Macros | Functions | Variables
BPR_data
AT32F403_periph_examples

Macros

#define BPR_DR_NUMBER 42

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | uart_init (uint32_t baudrate)
init usart. More...
int | main (void)
main function. More...

Variables

bpr_data_type bpr_addr_tab [42]

Detailed Description

Macro Definition Documentation

◆ BPR_DR_NUMBER

#define BPR_DR_NUMBER 42

Definition at line 36 of file project/at_start_f403/examples/bpr/bpr_data/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< bpr tamper event flag

Definition at line 98 of file project/at_start_f403/examples/bpr/bpr_data/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file app_led3_toggle/src/usart.c.

Referenced by main().

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.

Variable Documentation

◆ bpr_addr_tab

bpr_data_type bpr_addr_tab[42]
Initial value:
=
{
BPR_DATA1, BPR_DATA2, BPR_DATA3, BPR_DATA4, BPR_DATA5,
BPR_DATA6, BPR_DATA7, BPR_DATA8, BPR_DATA9, BPR_DATA10,
BPR_DATA11, BPR_DATA12, BPR_DATA13, BPR_DATA14, BPR_DATA15,
BPR_DATA16, BPR_DATA17, BPR_DATA18, BPR_DATA19, BPR_DATA20,
BPR_DATA21, BPR_DATA22, BPR_DATA23, BPR_DATA24, BPR_DATA25,
BPR_DATA26, BPR_DATA27, BPR_DATA28, BPR_DATA29, BPR_DATA30,
BPR_DATA31, BPR_DATA32, BPR_DATA33, BPR_DATA34, BPR_DATA35,
BPR_DATA36, BPR_DATA37, BPR_DATA38, BPR_DATA39, BPR_DATA40,
BPR_DATA41, BPR_DATA42
}
BPR_DATA26
@ BPR_DATA26
Definition: at32f403_bpr.h:91
BPR_DATA28
@ BPR_DATA28
Definition: at32f403_bpr.h:93
BPR_DATA31
@ BPR_DATA31
Definition: at32f403_bpr.h:96
BPR_DATA8
@ BPR_DATA8
Definition: at32f403_bpr.h:73
BPR_DATA25
@ BPR_DATA25
Definition: at32f403_bpr.h:90
BPR_DATA39
@ BPR_DATA39
Definition: at32f403_bpr.h:104
BPR_DATA7
@ BPR_DATA7
Definition: at32f403_bpr.h:72
BPR_DATA12
@ BPR_DATA12
Definition: at32f403_bpr.h:77
BPR_DATA29
@ BPR_DATA29
Definition: at32f403_bpr.h:94
BPR_DATA19
@ BPR_DATA19
Definition: at32f403_bpr.h:84
BPR_DATA1
@ BPR_DATA1
Definition: at32f403_bpr.h:66
BPR_DATA36
@ BPR_DATA36
Definition: at32f403_bpr.h:101
BPR_DATA9
@ BPR_DATA9
Definition: at32f403_bpr.h:74
BPR_DATA10
@ BPR_DATA10
Definition: at32f403_bpr.h:75
BPR_DATA27
@ BPR_DATA27
Definition: at32f403_bpr.h:92
BPR_DATA20
@ BPR_DATA20
Definition: at32f403_bpr.h:85
BPR_DATA38
@ BPR_DATA38
Definition: at32f403_bpr.h:103
BPR_DATA37
@ BPR_DATA37
Definition: at32f403_bpr.h:102
BPR_DATA41
@ BPR_DATA41
Definition: at32f403_bpr.h:106
BPR_DATA13
@ BPR_DATA13
Definition: at32f403_bpr.h:78
BPR_DATA4
@ BPR_DATA4
Definition: at32f403_bpr.h:69
BPR_DATA32
@ BPR_DATA32
Definition: at32f403_bpr.h:97
BPR_DATA16
@ BPR_DATA16
Definition: at32f403_bpr.h:81
BPR_DATA11
@ BPR_DATA11
Definition: at32f403_bpr.h:76
BPR_DATA24
@ BPR_DATA24
Definition: at32f403_bpr.h:89
BPR_DATA23
@ BPR_DATA23
Definition: at32f403_bpr.h:88
BPR_DATA5
@ BPR_DATA5
Definition: at32f403_bpr.h:70
BPR_DATA18
@ BPR_DATA18
Definition: at32f403_bpr.h:83
BPR_DATA17
@ BPR_DATA17
Definition: at32f403_bpr.h:82
BPR_DATA42
@ BPR_DATA42
Definition: at32f403_bpr.h:107
BPR_DATA21
@ BPR_DATA21
Definition: at32f403_bpr.h:86
BPR_DATA33
@ BPR_DATA33
Definition: at32f403_bpr.h:98
BPR_DATA40
@ BPR_DATA40
Definition: at32f403_bpr.h:105
BPR_DATA30
@ BPR_DATA30
Definition: at32f403_bpr.h:95
BPR_DATA2
@ BPR_DATA2
Definition: at32f403_bpr.h:67
BPR_DATA14
@ BPR_DATA14
Definition: at32f403_bpr.h:79
BPR_DATA15
@ BPR_DATA15
Definition: at32f403_bpr.h:80
BPR_DATA3
@ BPR_DATA3
Definition: at32f403_bpr.h:68
BPR_DATA22
@ BPR_DATA22
Definition: at32f403_bpr.h:87
BPR_DATA34
@ BPR_DATA34
Definition: at32f403_bpr.h:99
BPR_DATA35
@ BPR_DATA35
Definition: at32f403_bpr.h:100
BPR_DATA6
@ BPR_DATA6
Definition: at32f403_bpr.h:71

Definition at line 38 of file project/at_start_f403/examples/bpr/bpr_data/src/main.c.

Referenced by bpr_reg_check(), and bpr_reg_write().


AT32F403 Firmwary Library: BPR_tamper

Macros | Functions | Variables
BPR_tamper
AT32F403_periph_examples

Macros

#define BPR_DR_NUMBER 42

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TAMPER_IRQHandler (void)
this function handles tamper interrupt request. More...
void | bpr_reg_write (void)
write data to bpr dt registers. More...
uint8_t | bpr_reg_check (void)
checks if the bpr dt registers values are correct or not. More...
uint32_t | bpr_reg_judge (void)
checks if the bpr dt registers are reset or not. More...
int | main (void)
main function. More...

Variables

bpr_data_type bpr_addr_tab [42]

Detailed Description

Macro Definition Documentation

◆ BPR_DR_NUMBER

#define BPR_DR_NUMBER 42

Definition at line 36 of file project/at_start_f403/examples/bpr/tamper/src/main.c.

Function Documentation

◆ bpr_reg_check()

uint8_t bpr_reg_check ( void )

checks if the bpr dt registers values are correct or not.

Parameters
none.
Return values
- TRUE: all bpr dt registers values are correct
  • FALSE: number of the bpr register which value is not correct

Definition at line 78 of file project/at_start_f403/examples/bpr/tamper/src/main.c.

Referenced by main().

◆ bpr_reg_judge()

uint32_t bpr_reg_judge ( void )

checks if the bpr dt registers are reset or not.

Parameters
none
Return values
- 0: all bpr dt registers are reset
  • value different from 0: number of the first bpr register not reset

Definition at line 101 of file project/at_start_f403/examples/bpr/tamper/src/main.c.

Referenced by TAMPER_IRQHandler().

◆ bpr_reg_write()

void bpr_reg_write ( void )

write data to bpr dt registers.

Parameters
none.
Return values
none

Definition at line 60 of file project/at_start_f403/examples/bpr/tamper/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< bpr tamper event flag

Definition at line 121 of file project/at_start_f403/examples/bpr/tamper/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ TAMPER_IRQHandler()

void TAMPER_IRQHandler ( void )

this function handles tamper interrupt request.

Parameters
none
Return values
none

< bpr tamper interrupt flag

< bpr tamper interrupt flag

< bpr tamper event flag

Definition at line 141 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.

Variable Documentation

◆ bpr_addr_tab

bpr_data_type bpr_addr_tab[42]
Initial value:
=
{
BPR_DATA1, BPR_DATA2, BPR_DATA3, BPR_DATA4, BPR_DATA5,
BPR_DATA6, BPR_DATA7, BPR_DATA8, BPR_DATA9, BPR_DATA10,
BPR_DATA11, BPR_DATA12, BPR_DATA13, BPR_DATA14, BPR_DATA15,
BPR_DATA16, BPR_DATA17, BPR_DATA18, BPR_DATA19, BPR_DATA20,
BPR_DATA21, BPR_DATA22, BPR_DATA23, BPR_DATA24, BPR_DATA25,
BPR_DATA26, BPR_DATA27, BPR_DATA28, BPR_DATA29, BPR_DATA30,
BPR_DATA31, BPR_DATA32, BPR_DATA33, BPR_DATA34, BPR_DATA35,
BPR_DATA36, BPR_DATA37, BPR_DATA38, BPR_DATA39, BPR_DATA40,
BPR_DATA41, BPR_DATA42
}
BPR_DATA26
@ BPR_DATA26
Definition: at32f403_bpr.h:91
BPR_DATA28
@ BPR_DATA28
Definition: at32f403_bpr.h:93
BPR_DATA31
@ BPR_DATA31
Definition: at32f403_bpr.h:96
BPR_DATA8
@ BPR_DATA8
Definition: at32f403_bpr.h:73
BPR_DATA25
@ BPR_DATA25
Definition: at32f403_bpr.h:90
BPR_DATA39
@ BPR_DATA39
Definition: at32f403_bpr.h:104
BPR_DATA7
@ BPR_DATA7
Definition: at32f403_bpr.h:72
BPR_DATA12
@ BPR_DATA12
Definition: at32f403_bpr.h:77
BPR_DATA29
@ BPR_DATA29
Definition: at32f403_bpr.h:94
BPR_DATA19
@ BPR_DATA19
Definition: at32f403_bpr.h:84
BPR_DATA1
@ BPR_DATA1
Definition: at32f403_bpr.h:66
BPR_DATA36
@ BPR_DATA36
Definition: at32f403_bpr.h:101
BPR_DATA9
@ BPR_DATA9
Definition: at32f403_bpr.h:74
BPR_DATA10
@ BPR_DATA10
Definition: at32f403_bpr.h:75
BPR_DATA27
@ BPR_DATA27
Definition: at32f403_bpr.h:92
BPR_DATA20
@ BPR_DATA20
Definition: at32f403_bpr.h:85
BPR_DATA38
@ BPR_DATA38
Definition: at32f403_bpr.h:103
BPR_DATA37
@ BPR_DATA37
Definition: at32f403_bpr.h:102
BPR_DATA41
@ BPR_DATA41
Definition: at32f403_bpr.h:106
BPR_DATA13
@ BPR_DATA13
Definition: at32f403_bpr.h:78
BPR_DATA4
@ BPR_DATA4
Definition: at32f403_bpr.h:69
BPR_DATA32
@ BPR_DATA32
Definition: at32f403_bpr.h:97
BPR_DATA16
@ BPR_DATA16
Definition: at32f403_bpr.h:81
BPR_DATA11
@ BPR_DATA11
Definition: at32f403_bpr.h:76
BPR_DATA24
@ BPR_DATA24
Definition: at32f403_bpr.h:89
BPR_DATA23
@ BPR_DATA23
Definition: at32f403_bpr.h:88
BPR_DATA5
@ BPR_DATA5
Definition: at32f403_bpr.h:70
BPR_DATA18
@ BPR_DATA18
Definition: at32f403_bpr.h:83
BPR_DATA17
@ BPR_DATA17
Definition: at32f403_bpr.h:82
BPR_DATA42
@ BPR_DATA42
Definition: at32f403_bpr.h:107
BPR_DATA21
@ BPR_DATA21
Definition: at32f403_bpr.h:86
BPR_DATA33
@ BPR_DATA33
Definition: at32f403_bpr.h:98
BPR_DATA40
@ BPR_DATA40
Definition: at32f403_bpr.h:105
BPR_DATA30
@ BPR_DATA30
Definition: at32f403_bpr.h:95
BPR_DATA2
@ BPR_DATA2
Definition: at32f403_bpr.h:67
BPR_DATA14
@ BPR_DATA14
Definition: at32f403_bpr.h:79
BPR_DATA15
@ BPR_DATA15
Definition: at32f403_bpr.h:80
BPR_DATA3
@ BPR_DATA3
Definition: at32f403_bpr.h:68
BPR_DATA22
@ BPR_DATA22
Definition: at32f403_bpr.h:87
BPR_DATA34
@ BPR_DATA34
Definition: at32f403_bpr.h:99
BPR_DATA35
@ BPR_DATA35
Definition: at32f403_bpr.h:100
BPR_DATA6
@ BPR_DATA6
Definition: at32f403_bpr.h:71

Definition at line 38 of file project/at_start_f403/examples/bpr/tamper/src/main.c.

Referenced by bpr_reg_check(), bpr_reg_judge(), and bpr_reg_write().


AT32F403 Firmwary Library: CAN_communication_mode

Functions
CAN_communication_mode
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | can_gpio_config (void)
can gpio config More...
static void | can_configuration (void)
can configiguration. More...
static void | can_transmit_data (void)
can transmit data More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
can1 interrupt function rx0 More...
void | CAN1_SE_IRQHandler (void)
can1 interrupt function se More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ CAN1_SE_IRQHandler()

void CAN1_SE_IRQHandler ( void )

can1 interrupt function se

Parameters
none
Return values
none

< error type record flag

< error type record flag

Definition at line 166 of file project/at_start_f403/examples/can/communication_mode/src/main.c.

◆ can_configuration()

static void can_configuration ( void )
static

can configiguration.

Parameters
none
Return values
none

< receive fifo 0 message interrupt

< error type record interrupt

< error occur interrupt

Definition at line 70 of file project/at_start_f403/examples/can/communication_mode/src/main.c.

Referenced by main().

◆ can_gpio_config()

static void can_gpio_config ( void )
static

can gpio config

Parameters
none
Return values
none

< can_rx(pb8), can_tx(pb9)

< gpio pins number 9

< gpio pins number 8

Definition at line 41 of file project/at_start_f403/examples/can/communication_mode/src/main.c.

Referenced by main().

◆ can_transmit_data()

static void can_transmit_data ( void )
static

can transmit data

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/can/communication_mode/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 187 of file project/at_start_f403/examples/can/communication_mode/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

can1 interrupt function rx0

this function handles usb interrupt.

Parameters
none
Return values
none

< receive fifo 0 message num flag

Definition at line 148 of file project/at_start_f403/examples/can/communication_mode/src/main.c.


AT32F403 Firmwary Library: CAN_filter

Macros | Functions | Variables
CAN_filter
AT32F403_periph_examples

Macros

#define | FILTER_EXT_ID1 ((uint32_t)0x18F5F100)
#define | FILTER_EXT_ID2 ((uint32_t)0x18F5F200)
#define | FILTER_EXT_ID3 ((uint32_t)0x18F5F300)
#define | FILTER_STD_ID1 ((uint16_t)0x04F6)
#define | FILTER_STD_ID2 ((uint16_t)0x04F7)
#define | FILTER_STD_ID3 ((uint16_t)0x04F8)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | can_gpio_config (void)
can gpio config More...
static void | can_configuration (void)
can configiguration. More...
static void | can_transmit_data (void)
can transmit data More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
can1 interrupt function rx0 More...
void | CAN1_SE_IRQHandler (void)
can1 interrupt function se More...
int | main (void)
main function. More...

Variables

uint8_t test_result = 0

Detailed Description

Macro Definition Documentation

◆ FILTER_EXT_ID1

#define FILTER_EXT_ID1 ((uint32_t)0x18F5F100)

Definition at line 37 of file project/at_start_f403/examples/can/filter/src/main.c.

◆ FILTER_EXT_ID2

#define FILTER_EXT_ID2 ((uint32_t)0x18F5F200)

Definition at line 38 of file project/at_start_f403/examples/can/filter/src/main.c.

◆ FILTER_EXT_ID3

#define FILTER_EXT_ID3 ((uint32_t)0x18F5F300)

Definition at line 39 of file project/at_start_f403/examples/can/filter/src/main.c.

◆ FILTER_STD_ID1

#define FILTER_STD_ID1 ((uint16_t)0x04F6)

Definition at line 42 of file project/at_start_f403/examples/can/filter/src/main.c.

◆ FILTER_STD_ID2

#define FILTER_STD_ID2 ((uint16_t)0x04F7)

Definition at line 43 of file project/at_start_f403/examples/can/filter/src/main.c.

◆ FILTER_STD_ID3

#define FILTER_STD_ID3 ((uint16_t)0x04F8)

Definition at line 44 of file project/at_start_f403/examples/can/filter/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ CAN1_SE_IRQHandler()

void CAN1_SE_IRQHandler ( void )

can1 interrupt function se

Parameters
none
Return values
none

< error type record flag

< error type record flag

Definition at line 288 of file project/at_start_f403/examples/can/filter/src/main.c.

◆ can_configuration()

static void can_configuration ( void )
static

can configiguration.

Parameters
none
Return values
none

< receive fifo 0 message interrupt

< error type record interrupt

< error occur interrupt

Definition at line 83 of file project/at_start_f403/examples/can/filter/src/main.c.

Referenced by main().

◆ can_gpio_config()

static void can_gpio_config ( void )
static

can gpio config

Parameters
none
Return values
none

< can_rx(pb8), can_tx(pb9)

< gpio pins number 9

< gpio pins number 8

Definition at line 52 of file project/at_start_f403/examples/can/filter/src/main.c.

Referenced by main().

◆ can_transmit_data()

static void can_transmit_data ( void )
static

can transmit data

Parameters
none
Return values
none

Definition at line 147 of file project/at_start_f403/examples/can/filter/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 309 of file project/at_start_f403/examples/can/filter/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/can/filter/src/at32f403_int.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

can1 interrupt function rx0

Parameters
none
Return values
none

< receive fifo 0 message num flag

Definition at line 260 of file project/at_start_f403/examples/can/filter/src/main.c.

Variable Documentation

◆ test_result

uint8_t test_result = 0

Definition at line 46 of file project/at_start_f403/examples/can/filter/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: CAN_loopback_mode

Functions
CAN_loopback_mode
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | can_gpio_config (void)
can gpio config More...
static void | can_configuration (void)
can configiguration. More...
static void | can_transmit_data (void)
can transmit data More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
can1 interrupt function rx0 More...
void | CAN1_SE_IRQHandler (void)
can1 interrupt function se More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ CAN1_SE_IRQHandler()

void CAN1_SE_IRQHandler ( void )

can1 interrupt function se

Parameters
none
Return values
none

< error type record flag

< error type record flag

Definition at line 164 of file project/at_start_f403/examples/can/loopback_mode/src/main.c.

◆ can_configuration()

static void can_configuration ( void )
static

can configiguration.

Parameters
none
Return values
none

< receive fifo 0 message interrupt

< error type record interrupt

< error occur interrupt

Definition at line 70 of file project/at_start_f403/examples/can/loopback_mode/src/main.c.

Referenced by main().

◆ can_gpio_config()

static void can_gpio_config ( void )
static

can gpio config

Parameters
none
Return values
none

< can_rx(pb8), can_tx(pb9)

< gpio pins number 9

< gpio pins number 8

Definition at line 41 of file project/at_start_f403/examples/can/loopback_mode/src/main.c.

Referenced by main().

◆ can_transmit_data()

static void can_transmit_data ( void )
static

can transmit data

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/can/loopback_mode/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 185 of file project/at_start_f403/examples/can/loopback_mode/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

can1 interrupt function rx0

Parameters
none
Return values
none

< receive fifo 0 message num flag

Definition at line 148 of file project/at_start_f403/examples/can/loopback_mode/src/main.c.


AT32F403 Firmwary Library: CORTEX_m4_bit_band

Macros | Functions | Variables
CORTEX_m4_bit_band
AT32F403_periph_examples

Macros

#define | RAM_BASE 0x20000000
#define | RAM_BITBAND_BASE 0x22000000
#define | VARIABLES_RESET_BIT(variables_addr, bit_number) (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 0)
#define | VARIABLES_SET_BIT(variables_addr, bit_number) (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 1)
#define | VARIABLES_GET_BIT(variables_addr, bit_number) (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)))
#define | PERIPHERAL_BASE 0x40000000
#define | PERIPHERAL_BITBAND_BASE 0x42000000
#define | PERIPHERAL_RESET_BIT(peripheral_addr, bit_number) (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 0)
#define | PERIPHERAL_SET_BIT(peripheral_addr, bit_number) (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 1)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | result_error (void)
led4 flick for error. More...
int | main (void)
main function. More...

Variables

__IO uint32_t | variables
__IO uint32_t | variables_addr = 0
__IO uint32_t | variables_bit_val = 0

Detailed Description

Macro Definition Documentation

◆ PERIPHERAL_BASE

#define PERIPHERAL_BASE 0x40000000

Definition at line 51 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ PERIPHERAL_BITBAND_BASE

#define PERIPHERAL_BITBAND_BASE 0x42000000

Definition at line 52 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ PERIPHERAL_RESET_BIT

#define PERIPHERAL_RESET_BIT | ( | peripheral_addr,
 |  | bit_number
 | ) | (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 0)

Definition at line 54 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ PERIPHERAL_SET_BIT

#define PERIPHERAL_SET_BIT | ( | peripheral_addr,
 |  | bit_number
 | ) | (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 1)

Definition at line 57 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ RAM_BASE

#define RAM_BASE 0x20000000

Definition at line 38 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ RAM_BITBAND_BASE

#define RAM_BITBAND_BASE 0x22000000

Definition at line 39 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ VARIABLES_GET_BIT

#define VARIABLES_GET_BIT | ( | variables_addr,
 |  | bit_number
 | ) | (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)))

Definition at line 47 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ VARIABLES_RESET_BIT

#define VARIABLES_RESET_BIT | ( | variables_addr,
 |  | bit_number
 | ) | (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 0)

Definition at line 41 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ VARIABLES_SET_BIT

#define VARIABLES_SET_BIT | ( | variables_addr,
 |  | bit_number
 | ) | (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 1)

Definition at line 44 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ result_error()

void result_error ( void )

led4 flick for error.

Parameters
none
Return values
none

Definition at line 67 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.

Variable Documentation

◆ variables

__IO uint32_t variables

Definition at line 60 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

Referenced by main().

◆ variables_addr

__IO uint32_t variables_addr = 0

Definition at line 60 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.

Referenced by main().

◆ variables_bit_val

__IO uint32_t variables_bit_val = 0

Definition at line 60 of file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.


AT32F403 Firmwary Library: CORTEX_m4_cmsis_dsp

Macros | Functions | Variables
CORTEX_m4_cmsis_dsp
AT32F403_periph_examples

Macros

#define | USE_STATIC_INIT
#define | TEST_LENGTH_SAMPLES (20*4)
#define | NUMSTUDENTS 20
#define | NUMSUBJECTS 4

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int32_t | main ()
main function. More...

Variables

const float32_t | testMarks_f32 [(20 *4)]
const float32_t | testUnity_f32 [4]
static float32_t | testOutput [(20 *4)]
uint32_t | numStudents = 20
uint32_t | numSubjects = 4
float32_t | max_marks
float32_t | min_marks
float32_t | mean
float32_t | std
float32_t | var
uint32_t | student_num

Detailed Description

Macro Definition Documentation

◆ NUMSTUDENTS

#define NUMSTUDENTS 20

Definition at line 81 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

◆ NUMSUBJECTS

#define NUMSUBJECTS 4

Definition at line 82 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

◆ TEST_LENGTH_SAMPLES

#define TEST_LENGTH_SAMPLES (20*4)

Definition at line 41 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

◆ USE_STATIC_INIT

#define USE_STATIC_INIT

Definition at line 37 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ main()

int32_t main ( void )

main function.

Parameters
none
Return values
none

Definition at line 96 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.

Variable Documentation

◆ max_marks

float32_t max_marks

Definition at line 88 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ mean

float32_t mean

Definition at line 88 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ min_marks

float32_t min_marks

Definition at line 88 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ numStudents

uint32_t numStudents = 20

Definition at line 86 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ numSubjects

uint32_t numSubjects = 4

Definition at line 87 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ std

float32_t std

Definition at line 88 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ student_num

uint32_t student_num

Definition at line 89 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ testMarks_f32

const float32_t testMarks_f32[(20 *4)]
Initial value:
=
{
42.000000, 37.000000, 81.000000, 28.000000,
83.000000, 72.000000, 36.000000, 38.000000,
32.000000, 51.000000, 63.000000, 64.000000,
97.000000, 82.000000, 95.000000, 90.000000,
66.000000, 51.000000, 54.000000, 42.000000,
67.000000, 56.000000, 45.000000, 57.000000,
67.000000, 69.000000, 35.000000, 52.000000,
29.000000, 81.000000, 58.000000, 47.000000,
38.000000, 76.000000, 100.000000, 29.000000,
33.000000, 47.000000, 29.000000, 50.000000,
34.000000, 41.000000, 61.000000, 46.000000,
52.000000, 50.000000, 48.000000, 36.000000,
47.000000, 55.000000, 44.000000, 40.000000,
100.000000, 94.000000, 84.000000, 37.000000,
32.000000, 71.000000, 47.000000, 77.000000,
31.000000, 50.000000, 49.000000, 35.000000,
63.000000, 67.000000, 40.000000, 31.000000,
29.000000, 68.000000, 61.000000, 38.000000,
31.000000, 28.000000, 28.000000, 76.000000,
55.000000, 33.000000, 29.000000, 39.000000
}

Definition at line 44 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ testOutput

float32_t testOutput[(20 *4)]
static

Definition at line 77 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ testUnity_f32

const float32_t testUnity_f32[4]
Initial value:
=
{
1.000, 1.000, 1.000, 1.000
}

Definition at line 70 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().

◆ var

float32_t var

Definition at line 88 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: CORTEX_m4_fpu

Modules | Macros | Functions | Variables
CORTEX_m4_fpu
AT32F403_periph_examples

Modules

JULIA_fpu_functions

Macros

#define | ITERATION 200
#define | REAL_CONSTANT (0.285f)
#define | IMG_CONSTANT (0.01f)
#define | SCREEN_X_SIZE ((uint16_t)320)
#define | SCREEN_Y_SIZE ((uint16_t)240)
#define | ZOOM ((uint16_t)100)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | generate_julia_fpu (uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t *buffer)
julia calculation test with fpu option enable or disable More...
int | main (void)
main function. More...

Variables

uint8_t buffer [((uint16_t) 320) *((uint16_t) 240)]

Detailed Description

Macro Definition Documentation

◆ IMG_CONSTANT

#define IMG_CONSTANT (0.01f)

Definition at line 45 of file julia_fpu.h.

◆ ITERATION

#define ITERATION 200

Definition at line 43 of file julia_fpu.h.

◆ REAL_CONSTANT

#define REAL_CONSTANT (0.285f)

Definition at line 44 of file julia_fpu.h.

◆ SCREEN_X_SIZE

#define SCREEN_X_SIZE ((uint16_t)320)

Definition at line 37 of file project/at_start_f403/examples/cortex_m4/fpu/src/main.c.

◆ SCREEN_Y_SIZE

#define SCREEN_Y_SIZE ((uint16_t)240)

Definition at line 38 of file project/at_start_f403/examples/cortex_m4/fpu/src/main.c.

◆ ZOOM

#define ZOOM ((uint16_t)100)

Definition at line 39 of file project/at_start_f403/examples/cortex_m4/fpu/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ generate_julia_fpu()

void generate_julia_fpu | ( | uint16_t | size_x,
 |  | uint16_t | size_y,
 |  | uint16_t | offset_x,
 |  | uint16_t | offset_y,
 |  | uint16_t | zoom,
 |  | uint8_t * | buffer
 | ) |  |

julia calculation test with fpu option enable or disable

Parameters
size_x | width in pixel
size_y | height in pixel
offset_x | x offset for starting point
offset_y | y offset for starting point
zoom | iteration zoom ratio
buffer | pointer to output buffer where values are stored
Return values
none

Definition at line 46 of file julia_fpu.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 48 of file project/at_start_f403/examples/cortex_m4/fpu/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.

Variable Documentation

◆ buffer

uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]

Definition at line 41 of file project/at_start_f403/examples/cortex_m4/fpu/src/main.c.

Referenced by audio_codec_mic_get_data(), bot_scsi_send_data(), generate_julia_fpu(), main(), memset16_buffer(), usbd_ctrl_recv(), usbd_ctrl_send(), usbd_ept_recv(), and usbd_ept_send().


AT32F403 Firmwary Library: JULIA_fpu_functions

Functions
JULIA_fpu_functions
AT32F403_periph_examples » CORTEX_m4_fpu

Functions

void generate_julia_fpu (uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t *buffer)
julia calculation test with fpu option enable or disable More...

Detailed Description

Function Documentation

◆ generate_julia_fpu()

void generate_julia_fpu | ( | uint16_t | size_x,
 |  | uint16_t | size_y,
 |  | uint16_t | offset_x,
 |  | uint16_t | offset_y,
 |  | uint16_t | zoom,
 |  | uint8_t * | buffer
 | ) |  |

julia calculation test with fpu option enable or disable

Parameters
size_x | width in pixel
size_y | height in pixel
offset_x | x offset for starting point
offset_y | y offset for starting point
zoom | iteration zoom ratio
buffer | pointer to output buffer where values are stored
Return values
none

Definition at line 46 of file julia_fpu.c.

Referenced by main().


AT32F403 Firmwary Library: CORTEX_m4_systick_interrupt

Macros | Functions
CORTEX_m4_systick_interrupt
AT32F403_periph_examples

Macros

#define | MS_TICK (system_core_clock / 1000U)
#define | DELAY 200 /* 200 ms ticks */

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | systick_handler (void)
systick interrupt handler. More...
int | main (void)
main function. More...

Detailed Description

Macro Definition Documentation

◆ DELAY

#define DELAY 200 /* 200 ms ticks */

Definition at line 37 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c.

◆ MS_TICK

#define MS_TICK (system_core_clock / 1000U)

Definition at line 36 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.

◆ systick_handler()

void systick_handler ( void )

systick interrupt handler.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c.

Referenced by SysTick_Handler().

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.


AT32F403 Firmwary Library: CRC_calculation

Macros | Functions | Variables
CRC_calculation
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 120

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

static const uint32_t | data_buffer [120]
__IO uint32_t | crc_value = 0

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 120

Definition at line 36 of file project/at_start_f403/examples/crc/calculation/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 69 of file project/at_start_f403/examples/crc/calculation/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.

Variable Documentation

◆ crc_value

__IO uint32_t crc_value = 0

Definition at line 62 of file project/at_start_f403/examples/crc/calculation/src/main.c.

Referenced by iap_crc(), and main().

◆ data_buffer

const uint32_t data_buffer[120]
static
Initial value:
=
{
0xc33dd31c, 0xe37ff35e, 0x129022f3, 0x32d24235, 0x52146277, 0x7256b5ea,
0x4a755a54, 0x6a377a16, 0x0af11ad0, 0x2ab33a92, 0xed0fdd6c, 0xcd4dbdaa,
0xbb3bab1a, 0x6ca67c87, 0x5cc52c22, 0x3c030c60, 0x1c41edae, 0xfd8fcdec,
0xad8b9de8, 0x8dc97c26, 0x5c644c45, 0x3ca22c83, 0x1ce00cc1, 0xef1fff3e,
0x95a88589, 0xf56ee54f, 0xd52cc50d, 0x34e224c3, 0x04817466, 0x64475424,
0x78066827, 0x18c008e1, 0x28a3cb7d, 0xdb5ceb3f, 0xfb1e8bf9, 0x9bd8abbb,
0xdf7caf9b, 0xbfba8fd9, 0x9ff86e17, 0x7e364e55, 0x2e933eb2, 0x0ed11ef0,
0xa35ad3bd, 0xc39cf3ff, 0xe3de2462, 0x34430420, 0x64e674c7, 0x44a45485,
0xad2abd0b, 0x8d689d49, 0x7e976eb6, 0x5ed54ef4, 0x2e321e51, 0x0e70ff9f,
0xefbedfdd, 0xcffcbf1b, 0x9f598f78, 0x918881a9, 0xb1caa1eb, 0xd10cc12d,
0xe16f1080, 0x00a130c2, 0x20e35004, 0x40257046, 0x83b99398, 0xa3fbb3da,
0x00001021, 0x20423063, 0x408450a5, 0x60c670e7, 0x9129a14a, 0xb16bc18c,
0x569546b4, 0xb75ba77a, 0x97198738, 0xf7dfe7fe, 0xc7bc48c4, 0x58e56886,
0x4405a7db, 0xb7fa8799, 0xe75ff77e, 0xc71dd73c, 0x26d336f2, 0x069116b0,
0x76764615, 0x5634d94c, 0xc96df90e, 0xe92f99c8, 0xb98aa9ab, 0x58444865,
0x78a70840, 0x18612802, 0xc9ccd9ed, 0xe98ef9af, 0x89489969, 0xa90ab92b,
0xd1ade1ce, 0xf1ef1231, 0x32732252, 0x52b54294, 0x72f762d6, 0x93398318,
0xa56ab54b, 0x85289509, 0xf5cfc5ac, 0xd58d3653, 0x26721611, 0x063076d7,
0x8d689d49, 0xf7dfe7fe, 0xe98ef9af, 0x063076d7, 0x93398318, 0xb98aa9ab,
0x4ad47ab7, 0x6a961a71, 0x0a503a33, 0x2a12dbfd, 0xfbbfeb9e, 0x9b798b58
}

Definition at line 38 of file project/at_start_f403/examples/crc/calculation/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: CRM_clock_failure_detection

Functions
CRM_clock_failure_detection
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | clkout_config (void)
clkout configuration. More...
static void | sclk_192m_hick_config (void)
config sclk 192 mhz with hick clock source. More...
static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | clock_failure_detection_handler (void)
clock failure detection handler. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ clkout_config()

static void clkout_config ( void )
static

clkout configuration.

Parameters
none
Return values
none

< gpio pins number 8

Definition at line 59 of file project/at_start_f403/examples/crm/clock_failure_detection/src/main.c.

Referenced by main(), and sclk_192m_hick_config().

◆ clock_failure_detection_handler()

void clock_failure_detection_handler ( void )

clock failure detection handler.

Parameters
none
Return values
none

< clock failure interrupt ready flag

< clock failure interrupt ready flag

Definition at line 85 of file project/at_start_f403/examples/crm/clock_failure_detection/src/main.c.

Referenced by NMI_Handler().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 184 of file project/at_start_f403/examples/crm/clock_failure_detection/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ sclk_192m_hick_config()

static void sclk_192m_hick_config ( void )
static

config sclk 192 mhz with hick clock source.

Note
the system clock is configured as follow: system clock (sclk) = hick / 2 * pll_mult system clock source = pll (hick)
  • hick = HICK_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< high speed internal clock stable flag

< phase locking loop stable flag

Definition at line 119 of file project/at_start_f403/examples/crm/clock_failure_detection/src/main.c.

Referenced by clock_failure_detection_handler().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 47 of file project/at_start_f403/examples/crm/clock_failure_detection/src/main.c.

Referenced by sclk_192m_hick_config().


AT32F403 Firmwary Library: CRM_sysclk_switch

Functions
CRM_sysclk_switch
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | clkout_config (void)
clkout configuration. More...
static void | sclk_64m_hick_config (void)
config sclk 64 mhz with hick clock source. More...
static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
static void | sclk_96m_hext_config (void)
config sclk 96 mhz with hext clock source. More...
static void | switch_system_clock (void)
sclk switch function. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ clkout_config()

void clkout_config ( void )
static

clkout configuration.

Parameters
none
Return values
none

< gpio pins number 8

Definition at line 60 of file project/at_start_f403/examples/crm/sysclk_switch/src/main.c.

Referenced by main(), sclk_64m_hick_config(), and sclk_96m_hext_config().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 248 of file project/at_start_f403/examples/crm/sysclk_switch/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ sclk_64m_hick_config()

static void sclk_64m_hick_config ( void )
static

config sclk 64 mhz with hick clock source.

Note
the system clock is configured as follow: system clock (sclk) = hick / 2 * pll_mult system clock source = pll (hick)
  • hick = HICK_VALUE
  • sclk = 64000000
  • ahbdiv = 1
  • ahbclk = 64000000
  • apb2div = 2
  • apb2clk = 32000000
  • apb1div = 2
  • apb1clk = 32000000
  • pll_mult = 16
  • pll_range = LE72MHZ (less equal 72 mhz)
Parameters
none
Return values
none

< high speed internal clock stable flag

< phase locking loop stable flag

Definition at line 116 of file project/at_start_f403/examples/crm/sysclk_switch/src/main.c.

Referenced by switch_system_clock().

◆ sclk_96m_hext_config()

static void sclk_96m_hext_config ( void )
static

config sclk 96 mhz with hext clock source.

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 96000000
  • ahbdiv = 1
  • ahbclk = 96000000
  • apb2div = 2
  • apb2clk = 48000000
  • apb1div = 2
  • apb1clk = 48000000
  • pll_mult = 24
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 187 of file project/at_start_f403/examples/crm/sysclk_switch/src/main.c.

Referenced by switch_system_clock().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ switch_system_clock()

static void switch_system_clock ( void )
static

sclk switch function.

Parameters
none
Return values
none

Definition at line 86 of file project/at_start_f403/examples/crm/sysclk_switch/src/main.c.

Referenced by main().

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 48 of file project/at_start_f403/examples/crm/sysclk_switch/src/main.c.

Referenced by sclk_64m_hick_config(), and sclk_96m_hext_config().


AT32F403 Firmwary Library: DAC_double_mode_dma_sinewave

Functions | Variables
DAC_double_mode_dma_sinewave
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
const uint16_t | sine12bit [32]
uint32_t | dualsine12bit [32]
uint32_t | idx = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

Definition at line 51 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.

Referenced by main(), tmr1_config(), tmr2_config(), and tmr_init().

◆ dma_init_struct

dma_init_type dma_init_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.

Referenced by codec_i2s_init(), dma_config(), dma_configuration(), dma_default_para_init(), dma_init(), i2s_config(), main(), sd_dma_config(), spi_bytes_read(), spi_bytes_write(), and spi_config().

◆ dualsine12bit

uint32_t dualsine12bit[32]

Definition at line 43 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.

Referenced by at32_button_init(), at32_led_init(), can_gpio_config(), clkout_config(), codec_i2s_init(), gpio_config(), gpio_configuration(), gpio_default_para_init(), gpio_init(), main(), mclk_tmr1_init(), nand_init(), nor_init(), psram_init(), rs485_config(), sd_init(), spim_init(), sram_init(), swj_dp_config(), touch_pin_init(), uart_init(), uart_print_init(), usart1_config(), usart_configuration(), usart_gpio_config(), usart_spi_configuration(), and xmc_init().

◆ idx

uint32_t idx = 0

Definition at line 44 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.

Referenced by main(), and usbd_int_to_unicode().

◆ sine12bit

const uint16_t sine12bit[32]
Initial value:
= {2047, 2447, 2831, 3185, 3498, 3750, 3939, 4056,
4095, 4056, 3939, 3750, 3495, 3185, 2831, 2447,
2047, 1647, 1263, 909, 599, 344, 155, 38,
0, 38, 155, 344, 599, 909, 1263, 1647}

Definition at line 39 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: DAC_double_mode_dma_squarewave

Functions | Variables
DAC_double_mode_dma_squarewave
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
uint32_t | dualsquare12bit [2] = {(0xfff | (0xfff << 16)), 0}

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

Definition at line 48 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.

Variable Documentation

◆ dma_init_struct

dma_init_type dma_init_struct = {0}

Definition at line 39 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c.

Referenced by main().

◆ dualsquare12bit

uint32_t dualsquare12bit[2] = {(0xfff | (0xfff << 16)), 0}

Definition at line 41 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: DAC_one_dac_dma_escalator

Functions | Variables
DAC_one_dac_dma_escalator
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
const uint8_t | escalator8bit [6] = {0x0, 0x33, 0x66, 0x99, 0xCC, 0xFF}

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 4

Definition at line 47 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 39 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c.

Referenced by main().

◆ dma_init_struct

dma_init_type dma_init_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c.

Referenced by main().

◆ escalator8bit

const uint8_t escalator8bit[6] = {0x0, 0x33, 0x66, 0x99, 0xCC, 0xFF}

Definition at line 40 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: DAC_one_dac_noisewave

Functions | Variables
DAC_one_dac_noisewave
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type gpio_init_struct = {0}

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 4

Definition at line 44 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.

Variable Documentation

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: DAC_two_dac_trianglewave

Functions | Variables
DAC_two_dac_trianglewave
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

Definition at line 44 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: DEBUG_tmr

Functions | Variables
DEBUG_tmr
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR1_OVF_TMR10_IRQHandler (void)
this function handles tmr1 overflow handler. More...
int | main (void)
main function. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | counter = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< debug timer1 pause

< tmr interrupt overflow

Definition at line 60 of file project/at_start_f403/examples/debug/tmr1/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

◆ TMR1_OVF_TMR10_IRQHandler()

void TMR1_OVF_TMR10_IRQHandler ( void )

this function handles tmr1 overflow handler.

Parameters
none
Return values
none

< tmr flag overflow

< tmr flag overflow

Definition at line 45 of file project/at_start_f403/examples/debug/tmr1/src/main.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.

Variable Documentation

◆ counter

uint16_t counter = 0

Definition at line 38 of file project/at_start_f403/examples/debug/tmr1/src/main.c.

Referenced by Buffercmp(), can_receive_error_counter_get(), can_transmit_error_counter_get(), and main().

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/debug/tmr1/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: DMA_data_to_gpio_flexible

Macros | Functions | Variables
DMA_data_to_gpio_flexible
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 16

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel2_IRQHandler (void)
this function handles DMA2 channel1 handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
uint16_t | src_buffer [16]

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 16

Definition at line 39 of file project/at_start_f403/examples/dma/data_to_gpio/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ DMA1_Channel2_IRQHandler()

void DMA1_Channel2_IRQHandler ( void )

this function handles DMA2 channel1 handler.

Parameters
none
Return values
none

< dma1 channel2 full data transfer flag

< dma1 channel2 full data transfer flag

Definition at line 48 of file project/at_start_f403/examples/dma/data_to_gpio/src/main.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio all pins

< dma full data transfer interrupt

Definition at line 65 of file project/at_start_f403/examples/dma/data_to_gpio/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.

Variable Documentation

◆ dma_init_struct

dma_init_type dma_init_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/dma/data_to_gpio/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/dma/data_to_gpio/src/main.c.

Referenced by main().

◆ src_buffer

uint16_t src_buffer[16]
Initial value:
= {0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008,
0x0009, 0x000A, 0x000B, 0x000C, 0x000D, 0x000E, 0x000F, 0x0010}

Definition at line 40 of file project/at_start_f403/examples/dma/data_to_gpio/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: DMA_flash_to_sram

Macros | Functions | Variables
DMA_flash_to_sram
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
error_status | buffer_compare (const uint32_t *pbuffer, uint32_t *pbuffer1, uint16_t buffer_length)
compares two buffers. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1 channel1 handler. More...
int | main (void)
main function. More...

Variables

const uint32_t | src_const_buffer [32]
uint32_t | dst_buffer [32]
gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
__IO uint32_t | data_counter_end = 0x01
error_status transfer_status = ERROR

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 32

Definition at line 37 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | const uint32_t * | pbuffer,
 |  | uint32_t * | pbuffer1,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer,pbuffer1 | buffers to be compared.
buffer_length | buffer's length
Return values
SUCCESS pbuffer identical to pbuffer1 ERROR: pbuffer differs from pbuffer1

Definition at line 76 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ DMA1_Channel1_IRQHandler()

void DMA1_Channel1_IRQHandler ( void )

this function handles dma1 channel1 handler.

Parameters
none
Return values
none

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 60 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< dma full data transfer interrupt

Definition at line 97 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.

Variable Documentation

◆ data_counter_end

__IO uint32_t data_counter_end = 0x01

Definition at line 50 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

Referenced by DMA1_Channel1_IRQHandler(), and main().

◆ dma_init_struct

dma_init_type dma_init_struct = {0}

Definition at line 49 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

Referenced by main().

◆ dst_buffer

uint32_t dst_buffer[32]

Definition at line 47 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 48 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

◆ src_const_buffer

const uint32_t src_const_buffer[32]
Initial value:
= {0x01020304, 0x05060708, 0x090A0B0C, 0x0D0E0F10,
0x11121314, 0x15161718, 0x191A1B1C, 0x1D1E1F20,
0x21222324, 0x25262728, 0x292A2B2C, 0x2D2E2F30,
0x31323334, 0x35363738, 0x393A3B3C, 0x3D3E3F40,
0x41424344, 0x45464748, 0x494A4B4C, 0x4D4E4F50,
0x51525354, 0x55565758, 0x595A5B5C, 0x5D5E5F60,
0x61626364, 0x65666768, 0x696A6B6C, 0x6D6E6F70,
0x71727374, 0x75767778, 0x797A7B7C, 0x7D7E7F80}

Definition at line 39 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

Referenced by main().

◆ transfer_status

error_status transfer_status = ERROR

Definition at line 51 of file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: EXINT_config

Functions
EXINT_config
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | exint_line0_config (void)
exint line0 config. configure pa0 in interrupt mode More...
int | main (void)
main function. More...
void | EXINT0_IRQHandler (void)
exint0 interrupt handler More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ EXINT0_IRQHandler()

void EXINT0_IRQHandler ( void )

exint0 interrupt handler

Parameters
none
Return values
none

< external interrupt line 0

< external interrupt line 0

Definition at line 94 of file project/at_start_f403/examples/exint/exint_config/src/main.c.

◆ exint_line0_config()

void exint_line0_config ( void )

exint line0 config. configure pa0 in interrupt mode

Parameters
None
Return values
None

< external interrupt line 0

Definition at line 69 of file project/at_start_f403/examples/exint/exint_config/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 45 of file project/at_start_f403/examples/exint/exint_config/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.


AT32F403 Firmwary Library: EXINT_software_trigger

Functions
EXINT_software_trigger
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | exint_line4_config (void)
exint line4 config. configure pa0 in interrupt mode More...
static void | tmr1_config (void)
tmr1 configuration. More...
void | TMR1_OVF_TMR10_IRQHandler (void)
tmr1 interrupt handler More...
void | EXINT4_IRQHandler (void)
exint4 interrupt handler More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ EXINT4_IRQHandler()

void EXINT4_IRQHandler ( void )

exint4 interrupt handler

Parameters
none
Return values
none

< external interrupt line 4

< external interrupt line 4

Definition at line 104 of file project/at_start_f403/examples/exint/exint_software_trigger/src/main.c.

◆ exint_line4_config()

void exint_line4_config ( void )

exint line4 config. configure pa0 in interrupt mode

Parameters
None
Return values
None

< external interrupt line 4

Definition at line 46 of file project/at_start_f403/examples/exint/exint_software_trigger/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 119 of file project/at_start_f403/examples/exint/exint_software_trigger/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.

◆ tmr1_config()

static void tmr1_config ( void )
static

tmr1 configuration.

Parameters
none
Return values
none

< tmr interrupt overflow

Definition at line 67 of file project/at_start_f403/examples/exint/exint_software_trigger/src/main.c.

Referenced by main().

◆ TMR1_OVF_TMR10_IRQHandler()

void TMR1_OVF_TMR10_IRQHandler ( void )

tmr1 interrupt handler

Parameters
none
Return values
none

< tmr flag overflow

< external interrupt line 4

< tmr flag overflow

Definition at line 89 of file project/at_start_f403/examples/exint/exint_software_trigger/src/main.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.


AT32F403 Firmwary Library: FLASH_fap_enable

Functions
FLASH_fap_enable
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< flash common operation timeout

< flash bank1 program error flag

< flash program error flag

< flash bank1 erase/program protection error flag

< flash erase/program protection error flag

Definition at line 41 of file project/at_start_f403/examples/flash/fap_enable/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.


AT32F403 Firmwary Library: FLASH_write_read

Modules | Macros | Functions | Variables
FLASH_write_read
AT32F403_periph_examples

Modules

FLASH_write_read_functions

Macros

#define | SECTOR_SIZE 2048 /* this parameter depends on the specific model of the chip */
#define | TEST_BUFEER_SIZE 3000
#define | TEST_FLASH_ADDRESS_START (0x08000000 + 1024 * 10)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | flash_read (uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
read data using halfword mode More...
error_status | flash_write_nocheck (uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode without checking More...
error_status | flash_write (uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode with checking More...
int | main (void)
main function. More...

Variables

uint16_t | flash_buf [2048/2]
uint16_t | buffer_write [3000]
uint16_t | buffer_read [3000]

Detailed Description

Macro Definition Documentation

◆ SECTOR_SIZE

#define SECTOR_SIZE 2048 /* this parameter depends on the specific model of the chip */

Definition at line 36 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

◆ TEST_BUFEER_SIZE

#define TEST_BUFEER_SIZE 3000

Definition at line 37 of file project/at_start_f403/examples/flash/flash_write_read/src/main.c.

◆ TEST_FLASH_ADDRESS_START

#define TEST_FLASH_ADDRESS_START (0x08000000 + 1024 * 10)

Definition at line 38 of file project/at_start_f403/examples/flash/flash_write_read/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ flash_read()

void flash_read | ( | uint32_t | read_addr,
 |  | uint16_t * | p_buffer,
 |  | uint16_t | num_read
 | ) |  |

read data using halfword mode

Parameters
read_addr | the address of reading
p_buffer | the buffer of reading data
num_read | the number of reading data
Return values
none

Definition at line 47 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

Referenced by flash_write(), and main().

◆ flash_write()

error_status flash_write | ( | uint32_t | write_addr,
 |  | uint16_t * | p_buffer,
 |  | uint16_t | num_write
 | ) |  |

write data using halfword mode with checking

Parameters
write_addr | the address of writing
p_buffer | the buffer of writing data
num_write | the number of writing data
Return values
result

Definition at line 85 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

Referenced by main().

◆ flash_write_nocheck()

error_status flash_write_nocheck | ( | uint32_t | write_addr,
 |  | uint16_t * | p_buffer,
 |  | uint16_t | num_write
 | ) |  |

write data using halfword mode without checking

Parameters
write_addr | the address of writing
p_buffer | the buffer of writing data
num_write | the number of writing data
Return values
result

Definition at line 64 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

Referenced by flash_write().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 71 of file project/at_start_f403/examples/flash/flash_write_read/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.

Variable Documentation

◆ buffer_read

uint16_t buffer_read[3000]

Definition at line 41 of file project/at_start_f403/examples/flash/flash_write_read/src/main.c.

Referenced by main().

◆ buffer_write

uint16_t buffer_write[3000]

Definition at line 40 of file project/at_start_f403/examples/flash/flash_write_read/src/main.c.

Referenced by main().

◆ flash_buf

uint16_t flash_buf[2048/2]

Definition at line 38 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

Referenced by flash_write().


AT32F403 Firmwary Library: FLASH_write_read_functions

Functions
FLASH_write_read_functions
AT32F403_periph_examples » FLASH_write_read

Functions

void | flash_read (uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
read data using halfword mode More...
error_status | flash_write_nocheck (uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode without checking More...
error_status | flash_write (uint32_t write_addr, uint16_t *p_Buffer, uint16_t num_write)
write data using halfword mode with checking More...

Detailed Description

Function Documentation

◆ flash_read()

void flash_read | ( | uint32_t | read_addr,
 |  | uint16_t * | p_buffer,
 |  | uint16_t | num_read
 | ) |  |

read data using halfword mode

Parameters
read_addr | the address of reading
p_buffer | the buffer of reading data
num_read | the number of reading data
Return values
none

Definition at line 47 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

Referenced by flash_write(), and main().

◆ flash_write()

error_status flash_write | ( | uint32_t | write_addr,
 |  | uint16_t * | p_buffer,
 |  | uint16_t | num_write
 | ) |  |

write data using halfword mode with checking

Parameters
write_addr | the address of writing
p_buffer | the buffer of writing data
num_write | the number of writing data
Return values
result

Definition at line 85 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

Referenced by main().

◆ flash_write_nocheck()

error_status flash_write_nocheck | ( | uint32_t | write_addr,
 |  | uint16_t * | p_buffer,
 |  | uint16_t | num_write
 | ) |  |

write data using halfword mode without checking

Parameters
write_addr | the address of writing
p_buffer | the buffer of writing data
num_write | the number of writing data
Return values
result

Definition at line 64 of file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.

Referenced by flash_write().


AT32F403 Firmwary Library: FLASH_operate_spim

Modules | Macros | Functions | Variables
FLASH_operate_spim
AT32F403_periph_examples

Modules

FLASH_operate_spim_functions

Macros

#define | SPIM_SECTOR_SIZE 4096
#define | SPIM_TEST_ADDR 0x08400000

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...
void | spim_init (void)
init the spim flash More...
void | sector_read (uint32_t address, uint32_t sector_size, uint8_t *buf)
read one sector from a specified address in spim flash More...
void | spim_operate (void)
operate spim flash More...

Variables

uint8_t | write_buffer [4096]
uint8_t | read_buffer [4096]

Detailed Description

Macro Definition Documentation

◆ SPIM_SECTOR_SIZE

#define SPIM_SECTOR_SIZE 4096

Definition at line 41 of file operate_spim.h.

◆ SPIM_TEST_ADDR

#define SPIM_TEST_ADDR 0x08400000

Definition at line 42 of file operate_spim.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/flash/operate_spim/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ sector_read()

void sector_read | ( | uint32_t | address,
 |  | uint32_t | sector_size,
 |  | uint8_t * | buf
 | ) |  |

read one sector from a specified address in spim flash

Parameters
address | specifies the sector starting address
sector_size | sector size in bytes
buf | the content read from spim flash
Return values
none

Definition at line 91 of file operate_spim.c.

Referenced by spim_operate().

◆ spim_init()

void spim_init ( void )

init the spim flash

Parameters
none
Return values
none

Definition at line 47 of file operate_spim.c.

Referenced by spim_operate().

◆ spim_operate()

void spim_operate ( void )

operate spim flash

Parameters
none
Return values
none

Definition at line 107 of file operate_spim.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.

Variable Documentation

◆ read_buffer

uint8_t read_buffer[4096]

Definition at line 40 of file operate_spim.c.

Referenced by spim_operate().

◆ write_buffer

uint8_t write_buffer[4096]

Definition at line 39 of file operate_spim.c.

Referenced by spim_operate().


AT32F403 Firmwary Library: FLASH_operate_spim_functions

Functions
FLASH_operate_spim_functions
AT32F403_periph_examples » FLASH_operate_spim

Functions

void spim_operate (void)
operate spim flash More...

Detailed Description

Function Documentation

◆ spim_operate()

void spim_operate ( void )

operate spim flash

Parameters
none
Return values
none

Definition at line 107 of file operate_spim.c.

Referenced by main().


AT32F403 Firmwary Library: FLASH_run_in_spim

Functions
FLASH_run_in_spim
AT32F403_periph_examples

Functions

void | spim_run (void)
check the led toggle in spim More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | spim_init (void)
init the spim flash More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 85 of file project/at_start_f403/examples/flash/run_in_spim/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ spim_init()

void spim_init ( void )

init the spim flash

Parameters
none
Return values
none

< gpio pins number 8

< gpio pins number 11

< gpio pins number 12

< gpio pins number 1

< gpio pins number 6

< gpio pins number 7

< enable external spi-flash interface

< flash spim operate busy flag

Definition at line 43 of file project/at_start_f403/examples/flash/run_in_spim/src/main.c.

Referenced by main().

◆ spim_run()

void spim_run ( void )

check the led toggle in spim

Parameters
none
Return values
none

Definition at line 43 of file run_in_spim.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.


AT32F403 Firmwary Library: GPIO_io_toggle

Functions
GPIO_io_toggle
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | gpio_config (void)
pa.01 gpio configuration. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )

pa.01 gpio configuration.

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 1

Definition at line 42 of file project/at_start_f403/examples/gpio/io_toggle/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

< gpio pins number 1

Definition at line 66 of file project/at_start_f403/examples/gpio/io_toggle/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: GPIO_led_toggle

Functions
GPIO_led_toggle
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/gpio/led_toggle/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: GPIO_swjtag_remap

Functions
GPIO_swjtag_remap
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | swj_dp_config (void)
configure the gpio of swj-dp. More...
void | gpio_pins_toggle (gpio_type *gpio_x, uint16_t gpio_pin)
toggles the specified gpio pin More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ gpio_pins_toggle()

void gpio_pins_toggle | ( | gpio_type * | gpio_x,
 |  | uint16_t | gpio_pin
 | ) |  |

toggles the specified gpio pin

Parameters
gpiox | where x can be (a..g depending on device used) to select the gpio peripheral
gpio_pin | specifies the pins to be toggled.
Return values
none

Definition at line 68 of file project/at_start_f403/examples/gpio/swjtag_remap/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< full swj disabled (jtag-dp + sw-dp)

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

< gpio pins number 3

< gpio pins number 4

Definition at line 78 of file project/at_start_f403/examples/gpio/swjtag_remap/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ swj_dp_config()

void swj_dp_config ( void )

configure the gpio of swj-dp.

Parameters
none
Return values
none

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

< gpio pins number 3

< gpio pins number 4

Definition at line 45 of file project/at_start_f403/examples/gpio/swjtag_remap/src/main.c.

Referenced by main().

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.


AT32F403 Firmwary Library: I2C_communication_dma

Macros | Functions | Variables
I2C_communication_dma
AT32F403_periph_examples

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_6
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_7
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK
#define | I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL6
#define | I2Cx_DMA_TX_IRQn DMA1_Channel6_IRQn
#define | I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL7
#define | I2Cx_DMA_RX_IRQn DMA1_Channel7_IRQn
#define | I2Cx_EVT_IRQn I2C1_EVT_IRQn
#define | I2Cx_ERR_IRQn I2C1_ERR_IRQn
#define | BUF_SIZE 8
#define | MASTER_BOARD

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel7_IRQHandler (void)
this function handles dma interrupt request. More...
void | DMA1_Channel6_IRQHandler (void)
this function handles dma interrupt request. More...
void | I2C1_EVT_IRQHandler (void)
this function handles i2c event interrupt request. More...
void | I2C1_ERR_IRQHandler (void)
this function handles i2c error interrupt request. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | error_handler (uint32_t error_code)
error handler program More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | rx_buf [8] = {0}
i2c_handle_type hi2cx

Detailed Description

Macro Definition Documentation

◆ BUF_SIZE

#define BUF_SIZE 8

Definition at line 63 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2C_TIMEOUT

#define I2C_TIMEOUT 0xFFFFFFFF

Definition at line 37 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_ADDRESS

#define I2Cx_ADDRESS 0xA0

Definition at line 40 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_CLK

#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK

Definition at line 43 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_DMA_CLK

#define I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK

Definition at line 53 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_DMA_RX_CHANNEL

#define I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL7

Definition at line 57 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_DMA_RX_IRQn

#define I2Cx_DMA_RX_IRQn DMA1_Channel7_IRQn

Definition at line 58 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_DMA_TX_CHANNEL

#define I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL6

Definition at line 54 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_DMA_TX_IRQn

#define I2Cx_DMA_TX_IRQn DMA1_Channel6_IRQn

Definition at line 55 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_ERR_IRQn

#define I2Cx_ERR_IRQn I2C1_ERR_IRQn

Definition at line 61 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_EVT_IRQn

#define I2Cx_EVT_IRQn I2C1_EVT_IRQn

Definition at line 60 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_PORT

#define I2Cx_PORT I2C1

Definition at line 42 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_SCL_GPIO_CLK

#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 47 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_SCL_GPIO_PORT

#define I2Cx_SCL_GPIO_PORT GPIOB

Definition at line 46 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_SCL_PIN

#define I2Cx_SCL_PIN GPIO_PINS_6

Definition at line 45 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_SDA_GPIO_CLK

#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 51 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_SDA_GPIO_PORT

#define I2Cx_SDA_GPIO_PORT GPIOB

Definition at line 50 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_SDA_PIN

#define I2Cx_SDA_PIN GPIO_PINS_7

Definition at line 49 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ I2Cx_SPEED

#define I2Cx_SPEED 100000

Definition at line 39 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ MASTER_BOARD

#define MASTER_BOARD

Definition at line 64 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 84 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 119 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ DMA1_Channel6_IRQHandler()

void DMA1_Channel6_IRQHandler ( void )

this function handles dma interrupt request.

Parameters
none
Return values
none

Definition at line 156 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ DMA1_Channel7_IRQHandler()

void DMA1_Channel7_IRQHandler ( void )

this function handles dma interrupt request.

Parameters
none
Return values
none

Definition at line 146 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ error_handler()

void error_handler ( uint32_t error_code )

error handler program

Parameters
i2c_status
Return values
none

Definition at line 79 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 58 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ I2C1_ERR_IRQHandler()

void I2C1_ERR_IRQHandler ( void )

this function handles i2c error interrupt request.

Parameters
none
Return values
none

Definition at line 176 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ I2C1_EVT_IRQHandler()

void I2C1_EVT_IRQHandler ( void )

this function handles i2c event interrupt request.

Parameters
none
Return values
none

Definition at line 166 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

Definition at line 115 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 182 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 71 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 49 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 128 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 110 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 137 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 97 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

Variable Documentation

◆ hi2cx

i2c_handle_type hi2cx

Definition at line 69 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

Referenced by main().

◆ rx_buf

uint8_t rx_buf[8] = {0}

Definition at line 67 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

Referenced by main().

◆ tx_buf

uint8_t tx_buf[8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}

Definition at line 66 of file project/at_start_f403/examples/i2c/communication_dma/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: I2C_communication_int

Macros | Functions | Variables
I2C_communication_int
AT32F403_periph_examples

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_6
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_7
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_EVT_IRQn I2C1_EVT_IRQn
#define | I2Cx_ERR_IRQn I2C1_ERR_IRQn
#define | BUF_SIZE 8
#define | MASTER_BOARD

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | I2C1_EVT_IRQHandler (void)
this function handles i2c event interrupt request. More...
void | I2C1_ERR_IRQHandler (void)
this function handles i2c error interrupt request. More...
uint32_t | buffer_compare (uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal. More...
void | error_handler (uint32_t error_code)
error handler program More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | rx_buf [8] = {0}
i2c_handle_type hi2cx

Detailed Description

Macro Definition Documentation

◆ BUF_SIZE

#define BUF_SIZE 8

Definition at line 56 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2C_TIMEOUT

#define I2C_TIMEOUT 0xFFFFFFFF

Definition at line 37 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_ADDRESS

#define I2Cx_ADDRESS 0xA0

Definition at line 40 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_CLK

#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK

Definition at line 43 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_ERR_IRQn

#define I2Cx_ERR_IRQn I2C1_ERR_IRQn

Definition at line 54 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_EVT_IRQn

#define I2Cx_EVT_IRQn I2C1_EVT_IRQn

Definition at line 53 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_PORT

#define I2Cx_PORT I2C1

Definition at line 42 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_SCL_GPIO_CLK

#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 47 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_SCL_GPIO_PORT

#define I2Cx_SCL_GPIO_PORT GPIOB

Definition at line 46 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_SCL_PIN

#define I2Cx_SCL_PIN GPIO_PINS_6

Definition at line 45 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_SDA_GPIO_CLK

#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 51 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_SDA_GPIO_PORT

#define I2Cx_SDA_GPIO_PORT GPIOB

Definition at line 50 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_SDA_PIN

#define I2Cx_SDA_PIN GPIO_PINS_7

Definition at line 49 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ I2Cx_SPEED

#define I2Cx_SPEED 100000

Definition at line 39 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ MASTER_BOARD

#define MASTER_BOARD

Definition at line 57 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

Function Documentation

◆ buffer_compare()

uint32_t buffer_compare | ( | uint8_t * | buffer1,
 |  | uint8_t * | buffer2,
 |  | uint32_t | len
 | ) |  |

compare whether the valus of buffer 1 and buffer 2 are equal.

Parameters
buffer1 buffer 1 address. buffer2: buffer 2 address.
Return values
0 equal. 1: unequal.

Definition at line 89 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 82 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 117 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ error_handler()

void error_handler ( uint32_t error_code )

error handler program

Parameters
i2c_status
Return values
none

Definition at line 73 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 56 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ I2C1_ERR_IRQHandler()

void I2C1_ERR_IRQHandler ( void )

this function handles i2c error interrupt request.

Parameters
none
Return values
none

Definition at line 154 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ I2C1_EVT_IRQHandler()

void I2C1_EVT_IRQHandler ( void )

this function handles i2c event interrupt request.

Parameters
none
Return values
none

Definition at line 144 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

Definition at line 109 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 149 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 69 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 47 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 126 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 108 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 135 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 95 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

Variable Documentation

◆ hi2cx

i2c_handle_type hi2cx

Definition at line 62 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

Referenced by main().

◆ rx_buf

uint8_t rx_buf[8] = {0}

Definition at line 60 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

Referenced by main().

◆ tx_buf

uint8_t tx_buf[8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_int/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: I2C_communication_poll

Macros | Functions | Variables
I2C_communication_poll
AT32F403_periph_examples

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_6
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_7
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | BUF_SIZE 8
#define | MASTER_BOARD

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | error_handler (uint32_t error_code)
error handler program More...
uint32_t | buffer_compare (uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | rx_buf [8] = {0}
i2c_handle_type hi2cx

Detailed Description

Macro Definition Documentation

◆ BUF_SIZE

#define BUF_SIZE 8

Definition at line 53 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2C_TIMEOUT

#define I2C_TIMEOUT 0xFFFFFFFF

Definition at line 37 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_ADDRESS

#define I2Cx_ADDRESS 0xA0

Definition at line 40 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_CLK

#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK

Definition at line 43 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_PORT

#define I2Cx_PORT I2C1

Definition at line 42 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_SCL_GPIO_CLK

#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 47 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_SCL_GPIO_PORT

#define I2Cx_SCL_GPIO_PORT GPIOB

Definition at line 46 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_SCL_PIN

#define I2Cx_SCL_PIN GPIO_PINS_6

Definition at line 45 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_SDA_GPIO_CLK

#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 51 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_SDA_GPIO_PORT

#define I2Cx_SDA_GPIO_PORT GPIOB

Definition at line 50 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_SDA_PIN

#define I2Cx_SDA_PIN GPIO_PINS_7

Definition at line 49 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ I2Cx_SPEED

#define I2Cx_SPEED 100000

Definition at line 39 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ MASTER_BOARD

#define MASTER_BOARD

Definition at line 54 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

Function Documentation

◆ buffer_compare()

uint32_t buffer_compare | ( | uint8_t * | buffer1,
 |  | uint8_t * | buffer2,
 |  | uint32_t | len
 | ) |  |

compare whether the valus of buffer 1 and buffer 2 are equal.

Parameters
buffer1 buffer 1 address. buffer2: buffer 2 address.
Return values
0 equal. 1: unequal.

Definition at line 86 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ error_handler()

void error_handler ( uint32_t error_code )

error handler program

Parameters
i2c_status
Return values
none

Definition at line 70 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

Definition at line 106 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 142 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.

Variable Documentation

◆ hi2cx

i2c_handle_type hi2cx

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

Referenced by main().

◆ rx_buf

uint8_t rx_buf[8] = {0}

Definition at line 57 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

Referenced by main().

◆ tx_buf

uint8_t tx_buf[8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}

Definition at line 56 of file project/at_start_f403/examples/i2c/communication_poll/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: I2C_eeprom

Macros | Functions | Variables
I2C_eeprom
AT32F403_periph_examples

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C2
#define | I2Cx_CLK CRM_I2C2_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_10
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_11
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK
#define | I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL4
#define | I2Cx_DMA_TX_IRQn DMA1_Channel4_IRQn
#define | I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL5
#define | I2Cx_DMA_RX_IRQn DMA1_Channel5_IRQn
#define | I2Cx_EVT_IRQn I2C2_EVT_IRQn
#define | I2Cx_ERR_IRQn I2C2_ERR_IRQn
#define | BUF_SIZE 8

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel5_IRQHandler (void)
this function handles dma interrupt request. More...
void | DMA1_Channel4_IRQHandler (void)
this function handles dma interrupt request. More...
void | I2C2_EVT_IRQHandler (void)
this function handles i2c event interrupt request. More...
void | I2C2_ERR_IRQHandler (void)
this function handles i2c error interrupt request. More...
void | error_handler (uint32_t error_code)
error handler program More...
uint32_t | buffer_compare (uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf1 [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | tx_buf2 [8] = {0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80}
uint8_t | tx_buf3 [8] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88}
uint8_t | rx_buf1 [8] = {0}
uint8_t | rx_buf2 [8] = {0}
uint8_t | rx_buf3 [8] = {0}
i2c_handle_type hi2cx

Detailed Description

Macro Definition Documentation

◆ BUF_SIZE

#define BUF_SIZE 8

Definition at line 63 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2C_TIMEOUT

#define I2C_TIMEOUT 0xFFFFFFFF

Definition at line 37 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_ADDRESS

#define I2Cx_ADDRESS 0xA0

Definition at line 40 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_CLK

#define I2Cx_CLK CRM_I2C2_PERIPH_CLOCK

Definition at line 43 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_DMA_CLK

#define I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK

Definition at line 53 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_DMA_RX_CHANNEL

#define I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL5

Definition at line 57 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_DMA_RX_IRQn

#define I2Cx_DMA_RX_IRQn DMA1_Channel5_IRQn

Definition at line 58 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_DMA_TX_CHANNEL

#define I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL4

Definition at line 54 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_DMA_TX_IRQn

#define I2Cx_DMA_TX_IRQn DMA1_Channel4_IRQn

Definition at line 55 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_ERR_IRQn

#define I2Cx_ERR_IRQn I2C2_ERR_IRQn

Definition at line 61 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_EVT_IRQn

#define I2Cx_EVT_IRQn I2C2_EVT_IRQn

Definition at line 60 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_PORT

#define I2Cx_PORT I2C2

Definition at line 42 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_SCL_GPIO_CLK

#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 47 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_SCL_GPIO_PORT

#define I2Cx_SCL_GPIO_PORT GPIOB

Definition at line 46 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_SCL_PIN

#define I2Cx_SCL_PIN GPIO_PINS_10

Definition at line 45 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_SDA_GPIO_CLK

#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 51 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_SDA_GPIO_PORT

#define I2Cx_SDA_GPIO_PORT GPIOB

Definition at line 50 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_SDA_PIN

#define I2Cx_SDA_PIN GPIO_PINS_11

Definition at line 49 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ I2Cx_SPEED

#define I2Cx_SPEED 100000

Definition at line 39 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Function Documentation

◆ buffer_compare()

uint32_t buffer_compare | ( | uint8_t * | buffer1,
 |  | uint8_t * | buffer2,
 |  | uint32_t | len
 | ) |  |

compare whether the valus of buffer 1 and buffer 2 are equal.

Parameters
buffer1 buffer 1 address. buffer2: buffer 2 address.
Return values
0 equal. 1: unequal.

Definition at line 99 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 84 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 119 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ DMA1_Channel4_IRQHandler()

void DMA1_Channel4_IRQHandler ( void )

this function handles dma interrupt request.

Parameters
none
Return values
none

Definition at line 156 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ DMA1_Channel5_IRQHandler()

void DMA1_Channel5_IRQHandler ( void )

this function handles dma interrupt request.

Parameters
none
Return values
none

Definition at line 146 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ error_handler()

void error_handler ( uint32_t error_code )

error handler program

Parameters
i2c_status
Return values
none

Definition at line 83 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 58 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ I2C2_ERR_IRQHandler()

void I2C2_ERR_IRQHandler ( void )

this function handles i2c error interrupt request.

Parameters
none
Return values
none

Definition at line 176 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ I2C2_EVT_IRQHandler()

void I2C2_EVT_IRQHandler ( void )

this function handles i2c event interrupt request.

Parameters
none
Return values
none

Definition at line 166 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 10

< gpio pins number 11

Definition at line 119 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 186 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 71 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 49 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 128 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 110 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 137 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 97 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

Variable Documentation

◆ hi2cx

i2c_handle_type hi2cx

Definition at line 72 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ rx_buf1

uint8_t rx_buf1[8] = {0}

Definition at line 68 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ rx_buf2

uint8_t rx_buf2[8] = {0}

Definition at line 69 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ rx_buf3

uint8_t rx_buf3[8] = {0}

Definition at line 70 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ tx_buf1

uint8_t tx_buf1[8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}

Definition at line 65 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ tx_buf2

uint8_t tx_buf2[8] = {0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80}

Definition at line 66 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().

◆ tx_buf3

uint8_t tx_buf3[8] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88}

Definition at line 67 of file project/at_start_f403/examples/i2c/eeprom/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: I2S_halfduplex_dma

Functions | Variables
I2S_halfduplex_dma
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | i2s_config (void)
i2s configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function. More...
int | main (void)
main function. More...

Variables

uint16_t | i2s1_buffer_tx [32]
uint16_t | i2s2_buffer_rx [32]
volatile error_status | transfer_status = ERROR

Detailed Description

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint16_t * | pbuffer1,
 |  | uint16_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer_compare function.

Parameters
none
Return values
the result of compare

Definition at line 56 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< jtag-dp disabled and sw-dp enabled

< spi1_cs/i2s1_ws(pa15), spi1_sck/i2s1_ck(pb3), spi1_miso(pb4), spi1_mosi/i2s1_sd(pb5), i2s1_mck(pb0)

< gpio pins number 15

< gpio pins number 3

< gpio pins number 5

< gpio pins number 7

< gpio pins number 12

< gpio pins number 13

< gpio pins number 15

Definition at line 128 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ i2s_config()

static void i2s_config ( void )
static

i2s configuration.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.

Referenced by main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< dma1 channel4 full data transfer flag

Definition at line 188 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.

Variable Documentation

◆ i2s1_buffer_tx

uint16_t i2s1_buffer_tx[32]
Initial value:
= {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C,
0x0D0E, 0x0F10, 0x1112, 0x1314, 0x1516, 0x1718,
0x191A, 0x1B1C, 0x1D1E, 0x1F20, 0x2122, 0x2324,
0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C,
0x3D3E, 0x3F40}

Definition at line 38 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.

Referenced by i2s_config(), and main().

◆ i2s2_buffer_rx

uint16_t i2s2_buffer_rx[32]

Definition at line 44 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.

Referenced by i2s_config(), and main().

◆ transfer_status

volatile error_status transfer_status = ERROR

Definition at line 45 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: I2S_halfduplex_interrupt

Functions | Variables
I2S_halfduplex_interrupt
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | SPI2_IRQHandler (void)
This function handles the spi2 interrupt request. More...
void | SPI1_IRQHandler (void)
This function handles the spi1 interrupt request. More...
static void | gpio_config (void)
gpio configuration. More...
static void | i2s_config (i2s_data_channel_format_type format, i2s_audio_sampling_freq_type freq)
i2s configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function. More...
error_status | buffer_compare_24bits (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare_24bits function. More...
int | main (void)
main function. More...

Variables

uint16_t | i2s1_buffer_tx [32]
uint16_t | i2s2_buffer_rx [32]
__IO uint32_t | tx_index = 0
__IO uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR

Detailed Description

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint16_t * | pbuffer1,
 |  | uint16_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer_compare function.

Parameters
none
Return values
the result of compare

Definition at line 57 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ buffer_compare_24bits()

error_status buffer_compare_24bits | ( | uint16_t * | pbuffer1,
 |  | uint16_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer_compare_24bits function.

Parameters
none
Return values
the result of compare

Definition at line 77 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 116 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< jtag-dp disabled and sw-dp enabled

< spi1_cs/i2s1_ws(pa15), spi1_sck/i2s1_ck(pb3), spi1_miso(pb4), spi1_mosi/i2s1_sd(pb5), i2s1_mck(pb0)

< gpio pins number 15

< gpio pins number 3

< gpio pins number 5

< gpio pins number 7

< gpio pins number 12

< gpio pins number 13

< gpio pins number 15

Definition at line 134 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 55 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ i2s_config()

static void i2s_config | ( | i2s_data_channel_format_type | format,
 |  | i2s_audio_sampling_freq_type | freq
 | ) |  |
static

i2s configuration.

Parameters
none
Return values
none

< receive data buffer full interrupt

< transmit data buffer empty interrupt

Definition at line 100 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 194 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 125 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ SPI1_IRQHandler()

void SPI1_IRQHandler ( void )

This function handles the spi1 interrupt request.

Parameters
None
Return values
None

< spi or i2s transmit data buffer empty flag

< transmit data buffer empty interrupt

Definition at line 157 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ SPI2_IRQHandler()

void SPI2_IRQHandler ( void )

This function handles the spi2 interrupt request.

Parameters
None
Return values
None

< spi or i2s receive data buffer full flag

Definition at line 144 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 107 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 134 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 94 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

Variable Documentation

◆ i2s1_buffer_tx

uint16_t i2s1_buffer_tx[32]
Initial value:
= {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C,
0x0D0E, 0x0F10, 0x1112, 0x1314, 0x1516, 0x1718,
0x191A, 0x1B1C, 0x1D1E, 0x1F20, 0x2122, 0x2324,
0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C,
0x3D3E, 0x3F40}

Definition at line 37 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ i2s2_buffer_rx

uint16_t i2s2_buffer_rx[32]

Definition at line 43 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ rx_index

__IO uint32_t rx_index = 0

Definition at line 44 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ transfer_status1

volatile error_status transfer_status1 = ERROR

Definition at line 45 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ transfer_status2

volatile error_status transfer_status2 = ERROR

Definition at line 45 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ tx_index

__IO uint32_t tx_index = 0

Definition at line 44 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: I2S_spii2s_switch_halfduplex_polling

Functions | Variables
I2S_spii2s_switch_halfduplex_polling
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
static void | i2s_config (i2s_operation_mode_type i2s1_mode, i2s_operation_mode_type i2s2_mode)
i2s configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function. More...
int | main (void)
main function. More...

Variables

uint16_t | i2s1_buffer_tx [32]
uint16_t | spi1_buffer_tx [32]
uint16_t | i2s2_buffer_rx [32]
uint16_t | spi2_buffer_rx [32]
__IO uint32_t | tx_index = 0
__IO uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR
volatile error_status | transfer_status3 = ERROR

Detailed Description

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint16_t * | pbuffer1,
 |  | uint16_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer_compare function.

Parameters
none
Return values
the result of compare

Definition at line 66 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< jtag-dp disabled and sw-dp enabled

< spi1_cs/i2s1_ws(pa15), spi1_sck/i2s1_ck(pb3), spi1_miso(pb4), spi1_mosi/i2s1_sd(pb5), i2s1_mck(pb0)

< gpio pins number 15

< gpio pins number 3

< gpio pins number 5

< gpio pins number 7

< gpio pins number 12

< gpio pins number 13

< gpio pins number 15

Definition at line 145 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ i2s_config()

static void i2s_config | ( | i2s_operation_mode_type | i2s1_mode,
 |  | i2s_operation_mode_type | i2s2_mode
 | ) |  |
static

i2s configuration.

Parameters
none
Return values
none

Definition at line 86 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< spi or i2s busy flag

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< spi or i2s busy flag

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< spi or i2s transmit data buffer empty flag

< spi or i2s busy flag

Definition at line 205 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ spi_config()

static void spi_config ( void )
static

spi configuration.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.

Variable Documentation

◆ i2s1_buffer_tx

uint16_t i2s1_buffer_tx[32]
Initial value:
= {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C,
0x0D0E, 0x0F10, 0x1112, 0x1314, 0x1516, 0x1718,
0x191A, 0x1B1C, 0x1D1E, 0x1F20, 0x2122, 0x2324,
0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C,
0x3D3E, 0x3F40
}

Definition at line 37 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main(), and SPI1_IRQHandler().

◆ i2s2_buffer_rx

uint16_t i2s2_buffer_rx[32]

Definition at line 51 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main(), and SPI2_IRQHandler().

◆ rx_index

__IO uint32_t rx_index = 0

Definition at line 53 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ spi1_buffer_tx

uint16_t spi1_buffer_tx[32]
Initial value:
= {0x5152, 0x5354, 0x5556, 0x5758, 0x595A, 0x5B5C,
0x5D5E, 0x5F60, 0x6162, 0x6364, 0x6566, 0x6768,
0x696A, 0x6B6C, 0x6D6E, 0x6F70, 0x7172, 0x7374,
0x7576, 0x7778, 0x797A, 0x7B7C, 0x7D7E, 0x7F80,
0x8182, 0x8384, 0x8586, 0x8788, 0x898A, 0x8B8C,
0x8D8E, 0x8F90
}

Definition at line 44 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ spi2_buffer_rx

uint16_t spi2_buffer_rx[32]

Definition at line 52 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ transfer_status1

volatile error_status transfer_status1 = ERROR

Definition at line 54 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ transfer_status2

volatile error_status transfer_status2 = ERROR

Definition at line 54 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ transfer_status3

volatile error_status transfer_status3 = ERROR

Definition at line 54 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().

◆ tx_index

__IO uint32_t tx_index = 0

Definition at line 53 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: PWC_deepsleep_rtc

Functions
PWC_deepsleep_rtc
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | RTCAlarm_IRQHandler (void)
this function handles the rtc alarm through exint line interrupt request. More...
void | rtc_config (void)
rtc configuration. More...
void | system_clock_recover (void)
systemclock recover. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< rtc time second flag

< rtc time second flag

Definition at line 120 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ rtc_config()

void rtc_config ( void )

rtc configuration.

Parameters
none
Return values
none

< external interrupt line 17 connected to the rtc alarm event

< low speed internal clock stable flag

< rtc time alarm interrupt

Definition at line 41 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c.

Referenced by main().

◆ RTCAlarm_IRQHandler()

void RTCAlarm_IRQHandler ( void )

this function handles the rtc alarm through exint line interrupt request.

Parameters
none
Return values
none

< rtc time alarm flag

< external interrupt line 17 connected to the rtc alarm event

< rtc time alarm flag

Definition at line 141 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ system_clock_recover()

void system_clock_recover ( void )

systemclock recover.

Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 94 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c.

Referenced by main().

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.


AT32F403 Firmwary Library: PWC_power_voltage_monitor

Functions
PWC_power_voltage_monitor
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | PVM_IRQHandler (void)
this function handles the power voltage monitoring output interrupt request. More...
void | pvm_exint_config (void)
power voltage monitor exint configuration. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< external interrupt line 16 connected to the pvm output

< external interrupt line 16 connected to the pvm output

Definition at line 59 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ pvm_exint_config()

void pvm_exint_config ( void )

power voltage monitor exint configuration.

Parameters
none
Return values
none

< external interrupt line 16 connected to the pvm output

Definition at line 42 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c.

Referenced by main().

◆ PVM_IRQHandler()

void PVM_IRQHandler ( void )

this function handles the power voltage monitoring output interrupt request.

Parameters
none
Return values
none

< external interrupt line 16 connected to the pvm output

< external interrupt line 16 connected to the pvm output

Definition at line 141 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.


AT32F403 Firmwary Library: PWC_sleep_tmr2

Functions
PWC_sleep_tmr2
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles the timer interrupt request. More...
void | tmr2_config (void)
tmr2 configuration. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 78 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 65 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 104 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ tmr2_config()

void tmr2_config ( void )

tmr2 configuration.

Parameters
none
Return values
none

< tmr interrupt overflow

Definition at line 42 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c.

Referenced by main().

◆ TMR2_GLOBAL_IRQHandler()

void TMR2_GLOBAL_IRQHandler ( void )

this function handles the timer interrupt request.

Parameters
none
Return values
none

< tmr flag overflow

< tmr flag overflow

Definition at line 140 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 91 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.


AT32F403 Firmwary Library: PWC_sleep_usart1

Functions | Variables
PWC_sleep_usart1
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART1_IRQHandler (void)
this function handles the usatt interrupt request. More...
void | usart1_config (uint32_t baudrate)
usart1 configuration. More...
int | main (void)
main function. More...

Variables

uint16_t usart1_index = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 80 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 115 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 54 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 83 of file project/at_start_f403/examples/pwc/sleep_usart1/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 67 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 45 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 124 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 106 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 133 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 93 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

◆ usart1_config()

void usart1_config ( uint32_t baudrate )

usart1 configuration.

Parameters
none
Return values
none

< gpio pins number 9

< gpio pins number 10

< usart receive data buffer full interrupt

Definition at line 41 of file project/at_start_f403/examples/pwc/sleep_usart1/src/main.c.

Referenced by main().

◆ USART1_IRQHandler()

void USART1_IRQHandler ( void )

this function handles the usatt interrupt request.

Parameters
none
Return values
none

< usart receive data buffer full flag

Definition at line 142 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

Variable Documentation

◆ usart1_index

uint16_t usart1_index = 0

Definition at line 39 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.

Referenced by USART1_IRQHandler().


AT32F403 Firmwary Library: PWC_standby_rtc

Functions
PWC_standby_rtc
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | rtc_config (void)
rtc configuration. More...
void | rtc_alarm_config (uint8_t alarm_time)
rtc alarm set. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< standby flag

< standby flag

< wakeup flag

< wakeup flag

Definition at line 97 of file project/at_start_f403/examples/pwc/standby_rtc/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ rtc_alarm_config()

void rtc_alarm_config ( uint8_t alarm_time )

rtc alarm set.

Parameters
none
Return values
none

< rtc time second flag

< rtc time second flag

Definition at line 77 of file project/at_start_f403/examples/pwc/standby_rtc/src/main.c.

Referenced by main().

◆ rtc_config()

void rtc_config ( void )

rtc configuration.

Parameters
none
Return values
none

< low speed internal clock stable flag

Definition at line 42 of file project/at_start_f403/examples/pwc/standby_rtc/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.


AT32F403 Firmwary Library: PWC_standby_wakeup_pin

Functions
PWC_standby_wakeup_pin
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< standby flag

< standby flag

< wakeup flag

< wakeup flag

< standby wake-up pin1(pa0)

Definition at line 41 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.


AT32F403 Firmwary Library: RTC_calendar

Modules | Functions | Variables
RTC_calendar
AT32F403_periph_examples

Modules

RTC_calendar_type
RTC_calendar_exported_functions

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | RTC_IRQHandler (void)
this function handles rtc handler. More...
void | alarm_init (void)
init alarm. More...
int | main (void)
main function. More...
uint8_t | rtc_init (calendar_type *calendar)
rtc peripheral initialization. More...
uint8_t | is_leap_year (uint16_t year)
judeg the leap year or common year. More...
uint8_t | rtc_time_set (calendar_type *calendar)
set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
uint8_t | rtc_alarm_clock_set (calendar_type *calendar)
set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
uint8_t | rtc_week_get (uint16_t year, uint8_t month, uint8_t day)
get current week by input leap year\mouth\day. More...
void | rtc_time_get (void)
get current time. More...

Variables

calendar_type calendar
char const | weekday_table [7][10] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}
calendar_type calendar
const uint8_t | table_week [12] = {0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5}
const uint8_t | mon_table [12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}

Detailed Description

Function Documentation

◆ alarm_init()

void alarm_init ( void )

init alarm.

Parameters
none
Return values
none

< rtc time alarm flag

< rtc time alarm interrupt

Definition at line 44 of file project/at_start_f403/examples/rtc/calendar/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ is_leap_year()

uint8_t is_leap_year ( uint16_t year )

judeg the leap year or common year.

  • month 1 2 3 4 5 6 7 8 9 10 11 12
  • leap year 31 29 31 30 31 30 31 31 30 31 30 31
  • common year 31 28 31 30 31 30 31 31 30 31 30 31
    Parameters
    year
    Return values
    1 leap year 2: common year

Definition at line 115 of file rtc.c.

Referenced by rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< rtc time second flag

< rtc time second flag

Definition at line 80 of file project/at_start_f403/examples/rtc/calendar/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ rtc_alarm_clock_set()

uint8_t rtc_alarm_clock_set ( calendar_type * calendar )

set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099

Parameters
calendar
Return values
0 set alarm right. 1: set alarm failed.

Definition at line 215 of file rtc.c.

Referenced by alarm_init().

◆ rtc_init()

uint8_t rtc_init ( calendar_type * calendar )

rtc peripheral initialization.

Parameters
calendar
Return values
0 rtc already init 1: rtc init

Definition at line 49 of file rtc.c.

Referenced by main().

◆ RTC_IRQHandler()

void RTC_IRQHandler ( void )

this function handles rtc handler.

Parameters
none
Return values
none

< rtc time alarm flag

< rtc time alarm flag

Definition at line 140 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ rtc_time_get()

void rtc_time_get ( void )

get current time.

Parameters
none.
Return values
none.

Definition at line 307 of file rtc.c.

Referenced by main().

◆ rtc_time_set()

uint8_t rtc_time_set ( calendar_type * calendar )

set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099

Parameters
calendar
Return values
0 set time right. 1: set time failed.

Definition at line 149 of file rtc.c.

Referenced by rtc_init().

◆ rtc_week_get()

uint8_t rtc_week_get | ( | uint16_t | year,
 |  | uint8_t | month,
 |  | uint8_t | day
 | ) |  |

get current week by input leap year\mouth\day.

Parameters
year | : year
mon | : month
day | : day
Return values
week number.

Definition at line 277 of file rtc.c.

Referenced by rtc_time_get().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.

Variable Documentation

◆ calendar [1/2]

calendar_type calendar
extern

Definition at line 35 of file rtc.c.

Referenced by main(), rtc_alarm_clock_set(), rtc_init(), rtc_time_get(), and rtc_time_set().

◆ calendar [2/2]

calendar_type calendar

Definition at line 35 of file rtc.c.

Referenced by main(), rtc_alarm_clock_set(), rtc_init(), rtc_time_get(), and rtc_time_set().

◆ mon_table

const uint8_t mon_table[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}

Definition at line 41 of file rtc.c.

Referenced by rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

◆ table_week

const uint8_t table_week[12] = {0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5}

Definition at line 38 of file rtc.c.

Referenced by rtc_week_get().

◆ weekday_table

char const weekday_table[7][10] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}

Definition at line 37 of file project/at_start_f403/examples/rtc/calendar/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: RTC_calendar_type

Data Structures
RTC_calendar_type
AT32F403_periph_examples » RTC_calendar

Data Structures

struct calendar_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: calendar_type Struct Reference

Data Fields
calendar_type Struct Reference
AT32F403_periph_examples » RTC_calendar » RTC_calendar_type

#include <rtc.h>

Data Fields

__IO uint16_t | year
__IO uint8_t | month
__IO uint8_t | date
__IO uint8_t | hour
__IO uint8_t | min
__IO uint8_t | sec
__IO uint8_t | week

Detailed Description

Definition at line 46 of file rtc.h.

Field Documentation

◆ date

__IO uint8_t calendar_type::date

specifies the date of calendar.

Definition at line 50 of file rtc.h.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

◆ hour

__IO uint8_t calendar_type::hour

specifies the hours of calendar.

Definition at line 51 of file rtc.h.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

◆ min

__IO uint8_t calendar_type::min

specifies the minutes of calendar.

Definition at line 52 of file rtc.h.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

◆ month

__IO uint8_t calendar_type::month

specifies the months of calendar.

Definition at line 49 of file rtc.h.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

◆ sec

__IO uint8_t calendar_type::sec

specifies the second of calendar.

Definition at line 53 of file rtc.h.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

◆ week

__IO uint8_t calendar_type::week

specifies the weeks of calendar.

Definition at line 54 of file rtc.h.

Referenced by main(), and rtc_time_get().

◆ year

__IO uint16_t calendar_type::year

specifies the years of calendar.

Definition at line 48 of file rtc.h.

Referenced by alarm_init(), main(), rtc_alarm_clock_set(), rtc_time_get(), and rtc_time_set().

The documentation for this struct was generated from the following file:
  • rtc.h


AT32F403 Firmwary Library: RTC_calendar_exported_functions

Functions
RTC_calendar_exported_functions
AT32F403_periph_examples » RTC_calendar

Functions

uint8_t | rtc_init (calendar_type *calendar)
rtc peripheral initialization. More...
uint8_t | rtc_time_set (calendar_type *calendar)
set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
uint8_t | rtc_alarm_clock_set (calendar_type *calendar)
set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
void | rtc_time_get (void)
get current time. More...

Detailed Description

Function Documentation

◆ rtc_alarm_clock_set()

uint8_t rtc_alarm_clock_set ( calendar_type * calendar )

set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099

Parameters
calendar
Return values
0 set alarm right. 1: set alarm failed.

Definition at line 215 of file rtc.c.

Referenced by alarm_init().

◆ rtc_init()

uint8_t rtc_init ( calendar_type * calendar )

rtc peripheral initialization.

Parameters
calendar
Return values
0 rtc already init 1: rtc init

Definition at line 49 of file rtc.c.

Referenced by main().

◆ rtc_time_get()

void rtc_time_get ( void )

get current time.

Parameters
none.
Return values
none.

Definition at line 307 of file rtc.c.

Referenced by main().

◆ rtc_time_set()

uint8_t rtc_time_set ( calendar_type * calendar )

set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099

Parameters
calendar
Return values
0 set time right. 1: set time failed.

Definition at line 149 of file rtc.c.

Referenced by rtc_init().


AT32F403 Firmwary Library: RTC_lick_calibration

Functions | Variables
RTC_lick_calibration
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | RTC_IRQHandler (void)
this function handles rtc global interrupt request. More...
void | TMR5_GLOBAL_IRQHandler (void)
this function handles tmr5 global interrupt request. More...
void | nvic_configuration (void)
configures the nested vectored interrupt controller. More...
void | rtc_configuration (void)
configures the rtc. More...
uint32_t | incrementvar_operationcomplete (void)
increments operationcomplete variable and return its value before increment operation. More...
uint32_t | getvar_operationcomplete (void)
returns operationcomplete value. More...
void | setvar_periodvalue (uint32_t value)
sets the periodvalue variable with input parameter. More...
int | main (void)
main function. More...

Variables

uint16_t | tmpCC4 [2] = {0, 0}
crm_clocks_freq_type crm_clocks
__IO uint32_t | periodvalue = 0
__IO uint32_t | lickfreq = 0
__IO uint32_t | operationcomplete = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 87 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ getvar_operationcomplete()

uint32_t getvar_operationcomplete ( void )

returns operationcomplete value.

Parameters
none
Return values
operationcomplete value

Definition at line 128 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by TMR5_GLOBAL_IRQHandler().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 61 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ incrementvar_operationcomplete()

uint32_t incrementvar_operationcomplete ( void )

increments operationcomplete variable and return its value before increment operation.

Parameters
none
Return values
operationcomplete value before increment

Definition at line 116 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by TMR5_GLOBAL_IRQHandler().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< lick connected to tmr5_ch4 input capture for calibration

< tmr flag channel 4

< tmr interrupt channel 4

Definition at line 148 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 74 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ nvic_configuration()

static void nvic_configuration ( void )

configures the nested vectored interrupt controller.

configures sdio1 irq channel.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by main().

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ rtc_configuration()

void rtc_configuration ( void )

configures the rtc.

Parameters
none
Return values
none

< low speed internal clock stable flag

< rtc time second interrupt

Definition at line 63 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by main().

◆ RTC_IRQHandler()

void RTC_IRQHandler ( void )

this function handles rtc global interrupt request.

Parameters
none
Return values
none

< rtc time second flag

< rtc time second flag

Definition at line 149 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ setvar_periodvalue()

void setvar_periodvalue ( uint32_t value )

sets the periodvalue variable with input parameter.

Parameters
value value of periodvalue to be set.
Return values
none

Definition at line 138 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by TMR5_GLOBAL_IRQHandler().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 140 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ TMR5_GLOBAL_IRQHandler()

void TMR5_GLOBAL_IRQHandler ( void )

this function handles tmr5 global interrupt request.

Parameters
none
Return values
none

< tmr flag channel 4

< tmr flag channel 4

< tmr interrupt channel 4

Definition at line 168 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 100 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks

crm_clocks_freq_type crm_clocks

Definition at line 36 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by main().

◆ lickfreq

__IO uint32_t lickfreq = 0

Definition at line 38 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by main().

◆ operationcomplete

__IO uint32_t operationcomplete = 0

Definition at line 39 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by getvar_operationcomplete(), incrementvar_operationcomplete(), and main().

◆ periodvalue

__IO uint32_t periodvalue = 0

Definition at line 37 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by main(), and setvar_periodvalue().

◆ tmpCC4

uint16_t tmpCC4[2] = {0, 0}

Definition at line 45 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.

Referenced by TMR5_GLOBAL_IRQHandler().


AT32F403 Firmwary Library: SDIO_sd_mmc_card

Modules | Macros | Functions | Variables
SDIO_sd_mmc_card
AT32F403_periph_examples

Modules

SDIO_sd_mmc_card_instance_definition
SDIO_sd_mmc_card_exported_types
SDIO_sd_mmc_card_command_index_definition
SDIO_sd_mmc_card_paremeters_definition
SDIO_sd_mmc_card_response_definition
SDIO_sd_mmc_card_command_class_definition
SDIO_sd_mmc_card_cmd8_definition
SDIO_sd_mmc_card_mmc_extend_definition
SDIO_sd_mmc_card_interrupt_flags_definition
SDIO_sd_mmc_card_exported_functions

Macros

#define | BLOCK_SIZE (512)
#define | BLOCKS_NUMBER (64)
#define | MULTI_BUFFER_SIZE (BLOCK_SIZE * BLOCKS_NUMBER)
#define | STREAM_BUFFER_SIZE (4096)

Functions

sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clk_div)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sdio_command_data_send (sdio_command_struct_type *sdio_cmd_init_t, sdio_data_struct_type *sdio_data_init_t, uint32_t *buf)
read data from or write data to sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
void | SDIO1_IRQHandler (void)
sdio1 isr. More...
void | SDIO2_IRQHandler (void)
sdio2 isr. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static error_status | sd_single_block_test (void)
sd card single block read/write test. More...
static error_status | sd_multiple_blocks_test (void)
sd card multiple blocks read/write test. More...
static void | sd_test_error (void)
LED2 on off every 300ms for sd test failed. More...
static void | nvic_configuration (void)
configures sdio1 irq channel. More...
static error_status | mmc_stream_test (void)
mmc card data stream read/write test. More...
void | show_card_info (void)
show sd/mmc card info. More...
int | main (void)
main function. More...

Variables

sd_card_info_struct_type sd_card_info
sdio_command_struct_type sdio_command_init_struct
sdio_data_struct_type sdio_data_init_struct
static sd_memory_card_type | card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1
static uint32_t | csd_table [4]
static uint32_t | cid_table [4]
static uint32_t | rca = 0
static sd_data_transfer_mode_type | device_mode = SD_TRANSFER_POLLING_MODE
static uint8_t | stop_flag = 0
volatile sd_error_status_type | transfer_error = SD_OK
volatile uint8_t | transfer_end = 0
sd_card_info_struct_type sd_card_info
static uint8_t | sblock_tbuffer [(512)]
static uint8_t | sblock_rbuffer [(512)]
static uint8_t | mblock_tbuffer [((512) *(64))]
static uint8_t | mblock_rbuffer [((512) *(64))]
static uint8_t | stream_tbuffer [(4096)]
static uint8_t | stream_rbuffer [(4096)]

Detailed Description

Macro Definition Documentation

◆ BLOCK_SIZE

#define BLOCK_SIZE (512)

Definition at line 39 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

◆ BLOCKS_NUMBER

#define BLOCKS_NUMBER (64)

Definition at line 40 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

◆ MULTI_BUFFER_SIZE

#define MULTI_BUFFER_SIZE (BLOCK_SIZE * BLOCKS_NUMBER)

Definition at line 41 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

◆ STREAM_BUFFER_SIZE

#define STREAM_BUFFER_SIZE (4096)

Definition at line 42 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 271 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ mmc_stream_read()

sd_error_status_type mmc_stream_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

read mmc card data stream.

Parameters
buf | buffer of saving data from mmc card
addr | start address of data from mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1644 of file sd_mmc_card/src/at32_sdio.c.

◆ mmc_stream_test()

static error_status mmc_stream_test ( void )
static

mmc card data stream read/write test.

Parameters
none
Return values
ERROR fail. SUCCESS: success.

Definition at line 155 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by main().

◆ mmc_stream_write()

sd_error_status_type mmc_stream_write | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

write mmc card data stream.

Parameters
buf | data that writing to mmc card
addr | start address mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1691 of file sd_mmc_card/src/at32_sdio.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ nvic_configuration()

static void nvic_configuration ( void )
static

configures sdio1 irq channel.

Parameters
none
Return values
none

Definition at line 236 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by main().

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ sd_block_read()

sd_error_status_type sd_block_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1179 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_block_write()

sd_error_status_type sd_block_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1358 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_blocks_erase()

sd_error_status_type sd_blocks_erase | ( | long long | addr,
 |  | uint32_t | nblks
 | ) |  |

erase continuous data block

Parameters
addr | starting address
nblks | amount of erasing data block
Return values
sd_error_status_type sd card error code.

Definition at line 1021 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_card_info_get()

sd_error_status_type sd_card_info_get ( sd_card_info_struct_type * card_info )

returns information about specific card.

Parameters
card_info pointer to a sd_card_info_struct_type structure that contains all sd card information.
Return values
sd_error_status_type sd card error code.

Definition at line 523 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_card_init()

sd_error_status_type sd_card_init ( void )

intialises all cards or single card as the case may be card(s) come into standby state.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 408 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_deselect_select()

sd_error_status_type sd_deselect_select ( uint32_t addr )

selects od deselects the corresponding card.

Parameters
addr address of the card to be selected.
Return values
sd_error_status_type sd card error code.

Definition at line 798 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_device_mode_set()

sd_error_status_type sd_device_mode_set ( uint32_t mode )

set sdio work mode.

Parameters
mode parameter as following values:
  • SD_TRANSFER_POLLING_MODE: dma mode.
  • SD_TRANSFER_POLLING_MODE: polling mode.
Return values
sd_error_status_type sd card error code.

Definition at line 777 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_dma_config()

void sd_dma_config | ( | uint32_t * | mbuf,
 |  | uint32_t | buf_size,
 |  | dma_dir_type | dir
 | ) |  |

set dma configuation for sdio

Parameters
mbuf | buffer address
buf_size | transmission data size
dir | dma direction, it is DMA_DIR_MEMORY_TO_PERIPHERAL(writing data) or DMA_DIR_PERIPHERAL_TO_MEMORY(read data)
Return values
none

Definition at line 2697 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sdio_command_data_send().

◆ sd_init()

sd_error_status_type sd_init ( void )

initializes the sd card and put it into standby state (ready for data transfer).

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 70 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sdio_command_data_send().

◆ sd_irq_service()

sd_error_status_type sd_irq_service ( void )

allows to process all the interrupts that are high.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 1780 of file sd_mmc_card/src/at32_sdio.c.

Referenced by SDIO1_IRQHandler(), and SDIO2_IRQHandler().

◆ sd_mult_blocks_read()

sd_error_status_type sd_mult_blocks_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be read.
Return values
sd_error_status_type sd card error code.

Definition at line 1268 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_mult_blocks_write()

sd_error_status_type sd_mult_blocks_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be written.
Return values
sd_error_status_type sd card error code.

Definition at line 1480 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_multiple_blocks_test()

static error_status sd_multiple_blocks_test ( void )
static

sd card multiple blocks read/write test.

Parameters
none
Return values
ERROR fail. SUCCESS: success.

Definition at line 107 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by main().

◆ sd_power_off()

sd_error_status_type sd_power_off ( void )

turns the sdio output signals off.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 394 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_power_on()

sd_error_status_type sd_power_on ( void )

enquires cards about their operating voltage and configures clock controls.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 194 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_single_block_test()

static error_status sd_single_block_test ( void )
static

sd card single block read/write test.

Parameters
none
Return values
ERROR fail. SUCCESS: success.

Definition at line 60 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by main().

◆ sd_state_get()

sd_card_state_type sd_state_get ( void )

returns information about sd card.

Parameters
none.
Return values
sd_card_state_type sd card state code.

Definition at line 2480 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_status_send()

sd_error_status_type sd_status_send ( uint32_t * p_card_status )

read current card status.

Parameters
p_card_status card status.
Return values
sd_error_status_type sd card error code.

Definition at line 2443 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_switch(), sd_block_write(), sd_mult_blocks_write(), and sd_state_get().

◆ sd_test_error()

static void sd_test_error ( void )
static

LED2 on off every 300ms for sd test failed.

Parameters
none
Return values
none

Definition at line 223 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by main().

◆ sd_wide_bus_operation_config()

sd_error_status_type sd_wide_bus_operation_config ( sdio_bus_width_type mode )

enable wide bus opeartion for the requeseted card if supported by card.

Parameters
mode specifies the sd card wide bus mode. this parameter can be one of the following values:
  • SDIO_BUS_WIDTH_D8: 8-bit data transfer (only for mmc)
  • SDIO_BUS_WIDTH_D4: 4-bit data transfer
  • SDIO_BUS_WIDTH_D1: 1-bit data transfer
Return values
sd_error_status_type sd card error code.

Definition at line 734 of file sd_mmc_card/src/at32_sdio.c.

◆ SDIO1_IRQHandler()

void SDIO1_IRQHandler ( void )

sdio1 isr.

Parameters
none.
Return values
none.

Definition at line 1760 of file sd_mmc_card/src/at32_sdio.c.

◆ SDIO2_IRQHandler()

void SDIO2_IRQHandler ( void )

sdio2 isr.

Parameters
none.
Return values
none.

Definition at line 1770 of file sd_mmc_card/src/at32_sdio.c.

◆ sdio_clock_set()

void sdio_clock_set ( uint32_t clk_div )

set sdio clock devision factor.

Parameters
clkdiv sdio_ck = ahbclk / (clkdiv+2)
Return values
none

Definition at line 179 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sdio_command_data_send()

sd_error_status_type sdio_command_data_send | ( | sdio_command_struct_type * | sdio_cmd_init_t,
 |  | sdio_data_struct_type * | sdio_data_init_t,
 |  | uint32_t * | buf
 | ) |  |

read data from or write data to sd card.

Parameters
sdio_cmd_init_struct | pointer to sdio_command_struct_type structure.
sdio_data_init_struct | pointer to sdio_data_struct_type structure.
buf | pointer to data buffer read or write.
Return values
sd_error_status_type sd card error code.

Definition at line 821 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), sd_block_read(), sd_block_write(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sd_switch().

◆ show_card_info()

void show_card_info ( void )

show sd/mmc card info.

Parameters
none
Return values
none

Definition at line 247 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.

Variable Documentation

◆ card_type

sd_memory_card_type card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1
static

Definition at line 40 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_card_info_get(), sd_card_init(), sd_init(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_wide_bus_operation_config(), and speed_change().

◆ cid_table

uint32_t cid_table[4]
static

Definition at line 41 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_card_info_get(), and sd_card_init().

◆ csd_table

uint32_t csd_table[4]
static

Definition at line 41 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_card_info_get(), and sd_card_init().

◆ device_mode

sd_data_transfer_mode_type device_mode = SD_TRANSFER_POLLING_MODE
static

Definition at line 42 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_device_mode_set(), and sdio_command_data_send().

◆ mblock_rbuffer

uint8_t mblock_rbuffer[((512) *(64))]
static

Definition at line 45 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by sd_multiple_blocks_test().

◆ mblock_tbuffer

uint8_t mblock_tbuffer[((512) *(64))]
static

Definition at line 45 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by sd_multiple_blocks_test().

◆ rca

uint32_t rca = 0
static

Definition at line 41 of file sd_mmc_card/src/at32_sdio.c.

Referenced by check_card_programming(), sd_card_info_get(), sd_card_init(), sd_mult_blocks_write(), and sd_status_send().

◆ sblock_rbuffer

uint8_t sblock_rbuffer[(512)]
static

Definition at line 44 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by sd_single_block_test().

◆ sblock_tbuffer

uint8_t sblock_tbuffer[(512)]
static

Definition at line 44 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by sd_single_block_test().

◆ sd_card_info [1/2]

sd_card_info_struct_type sd_card_info
extern

Definition at line 46 of file sd_mmc_card/src/at32_sdio.c.

Referenced by disk_ioctl(), main(), and show_card_info().

◆ sd_card_info [2/2]

sd_card_info_struct_type sd_card_info

Definition at line 46 of file sd_mmc_card/src/at32_sdio.c.

Referenced by scr_find(), sd_bus_wide_enable(), sd_init(), and speed_change().

◆ sdio_command_init_struct

sdio_command_struct_type sdio_command_init_struct

Definition at line 37 of file sd_mmc_card/src/at32_sdio.c.

Referenced by check_card_programming(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), and sd_switch().

◆ sdio_data_init_struct

sdio_data_struct_type sdio_data_init_struct

Definition at line 38 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sd_switch().

◆ stop_flag

uint8_t stop_flag = 0
static

Definition at line 43 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), sd_block_read(), sd_block_write(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_switch(), and sdio_command_data_send().

◆ stream_rbuffer

uint8_t stream_rbuffer[(4096)]
static

Definition at line 46 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by mmc_stream_test().

◆ stream_tbuffer

uint8_t stream_tbuffer[(4096)]
static

Definition at line 46 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.

Referenced by mmc_stream_test().

◆ transfer_end

volatile uint8_t transfer_end = 0

Definition at line 45 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_irq_service(), and sdio_command_data_send().

◆ transfer_error

volatile sd_error_status_type transfer_error = SD_OK

Definition at line 44 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_irq_service(), and sdio_command_data_send().


AT32F403 Firmwary Library: SDIO_sd_mmc_card_instance_definition

Macros
SDIO_sd_mmc_card_instance_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define SDIOx SDIO1

Detailed Description

Macro Definition Documentation

◆ SDIOx

#define SDIOx SDIO1

Definition at line 49 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_exported_types

Data Structures | Enumerations
SDIO_sd_mmc_card_exported_types
AT32F403_periph_examples » SDIO_sd_mmc_card

Data Structures

struct | sd_csd_struct_type
struct | sd_cid_struct_type
struct | sd_scr_struct_type
struct | sd_card_info_struct_type

Enumerations

enum sd_data_transfer_mode_type { SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 , SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 }
enum sd_error_status_type {
SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 , SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 ,
SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 , SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 ,
SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 , SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 ,
SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 , SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 ,
SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 , SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 ,
SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 , SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 ,
SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 , SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 ,
SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 , SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 ,
SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR , SD_NOT_CONFIGURED , SD_REQ_PENDING ,
SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER , SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW ,
SD_ERROR , SD_OK = 0 , SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 ,
SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 , SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 ,
SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 , SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 ,
SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 , SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 ,
SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 , SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 ,
SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 , SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 ,
SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 , SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 ,
SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 , SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 ,
SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 , SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR ,
SD_NOT_CONFIGURED , SD_REQ_PENDING , SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER ,
SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW , SD_ERROR , SD_OK = 0
}
enum sd_card_state_type {
SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) , SD_CARD_TRANSFER = ((uint32_t)0x00000004) ,
SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) , SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) ,
SD_CARD_ERROR = ((uint32_t)0x000000FF) , SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) ,
SD_CARD_TRANSFER = ((uint32_t)0x00000004) , SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) ,
SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) , SD_CARD_ERROR = ((uint32_t)0x000000FF)
}
enum sd_memory_card_type {
SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 , SDIO_MULTIMEDIA_CARD = 3 ,
SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 , SDIO_HIGH_CAPACITY_MMC_CARD = 7 ,
SDIO_SDIO_CARD = 8 , SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 ,
SDIO_MULTIMEDIA_CARD = 3 , SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 ,
SDIO_HIGH_CAPACITY_MMC_CARD = 7 , SDIO_SDIO_CARD = 8
}

Detailed Description

Enumeration Type Documentation

◆ sd_card_state_type

enum sd_card_state_type

sd card status

Enumerator
SD_CARD_READY
SD_CARD_IDENTIFICATION
SD_CARD_STANDBY
SD_CARD_TRANSFER
SD_CARD_SENDING
SD_CARD_RECEIVING
SD_CARD_PROGRAMMING
SD_CARD_DISCONNECTED
SD_CARD_ERROR
SD_CARD_READY
SD_CARD_IDENTIFICATION
SD_CARD_STANDBY
SD_CARD_TRANSFER
SD_CARD_SENDING
SD_CARD_RECEIVING
SD_CARD_PROGRAMMING
SD_CARD_DISCONNECTED
SD_CARD_ERROR

Definition at line 184 of file sd_mmc_card/inc/at32_sdio.h.

◆ sd_data_transfer_mode_type

enum sd_data_transfer_mode_type

sdio data transfer mode

Enumerator
SD_TRANSFER_POLLING_MODE
SD_TRANSFER_DMA_MODE
SD_TRANSFER_POLLING_MODE
SD_TRANSFER_DMA_MODE

Definition at line 62 of file sd_mmc_card/inc/at32_sdio.h.

◆ sd_error_status_type

enum sd_error_status_type

sdio error defines

Enumerator
SD_CMD_FAIL | command response received (but crc check error)
SD_DATA_FAIL | data bock sent/received (crc check error)
SD_CMD_RSP_TIMEOUT | command response timeout
SD_DATA_TIMEOUT | data time out
SD_TX_UNDERRUN | transmit fifo under-run
SD_RX_OVERRUN | receive fifo over-run
SD_START_BIT_ERR | start bit not detected on all data signals in wide bus mode
SD_CMD_OUT_OF_RANGE | cmd's argument was out of range.
SD_ADDR_MISALIGNED | misaligned address
SD_BLK_LEN_ERR | transferred block length is not allowed for the card or the number of transferred bytes does not match the block length
SD_ERASE_SEQ_ERR | an error in the sequence of erase command occurs.
SD_INVALID_ERASE_PARAM | an invalid selection for erase groups
SD_WR_PROTECT_VIOLATION | attempt to program a write protect block
SD_LOCK_UNLOCK_ERROR | sequence or password error has been detected in unlock command or if there was an attempt to access a locked card
SD_CMD_CRC_ERROR | crc check of the previous command error
SD_ILLEGAL_CMD | command is not legal for the card state
SD_CARD_ECC_ERROR | card internal ecc was applied but error to correct the data
SD_CARD_CONTROLLER_ERR | internal card controller error
SD_GENERAL_UNKNOWN_ERROR | general or unknown error
SD_STREAM_RD_UNDERRUN | the card could not sustain data transfer in stream read operation.
SD_STREAM_WR_OVERRUN | the card could not sustain data programming in stream mode
SD_CID_CSD_OVERWRITE | cid/csd overwrite error
SD_WP_ERASE_SKIP | only partial address space was erased
SD_CARD_ECC_DISABLED | command has been executed without using internal ecc
SD_ERASE_RESET | erase sequence was cleared before executing because an out of erase sequence command was received
SD_AKE_SEQ_ERROR | error in sequence of authentication.
SD_INVALID_VOLTRANGE | invalid voltage range
SD_ADDR_OUT_OF_RANGE | address out of range
SD_SWITCH_ERROR | switch error
SD_SDIO_DISABLED | sdio disabled
SD_SDIO_FUNC_BUSY | function busy
SD_SDIO_FUNC_ERROR | function error
SD_SDIO_UNKNOWN_FUNC | unknown function
SD_INTERNAL_ERROR | internal error
SD_NOT_CONFIGURED | sdio doesn't configuration
SD_REQ_PENDING | request pending
SD_REQ_NOT_APPLICABLE | request isn't applicable
SD_INVALID_PARAMETER | invalid parameter
SD_UNSUPPORTED_FEATURE | unsupported feature
SD_UNSUPPORTED_HW | unsupported hardware
SD_ERROR | error
SD_OK | pass
SD_CMD_FAIL | command response received (but crc check error)
SD_DATA_FAIL | data bock sent/received (crc check error)
SD_CMD_RSP_TIMEOUT | command response timeout
SD_DATA_TIMEOUT | data time out
SD_TX_UNDERRUN | transmit fifo under-run
SD_RX_OVERRUN | receive fifo over-run
SD_START_BIT_ERR | start bit not detected on all data signals in wide bus mode
SD_CMD_OUT_OF_RANGE | cmd's argument was out of range.
SD_ADDR_MISALIGNED | misaligned address
SD_BLK_LEN_ERR | transferred block length is not allowed for the card or the number of transferred bytes does not match the block length
SD_ERASE_SEQ_ERR | an error in the sequence of erase command occurs.
SD_INVALID_ERASE_PARAM | an invalid selection for erase groups
SD_WR_PROTECT_VIOLATION | attempt to program a write protect block
SD_LOCK_UNLOCK_ERROR | sequence or password error has been detected in unlock command or if there was an attempt to access a locked card
SD_CMD_CRC_ERROR | crc check of the previous command error
SD_ILLEGAL_CMD | command is not legal for the card state
SD_CARD_ECC_ERROR | card internal ecc was applied but error to correct the data
SD_CARD_CONTROLLER_ERR | internal card controller error
SD_GENERAL_UNKNOWN_ERROR | general or unknown error
SD_STREAM_RD_UNDERRUN | the card could not sustain data transfer in stream read operation.
SD_STREAM_WR_OVERRUN | the card could not sustain data programming in stream mode
SD_CID_CSD_OVERWRITE | cid/csd overwrite error
SD_WP_ERASE_SKIP | only partial address space was erased
SD_CARD_ECC_DISABLED | command has been executed without using internal ecc
SD_ERASE_RESET | erase sequence was cleared before executing because an out of erase sequence command was received
SD_AKE_SEQ_ERROR | error in sequence of authentication.
SD_INVALID_VOLTRANGE | invalid voltage range
SD_ADDR_OUT_OF_RANGE | address out of range
SD_SWITCH_ERROR | switch error
SD_SDIO_DISABLED | sdio disabled
SD_SDIO_FUNC_BUSY | function busy
SD_SDIO_FUNC_ERROR | function error
SD_SDIO_UNKNOWN_FUNC | unknown function
SD_INTERNAL_ERROR | internal error
SD_NOT_CONFIGURED | sdio doesn't configuration
SD_REQ_PENDING | request pending
SD_REQ_NOT_APPLICABLE | request isn't applicable
SD_INVALID_PARAMETER | invalid parameter
SD_UNSUPPORTED_FEATURE | unsupported feature
SD_UNSUPPORTED_HW | unsupported hardware
SD_ERROR | error
SD_OK | pass

Definition at line 71 of file sd_mmc_card/inc/at32_sdio.h.

◆ sd_memory_card_type

enum sd_memory_card_type

supported sd memory cards

Enumerator
SDIO_STD_CAPACITY_SD_CARD_V1_1
SDIO_STD_CAPACITY_SD_CARD_V2_0
SDIO_HIGH_CAPACITY_SD_CARD
SDIO_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_CARD
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
SDIO_HIGH_CAPACITY_MMC_CARD
SDIO_SDIO_CARD
SDIO_STD_CAPACITY_SD_CARD_V1_1
SDIO_STD_CAPACITY_SD_CARD_V2_0
SDIO_HIGH_CAPACITY_SD_CARD
SDIO_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_CARD
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
SDIO_HIGH_CAPACITY_MMC_CARD
SDIO_SDIO_CARD

Definition at line 200 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: sd_csd_struct_type Struct Reference

Data Fields
sd_csd_struct_type Struct Reference
AT32F403_periph_examples » SDIO_sd_mmc_card » SDIO_sd_mmc_card_exported_types | AT32F403_periph_examples » SDIO_sdio_fatfs » SDIO_sdio_fatfs_exported_types

#include <at32_sdio.h>

Data Fields

uint8_t | csd_struct
uint8_t | spec_version
uint8_t | reserved1
uint8_t | taac
uint8_t | nsac
uint8_t | max_bus_clk_freq
uint16_t | card_cmd_classes
uint8_t | max_read_blk_length
uint8_t | part_blk_read
uint8_t | write_blk_misalign
uint8_t | read_blk_misalign
uint8_t | dsr_implemented
uint8_t | reserved2
uint32_t | device_size
uint8_t | max_read_current_vdd_min
uint8_t | max_read_current_vdd_max
uint8_t | max_write_current_vdd_min
uint8_t | max_write_current_vdd_max
uint8_t | device_size_mult
uint8_t | erase_group_size
uint8_t | erase_group_size_mult
uint8_t | write_protect_group_size
uint8_t | write_protect_group_enable
uint8_t | manufacturer_default_ecc
uint8_t | write_speed_factor
uint8_t | max_write_blk_length
uint8_t | part_blk_write
uint8_t | reserved3
uint8_t | content_protect_app
uint8_t | file_format_group
uint8_t | copy_flag
uint8_t | permanent_write_protect
uint8_t | temp_write_protect
uint8_t | file_formart
uint8_t | ecc_code
uint8_t | csd_crc
uint8_t | reserved4

Detailed Description

card specific data: csd register

Definition at line 123 of file sd_mmc_card/inc/at32_sdio.h.

Field Documentation

◆ card_cmd_classes

uint16_t sd_csd_struct_type::card_cmd_classes

card command classes

Definition at line 131 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ content_protect_app

uint8_t sd_csd_struct_type::content_protect_app

content protection application

Definition at line 153 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ copy_flag

uint8_t sd_csd_struct_type::copy_flag

copy flag (otp)

Definition at line 155 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ csd_crc

uint8_t sd_csd_struct_type::csd_crc

csd crc

Definition at line 160 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ csd_struct

uint8_t sd_csd_struct_type::csd_struct

csd structure

Definition at line 125 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ device_size

uint32_t sd_csd_struct_type::device_size

device size

Definition at line 138 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get(), and show_card_info().

◆ device_size_mult

uint8_t sd_csd_struct_type::device_size_mult

device size multiplier

Definition at line 143 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ dsr_implemented

uint8_t sd_csd_struct_type::dsr_implemented

dsr implemented

Definition at line 136 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ ecc_code

uint8_t sd_csd_struct_type::ecc_code

ecc code

Definition at line 159 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ erase_group_size

uint8_t sd_csd_struct_type::erase_group_size

erase group size

Definition at line 144 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ erase_group_size_mult

uint8_t sd_csd_struct_type::erase_group_size_mult

erase group size multiplier

Definition at line 145 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ file_formart

uint8_t sd_csd_struct_type::file_formart

file format

Definition at line 158 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ file_format_group

uint8_t sd_csd_struct_type::file_format_group

file format group

Definition at line 154 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ manufacturer_default_ecc

uint8_t sd_csd_struct_type::manufacturer_default_ecc

manufacturer default ecc

Definition at line 148 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ max_bus_clk_freq

uint8_t sd_csd_struct_type::max_bus_clk_freq

max. bus clock frequency

Definition at line 130 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ max_read_blk_length

uint8_t sd_csd_struct_type::max_read_blk_length

max. read data block length

Definition at line 132 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ max_read_current_vdd_max

uint8_t sd_csd_struct_type::max_read_current_vdd_max

max. read current @ vdd max

Definition at line 140 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ max_read_current_vdd_min

uint8_t sd_csd_struct_type::max_read_current_vdd_min

max. read current @ vdd min

Definition at line 139 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ max_write_blk_length

uint8_t sd_csd_struct_type::max_write_blk_length

max. write data block length

Definition at line 150 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ max_write_current_vdd_max

uint8_t sd_csd_struct_type::max_write_current_vdd_max

max. write current @ vdd max

Definition at line 142 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ max_write_current_vdd_min

uint8_t sd_csd_struct_type::max_write_current_vdd_min

max. write current @ vdd min

Definition at line 141 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ nsac

uint8_t sd_csd_struct_type::nsac

data read access-time 2 in clk cycles

Definition at line 129 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ part_blk_read

uint8_t sd_csd_struct_type::part_blk_read

partial blocks for read allowed

Definition at line 133 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ part_blk_write

uint8_t sd_csd_struct_type::part_blk_write

partial blocks for write allowed

Definition at line 151 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ permanent_write_protect

uint8_t sd_csd_struct_type::permanent_write_protect

permanent write protection

Definition at line 156 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ read_blk_misalign

uint8_t sd_csd_struct_type::read_blk_misalign

read block misalignment

Definition at line 135 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ reserved1

uint8_t sd_csd_struct_type::reserved1

reserved

Definition at line 127 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ reserved2

uint8_t sd_csd_struct_type::reserved2

reserved

Definition at line 137 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ reserved3

uint8_t sd_csd_struct_type::reserved3

reserded

Definition at line 152 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ reserved4

uint8_t sd_csd_struct_type::reserved4

always

Definition at line 161 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ spec_version

uint8_t sd_csd_struct_type::spec_version

system specification version

Definition at line 126 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get(), and sd_init().

◆ taac

uint8_t sd_csd_struct_type::taac

data read access-time 1

Definition at line 128 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ temp_write_protect

uint8_t sd_csd_struct_type::temp_write_protect

temporary write protection

Definition at line 157 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ write_blk_misalign

uint8_t sd_csd_struct_type::write_blk_misalign

write block misalignment

Definition at line 134 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ write_protect_group_enable

uint8_t sd_csd_struct_type::write_protect_group_enable

write protect group enable

Definition at line 147 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ write_protect_group_size

uint8_t sd_csd_struct_type::write_protect_group_size

write protect group size

Definition at line 146 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ write_speed_factor

uint8_t sd_csd_struct_type::write_speed_factor

write speed factor

Definition at line 149 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

The documentation for this struct was generated from the following files:
  • sd_mmc_card/inc/at32_sdio.h
  • sdio_fatfs/inc/at32_sdio.h


AT32F403 Firmwary Library: sd_cid_struct_type Struct Reference

Data Fields
sd_cid_struct_type Struct Reference
AT32F403_periph_examples » SDIO_sd_mmc_card » SDIO_sd_mmc_card_exported_types | AT32F403_periph_examples » SDIO_sdio_fatfs » SDIO_sdio_fatfs_exported_types

#include <at32_sdio.h>

Data Fields

uint8_t | manufacturer_id
uint16_t | oem_app_id
uint32_t | product_name1
uint8_t | product_name2
uint8_t | product_reversion
uint32_t | product_sn
uint8_t | reserved1
uint16_t | manufact_date
uint8_t | cid_crc
uint8_t | reserved2

Detailed Description

card identification data: cid register

Definition at line 167 of file sd_mmc_card/inc/at32_sdio.h.

Field Documentation

◆ cid_crc

uint8_t sd_cid_struct_type::cid_crc

cid crc

Definition at line 177 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ manufact_date

uint16_t sd_cid_struct_type::manufact_date

manufacturing date

Definition at line 176 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ manufacturer_id

uint8_t sd_cid_struct_type::manufacturer_id

manufacturer id

Definition at line 169 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get(), and show_card_info().

◆ oem_app_id

uint16_t sd_cid_struct_type::oem_app_id

oem/application id

Definition at line 170 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ product_name1

uint32_t sd_cid_struct_type::product_name1

product name part1

Definition at line 171 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ product_name2

uint8_t sd_cid_struct_type::product_name2

product name part2

Definition at line 172 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ product_reversion

uint8_t sd_cid_struct_type::product_reversion

product revision

Definition at line 173 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ product_sn

uint32_t sd_cid_struct_type::product_sn

product serial number

Definition at line 174 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ reserved1

uint8_t sd_cid_struct_type::reserved1

reserved1

Definition at line 175 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

◆ reserved2

uint8_t sd_cid_struct_type::reserved2

always 1

Definition at line 178 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get().

The documentation for this struct was generated from the following files:
  • sd_mmc_card/inc/at32_sdio.h
  • sdio_fatfs/inc/at32_sdio.h


AT32F403 Firmwary Library: sd_scr_struct_type Struct Reference

Data Fields
sd_scr_struct_type Struct Reference
AT32F403_periph_examples » SDIO_sd_mmc_card » SDIO_sd_mmc_card_exported_types | AT32F403_periph_examples » SDIO_sdio_fatfs » SDIO_sdio_fatfs_exported_types

#include <at32_sdio.h>

Data Fields

uint32_t | sd_spec:4
uint32_t | scr_structure:4
uint32_t | sd_bus_width:4
uint32_t | sd_security:3
uint32_t | data_stat_after_erase:1
uint32_t | reserved1:7
uint32_t | sd_spec3:1
uint32_t | cmd20_support:1
uint32_t | cmd23_support:1
uint32_t | reserverd2:6
uint32_t | reserverd3

Detailed Description

sd card scr information

Definition at line 216 of file sd_mmc_card/inc/at32_sdio.h.

Field Documentation

◆ cmd20_support

uint32_t sd_scr_struct_type::cmd20_support

Definition at line 225 of file sd_mmc_card/inc/at32_sdio.h.

◆ cmd23_support

uint32_t sd_scr_struct_type::cmd23_support

Definition at line 226 of file sd_mmc_card/inc/at32_sdio.h.

◆ data_stat_after_erase

uint32_t sd_scr_struct_type::data_stat_after_erase

Definition at line 222 of file sd_mmc_card/inc/at32_sdio.h.

◆ reserved1

uint32_t sd_scr_struct_type::reserved1

Definition at line 223 of file sd_mmc_card/inc/at32_sdio.h.

◆ reserverd2

uint32_t sd_scr_struct_type::reserverd2

Definition at line 227 of file sd_mmc_card/inc/at32_sdio.h.

◆ reserverd3

uint32_t sd_scr_struct_type::reserverd3

Definition at line 228 of file sd_mmc_card/inc/at32_sdio.h.

◆ scr_structure

uint32_t sd_scr_struct_type::scr_structure

Definition at line 219 of file sd_mmc_card/inc/at32_sdio.h.

◆ sd_bus_width

uint32_t sd_scr_struct_type::sd_bus_width

Definition at line 220 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_bus_wide_enable().

◆ sd_security

uint32_t sd_scr_struct_type::sd_security

Definition at line 221 of file sd_mmc_card/inc/at32_sdio.h.

◆ sd_spec

uint32_t sd_scr_struct_type::sd_spec

Definition at line 218 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by speed_change().

◆ sd_spec3

uint32_t sd_scr_struct_type::sd_spec3

Definition at line 224 of file sd_mmc_card/inc/at32_sdio.h.

The documentation for this struct was generated from the following files:
  • sd_mmc_card/inc/at32_sdio.h
  • sdio_fatfs/inc/at32_sdio.h


AT32F403 Firmwary Library: sd_card_info_struct_type Struct Reference

Data Fields
sd_card_info_struct_type Struct Reference
AT32F403_periph_examples » SDIO_sd_mmc_card » SDIO_sd_mmc_card_exported_types | AT32F403_periph_examples » SDIO_sdio_fatfs » SDIO_sdio_fatfs_exported_types

#include <at32_sdio.h>

Data Fields

sd_csd_struct_type sd_csd_reg
sd_cid_struct_type sd_cid_reg
sd_scr_struct_type sd_scr_reg
long long | card_capacity
uint32_t | card_blk_size
uint16_t | rca
uint8_t | card_type

Detailed Description

sd card information

Definition at line 234 of file sd_mmc_card/inc/at32_sdio.h.

Field Documentation

◆ card_blk_size

uint32_t sd_card_info_struct_type::card_blk_size

Definition at line 240 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by disk_ioctl(), sd_card_info_get(), and show_card_info().

◆ card_capacity

long long sd_card_info_struct_type::card_capacity

Definition at line 239 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by disk_ioctl(), sd_card_info_get(), and show_card_info().

◆ card_type

uint8_t sd_card_info_struct_type::card_type

Definition at line 242 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by main(), sd_card_info_get(), sd_init(), and show_card_info().

◆ rca

uint16_t sd_card_info_struct_type::rca

Definition at line 241 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by scr_find(), sd_bus_wide_enable(), sd_card_info_get(), sd_init(), and show_card_info().

◆ sd_cid_reg

sd_cid_struct_type sd_card_info_struct_type::sd_cid_reg

Definition at line 237 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get(), and show_card_info().

◆ sd_csd_reg

sd_csd_struct_type sd_card_info_struct_type::sd_csd_reg

Definition at line 236 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by sd_card_info_get(), sd_init(), and show_card_info().

◆ sd_scr_reg

sd_scr_struct_type sd_card_info_struct_type::sd_scr_reg

Definition at line 238 of file sd_mmc_card/inc/at32_sdio.h.

Referenced by scr_find(), sd_bus_wide_enable(), and speed_change().

The documentation for this struct was generated from the following files:
  • sd_mmc_card/inc/at32_sdio.h
  • sdio_fatfs/inc/at32_sdio.h


AT32F403 Firmwary Library: SDIO_sdio_fatfs_exported_types

Data Structures | Enumerations
SDIO_sdio_fatfs_exported_types
AT32F403_periph_examples » SDIO_sdio_fatfs

Data Structures

struct | sd_csd_struct_type
struct | sd_cid_struct_type
struct | sd_scr_struct_type
struct | sd_card_info_struct_type

Enumerations

enum sd_data_transfer_mode_type { SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 , SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 }
enum sd_error_status_type {
SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 , SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 ,
SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 , SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 ,
SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 , SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 ,
SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 , SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 ,
SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 , SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 ,
SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 , SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 ,
SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 , SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 ,
SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 , SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 ,
SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR , SD_NOT_CONFIGURED , SD_REQ_PENDING ,
SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER , SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW ,
SD_ERROR , SD_OK = 0 , SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 ,
SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 , SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 ,
SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 , SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 ,
SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 , SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 ,
SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 , SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 ,
SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 , SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 ,
SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 , SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 ,
SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 , SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 ,
SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 , SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR ,
SD_NOT_CONFIGURED , SD_REQ_PENDING , SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER ,
SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW , SD_ERROR , SD_OK = 0
}
enum sd_card_state_type {
SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) , SD_CARD_TRANSFER = ((uint32_t)0x00000004) ,
SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) , SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) ,
SD_CARD_ERROR = ((uint32_t)0x000000FF) , SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) ,
SD_CARD_TRANSFER = ((uint32_t)0x00000004) , SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) ,
SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) , SD_CARD_ERROR = ((uint32_t)0x000000FF)
}
enum sd_memory_card_type {
SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 , SDIO_MULTIMEDIA_CARD = 3 ,
SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 , SDIO_HIGH_CAPACITY_MMC_CARD = 7 ,
SDIO_SDIO_CARD = 8 , SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 ,
SDIO_MULTIMEDIA_CARD = 3 , SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 ,
SDIO_HIGH_CAPACITY_MMC_CARD = 7 , SDIO_SDIO_CARD = 8
}

Detailed Description

Enumeration Type Documentation

◆ sd_card_state_type

enum sd_card_state_type

sd card status

Enumerator
SD_CARD_READY
SD_CARD_IDENTIFICATION
SD_CARD_STANDBY
SD_CARD_TRANSFER
SD_CARD_SENDING
SD_CARD_RECEIVING
SD_CARD_PROGRAMMING
SD_CARD_DISCONNECTED
SD_CARD_ERROR
SD_CARD_READY
SD_CARD_IDENTIFICATION
SD_CARD_STANDBY
SD_CARD_TRANSFER
SD_CARD_SENDING
SD_CARD_RECEIVING
SD_CARD_PROGRAMMING
SD_CARD_DISCONNECTED
SD_CARD_ERROR

Definition at line 184 of file sdio_fatfs/inc/at32_sdio.h.

◆ sd_data_transfer_mode_type

enum sd_data_transfer_mode_type

sdio data transfer mode

Enumerator
SD_TRANSFER_POLLING_MODE
SD_TRANSFER_DMA_MODE
SD_TRANSFER_POLLING_MODE
SD_TRANSFER_DMA_MODE

Definition at line 62 of file sdio_fatfs/inc/at32_sdio.h.

◆ sd_error_status_type

enum sd_error_status_type

sdio error defines

Enumerator
SD_CMD_FAIL | command response received (but crc check error)
SD_DATA_FAIL | data bock sent/received (crc check error)
SD_CMD_RSP_TIMEOUT | command response timeout
SD_DATA_TIMEOUT | data time out
SD_TX_UNDERRUN | transmit fifo under-run
SD_RX_OVERRUN | receive fifo over-run
SD_START_BIT_ERR | start bit not detected on all data signals in wide bus mode
SD_CMD_OUT_OF_RANGE | cmd's argument was out of range.
SD_ADDR_MISALIGNED | misaligned address
SD_BLK_LEN_ERR | transferred block length is not allowed for the card or the number of transferred bytes does not match the block length
SD_ERASE_SEQ_ERR | an error in the sequence of erase command occurs.
SD_INVALID_ERASE_PARAM | an invalid selection for erase groups
SD_WR_PROTECT_VIOLATION | attempt to program a write protect block
SD_LOCK_UNLOCK_ERROR | sequence or password error has been detected in unlock command or if there was an attempt to access a locked card
SD_CMD_CRC_ERROR | crc check of the previous command error
SD_ILLEGAL_CMD | command is not legal for the card state
SD_CARD_ECC_ERROR | card internal ecc was applied but error to correct the data
SD_CARD_CONTROLLER_ERR | internal card controller error
SD_GENERAL_UNKNOWN_ERROR | general or unknown error
SD_STREAM_RD_UNDERRUN | the card could not sustain data transfer in stream read operation.
SD_STREAM_WR_OVERRUN | the card could not sustain data programming in stream mode
SD_CID_CSD_OVERWRITE | cid/csd overwrite error
SD_WP_ERASE_SKIP | only partial address space was erased
SD_CARD_ECC_DISABLED | command has been executed without using internal ecc
SD_ERASE_RESET | erase sequence was cleared before executing because an out of erase sequence command was received
SD_AKE_SEQ_ERROR | error in sequence of authentication.
SD_INVALID_VOLTRANGE | invalid voltage range
SD_ADDR_OUT_OF_RANGE | address out of range
SD_SWITCH_ERROR | switch error
SD_SDIO_DISABLED | sdio disabled
SD_SDIO_FUNC_BUSY | function busy
SD_SDIO_FUNC_ERROR | function error
SD_SDIO_UNKNOWN_FUNC | unknown function
SD_INTERNAL_ERROR | internal error
SD_NOT_CONFIGURED | sdio doesn't configuration
SD_REQ_PENDING | request pending
SD_REQ_NOT_APPLICABLE | request isn't applicable
SD_INVALID_PARAMETER | invalid parameter
SD_UNSUPPORTED_FEATURE | unsupported feature
SD_UNSUPPORTED_HW | unsupported hardware
SD_ERROR | error
SD_OK | pass
SD_CMD_FAIL | command response received (but crc check error)
SD_DATA_FAIL | data bock sent/received (crc check error)
SD_CMD_RSP_TIMEOUT | command response timeout
SD_DATA_TIMEOUT | data time out
SD_TX_UNDERRUN | transmit fifo under-run
SD_RX_OVERRUN | receive fifo over-run
SD_START_BIT_ERR | start bit not detected on all data signals in wide bus mode
SD_CMD_OUT_OF_RANGE | cmd's argument was out of range.
SD_ADDR_MISALIGNED | misaligned address
SD_BLK_LEN_ERR | transferred block length is not allowed for the card or the number of transferred bytes does not match the block length
SD_ERASE_SEQ_ERR | an error in the sequence of erase command occurs.
SD_INVALID_ERASE_PARAM | an invalid selection for erase groups
SD_WR_PROTECT_VIOLATION | attempt to program a write protect block
SD_LOCK_UNLOCK_ERROR | sequence or password error has been detected in unlock command or if there was an attempt to access a locked card
SD_CMD_CRC_ERROR | crc check of the previous command error
SD_ILLEGAL_CMD | command is not legal for the card state
SD_CARD_ECC_ERROR | card internal ecc was applied but error to correct the data
SD_CARD_CONTROLLER_ERR | internal card controller error
SD_GENERAL_UNKNOWN_ERROR | general or unknown error
SD_STREAM_RD_UNDERRUN | the card could not sustain data transfer in stream read operation.
SD_STREAM_WR_OVERRUN | the card could not sustain data programming in stream mode
SD_CID_CSD_OVERWRITE | cid/csd overwrite error
SD_WP_ERASE_SKIP | only partial address space was erased
SD_CARD_ECC_DISABLED | command has been executed without using internal ecc
SD_ERASE_RESET | erase sequence was cleared before executing because an out of erase sequence command was received
SD_AKE_SEQ_ERROR | error in sequence of authentication.
SD_INVALID_VOLTRANGE | invalid voltage range
SD_ADDR_OUT_OF_RANGE | address out of range
SD_SWITCH_ERROR | switch error
SD_SDIO_DISABLED | sdio disabled
SD_SDIO_FUNC_BUSY | function busy
SD_SDIO_FUNC_ERROR | function error
SD_SDIO_UNKNOWN_FUNC | unknown function
SD_INTERNAL_ERROR | internal error
SD_NOT_CONFIGURED | sdio doesn't configuration
SD_REQ_PENDING | request pending
SD_REQ_NOT_APPLICABLE | request isn't applicable
SD_INVALID_PARAMETER | invalid parameter
SD_UNSUPPORTED_FEATURE | unsupported feature
SD_UNSUPPORTED_HW | unsupported hardware
SD_ERROR | error
SD_OK | pass

Definition at line 71 of file sdio_fatfs/inc/at32_sdio.h.

◆ sd_memory_card_type

enum sd_memory_card_type

supported sd memory cards

Enumerator
SDIO_STD_CAPACITY_SD_CARD_V1_1
SDIO_STD_CAPACITY_SD_CARD_V2_0
SDIO_HIGH_CAPACITY_SD_CARD
SDIO_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_CARD
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
SDIO_HIGH_CAPACITY_MMC_CARD
SDIO_SDIO_CARD
SDIO_STD_CAPACITY_SD_CARD_V1_1
SDIO_STD_CAPACITY_SD_CARD_V2_0
SDIO_HIGH_CAPACITY_SD_CARD
SDIO_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_CARD
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
SDIO_HIGH_CAPACITY_MMC_CARD
SDIO_SDIO_CARD

Definition at line 200 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_command_index_definition

Macros
SDIO_sd_mmc_card_command_index_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define | SD_CMD_GO_IDLE_STATE ((uint8_t)0)
#define | SD_CMD_SEND_OP_COND ((uint8_t)1)
#define | SD_CMD_ALL_SEND_CID ((uint8_t)2)
#define | SD_CMD_SET_REL_ADDR ((uint8_t)3)
#define | SD_CMD_SET_DSR ((uint8_t)4)
#define | SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)
#define | SD_CMD_HS_SWITCH ((uint8_t)6)
#define | SD_CMD_SEL_DESEL_CARD ((uint8_t)7)
#define | SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)
#define | SD_CMD_SEND_CSD ((uint8_t)9)
#define | SD_CMD_SEND_CID ((uint8_t)10)
#define | SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)
#define | SD_CMD_STOP_TRANSMISSION ((uint8_t)12)
#define | SD_CMD_SEND_STATUS ((uint8_t)13)
#define | SD_CMD_HS_BUSTEST_READ ((uint8_t)14)
#define | SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)
#define | SD_CMD_SET_BLOCKLEN ((uint8_t)16)
#define | SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)
#define | SD_CMD_READ_MULT_BLOCK ((uint8_t)18)
#define | SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)
#define | SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)
#define | SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)
#define | SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)
#define | SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)
#define | SD_CMD_PROG_CID ((uint8_t)26)
#define | SD_CMD_PROG_CSD ((uint8_t)27)
#define | SD_CMD_SET_WRITE_PROT ((uint8_t)28)
#define | SD_CMD_CLR_WRITE_PROT ((uint8_t)29)
#define | SD_CMD_SEND_WRITE_PROT ((uint8_t)30)
#define | SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)
#define | SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)
#define | SD_CMD_ERASE_GRP_START ((uint8_t)35)
#define | SD_CMD_ERASE_GRP_END ((uint8_t)36)
#define | SD_CMD_ERASE ((uint8_t)38)
#define | SD_CMD_FAST_IO ((uint8_t)39)
#define | SD_CMD_GO_IRQ_STATE ((uint8_t)40)
#define | SD_CMD_LOCK_UNLOCK ((uint8_t)42)
#define | SD_CMD_APP_CMD ((uint8_t)55)
#define | SD_CMD_GEN_CMD ((uint8_t)56)
#define | SD_CMD_NO_CMD ((uint8_t)64)
#define | SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)
#define | SD_CMD_SD_APP_STAUS ((uint8_t)13)
#define | SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)
#define | SD_CMD_SD_APP_OP_COND ((uint8_t)41)
#define | SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)
#define | SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)
#define | SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)
#define | SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)
#define | SD_CMD_SD_APP_GET_MKB ((uint8_t)43)
#define | SD_CMD_SD_APP_GET_MID ((uint8_t)44)
#define | SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)
#define | SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)
#define | SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)
#define | SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)
#define | SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)
#define | SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)
#define | SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)
#define | SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)
#define | SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)

Detailed Description

Macro Definition Documentation

◆ SD_CMD_ALL_SEND_CID

#define SD_CMD_ALL_SEND_CID ((uint8_t)2)

Definition at line 258 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_APP_CMD

#define SD_CMD_APP_CMD ((uint8_t)55)

Definition at line 293 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_APP_SD_SET_BUSWIDTH

#define SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)

following commands are sd card specific commands. should be sent before sending these commands.

Definition at line 301 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_CLR_WRITE_PROT

#define SD_CMD_CLR_WRITE_PROT ((uint8_t)29)

Definition at line 283 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_ERASE

#define SD_CMD_ERASE ((uint8_t)38)

Definition at line 289 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_ERASE_GRP_END

#define SD_CMD_ERASE_GRP_END ((uint8_t)36)

Definition at line 288 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_ERASE_GRP_START

#define SD_CMD_ERASE_GRP_START ((uint8_t)35)

Definition at line 287 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_FAST_IO

#define SD_CMD_FAST_IO ((uint8_t)39)

Definition at line 290 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_GEN_CMD

#define SD_CMD_GEN_CMD ((uint8_t)56)

Definition at line 294 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_GO_IDLE_STATE

#define SD_CMD_GO_IDLE_STATE ((uint8_t)0)

sdio commands index

Definition at line 256 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_GO_INACTIVE_STATE

#define SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)

Definition at line 271 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_GO_IRQ_STATE

#define SD_CMD_GO_IRQ_STATE ((uint8_t)40)

Definition at line 291 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_HS_BUSTEST_READ

#define SD_CMD_HS_BUSTEST_READ ((uint8_t)14)

Definition at line 270 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_HS_BUSTEST_WRITE

#define SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)

Definition at line 275 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_HS_SEND_EXT_CSD

#define SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)

Definition at line 264 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_HS_SWITCH

#define SD_CMD_HS_SWITCH ((uint8_t)6)

Definition at line 262 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_LOCK_UNLOCK

#define SD_CMD_LOCK_UNLOCK ((uint8_t)42)

Definition at line 292 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_NO_CMD

#define SD_CMD_NO_CMD ((uint8_t)64)

Definition at line 295 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_PROG_CID

#define SD_CMD_PROG_CID ((uint8_t)26)

Definition at line 280 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_PROG_CSD

#define SD_CMD_PROG_CSD ((uint8_t)27)

Definition at line 281 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_READ_DAT_UNTIL_STOP

#define SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)

Definition at line 267 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_READ_MULT_BLOCK

#define SD_CMD_READ_MULT_BLOCK ((uint8_t)18)

Definition at line 274 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_READ_SINGLE_BLOCK

#define SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)

Definition at line 273 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_CHANGE_SECURE_AREA

#define SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)

Definition at line 323 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_CER_RES1

#define SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)

Definition at line 319 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_CER_RN2

#define SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)

Definition at line 317 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_MID

#define SD_CMD_SD_APP_GET_MID ((uint8_t)44)

Definition at line 315 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_MKB

#define SD_CMD_SD_APP_GET_MKB ((uint8_t)43)

following commands are sd card specific security commands. sdio_app_cmd should be sent before sending these commands.

Definition at line 314 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_OP_COND

#define SD_CMD_SD_APP_OP_COND ((uint8_t)41)

Definition at line 304 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_ERASE

#define SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)

Definition at line 322 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK

#define SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)

Definition at line 320 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_WRITE_MKB

#define SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)

Definition at line 324 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK

#define SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)

Definition at line 321 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS

#define SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)

Definition at line 303 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SEND_SCR

#define SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)

Definition at line 306 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SET_CER_RES2

#define SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)

Definition at line 318 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SET_CER_RN1

#define SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)

Definition at line 316 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SET_CLR_CARD_DETECT

#define SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)

Definition at line 305 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_STAUS

#define SD_CMD_SD_APP_STAUS ((uint8_t)13)

Definition at line 302 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_ERASE_GRP_END

#define SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)

Definition at line 286 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SD_ERASE_GRP_START

#define SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)

Definition at line 285 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SDIO_RW_DIRECT

#define SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)

Definition at line 307 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SDIO_RW_EXTENDED

#define SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)

Definition at line 308 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SDIO_SEN_OP_COND

#define SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)

Definition at line 261 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SEL_DESEL_CARD

#define SD_CMD_SEL_DESEL_CARD ((uint8_t)7)

Definition at line 263 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SEND_CID

#define SD_CMD_SEND_CID ((uint8_t)10)

Definition at line 266 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SEND_CSD

#define SD_CMD_SEND_CSD ((uint8_t)9)

Definition at line 265 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SEND_OP_COND

#define SD_CMD_SEND_OP_COND ((uint8_t)1)

Definition at line 257 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SEND_STATUS

#define SD_CMD_SEND_STATUS ((uint8_t)13)

Definition at line 269 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SEND_WRITE_PROT

#define SD_CMD_SEND_WRITE_PROT ((uint8_t)30)

Definition at line 284 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SET_BLOCK_COUNT

#define SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)

Definition at line 277 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SET_BLOCKLEN

#define SD_CMD_SET_BLOCKLEN ((uint8_t)16)

Definition at line 272 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SET_DSR

#define SD_CMD_SET_DSR ((uint8_t)4)

Definition at line 260 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SET_REL_ADDR

#define SD_CMD_SET_REL_ADDR ((uint8_t)3)

Definition at line 259 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_SET_WRITE_PROT

#define SD_CMD_SET_WRITE_PROT ((uint8_t)28)

Definition at line 282 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_STOP_TRANSMISSION

#define SD_CMD_STOP_TRANSMISSION ((uint8_t)12)

Definition at line 268 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_WRITE_DAT_UNTIL_STOP

#define SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)

Definition at line 276 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_WRITE_MULT_BLOCK

#define SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)

Definition at line 279 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CMD_WRITE_SINGLE_BLOCK

#define SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)

Definition at line 278 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_paremeters_definition

Macros
SDIO_sd_mmc_card_paremeters_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define | NULL 0
#define | SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)
#define | SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)
#define | SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SDIO_FIFO_Address ((uint32_t)0x40018080)

Detailed Description

Macro Definition Documentation

◆ NULL

#define NULL 0

sdio paremeters

Definition at line 337 of file sd_mmc_card/inc/at32_sdio.h.

◆ SDIO_CMD0TIMEOUT

#define SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)

Definition at line 339 of file sd_mmc_card/inc/at32_sdio.h.

◆ SDIO_DATATIMEOUT

#define SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)

Definition at line 340 of file sd_mmc_card/inc/at32_sdio.h.

◆ SDIO_FIFO_Address

#define SDIO_FIFO_Address ((uint32_t)0x40018080)

Definition at line 341 of file sd_mmc_card/inc/at32_sdio.h.

◆ SDIO_STATIC_FLAGS

#define SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)

Definition at line 338 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_response_definition

Macros
SDIO_sd_mmc_card_response_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define | SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)
#define | SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)
#define | SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)
#define | SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)
#define | SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)
#define | SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)
#define | SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)
#define | SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)
#define | SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)
#define | SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)
#define | SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)
#define | SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)
#define | SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)
#define | SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)
#define | SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)
#define | SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)
#define | SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)
#define | SD_OCR_ERASE_RESET ((uint32_t)0x00002000)
#define | MMC_SWITCH_ERROR ((uint32_t)0x00000080)
#define | SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)
#define | SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)
#define | SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)
#define | SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)
#define | SD_R5_ERROR ((uint32_t)0x00000800)
#define | SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)
#define | SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)
#define | SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)
#define | SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)
#define | SD_HIGH_CAPACITY ((uint32_t)0x40000000)
#define | SD_STD_CAPACITY ((uint32_t)0x00000000)
#define | SD_CHECK_PATTERN ((uint32_t)0x000001AA)
#define | SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)
#define | SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)
#define | SD_ALLZERO ((uint32_t)0x00000000)
#define | SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)
#define | SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)
#define | SD_CARD_LOCKED ((uint32_t)0x02000000)
#define | SD_CARD_PROGRAMMING ((uint32_t)0x00000007)
#define | SD_CARD_RECEIVING ((uint32_t)0x00000006)
#define | SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SD_0TO7BITS ((uint32_t)0x000000FF)
#define | SD_8TO15BITS ((uint32_t)0x0000FF00)
#define | SD_16TO23BITS ((uint32_t)0x00FF0000)
#define | SD_24TO31BITS ((uint32_t)0xFF000000)
#define | SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)
#define | SD_HALFFIFO ((uint32_t)0x00000008)
#define | SD_HALFFIFOBYTES ((uint32_t)0x00000020)

Detailed Description

Macro Definition Documentation

◆ MMC_SWITCH_ERROR

#define MMC_SWITCH_ERROR ((uint32_t)0x00000080)

Definition at line 372 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_0TO7BITS

#define SD_0TO7BITS ((uint32_t)0x000000FF)

Definition at line 402 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_16TO23BITS

#define SD_16TO23BITS ((uint32_t)0x00FF0000)

Definition at line 404 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_24TO31BITS

#define SD_24TO31BITS ((uint32_t)0xFF000000)

Definition at line 405 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_8TO15BITS

#define SD_8TO15BITS ((uint32_t)0x0000FF00)

Definition at line 403 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_ALLZERO

#define SD_ALLZERO ((uint32_t)0x00000000)

Definition at line 395 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CARD_LOCKED

#define SD_CARD_LOCKED ((uint32_t)0x02000000)

Definition at line 398 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CARD_PROGRAMMING

#define SD_CARD_PROGRAMMING ((uint32_t)0x00000007)

Definition at line 399 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CARD_RECEIVING

#define SD_CARD_RECEIVING ((uint32_t)0x00000006)

Definition at line 400 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CHECK_PATTERN

#define SD_CHECK_PATTERN ((uint32_t)0x000001AA)

Definition at line 392 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_DATATIMEOUT

#define SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)

Definition at line 401 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_HALFFIFO

#define SD_HALFFIFO ((uint32_t)0x00000008)

Definition at line 407 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_HALFFIFOBYTES

#define SD_HALFFIFOBYTES ((uint32_t)0x00000020)

Definition at line 408 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_HIGH_CAPACITY

#define SD_HIGH_CAPACITY ((uint32_t)0x40000000)

Definition at line 390 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_MAX_DATA_LENGTH

#define SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)

Definition at line 406 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_MAX_VOLT_TRIAL

#define SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)

Definition at line 394 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_ADDR_MISALIGNED

#define SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)

Definition at line 355 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_ADDR_OUT_OF_RANGE

#define SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)

mask for errors card status r1 (ocr register)

Definition at line 354 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_AKE_SEQ_ERROR

#define SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)

Definition at line 373 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_BLK_LEN_ERR

#define SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)

Definition at line 356 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_CARD_CONTROLLER_ERR

#define SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)

Definition at line 364 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_CARD_ECC_DISABLED

#define SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)

Definition at line 370 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_CARD_ECC_ERROR

#define SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)

Definition at line 363 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_CID_CSD_OVERWRIETE

#define SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)

Definition at line 368 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_CMD_CRC_ERROR

#define SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)

Definition at line 361 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_ERASE_RESET

#define SD_OCR_ERASE_RESET ((uint32_t)0x00002000)

Definition at line 371 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_ERASE_SEQ_ERR

#define SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)

Definition at line 357 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_ERRORBITS

#define SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)

Definition at line 374 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_GENERAL_UNKNOWN_ERROR

#define SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)

Definition at line 365 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_ILLEGAL_CMD

#define SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)

Definition at line 362 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_INVALID_ERASE_PARAM

#define SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)

Definition at line 358 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_LOCK_UNLOCK_ERROR

#define SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)

Definition at line 360 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_STREAM_RD_UNDERRUN

#define SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)

Definition at line 366 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_STREAM_WR_OVERRUN

#define SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)

Definition at line 367 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_WP_ERASE_SKIP

#define SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)

Definition at line 369 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_OCR_WR_PROTECT_VIOLATION

#define SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)

Definition at line 359 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_R5_ERROR

#define SD_R5_ERROR ((uint32_t)0x00000800)

Definition at line 381 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_R5_FUNCTION_NUMBER

#define SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)

Definition at line 380 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_R5_OUT_OF_RANGE

#define SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)

masks for r5 response

Definition at line 379 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_R6_CMD_CRC_ERROR

#define SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)

Definition at line 388 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_R6_GENERAL_UNKNOWN_ERROR

#define SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)

masks for r6 response

Definition at line 386 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_R6_ILLEGAL_CMD

#define SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)

Definition at line 387 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_SINGLE_BUS_SUPPORT

#define SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)

Definition at line 397 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_STD_CAPACITY

#define SD_STD_CAPACITY ((uint32_t)0x00000000)

Definition at line 391 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_VOLTAGE_WINDOW_MMC

#define SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)

Definition at line 393 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_VOLTAGE_WINDOW_SD

#define SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)

Definition at line 389 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_WIDE_BUS_SUPPORT

#define SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)

Definition at line 396 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_command_class_definition

Macros
SDIO_sd_mmc_card_command_class_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define | SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)
#define | SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)
#define | SD_CCCC_ERASE ((uint32_t)0x00000020)

Detailed Description

Macro Definition Documentation

◆ SD_CCCC_ERASE

#define SD_CCCC_ERASE ((uint32_t)0x00000020)

Definition at line 423 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CCCC_LOCK_UNLOCK

#define SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)

command class supported

Definition at line 421 of file sd_mmc_card/inc/at32_sdio.h.

◆ SD_CCCC_WRITE_PROT

#define SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)

Definition at line 422 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_cmd8_definition

Macros
SDIO_sd_mmc_card_cmd8_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define SDIO_SEND_IF_COND ((uint32_t)0x00000008)

Detailed Description

Macro Definition Documentation

◆ SDIO_SEND_IF_COND

#define SDIO_SEND_IF_COND ((uint32_t)0x00000008)

cmd8

Definition at line 436 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_mmc_extend_definition

Macros
SDIO_sd_mmc_card_mmc_extend_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define | EXT_CSD_Command_set 0x0
#define | EXT_CSD_Set_bit 0x1
#define | EXT_CSD_Clear_byte 0x2
#define | EXT_CSD_Write_byte 0x3
#define | EXT_CSD_CMD_SET_NORMAL (1<<0)
#define | EXT_CSD_CMD_SET_SECURE (1<<1)
#define | EXT_CSD_CMD_SET_CPSECURE (1<<2)
#define | EXT_CSD_BUS_WIDTH 183
#define | EXT_CSD_HS_TIMING 185

Detailed Description

Macro Definition Documentation

◆ EXT_CSD_BUS_WIDTH

#define EXT_CSD_BUS_WIDTH 183

mmc ext_csd offset

Definition at line 461 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_Clear_byte

#define EXT_CSD_Clear_byte 0x2

Definition at line 451 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_CMD_SET_CPSECURE

#define EXT_CSD_CMD_SET_CPSECURE (1<<2)

Definition at line 456 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_CMD_SET_NORMAL

#define EXT_CSD_CMD_SET_NORMAL (1<<0)

Definition at line 454 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_CMD_SET_SECURE

#define EXT_CSD_CMD_SET_SECURE (1<<1)

Definition at line 455 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_Command_set

#define EXT_CSD_Command_set 0x0

mmc ext_csd operation

Definition at line 449 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_HS_TIMING

#define EXT_CSD_HS_TIMING 185

Definition at line 462 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_Set_bit

#define EXT_CSD_Set_bit 0x1

Definition at line 450 of file sd_mmc_card/inc/at32_sdio.h.

◆ EXT_CSD_Write_byte

#define EXT_CSD_Write_byte 0x3

Definition at line 452 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_interrupt_flags_definition

Macros
SDIO_sd_mmc_card_interrupt_flags_definition
AT32F403_periph_examples » SDIO_sd_mmc_card

Macros

#define | SDIO_INTR_STS_WRITE_MASK
#define | SDIO_INTR_STS_READ_MASK

Detailed Description

Macro Definition Documentation

◆ SDIO_INTR_STS_READ_MASK

#define SDIO_INTR_STS_READ_MASK
Value:
(SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_RXERRO_FLAG | \
SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
SDIO_DTFAIL_FLAG
#define SDIO_DTFAIL_FLAG
Definition: at32f403_sdio.h:84
SDIO_RXERRO_FLAG
#define SDIO_RXERRO_FLAG
Definition: at32f403_sdio.h:88
SDIO_DTTIMEOUT_FLAG
#define SDIO_DTTIMEOUT_FLAG
Definition: at32f403_sdio.h:86
SDIO_SBITERR_FLAG
#define SDIO_SBITERR_FLAG
Definition: at32f403_sdio.h:92

Definition at line 474 of file sd_mmc_card/inc/at32_sdio.h.

◆ SDIO_INTR_STS_WRITE_MASK

#define SDIO_INTR_STS_WRITE_MASK
Value:
(SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_TXERRU_FLAG | \
SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
SDIO_TXERRU_FLAG
#define SDIO_TXERRU_FLAG
Definition: at32f403_sdio.h:87

Definition at line 472 of file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sd_mmc_card_exported_functions

Functions
SDIO_sd_mmc_card_exported_functions
AT32F403_periph_examples » SDIO_sd_mmc_card

Functions

sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clkdiv)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...

Detailed Description

Function Documentation

◆ mmc_stream_read()

sd_error_status_type mmc_stream_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

read mmc card data stream.

Parameters
buf | buffer of saving data from mmc card
addr | start address of data from mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1644 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_stream_test().

◆ mmc_stream_write()

sd_error_status_type mmc_stream_write | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

write mmc card data stream.

Parameters
buf | data that writing to mmc card
addr | start address mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1691 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_stream_test().

◆ sd_block_read()

sd_error_status_type sd_block_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1179 of file sd_mmc_card/src/at32_sdio.c.

Referenced by __align(), and sd_single_block_test().

◆ sd_block_write()

sd_error_status_type sd_block_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1358 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_single_block_test(), and sd_write_disk().

◆ sd_blocks_erase()

sd_error_status_type sd_blocks_erase | ( | long long | addr,
 |  | uint32_t | nblks
 | ) |  |

erase continuous data block

Parameters
addr | starting address
nblks | amount of erasing data block
Return values
sd_error_status_type sd card error code.

Definition at line 1021 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_card_info_get()

sd_error_status_type sd_card_info_get ( sd_card_info_struct_type * card_info )

returns information about specific card.

Parameters
card_info pointer to a sd_card_info_struct_type structure that contains all sd card information.
Return values
sd_error_status_type sd card error code.

Definition at line 523 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_card_init()

sd_error_status_type sd_card_init ( void )

intialises all cards or single card as the case may be card(s) come into standby state.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 408 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_deselect_select()

sd_error_status_type sd_deselect_select ( uint32_t addr )

selects od deselects the corresponding card.

Parameters
addr address of the card to be selected.
Return values
sd_error_status_type sd card error code.

Definition at line 798 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_device_mode_set()

sd_error_status_type sd_device_mode_set ( uint32_t mode )

set sdio work mode.

Parameters
mode parameter as following values:
  • SD_TRANSFER_POLLING_MODE: dma mode.
  • SD_TRANSFER_POLLING_MODE: polling mode.
Return values
sd_error_status_type sd card error code.

Definition at line 777 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_dma_config()

void sd_dma_config | ( | uint32_t * | mbuf,
 |  | uint32_t | buf_size,
 |  | dma_dir_type | dir
 | ) |  |

set dma configuation for sdio

Parameters
mbuf | buffer address
buf_size | transmission data size
dir | dma direction, it is DMA_DIR_MEMORY_TO_PERIPHERAL(writing data) or DMA_DIR_PERIPHERAL_TO_MEMORY(read data)
Return values
none

Definition at line 2697 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_init()

sd_error_status_type sd_init ( void )

initializes the sd card and put it into standby state (ready for data transfer).

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 70 of file sd_mmc_card/src/at32_sdio.c.

Referenced by disk_initialize(), and main().

◆ sd_irq_service()

sd_error_status_type sd_irq_service ( void )

allows to process all the interrupts that are high.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 1780 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_mult_blocks_read()

sd_error_status_type sd_mult_blocks_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be read.
Return values
sd_error_status_type sd card error code.

Definition at line 1268 of file sd_mmc_card/src/at32_sdio.c.

Referenced by __align(), and sd_multiple_blocks_test().

◆ sd_mult_blocks_write()

sd_error_status_type sd_mult_blocks_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be written.
Return values
sd_error_status_type sd card error code.

Definition at line 1480 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_multiple_blocks_test(), and sd_write_disk().

◆ sd_power_off()

sd_error_status_type sd_power_off ( void )

turns the sdio output signals off.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 394 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_power_on()

sd_error_status_type sd_power_on ( void )

enquires cards about their operating voltage and configures clock controls.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 194 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_state_get()

sd_card_state_type sd_state_get ( void )

returns information about sd card.

Parameters
none.
Return values
sd_card_state_type sd card state code.

Definition at line 2480 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_status_send()

sd_error_status_type sd_status_send ( uint32_t * p_card_status )

read current card status.

Parameters
p_card_status card status.
Return values
sd_error_status_type sd card error code.

Definition at line 2443 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_wide_bus_operation_config()

sd_error_status_type sd_wide_bus_operation_config ( sdio_bus_width_type mode )

enable wide bus opeartion for the requeseted card if supported by card.

Parameters
mode specifies the sd card wide bus mode. this parameter can be one of the following values:
  • SDIO_BUS_WIDTH_D8: 8-bit data transfer (only for mmc)
  • SDIO_BUS_WIDTH_D4: 4-bit data transfer
  • SDIO_BUS_WIDTH_D1: 1-bit data transfer
Return values
sd_error_status_type sd card error code.

Definition at line 734 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_stream_test(), sd_multiple_blocks_test(), and sd_single_block_test().

◆ sdio_clock_set()

void sdio_clock_set ( uint32_t clk_div )

set sdio clock devision factor.

Parameters
clkdiv sdio_ck = ahbclk / (clkdiv+2)
Return values
none

Definition at line 179 of file sd_mmc_card/src/at32_sdio.c.


AT32F403 Firmwary Library: SDIO_sdio_fatfs

Modules | Functions | Variables
SDIO_sdio_fatfs
AT32F403_periph_examples

Modules

SDIO_sdio_fatfs_instance_definition
SDIO_sdio_fatfs_exported_types
SDIO_sdio_fatfs_command_index_definition
SDIO_sdio_fatfs_paremeters_definition
SDIO_sdio_fatfs_response_definition
SDIO_sdio_fatfs_command_class_definition
SDIO_sdio_fatfs_cmd8_definition
SDIO_sdio_fatfs_mmc_extend_definition
SDIO_sdio_fatfs_interrupt_flags_definition
SDIO_sdio_fatfs_exported_functions

Functions

sd_error_status_type | command_error (void)
checks for error conditions for cmd0. More...
sd_error_status_type | command_rsp1_error (uint8_t cmd)
checks for error conditions for R1 response. More...
sd_error_status_type | command_rsp2_error (void)
checks for error conditions for R2 (cid or csd) response. More...
sd_error_status_type | command_rsp3_error (void)
checks for error conditions for R3 (ocr) response. More...
sd_error_status_type | command_rsp4_error (uint8_t cmd)
checks for error conditions for r4 response. More...
sd_error_status_type | command_rsp5_error (uint8_t cmd)
checks for error conditions for r5 response. More...
sd_error_status_type | command_rsp6_error (uint8_t cmd, uint16_t *prca)
checks for error conditions for r6 (rca) response. More...
sd_error_status_type | command_rsp7_error (void)
checks for error conditions for R7 response. More...
sd_error_status_type | sd_bus_wide_enable (confirm_state new_state)
enable or disable the sdio wide bus mode. More...
sd_error_status_type | mmc_switch (uint8_t set, uint8_t index, uint8_t value)
switch mmc card speed to high speed More...
sd_error_status_type | sd_switch (uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp)
switch sd card speed to high speed More...
sd_error_status_type | check_card_programming (uint8_t *p_status)
checks if the sd card is in programming state. More...
sd_error_status_type | speed_change (uint8_t speed)
set bus speed More...
sd_error_status_type | scr_find (void)
find the sd card scr register value. More...
uint8_t | convert_from_bytes_to_power_of_two (uint16_t number_of_bytes)
converts the number of bytes in power of two and returns the power. More...
sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clk_div)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sdio_command_data_send (sdio_command_struct_type *sdio_cmd_init_t, sdio_data_struct_type *sdio_data_init_t, uint32_t *buf)
read data from or write data to sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
void | SDIO1_IRQHandler (void)
sdio1 isr. More...
void | SDIO2_IRQHandler (void)
sdio2 isr. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
static void | sd_test_error (void)
led2 on off every 300ms for sd test failed. More...
static void | nvic_configuration (void)
configures sdio1 irq channel. More...
static error_status | fatfs_test (void)
fatfs file read/write test. More...
int | main (void)
main function. More...

Variables

sd_card_info_struct_type sd_card_info
sdio_command_struct_type sdio_command_init_struct
sdio_data_struct_type sdio_data_init_struct
static sd_memory_card_type | card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1
static uint32_t | csd_table [4]
static uint32_t | cid_table [4]
static uint32_t | rca = 0
static sd_data_transfer_mode_type | device_mode = SD_TRANSFER_POLLING_MODE
static uint8_t | stop_flag = 0
volatile sd_error_status_type | transfer_error = SD_OK
volatile uint8_t | transfer_end = 0
sd_card_info_struct_type sd_card_info
FATFS | fs
FIL | file
BYTE | work [FF_MAX_SS]

Detailed Description

Function Documentation

◆ buffer_compare()

uint8_t buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
1 pbuffer1 identical to pbuffer2 0: pbuffer1 differs from pbuffer2

Definition at line 55 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

Referenced by fatfs_test().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ check_card_programming()

sd_error_status_type check_card_programming ( uint8_t * p_status )

checks if the sd card is in programming state.

Parameters
p_status pointer to the variable that will contain the sd card state.
Return values
sd_error_status_type sd card error code.

Definition at line 2396 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_stream_write(), sd_block_write(), sd_blocks_erase(), and sd_mult_blocks_write().

◆ command_error()

sd_error_status_type command_error ( void )

checks for error conditions for cmd0.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 1871 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_power_on().

◆ command_rsp1_error()

sd_error_status_type command_rsp1_error ( uint8_t cmd )

checks for error conditions for R1 response.

Parameters
cmd the sent command index.
Return values
sd_error_status_type sd card error code.

Definition at line 1935 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), sd_switch(), and sdio_command_data_send().

◆ command_rsp2_error()

sd_error_status_type command_rsp2_error ( void )

checks for error conditions for R2 (cid or csd) response.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 2008 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_card_init().

◆ command_rsp3_error()

sd_error_status_type command_rsp3_error ( void )

checks for error conditions for R3 (ocr) response.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 1978 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_power_on().

◆ command_rsp4_error()

sd_error_status_type command_rsp4_error ( uint8_t cmd )

checks for error conditions for r4 response.

Parameters
cmd the sent command index.
Return values
sd_error_status_type sd card error code.

Definition at line 2048 of file sdio_fatfs/src/at32_sdio.c.

◆ command_rsp5_error()

sd_error_status_type command_rsp5_error ( uint8_t cmd )

checks for error conditions for r5 response.

Parameters
cmd the sent command index.
Return values
sd_error_status_type sd card error code.

Definition at line 2091 of file sdio_fatfs/src/at32_sdio.c.

◆ command_rsp6_error()

sd_error_status_type command_rsp6_error | ( | uint8_t | cmd,
 |  | uint16_t * | prca
 | ) |  |

checks for error conditions for r6 (rca) response.

Parameters
cmd | the sent command index.
prca | pointer to the variable that will contain the sd card relative address rca.
Return values
sd_error_status_type sd card error code.

Definition at line 2154 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_card_init().

◆ command_rsp7_error()

sd_error_status_type command_rsp7_error ( void )

checks for error conditions for R7 response.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 1898 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_power_on().

◆ convert_from_bytes_to_power_of_two()

uint8_t convert_from_bytes_to_power_of_two ( uint16_t number_of_bytes )

converts the number of bytes in power of two and returns the power.

Parameters
number_of_bytes number of bytes.
Return values
none

Definition at line 2683 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_block_read(), sd_block_write(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sd_switch().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ fatfs_test()

static error_status fatfs_test ( void )
static

fatfs file read/write test.

Parameters
none
Return values
ERROR fail. SUCCESS: success.

Definition at line 99 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 203 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ mmc_stream_read()

sd_error_status_type mmc_stream_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

read mmc card data stream.

Parameters
buf | buffer of saving data from mmc card
addr | start address of data from mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1651 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_stream_test().

◆ mmc_stream_write()

sd_error_status_type mmc_stream_write | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

write mmc card data stream.

Parameters
buf | data that writing to mmc card
addr | start address mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1698 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_stream_test().

◆ mmc_switch()

sd_error_status_type mmc_switch | ( | uint8_t | set,
 |  | uint8_t | index,
 |  | uint8_t | value
 | ) |  |

switch mmc card speed to high speed

Parameters
set | new state of the sdio wide bus mode.
index | offset.
value | expect speed.
Return values
sd_error_status_type sd card error code.

Definition at line 2289 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_wide_bus_operation_config(), and speed_change().

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ nvic_configuration()

static void nvic_configuration ( void )
static

configures sdio1 irq channel.

Parameters
none
Return values
none

Definition at line 87 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

Referenced by main().

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ scr_find()

sd_error_status_type scr_find ( void )

find the sd card scr register value.

Return values
sd_error_status_type sd card error code.

Definition at line 2505 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_block_read()

sd_error_status_type sd_block_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1186 of file sdio_fatfs/src/at32_sdio.c.

Referenced by __align(), and sd_single_block_test().

◆ sd_block_write()

sd_error_status_type sd_block_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1365 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_single_block_test(), and sd_write_disk().

◆ sd_blocks_erase()

sd_error_status_type sd_blocks_erase | ( | long long | addr,
 |  | uint32_t | nblks
 | ) |  |

erase continuous data block

Parameters
addr | starting address
nblks | amount of erasing data block
Return values
sd_error_status_type sd card error code.

Definition at line 1028 of file sdio_fatfs/src/at32_sdio.c.

◆ sd_bus_wide_enable()

sd_error_status_type sd_bus_wide_enable ( confirm_state new_state )

enable or disable the sdio wide bus mode.

Parameters
new_state new state of the sdio wide bus mode. (true or false)
Return values
sd_error_status_type sd card error code.

Definition at line 2220 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_wide_bus_operation_config().

◆ sd_card_info_get()

sd_error_status_type sd_card_info_get ( sd_card_info_struct_type * card_info )

returns information about specific card.

Parameters
card_info pointer to a sd_card_info_struct_type structure that contains all sd card information.
Return values
sd_error_status_type sd card error code.

Definition at line 530 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_card_init()

sd_error_status_type sd_card_init ( void )

intialises all cards or single card as the case may be card(s) come into standby state.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 415 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_deselect_select()

sd_error_status_type sd_deselect_select ( uint32_t addr )

selects od deselects the corresponding card.

Parameters
addr address of the card to be selected.
Return values
sd_error_status_type sd card error code.

Definition at line 805 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_device_mode_set()

sd_error_status_type sd_device_mode_set ( uint32_t mode )

set sdio work mode.

Parameters
mode parameter as following values:
  • SD_TRANSFER_POLLING_MODE: dma mode.
  • SD_TRANSFER_POLLING_MODE: polling mode.
Return values
sd_error_status_type sd card error code.

Definition at line 784 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_dma_config()

void sd_dma_config | ( | uint32_t * | mbuf,
 |  | uint32_t | buf_size,
 |  | dma_dir_type | dir
 | ) |  |

set dma configuation for sdio

Parameters
mbuf | buffer address
buf_size | transmission data size
dir | dma direction, it is DMA_DIR_MEMORY_TO_PERIPHERAL(writing data) or DMA_DIR_PERIPHERAL_TO_MEMORY(read data)
Return values
none

Definition at line 2704 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sdio_command_data_send().

◆ sd_init()

sd_error_status_type sd_init ( void )

initializes the sd card and put it into standby state (ready for data transfer).

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 71 of file sdio_fatfs/src/at32_sdio.c.

Referenced by disk_initialize(), main(), and sdio_command_data_send().

◆ sd_irq_service()

sd_error_status_type sd_irq_service ( void )

allows to process all the interrupts that are high.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 1787 of file sdio_fatfs/src/at32_sdio.c.

Referenced by SDIO1_IRQHandler(), and SDIO2_IRQHandler().

◆ sd_mult_blocks_read()

sd_error_status_type sd_mult_blocks_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be read.
Return values
sd_error_status_type sd card error code.

Definition at line 1275 of file sdio_fatfs/src/at32_sdio.c.

Referenced by __align(), and sd_multiple_blocks_test().

◆ sd_mult_blocks_write()

sd_error_status_type sd_mult_blocks_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be written.
Return values
sd_error_status_type sd card error code.

Definition at line 1487 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_multiple_blocks_test(), and sd_write_disk().

◆ sd_power_off()

sd_error_status_type sd_power_off ( void )

turns the sdio output signals off.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 401 of file sdio_fatfs/src/at32_sdio.c.

◆ sd_power_on()

sd_error_status_type sd_power_on ( void )

enquires cards about their operating voltage and configures clock controls.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 201 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_state_get()

sd_card_state_type sd_state_get ( void )

returns information about sd card.

Parameters
none.
Return values
sd_card_state_type sd card state code.

Definition at line 2487 of file sdio_fatfs/src/at32_sdio.c.

◆ sd_status_send()

sd_error_status_type sd_status_send ( uint32_t * p_card_status )

read current card status.

Parameters
p_card_status card status.
Return values
sd_error_status_type sd card error code.

Definition at line 2450 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_switch(), sd_block_write(), sd_mult_blocks_write(), and sd_state_get().

◆ sd_switch()

sd_error_status_type sd_switch | ( | uint32_t | mode,
 |  | uint32_t | group,
 |  | uint8_t | value,
 |  | uint8_t * | rsp
 | ) |  |

switch sd card speed to high speed

Parameters
mode | polling mode or dma mode
group | selected group
value | wanted speed
rsp | switch status
Return values
sd_error_status_type sd card error code.

Definition at line 2340 of file sdio_fatfs/src/at32_sdio.c.

Referenced by speed_change().

◆ sd_test_error()

static void sd_test_error ( void )
static

led2 on off every 300ms for sd test failed.

Parameters
none
Return values
none

Definition at line 74 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

Referenced by main().

◆ sd_wide_bus_operation_config()

sd_error_status_type sd_wide_bus_operation_config ( sdio_bus_width_type mode )

enable wide bus opeartion for the requeseted card if supported by card.

Parameters
mode specifies the sd card wide bus mode. this parameter can be one of the following values:
  • SDIO_BUS_WIDTH_D8: 8-bit data transfer (only for mmc)
  • SDIO_BUS_WIDTH_D4: 4-bit data transfer
  • SDIO_BUS_WIDTH_D1: 1-bit data transfer
Return values
sd_error_status_type sd card error code.

Definition at line 741 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_stream_test(), sd_init(), sd_multiple_blocks_test(), and sd_single_block_test().

◆ SDIO1_IRQHandler()

void SDIO1_IRQHandler ( void )

sdio1 isr.

Parameters
none.
Return values
none.

Definition at line 1767 of file sdio_fatfs/src/at32_sdio.c.

◆ SDIO2_IRQHandler()

void SDIO2_IRQHandler ( void )

sdio2 isr.

Parameters
none.
Return values
none.

Definition at line 1777 of file sdio_fatfs/src/at32_sdio.c.

◆ sdio_clock_set()

void sdio_clock_set ( uint32_t clk_div )

set sdio clock devision factor.

Parameters
clkdiv sdio_ck = ahbclk / (clkdiv+2)
Return values
none

Definition at line 186 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ sdio_command_data_send()

sd_error_status_type sdio_command_data_send | ( | sdio_command_struct_type * | sdio_cmd_init_t,
 |  | sdio_data_struct_type * | sdio_data_init_t,
 |  | uint32_t * | buf
 | ) |  |

read data from or write data to sd card.

Parameters
sdio_cmd_init_struct | pointer to sdio_command_struct_type structure.
sdio_data_init_struct | pointer to sdio_data_struct_type structure.
buf | pointer to data buffer read or write.
Return values
sd_error_status_type sd card error code.

Definition at line 828 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), sd_block_read(), sd_block_write(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sd_switch().

◆ speed_change()

sd_error_status_type speed_change ( uint8_t speed )

set bus speed

Parameters
speed 0,normal speed; 1,high speed.
Return values
sd_error_status_type sd card error code.

Definition at line 2619 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_init().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.

Variable Documentation

◆ card_type

sd_memory_card_type card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1
static

Definition at line 41 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_card_info_get(), sd_card_init(), sd_init(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_wide_bus_operation_config(), and speed_change().

◆ cid_table

uint32_t cid_table[4]
static

Definition at line 42 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_card_info_get(), and sd_card_init().

◆ csd_table

uint32_t csd_table[4]
static

Definition at line 42 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_card_info_get(), and sd_card_init().

◆ device_mode

sd_data_transfer_mode_type device_mode = SD_TRANSFER_POLLING_MODE
static

Definition at line 43 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_device_mode_set(), and sdio_command_data_send().

◆ file

FIL file

Definition at line 41 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

Referenced by fatfs_test().

◆ fs

FATFS fs

Definition at line 40 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

Referenced by fatfs_test().

◆ rca

uint32_t rca = 0
static

Definition at line 42 of file sdio_fatfs/src/at32_sdio.c.

Referenced by check_card_programming(), sd_card_info_get(), sd_card_init(), sd_mult_blocks_write(), and sd_status_send().

◆ sd_card_info [1/2]

sd_card_info_struct_type sd_card_info
extern

Definition at line 46 of file sd_mmc_card/src/at32_sdio.c.

Referenced by scr_find(), sd_bus_wide_enable(), sd_init(), and speed_change().

◆ sd_card_info [2/2]

sd_card_info_struct_type sd_card_info

Definition at line 47 of file sdio_fatfs/src/at32_sdio.c.

Referenced by disk_ioctl(), main(), scr_find(), sd_bus_wide_enable(), sd_init(), show_card_info(), and speed_change().

◆ sdio_command_init_struct

sdio_command_struct_type sdio_command_init_struct

Definition at line 38 of file sdio_fatfs/src/at32_sdio.c.

Referenced by check_card_programming(), mmc_stream_read(), mmc_stream_write(), mmc_switch(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_init(), sd_deselect_select(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_power_on(), sd_status_send(), and sd_switch().

◆ sdio_data_init_struct

sdio_data_struct_type sdio_data_init_struct

Definition at line 39 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_mult_blocks_read(), sd_mult_blocks_write(), and sd_switch().

◆ stop_flag

uint8_t stop_flag = 0
static

Definition at line 44 of file sdio_fatfs/src/at32_sdio.c.

Referenced by mmc_stream_read(), mmc_stream_write(), sd_block_read(), sd_block_write(), sd_irq_service(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_switch(), and sdio_command_data_send().

◆ transfer_end

volatile uint8_t transfer_end = 0

Definition at line 46 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_irq_service(), and sdio_command_data_send().

◆ transfer_error

volatile sd_error_status_type transfer_error = SD_OK

Definition at line 45 of file sdio_fatfs/src/at32_sdio.c.

Referenced by sd_irq_service(), and sdio_command_data_send().

◆ work

BYTE work[FF_MAX_SS]

Definition at line 42 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.

Referenced by fatfs_test().


AT32F403 Firmwary Library: SDIO_sdio_fatfs_instance_definition

Macros
SDIO_sdio_fatfs_instance_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define SDIOx SDIO1

Detailed Description

Macro Definition Documentation

◆ SDIOx

#define SDIOx SDIO1

Definition at line 49 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_command_index_definition

Macros
SDIO_sdio_fatfs_command_index_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define | SD_CMD_GO_IDLE_STATE ((uint8_t)0)
#define | SD_CMD_SEND_OP_COND ((uint8_t)1)
#define | SD_CMD_ALL_SEND_CID ((uint8_t)2)
#define | SD_CMD_SET_REL_ADDR ((uint8_t)3)
#define | SD_CMD_SET_DSR ((uint8_t)4)
#define | SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)
#define | SD_CMD_HS_SWITCH ((uint8_t)6)
#define | SD_CMD_SEL_DESEL_CARD ((uint8_t)7)
#define | SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)
#define | SD_CMD_SEND_CSD ((uint8_t)9)
#define | SD_CMD_SEND_CID ((uint8_t)10)
#define | SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)
#define | SD_CMD_STOP_TRANSMISSION ((uint8_t)12)
#define | SD_CMD_SEND_STATUS ((uint8_t)13)
#define | SD_CMD_HS_BUSTEST_READ ((uint8_t)14)
#define | SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)
#define | SD_CMD_SET_BLOCKLEN ((uint8_t)16)
#define | SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)
#define | SD_CMD_READ_MULT_BLOCK ((uint8_t)18)
#define | SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)
#define | SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)
#define | SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)
#define | SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)
#define | SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)
#define | SD_CMD_PROG_CID ((uint8_t)26)
#define | SD_CMD_PROG_CSD ((uint8_t)27)
#define | SD_CMD_SET_WRITE_PROT ((uint8_t)28)
#define | SD_CMD_CLR_WRITE_PROT ((uint8_t)29)
#define | SD_CMD_SEND_WRITE_PROT ((uint8_t)30)
#define | SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)
#define | SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)
#define | SD_CMD_ERASE_GRP_START ((uint8_t)35)
#define | SD_CMD_ERASE_GRP_END ((uint8_t)36)
#define | SD_CMD_ERASE ((uint8_t)38)
#define | SD_CMD_FAST_IO ((uint8_t)39)
#define | SD_CMD_GO_IRQ_STATE ((uint8_t)40)
#define | SD_CMD_LOCK_UNLOCK ((uint8_t)42)
#define | SD_CMD_APP_CMD ((uint8_t)55)
#define | SD_CMD_GEN_CMD ((uint8_t)56)
#define | SD_CMD_NO_CMD ((uint8_t)64)
#define | SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)
#define | SD_CMD_SD_APP_STAUS ((uint8_t)13)
#define | SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)
#define | SD_CMD_SD_APP_OP_COND ((uint8_t)41)
#define | SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)
#define | SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)
#define | SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)
#define | SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)
#define | SD_CMD_SD_APP_GET_MKB ((uint8_t)43)
#define | SD_CMD_SD_APP_GET_MID ((uint8_t)44)
#define | SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)
#define | SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)
#define | SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)
#define | SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)
#define | SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)
#define | SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)
#define | SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)
#define | SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)
#define | SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)

Detailed Description

Macro Definition Documentation

◆ SD_CMD_ALL_SEND_CID

#define SD_CMD_ALL_SEND_CID ((uint8_t)2)

Definition at line 258 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_APP_CMD

#define SD_CMD_APP_CMD ((uint8_t)55)

Definition at line 293 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_APP_SD_SET_BUSWIDTH

#define SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)

following commands are sd card specific commands. should be sent before sending these commands.

Definition at line 301 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_CLR_WRITE_PROT

#define SD_CMD_CLR_WRITE_PROT ((uint8_t)29)

Definition at line 283 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_ERASE

#define SD_CMD_ERASE ((uint8_t)38)

Definition at line 289 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_ERASE_GRP_END

#define SD_CMD_ERASE_GRP_END ((uint8_t)36)

Definition at line 288 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_ERASE_GRP_START

#define SD_CMD_ERASE_GRP_START ((uint8_t)35)

Definition at line 287 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_FAST_IO

#define SD_CMD_FAST_IO ((uint8_t)39)

Definition at line 290 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_GEN_CMD

#define SD_CMD_GEN_CMD ((uint8_t)56)

Definition at line 294 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_GO_IDLE_STATE

#define SD_CMD_GO_IDLE_STATE ((uint8_t)0)

sdio commands index

Definition at line 256 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_GO_INACTIVE_STATE

#define SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)

Definition at line 271 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_GO_IRQ_STATE

#define SD_CMD_GO_IRQ_STATE ((uint8_t)40)

Definition at line 291 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_HS_BUSTEST_READ

#define SD_CMD_HS_BUSTEST_READ ((uint8_t)14)

Definition at line 270 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_HS_BUSTEST_WRITE

#define SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)

Definition at line 275 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_HS_SEND_EXT_CSD

#define SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)

Definition at line 264 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_HS_SWITCH

#define SD_CMD_HS_SWITCH ((uint8_t)6)

Definition at line 262 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_LOCK_UNLOCK

#define SD_CMD_LOCK_UNLOCK ((uint8_t)42)

Definition at line 292 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_NO_CMD

#define SD_CMD_NO_CMD ((uint8_t)64)

Definition at line 295 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_PROG_CID

#define SD_CMD_PROG_CID ((uint8_t)26)

Definition at line 280 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_PROG_CSD

#define SD_CMD_PROG_CSD ((uint8_t)27)

Definition at line 281 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_READ_DAT_UNTIL_STOP

#define SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)

Definition at line 267 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_READ_MULT_BLOCK

#define SD_CMD_READ_MULT_BLOCK ((uint8_t)18)

Definition at line 274 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_READ_SINGLE_BLOCK

#define SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)

Definition at line 273 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_CHANGE_SECURE_AREA

#define SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)

Definition at line 323 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_CER_RES1

#define SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)

Definition at line 319 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_CER_RN2

#define SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)

Definition at line 317 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_MID

#define SD_CMD_SD_APP_GET_MID ((uint8_t)44)

Definition at line 315 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_GET_MKB

#define SD_CMD_SD_APP_GET_MKB ((uint8_t)43)

following commands are sd card specific security commands. sdio_app_cmd should be sent before sending these commands.

Definition at line 314 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_OP_COND

#define SD_CMD_SD_APP_OP_COND ((uint8_t)41)

Definition at line 304 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_ERASE

#define SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)

Definition at line 322 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK

#define SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)

Definition at line 320 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_WRITE_MKB

#define SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)

Definition at line 324 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK

#define SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)

Definition at line 321 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS

#define SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)

Definition at line 303 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SEND_SCR

#define SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)

Definition at line 306 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SET_CER_RES2

#define SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)

Definition at line 318 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SET_CER_RN1

#define SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)

Definition at line 316 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_SET_CLR_CARD_DETECT

#define SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)

Definition at line 305 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_APP_STAUS

#define SD_CMD_SD_APP_STAUS ((uint8_t)13)

Definition at line 302 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_ERASE_GRP_END

#define SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)

Definition at line 286 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SD_ERASE_GRP_START

#define SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)

Definition at line 285 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SDIO_RW_DIRECT

#define SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)

Definition at line 307 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SDIO_RW_EXTENDED

#define SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)

Definition at line 308 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SDIO_SEN_OP_COND

#define SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)

Definition at line 261 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SEL_DESEL_CARD

#define SD_CMD_SEL_DESEL_CARD ((uint8_t)7)

Definition at line 263 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SEND_CID

#define SD_CMD_SEND_CID ((uint8_t)10)

Definition at line 266 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SEND_CSD

#define SD_CMD_SEND_CSD ((uint8_t)9)

Definition at line 265 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SEND_OP_COND

#define SD_CMD_SEND_OP_COND ((uint8_t)1)

Definition at line 257 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SEND_STATUS

#define SD_CMD_SEND_STATUS ((uint8_t)13)

Definition at line 269 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SEND_WRITE_PROT

#define SD_CMD_SEND_WRITE_PROT ((uint8_t)30)

Definition at line 284 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SET_BLOCK_COUNT

#define SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)

Definition at line 277 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SET_BLOCKLEN

#define SD_CMD_SET_BLOCKLEN ((uint8_t)16)

Definition at line 272 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SET_DSR

#define SD_CMD_SET_DSR ((uint8_t)4)

Definition at line 260 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SET_REL_ADDR

#define SD_CMD_SET_REL_ADDR ((uint8_t)3)

Definition at line 259 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_SET_WRITE_PROT

#define SD_CMD_SET_WRITE_PROT ((uint8_t)28)

Definition at line 282 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_STOP_TRANSMISSION

#define SD_CMD_STOP_TRANSMISSION ((uint8_t)12)

Definition at line 268 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_WRITE_DAT_UNTIL_STOP

#define SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)

Definition at line 276 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_WRITE_MULT_BLOCK

#define SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)

Definition at line 279 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CMD_WRITE_SINGLE_BLOCK

#define SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)

Definition at line 278 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_paremeters_definition

Macros
SDIO_sdio_fatfs_paremeters_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define | NULL 0
#define | SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)
#define | SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)
#define | SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SDIO_FIFO_Address ((uint32_t)0x40018080)

Detailed Description

Macro Definition Documentation

◆ NULL

#define NULL 0

sdio paremeters

Definition at line 337 of file sdio_fatfs/inc/at32_sdio.h.

◆ SDIO_CMD0TIMEOUT

#define SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)

Definition at line 339 of file sdio_fatfs/inc/at32_sdio.h.

◆ SDIO_DATATIMEOUT

#define SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)

Definition at line 340 of file sdio_fatfs/inc/at32_sdio.h.

◆ SDIO_FIFO_Address

#define SDIO_FIFO_Address ((uint32_t)0x40018080)

Definition at line 341 of file sdio_fatfs/inc/at32_sdio.h.

◆ SDIO_STATIC_FLAGS

#define SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)

Definition at line 338 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_response_definition

Macros
SDIO_sdio_fatfs_response_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define | SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)
#define | SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)
#define | SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)
#define | SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)
#define | SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)
#define | SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)
#define | SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)
#define | SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)
#define | SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)
#define | SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)
#define | SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)
#define | SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)
#define | SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)
#define | SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)
#define | SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)
#define | SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)
#define | SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)
#define | SD_OCR_ERASE_RESET ((uint32_t)0x00002000)
#define | MMC_SWITCH_ERROR ((uint32_t)0x00000080)
#define | SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)
#define | SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)
#define | SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)
#define | SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)
#define | SD_R5_ERROR ((uint32_t)0x00000800)
#define | SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)
#define | SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)
#define | SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)
#define | SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)
#define | SD_HIGH_CAPACITY ((uint32_t)0x40000000)
#define | SD_STD_CAPACITY ((uint32_t)0x00000000)
#define | SD_CHECK_PATTERN ((uint32_t)0x000001AA)
#define | SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)
#define | SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)
#define | SD_ALLZERO ((uint32_t)0x00000000)
#define | SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)
#define | SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)
#define | SD_CARD_LOCKED ((uint32_t)0x02000000)
#define | SD_CARD_PROGRAMMING ((uint32_t)0x00000007)
#define | SD_CARD_RECEIVING ((uint32_t)0x00000006)
#define | SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SD_0TO7BITS ((uint32_t)0x000000FF)
#define | SD_8TO15BITS ((uint32_t)0x0000FF00)
#define | SD_16TO23BITS ((uint32_t)0x00FF0000)
#define | SD_24TO31BITS ((uint32_t)0xFF000000)
#define | SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)
#define | SD_HALFFIFO ((uint32_t)0x00000008)
#define | SD_HALFFIFOBYTES ((uint32_t)0x00000020)

Detailed Description

Macro Definition Documentation

◆ MMC_SWITCH_ERROR

#define MMC_SWITCH_ERROR ((uint32_t)0x00000080)

Definition at line 372 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_0TO7BITS

#define SD_0TO7BITS ((uint32_t)0x000000FF)

Definition at line 402 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_16TO23BITS

#define SD_16TO23BITS ((uint32_t)0x00FF0000)

Definition at line 404 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_24TO31BITS

#define SD_24TO31BITS ((uint32_t)0xFF000000)

Definition at line 405 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_8TO15BITS

#define SD_8TO15BITS ((uint32_t)0x0000FF00)

Definition at line 403 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_ALLZERO

#define SD_ALLZERO ((uint32_t)0x00000000)

Definition at line 395 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CARD_LOCKED

#define SD_CARD_LOCKED ((uint32_t)0x02000000)

Definition at line 398 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CARD_PROGRAMMING

#define SD_CARD_PROGRAMMING ((uint32_t)0x00000007)

Definition at line 399 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CARD_RECEIVING

#define SD_CARD_RECEIVING ((uint32_t)0x00000006)

Definition at line 400 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CHECK_PATTERN

#define SD_CHECK_PATTERN ((uint32_t)0x000001AA)

Definition at line 392 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_DATATIMEOUT

#define SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)

Definition at line 401 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_HALFFIFO

#define SD_HALFFIFO ((uint32_t)0x00000008)

Definition at line 407 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_HALFFIFOBYTES

#define SD_HALFFIFOBYTES ((uint32_t)0x00000020)

Definition at line 408 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_HIGH_CAPACITY

#define SD_HIGH_CAPACITY ((uint32_t)0x40000000)

Definition at line 390 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_MAX_DATA_LENGTH

#define SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)

Definition at line 406 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_MAX_VOLT_TRIAL

#define SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)

Definition at line 394 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_ADDR_MISALIGNED

#define SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)

Definition at line 355 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_ADDR_OUT_OF_RANGE

#define SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)

mask for errors card status r1 (ocr register)

Definition at line 354 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_AKE_SEQ_ERROR

#define SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)

Definition at line 373 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_BLK_LEN_ERR

#define SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)

Definition at line 356 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_CARD_CONTROLLER_ERR

#define SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)

Definition at line 364 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_CARD_ECC_DISABLED

#define SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)

Definition at line 370 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_CARD_ECC_ERROR

#define SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)

Definition at line 363 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_CID_CSD_OVERWRIETE

#define SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)

Definition at line 368 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_CMD_CRC_ERROR

#define SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)

Definition at line 361 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_ERASE_RESET

#define SD_OCR_ERASE_RESET ((uint32_t)0x00002000)

Definition at line 371 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_ERASE_SEQ_ERR

#define SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)

Definition at line 357 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_ERRORBITS

#define SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)

Definition at line 374 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_GENERAL_UNKNOWN_ERROR

#define SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)

Definition at line 365 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_ILLEGAL_CMD

#define SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)

Definition at line 362 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_INVALID_ERASE_PARAM

#define SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)

Definition at line 358 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_LOCK_UNLOCK_ERROR

#define SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)

Definition at line 360 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_STREAM_RD_UNDERRUN

#define SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)

Definition at line 366 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_STREAM_WR_OVERRUN

#define SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)

Definition at line 367 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_WP_ERASE_SKIP

#define SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)

Definition at line 369 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_OCR_WR_PROTECT_VIOLATION

#define SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)

Definition at line 359 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_R5_ERROR

#define SD_R5_ERROR ((uint32_t)0x00000800)

Definition at line 381 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_R5_FUNCTION_NUMBER

#define SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)

Definition at line 380 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_R5_OUT_OF_RANGE

#define SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)

masks for r5 response

Definition at line 379 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_R6_CMD_CRC_ERROR

#define SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)

Definition at line 388 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_R6_GENERAL_UNKNOWN_ERROR

#define SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)

masks for r6 response

Definition at line 386 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_R6_ILLEGAL_CMD

#define SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)

Definition at line 387 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_SINGLE_BUS_SUPPORT

#define SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)

Definition at line 397 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_STD_CAPACITY

#define SD_STD_CAPACITY ((uint32_t)0x00000000)

Definition at line 391 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_VOLTAGE_WINDOW_MMC

#define SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)

Definition at line 393 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_VOLTAGE_WINDOW_SD

#define SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)

Definition at line 389 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_WIDE_BUS_SUPPORT

#define SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)

Definition at line 396 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_command_class_definition

Macros
SDIO_sdio_fatfs_command_class_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define | SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)
#define | SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)
#define | SD_CCCC_ERASE ((uint32_t)0x00000020)

Detailed Description

Macro Definition Documentation

◆ SD_CCCC_ERASE

#define SD_CCCC_ERASE ((uint32_t)0x00000020)

Definition at line 423 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CCCC_LOCK_UNLOCK

#define SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)

command class supported

Definition at line 421 of file sdio_fatfs/inc/at32_sdio.h.

◆ SD_CCCC_WRITE_PROT

#define SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)

Definition at line 422 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_cmd8_definition

Macros
SDIO_sdio_fatfs_cmd8_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define SDIO_SEND_IF_COND ((uint32_t)0x00000008)

Detailed Description

Macro Definition Documentation

◆ SDIO_SEND_IF_COND

#define SDIO_SEND_IF_COND ((uint32_t)0x00000008)

cmd8

Definition at line 436 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_mmc_extend_definition

Macros
SDIO_sdio_fatfs_mmc_extend_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define | EXT_CSD_Command_set 0x0
#define | EXT_CSD_Set_bit 0x1
#define | EXT_CSD_Clear_byte 0x2
#define | EXT_CSD_Write_byte 0x3
#define | EXT_CSD_CMD_SET_NORMAL (1<<0)
#define | EXT_CSD_CMD_SET_SECURE (1<<1)
#define | EXT_CSD_CMD_SET_CPSECURE (1<<2)
#define | EXT_CSD_BUS_WIDTH 183
#define | EXT_CSD_HS_TIMING 185

Detailed Description

Macro Definition Documentation

◆ EXT_CSD_BUS_WIDTH

#define EXT_CSD_BUS_WIDTH 183

mmc ext_csd offset

Definition at line 461 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_Clear_byte

#define EXT_CSD_Clear_byte 0x2

Definition at line 451 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_CMD_SET_CPSECURE

#define EXT_CSD_CMD_SET_CPSECURE (1<<2)

Definition at line 456 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_CMD_SET_NORMAL

#define EXT_CSD_CMD_SET_NORMAL (1<<0)

Definition at line 454 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_CMD_SET_SECURE

#define EXT_CSD_CMD_SET_SECURE (1<<1)

Definition at line 455 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_Command_set

#define EXT_CSD_Command_set 0x0

mmc ext_csd operation

Definition at line 449 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_HS_TIMING

#define EXT_CSD_HS_TIMING 185

Definition at line 462 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_Set_bit

#define EXT_CSD_Set_bit 0x1

Definition at line 450 of file sdio_fatfs/inc/at32_sdio.h.

◆ EXT_CSD_Write_byte

#define EXT_CSD_Write_byte 0x3

Definition at line 452 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_interrupt_flags_definition

Macros
SDIO_sdio_fatfs_interrupt_flags_definition
AT32F403_periph_examples » SDIO_sdio_fatfs

Macros

#define | SDIO_INTR_STS_WRITE_MASK
#define | SDIO_INTR_STS_READ_MASK

Detailed Description

Macro Definition Documentation

◆ SDIO_INTR_STS_READ_MASK

#define SDIO_INTR_STS_READ_MASK
Value:
(SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_RXERRO_FLAG | \
SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
SDIO_DTFAIL_FLAG
#define SDIO_DTFAIL_FLAG
Definition: at32f403_sdio.h:84
SDIO_RXERRO_FLAG
#define SDIO_RXERRO_FLAG
Definition: at32f403_sdio.h:88
SDIO_DTTIMEOUT_FLAG
#define SDIO_DTTIMEOUT_FLAG
Definition: at32f403_sdio.h:86
SDIO_SBITERR_FLAG
#define SDIO_SBITERR_FLAG
Definition: at32f403_sdio.h:92

Definition at line 474 of file sdio_fatfs/inc/at32_sdio.h.

◆ SDIO_INTR_STS_WRITE_MASK

#define SDIO_INTR_STS_WRITE_MASK
Value:
(SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_TXERRU_FLAG | \
SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
SDIO_TXERRU_FLAG
#define SDIO_TXERRU_FLAG
Definition: at32f403_sdio.h:87

Definition at line 472 of file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: SDIO_sdio_fatfs_exported_functions

Functions
SDIO_sdio_fatfs_exported_functions
AT32F403_periph_examples » SDIO_sdio_fatfs

Functions

sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clkdiv)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...

Detailed Description

Function Documentation

◆ mmc_stream_read()

sd_error_status_type mmc_stream_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

read mmc card data stream.

Parameters
buf | buffer of saving data from mmc card
addr | start address of data from mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1644 of file sd_mmc_card/src/at32_sdio.c.

◆ mmc_stream_write()

sd_error_status_type mmc_stream_write | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint32_t | len
 | ) |  |

write mmc card data stream.

Parameters
buf | data that writing to mmc card
addr | start address mmc card
len | data size
Return values
sd_error_status_type sd card error code.

Definition at line 1691 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_block_read()

sd_error_status_type sd_block_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1179 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_block_write()

sd_error_status_type sd_block_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size
 | ) |  |

allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
Return values
sd_error_status_type sd card error code.

Definition at line 1358 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_blocks_erase()

sd_error_status_type sd_blocks_erase | ( | long long | addr,
 |  | uint32_t | nblks
 | ) |  |

erase continuous data block

Parameters
addr | starting address
nblks | amount of erasing data block
Return values
sd_error_status_type sd card error code.

Definition at line 1021 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_card_info_get()

sd_error_status_type sd_card_info_get ( sd_card_info_struct_type * card_info )

returns information about specific card.

Parameters
card_info pointer to a sd_card_info_struct_type structure that contains all sd card information.
Return values
sd_error_status_type sd card error code.

Definition at line 523 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_card_init()

sd_error_status_type sd_card_init ( void )

intialises all cards or single card as the case may be card(s) come into standby state.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 408 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_deselect_select()

sd_error_status_type sd_deselect_select ( uint32_t addr )

selects od deselects the corresponding card.

Parameters
addr address of the card to be selected.
Return values
sd_error_status_type sd card error code.

Definition at line 798 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_device_mode_set()

sd_error_status_type sd_device_mode_set ( uint32_t mode )

set sdio work mode.

Parameters
mode parameter as following values:
  • SD_TRANSFER_POLLING_MODE: dma mode.
  • SD_TRANSFER_POLLING_MODE: polling mode.
Return values
sd_error_status_type sd card error code.

Definition at line 777 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_dma_config()

void sd_dma_config | ( | uint32_t * | mbuf,
 |  | uint32_t | buf_size,
 |  | dma_dir_type | dir
 | ) |  |

set dma configuation for sdio

Parameters
mbuf | buffer address
buf_size | transmission data size
dir | dma direction, it is DMA_DIR_MEMORY_TO_PERIPHERAL(writing data) or DMA_DIR_PERIPHERAL_TO_MEMORY(read data)
Return values
none

Definition at line 2697 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sdio_command_data_send().

◆ sd_init()

sd_error_status_type sd_init ( void )

initializes the sd card and put it into standby state (ready for data transfer).

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 70 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sdio_command_data_send().

◆ sd_irq_service()

sd_error_status_type sd_irq_service ( void )

allows to process all the interrupts that are high.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 1780 of file sd_mmc_card/src/at32_sdio.c.

Referenced by SDIO1_IRQHandler(), and SDIO2_IRQHandler().

◆ sd_mult_blocks_read()

sd_error_status_type sd_mult_blocks_read | ( | uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode.

Parameters
buf | pointer to the buffer that will contain the received data.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be read.
Return values
sd_error_status_type sd card error code.

Definition at line 1268 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_mult_blocks_write()

sd_error_status_type sd_mult_blocks_write | ( | const uint8_t * | buf,
 |  | long long | addr,
 |  | uint16_t | blk_size,
 |  | uint32_t | nblks
 | ) |  |

allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only.

Parameters
buf | pointer to the buffer that contain the data to be transferred.
addr | address from where data are to be read.
blk_size | the sd card data block size. the block size should be 512.
nblks | number of blocks to be written.
Return values
sd_error_status_type sd card error code.

Definition at line 1480 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_power_off()

sd_error_status_type sd_power_off ( void )

turns the sdio output signals off.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 394 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_power_on()

sd_error_status_type sd_power_on ( void )

enquires cards about their operating voltage and configures clock controls.

Parameters
none
Return values
sd_error_status_type sd card error code.

Definition at line 194 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sd_state_get()

sd_card_state_type sd_state_get ( void )

returns information about sd card.

Parameters
none.
Return values
sd_card_state_type sd card state code.

Definition at line 2480 of file sd_mmc_card/src/at32_sdio.c.

◆ sd_status_send()

sd_error_status_type sd_status_send ( uint32_t * p_card_status )

read current card status.

Parameters
p_card_status card status.
Return values
sd_error_status_type sd card error code.

Definition at line 2443 of file sd_mmc_card/src/at32_sdio.c.

Referenced by mmc_switch(), sd_block_write(), sd_mult_blocks_write(), and sd_state_get().

◆ sd_wide_bus_operation_config()

sd_error_status_type sd_wide_bus_operation_config ( sdio_bus_width_type mode )

enable wide bus opeartion for the requeseted card if supported by card.

Parameters
mode specifies the sd card wide bus mode. this parameter can be one of the following values:
  • SDIO_BUS_WIDTH_D8: 8-bit data transfer (only for mmc)
  • SDIO_BUS_WIDTH_D4: 4-bit data transfer
  • SDIO_BUS_WIDTH_D1: 1-bit data transfer
Return values
sd_error_status_type sd card error code.

Definition at line 734 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().

◆ sdio_clock_set()

void sdio_clock_set ( uint32_t clk_div )

set sdio clock devision factor.

Parameters
clkdiv sdio_ck = ahbclk / (clkdiv+2)
Return values
none

Definition at line 179 of file sd_mmc_card/src/at32_sdio.c.

Referenced by sd_init().


AT32F403 Firmwary Library: SPI_crc_transfer_polling

Macros | Functions | Variables
SPI_crc_transfer_polling
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

uint16_t | spi1_tx_buffer [32]
uint16_t | spi2_tx_buffer [32]
uint16_t | spi1_rx_buffer [32]
uint16_t | spi2_rx_buffer [32]
uint32_t | tx_index = 0
uint32_t | rx_index = 0
__IO uint16_t | crc1_value = 0
__IO uint16_t | crc2_value = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 32

Definition at line 36 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint16_t * | pbuffer1,
 |  | uint16_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer compare function.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
the result of compare

Definition at line 61 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 5

< gpio pins number 6

< gpio pins number 7

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

Definition at line 112 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< spi or i2s transmit data buffer empty flag

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< spi or i2s receive data buffer full flag

< spi or i2s transmit data buffer empty flag

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< spi or i2s receive data buffer full flag

< spi or i2s receive data buffer full flag

< spi or i2s receive data buffer full flag

< spi crc calculation error flag

< spi crc calculation error flag

< spi crc calculation error flag

< spi crc calculation error flag

Definition at line 166 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ spi_config()

static void spi_config ( void )
static

spi configuration.

Parameters
none
Return values
none

Definition at line 80 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.

Variable Documentation

◆ crc1_value

__IO uint16_t crc1_value = 0

Definition at line 48 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ crc2_value

__IO uint16_t crc2_value = 0

Definition at line 48 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ rx_index

uint32_t rx_index = 0

Definition at line 47 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ spi1_rx_buffer

uint16_t spi1_rx_buffer[32]

Definition at line 46 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ spi1_tx_buffer

uint16_t spi1_tx_buffer[32]
Initial value:
= {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C, 0x0D0E, 0x0F10,
0x1112, 0x1314, 0x1516, 0x1718, 0x191A, 0x1B1C, 0x1D1E, 0x1F20,
0x2122, 0x2324, 0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C, 0x3D3E, 0x3F40}

Definition at line 38 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ spi2_rx_buffer

uint16_t spi2_rx_buffer[32]

Definition at line 46 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ spi2_tx_buffer

uint16_t spi2_tx_buffer[32]
Initial value:
= {0x5152, 0x5354, 0x5556, 0x5758, 0x595A, 0x5B5C, 0x5D5E, 0x5F60,
0x6162, 0x6364, 0x6566, 0x6768, 0x696A, 0x6B6C, 0x6D6E, 0x6F70,
0x7172, 0x7374, 0x7576, 0x7778, 0x797A, 0x7B7C, 0x7D7E, 0x7F80,
0x8182, 0x8384, 0x8586, 0x8788, 0x898A, 0x8B8C, 0x8D8E, 0x8F90}

Definition at line 42 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ transfer_status1

volatile error_status transfer_status1 = ERROR

Definition at line 49 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ transfer_status2

volatile error_status transfer_status2 = ERROR

Definition at line 49 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().

◆ tx_index

uint32_t tx_index = 0

Definition at line 47 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: SPI_fullduplex_polling

Macros | Functions | Variables
SPI_fullduplex_polling
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | gpio_config (uint16_t spi1_mode, uint16_t spi2_mode)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t bufferlength)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_tx_buffer [32]
uint8_t | spi1_rx_buffer [32]
uint8_t | spi2_rx_buffer [32]
uint32_t | tx_index = 0
uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR
volatile error_status | transfer_status3 = ERROR
volatile error_status | transfer_status4 = ERROR

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 32

Definition at line 36 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | bufferlength
 | ) |  |

buffer compare function.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
the result of compare

Definition at line 62 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config | ( | uint16_t | spi1_mode,
 |  | uint16_t | spi2_mode
 | ) |  |
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 5

< gpio pins number 6

< gpio pins number 7

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

Definition at line 109 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< spi or i2s transmit data buffer empty flag

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< spi or i2s receive data buffer full flag

< spi or i2s transmit data buffer empty flag

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< spi or i2s receive data buffer full flag

Definition at line 201 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ spi_config()

static void spi_config ( void )
static

spi configuration.

Parameters
none
Return values
none

Definition at line 82 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.

Variable Documentation

◆ rx_index

uint32_t rx_index = 0

Definition at line 48 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ spi1_rx_buffer

uint8_t spi1_rx_buffer[32]

Definition at line 47 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ spi1_tx_buffer

uint8_t spi1_tx_buffer[32]
Initial value:
= {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20}

Definition at line 39 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ spi2_rx_buffer

uint8_t spi2_rx_buffer[32]

Definition at line 47 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ spi2_tx_buffer

uint8_t spi2_tx_buffer[32]
Initial value:
= {0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F, 0x60,
0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70}

Definition at line 43 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ spi_init_struct

spi_init_type spi_init_struct

Definition at line 38 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main(), spi_config(), spi_default_para_init(), spi_init(), spiflash_init(), touch_pin_init(), and usart_spi_configuration().

◆ transfer_status1

volatile error_status transfer_status1 = ERROR

Definition at line 49 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ transfer_status2

volatile error_status transfer_status2 = ERROR

Definition at line 49 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ transfer_status3

volatile error_status transfer_status3 = ERROR

Definition at line 50 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ transfer_status4

volatile error_status transfer_status4 = ERROR

Definition at line 50 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().

◆ tx_index

uint32_t tx_index = 0

Definition at line 48 of file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: SPI_halfduplex_interrupt

Macros | Functions | Variables
SPI_halfduplex_interrupt
AT32F403_periph_examples

Macros

#define | BUFFERSIZE 32
#define | BUFFER_SIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | SPI1_IRQHandler (void)
This function handles the spi1 interrupt request. More...
void | SPI2_IRQHandler (void)
This function handles the spi2 interrupt request. More...
static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_rx_buffer [32]
volatile uint32_t | tx_index = 0
volatile uint32_t | rx_index = 0
volatile error_status | transfer_status = ERROR

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 32

Definition at line 36 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

◆ BUFFERSIZE

#define BUFFERSIZE 32

Definition at line 42 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer compare function.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
the result of compare

Definition at line 58 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 84 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 119 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 5

< gpio pins number 7

< gpio pins number 13

< gpio pins number 14

< gpio pins number 13

Definition at line 111 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 58 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 152 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 71 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 49 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 128 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ SPI1_IRQHandler()

void SPI1_IRQHandler ( void )

This function handles the spi1 interrupt request.

Parameters
None
Return values
None

< spi or i2s transmit data buffer empty flag

< transmit data buffer empty interrupt

Definition at line 146 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ SPI2_IRQHandler()

void SPI2_IRQHandler ( void )

This function handles the spi2 interrupt request.

Parameters
None
Return values
None

< spi or i2s receive data buffer full flag

Definition at line 163 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ spi_config()

static void spi_config ( void )
static

spi configuration.

Parameters
none
Return values
none

< transmit data buffer empty interrupt

< receive data buffer full interrupt

Definition at line 78 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 110 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 137 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 97 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.

Variable Documentation

◆ rx_index

volatile uint32_t rx_index = 0

Definition at line 45 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ spi1_tx_buffer

uint8_t spi1_tx_buffer[32]
Initial value:
= {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20}

Definition at line 40 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ spi2_rx_buffer

uint8_t spi2_rx_buffer[32]

Definition at line 44 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ spi_init_struct

spi_init_type spi_init_struct

Definition at line 38 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by spi_config().

◆ transfer_status

volatile error_status transfer_status = ERROR

Definition at line 46 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.

Referenced by main().

◆ tx_index

volatile uint32_t tx_index = 0

Definition at line 45 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.


AT32F403 Firmwary Library: SPI_halfduplex_transceiver_switch

Macros | Functions | Variables
SPI_halfduplex_transceiver_switch
AT32F403_periph_examples

Macros

#define | BUFFERSIZE 32
#define | BUFFER_SIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | SPI1_IRQHandler (void)
This function handles the spi1 interrupt request. More...
void | SPI2_IRQHandler (void)
This function handles the spi2 interrupt request. More...
static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_tx_buffer [32]
uint8_t | spi1_rx_buffer [32]
uint8_t | spi2_rx_buffer [32]
volatile uint32_t | tx_index = 0
volatile uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 32

Definition at line 36 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

◆ BUFFERSIZE

#define BUFFERSIZE 32

Definition at line 44 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer compare function.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
the result of compare

Definition at line 62 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 86 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 5

< gpio pins number 7

< gpio pins number 13

< gpio pins number 14

< gpio pins number 13

Definition at line 115 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 60 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< transmit data buffer empty interrupt

< receive data buffer full interrupt

< receive data buffer full interrupt

< transmit data buffer empty interrupt

< spi or i2s busy flag

Definition at line 156 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 73 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ SPI1_IRQHandler()

void SPI1_IRQHandler ( void )

This function handles the spi1 interrupt request.

Parameters
None
Return values
None

< spi or i2s transmit data buffer empty flag

< transmit data buffer empty interrupt

< spi or i2s receive data buffer full flag

< receive data buffer full interrupt

Definition at line 148 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ SPI2_IRQHandler()

void SPI2_IRQHandler ( void )

This function handles the spi2 interrupt request.

Parameters
None
Return values
None

< spi or i2s transmit data buffer empty flag

< transmit data buffer empty interrupt

< spi or i2s receive data buffer full flag

Definition at line 181 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ spi_config()

static void spi_config ( void )
static

spi configuration.

Parameters
none
Return values
none

< transmit data buffer empty interrupt

< receive data buffer full interrupt

Definition at line 82 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 139 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 99 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.

Variable Documentation

◆ rx_index

volatile uint32_t rx_index = 0

Definition at line 49 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ spi1_rx_buffer

uint8_t spi1_rx_buffer[32]

Definition at line 48 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main(), and SPI1_IRQHandler().

◆ spi1_tx_buffer

uint8_t spi1_tx_buffer[32]
Initial value:
= {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20}

Definition at line 40 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ spi2_rx_buffer

uint8_t spi2_rx_buffer[32]

Definition at line 48 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ spi2_tx_buffer

uint8_t spi2_tx_buffer[32]
Initial value:
= {0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F, 0x60,
0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70}

Definition at line 44 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ spi_init_struct

spi_init_type spi_init_struct

Definition at line 39 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main(), and spi_config().

◆ transfer_status1

volatile error_status transfer_status1 = ERROR

Definition at line 50 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ transfer_status2

volatile error_status transfer_status2 = ERROR

Definition at line 50 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().

◆ tx_index

volatile uint32_t tx_index = 0

Definition at line 49 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: SPI_only_receive_mode_polling

Macros | Functions | Variables
SPI_only_receive_mode_polling
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_rx_buffer [32]
uint32_t | tx_index = 0
uint32_t | rx_index = 0
volatile error_status | transfer_status = ERROR

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 32

Definition at line 36 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer compare function.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
the result of compare

Definition at line 57 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< gpio pins number 5

< gpio pins number 7

< gpio pins number 13

< gpio pins number 15

< gpio pins number 13

Definition at line 105 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< spi or i2s transmit data buffer empty flag

< spi or i2s receive data buffer full flag

Definition at line 146 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ spi_config()

static void spi_config ( void )
static

spi configuration.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.

Variable Documentation

◆ rx_index

uint32_t rx_index = 0

Definition at line 44 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main(), SPI1_IRQHandler(), and SPI2_IRQHandler().

◆ spi1_tx_buffer

uint8_t spi1_tx_buffer[32]
Initial value:
= {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20}

Definition at line 39 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main().

◆ spi2_rx_buffer

uint8_t spi2_rx_buffer[32]

Definition at line 43 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main().

◆ spi_init_struct

spi_init_type spi_init_struct

Definition at line 38 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by spi_config().

◆ transfer_status

volatile error_status transfer_status = ERROR

Definition at line 45 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main().

◆ tx_index

uint32_t tx_index = 0

Definition at line 44 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: SPI_use_jtagpin_hardwarecs_dma

Macros | Functions | Variables
SPI_use_jtagpin_hardwarecs_dma
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_rx_buffer [32]
__IO uint8_t | tx_index = 0
volatile error_status | transfer_status = ERROR

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 32

Definition at line 36 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer compare function.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
the result of compare

Definition at line 56 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ gpio_config()

static void gpio_config ( void )
static

gpio configuration.

Parameters
none
Return values
none

< jtag-dp disabled and sw-dp enabled

< spi1_cs/i2s1_ws(pa15), spi1_sck/i2s1_ck(pb3), spi1_miso(pb4), spi1_mosi/i2s1_sd(pb5), i2s1_mck(pb0)

< gpio pins number 3

< gpio pins number 5

< gpio pins number 15

< gpio pins number 13

< gpio pins number 14

< gpio pins number 12

Definition at line 124 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< spi or i2s transmit data buffer empty flag

< dma1 channel4 full data transfer flag

Definition at line 177 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ spi_config()

static void spi_config ( void )
static

spi configuration.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.

Variable Documentation

◆ spi1_tx_buffer

uint8_t spi1_tx_buffer[32]
Initial value:
= {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20}

Definition at line 38 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Referenced by main(), and SPI1_IRQHandler().

◆ spi2_rx_buffer

uint8_t spi2_rx_buffer[32]

Definition at line 42 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Referenced by main(), and spi_config().

◆ transfer_status

volatile error_status transfer_status = ERROR

Definition at line 44 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Referenced by main().

◆ tx_index

__IO uint8_t tx_index = 0

Definition at line 43 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.

Referenced by main(), SPI1_IRQHandler(), and SPI2_IRQHandler().


AT32F403 Firmwary Library: SPI_w25q_flash

Modules | Macros | Functions | Variables
SPI_w25q_flash
AT32F403_periph_examples

Modules

SPI_flash_cs_pin_definition
SPI_flash_id_definition
SPI_flash_operation_definition
SPI_flash_exported_functions

Macros

#define | SPI_TRANS_DMA
#define | FLASH_TEST_ADDR 0x1000
#define | BUF_SIZE 0x256

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | tx_data_fill (void)
transfer data fill. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...
void | spiflash_init (void)
spi configuration. More...
void | spiflash_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data to flash More...
void | spiflash_read (uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
read data from flash More...
void | spiflash_sector_erase (uint32_t erase_addr)
erase a sector data More...
void | spiflash_write_nocheck (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data without check More...
void | spiflash_page_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write a page data More...
void | spi_bytes_write (uint8_t *pbuffer, uint32_t length)
write data continuously More...
void | spi_bytes_read (uint8_t *pbuffer, uint32_t length)
read data continuously More...
void | spiflash_wait_busy (void)
wait program done More...
uint8_t | spiflash_read_sr1 (void)
read sr1 register More...
void | spiflash_write_enable (void)
enable write operation More...
uint16_t | spiflash_read_id (void)
read device id More...
uint8_t | spi_byte_write (uint8_t data)
write a byte to flash More...
uint8_t | spi_byte_read (void)
read a byte to flash More...

Variables

uint8_t | tx_buffer [0x256]
uint8_t | rx_buffer [0x256]
volatile error_status | transfer_status = ERROR
uint8_t | spiflash_sector_buf [SPIF_SECTOR_SIZE]

Detailed Description

Macro Definition Documentation

◆ BUF_SIZE

#define BUF_SIZE 0x256

Definition at line 38 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

◆ FLASH_TEST_ADDR

#define FLASH_TEST_ADDR 0x1000

Definition at line 37 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

◆ SPI_TRANS_DMA

#define SPI_TRANS_DMA

Definition at line 44 of file spi_flash.h.

Function Documentation

◆ buffer_compare()

error_status buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

buffer compare function.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
the result of compare

Definition at line 67 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 87 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ spi_byte_read()

uint8_t spi_byte_read ( void )

read a byte to flash

Parameters
none
Return values
flash return data

Definition at line 502 of file spi_flash.c.

Referenced by spiflash_read_id(), and spiflash_read_sr1().

◆ spi_byte_write()

uint8_t spi_byte_write ( uint8_t data )

write a byte to flash

Parameters
data data to write
Return values
flash return data

Definition at line 485 of file spi_flash.c.

Referenced by spi_byte_read(), spiflash_page_write(), spiflash_read(), spiflash_read_id(), spiflash_read_sr1(), spiflash_sector_erase(), and spiflash_write_enable().

◆ spi_bytes_read()

void spi_bytes_read | ( | uint8_t * | pbuffer,
 |  | uint32_t | length
 | ) |  |

read data continuously

Parameters
pbuffer | buffer to save data
length | buffer length
Return values
none

Definition at line 366 of file spi_flash.c.

Referenced by spiflash_read().

◆ spi_bytes_write()

void spi_bytes_write | ( | uint8_t * | pbuffer,
 |  | uint32_t | length
 | ) |  |

write data continuously

Parameters
pbuffer | the pointer for data buffer
length | buffer length
Return values
none

Definition at line 301 of file spi_flash.c.

Referenced by spiflash_page_write().

◆ spiflash_init()

void spiflash_init ( void )

spi configuration.

Parameters
none
Return values
none

Definition at line 42 of file spi_flash.c.

Referenced by main().

◆ spiflash_page_write()

void spiflash_page_write | ( | uint8_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | length
 | ) |  |

write a page data

Parameters
pbuffer | the pointer for data buffer
write_addr | the address where the data is written
length | buffer length
Return values
none

Definition at line 270 of file spi_flash.c.

Referenced by spiflash_write_nocheck().

◆ spiflash_read()

void spiflash_read | ( | uint8_t * | pbuffer,
 |  | uint32_t | read_addr,
 |  | uint32_t | length
 | ) |  |

read data from flash

Parameters
pbuffer | the pointer for data buffer
read_addr | the address where the data is read
length | buffer length
Return values
none

Definition at line 185 of file spi_flash.c.

Referenced by main(), and spiflash_write().

◆ spiflash_read_id()

uint16_t spiflash_read_id ( void )

read device id

Parameters
none
Return values
device id

Definition at line 466 of file spi_flash.c.

Referenced by main().

◆ spiflash_read_sr1()

uint8_t spiflash_read_sr1 ( void )

read sr1 register

Parameters
none
Return values
none

Definition at line 439 of file spi_flash.c.

Referenced by spiflash_wait_busy().

◆ spiflash_sector_erase()

void spiflash_sector_erase ( uint32_t erase_addr )

erase a sector data

Parameters
erase_addr sector address to erase
Return values
none

Definition at line 201 of file spi_flash.c.

Referenced by main(), and spiflash_write().

◆ spiflash_wait_busy()

void spiflash_wait_busy ( void )

wait program done

Parameters
none
Return values
none

Definition at line 429 of file spi_flash.c.

Referenced by spiflash_page_write(), and spiflash_sector_erase().

◆ spiflash_write()

void spiflash_write | ( | uint8_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | length
 | ) |  |

write data to flash

Parameters
pbuffer | the pointer for data buffer
write_addr | the address where the data is written
length | buffer length
Return values
none

Definition at line 97 of file spi_flash.c.

Referenced by main().

◆ spiflash_write_enable()

void spiflash_write_enable ( void )

enable write operation

Parameters
none
Return values
none

Definition at line 454 of file spi_flash.c.

Referenced by spiflash_page_write(), and spiflash_sector_erase().

◆ spiflash_write_nocheck()

void spiflash_write_nocheck | ( | uint8_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | length
 | ) |  |

write data without check

Parameters
pbuffer | the pointer for data buffer
write_addr | the address where the data is written
length | buffer length
Return values
none

Definition at line 222 of file spi_flash.c.

Referenced by spiflash_write().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

◆ tx_data_fill()

void tx_data_fill ( void )

transfer data fill.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

Referenced by main().

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.

Variable Documentation

◆ rx_buffer

uint8_t rx_buffer[0x256]

Definition at line 41 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

Referenced by main().

◆ spiflash_sector_buf

uint8_t spiflash_sector_buf[SPIF_SECTOR_SIZE]

Definition at line 35 of file spi_flash.c.

Referenced by spiflash_write().

◆ transfer_status

volatile error_status transfer_status = ERROR

Definition at line 42 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

Referenced by main().

◆ tx_buffer

uint8_t tx_buffer[0x256]

Definition at line 40 of file project/at_start_f403/examples/spi/w25q_flash/src/main.c.

Referenced by main(), and tx_data_fill().


AT32F403 Firmwary Library: SPI_flash_cs_pin_definition

Macros
SPI_flash_cs_pin_definition
AT32F403_periph_examples » SPI_w25q_flash

Macros

#define | FLASH_CS_HIGH() gpio_bits_set(GPIOB, GPIO_PINS_12)
#define | FLASH_CS_LOW() gpio_bits_reset(GPIOB, GPIO_PINS_12)

Detailed Description

Macro Definition Documentation

◆ FLASH_CS_HIGH

#define FLASH_CS_HIGH ( ) gpio_bits_set(GPIOB, GPIO_PINS_12)

Definition at line 50 of file spi_flash.h.

◆ FLASH_CS_LOW

#define FLASH_CS_LOW ( ) gpio_bits_reset(GPIOB, GPIO_PINS_12)

Definition at line 51 of file spi_flash.h.


AT32F403 Firmwary Library: SPI_flash_id_definition

Macros
SPI_flash_id_definition
AT32F403_periph_examples » SPI_w25q_flash

Macros

#define | W25Q80 0xEF13
#define | W25Q16 0xEF14
#define | W25Q32 0xEF15
#define | W25Q64 0xEF16
#define | W25Q128 0xEF17

Detailed Description

Macro Definition Documentation

◆ W25Q128

#define W25Q128 0xEF17

Definition at line 69 of file spi_flash.h.

◆ W25Q16

#define W25Q16 0xEF14

Definition at line 65 of file spi_flash.h.

◆ W25Q32

#define W25Q32 0xEF15

Definition at line 66 of file spi_flash.h.

◆ W25Q64

#define W25Q64 0xEF16

Definition at line 67 of file spi_flash.h.

◆ W25Q80

#define W25Q80 0xEF13

Definition at line 64 of file spi_flash.h.


AT32F403 Firmwary Library: SPI_flash_operation_definition

Macros
SPI_flash_operation_definition
AT32F403_periph_examples » SPI_w25q_flash

Macros

#define | SPIF_CHIP_SIZE 0x1000000
#define | SPIF_SECTOR_SIZE 4096
#define | SPIF_PAGE_SIZE 256
#define | SPIF_WRITEENABLE 0x06
#define | SPIF_WRITEDISABLE 0x04
#define | SPIF_READSTATUSREG1 0x05
#define | SPIF_WRITESTATUSREG1 0x01
#define | SPIF_READSTATUSREG2 0x35
#define | SPIF_WRITESTATUSREG2 0x31
#define | SPIF_READSTATUSREG3 0x15
#define | SPIF_WRITESTATUSREG3 0x11
#define | SPIF_READDATA 0x03
#define | SPIF_FASTREADDATA 0x0B
#define | SPIF_FASTREADDUAL 0x3B
#define | SPIF_PAGEPROGRAM 0x02
#define | SPIF_BLOCKERASE 0xD8
#define | SPIF_SECTORERASE 0x20
#define | SPIF_CHIPERASE 0xC7
#define | SPIF_POWERDOWN 0xB9
#define | SPIF_RELEASEPOWERDOWN 0xAB
#define | SPIF_DEVICEID 0xAB
#define | SPIF_MANUFACTDEVICEID 0x90
#define | SPIF_JEDECDEVICEID 0x9F
#define | FLASH_SPI_DUMMY_BYTE 0xA5

Detailed Description

Macro Definition Documentation

◆ FLASH_SPI_DUMMY_BYTE

#define FLASH_SPI_DUMMY_BYTE 0xA5

Definition at line 107 of file spi_flash.h.

◆ SPIF_BLOCKERASE

#define SPIF_BLOCKERASE 0xD8

Definition at line 99 of file spi_flash.h.

◆ SPIF_CHIP_SIZE

#define SPIF_CHIP_SIZE 0x1000000

Definition at line 79 of file spi_flash.h.

◆ SPIF_CHIPERASE

#define SPIF_CHIPERASE 0xC7

Definition at line 101 of file spi_flash.h.

◆ SPIF_DEVICEID

#define SPIF_DEVICEID 0xAB

Definition at line 104 of file spi_flash.h.

◆ SPIF_FASTREADDATA

#define SPIF_FASTREADDATA 0x0B

Definition at line 95 of file spi_flash.h.

◆ SPIF_FASTREADDUAL

#define SPIF_FASTREADDUAL 0x3B

Definition at line 96 of file spi_flash.h.

◆ SPIF_JEDECDEVICEID

#define SPIF_JEDECDEVICEID 0x9F

Definition at line 106 of file spi_flash.h.

◆ SPIF_MANUFACTDEVICEID

#define SPIF_MANUFACTDEVICEID 0x90

Definition at line 105 of file spi_flash.h.

◆ SPIF_PAGE_SIZE

#define SPIF_PAGE_SIZE 256

Definition at line 81 of file spi_flash.h.

◆ SPIF_PAGEPROGRAM

#define SPIF_PAGEPROGRAM 0x02

Definition at line 97 of file spi_flash.h.

◆ SPIF_POWERDOWN

#define SPIF_POWERDOWN 0xB9

Definition at line 102 of file spi_flash.h.

◆ SPIF_READDATA

#define SPIF_READDATA 0x03

Definition at line 94 of file spi_flash.h.

◆ SPIF_READSTATUSREG1

#define SPIF_READSTATUSREG1 0x05

Definition at line 86 of file spi_flash.h.

◆ SPIF_READSTATUSREG2

#define SPIF_READSTATUSREG2 0x35

Definition at line 89 of file spi_flash.h.

◆ SPIF_READSTATUSREG3

#define SPIF_READSTATUSREG3 0x15

Definition at line 92 of file spi_flash.h.

◆ SPIF_RELEASEPOWERDOWN

#define SPIF_RELEASEPOWERDOWN 0xAB

Definition at line 103 of file spi_flash.h.

◆ SPIF_SECTOR_SIZE

#define SPIF_SECTOR_SIZE 4096

Definition at line 80 of file spi_flash.h.

◆ SPIF_SECTORERASE

#define SPIF_SECTORERASE 0x20

Definition at line 100 of file spi_flash.h.

◆ SPIF_WRITEDISABLE

#define SPIF_WRITEDISABLE 0x04

Definition at line 84 of file spi_flash.h.

◆ SPIF_WRITEENABLE

#define SPIF_WRITEENABLE 0x06

Definition at line 83 of file spi_flash.h.

◆ SPIF_WRITESTATUSREG1

#define SPIF_WRITESTATUSREG1 0x01

Definition at line 87 of file spi_flash.h.

◆ SPIF_WRITESTATUSREG2

#define SPIF_WRITESTATUSREG2 0x31

Definition at line 90 of file spi_flash.h.

◆ SPIF_WRITESTATUSREG3

#define SPIF_WRITESTATUSREG3 0x11

Definition at line 93 of file spi_flash.h.


AT32F403 Firmwary Library: SPI_flash_exported_functions

Functions
SPI_flash_exported_functions
AT32F403_periph_examples » SPI_w25q_flash

Functions

void | spiflash_init (void)
spi configuration. More...
void | spiflash_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data to flash More...
void | spiflash_read (uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
read data from flash More...
void | spiflash_sector_erase (uint32_t erase_addr)
erase a sector data More...
void | spiflash_write_nocheck (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data without check More...
void | spiflash_page_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write a page data More...
void | spi_bytes_write (uint8_t *pbuffer, uint32_t length)
write data continuously More...
void | spi_bytes_read (uint8_t *pbuffer, uint32_t length)
read data continuously More...
void | spiflash_wait_busy (void)
wait program done More...
uint8_t | spiflash_read_sr1 (void)
read sr1 register More...
void | spiflash_write_enable (void)
enable write operation More...
uint16_t | spiflash_read_id (void)
read device id More...
uint8_t | spi_byte_write (uint8_t data)
write a byte to flash More...
uint8_t | spi_byte_read (void)
read a byte to flash More...

Detailed Description

Function Documentation

◆ spi_byte_read()

uint8_t spi_byte_read ( void )

read a byte to flash

Parameters
none
Return values
flash return data

Definition at line 502 of file spi_flash.c.

Referenced by spiflash_read_id(), and spiflash_read_sr1().

◆ spi_byte_write()

uint8_t spi_byte_write ( uint8_t data )

write a byte to flash

Parameters
data data to write
Return values
flash return data

Definition at line 485 of file spi_flash.c.

Referenced by spi_byte_read(), spiflash_page_write(), spiflash_read(), spiflash_read_id(), spiflash_read_sr1(), spiflash_sector_erase(), and spiflash_write_enable().

◆ spi_bytes_read()

void spi_bytes_read | ( | uint8_t * | pbuffer,
 |  | uint32_t | length
 | ) |  |

read data continuously

Parameters
pbuffer | buffer to save data
length | buffer length
Return values
none

Definition at line 366 of file spi_flash.c.

Referenced by spiflash_read().

◆ spi_bytes_write()

void spi_bytes_write | ( | uint8_t * | pbuffer,
 |  | uint32_t | length
 | ) |  |

write data continuously

Parameters
pbuffer | the pointer for data buffer
length | buffer length
Return values
none

Definition at line 301 of file spi_flash.c.

Referenced by spiflash_page_write().

◆ spiflash_init()

void spiflash_init ( void )

spi configuration.

Parameters
none
Return values
none

Definition at line 42 of file spi_flash.c.

Referenced by main().

◆ spiflash_page_write()

void spiflash_page_write | ( | uint8_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | length
 | ) |  |

write a page data

Parameters
pbuffer | the pointer for data buffer
write_addr | the address where the data is written
length | buffer length
Return values
none

Definition at line 270 of file spi_flash.c.

Referenced by spiflash_write_nocheck().

◆ spiflash_read()

void spiflash_read | ( | uint8_t * | pbuffer,
 |  | uint32_t | read_addr,
 |  | uint32_t | length
 | ) |  |

read data from flash

Parameters
pbuffer | the pointer for data buffer
read_addr | the address where the data is read
length | buffer length
Return values
none

Definition at line 185 of file spi_flash.c.

Referenced by main(), and spiflash_write().

◆ spiflash_read_id()

uint16_t spiflash_read_id ( void )

read device id

Parameters
none
Return values
device id

Definition at line 466 of file spi_flash.c.

Referenced by main().

◆ spiflash_read_sr1()

uint8_t spiflash_read_sr1 ( void )

read sr1 register

Parameters
none
Return values
none

Definition at line 439 of file spi_flash.c.

Referenced by spiflash_wait_busy().

◆ spiflash_sector_erase()

void spiflash_sector_erase ( uint32_t erase_addr )

erase a sector data

Parameters
erase_addr sector address to erase
Return values
none

Definition at line 201 of file spi_flash.c.

Referenced by main(), and spiflash_write().

◆ spiflash_wait_busy()

void spiflash_wait_busy ( void )

wait program done

Parameters
none
Return values
none

Definition at line 429 of file spi_flash.c.

Referenced by spiflash_page_write(), and spiflash_sector_erase().

◆ spiflash_write()

void spiflash_write | ( | uint8_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | length
 | ) |  |

write data to flash

Parameters
pbuffer | the pointer for data buffer
write_addr | the address where the data is written
length | buffer length
Return values
none

Definition at line 97 of file spi_flash.c.

Referenced by main().

◆ spiflash_write_enable()

void spiflash_write_enable ( void )

enable write operation

Parameters
none
Return values
none

Definition at line 454 of file spi_flash.c.

Referenced by spiflash_page_write(), and spiflash_sector_erase().

◆ spiflash_write_nocheck()

void spiflash_write_nocheck | ( | uint8_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | length
 | ) |  |

write data without check

Parameters
pbuffer | the pointer for data buffer
write_addr | the address where the data is written
length | buffer length
Return values
none

Definition at line 222 of file spi_flash.c.

Referenced by spiflash_write().


AT32F403 Firmwary Library: TMR_6_steps

Functions | Variables
TMR_6_steps
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | systick_configuration (void)
configures the systick. More...
int | main (void)
main function. More...
void | TMR1_TRG_HALL_TMR11_IRQHandler (void)
this function handles tmr1 trigger and hall interrupts requests. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_brkdt_config_type | tmr_brkdt_config_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
__IO uint32_t | step = 1

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 8

< gpio pins number 9

< gpio pins number 10

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

< gpio pins number 12

< tmr interrupt hall

Definition at line 51 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ systick_configuration()

void systick_configuration ( void )

configures the systick.

Parameters
none
Return values
none

Definition at line 183 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

Referenced by main().

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

◆ TMR1_TRG_HALL_TMR11_IRQHandler()

void TMR1_TRG_HALL_TMR11_IRQHandler ( void )

this function handles tmr1 trigger and hall interrupts requests.

Parameters
none
Return values
none

< tmr flag hall

Definition at line 200 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 39 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

Referenced by main(), and systick_configuration().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

Referenced by main().

◆ step

__IO uint32_t step = 1

Definition at line 41 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

Referenced by TMR1_TRG_HALL_TMR11_IRQHandler().

◆ tmr_brkdt_config_struct

tmr_brkdt_config_type tmr_brkdt_config_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 37 of file project/at_start_f403/examples/tmr/6_steps/src/main.c.

Referenced by main(), tmr_output_channel_config(), and tmr_output_default_para_init().


AT32F403 Firmwary Library: TMR_7_pwm_output

Functions | Variables
TMR_7_pwm_output
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | timer_period = 0
uint16_t | channel1_pulse = 0
uint16_t | channel2_pulse = 0
uint16_t | channel3_pulse = 0
uint16_t | channel4_pulse = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 8

< gpio pins number 9

< gpio pins number 10

< gpio pins number 11

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

< gpio pins number 12

Definition at line 48 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.

Variable Documentation

◆ channel1_pulse

uint16_t channel1_pulse = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().

◆ channel2_pulse

uint16_t channel2_pulse = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().

◆ channel3_pulse

uint16_t channel3_pulse = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().

◆ channel4_pulse

uint16_t channel4_pulse = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().

◆ timer_period

uint16_t timer_period = 0

Definition at line 40 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 37 of file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_cascade_synchro

Functions | Variables
TMR_cascade_synchro
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 0

< gpio pins number 6

Definition at line 44 of file project/at_start_f403/examples/tmr/cascade_synchro/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.

Variable Documentation

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/cascade_synchro/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 37 of file project/at_start_f403/examples/tmr/cascade_synchro/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_complementary_signals

Functions | Variables
TMR_complementary_signals
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_brkdt_config_type | tmr_brkdt_config_struct = {0}
uint16_t | timer_period = 0
uint16_t | channel1_pulse = 0
uint16_t | channel2_pulse = 0
uint16_t | channel3_pulse = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 8

< gpio pins number 9

< gpio pins number 10

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

< gpio pins number 12

Definition at line 49 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.

Variable Documentation

◆ channel1_pulse

uint16_t channel1_pulse = 0

Definition at line 42 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().

◆ channel2_pulse

uint16_t channel2_pulse = 0

Definition at line 42 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().

◆ channel3_pulse

uint16_t channel3_pulse = 0

Definition at line 42 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().

◆ timer_period

uint16_t timer_period = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().

◆ tmr_brkdt_config_struct

tmr_brkdt_config_type tmr_brkdt_config_struct = {0}

Definition at line 39 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 37 of file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_dma

Functions | Variables
TMR_dma
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | timer_period = 0
uint16_t | src_buffer [3] = {0, 0, 0}

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 10

< gpio pins number 15

Definition at line 49 of file project/at_start_f403/examples/tmr/dma/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 39 of file project/at_start_f403/examples/tmr/dma/src/main.c.

Referenced by main().

◆ dma_init_struct

dma_init_type dma_init_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/tmr/dma/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/dma/src/main.c.

Referenced by main().

◆ src_buffer

uint16_t src_buffer[3] = {0, 0, 0}

Definition at line 42 of file project/at_start_f403/examples/tmr/dma/src/main.c.

Referenced by main().

◆ timer_period

uint16_t timer_period = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/dma/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 37 of file project/at_start_f403/examples/tmr/dma/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_dma_burst

Functions | Variables
TMR_dma_burst
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | timer_period = 0
uint16_t | src_buffer [3] = {0x0FFF, 0x0000, 0x0555}

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 8

Definition at line 49 of file project/at_start_f403/examples/tmr/dma_burst/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 39 of file project/at_start_f403/examples/tmr/dma_burst/src/main.c.

Referenced by main().

◆ dma_init_struct

dma_init_type dma_init_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/tmr/dma_burst/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/dma_burst/src/main.c.

Referenced by main().

◆ src_buffer

uint16_t src_buffer[3] = {0x0FFF, 0x0000, 0x0555}

Definition at line 42 of file project/at_start_f403/examples/tmr/dma_burst/src/main.c.

Referenced by main().

◆ timer_period

uint16_t timer_period = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/dma_burst/src/main.c.

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 37 of file project/at_start_f403/examples/tmr/dma_burst/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_encoder_tmr2

Functions | Variables
TMR_encoder_tmr2
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint32_t | counter

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 0

< gpio pins number 1

< gpio pins number 2

< gpio pins number 3

< gpio pins number 2

< gpio pins number 3

< gpio pins number 2

< gpio pins number 3

Definition at line 47 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.

Variable Documentation

◆ counter

uint32_t counter

Definition at line 40 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c.

Referenced by main().

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_external_clock

Functions | Variables
TMR_external_clock
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_input_config_type tmr_input_config_struct

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 0

< gpio pins number 7

Definition at line 46 of file project/at_start_f403/examples/tmr/external_clock/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/tmr/external_clock/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/external_clock/src/main.c.

Referenced by main().

◆ tmr_input_config_struct

tmr_input_config_type tmr_input_config_struct

Definition at line 39 of file project/at_start_f403/examples/tmr/external_clock/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 38 of file project/at_start_f403/examples/tmr/external_clock/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_hall_xor_tmr2

Functions | Variables
TMR_hall_xor_tmr2
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles TMR2 trigger exception. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_input_config_type tmr_input_config_struct

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 0

< gpio pins number 1

< gpio pins number 2

< gpio pins number 3

< gpio pins number 6

< gpio pins number 7

< gpio pins number 8

< tmr interrupt trigger

< gpio pins number 3

< gpio pins number 6

< gpio pins number 7

< gpio pins number 3

< gpio pins number 6

< gpio pins number 7

Definition at line 46 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

◆ TMR2_GLOBAL_IRQHandler()

void TMR2_GLOBAL_IRQHandler ( void )

this function handles TMR2 trigger exception.

Parameters
none
Return values
none

< tmr flag trigger

< gpio pins number 8

< tmr flag trigger

Definition at line 137 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c.

Referenced by main().

◆ tmr_input_config_struct

tmr_input_config_type tmr_input_config_struct

Definition at line 39 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 38 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c.


AT32F403 Firmwary Library: TMR_hang_mode

Functions | Variables
TMR_hang_mode
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_input_config_type tmr_input_config_struct

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 8

< gpio pins number 9

Definition at line 46 of file project/at_start_f403/examples/tmr/hang_mode/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/tmr/hang_mode/src/main.c.

Referenced by main().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/hang_mode/src/main.c.

Referenced by main().

◆ tmr_input_config_struct

tmr_input_config_type tmr_input_config_struct

Definition at line 39 of file project/at_start_f403/examples/tmr/hang_mode/src/main.c.

Referenced by main().

◆ tmr_output_struct

tmr_output_config_type tmr_output_struct

Definition at line 38 of file project/at_start_f403/examples/tmr/hang_mode/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_input_capture

Functions | Variables
TMR_input_capture
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | delay (uint32_t time)
delay function More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | TMR3_GLOBAL_IRQHandler (void)
this function handles tmr3 trigger exception. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_input_config_type tmr_input_config_struct
__IO uint32_t | tmr3freq = 0
__IO uint32_t | sys_counter = 0
__IO uint16_t | capturenumber = 0
__IO uint16_t | ic3readvalue1 = 0
__IO uint16_t | ic3readvalue2 = 0
__IO uint32_t | capture = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ delay()

void delay ( uint32_t time )

delay function

Parameters
time:number of time to delay
Return values
none

Definition at line 52 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< gpio pins number 7

< tmr interrupt channel 2

Definition at line 102 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

◆ TMR3_GLOBAL_IRQHandler()

void TMR3_GLOBAL_IRQHandler ( void )

this function handles tmr3 trigger exception.

Parameters
none
Return values
none

< tmr flag channel 2

< tmr flag channel 2

Definition at line 64 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file app_led3_toggle/src/usart.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.

Variable Documentation

◆ capture

__IO uint32_t capture = 0

Definition at line 45 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by TMR3_GLOBAL_IRQHandler().

◆ capturenumber

__IO uint16_t capturenumber = 0

Definition at line 43 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by TMR3_GLOBAL_IRQHandler().

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by main(), and TMR3_GLOBAL_IRQHandler().

◆ gpio_init_struct

gpio_init_type gpio_init_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by main().

◆ ic3readvalue1

__IO uint16_t ic3readvalue1 = 0

Definition at line 44 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by TMR3_GLOBAL_IRQHandler().

◆ ic3readvalue2

__IO uint16_t ic3readvalue2 = 0

Definition at line 44 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by TMR3_GLOBAL_IRQHandler().

◆ sys_counter

__IO uint32_t sys_counter = 0

Definition at line 42 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

◆ tmr3freq

__IO uint32_t tmr3freq = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by main(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_input_config_struct

tmr_input_config_type tmr_input_config_struct

Definition at line 38 of file project/at_start_f403/examples/tmr/input_capture/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_oc_high

Functions | Variables
TMR_oc_high
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles tmr2 global interrupt request. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | ccr1_val = 1000
uint16_t | ccr2_val = 500
uint16_t | ccr3_val = 250
uint16_t | ccr4_val = 125
uint16_t | prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< tmr interrupt channel 1

< tmr interrupt channel 2

< tmr interrupt channel 3

< tmr interrupt channel 4

< gpio pins number 6

< gpio pins number 7

< gpio pins number 8

< gpio pins number 9

Definition at line 72 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ TMR2_GLOBAL_IRQHandler()

void TMR2_GLOBAL_IRQHandler ( void )

this function handles tmr2 global interrupt request.

Parameters
none
Return values
none

< tmr flag channel 1

< tmr flag channel 1

< gpio pins number 6

< tmr flag channel 2

< tmr flag channel 2

< gpio pins number 7

< tmr flag channel 3

< tmr flag channel 3

< gpio pins number 8

< tmr flag channel 4

< gpio pins number 9

Definition at line 138 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.

Variable Documentation

◆ ccr1_val

uint16_t ccr1_val = 1000

Definition at line 38 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

Referenced by main().

◆ ccr2_val

uint16_t ccr2_val = 500

Definition at line 39 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

Referenced by main().

◆ ccr3_val

uint16_t ccr3_val = 250

Definition at line 40 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

Referenced by main().

◆ ccr4_val

uint16_t ccr4_val = 125

Definition at line 41 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

Referenced by main().

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

Referenced by main().

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 42 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

Referenced by main(), and mclk_tmr1_init().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/oc_high/src/main.c.

Referenced by main(), mclk_tmr1_init(), and tmr1_config().


AT32F403 Firmwary Library: TMR_oc_low

Functions | Variables
TMR_oc_low
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles tmr2 global interrupt request. More...
void | gpio_configuration (void)
configure the gpioc pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 1000
uint16_t | ccr2_val = 500
uint16_t | ccr3_val = 250
uint16_t | ccr4_val = 125
uint16_t | prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the gpioc pins.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

< gpio pins number 8

< gpio pins number 9

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< tmr interrupt channel 1

< tmr interrupt channel 2

< tmr interrupt channel 3

< tmr interrupt channel 4

< gpio pins number 6

< gpio pins number 7

< gpio pins number 8

< gpio pins number 9

Definition at line 70 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ TMR2_GLOBAL_IRQHandler()

void TMR2_GLOBAL_IRQHandler ( void )

this function handles tmr2 global interrupt request.

Parameters
none
Return values
none

< tmr flag channel 1

< tmr flag channel 1

< gpio pins number 6

< tmr flag channel 2

< tmr flag channel 2

< gpio pins number 7

< tmr flag channel 3

< tmr flag channel 3

< gpio pins number 8

< tmr flag channel 4

< gpio pins number 9

Definition at line 138 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.

Variable Documentation

◆ ccr1_val

uint16_t ccr1_val = 1000

Definition at line 37 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

Referenced by main().

◆ ccr2_val

uint16_t ccr2_val = 500

Definition at line 38 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

Referenced by main().

◆ ccr3_val

uint16_t ccr3_val = 250

Definition at line 39 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

Referenced by main().

◆ ccr4_val

uint16_t ccr4_val = 125

Definition at line 40 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

Referenced by main().

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

Referenced by main().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/oc_low/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_oc_toggle_tmr3

Functions | Variables
TMR_oc_toggle_tmr3
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR3_GLOBAL_IRQHandler (void)
this function handles tmr3 global interrupt request. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
void | nvic_configuration (void)
configures the nested vectored interrupt controller. More...
int | main (void)
main function. More...

Variables

uint32_t | capture = 0
tmr_output_config_type tmr_oc_init_structure
__IO uint16_t | ccr1_val = 32768
__IO uint16_t | ccr2_val = 16384
__IO uint16_t | ccr3_val = 8192
__IO uint16_t | ccr4_val = 4096
uint16_t | prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 83 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 118 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr3 pins.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

< gpio pins number 0

< gpio pins number 1

Definition at line 52 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 57 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< tmr interrupt channel 1

< tmr interrupt channel 2

< tmr interrupt channel 3

< tmr interrupt channel 4

Definition at line 91 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 70 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 48 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ nvic_configuration()

void nvic_configuration ( void )

configures the nested vectored interrupt controller.

configures sdio1 irq channel.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 127 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 109 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 136 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ TMR3_GLOBAL_IRQHandler()

void TMR3_GLOBAL_IRQHandler ( void )

this function handles tmr3 global interrupt request.

Parameters
none
Return values
none

< tmr flag channel 1

< tmr flag channel 1

< tmr flag channel 2

< tmr flag channel 2

< tmr flag channel 3

< tmr flag channel 3

< tmr flag channel 4

< tmr flag channel 4

Definition at line 145 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 96 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

Variable Documentation

◆ capture

uint32_t capture = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.

Referenced by TMR3_GLOBAL_IRQHandler().

◆ ccr1_val

__IO uint16_t ccr1_val = 32768

Definition at line 37 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

Referenced by main().

◆ ccr2_val

__IO uint16_t ccr2_val = 16384

Definition at line 38 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

Referenced by main().

◆ ccr3_val

__IO uint16_t ccr3_val = 8192

Definition at line 39 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

Referenced by main().

◆ ccr4_val

__IO uint16_t ccr4_val = 4096

Definition at line 40 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

Referenced by main().

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

Referenced by main().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_oc_toggle_tmr9

Functions | Variables
TMR_oc_toggle_tmr9
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR1_BRK_TMR9_IRQHandler (void)
this function handles TMR9 global interrupt request. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr9 pins. More...
void | nvic_configuration (void)
configures the nested vectored interrupt controller. More...
int | main (void)
main function. More...

Variables

uint16_t | capture = 0
tmr_output_config_type tmr_oc_init_structure
__IO uint16_t | ccr1_val = 32768
__IO uint16_t | ccr2_val = 16384
uint16_t | prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 70 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 116 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr9 pins.

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 3

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 55 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< tmr interrupt channel 1

< tmr interrupt channel 2

< tmr interrupt channel 3

< tmr interrupt channel 4

Definition at line 84 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ nvic_configuration()

void nvic_configuration ( void )

configures the nested vectored interrupt controller.

configures sdio1 irq channel.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.

Referenced by main().

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 125 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 107 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 134 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ TMR1_BRK_TMR9_IRQHandler()

void TMR1_BRK_TMR9_IRQHandler ( void )

this function handles TMR9 global interrupt request.

Parameters
none
Return values
none

< tmr flag channel 1

< tmr flag channel 1

< tmr flag channel 2

< tmr flag channel 2

Definition at line 143 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 94 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

Variable Documentation

◆ capture

uint16_t capture = 0

Definition at line 39 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.

Referenced by TMR1_BRK_TMR9_IRQHandler().

◆ ccr1_val

__IO uint16_t ccr1_val = 32768

Definition at line 37 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.

Referenced by main().

◆ ccr2_val

__IO uint16_t ccr2_val = 16384

Definition at line 38 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.

Referenced by main().

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 39 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.

Referenced by main().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_one_cycle

Functions | Variables
TMR_one_cycle
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
tmr_input_config_type tmr_ic_init_structure
uint16_t prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 72 of file project/at_start_f403/examples/tmr/one_cycle/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr3 pins.

Parameters
none
Return values
none

< gpio pins number 7

< gpio pins number 6

Definition at line 48 of file project/at_start_f403/examples/tmr/one_cycle/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 86 of file project/at_start_f403/examples/tmr/one_cycle/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.

Variable Documentation

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 38 of file project/at_start_f403/examples/tmr/one_cycle/src/main.c.

Referenced by main().

◆ tmr_ic_init_structure

tmr_input_config_type tmr_ic_init_structure

Definition at line 37 of file project/at_start_f403/examples/tmr/one_cycle/src/main.c.

Referenced by main().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/one_cycle/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_parallel_synchro

Functions | Variables
TMR_parallel_synchro
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 69 of file project/at_start_f403/examples/tmr/parallel_synchro/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr3 pins.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 0

< gpio pins number 6

Definition at line 46 of file project/at_start_f403/examples/tmr/parallel_synchro/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 88 of file project/at_start_f403/examples/tmr/parallel_synchro/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.

Variable Documentation

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/parallel_synchro/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_pwm_input

Functions | Variables
TMR_pwm_input
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR3_GLOBAL_IRQHandler (void)
this function handles tmr3 global interrupt request. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | ic2value = 0
tmr_input_config_type tmr_ic_init_structure
__IO uint16_t | duty_cycle = 0
__IO uint32_t | frequency = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_input/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 116 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr3 pins.

Parameters
none
Return values
none

< gpio pins number 7

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_input/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 55 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< tmr interrupt channel 2

Definition at line 82 of file project/at_start_f403/examples/tmr/pwm_input/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 125 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 107 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 134 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ TMR3_GLOBAL_IRQHandler()

void TMR3_GLOBAL_IRQHandler ( void )

this function handles tmr3 global interrupt request.

Parameters
none
Return values
none

< tmr flag channel 2

Definition at line 143 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 94 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

Variable Documentation

◆ duty_cycle

__IO uint16_t duty_cycle = 0

Definition at line 39 of file project/at_start_f403/examples/tmr/pwm_input/src/main.c.

Referenced by main().

◆ frequency

__IO uint32_t frequency = 0

Definition at line 40 of file project/at_start_f403/examples/tmr/pwm_input/src/main.c.

Referenced by main().

◆ ic2value

__IO uint16_t ic2value = 0

Definition at line 39 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.

Referenced by TMR3_GLOBAL_IRQHandler().

◆ tmr_ic_init_structure

tmr_input_config_type tmr_ic_init_structure

Definition at line 37 of file project/at_start_f403/examples/tmr/pwm_input/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_pwm_input_dma

Macros | Functions | Variables
TMR_pwm_input_dma
AT32F403_periph_examples

Macros

#define | TMR1_C1DT_ADDRESS 0x40012C34
#define | TMR1_C2DT_ADDRESS 0x40012C38
#define | SAMPLING_NUM 1000

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
void | DMA1_Channel2_IRQHandler (void)
int | main (void)
main function. More...

Variables

tmr_input_config_type tmr_ic_init_structure
dma_init_type dma_init_structure
__IO uint16_t | buffer_cc1 [1000]
__IO uint16_t | buffer_cc2 [1000]
__IO uint32_t | frequency = 0
__IO float | duty_cycle = 0
uint32_t | freq_result
float | duty_result

Detailed Description

Macro Definition Documentation

◆ SAMPLING_NUM

#define SAMPLING_NUM 1000

Definition at line 39 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

◆ TMR1_C1DT_ADDRESS

#define TMR1_C1DT_ADDRESS 0x40012C34

Definition at line 36 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

◆ TMR1_C2DT_ADDRESS

#define TMR1_C2DT_ADDRESS 0x40012C38

Definition at line 37 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 99 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ DMA1_Channel2_IRQHandler()

void DMA1_Channel2_IRQHandler ( void )

< dma1 channel2 full data transfer flag

Definition at line 56 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr1 pins.

Parameters
none
Return values
none

< gpio pins number 8

Definition at line 81 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< dma full data transfer interrupt

Definition at line 116 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.

Variable Documentation

◆ buffer_cc1

__IO uint16_t buffer_cc1[1000]

Definition at line 44 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by DMA1_Channel2_IRQHandler(), and main().

◆ buffer_cc2

__IO uint16_t buffer_cc2[1000]

Definition at line 45 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by DMA1_Channel2_IRQHandler(), and main().

◆ dma_init_structure

dma_init_type dma_init_structure

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by main().

◆ duty_cycle

__IO float duty_cycle = 0

Definition at line 48 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by DMA1_Channel2_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ duty_result

float duty_result

Definition at line 51 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by DMA1_Channel2_IRQHandler().

◆ freq_result

uint32_t freq_result

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by DMA1_Channel2_IRQHandler().

◆ frequency

__IO uint32_t frequency = 0

Definition at line 47 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by DMA1_Channel2_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_ic_init_structure

tmr_input_config_type tmr_ic_init_structure

Definition at line 41 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_pwm_output_simulate

Functions | Variables
TMR_pwm_output_simulate
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

uint16_t | capture = 0
tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 40961
uint16_t | ccr2_val = 27309
uint16_t | ccr3_val = 13654
uint16_t | ccr4_val = 6826
uint16_t | prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 83 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 71 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 118 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr1 pins.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

< gpio pins number 8

< gpio pins number 9

Definition at line 52 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 57 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< tmr interrupt channel 1

< tmr interrupt channel 2

< tmr interrupt channel 3

< tmr interrupt channel 4

Definition at line 85 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 70 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 48 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 127 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 109 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 136 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ TMR2_GLOBAL_IRQHandler()

void TMR2_GLOBAL_IRQHandler ( void )

< tmr flag channel 1

< tmr flag channel 1

< gpio pins number 6

< gpio pins number 6

< tmr flag channel 2

< tmr flag channel 2

< gpio pins number 7

< gpio pins number 7

< tmr flag channel 3

< tmr flag channel 3

< gpio pins number 8

< gpio pins number 8

< tmr flag channel 4

< gpio pins number 9

< gpio pins number 9

Definition at line 140 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 96 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

Variable Documentation

◆ capture

uint16_t capture = 0

Definition at line 41 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.

Referenced by TMR2_GLOBAL_IRQHandler().

◆ ccr1_val

uint16_t ccr1_val = 40961

Definition at line 38 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().

◆ ccr2_val

uint16_t ccr2_val = 27309

Definition at line 39 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().

◆ ccr3_val

uint16_t ccr3_val = 13654

Definition at line 40 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().

◆ ccr4_val

uint16_t ccr4_val = 6826

Definition at line 41 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_pwm_output_tmr10

Functions | Variables
TMR_pwm_output_tmr10
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 249
uint16_t | prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr1 pins.

Parameters
none
Return values
none

< gpio pins number 8

Definition at line 49 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 82 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.

Variable Documentation

◆ ccr1_val

uint16_t ccr1_val = 249

Definition at line 38 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c.

Referenced by main().

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 39 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c.

Referenced by main().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_pwm_output_tmr3

Functions | Variables
TMR_pwm_output_tmr3
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 333
uint16_t | ccr2_val = 249
uint16_t | ccr3_val = 166
uint16_t | ccr4_val = 83
uint16_t | prescaler_value = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 74 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr1 pins.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

< gpio pins number 0

< gpio pins number 1

Definition at line 52 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.

Variable Documentation

◆ ccr1_val

uint16_t ccr1_val = 333

Definition at line 38 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().

◆ ccr2_val

uint16_t ccr2_val = 249

Definition at line 39 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().

◆ ccr3_val

uint16_t ccr3_val = 166

Definition at line 40 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().

◆ ccr4_val

uint16_t ccr4_val = 83

Definition at line 41 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().

◆ prescaler_value

uint16_t prescaler_value = 0

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_timer_base

Functions | Variables
TMR_timer_base
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | clkout_config (void)
void | TMR1_OVF_TMR10_IRQHandler (void)
this function handles timer1 overflow handler. More...
int | main (void)
main function. More...

Variables

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ clkout_config()

void clkout_config ( void )

< gpio pins number 8

Definition at line 38 of file project/at_start_f403/examples/tmr/timer_base/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< tmr interrupt overflow

Definition at line 80 of file project/at_start_f403/examples/tmr/timer_base/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

◆ TMR1_OVF_TMR10_IRQHandler()

void TMR1_OVF_TMR10_IRQHandler ( void )

this function handles timer1 overflow handler.

Parameters
none
Return values
none

< tmr flag overflow

< tmr flag overflow

Definition at line 65 of file project/at_start_f403/examples/tmr/timer_base/src/main.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 36 of file project/at_start_f403/examples/tmr/timer_base/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_tmr1_synchro

Functions | Variables
TMR_tmr1_synchro
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr1 pins.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 8

< gpio pins number 6

Definition at line 46 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 85 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.

Variable Documentation

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: TMR_tmr2_32bit

Functions | Variables
TMR_tmr2_32bit
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint32_t | ccr1_val = 0x7FFFF
uint32_t | ccr2_val = 0x3FFFF
uint32_t | ccr3_val = 0x1FFFF
uint32_t | ccr4_val = 0xFFFF

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ crm_configuration()

void crm_configuration ( void )

configures the different peripheral clocks.

Parameters
none
Return values
none

Definition at line 70 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ gpio_configuration()

void gpio_configuration ( void )

configure the tmr1 pins.

Parameters
none
Return values
none

< gpio pins number 0

< gpio pins number 1

< gpio pins number 2

< gpio pins number 3

Definition at line 51 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 84 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.

Variable Documentation

◆ ccr1_val

uint32_t ccr1_val = 0x7FFFF

Definition at line 38 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

Referenced by main(), TMR1_BRK_TMR9_IRQHandler(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ ccr2_val

uint32_t ccr2_val = 0x3FFFF

Definition at line 39 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

Referenced by main(), TMR1_BRK_TMR9_IRQHandler(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ ccr3_val

uint32_t ccr3_val = 0x1FFFF

Definition at line 40 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

Referenced by main(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ ccr4_val

uint32_t ccr4_val = 0xFFFF

Definition at line 41 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

Referenced by main(), TMR2_GLOBAL_IRQHandler(), and TMR3_GLOBAL_IRQHandler().

◆ tmr_oc_init_structure

tmr_output_config_type tmr_oc_init_structure

Definition at line 36 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: USART_half_duplex

Macros | Functions | Variables
USART_half_duplex
AT32F403_periph_examples

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usart_configuration (void)
config usart More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart half-duplex transfer: usart2 -> usart3"
uint8_t | usart3_tx_buffer [] = "usart half-duplex transfer: usart3 -> usart2"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
uint8_t | data_count

Detailed Description

Macro Definition Documentation

◆ COUNTOF

#define COUNTOF ( a ) (sizeof(a) / sizeof(*(a)))

Definition at line 36 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

◆ USART2_TX_BUFFER_SIZE

#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)

Definition at line 37 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

◆ USART3_TX_BUFFER_SIZE

#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Definition at line 38 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Function Documentation

◆ buffer_compare()

uint8_t buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
1 pbuffer1 identical to pbuffer2 0: pbuffer1 differs from pbuffer2

Definition at line 99 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart transmit data buffer empty flag

< usart receive data buffer full flag

< usart transmit data buffer empty flag

< usart receive data buffer full flag

Definition at line 118 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 10

Definition at line 51 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Referenced by main().

Variable Documentation

◆ data_count

uint8_t data_count

Definition at line 44 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Referenced by main().

◆ usart2_rx_buffer

uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]

Definition at line 42 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Referenced by main().

◆ usart2_tx_buffer

uint8_t usart2_tx_buffer[] = "usart half-duplex transfer: usart2 -> usart3"

Definition at line 40 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Referenced by main().

◆ usart3_rx_buffer

uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Definition at line 43 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Referenced by main().

◆ usart3_tx_buffer

uint8_t usart3_tx_buffer[] = "usart half-duplex transfer: usart3 -> usart2"

Definition at line 41 of file project/at_start_f403/examples/usart/half_duplex/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: USART_hw_flow_control

Macros | Functions | Variables
USART_hw_flow_control
AT32F403_periph_examples

Macros

#define BUFFER_SIZE 16

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Variables

uint8_t | rx_buffer [16]
uint8_t | data_count

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 16

Definition at line 36 of file project/at_start_f403/examples/usart/hw_flow_control/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart receive data buffer full flag

< usart transmit data buffer empty flag

Definition at line 89 of file project/at_start_f403/examples/usart/hw_flow_control/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 4

< gpio pins number 5

< gpio pins number 3

< gpio pins number 6

< usart2_tx(pd5), usart2_rx(pd6), usart2_ck(pd7), usart2_cts(pd3), usart2_rts(pd4)

Definition at line 46 of file project/at_start_f403/examples/usart/hw_flow_control/src/main.c.

Referenced by main().

Variable Documentation

◆ data_count

uint8_t data_count

Definition at line 39 of file project/at_start_f403/examples/usart/hw_flow_control/src/main.c.

Referenced by main().

◆ rx_buffer

uint8_t rx_buffer[16]

Definition at line 38 of file project/at_start_f403/examples/usart/hw_flow_control/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: USART_idle_detection

Functions
USART_idle_detection
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART2_IRQHandler (void)
this function handles usart2 handler. More...
void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart transmit data buffer empty flag

< usart receive data buffer full flag

Definition at line 84 of file project/at_start_f403/examples/usart/idle_detection/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ USART2_IRQHandler()

void USART2_IRQHandler ( void )

this function handles usart2 handler.

Parameters
none
Return values
none

< usart idle flag

Definition at line 139 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 3

< usart idle interrupt

Definition at line 41 of file project/at_start_f403/examples/usart/idle_detection/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: USART_interrupt

Macros | Functions | Variables
USART_interrupt
AT32F403_periph_examples

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART2_IRQHandler (void)
this function handles usart2 handler. More...
void | USART3_IRQHandler (void)
this function handles usart3 handler. More...
void | usart_configuration (void)
config usart More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by interrupt: usart2 -> usart3 using interrupt"
uint8_t | usart3_tx_buffer [] = "usart transfer by interrupt: usart3 -> usart2 using interrupt"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
volatile uint8_t | usart2_tx_counter = 0x00
volatile uint8_t | usart3_tx_counter = 0x00
volatile uint8_t | usart2_rx_counter = 0x00
volatile uint8_t | usart3_rx_counter = 0x00
uint8_t | usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)
uint8_t | usart3_tx_buffer_size = ((sizeof( usart3_tx_buffer ) / sizeof(*( usart3_tx_buffer ))) - 1)

Detailed Description

Macro Definition Documentation

◆ COUNTOF

#define COUNTOF ( a ) (sizeof(a) / sizeof(*(a)))

Definition at line 36 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

◆ USART2_TX_BUFFER_SIZE

#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)

Definition at line 37 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

◆ USART3_TX_BUFFER_SIZE

#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Definition at line 38 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Function Documentation

◆ buffer_compare()

uint8_t buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
1 pbuffer1 identical to pbuffer2 0: pbuffer1 differs from pbuffer2

Definition at line 127 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 87 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 122 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 61 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 146 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 74 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 131 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 113 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 140 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 100 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ USART2_IRQHandler()

void USART2_IRQHandler ( void )

this function handles usart2 handler.

Parameters
none
Return values
none

< usart receive data buffer full flag

< usart receive data buffer full interrupt

< usart transmit data buffer empty flag

< usart transmit data buffer empty interrupt

Definition at line 149 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ USART3_IRQHandler()

void USART3_IRQHandler ( void )

this function handles usart3 handler.

Parameters
none
Return values
none

< usart receive data buffer full flag

< usart receive data buffer full interrupt

< usart transmit data buffer empty flag

< usart transmit data buffer empty interrupt

Definition at line 187 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 10

< gpio pins number 3

< gpio pins number 11

< usart receive data buffer full interrupt

< usart receive data buffer full interrupt

< usart transmit data buffer empty interrupt

< usart transmit data buffer empty interrupt

Definition at line 56 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

Variable Documentation

◆ usart2_rx_buffer

uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]

Definition at line 42 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart2_rx_counter

volatile uint8_t usart2_rx_counter = 0x00

Definition at line 46 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart2_tx_buffer

uint8_t usart2_tx_buffer[] = "usart transfer by interrupt: usart2 -> usart3 using interrupt"

Definition at line 40 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart2_tx_buffer_size

uint8_t usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)

Definition at line 48 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart2_tx_counter

volatile uint8_t usart2_tx_counter = 0x00

Definition at line 44 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

◆ usart3_rx_buffer

uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Definition at line 43 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart3_rx_counter

volatile uint8_t usart3_rx_counter = 0x00

Definition at line 47 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart3_tx_buffer

uint8_t usart3_tx_buffer[] = "usart transfer by interrupt: usart3 -> usart2 using interrupt"

Definition at line 41 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart3_tx_buffer_size

uint8_t usart3_tx_buffer_size = ((sizeof( usart3_tx_buffer ) / sizeof(*( usart3_tx_buffer ))) - 1)

Definition at line 49 of file project/at_start_f403/examples/usart/interrupt/src/main.c.

Referenced by main().

◆ usart3_tx_counter

volatile uint8_t usart3_tx_counter = 0x00

Definition at line 45 of file project/at_start_f403/examples/usart/interrupt/src/main.c.


AT32F403 Firmwary Library: USART_irda

Functions
USART_irda
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/usart/irda/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 3

Definition at line 41 of file project/at_start_f403/examples/usart/irda/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: USART_polling

Macros | Functions | Variables
USART_polling
AT32F403_periph_examples

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usart_configuration (void)
config usart More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by interrupt: usart2 -> usart3 using interrupt"
uint8_t | usart3_tx_buffer [] = "usart transfer by interrupt: usart3 -> usart2 using interrupt"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
uint8_t | usart2_tx_counter = 0x00
uint8_t | usart3_tx_counter = 0x00
uint8_t | usart2_rx_counter = 0x00
uint8_t | usart3_rx_counter = 0x00
uint8_t | usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)
uint8_t | usart3_tx_buffer_size = ((sizeof( usart3_tx_buffer ) / sizeof(*( usart3_tx_buffer ))) - 1)

Detailed Description

Macro Definition Documentation

◆ COUNTOF

#define COUNTOF ( a ) (sizeof(a) / sizeof(*(a)))

Definition at line 36 of file project/at_start_f403/examples/usart/polling/src/main.c.

◆ USART2_TX_BUFFER_SIZE

#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)

Definition at line 37 of file project/at_start_f403/examples/usart/polling/src/main.c.

◆ USART3_TX_BUFFER_SIZE

#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Definition at line 38 of file project/at_start_f403/examples/usart/polling/src/main.c.

Function Documentation

◆ buffer_compare()

uint8_t buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
1 pbuffer1 identical to pbuffer2 0: pbuffer1 differs from pbuffer2

Definition at line 116 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart transmit data buffer empty flag

< usart receive data buffer full flag

< usart transmit data buffer empty flag

< usart receive data buffer full flag

Definition at line 135 of file project/at_start_f403/examples/usart/polling/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 10

< gpio pins number 3

< gpio pins number 11

Definition at line 56 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

Variable Documentation

◆ usart2_rx_buffer

uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]

Definition at line 42 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ usart2_rx_counter

uint8_t usart2_rx_counter = 0x00

Definition at line 46 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ usart2_tx_buffer

uint8_t usart2_tx_buffer[] = "usart transfer by interrupt: usart2 -> usart3 using interrupt"

Definition at line 40 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ usart2_tx_buffer_size

uint8_t usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)

Definition at line 48 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ usart2_tx_counter

uint8_t usart2_tx_counter = 0x00

Definition at line 44 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ usart3_rx_buffer

uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Definition at line 43 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ usart3_rx_counter

uint8_t usart3_rx_counter = 0x00

Definition at line 47 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main(), and USART3_IRQHandler().

◆ usart3_tx_buffer

uint8_t usart3_tx_buffer[] = "usart transfer by interrupt: usart3 -> usart2 using interrupt"

Definition at line 41 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main().

◆ usart3_tx_buffer_size

uint8_t usart3_tx_buffer_size = ((sizeof( usart3_tx_buffer ) / sizeof(*( usart3_tx_buffer ))) - 1)

Definition at line 49 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main(), USART2_IRQHandler(), and USART3_IRQHandler().

◆ usart3_tx_counter

uint8_t usart3_tx_counter = 0x00

Definition at line 45 of file project/at_start_f403/examples/usart/polling/src/main.c.

Referenced by main(), and USART3_IRQHandler().


AT32F403 Firmwary Library: USART_printf

Functions | Variables
USART_printf
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Variables

__IO uint32_t time_cnt = 0

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 43 of file project/at_start_f403/examples/usart/printf/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.

Variable Documentation

◆ time_cnt

__IO uint32_t time_cnt = 0

Definition at line 36 of file project/at_start_f403/examples/usart/printf/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: USART_receiver_mute

Macros | Functions | Variables
USART_receiver_mute
AT32F403_periph_examples

Macros

#define | BUFFER_SIZE 7
#define | MATCH_ID_VAL 0x81
#define | ERROR_ID_VAL 0x82
#define | DATA1_VAL 0x7F
#define | DATA2_VAL 0x7A
#define | DATA3_VAL 0x7B
#define | DATA4_VAL 0x7C

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART3_IRQHandler (void)
this function handles usart3 handler. More...
void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [7] = { 0x7F , 0x81 , 0x7A , 0x82 , 0x7B , 0x81 , 0x7C }
uint8_t | usart3_rx_buffer [7]
uint8_t | tx_counter = 0
uint8_t | rx_counter = 0

Detailed Description

Macro Definition Documentation

◆ BUFFER_SIZE

#define BUFFER_SIZE 7

Definition at line 36 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

◆ DATA1_VAL

#define DATA1_VAL 0x7F

Definition at line 39 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

◆ DATA2_VAL

#define DATA2_VAL 0x7A

Definition at line 40 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

◆ DATA3_VAL

#define DATA3_VAL 0x7B

Definition at line 41 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

◆ DATA4_VAL

#define DATA4_VAL 0x7C

Definition at line 42 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

◆ ERROR_ID_VAL

#define ERROR_ID_VAL 0x82

Definition at line 38 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

◆ MATCH_ID_VAL

#define MATCH_ID_VAL 0x81

Definition at line 37 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart transmit data buffer empty flag

< usart transmit data complete flag

Definition at line 108 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ USART3_IRQHandler()

void USART3_IRQHandler ( void )

this function handles usart3 handler.

Parameters
none
Return values
none

< usart receive data buffer full flag

Definition at line 141 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 11

< usart receive data buffer full interrupt

Definition at line 54 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

Referenced by main().

Variable Documentation

◆ rx_counter

uint8_t rx_counter = 0

Definition at line 47 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

Referenced by USART3_IRQHandler().

◆ tx_counter

uint8_t tx_counter = 0

Definition at line 46 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

Referenced by main().

◆ usart2_tx_buffer

uint8_t usart2_tx_buffer[7] = { 0x7F , 0x81 , 0x7A , 0x82 , 0x7B , 0x81 , 0x7C }

Definition at line 44 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

Referenced by main().

◆ usart3_rx_buffer

uint8_t usart3_rx_buffer[7]

Definition at line 45 of file project/at_start_f403/examples/usart/receiver_mute/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: F403_USART_rs485

Macros | Functions | Variables
F403_USART_rs485
AT32F403_periph_examples

Macros

#define | RS485_BAUDRATE 9600
#define | RS485_BUFFER_SIZE 128

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
static void | rs485_config (void)
rs485 configiguration. More...
static void | rs485_send_data (u8 *buf, u8 cnt)
rs485 send data More...
int | main (void)
main function. More...
void | USART2_IRQHandler (void)
usart2 interrupt handler More...

Variables

uint8_t | rs485_buffer_rx [128]
uint8_t | rs485_buffer_rx_cnt = 0

Detailed Description

Macro Definition Documentation

◆ RS485_BAUDRATE

#define RS485_BAUDRATE 9600

Definition at line 36 of file project/at_start_f403/examples/usart/rs485/src/main.c.

◆ RS485_BUFFER_SIZE

#define RS485_BUFFER_SIZE 128

Definition at line 37 of file project/at_start_f403/examples/usart/rs485/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart idle flag

< usart receive data buffer full interrupt

< usart receive data buffer full interrupt

Definition at line 112 of file project/at_start_f403/examples/usart/rs485/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ rs485_config()

static void rs485_config ( void )
static

rs485 configiguration.

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 3

< gpio pins number 1

< gpio pins number 1

< usart receive data buffer full flag

< usart receive data buffer full interrupt

Definition at line 47 of file project/at_start_f403/examples/usart/rs485/src/main.c.

Referenced by main().

◆ rs485_send_data()

static void rs485_send_data | ( | u8 * | buf,
 |  | u8 | cnt
 | ) |  |
static

rs485 send data

Parameters
buf | pointer to the buffer that contain the data to be transferred.
cnt | size of buffer in bytes.
Return values
none

< gpio pins number 1

< usart transmit data buffer empty flag

< usart transmit data complete flag

< gpio pins number 1

Definition at line 96 of file project/at_start_f403/examples/usart/rs485/src/main.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.

◆ USART2_IRQHandler()

void USART2_IRQHandler ( void )

usart2 interrupt handler

Parameters
none
Return values
none

< usart receive data buffer full flag

Definition at line 143 of file project/at_start_f403/examples/usart/rs485/src/main.c.

Variable Documentation

◆ rs485_buffer_rx

uint8_t rs485_buffer_rx[128]

Definition at line 39 of file project/at_start_f403/examples/usart/rs485/src/main.c.

Referenced by main(), and USART2_IRQHandler().

◆ rs485_buffer_rx_cnt

uint8_t rs485_buffer_rx_cnt = 0

Definition at line 40 of file project/at_start_f403/examples/usart/rs485/src/main.c.

Referenced by main(), and USART2_IRQHandler().


AT32F403 Firmwary Library: USART_smartcard

Data Structures | Macros | Functions | Variables
USART_smartcard
AT32F403_periph_examples

Data Structures

struct sc_atr_type

Macros

#define | T0_PROTOCOL 0x00 /* t0 protocol */
#define | SETUP_LENGTH 20
#define | HIST_LENGTH 20
#define | SC_RECEIVE_TIMEOUT 0xA000 /* direction to reader */
#define | SC_USART_DIV_VAL 20 /* ISO 7816-3 protocol: SC_CLOCK_FREQ(PCLK/(2*USART_DIV_VAL)) is between 1 and 5 MHz */
#define | SC_F_DIV_D 372 /* ISO 7816-3 protocol: F/D = 372 */

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | EXINT9_5_IRQHandler (void)
this function handles external lines 9 to 5 interrupt request. More...
void | SC_USART_IRQHandler (void)
this function handles sc_usart global interrupt request. More...
void | usart_configuration (void)
config usart More...
uint8_t | sc_response_decode (__IO uint8_t *card)
decode the card atr response. More...
int | main (void)
main function. More...

Variables

sc_atr_type sc_a2r_struct
uint32_t | sc_baud_rate = 0
uint32_t | sc_clock_freq = 0
uint32_t | counter = 0
error_status atr_decode_status = ERROR
uint32_t | card_inserted = 0
uint32_t | card_protocol = 1
uint8_t | dst_buffer [50]

Detailed Description

Macro Definition Documentation

◆ HIST_LENGTH

#define HIST_LENGTH 20

Definition at line 39 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

◆ SC_F_DIV_D

#define SC_F_DIV_D 372 /* ISO 7816-3 protocol: F/D = 372 */

Definition at line 43 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

◆ SC_RECEIVE_TIMEOUT

#define SC_RECEIVE_TIMEOUT 0xA000 /* direction to reader */

Definition at line 40 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

◆ SC_USART_DIV_VAL

#define SC_USART_DIV_VAL 20 /* ISO 7816-3 protocol: SC_CLOCK_FREQ(PCLK/(2*USART_DIV_VAL)) is between 1 and 5 MHz */

Definition at line 42 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

◆ SETUP_LENGTH

#define SETUP_LENGTH 20

Definition at line 38 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

◆ T0_PROTOCOL

#define T0_PROTOCOL 0x00 /* t0 protocol */

Definition at line 37 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 79 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 114 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ EXINT9_5_IRQHandler()

void EXINT9_5_IRQHandler ( void )

this function handles external lines 9 to 5 interrupt request.

Parameters
none
Return values
none

Definition at line 141 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 53 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart receive data buffer full flag

Definition at line 276 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 66 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 44 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 123 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ sc_response_decode()

uint8_t sc_response_decode ( __IO uint8_t * card )

decode the card atr response.

Parameters
card pointer to the buffer containing the card atr.
Return values
card protocol

Definition at line 200 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by main().

◆ SC_USART_IRQHandler()

void SC_USART_IRQHandler ( void )

this function handles sc_usart global interrupt request.

Parameters
none
Return values
none

< usart parity error flag

< usart receive data buffer full interrupt

< usart receive data buffer full flag

< usart receive data buffer full interrupt

Definition at line 164 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 105 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 132 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 92 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< usart parity error interrupt

Definition at line 73 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by main().

Variable Documentation

◆ atr_decode_status

error_status atr_decode_status = ERROR

Definition at line 60 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by main().

◆ card_inserted

uint32_t card_inserted = 0

Definition at line 61 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by EXINT9_5_IRQHandler(), and main().

◆ card_protocol

uint32_t card_protocol = 1

Definition at line 61 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by main().

◆ counter

uint32_t counter = 0

Definition at line 59 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by main().

◆ dst_buffer

uint8_t dst_buffer[50]
Initial value:
= {
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1
}

Definition at line 62 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by main().

◆ sc_a2r_struct

sc_atr_type sc_a2r_struct

Definition at line 56 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by sc_response_decode().

◆ sc_baud_rate

uint32_t sc_baud_rate = 0

Definition at line 57 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by usart_configuration().

◆ sc_clock_freq

uint32_t sc_clock_freq = 0

Definition at line 58 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by usart_configuration().


AT32F403 Firmwary Library: sc_atr_type Struct Reference

Data Fields
sc_atr_type Struct Reference
AT32F403_periph_examples » USART_smartcard

Data Fields

uint8_t | ts
uint8_t | t0
uint8_t | t [20]
uint8_t | h [20]
uint8_t | tlength
uint8_t | hlength

Detailed Description

Definition at line 46 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Field Documentation

◆ h

uint8_t sc_atr_type::h[20]

Definition at line 51 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by sc_response_decode().

◆ hlength

uint8_t sc_atr_type::hlength

Definition at line 53 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by sc_response_decode().

◆ t

uint8_t sc_atr_type::t[20]

Definition at line 50 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by sc_response_decode().

◆ t0

uint8_t sc_atr_type::t0

Definition at line 49 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by sc_response_decode().

◆ tlength

uint8_t sc_atr_type::tlength

Definition at line 52 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by sc_response_decode().

◆ ts

uint8_t sc_atr_type::ts

Definition at line 48 of file project/at_start_f403/examples/usart/smartcard/src/main.c.

Referenced by sc_response_decode().

The documentation for this struct was generated from the following file:
  • project/at_start_f403/examples/usart/smartcard/src/main.c


AT32F403 Firmwary Library: USART_synchronous

Macros | Functions | Variables
USART_synchronous
AT32F403_periph_examples

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | SPI2_TX_BUFFER_SIZE (COUNTOF(spi2_tx_buffer) - 1)
#define | DYMMY_BYTE 0x00

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usart_spi_configuration (void)
config usart and spi More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart synchronous example: usart2 -> spi2"
uint8_t | spi2_tx_buffer [] = "usart synchronous example: spi2 -> usart2"
uint8_t | usart2_rx_buffer [((sizeof(spi2_tx_buffer)/sizeof(*(spi2_tx_buffer))) - 1)]
uint8_t | spi2_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
uint8_t | usart2_tx_counter = 0x00
uint8_t | spi2_tx_counter = 0x00
uint8_t | usart2_rx_counter = 0x00
uint8_t | spi2_rx_counter = 0x00
uint8_t | usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)
uint8_t | spi2_tx_buffer_size = ((sizeof( spi2_tx_buffer ) / sizeof(*( spi2_tx_buffer ))) - 1)

Detailed Description

Macro Definition Documentation

◆ COUNTOF

#define COUNTOF ( a ) (sizeof(a) / sizeof(*(a)))

Definition at line 36 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

◆ DYMMY_BYTE

#define DYMMY_BYTE 0x00

Definition at line 39 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

◆ SPI2_TX_BUFFER_SIZE

#define SPI2_TX_BUFFER_SIZE (COUNTOF(spi2_tx_buffer) - 1)

Definition at line 38 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

◆ USART2_TX_BUFFER_SIZE

#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)

Definition at line 37 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Function Documentation

◆ buffer_compare()

uint8_t buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
1 pbuffer1 identical to pbuffer2 0: pbuffer1 differs from pbuffer2

Definition at line 132 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< usart transmit data buffer empty flag

< spi or i2s receive data buffer full flag

< usart receive data buffer full flag

Definition at line 151 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.

◆ usart_spi_configuration()

void usart_spi_configuration ( void )

config usart and spi

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 4

< gpio pins number 3

< gpio pins number 15

< gpio pins number 13

< gpio pins number 14

Definition at line 57 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by main().

Variable Documentation

◆ spi2_rx_buffer

uint8_t spi2_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Definition at line 44 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by main(), and SPI2_IRQHandler().

◆ spi2_rx_counter

uint8_t spi2_rx_counter = 0x00

Definition at line 48 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by main().

◆ spi2_tx_buffer

uint8_t spi2_tx_buffer[] = "usart synchronous example: spi2 -> usart2"

Definition at line 42 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by SPI2_IRQHandler().

◆ spi2_tx_buffer_size

uint8_t spi2_tx_buffer_size = ((sizeof( spi2_tx_buffer ) / sizeof(*( spi2_tx_buffer ))) - 1)

Definition at line 50 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

◆ spi2_tx_counter

uint8_t spi2_tx_counter = 0x00

Definition at line 46 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

◆ usart2_rx_buffer

uint8_t usart2_rx_buffer[((sizeof(spi2_tx_buffer)/sizeof(*(spi2_tx_buffer))) - 1)]

Definition at line 43 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

◆ usart2_rx_counter

uint8_t usart2_rx_counter = 0x00

Definition at line 47 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by USART2_IRQHandler().

◆ usart2_tx_buffer

uint8_t usart2_tx_buffer[] = "usart synchronous example: usart2 -> spi2"

Definition at line 41 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by main().

◆ usart2_tx_buffer_size

uint8_t usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)

Definition at line 49 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by main(), USART2_IRQHandler(), and USART3_IRQHandler().

◆ usart2_tx_counter

uint8_t usart2_tx_counter = 0x00

Definition at line 45 of file project/at_start_f403/examples/usart/synchronous/src/main.c.

Referenced by main(), and USART2_IRQHandler().


AT32F403 Firmwary Library: USART_transfer_by_dma_interrupt

Macros | Functions | Variables
USART_transfer_by_dma_interrupt
AT32F403_periph_examples

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel7_IRQHandler (void)
this function handles dma1 channel7 handler. More...
void | DMA1_Channel6_IRQHandler (void)
this function handles dma1 channel6 handler. More...
void | DMA1_Channel2_IRQHandler (void)
this function handles dma1 channel2 handler. More...
void | DMA1_Channel3_IRQHandler (void)
this function handles dma1 channel3 handler. More...
void | usart_configuration (void)
config usart More...
void | dma_configuration (void)
config dma for usart2 and usart3 More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by dma interrupt: usart2 -> usart3 using dma"
uint8_t | usart3_tx_buffer [] = "usart transfer by dma interrupt: usart3 -> usart2 using dma"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
volatile uint8_t | usart2_tx_dma_status = 0
volatile uint8_t | usart2_rx_dma_status = 0
volatile uint8_t | usart3_tx_dma_status = 0
volatile uint8_t | usart3_rx_dma_status = 0

Detailed Description

Macro Definition Documentation

◆ COUNTOF

#define COUNTOF ( a ) (sizeof(a) / sizeof(*(a)))

Definition at line 36 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

◆ USART2_TX_BUFFER_SIZE

#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)

Definition at line 37 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

◆ USART3_TX_BUFFER_SIZE

#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Definition at line 38 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Function Documentation

◆ buffer_compare()

uint8_t buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
1 pbuffer1 identical to pbuffer2 0: pbuffer1 differs from pbuffer2

Definition at line 217 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 81 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 116 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ DMA1_Channel2_IRQHandler()

void DMA1_Channel2_IRQHandler ( void )

this function handles dma1 channel2 handler.

Parameters
none
Return values
none

< dma1 channel2 full data transfer flag

< dma1 channel2 full data transfer flag

Definition at line 173 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ DMA1_Channel3_IRQHandler()

void DMA1_Channel3_IRQHandler ( void )

this function handles dma1 channel3 handler.

Parameters
none
Return values
none

< dma1 channel3 full data transfer flag

< dma1 channel3 full data transfer flag

Definition at line 188 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ DMA1_Channel6_IRQHandler()

void DMA1_Channel6_IRQHandler ( void )

this function handles dma1 channel6 handler.

Parameters
none
Return values
none

< dma1 channel6 full data transfer flag

< dma1 channel6 full data transfer flag

Definition at line 158 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ DMA1_Channel7_IRQHandler()

void DMA1_Channel7_IRQHandler ( void )

this function handles dma1 channel7 handler.

Parameters
none
Return values
none

< dma1 channel7 full data transfer flag

< dma1 channel7 full data transfer flag

Definition at line 143 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ dma_configuration()

void dma_configuration ( void )

config dma for usart2 and usart3

Parameters
none
Return values
none

< dma full data transfer interrupt

< dma full data transfer interrupt

< dma full data transfer interrupt

< dma full data transfer interrupt

Definition at line 113 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 55 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 236 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 68 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 46 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 125 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 107 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 134 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 94 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 10

< gpio pins number 3

< gpio pins number 11

Definition at line 54 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by main().

Variable Documentation

◆ usart2_rx_buffer

uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]

Definition at line 42 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by dma_configuration(), and main().

◆ usart2_rx_dma_status

volatile uint8_t usart2_rx_dma_status = 0

Definition at line 45 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by DMA1_Channel6_IRQHandler(), and main().

◆ usart2_tx_buffer

uint8_t usart2_tx_buffer[] = "usart transfer by dma interrupt: usart2 -> usart3 using dma"

Definition at line 40 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by dma_configuration(), and main().

◆ usart2_tx_dma_status

volatile uint8_t usart2_tx_dma_status = 0

Definition at line 44 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by DMA1_Channel7_IRQHandler(), and main().

◆ usart3_rx_buffer

uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Definition at line 43 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by dma_configuration(), and main().

◆ usart3_rx_dma_status

volatile uint8_t usart3_rx_dma_status = 0

Definition at line 47 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by DMA1_Channel3_IRQHandler(), and main().

◆ usart3_tx_buffer

uint8_t usart3_tx_buffer[] = "usart transfer by dma interrupt: usart3 -> usart2 using dma"

Definition at line 41 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by dma_configuration(), and main().

◆ usart3_tx_dma_status

volatile uint8_t usart3_tx_dma_status = 0

Definition at line 46 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.

Referenced by DMA1_Channel2_IRQHandler(), and main().


AT32F403 Firmwary Library: USART_transfer_by_dma_polling

Macros | Functions | Variables
USART_transfer_by_dma_polling
AT32F403_periph_examples

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usart_configuration (void)
config usart More...
void | dma_configuration (void)
config dma for usart2 and usart3 More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by dma interrupt: usart2 -> usart3 using dma"
uint8_t | usart3_tx_buffer [] = "usart transfer by dma interrupt: usart3 -> usart2 using dma"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Detailed Description

Macro Definition Documentation

◆ COUNTOF

#define COUNTOF ( a ) (sizeof(a) / sizeof(*(a)))

Definition at line 36 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

◆ USART2_TX_BUFFER_SIZE

#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)

Definition at line 37 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

◆ USART3_TX_BUFFER_SIZE

#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Definition at line 38 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Function Documentation

◆ buffer_compare()

uint8_t buffer_compare | ( | uint8_t * | pbuffer1,
 |  | uint8_t * | pbuffer2,
 |  | uint16_t | buffer_length
 | ) |  |

compares two buffers.

Parameters
pbuffer1,pbuffer2 | buffers to be compared.
buffer_length | buffer's length
Return values
1 pbuffer1 identical to pbuffer2 0: pbuffer1 differs from pbuffer2

Definition at line 189 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ dma_configuration()

void dma_configuration ( void )

config dma for usart2 and usart3

Parameters
none
Return values
none

Definition at line 109 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< dma1 channel2 full data transfer flag

< dma1 channel3 full data transfer flag

< dma1 channel6 full data transfer flag

< dma1 channel7 full data transfer flag

Definition at line 208 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.

◆ usart_configuration()

void usart_configuration ( void )

config usart

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 10

< gpio pins number 3

< gpio pins number 11

Definition at line 50 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Referenced by main().

Variable Documentation

◆ usart2_rx_buffer

uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]

Definition at line 42 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Referenced by dma_configuration(), main(), and USART2_IRQHandler().

◆ usart2_tx_buffer

uint8_t usart2_tx_buffer[] = "usart transfer by dma interrupt: usart2 -> usart3 using dma"

Definition at line 40 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Referenced by dma_configuration(), main(), and USART2_IRQHandler().

◆ usart3_rx_buffer

uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Definition at line 43 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Referenced by dma_configuration(), main(), and USART3_IRQHandler().

◆ usart3_tx_buffer

uint8_t usart3_tx_buffer[] = "usart transfer by dma interrupt: usart3 -> usart2 using dma"

Definition at line 41 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.

Referenced by dma_configuration(), main(), and USART3_IRQHandler().


AT32F403 Firmwary Library: USB_device_audio

Modules | Macros | Functions | Variables
USB_device_audio
AT32F403_periph_examples

Modules

USB_device_audio_codec_reg_definition
USB_device_audio_codec_pin_definition
USB_device_audio_codec_exported_functions

Macros

#define | USB_BUFFER_SIZE_EX
usb endpoint max num define More...
#define | USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer More...
#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 200000
#define | I2Cx_ADDRESS 0x00
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_8
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_9
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)
wm8988 freq More...
#define | WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)
#define | WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)
wm8988 bit width More...

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
codec speaker write fifo More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | DMA1_Channel3_IRQHandler (void)
this function handles dma1 channel3 interrupt. More...
void | DMA1_Channel4_IRQHandler (void)
this function handles dma1 channel4 interrupt. More...
error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

uint16_t | reg_addr_data []
wm8988 register default value More...
i2c_handle_type hi2cx
audio_codec_type audio_codec
uint16_t | spk_dma_buffer [DMA_BUFFER_SIZE]
uint16_t | mic_dma_buffer [DMA_BUFFER_SIZE]
usbd_core_type usb_core_dev
usbd_core_type usb_core_dev
uint8_t | report_buf [USBD_AUHID_IN_MAXPACKET_SIZE]

Detailed Description

Macro Definition Documentation

◆ I2C_TIMEOUT

#define I2C_TIMEOUT 0xFFFFFFFF

Definition at line 39 of file audio/src/audio_codec.c.

◆ I2Cx_ADDRESS

#define I2Cx_ADDRESS 0x00

Definition at line 42 of file audio/src/audio_codec.c.

◆ I2Cx_CLK

#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK

Definition at line 45 of file audio/src/audio_codec.c.

◆ I2Cx_PORT

#define I2Cx_PORT I2C1

Definition at line 44 of file audio/src/audio_codec.c.

◆ I2Cx_SCL_GPIO_CLK

#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 49 of file audio/src/audio_codec.c.

◆ I2Cx_SCL_GPIO_PORT

#define I2Cx_SCL_GPIO_PORT GPIOB

Definition at line 48 of file audio/src/audio_codec.c.

◆ I2Cx_SCL_PIN

#define I2Cx_SCL_PIN GPIO_PINS_8

Definition at line 47 of file audio/src/audio_codec.c.

◆ I2Cx_SDA_GPIO_CLK

#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 53 of file audio/src/audio_codec.c.

◆ I2Cx_SDA_GPIO_PORT

#define I2Cx_SDA_GPIO_PORT GPIOB

Definition at line 52 of file audio/src/audio_codec.c.

◆ I2Cx_SDA_PIN

#define I2Cx_SDA_PIN GPIO_PINS_9

Definition at line 51 of file audio/src/audio_codec.c.

◆ I2Cx_SPEED

#define I2Cx_SPEED 200000

Definition at line 41 of file audio/src/audio_codec.c.

◆ USB_BUFFER_SIZE_EX

#define USB_BUFFER_SIZE_EX

usb endpoint max num define

usb buffer extend to 768-1280 bytes usb enable extend buffer

Definition at line 55 of file project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h.

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

auto malloc usb endpoint buffer

usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h.

◆ WM8988_REG_BITW16

#define WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)

wm8988 bit width

Definition at line 64 of file audio/src/audio_codec.c.

◆ WM8988_REG_FREQ16K

#define WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)

Definition at line 59 of file audio/src/audio_codec.c.

◆ WM8988_REG_FREQ48K

#define WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)

wm8988 freq

Definition at line 58 of file audio/src/audio_codec.c.

Function Documentation

◆ audio_codec_init()

error_status audio_codec_init ( void )

audio codec init

Parameters
none
Return values
error status

Definition at line 792 of file audio/src/audio_codec.c.

◆ audio_codec_loop()

error_status audio_codec_loop ( void )

audio codec loop

Parameters
none
Return values
none

Definition at line 851 of file audio/src/audio_codec.c.

◆ audio_codec_mic_alt_setting()

void audio_codec_mic_alt_setting ( uint32_t alt_seting )

audio codec microphone alt setting config

Parameters
none
Return values
none

Definition at line 167 of file audio/src/audio_codec.c.

◆ audio_codec_mic_get_data()

uint32_t audio_codec_mic_get_data ( uint8_t * buffer )

codec microphone get data

Parameters
data data buffer
Return values
data len

Definition at line 280 of file audio/src/audio_codec.c.

◆ audio_codec_modify_freq()

void audio_codec_modify_freq ( uint32_t freq )

audio codec modify freq

Parameters
freq freq (wm8988 microphone and speaker must as same freq)
Return values
none

Definition at line 340 of file audio/src/audio_codec.c.

Referenced by audio_codec_set_mic_freq(), and audio_codec_set_spk_freq().

◆ audio_codec_set_mic_freq()

void audio_codec_set_mic_freq ( uint32_t freq )

audio codec set microphone freq

Parameters
freq freq (wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 119 of file audio/src/audio_codec.c.

◆ audio_codec_set_mic_mute()

void audio_codec_set_mic_mute ( uint8_t mute )

audio codec set microphone mute

Parameters
mute mute state
Return values
none

Definition at line 182 of file audio/src/audio_codec.c.

◆ audio_codec_set_mic_volume()

void audio_codec_set_mic_volume ( uint16_t volume )

audio codec set microphone volume

Parameters
volume the new volume
Return values
none

Definition at line 204 of file audio/src/audio_codec.c.

◆ audio_codec_set_spk_freq()

void audio_codec_set_spk_freq ( uint32_t freq )

audio codec set speaker freq

Parameters
freq freq(wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 135 of file audio/src/audio_codec.c.

◆ audio_codec_set_spk_mute()

void audio_codec_set_spk_mute ( uint8_t mute )

audio codec set speaker mute

Parameters
mute mute state
Return values
none

Definition at line 193 of file audio/src/audio_codec.c.

◆ audio_codec_set_spk_volume()

void audio_codec_set_spk_volume ( uint16_t volume )

audio codec set speaker volume

Parameters
volume the new volume
Return values
none

Definition at line 215 of file audio/src/audio_codec.c.

◆ audio_codec_spk_alt_setting()

void audio_codec_spk_alt_setting ( uint32_t alt_seting )

audio codec speaker alt setting config

Parameters
none
Return values
none

Definition at line 152 of file audio/src/audio_codec.c.

◆ audio_codec_spk_feedback()

uint8_t audio_codec_spk_feedback ( uint8_t * feedback )

codec speaker feedback

Parameters
feedback data buffer
Return values
feedback len

Definition at line 226 of file audio/src/audio_codec.c.

◆ audio_codec_spk_fifo_write()

void audio_codec_spk_fifo_write | ( | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

codec speaker write fifo

audio codec interface

Parameters
data | data buffer
len | data length
Return values
none

Definition at line 242 of file audio/src/audio_codec.c.

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ DMA1_Channel3_IRQHandler()

void DMA1_Channel3_IRQHandler ( void )

this function handles dma1 channel3 interrupt.

Parameters
none
Return values
none

Definition at line 647 of file audio/src/audio_codec.c.

◆ DMA1_Channel4_IRQHandler()

void DMA1_Channel4_IRQHandler ( void )

this function handles dma1 channel4 interrupt.

Parameters
none
Return values
none

Definition at line 722 of file audio/src/audio_codec.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 10

< gpio pins number 11

Definition at line 397 of file audio/src/audio_codec.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 98 of file project/at_start_f403/examples/usb_device/audio/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 48 of file project/at_start_f403/examples/usb_device/audio/src/main.c.

Referenced by main().

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 139 of file project/at_start_f403/examples/usb_device/audio/src/main.c.

Variable Documentation

◆ audio_codec

audio_codec_type audio_codec

Definition at line 104 of file audio/src/audio_codec.c.

Referenced by audio_codec_init(), audio_codec_loop(), audio_codec_mic_get_data(), audio_codec_set_mic_freq(), audio_codec_set_mic_mute(), audio_codec_set_mic_volume(), audio_codec_set_spk_freq(), audio_codec_set_spk_mute(), audio_codec_set_spk_volume(), audio_codec_spk_feedback(), audio_codec_spk_fifo_write(), DMA1_Channel3_IRQHandler(), and DMA1_Channel4_IRQHandler().

◆ hi2cx

i2c_handle_type hi2cx

Definition at line 102 of file audio/src/audio_codec.c.

Referenced by audio_codec_init(), audio_codec_loop(), and audio_codec_modify_freq().

◆ mic_dma_buffer

uint16_t mic_dma_buffer[DMA_BUFFER_SIZE]

Definition at line 106 of file audio/src/audio_codec.c.

Referenced by codec_i2s_init(), and DMA1_Channel4_IRQHandler().

◆ reg_addr_data

uint16_t reg_addr_data[]

wm8988 register default value

Definition at line 69 of file audio/src/audio_codec.c.

Referenced by audio_codec_init().

◆ report_buf

uint8_t report_buf[USBD_AUHID_IN_MAXPACKET_SIZE]

Definition at line 44 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c.

◆ spk_dma_buffer

uint16_t spk_dma_buffer[DMA_BUFFER_SIZE]

Definition at line 105 of file audio/src/audio_codec.c.

Referenced by codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ usb_core_dev [1/2]

usbd_core_type usb_core_dev

Definition at line 41 of file project/at_start_f403/examples/usb_device/audio/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ usb_core_dev [2/2]

usbd_core_type usb_core_dev

Definition at line 42 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c.


AT32F403 Firmwary Library: USB_device_audio_codec_reg_definition

Macros
USB_device_audio_codec_reg_definition
AT32F403_periph_examples » USB_device_audio

Macros

#define | WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/
#define | WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/
#define | WM8988_R2_LOUT1_VOLUME 0x02
#define | WM8988_R3_ROUT1_VOLUME 0x03
#define | WM8988_R4_RESERVED 0x04
#define | WM8988_R5_ADC_DAC_CONTROL 0x05
#define | WM8988_R6_RESERVED 0x06
#define | WM8988_R7_AUDIO_INTERFACE 0x07
#define | WM8988_R8_SAMPLE_RATE 0x08
#define | WM8988_R9_RESERVED 0x09
#define | WM8988_R10_LEFT_DAC_VOLUME 0x0A
#define | WM8988_R11_RIGHT_DAC_VOLUME 0x0B
#define | WM8988_R12_BASS_CONTROL 0x0C
#define | WM8988_R13_TREBLE_CONTROL 0x0D
#define | WM8988_R14_
#define | WM8988_R15_RESET 0x0F
#define | WM8988_R16_3D_CONTROL 0x10
#define | WM8988_R17_ALC1 0x11
#define | WM8988_R18_ALC2 0x12
#define | WM8988_R19_ALC3 0x13
#define | WM8988_R20_NOISE_GATE 0x14
#define | WM8988_R21_LEFT_ADC_VOLUME 0x15
#define | WM8988_R22_RIGHT_ADC_VOLUME 0x16
#define | WM8988_R23_ADDITIONAL_1_CONTROL 0x17
#define | WM8988_R24_ADDITIONAL_2_CONTROL 0x18
#define | WM8988_R25_PWR_1_MGMT 0x19
#define | WM8988_R26_PWR_2_MGMT 0x1A
#define | WM8988_R27_ADDITIONAL_3_CONTROL 0x1B
#define | WM8988_R31_ADC_INPUT_MODE 0x1F
#define | WM8988_R32_ADC_L_SIGNAL_PATH 0x20
#define | WM8988_R33_ADC_R_SIGNAL_PATH 0x21
#define | WM8988_R34_LEFT_OUT_MIX_1 0x22
#define | WM8988_R35_LEFT_OUT_MIX_2 0x23
#define | WM8988_R36_RIGHT_OUT_MIX_1 0x24
#define | WM8988_R37_RIGHT_OUT_MIX_2 0x25
#define | WM8988_R38_RESERVED
#define | WM8988_R39_RESERVED
#define | WM8988_R40_LOUT2_VOLUME 0x28
#define | WM8988_R41_ROUT2_VOLUME 0x29
#define | WM8988_R42_RESERVED
#define | WM8988_R43_LOW_POWER_PALYBACK 0x43
#define | WM8988_I2C_ADDR_CSB_LOW 0x34
#define | WM8988_I2C_ADDR_CSB_HIGH 0x36

Detailed Description

Macro Definition Documentation

◆ WM8988_I2C_ADDR_CSB_HIGH

#define WM8988_I2C_ADDR_CSB_HIGH 0x36

Definition at line 92 of file audio/inc/audio_codec.h.

◆ WM8988_I2C_ADDR_CSB_LOW

#define WM8988_I2C_ADDR_CSB_LOW 0x34

Definition at line 91 of file audio/inc/audio_codec.h.

◆ WM8988_R0_LEFT_INPUT_VOLUME

#define WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/

Definition at line 48 of file audio/inc/audio_codec.h.

◆ WM8988_R10_LEFT_DAC_VOLUME

#define WM8988_R10_LEFT_DAC_VOLUME 0x0A

Definition at line 58 of file audio/inc/audio_codec.h.

◆ WM8988_R11_RIGHT_DAC_VOLUME

#define WM8988_R11_RIGHT_DAC_VOLUME 0x0B

Definition at line 59 of file audio/inc/audio_codec.h.

◆ WM8988_R12_BASS_CONTROL

#define WM8988_R12_BASS_CONTROL 0x0C

Definition at line 60 of file audio/inc/audio_codec.h.

◆ WM8988_R13_TREBLE_CONTROL

#define WM8988_R13_TREBLE_CONTROL 0x0D

Definition at line 61 of file audio/inc/audio_codec.h.

◆ WM8988_R14_

#define WM8988_R14_

Definition at line 62 of file audio/inc/audio_codec.h.

◆ WM8988_R15_RESET

#define WM8988_R15_RESET 0x0F

Definition at line 63 of file audio/inc/audio_codec.h.

◆ WM8988_R16_3D_CONTROL

#define WM8988_R16_3D_CONTROL 0x10

Definition at line 64 of file audio/inc/audio_codec.h.

◆ WM8988_R17_ALC1

#define WM8988_R17_ALC1 0x11

Definition at line 65 of file audio/inc/audio_codec.h.

◆ WM8988_R18_ALC2

#define WM8988_R18_ALC2 0x12

Definition at line 66 of file audio/inc/audio_codec.h.

◆ WM8988_R19_ALC3

#define WM8988_R19_ALC3 0x13

Definition at line 67 of file audio/inc/audio_codec.h.

◆ WM8988_R1_RIGHT_INPUT_VOLUME

#define WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/

Definition at line 49 of file audio/inc/audio_codec.h.

◆ WM8988_R20_NOISE_GATE

#define WM8988_R20_NOISE_GATE 0x14

Definition at line 68 of file audio/inc/audio_codec.h.

◆ WM8988_R21_LEFT_ADC_VOLUME

#define WM8988_R21_LEFT_ADC_VOLUME 0x15

Definition at line 69 of file audio/inc/audio_codec.h.

◆ WM8988_R22_RIGHT_ADC_VOLUME

#define WM8988_R22_RIGHT_ADC_VOLUME 0x16

Definition at line 70 of file audio/inc/audio_codec.h.

◆ WM8988_R23_ADDITIONAL_1_CONTROL

#define WM8988_R23_ADDITIONAL_1_CONTROL 0x17

Definition at line 71 of file audio/inc/audio_codec.h.

◆ WM8988_R24_ADDITIONAL_2_CONTROL

#define WM8988_R24_ADDITIONAL_2_CONTROL 0x18

Definition at line 72 of file audio/inc/audio_codec.h.

◆ WM8988_R25_PWR_1_MGMT

#define WM8988_R25_PWR_1_MGMT 0x19

Definition at line 73 of file audio/inc/audio_codec.h.

◆ WM8988_R26_PWR_2_MGMT

#define WM8988_R26_PWR_2_MGMT 0x1A

Definition at line 74 of file audio/inc/audio_codec.h.

◆ WM8988_R27_ADDITIONAL_3_CONTROL

#define WM8988_R27_ADDITIONAL_3_CONTROL 0x1B

Definition at line 75 of file audio/inc/audio_codec.h.

◆ WM8988_R2_LOUT1_VOLUME

#define WM8988_R2_LOUT1_VOLUME 0x02

Definition at line 50 of file audio/inc/audio_codec.h.

◆ WM8988_R31_ADC_INPUT_MODE

#define WM8988_R31_ADC_INPUT_MODE 0x1F

Definition at line 77 of file audio/inc/audio_codec.h.

◆ WM8988_R32_ADC_L_SIGNAL_PATH

#define WM8988_R32_ADC_L_SIGNAL_PATH 0x20

Definition at line 78 of file audio/inc/audio_codec.h.

◆ WM8988_R33_ADC_R_SIGNAL_PATH

#define WM8988_R33_ADC_R_SIGNAL_PATH 0x21

Definition at line 79 of file audio/inc/audio_codec.h.

◆ WM8988_R34_LEFT_OUT_MIX_1

#define WM8988_R34_LEFT_OUT_MIX_1 0x22

Definition at line 80 of file audio/inc/audio_codec.h.

◆ WM8988_R35_LEFT_OUT_MIX_2

#define WM8988_R35_LEFT_OUT_MIX_2 0x23

Definition at line 81 of file audio/inc/audio_codec.h.

◆ WM8988_R36_RIGHT_OUT_MIX_1

#define WM8988_R36_RIGHT_OUT_MIX_1 0x24

Definition at line 82 of file audio/inc/audio_codec.h.

◆ WM8988_R37_RIGHT_OUT_MIX_2

#define WM8988_R37_RIGHT_OUT_MIX_2 0x25

Definition at line 83 of file audio/inc/audio_codec.h.

◆ WM8988_R38_RESERVED

#define WM8988_R38_RESERVED

Definition at line 84 of file audio/inc/audio_codec.h.

◆ WM8988_R39_RESERVED

#define WM8988_R39_RESERVED

Definition at line 85 of file audio/inc/audio_codec.h.

◆ WM8988_R3_ROUT1_VOLUME

#define WM8988_R3_ROUT1_VOLUME 0x03

Definition at line 51 of file audio/inc/audio_codec.h.

◆ WM8988_R40_LOUT2_VOLUME

#define WM8988_R40_LOUT2_VOLUME 0x28

Definition at line 86 of file audio/inc/audio_codec.h.

◆ WM8988_R41_ROUT2_VOLUME

#define WM8988_R41_ROUT2_VOLUME 0x29

Definition at line 87 of file audio/inc/audio_codec.h.

◆ WM8988_R42_RESERVED

#define WM8988_R42_RESERVED

Definition at line 88 of file audio/inc/audio_codec.h.

◆ WM8988_R43_LOW_POWER_PALYBACK

#define WM8988_R43_LOW_POWER_PALYBACK 0x43

Definition at line 89 of file audio/inc/audio_codec.h.

◆ WM8988_R4_RESERVED

#define WM8988_R4_RESERVED 0x04

Definition at line 52 of file audio/inc/audio_codec.h.

◆ WM8988_R5_ADC_DAC_CONTROL

#define WM8988_R5_ADC_DAC_CONTROL 0x05

Definition at line 53 of file audio/inc/audio_codec.h.

◆ WM8988_R6_RESERVED

#define WM8988_R6_RESERVED 0x06

Definition at line 54 of file audio/inc/audio_codec.h.

◆ WM8988_R7_AUDIO_INTERFACE

#define WM8988_R7_AUDIO_INTERFACE 0x07

Definition at line 55 of file audio/inc/audio_codec.h.

◆ WM8988_R8_SAMPLE_RATE

#define WM8988_R8_SAMPLE_RATE 0x08

Definition at line 56 of file audio/inc/audio_codec.h.

◆ WM8988_R9_RESERVED

#define WM8988_R9_RESERVED 0x09

Definition at line 57 of file audio/inc/audio_codec.h.


AT32F403 Firmwary Library: USB_device_audio_codec_pin_definition

Macros
USB_device_audio_codec_pin_definition
AT32F403_periph_examples » USB_device_audio

Macros

#define | I2S1_WS_PIN GPIO_PINS_4
#define | I2S1_CK_PIN GPIO_PINS_5
#define | I2S1_SD_PIN GPIO_PINS_7
#define | I2S1_GPIO GPIOA
#define | I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
#define | I2S1_DT_ADDRESS (&(SPI1->dt))
#define | I2S2_WS_PIN GPIO_PINS_12
#define | I2S2_CK_PIN GPIO_PINS_13
#define | I2S2_SD_PIN GPIO_PINS_15
#define | I2S2_GPIO GPIOB
#define | I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2S2_DT_ADDRESS (&(SPI2->dt))
#define | SPK_TX_FIFO_SIZE (1024 * 4)

Detailed Description

Macro Definition Documentation

◆ I2S1_CK_PIN

#define I2S1_CK_PIN GPIO_PINS_5

Definition at line 102 of file audio/inc/audio_codec.h.

◆ I2S1_DT_ADDRESS

#define I2S1_DT_ADDRESS (&(SPI1->dt))

Definition at line 106 of file audio/inc/audio_codec.h.

◆ I2S1_GPIO

#define I2S1_GPIO GPIOA

Definition at line 104 of file audio/inc/audio_codec.h.

◆ I2S1_GPIO_CRM_CLK

#define I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 105 of file audio/inc/audio_codec.h.

◆ I2S1_SD_PIN

#define I2S1_SD_PIN GPIO_PINS_7

Definition at line 103 of file audio/inc/audio_codec.h.

◆ I2S1_WS_PIN

#define I2S1_WS_PIN GPIO_PINS_4

Definition at line 101 of file audio/inc/audio_codec.h.

◆ I2S2_CK_PIN

#define I2S2_CK_PIN GPIO_PINS_13

Definition at line 110 of file audio/inc/audio_codec.h.

◆ I2S2_DT_ADDRESS

#define I2S2_DT_ADDRESS (&(SPI2->dt))

Definition at line 114 of file audio/inc/audio_codec.h.

◆ I2S2_GPIO

#define I2S2_GPIO GPIOB

Definition at line 112 of file audio/inc/audio_codec.h.

◆ I2S2_GPIO_CRM_CLK

#define I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 113 of file audio/inc/audio_codec.h.

◆ I2S2_SD_PIN

#define I2S2_SD_PIN GPIO_PINS_15

Definition at line 111 of file audio/inc/audio_codec.h.

◆ I2S2_WS_PIN

#define I2S2_WS_PIN GPIO_PINS_12

Definition at line 109 of file audio/inc/audio_codec.h.

◆ SPK_TX_FIFO_SIZE

#define SPK_TX_FIFO_SIZE (1024 * 4)

Definition at line 116 of file audio/inc/audio_codec.h.


AT32F403 Firmwary Library: USB_device_audio_codec_exported_functions

Data Structures | Macros | Functions
USB_device_audio_codec_exported_functions
AT32F403_periph_examples » USB_device_audio

Data Structures

struct audio_codec_type

Macros

#define | MIC_BUFFER_SIZE 1024
#define | SPK_BUFFER_SIZE 4096
#define | DMA_BUFFER_SIZE 288

Functions

error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
audio codec interface More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...

Detailed Description

Macro Definition Documentation

◆ DMA_BUFFER_SIZE

#define DMA_BUFFER_SIZE 288

Definition at line 127 of file audio/inc/audio_codec.h.

◆ MIC_BUFFER_SIZE

#define MIC_BUFFER_SIZE 1024

Definition at line 125 of file audio/inc/audio_codec.h.

◆ SPK_BUFFER_SIZE

#define SPK_BUFFER_SIZE 4096

Definition at line 126 of file audio/inc/audio_codec.h.

Function Documentation

◆ audio_codec_init()

error_status audio_codec_init ( void )

audio codec init

Parameters
none
Return values
error status

Definition at line 792 of file audio/src/audio_codec.c.

Referenced by main().

◆ audio_codec_loop()

error_status audio_codec_loop ( void )

audio codec loop

Parameters
none
Return values
none

Definition at line 851 of file audio/src/audio_codec.c.

Referenced by main().

◆ audio_codec_mic_alt_setting()

void audio_codec_mic_alt_setting ( uint32_t alt_seting )

audio codec microphone alt setting config

Parameters
none
Return values
none

Definition at line 167 of file audio/src/audio_codec.c.

Referenced by audio_set_interface(), and class_event_handler().

◆ audio_codec_mic_get_data()

uint32_t audio_codec_mic_get_data ( uint8_t * buffer )

codec microphone get data

Parameters
data data buffer
Return values
data len

Definition at line 280 of file audio/src/audio_codec.c.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_codec_modify_freq()

void audio_codec_modify_freq ( uint32_t freq )

audio codec modify freq

Parameters
freq freq (wm8988 microphone and speaker must as same freq)
Return values
none

Definition at line 340 of file audio/src/audio_codec.c.

◆ audio_codec_set_mic_freq()

void audio_codec_set_mic_freq ( uint32_t freq )

audio codec set microphone freq

Parameters
freq freq (wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 119 of file audio/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_mic_mute()

void audio_codec_set_mic_mute ( uint8_t mute )

audio codec set microphone mute

Parameters
mute mute state
Return values
none

Definition at line 182 of file audio/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_mic_volume()

void audio_codec_set_mic_volume ( uint16_t volume )

audio codec set microphone volume

Parameters
volume the new volume
Return values
none

Definition at line 204 of file audio/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_spk_freq()

void audio_codec_set_spk_freq ( uint32_t freq )

audio codec set speaker freq

Parameters
freq freq(wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 135 of file audio/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_spk_mute()

void audio_codec_set_spk_mute ( uint8_t mute )

audio codec set speaker mute

Parameters
mute mute state
Return values
none

Definition at line 193 of file audio/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_spk_volume()

void audio_codec_set_spk_volume ( uint16_t volume )

audio codec set speaker volume

Parameters
volume the new volume
Return values
none

Definition at line 215 of file audio/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_spk_alt_setting()

void audio_codec_spk_alt_setting ( uint32_t alt_seting )

audio codec speaker alt setting config

Parameters
none
Return values
none

Definition at line 152 of file audio/src/audio_codec.c.

Referenced by audio_set_interface(), and class_event_handler().

◆ audio_codec_spk_feedback()

uint8_t audio_codec_spk_feedback ( uint8_t * feedback )

codec speaker feedback

Parameters
feedback data buffer
Return values
feedback len

Definition at line 226 of file audio/src/audio_codec.c.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_codec_spk_fifo_write()

void audio_codec_spk_fifo_write | ( | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

audio codec interface

audio codec interface

Parameters
data | data buffer
len | data length
Return values
none

Definition at line 242 of file audio/src/audio_codec.c.

Referenced by class_out_handler().


AT32F403 Firmwary Library: audio_codec_type Struct Reference

Data Fields
audio_codec_type Struct Reference
AT32F403_periph_examples » USB_device_audio » USB_device_audio_codec_exported_functions | AT32F403_periph_examples » _USB_device_audio_hid » USB_device_audio_hid_codec_exported_functions

#include <audio_codec.h>

Data Fields

uint32_t | audio_freq
uint32_t | audio_bitw
uint16_t | spk_buffer [4096]
uint16_t * | spk_roff
uint16_t * | spk_woff
uint16_t * | spk_rend
uint32_t | spk_freq
uint32_t | spk_wtotal
uint32_t | spk_rtotal
uint16_t | spk_threshold
uint16_t | spk_calc
uint8_t | spk_stage
uint16_t | mic_buffer [1024]
uint16_t * | mic_roff
uint16_t * | mic_woff
uint16_t * | mic_wend
uint32_t | mic_wtotal
uint32_t | mic_rtotal
uint32_t | mic_delta
uint16_t | mic_calc
uint16_t | mic_adj_count
uint8_t | mic_adj_stage
uint8_t | mic_stage
uint8_t | mic_mute
uint8_t | spk_mute
uint16_t | mic_volume
uint16_t | spk_volume
uint32_t | spk_tx_size
uint32_t | mic_rx_size
uint32_t | spk_enable
uint32_t | mic_enable

Detailed Description

Definition at line 129 of file audio/inc/audio_codec.h.

Field Documentation

◆ audio_bitw

uint32_t audio_codec_type::audio_bitw

Definition at line 132 of file audio/inc/audio_codec.h.

Referenced by audio_codec_init(), and codec_i2s_init().

◆ audio_freq

uint32_t audio_codec_type::audio_freq

Definition at line 131 of file audio/inc/audio_codec.h.

Referenced by audio_codec_init(), audio_codec_set_mic_freq(), audio_codec_set_spk_freq(), codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ mic_adj_count

uint16_t audio_codec_type::mic_adj_count

Definition at line 154 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), and DMA1_Channel4_IRQHandler().

◆ mic_adj_stage

uint8_t audio_codec_type::mic_adj_stage

Definition at line 155 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), and DMA1_Channel4_IRQHandler().

◆ mic_buffer

uint16_t audio_codec_type::mic_buffer

Definition at line 146 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), codec_i2s_init(), and DMA1_Channel4_IRQHandler().

◆ mic_calc

uint16_t audio_codec_type::mic_calc

Definition at line 153 of file audio/inc/audio_codec.h.

Referenced by DMA1_Channel4_IRQHandler().

◆ mic_delta

uint32_t audio_codec_type::mic_delta

Definition at line 152 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), and DMA1_Channel4_IRQHandler().

◆ mic_enable

uint32_t audio_codec_type::mic_enable

Definition at line 168 of file audio/inc/audio_codec.h.

◆ mic_mute

uint8_t audio_codec_type::mic_mute

Definition at line 158 of file audio/inc/audio_codec.h.

Referenced by audio_codec_loop(), and audio_codec_set_mic_mute().

◆ mic_roff

uint16_t * audio_codec_type::mic_roff

Definition at line 147 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), codec_i2s_init(), and DMA1_Channel4_IRQHandler().

◆ mic_rtotal

uint32_t audio_codec_type::mic_rtotal

Definition at line 151 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), and DMA1_Channel4_IRQHandler().

◆ mic_rx_size

uint32_t audio_codec_type::mic_rx_size

Definition at line 165 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), codec_i2s_init(), and DMA1_Channel4_IRQHandler().

◆ mic_stage

uint8_t audio_codec_type::mic_stage

Definition at line 156 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), and DMA1_Channel4_IRQHandler().

◆ mic_volume

uint16_t audio_codec_type::mic_volume

Definition at line 161 of file audio/inc/audio_codec.h.

Referenced by audio_codec_loop(), and audio_codec_set_mic_volume().

◆ mic_wend

uint16_t * audio_codec_type::mic_wend

Definition at line 149 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), codec_i2s_init(), and DMA1_Channel4_IRQHandler().

◆ mic_woff

uint16_t * audio_codec_type::mic_woff

Definition at line 148 of file audio/inc/audio_codec.h.

Referenced by codec_i2s_init(), and DMA1_Channel4_IRQHandler().

◆ mic_wtotal

uint32_t audio_codec_type::mic_wtotal

Definition at line 150 of file audio/inc/audio_codec.h.

Referenced by audio_codec_mic_get_data(), and DMA1_Channel4_IRQHandler().

◆ spk_buffer

uint16_t audio_codec_type::spk_buffer

Definition at line 134 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ spk_calc

uint16_t audio_codec_type::spk_calc

Definition at line 142 of file audio/inc/audio_codec.h.

Referenced by DMA1_Channel3_IRQHandler().

◆ spk_enable

uint32_t audio_codec_type::spk_enable

Definition at line 167 of file audio/inc/audio_codec.h.

◆ spk_freq

uint32_t audio_codec_type::spk_freq

Definition at line 138 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_feedback(), codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ spk_mute

uint8_t audio_codec_type::spk_mute

Definition at line 159 of file audio/inc/audio_codec.h.

Referenced by audio_codec_loop(), and audio_codec_set_spk_mute().

◆ spk_rend

uint16_t * audio_codec_type::spk_rend

Definition at line 137 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ spk_roff

uint16_t * audio_codec_type::spk_roff

Definition at line 135 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ spk_rtotal

uint32_t audio_codec_type::spk_rtotal

Definition at line 140 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), and DMA1_Channel3_IRQHandler().

◆ spk_stage

uint8_t audio_codec_type::spk_stage

Definition at line 143 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), and DMA1_Channel3_IRQHandler().

◆ spk_threshold

uint16_t audio_codec_type::spk_threshold

Definition at line 141 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), and DMA1_Channel3_IRQHandler().

◆ spk_tx_size

uint32_t audio_codec_type::spk_tx_size

Definition at line 164 of file audio/inc/audio_codec.h.

Referenced by codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ spk_volume

uint16_t audio_codec_type::spk_volume

Definition at line 162 of file audio/inc/audio_codec.h.

Referenced by audio_codec_loop(), and audio_codec_set_spk_volume().

◆ spk_woff

uint16_t * audio_codec_type::spk_woff

Definition at line 136 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), codec_i2s_init(), and DMA1_Channel3_IRQHandler().

◆ spk_wtotal

uint32_t audio_codec_type::spk_wtotal

Definition at line 139 of file audio/inc/audio_codec.h.

Referenced by audio_codec_spk_fifo_write(), and DMA1_Channel3_IRQHandler().

The documentation for this struct was generated from the following files:
  • audio/inc/audio_codec.h
  • composite_audio_hid/inc/audio_codec.h


AT32F403 Firmwary Library: _USB_device_audio_hid

Modules | Macros | Functions | Variables
_USB_device_audio_hid
AT32F403_periph_examples

Modules

USB_device_audio_hid_codec_reg_definition
USB_device_audio_hid_codec_pin_definition
USB_device_audio_hid_codec_exported_functions

Macros

#define | USB_BUFFER_SIZE_EX
usb endpoint max num define More...
#define | USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer More...
#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 200000
#define | I2Cx_ADDRESS 0x00
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_8
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_9
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)
wm8988 freq More...
#define | WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)
#define | WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)
wm8988 bit width More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | memset16_buffer (uint16_t *buffer, uint32_t set, uint32_t len)
buffer memset More...
void | codec_i2s_reset (void)
audio codec i2s reset More...
void | codec_i2s_init (audio_codec_type *param)
audio codec i2s init More...
void | mclk_tmr1_init (void)
mclk clock conifg More...
void | copy_buff (uint16_t *dest, uint16_t *src, uint32_t len)
copy buffer More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
codec speaker write fifo More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | DMA1_Channel3_IRQHandler (void)
this function handles dma1 channel3 interrupt. More...
void | DMA1_Channel4_IRQHandler (void)
this function handles dma1 channel4 interrupt. More...
error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...

Variables

uint16_t | reg_addr_data []
wm8988 register default value More...
i2c_handle_type hi2cx
audio_codec_type audio_codec
uint16_t | spk_dma_buffer [DMA_BUFFER_SIZE]
uint16_t | mic_dma_buffer [DMA_BUFFER_SIZE]

Detailed Description

Macro Definition Documentation

◆ I2C_TIMEOUT

#define I2C_TIMEOUT 0xFFFFFFFF

Definition at line 39 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_ADDRESS

#define I2Cx_ADDRESS 0x00

Definition at line 42 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_CLK

#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK

Definition at line 45 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_PORT

#define I2Cx_PORT I2C1

Definition at line 44 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_SCL_GPIO_CLK

#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 49 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_SCL_GPIO_PORT

#define I2Cx_SCL_GPIO_PORT GPIOB

Definition at line 48 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_SCL_PIN

#define I2Cx_SCL_PIN GPIO_PINS_8

Definition at line 47 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_SDA_GPIO_CLK

#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 53 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_SDA_GPIO_PORT

#define I2Cx_SDA_GPIO_PORT GPIOB

Definition at line 52 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_SDA_PIN

#define I2Cx_SDA_PIN GPIO_PINS_9

Definition at line 51 of file composite_audio_hid/src/audio_codec.c.

◆ I2Cx_SPEED

#define I2Cx_SPEED 200000

Definition at line 41 of file composite_audio_hid/src/audio_codec.c.

◆ USB_BUFFER_SIZE_EX

#define USB_BUFFER_SIZE_EX

usb endpoint max num define

usb buffer extend to 768-1280 bytes usb enable extend buffer

Definition at line 55 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h.

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

auto malloc usb endpoint buffer

usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h.

◆ WM8988_REG_BITW16

#define WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)

wm8988 bit width

Definition at line 64 of file composite_audio_hid/src/audio_codec.c.

◆ WM8988_REG_FREQ16K

#define WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)

Definition at line 59 of file composite_audio_hid/src/audio_codec.c.

◆ WM8988_REG_FREQ48K

#define WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)

wm8988 freq

Definition at line 58 of file composite_audio_hid/src/audio_codec.c.

Function Documentation

◆ audio_codec_init()

error_status audio_codec_init ( void )

audio codec init

Parameters
none
Return values
error status

Definition at line 794 of file composite_audio_hid/src/audio_codec.c.

Referenced by main().

◆ audio_codec_loop()

error_status audio_codec_loop ( void )

audio codec loop

Parameters
none
Return values
none

Definition at line 853 of file composite_audio_hid/src/audio_codec.c.

Referenced by main().

◆ audio_codec_mic_alt_setting()

void audio_codec_mic_alt_setting ( uint32_t alt_seting )

audio codec microphone alt setting config

Parameters
none
Return values
none

Definition at line 167 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_set_interface(), and class_event_handler().

◆ audio_codec_mic_get_data()

uint32_t audio_codec_mic_get_data ( uint8_t * buffer )

codec microphone get data

Parameters
data data buffer
Return values
data len

Definition at line 280 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_codec_modify_freq()

void audio_codec_modify_freq ( uint32_t freq )

audio codec modify freq

Parameters
freq freq (wm8988 microphone and speaker must as same freq)
Return values
none

Definition at line 340 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_codec_set_mic_freq(), and audio_codec_set_spk_freq().

◆ audio_codec_set_mic_freq()

void audio_codec_set_mic_freq ( uint32_t freq )

audio codec set microphone freq

Parameters
freq freq (wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 119 of file composite_audio_hid/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_mic_mute()

void audio_codec_set_mic_mute ( uint8_t mute )

audio codec set microphone mute

Parameters
mute mute state
Return values
none

Definition at line 182 of file composite_audio_hid/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_mic_volume()

void audio_codec_set_mic_volume ( uint16_t volume )

audio codec set microphone volume

Parameters
volume the new volume
Return values
none

Definition at line 204 of file composite_audio_hid/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_spk_freq()

void audio_codec_set_spk_freq ( uint32_t freq )

audio codec set speaker freq

Parameters
freq freq(wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 135 of file composite_audio_hid/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_spk_mute()

void audio_codec_set_spk_mute ( uint8_t mute )

audio codec set speaker mute

Parameters
mute mute state
Return values
none

Definition at line 193 of file composite_audio_hid/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_set_spk_volume()

void audio_codec_set_spk_volume ( uint16_t volume )

audio codec set speaker volume

Parameters
volume the new volume
Return values
none

Definition at line 215 of file composite_audio_hid/src/audio_codec.c.

Referenced by class_ept0_rx_handler().

◆ audio_codec_spk_alt_setting()

void audio_codec_spk_alt_setting ( uint32_t alt_seting )

audio codec speaker alt setting config

Parameters
none
Return values
none

Definition at line 152 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_set_interface(), and class_event_handler().

◆ audio_codec_spk_feedback()

uint8_t audio_codec_spk_feedback ( uint8_t * feedback )

codec speaker feedback

Parameters
feedback data buffer
Return values
feedback len

Definition at line 226 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_set_interface(), and class_in_handler().

◆ audio_codec_spk_fifo_write()

void audio_codec_spk_fifo_write | ( | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

codec speaker write fifo

audio codec interface

Parameters
data | data buffer
len | data length
Return values
none

Definition at line 242 of file composite_audio_hid/src/audio_codec.c.

Referenced by class_out_handler().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ codec_i2s_init()

void codec_i2s_init ( audio_codec_type * param )

audio codec i2s init

Parameters
freq | audio sampling freq
bitw_format | bit width
Return values
error status

Definition at line 491 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_codec_init(), audio_codec_set_mic_freq(), and audio_codec_set_spk_freq().

◆ codec_i2s_reset()

void codec_i2s_reset ( void )

audio codec i2s reset

Parameters
none
Return values
none

Definition at line 477 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_codec_set_mic_freq(), and audio_codec_set_spk_freq().

◆ copy_buff()

void copy_buff | ( | uint16_t * | dest,
 |  | uint16_t * | src,
 |  | uint32_t | len
 | ) |  |

copy buffer

Parameters
dest | dest data buffer
src | src data buffer
len | data length
Return values
none

Definition at line 383 of file composite_audio_hid/src/audio_codec.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ DMA1_Channel3_IRQHandler()

void DMA1_Channel3_IRQHandler ( void )

this function handles dma1 channel3 interrupt.

Parameters
none
Return values
none

Definition at line 649 of file composite_audio_hid/src/audio_codec.c.

◆ DMA1_Channel4_IRQHandler()

void DMA1_Channel4_IRQHandler ( void )

this function handles dma1 channel4 interrupt.

Parameters
none
Return values
none

Definition at line 724 of file composite_audio_hid/src/audio_codec.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ i2c_lowlevel_init()

void i2c_lowlevel_init ( i2c_handle_type * hi2c )

initializes peripherals used by the i2c.

Parameters
none
Return values
none

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 6

< gpio pins number 7

< gpio pins number 10

< gpio pins number 11

Definition at line 397 of file composite_audio_hid/src/audio_codec.c.

◆ mclk_tmr1_init()

void mclk_tmr1_init ( void )

mclk clock conifg

Parameters
none
Return values
none

Definition at line 435 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_codec_init().

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ memset16_buffer()

void memset16_buffer | ( | uint16_t * | buffer,
 |  | uint32_t | set,
 |  | uint32_t | len
 | ) |  |

buffer memset

Parameters
buffer | buffer
set | memset data
len | data length
Return values
none

Definition at line 367 of file composite_audio_hid/src/audio_codec.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 149 of file project/at_start_f403/examples/usb_device/audio/src/main.c.

Referenced by usbd_remote_wakeup().

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 160 of file project/at_start_f403/examples/usb_device/audio/src/main.c.

Variable Documentation

◆ audio_codec

audio_codec_type audio_codec

Definition at line 104 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_codec_init(), audio_codec_loop(), audio_codec_mic_get_data(), audio_codec_set_mic_freq(), audio_codec_set_mic_mute(), audio_codec_set_mic_volume(), audio_codec_set_spk_freq(), audio_codec_set_spk_mute(), audio_codec_set_spk_volume(), audio_codec_spk_feedback(), audio_codec_spk_fifo_write(), DMA1_Channel3_IRQHandler(), and DMA1_Channel4_IRQHandler().

◆ hi2cx

i2c_handle_type hi2cx

Definition at line 102 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_codec_init(), audio_codec_loop(), audio_codec_modify_freq(), DMA1_Channel4_IRQHandler(), DMA1_Channel5_IRQHandler(), DMA1_Channel6_IRQHandler(), DMA1_Channel7_IRQHandler(), I2C1_ERR_IRQHandler(), I2C1_EVT_IRQHandler(), I2C2_ERR_IRQHandler(), and I2C2_EVT_IRQHandler().

◆ mic_dma_buffer

uint16_t mic_dma_buffer[DMA_BUFFER_SIZE]

Definition at line 106 of file composite_audio_hid/src/audio_codec.c.

Referenced by codec_i2s_init(), and DMA1_Channel4_IRQHandler().

◆ reg_addr_data

uint16_t reg_addr_data[]

wm8988 register default value

Definition at line 69 of file composite_audio_hid/src/audio_codec.c.

Referenced by audio_codec_init().

◆ spk_dma_buffer

uint16_t spk_dma_buffer[DMA_BUFFER_SIZE]

Definition at line 105 of file composite_audio_hid/src/audio_codec.c.

Referenced by codec_i2s_init(), and DMA1_Channel3_IRQHandler().


AT32F403 Firmwary Library: USB_device_audio_hid_codec_reg_definition

Macros
USB_device_audio_hid_codec_reg_definition
AT32F403_periph_examples » _USB_device_audio_hid

Macros

#define | WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/
#define | WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/
#define | WM8988_R2_LOUT1_VOLUME 0x02
#define | WM8988_R3_ROUT1_VOLUME 0x03
#define | WM8988_R4_RESERVED 0x04
#define | WM8988_R5_ADC_DAC_CONTROL 0x05
#define | WM8988_R6_RESERVED 0x06
#define | WM8988_R7_AUDIO_INTERFACE 0x07
#define | WM8988_R8_SAMPLE_RATE 0x08
#define | WM8988_R9_RESERVED 0x09
#define | WM8988_R10_LEFT_DAC_VOLUME 0x0A
#define | WM8988_R11_RIGHT_DAC_VOLUME 0x0B
#define | WM8988_R12_BASS_CONTROL 0x0C
#define | WM8988_R13_TREBLE_CONTROL 0x0D
#define | WM8988_R14_
#define | WM8988_R15_RESET 0x0F
#define | WM8988_R16_3D_CONTROL 0x10
#define | WM8988_R17_ALC1 0x11
#define | WM8988_R18_ALC2 0x12
#define | WM8988_R19_ALC3 0x13
#define | WM8988_R20_NOISE_GATE 0x14
#define | WM8988_R21_LEFT_ADC_VOLUME 0x15
#define | WM8988_R22_RIGHT_ADC_VOLUME 0x16
#define | WM8988_R23_ADDITIONAL_1_CONTROL 0x17
#define | WM8988_R24_ADDITIONAL_2_CONTROL 0x18
#define | WM8988_R25_PWR_1_MGMT 0x19
#define | WM8988_R26_PWR_2_MGMT 0x1A
#define | WM8988_R27_ADDITIONAL_3_CONTROL 0x1B
#define | WM8988_R31_ADC_INPUT_MODE 0x1F
#define | WM8988_R32_ADC_L_SIGNAL_PATH 0x20
#define | WM8988_R33_ADC_R_SIGNAL_PATH 0x21
#define | WM8988_R34_LEFT_OUT_MIX_1 0x22
#define | WM8988_R35_LEFT_OUT_MIX_2 0x23
#define | WM8988_R36_RIGHT_OUT_MIX_1 0x24
#define | WM8988_R37_RIGHT_OUT_MIX_2 0x25
#define | WM8988_R38_RESERVED
#define | WM8988_R39_RESERVED
#define | WM8988_R40_LOUT2_VOLUME 0x28
#define | WM8988_R41_ROUT2_VOLUME 0x29
#define | WM8988_R42_RESERVED
#define | WM8988_R43_LOW_POWER_PALYBACK 0x43
#define | WM8988_I2C_ADDR_CSB_LOW 0x34
#define | WM8988_I2C_ADDR_CSB_HIGH 0x36

Detailed Description

Macro Definition Documentation

◆ WM8988_I2C_ADDR_CSB_HIGH

#define WM8988_I2C_ADDR_CSB_HIGH 0x36

Definition at line 92 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_I2C_ADDR_CSB_LOW

#define WM8988_I2C_ADDR_CSB_LOW 0x34

Definition at line 91 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R0_LEFT_INPUT_VOLUME

#define WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/

Definition at line 48 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R10_LEFT_DAC_VOLUME

#define WM8988_R10_LEFT_DAC_VOLUME 0x0A

Definition at line 58 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R11_RIGHT_DAC_VOLUME

#define WM8988_R11_RIGHT_DAC_VOLUME 0x0B

Definition at line 59 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R12_BASS_CONTROL

#define WM8988_R12_BASS_CONTROL 0x0C

Definition at line 60 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R13_TREBLE_CONTROL

#define WM8988_R13_TREBLE_CONTROL 0x0D

Definition at line 61 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R14_

#define WM8988_R14_

Definition at line 62 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R15_RESET

#define WM8988_R15_RESET 0x0F

Definition at line 63 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R16_3D_CONTROL

#define WM8988_R16_3D_CONTROL 0x10

Definition at line 64 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R17_ALC1

#define WM8988_R17_ALC1 0x11

Definition at line 65 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R18_ALC2

#define WM8988_R18_ALC2 0x12

Definition at line 66 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R19_ALC3

#define WM8988_R19_ALC3 0x13

Definition at line 67 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R1_RIGHT_INPUT_VOLUME

#define WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/

Definition at line 49 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R20_NOISE_GATE

#define WM8988_R20_NOISE_GATE 0x14

Definition at line 68 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R21_LEFT_ADC_VOLUME

#define WM8988_R21_LEFT_ADC_VOLUME 0x15

Definition at line 69 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R22_RIGHT_ADC_VOLUME

#define WM8988_R22_RIGHT_ADC_VOLUME 0x16

Definition at line 70 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R23_ADDITIONAL_1_CONTROL

#define WM8988_R23_ADDITIONAL_1_CONTROL 0x17

Definition at line 71 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R24_ADDITIONAL_2_CONTROL

#define WM8988_R24_ADDITIONAL_2_CONTROL 0x18

Definition at line 72 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R25_PWR_1_MGMT

#define WM8988_R25_PWR_1_MGMT 0x19

Definition at line 73 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R26_PWR_2_MGMT

#define WM8988_R26_PWR_2_MGMT 0x1A

Definition at line 74 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R27_ADDITIONAL_3_CONTROL

#define WM8988_R27_ADDITIONAL_3_CONTROL 0x1B

Definition at line 75 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R2_LOUT1_VOLUME

#define WM8988_R2_LOUT1_VOLUME 0x02

Definition at line 50 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R31_ADC_INPUT_MODE

#define WM8988_R31_ADC_INPUT_MODE 0x1F

Definition at line 77 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R32_ADC_L_SIGNAL_PATH

#define WM8988_R32_ADC_L_SIGNAL_PATH 0x20

Definition at line 78 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R33_ADC_R_SIGNAL_PATH

#define WM8988_R33_ADC_R_SIGNAL_PATH 0x21

Definition at line 79 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R34_LEFT_OUT_MIX_1

#define WM8988_R34_LEFT_OUT_MIX_1 0x22

Definition at line 80 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R35_LEFT_OUT_MIX_2

#define WM8988_R35_LEFT_OUT_MIX_2 0x23

Definition at line 81 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R36_RIGHT_OUT_MIX_1

#define WM8988_R36_RIGHT_OUT_MIX_1 0x24

Definition at line 82 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R37_RIGHT_OUT_MIX_2

#define WM8988_R37_RIGHT_OUT_MIX_2 0x25

Definition at line 83 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R38_RESERVED

#define WM8988_R38_RESERVED

Definition at line 84 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R39_RESERVED

#define WM8988_R39_RESERVED

Definition at line 85 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R3_ROUT1_VOLUME

#define WM8988_R3_ROUT1_VOLUME 0x03

Definition at line 51 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R40_LOUT2_VOLUME

#define WM8988_R40_LOUT2_VOLUME 0x28

Definition at line 86 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R41_ROUT2_VOLUME

#define WM8988_R41_ROUT2_VOLUME 0x29

Definition at line 87 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R42_RESERVED

#define WM8988_R42_RESERVED

Definition at line 88 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R43_LOW_POWER_PALYBACK

#define WM8988_R43_LOW_POWER_PALYBACK 0x43

Definition at line 89 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R4_RESERVED

#define WM8988_R4_RESERVED 0x04

Definition at line 52 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R5_ADC_DAC_CONTROL

#define WM8988_R5_ADC_DAC_CONTROL 0x05

Definition at line 53 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R6_RESERVED

#define WM8988_R6_RESERVED 0x06

Definition at line 54 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R7_AUDIO_INTERFACE

#define WM8988_R7_AUDIO_INTERFACE 0x07

Definition at line 55 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R8_SAMPLE_RATE

#define WM8988_R8_SAMPLE_RATE 0x08

Definition at line 56 of file composite_audio_hid/inc/audio_codec.h.

◆ WM8988_R9_RESERVED

#define WM8988_R9_RESERVED 0x09

Definition at line 57 of file composite_audio_hid/inc/audio_codec.h.


AT32F403 Firmwary Library: USB_device_audio_hid_codec_pin_definition

Macros
USB_device_audio_hid_codec_pin_definition
AT32F403_periph_examples » _USB_device_audio_hid

Macros

#define | I2S1_WS_PIN GPIO_PINS_4
#define | I2S1_CK_PIN GPIO_PINS_5
#define | I2S1_SD_PIN GPIO_PINS_7
#define | I2S1_GPIO GPIOA
#define | I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
#define | I2S1_DT_ADDRESS (&(SPI1->dt))
#define | I2S2_WS_PIN GPIO_PINS_12
#define | I2S2_CK_PIN GPIO_PINS_13
#define | I2S2_SD_PIN GPIO_PINS_15
#define | I2S2_GPIO GPIOB
#define | I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2S2_DT_ADDRESS (&(SPI2->dt))
#define | SPK_TX_FIFO_SIZE (1024 * 4)

Detailed Description

Macro Definition Documentation

◆ I2S1_CK_PIN

#define I2S1_CK_PIN GPIO_PINS_5

Definition at line 102 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S1_DT_ADDRESS

#define I2S1_DT_ADDRESS (&(SPI1->dt))

Definition at line 107 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S1_GPIO

#define I2S1_GPIO GPIOA

Definition at line 105 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S1_GPIO_CRM_CLK

#define I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 106 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S1_SD_PIN

#define I2S1_SD_PIN GPIO_PINS_7

Definition at line 103 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S1_WS_PIN

#define I2S1_WS_PIN GPIO_PINS_4

Definition at line 101 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S2_CK_PIN

#define I2S2_CK_PIN GPIO_PINS_13

Definition at line 111 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S2_DT_ADDRESS

#define I2S2_DT_ADDRESS (&(SPI2->dt))

Definition at line 117 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S2_GPIO

#define I2S2_GPIO GPIOB

Definition at line 115 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S2_GPIO_CRM_CLK

#define I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK

Definition at line 116 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S2_SD_PIN

#define I2S2_SD_PIN GPIO_PINS_15

Definition at line 112 of file composite_audio_hid/inc/audio_codec.h.

◆ I2S2_WS_PIN

#define I2S2_WS_PIN GPIO_PINS_12

Definition at line 110 of file composite_audio_hid/inc/audio_codec.h.

◆ SPK_TX_FIFO_SIZE

#define SPK_TX_FIFO_SIZE (1024 * 4)

Definition at line 119 of file composite_audio_hid/inc/audio_codec.h.


AT32F403 Firmwary Library: USB_device_audio_hid_codec_exported_functions

Data Structures | Macros | Functions
USB_device_audio_hid_codec_exported_functions
AT32F403_periph_examples » _USB_device_audio_hid

Data Structures

struct audio_codec_type

Macros

#define | MIC_BUFFER_SIZE 1024
#define | SPK_BUFFER_SIZE 4096
#define | DMA_BUFFER_SIZE 288

Functions

error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
audio codec interface More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...

Detailed Description

Macro Definition Documentation

◆ DMA_BUFFER_SIZE

#define DMA_BUFFER_SIZE 288

Definition at line 130 of file composite_audio_hid/inc/audio_codec.h.

◆ MIC_BUFFER_SIZE

#define MIC_BUFFER_SIZE 1024

Definition at line 128 of file composite_audio_hid/inc/audio_codec.h.

◆ SPK_BUFFER_SIZE

#define SPK_BUFFER_SIZE 4096

Definition at line 129 of file composite_audio_hid/inc/audio_codec.h.

Function Documentation

◆ audio_codec_init()

error_status audio_codec_init ( void )

audio codec init

Parameters
none
Return values
error status

Definition at line 792 of file audio/src/audio_codec.c.

◆ audio_codec_loop()

error_status audio_codec_loop ( void )

audio codec loop

Parameters
none
Return values
none

Definition at line 851 of file audio/src/audio_codec.c.

◆ audio_codec_mic_alt_setting()

void audio_codec_mic_alt_setting ( uint32_t alt_seting )

audio codec microphone alt setting config

Parameters
none
Return values
none

Definition at line 167 of file audio/src/audio_codec.c.

◆ audio_codec_mic_get_data()

uint32_t audio_codec_mic_get_data ( uint8_t * buffer )

codec microphone get data

Parameters
data data buffer
Return values
data len

Definition at line 280 of file audio/src/audio_codec.c.

◆ audio_codec_modify_freq()

void audio_codec_modify_freq ( uint32_t freq )

audio codec modify freq

Parameters
freq freq (wm8988 microphone and speaker must as same freq)
Return values
none

Definition at line 340 of file audio/src/audio_codec.c.

Referenced by audio_codec_set_mic_freq(), and audio_codec_set_spk_freq().

◆ audio_codec_set_mic_freq()

void audio_codec_set_mic_freq ( uint32_t freq )

audio codec set microphone freq

Parameters
freq freq (wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 119 of file audio/src/audio_codec.c.

◆ audio_codec_set_mic_mute()

void audio_codec_set_mic_mute ( uint8_t mute )

audio codec set microphone mute

Parameters
mute mute state
Return values
none

Definition at line 182 of file audio/src/audio_codec.c.

◆ audio_codec_set_mic_volume()

void audio_codec_set_mic_volume ( uint16_t volume )

audio codec set microphone volume

Parameters
volume the new volume
Return values
none

Definition at line 204 of file audio/src/audio_codec.c.

◆ audio_codec_set_spk_freq()

void audio_codec_set_spk_freq ( uint32_t freq )

audio codec set speaker freq

Parameters
freq freq(wm8988 microphone and speaker must same freq)
Return values
none

Definition at line 135 of file audio/src/audio_codec.c.

◆ audio_codec_set_spk_mute()

void audio_codec_set_spk_mute ( uint8_t mute )

audio codec set speaker mute

Parameters
mute mute state
Return values
none

Definition at line 193 of file audio/src/audio_codec.c.

◆ audio_codec_set_spk_volume()

void audio_codec_set_spk_volume ( uint16_t volume )

audio codec set speaker volume

Parameters
volume the new volume
Return values
none

Definition at line 215 of file audio/src/audio_codec.c.

◆ audio_codec_spk_alt_setting()

void audio_codec_spk_alt_setting ( uint32_t alt_seting )

audio codec speaker alt setting config

Parameters
none
Return values
none

Definition at line 152 of file audio/src/audio_codec.c.

◆ audio_codec_spk_feedback()

uint8_t audio_codec_spk_feedback ( uint8_t * feedback )

codec speaker feedback

Parameters
feedback data buffer
Return values
feedback len

Definition at line 226 of file audio/src/audio_codec.c.

◆ audio_codec_spk_fifo_write()

void audio_codec_spk_fifo_write | ( | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

audio codec interface

audio codec interface

Parameters
data | data buffer
len | data length
Return values
none

Definition at line 242 of file audio/src/audio_codec.c.


AT32F403 Firmwary Library: USB_device_composite_vcp_keyboard

Macros | Functions | Variables
USB_device_composite_vcp_keyboard
AT32F403_periph_examples

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

usbd_core_type usb_core_dev
uint8_t usb_buffer [256]

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 136 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 216 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 227 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 206 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.

Variable Documentation

◆ usb_buffer

uint8_t usb_buffer[256]

Definition at line 41 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.

Referenced by main().

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 40 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.

Referenced by keyboard_send_string(), main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: _USB_device_vcp_msc

Macros | Variables
_USB_device_vcp_msc
AT32F403_periph_examples

Macros

#define | INTERNAL_FLASH_LUN 0
#define | SPI_FLASH_LUN 1
#define | SD_LUN 2
#define | USB_FLASH_ADDR_OFFSET 0x08005000
#define | SECTOR_SIZE_1K 1024
#define | SECTOR_SIZE_2K 2048
#define | SECTOR_SIZE_4K 4096

Variables

uint32_t | sector_size = 2048
uint32_t | msc_flash_size
uint8_t | scsi_inquiry [MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]

Detailed Description

Macro Definition Documentation

◆ INTERNAL_FLASH_LUN

#define INTERNAL_FLASH_LUN 0

Definition at line 43 of file composite_vcp_msc/inc/msc_diskio.h.

◆ SD_LUN

#define SD_LUN 2

Definition at line 45 of file composite_vcp_msc/inc/msc_diskio.h.

◆ SECTOR_SIZE_1K

#define SECTOR_SIZE_1K 1024

Definition at line 49 of file composite_vcp_msc/inc/msc_diskio.h.

◆ SECTOR_SIZE_2K

#define SECTOR_SIZE_2K 2048

Definition at line 50 of file composite_vcp_msc/inc/msc_diskio.h.

◆ SECTOR_SIZE_4K

#define SECTOR_SIZE_4K 4096

Definition at line 51 of file composite_vcp_msc/inc/msc_diskio.h.

◆ SPI_FLASH_LUN

#define SPI_FLASH_LUN 1

Definition at line 44 of file composite_vcp_msc/inc/msc_diskio.h.

◆ USB_FLASH_ADDR_OFFSET

#define USB_FLASH_ADDR_OFFSET 0x08005000

Definition at line 47 of file composite_vcp_msc/inc/msc_diskio.h.

Variable Documentation

◆ msc_flash_size

uint32_t msc_flash_size

Definition at line 35 of file composite_vcp_msc/src/msc_diskio.c.

Referenced by msc_disk_capacity().

◆ scsi_inquiry

uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]
Initial value:
=
{
{
0x00,
0x80,
0x00,
0x01,
SCSI_INQUIRY_DATA_LENGTH - 5,
0x00, 0x00, 0x00,
'A', 'T', '3', '2', ' ', ' ', ' ', ' ',
'D', 'i', 's', 'k', '0', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ',
'2', '.', '0', '0'
}
}
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155

Definition at line 36 of file composite_vcp_msc/src/msc_diskio.c.

Referenced by get_inquiry().

◆ sector_size

uint32_t sector_size = 2048

Definition at line 34 of file composite_vcp_msc/src/msc_diskio.c.

Referenced by msc_disk_capacity(), and sector_read().


AT32F403 Firmwary Library: USB_device_composite_vcp_msc

Macros | Functions | Variables
USB_device_composite_vcp_msc
AT32F403_periph_examples

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

usbd_core_type usb_core_dev
uint8_t usb_buffer [256]

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 98 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 48 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 173 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 184 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 163 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.

Variable Documentation

◆ usb_buffer

uint8_t usb_buffer[256]

Definition at line 41 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.

Referenced by main().

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 40 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: USB_device_custom_hid

Macros | Functions | Variables
USB_device_custom_hid
AT32F403_periph_examples

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

usbd_core_type usb_core_dev
uint8_t report_buf [USBD_CUSTOM_IN_MAXPACKET_SIZE]

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 98 of file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 48 of file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 150 of file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 161 of file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 140 of file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.

Variable Documentation

◆ report_buf

uint8_t report_buf[USBD_CUSTOM_IN_MAXPACKET_SIZE]

Definition at line 41 of file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.

Referenced by main().

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 40 of file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: USB_device_keyboard

Macros | Functions | Variables
USB_device_keyboard
AT32F403_periph_examples

Macros

#define | USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...
#define | USB_LOW_POWER_WAKUP
usb low power wakeup handler enable More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | keyboard_send_string (void *udev, uint8_t *string, uint8_t len)
keyboard send string More...
void | system_clock_recover (void)
systemclock recover. More...
void | usb_low_power_wakeup_config (void)
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

usbd_core_type usb_core_dev

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h.

◆ USB_LOW_POWER_WAKUP

#define USB_LOW_POWER_WAKUP

usb low power wakeup handler enable

Definition at line 101 of file project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ keyboard_send_string()

void keyboard_send_string | ( | void * | udev,
 |  | uint8_t * | string,
 |  | uint8_t | len
 | ) |  |

keyboard send string

Parameters
string | send string
len | send string length
Return values
none

Definition at line 52 of file project/at_start_f403/examples/usb_device/keyboard/src/main.c.

Referenced by main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 136 of file project/at_start_f403/examples/usb_device/keyboard/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ system_clock_recover()

void system_clock_recover ( void )

systemclock recover.

Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 94 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c.

Referenced by main().

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 86 of file project/at_start_f403/examples/usb_device/keyboard/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 315 of file project/at_start_f403/examples/usb_device/keyboard/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 326 of file project/at_start_f403/examples/usb_device/keyboard/src/main.c.

◆ usb_low_power_wakeup_config()

void usb_low_power_wakeup_config ( void )

Referenced by main().

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 305 of file project/at_start_f403/examples/usb_device/keyboard/src/main.c.

Variable Documentation

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 40 of file project/at_start_f403/examples/usb_device/keyboard/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: USB_device_mouse

Macros | Functions | Variables
USB_device_mouse
AT32F403_periph_examples

Macros

#define | USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...
#define | USB_LOW_POWER_WAKUP
usb low power wakeup handler enable More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | system_clock_recover (void)
systemclock recover. More...
void | button_exint_init (void)
configure button exint More...
void | usb_low_power_wakeup_config (void)
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

usbd_core_type usb_core_dev
__IO uint8_t | press_mouse = 0
uint8_t | report_buf [USBD_MOUSE_IN_MAXPACKET_SIZE]

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h.

◆ USB_LOW_POWER_WAKUP

#define USB_LOW_POWER_WAKUP

usb low power wakeup handler enable

Definition at line 101 of file project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ button_exint_init()

void button_exint_init ( void )

configure button exint

Parameters
none
Return values
none

< external interrupt line 0

Definition at line 50 of file project/at_start_f403/templates/src/main.c.

Referenced by main().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 101 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ system_clock_recover()

void system_clock_recover ( void )

systemclock recover.

Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 94 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c.

Referenced by main().

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 51 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 290 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 301 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

◆ usb_low_power_wakeup_config()

void usb_low_power_wakeup_config ( void )

Referenced by main().

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 279 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

Variable Documentation

◆ press_mouse

__IO uint8_t press_mouse = 0

Definition at line 41 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

Referenced by main().

◆ report_buf

uint8_t report_buf[USBD_MOUSE_IN_MAXPACKET_SIZE]

Definition at line 42 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 40 of file project/at_start_f403/examples/usb_device/mouse/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: USB_device_msc

Macros | Functions | Variables
USB_device_msc
AT32F403_periph_examples

Macros

#define | INTERNAL_FLASH_LUN 0
#define | SPI_FLASH_LUN 1
#define | SD_LUN 2
#define | USB_FLASH_ADDR_OFFSET 0x08005000
#define | SECTOR_SIZE_1K 1024
#define | SECTOR_SIZE_2K 2048
#define | SECTOR_SIZE_4K 4096
#define | USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

usbd_core_type usb_core_dev
uint32_t | sector_size = 2048
uint32_t | msc_flash_size
uint8_t | scsi_inquiry [MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]

Detailed Description

Macro Definition Documentation

◆ INTERNAL_FLASH_LUN

#define INTERNAL_FLASH_LUN 0

Definition at line 43 of file msc/inc/msc_diskio.h.

◆ SD_LUN

#define SD_LUN 2

Definition at line 45 of file msc/inc/msc_diskio.h.

◆ SECTOR_SIZE_1K

#define SECTOR_SIZE_1K 1024

Definition at line 49 of file msc/inc/msc_diskio.h.

◆ SECTOR_SIZE_2K

#define SECTOR_SIZE_2K 2048

Definition at line 50 of file msc/inc/msc_diskio.h.

◆ SECTOR_SIZE_4K

#define SECTOR_SIZE_4K 4096

Definition at line 51 of file msc/inc/msc_diskio.h.

◆ SPI_FLASH_LUN

#define SPI_FLASH_LUN 1

Definition at line 44 of file msc/inc/msc_diskio.h.

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h.

◆ USB_FLASH_ADDR_OFFSET

#define USB_FLASH_ADDR_OFFSET 0x08005000

Definition at line 47 of file msc/inc/msc_diskio.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ get_inquiry()

uint8_t * get_inquiry ( uint8_t lun )

get disk inquiry

Parameters
lun logical units number
Return values
inquiry string

Definition at line 57 of file msc/src/msc_diskio.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 99 of file project/at_start_f403/examples/usb_device/msc/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ msc_disk_capacity()

usb_sts_type msc_disk_capacity | ( | uint8_t | lun,
 |  | uint32_t * | blk_nbr,
 |  | uint32_t * | blk_size
 | ) |  |

disk capacity

Parameters
lun | logical units number
blk_nbr | pointer to number of block
blk_size | pointer to block size
Return values
status of usb_sts_type

Definition at line 134 of file msc/src/msc_diskio.c.

◆ msc_disk_read()

usb_sts_type msc_disk_read | ( | uint8_t | lun,
 |  | uint64_t | addr,
 |  | uint8_t * | read_buf,
 |  | uint32_t | len
 | ) |  |

disk read

Parameters
lun | logical units number
addr | logical address
read_buf | pointer to read buffer
len | read length
Return values
status of usb_sts_type

Definition at line 73 of file msc/src/msc_diskio.c.

◆ msc_disk_write()

usb_sts_type msc_disk_write | ( | uint8_t | lun,
 |  | uint64_t | addr,
 |  | uint8_t * | buf,
 |  | uint32_t | len
 | ) |  |

disk write

Parameters
lun | logical units number
addr | logical address
buf | pointer to write buffer
len | write length
Return values
status of usb_sts_type

Definition at line 100 of file msc/src/msc_diskio.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 49 of file project/at_start_f403/examples/usb_device/msc/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 143 of file project/at_start_f403/examples/usb_device/msc/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 154 of file project/at_start_f403/examples/usb_device/msc/src/main.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 133 of file project/at_start_f403/examples/usb_device/msc/src/main.c.

Variable Documentation

◆ msc_flash_size

uint32_t msc_flash_size

Definition at line 35 of file msc/src/msc_diskio.c.

Referenced by msc_disk_capacity().

◆ scsi_inquiry

uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]
Initial value:
=
{
{
0x00,
0x80,
0x00,
0x01,
SCSI_INQUIRY_DATA_LENGTH - 5,
0x00, 0x00, 0x00,
'A', 'T', '3', '2', ' ', ' ', ' ', ' ',
'D', 'i', 's', 'k', '0', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ',
'2', '.', '0', '0'
}
}
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155

Definition at line 36 of file msc/src/msc_diskio.c.

Referenced by get_inquiry().

◆ sector_size

uint32_t sector_size = 2048

Definition at line 34 of file msc/src/msc_diskio.c.

Referenced by msc_disk_capacity().

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 41 of file project/at_start_f403/examples/usb_device/msc/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: USB_device_printer

Macros | Functions | Variables
USB_device_printer
AT32F403_periph_examples

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

uint8_t usb_buffer [256]
usbd_core_type usb_core_dev

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 98 of file project/at_start_f403/examples/usb_device/printer/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 48 of file project/at_start_f403/examples/usb_device/printer/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 149 of file project/at_start_f403/examples/usb_device/printer/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 160 of file project/at_start_f403/examples/usb_device/printer/src/main.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 139 of file project/at_start_f403/examples/usb_device/printer/src/main.c.

Variable Documentation

◆ usb_buffer

uint8_t usb_buffer[256]

Definition at line 40 of file project/at_start_f403/examples/usb_device/printer/src/main.c.

Referenced by main().

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 41 of file project/at_start_f403/examples/usb_device/printer/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: USB_device_vcp_loopback

Macros | Functions | Variables
USB_device_vcp_loopback
AT32F403_periph_examples

Macros

#define | EPT0_TX_ADDR 0x40
usb endpoint max num define More...
#define | EPT0_RX_ADDR 0x80
#define | EPT1_TX_ADDR 0xC0
#define | EPT1_RX_ADDR 0x100
#define | EPT2_TX_ADDR 0x140
#define | EPT2_RX_ADDR 0x180
#define | EPT3_TX_ADDR 0x00
#define | EPT3_RX_ADDR 0x00
#define | EPT4_TX_ADDR 0x00
#define | EPT4_RX_ADDR 0x00
#define | EPT5_TX_ADDR 0x00
#define | EPT5_RX_ADDR 0x00
#define | EPT6_TX_ADDR 0x00
#define | EPT6_RX_ADDR 0x00
#define | EPT7_TX_ADDR 0x00
#define | EPT7_RX_ADDR 0x00
#define | USB_VIRTUAL_COMPORT
usb endpoint max num define More...
#define | EPT0_TX_ADDR 0x40
user custom endpoint buffer EPTn_TX_ADDR, EPTn_RX_ADDR must less than usb buffer size More...
#define | EPT0_RX_ADDR 0x80
#define | EPT1_TX_ADDR 0xC0
#define | EPT1_RX_ADDR 0x100
#define | EPT2_TX_ADDR 0x140
#define | EPT2_RX_ADDR 0x180
#define | EPT3_TX_ADDR 0x00
#define | EPT3_RX_ADDR 0x00
#define | EPT4_TX_ADDR 0x00
#define | EPT4_RX_ADDR 0x00
#define | EPT5_TX_ADDR 0x00
#define | EPT5_RX_ADDR 0x00
#define | EPT6_TX_ADDR 0x00
#define | EPT6_RX_ADDR 0x00
#define | EPT7_TX_ADDR 0x00
#define | EPT7_RX_ADDR 0x00
#define | usart_buffer_size 2048

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_usart_config (linecoding_type linecoding)
this function handles usart2 and linecoding config. More...
void | usart_gpio_config (void)
this function handles usart2 gpio config. More...
void | usart_send_data (uint8_t *send_data, uint16_t len)
this function handles usart2 send data. More...
uint16_t | usart_receive_data (void)
this function handles usart2 receive data. More...
void | USART2_IRQHandler (void)
this function handles usart2 handler. More...

Variables

usbd_core_type usb_core_dev
uint8_t | usb_buffer [256]
usbd_core_type usb_core_dev
uint8_t | usb_buffer [256]
linecoding_type linecoding
uint8_t | usart_rx_buffer [2048]
uint16_t | hw_usart_rx_index = 0
uint16_t | hw_usart_read_index = 0
uint16_t | usart_rx_data_len = 0
uint16_t | ov_cnt = 0

Detailed Description

Macro Definition Documentation

◆ EPT0_RX_ADDR [1/2]

#define EPT0_RX_ADDR 0x80

usb endpoint 0 rx buffer address offset

Definition at line 73 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT0_RX_ADDR [2/2]

#define EPT0_RX_ADDR 0x80

usb endpoint 0 rx buffer address offset

Definition at line 78 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT0_TX_ADDR [1/2]

#define EPT0_TX_ADDR 0x40

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer

user custom endpoint buffer EPTn_TX_ADDR, EPTn_RX_ADDR must less than usb buffer size usb endpoint 0 tx buffer address offset

Definition at line 72 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT0_TX_ADDR [2/2]

#define EPT0_TX_ADDR 0x40

user custom endpoint buffer EPTn_TX_ADDR, EPTn_RX_ADDR must less than usb buffer size

usb endpoint 0 tx buffer address offset

Definition at line 77 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT1_RX_ADDR [1/2]

#define EPT1_RX_ADDR 0x100

usb endpoint 1 rx buffer address offset

Definition at line 76 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT1_RX_ADDR [2/2]

#define EPT1_RX_ADDR 0x100

usb endpoint 1 rx buffer address offset

Definition at line 81 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT1_TX_ADDR [1/2]

#define EPT1_TX_ADDR 0xC0

usb endpoint 1 tx buffer address offset

Definition at line 75 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT1_TX_ADDR [2/2]

#define EPT1_TX_ADDR 0xC0

usb endpoint 1 tx buffer address offset

Definition at line 80 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT2_RX_ADDR [1/2]

#define EPT2_RX_ADDR 0x180

usb endpoint 2 rx buffer address offset

Definition at line 79 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT2_RX_ADDR [2/2]

#define EPT2_RX_ADDR 0x180

usb endpoint 2 rx buffer address offset

Definition at line 84 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT2_TX_ADDR [1/2]

#define EPT2_TX_ADDR 0x140

usb endpoint 2 tx buffer address offset

Definition at line 78 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT2_TX_ADDR [2/2]

#define EPT2_TX_ADDR 0x140

usb endpoint 2 tx buffer address offset

Definition at line 83 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT3_RX_ADDR [1/2]

#define EPT3_RX_ADDR 0x00

usb endpoint 3 rx buffer address offset

Definition at line 82 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT3_RX_ADDR [2/2]

#define EPT3_RX_ADDR 0x00

usb endpoint 3 rx buffer address offset

Definition at line 87 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT3_TX_ADDR [1/2]

#define EPT3_TX_ADDR 0x00

usb endpoint 3 tx buffer address offset

Definition at line 81 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT3_TX_ADDR [2/2]

#define EPT3_TX_ADDR 0x00

usb endpoint 3 tx buffer address offset

Definition at line 86 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT4_RX_ADDR [1/2]

#define EPT4_RX_ADDR 0x00

usb endpoint 4 rx buffer address offset

Definition at line 85 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT4_RX_ADDR [2/2]

#define EPT4_RX_ADDR 0x00

usb endpoint 4 rx buffer address offset

Definition at line 90 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT4_TX_ADDR [1/2]

#define EPT4_TX_ADDR 0x00

usb endpoint 4 tx buffer address offset

Definition at line 84 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT4_TX_ADDR [2/2]

#define EPT4_TX_ADDR 0x00

usb endpoint 4 tx buffer address offset

Definition at line 89 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT5_RX_ADDR [1/2]

#define EPT5_RX_ADDR 0x00

usb endpoint 5 rx buffer address offset

Definition at line 88 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT5_RX_ADDR [2/2]

#define EPT5_RX_ADDR 0x00

usb endpoint 5 rx buffer address offset

Definition at line 93 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT5_TX_ADDR [1/2]

#define EPT5_TX_ADDR 0x00

usb endpoint 5 tx buffer address offset

Definition at line 87 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT5_TX_ADDR [2/2]

#define EPT5_TX_ADDR 0x00

usb endpoint 5 tx buffer address offset

Definition at line 92 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT6_RX_ADDR [1/2]

#define EPT6_RX_ADDR 0x00

usb endpoint 6 rx buffer address offset

Definition at line 91 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT6_RX_ADDR [2/2]

#define EPT6_RX_ADDR 0x00

usb endpoint 6 rx buffer address offset

Definition at line 96 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT6_TX_ADDR [1/2]

#define EPT6_TX_ADDR 0x00

usb endpoint 6 tx buffer address offset

Definition at line 90 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT6_TX_ADDR [2/2]

#define EPT6_TX_ADDR 0x00

usb endpoint 6 tx buffer address offset

Definition at line 95 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT7_RX_ADDR [1/2]

#define EPT7_RX_ADDR 0x00

usb endpoint 7 rx buffer address offset

Definition at line 94 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT7_RX_ADDR [2/2]

#define EPT7_RX_ADDR 0x00

usb endpoint 7 rx buffer address offset

Definition at line 99 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ EPT7_TX_ADDR [1/2]

#define EPT7_TX_ADDR 0x00

usb endpoint 7 tx buffer address offset

Definition at line 93 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.

◆ EPT7_TX_ADDR [2/2]

#define EPT7_TX_ADDR 0x00

usb endpoint 7 tx buffer address offset

Definition at line 98 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

◆ usart_buffer_size

#define usart_buffer_size 2048

Definition at line 47 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ USB_VIRTUAL_COMPORT

#define USB_VIRTUAL_COMPORT

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer

usb virtual comport

Definition at line 66 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 98 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.

◆ USART2_IRQHandler()

void USART2_IRQHandler ( void )

this function handles usart2 handler.

Parameters
none
Return values
none

< usart receive data buffer full flag

Definition at line 264 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ usart_gpio_config()

void usart_gpio_config ( void )

this function handles usart2 gpio config.

Parameters
none
Return values
none

< gpio pins number 2

< gpio pins number 3

Definition at line 387 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ usart_receive_data()

uint16_t usart_receive_data ( void )

this function handles usart2 receive data.

Parameters
none
Return values
the data len

Definition at line 238 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ usart_send_data()

void usart_send_data | ( | uint8_t * | send_data,
 |  | uint16_t | len
 | ) |  |

this function handles usart2 send data.

Parameters
send_data | pointer to data
len | data len
Return values
none

< usart transmit data buffer empty flag

Definition at line 219 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 48 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 175 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 186 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.

◆ usb_usart_config()

void usb_usart_config ( linecoding_type linecoding )

this function handles usart2 and linecoding config.

Parameters
linecoding linecoding value
Return values
none

< usart receive data buffer full interrupt

Definition at line 279 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

Referenced by usb_vcp_cmd_process().

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 165 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.

Variable Documentation

◆ hw_usart_read_index

uint16_t hw_usart_read_index = 0

Definition at line 50 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

Referenced by usart_receive_data().

◆ hw_usart_rx_index

uint16_t hw_usart_rx_index = 0

Definition at line 49 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

Referenced by USART2_IRQHandler(), and usart_receive_data().

◆ linecoding

linecoding_type linecoding
extern

Definition at line 55 of file cdc_class.c.

Referenced by cdc_struct_init(), and usb_usart_config().

◆ ov_cnt

uint16_t ov_cnt = 0

Definition at line 52 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ usart_rx_buffer

uint8_t usart_rx_buffer[2048]

Definition at line 48 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

Referenced by USART2_IRQHandler().

◆ usart_rx_data_len

uint16_t usart_rx_data_len = 0

Definition at line 51 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ usb_buffer [1/2]

uint8_t usb_buffer[256]

Definition at line 41 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.

Referenced by main().

◆ usb_buffer [2/2]

uint8_t usb_buffer[256]

Definition at line 41 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.

◆ usb_core_dev [1/2]

usbd_core_type usb_core_dev

Definition at line 40 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().

◆ usb_core_dev [2/2]

usbd_core_type usb_core_dev

Definition at line 40 of file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.


AT32F403 Firmwary Library: USB_device_virtual_msc_iap

Modules | Macros | Functions | Variables
USB_device_virtual_msc_iap
AT32F403_periph_examples

Modules

USB_device_virtual_msc_iap_definition

Macros

#define | INTERNAL_FLASH_LUN 0
#define | SPI_FLASH_LUN 1
#define | SD_LUN 2
#define | USB_FLASH_ADDR_OFFSET 0x08004000
#define | USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...
#define | FAT16_SECTOR_SIZE 62

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
uint32_t | flash_fat16_boot_dir_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
boot dir write More...
uint32_t | flash_fat16_sector_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
write sector More...
uint32_t | fat16_memory_copy (uint8_t *dst, const uint8_t *src, uint32_t len)
memory copy function More...
uint32_t | fat16_memory_memset (uint8_t *dst, uint32_t set, uint32_t len)
memset function More...
uint32_t | flash_write_data (uint32_t address, uint8_t *data, uint32_t len)
write data to flash More...
uint32_t | flash_read_data (uint32_t address, uint8_t *data, uint32_t len)
read data from flash More...
uint32_t | fat16_memory_cmp (uint8_t *dst, uint8_t *src, uint32_t len)
memory compare function More...
uint32_t | flash_crc_check (uint32_t address, uint8_t *data, uint32_t len)
crc check More...
void | flash_fat16_clear_upgrade_flag (void)
clear iap upgrade flag More...
void | flash_fat16_set_upgrade_flag (void)
set iap upgrade complete flag More...
uint8_t | flash_fat16_get_upgrade_flag (void)
get iap upgrade complete flag More...
uint32_t | flash_fat16_read (uint32_t fat_lbk, uint8_t *data, uint32_t len)
read a logical block address More...
uint32_t | flash_fat16_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
write a logical block address More...
uint32_t | flash_fat16_set_name (const uint8_t *file_name, uint8_t len)
set file name More...
uint32_t | flash_fat16_addr_offset (uint8_t *file_name)
get offset address More...
void | flash_fat16_init (void)
flash fat16 iap init More...
void | jump_to_app (uint32_t address)
jump to app More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | usb_reset ()
usb re-connect More...
void | flash_fat16_loop_status (void)
loop status More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...

Variables

static uint8_t | fat16_sector [62]
const uint8_t | fat16_root_dir_sector [FAT16_DIR_SIZE]
const uint8_t | fat16_table_sector0 [FAT16_TABLE_SIZE]
uint8_t | fat16_file_name [FAT16_FILENAME_SIZE]
fat_dir_type g_file_attr
flash_iap_type flash_iap
uint32_t | file_write_nr = 0
uint8_t | file_match = 0
usbd_core_type usb_core_dev
void(* | pftarget )(void)
uint8_t | scsi_inquiry [MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]
iapfun jump_to_app
jump to app More...

Detailed Description

Macro Definition Documentation

◆ FAT16_SECTOR_SIZE

#define FAT16_SECTOR_SIZE 62

Definition at line 34 of file flash_fat16.c.

◆ INTERNAL_FLASH_LUN

#define INTERNAL_FLASH_LUN 0

Definition at line 43 of file virtual_msc_iap/inc/msc_diskio.h.

◆ SD_LUN

#define SD_LUN 2

Definition at line 45 of file virtual_msc_iap/inc/msc_diskio.h.

◆ SPI_FLASH_LUN

#define SPI_FLASH_LUN 1

Definition at line 44 of file virtual_msc_iap/inc/msc_diskio.h.

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h.

◆ USB_FLASH_ADDR_OFFSET

#define USB_FLASH_ADDR_OFFSET 0x08004000

Definition at line 47 of file virtual_msc_iap/inc/msc_diskio.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ fat16_memory_cmp()

uint32_t fat16_memory_cmp | ( | uint8_t * | dst,
 |  | uint8_t * | src,
 |  | uint32_t | len
 | ) |  |

memory compare function

Parameters
dst | dest buffer pointer
src | src buffer pointer
len | compare length
Return values
compare result

Definition at line 227 of file flash_fat16.c.

Referenced by flash_fat16_sector_write().

◆ fat16_memory_copy()

uint32_t fat16_memory_copy | ( | uint8_t * | dst,
 |  | const uint8_t * | src,
 |  | uint32_t | len
 | ) |  |

memory copy function

Parameters
dst | dest buffer pointer
src | src buffer pointer
len | copy length
Return values
nubmer of data copy

Definition at line 193 of file flash_fat16.c.

Referenced by flash_fat16_boot_dir_write(), and flash_fat16_read().

◆ fat16_memory_memset()

uint32_t fat16_memory_memset | ( | uint8_t * | dst,
 |  | uint32_t | set,
 |  | uint32_t | len
 | ) |  |

memset function

Parameters
dst | dest buffer pointer
set | set value
len | set length
Return values
nubmer of data set

Definition at line 210 of file flash_fat16.c.

Referenced by flash_fat16_boot_dir_write(), and flash_fat16_read().

◆ flash_crc_check()

uint32_t flash_crc_check | ( | uint32_t | address,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

crc check

Parameters
address | flash address
data | pointer to array to store data
len | data length
Return values
crc result

Definition at line 601 of file flash_fat16.c.

Referenced by flash_write_data().

◆ flash_fat16_addr_offset()

uint32_t flash_fat16_addr_offset ( uint8_t * file_name )

get offset address

Parameters
file_name file name
Return values
offset address

Definition at line 437 of file flash_fat16.c.

Referenced by flash_fat16_sector_write().

◆ flash_fat16_boot_dir_write()

uint32_t flash_fat16_boot_dir_write | ( | uint32_t | fat_lbk,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

boot dir write

Parameters
fat_lbk | logical block address
data | pointer to array to store data
len | data length
Return values
nubmer of data

Definition at line 379 of file flash_fat16.c.

Referenced by flash_fat16_write().

◆ flash_fat16_clear_upgrade_flag()

void flash_fat16_clear_upgrade_flag ( void )

clear iap upgrade flag

Parameters
none
Return values
none

Definition at line 243 of file flash_fat16.c.

Referenced by flash_fat16_sector_write().

◆ flash_fat16_get_upgrade_flag()

uint8_t flash_fat16_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the iap flag

Definition at line 268 of file flash_fat16.c.

Referenced by main().

◆ flash_fat16_init()

void flash_fat16_init ( void )

flash fat16 iap init

Parameters
none
Return values
none

Definition at line 720 of file flash_fat16.c.

Referenced by main().

◆ flash_fat16_loop_status()

void flash_fat16_loop_status ( void )

loop status

Parameters
none
Return values
none

Definition at line 159 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by main().

◆ flash_fat16_read()

uint32_t flash_fat16_read | ( | uint32_t | fat_lbk,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

read a logical block address

Parameters
fat_lbk | logical block address to read
data | pointer to array to store data read
len | data length
Return values
read length

Definition at line 288 of file flash_fat16.c.

Referenced by msc_disk_read().

◆ flash_fat16_sector_write()

uint32_t flash_fat16_sector_write | ( | uint32_t | fat_lbk,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

write sector

Parameters
fat_lbk | logical block address
data | pointer to array to store data
len | data length
Return values
nubmer of data

Definition at line 486 of file flash_fat16.c.

Referenced by flash_fat16_write().

◆ flash_fat16_set_name()

uint32_t flash_fat16_set_name | ( | const uint8_t * | file_name,
 |  | uint8_t | len
 | ) |  |

set file name

Parameters
file_name | file name
len | filename length
Return values
filename length

Definition at line 357 of file flash_fat16.c.

Referenced by flash_fat16_loop_status().

◆ flash_fat16_set_upgrade_flag()

void flash_fat16_set_upgrade_flag ( void )

set iap upgrade complete flag

Parameters
none
Return values
none

Definition at line 255 of file flash_fat16.c.

Referenced by flash_fat16_boot_dir_write(), and flash_fat16_sector_write().

◆ flash_fat16_write()

uint32_t flash_fat16_write | ( | uint32_t | fat_lbk,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

write a logical block address

Parameters
fat_lbk | logical block address to read
data | pointer to array to store data read
len | data length
Return values
read length

Definition at line 329 of file flash_fat16.c.

Referenced by msc_disk_write().

◆ flash_read_data()

uint32_t flash_read_data | ( | uint32_t | address,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

read data from flash

Parameters
address | flash address
data | pointer to array to store data
len | data length
Return values
read length

Definition at line 652 of file flash_fat16.c.

◆ flash_write_data()

uint32_t flash_write_data | ( | uint32_t | address,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

write data to flash

Parameters
address | flash address
data | pointer to array to store data
len | data length
Return values
write status

Definition at line 671 of file flash_fat16.c.

Referenced by flash_fat16_sector_write().

◆ get_inquiry()

uint8_t * get_inquiry ( uint8_t lun )

get disk inquiry

Parameters
lun logical units number
Return values
inquiry string

Definition at line 57 of file virtual_msc_iap/src/msc_diskio.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ jump_to_app()

void jump_to_app ( uint32_t address )

jump to app

Parameters
none
Return values
none

Definition at line 214 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by flash_fat16_loop_status(), and main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ msc_disk_capacity()

usb_sts_type msc_disk_capacity | ( | uint8_t | lun,
 |  | uint32_t * | blk_nbr,
 |  | uint32_t * | blk_size
 | ) |  |

disk capacity

Parameters
lun | logical units number
blk_nbr | pointer to number of block
blk_size | pointer to block size
Return values
status of usb_sts_type

Definition at line 115 of file virtual_msc_iap/src/msc_diskio.c.

◆ msc_disk_read()

usb_sts_type msc_disk_read | ( | uint8_t | lun,
 |  | uint64_t | addr,
 |  | uint8_t * | read_buf,
 |  | uint32_t | len
 | ) |  |

disk read

Parameters
lun | logical units number
addr | logical address
read_buf | pointer to read buffer
len | read length
Return values
status of usb_sts_type

Definition at line 73 of file virtual_msc_iap/src/msc_diskio.c.

◆ msc_disk_write()

usb_sts_type msc_disk_write | ( | uint8_t | lun,
 |  | uint64_t | addr,
 |  | uint8_t * | buf,
 |  | uint32_t | len
 | ) |  |

disk write

Parameters
lun | logical units number
addr | logical address
buf | pointer to write buffer
len | write length
Return values
status of usb_sts_type

Definition at line 95 of file virtual_msc_iap/src/msc_diskio.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 53 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 247 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 258 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

◆ usb_reset()

void usb_reset ( )

usb re-connect

Parameters
none
Return values
none

Definition at line 146 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by flash_fat16_loop_status().

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 237 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Variable Documentation

◆ fat16_file_name

uint8_t fat16_file_name[FAT16_FILENAME_SIZE]
Initial value:
=
{
'R',
'e',
'a',
'd',
'y',
' ',
' ',
' ',
'T',
'X',
'T'
}

Definition at line 155 of file flash_fat16.c.

Referenced by flash_fat16_read(), and flash_fat16_set_name().

◆ fat16_root_dir_sector

const uint8_t fat16_root_dir_sector[FAT16_DIR_SIZE]

Definition at line 106 of file flash_fat16.c.

Referenced by flash_fat16_read().

◆ fat16_sector

uint8_t fat16_sector[62]
static

Definition at line 35 of file flash_fat16.c.

Referenced by flash_fat16_read().

◆ fat16_table_sector0

const uint8_t fat16_table_sector0[FAT16_TABLE_SIZE]
Initial value:
=
{
0xF8,
0xFF,
0xFF,
0xFF
}

Definition at line 147 of file flash_fat16.c.

Referenced by flash_fat16_read().

◆ file_match

uint8_t file_match = 0

Definition at line 173 of file flash_fat16.c.

Referenced by flash_fat16_boot_dir_write(), and flash_fat16_sector_write().

◆ file_write_nr

uint32_t file_write_nr = 0

Definition at line 172 of file flash_fat16.c.

◆ flash_iap

flash_iap_type flash_iap

Definition at line 171 of file flash_fat16.c.

Referenced by flash_fat16_addr_offset(), flash_fat16_boot_dir_write(), flash_fat16_clear_upgrade_flag(), flash_fat16_get_upgrade_flag(), flash_fat16_init(), flash_fat16_loop_status(), flash_fat16_sector_write(), flash_fat16_set_upgrade_flag(), flash_write_data(), and main().

◆ g_file_attr

fat_dir_type g_file_attr

Definition at line 170 of file flash_fat16.c.

Referenced by flash_fat16_boot_dir_write(), and flash_fat16_sector_write().

◆ jump_to_app

void jump_to_app

jump to app

Parameters
none
Return values
none

Definition at line 44 of file bootloader/src/iap.c.

Referenced by app_load(), and main().

◆ pftarget

void(* pftarget) (void) ( void )

Definition at line 43 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by jump_to_app().

◆ scsi_inquiry

uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]
Initial value:
=
{
{
0x00,
0x80,
0x00,
0x01,
SCSI_INQUIRY_DATA_LENGTH - 5,
0x00, 0x00, 0x00,
'A', 'T', '3', '2', ' ', ' ', ' ', ' ',
'M', 's', 'c', ' ', 'i', 'a', 'p', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ',
'2', '.', '0', '0'
},
}
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155

Definition at line 36 of file virtual_msc_iap/src/msc_diskio.c.

Referenced by get_inquiry().

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 41 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by main(), usb_reset(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: USB_device_virtual_msc_iap_definition

Data Structures | Macros | Enumerations | Functions | Variables
USB_device_virtual_msc_iap_definition
AT32F403_periph_examples » USB_device_virtual_msc_iap

Data Structures

struct | fat_dir_type
struct | flash_iap_type

Macros

#define | FAT16_SECTOR_SIZE 62
#define | FAT16_TABLE_SIZE 4
#define | FAT16_BYTE_PER_SIZE 2048
#define | FAT16_FILENAME_SIZE 11
#define | FAT16_DIR_SIZE 47
#define | FLASH_FAT16_BOOT_SECTOR_ADDR 0x00
#define | FLASH_FAT16_1_ADDR 0x3000
#define | FLASH_FAT16_2_ADDR 0x3800
#define | FLASH_FAT16_ROOT_ADDR 0x4000
#define | FLASH_FAT16_FILE_START_ADDR 0x8800
#define | FLASH_APP_START_ADDR 0x08005000
#define | FLASH_SECTOR_1K_SIZE 0x400
#define | FLASH_SECTOR_2K_SIZE 0x800
#define | FLASH_SECTOR_4K_SIZE 0x1000
#define | FLASH_SECTOR_1K_ALLGNED 0x3FF
#define | FLASH_SECTOR_2K_ALLGNED 0x7FF
#define | FLASH_SECTOR_4K_ALLGNED 0xFFF
#define | FILE_SUFFIX1_LEN 3
#define | FILE_SUFFIX2_LEN 3
#define | FILE_SUFFIX1_NAME "BIN"
#define | FILE_SUFFIX2_NAME "bin"
#define | INVAILD_OFFSET_ADDR 0xFFFFFFFF
#define | IAP_UPGRADE_COMPLETE_FLAG 0x41544B38
#define | IAP_SUCCESS 0
#define | IAP_FAILED 1

Enumerations

enum upgrade_status_type {
UPGRADE_READY = 0 , UPGRAGE_ONGOING , UPGRADE_SUCCESS , UPGRADE_FAILED ,
UPGRADE_LARGE , UPGRADE_UNKNOWN , UPGRADE_DONE , UPGRADE_JUMP
}

Functions

uint32_t | flash_fat16_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
write a logical block address More...
uint32_t | flash_fat16_read (uint32_t fat_lbk, uint8_t *data, uint32_t len)
read a logical block address More...
void | flash_fat16_init (void)
flash fat16 iap init More...
void | flash_fat16_loop_status (void)
loop status More...
uint32_t | flash_fat16_set_name (const uint8_t *file_name, uint8_t len)
set file name More...
uint8_t | flash_fat16_get_upgrade_flag (void)
get iap upgrade complete flag More...

Variables

flash_iap_type flash_iap

Detailed Description

Macro Definition Documentation

◆ FAT16_BYTE_PER_SIZE

#define FAT16_BYTE_PER_SIZE 2048

Definition at line 48 of file flash_fat16.h.

◆ FAT16_DIR_SIZE

#define FAT16_DIR_SIZE 47

Definition at line 50 of file flash_fat16.h.

◆ FAT16_FILENAME_SIZE

#define FAT16_FILENAME_SIZE 11

Definition at line 49 of file flash_fat16.h.

◆ FAT16_SECTOR_SIZE

#define FAT16_SECTOR_SIZE 62

Definition at line 46 of file flash_fat16.h.

◆ FAT16_TABLE_SIZE

#define FAT16_TABLE_SIZE 4

Definition at line 47 of file flash_fat16.h.

◆ FILE_SUFFIX1_LEN

#define FILE_SUFFIX1_LEN 3

Definition at line 68 of file flash_fat16.h.

◆ FILE_SUFFIX1_NAME

#define FILE_SUFFIX1_NAME "BIN"

Definition at line 70 of file flash_fat16.h.

◆ FILE_SUFFIX2_LEN

#define FILE_SUFFIX2_LEN 3

Definition at line 69 of file flash_fat16.h.

◆ FILE_SUFFIX2_NAME

#define FILE_SUFFIX2_NAME "bin"

Definition at line 71 of file flash_fat16.h.

◆ FLASH_APP_START_ADDR

#define FLASH_APP_START_ADDR 0x08005000

Definition at line 58 of file flash_fat16.h.

◆ FLASH_FAT16_1_ADDR

#define FLASH_FAT16_1_ADDR 0x3000

Definition at line 53 of file flash_fat16.h.

◆ FLASH_FAT16_2_ADDR

#define FLASH_FAT16_2_ADDR 0x3800

Definition at line 54 of file flash_fat16.h.

◆ FLASH_FAT16_BOOT_SECTOR_ADDR

#define FLASH_FAT16_BOOT_SECTOR_ADDR 0x00

Definition at line 52 of file flash_fat16.h.

◆ FLASH_FAT16_FILE_START_ADDR

#define FLASH_FAT16_FILE_START_ADDR 0x8800

Definition at line 56 of file flash_fat16.h.

◆ FLASH_FAT16_ROOT_ADDR

#define FLASH_FAT16_ROOT_ADDR 0x4000

Definition at line 55 of file flash_fat16.h.

◆ FLASH_SECTOR_1K_ALLGNED

#define FLASH_SECTOR_1K_ALLGNED 0x3FF

Definition at line 64 of file flash_fat16.h.

◆ FLASH_SECTOR_1K_SIZE

#define FLASH_SECTOR_1K_SIZE 0x400

Definition at line 60 of file flash_fat16.h.

◆ FLASH_SECTOR_2K_ALLGNED

#define FLASH_SECTOR_2K_ALLGNED 0x7FF

Definition at line 65 of file flash_fat16.h.

◆ FLASH_SECTOR_2K_SIZE

#define FLASH_SECTOR_2K_SIZE 0x800

Definition at line 61 of file flash_fat16.h.

◆ FLASH_SECTOR_4K_ALLGNED

#define FLASH_SECTOR_4K_ALLGNED 0xFFF

Definition at line 66 of file flash_fat16.h.

◆ FLASH_SECTOR_4K_SIZE

#define FLASH_SECTOR_4K_SIZE 0x1000

Definition at line 62 of file flash_fat16.h.

◆ IAP_FAILED

#define IAP_FAILED 1

Definition at line 76 of file flash_fat16.h.

◆ IAP_SUCCESS

#define IAP_SUCCESS 0

Definition at line 75 of file flash_fat16.h.

◆ IAP_UPGRADE_COMPLETE_FLAG

#define IAP_UPGRADE_COMPLETE_FLAG 0x41544B38

Definition at line 74 of file flash_fat16.h.

◆ INVAILD_OFFSET_ADDR

#define INVAILD_OFFSET_ADDR 0xFFFFFFFF

Definition at line 73 of file flash_fat16.h.

Enumeration Type Documentation

◆ upgrade_status_type

enum upgrade_status_type
Enumerator
UPGRADE_READY
UPGRAGE_ONGOING
UPGRADE_SUCCESS
UPGRADE_FAILED
UPGRADE_LARGE
UPGRADE_UNKNOWN
UPGRADE_DONE
UPGRADE_JUMP

Definition at line 78 of file flash_fat16.h.

Function Documentation

◆ flash_fat16_get_upgrade_flag()

uint8_t flash_fat16_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the iap flag

Definition at line 268 of file flash_fat16.c.

Referenced by main().

◆ flash_fat16_init()

void flash_fat16_init ( void )

flash fat16 iap init

Parameters
none
Return values
none

Definition at line 720 of file flash_fat16.c.

Referenced by main().

◆ flash_fat16_loop_status()

void flash_fat16_loop_status ( void )

loop status

Parameters
none
Return values
none

Definition at line 159 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by main().

◆ flash_fat16_read()

uint32_t flash_fat16_read | ( | uint32_t | fat_lbk,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

read a logical block address

Parameters
fat_lbk | logical block address to read
data | pointer to array to store data read
len | data length
Return values
read length

Definition at line 288 of file flash_fat16.c.

Referenced by msc_disk_read().

◆ flash_fat16_set_name()

uint32_t flash_fat16_set_name | ( | const uint8_t * | file_name,
 |  | uint8_t | len
 | ) |  |

set file name

Parameters
file_name | file name
len | filename length
Return values
filename length

Definition at line 357 of file flash_fat16.c.

Referenced by flash_fat16_loop_status().

◆ flash_fat16_write()

uint32_t flash_fat16_write | ( | uint32_t | fat_lbk,
 |  | uint8_t * | data,
 |  | uint32_t | len
 | ) |  |

write a logical block address

Parameters
fat_lbk | logical block address to read
data | pointer to array to store data read
len | data length
Return values
read length

Definition at line 329 of file flash_fat16.c.

Referenced by msc_disk_write().

Variable Documentation

◆ flash_iap

flash_iap_type flash_iap
extern

Definition at line 171 of file flash_fat16.c.

Referenced by flash_fat16_addr_offset(), flash_fat16_boot_dir_write(), flash_fat16_clear_upgrade_flag(), flash_fat16_get_upgrade_flag(), flash_fat16_init(), flash_fat16_loop_status(), flash_fat16_sector_write(), flash_fat16_set_upgrade_flag(), flash_write_data(), and main().


AT32F403 Firmwary Library: fat_dir_type Struct Reference

Data Fields
fat_dir_type Struct Reference
AT32F403_periph_examples » USB_device_virtual_msc_iap » USB_device_virtual_msc_iap_definition

#include <flash_fat16.h>

Data Fields

uint8_t | file_name [11]
uint8_t | attr
uint8_t | res
uint8_t | create_time_tenth
uint16_t | create_time
uint16_t | create_data
uint16_t | last_access_data
uint16_t | clus_high
uint16_t | write_time
uint16_t | write_data
uint16_t | clus_low
uint32_t | file_size

Detailed Description

Definition at line 90 of file flash_fat16.h.

Field Documentation

◆ attr

uint8_t fat_dir_type::attr

Definition at line 93 of file flash_fat16.h.

Referenced by flash_fat16_boot_dir_write().

◆ clus_high

uint16_t fat_dir_type::clus_high

Definition at line 99 of file flash_fat16.h.

◆ clus_low

uint16_t fat_dir_type::clus_low

Definition at line 102 of file flash_fat16.h.

◆ create_data

uint16_t fat_dir_type::create_data

Definition at line 97 of file flash_fat16.h.

◆ create_time

uint16_t fat_dir_type::create_time

Definition at line 96 of file flash_fat16.h.

◆ create_time_tenth

uint8_t fat_dir_type::create_time_tenth

Definition at line 95 of file flash_fat16.h.

◆ file_name

uint8_t fat_dir_type::file_name[11]

Definition at line 92 of file flash_fat16.h.

Referenced by flash_fat16_sector_write().

◆ file_size

uint32_t fat_dir_type::file_size

Definition at line 103 of file flash_fat16.h.

Referenced by flash_fat16_boot_dir_write(), and flash_fat16_sector_write().

◆ last_access_data

uint16_t fat_dir_type::last_access_data

Definition at line 98 of file flash_fat16.h.

◆ res

uint8_t fat_dir_type::res

Definition at line 94 of file flash_fat16.h.

◆ write_data

uint16_t fat_dir_type::write_data

Definition at line 101 of file flash_fat16.h.

Referenced by flash_fat16_boot_dir_write().

◆ write_time

uint16_t fat_dir_type::write_time

Definition at line 100 of file flash_fat16.h.

Referenced by flash_fat16_boot_dir_write().

The documentation for this struct was generated from the following file:
  • flash_fat16.h


AT32F403 Firmwary Library: flash_iap_type Struct Reference

Data Fields
flash_iap_type Struct Reference
AT32F403_periph_examples » USB_device_virtual_msc_iap » USB_device_virtual_msc_iap_definition

#include <flash_fat16.h>

Data Fields

uint32_t | flash_base_addr
uint32_t | flash_app_addr
uint32_t | flash_size
uint32_t | flash_app_size
uint32_t | sector_size
uint32_t | sector_mask
uint32_t | firmware_length
uint32_t | write_crc
uint32_t | read_crc
uint32_t | write_addr
uint32_t | file_write_nr
upgrade_status_type msc_up_status

Detailed Description

Definition at line 106 of file flash_fat16.h.

Field Documentation

◆ file_write_nr

uint32_t flash_iap_type::file_write_nr

Definition at line 119 of file flash_fat16.h.

Referenced by flash_fat16_boot_dir_write(), and flash_fat16_sector_write().

◆ firmware_length

uint32_t flash_iap_type::firmware_length

Definition at line 114 of file flash_fat16.h.

◆ flash_app_addr

uint32_t flash_iap_type::flash_app_addr

Definition at line 109 of file flash_fat16.h.

Referenced by flash_fat16_addr_offset(), flash_fat16_clear_upgrade_flag(), flash_fat16_get_upgrade_flag(), flash_fat16_init(), flash_fat16_set_upgrade_flag(), and main().

◆ flash_app_size

uint32_t flash_iap_type::flash_app_size

Definition at line 111 of file flash_fat16.h.

Referenced by flash_fat16_init(), and flash_fat16_sector_write().

◆ flash_base_addr

uint32_t flash_iap_type::flash_base_addr

Definition at line 108 of file flash_fat16.h.

Referenced by flash_fat16_addr_offset(), flash_fat16_init(), flash_fat16_sector_write(), and flash_write_data().

◆ flash_size

uint32_t flash_iap_type::flash_size

Definition at line 110 of file flash_fat16.h.

Referenced by flash_fat16_addr_offset(), flash_fat16_init(), and flash_write_data().

◆ msc_up_status

upgrade_status_type flash_iap_type::msc_up_status

Definition at line 120 of file flash_fat16.h.

Referenced by flash_fat16_boot_dir_write(), flash_fat16_loop_status(), and flash_fat16_sector_write().

◆ read_crc

uint32_t flash_iap_type::read_crc

Definition at line 116 of file flash_fat16.h.

◆ sector_mask

uint32_t flash_iap_type::sector_mask

Definition at line 113 of file flash_fat16.h.

Referenced by flash_fat16_init(), and flash_write_data().

◆ sector_size

uint32_t flash_iap_type::sector_size

Definition at line 112 of file flash_fat16.h.

Referenced by flash_fat16_clear_upgrade_flag(), flash_fat16_get_upgrade_flag(), flash_fat16_init(), flash_fat16_set_upgrade_flag(), and flash_write_data().

◆ write_addr

uint32_t flash_iap_type::write_addr

Definition at line 118 of file flash_fat16.h.

Referenced by flash_fat16_init(), flash_fat16_loop_status(), and flash_fat16_sector_write().

◆ write_crc

uint32_t flash_iap_type::write_crc

Definition at line 115 of file flash_fat16.h.

The documentation for this struct was generated from the following file:
  • flash_fat16.h


AT32F403 Firmwary Library: WDT_reset

Functions
WDT_reset
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< watchdog timer reset flag

< watchdog timer reset flag

Definition at line 42 of file project/at_start_f403/examples/wdt/wdt_reset/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.


AT32F403 Firmwary Library: WDT_standby

Functions
WDT_standby
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< watchdog timer reset flag

< watchdog timer reset flag

Definition at line 42 of file project/at_start_f403/examples/wdt/wdt_standby/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.


AT32F403 Firmwary Library: WWDT_reset

Functions
WWDT_reset
AT32F403_periph_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 77 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 112 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< window watchdog timer reset flag

< window watchdog timer reset flag

Definition at line 41 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 64 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 121 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 103 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 130 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 90 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.


AT32F403 Firmwary Library: XMC_lcd_8bit

Modules | Macros | Functions | Variables
XMC_lcd_8bit
AT32F403_periph_examples

Modules

XMC_lcd_8bit_address_of_data_and_command
XMC_lcd_8bit_reset_line
XMC_lcd_8bit_exported_functions

Macros

#define | WHITE 0xFFFF
#define | BLACK 0x0000
#define | BLUE 0x001F
#define | BRED 0xF81F
#define | GRED 0xFFE0
#define | GBLUE 0x07FF
#define | RED 0xF800
#define | MAGENTA 0xF81F
#define | GREEN 0x07E0
#define | CYAN 0x7FFF
#define | YELLOW 0xFFE0
#define | BROWN 0xBC40
#define | BRRED 0xFC07
#define | GRAY 0x8430

Functions

int | main (void)
main function. More...
void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint8_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint8_t data)
this function is write data to lcd. More...
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...
void | lcd_display_number (void)
this function is display number on the lcd. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | point_color

Detailed Description

Macro Definition Documentation

◆ BLACK

#define BLACK 0x0000

Definition at line 67 of file lcd_8bit/inc/xmc_lcd.h.

◆ BLUE

#define BLUE 0x001F

Definition at line 68 of file lcd_8bit/inc/xmc_lcd.h.

◆ BRED

#define BRED 0xF81F

Definition at line 69 of file lcd_8bit/inc/xmc_lcd.h.

◆ BROWN

#define BROWN 0xBC40

Definition at line 77 of file lcd_8bit/inc/xmc_lcd.h.

◆ BRRED

#define BRRED 0xFC07

Definition at line 78 of file lcd_8bit/inc/xmc_lcd.h.

◆ CYAN

#define CYAN 0x7FFF

Definition at line 75 of file lcd_8bit/inc/xmc_lcd.h.

◆ GBLUE

#define GBLUE 0x07FF

Definition at line 71 of file lcd_8bit/inc/xmc_lcd.h.

◆ GRAY

#define GRAY 0x8430

Definition at line 79 of file lcd_8bit/inc/xmc_lcd.h.

◆ GRED

#define GRED 0xFFE0

Definition at line 70 of file lcd_8bit/inc/xmc_lcd.h.

◆ GREEN

#define GREEN 0x07E0

Definition at line 74 of file lcd_8bit/inc/xmc_lcd.h.

◆ MAGENTA

#define MAGENTA 0xF81F

Definition at line 73 of file lcd_8bit/inc/xmc_lcd.h.

◆ RED

#define RED 0xF800

Definition at line 72 of file lcd_8bit/inc/xmc_lcd.h.

◆ WHITE

#define WHITE 0xFFFF

Definition at line 66 of file lcd_8bit/inc/xmc_lcd.h.

◆ YELLOW

#define YELLOW 0xFFE0

Definition at line 76 of file lcd_8bit/inc/xmc_lcd.h.

Function Documentation

◆ lcd_clear()

void lcd_clear ( uint16_t color )

this function is clear the lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 314 of file lcd_8bit/src/xmc_lcd.c.

◆ lcd_display_number()

void lcd_display_number ( void )

this function is display number on the lcd.

Parameters
none
Return values
none

Definition at line 331 of file lcd_8bit/src/xmc_lcd.c.

Referenced by main().

◆ lcd_draw_point()

void lcd_draw_point | ( | uint16_t | x,
 |  | uint16_t | y,
 |  | uint16_t | color
 | ) |  |

this function is draw point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 302 of file lcd_8bit/src/xmc_lcd.c.

◆ lcd_init()

void lcd_init ( void )

configures the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 152 of file lcd_8bit/src/xmc_lcd.c.

◆ lcd_set_block()

void lcd_set_block | ( | uint16_t | xstart,
 |  | uint16_t | ystart,
 |  | uint16_t | xend,
 |  | uint16_t | yend
 | ) |  |

this function is set row&column coordinates for lcd.

Parameters
xstart | : row coordinates starting vaule.
ystart | : column coordinates starting vaule.
xend | : row coordinates ending vaule.
yend | : column coordinates ending vaule.
Return values
none

Definition at line 267 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_clear(), lcd_display_number(), and lcd_draw_point().

◆ lcd_wr_command()

void lcd_wr_command ( uint8_t command )

this function is write command to lcd.

Parameters
command : the command to write.
Return values
none

Definition at line 244 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_init(), and lcd_set_block().

◆ lcd_wr_data()

void lcd_wr_data ( uint8_t data )

this function is write data to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 254 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_display_number(), lcd_init(), lcd_set_block(), and lcd_write_one_point().

◆ lcd_write_one_point()

void lcd_write_one_point ( uint16_t color )

this function is write one point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 291 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_clear(), and lcd_draw_point().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 45 of file project/at_start_f403/examples/xmc/lcd_8bit/src/main.c.

◆ xmc_init()

void xmc_init ( void )

configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 45 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_init().

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/xmc/lcd_8bit/src/main.c.

Referenced by main().

◆ point_color

uint16_t point_color

Definition at line 38 of file project/at_start_f403/examples/xmc/lcd_8bit/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: XMC_lcd_8bit_address_of_data_and_command

Macros
XMC_lcd_8bit_address_of_data_and_command
AT32F403_periph_examples » XMC_lcd_8bit

Macros

#define | XMC_LCD_COMMAND 0x60000000
#define | XMC_LCD_DATA 0x60000001

Detailed Description

Macro Definition Documentation

◆ XMC_LCD_COMMAND

#define XMC_LCD_COMMAND 0x60000000

Definition at line 47 of file lcd_8bit/inc/xmc_lcd.h.

◆ XMC_LCD_DATA

#define XMC_LCD_DATA 0x60000001

Definition at line 48 of file lcd_8bit/inc/xmc_lcd.h.


AT32F403 Firmwary Library: XMC_lcd_8bit_reset_line

Macros
XMC_lcd_8bit_reset_line
AT32F403_periph_examples » XMC_lcd_8bit

Macros

#define | LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)
#define | LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)

Detailed Description

Macro Definition Documentation

◆ LCD_RESET_HIGH

#define LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)

Definition at line 59 of file lcd_8bit/inc/xmc_lcd.h.

◆ LCD_RESET_LOW

#define LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)

Definition at line 60 of file lcd_8bit/inc/xmc_lcd.h.


AT32F403 Firmwary Library: XMC_lcd_8bit_exported_functions

Functions
XMC_lcd_8bit_exported_functions
AT32F403_periph_examples » XMC_lcd_8bit

Functions

void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint8_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint8_t data)
this function is write data to lcd. More...
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...
void | lcd_display_number (void)
this function is display number on the lcd. More...

Detailed Description

Function Documentation

◆ lcd_clear()

void lcd_clear ( uint16_t color )

this function is clear the lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 314 of file lcd_8bit/src/xmc_lcd.c.

Referenced by main().

◆ lcd_display_number()

void lcd_display_number ( void )

this function is display number on the lcd.

Parameters
none
Return values
none

Definition at line 331 of file lcd_8bit/src/xmc_lcd.c.

Referenced by main().

◆ lcd_draw_point()

void lcd_draw_point | ( | uint16_t | x,
 |  | uint16_t | y,
 |  | uint16_t | color
 | ) |  |

this function is draw point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 302 of file lcd_8bit/src/xmc_lcd.c.

Referenced by touch_scan().

◆ lcd_init()

void lcd_init ( void )

configures the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 152 of file lcd_8bit/src/xmc_lcd.c.

Referenced by main().

◆ lcd_set_block()

void lcd_set_block | ( | uint16_t | xstart,
 |  | uint16_t | ystart,
 |  | uint16_t | xend,
 |  | uint16_t | yend
 | ) |  |

this function is set row&column coordinates for lcd.

Parameters
xstart | : row coordinates starting vaule.
ystart | : column coordinates starting vaule.
xend | : row coordinates ending vaule.
yend | : column coordinates ending vaule.
Return values
none

Definition at line 267 of file lcd_8bit/src/xmc_lcd.c.

◆ lcd_wr_command()

void lcd_wr_command ( uint8_t command )

this function is write command to lcd.

Parameters
command : the command to write.
Return values
none

Definition at line 244 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_init(), and lcd_set_block().

◆ lcd_wr_data()

void lcd_wr_data ( uint8_t data )

this function is write data to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 254 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_display_number(), lcd_init(), lcd_set_block(), and lcd_write_one_point().

◆ lcd_write_one_point()

void lcd_write_one_point ( uint16_t color )

this function is write one point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 291 of file lcd_8bit/src/xmc_lcd.c.

◆ xmc_init()

void xmc_init ( void )

configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 45 of file lcd_8bit/src/xmc_lcd.c.


AT32F403 Firmwary Library: XMC_lcd_touch_16bit

Modules | Macros | Functions | Variables
XMC_lcd_touch_16bit
AT32F403_periph_examples

Modules

TOUCH_device_type
TOUCH_exported_functions
XMC_lcd_touch_16bit_device_type
XMC_lcd_touch_16bit_address_of_data_and_command
XMC_lcd_touch_16bit_reset_line
XMC_lcd_touch_16bit_exported_functions

Macros

#define | TCLK_HIGH gpio_bits_set(GPIOB,GPIO_PINS_3)
#define | TCLK_LOW gpio_bits_reset(GPIOB,GPIO_PINS_3)
#define | TDOUT gpio_input_data_bit_read(GPIOB,GPIO_PINS_4)
#define | TDIN_HIGH gpio_bits_set(GPIOB,GPIO_PINS_5)
#define | TDIN_LOW gpio_bits_reset(GPIOB,GPIO_PINS_5)
#define | PEN_HIGH gpio_input_data_bit_read(GPIOB,GPIO_PINS_11)
#define | TCS_HIGH gpio_bits_set(GPIOB,GPIO_PINS_6)
#define | TCS_LOW gpio_bits_reset(GPIOB,GPIO_PINS_6)
#define | LCD_BL_HIGH gpio_bits_set(GPIOB,GPIO_PINS_8)
#define | LCD_BL_LOW gpio_bits_reset(GPIOB,GPIO_PINS_8)
#define | WHITE 0xFFFF
#define | BLACK 0x0000
#define | BLUE 0x001F
#define | BRED 0xF81F
#define | GRED 0xFFE0
#define | GBLUE 0x07FF
#define | RED 0xF800
#define | MAGENTA 0xF81F
#define | GREEN 0x07E0
#define | CYAN 0x7FFF
#define | YELLOW 0xFFE0
#define | BROWN 0xBC40
#define | BRRED 0xFC07
#define | GRAY 0x8430
#define | READ_TIMES 5
this function is processing data that read from touch. More...
#define | LOST_VAL 1

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...
void | touch_pin_init (void)
this function is init touch pin. More...
void | touch_read_xy (uint16_t *x, uint16_t *y)
this function is read data from touch. More...
uint16_t | touch_read_x_or_y (uint8_t xy)
uint16_t | touch_read_ad (uint8_t xy)
this function is read data from touch. More...
void | touch_write_1byte (uint8_t cmd)
this function is write command to touch. More...
uint8_t | touch_read_1byte (void)
this function is read data from touch. More...
void | touch_scan (void)
this function is scanning the screen. More...
error_status | touch_adjust (void)
this function is adjust the screen. More...
void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint16_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint16_t data)
this function is write data to lcd. More...
uint16_t | lcd_rd_data (void)
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...

Variables

touch_dev_type touch_dev_struct
touch_dev_type * touch_struct
static uint16_t | LCD_ID
lcd_dev_type lcd_dev_struct
lcd_dev_type * lcd_struct
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | point_color
touch_dev_type touch_dev_struct
uint8_t | cmd_rdx = 0xd0
uint8_t | cmd_rdy = 0x90
touch_dev_type * touch_struct
lcd_dev_type lcd_dev_struct
lcd_dev_type * lcd_struct

Detailed Description

Macro Definition Documentation

◆ BLACK

#define BLACK 0x0000

Definition at line 87 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ BLUE

#define BLUE 0x001F

Definition at line 88 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ BRED

#define BRED 0xF81F

Definition at line 89 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ BROWN

#define BROWN 0xBC40

Definition at line 97 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ BRRED

#define BRRED 0xFC07

Definition at line 98 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ CYAN

#define CYAN 0x7FFF

Definition at line 95 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ GBLUE

#define GBLUE 0x07FF

Definition at line 91 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ GRAY

#define GRAY 0x8430

Definition at line 99 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ GRED

#define GRED 0xFFE0

Definition at line 90 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ GREEN

#define GREEN 0x07E0

Definition at line 94 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ LCD_BL_HIGH

#define LCD_BL_HIGH gpio_bits_set(GPIOB,GPIO_PINS_8)

Definition at line 83 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ LCD_BL_LOW

#define LCD_BL_LOW gpio_bits_reset(GPIOB,GPIO_PINS_8)

Definition at line 84 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ LOST_VAL

#define LOST_VAL 1

Definition at line 135 of file touch.c.

◆ MAGENTA

#define MAGENTA 0xF81F

Definition at line 93 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ PEN_HIGH

#define PEN_HIGH gpio_input_data_bit_read(GPIOB,GPIO_PINS_11)

Definition at line 69 of file touch.h.

◆ READ_TIMES

#define READ_TIMES 5

this function is processing data that read from touch.

Parameters
xy data.
Return values
processed data

Definition at line 134 of file touch.c.

◆ RED

#define RED 0xF800

Definition at line 92 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ TCLK_HIGH

#define TCLK_HIGH gpio_bits_set(GPIOB,GPIO_PINS_3)

Definition at line 61 of file touch.h.

◆ TCLK_LOW

#define TCLK_LOW gpio_bits_reset(GPIOB,GPIO_PINS_3)

Definition at line 62 of file touch.h.

◆ TCS_HIGH

#define TCS_HIGH gpio_bits_set(GPIOB,GPIO_PINS_6)

Definition at line 71 of file touch.h.

◆ TCS_LOW

#define TCS_LOW gpio_bits_reset(GPIOB,GPIO_PINS_6)

Definition at line 72 of file touch.h.

◆ TDIN_HIGH

#define TDIN_HIGH gpio_bits_set(GPIOB,GPIO_PINS_5)

Definition at line 66 of file touch.h.

◆ TDIN_LOW

#define TDIN_LOW gpio_bits_reset(GPIOB,GPIO_PINS_5)

Definition at line 67 of file touch.h.

◆ TDOUT

#define TDOUT gpio_input_data_bit_read(GPIOB,GPIO_PINS_4)

Definition at line 64 of file touch.h.

◆ WHITE

#define WHITE 0xFFFF

Definition at line 86 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ YELLOW

#define YELLOW 0xFFE0

Definition at line 96 of file lcd_touch_16bit/inc/xmc_lcd.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ lcd_clear()

void lcd_clear ( uint16_t color )

this function is clear the lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 392 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by main().

◆ lcd_draw_point()

void lcd_draw_point | ( | uint16_t | x,
 |  | uint16_t | y,
 |  | uint16_t | color
 | ) |  |

this function is draw point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 380 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by touch_scan().

◆ lcd_init()

void lcd_init ( void )

configures the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 178 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by main().

◆ lcd_rd_data()

uint16_t lcd_rd_data ( void )

Definition at line 328 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_init().

◆ lcd_set_block()

void lcd_set_block | ( | uint16_t | xstart,
 |  | uint16_t | ystart,
 |  | uint16_t | xend,
 |  | uint16_t | yend
 | ) |  |

this function is set row&column coordinates for lcd.

Parameters
xstart | : row coordinates starting vaule.
ystart | : column coordinates starting vaule.
xend | : row coordinates ending vaule.
yend | : column coordinates ending vaule.
Return values
none

Definition at line 345 of file lcd_touch_16bit/src/xmc_lcd.c.

◆ lcd_wr_command()

void lcd_wr_command ( uint16_t command )

this function is write command to lcd.

Parameters
command : the command to write.
Return values
none

Definition at line 313 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_init(), and lcd_set_block().

◆ lcd_wr_data()

void lcd_wr_data ( uint16_t data )

this function is write data to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 323 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_init(), lcd_set_block(), and lcd_write_one_point().

◆ lcd_write_one_point()

void lcd_write_one_point ( uint16_t color )

this function is write one point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 370 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_clear(), and lcd_draw_point().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 47 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ touch_adjust()

error_status touch_adjust ( void )

this function is adjust the screen.

Parameters
none
Return values
state

Definition at line 261 of file touch.c.

◆ touch_pin_init()

void touch_pin_init ( void )

this function is init touch pin.

Parameters
none
Return values
none

Definition at line 56 of file touch.c.

◆ touch_read_1byte()

uint8_t touch_read_1byte ( void )

this function is read data from touch.

Parameters
none
Return values
data

Definition at line 220 of file touch.c.

Referenced by touch_read_ad().

◆ touch_read_ad()

uint16_t touch_read_ad ( uint8_t xy )

this function is read data from touch.

Parameters
xy : command.
Return values
data

Definition at line 179 of file touch.c.

Referenced by touch_read_x_or_y().

◆ touch_read_x_or_y()

uint16_t touch_read_x_or_y ( uint8_t xy )

Definition at line 136 of file touch.c.

Referenced by touch_read_xy().

◆ touch_read_xy()

void touch_read_xy | ( | uint16_t * | x,
 |  | uint16_t * | y
 | ) |  |

this function is read data from touch.

Parameters
x/y : coordinate vaule.
Return values
none

Definition at line 118 of file touch.c.

◆ touch_scan()

void touch_scan ( void )

this function is scanning the screen.

Parameters
none
Return values
void

Definition at line 238 of file touch.c.

◆ touch_write_1byte()

void touch_write_1byte ( uint8_t cmd )

this function is write command to touch.

Parameters
cmd : command.
Return values
none

Definition at line 206 of file touch.c.

Referenced by touch_read_ad().

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.

◆ xmc_init()

void xmc_init ( void )

configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 54 of file lcd_touch_16bit/src/xmc_lcd.c.

Variable Documentation

◆ cmd_rdx

uint8_t cmd_rdx = 0xd0

Definition at line 46 of file touch.c.

Referenced by touch_read_xy().

◆ cmd_rdy

uint8_t cmd_rdy = 0x90

Definition at line 47 of file touch.c.

Referenced by touch_read_xy().

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 39 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c.

Referenced by main().

◆ lcd_dev_struct [1/2]

lcd_dev_type lcd_dev_struct
extern

Definition at line 35 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by main().

◆ lcd_dev_struct [2/2]

lcd_dev_type lcd_dev_struct
Initial value:
=
{
0,
xmc_init,
lcd_init,
lcd_set_block,
lcd_draw_point,
lcd_clear,
}
lcd_init
void lcd_init(void)
configures the lcd. this function must be called before any write/read operation on the lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:178
lcd_set_block
void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:345
lcd_draw_point
void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:380
lcd_clear
void lcd_clear(uint16_t color)
this function is clear the lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:392
xmc_init
void xmc_init(void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write...
Definition: lcd_touch_16bit/src/xmc_lcd.c:54

Definition at line 35 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by main().

◆ LCD_ID

uint16_t LCD_ID
static

Definition at line 85 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ lcd_struct [1/2]

lcd_dev_type* lcd_struct
extern

Definition at line 45 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_clear(), lcd_draw_point(), lcd_init(), and main().

◆ lcd_struct [2/2]

lcd_dev_type* lcd_struct

Definition at line 45 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_clear(), lcd_draw_point(), lcd_init(), and main().

◆ point_color

uint16_t point_color

Definition at line 40 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c.

Referenced by main().

◆ touch_dev_struct [1/2]

touch_dev_type touch_dev_struct
extern

Definition at line 36 of file touch.c.

Referenced by main(), and touch_scan().

◆ touch_dev_struct [2/2]

touch_dev_type touch_dev_struct
Initial value:
=
{
touch_pin_init,
touch_read_xy,
touch_scan,
touch_adjust,
0,
0,
}
touch_scan
void touch_scan(void)
this function is scanning the screen.
Definition: touch.c:238
touch_read_xy
void touch_read_xy(uint16_t *x, uint16_t *y)
this function is read data from touch.
Definition: touch.c:118
touch_adjust
error_status touch_adjust(void)
this function is adjust the screen.
Definition: touch.c:261
touch_pin_init
void touch_pin_init(void)
this function is init touch pin.
Definition: touch.c:56

Definition at line 36 of file touch.c.

Referenced by main(), and touch_scan().

◆ touch_struct [1/2]

touch_dev_type* touch_struct
extern

Definition at line 49 of file touch.c.

Referenced by main().

◆ touch_struct [2/2]

touch_dev_type* touch_struct

Definition at line 49 of file touch.c.

Referenced by main().


AT32F403 Firmwary Library: TOUCH_device_type

Data Structures
TOUCH_device_type
AT32F403_periph_examples » XMC_lcd_touch_16bit

Data Structures

struct touch_dev_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: touch_dev_type Struct Reference

Data Fields
touch_dev_type Struct Reference
AT32F403_periph_examples » XMC_lcd_touch_16bit » TOUCH_device_type

#include <touch.h>

Data Fields

void(* | init )(void)
void(* | touch_read_xy )(uint16_t *x, uint16_t *y)
void(* | touch_scan )(void)
error_status(* | touch_adjust )(void)
uint16_t | x_p [6]
uint16_t | y_p [6]

Detailed Description

Definition at line 47 of file touch.h.

Field Documentation

◆ init

void(* touch_dev_type::init) (void)

pin init

Definition at line 49 of file touch.h.

Referenced by main().

◆ touch_adjust

error_status(* touch_dev_type::touch_adjust) (void)

touch adjust func

Definition at line 52 of file touch.h.

◆ touch_read_xy

void(* touch_dev_type::touch_read_xy) (uint16_t *x, uint16_t *y)

read x/y coordinate

Definition at line 50 of file touch.h.

Referenced by touch_scan().

◆ touch_scan

void(* touch_dev_type::touch_scan) (void)

touch scan func

Definition at line 51 of file touch.h.

Referenced by main().

◆ x_p

uint16_t touch_dev_type::x_p[6]

save x coordinate

Definition at line 53 of file touch.h.

Referenced by touch_scan().

◆ y_p

uint16_t touch_dev_type::y_p[6]

save y coordinate

Definition at line 54 of file touch.h.

Referenced by touch_scan().

The documentation for this struct was generated from the following file:
  • touch.h


AT32F403 Firmwary Library: TOUCH_exported_functions

Functions
TOUCH_exported_functions
AT32F403_periph_examples » XMC_lcd_touch_16bit

Functions

void | touch_pin_init (void)
this function is init touch pin. More...
void | touch_read_xy (uint16_t *x, uint16_t *y)
this function is read data from touch. More...
void | touch_scan (void)
this function is scanning the screen. More...
uint16_t | touch_read_x_or_y (uint8_t xy)
uint16_t | touch_read_ad (uint8_t xy)
this function is read data from touch. More...
void | touch_write_1byte (uint8_t cmd)
this function is write command to touch. More...
uint8_t | touch_read_1byte (void)
this function is read data from touch. More...
error_status | touch_adjust (void)
this function is adjust the screen. More...

Detailed Description

Function Documentation

◆ touch_adjust()

error_status touch_adjust ( void )

this function is adjust the screen.

Parameters
none
Return values
state

Definition at line 261 of file touch.c.

◆ touch_pin_init()

void touch_pin_init ( void )

this function is init touch pin.

Parameters
none
Return values
none

Definition at line 56 of file touch.c.

◆ touch_read_1byte()

uint8_t touch_read_1byte ( void )

this function is read data from touch.

Parameters
none
Return values
data

Definition at line 220 of file touch.c.

Referenced by touch_read_ad().

◆ touch_read_ad()

uint16_t touch_read_ad ( uint8_t xy )

this function is read data from touch.

Parameters
xy : command.
Return values
data

Definition at line 179 of file touch.c.

Referenced by touch_read_x_or_y().

◆ touch_read_x_or_y()

uint16_t touch_read_x_or_y ( uint8_t xy )

Definition at line 136 of file touch.c.

Referenced by touch_read_xy().

◆ touch_read_xy()

void touch_read_xy | ( | uint16_t * | x,
 |  | uint16_t * | y
 | ) |  |

this function is read data from touch.

Parameters
x/y : coordinate vaule.
Return values
none

Definition at line 118 of file touch.c.

◆ touch_scan()

void touch_scan ( void )

this function is scanning the screen.

Parameters
none
Return values
void

Definition at line 238 of file touch.c.

◆ touch_write_1byte()

void touch_write_1byte ( uint8_t cmd )

this function is write command to touch.

Parameters
cmd : command.
Return values
none

Definition at line 206 of file touch.c.

Referenced by touch_read_ad().


AT32F403 Firmwary Library: XMC_lcd_touch_16bit_device_type

Data Structures
XMC_lcd_touch_16bit_device_type
AT32F403_periph_examples » XMC_lcd_touch_16bit

Data Structures

struct lcd_dev_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: lcd_dev_type Struct Reference

Data Fields
lcd_dev_type Struct Reference
AT32F403_periph_examples » XMC_lcd_touch_16bit » XMC_lcd_touch_16bit_device_type

#include <xmc_lcd.h>

Data Fields

uint16_t | lcd_id
void(* | xmc_init )(void)
void(* | lcd_init )(void)
void(* | lcd_set_block )(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
void(* | draw_point )(uint16_t x, uint16_t y, uint16_t color)
void(* | lcd_clear )(uint16_t color)

Detailed Description

Definition at line 45 of file lcd_touch_16bit/inc/xmc_lcd.h.

Field Documentation

◆ draw_point

void(* lcd_dev_type::draw_point) (uint16_t x, uint16_t y, uint16_t color)

lcd function to drawpoint

Definition at line 51 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ lcd_clear

void(* lcd_dev_type::lcd_clear) (uint16_t color)

lcd function to clear

Definition at line 52 of file lcd_touch_16bit/inc/xmc_lcd.h.

Referenced by main().

◆ lcd_id

uint16_t lcd_dev_type::lcd_id

lcd device id define

Definition at line 47 of file lcd_touch_16bit/inc/xmc_lcd.h.

Referenced by lcd_init().

◆ lcd_init

void(* lcd_dev_type::lcd_init) (void)

function for configures the lcd

Definition at line 49 of file lcd_touch_16bit/inc/xmc_lcd.h.

Referenced by main().

◆ lcd_set_block

void(* lcd_dev_type::lcd_set_block) (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)

lcd function to set block or set window

Definition at line 50 of file lcd_touch_16bit/inc/xmc_lcd.h.

Referenced by lcd_clear(), and lcd_draw_point().

◆ xmc_init

void(* lcd_dev_type::xmc_init) (void)

function for xmc and gpios init

Definition at line 48 of file lcd_touch_16bit/inc/xmc_lcd.h.

Referenced by lcd_init().

The documentation for this struct was generated from the following file:
  • lcd_touch_16bit/inc/xmc_lcd.h


AT32F403 Firmwary Library: XMC_lcd_touch_16bit_address_of_data_and_command

Macros
XMC_lcd_touch_16bit_address_of_data_and_command
AT32F403_periph_examples » XMC_lcd_touch_16bit

Macros

#define | XMC_LCD_COMMAND 0x60000000
#define | XMC_LCD_DATA 0x60000002

Detailed Description

Macro Definition Documentation

◆ XMC_LCD_COMMAND

#define XMC_LCD_COMMAND 0x60000000

Definition at line 64 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ XMC_LCD_DATA

#define XMC_LCD_DATA 0x60000002

Definition at line 65 of file lcd_touch_16bit/inc/xmc_lcd.h.


AT32F403 Firmwary Library: XMC_lcd_touch_16bit_reset_line

Macros
XMC_lcd_touch_16bit_reset_line
AT32F403_periph_examples » XMC_lcd_touch_16bit

Macros

#define | LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)
#define | LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)

Detailed Description

Macro Definition Documentation

◆ LCD_RESET_HIGH

#define LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)

Definition at line 76 of file lcd_touch_16bit/inc/xmc_lcd.h.

◆ LCD_RESET_LOW

#define LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)

Definition at line 77 of file lcd_touch_16bit/inc/xmc_lcd.h.


AT32F403 Firmwary Library: XMC_lcd_touch_16bit_exported_functions

Functions
XMC_lcd_touch_16bit_exported_functions
AT32F403_periph_examples » XMC_lcd_touch_16bit

Functions

void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint16_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint16_t data)
this function is write data to lcd. More...
uint16_t | lcd_rd_data (void)
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...

Detailed Description

Function Documentation

◆ lcd_clear()

void lcd_clear ( uint16_t color )

this function is clear the lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 314 of file lcd_8bit/src/xmc_lcd.c.

◆ lcd_draw_point()

void lcd_draw_point | ( | uint16_t | x,
 |  | uint16_t | y,
 |  | uint16_t | color
 | ) |  |

this function is draw point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 302 of file lcd_8bit/src/xmc_lcd.c.

◆ lcd_init()

void lcd_init ( void )

configures the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 152 of file lcd_8bit/src/xmc_lcd.c.

◆ lcd_rd_data()

uint16_t lcd_rd_data ( void )

Definition at line 328 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_init().

◆ lcd_set_block()

void lcd_set_block | ( | uint16_t | xstart,
 |  | uint16_t | ystart,
 |  | uint16_t | xend,
 |  | uint16_t | yend
 | ) |  |

this function is set row&column coordinates for lcd.

Parameters
xstart | : row coordinates starting vaule.
ystart | : column coordinates starting vaule.
xend | : row coordinates ending vaule.
yend | : column coordinates ending vaule.
Return values
none

Definition at line 267 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_clear(), lcd_display_number(), and lcd_draw_point().

◆ lcd_wr_command()

void lcd_wr_command ( uint16_t command )

this function is write command to lcd.

Parameters
command : the command to write.
Return values
none

Definition at line 313 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_init(), and lcd_set_block().

◆ lcd_wr_data()

void lcd_wr_data ( uint16_t data )

this function is write data to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 323 of file lcd_touch_16bit/src/xmc_lcd.c.

Referenced by lcd_init(), lcd_set_block(), and lcd_write_one_point().

◆ lcd_write_one_point()

void lcd_write_one_point ( uint16_t color )

this function is write one point to lcd.

Parameters
data : the data to write.
Return values
none

Definition at line 291 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_clear(), and lcd_draw_point().

◆ xmc_init()

void xmc_init ( void )

configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd.

Parameters
none
Return values
none

Definition at line 45 of file lcd_8bit/src/xmc_lcd.c.

Referenced by lcd_init().


AT32F403 Firmwary Library: XMC_nand_ecc

Modules | Macros | Functions | Variables
XMC_nand_ecc
AT32F403_periph_examples

Modules

NAND_id_define
NAND_address_define
NAND_area_define
XMC_nand_memory_command
XMC_nand_status
XMC_nand_parameters
XMC_nand_address_computation
XMC_nand_ecc_functions

Macros

#define | ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)
#define | COL_ADDRESS address_struct.byte
#define | BUFFER_SIZE NAND_PAGE_SIZE
#define | XMC_Bank_NAND XMC_Bank2_NAND
#define | Bank_NAND_ADDR Bank2_NAND_ADDR
#define | Bank2_NAND_ADDR ((uint32_t)0x70000000)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | nand_ecc_correction (uint8_t *pbuffer, uint32_t tx_ecc_value,uint32_t rx_ecc_value)
ecc correct 1 bit error More...
int | main (void)
main function. More...
void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Variables

uint32_t | ecc_value_write
uint32_t | ecc_value_read
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
nand_id_type nand_id_struct
nand_address_type write_read_addr_struct
uint8_t | tx_buffer [BUFFER_SIZE]
uint8_t | rx_buffer [BUFFER_SIZE]
uint32_t | page_number = 1
uint32_t | status = 0
uint32_t | j = 0
uint32_t | ecc_value_write = 0
uint32_t | ecc_value_read = 0
uint32_t | ecc_value_write_last = 0

Detailed Description

Macro Definition Documentation

◆ Bank2_NAND_ADDR

#define Bank2_NAND_ADDR ((uint32_t)0x70000000)

Definition at line 83 of file xmc_ecc.h.

◆ Bank_NAND_ADDR

#define Bank_NAND_ADDR Bank2_NAND_ADDR

Definition at line 82 of file xmc_ecc.h.

◆ BUFFER_SIZE

#define BUFFER_SIZE NAND_PAGE_SIZE

Definition at line 79 of file xmc_ecc.h.

◆ COL_ADDRESS

#define COL_ADDRESS address_struct.byte

Definition at line 77 of file xmc_ecc.h.

◆ ROW_ADDRESS

#define ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)

Definition at line 76 of file xmc_ecc.h.

◆ XMC_Bank_NAND

#define XMC_Bank_NAND XMC_Bank2_NAND

Definition at line 81 of file xmc_ecc.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 117 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ nand_address_increment()

uint32_t nand_address_increment ( nand_address_type * address_struct )

increment the nand memory address.

Parameters
address address to be incremented.
Return values
the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 491 of file xmc_ecc.c.

Referenced by nand_read_small_page(), nand_read_spare_area(), nand_write_small_page(), and nand_write_spare_area().

◆ nand_ecc_correction()

void nand_ecc_correction | ( | uint8_t * | pbuffer,
 |  | uint32_t | tx_ecc_value,
 |  | uint32_t | rx_ecc_value
 | ) |  |

ecc correct 1 bit error

Parameters
pbuffer | pointer on the buffer to correct
tx_ecc_value | ecc value for transmiting to nand flash
rx_ecc_value | ecc value for receiving from nand flash

Definition at line 70 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main().

◆ nand_erase_block()

uint32_t nand_erase_block ( nand_address_type address_struct )

this routine erase complete block from nand flash

Parameters
address any address into block to be erased
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 392 of file xmc_ecc.c.

◆ nand_get_status()

uint32_t nand_get_status ( void )

get the nand operation status.

Parameters
none
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 430 of file xmc_ecc.c.

Referenced by nand_erase_block(), nand_read_small_page(), nand_read_spare_area(), nand_write_small_page(), and nand_write_spare_area().

◆ nand_init()

void nand_init ( void )

configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand.

Parameters
none
Return values
none

Definition at line 42 of file xmc_ecc.c.

◆ nand_read_id()

void nand_read_id ( nand_id_type * nand_id_struct )

reads nand memory's id.

Parameters
nand_id pointer to a nand_id_type structure which will hold the manufacturer and device id.
Return values
none

Definition at line 109 of file xmc_ecc.c.

◆ nand_read_small_page()

uint32_t nand_read_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_read
 | ) |  |

this routine is for sequential read from one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_page_to_read | number of page to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 217 of file xmc_ecc.c.

◆ nand_read_spare_area()

uint32_t nand_read_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_read
 | ) |  |

this routine read the spare area information from the specified pages addresses.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_spare_area_to_read | number of spare area to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 342 of file xmc_ecc.c.

◆ nand_read_status()

uint32_t nand_read_status ( void )

reads the nand memory status using the read status command.

Parameters
none
Return values
the status of the nand memory. this parameter can be:
  • NAND_BUSY: when memory is busy
  • NAND_READY: when memory is ready for the next operation
  • NAND_ERROR: when the previous operation gererates error

Definition at line 460 of file xmc_ecc.c.

Referenced by nand_get_status().

◆ nand_reset()

uint32_t nand_reset ( void )

this routine reset the nand flash.

Parameters
none
Return values
NAND_READY

Definition at line 415 of file xmc_ecc.c.

◆ nand_write_small_page()

uint32_t nand_write_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_write
 | ) |  |

this routine is for writing one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_page_to_write | number of page to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 150 of file xmc_ecc.c.

◆ nand_write_spare_area()

uint32_t nand_write_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_write
 | ) |  |

this routine write the spare area information for the specified pages addresses.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_spare_area_to_write | number of spare area to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 283 of file xmc_ecc.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main().

◆ ecc_value_read [1/2]

uint32_t ecc_value_read
extern

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main(), and nand_read_small_page().

◆ ecc_value_read [2/2]

uint32_t ecc_value_read = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main(), and nand_read_small_page().

◆ ecc_value_write [1/2]

uint32_t ecc_value_write
extern

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main(), and nand_write_small_page().

◆ ecc_value_write [2/2]

uint32_t ecc_value_write = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main(), and nand_write_small_page().

◆ ecc_value_write_last

uint32_t ecc_value_write_last = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main().

◆ j

uint32_t j = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by touch_read_x_or_y().

◆ nand_id_struct

nand_id_type nand_id_struct

Definition at line 38 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main(), and nand_read_id().

◆ page_number

uint32_t page_number = 1

Definition at line 41 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main().

◆ rx_buffer

uint8_t rx_buffer[BUFFER_SIZE]

Definition at line 40 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main().

◆ status

uint32_t status = 0

Definition at line 41 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by adc_flag_get(), adc_interrupt_flag_get(), audio_hid_class_send_report(), bot_scsi_cmd_process(), bot_scsi_inquiry(), bot_scsi_send_csw(), bot_scsi_test_unit(), can_doze_mode_enter(), can_doze_mode_exit(), can_operating_mode_set(), cdc_class_setup_handler(), class_audio_setup_handler(), class_clear_handler(), class_ept0_rx_handler(), class_ept0_tx_handler(), class_event_handler(), class_hid_setup_handler(), class_in_handler(), class_init_handler(), class_out_handler(), class_setup_handler(), class_sof_handler(), command_error(), command_rsp2_error(), command_rsp6_error(), command_rsp7_error(), crm_flag_get(), crm_hext_stable_wait(), crm_interrupt_flag_get(), custom_hid_class_send_report(), dma_flag_get(), exint_flag_get(), exint_interrupt_flag_get(), flash_bank1_erase(), flash_bank1_operation_wait_for(), flash_bank2_erase(), flash_bank2_operation_wait_for(), flash_byte_program(), flash_epp_set(), flash_fap_enable(), flash_fat16_loop_status(), flash_fat16_sector_write(), flash_flag_get(), flash_halfword_program(), flash_internal_all_erase(), flash_operation_wait_for(), flash_sector_erase(), flash_spim_all_erase(), flash_spim_mass_program(), flash_spim_operation_wait_for(), flash_ssb_set(), flash_user_system_data_erase(), flash_user_system_data_program(), flash_word_program(), flash_write(), flash_write_nocheck(), gpio_input_data_bit_read(), gpio_output_data_bit_read(), iap_address(), keyboard_class_setup_handler(), main(), mmc_stream_test(), mmc_stream_write(), mmc_switch(), msc_class_setup_handler(), nand_address_increment(), nand_get_status(), nand_read_small_page(), nand_read_spare_area(), nand_read_status(), nand_write_small_page(), nand_write_spare_area(), nor_getstatus(), nor_writebuffer(), pwc_flag_get(), rtc_flag_get(), rtc_interrupt_flag_get(), scr_find(), sd_block_read(), sd_block_write(), sd_blocks_erase(), sd_bus_wide_enable(), sd_card_info_get(), sd_card_init(), sd_device_mode_set(), sd_init(), sd_mult_blocks_read(), sd_mult_blocks_write(), sd_multiple_blocks_test(), sd_power_on(), sd_single_block_test(), sd_status_send(), sd_switch(), sd_wide_bus_operation_config(), sdio_command_data_send(), sdio_flag_get(), sdio_interrupt_flag_get(), speed_change(), spi_i2s_flag_get(), spi_i2s_interrupt_flag_get(), spim_operate(), TaskFileRegIsValid(), tmr_flag_get(), tmr_interrupt_flag_get(), usb_flag_get(), usb_iap_class_send_report(), usb_interrupt_flag_get(), usb_keyboard_class_send_report(), usb_mouse_class_send_report(), usb_printer_send_data(), usb_vcp_send_data(), usb_vcpkybrd_class_send_report(), usb_vcpkybrd_vcp_send_data(), usbd_hid_iap_process(), wdt_flag_get(), xmc_flag_status_get(), and xmc_interrupt_flag_status_get().

◆ tx_buffer

uint8_t tx_buffer[BUFFER_SIZE]

Definition at line 40 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main().

◆ write_read_addr_struct

nand_address_type write_read_addr_struct

Definition at line 39 of file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: NAND_id_define

Data Structures
NAND_id_define
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand

Data Structures

struct nand_id_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: nand_id_type Struct Reference

Data Fields
nand_id_type Struct Reference
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand » NAND_id_define

#include <xmc_ecc.h>

Data Fields

uint8_t | maker_id
uint8_t | device_id
uint8_t | third_id
uint8_t | fourth_id
uint8_t | fifth_id
uint8_t | sixth_id

Detailed Description

Definition at line 46 of file xmc_ecc.h.

Field Documentation

◆ device_id

uint8_t nand_id_type::device_id

device id

Definition at line 49 of file xmc_ecc.h.

Referenced by main(), and nand_read_id().

◆ fifth_id

uint8_t nand_id_type::fifth_id

fifth id

Definition at line 52 of file xmc_ecc.h.

Referenced by nand_read_id().

◆ fourth_id

uint8_t nand_id_type::fourth_id

fourth id

Definition at line 51 of file xmc_ecc.h.

Referenced by nand_read_id().

◆ maker_id

uint8_t nand_id_type::maker_id

maker id

Definition at line 48 of file xmc_ecc.h.

Referenced by main(), and nand_read_id().

◆ sixth_id

uint8_t nand_id_type::sixth_id

sixth id

Definition at line 53 of file xmc_ecc.h.

Referenced by nand_read_id().

◆ third_id

uint8_t nand_id_type::third_id

third id

Definition at line 50 of file xmc_ecc.h.

Referenced by nand_read_id().

The documentation for this struct was generated from the following files:
  • xmc_ecc.h
  • xmc_nand.h


AT32F403 Firmwary Library: NAND_address_define

Data Structures
NAND_address_define
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand

Data Structures

struct nand_address_type

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: nand_address_type Struct Reference

Data Fields
nand_address_type Struct Reference
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand » NAND_address_define

#include <xmc_ecc.h>

Data Fields

uint16_t | zone
uint16_t | block
uint16_t | page
uint16_t | byte

Detailed Description

Definition at line 64 of file xmc_ecc.h.

Field Documentation

◆ block

uint16_t nand_address_type::block

nand device block address

Definition at line 67 of file xmc_ecc.h.

Referenced by main(), and nand_address_increment().

◆ byte

uint16_t nand_address_type::byte

nand device byte address

Definition at line 69 of file xmc_ecc.h.

Referenced by main().

◆ page

uint16_t nand_address_type::page

nand device page address

Definition at line 68 of file xmc_ecc.h.

Referenced by main(), and nand_address_increment().

◆ zone

uint16_t nand_address_type::zone

nand device zone address

Definition at line 66 of file xmc_ecc.h.

Referenced by main(), and nand_address_increment().

The documentation for this struct was generated from the following files:
  • xmc_ecc.h
  • xmc_nand.h


AT32F403 Firmwary Library: NAND_area_define

Macros
NAND_area_define
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand

Macros

#define | CMD_AREA (uint32_t)(1<<16)
#define | ADDR_AREA (uint32_t)(1<<17)
#define | DATA_AREA ((uint32_t)0x00000000)
#define | CMD_AREA (uint32_t)(1<<16)
#define | ADDR_AREA (uint32_t)(1<<17)
#define | DATA_AREA ((uint32_t)0x00000000)

Detailed Description

Macro Definition Documentation

◆ ADDR_AREA [1/2]

#define ADDR_AREA (uint32_t)(1<<17)

Definition at line 100 of file xmc_ecc.h.

◆ ADDR_AREA [2/2]

#define ADDR_AREA (uint32_t)(1<<17)

Definition at line 101 of file xmc_nand.h.

◆ CMD_AREA [1/2]

#define CMD_AREA (uint32_t)(1<<16)

Definition at line 98 of file xmc_ecc.h.

◆ CMD_AREA [2/2]

#define CMD_AREA (uint32_t)(1<<16)

Definition at line 99 of file xmc_nand.h.

◆ DATA_AREA [1/2]

#define DATA_AREA ((uint32_t)0x00000000)

Definition at line 102 of file xmc_ecc.h.

◆ DATA_AREA [2/2]

#define DATA_AREA ((uint32_t)0x00000000)

Definition at line 103 of file xmc_nand.h.


AT32F403 Firmwary Library: XMC_nand_memory_command

Macros
XMC_nand_memory_command
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand

Macros

#define | NAND_CMD_AREA_A ((uint8_t)0x00)
#define | NAND_CMD_AREA_B ((uint8_t)0x01)
#define | NAND_CMD_AREA_C ((uint8_t)0x50)
#define | NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)
#define | NAND_CMD_WRITE0 ((uint8_t)0x80)
#define | NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)
#define | NAND_CMD_ERASE0 ((uint8_t)0x60)
#define | NAND_CMD_ERASE1 ((uint8_t)0xD0)
#define | NAND_CMD_READID ((uint8_t)0x90)
#define | NAND_CMD_STATUS ((uint8_t)0x70)
#define | NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)
#define | NAND_CMD_RESET ((uint8_t)0xFF)
#define | NAND_CMD_AREA_A ((uint8_t)0x00)
#define | NAND_CMD_AREA_B ((uint8_t)0x01)
#define | NAND_CMD_AREA_C ((uint8_t)0x50)
#define | NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)
#define | NAND_CMD_WRITE0 ((uint8_t)0x80)
#define | NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)
#define | NAND_CMD_ERASE0 ((uint8_t)0x60)
#define | NAND_CMD_ERASE1 ((uint8_t)0xD0)
#define | NAND_CMD_READID ((uint8_t)0x90)
#define | NAND_CMD_STATUS ((uint8_t)0x70)
#define | NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)
#define | NAND_CMD_RESET ((uint8_t)0xFF)

Detailed Description

Macro Definition Documentation

◆ NAND_CMD_AREA_A [1/2]

#define NAND_CMD_AREA_A ((uint8_t)0x00)

Definition at line 113 of file xmc_ecc.h.

◆ NAND_CMD_AREA_A [2/2]

#define NAND_CMD_AREA_A ((uint8_t)0x00)

Definition at line 114 of file xmc_nand.h.

◆ NAND_CMD_AREA_B [1/2]

#define NAND_CMD_AREA_B ((uint8_t)0x01)

Definition at line 114 of file xmc_ecc.h.

◆ NAND_CMD_AREA_B [2/2]

#define NAND_CMD_AREA_B ((uint8_t)0x01)

Definition at line 115 of file xmc_nand.h.

◆ NAND_CMD_AREA_C [1/2]

#define NAND_CMD_AREA_C ((uint8_t)0x50)

Definition at line 115 of file xmc_ecc.h.

◆ NAND_CMD_AREA_C [2/2]

#define NAND_CMD_AREA_C ((uint8_t)0x50)

Definition at line 116 of file xmc_nand.h.

◆ NAND_CMD_AREA_TRUE1 [1/2]

#define NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)

Definition at line 116 of file xmc_ecc.h.

◆ NAND_CMD_AREA_TRUE1 [2/2]

#define NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)

Definition at line 117 of file xmc_nand.h.

◆ NAND_CMD_ERASE0 [1/2]

#define NAND_CMD_ERASE0 ((uint8_t)0x60)

Definition at line 121 of file xmc_ecc.h.

◆ NAND_CMD_ERASE0 [2/2]

#define NAND_CMD_ERASE0 ((uint8_t)0x60)

Definition at line 122 of file xmc_nand.h.

◆ NAND_CMD_ERASE1 [1/2]

#define NAND_CMD_ERASE1 ((uint8_t)0xD0)

Definition at line 122 of file xmc_ecc.h.

◆ NAND_CMD_ERASE1 [2/2]

#define NAND_CMD_ERASE1 ((uint8_t)0xD0)

Definition at line 123 of file xmc_nand.h.

◆ NAND_CMD_LOCK_STATUS [1/2]

#define NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)

Definition at line 126 of file xmc_ecc.h.

◆ NAND_CMD_LOCK_STATUS [2/2]

#define NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)

Definition at line 127 of file xmc_nand.h.

◆ NAND_CMD_READID [1/2]

#define NAND_CMD_READID ((uint8_t)0x90)

Definition at line 124 of file xmc_ecc.h.

◆ NAND_CMD_READID [2/2]

#define NAND_CMD_READID ((uint8_t)0x90)

Definition at line 125 of file xmc_nand.h.

◆ NAND_CMD_RESET [1/2]

#define NAND_CMD_RESET ((uint8_t)0xFF)

Definition at line 127 of file xmc_ecc.h.

◆ NAND_CMD_RESET [2/2]

#define NAND_CMD_RESET ((uint8_t)0xFF)

Definition at line 128 of file xmc_nand.h.

◆ NAND_CMD_STATUS [1/2]

#define NAND_CMD_STATUS ((uint8_t)0x70)

Definition at line 125 of file xmc_ecc.h.

◆ NAND_CMD_STATUS [2/2]

#define NAND_CMD_STATUS ((uint8_t)0x70)

Definition at line 126 of file xmc_nand.h.

◆ NAND_CMD_WRITE0 [1/2]

#define NAND_CMD_WRITE0 ((uint8_t)0x80)

Definition at line 118 of file xmc_ecc.h.

◆ NAND_CMD_WRITE0 [2/2]

#define NAND_CMD_WRITE0 ((uint8_t)0x80)

Definition at line 119 of file xmc_nand.h.

◆ NAND_CMD_WRITE_TRUE1 [1/2]

#define NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)

Definition at line 119 of file xmc_ecc.h.

◆ NAND_CMD_WRITE_TRUE1 [2/2]

#define NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)

Definition at line 120 of file xmc_nand.h.


AT32F403 Firmwary Library: XMC_nand_status

Macros
XMC_nand_status
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand

Macros

#define | NAND_VALID_ADDRESS ((uint32_t)0x00000100)
#define | NAND_INVALID_ADDRESS ((uint32_t)0x00000200)
#define | NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)
#define | NAND_BUSY ((uint32_t)0x00000000)
#define | NAND_ERROR ((uint32_t)0x00000001)
#define | NAND_READY ((uint32_t)0x00000040)
#define | NAND_VALID_ADDRESS ((uint32_t)0x00000100)
#define | NAND_INVALID_ADDRESS ((uint32_t)0x00000200)
#define | NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)
#define | NAND_BUSY ((uint32_t)0x00000000)
#define | NAND_ERROR ((uint32_t)0x00000001)
#define | NAND_READY ((uint32_t)0x00000040)

Detailed Description

Macro Definition Documentation

◆ NAND_BUSY [1/2]

#define NAND_BUSY ((uint32_t)0x00000000)

Definition at line 141 of file xmc_ecc.h.

◆ NAND_BUSY [2/2]

#define NAND_BUSY ((uint32_t)0x00000000)

Definition at line 142 of file xmc_nand.h.

◆ NAND_ERROR [1/2]

#define NAND_ERROR ((uint32_t)0x00000001)

Definition at line 142 of file xmc_ecc.h.

◆ NAND_ERROR [2/2]

#define NAND_ERROR ((uint32_t)0x00000001)

Definition at line 143 of file xmc_nand.h.

◆ NAND_INVALID_ADDRESS [1/2]

#define NAND_INVALID_ADDRESS ((uint32_t)0x00000200)

Definition at line 139 of file xmc_ecc.h.

◆ NAND_INVALID_ADDRESS [2/2]

#define NAND_INVALID_ADDRESS ((uint32_t)0x00000200)

Definition at line 140 of file xmc_nand.h.

◆ NAND_READY [1/2]

#define NAND_READY ((uint32_t)0x00000040)

Definition at line 143 of file xmc_ecc.h.

◆ NAND_READY [2/2]

#define NAND_READY ((uint32_t)0x00000040)

Definition at line 144 of file xmc_nand.h.

◆ NAND_TIMEOUT_ERROR [1/2]

#define NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)

Definition at line 140 of file xmc_ecc.h.

◆ NAND_TIMEOUT_ERROR [2/2]

#define NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)

Definition at line 141 of file xmc_nand.h.

◆ NAND_VALID_ADDRESS [1/2]

#define NAND_VALID_ADDRESS ((uint32_t)0x00000100)

Definition at line 138 of file xmc_ecc.h.

◆ NAND_VALID_ADDRESS [2/2]

#define NAND_VALID_ADDRESS ((uint32_t)0x00000100)

Definition at line 139 of file xmc_nand.h.


AT32F403 Firmwary Library: XMC_nand_parameters

XMC_nand_parameters
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand


AT32F403 Firmwary Library: XMC_nand_address_computation

Macros
XMC_nand_address_computation
AT32F403_periph_examples » XMC_nand_ecc | AT32F403_periph_examples » XMC_nand

Macros

#define | addr_1st_cycle(addr) (uint8_t)((addr) & 0xFF)
#define | addr_2nd_cycle(addr) (uint8_t)(((addr) & 0xFF00) >> 8)
#define | addr_3rd_cycle(addr) (uint8_t)(((addr) & 0xFF0000) >> 16)
#define | addr_4th_cycle(addr) (uint8_t)(((addr) & 0xFF000000) >> 24)
#define | addr_1st_cycle(addr) (uint8_t)((addr) & 0x000000FF)
#define | addr_2nd_cycle(addr) (uint8_t)(((addr) & 0x0000FF00) >> 8)
#define | addr_3rd_cycle(addr) (uint8_t)(((addr) & 0x00FF0000) >> 16)
#define | addr_4th_cycle(addr) (uint8_t)(((addr) & 0xFF000000) >> 24)

Detailed Description

Macro Definition Documentation

◆ addr_1st_cycle [1/2]

#define addr_1st_cycle ( addr ) (uint8_t)((addr) & 0xFF)

Definition at line 188 of file xmc_ecc.h.

◆ addr_1st_cycle [2/2]

#define addr_1st_cycle ( addr ) (uint8_t)((addr) & 0x000000FF)

Definition at line 189 of file xmc_nand.h.

◆ addr_2nd_cycle [1/2]

#define addr_2nd_cycle ( addr ) (uint8_t)(((addr) & 0xFF00) >> 8)

Definition at line 190 of file xmc_ecc.h.

◆ addr_2nd_cycle [2/2]

#define addr_2nd_cycle ( addr ) (uint8_t)(((addr) & 0x0000FF00) >> 8)

Definition at line 191 of file xmc_nand.h.

◆ addr_3rd_cycle [1/2]

#define addr_3rd_cycle ( addr ) (uint8_t)(((addr) & 0xFF0000) >> 16)

Definition at line 192 of file xmc_ecc.h.

◆ addr_3rd_cycle [2/2]

#define addr_3rd_cycle ( addr ) (uint8_t)(((addr) & 0x00FF0000) >> 16)

Definition at line 193 of file xmc_nand.h.

◆ addr_4th_cycle [1/2]

#define addr_4th_cycle ( addr ) (uint8_t)(((addr) & 0xFF000000) >> 24)

Definition at line 194 of file xmc_ecc.h.

◆ addr_4th_cycle [2/2]

#define addr_4th_cycle ( addr ) (uint8_t)(((addr) & 0xFF000000) >> 24)

Definition at line 195 of file xmc_nand.h.


AT32F403 Firmwary Library: XMC_nand_ecc_functions

Functions
XMC_nand_ecc_functions
AT32F403_periph_examples » XMC_nand_ecc

Functions

void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Detailed Description

Function Documentation

◆ nand_address_increment()

uint32_t nand_address_increment ( nand_address_type * address_struct )

increment the nand memory address.

Parameters
address address to be incremented.
Return values
the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 491 of file xmc_ecc.c.

◆ nand_erase_block()

uint32_t nand_erase_block ( nand_address_type address_struct )

this routine erase complete block from nand flash

Parameters
address any address into block to be erased
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 392 of file xmc_ecc.c.

Referenced by main().

◆ nand_get_status()

uint32_t nand_get_status ( void )

get the nand operation status.

Parameters
none
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 430 of file xmc_ecc.c.

◆ nand_init()

void nand_init ( void )

configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand.

Parameters
none
Return values
none

Definition at line 42 of file xmc_ecc.c.

Referenced by main().

◆ nand_read_id()

void nand_read_id ( nand_id_type * nand_id_struct )

reads nand memory's id.

Parameters
nand_id pointer to a nand_id_type structure which will hold the manufacturer and device id.
Return values
none

Definition at line 109 of file xmc_ecc.c.

Referenced by main().

◆ nand_read_small_page()

uint32_t nand_read_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_read
 | ) |  |

this routine is for sequential read from one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_page_to_read | number of page to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 217 of file xmc_ecc.c.

Referenced by main().

◆ nand_read_spare_area()

uint32_t nand_read_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_read
 | ) |  |

this routine read the spare area information from the specified pages addresses.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_spare_area_to_read | number of spare area to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 342 of file xmc_ecc.c.

◆ nand_read_status()

uint32_t nand_read_status ( void )

reads the nand memory status using the read status command.

Parameters
none
Return values
the status of the nand memory. this parameter can be:
  • NAND_BUSY: when memory is busy
  • NAND_READY: when memory is ready for the next operation
  • NAND_ERROR: when the previous operation gererates error

Definition at line 460 of file xmc_ecc.c.

◆ nand_reset()

uint32_t nand_reset ( void )

this routine reset the nand flash.

Parameters
none
Return values
NAND_READY

Definition at line 415 of file xmc_ecc.c.

Referenced by main().

◆ nand_write_small_page()

uint32_t nand_write_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_write
 | ) |  |

this routine is for writing one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_page_to_write | number of page to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 150 of file xmc_ecc.c.

Referenced by main().

◆ nand_write_spare_area()

uint32_t nand_write_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_write
 | ) |  |

this routine write the spare area information for the specified pages addresses.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_spare_area_to_write | number of spare area to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 283 of file xmc_ecc.c.


AT32F403 Firmwary Library: XMC_nand

Modules | Macros | Functions | Variables
XMC_nand
AT32F403_periph_examples

Modules

NAND_id_define
NAND_address_define
NAND_area_define
XMC_nand_memory_command
XMC_nand_status
XMC_nand_parameters
XMC_nand_address_computation
XMC_nand_functions

Macros

#define | ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)
#define | COL_ADDRESS address_struct.byte
#define | BUFFER_SIZE NAND_PAGE_SIZE
#define | XMC_Bank_NAND XMC_Bank2_NAND
#define | Bank_NAND_ADDR Bank2_NAND_ADDR
#define | Bank2_NAND_ADDR ((uint32_t)0x70000000)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | fill_buffer (uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...
int | main (void)
main function. More...
void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
nand_id_type | nand_id_struct = {0}
nand_address_type write_read_addr_struct
uint8_t | txbuffer [BUFFER_SIZE]
uint8_t | rxbuffer [BUFFER_SIZE+NAND_SPARE_AREA_SIZE]
uint32_t | pagenumber = BUFFER_SIZE / NAND_PAGE_SIZE
uint32_t | writereadstatus = 0
uint32_t | status = 0
uint32_t | j = 0

Detailed Description

Macro Definition Documentation

◆ Bank2_NAND_ADDR

#define Bank2_NAND_ADDR ((uint32_t)0x70000000)

Definition at line 85 of file xmc_nand.h.

◆ Bank_NAND_ADDR

#define Bank_NAND_ADDR Bank2_NAND_ADDR

Definition at line 84 of file xmc_nand.h.

◆ BUFFER_SIZE

#define BUFFER_SIZE NAND_PAGE_SIZE

Definition at line 81 of file xmc_nand.h.

◆ COL_ADDRESS

#define COL_ADDRESS address_struct.byte

Definition at line 79 of file xmc_nand.h.

◆ ROW_ADDRESS

#define ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)

Definition at line 78 of file xmc_nand.h.

◆ XMC_Bank_NAND

#define XMC_Bank_NAND XMC_Bank2_NAND

Definition at line 83 of file xmc_nand.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ fill_buffer()

void fill_buffer | ( | uint8_t * | pbuffer,
 |  | uint16_t | bufferlenght,
 |  | uint32_t | offset
 | ) |  |

fill the global buffer

Parameters
pbuffer | pointer on the buffer to fill
buffersize | size of the buffer to fill
offset | first value to fill on the buffer

Definition at line 134 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ nand_address_increment()

uint32_t nand_address_increment ( nand_address_type * address_struct )

increment the nand memory address.

Parameters
address address to be incremented.
Return values
the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 488 of file xmc_nand.c.

Referenced by nand_read_small_page(), nand_read_spare_area(), nand_write_small_page(), and nand_write_spare_area().

◆ nand_erase_block()

uint32_t nand_erase_block ( nand_address_type address_struct )

this routine erase complete block from nand flash

Parameters
address any address into block to be erased
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 390 of file xmc_nand.c.

Referenced by main().

◆ nand_get_status()

uint32_t nand_get_status ( void )

get the nand operation status.

Parameters
none
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 427 of file xmc_nand.c.

Referenced by nand_erase_block(), nand_read_small_page(), nand_read_spare_area(), nand_write_small_page(), and nand_write_spare_area().

◆ nand_init()

void nand_init ( void )

configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand.

Parameters
none
Return values
none

Definition at line 42 of file xmc_nand.c.

Referenced by main().

◆ nand_read_id()

void nand_read_id ( nand_id_type * nand_id_struct )

reads nand memory's id.

Parameters
nand_id pointer to a nand_id_type structure which will hold the manufacturer and device id.
Return values
none

Definition at line 117 of file xmc_nand.c.

Referenced by main().

◆ nand_read_small_page()

uint32_t nand_read_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_read
 | ) |  |

this routine is for sequential read from one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_page_to_read | number of page to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 221 of file xmc_nand.c.

Referenced by main().

◆ nand_read_spare_area()

uint32_t nand_read_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_read
 | ) |  |

this routine read the spare area information from the specified pages addresses.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_spare_area_to_read | number of spare area to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 340 of file xmc_nand.c.

◆ nand_read_status()

uint32_t nand_read_status ( void )

reads the nand memory status using the read status command.

Parameters
none
Return values
the status of the nand memory. this parameter can be:
  • NAND_BUSY: when memory is busy
  • NAND_READY: when memory is ready for the next operation
  • NAND_ERROR: when the previous operation gererates error

Definition at line 457 of file xmc_nand.c.

Referenced by nand_get_status().

◆ nand_reset()

uint32_t nand_reset ( void )

this routine reset the nand flash.

Parameters
none
Return values
NAND_READY

Definition at line 412 of file xmc_nand.c.

Referenced by main().

◆ nand_write_small_page()

uint32_t nand_write_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_write
 | ) |  |

this routine is for writing one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_page_to_write | number of page to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 158 of file xmc_nand.c.

Referenced by main().

◆ nand_write_spare_area()

uint32_t nand_write_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_write
 | ) |  |

this routine write the spare area information for the specified pages addresses.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_spare_area_to_write | number of spare area to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 283 of file xmc_nand.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.

Variable Documentation

◆ crm_clocks_freq_struct

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Definition at line 37 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ j

uint32_t j = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ nand_id_struct

nand_id_type nand_id_struct = {0}

Definition at line 38 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ pagenumber

uint32_t pagenumber = BUFFER_SIZE / NAND_PAGE_SIZE

Definition at line 41 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ rxbuffer

uint8_t rxbuffer[BUFFER_SIZE+NAND_SPARE_AREA_SIZE]

Definition at line 40 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ status

uint32_t status = 0

Definition at line 41 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ txbuffer

uint8_t txbuffer[BUFFER_SIZE]

Definition at line 40 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ write_read_addr_struct

nand_address_type write_read_addr_struct

Definition at line 39 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().

◆ writereadstatus

uint32_t writereadstatus = 0

Definition at line 41 of file project/at_start_f403/examples/xmc/nand/nand/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: XMC_nand_functions

Functions
XMC_nand_functions
AT32F403_periph_examples » XMC_nand

Functions

void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Detailed Description

Function Documentation

◆ nand_address_increment()

uint32_t nand_address_increment ( nand_address_type * address_struct )

increment the nand memory address.

Parameters
address address to be incremented.
Return values
the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 491 of file xmc_ecc.c.

Referenced by nand_read_small_page(), nand_read_spare_area(), nand_write_small_page(), and nand_write_spare_area().

◆ nand_erase_block()

uint32_t nand_erase_block ( nand_address_type address_struct )

this routine erase complete block from nand flash

Parameters
address any address into block to be erased
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 392 of file xmc_ecc.c.

◆ nand_get_status()

uint32_t nand_get_status ( void )

get the nand operation status.

Parameters
none
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation

Definition at line 430 of file xmc_ecc.c.

Referenced by nand_erase_block(), nand_read_small_page(), nand_read_spare_area(), nand_write_small_page(), and nand_write_spare_area().

◆ nand_init()

void nand_init ( void )

configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand.

Parameters
none
Return values
none

Definition at line 42 of file xmc_ecc.c.

◆ nand_read_id()

void nand_read_id ( nand_id_type * nand_id_struct )

reads nand memory's id.

Parameters
nand_id pointer to a nand_id_type structure which will hold the manufacturer and device id.
Return values
none

Definition at line 109 of file xmc_ecc.c.

◆ nand_read_small_page()

uint32_t nand_read_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_read
 | ) |  |

this routine is for sequential read from one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_page_to_read | number of page to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 217 of file xmc_ecc.c.

◆ nand_read_spare_area()

uint32_t nand_read_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_read
 | ) |  |

this routine read the spare area information from the specified pages addresses.

Parameters
pbuffer | pointer on the buffer to fill
address | first page address
num_spare_area_to_read | number of spare area to read
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 342 of file xmc_ecc.c.

◆ nand_read_status()

uint32_t nand_read_status ( void )

reads the nand memory status using the read status command.

Parameters
none
Return values
the status of the nand memory. this parameter can be:
  • NAND_BUSY: when memory is busy
  • NAND_READY: when memory is ready for the next operation
  • NAND_ERROR: when the previous operation gererates error

Definition at line 460 of file xmc_ecc.c.

Referenced by nand_get_status().

◆ nand_reset()

uint32_t nand_reset ( void )

this routine reset the nand flash.

Parameters
none
Return values
NAND_READY

Definition at line 415 of file xmc_ecc.c.

◆ nand_write_small_page()

uint32_t nand_write_small_page | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_page_to_write
 | ) |  |

this routine is for writing one or several 512 bytes page size.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_page_to_write | number of page to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 150 of file xmc_ecc.c.

◆ nand_write_spare_area()

uint32_t nand_write_spare_area | ( | uint8_t * | pbuffer,
 |  | nand_address_type | address_struct,
 |  | uint32_t | num_spare_area_to_write
 | ) |  |

this routine write the spare area information for the specified pages addresses.

Parameters
pbuffer | pointer on the buffer containing data to be written
address | first page address
num_spare_area_to_write | number of spare area to write
Return values
new status of the nand operation. this parameter can be:
  • NAND_TIMEOUT_ERROR: when the previous operation generate a timeout error
  • NAND_READY: when memory is ready for the next operation and the new status of the increment address operation. it can be:
  • NAND_VALID_ADDRESS: when the new address is valid address
  • NAND_INVALID_ADDRESS: when the new address is invalid address

Definition at line 283 of file xmc_ecc.c.


AT32F403 Firmwary Library: _XMC_nor

Modules | Macros | Functions
_XMC_nor
AT32F403_periph_examples

Modules

XMC_nor_functions

Macros

#define | BANK1_NOR2_ADDR ((uint32_t)0x64000000)
#define | BLOCKERASE_TIMEOUT ((uint32_t)0x00A00000)
#define | CHIPERASE_TIMEOUT ((uint32_t)0x30000000)
#define | PROGRAM_TIMEOUT ((uint32_t)0x00001400)
#define | ADDR_SHIFT(A) (BANK1_NOR2_ADDR + (2 * (A)))
#define | NOR_WRITE(address, data) (*(__IO uint16_t *)(address) = (data))

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | nor_init (void)
configures the xmc and gpios to interface with the nor memory. this function must be called before any write/read operation on the nor. More...
void | nor_readid (nor_idtype *nor_id)
reads nor memory's manufacturer and device code. More...
nor_status | nor_eraseblock (uint32_t blockaddr)
erases the specified nor memory block. More...
nor_status | nor_erasechip (void)
erases the entire chip. More...
nor_status | nor_writehalfword (uint32_t writeaddr, uint16_t data)
writes a half-word to the nor memory. More...
nor_status | nor_writebuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. More...
nor_status | nor_programbuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor memory. More...
uint16_t | nor_readhalfword (uint32_t readaddr)
reads a half-word from the nor memory. More...
void | nor_readbuffer (uint16_t *pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
reads a block of data from the xmc nor memory. More...
nor_status | nor_returntoreadmode (void)
returns the nor memory to read mode. More...
nor_status | nor_reset (void)
returns the nor memory to read mode and resets the errors in the nor memory status register. More...
nor_status | nor_getstatus (uint32_t timeout)
returns the nor operation status. More...
void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...

Detailed Description

Macro Definition Documentation

◆ ADDR_SHIFT

#define ADDR_SHIFT ( A ) (BANK1_NOR2_ADDR + (2 * (A)))

Definition at line 41 of file xmc_nor.c.

◆ BANK1_NOR2_ADDR

#define BANK1_NOR2_ADDR ((uint32_t)0x64000000)

Definition at line 34 of file xmc_nor.c.

◆ BLOCKERASE_TIMEOUT

#define BLOCKERASE_TIMEOUT ((uint32_t)0x00A00000)

Definition at line 37 of file xmc_nor.c.

◆ CHIPERASE_TIMEOUT

#define CHIPERASE_TIMEOUT ((uint32_t)0x30000000)

Definition at line 38 of file xmc_nor.c.

◆ NOR_WRITE

#define NOR_WRITE | ( | address,
 |  | data
 | ) | (*(__IO uint16_t *)(address) = (data))

Definition at line 42 of file xmc_nor.c.

◆ PROGRAM_TIMEOUT

#define PROGRAM_TIMEOUT ((uint32_t)0x00001400)

Definition at line 39 of file xmc_nor.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ fill_buffer()

void fill_buffer | ( | uint16_t * | pbuffer,
 |  | uint16_t | bufferlenght,
 |  | uint32_t | offset
 | ) |  |

fill the global buffer

Parameters
pbuffer | pointer on the buffer to fill
buffersize | size of the buffer to fill
offset | first value to fill on the buffer

Definition at line 426 of file xmc_nor.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ nor_eraseblock()

nor_status nor_eraseblock ( uint32_t blockaddr )

erases the specified nor memory block.

Parameters
blockaddr address of the block to erase.
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

Definition at line 172 of file xmc_nor.c.

Referenced by main().

◆ nor_erasechip()

nor_status nor_erasechip ( void )

erases the entire chip.

Parameters
none
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

Definition at line 190 of file xmc_nor.c.

◆ nor_getstatus()

nor_status nor_getstatus ( uint32_t timeout )

returns the nor operation status.

Parameters
timeout nor progamming timeout
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

< poll on nor memory ready/busy signal -------------------------------—

< read dq6 and dq5

< if dq6 did not toggle between the two reads then return nor_success

Definition at line 359 of file xmc_nor.c.

Referenced by nor_eraseblock(), nor_erasechip(), nor_programbuffer(), and nor_writehalfword().

◆ nor_init()

void nor_init ( void )

configures the xmc and gpios to interface with the nor memory. this function must be called before any write/read operation on the nor.

Parameters
none
Return values
none

Definition at line 52 of file xmc_nor.c.

Referenced by main().

◆ nor_programbuffer()

nor_status nor_programbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | writeaddr,
 |  | uint32_t | numhalfwordtowrite
 | ) |  |

writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor memory.

Parameters
pbuffer | pointer to buffer.
writeaddr | nor memory internal address from which the data will be written.
numhalfwordtowrite | number of half words to write. the maximum allowed value is 32 half words (64 bytes).
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

< initialize variables

< Issue unlock command sequence

< Write Write Buffer Load Command

< Load Data into NOR Buffer

< Store last loaded address & data value (for polling)

Definition at line 255 of file xmc_nor.c.

◆ nor_readbuffer()

void nor_readbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | readaddr,
 |  | uint32_t | numhalfwordtoread
 | ) |  |

reads a block of data from the xmc nor memory.

Parameters
pbuffer | pointer to the buffer that receives the data read from the nor memory.
readaddr | nor memory internal address to read from.
numhalfwordtoread | : number of half word to read.
Return values
none

< while there is data to read

< read a halfword from the nor

Definition at line 312 of file xmc_nor.c.

Referenced by main().

◆ nor_readhalfword()

uint16_t nor_readhalfword ( uint32_t readaddr )

reads a half-word from the nor memory.

Parameters
readaddr nor memory internal address to read from.
Return values
half-word read from the nor memory

Definition at line 295 of file xmc_nor.c.

◆ nor_readid()

void nor_readid ( nor_idtype * nor_id )

reads nor memory's manufacturer and device code.

Parameters
nor_id pointer to a nor_idtypedef structure which will hold the manufacturer and device code.
Return values
none

Definition at line 154 of file xmc_nor.c.

Referenced by main().

◆ nor_reset()

nor_status nor_reset ( void )

returns the nor memory to read mode and resets the errors in the nor memory status register.

Parameters
none
Return values
nor_success

Definition at line 344 of file xmc_nor.c.

◆ nor_returntoreadmode()

nor_status nor_returntoreadmode ( void )

returns the nor memory to read mode.

Parameters
none
Return values
nor_success

Definition at line 331 of file xmc_nor.c.

Referenced by main().

◆ nor_writebuffer()

nor_status nor_writebuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | writeaddr,
 |  | uint32_t | numhalfwordtowrite
 | ) |  |

writes a half-word buffer to the xmc nor memory.

Parameters
pbuffer | pointer to buffer.
writeaddr | nor memory internal address from which the data will be written.
numhalfwordtowrite | number of half words to write.
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

< Transfer data to the memory

Definition at line 228 of file xmc_nor.c.

Referenced by main().

◆ nor_writehalfword()

nor_status nor_writehalfword | ( | uint32_t | writeaddr,
 |  | uint16_t | data
 | ) |  |

writes a half-word to the nor memory.

Parameters
writeaddr | nor memory internal address to write to.
data | data to write.
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

Definition at line 209 of file xmc_nor.c.

Referenced by nor_writebuffer().

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.


AT32F403 Firmwary Library: XMC_nor_functions

Data Structures | Enumerations | Functions
XMC_nor_functions
AT32F403_periph_examples » _XMC_nor

Data Structures

struct nor_idtype

Enumerations

enum nor_status { NOR_SUCCESS = 0 , NOR_ONGOING , NOR_ERROR , NOR_TIMEOUT }

Functions

void | nor_init (void)
configures the xmc and gpios to interface with the nor memory. this function must be called before any write/read operation on the nor. More...
void | nor_readid (nor_idtype *nor_id)
reads nor memory's manufacturer and device code. More...
nor_status | nor_eraseblock (uint32_t blockaddr)
erases the specified nor memory block. More...
nor_status | nor_erasechip (void)
erases the entire chip. More...
nor_status | nor_writehalfword (uint32_t writeaddr, uint16_t data)
writes a half-word to the nor memory. More...
nor_status | nor_writebuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. More...
nor_status | nor_programbuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor memory. More...
uint16_t | nor_readhalfword (uint32_t readaddr)
reads a half-word from the nor memory. More...
void | nor_readbuffer (uint16_t *pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
reads a block of data from the xmc nor memory. More...
nor_status | nor_returntoreadmode (void)
returns the nor memory to read mode. More...
nor_status | nor_reset (void)
returns the nor memory to read mode and resets the errors in the nor memory status register. More...
nor_status | nor_getstatus (uint32_t timeout)
returns the nor operation status. More...
void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...

Detailed Description

Enumeration Type Documentation

◆ nor_status

enum nor_status
Enumerator
NOR_SUCCESS
NOR_ONGOING
NOR_ERROR
NOR_TIMEOUT

Definition at line 56 of file xmc_nor.h.

Function Documentation

◆ fill_buffer()

void fill_buffer | ( | uint16_t * | pbuffer,
 |  | uint16_t | bufferlenght,
 |  | uint32_t | offset
 | ) |  |

fill the global buffer

Parameters
pbuffer | pointer on the buffer to fill
buffersize | size of the buffer to fill
offset | first value to fill on the buffer

Definition at line 106 of file project/at_start_f403/examples/xmc/psram/src/main.c.

Referenced by main().

◆ nor_eraseblock()

nor_status nor_eraseblock ( uint32_t blockaddr )

erases the specified nor memory block.

Parameters
blockaddr address of the block to erase.
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

Definition at line 172 of file xmc_nor.c.

Referenced by main().

◆ nor_erasechip()

nor_status nor_erasechip ( void )

erases the entire chip.

Parameters
none
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

Definition at line 190 of file xmc_nor.c.

◆ nor_getstatus()

nor_status nor_getstatus ( uint32_t timeout )

returns the nor operation status.

Parameters
timeout nor progamming timeout
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

< poll on nor memory ready/busy signal -------------------------------—

< read dq6 and dq5

< if dq6 did not toggle between the two reads then return nor_success

Definition at line 359 of file xmc_nor.c.

Referenced by nor_eraseblock(), nor_erasechip(), nor_programbuffer(), and nor_writehalfword().

◆ nor_init()

void nor_init ( void )

configures the xmc and gpios to interface with the nor memory. this function must be called before any write/read operation on the nor.

Parameters
none
Return values
none

Definition at line 52 of file xmc_nor.c.

Referenced by main().

◆ nor_programbuffer()

nor_status nor_programbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | writeaddr,
 |  | uint32_t | numhalfwordtowrite
 | ) |  |

writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor memory.

Parameters
pbuffer | pointer to buffer.
writeaddr | nor memory internal address from which the data will be written.
numhalfwordtowrite | number of half words to write. the maximum allowed value is 32 half words (64 bytes).
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

< initialize variables

< Issue unlock command sequence

< Write Write Buffer Load Command

< Load Data into NOR Buffer

< Store last loaded address & data value (for polling)

Definition at line 255 of file xmc_nor.c.

◆ nor_readbuffer()

void nor_readbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | readaddr,
 |  | uint32_t | numhalfwordtoread
 | ) |  |

reads a block of data from the xmc nor memory.

Parameters
pbuffer | pointer to the buffer that receives the data read from the nor memory.
readaddr | nor memory internal address to read from.
numhalfwordtoread | : number of half word to read.
Return values
none

< while there is data to read

< read a halfword from the nor

Definition at line 312 of file xmc_nor.c.

Referenced by main().

◆ nor_readhalfword()

uint16_t nor_readhalfword ( uint32_t readaddr )

reads a half-word from the nor memory.

Parameters
readaddr nor memory internal address to read from.
Return values
half-word read from the nor memory

Definition at line 295 of file xmc_nor.c.

◆ nor_readid()

void nor_readid ( nor_idtype * nor_id )

reads nor memory's manufacturer and device code.

Parameters
nor_id pointer to a nor_idtypedef structure which will hold the manufacturer and device code.
Return values
none

Definition at line 154 of file xmc_nor.c.

Referenced by main().

◆ nor_reset()

nor_status nor_reset ( void )

returns the nor memory to read mode and resets the errors in the nor memory status register.

Parameters
none
Return values
nor_success

Definition at line 344 of file xmc_nor.c.

◆ nor_returntoreadmode()

nor_status nor_returntoreadmode ( void )

returns the nor memory to read mode.

Parameters
none
Return values
nor_success

Definition at line 331 of file xmc_nor.c.

Referenced by main().

◆ nor_writebuffer()

nor_status nor_writebuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | writeaddr,
 |  | uint32_t | numhalfwordtowrite
 | ) |  |

writes a half-word buffer to the xmc nor memory.

Parameters
pbuffer | pointer to buffer.
writeaddr | nor memory internal address from which the data will be written.
numhalfwordtowrite | number of half words to write.
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

< Transfer data to the memory

Definition at line 228 of file xmc_nor.c.

Referenced by main().

◆ nor_writehalfword()

nor_status nor_writehalfword | ( | uint32_t | writeaddr,
 |  | uint16_t | data
 | ) |  |

writes a half-word to the nor memory.

Parameters
writeaddr | nor memory internal address to write to.
data | data to write.
Return values
nor_status the returned value can be: nor_success, nor_error or nor_timeout

Definition at line 209 of file xmc_nor.c.

Referenced by nor_writebuffer().


AT32F403 Firmwary Library: nor_idtype Struct Reference

Data Fields
nor_idtype Struct Reference
AT32F403_periph_examples » _XMC_nor » XMC_nor_functions

#include <xmc_nor.h>

Data Fields

uint16_t | manufacturer_code
uint16_t | device_code1
uint16_t | device_code2
uint16_t | device_code3

Detailed Description

Definition at line 47 of file xmc_nor.h.

Field Documentation

◆ device_code1

uint16_t nor_idtype::device_code1

Definition at line 50 of file xmc_nor.h.

Referenced by nor_readid().

◆ device_code2

uint16_t nor_idtype::device_code2

Definition at line 51 of file xmc_nor.h.

Referenced by nor_readid().

◆ device_code3

uint16_t nor_idtype::device_code3

Definition at line 52 of file xmc_nor.h.

Referenced by nor_readid().

◆ manufacturer_code

uint16_t nor_idtype::manufacturer_code

Definition at line 49 of file xmc_nor.h.

Referenced by nor_readid().

The documentation for this struct was generated from the following file:
  • xmc_nor.h


AT32F403 Firmwary Library: XMC_nor

Macros | Functions | Variables
XMC_nor
AT32F403_periph_examples

Macros

#define | buffer_size 0x400
#define | write_read_addr 0x8000
#define | BUFFER_SIZE 0x400
#define | WRITE_READ_ADDR 0x8000
#define | Bank1_SRAM1_ADDR ((uint32_t)0x60000000)

Functions

int | main (void)
main function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...
void | sram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | sram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc sram memory. More...
void | sram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc sram memory. More...

Variables

uint16_t | txbuffer [0x400]
uint16_t | rxbuffer [0x400]
uint32_t | writereadstatus = 0
uint32_t | number = 0
nor_idtype nor_id
uint16_t | txbuffer [0x400]
uint16_t | rxbuffer [0x400]
uint32_t | writereadstatus = 0
uint16_t | index_cnt = 0

Detailed Description

Macro Definition Documentation

◆ Bank1_SRAM1_ADDR

#define Bank1_SRAM1_ADDR ((uint32_t)0x60000000)

Definition at line 34 of file xmc_sram.c.

◆ buffer_size

#define buffer_size 0x400

Definition at line 37 of file project/at_start_f403/examples/xmc/nor/src/main.c.

◆ BUFFER_SIZE

#define BUFFER_SIZE 0x400

Definition at line 37 of file project/at_start_f403/examples/xmc/sram/src/main.c.

◆ write_read_addr

#define write_read_addr 0x8000

Definition at line 38 of file project/at_start_f403/examples/xmc/nor/src/main.c.

◆ WRITE_READ_ADDR

#define WRITE_READ_ADDR 0x8000

Definition at line 38 of file project/at_start_f403/examples/xmc/sram/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ fill_buffer()

void fill_buffer | ( | uint16_t * | pbuffer,
 |  | uint16_t | bufferlenght,
 |  | uint32_t | offset
 | ) |  |

fill the global buffer

Parameters
pbuffer | pointer on the buffer to fill
buffersize | size of the buffer to fill
offset | first value to fill on the buffer

Definition at line 106 of file project/at_start_f403/examples/xmc/sram/src/main.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 51 of file project/at_start_f403/examples/xmc/nor/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ sram_init()

void sram_init ( void )

configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram.

Parameters
none
Return values
none

Definition at line 44 of file xmc_sram.c.

◆ sram_readbuffer()

void sram_readbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | read_addr,
 |  | uint32_t | num_halfword_to_read
 | ) |  |

reads a block of data from the xmc sram memory.

Parameters
pbuffer | : pointer to the buffer that receives the data read from the sram memory.
read_addr | : sram memory internal address to read from.
num_halfword_to_read | : number of half-words to read.
Return values
none

Definition at line 172 of file xmc_sram.c.

◆ sram_writebuffer()

void sram_writebuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | num_halfword_to_write
 | ) |  |

writes a half-word buffer to the xmc sram memory.

Parameters
pbuffer | : pointer to buffer.
write_addr | : sram memory internal address from which the data will be written.
num_halfword_to_write | : number of half-words to write.
Return values
none

Definition at line 151 of file xmc_sram.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.

Variable Documentation

◆ index_cnt

uint16_t index_cnt = 0

Definition at line 43 of file project/at_start_f403/examples/xmc/sram/src/main.c.

◆ nor_id

nor_idtype nor_id

Definition at line 43 of file project/at_start_f403/examples/xmc/nor/src/main.c.

Referenced by main(), and nor_readid().

◆ number

uint32_t number = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/nor/src/main.c.

Referenced by main().

◆ rxbuffer [1/2]

uint16_t rxbuffer[0x400]

Definition at line 41 of file project/at_start_f403/examples/xmc/nor/src/main.c.

Referenced by main().

◆ rxbuffer [2/2]

uint16_t rxbuffer[0x400]

Definition at line 41 of file project/at_start_f403/examples/xmc/sram/src/main.c.

◆ txbuffer [1/2]

uint16_t txbuffer[0x400]

Definition at line 40 of file project/at_start_f403/examples/xmc/nor/src/main.c.

Referenced by main().

◆ txbuffer [2/2]

uint16_t txbuffer[0x400]

Definition at line 40 of file project/at_start_f403/examples/xmc/sram/src/main.c.

◆ writereadstatus [1/2]

uint32_t writereadstatus = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/nor/src/main.c.

Referenced by main().

◆ writereadstatus [2/2]

uint32_t writereadstatus = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/sram/src/main.c.


AT32F403 Firmwary Library: XMC_CF_CARD

Modules | Variables
XMC_CF_CARD
AT32F403_periph_examples

Modules

PCCARD Private Constants
PCCARD Exported Functions
PCCARD Exported Constant
PCCARD Exported Types
PCCARD Exported Macros

Variables

dma_init_type DMA_InitStructure
u16 DMA1_MEM_LEN

Detailed Description

Variable Documentation

◆ DMA1_MEM_LEN

u16 DMA1_MEM_LEN

Definition at line 42 of file cf.c.

◆ DMA_InitStructure

dma_init_type DMA_InitStructure

Definition at line 41 of file cf.c.


AT32F403 Firmwary Library: PCCARD Private Constants

Macros
PCCARD Private Constants
AT32F403_periph_examples » XMC_CF_CARD

Macros

#define | PCCARD_TIMEOUT_READ_ID (uint32_t)0x0000FFFF
#define | PCCARD_TIMEOUT_SECTOR (uint32_t)0x0000FFFF
#define | PCCARD_TIMEOUT_STATUS (uint32_t)0x01000000
#define | PCCARD_STATUS_OK (uint8_t)0x58
#define | PCCARD_STATUS_WRITE_OK (uint8_t)0x50

Detailed Description

Macro Definition Documentation

◆ PCCARD_STATUS_OK

#define PCCARD_STATUS_OK (uint8_t)0x58

Definition at line 53 of file cf.c.

◆ PCCARD_STATUS_WRITE_OK

#define PCCARD_STATUS_WRITE_OK (uint8_t)0x50

Definition at line 54 of file cf.c.

◆ PCCARD_TIMEOUT_READ_ID

#define PCCARD_TIMEOUT_READ_ID (uint32_t)0x0000FFFF

Definition at line 49 of file cf.c.

◆ PCCARD_TIMEOUT_SECTOR

#define PCCARD_TIMEOUT_SECTOR (uint32_t)0x0000FFFF

Definition at line 50 of file cf.c.

◆ PCCARD_TIMEOUT_STATUS

#define PCCARD_TIMEOUT_STATUS (uint32_t)0x01000000

Definition at line 51 of file cf.c.


AT32F403 Firmwary Library: PCCARD Exported Functions

Modules
PCCARD Exported Functions
AT32F403_periph_examples » XMC_CF_CARD

Modules

Initialization and de-initialization functions
Initialization and Configuration functions.
Input Output and memory functions
Input Output and memory control functions.
Peripheral State functions
Peripheral State functions.

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: Initialization and de-initialization functions

Functions
Initialization and de-initialization functions
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Functions

Initialization and Configuration functions. More...

Functions

void | MYDMA_Config (dma_channel_type *DMAy_channelx, uint32_t cpar_src, uint32_t cmar_dst, uint32_t cndtr, uint8_t Transfer_Type, uint8_t Transfer_Width)
DMA configuration. More...
StatusType | XMC_PCCARD_InitCtrl (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
XMC InitCtrl. More...
StatusType | XMC_Enable_Wait_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init)
XMC Enable Wait Feature. More...
StatusType | XMC_Enable_16bit_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
Set 16bit_Feature. More...
StatusType | XMC_PCCARD_InitCommonSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init CommonSpace Timing. More...
StatusType | XMC_PCCARD_InitAttributeSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init AttributeSpace Timing. More...
StatusType | XMC_PCCARD_InitIOSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init IOSpace Timing. More...
StatusType | PCCARD_Init (PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming)
Perform the PCCARD memory Initialization sequence. More...
StatusType | Enable_Wait_Feature (PCCARD_HandleType *hpccard)
Enable Wait Feature. More...
StatusType | PCCARD_DeInit (PCCARD_HandleType *hpccard)
Perform the PCCARD memory De-initialization sequence. More...

Detailed Description

Initialization and Configuration functions.

  ==============================================================================
          ##### PCCARD Initialization and de-initialization functions #####
  ==============================================================================
  [..]
    This section provides functions allowing to initialize/de-initialize
    the PCCARD memory

Function Documentation

◆ Enable_Wait_Feature()

StatusType Enable_Wait_Feature ( PCCARD_HandleType * hpccard )

Enable Wait Feature.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
STATUS_OK or STATUS_ERROR

Definition at line 379 of file cf.c.

Referenced by main().

◆ MYDMA_Config()

void MYDMA_Config | ( | dma_channel_type * | DMAy_channelx,
 |  | uint32_t | cpar_src,
 |  | uint32_t | cmar_dst,
 |  | uint32_t | cndtr,
 |  | uint8_t | Transfer_Type,
 |  | uint8_t | Transfer_Width
 | ) |  |

DMA configuration.

Parameters
EDMA_CHx | pointer to a EDMA_Channel_Type structure
cpar_src | the Memory 1 addr
cmar_dst | the Memory 2 addr
cndtr | transfer size
Transfer_Type
  • Read_Transfer: from Memory 1 to Memory 2
  • Write_Transfer: from Memory 2 to Memory 1
Transfer_Width | BYTE or HALFWORD
Return values
None

Definition at line 94 of file cf.c.

Referenced by Read_Sector(), and Write_Sector().

◆ PCCARD_DeInit()

StatusType PCCARD_DeInit ( PCCARD_HandleType * hpccard )

Perform the PCCARD memory De-initialization sequence.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
HAL status

Definition at line 409 of file cf.c.

◆ PCCARD_Init()

StatusType PCCARD_Init | ( | PCCARD_HandleType * | hpccard,
 |  | xmc_nand_pccard_timinginit_type * | ComSpaceTiming,
 |  | xmc_nand_pccard_timinginit_type * | AttSpaceTiming,
 |  | xmc_nand_pccard_timinginit_type * | IOSpaceTiming
 | ) |  |

Perform the PCCARD memory Initialization sequence.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
ComSpaceTiming | Common space timing structure
AttSpaceTiming | Attribute space timing structure
IOSpaceTiming | IO space timing structure
Return values
HAL status

< gpio pins number 0

< gpio pins number 1

< gpio pins number 2

< gpio pins number 3

< gpio pins number 4

< gpio pins number 5

< gpio pins number 12

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

< gpio pins number 0

< gpio pins number 14

< gpio pins number 15

< gpio pins number 0

< gpio pins number 1

< gpio pins number 8

< gpio pins number 9

< gpio pins number 10

< gpio pins number 11

< gpio pins number 12

< gpio pins number 13

< gpio pins number 14

< gpio pins number 15

< gpio pins number 7

< gpio pins number 8

< gpio pins number 9

< gpio pins number 10

< gpio pins number 4

< gpio pins number 6

< gpio pins number 5

< gpio pins number 6

< gpio pins number 10

< gpio pins number 11

< gpio pins number 9

< gpio pins number 6

< gpio pins number 7

< gpio pins number 8

< gpio pins number 10

< gpio pins number 11

Definition at line 249 of file cf.c.

Referenced by main().

◆ XMC_Enable_16bit_Feature()

StatusType XMC_Enable_16bit_Feature | ( | xmc_bank4_type * | Device,
 |  | xmc_pccard_init_type * | Init,
 |  | uint8_t | Set_reg_8_bit
 | ) |  |

Set 16bit_Feature.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Init | pointer to a XMC_PCCARDInitType structure
Set_reg_8_bit | choose 8/16bit
Return values
HAL status

Definition at line 180 of file cf.c.

Referenced by Read_Sector(), and Write_Sector().

◆ XMC_Enable_Wait_Feature()

StatusType XMC_Enable_Wait_Feature | ( | xmc_bank4_type * | Device,
 |  | xmc_pccard_init_type * | Init
 | ) |  |

XMC Enable Wait Feature.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Init | pointer to a XMC_PCCARDInitType structure
Return values
STATUS_OK or STATUS_ERROR

Definition at line 166 of file cf.c.

Referenced by Enable_Wait_Feature().

◆ XMC_PCCARD_InitAttributeSpaceTiming()

StatusType XMC_PCCARD_InitAttributeSpaceTiming | ( | xmc_bank4_type * | Device,
 |  | xmc_nand_pccard_timinginit_type * | Timing
 | ) |  |

Init AttributeSpace Timing.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Timing | pointer to a Attribute space timing structure
Return values
HAL status

Definition at line 214 of file cf.c.

Referenced by PCCARD_Init().

◆ XMC_PCCARD_InitCommonSpaceTiming()

StatusType XMC_PCCARD_InitCommonSpaceTiming | ( | xmc_bank4_type * | Device,
 |  | xmc_nand_pccard_timinginit_type * | Timing
 | ) |  |

Init CommonSpace Timing.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Timing | pointer to a Common space timing structure
Return values
HAL status

Definition at line 199 of file cf.c.

Referenced by PCCARD_Init().

◆ XMC_PCCARD_InitCtrl()

StatusType XMC_PCCARD_InitCtrl | ( | xmc_bank4_type * | Device,
 |  | xmc_pccard_init_type * | Init,
 |  | uint8_t | Set_reg_8_bit
 | ) |  |

XMC InitCtrl.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Init | pointer to a XMC_PCCARDInitType structure
Set_reg_8_bit | choose 8/16bit
Return values
STATUS_OK or STATUS_ERROR

Definition at line 143 of file cf.c.

Referenced by PCCARD_Init().

◆ XMC_PCCARD_InitIOSpaceTiming()

StatusType XMC_PCCARD_InitIOSpaceTiming | ( | xmc_bank4_type * | Device,
 |  | xmc_nand_pccard_timinginit_type * | Timing
 | ) |  |

Init IOSpace Timing.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Timing | pointer to a IO space timing structure
Return values
HAL status

Definition at line 229 of file cf.c.

Referenced by PCCARD_Init().


AT32F403 Firmwary Library: Input Output and memory functions

Functions
Input Output and memory functions
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Functions

Input Output and memory control functions. More...

Functions

BOOL | PCCARD_Identify (PCCARD_HandleType *hpccard)
Identify. More...
BOOL | PCCARD_Read_ID (PCCARD_HandleType *hpccard)
Read Compact Flash's ID. More...
BOOL | PCCARD_Read_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Read sector from PCCARD memory. More...
BOOL | PCCARD_Write_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Write sector to PCCARD memory. More...
BOOL | PCCARD_Erase_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count)
Erase sector from PCCARD memory. More...
BOOL | PCCARD_Diagnostic (PCCARD_HandleType *hpccard)
Diagnostic. More...
BOOL | PCCARD_Check_Power_Mode (PCCARD_HandleType *hpccard)
Check Power Mode. More...
BOOL | PCCARD_Idle (PCCARD_HandleType *hpccard, uint32_t Sector_Count)
Set idle. More...
BOOL | PCCARD_Idle_Immediate (PCCARD_HandleType *hpccard)
Idle immediate. More...
BOOL | PCCARD_Set_Sleep_Mode (PCCARD_HandleType *hpccard)
Set sleep mode. More...
BOOL | PCCARD_Standby (PCCARD_HandleType *hpccard)
Set Standby. More...
BOOL | PCCARD_Standby_Immediate (PCCARD_HandleType *hpccard)
Standby Immediate. More...
BOOL | PCCARD_Reuqest_Sense (PCCARD_HandleType *hpccard)
Reuqest Sense the pccard. More...
BOOL | PCCARD_Recalibrate (PCCARD_HandleType *hpccard)
Recalibrate the pccard. More...
BOOL | PCCARD_Init_Drive_Para (PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Init drive para. More...
BOOL | PCCARD_Seek (PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count)
seek pccard More...
BOOL | PCCARD_Format_Track (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
format track More...
BOOL | PCCARD_Read_Verify_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count)
read Verify Sector More...
BOOL | PCCARD_Write_Verify (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Verify More...
BOOL | PCCARD_Set_Multiple_Mode (PCCARD_HandleType *hpccard, uint32_t Sector_Count)
set multiple mode More...
BOOL | PCCARD_Set_Features (PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature)
set features More...
BOOL | PCCARD_Read_Buffer (PCCARD_HandleType *hpccard, uint8_t *pBuffer)
read buffer More...
BOOL | PCCARD_Write_Buffer (PCCARD_HandleType *hpccard, uint8_t *pBuffer)
write buffer More...
BOOL | PCCARD_Translate_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address)
Translate sector. More...
BOOL | PCCARD_Write_Sector_WO_ERASE (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write sector WO_ERASE More...
BOOL | PCCARD_Write_Multiple (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple More...
BOOL | PCCARD_Read_Multiple (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
read Multiple More...
BOOL | PCCARD_Write_Multiple_WO_ERASE (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple WO_ERASE More...
BOOL | PCCARD_Read_Long_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
read long sector More...
BOOL | PCCARD_Write_Long_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
write long sector More...
uint8_t * | Read_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
read sector More...
uint8_t * | Write_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
write sector More...
BOOL | PCCARD_Reset (PCCARD_HandleType *hpccard)
Reset the PCCARD memory. More...
void | Translate_CHSAddr (PCCARD_HandleType *hpccard, uint32_t Start, uint16_t Sector_Count, uint16_t Sector_Limit)
BOOL | ReadCFCardCISInformation (PCCARD_HandleType *hpccard)
Read CIS Information. More...
BOOL | CF_SendCommand (PCCARD_HandleType *hpccard, uint8_t Cmd)
Send command. More...
BOOL | TaskFileRegIsValid (PCCARD_HandleType *hpccard)
Check the PCCARD TaskFileReg valid. More...
BOOL | Vaild_Init_Drive_Para (PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Check the PCCARD info valid. More...
void | show_verification_result (verification_result_struct *result)
printf the verification result. More...
void | PCCARD_IRQHandler (PCCARD_HandleType *hpccard)
This function handles PCCARD device interrupt request. More...
void | PCCARD_ITCallback (PCCARD_HandleType *hpccard)

Detailed Description

Input Output and memory control functions.

  ==============================================================================
                ##### PCCARD Input Output and memory functions #####
  ==============================================================================
  [..]
    This section provides functions allowing to use and control the PCCARD memory

Function Documentation

◆ CF_SendCommand()

BOOL CF_SendCommand | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t | Cmd
 | ) |  |

Send command.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Cmd | the command value
Return values
TRUE or FALSE.

Definition at line 2301 of file cf.c.

Referenced by PCCARD_Check_Power_Mode(), PCCARD_Diagnostic(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Identify(), PCCARD_Idle(), PCCARD_Idle_Immediate(), PCCARD_Init_Drive_Para(), PCCARD_Read_Buffer(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Recalibrate(), PCCARD_Reuqest_Sense(), PCCARD_Seek(), PCCARD_Set_Features(), PCCARD_Set_Multiple_Mode(), PCCARD_Set_Sleep_Mode(), PCCARD_Standby(), PCCARD_Standby_Immediate(), PCCARD_Translate_Sector(), PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), and PCCARD_Write_Verify().

◆ PCCARD_Check_Power_Mode()

BOOL PCCARD_Check_Power_Mode ( PCCARD_HandleType * hpccard )

Check Power Mode.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 825 of file cf.c.

Referenced by PCCARD_Idle(), PCCARD_Idle_Immediate(), PCCARD_Set_Sleep_Mode(), PCCARD_Standby(), and PCCARD_Standby_Immediate().

◆ PCCARD_Diagnostic()

BOOL PCCARD_Diagnostic ( PCCARD_HandleType * hpccard )

Diagnostic.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 796 of file cf.c.

Referenced by main().

◆ PCCARD_Erase_Sector()

BOOL PCCARD_Erase_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

Erase sector from PCCARD memory.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Address | Sector address to erase
Return values
HAL status

Definition at line 749 of file cf.c.

Referenced by main().

◆ PCCARD_Format_Track()

BOOL PCCARD_Format_Track | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

format track

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Sector_Address | the sector addr
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1176 of file cf.c.

◆ PCCARD_Identify()

BOOL PCCARD_Identify ( PCCARD_HandleType * hpccard )

Identify.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 444 of file cf.c.

Referenced by PCCARD_Read_ID(), and Vaild_Init_Drive_Para().

◆ PCCARD_Idle()

BOOL PCCARD_Idle | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Count
 | ) |  |

Set idle.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 857 of file cf.c.

◆ PCCARD_Idle_Immediate()

BOOL PCCARD_Idle_Immediate ( PCCARD_HandleType * hpccard )

Idle immediate.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 896 of file cf.c.

◆ PCCARD_Init_Drive_Para()

BOOL PCCARD_Init_Drive_Para | ( | PCCARD_HandleType * | hpccard,
 |  | uint16_t | Sector_Count,
 |  | uint8_t | Head_Count
 | ) |  |

Init drive para.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Count | the sector count
Head_Count | the head count.
Return values
TRUE or FALSE.

Definition at line 1110 of file cf.c.

Referenced by main().

◆ PCCARD_IRQHandler()

void PCCARD_IRQHandler ( PCCARD_HandleType * hpccard )

This function handles PCCARD device interrupt request.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
HAL status

Definition at line 2434 of file cf.c.

◆ PCCARD_ITCallback()

void PCCARD_ITCallback ( PCCARD_HandleType * hpccard )

◆ PCCARD_Read_Buffer()

BOOL PCCARD_Read_Buffer | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer
 | ) |  |

read buffer

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Return values
TRUE or FALSE.

Definition at line 1465 of file cf.c.

Referenced by main().

◆ PCCARD_Read_ID()

BOOL PCCARD_Read_ID ( PCCARD_HandleType * hpccard )

Read Compact Flash's ID.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
CompactFlash_ID | Compact flash ID structure.
Return values
HAL status

Definition at line 468 of file cf.c.

Referenced by main().

◆ PCCARD_Read_Long_Sector()

BOOL PCCARD_Read_Long_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Address,
 |  | uint8_t * | pBuffer
 | ) |  |

read long sector

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Address | the sector addr
pBuffer | pointer to the data buffer.
Return values
TRUE or FALSE.

Definition at line 1909 of file cf.c.

◆ PCCARD_Read_Multiple()

BOOL PCCARD_Read_Multiple | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

read Multiple

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Sector_Address | the sector addr
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1748 of file cf.c.

Referenced by main().

◆ PCCARD_Read_Sector()

BOOL PCCARD_Read_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

Read sector from PCCARD memory.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to destination read buffer
Sector_Address | Sector address to read
Return values
HAL status

Definition at line 583 of file cf.c.

Referenced by main().

◆ PCCARD_Read_Verify_Sector()

BOOL PCCARD_Read_Verify_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Address,
 |  | uint16_t | Sector_Count
 | ) |  |

read Verify Sector

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Address | the sector addr
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1256 of file cf.c.

Referenced by main().

◆ PCCARD_Recalibrate()

BOOL PCCARD_Recalibrate ( PCCARD_HandleType * hpccard )

Recalibrate the pccard.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 1078 of file cf.c.

Referenced by main().

◆ PCCARD_Reset()

BOOL PCCARD_Reset ( PCCARD_HandleType * hpccard )

Reset the PCCARD memory.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
HAL status

< XMC base address

< XMC Bank4 base address

< XMC base address

< XMC Bank4 base address

< XMC base address

< XMC Bank4 base address

< XMC base address

< XMC Bank4 base address

Definition at line 2205 of file cf.c.

Referenced by main().

◆ PCCARD_Reuqest_Sense()

BOOL PCCARD_Reuqest_Sense ( PCCARD_HandleType * hpccard )

Reuqest Sense the pccard.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 1048 of file cf.c.

◆ PCCARD_Seek()

BOOL PCCARD_Seek | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t | Head_Count,
 |  | uint16_t | Cylinder_Count
 | ) |  |

seek pccard

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Head_Count | the head count.
Cylinder_Count | the cylinder count
Return values
TRUE or FALSE.

Definition at line 1137 of file cf.c.

Referenced by main().

◆ PCCARD_Set_Features()

BOOL PCCARD_Set_Features | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Count,
 |  | uint8_t | Feature
 | ) |  |

set features

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Count | the sector count
Feature | Feature val
Return values
TRUE or FALSE.

Definition at line 1443 of file cf.c.

Referenced by main().

◆ PCCARD_Set_Multiple_Mode()

BOOL PCCARD_Set_Multiple_Mode | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Count
 | ) |  |

set multiple mode

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1421 of file cf.c.

Referenced by main().

◆ PCCARD_Set_Sleep_Mode()

BOOL PCCARD_Set_Sleep_Mode ( PCCARD_HandleType * hpccard )

Set sleep mode.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 934 of file cf.c.

◆ PCCARD_Standby()

BOOL PCCARD_Standby ( PCCARD_HandleType * hpccard )

Set Standby.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 972 of file cf.c.

◆ PCCARD_Standby_Immediate()

BOOL PCCARD_Standby_Immediate ( PCCARD_HandleType * hpccard )

Standby Immediate.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 1010 of file cf.c.

◆ PCCARD_Translate_Sector()

BOOL PCCARD_Translate_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Address
 | ) |  |

Translate sector.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Address | the sector addr
Return values
TRUE or FALSE.

Definition at line 1551 of file cf.c.

Referenced by main().

◆ PCCARD_Write_Buffer()

BOOL PCCARD_Write_Buffer | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer
 | ) |  |

write buffer

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Return values
TRUE or FALSE.

Definition at line 1508 of file cf.c.

Referenced by main().

◆ PCCARD_Write_Long_Sector()

BOOL PCCARD_Write_Long_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Sector_Address,
 |  | uint8_t * | pBuffer
 | ) |  |

write long sector

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Address | the sector addr
pBuffer | pointer to the data buffer.
Return values
TRUE or FALSE.

Definition at line 1999 of file cf.c.

◆ PCCARD_Write_Multiple()

BOOL PCCARD_Write_Multiple | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

write Multiple

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Sector_Address | the sector addr
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1667 of file cf.c.

Referenced by main().

◆ PCCARD_Write_Multiple_WO_ERASE()

BOOL PCCARD_Write_Multiple_WO_ERASE | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

write Multiple WO_ERASE

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Sector_Address | the sector addr
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1829 of file cf.c.

Referenced by main().

◆ PCCARD_Write_Sector()

BOOL PCCARD_Write_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

Write sector to PCCARD memory.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to source write buffer
Sector_Address | Sector address to write
Return values
HAL status

Definition at line 666 of file cf.c.

Referenced by main().

◆ PCCARD_Write_Sector_WO_ERASE()

BOOL PCCARD_Write_Sector_WO_ERASE | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

write sector WO_ERASE

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Sector_Address | the sector addr
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1586 of file cf.c.

Referenced by main().

◆ PCCARD_Write_Verify()

BOOL PCCARD_Write_Verify | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Sector_Address,
 |  | uint32_t | Sector_Count
 | ) |  |

write Verify

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Sector_Address | the sector addr
Sector_Count | the sector count
Return values
TRUE or FALSE.

Definition at line 1342 of file cf.c.

Referenced by main().

◆ Read_Sector()

uint8_t * Read_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Transfer_Size
 | ) |  |

read sector

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Transfer_Size | the data length.
Return values
pointer to the data buffer after read.

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 2088 of file cf.c.

Referenced by PCCARD_Read_Buffer(), PCCARD_Read_ID(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), and Vaild_Init_Drive_Para().

◆ ReadCFCardCISInformation()

BOOL ReadCFCardCISInformation ( PCCARD_HandleType * hpccard )

Read CIS Information.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

< XMC base address

< XMC Bank4 base address

< XMC base address

< XMC Bank4 base address

< XMC base address

< XMC Bank4 base address

Definition at line 2276 of file cf.c.

Referenced by main().

◆ show_verification_result()

void show_verification_result ( verification_result_struct * result )

printf the verification result.

Parameters
result pointer to a verification_result structure that contains various kinds of verification.
Return values
None.

Definition at line 2412 of file cf.c.

Referenced by main().

◆ TaskFileRegIsValid()

BOOL TaskFileRegIsValid ( PCCARD_HandleType * hpccard )

Check the PCCARD TaskFileReg valid.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
TRUE or FALSE.

Definition at line 2328 of file cf.c.

Referenced by CF_SendCommand(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Read_Buffer(), PCCARD_Read_ID(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Vaild_Init_Drive_Para().

◆ Translate_CHSAddr()

void Translate_CHSAddr | ( | PCCARD_HandleType * | hpccard,
 |  | uint32_t | Start,
 |  | uint16_t | Sector_Count,
 |  | uint16_t | Sector_Limit
 | ) |  |

Translate_CHSAddr: translate DISK sector number to C.H.S address. input : CFCard Start (Start sector number) Sector_Count (sector count which read from CF card) Sector_Limit (maximum sector number) output : None

Definition at line 2247 of file cf.c.

Referenced by PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), and PCCARD_Write_Verify().

◆ Vaild_Init_Drive_Para()

BOOL Vaild_Init_Drive_Para | ( | PCCARD_HandleType * | hpccard,
 |  | uint16_t | Sector_Count,
 |  | uint8_t | Head_Count
 | ) |  |

Check the PCCARD info valid.

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Sector_Count | sector count
Head_Count:head | count
Return values
TRUE or FALSE.

Definition at line 2349 of file cf.c.

Referenced by main().

◆ Write_Sector()

uint8_t * Write_Sector | ( | PCCARD_HandleType * | hpccard,
 |  | uint8_t * | pBuffer,
 |  | uint32_t | Transfer_Size
 | ) |  |

write sector

Parameters
hpccard | pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
pBuffer | pointer to the data buffer.
Transfer_Size | the data length.
Return values
pointer to the data buffer after write.

< dma1 channel1 full data transfer flag

< dma1 channel1 full data transfer flag

Definition at line 2147 of file cf.c.

Referenced by PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), and PCCARD_Write_Verify().


AT32F403 Firmwary Library: Peripheral State functions

Macros | Functions
Peripheral State functions
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Functions

Peripheral State functions. More...

Macros

#define | __XMC_PCCARD_GET_FLAG(__INSTANCE__, __FLAG__) (((__INSTANCE__)->BK4STS &(__FLAG__)) == (__FLAG__))
#define | __XMC_PCCARD_CLEAR_FLAG(__INSTANCE__, __FLAG__) BIT_CLEAR((__INSTANCE__)->BK4STS, (__FLAG__))
#define | XMC_BKxCTRL_DEV_PCCARD ((uint32_t)0x00000000)
#define | BKxTMGMEM_CLEAR_MASK
#define | BKxTMGATT_CLEAR_MASK
#define | BK4TMGIO_CLEAR_MASK

Functions

PCCARD_StateType | PCCARD_GetState (PCCARD_HandleType *hpccard)
return the PCCARD controller state More...
uint8_t | PCCARD_Read_ERROR_REG (PCCARD_HandleType *hpccard)
Get the PCCARD error reg value. More...
uint8_t | PCCARD_Read_STATUS_REG (PCCARD_HandleType *hpccard)
Get the PCCARD status reg value. More...
void | XMC_IRQHandler (void)
StatusType | XMC_PCCARD_InitCtrl (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
XMC InitCtrl. More...
StatusType | XMC_Enable_Wait_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init)
XMC Enable Wait Feature. More...
StatusType | XMC_Enable_16bit_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
Set 16bit_Feature. More...
StatusType | XMC_PCCARD_InitCommonSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init CommonSpace Timing. More...
StatusType | XMC_PCCARD_InitAttributeSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init AttributeSpace Timing. More...
StatusType | XMC_PCCARD_InitIOSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init IOSpace Timing. More...

Detailed Description

Peripheral State functions.

  ==============================================================================
                   ##### PCCARD Peripheral State functions #####
  ==============================================================================
  [..]
    This subsection permits to get in run-time the status of the PCCARD controller
    and the data flow.

Macro Definition Documentation

◆ __XMC_PCCARD_CLEAR_FLAG

#define __XMC_PCCARD_CLEAR_FLAG | ( | __INSTANCE__,
 |  | __FLAG__
 | ) | BIT_CLEAR((__INSTANCE__)->BK4STS, (__FLAG__))

Definition at line 454 of file cf.h.

◆ __XMC_PCCARD_GET_FLAG

#define __XMC_PCCARD_GET_FLAG | ( | __INSTANCE__,
 |  | __FLAG__
 | ) | (((__INSTANCE__)->BK4STS &(__FLAG__)) == (__FLAG__))

Definition at line 453 of file cf.h.

◆ BK4TMGIO_CLEAR_MASK

#define BK4TMGIO_CLEAR_MASK
Value:
((uint32_t)(XMC_BK4TMGIO_STP | XMC_BK4TMGIO_OP | \
XMC_BK4TMGIO_HLD | XMC_BK4TMGIO_WRSTP))

Definition at line 471 of file cf.h.

◆ BKxTMGATT_CLEAR_MASK

#define BKxTMGATT_CLEAR_MASK
Value:
((uint32_t)(XMC_BK4TMGATT_STP | XMC_BK4TMGATT_OP |\
XMC_BK4TMGATT_HLD | XMC_BK4TMGATT_WRSTP))

Definition at line 468 of file cf.h.

◆ BKxTMGMEM_CLEAR_MASK

#define BKxTMGMEM_CLEAR_MASK
Value:
((uint32_t)(XMC_BK4TMGMEM_STP | XMC_BK4TMGMEM_OP |\
XMC_BK4TMGMEM_HLD | XMC_BK4TMGMEM_WRSTP))

Definition at line 465 of file cf.h.

◆ XMC_BKxCTRL_DEV_PCCARD

#define XMC_BKxCTRL_DEV_PCCARD ((uint32_t)0x00000000)

Definition at line 464 of file cf.h.

Function Documentation

◆ PCCARD_GetState()

PCCARD_StateType PCCARD_GetState ( PCCARD_HandleType * hpccard )

return the PCCARD controller state

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
HAL state

Definition at line 2464 of file cf.c.

◆ PCCARD_Read_ERROR_REG()

uint8_t PCCARD_Read_ERROR_REG ( PCCARD_HandleType * hpccard )

Get the PCCARD error reg value.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
reg error reg value.

Definition at line 2474 of file cf.c.

Referenced by main(), PCCARD_Diagnostic(), PCCARD_Read_ID(), PCCARD_Recalibrate(), PCCARD_Reuqest_Sense(), PCCARD_Seek(), and Vaild_Init_Drive_Para().

◆ PCCARD_Read_STATUS_REG()

uint8_t PCCARD_Read_STATUS_REG ( PCCARD_HandleType * hpccard )

Get the PCCARD status reg value.

Parameters
hpccard pointer to a PCCARD_HandleType structure that contains the configuration information for PCCARD module.
Return values
reg status reg value.

Definition at line 2489 of file cf.c.

Referenced by CF_SendCommand(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Read_Buffer(), PCCARD_Read_ID(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), TaskFileRegIsValid(), and Vaild_Init_Drive_Para().

◆ XMC_Enable_16bit_Feature()

StatusType XMC_Enable_16bit_Feature | ( | xmc_bank4_type * | Device,
 |  | xmc_pccard_init_type * | Init,
 |  | uint8_t | Set_reg_8_bit
 | ) |  |

Set 16bit_Feature.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Init | pointer to a XMC_PCCARDInitType structure
Set_reg_8_bit | choose 8/16bit
Return values
HAL status

Definition at line 180 of file cf.c.

Referenced by Read_Sector(), and Write_Sector().

◆ XMC_Enable_Wait_Feature()

StatusType XMC_Enable_Wait_Feature | ( | xmc_bank4_type * | Device,
 |  | xmc_pccard_init_type * | Init
 | ) |  |

XMC Enable Wait Feature.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Init | pointer to a XMC_PCCARDInitType structure
Return values
STATUS_OK or STATUS_ERROR

Definition at line 166 of file cf.c.

Referenced by Enable_Wait_Feature().

◆ XMC_IRQHandler()

void XMC_IRQHandler ( void )

Definition at line 2501 of file cf.c.

◆ XMC_PCCARD_InitAttributeSpaceTiming()

StatusType XMC_PCCARD_InitAttributeSpaceTiming | ( | xmc_bank4_type * | Device,
 |  | xmc_nand_pccard_timinginit_type * | Timing
 | ) |  |

Init AttributeSpace Timing.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Timing | pointer to a Attribute space timing structure
Return values
HAL status

Definition at line 214 of file cf.c.

Referenced by PCCARD_Init().

◆ XMC_PCCARD_InitCommonSpaceTiming()

StatusType XMC_PCCARD_InitCommonSpaceTiming | ( | xmc_bank4_type * | Device,
 |  | xmc_nand_pccard_timinginit_type * | Timing
 | ) |  |

Init CommonSpace Timing.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Timing | pointer to a Common space timing structure
Return values
HAL status

Definition at line 199 of file cf.c.

Referenced by PCCARD_Init().

◆ XMC_PCCARD_InitCtrl()

StatusType XMC_PCCARD_InitCtrl | ( | xmc_bank4_type * | Device,
 |  | xmc_pccard_init_type * | Init,
 |  | uint8_t | Set_reg_8_bit
 | ) |  |

XMC InitCtrl.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Init | pointer to a XMC_PCCARDInitType structure
Set_reg_8_bit | choose 8/16bit
Return values
STATUS_OK or STATUS_ERROR

Definition at line 143 of file cf.c.

Referenced by PCCARD_Init().

◆ XMC_PCCARD_InitIOSpaceTiming()

StatusType XMC_PCCARD_InitIOSpaceTiming | ( | xmc_bank4_type * | Device,
 |  | xmc_nand_pccard_timinginit_type * | Timing
 | ) |  |

Init IOSpace Timing.

Parameters
Device | pointer to a XMC_Bank4_Type structure
Timing | pointer to a IO space timing structure
Return values
HAL status

Definition at line 229 of file cf.c.

Referenced by PCCARD_Init().


AT32F403 Firmwary Library: PCCARD Exported Constant

Macros
PCCARD Exported Constant
AT32F403_periph_examples » XMC_CF_CARD

Macros

#define | FALSE 0
#define | TRUE 1
#define | XMC_BASE ((uint32_t)0x60000000)
#define | XMC_BANK4_ (XMC_BASE + 0x30000000)
#define | PCCARD_DEVICE_ADDRESS XMC_BANK4_ /* 0x9000 0000 */
#define | PCCARD_COMMON_SPACE_ADDRESS PCCARD_DEVICE_ADDRESS /* Common space size to @0x93FF FFFF */
#define | PCCARD_ATTRIBUTE_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x08000000)) /* Attribute space size to @0x9BFF FFFF */
#define | PCCARD_IO_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x0C000000)) /* IO space size to @0x9FFF FFFF */
#define | PCCARD_IO_SPACE_PRIMARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x1F0)) /* IO space size to @0x9FFF FFFF */
#define | PCCARD_IO_SPACE_SECONDARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x170)) /* IO space size to @0x9FFF FFFF */
#define | ATA_DATA ((uint8_t)0x00) /* Data register */
#define | ATA_ERROR_REG ((uint8_t)0x01) /* Error register */
#define | ATA_FEATURE_REG ((uint8_t)0x01) /* Feature register */
#define | ATA_SECTOR_COUNT ((uint8_t)0x02) /* Sector Count register */
#define | ATA_SECTOR_NUMBER ((uint8_t)0x03) /* Sector Number register */
#define | ATA_CYLINDER_LOW ((uint8_t)0x04) /* Cylinder low register */
#define | ATA_CYLINDER_HIGH ((uint8_t)0x05) /* Cylinder high register */
#define | ATA_CARD_HEAD ((uint8_t)0x06) /* Card/Head register */
#define | ATA_STATUS_CMD ((uint8_t)0x07) /* Status(read)/Command(write) register */
#define | ATA_STATUS_CMD_ALTERNATE ((uint8_t)0x0E) /* Alternate Status(read)/Command(write) register */
#define | ATA_COMMON_DATA_AREA ((uint16_t)0x0400) /* Start of data area (for Common access only!) */
#define | ATTRIBUTE_MEM_BASE 0
#define | ATTRIBUTE_MEM_CONFIG_BASE 0x200
#define | CONFIG_OPTION_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x00
#define | CARD_CONFIG_STATUS_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x02
#define | PIN_REPLACE_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x04
#define | SOCKET_COPY_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x06
#define | CONF0_BIT 0x01
#define | CONF1_BIT 0x02
#define | CONF2_BIT 0x04
#define | CONF3_BIT 0x08
#define | CONF4_BIT 0x10
#define | CONF5_BIT 0x20
#define | LEVLREQ_BIT 0x40
#define | SRESET_BIT 0x80
#define | CF_MEM_MAP_MODE 0x00
#define | CF_IO_16_MODE 0x01
#define | CF_IO_PRICH_MODE 0x02
#define | CF_IO_SECCH_MODE 0x03
#define | ATA_CHECK_POWER_MODE_CMD ((uint8_t)0xE5)
#define | ATA_EXECUTE_DRIVE_DIAG_CMD ((uint8_t)0x90)
#define | ATA_ERASE_SECTOR_CMD ((uint8_t)0xC0)
#define | ATA_FORMAT_TRACK_CMD ((uint8_t)0x50)
#define | ATA_IDENTIFY_DRIVE_CMD ((uint8_t)0xEC)
#define | ATA_IDLE_CMD ((uint8_t)0xE3)
#define | ATA_IDLE_IMMEDIATE_CMD ((uint8_t)0xE1)
#define | ATA_INIT_DRIVE_PARA_CMD ((uint8_t)0x91)
#define | ATA_READ_BUFFER_CMD ((uint8_t)0xE4)
#define | ATA_READ_LONG_SECTOR_CMD ((uint8_t)0x22)
#define | ATA_READ_MULTIPLE_CMD ((uint8_t)0xC4)
#define | ATA_READ_SECTOR_CMD ((uint8_t)0x20)
#define | ATA_READ_VERIFY_SECTOR_CMD ((uint8_t)0x40)
#define | ATA_RECALIBRATE_CMD ((uint8_t)0x10)
#define | ATA_REQUEST_SENSE_CMD ((uint8_t)0x03)
#define | ATA_SECURITY_DISABLE_PASSWORD_CMD ((uint8_t)0xF6)
#define | ATA_SECURITY_EREASE_PREPARE_CMD ((uint8_t)0xF3)
#define | ATA_SECURITY_ERASE_UNIT_CMD ((uint8_t)0xF4)
#define | ATA_SECURITY_FREEZE_LOCK_CMD ((uint8_t)0xF5)
#define | ATA_SECURITY_SET_PASSWORD_CMD ((uint8_t)0xF1)
#define | ATA_SECURITY_UNLOCK_CMD ((uint8_t)0xF2)
#define | ATA_SEEK_CMD ((uint8_t)0x70)
#define | ATA_SET_FEATURE_CMD ((uint8_t)0xEF)
#define | ATA_SET_MULTIPLE_MODE_CMD ((uint8_t)0xC6)
#define | ATA_SET_SLEEP_MODE_CMD ((uint8_t)0xE6)
#define | ATA_STANDBY_CMD ((uint8_t)0xE2)
#define | ATA_STANDBY_IMMEDIATE_CMD ((uint8_t)0xE0)
#define | ATA_TRANSLATE_SECTOR_CMD ((uint8_t)0x87)
#define | ATA_WEAR_LEVEL_CMD ((uint8_t)0xF5)
#define | ATA_WRITE_BUFFER_CMD ((uint8_t)0xE8)
#define | ATA_WRITE_LONG_SECTOR_CMD ((uint8_t)0x32)
#define | ATA_WRITE_MULTIPLE_CMD ((uint8_t)0xC5)
#define | ATA_WRITE_MULTIPLE_WO_ERASE_CMD ((uint8_t)0xCD)
#define | ATA_WRITE_SECTOR_CMD ((uint8_t)0x30)
#define | ATA_WRITE_SECTOR_WO_ERASE_CMD ((uint8_t)0x38)
#define | ATA_WRITE_VERIFY_CMD ((uint8_t)0x3C)
#define | ENABLE_8BIT_MODE 0x01
#define | ENABLE_PWR_LV1 0x0a
#define | DISABLE_READ_LOOK_AHEAD 0x55
#define | DISABLE_POR 0x66
#define | NOP 0x69
#define | DISABLE_8BIT_MODE 0x81
#define | DISABLE_PWR_LV1 0x8a
#define | SET_HOST_CUR_SOURCE_CAP 0x9a
#define | APPLY_4BYTE_DATA_RW_LONG_CMD 0xbb
#define | ENABLE_POR 0xcc
#define | BUSY_BIT 0x80
#define | RDY_BIT 0x40
#define | DWF_BIT 0x20
#define | DSC_BIT 0x10
#define | DRQ_BIT 0x08
#define | CORR_BIT 0x04
#define | ERR_BIT 0x01
#define | BBK_BIT 0x80
#define | UNC_BIT 0x40
#define | IDNF_BIT 0x10
#define | ABRT_BIT 0x04
#define | AMNF_BIT 0x01
#define | PCCARD_TIMEOUT_ERROR ((uint8_t)0x60)
#define | PCCARD_BUSY ((uint8_t)0x80)
#define | PCCARD_PROGR ((uint8_t)0x01)
#define | PCCARD_READY ((uint8_t)0x40)
#define | PCCARD_SECTOR_SIZE ((uint32_t)512)
#define | PCCARD_LONG_SECTOR_SIZE ((uint32_t)516)
#define | PCCARD_25_SECTORS_SIZES ((uint32_t)(512*25))
#define | CISTPL_DEVICE 0x01
#define | CISTPL_DEVICE_OC 0x1c
#define | CISTPL_JEDEC_C 0x18
#define | CISTPL_MANFID 0x20
#define | CISTPL_VERS_1 0x15
#define | CISTPL_FUNCID 0x21
#define | CISTPL_FUNCE 0x22
#define | CISTPL_CONFIG 0x1a
#define | CISTPL_CFTABLE_ENTRY 0x1b
#define | CISTPL_NO_LINK 0x14
#define | CISTPL_END 0xff
#define | TPL_LINK_LOC 16
#define | MAX_CIS_LEN 0x200
#define | CF_DEVICE_ADDRESS PCCARD_DEVICE_ADDRESS
#define | CF_ATTRIBUTE_SPACE_ADDRESS PCCARD_ATTRIBUTE_SPACE_ADDRESS
#define | CF_COMMON_SPACE_ADDRESS PCCARD_COMMON_SPACE_ADDRESS
#define | CF_IO_SPACE_ADDRESS PCCARD_IO_SPACE_ADDRESS
#define | CF_IO_SPACE_PRIMARY_ADDR PCCARD_IO_SPACE_PRIMARY_ADDR
#define | CF_TIMEOUT_ERROR PCCARD_TIMEOUT_ERROR
#define | CF_BUSY PCCARD_BUSY
#define | CF_PROGR PCCARD_PROGR
#define | CF_READY PCCARD_READY
#define | CF_SECTOR_SIZE PCCARD_SECTOR_SIZE
#define | Read_Transfer 1
#define | Write_Transfer 0
#define | Enable_8_bit_Transfer 1
#define | Enable_16_bit_Transfer 0
#define | CF_print(cond, _x_)
#define | ERR_REG_INFO 0
#define | STS_REG_INFO 0
#define | PRT_INIT_INFO 1
#define | PRT_CMD_INFO 0
#define | PRT_ERR_INFO 0

Detailed Description

Macro Definition Documentation

◆ ABRT_BIT

#define ABRT_BIT 0x04

Definition at line 162 of file cf.h.

◆ AMNF_BIT

#define AMNF_BIT 0x01

Definition at line 163 of file cf.h.

◆ APPLY_4BYTE_DATA_RW_LONG_CMD

#define APPLY_4BYTE_DATA_RW_LONG_CMD 0xbb

Definition at line 146 of file cf.h.

◆ ATA_CARD_HEAD

#define ATA_CARD_HEAD ((uint8_t)0x06) /* Card/Head register */

Definition at line 67 of file cf.h.

◆ ATA_CHECK_POWER_MODE_CMD

#define ATA_CHECK_POWER_MODE_CMD ((uint8_t)0xE5)

Definition at line 100 of file cf.h.

◆ ATA_COMMON_DATA_AREA

#define ATA_COMMON_DATA_AREA ((uint16_t)0x0400) /* Start of data area (for Common access only!) */

Definition at line 70 of file cf.h.

◆ ATA_CYLINDER_HIGH

#define ATA_CYLINDER_HIGH ((uint8_t)0x05) /* Cylinder high register */

Definition at line 66 of file cf.h.

◆ ATA_CYLINDER_LOW

#define ATA_CYLINDER_LOW ((uint8_t)0x04) /* Cylinder low register */

Definition at line 65 of file cf.h.

◆ ATA_DATA

#define ATA_DATA ((uint8_t)0x00) /* Data register */

Definition at line 60 of file cf.h.

◆ ATA_ERASE_SECTOR_CMD

#define ATA_ERASE_SECTOR_CMD ((uint8_t)0xC0)

Definition at line 102 of file cf.h.

◆ ATA_ERROR_REG

#define ATA_ERROR_REG ((uint8_t)0x01) /* Error register */

Definition at line 61 of file cf.h.

◆ ATA_EXECUTE_DRIVE_DIAG_CMD

#define ATA_EXECUTE_DRIVE_DIAG_CMD ((uint8_t)0x90)

Definition at line 101 of file cf.h.

◆ ATA_FEATURE_REG

#define ATA_FEATURE_REG ((uint8_t)0x01) /* Feature register */

Definition at line 62 of file cf.h.

◆ ATA_FORMAT_TRACK_CMD

#define ATA_FORMAT_TRACK_CMD ((uint8_t)0x50)

Definition at line 103 of file cf.h.

◆ ATA_IDENTIFY_DRIVE_CMD

#define ATA_IDENTIFY_DRIVE_CMD ((uint8_t)0xEC)

Definition at line 104 of file cf.h.

◆ ATA_IDLE_CMD

#define ATA_IDLE_CMD ((uint8_t)0xE3)

Definition at line 105 of file cf.h.

◆ ATA_IDLE_IMMEDIATE_CMD

#define ATA_IDLE_IMMEDIATE_CMD ((uint8_t)0xE1)

Definition at line 106 of file cf.h.

◆ ATA_INIT_DRIVE_PARA_CMD

#define ATA_INIT_DRIVE_PARA_CMD ((uint8_t)0x91)

Definition at line 107 of file cf.h.

◆ ATA_READ_BUFFER_CMD

#define ATA_READ_BUFFER_CMD ((uint8_t)0xE4)

Definition at line 108 of file cf.h.

◆ ATA_READ_LONG_SECTOR_CMD

#define ATA_READ_LONG_SECTOR_CMD ((uint8_t)0x22)

Definition at line 109 of file cf.h.

◆ ATA_READ_MULTIPLE_CMD

#define ATA_READ_MULTIPLE_CMD ((uint8_t)0xC4)

Definition at line 110 of file cf.h.

◆ ATA_READ_SECTOR_CMD

#define ATA_READ_SECTOR_CMD ((uint8_t)0x20)

Definition at line 111 of file cf.h.

◆ ATA_READ_VERIFY_SECTOR_CMD

#define ATA_READ_VERIFY_SECTOR_CMD ((uint8_t)0x40)

Definition at line 112 of file cf.h.

◆ ATA_RECALIBRATE_CMD

#define ATA_RECALIBRATE_CMD ((uint8_t)0x10)

Definition at line 113 of file cf.h.

◆ ATA_REQUEST_SENSE_CMD

#define ATA_REQUEST_SENSE_CMD ((uint8_t)0x03)

Definition at line 114 of file cf.h.

◆ ATA_SECTOR_COUNT

#define ATA_SECTOR_COUNT ((uint8_t)0x02) /* Sector Count register */

Definition at line 63 of file cf.h.

◆ ATA_SECTOR_NUMBER

#define ATA_SECTOR_NUMBER ((uint8_t)0x03) /* Sector Number register */

Definition at line 64 of file cf.h.

◆ ATA_SECURITY_DISABLE_PASSWORD_CMD

#define ATA_SECURITY_DISABLE_PASSWORD_CMD ((uint8_t)0xF6)

Definition at line 115 of file cf.h.

◆ ATA_SECURITY_ERASE_UNIT_CMD

#define ATA_SECURITY_ERASE_UNIT_CMD ((uint8_t)0xF4)

Definition at line 117 of file cf.h.

◆ ATA_SECURITY_EREASE_PREPARE_CMD

#define ATA_SECURITY_EREASE_PREPARE_CMD ((uint8_t)0xF3)

Definition at line 116 of file cf.h.

◆ ATA_SECURITY_FREEZE_LOCK_CMD

#define ATA_SECURITY_FREEZE_LOCK_CMD ((uint8_t)0xF5)

Definition at line 118 of file cf.h.

◆ ATA_SECURITY_SET_PASSWORD_CMD

#define ATA_SECURITY_SET_PASSWORD_CMD ((uint8_t)0xF1)

Definition at line 119 of file cf.h.

◆ ATA_SECURITY_UNLOCK_CMD

#define ATA_SECURITY_UNLOCK_CMD ((uint8_t)0xF2)

Definition at line 120 of file cf.h.

◆ ATA_SEEK_CMD

#define ATA_SEEK_CMD ((uint8_t)0x70)

Definition at line 121 of file cf.h.

◆ ATA_SET_FEATURE_CMD

#define ATA_SET_FEATURE_CMD ((uint8_t)0xEF)

Definition at line 122 of file cf.h.

◆ ATA_SET_MULTIPLE_MODE_CMD

#define ATA_SET_MULTIPLE_MODE_CMD ((uint8_t)0xC6)

Definition at line 123 of file cf.h.

◆ ATA_SET_SLEEP_MODE_CMD

#define ATA_SET_SLEEP_MODE_CMD ((uint8_t)0xE6)

Definition at line 124 of file cf.h.

◆ ATA_STANDBY_CMD

#define ATA_STANDBY_CMD ((uint8_t)0xE2)

Definition at line 125 of file cf.h.

◆ ATA_STANDBY_IMMEDIATE_CMD

#define ATA_STANDBY_IMMEDIATE_CMD ((uint8_t)0xE0)

Definition at line 126 of file cf.h.

◆ ATA_STATUS_CMD

#define ATA_STATUS_CMD ((uint8_t)0x07) /* Status(read)/Command(write) register */

Definition at line 68 of file cf.h.

◆ ATA_STATUS_CMD_ALTERNATE

#define ATA_STATUS_CMD_ALTERNATE ((uint8_t)0x0E) /* Alternate Status(read)/Command(write) register */

Definition at line 69 of file cf.h.

◆ ATA_TRANSLATE_SECTOR_CMD

#define ATA_TRANSLATE_SECTOR_CMD ((uint8_t)0x87)

Definition at line 127 of file cf.h.

◆ ATA_WEAR_LEVEL_CMD

#define ATA_WEAR_LEVEL_CMD ((uint8_t)0xF5)

Definition at line 128 of file cf.h.

◆ ATA_WRITE_BUFFER_CMD

#define ATA_WRITE_BUFFER_CMD ((uint8_t)0xE8)

Definition at line 129 of file cf.h.

◆ ATA_WRITE_LONG_SECTOR_CMD

#define ATA_WRITE_LONG_SECTOR_CMD ((uint8_t)0x32)

Definition at line 130 of file cf.h.

◆ ATA_WRITE_MULTIPLE_CMD

#define ATA_WRITE_MULTIPLE_CMD ((uint8_t)0xC5)

Definition at line 131 of file cf.h.

◆ ATA_WRITE_MULTIPLE_WO_ERASE_CMD

#define ATA_WRITE_MULTIPLE_WO_ERASE_CMD ((uint8_t)0xCD)

Definition at line 132 of file cf.h.

◆ ATA_WRITE_SECTOR_CMD

#define ATA_WRITE_SECTOR_CMD ((uint8_t)0x30)

Definition at line 133 of file cf.h.

◆ ATA_WRITE_SECTOR_WO_ERASE_CMD

#define ATA_WRITE_SECTOR_WO_ERASE_CMD ((uint8_t)0x38)

Definition at line 134 of file cf.h.

◆ ATA_WRITE_VERIFY_CMD

#define ATA_WRITE_VERIFY_CMD ((uint8_t)0x3C)

Definition at line 135 of file cf.h.

◆ ATTRIBUTE_MEM_BASE

#define ATTRIBUTE_MEM_BASE 0

Definition at line 76 of file cf.h.

◆ ATTRIBUTE_MEM_CONFIG_BASE

#define ATTRIBUTE_MEM_CONFIG_BASE 0x200

Definition at line 77 of file cf.h.

◆ BBK_BIT

#define BBK_BIT 0x80

Definition at line 159 of file cf.h.

◆ BUSY_BIT

#define BUSY_BIT 0x80

Definition at line 150 of file cf.h.

◆ CARD_CONFIG_STATUS_REG

#define CARD_CONFIG_STATUS_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x02

Definition at line 79 of file cf.h.

◆ CF_ATTRIBUTE_SPACE_ADDRESS

#define CF_ATTRIBUTE_SPACE_ADDRESS PCCARD_ATTRIBUTE_SPACE_ADDRESS

Definition at line 193 of file cf.h.

◆ CF_BUSY

#define CF_BUSY PCCARD_BUSY

Definition at line 199 of file cf.h.

◆ CF_COMMON_SPACE_ADDRESS

#define CF_COMMON_SPACE_ADDRESS PCCARD_COMMON_SPACE_ADDRESS

Definition at line 194 of file cf.h.

◆ CF_DEVICE_ADDRESS

#define CF_DEVICE_ADDRESS PCCARD_DEVICE_ADDRESS

Definition at line 192 of file cf.h.

◆ CF_IO_16_MODE

#define CF_IO_16_MODE 0x01

Definition at line 95 of file cf.h.

◆ CF_IO_PRICH_MODE

#define CF_IO_PRICH_MODE 0x02

Definition at line 96 of file cf.h.

◆ CF_IO_SECCH_MODE

#define CF_IO_SECCH_MODE 0x03

Definition at line 97 of file cf.h.

◆ CF_IO_SPACE_ADDRESS

#define CF_IO_SPACE_ADDRESS PCCARD_IO_SPACE_ADDRESS

Definition at line 195 of file cf.h.

◆ CF_IO_SPACE_PRIMARY_ADDR

#define CF_IO_SPACE_PRIMARY_ADDR PCCARD_IO_SPACE_PRIMARY_ADDR

Definition at line 196 of file cf.h.

◆ CF_MEM_MAP_MODE

#define CF_MEM_MAP_MODE 0x00

Definition at line 94 of file cf.h.

◆ CF_print

#define CF_print | ( | cond,
 |  | _x_
 | ) |
Value:
if ( cond ) { \
printf _x_ ; \
}

Definition at line 209 of file cf.h.

◆ CF_PROGR

#define CF_PROGR PCCARD_PROGR

Definition at line 200 of file cf.h.

◆ CF_READY

#define CF_READY PCCARD_READY

Definition at line 201 of file cf.h.

◆ CF_SECTOR_SIZE

#define CF_SECTOR_SIZE PCCARD_SECTOR_SIZE

Definition at line 203 of file cf.h.

◆ CF_TIMEOUT_ERROR

#define CF_TIMEOUT_ERROR PCCARD_TIMEOUT_ERROR

Definition at line 198 of file cf.h.

◆ CISTPL_CFTABLE_ENTRY

#define CISTPL_CFTABLE_ENTRY 0x1b

Definition at line 184 of file cf.h.

◆ CISTPL_CONFIG

#define CISTPL_CONFIG 0x1a

Definition at line 183 of file cf.h.

◆ CISTPL_DEVICE

#define CISTPL_DEVICE 0x01

Definition at line 176 of file cf.h.

◆ CISTPL_DEVICE_OC

#define CISTPL_DEVICE_OC 0x1c

Definition at line 177 of file cf.h.

◆ CISTPL_END

#define CISTPL_END 0xff

Definition at line 186 of file cf.h.

◆ CISTPL_FUNCE

#define CISTPL_FUNCE 0x22

Definition at line 182 of file cf.h.

◆ CISTPL_FUNCID

#define CISTPL_FUNCID 0x21

Definition at line 181 of file cf.h.

◆ CISTPL_JEDEC_C

#define CISTPL_JEDEC_C 0x18

Definition at line 178 of file cf.h.

◆ CISTPL_MANFID

#define CISTPL_MANFID 0x20

Definition at line 179 of file cf.h.

◆ CISTPL_NO_LINK

#define CISTPL_NO_LINK 0x14

Definition at line 185 of file cf.h.

◆ CISTPL_VERS_1

#define CISTPL_VERS_1 0x15

Definition at line 180 of file cf.h.

◆ CONF0_BIT

#define CONF0_BIT 0x01

Definition at line 85 of file cf.h.

◆ CONF1_BIT

#define CONF1_BIT 0x02

Definition at line 86 of file cf.h.

◆ CONF2_BIT

#define CONF2_BIT 0x04

Definition at line 87 of file cf.h.

◆ CONF3_BIT

#define CONF3_BIT 0x08

Definition at line 88 of file cf.h.

◆ CONF4_BIT

#define CONF4_BIT 0x10

Definition at line 89 of file cf.h.

◆ CONF5_BIT

#define CONF5_BIT 0x20

Definition at line 90 of file cf.h.

◆ CONFIG_OPTION_REG

#define CONFIG_OPTION_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x00

Definition at line 78 of file cf.h.

◆ CORR_BIT

#define CORR_BIT 0x04

Definition at line 155 of file cf.h.

◆ DISABLE_8BIT_MODE

#define DISABLE_8BIT_MODE 0x81

Definition at line 143 of file cf.h.

◆ DISABLE_POR

#define DISABLE_POR 0x66

Definition at line 141 of file cf.h.

◆ DISABLE_PWR_LV1

#define DISABLE_PWR_LV1 0x8a

Definition at line 144 of file cf.h.

◆ DISABLE_READ_LOOK_AHEAD

#define DISABLE_READ_LOOK_AHEAD 0x55

Definition at line 140 of file cf.h.

◆ DRQ_BIT

#define DRQ_BIT 0x08

Definition at line 154 of file cf.h.

◆ DSC_BIT

#define DSC_BIT 0x10

Definition at line 153 of file cf.h.

◆ DWF_BIT

#define DWF_BIT 0x20

Definition at line 152 of file cf.h.

◆ Enable_16_bit_Transfer

#define Enable_16_bit_Transfer 0

Definition at line 207 of file cf.h.

◆ Enable_8_bit_Transfer

#define Enable_8_bit_Transfer 1

Definition at line 206 of file cf.h.

◆ ENABLE_8BIT_MODE

#define ENABLE_8BIT_MODE 0x01

Definition at line 138 of file cf.h.

◆ ENABLE_POR

#define ENABLE_POR 0xcc

Definition at line 147 of file cf.h.

◆ ENABLE_PWR_LV1

#define ENABLE_PWR_LV1 0x0a

Definition at line 139 of file cf.h.

◆ ERR_BIT

#define ERR_BIT 0x01

Definition at line 156 of file cf.h.

◆ ERR_REG_INFO

#define ERR_REG_INFO 0

Definition at line 215 of file cf.h.

◆ FALSE

#define FALSE 0

Definition at line 46 of file cf.h.

◆ IDNF_BIT

#define IDNF_BIT 0x10

Definition at line 161 of file cf.h.

◆ LEVLREQ_BIT

#define LEVLREQ_BIT 0x40

Definition at line 91 of file cf.h.

◆ MAX_CIS_LEN

#define MAX_CIS_LEN 0x200

Definition at line 188 of file cf.h.

◆ NOP

#define NOP 0x69

Definition at line 142 of file cf.h.

◆ PCCARD_25_SECTORS_SIZES

#define PCCARD_25_SECTORS_SIZES ((uint32_t)(512*25))

Definition at line 174 of file cf.h.

◆ PCCARD_ATTRIBUTE_SPACE_ADDRESS

#define PCCARD_ATTRIBUTE_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x08000000)) /* Attribute space size to @0x9BFF FFFF */

Definition at line 52 of file cf.h.

◆ PCCARD_BUSY

#define PCCARD_BUSY ((uint8_t)0x80)

Definition at line 167 of file cf.h.

◆ PCCARD_COMMON_SPACE_ADDRESS

#define PCCARD_COMMON_SPACE_ADDRESS PCCARD_DEVICE_ADDRESS /* Common space size to @0x93FF FFFF */

Definition at line 51 of file cf.h.

◆ PCCARD_DEVICE_ADDRESS

#define PCCARD_DEVICE_ADDRESS XMC_BANK4_ /* 0x9000 0000 */

Definition at line 50 of file cf.h.

◆ PCCARD_IO_SPACE_ADDRESS

#define PCCARD_IO_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x0C000000)) /* IO space size to @0x9FFF FFFF */

Definition at line 53 of file cf.h.

◆ PCCARD_IO_SPACE_PRIMARY_ADDR

#define PCCARD_IO_SPACE_PRIMARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x1F0)) /* IO space size to @0x9FFF FFFF */

Definition at line 56 of file cf.h.

◆ PCCARD_IO_SPACE_SECONDARY_ADDR

#define PCCARD_IO_SPACE_SECONDARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x170)) /* IO space size to @0x9FFF FFFF */

Definition at line 57 of file cf.h.

◆ PCCARD_LONG_SECTOR_SIZE

#define PCCARD_LONG_SECTOR_SIZE ((uint32_t)516)

Definition at line 173 of file cf.h.

◆ PCCARD_PROGR

#define PCCARD_PROGR ((uint8_t)0x01)

Definition at line 168 of file cf.h.

◆ PCCARD_READY

#define PCCARD_READY ((uint8_t)0x40)

Definition at line 169 of file cf.h.

◆ PCCARD_SECTOR_SIZE

#define PCCARD_SECTOR_SIZE ((uint32_t)512)

Definition at line 172 of file cf.h.

◆ PCCARD_TIMEOUT_ERROR

#define PCCARD_TIMEOUT_ERROR ((uint8_t)0x60)

Definition at line 166 of file cf.h.

◆ PIN_REPLACE_REG

#define PIN_REPLACE_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x04

Definition at line 80 of file cf.h.

◆ PRT_CMD_INFO

#define PRT_CMD_INFO 0

Definition at line 218 of file cf.h.

◆ PRT_ERR_INFO

#define PRT_ERR_INFO 0

Definition at line 219 of file cf.h.

◆ PRT_INIT_INFO

#define PRT_INIT_INFO 1

Definition at line 217 of file cf.h.

◆ RDY_BIT

#define RDY_BIT 0x40

Definition at line 151 of file cf.h.

◆ Read_Transfer

#define Read_Transfer 1

Definition at line 204 of file cf.h.

◆ SET_HOST_CUR_SOURCE_CAP

#define SET_HOST_CUR_SOURCE_CAP 0x9a

Definition at line 145 of file cf.h.

◆ SOCKET_COPY_REG

#define SOCKET_COPY_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x06

Definition at line 81 of file cf.h.

◆ SRESET_BIT

#define SRESET_BIT 0x80

Definition at line 92 of file cf.h.

◆ STS_REG_INFO

#define STS_REG_INFO 0

Definition at line 216 of file cf.h.

◆ TPL_LINK_LOC

#define TPL_LINK_LOC 16

Definition at line 187 of file cf.h.

◆ TRUE

#define TRUE 1

Definition at line 47 of file cf.h.

◆ UNC_BIT

#define UNC_BIT 0x40

Definition at line 160 of file cf.h.

◆ Write_Transfer

#define Write_Transfer 0

Definition at line 205 of file cf.h.

◆ XMC_BANK4_

#define XMC_BANK4_ (XMC_BASE + 0x30000000)

XMC Bank4 base address

Definition at line 49 of file cf.h.

◆ XMC_BASE

#define XMC_BASE ((uint32_t)0x60000000)

XMC base address

Definition at line 48 of file cf.h.


AT32F403 Firmwary Library: PCCARD Exported Types

Data Structures | Typedefs | Enumerations
PCCARD Exported Types
AT32F403_periph_examples » XMC_CF_CARD

Data Structures

struct | CFCardInfoStruct
struct | CFCardAddrStruct
struct | CFCardStruct
struct | verification_result_struct
struct | PCCARD_HandleType
XMC_PCCARD handle Structure definition. More...

Typedefs

typedef unsigned char BOOL

Enumerations

enum | LockType { UNLOCKED = 0x00 , LOCKED = 0x01 }
enum | StatusType { STATUS_OK = 0x00 , STATUS_ERROR = 0x01 }
enum | PCCARD_StateType { PCCARD_STATE_RESET = 0x00 , PCCARD_STATE_READY = 0x01 , PCCARD_STATE_BUSY = 0x02 , PCCARD_STATE_ERROR = 0x04 }
HAL PCCARD State structures definition. More...

Detailed Description

Typedef Documentation

◆ BOOL

typedef unsigned char BOOL

Definition at line 230 of file cf.h.

Enumeration Type Documentation

◆ LockType

enum LockType
Enumerator
UNLOCKED
LOCKED

Definition at line 231 of file cf.h.

◆ PCCARD_StateType

enum PCCARD_StateType

HAL PCCARD State structures definition.

Enumerator
PCCARD_STATE_RESET | PCCARD peripheral not yet initialized or disabled
PCCARD_STATE_READY | PCCARD peripheral ready
PCCARD_STATE_BUSY | PCCARD peripheral busy
PCCARD_STATE_ERROR | PCCARD peripheral error

Definition at line 245 of file cf.h.

◆ StatusType

enum StatusType
Enumerator
STATUS_OK
STATUS_ERROR

Definition at line 236 of file cf.h.


AT32F403 Firmwary Library: CFCardInfoStruct Struct Reference

Data Fields
CFCardInfoStruct Struct Reference
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Types

#include <cf.h>

Data Fields

uint16_t | Default_Cylinder
uint8_t | Default_Head
uint16_t | Default_Sector
uint16_t | Current_Cylinder
uint8_t | Current_Head
uint16_t | Current_Sector
uint32_t | Total_Sector
uint32_t | Total_LBA_Sector
uint16_t | Max_Mutiple_Sector
uint16_t | Mutiple_Sector_Setting

Detailed Description

Definition at line 255 of file cf.h.

Field Documentation

◆ Current_Cylinder

uint16_t CFCardInfoStruct::Current_Cylinder

Definition at line 260 of file cf.h.

Referenced by PCCARD_Read_ID().

◆ Current_Head

uint8_t CFCardInfoStruct::Current_Head

Definition at line 261 of file cf.h.

Referenced by main(), and PCCARD_Read_ID().

◆ Current_Sector

uint16_t CFCardInfoStruct::Current_Sector

Definition at line 262 of file cf.h.

Referenced by main(), and PCCARD_Read_ID().

◆ Default_Cylinder

uint16_t CFCardInfoStruct::Default_Cylinder

Definition at line 257 of file cf.h.

Referenced by main(), and PCCARD_Read_ID().

◆ Default_Head

uint8_t CFCardInfoStruct::Default_Head

Definition at line 258 of file cf.h.

Referenced by main(), PCCARD_Read_ID(), PCCARD_Read_Long_Sector(), PCCARD_Translate_Sector(), PCCARD_Write_Long_Sector(), and Translate_CHSAddr().

◆ Default_Sector

uint16_t CFCardInfoStruct::Default_Sector

Definition at line 259 of file cf.h.

Referenced by PCCARD_Format_Track(), PCCARD_Read_ID(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Translate_Sector(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Translate_CHSAddr().

◆ Max_Mutiple_Sector

uint16_t CFCardInfoStruct::Max_Mutiple_Sector

Definition at line 265 of file cf.h.

Referenced by main(), and PCCARD_Read_ID().

◆ Mutiple_Sector_Setting

uint16_t CFCardInfoStruct::Mutiple_Sector_Setting

Definition at line 266 of file cf.h.

Referenced by PCCARD_Read_ID().

◆ Total_LBA_Sector

uint32_t CFCardInfoStruct::Total_LBA_Sector

Definition at line 264 of file cf.h.

Referenced by PCCARD_Read_ID().

◆ Total_Sector

uint32_t CFCardInfoStruct::Total_Sector

Definition at line 263 of file cf.h.

Referenced by PCCARD_Read_ID().

The documentation for this struct was generated from the following file:
  • cf.h


AT32F403 Firmwary Library: CFCardAddrStruct Struct Reference

Data Fields
CFCardAddrStruct Struct Reference
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Types

#include <cf.h>

Data Fields

uint16_t | Sector_Count
uint16_t | Cylinder
uint8_t | Head
uint8_t | Sector
uint8_t | Drv
uint32_t | SectorSize

Detailed Description

Definition at line 270 of file cf.h.

Field Documentation

◆ Cylinder

uint16_t CFCardAddrStruct::Cylinder

Definition at line 273 of file cf.h.

Referenced by main(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Seek(), PCCARD_Translate_Sector(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Translate_CHSAddr().

◆ Drv

uint8_t CFCardAddrStruct::Drv

Definition at line 276 of file cf.h.

Referenced by PCCARD_Check_Power_Mode(), PCCARD_Diagnostic(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Identify(), PCCARD_Idle(), PCCARD_Idle_Immediate(), PCCARD_Init_Drive_Para(), PCCARD_Read_Buffer(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Recalibrate(), PCCARD_Reuqest_Sense(), PCCARD_Seek(), PCCARD_Set_Features(), PCCARD_Set_Multiple_Mode(), PCCARD_Set_Sleep_Mode(), PCCARD_Standby(), PCCARD_Standby_Immediate(), PCCARD_Translate_Sector(), PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), and PCCARD_Write_Verify().

◆ Head

uint8_t CFCardAddrStruct::Head

Definition at line 274 of file cf.h.

Referenced by main(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Init_Drive_Para(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Seek(), PCCARD_Translate_Sector(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Translate_CHSAddr().

◆ Sector

uint8_t CFCardAddrStruct::Sector

Definition at line 275 of file cf.h.

Referenced by main(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Translate_Sector(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Translate_CHSAddr().

◆ Sector_Count

uint16_t CFCardAddrStruct::Sector_Count

Definition at line 272 of file cf.h.

Referenced by PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Idle(), PCCARD_Init_Drive_Para(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Set_Features(), PCCARD_Set_Multiple_Mode(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Translate_CHSAddr().

◆ SectorSize

uint32_t CFCardAddrStruct::SectorSize

Definition at line 277 of file cf.h.

The documentation for this struct was generated from the following file:
  • cf.h


AT32F403 Firmwary Library: CFCardStruct Struct Reference

Data Fields
CFCardStruct Struct Reference
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Types

#include <cf.h>

Data Fields

uint32_t | IOAddr
BOOL DMAEnable
BOOL Enable_8_bit_mode
CFCardInfoStruct CFCardInfo
CFCardAddrStruct CFAddr
uint16_t | Protocol
uint32_t | Drive

Detailed Description

Definition at line 281 of file cf.h.

Field Documentation

◆ CFAddr

CFCardAddrStruct CFCardStruct::CFAddr

Definition at line 287 of file cf.h.

Referenced by main(), PCCARD_Check_Power_Mode(), PCCARD_Diagnostic(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Identify(), PCCARD_Idle(), PCCARD_Idle_Immediate(), PCCARD_Init_Drive_Para(), PCCARD_Read_Buffer(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Recalibrate(), PCCARD_Reuqest_Sense(), PCCARD_Seek(), PCCARD_Set_Features(), PCCARD_Set_Multiple_Mode(), PCCARD_Set_Sleep_Mode(), PCCARD_Standby(), PCCARD_Standby_Immediate(), PCCARD_Translate_Sector(), PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Translate_CHSAddr().

◆ CFCardInfo

CFCardInfoStruct CFCardStruct::CFCardInfo

Definition at line 286 of file cf.h.

Referenced by main(), PCCARD_Format_Track(), PCCARD_Read_ID(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_Verify_Sector(), PCCARD_Translate_Sector(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), and Translate_CHSAddr().

◆ DMAEnable

BOOL CFCardStruct::DMAEnable

Definition at line 284 of file cf.h.

Referenced by main(), Read_Sector(), and Write_Sector().

◆ Drive

uint32_t CFCardStruct::Drive

Definition at line 291 of file cf.h.

Referenced by main().

◆ Enable_8_bit_mode

BOOL CFCardStruct::Enable_8_bit_mode

Definition at line 285 of file cf.h.

Referenced by main(), PCCARD_Init(), Read_Sector(), and Write_Sector().

◆ IOAddr

uint32_t CFCardStruct::IOAddr

Definition at line 283 of file cf.h.

Referenced by CF_SendCommand(), main(), PCCARD_Check_Power_Mode(), PCCARD_Diagnostic(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Identify(), PCCARD_Idle(), PCCARD_Idle_Immediate(), PCCARD_Init_Drive_Para(), PCCARD_Read_Buffer(), PCCARD_Read_ERROR_REG(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_STATUS_REG(), PCCARD_Read_Verify_Sector(), PCCARD_Recalibrate(), PCCARD_Reuqest_Sense(), PCCARD_Seek(), PCCARD_Set_Features(), PCCARD_Set_Multiple_Mode(), PCCARD_Set_Sleep_Mode(), PCCARD_Standby(), PCCARD_Standby_Immediate(), PCCARD_Translate_Sector(), PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), Read_Sector(), and Write_Sector().

◆ Protocol

uint16_t CFCardStruct::Protocol

Definition at line 288 of file cf.h.

Referenced by main(), and PCCARD_Reset().

The documentation for this struct was generated from the following file:
  • cf.h


AT32F403 Firmwary Library: verification_result_struct Struct Reference

Data Fields
verification_result_struct Struct Reference
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Types

#include <cf.h>

Data Fields

BOOL ATA_CHECK_POWER_MODE_PASS
BOOL ATA_EXECUTE_DRIVE_DIAG_PASS
BOOL ATA_ERASE_SECTOR_PASS
BOOL ATA_FORMAT_TRACK_PASS
BOOL ATA_IDENTIFY_DRIVE_PASS
BOOL ATA_IDLE_PASS
BOOL ATA_IDLE_IMMEDIATE_PASS
BOOL ATA_INIT_DRIVE_PARA_PASS
BOOL ATA_READ_BUFFER_PASS
BOOL ATA_READ_LONG_SECTOR_PASS
BOOL ATA_READ_MULTIPLE_PASS
BOOL ATA_READ_SECTOR_PASS
BOOL ATA_READ_VERIFY_SECTOR_PASS
BOOL ATA_RECALIBRATE_PASS
BOOL ATA_REQUEST_SENSE_PASS
BOOL ATA_SECURITY_DISABLE_PASSWORD_PASS
BOOL ATA_SECURITY_EREASE_PREPARE_PASS
BOOL ATA_SECURITY_ERASE_UNIT_PASS
BOOL ATA_SECURITY_FREEZE_LOCK_PASS
BOOL ATA_SECURITY_SET_PASSWORD_PASS
BOOL ATA_SECURITY_UNLOCK_PASS
BOOL ATA_SEEK_PASS
BOOL ATA_SET_FEATURE_PASS
BOOL ATA_SET_MULTIPLE_MODE_PASS
BOOL ATA_SET_SLEEP_MODE_PASS
BOOL ATA_STANDBY_PASS
BOOL ATA_STANDBY_IMMEDIATE_PASS
BOOL ATA_TRANSLATE_SECTOR_PASS
BOOL ATA_WEAR_LEVEL_PASS
BOOL ATA_WRITE_BUFFER_PASS
BOOL ATA_WRITE_LONG_SECTOR_PASS
BOOL ATA_WRITE_MULTIPLE_PASS
BOOL ATA_WRITE_MULTIPLE_WO_ERASE_PASS
BOOL ATA_WRITE_SECTOR_PASS
BOOL ATA_WRITE_SECTOR_WO_ERASE_PASS
BOOL ATA_WRITE_VERIFY_PASS
BOOL ACESS_25_SECTORS_PASS
BOOL CIS_READ_PASS
BOOL ATTRIBUTE_RW_PASS

Detailed Description

Definition at line 296 of file cf.h.

Field Documentation

◆ ACESS_25_SECTORS_PASS

BOOL verification_result_struct::ACESS_25_SECTORS_PASS

Definition at line 334 of file cf.h.

Referenced by main(), and show_verification_result().

◆ ATA_CHECK_POWER_MODE_PASS

BOOL verification_result_struct::ATA_CHECK_POWER_MODE_PASS

Definition at line 298 of file cf.h.

◆ ATA_ERASE_SECTOR_PASS

BOOL verification_result_struct::ATA_ERASE_SECTOR_PASS

Definition at line 300 of file cf.h.

Referenced by main().

◆ ATA_EXECUTE_DRIVE_DIAG_PASS

BOOL verification_result_struct::ATA_EXECUTE_DRIVE_DIAG_PASS

Definition at line 299 of file cf.h.

Referenced by main(), and show_verification_result().

◆ ATA_FORMAT_TRACK_PASS

BOOL verification_result_struct::ATA_FORMAT_TRACK_PASS

Definition at line 301 of file cf.h.

Referenced by main().

◆ ATA_IDENTIFY_DRIVE_PASS

BOOL verification_result_struct::ATA_IDENTIFY_DRIVE_PASS

Definition at line 302 of file cf.h.

Referenced by main(), and show_verification_result().

◆ ATA_IDLE_IMMEDIATE_PASS

BOOL verification_result_struct::ATA_IDLE_IMMEDIATE_PASS

Definition at line 304 of file cf.h.

◆ ATA_IDLE_PASS

BOOL verification_result_struct::ATA_IDLE_PASS

Definition at line 303 of file cf.h.

◆ ATA_INIT_DRIVE_PARA_PASS

BOOL verification_result_struct::ATA_INIT_DRIVE_PARA_PASS

Definition at line 305 of file cf.h.

Referenced by main().

◆ ATA_READ_BUFFER_PASS

BOOL verification_result_struct::ATA_READ_BUFFER_PASS

Definition at line 306 of file cf.h.

Referenced by main().

◆ ATA_READ_LONG_SECTOR_PASS

BOOL verification_result_struct::ATA_READ_LONG_SECTOR_PASS

Definition at line 307 of file cf.h.

◆ ATA_READ_MULTIPLE_PASS

BOOL verification_result_struct::ATA_READ_MULTIPLE_PASS

Definition at line 308 of file cf.h.

Referenced by main().

◆ ATA_READ_SECTOR_PASS

BOOL verification_result_struct::ATA_READ_SECTOR_PASS

Definition at line 309 of file cf.h.

Referenced by main(), and show_verification_result().

◆ ATA_READ_VERIFY_SECTOR_PASS

BOOL verification_result_struct::ATA_READ_VERIFY_SECTOR_PASS

Definition at line 310 of file cf.h.

Referenced by main().

◆ ATA_RECALIBRATE_PASS

BOOL verification_result_struct::ATA_RECALIBRATE_PASS

Definition at line 311 of file cf.h.

Referenced by main().

◆ ATA_REQUEST_SENSE_PASS

BOOL verification_result_struct::ATA_REQUEST_SENSE_PASS

Definition at line 312 of file cf.h.

◆ ATA_SECURITY_DISABLE_PASSWORD_PASS

BOOL verification_result_struct::ATA_SECURITY_DISABLE_PASSWORD_PASS

Definition at line 313 of file cf.h.

◆ ATA_SECURITY_ERASE_UNIT_PASS

BOOL verification_result_struct::ATA_SECURITY_ERASE_UNIT_PASS

Definition at line 315 of file cf.h.

◆ ATA_SECURITY_EREASE_PREPARE_PASS

BOOL verification_result_struct::ATA_SECURITY_EREASE_PREPARE_PASS

Definition at line 314 of file cf.h.

◆ ATA_SECURITY_FREEZE_LOCK_PASS

BOOL verification_result_struct::ATA_SECURITY_FREEZE_LOCK_PASS

Definition at line 316 of file cf.h.

◆ ATA_SECURITY_SET_PASSWORD_PASS

BOOL verification_result_struct::ATA_SECURITY_SET_PASSWORD_PASS

Definition at line 317 of file cf.h.

◆ ATA_SECURITY_UNLOCK_PASS

BOOL verification_result_struct::ATA_SECURITY_UNLOCK_PASS

Definition at line 318 of file cf.h.

◆ ATA_SEEK_PASS

BOOL verification_result_struct::ATA_SEEK_PASS

Definition at line 319 of file cf.h.

Referenced by main().

◆ ATA_SET_FEATURE_PASS

BOOL verification_result_struct::ATA_SET_FEATURE_PASS

Definition at line 320 of file cf.h.

Referenced by main().

◆ ATA_SET_MULTIPLE_MODE_PASS

BOOL verification_result_struct::ATA_SET_MULTIPLE_MODE_PASS

Definition at line 321 of file cf.h.

Referenced by main().

◆ ATA_SET_SLEEP_MODE_PASS

BOOL verification_result_struct::ATA_SET_SLEEP_MODE_PASS

Definition at line 322 of file cf.h.

◆ ATA_STANDBY_IMMEDIATE_PASS

BOOL verification_result_struct::ATA_STANDBY_IMMEDIATE_PASS

Definition at line 324 of file cf.h.

◆ ATA_STANDBY_PASS

BOOL verification_result_struct::ATA_STANDBY_PASS

Definition at line 323 of file cf.h.

◆ ATA_TRANSLATE_SECTOR_PASS

BOOL verification_result_struct::ATA_TRANSLATE_SECTOR_PASS

Definition at line 325 of file cf.h.

Referenced by main().

◆ ATA_WEAR_LEVEL_PASS

BOOL verification_result_struct::ATA_WEAR_LEVEL_PASS

Definition at line 326 of file cf.h.

◆ ATA_WRITE_BUFFER_PASS

BOOL verification_result_struct::ATA_WRITE_BUFFER_PASS

Definition at line 327 of file cf.h.

Referenced by main().

◆ ATA_WRITE_LONG_SECTOR_PASS

BOOL verification_result_struct::ATA_WRITE_LONG_SECTOR_PASS

Definition at line 328 of file cf.h.

◆ ATA_WRITE_MULTIPLE_PASS

BOOL verification_result_struct::ATA_WRITE_MULTIPLE_PASS

Definition at line 329 of file cf.h.

Referenced by main().

◆ ATA_WRITE_MULTIPLE_WO_ERASE_PASS

BOOL verification_result_struct::ATA_WRITE_MULTIPLE_WO_ERASE_PASS

Definition at line 330 of file cf.h.

Referenced by main().

◆ ATA_WRITE_SECTOR_PASS

BOOL verification_result_struct::ATA_WRITE_SECTOR_PASS

Definition at line 331 of file cf.h.

Referenced by main(), and show_verification_result().

◆ ATA_WRITE_SECTOR_WO_ERASE_PASS

BOOL verification_result_struct::ATA_WRITE_SECTOR_WO_ERASE_PASS

Definition at line 332 of file cf.h.

Referenced by main().

◆ ATA_WRITE_VERIFY_PASS

BOOL verification_result_struct::ATA_WRITE_VERIFY_PASS

Definition at line 333 of file cf.h.

Referenced by main().

◆ ATTRIBUTE_RW_PASS

BOOL verification_result_struct::ATTRIBUTE_RW_PASS

Definition at line 336 of file cf.h.

Referenced by main(), and show_verification_result().

◆ CIS_READ_PASS

BOOL verification_result_struct::CIS_READ_PASS

Definition at line 335 of file cf.h.

Referenced by main(), and show_verification_result().

The documentation for this struct was generated from the following file:
  • cf.h


AT32F403 Firmwary Library: PCCARD_HandleType Struct Reference

Data Fields
PCCARD_HandleType Struct Reference
AT32F403_periph_examples » XMC_CF_CARD » PCCARD Exported Types

XMC_PCCARD handle Structure definition. More...

#include <cf.h>

Data Fields

xmc_bank4_type * Instance
xmc_pccard_init_type Init
__IO PCCARD_StateType State
LockType Lock
CFCardStruct CF

Detailed Description

XMC_PCCARD handle Structure definition.

Definition at line 343 of file cf.h.

Field Documentation

◆ CF

CFCardStruct PCCARD_HandleType::CF

Definition at line 353 of file cf.h.

Referenced by CF_SendCommand(), main(), PCCARD_Check_Power_Mode(), PCCARD_Diagnostic(), PCCARD_Erase_Sector(), PCCARD_Format_Track(), PCCARD_Identify(), PCCARD_Idle(), PCCARD_Idle_Immediate(), PCCARD_Init(), PCCARD_Init_Drive_Para(), PCCARD_Read_Buffer(), PCCARD_Read_ERROR_REG(), PCCARD_Read_ID(), PCCARD_Read_Long_Sector(), PCCARD_Read_Multiple(), PCCARD_Read_Sector(), PCCARD_Read_STATUS_REG(), PCCARD_Read_Verify_Sector(), PCCARD_Recalibrate(), PCCARD_Reset(), PCCARD_Reuqest_Sense(), PCCARD_Seek(), PCCARD_Set_Features(), PCCARD_Set_Multiple_Mode(), PCCARD_Set_Sleep_Mode(), PCCARD_Standby(), PCCARD_Standby_Immediate(), PCCARD_Translate_Sector(), PCCARD_Write_Buffer(), PCCARD_Write_Long_Sector(), PCCARD_Write_Multiple(), PCCARD_Write_Multiple_WO_ERASE(), PCCARD_Write_Sector(), PCCARD_Write_Sector_WO_ERASE(), PCCARD_Write_Verify(), Read_Sector(), Translate_CHSAddr(), and Write_Sector().

◆ Init

xmc_pccard_init_type PCCARD_HandleType::Init

PCCARD device control configuration parameters

Definition at line 347 of file cf.h.

Referenced by Enable_Wait_Feature(), main(), PCCARD_Init(), Read_Sector(), and Write_Sector().

◆ Instance

xmc_bank4_type* PCCARD_HandleType::Instance

Register base address for PCCARD device

Definition at line 345 of file cf.h.

Referenced by Enable_Wait_Feature(), main(), PCCARD_Init(), Read_Sector(), and Write_Sector().

◆ Lock

LockType PCCARD_HandleType::Lock

PCCARD Lock

Definition at line 351 of file cf.h.

Referenced by Enable_Wait_Feature(), and PCCARD_Init().

◆ State

__IO PCCARD_StateType PCCARD_HandleType::State

PCCARD device access state

Definition at line 349 of file cf.h.

Referenced by Enable_Wait_Feature(), PCCARD_DeInit(), PCCARD_GetState(), and PCCARD_Init().

The documentation for this struct was generated from the following file:
  • cf.h


AT32F403 Firmwary Library: PCCARD Exported Macros

Macros
PCCARD Exported Macros
AT32F403_periph_examples » XMC_CF_CARD

Macros

#define __PCCARD_Reset_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = PCCARD_STATE_RESET)
Reset PCCARD handle state. More...

Detailed Description

Macro Definition Documentation

◆ __PCCARD_Reset_HANDLE_STATE

#define __PCCARD_Reset_HANDLE_STATE ( __HANDLE__ ) ((__HANDLE__)->State = PCCARD_STATE_RESET)

Reset PCCARD handle state.

Parameters
<strong>HANDLE</strong> specifies the PCCARD handle.
Return values
None

Definition at line 370 of file cf.h.


AT32F403 Firmwary Library: _XMC_pc_card

Macros | Enumerations | Functions | Variables
_XMC_pc_card
AT32F403_periph_examples

Macros

#define Start_Sector 0

Enumerations

enum TestStatus { FAILED = 0 , PASSED = 1 }

Functions

uint8_t pccard_TxBuffer[PCCARD_SECTOR_SIZE *sizeof(uint8_t)] | __attribute__ ((aligned(4)))
static void | Fill_Buffer (uint8_t *pBuffer, uint32_t uwBufferLenght, uint32_t uwOffset)
Fills buffer with user predefined data. More...
static TestStatus | Buffercmp (uint8_t *pBuffer, uint8_t *pBuffer1, uint32_t uwBufferLenght)
Compares two buffers. More...
int | main (void)
main function. More...

Variables

PCCARD_HandleType pccardHandle
xmc_nand_pccard_timinginit_type PCCARD_PMEM4_Timing
xmc_nand_pccard_timinginit_type PCCARD_PATT4_Timing
xmc_nand_pccard_timinginit_type PCCARD_PIO4_Timing
verification_result_struct verification_result
uint8_t | Test_Mode = 0
uint8_t | orig_default_Sector
uint8_t | orig_default_head
uint32_t | u32i

Detailed Description

Macro Definition Documentation

◆ Start_Sector

#define Start_Sector 0

Definition at line 46 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Enumeration Type Documentation

◆ TestStatus

enum TestStatus
Enumerator
FAILED
PASSED

Definition at line 39 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Function Documentation

◆ __attribute__()

uint8_t pccard_TxBuffer[PCCARD_SECTOR_SIZE *sizeof(uint8_t)] __attribute__ ( (aligned(4)) )

◆ Buffercmp()

static TestStatus Buffercmp | ( | uint8_t * | pBuffer,
 |  | uint8_t * | pBuffer1,
 |  | uint32_t | uwBufferLenght
 | ) |  |
static

Compares two buffers.

Parameters
pBuffer | pointer to the buffers.
pBuffer1 | pointer to the buffers1.
uwBufferLenght | Compared buffer's length
Return values
1 pBuffer identical to pBuffer1 0: pBuffer differs from pBuffer1

Definition at line 680 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ Fill_Buffer()

static void Fill_Buffer | ( | uint8_t * | pBuffer,
 |  | uint32_t | uwBufferLenght,
 |  | uint32_t | uwOffset
 | ) |  |
static

Fills buffer with user predefined data.

Parameters
pBuffer | pointer on the buffer to fill
uwBufferLenght | size of the buffer to fill
uwOffset | first value to fill on the buffer
Return values
None

Definition at line 661 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 72 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Variable Documentation

◆ orig_default_head

uint8_t orig_default_head

Definition at line 61 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ orig_default_Sector

uint8_t orig_default_Sector

Definition at line 60 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ PCCARD_PATT4_Timing

xmc_nand_pccard_timinginit_type PCCARD_PATT4_Timing

Definition at line 51 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ PCCARD_PIO4_Timing

xmc_nand_pccard_timinginit_type PCCARD_PIO4_Timing

Definition at line 52 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ PCCARD_PMEM4_Timing

xmc_nand_pccard_timinginit_type PCCARD_PMEM4_Timing

Definition at line 50 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ pccardHandle

PCCARD_HandleType pccardHandle

Definition at line 49 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ Test_Mode

uint8_t Test_Mode = 0

Definition at line 55 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ u32i

uint32_t u32i

Definition at line 62 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().

◆ verification_result

verification_result_struct verification_result

Definition at line 53 of file project/at_start_f403/examples/xmc/pc_card/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: XMC_psram

Modules | Macros | Functions | Variables
XMC_psram
AT32F403_periph_examples

Modules

XMC_psram_functions

Macros

#define | BUFFER_SIZE 0x400
#define | WRITE_READ_ADDR 0x8000
#define | Bank1_SRAM1_ADDR ((uint32_t)0x60000000)

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...
int | main (void)
main function. More...
void | psram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | psram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc psram memory. More...
void | psram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc psram memory. More...

Variables

uint16_t | txbuffer [0x400]
uint16_t | rxbuffer [0x400]
uint32_t | writereadstatus = 0
uint16_t | index_cnt = 0

Detailed Description

Macro Definition Documentation

◆ Bank1_SRAM1_ADDR

#define Bank1_SRAM1_ADDR ((uint32_t)0x60000000)

Definition at line 34 of file xmc_psram.c.

◆ BUFFER_SIZE

#define BUFFER_SIZE 0x400

Definition at line 37 of file project/at_start_f403/examples/xmc/psram/src/main.c.

◆ WRITE_READ_ADDR

#define WRITE_READ_ADDR 0x8000

Definition at line 38 of file project/at_start_f403/examples/xmc/psram/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ fill_buffer()

void fill_buffer | ( | uint16_t * | pbuffer,
 |  | uint16_t | bufferlenght,
 |  | uint32_t | offset
 | ) |  |

fill the global buffer

Parameters
pbuffer | pointer on the buffer to fill
buffersize | size of the buffer to fill
offset | first value to fill on the buffer

Definition at line 106 of file project/at_start_f403/examples/xmc/psram/src/main.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 52 of file project/at_start_f403/examples/xmc/psram/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ psram_init()

void psram_init ( void )

configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram.

Parameters
none
Return values
none

Definition at line 44 of file xmc_psram.c.

Referenced by main().

◆ psram_readbuffer()

void psram_readbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | read_addr,
 |  | uint32_t | num_halfword_to_read
 | ) |  |

reads a block of data from the xmc psram memory.

Parameters
pbuffer | : pointer to the buffer that receives the data read from the sram memory.
read_addr | : sram memory internal address to read from.
num_halfword_to_read | : number of half-words to read.
Return values
none

Definition at line 160 of file xmc_psram.c.

Referenced by main().

◆ psram_writebuffer()

void psram_writebuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | num_halfword_to_write
 | ) |  |

writes a half-word buffer to the xmc psram memory.

Parameters
pbuffer | : pointer to buffer.
write_addr | : sram memory internal address from which the data will be written.
num_halfword_to_write | : number of half-words to write.
Return values
none

Definition at line 139 of file xmc_psram.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.

Variable Documentation

◆ index_cnt

uint16_t index_cnt = 0

Definition at line 43 of file project/at_start_f403/examples/xmc/psram/src/main.c.

Referenced by main().

◆ rxbuffer

uint16_t rxbuffer[0x400]

Definition at line 41 of file project/at_start_f403/examples/xmc/psram/src/main.c.

Referenced by main().

◆ txbuffer

uint16_t txbuffer[0x400]

Definition at line 40 of file project/at_start_f403/examples/xmc/psram/src/main.c.

Referenced by main().

◆ writereadstatus

uint32_t writereadstatus = 0

Definition at line 42 of file project/at_start_f403/examples/xmc/psram/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: XMC_psram_functions

Functions
XMC_psram_functions
AT32F403_periph_examples » XMC_psram

Functions

void | psram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | psram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc psram memory. More...
void | psram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc psram memory. More...
void | sram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | sram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc sram memory. More...
void | sram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc sram memory. More...

Detailed Description

Function Documentation

◆ psram_init()

void psram_init ( void )

configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram.

Parameters
none
Return values
none

Definition at line 44 of file xmc_psram.c.

Referenced by main().

◆ psram_readbuffer()

void psram_readbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | read_addr,
 |  | uint32_t | num_halfword_to_read
 | ) |  |

reads a block of data from the xmc psram memory.

Parameters
pbuffer | : pointer to the buffer that receives the data read from the sram memory.
read_addr | : sram memory internal address to read from.
num_halfword_to_read | : number of half-words to read.
Return values
none

Definition at line 160 of file xmc_psram.c.

Referenced by main().

◆ psram_writebuffer()

void psram_writebuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | num_halfword_to_write
 | ) |  |

writes a half-word buffer to the xmc psram memory.

Parameters
pbuffer | : pointer to buffer.
write_addr | : sram memory internal address from which the data will be written.
num_halfword_to_write | : number of half-words to write.
Return values
none

Definition at line 139 of file xmc_psram.c.

Referenced by main().

◆ sram_init()

void sram_init ( void )

configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram.

Parameters
none
Return values
none

Definition at line 44 of file xmc_sram.c.

◆ sram_readbuffer()

void sram_readbuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | read_addr,
 |  | uint32_t | num_halfword_to_read
 | ) |  |

reads a block of data from the xmc sram memory.

Parameters
pbuffer | : pointer to the buffer that receives the data read from the sram memory.
read_addr | : sram memory internal address to read from.
num_halfword_to_read | : number of half-words to read.
Return values
none

Definition at line 172 of file xmc_sram.c.

◆ sram_writebuffer()

void sram_writebuffer | ( | uint16_t * | pbuffer,
 |  | uint32_t | write_addr,
 |  | uint32_t | num_halfword_to_write
 | ) |  |

writes a half-word buffer to the xmc sram memory.

Parameters
pbuffer | : pointer to buffer.
write_addr | : sram memory internal address from which the data will be written.
num_halfword_to_write | : number of half-words to write.
Return values
none

Definition at line 151 of file xmc_sram.c.


AT32F403 Firmwary Library: AT32F403_periph_template

Modules
AT32F403_periph_template

Modules

Library_configuration
System_clock_configuration
LED_toggle

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: Library_configuration

Macros
Library_configuration
AT32F403_periph_template

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 78 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 81 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 77 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 58 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 51 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 59 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 60 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 85 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 82 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 84 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 80 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 79 of file project/at_start_f403/templates/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 83 of file project/at_start_f403/templates/inc/at32f403_conf.h.


AT32F403 Firmwary Library: System_clock_configuration

Functions
System_clock_configuration
AT32F403_periph_template

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 67 of file project/at_start_f403/templates/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 42 of file project/at_start_f403/templates/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: LED_toggle

Macros | Functions | Variables
LED_toggle
AT32F403_periph_template

Macros

#define | DELAY 100
#define | FAST 1
#define | SLOW 4

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | button_exint_init (void)
configure button exint More...
void | button_isr (void)
button handler function More...
void | EXINT0_IRQHandler (void)
exint0 interrupt handler More...
int | main (void)
main function. More...

Variables

uint8_t g_speed = 1

Detailed Description

Macro Definition Documentation

◆ DELAY

#define DELAY 100

Definition at line 36 of file project/at_start_f403/templates/src/main.c.

◆ FAST

#define FAST 1

Definition at line 37 of file project/at_start_f403/templates/src/main.c.

◆ SLOW

#define SLOW 4

Definition at line 38 of file project/at_start_f403/templates/src/main.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ button_exint_init()

void button_exint_init ( void )

configure button exint

Parameters
none
Return values
none

< external interrupt line 0

Definition at line 50 of file project/at_start_f403/templates/src/main.c.

Referenced by main().

◆ button_isr()

void button_isr ( void )

button handler function

Parameters
none
Return values
none

< external interrupt line 0

Definition at line 73 of file project/at_start_f403/templates/src/main.c.

Referenced by EXINT0_IRQHandler().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ EXINT0_IRQHandler()

void EXINT0_IRQHandler ( void )

exint0 interrupt handler

Parameters
none
Return values
none

Definition at line 96 of file project/at_start_f403/templates/src/main.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 106 of file project/at_start_f403/templates/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file project/at_start_f403/templates/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file project/at_start_f403/templates/src/at32f403_int.c.

Variable Documentation

◆ g_speed

uint8_t g_speed = 1

Definition at line 40 of file project/at_start_f403/templates/src/main.c.

Referenced by button_isr(), and main().


AT32F403 Firmwary Library: UTILITIES_examples

Modules
UTILITIES_examples

Modules

FreeRTOS_demo
GEN_random_number_demo
USART_iap_app_led3_toggle
USART_iap_app_led4_toggle
USART_iap_bootloader
USB_iap_app_led3_toggle
USB_iap_app_led4_toggle
USB_iap_bootloader

Detailed Description

Generated by doxygen 1.9.2


AT32F403 Firmwary Library: FreeRTOS_demo

Functions | Variables
FreeRTOS_demo
UTILITIES_examples

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | DebugMon_Handler (void)
this function handles svcall exception. More...
void | led2_task_function (void *pvParameters)
void | led3_task_function (void *pvParameters)
int | main (void)
main function. More...

Variables

TaskHandle_t | led2_handler
TaskHandle_t | led3_handler

Detailed Description

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_freertos_demo/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles svcall exception.

this function handles debug monitor exception.

Parameters
none
Return values
none

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_freertos_demo/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_freertos_demo/src/at32f403_int.c.

◆ led2_task_function()

void led2_task_function ( void * pvParameters )

Definition at line 103 of file utilities/at32f403_freertos_demo/src/main.c.

Referenced by main().

◆ led3_task_function()

void led3_task_function ( void * pvParameters )

Definition at line 113 of file utilities/at32f403_freertos_demo/src/main.c.

Referenced by main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_freertos_demo/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_freertos_demo/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_freertos_demo/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_freertos_demo/src/at32f403_int.c.

Variable Documentation

◆ led2_handler

TaskHandle_t led2_handler

Definition at line 37 of file utilities/at32f403_freertos_demo/src/main.c.

Referenced by main().

◆ led3_handler

TaskHandle_t led3_handler

Definition at line 38 of file utilities/at32f403_freertos_demo/src/main.c.

Referenced by main().


AT32F403 Firmwary Library: GEN_random_number_demo

Modules | Macros | Functions
GEN_random_number_demo
UTILITIES_examples

Modules

RTC_asseed_definition
GEN_random_number_demo_exported_functions

Macros

#define DEVICE_ID_ADDR1 0x1FFFF7E8

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
int | main (void)
main function. More...
int | get_uid_for_seed (void)
get uid value as seed More...
void | randnum_test (void)
enable rtc as seed More...

Detailed Description

Macro Definition Documentation

◆ DEVICE_ID_ADDR1

#define DEVICE_ID_ADDR1 0x1FFFF7E8

Definition at line 39 of file random.c.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ get_uid_for_seed()

int get_uid_for_seed ( void )

get uid value as seed

Parameters
none
Return values
uid_one_word

Definition at line 46 of file random.c.

Referenced by randnum_test().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 43 of file utilities/at32f403_gen_random_number_demo/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ randnum_test()

void randnum_test ( void )

enable rtc as seed

Parameters
none
Return values
none

random number test

Parameters
none
Return values
none

Definition at line 120 of file random.c.

Referenced by main().

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.


AT32F403 Firmwary Library: RTC_asseed_definition

Macros
RTC_asseed_definition
UTILITIES_examples » GEN_random_number_demo

Macros

#define ENABLE_RTC_ASSEED (1)

Detailed Description

Macro Definition Documentation

◆ ENABLE_RTC_ASSEED

#define ENABLE_RTC_ASSEED (1)

Definition at line 47 of file random.h.


AT32F403 Firmwary Library: GEN_random_number_demo_exported_functions

Functions
GEN_random_number_demo_exported_functions
UTILITIES_examples » GEN_random_number_demo

Functions

void randnum_test (void)
enable rtc as seed More...

Detailed Description

Function Documentation

◆ randnum_test()

void randnum_test ( void )

enable rtc as seed

Parameters
none
Return values
none

random number test

Parameters
none
Return values
none

Definition at line 120 of file random.c.

Referenced by main().


AT32F403 Firmwary Library: USART_iap_app_led3_toggle

Modules | Functions | Variables
USART_iap_app_led3_toggle
UTILITIES_examples

Modules

App_led3_definition
App_led3_exported_functions

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...
int | main (void)
main function. More...
void | tmr_init (void)
init tmr. More...
void | TMR3_GLOBAL_IRQHandler (void)
tmr3 global interrupt handler. More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | USART1_IRQHandler (void)
usart1 interrupt handler. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Variables

uint8_t iap_flag = IAP_REV_FLAG_NO

Detailed Description

Function Documentation

◆ back_err()

void back_err ( void )

command response error.

Parameters
none
Return values
none

Definition at line 118 of file app_led3_toggle/src/usart.c.

◆ back_ok()

void back_ok ( void )

command response ok.

Parameters
none
Return values
none

Definition at line 105 of file app_led3_toggle/src/usart.c.

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ iap_command_handle()

void iap_command_handle ( void )

iap command handle handle.

Parameters
none
Return values
none

Definition at line 42 of file app_led3_toggle/src/iap.c.

◆ iap_init()

void iap_init ( void )

iap init.

Parameters
none
Return values
none

Definition at line 59 of file app_led3_toggle/src/iap.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< nvic vector table based flash address

Definition at line 44 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ TMR3_GLOBAL_IRQHandler()

void TMR3_GLOBAL_IRQHandler ( void )

tmr3 global interrupt handler.

Parameters
none
Return values
none

Definition at line 70 of file app_led3_toggle/src/tmr.c.

◆ tmr_init()

void tmr_init ( void )

init tmr.

Parameters
none
Return values
none

Definition at line 42 of file app_led3_toggle/src/tmr.c.

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file app_led3_toggle/src/usart.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ USART1_IRQHandler()

void USART1_IRQHandler ( void )

usart1 interrupt handler.

Parameters
none
Return values
none

Definition at line 85 of file app_led3_toggle/src/usart.c.

Variable Documentation

◆ iap_flag

uint8_t iap_flag = IAP_REV_FLAG_NO

Definition at line 36 of file app_led3_toggle/src/usart.c.

Referenced by USART1_IRQHandler().


AT32F403 Firmwary Library: App_led3_definition

Macros
App_led3_definition
UTILITIES_examples » USART_iap_app_led3_toggle

Macros

#define | APP_START_ADDR 0x08004000
#define | IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
#define | IAP_UPGRADE_FLAG 0x41544B38
#define | IAP_REV_FLAG_NO 0
#define | IAP_REV_FLAG_5A 1
#define | IAP_REV_FLAG_DONE 2
#define | IAP_REV_FLAG_ERROR 3

Detailed Description

Macro Definition Documentation

◆ APP_START_ADDR

#define APP_START_ADDR 0x08004000

Definition at line 47 of file app_led3_toggle/inc/iap.h.

◆ IAP_REV_FLAG_5A

#define IAP_REV_FLAG_5A 1

Definition at line 49 of file app_led3_toggle/inc/usart.h.

◆ IAP_REV_FLAG_DONE

#define IAP_REV_FLAG_DONE 2

Definition at line 50 of file app_led3_toggle/inc/usart.h.

◆ IAP_REV_FLAG_ERROR

#define IAP_REV_FLAG_ERROR 3

Definition at line 51 of file app_led3_toggle/inc/usart.h.

◆ IAP_REV_FLAG_NO

#define IAP_REV_FLAG_NO 0

Definition at line 48 of file app_led3_toggle/inc/usart.h.

◆ IAP_UPGRADE_FLAG

#define IAP_UPGRADE_FLAG 0x41544B38

Definition at line 54 of file app_led3_toggle/inc/iap.h.

◆ IAP_UPGRADE_FLAG_ADDR

#define IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)

Definition at line 50 of file app_led3_toggle/inc/iap.h.


AT32F403 Firmwary Library: App_led3_exported_functions

Functions
App_led3_exported_functions
UTILITIES_examples » USART_iap_app_led3_toggle

Functions

void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...
void | tmr_init (void)
init tmr. More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Detailed Description

Function Documentation

◆ back_err()

void back_err ( void )

command response error.

Parameters
none
Return values
none

Definition at line 118 of file app_led3_toggle/src/usart.c.

Referenced by TMR3_GLOBAL_IRQHandler().

◆ back_ok()

void back_ok ( void )

command response ok.

Parameters
none
Return values
none

Definition at line 105 of file app_led3_toggle/src/usart.c.

Referenced by main().

◆ iap_command_handle()

void iap_command_handle ( void )

iap command handle handle.

Parameters
none
Return values
none

Definition at line 42 of file app_led3_toggle/src/iap.c.

Referenced by main().

◆ iap_init()

void iap_init ( void )

iap init.

Parameters
none
Return values
none

iap init.

Parameters
none
Return values
none

Definition at line 59 of file app_led3_toggle/src/iap.c.

Referenced by main().

◆ tmr_init()

void tmr_init ( void )

init tmr.

Parameters
none
Return values
none

Definition at line 42 of file app_led3_toggle/src/tmr.c.

Referenced by main().

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file app_led3_toggle/src/usart.c.


AT32F403 Firmwary Library: USART_iap_app_led4_toggle

Modules | Functions | Variables
USART_iap_app_led4_toggle
UTILITIES_examples

Modules

App_led4_definition
App_led4_exported_functions

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...
int | main (void)
main function. More...
void | tmr_init (void)
init tmr. More...
void | TMR3_GLOBAL_IRQHandler (void)
tmr3 global interrupt handler. More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | USART1_IRQHandler (void)
usart1 interrupt handler. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Variables

uint8_t iap_flag = IAP_REV_FLAG_NO

Detailed Description

Function Documentation

◆ back_err()

void back_err ( void )

command response error.

Parameters
none
Return values
none

Definition at line 118 of file app_led4_toggle/src/usart.c.

◆ back_ok()

void back_ok ( void )

command response ok.

Parameters
none
Return values
none

Definition at line 105 of file app_led4_toggle/src/usart.c.

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ iap_command_handle()

void iap_command_handle ( void )

iap command handle handle.

Parameters
none
Return values
none

Definition at line 42 of file app_led4_toggle/src/iap.c.

Referenced by main().

◆ iap_init()

void iap_init ( void )

iap init.

Parameters
none
Return values
none

Definition at line 59 of file app_led4_toggle/src/iap.c.

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< nvic vector table based flash address

Definition at line 44 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ TMR3_GLOBAL_IRQHandler()

void TMR3_GLOBAL_IRQHandler ( void )

tmr3 global interrupt handler.

Parameters
none
Return values
none

Definition at line 70 of file app_led4_toggle/src/tmr.c.

◆ tmr_init()

void tmr_init ( void )

init tmr.

Parameters
none
Return values
none

Definition at line 42 of file app_led4_toggle/src/tmr.c.

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file app_led4_toggle/src/usart.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ USART1_IRQHandler()

void USART1_IRQHandler ( void )

usart1 interrupt handler.

Parameters
none
Return values
none

Definition at line 85 of file app_led4_toggle/src/usart.c.

Variable Documentation

◆ iap_flag

uint8_t iap_flag = IAP_REV_FLAG_NO

Definition at line 36 of file app_led4_toggle/src/usart.c.

Referenced by iap_command_handle(), and USART1_IRQHandler().


AT32F403 Firmwary Library: App_led4_definition

Macros
App_led4_definition
UTILITIES_examples » USART_iap_app_led4_toggle

Macros

#define | APP_START_ADDR 0x08004000
#define | IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
#define | IAP_UPGRADE_FLAG 0x41544B38
#define | IAP_REV_FLAG_NO 0
#define | IAP_REV_FLAG_5A 1
#define | IAP_REV_FLAG_DONE 2
#define | IAP_REV_FLAG_ERROR 3

Detailed Description

Macro Definition Documentation

◆ APP_START_ADDR

#define APP_START_ADDR 0x08004000

Definition at line 47 of file app_led4_toggle/inc/iap.h.

◆ IAP_REV_FLAG_5A

#define IAP_REV_FLAG_5A 1

Definition at line 49 of file app_led4_toggle/inc/usart.h.

◆ IAP_REV_FLAG_DONE

#define IAP_REV_FLAG_DONE 2

Definition at line 50 of file app_led4_toggle/inc/usart.h.

◆ IAP_REV_FLAG_ERROR

#define IAP_REV_FLAG_ERROR 3

Definition at line 51 of file app_led4_toggle/inc/usart.h.

◆ IAP_REV_FLAG_NO

#define IAP_REV_FLAG_NO 0

Definition at line 48 of file app_led4_toggle/inc/usart.h.

◆ IAP_UPGRADE_FLAG

#define IAP_UPGRADE_FLAG 0x41544B38

Definition at line 54 of file app_led4_toggle/inc/iap.h.

◆ IAP_UPGRADE_FLAG_ADDR

#define IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)

Definition at line 50 of file app_led4_toggle/inc/iap.h.


AT32F403 Firmwary Library: App_led4_exported_functions

Functions
App_led4_exported_functions
UTILITIES_examples » USART_iap_app_led4_toggle

Functions

void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...
void | tmr_init (void)
init tmr. More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Detailed Description

Function Documentation

◆ back_err()

void back_err ( void )

command response error.

Parameters
none
Return values
none

Definition at line 118 of file app_led3_toggle/src/usart.c.

◆ back_ok()

void back_ok ( void )

command response ok.

Parameters
none
Return values
none

Definition at line 105 of file app_led3_toggle/src/usart.c.

◆ iap_command_handle()

void iap_command_handle ( void )

iap command handle handle.

Parameters
none
Return values
none

Definition at line 42 of file app_led3_toggle/src/iap.c.

◆ iap_init()

void iap_init ( void )

iap init.

Parameters
none
Return values
none

iap init.

Parameters
none
Return values
none

Definition at line 59 of file app_led3_toggle/src/iap.c.

◆ tmr_init()

void tmr_init ( void )

init tmr.

Parameters
none
Return values
none

Definition at line 42 of file app_led3_toggle/src/tmr.c.

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file app_led3_toggle/src/usart.c.


AT32F403 Firmwary Library: USART_iap_bootloader

Modules | Functions | Variables
USART_iap_bootloader
UTILITIES_examples

Modules

Bootloader_definition
Bootloader_exported_functions
Bootloader_exported_types

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | flash_2kb_write (uint32_t write_addr, uint8_t *pbuffer)
flash erase/program operation. More...
flag_status | flash_upgrade_flag_read (void)
check flash upgrade flag. More...
void | app_load (uint32_t app_addr)
app load. More...
uint8_t | data_take (void)
take data from usart buf. More...
void | command_handle (void)
command analysis handle. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...
void | app_update_handle (void)
app update flow handle. More...
void | iap_upgrade_app_handle (void)
iap upgrade app handle. More...
int | main (void)
main function. More...
void | tmr_init (void)
init tmr. More...
void | TMR3_GLOBAL_IRQHandler (void)
tmr3 global interrupt handler. More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | USART1_IRQHandler (void)
usart1 interrupt handler. More...

Variables

cmd_data_group_type cmd_data_group_type_struct
cmd_data_step_type cmd_data_step
cmd_ctr_step_type cmd_ctr_step
update_status_type update_status
usart_group_type usart_group_struct
cmd_data_step_type cmd_data_step = CMD_DATA_IDLE
cmd_ctr_step_type cmd_ctr_step = CMD_CTR_IDLE
cmd_data_group_type cmd_data_group_struct
update_status_type update_status = UPDATE_PRE
static uint8_t | cmd_addr_cnt = 0
static uint32_t | cmd_data_cnt = 0
uint8_t | time_ira_cnt =0
uint8_t | get_data_from_usart_flag = 0
usart_group_type usart_group_struct

Detailed Description

Function Documentation

◆ app_load()

void app_load ( uint32_t app_addr )

app load.

Parameters
app_addr app code starting address
Return values
none

Definition at line 58 of file bootloader/src/iap.c.

Referenced by app_update_handle(), and main().

◆ app_update_handle()

void app_update_handle ( void )

app update flow handle.

Parameters
none
Return values
none

Definition at line 260 of file bootloader/src/iap.c.

Referenced by iap_upgrade_app_handle().

◆ back_err()

void back_err ( void )

command response error.

Parameters
none
Return values
none

Definition at line 239 of file bootloader/src/iap.c.

Referenced by app_update_handle(), and TMR3_GLOBAL_IRQHandler().

◆ back_ok()

void back_ok ( void )

command response ok.

Parameters
none
Return values
none

Definition at line 226 of file bootloader/src/iap.c.

Referenced by app_update_handle(), and main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ command_handle()

void command_handle ( void )

command analysis handle.

Parameters
none
Return values
none

Definition at line 104 of file bootloader/src/iap.c.

Referenced by iap_upgrade_app_handle().

◆ data_take()

uint8_t data_take ( void )

take data from usart buf.

Parameters
app_addr app code starting address
Return values
val took data

Definition at line 87 of file bootloader/src/iap.c.

Referenced by command_handle().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ flash_2kb_write()

void flash_2kb_write | ( | uint32_t | write_addr,
 |  | uint8_t * | pbuffer
 | ) |  |

flash erase/program operation.

Note
follow 2kb operation of ont time
Parameters
none
Return values
none

Definition at line 43 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c.

Referenced by app_update_handle().

◆ flash_upgrade_flag_read()

flag_status flash_upgrade_flag_read ( void )

check flash upgrade flag.

Parameters
none
Return values
none

Definition at line 64 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c.

Referenced by main().

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ iap_upgrade_app_handle()

void iap_upgrade_app_handle ( void )

iap upgrade app handle.

Parameters
none
Return values
none

Definition at line 342 of file bootloader/src/iap.c.

Referenced by main().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 45 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ TMR3_GLOBAL_IRQHandler()

void TMR3_GLOBAL_IRQHandler ( void )

tmr3 global interrupt handler.

Parameters
none
Return values
none

Definition at line 73 of file bootloader/src/tmr.c.

◆ tmr_init()

void tmr_init ( void )

init tmr.

Parameters
none
Return values
none

Definition at line 45 of file bootloader/src/tmr.c.

Referenced by main().

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file bootloader/src/usart.c.

Referenced by main().

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ USART1_IRQHandler()

void USART1_IRQHandler ( void )

usart1 interrupt handler.

Parameters
none
Return values
none

Definition at line 85 of file bootloader/src/usart.c.

Variable Documentation

◆ cmd_addr_cnt

uint8_t cmd_addr_cnt = 0
static

Definition at line 42 of file bootloader/src/iap.c.

Referenced by back_err(), and command_handle().

◆ cmd_ctr_step [1/2]

cmd_ctr_step_type cmd_ctr_step
extern

Definition at line 39 of file bootloader/src/iap.c.

Referenced by app_update_handle(), back_err(), and command_handle().

◆ cmd_ctr_step [2/2]

cmd_ctr_step_type cmd_ctr_step = CMD_CTR_IDLE

Definition at line 39 of file bootloader/src/iap.c.

Referenced by app_update_handle(), back_err(), and command_handle().

◆ cmd_data_cnt

uint32_t cmd_data_cnt = 0
static

Definition at line 43 of file bootloader/src/iap.c.

Referenced by back_err(), and command_handle().

◆ cmd_data_group_struct

cmd_data_group_type cmd_data_group_struct

Definition at line 40 of file bootloader/src/iap.c.

Referenced by app_update_handle(), and command_handle().

◆ cmd_data_group_type_struct

cmd_data_group_type cmd_data_group_type_struct
extern

◆ cmd_data_step [1/2]

cmd_data_step_type cmd_data_step
extern

Definition at line 38 of file bootloader/src/iap.c.

Referenced by app_update_handle(), back_err(), and command_handle().

◆ cmd_data_step [2/2]

cmd_data_step_type cmd_data_step = CMD_DATA_IDLE

Definition at line 38 of file bootloader/src/iap.c.

Referenced by app_update_handle(), back_err(), and command_handle().

◆ get_data_from_usart_flag

uint8_t get_data_from_usart_flag = 0

Definition at line 38 of file bootloader/src/tmr.c.

Referenced by app_update_handle(), back_err(), and TMR3_GLOBAL_IRQHandler().

◆ time_ira_cnt

uint8_t time_ira_cnt =0

Definition at line 37 of file bootloader/src/tmr.c.

Referenced by back_err(), TMR3_GLOBAL_IRQHandler(), and USART1_IRQHandler().

◆ update_status [1/2]

update_status_type update_status
extern

Definition at line 41 of file bootloader/src/iap.c.

Referenced by app_update_handle(), back_err(), and command_handle().

◆ update_status [2/2]

update_status_type update_status = UPDATE_PRE

Definition at line 41 of file bootloader/src/iap.c.

Referenced by app_update_handle(), back_err(), and command_handle().

◆ usart_group_struct [1/2]

usart_group_type usart_group_struct
extern

Definition at line 36 of file bootloader/src/usart.c.

Referenced by command_handle(), data_take(), and USART1_IRQHandler().

◆ usart_group_struct [2/2]

usart_group_type usart_group_struct

Definition at line 36 of file bootloader/src/usart.c.

Referenced by command_handle(), data_take(), and USART1_IRQHandler().


AT32F403 Firmwary Library: Bootloader_definition

Macros
Bootloader_definition
UTILITIES_examples » USART_iap_bootloader | UTILITIES_examples » USB_iap_bootloader

Macros

#define | FLASH_SIZE (*((uint32_t*)0x1FFFF7E0)) /* read from at32 flash capacity register(unit:kbyte) */
#define | SRAM_SIZE 224 /* sram size, unit:kbyte */
#define | APP_START_ADDR 0x08004000
#define | IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
#define | IAP_UPGRADE_FLAG 0x41544B38
#define | USART_REC_LEN 1024
#define | FLASH_APP_ADDRESS 0x08005000

Detailed Description

Macro Definition Documentation

◆ APP_START_ADDR

#define APP_START_ADDR 0x08004000

Definition at line 47 of file bootloader/inc/iap.h.

◆ FLASH_APP_ADDRESS

#define FLASH_APP_ADDRESS 0x08005000

Definition at line 47 of file bootloader/inc/hid_iap_user.h.

◆ FLASH_SIZE

#define FLASH_SIZE (*((uint32_t*)0x1FFFF7E0)) /* read from at32 flash capacity register(unit:kbyte) */

Definition at line 46 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h.

◆ IAP_UPGRADE_FLAG

#define IAP_UPGRADE_FLAG 0x41544B38

Definition at line 54 of file bootloader/inc/iap.h.

◆ IAP_UPGRADE_FLAG_ADDR

#define IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)

Definition at line 50 of file bootloader/inc/iap.h.

◆ SRAM_SIZE

#define SRAM_SIZE 224 /* sram size, unit:kbyte */

Definition at line 47 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h.

◆ USART_REC_LEN

#define USART_REC_LEN 1024

Definition at line 46 of file bootloader/inc/usart.h.


AT32F403 Firmwary Library: Bootloader_exported_functions

Functions
Bootloader_exported_functions
UTILITIES_examples » USART_iap_bootloader | UTILITIES_examples » USB_iap_bootloader

Functions

void | flash_2kb_write (uint32_t write_addr, uint8_t *pbuffer)
flash erase/program operation. More...
flag_status | flash_upgrade_flag_read (void)
check flash upgrade flag. More...
void | command_handle (void)
command analysis handle. More...
void | back_err (void)
command response error. More...
void | back_ok (void)
command response ok. More...
void | iap_upgrade_app_handle (void)
iap upgrade app handle. More...
void | app_load (uint32_t appxaddr)
app load. More...
void | tmr_init (void)
init tmr. More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | iap_init (void)
iap init. More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_loop (void)
iap loop More...
void | jump_to_app (uint32_t address)
jump to app More...

Detailed Description

Function Documentation

◆ app_load()

void app_load ( uint32_t app_addr )

app load.

Parameters
app_addr app code starting address
Return values
none

Definition at line 58 of file bootloader/src/iap.c.

Referenced by app_update_handle(), and main().

◆ back_err()

void back_err ( void )

command response error.

Parameters
none
Return values
none

Definition at line 118 of file app_led3_toggle/src/usart.c.

Referenced by app_update_handle().

◆ back_ok()

void back_ok ( void )

command response ok.

Parameters
none
Return values
none

Definition at line 105 of file app_led3_toggle/src/usart.c.

Referenced by app_update_handle().

◆ command_handle()

void command_handle ( void )

command analysis handle.

Parameters
none
Return values
none

Definition at line 104 of file bootloader/src/iap.c.

Referenced by iap_upgrade_app_handle().

◆ flash_2kb_write()

void flash_2kb_write | ( | uint32_t | write_addr,
 |  | uint8_t * | pbuffer
 | ) |  |

flash erase/program operation.

Note
follow 2kb operation of ont time
Parameters
none
Return values
none

Definition at line 43 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c.

Referenced by app_update_handle().

◆ flash_upgrade_flag_read()

flag_status flash_upgrade_flag_read ( void )

check flash upgrade flag.

Parameters
none
Return values
none

Definition at line 64 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c.

Referenced by main().

◆ iap_get_upgrade_flag()

iap_result_type iap_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the status of the iap flag

Definition at line 77 of file app_led3_toggle/src/hid_iap_user.c.

◆ iap_init()

void iap_init ( void )

iap init.

Parameters
none
Return values
none

iap init.

Parameters
none
Return values
none

Definition at line 59 of file app_led3_toggle/src/iap.c.

Referenced by iap_idle(), and iap_start().

◆ iap_loop()

void iap_loop ( void )

iap loop

Parameters
none
Return values
none

Definition at line 471 of file bootloader/src/hid_iap_user.c.

Referenced by main().

◆ iap_upgrade_app_handle()

void iap_upgrade_app_handle ( void )

iap upgrade app handle.

Parameters
none
Return values
none

Definition at line 342 of file bootloader/src/iap.c.

Referenced by main().

◆ jump_to_app()

void jump_to_app ( uint32_t address )

jump to app

Parameters
none
Return values
none

Definition at line 214 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.

Referenced by flash_fat16_loop_status(), iap_loop(), and main().

◆ tmr_init()

void tmr_init ( void )

init tmr.

Parameters
none
Return values
none

Definition at line 42 of file app_led3_toggle/src/tmr.c.

◆ uart_init()

void uart_init ( uint32_t baudrate )

init usart.

Parameters
none
Return values
none

Definition at line 43 of file app_led3_toggle/src/usart.c.


AT32F403 Firmwary Library: Bootloader_exported_types

Data Structures | Typedefs | Enumerations
Bootloader_exported_types
UTILITIES_examples » USART_iap_bootloader

Data Structures

struct | cmd_data_group_type
cmd data group type More...
struct | usart_group_type
usart group type More...

Typedefs

typedef void(* iapfun) (void)

Enumerations

enum cmd_data_step_type {
CMD_DATA_IDLE , CMD_DATA_ADDR , CMD_DATA_BUF , CMD_DATA_CHACK ,
CMD_DATA_DONE , CMD_DATA_ERR
}
cmd data step type More...
enum cmd_ctr_step_type {
CMD_CTR_IDLE , CMD_CTR_INIT , CMD_CTR_DONE , CMD_CTR_ERR ,
CMD_CTR_APP
}
cmd ctr step type More...
enum update_status_type { UPDATE_PRE , UPDATE_CLEAR_FLAG , UPDATE_ING , UPDATE_DONE }
update status type More...

Detailed Description

Typedef Documentation

◆ iapfun

typedef void(* iapfun) (void)

Definition at line 111 of file bootloader/inc/iap.h.

Enumeration Type Documentation

◆ cmd_ctr_step_type

enum cmd_ctr_step_type

cmd ctr step type

Enumerator
CMD_CTR_IDLE
CMD_CTR_INIT
CMD_CTR_DONE
CMD_CTR_ERR
CMD_CTR_APP

Definition at line 91 of file bootloader/inc/iap.h.

◆ cmd_data_step_type

enum cmd_data_step_type

cmd data step type

Enumerator
CMD_DATA_IDLE
CMD_DATA_ADDR
CMD_DATA_BUF
CMD_DATA_CHACK
CMD_DATA_DONE
CMD_DATA_ERR

Definition at line 78 of file bootloader/inc/iap.h.

◆ update_status_type

enum update_status_type

update status type

Enumerator
UPDATE_PRE
UPDATE_CLEAR_FLAG
UPDATE_ING
UPDATE_DONE

Definition at line 103 of file bootloader/inc/iap.h.


AT32F403 Firmwary Library: cmd_data_group_type Struct Reference

Data Fields
cmd_data_group_type Struct Reference
UTILITIES_examples » USART_iap_bootloader » Bootloader_exported_types

cmd data group type More...

#include <iap.h>

Data Fields

uint8_t | cmd_head
uint8_t | cmd_addr [4]
uint8_t | cmd_buf [0x800]
uint8_t | cmd_check

Detailed Description

cmd data group type

Definition at line 67 of file bootloader/inc/iap.h.

Field Documentation

◆ cmd_addr

uint8_t cmd_data_group_type::cmd_addr[4]

Definition at line 70 of file bootloader/inc/iap.h.

Referenced by app_update_handle(), and command_handle().

◆ cmd_buf

uint8_t cmd_data_group_type::cmd_buf[0x800]

Definition at line 71 of file bootloader/inc/iap.h.

Referenced by app_update_handle(), and command_handle().

◆ cmd_check

uint8_t cmd_data_group_type::cmd_check

Definition at line 72 of file bootloader/inc/iap.h.

◆ cmd_head

uint8_t cmd_data_group_type::cmd_head

Definition at line 69 of file bootloader/inc/iap.h.

The documentation for this struct was generated from the following file:
  • bootloader/inc/iap.h


AT32F403 Firmwary Library: usart_group_type Struct Reference

Data Fields
usart_group_type Struct Reference
UTILITIES_examples » USART_iap_bootloader » Bootloader_exported_types

usart group type More...

#include <usart.h>

Data Fields

uint16_t | buf [1024]
uint16_t | head
uint16_t | tail
uint16_t | count

Detailed Description

usart group type

Definition at line 59 of file bootloader/inc/usart.h.

Field Documentation

◆ buf

uint16_t usart_group_type::buf[1024]

Definition at line 61 of file bootloader/inc/usart.h.

Referenced by data_take(), and USART1_IRQHandler().

◆ count

uint16_t usart_group_type::count

Definition at line 64 of file bootloader/inc/usart.h.

Referenced by command_handle(), data_take(), and USART1_IRQHandler().

◆ head

uint16_t usart_group_type::head

Definition at line 62 of file bootloader/inc/usart.h.

Referenced by USART1_IRQHandler().

◆ tail

uint16_t usart_group_type::tail

Definition at line 63 of file bootloader/inc/usart.h.

Referenced by data_take(), and USART1_IRQHandler().

The documentation for this struct was generated from the following file:
  • bootloader/inc/usart.h


AT32F403 Firmwary Library: USB_iap_app_led3_toggle

Modules | Macros | Functions | Variables
USB_iap_app_led3_toggle
UTILITIES_examples

Modules

App_led3_toggle_definition
App_led3_toggle_exported_functions

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | iap_finish (void)
void | iap_jump (void)
void | iap_respond (uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_init (void)
iap init More...
void | iap_get ()
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *pdata, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...
void | app_loop (void)
iap loop More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
int | main (void)
main function. More...

Variables

void(* pftarget )(void)
usbd_core_type usb_core_dev

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h.

Function Documentation

◆ app_loop()

void app_loop ( void )

iap loop

Parameters
none
Return values
none

Definition at line 251 of file app_led3_toggle/src/hid_iap_user.c.

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ iap_finish()

void iap_finish ( void )

Definition at line 313 of file bootloader/src/hid_iap_user.c.

◆ iap_get()

void iap_get ( )

Definition at line 157 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_get_upgrade_flag()

iap_result_type iap_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the status of the iap flag

Definition at line 77 of file app_led3_toggle/src/hid_iap_user.c.

◆ iap_init()

void iap_init ( void )

iap init

iap init.

Parameters
none
Return values
none

Definition at line 95 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by iap_idle(), and iap_start().

◆ iap_jump()

void iap_jump ( void )

Definition at line 146 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_respond()

void iap_respond | ( | uint8_t * | res_buf,
 |  | uint16_t | iap_cmd,
 |  | uint16_t | result
 | ) |  |

Definition at line 175 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by iap_get(), iap_idle(), iap_jump(), and iap_start().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< nvic vector table based flash address

Definition at line 131 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 110 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 121 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c.

◆ usbd_hid_iap_in_complete()

void usbd_hid_iap_in_complete ( void * udev )

usb device in transfer complete function

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 238 of file app_led3_toggle/src/hid_iap_user.c.

◆ usbd_hid_iap_process()

iap_result_type usbd_hid_iap_process | ( | void * | udev,
 |  | uint8_t * | pdata,
 |  | uint16_t | len
 | ) |  |

usb device iap function

Parameters
udev | to the structure of usbd_core_type
pdata | data buffer point
len | data length
Return values
iap_result_type

Definition at line 192 of file app_led3_toggle/src/hid_iap_user.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 100 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c.

Variable Documentation

◆ pftarget

void(* pftarget) (void) ( void )

Definition at line 37 of file app_led3_toggle/src/hid_iap_user.c.

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 41 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: App_led3_toggle_definition

Macros
App_led3_toggle_definition
UTILITIES_examples » USB_iap_app_led3_toggle

Macros

#define FLASH_APP_ADDRESS 0x08005000

Detailed Description

Macro Definition Documentation

◆ FLASH_APP_ADDRESS

#define FLASH_APP_ADDRESS 0x08005000

Definition at line 47 of file app_led3_toggle/inc/hid_iap_user.h.


AT32F403 Firmwary Library: App_led3_toggle_exported_functions

Functions
App_led3_toggle_exported_functions
UTILITIES_examples » USB_iap_app_led3_toggle

Functions

void | iap_init (void)
iap init. More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | app_loop (void)
iap loop More...

Detailed Description

Function Documentation

◆ app_loop()

void app_loop ( void )

iap loop

Parameters
none
Return values
none

Definition at line 251 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by main().

◆ iap_get_upgrade_flag()

iap_result_type iap_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the status of the iap flag

Definition at line 77 of file app_led3_toggle/src/hid_iap_user.c.

Referenced by main().

◆ iap_init()

void iap_init ( void )

iap init.

Parameters
none
Return values
none

iap init.

Parameters
none
Return values
none

Definition at line 59 of file app_led3_toggle/src/iap.c.


AT32F403 Firmwary Library: USB_iap_app_led4_toggle

Modules | Macros | Functions | Variables
USB_iap_app_led4_toggle
UTILITIES_examples

Modules

App_led4_toggle_definition
App_led4_toggle_exported_functions

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | iap_clear_upgrade_flag (void)
clear iap upgrade flag More...
void | iap_set_upgrade_flag (void)
set iap upgrade complete flag More...
uint32_t | crc_cal (uint32_t addr, uint16_t nk)
crc cal More...
void | iap_idle (void)
iap idle function More...
void | iap_start (void)
iap start function More...
void | iap_finish (void)
void | iap_jump (void)
void | iap_respond (uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_init (void)
iap init More...
void | iap_get ()
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *pdata, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...
void | app_loop (void)
iap loop More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
int | main (void)
main function. More...

Variables

void(* pftarget )(void)
usbd_core_type usb_core_dev

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h.

Function Documentation

◆ app_loop()

void app_loop ( void )

iap loop

Parameters
none
Return values
none

Definition at line 251 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by main().

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ crc_cal()

uint32_t crc_cal | ( | uint32_t | addr,
 |  | uint16_t | nk
 | ) |  |

crc cal

Parameters
addr | start address
nk | nk byte
Return values
crc value

Definition at line 153 of file bootloader/src/hid_iap_user.c.

Referenced by iap_crc().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ iap_clear_upgrade_flag()

void iap_clear_upgrade_flag ( void )

clear iap upgrade flag

Parameters
none
Return values
none

Definition at line 53 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by app_loop().

◆ iap_finish()

void iap_finish ( void )

Definition at line 313 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_get()

void iap_get ( )

Definition at line 157 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_get_upgrade_flag()

iap_result_type iap_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the status of the iap flag

Definition at line 77 of file app_led4_toggle/src/hid_iap_user.c.

◆ iap_idle()

void iap_idle ( void )

iap idle function

Parameters
none
Return values
none

Definition at line 122 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_init()

void iap_init ( void )

iap init

iap init.

Parameters
none
Return values
none

Definition at line 95 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by iap_idle(), and iap_start().

◆ iap_jump()

void iap_jump ( void )

Definition at line 146 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_respond()

void iap_respond | ( | uint8_t * | res_buf,
 |  | uint16_t | iap_cmd,
 |  | uint16_t | result
 | ) |  |

Definition at line 175 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by iap_get(), iap_idle(), iap_jump(), and iap_start().

◆ iap_set_upgrade_flag()

void iap_set_upgrade_flag ( void )

set iap upgrade complete flag

Parameters
none
Return values
none

Definition at line 65 of file app_led4_toggle/src/hid_iap_user.c.

◆ iap_start()

void iap_start ( void )

iap start function

Parameters
none
Return values
none

Definition at line 134 of file app_led4_toggle/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

< nvic vector table based flash address

Definition at line 131 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 110 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 121 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c.

◆ usbd_hid_iap_in_complete()

void usbd_hid_iap_in_complete ( void * udev )

usb device in transfer complete function

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 238 of file app_led4_toggle/src/hid_iap_user.c.

◆ usbd_hid_iap_process()

iap_result_type usbd_hid_iap_process | ( | void * | udev,
 |  | uint8_t * | pdata,
 |  | uint16_t | len
 | ) |  |

usb device iap function

Parameters
udev | to the structure of usbd_core_type
pdata | data buffer point
len | data length
Return values
iap_result_type

Definition at line 192 of file app_led4_toggle/src/hid_iap_user.c.

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 100 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c.

Variable Documentation

◆ pftarget

void(* pftarget) (void) ( void )

Definition at line 37 of file app_led4_toggle/src/hid_iap_user.c.

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 41 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: App_led4_toggle_definition

Macros
App_led4_toggle_definition
UTILITIES_examples » USB_iap_app_led4_toggle

Macros

#define FLASH_APP_ADDRESS 0x08005000

Detailed Description

Macro Definition Documentation

◆ FLASH_APP_ADDRESS

#define FLASH_APP_ADDRESS 0x08005000

Definition at line 47 of file app_led4_toggle/inc/hid_iap_user.h.


AT32F403 Firmwary Library: App_led4_toggle_exported_functions

Functions
App_led4_toggle_exported_functions
UTILITIES_examples » USB_iap_app_led4_toggle

Functions

void | iap_init (void)
iap init. More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | app_loop (void)
iap loop More...

Detailed Description

Function Documentation

◆ app_loop()

void app_loop ( void )

iap loop

Parameters
none
Return values
none

Definition at line 251 of file app_led3_toggle/src/hid_iap_user.c.

◆ iap_get_upgrade_flag()

iap_result_type iap_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the status of the iap flag

Definition at line 77 of file app_led3_toggle/src/hid_iap_user.c.

◆ iap_init()

void iap_init ( void )

iap init.

Parameters
none
Return values
none

iap init.

Parameters
none
Return values
none

Definition at line 59 of file app_led3_toggle/src/iap.c.


AT32F403 Firmwary Library: USB_iap_bootloader

Modules | Macros | Functions | Variables
USB_iap_bootloader
UTILITIES_examples

Modules

Bootloader_definition
Bootloader_exported_functions

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | iap_clear_upgrade_flag (void)
clear iap upgrade flag More...
void | iap_set_upgrade_flag (void)
set iap upgrade complete flag More...
uint32_t | crc_cal (uint32_t addr, uint16_t nk)
crc cal More...
void | iap_idle (void)
iap idle function More...
void | iap_start (void)
iap start function More...
iap_result_type | iap_address (uint8_t *pdata, uint32_t len)
iap parse address More...
void | iap_finish (void)
iap_result_type | iap_data_write (uint8_t *pdata, uint32_t len)
void | iap_jump (void)
void | iap_respond (uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
void | jump_to_app (uint32_t address)
jump to app More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_erase_sector (uint32_t address)
set iap upgrade complete flag More...
void | iap_init (void)
iap init More...
void | iap_crc (uint8_t *pdata, uint32_t len)
void | iap_get ()
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *pdata, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...
void | iap_loop (void)
iap loop More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
int | main (void)
main function. More...

Variables

void(* pftarget )(void)
usbd_core_type usb_core_dev

Detailed Description

Macro Definition Documentation

◆ USB_EPT_AUTO_MALLOC_BUFFER

#define USB_EPT_AUTO_MALLOC_BUFFER

usb endpoint max num define

usb buffer extend to 768-1280 bytes

auto malloc usb endpoint buffer usb auto malloc endpoint tx and rx buffer

Definition at line 61 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h.

Function Documentation

◆ BusFault_Handler()

void BusFault_Handler ( void )

this function handles bus fault exception.

Parameters
none
Return values
none

Definition at line 76 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ crc_cal()

uint32_t crc_cal | ( | uint32_t | addr,
 |  | uint16_t | nk
 | ) |  |

crc cal

Parameters
addr | start address
nk | nk byte
Return values
crc value

Definition at line 153 of file bootloader/src/hid_iap_user.c.

Referenced by iap_crc().

◆ DebugMon_Handler()

void DebugMon_Handler ( void )

this function handles debug monitor exception.

Parameters
none
Return values
none

Definition at line 111 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ HardFault_Handler()

void HardFault_Handler ( void )

this function handles hard fault exception.

Parameters
none
Return values
none

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ iap_address()

iap_result_type iap_address | ( | uint8_t * | pdata,
 |  | uint32_t | len
 | ) |  |

iap parse address

Parameters
pdata | data buffer pointer.
len | data length
Return values
the result of the address parse

Definition at line 227 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_clear_upgrade_flag()

void iap_clear_upgrade_flag ( void )

clear iap upgrade flag

Parameters
none
Return values
none

Definition at line 80 of file bootloader/src/hid_iap_user.c.

Referenced by iap_address().

◆ iap_crc()

void iap_crc | ( | uint8_t * | pdata,
 |  | uint32_t | len
 | ) |  |

Definition at line 326 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_data_write()

iap_result_type iap_data_write | ( | uint8_t * | pdata,
 |  | uint32_t | len
 | ) |  |

Definition at line 268 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_erase_sector()

void iap_erase_sector ( uint32_t address )

set iap upgrade complete flag

Parameters
none
Return values
none

Definition at line 122 of file bootloader/src/hid_iap_user.c.

Referenced by iap_address().

◆ iap_finish()

void iap_finish ( void )

Definition at line 313 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_get()

void iap_get ( )

Definition at line 365 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_get_upgrade_flag()

iap_result_type iap_get_upgrade_flag ( void )

get iap upgrade complete flag

Parameters
none
Return values
the status of the iap flag

Definition at line 104 of file bootloader/src/hid_iap_user.c.

Referenced by main().

◆ iap_idle()

void iap_idle ( void )

iap idle function

Parameters
none
Return values
none

Definition at line 202 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_init()

void iap_init ( void )

iap init

iap init.

Parameters
none
Return values
none

Definition at line 175 of file bootloader/src/hid_iap_user.c.

Referenced by iap_idle(), iap_start(), and main().

◆ iap_jump()

void iap_jump ( void )

Definition at line 354 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ iap_loop()

void iap_loop ( void )

iap loop

Parameters
none
Return values
none

Definition at line 471 of file bootloader/src/hid_iap_user.c.

Referenced by main().

◆ iap_respond()

void iap_respond | ( | uint8_t * | res_buf,
 |  | uint16_t | iap_cmd,
 |  | uint16_t | result
 | ) |  |

Definition at line 383 of file bootloader/src/hid_iap_user.c.

Referenced by iap_address(), iap_crc(), iap_data_write(), iap_finish(), iap_get(), iap_idle(), iap_jump(), and iap_start().

◆ iap_set_upgrade_flag()

void iap_set_upgrade_flag ( void )

set iap upgrade complete flag

Parameters
none
Return values
none

Definition at line 92 of file bootloader/src/hid_iap_user.c.

Referenced by iap_finish().

◆ iap_start()

void iap_start ( void )

iap start function

Parameters
none
Return values
none

Definition at line 214 of file bootloader/src/hid_iap_user.c.

Referenced by usbd_hid_iap_process().

◆ jump_to_app()

void jump_to_app ( uint32_t address )

jump to app

Parameters
none
Return values
none

Definition at line 55 of file bootloader/src/hid_iap_user.c.

Referenced by iap_loop().

◆ main()

int main ( void )

main function.

Parameters
none
Return values
none

Definition at line 132 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c.

◆ MemManage_Handler()

void MemManage_Handler ( void )

this function handles memory manage exception.

Parameters
none
Return values
none

Definition at line 63 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ NMI_Handler()

void NMI_Handler ( void )

this function handles nmi exception.

Parameters
none
Return values
none

Definition at line 41 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ PendSV_Handler()

void PendSV_Handler ( void )

this function handles pendsv_handler exception.

Parameters
none
Return values
none

Definition at line 120 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ SVC_Handler()

void SVC_Handler ( void )

this function handles svcall exception.

Parameters
none
Return values
none

Definition at line 102 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ SysTick_Handler()

void SysTick_Handler ( void )

this function handles systick handler.

Parameters
none
Return values
none

Definition at line 129 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ UsageFault_Handler()

void UsageFault_Handler ( void )

this function handles usage fault exception.

Parameters
none
Return values
none

Definition at line 89 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.

◆ usb_clock48m_select()

void usb_clock48m_select ( usb_clk48_s clk_s )

usb 48M clock select

Parameters
clk_s:USB_CLK_HICK,USB_CLK_HEXT
Return values
none

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c.

Referenced by main().

◆ usb_delay_ms()

void usb_delay_ms ( uint32_t ms )

usb delay millisecond function.

Parameters
ms number of millisecond delay
Return values
none

Definition at line 111 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c.

◆ usb_delay_us()

void usb_delay_us ( uint32_t us )

usb delay microsecond function.

Parameters
us number of microsecond delay
Return values
none

Definition at line 122 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c.

◆ usbd_hid_iap_in_complete()

void usbd_hid_iap_in_complete ( void * udev )

usb device in transfer complete function

Parameters
udev to the structure of usbd_core_type
Return values
none

Definition at line 458 of file bootloader/src/hid_iap_user.c.

Referenced by class_in_handler().

◆ usbd_hid_iap_process()

iap_result_type usbd_hid_iap_process | ( | void * | udev,
 |  | uint8_t * | pdata,
 |  | uint16_t | len
 | ) |  |

usb device iap function

Parameters
udev | to the structure of usbd_core_type
pdata | data buffer point
len | data length
Return values
iap_result_type

Definition at line 400 of file bootloader/src/hid_iap_user.c.

Referenced by class_out_handler().

◆ USBFS_L_CAN1_RX0_IRQHandler()

void USBFS_L_CAN1_RX0_IRQHandler ( void )

this function handles usb interrupt.

Parameters
none
Return values
none

Definition at line 101 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c.

Variable Documentation

◆ pftarget

void(* pftarget) (void) ( void )

Definition at line 37 of file bootloader/src/hid_iap_user.c.

Referenced by jump_to_app().

◆ usb_core_dev

usbd_core_type usb_core_dev

Definition at line 41 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c.

Referenced by main(), and USBFS_L_CAN1_RX0_IRQHandler().


AT32F403 Firmwary Library: Data Structures

Data Structures
Here are the data structures with brief descriptions:
C adc_base_config_type | Adc base config type
C adc_type | Type define adc register all
C audio_codec_type |
C bpr_type | Type define bpr register all
C calendar_type |
C can_base_type | Can init structure definition
C can_baudrate_type | Can baudrate structure definition
C can_fifo_mailbox_type | Can controller area network fifo mailbox
C can_filter_init_type | Can filter init structure definition
C can_filter_register_type | Can controller area network filter bit register
C can_rx_message_type | Can rx message structure definition
C can_tx_mailbox_type | Can controller area network tx mailbox
C can_tx_message_type | Can tx message structure definition
C can_type | Type define can register all
C cbd_extended_type | Extended command block description
C cbd_typical_type | Typical command block description
C cbw_type | Command block wrapper
C cdc_msc_struct_type | Usb cdc class struct
C cdc_struct_type | Usb cdc class struct
C CFCardAddrStruct |
C CFCardInfoStruct |
C CFCardStruct |
C cmd_data_group_type | Cmd data group type
C crc_type | Type define crc register all
C crm_clocks_freq_type | Crm clocks freqency structure
C crm_type | Type define crm register all
C csw_type | Command block wrapper
C custom_hid_type |
C dac_type | Type define dac register all
C debug_type | Type define debug register all
C dma_channel_type | Type define dma channel register all
C dma_init_type | Dma init type
C dma_type | Type define dma register
C exint_init_type | Exint init type
C exint_type | Type define exint register all
C fat_dir_type |
C flash_iap_type |
C flash_type | Type define flash register all
C gpio_init_type | Gpio init type
C gpio_type | Type define gpio register all
C i2c_handle_type |
C i2c_type | Type define i2c register all
C i2s_init_type | I2s init type
C iap_info_type |
C iomux_type | Type define iomux register all
C keyboard_type |
C lcd_dev_type |
C linecoding_type | Usb cdc class set line coding struct
C mouse_type |
C msc_type |
C nand_address_type |
C nand_id_type |
C nor_idtype |
C PCCARD_HandleType | XMC_PCCARD handle Structure definition
C printer_type |
C pwc_type | Type define pwc register all
C rtc_type | Type define rtc register all
C sc_atr_type |
C sd_card_info_struct_type |
C sd_cid_struct_type |
C sd_csd_struct_type |
C sd_scr_struct_type |
C sdio_command_struct_type | Sdio command structure
C sdio_data_struct_type | Sdio data structure
C sdio_type | Type define sdio register all
C sense_type | Request sense standard data
C spi_init_type | Spi init type
C spi_type | Type define spi register all
C tmr_brkdt_config_type | Tmr brkdt config type
C tmr_input_config_type | Tmr input capture config type
C tmr_output_config_type | Tmr output config type
C tmr_type | Type define tmr register all
C touch_dev_type |
C usart_group_type | Usart group type
C usart_type | Type define usart register all
C usb_audio_hid_type | Usb audio control struct
C usb_audio_type | Usb audio control struct
C usb_configuration_desc_type | Format of standard configuration descriptor
C usb_device_desc_type | Format of standard device descriptor
C usb_endpoint_desc_type | Format of standard endpoint descriptor
C usb_ept_info | Usb endpoint infomation structure definition
C usb_header_desc_type | Format of header
C usb_interface_desc_type | Format of standard interface descriptor
C usb_setup_type | Format of usb setup data
C usbd_class_handler | Usb device class handler
C usbd_core_type | Usb device core struct type
C usbd_desc_handler | Usb device descriptor handler
C usbd_desc_t | Usb device descriptor struct
C usbd_type | Type define usb register all
C usd_type | User system data
C vcp_keyboard_type |
C verification_result_struct |
C wdt_type | Type define wdt register all
C wwdt_type | Type define wwdt register all
C xmc_bank1_ctrl_tmg_reg_type |
C xmc_bank1_tmgwr_reg_type |
C xmc_bank1_type | Xmc bank1 registers
C xmc_bank2_type | Xmc bank2 registers
C xmc_bank3_type | Xmc bank3 registers
C xmc_bank4_type | Xmc bank4 registers
C xmc_nand_init_type | Xmc nand init structure definition
C xmc_nand_pccard_timinginit_type | Nand timing parameters xmc
C xmc_norsram_init_type | Xmc nor/sram init structure definition
C xmc_norsram_timing_init_type | Nor/sram banks timing parameters
C xmc_pccard_init_type | Xmc pccard init structure definition


AT32F403 Firmwary Library: Data Structure Index

Data Structure Index
A | B | C | D | E | F | G | I | K | L | M | N | P | R | S | T | U | V | W | X
A
adc_base_config_type
adc_type
audio_codec_type
B
bpr_type
C
calendar_type
can_base_type
can_baudrate_type
can_fifo_mailbox_type
can_filter_init_type
can_filter_register_type
can_rx_message_type
can_tx_mailbox_type
can_tx_message_type
can_type
cbd_extended_type
cbd_typical_type
cbw_type
cdc_msc_struct_type
cdc_struct_type
CFCardAddrStruct
CFCardInfoStruct
CFCardStruct
cmd_data_group_type
crc_type
crm_clocks_freq_type
crm_type
csw_type
custom_hid_type
D
dac_type
debug_type
dma_channel_type
dma_init_type
dma_type
E
exint_init_type
exint_type
F
fat_dir_type
flash_iap_type
flash_type
G
gpio_init_type
gpio_type
I
i2c_handle_type
i2c_type
i2s_init_type
iap_info_type
iomux_type
K
keyboard_type
L
lcd_dev_type
linecoding_type
M
mouse_type
msc_type
N
nand_address_type
nand_id_type
nor_idtype
P
PCCARD_HandleType
printer_type
pwc_type
R
rtc_type
S
sc_atr_type
sd_card_info_struct_type
sd_cid_struct_type
sd_csd_struct_type
sd_scr_struct_type
sdio_command_struct_type
sdio_data_struct_type
sdio_type
sense_type
spi_init_type
spi_type
T
tmr_brkdt_config_type
tmr_input_config_type
tmr_output_config_type
tmr_type
touch_dev_type
U
usart_group_type
usart_type
usb_audio_hid_type
usb_audio_type
usb_configuration_desc_type
usb_device_desc_type
usb_endpoint_desc_type
usb_ept_info
usb_header_desc_type
usb_interface_desc_type
usb_setup_type
usbd_class_handler
usbd_core_type
usbd_desc_handler
usbd_desc_t
usbd_type
usd_type
V
vcp_keyboard_type
verification_result_struct
W
wdt_type
wwdt_type
X
xmc_bank1_ctrl_tmg_reg_type
xmc_bank1_tmgwr_reg_type
xmc_bank1_type
xmc_bank2_type
xmc_bank3_type
xmc_bank4_type
xmc_nand_init_type
xmc_nand_pccard_timinginit_type
xmc_norsram_init_type
xmc_norsram_timing_init_type
xmc_pccard_init_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- a -

  • ACESS_25_SECTORS_PASS : verification_result_struct
  • acken : i2c_type
  • ackfail : i2c_type
  • acs : spi_type
  • adc1_extrgord_mux : iomux_type
  • adc1_extrgpre_mux : iomux_type
  • adc1en : crm_type
  • adc1rst : crm_type
  • adc2_extrgord_mux : iomux_type
  • adc2_extrgpre_mux : iomux_type
  • adc2en : crm_type
  • adc2odt : adc_type
  • adc2rst : crm_type
  • adc3en : crm_type
  • adc3rst : crm_type
  • adc_freq : crm_clocks_freq_type
  • adcal : adc_type
  • adcalinit : adc_type
  • adcdiv_h : crm_type
  • adcdiv_l : crm_type
  • adcen : adc_type
  • addr : flash_type, tmr_type, usbd_type
  • addr1 : i2c_type
  • addr1mode : i2c_type
  • addr2 : flash_type, i2c_type
  • addr2_bit : flash_type
  • addr2en : i2c_type
  • addr3 : flash_type
  • addr3_bit : flash_type
  • addr7f : i2c_type
  • addr_bit : flash_type
  • addr_hold_time : xmc_norsram_timing_init_type
  • addr_setup_time : xmc_norsram_timing_init_type
  • address : cbd_extended_type, cbd_typical_type
  • addrhf : i2c_type
  • addrht : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • addrst : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • admuxen : xmc_bank1_ctrl_tmg_reg_type
  • aebo_enable : can_base_type
  • aeboen : can_type
  • aed_enable : can_base_type
  • aeden : can_type
  • ahb_freq : crm_clocks_freq_type
  • ahbdiv : crm_type
  • ahben : crm_type
  • ahben_bit : crm_type
  • alertf : i2c_type
  • alloc_length : cbd_extended_type, cbd_typical_type
  • alt_setting : cdc_msc_struct_type, cdc_struct_type, custom_hid_type, iap_info_type, keyboard_type, mouse_type, msc_type, printer_type, usb_audio_hid_type, vcp_keyboard_type
  • amdhizt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • amht : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • amst : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • amwt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • aoen : tmr_type
  • apb1_freq : crm_clocks_freq_type
  • apb1div : crm_type
  • apb1en : crm_type
  • apb1en_bit : crm_type
  • apb1rst : crm_type
  • apb1rst_bit : crm_type
  • apb2_freq : crm_clocks_freq_type
  • apb2div : crm_type
  • apb2en : crm_type
  • apb2en_bit : crm_type
  • apb2rst : crm_type
  • apb2rst_bit : crm_type
  • app_address : iap_info_type
  • argu : sdio_type
  • argu_bit : sdio_type
  • argument : sdio_command_struct_type
  • arlost : i2c_type
  • arpen : i2c_type
  • as_length : sense_type
  • asc : sense_type
  • ascq : sense_type
  • asyncm : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • asynwait_enable : xmc_norsram_init_type
  • ATA_CHECK_POWER_MODE_PASS : verification_result_struct
  • ATA_ERASE_SECTOR_PASS : verification_result_struct
  • ATA_EXECUTE_DRIVE_DIAG_PASS : verification_result_struct
  • ATA_FORMAT_TRACK_PASS : verification_result_struct
  • ATA_IDENTIFY_DRIVE_PASS : verification_result_struct
  • ATA_IDLE_IMMEDIATE_PASS : verification_result_struct
  • ATA_IDLE_PASS : verification_result_struct
  • ATA_INIT_DRIVE_PARA_PASS : verification_result_struct
  • ATA_READ_BUFFER_PASS : verification_result_struct
  • ATA_READ_LONG_SECTOR_PASS : verification_result_struct
  • ATA_READ_MULTIPLE_PASS : verification_result_struct
  • ATA_READ_SECTOR_PASS : verification_result_struct
  • ATA_READ_VERIFY_SECTOR_PASS : verification_result_struct
  • ATA_RECALIBRATE_PASS : verification_result_struct
  • ATA_REQUEST_SENSE_PASS : verification_result_struct
  • ATA_SECURITY_DISABLE_PASSWORD_PASS : verification_result_struct
  • ATA_SECURITY_ERASE_UNIT_PASS : verification_result_struct
  • ATA_SECURITY_EREASE_PREPARE_PASS : verification_result_struct
  • ATA_SECURITY_FREEZE_LOCK_PASS : verification_result_struct
  • ATA_SECURITY_SET_PASSWORD_PASS : verification_result_struct
  • ATA_SECURITY_UNLOCK_PASS : verification_result_struct
  • ATA_SEEK_PASS : verification_result_struct
  • ATA_SET_FEATURE_PASS : verification_result_struct
  • ATA_SET_MULTIPLE_MODE_PASS : verification_result_struct
  • ATA_SET_SLEEP_MODE_PASS : verification_result_struct
  • ATA_STANDBY_IMMEDIATE_PASS : verification_result_struct
  • ATA_STANDBY_PASS : verification_result_struct
  • ATA_TRANSLATE_SECTOR_PASS : verification_result_struct
  • ATA_WEAR_LEVEL_PASS : verification_result_struct
  • ATA_WRITE_BUFFER_PASS : verification_result_struct
  • ATA_WRITE_LONG_SECTOR_PASS : verification_result_struct
  • ATA_WRITE_MULTIPLE_PASS : verification_result_struct
  • ATA_WRITE_MULTIPLE_WO_ERASE_PASS : verification_result_struct
  • ATA_WRITE_SECTOR_PASS : verification_result_struct
  • ATA_WRITE_SECTOR_WO_ERASE_PASS : verification_result_struct
  • ATA_WRITE_VERIFY_PASS : verification_result_struct
  • attr : fat_dir_type
  • ATTRIBUTE_RW_PASS : verification_result_struct
  • audio_bitw : audio_codec_type
  • audio_cmd : usb_audio_hid_type, usb_audio_type
  • audio_cmd_len : usb_audio_hid_type, usb_audio_type
  • audio_feed_back : usb_audio_hid_type, usb_audio_type
  • audio_freq : audio_codec_type
  • audio_mic_data : usb_audio_hid_type, usb_audio_type
  • audio_protocol : i2s_init_type
  • audio_sampling_freq : i2s_init_type
  • audio_spk_data : usb_audio_hid_type, usb_audio_type
  • auto_output_enable : tmr_brkdt_config_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- b -

  • bAlternateSetting : usb_interface_desc_type
  • bankers : flash_type
  • baudr : usart_type
  • baudr_bit : usart_type
  • baudrate_div : can_baudrate_type
  • bCBWCBLength : cbw_type
  • bCBWLUN : cbw_type
  • bcdDevice : usb_device_desc_type
  • bcdUSB : usb_device_desc_type
  • bConfigurationValue : usb_configuration_desc_type
  • bCSWStatus : csw_type
  • bDescriptorType : usb_configuration_desc_type, usb_device_desc_type, usb_endpoint_desc_type, usb_header_desc_type, usb_interface_desc_type
  • bDeviceClass : usb_device_desc_type
  • bDeviceProtocol : usb_device_desc_type
  • bDeviceSubClass : usb_device_desc_type
  • be : usbd_type
  • beien : usbd_type
  • bEndpointAddress : usb_endpoint_desc_type
  • bf : spi_type
  • bfbn : usart_type
  • bff : usart_type
  • bfien : usart_type
  • bInterfaceClass : usb_interface_desc_type
  • bInterfaceNumber : usb_interface_desc_type
  • bInterfaceProtocol : usb_interface_desc_type
  • bInterfaceSubClass : usb_interface_desc_type
  • bInterval : usb_endpoint_desc_type
  • bitrate : linecoding_type
  • bk1ctrl : xmc_bank1_ctrl_tmg_reg_type
  • bk1ctrl_bit : xmc_bank1_ctrl_tmg_reg_type
  • bk1tmg : xmc_bank1_ctrl_tmg_reg_type
  • bk1tmg_bit : xmc_bank1_ctrl_tmg_reg_type
  • bk1tmgwr : xmc_bank1_tmgwr_reg_type
  • bk1tmgwr_bit : xmc_bank1_tmgwr_reg_type
  • bk2ctrl : xmc_bank2_type
  • bk2ctrl_bit : xmc_bank2_type
  • bk2ecc : xmc_bank2_type
  • bk2ecc_bit : xmc_bank2_type
  • bk2is : xmc_bank2_type
  • bk2is_bit : xmc_bank2_type
  • bk2tmgatt : xmc_bank2_type
  • bk2tmgatt_bit : xmc_bank2_type
  • bk2tmgmem : xmc_bank2_type
  • bk2tmgmem_bit : xmc_bank2_type
  • bk3ctrl : xmc_bank3_type
  • bk3ctrl_bit : xmc_bank3_type
  • bk3ecc : xmc_bank3_type
  • bk3ecc_bit : xmc_bank3_type
  • bk3is : xmc_bank3_type
  • bk3is_bit : xmc_bank3_type
  • bk3tmgatt : xmc_bank3_type
  • bk3tmgatt_bit : xmc_bank3_type
  • bk3tmgmem : xmc_bank3_type
  • bk3tmgmem_bit : xmc_bank3_type
  • bk4ctrl : xmc_bank4_type
  • bk4ctrl_bit : xmc_bank4_type
  • bk4is : xmc_bank4_type
  • bk4is_bit : xmc_bank4_type
  • bk4tmgatt : xmc_bank4_type
  • bk4tmgatt_bit : xmc_bank4_type
  • bk4tmgio : xmc_bank4_type
  • bk4tmgio_bit : xmc_bank4_type
  • bk4tmgmem : xmc_bank4_type
  • bk4tmgmem_bit : xmc_bank4_type
  • bLength : usb_configuration_desc_type, usb_device_desc_type, usb_endpoint_desc_type, usb_header_desc_type, usb_interface_desc_type
  • blk_addr : cdc_msc_struct_type, msc_type
  • blk_len : cdc_msc_struct_type, msc_type
  • blk_nbr : cdc_msc_struct_type, msc_type
  • blk_size : cdc_msc_struct_type, msc_type
  • blksize : sdio_type
  • block : nand_address_type
  • block_size : sdio_data_struct_type
  • bmAttributes : usb_configuration_desc_type, usb_endpoint_desc_type
  • bMaxPacketSize0 : usb_device_desc_type
  • bMaxPower : usb_configuration_desc_type
  • bmCBWFlags : cbw_type
  • bmRequestType : usb_setup_type
  • bNumConfigurations : usb_device_desc_type
  • bNumEndpoints : usb_interface_desc_type
  • bNumInterfaces : usb_configuration_desc_type
  • bof : can_type
  • boien : can_type
  • bot_status : cdc_msc_struct_type, msc_type
  • bpdc : crm_type
  • bpdc_bit : crm_type
  • bpdrst : crm_type
  • bpren : crm_type
  • bprrst : crm_type
  • bpwen : pwc_type
  • brdiv : can_type
  • bRequest : usb_setup_type
  • brk : tmr_type
  • brk_bit : tmr_type
  • brk_enable : tmr_brkdt_config_type
  • brk_polarity : tmr_brkdt_config_type
  • brken : tmr_type
  • brkie : tmr_type
  • brkif : tmr_type
  • brkswtr : tmr_type
  • brkv : tmr_type
  • btaddr : usbd_type
  • btmg : can_type
  • btmg_bit : can_type
  • btopt : flash_type
  • bts1 : can_type
  • bts1_size : can_baudrate_type
  • bts2 : can_type
  • bts2_size : can_baudrate_type
  • buf : sdio_type, usart_group_type
  • buf_bit : sdio_type
  • bufcnt : sdio_type
  • bufcnt_bit : sdio_type
  • buffer_size : dma_init_type
  • buftbl : usbd_type
  • buftbl_bit : usbd_type
  • burst_mode_enable : xmc_norsram_init_type
  • bus_latency_time : xmc_norsram_timing_init_type
  • bus_type : xmc_nand_init_type, xmc_norsram_init_type
  • buserr : i2c_type
  • buslat : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • buslatr2r : xmc_bank1_type
  • buslatw2w : xmc_bank1_type
  • busws : sdio_type
  • busyf : i2c_type
  • bypsen : sdio_type
  • byte : nand_address_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- c -

  • c1c : tmr_type
  • c1cen : tmr_type
  • c1cios : tmr_type
  • c1cp : tmr_type
  • c1den : tmr_type
  • c1df : tmr_type
  • c1dt : tmr_type
  • c1dt_bit : tmr_type
  • c1en : tmr_type
  • c1idiv : tmr_type
  • c1ien : tmr_type
  • c1if : tmr_type
  • c1insel : tmr_type
  • c1ios : tmr_type
  • c1oben : tmr_type
  • c1octrl : tmr_type
  • c1oien : tmr_type
  • c1osen : tmr_type
  • c1p : tmr_type
  • c1rf : tmr_type
  • c1swtr : tmr_type
  • c2c : tmr_type
  • c2cen : tmr_type
  • c2cios : tmr_type
  • c2cp : tmr_type
  • c2den : tmr_type
  • c2df : tmr_type
  • c2dt : tmr_type
  • c2dt_bit : tmr_type
  • c2en : tmr_type
  • c2idiv : tmr_type
  • c2ien : tmr_type
  • c2if : tmr_type
  • c2ios : tmr_type
  • c2oben : tmr_type
  • c2octrl : tmr_type
  • c2oien : tmr_type
  • c2osen : tmr_type
  • c2p : tmr_type
  • c2rf : tmr_type
  • c2swtr : tmr_type
  • c3c : tmr_type
  • c3cen : tmr_type
  • c3cios : tmr_type
  • c3cp : tmr_type
  • c3den : tmr_type
  • c3df : tmr_type
  • c3dt : tmr_type
  • c3dt_bit : tmr_type
  • c3en : tmr_type
  • c3idiv : tmr_type
  • c3ien : tmr_type
  • c3if : tmr_type
  • c3ios : tmr_type
  • c3oben : tmr_type
  • c3octrl : tmr_type
  • c3oien : tmr_type
  • c3osen : tmr_type
  • c3p : tmr_type
  • c3rf : tmr_type
  • c3swtr : tmr_type
  • c4c : tmr_type
  • c4den : tmr_type
  • c4df : tmr_type
  • c4dt : tmr_type
  • c4dt_bit : tmr_type
  • c4en : tmr_type
  • c4idiv : tmr_type
  • c4ien : tmr_type
  • c4if : tmr_type
  • c4ios : tmr_type
  • c4oben : tmr_type
  • c4octrl : tmr_type
  • c4oien : tmr_type
  • c4osen : tmr_type
  • c4p : tmr_type
  • c4rf : tmr_type
  • c4swtr : tmr_type
  • calout : bpr_type
  • calval : bpr_type
  • can1_pause : debug_type
  • can1en : crm_type
  • can1rst : crm_type
  • can_mux : iomux_type
  • card_blk_size : sd_card_info_struct_type
  • card_capacity : sd_card_info_struct_type
  • card_cmd_classes : sd_csd_struct_type
  • card_type : sd_card_info_struct_type
  • cardsts1 : sdio_type
  • cardsts2 : sdio_type
  • cardsts3 : sdio_type
  • cardsts4 : sdio_type
  • cbctrl : tmr_type
  • cbw_struct : cdc_msc_struct_type, msc_type
  • CBWCB : cbw_type
  • cce : adc_type
  • cceien : adc_type
  • ccen : spi_type
  • ccerr : spi_type
  • ccfs : tmr_type
  • ccos : bpr_type
  • ccsmen : sdio_type
  • cctrl : tmr_type
  • cctrl_bit : tmr_type
  • cdt : crc_type
  • cdt_bit : crc_type
  • cen : usbd_type
  • CF : PCCARD_HandleType
  • CFAddr : CFCardStruct
  • CFCardInfo : CFCardStruct
  • cfden : crm_type
  • cfdf : crm_type
  • cfdfc : crm_type
  • cfg : crm_type, wwdt_type
  • cfg_bit : crm_type, wwdt_type
  • cfgen : rtc_type
  • cfgf : rtc_type
  • cfghr : gpio_type
  • cfghr_bit : gpio_type
  • cfglr : gpio_type
  • cfglr_bit : gpio_type
  • chen : dma_channel_type
  • chpers : flash_type
  • chpl : dma_channel_type
  • cid_crc : sd_cid_struct_type
  • CIS_READ_PASS : verification_result_struct
  • class_bank : xmc_nand_pccard_timinginit_type
  • class_handler : usbd_core_type
  • clck : usbd_type
  • clear_handler : usbd_class_handler
  • clk_psc : xmc_norsram_timing_init_type
  • clkctrl : i2c_type, sdio_type
  • clkctrl_bit : i2c_type, sdio_type
  • clkdiv : tmr_type
  • clkdiv_h : sdio_type
  • clkdiv_l : sdio_type
  • clkegs : sdio_type
  • clken : usart_type
  • clkfreq : i2c_type
  • clkint : crm_type
  • clkint_bit : crm_type
  • clkoen : sdio_type
  • clkout_sel : crm_type
  • clkpha : spi_type, usart_type
  • clkpol : spi_type, usart_type
  • clkpsc : xmc_bank1_ctrl_tmg_reg_type
  • clock_phase : spi_init_type
  • clock_polarity : i2s_init_type, spi_init_type
  • clr : dma_type, gpio_type
  • clr_bit : dma_type, gpio_type
  • clsef : pwc_type
  • clswef : pwc_type
  • clus_high : fat_dir_type
  • clus_low : fat_dir_type
  • cm1 : tmr_type
  • cm1_input_bit : tmr_type
  • cm1_output_bit : tmr_type
  • cm2 : tmr_type
  • cm2_input_bit : tmr_type
  • cm2_output_bit : tmr_type
  • cmd : wdt_type
  • cmd20_support : sd_scr_struct_type
  • cmd23_support : sd_scr_struct_type
  • cmd_addr : cmd_data_group_type
  • cmd_bit : wdt_type
  • cmd_buf : cmd_data_group_type
  • cmd_check : cmd_data_group_type
  • cmd_head : cmd_data_group_type
  • cmd_index : sdio_command_struct_type
  • cmdcmpl : sdio_type
  • cmdcmplien : sdio_type
  • cmdctrl : sdio_type
  • cmdctrl_bit : sdio_type
  • cmdfail : sdio_type
  • cmdfailien : sdio_type
  • cmdhizt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cmdidx : sdio_type
  • cmdrspcmpl : sdio_type
  • cmdrspcmplien : sdio_type
  • cmdtimeout : sdio_type
  • cmdtimeoutien : sdio_type
  • cmht : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cmst : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cmwt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cnt : dma_channel_type, rtc_type, sdio_type, wwdt_type
  • cnt_dir : tmr_type
  • cnth : rtc_type
  • cnth_bit : rtc_type
  • cntl : rtc_type
  • cntl_bit : rtc_type
  • config_status : usbd_core_type
  • conn_state : usbd_core_type
  • content_protect_app : sd_csd_struct_type
  • copy_flag : sd_csd_struct_type
  • count : usart_group_type
  • cpoly : spi_type
  • cpoly_bit : spi_type
  • crcen : crm_type
  • create_data : fat_dir_type
  • create_time : fat_dir_type
  • create_time_tenth : fat_dir_type
  • crpgs : xmc_bank1_ctrl_tmg_reg_type
  • cs_mode_selection : spi_init_type
  • csd_crc : sd_csd_struct_type
  • csd_struct : sd_csd_struct_type
  • cspt0 : adc_type
  • cspt1 : adc_type
  • cspt10 : adc_type
  • cspt11 : adc_type
  • cspt12 : adc_type
  • cspt13 : adc_type
  • cspt14 : adc_type
  • cspt15 : adc_type
  • cspt16 : adc_type
  • cspt17 : adc_type
  • cspt2 : adc_type
  • cspt3 : adc_type
  • cspt4 : adc_type
  • cspt5 : adc_type
  • cspt6 : adc_type
  • cspt7 : adc_type
  • cspt8 : adc_type
  • cspt9 : adc_type
  • csrst : usbd_type
  • csw_struct : cdc_msc_struct_type, msc_type
  • ctrl : bpr_type, crc_type, crm_type, dac_type, debug_type, dma_channel_type, flash_type, pwc_type, usbd_type, wwdt_type
  • ctrl1 : adc_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl1_bit : adc_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl2 : adc_type, flash_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl2_bit : adc_type, flash_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl3 : flash_type, usart_type
  • ctrl3_bit : flash_type, usart_type
  • ctrl_bit : bpr_type, crc_type, crm_type, dac_type, debug_type, dma_channel_type, flash_type, pwc_type, usbd_type, wwdt_type
  • ctrl_tmg_group : xmc_bank1_type
  • ctrlh : rtc_type
  • ctrlh_bit : rtc_type
  • ctrll : rtc_type
  • ctrll_bit : rtc_type
  • ctrlsts : bpr_type, crm_type, pwc_type
  • ctrlsts_bit : bpr_type, crm_type, pwc_type
  • ctscf : usart_type
  • ctscfien : usart_type
  • ctsen : usart_type
  • Current_Cylinder : CFCardInfoStruct
  • Current_Head : CFCardInfoStruct
  • Current_Sector : CFCardInfoStruct
  • curs : can_type
  • cuss : can_type
  • cval : tmr_type
  • cval_bit : tmr_type
  • Cylinder : CFCardAddrStruct


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- d -

  • d1dmaen : dac_type
  • d1dt12l : dac_type
  • d1dt12r : dac_type
  • d1dt8r : dac_type
  • d1dth12l : dac_type
  • d1dth12l_bit : dac_type
  • d1dth12r : dac_type
  • d1dth12r_bit : dac_type
  • d1dth8r : dac_type
  • d1dth8r_bit : dac_type
  • d1en : dac_type
  • d1nbsel : dac_type
  • d1nm : dac_type
  • d1obdis : dac_type
  • d1odt : dac_type
  • d1odt_bit : dac_type
  • d1swtrg : dac_type
  • d1trgen : dac_type
  • d1trgsel : dac_type
  • d2dmaen : dac_type
  • d2dt12l : dac_type
  • d2dt12r : dac_type
  • d2dt8r : dac_type
  • d2dth12l : dac_type
  • d2dth12l_bit : dac_type
  • d2dth12r : dac_type
  • d2dth12r_bit : dac_type
  • d2dth8r : dac_type
  • d2dth8r_bit : dac_type
  • d2en : dac_type
  • d2nbsel : dac_type
  • d2nm : dac_type
  • d2obdis : dac_type
  • d2odt : dac_type
  • d2odt_bit : dac_type
  • d2swtrg : dac_type
  • d2trgen : dac_type
  • d2trgsel : dac_type
  • da : flash_type
  • da_bit : flash_type
  • dacen : crm_type
  • dacrst : crm_type
  • data : can_rx_message_type, can_tx_message_type, cdc_msc_struct_type, linecoding_type, msc_type
  • data0 : usd_type
  • data1 : usd_type
  • data2 : usd_type
  • data3 : usd_type
  • data4 : usd_type
  • data5 : usd_type
  • data6 : usd_type
  • data7 : usd_type
  • data_addr_multiplex : xmc_norsram_init_type
  • data_align : adc_base_config_type
  • data_channel_format : i2s_init_type
  • data_latency_time : xmc_norsram_timing_init_type
  • data_len : cdc_msc_struct_type, msc_type
  • data_length : sdio_data_struct_type
  • data_setup_time : xmc_norsram_timing_init_type
  • data_stat_after_erase : sd_scr_struct_type
  • dataien : i2c_type
  • date : calendar_type
  • dbn : usart_type
  • dCBWDataTransferLength : cbw_type
  • dCBWSignature : cbw_type
  • dCBWTage : cbw_type
  • dCSWDataResidue : csw_type
  • dCSWSignature : csw_type
  • dCSWTag : csw_type
  • dd1dt12l : dac_type
  • dd1dt12r : dac_type
  • dd1dt8r : dac_type
  • dd2dt12l : dac_type
  • dd2dt12r : dac_type
  • dd2dt8r : dac_type
  • ddth12l : dac_type
  • ddth12l_bit : dac_type
  • ddth12r : dac_type
  • ddth12r_bit : dac_type
  • ddth8r : dac_type
  • ddth8r_bit : dac_type
  • deadtime : tmr_brkdt_config_type
  • deepsleep_debug : debug_type
  • default_config : usbd_core_type
  • Default_Cylinder : CFCardInfoStruct
  • Default_Head : CFCardInfoStruct
  • Default_Sector : CFCardInfoStruct
  • delay_time_ar : xmc_nand_init_type, xmc_pccard_init_type
  • delay_time_cr : xmc_pccard_init_type
  • delay_time_cycle : xmc_nand_init_type
  • depslp_rst : flash_type
  • desc_handler : usbd_core_type
  • descriptor : usbd_desc_t
  • dev : xmc_bank1_ctrl_tmg_reg_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • dev_config : usbd_core_type
  • devaddr : usbd_type
  • devaddr_bit : usbd_type
  • devaddrf : i2c_type
  • device : xmc_norsram_init_type
  • device_addr : usbd_core_type
  • device_code1 : nor_idtype
  • device_code2 : nor_idtype
  • device_code3 : nor_idtype
  • device_id : nand_id_type
  • device_size : sd_csd_struct_type
  • device_size_mult : sd_csd_struct_type
  • direction : dma_init_type
  • dirf : i2c_type
  • disusb : usbd_type
  • div : rtc_type, tmr_type, usart_type, wdt_type, wwdt_type
  • div_bit : tmr_type, wdt_type
  • divcnt : rtc_type
  • divcnth : rtc_type
  • divcnth_bit : rtc_type
  • divcntl : rtc_type
  • divcntl_bit : rtc_type
  • divf : wdt_type
  • divh : rtc_type
  • divh_bit : rtc_type
  • divl : rtc_type
  • divl_bit : rtc_type
  • dlc : can_rx_message_type, can_tx_message_type
  • dma1en : crm_type
  • dma2en : crm_type
  • dma_init_struct : i2c_handle_type
  • dma_rx_channel : i2c_handle_type
  • dma_tx_channel : i2c_handle_type
  • dmactrl : tmr_type
  • dmactrl_bit : tmr_type
  • dmadt : tmr_type
  • dmadt_bit : tmr_type
  • dmaen : i2c_type, sdio_type
  • DMAEnable : CFCardStruct
  • dmaend : i2c_type
  • dmaren : spi_type, usart_type
  • dmaten : spi_type, usart_type
  • dmsts : usbd_type
  • docmd : sdio_type
  • docmdien : sdio_type
  • dorx : sdio_type
  • dorxien : sdio_type
  • dotx : sdio_type
  • dotxien : sdio_type
  • dpsts : usbd_type
  • draw_point : lcd_dev_type
  • Drive : CFCardStruct
  • drs : tmr_type
  • Drv : CFCardAddrStruct
  • dsr_implemented : sd_csd_struct_type
  • dt : bpr_type, crc_type, i2c_type, sdio_type, spi_type, usart_type
  • dt1 : bpr_type
  • dt10 : bpr_type
  • dt10_bit : bpr_type
  • dt11 : bpr_type
  • dt11_bit : bpr_type
  • dt12 : bpr_type
  • dt12_bit : bpr_type
  • dt13 : bpr_type
  • dt13_bit : bpr_type
  • dt14 : bpr_type
  • dt14_bit : bpr_type
  • dt15 : bpr_type
  • dt15_bit : bpr_type
  • dt16 : bpr_type
  • dt16_bit : bpr_type
  • dt17 : bpr_type
  • dt17_bit : bpr_type
  • dt18 : bpr_type
  • dt18_bit : bpr_type
  • dt19 : bpr_type
  • dt19_bit : bpr_type
  • dt1_bit : bpr_type
  • dt2 : bpr_type
  • dt20 : bpr_type
  • dt20_bit : bpr_type
  • dt21 : bpr_type
  • dt21_bit : bpr_type
  • dt22 : bpr_type
  • dt22_bit : bpr_type
  • dt23 : bpr_type
  • dt23_bit : bpr_type
  • dt24 : bpr_type
  • dt24_bit : bpr_type
  • dt25 : bpr_type
  • dt25_bit : bpr_type
  • dt26 : bpr_type
  • dt26_bit : bpr_type
  • dt27 : bpr_type
  • dt27_bit : bpr_type
  • dt28 : bpr_type
  • dt28_bit : bpr_type
  • dt29 : bpr_type
  • dt29_bit : bpr_type
  • dt2_bit : bpr_type
  • dt3 : bpr_type
  • dt30 : bpr_type
  • dt30_bit : bpr_type
  • dt31 : bpr_type
  • dt31_bit : bpr_type
  • dt32 : bpr_type
  • dt32_bit : bpr_type
  • dt33 : bpr_type
  • dt33_bit : bpr_type
  • dt34 : bpr_type
  • dt34_bit : bpr_type
  • dt35 : bpr_type
  • dt35_bit : bpr_type
  • dt36 : bpr_type
  • dt36_bit : bpr_type
  • dt37 : bpr_type
  • dt37_bit : bpr_type
  • dt38 : bpr_type
  • dt38_bit : bpr_type
  • dt39 : bpr_type
  • dt39_bit : bpr_type
  • dt3_bit : bpr_type
  • dt4 : bpr_type
  • dt40 : bpr_type
  • dt40_bit : bpr_type
  • dt41 : bpr_type
  • dt41_bit : bpr_type
  • dt42 : bpr_type
  • dt42_bit : bpr_type
  • dt4_bit : bpr_type
  • dt5 : bpr_type
  • dt5_bit : bpr_type
  • dt6 : bpr_type
  • dt6_bit : bpr_type
  • dt7 : bpr_type
  • dt7_bit : bpr_type
  • dt8 : bpr_type
  • dt8_bit : bpr_type
  • dt9 : bpr_type
  • dt9_bit : bpr_type
  • dt_bit : crc_type, i2c_type, spi_type, usart_type
  • dtalign : adc_type
  • dtb : tmr_type
  • dtblkcmpl : sdio_type
  • dtblkcmplien : sdio_type
  • dtc : tmr_type
  • dtcmpl : sdio_type
  • dtcmplien : sdio_type
  • dtcnt : dma_channel_type, sdio_type
  • dtcnt_bit : dma_channel_type, sdio_type
  • dtctrl : sdio_type
  • dtctrl_bit : sdio_type
  • dtd : dma_channel_type
  • dterrf1 : dma_type
  • dterrf2 : dma_type
  • dterrf3 : dma_type
  • dterrf4 : dma_type
  • dterrf5 : dma_type
  • dterrf6 : dma_type
  • dterrf7 : dma_type
  • dterrfc1 : dma_type
  • dterrfc2 : dma_type
  • dterrfc3 : dma_type
  • dterrfc4 : dma_type
  • dterrfc5 : dma_type
  • dterrfc6 : dma_type
  • dterrfc7 : dma_type
  • dterrien : dma_channel_type
  • dtfail : sdio_type
  • dtfailien : sdio_type
  • dtlat : xmc_bank1_ctrl_tmg_reg_type
  • dtlen : sdio_type
  • dtlen_bit : sdio_type
  • dtst : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • dttimeout : sdio_type
  • dttimeoutien : sdio_type
  • dttmr : sdio_type
  • dttmr_bit : sdio_type
  • dutymode : i2c_type
  • dzc : can_type
  • dzen : can_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- e -

  • eaf : can_type
  • eaien : can_type
  • ecc : xmc_bank2_type, xmc_bank3_type
  • ecc_code : sd_csd_struct_type
  • ecc_enable : xmc_nand_init_type
  • ecc_pagesize : xmc_nand_init_type
  • eccen : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • eccpgs : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • ecmben : tmr_type
  • edzien : can_type
  • edzif : can_type
  • en : xmc_bank1_ctrl_tmg_reg_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • Enable_8_bit_mode : CFCardStruct
  • enable_wait : xmc_pccard_init_type
  • enpd : usb_audio_hid_type, usb_audio_type
  • eoien : can_type
  • eoif : can_type
  • eopb0 : usd_type
  • epf : can_type
  • epien : can_type
  • epp0 : usd_type
  • epp1 : usd_type
  • epp2 : usd_type
  • epp3 : usd_type
  • epperr : flash_type
  • epps : flash_type
  • epps_bit : flash_type
  • ept : usbd_type
  • ept0_rx_handler : usbd_class_handler
  • ept0_slen : usb_ept_info
  • ept0_sts : usbd_core_type
  • ept0_tx_handler : usbd_class_handler
  • ept0_wlength : usbd_core_type
  • ept_address : usb_ept_info
  • ept_bit : usbd_type
  • ept_in : usbd_core_type
  • ept_num : usbd_type
  • ept_out : usbd_core_type
  • eptaddr : usbd_type
  • eptn : usb_ept_info
  • erase_group_size : sd_csd_struct_type
  • erase_group_size_mult : sd_csd_struct_type
  • err_code : sense_type
  • errie : flash_type, spi_type
  • errien : i2c_type, usart_type
  • error_code : i2c_handle_type
  • erstr : flash_type
  • esdiv : tmr_type
  • esf : tmr_type
  • esp : tmr_type
  • ests : can_type
  • ests_bit : can_type
  • etr : can_type
  • etrien : can_type
  • event_handler : usbd_class_handler
  • evoen : iomux_type
  • evten : exint_type
  • evten_bit : exint_type
  • evtenx : exint_type
  • evtien : i2c_type
  • evtout : iomux_type
  • evtout_bit : iomux_type
  • exf : usbd_type
  • exint0 : iomux_type
  • exint1 : iomux_type
  • exint10 : iomux_type
  • exint11 : iomux_type
  • exint12 : iomux_type
  • exint13 : iomux_type
  • exint14 : iomux_type
  • exint15 : iomux_type
  • exint2 : iomux_type
  • exint3 : iomux_type
  • exint4 : iomux_type
  • exint5 : iomux_type
  • exint6 : iomux_type
  • exint7 : iomux_type
  • exint8 : iomux_type
  • exint9 : iomux_type
  • exintc1 : iomux_type
  • exintc1_bit : iomux_type
  • exintc2 : iomux_type
  • exintc2_bit : iomux_type
  • exintc3 : iomux_type
  • exintc3_bit : iomux_type
  • exintc4 : iomux_type
  • exintc4_bit : iomux_type
  • exintrst : crm_type
  • ext : xmc_bank1_type
  • ext_bit : xmc_bank1_type
  • ext_flash_key : usd_type
  • ext_spim_en_mux : iomux_type
  • extended_id : can_rx_message_type, can_tx_message_type
  • extmdbw : xmc_bank1_ctrl_tmg_reg_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- f -

  • fa : flash_type
  • facfg : can_type
  • facfg_bit : can_type
  • faen0 : can_type
  • faen1 : can_type
  • faen10 : can_type
  • faen11 : can_type
  • faen12 : can_type
  • faen13 : can_type
  • faen2 : can_type
  • faen3 : can_type
  • faen4 : can_type
  • faen5 : can_type
  • faen6 : can_type
  • faen7 : can_type
  • faen8 : can_type
  • faen9 : can_type
  • fap : flash_type, usd_type
  • fbn : spi_type
  • fbwcfg : can_type
  • fbwcfg_bit : can_type
  • fbwsel0 : can_type
  • fbwsel1 : can_type
  • fbwsel10 : can_type
  • fbwsel11 : can_type
  • fbwsel12 : can_type
  • fbwsel13 : can_type
  • fbwsel2 : can_type
  • fbwsel3 : can_type
  • fbwsel4 : can_type
  • fbwsel5 : can_type
  • fbwsel6 : can_type
  • fbwsel7 : can_type
  • fbwsel8 : can_type
  • fbwsel9 : can_type
  • fcs : can_type
  • fcsodis : tmr_type
  • fcsodis_state : tmr_brkdt_config_type
  • fcsoen : tmr_type
  • fcsoen_state : tmr_brkdt_config_type
  • fctrl : can_type
  • fctrl_bit : can_type
  • fda : flash_type
  • fdtf1 : dma_type
  • fdtf2 : dma_type
  • fdtf3 : dma_type
  • fdtf4 : dma_type
  • fdtf5 : dma_type
  • fdtf6 : dma_type
  • fdtf7 : dma_type
  • fdtfc1 : dma_type
  • fdtfc2 : dma_type
  • fdtfc3 : dma_type
  • fdtfc4 : dma_type
  • fdtfc5 : dma_type
  • fdtfc6 : dma_type
  • fdtfc7 : dma_type
  • fdtien : dma_channel_type
  • feien : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • ferr : usart_type
  • fes : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • ffb : can_type
  • ffdb1 : can_filter_register_type
  • ffdb2 : can_filter_register_type
  • fifo_length : iap_info_type
  • fifo_mailbox : can_type
  • fifoe : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • fifth_id : nand_id_type
  • file_formart : sd_csd_struct_type
  • file_format_group : sd_csd_struct_type
  • file_name : fat_dir_type
  • file_size : fat_dir_type
  • file_write_nr : flash_iap_type
  • filter_activate_enable : can_filter_init_type
  • filter_bit : can_filter_init_type
  • filter_fifo : can_filter_init_type
  • filter_id_high : can_filter_init_type
  • filter_id_low : can_filter_init_type
  • filter_index : can_rx_message_type
  • filter_mask_high : can_filter_init_type
  • filter_mask_low : can_filter_init_type
  • filter_mode : can_filter_init_type
  • filter_number : can_filter_init_type
  • firmware_length : flash_iap_type
  • first_bit_transmission : spi_init_type
  • flag_address : iap_info_type
  • flash_app_addr : flash_iap_type
  • flash_app_size : flash_iap_type
  • flash_base_addr : flash_iap_type
  • flash_end_address : iap_info_type
  • flash_size : flash_iap_type, iap_info_type
  • flash_start_address : iap_info_type
  • flashen : crm_type
  • fmcfg : can_type
  • fmcfg_bit : can_type
  • fmsel0 : can_type
  • fmsel1 : can_type
  • fmsel10 : can_type
  • fmsel11 : can_type
  • fmsel12 : can_type
  • fmsel13 : can_type
  • fmsel2 : can_type
  • fmsel3 : can_type
  • fmsel4 : can_type
  • fmsel5 : can_type
  • fmsel6 : can_type
  • fmsel7 : can_type
  • fmsel8 : can_type
  • fmsel9 : can_type
  • format : linecoding_type
  • fourth_id : nand_id_type
  • fprgm : flash_type
  • fpx : exint_type
  • frame_bit_num : spi_init_type
  • frame_type : can_rx_message_type, can_tx_message_type
  • frf : can_type
  • frf_bit : can_type
  • frfsel0 : can_type
  • frfsel1 : can_type
  • frfsel10 : can_type
  • frfsel11 : can_type
  • frfsel12 : can_type
  • frfsel13 : can_type
  • frfsel2 : can_type
  • frfsel3 : can_type
  • frfsel4 : can_type
  • frfsel5 : can_type
  • frfsel6 : can_type
  • frfsel7 : can_type
  • frfsel8 : can_type
  • frfsel9 : can_type
  • fzc : can_type
  • fzen : can_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- g -

  • g_audio_cur : usb_audio_hid_type, usb_audio_type
  • g_cmd : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • g_keyboard_tx_completed : vcp_keyboard_type
  • g_len : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • g_printer_data : printer_type
  • g_printer_port_status : printer_type
  • g_req : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • g_rx_buff : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_rx_completed : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_rxhid_buff : custom_hid_type, iap_info_type, usb_audio_hid_type
  • g_rxlen : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_tx_completed : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_txhid_buff : custom_hid_type, usb_audio_hid_type
  • g_u8tx_completed : keyboard_type
  • gcaddrf : i2c_type
  • gcaen : i2c_type
  • gdiv : usart_type
  • gdiv_bit : usart_type
  • genstart : i2c_type
  • genstop : i2c_type
  • get_device_config_string : usbd_desc_handler
  • get_device_configuration : usbd_desc_handler
  • get_device_descriptor : usbd_desc_handler
  • get_device_interface_string : usbd_desc_handler
  • get_device_lang_id : usbd_desc_handler
  • get_device_manufacturer_string : usbd_desc_handler
  • get_device_other_speed : usbd_desc_handler
  • get_device_product_string : usbd_desc_handler
  • get_device_qualifier : usbd_desc_handler
  • get_device_serial_string : usbd_desc_handler
  • gf1 : dma_type
  • gf2 : dma_type
  • gf3 : dma_type
  • gf4 : dma_type
  • gf5 : dma_type
  • gf6 : dma_type
  • gf7 : dma_type
  • gfc1 : dma_type
  • gfc2 : dma_type
  • gfc3 : dma_type
  • gfc4 : dma_type
  • gfc5 : dma_type
  • gfc6 : dma_type
  • gfc7 : dma_type
  • gpio_drive_strength : gpio_init_type
  • gpio_mode : gpio_init_type
  • gpio_out_type : gpio_init_type
  • gpio_pins : gpio_init_type
  • gpio_pull : gpio_init_type
  • gpioaen : crm_type
  • gpioarst : crm_type
  • gpioben : crm_type
  • gpiobrst : crm_type
  • gpiocen : crm_type
  • gpiocrst : crm_type
  • gpioden : crm_type
  • gpiodrst : crm_type
  • gpioeen : crm_type
  • gpioerst : crm_type
  • gpiofen : crm_type
  • gpiofrst : crm_type
  • gpiogen : crm_type
  • gpiogrst : crm_type
  • gresume : usbd_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- h -

  • h : sc_atr_type
  • hallde : tmr_type
  • hallien : tmr_type
  • hallif : tmr_type
  • hallswtr : tmr_type
  • hdtf1 : dma_type
  • hdtf2 : dma_type
  • hdtf3 : dma_type
  • hdtf4 : dma_type
  • hdtf5 : dma_type
  • hdtf6 : dma_type
  • hdtf7 : dma_type
  • hdtfc1 : dma_type
  • hdtfc2 : dma_type
  • hdtfc3 : dma_type
  • hdtfc4 : dma_type
  • hdtfc5 : dma_type
  • hdtfc6 : dma_type
  • hdtfc7 : dma_type
  • hdtien : dma_channel_type
  • Head : CFCardAddrStruct
  • head : usart_group_type
  • hextbyps : crm_type
  • hexten : crm_type
  • hextstbl : crm_type
  • hextstblf : crm_type
  • hextstblfc : crm_type
  • hextstblien : crm_type
  • hfcen : sdio_type
  • hickcal : crm_type
  • hickcal_key : crm_type
  • hicken : crm_type
  • hickstbl : crm_type
  • hickstblf : crm_type
  • hickstblfc : crm_type
  • hickstblien : crm_type
  • hicktrim : crm_type
  • hid_get_report : custom_hid_type
  • hid_protocol : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_set_idle : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_set_report : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_state : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_suspend_flag : keyboard_type, mouse_type
  • hlength : sc_atr_type
  • hlien : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • hls : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • hostaddrf : i2c_type
  • hour : calendar_type
  • hwcsoe : spi_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- i -

  • i2c1_mux : iomux_type
  • i2c1_smbus_timeout : debug_type
  • i2c1en : crm_type
  • i2c1rst : crm_type
  • i2c2_smbus_timeout : debug_type
  • i2c2en : crm_type
  • i2c2rst : crm_type
  • i2c3_mux : iomux_type
  • i2c3_smbus_timeout : debug_type
  • i2c3en : crm_type
  • i2c3rst : crm_type
  • i2cen : i2c_type
  • i2cx : i2c_handle_type
  • i2scbn : spi_type
  • i2sclk : spi_type
  • i2sclk_bit : spi_type
  • i2sclkpol : spi_type
  • i2sctrl : spi_type
  • i2sctrl_bit : spi_type
  • i2sdbn : spi_type
  • i2sdiv_h : spi_type
  • i2sdiv_l : spi_type
  • i2sen : spi_type
  • i2smclkoe : spi_type
  • i2smsel : spi_type
  • i2sodd : spi_type
  • iap_address : iap_info_type
  • iap_fifo : iap_info_type
  • iap_rx : iap_info_type
  • iap_tx : iap_info_type
  • iConfiguration : usb_configuration_desc_type
  • id : usart_type
  • id_type : can_rx_message_type, can_tx_message_type
  • idcode_bit : debug_type
  • iden : tmr_type
  • iden_bit : tmr_type
  • idlef : usart_type
  • idleien : usart_type
  • idProduct : usb_device_desc_type
  • idt : crc_type, gpio_type
  • idt0 : gpio_type
  • idt1 : gpio_type
  • idt10 : gpio_type
  • idt11 : gpio_type
  • idt12 : gpio_type
  • idt13 : gpio_type
  • idt14 : gpio_type
  • idt15 : gpio_type
  • idt2 : gpio_type
  • idt3 : gpio_type
  • idt4 : gpio_type
  • idt5 : gpio_type
  • idt6 : gpio_type
  • idt7 : gpio_type
  • idt8 : gpio_type
  • idt9 : gpio_type
  • idt_bit : crc_type, gpio_type
  • idVendor : usb_device_desc_type
  • iInterface : usb_interface_desc_type
  • iManufacturer : usb_device_desc_type
  • in_handler : usbd_class_handler
  • information : sense_type
  • Init : PCCARD_HandleType
  • init : touch_dev_type
  • init_handler : usbd_class_handler
  • inout : usb_ept_info, usbd_type
  • input_channel_select : tmr_input_config_type
  • input_filter_value : tmr_input_config_type
  • input_mapped_select : tmr_input_config_type
  • input_polarity_select : tmr_input_config_type
  • Instance : PCCARD_HandleType
  • intclr : sdio_type
  • intclr_bit : sdio_type
  • inten : can_type, exint_type, sdio_type
  • inten_bit : can_type, exint_type, sdio_type
  • intenx : exint_type
  • interface : usb_audio_hid_type, usb_audio_type
  • intsts : exint_type, usbd_type
  • intsts_bit : exint_type, usbd_type
  • intwt : sdio_type
  • IOAddr : CFCardStruct
  • iocb0 : gpio_type
  • iocb1 : gpio_type
  • iocb10 : gpio_type
  • iocb11 : gpio_type
  • iocb12 : gpio_type
  • iocb13 : gpio_type
  • iocb14 : gpio_type
  • iocb15 : gpio_type
  • iocb2 : gpio_type
  • iocb3 : gpio_type
  • iocb4 : gpio_type
  • iocb5 : gpio_type
  • iocb6 : gpio_type
  • iocb7 : gpio_type
  • iocb8 : gpio_type
  • iocb9 : gpio_type
  • ioen : sdio_type
  • iofc0 : gpio_type
  • iofc1 : gpio_type
  • iofc10 : gpio_type
  • iofc11 : gpio_type
  • iofc12 : gpio_type
  • iofc13 : gpio_type
  • iofc14 : gpio_type
  • iofc15 : gpio_type
  • iofc2 : gpio_type
  • iofc3 : gpio_type
  • iofc4 : gpio_type
  • iofc5 : gpio_type
  • iofc6 : gpio_type
  • iofc7 : gpio_type
  • iofc8 : gpio_type
  • iofc9 : gpio_type
  • iohizt : xmc_bank4_type
  • ioht : xmc_bank4_type
  • ioif : sdio_type
  • ioifien : sdio_type
  • iomc0 : gpio_type
  • iomc1 : gpio_type
  • iomc10 : gpio_type
  • iomc11 : gpio_type
  • iomc12 : gpio_type
  • iomc13 : gpio_type
  • iomc14 : gpio_type
  • iomc15 : gpio_type
  • iomc2 : gpio_type
  • iomc3 : gpio_type
  • iomc4 : gpio_type
  • iomc5 : gpio_type
  • iomc6 : gpio_type
  • iomc7 : gpio_type
  • iomc8 : gpio_type
  • iomc9 : gpio_type
  • iomuxen : crm_type
  • iomuxrst : crm_type
  • iosb0 : gpio_type
  • iosb1 : gpio_type
  • iosb10 : gpio_type
  • iosb11 : gpio_type
  • iosb12 : gpio_type
  • iosb13 : gpio_type
  • iosb14 : gpio_type
  • iosb15 : gpio_type
  • iosb2 : gpio_type
  • iosb3 : gpio_type
  • iosb4 : gpio_type
  • iosb5 : gpio_type
  • iosb6 : gpio_type
  • iosb7 : gpio_type
  • iosb8 : gpio_type
  • iosb9 : gpio_type
  • iost : xmc_bank4_type
  • iosusp : sdio_type
  • iowt : xmc_bank4_type
  • iProduct : usb_device_desc_type
  • irdaen : usart_type
  • irdalp : usart_type
  • is_double_buffer : usb_ept_info
  • isdiv : usart_type
  • iSerialNumber : usb_device_desc_type
  • ists : tmr_type
  • ists_bit : tmr_type
  • itsrven : adc_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- k -

  • keyboard_buf : keyboard_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- l -

  • last_access_data : fat_dir_type
  • last_len : usb_ept_info
  • lbcp : usart_type
  • lben : can_type
  • lcd_clear : lcd_dev_type
  • lcd_id : lcd_dev_type
  • lcd_init : lcd_dev_type
  • lcd_set_block : lcd_dev_type
  • length : usbd_desc_t
  • lextbyps : crm_type
  • lexten : crm_type
  • lextstbl : crm_type
  • lextstblf : crm_type
  • lextstblfc : crm_type
  • lextstblien : crm_type
  • licken : crm_type
  • lickstbl : crm_type
  • lickstblf : crm_type
  • lickstblfc : crm_type
  • lickstblien : crm_type
  • line_enable : exint_init_type
  • line_mode : exint_init_type
  • line_polarity : exint_init_type
  • line_select : exint_init_type
  • linecoding : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • linen : usart_type
  • linex : exint_type
  • lm : dma_channel_type
  • Lock : PCCARD_HandleType
  • loen : can_type
  • loop_mode_enable : dma_init_type
  • lpm : usbd_type
  • lprstf : crm_type
  • lpsel : pwc_type
  • lsamprx : can_type
  • lsof : usbd_type
  • lsofien : usbd_type
  • lsofnum : usbd_type
  • ltf : spi_type
  • lun : cbd_extended_type, cbd_typical_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- m -

  • m2m : dma_channel_type
  • mackctrl : i2c_type
  • maddr : dma_channel_type
  • maddr_bit : dma_channel_type
  • maker_id : nand_id_type
  • manufact_date : sd_cid_struct_type
  • manufacturer_code : nor_idtype
  • manufacturer_default_ecc : sd_csd_struct_type
  • manufacturer_id : sd_cid_struct_type
  • master_slave_mode : spi_init_type
  • max_bus_clk_freq : sd_csd_struct_type
  • max_lun : cdc_msc_struct_type, msc_type
  • Max_Mutiple_Sector : CFCardInfoStruct
  • max_read_blk_length : sd_csd_struct_type
  • max_read_current_vdd_max : sd_csd_struct_type
  • max_read_current_vdd_min : sd_csd_struct_type
  • max_write_blk_length : sd_csd_struct_type
  • max_write_current_vdd_max : sd_csd_struct_type
  • max_write_current_vdd_min : sd_csd_struct_type
  • maxpacket : usb_ept_info
  • mclk_freq_division : spi_init_type
  • mclk_output_enable : i2s_init_type
  • mctrl : can_type
  • mctrl_bit : can_type
  • mdiv_h : spi_type
  • mdiv_l : spi_type
  • mdrsel : can_type
  • mdrsel_selection : can_base_type
  • mem_hiz_time : xmc_nand_pccard_timinginit_type
  • mem_hold_time : xmc_nand_pccard_timinginit_type
  • mem_setup_time : xmc_nand_pccard_timinginit_type
  • mem_waite_time : xmc_nand_pccard_timinginit_type
  • memory_base_addr : dma_init_type
  • memory_data_width : dma_init_type
  • memory_inc_enable : dma_init_type
  • mic_adj_count : audio_codec_type
  • mic_adj_stage : audio_codec_type
  • mic_alt_setting : usb_audio_hid_type, usb_audio_type
  • mic_buffer : audio_codec_type
  • mic_calc : audio_codec_type
  • mic_delta : audio_codec_type
  • mic_enable : audio_codec_type
  • mic_freq : usb_audio_hid_type, usb_audio_type
  • mic_mute : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • mic_roff : audio_codec_type
  • mic_rtotal : audio_codec_type
  • mic_rx_size : audio_codec_type
  • mic_stage : audio_codec_type
  • mic_volume : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • mic_volume_limits : usb_audio_hid_type, usb_audio_type
  • mic_wend : audio_codec_type
  • mic_woff : audio_codec_type
  • mic_wtotal : audio_codec_type
  • min : calendar_type
  • mincm : dma_channel_type
  • misc1 : crm_type
  • misc1_bit : crm_type
  • mmerr : spi_type
  • mmssr : can_type
  • mmssr_selection : can_base_type
  • mode : i2c_handle_type, xmc_norsram_timing_init_type
  • mode_selection : can_base_type
  • month : calendar_type
  • mouse_buffer : mouse_type
  • msc_state : cdc_msc_struct_type, msc_type
  • msc_up_status : flash_iap_type
  • mssel : adc_type
  • msten : spi_type
  • msts : can_type
  • msts_bit : can_type
  • Mutiple_Sector_Setting : CFCardInfoStruct
  • mwidth : dma_channel_type
  • mwmc : xmc_bank1_ctrl_tmg_reg_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- n -

  • nand_bank : xmc_nand_init_type
  • nerr : usart_type
  • noren : xmc_bank1_ctrl_tmg_reg_type
  • nrstf : crm_type
  • nsac : sd_csd_struct_type
  • ntc : spi_type
  • nwasen : xmc_bank1_ctrl_tmg_reg_type
  • nwen : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • nwpol : xmc_bank1_ctrl_tmg_reg_type
  • nwsen : xmc_bank1_ctrl_tmg_reg_type
  • nwtcfg : xmc_bank1_ctrl_tmg_reg_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- o -

  • oaddr1 : i2c_type
  • oaddr1_bit : i2c_type
  • oaddr2 : i2c_type
  • oaddr2_bit : i2c_type
  • obf : flash_type
  • oc_idle_state : tmr_output_config_type
  • oc_mode : tmr_output_config_type
  • oc_output_state : tmr_output_config_type
  • oc_polarity : tmr_output_config_type
  • occ_idle_state : tmr_output_config_type
  • occ_output_state : tmr_output_config_type
  • occ_polarity : tmr_output_config_type
  • occs : adc_type
  • ocdmaen : adc_type
  • oclen : adc_type
  • ocmen : tmr_type
  • ocpcnt : adc_type
  • ocpen : adc_type
  • ocswtrg : adc_type
  • octen : adc_type
  • octesel_h : adc_type
  • octesel_l : adc_type
  • ocvmen : adc_type
  • odf : flash_type
  • odfie : flash_type
  • odt : adc_type, gpio_type
  • odt0 : gpio_type
  • odt1 : gpio_type
  • odt10 : gpio_type
  • odt11 : gpio_type
  • odt12 : gpio_type
  • odt13 : gpio_type
  • odt14 : gpio_type
  • odt15 : gpio_type
  • odt2 : gpio_type
  • odt3 : gpio_type
  • odt4 : gpio_type
  • odt5 : gpio_type
  • odt6 : gpio_type
  • odt7 : gpio_type
  • odt8 : gpio_type
  • odt9 : gpio_type
  • odt_bit : adc_type, gpio_type
  • oem_app_id : sd_cid_struct_type
  • oen : tmr_type
  • old_conn_state : usbd_core_type
  • opcode : cbd_extended_type, cbd_typical_type
  • operation_mode : i2s_init_type
  • opersel : spi_type
  • oplk : flash_type
  • ora : spi_type
  • ordinary_channel_length : adc_base_config_type
  • osn1 : adc_type
  • osn10 : adc_type
  • osn11 : adc_type
  • osn12 : adc_type
  • osn13 : adc_type
  • osn14 : adc_type
  • osn15 : adc_type
  • osn16 : adc_type
  • osn2 : adc_type
  • osn3 : adc_type
  • osn4 : adc_type
  • osn5 : adc_type
  • osn6 : adc_type
  • osn7 : adc_type
  • osn8 : adc_type
  • osn9 : adc_type
  • osq1 : adc_type
  • osq1_bit : adc_type
  • osq2 : adc_type
  • osq2_bit : adc_type
  • osq3 : adc_type
  • osq3_bit : adc_type
  • ouf : i2c_type
  • out_handler : usbd_class_handler
  • outen : bpr_type
  • outm : bpr_type
  • outsel : bpr_type
  • ovfden : tmr_type
  • ovfen : tmr_type
  • ovff : rtc_type
  • ovfien : rtc_type, tmr_type
  • ovfif : tmr_type
  • ovfs : tmr_type
  • ovfswtr : tmr_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- p -

  • paddr : dma_channel_type
  • paddr_bit : dma_channel_type
  • page : nand_address_type
  • parity : linecoding_type
  • part_blk_read : sd_csd_struct_type
  • part_blk_write : sd_csd_struct_type
  • pbuff : i2c_handle_type
  • pcautoen : adc_type
  • pcce : adc_type
  • pcceien : adc_type
  • pccs : adc_type
  • pcdto1 : adc_type
  • pcdto1_bit : adc_type
  • pcdto2 : adc_type
  • pcdto2_bit : adc_type
  • pcdto3 : adc_type
  • pcdto3_bit : adc_type
  • pcdto4 : adc_type
  • pcdto4_bit : adc_type
  • pclen : adc_type
  • pcmfssel : spi_type
  • pcount : i2c_handle_type
  • pcpen : adc_type
  • pcswtrg : adc_type
  • pcten : adc_type
  • pctesel_h : adc_type
  • pctesel_l : adc_type
  • pcvmen : adc_type
  • pd01_mux : iomux_type
  • pdata : usbd_class_handler
  • pdt1 : adc_type
  • pdt1_bit : adc_type
  • pdt2 : adc_type
  • pdt2_bit : adc_type
  • pdt3 : adc_type
  • pdt3_bit : adc_type
  • pdt4 : adc_type
  • pdt4_bit : adc_type
  • pecen : i2c_type
  • pecerr : i2c_type
  • pecten : i2c_type
  • pecval : i2c_type
  • pen : usart_type
  • peripheral_base_addr : dma_init_type
  • peripheral_data_width : dma_init_type
  • peripheral_inc_enable : dma_init_type
  • permanent_write_protect : sd_csd_struct_type
  • permode : i2c_type
  • perr : usart_type
  • perrien : usart_type
  • pid : debug_type
  • pincm : dma_channel_type
  • pllen : crm_type
  • pllhextdiv : crm_type
  • pllmult_h : crm_type
  • pllmult_l : crm_type
  • pllrange : crm_type
  • pllrcs : crm_type
  • pllstbl : crm_type
  • pllstblf : crm_type
  • pllstblfc : crm_type
  • pllstblien : crm_type
  • pmen : tmr_type
  • pndwt : sdio_type
  • polcfg1 : exint_type
  • polcfg1_bit : exint_type
  • polcfg2 : exint_type
  • polcfg2_bit : exint_type
  • poly : crc_type
  • poly_bit : crc_type
  • poly_size : crc_type
  • porrstf : crm_type
  • pr : tmr_type
  • pr_bit : tmr_type
  • prben : tmr_type
  • prgmerr : flash_type
  • priority : dma_init_type
  • product_name1 : sd_cid_struct_type
  • product_name2 : sd_cid_struct_type
  • product_reversion : sd_cid_struct_type
  • product_sn : sd_cid_struct_type
  • Protocol : CFCardStruct
  • prsf_enable : can_base_type
  • prsfen : can_type
  • ps : sdio_type
  • psel : usart_type
  • psn1 : adc_type
  • psn2 : adc_type
  • psn3 : adc_type
  • psn4 : adc_type
  • psq : adc_type
  • psq_bit : adc_type
  • psr : flash_type
  • psr_bit : flash_type
  • ptd : can_type
  • ptos : tmr_type
  • pvmen : pwc_type
  • pvmof : pwc_type
  • pvmsel : pwc_type
  • pwcen : crm_type
  • pwcrst : crm_type
  • pwidth : dma_channel_type
  • pwrctrl : sdio_type
  • pwrctrl_bit : sdio_type
  • pwrsven : sdio_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- q -

  • qdzien : can_type
  • qdzif : can_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- r -

  • rca : sd_card_info_struct_type
  • rcrc : spi_type
  • rcrc_bit : spi_type
  • rdbf : i2c_type, spi_type, usart_type
  • rdbfie : spi_type
  • rdbfien : usart_type
  • rdwtmode : sdio_type
  • rdwtstart : sdio_type
  • rdwtstop : sdio_type
  • read_blk_misalign : sd_csd_struct_type
  • read_crc : flash_iap_type
  • realrx : can_type
  • rec : can_type
  • reien : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • rem0_len : usb_ept_info
  • remap : iomux_type
  • remap2 : iomux_type
  • remap2_bit : iomux_type
  • remap_bit : iomux_type
  • remote_wakup : usbd_core_type
  • ren : usart_type
  • repeat_mode : adc_base_config_type
  • request_no : usb_audio_hid_type, usb_audio_type
  • res : fat_dir_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved : tmr_type, usd_type
  • reserved1 : adc_type, bpr_type, can_fifo_mailbox_type, can_tx_mailbox_type, can_type, cbd_extended_type, cbd_typical_type, crc_type, crm_type, dac_type, debug_type, dma_channel_type, dma_type, exint_type, flash_type, gpio_type, i2c_type, iomux_type, pwc_type, rtc_type, sd_cid_struct_type, sd_csd_struct_type, sd_scr_struct_type, sdio_type, sense_type, spi_type, tmr_type, usart_type, usbd_type, wdt_type, wwdt_type, xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type, xmc_bank1_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved2 : adc_type, bpr_type, can_tx_mailbox_type, can_type, cbd_extended_type, cbd_typical_type, crc_type, crm_type, dac_type, debug_type, flash_type, i2c_type, iomux_type, pwc_type, sd_cid_struct_type, sd_csd_struct_type, sdio_type, sense_type, spi_type, tmr_type, usart_type, usbd_type, xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type, xmc_bank1_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved3 : adc_type, bpr_type, can_type, crm_type, debug_type, flash_type, i2c_type, iomux_type, sd_csd_struct_type, sense_type, usart_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved4 : adc_type, can_type, crm_type, flash_type, sd_csd_struct_type
  • reserved5 : can_type, crm_type
  • reserved6 : can_type
  • reserverd2 : sd_scr_struct_type
  • reserverd3 : sd_scr_struct_type
  • reset : i2c_type
  • respond_flag : iap_info_type
  • revid : crc_type
  • revod : crc_type
  • rf0 : can_type
  • rf0_bit : can_type
  • rf0ff : can_type
  • rf0fien : can_type
  • rf0mien : can_type
  • rf0mn : can_type
  • rf0of : can_type
  • rf0oien : can_type
  • rf0r : can_type
  • rf1 : can_type
  • rf1_bit : can_type
  • rf1ff : can_type
  • rf1fien : can_type
  • rf1mien : can_type
  • rf1mn : can_type
  • rf1of : can_type
  • rf1oien : can_type
  • rf1r : can_type
  • rfc : can_fifo_mailbox_type
  • rfc_bit : can_fifo_mailbox_type
  • rfdt0 : can_fifo_mailbox_type
  • rfdt1 : can_fifo_mailbox_type
  • rfdt2 : can_fifo_mailbox_type
  • rfdt3 : can_fifo_mailbox_type
  • rfdt4 : can_fifo_mailbox_type
  • rfdt5 : can_fifo_mailbox_type
  • rfdt6 : can_fifo_mailbox_type
  • rfdt7 : can_fifo_mailbox_type
  • rfdth : can_fifo_mailbox_type
  • rfdth_bit : can_fifo_mailbox_type
  • rfdtl : can_fifo_mailbox_type
  • rfdtl_bit : can_fifo_mailbox_type
  • rfeid : can_fifo_mailbox_type
  • rffmn : can_fifo_mailbox_type
  • rffri : can_fifo_mailbox_type
  • rfi : can_fifo_mailbox_type
  • rfi_bit : can_fifo_mailbox_type
  • rfidi : can_fifo_mailbox_type
  • rfsid : can_fifo_mailbox_type
  • rfts : can_fifo_mailbox_type
  • risetime : i2c_type
  • rld : wdt_type
  • rld_bit : wdt_type
  • rldf : wdt_type, wwdt_type
  • rldien : wwdt_type
  • rm : usart_type
  • roerr : spi_type, usart_type
  • rpen : adc_type
  • rpr : tmr_type
  • rpr_bit : tmr_type
  • rpx : exint_type
  • rsaw : can_type
  • rsaw_size : can_baudrate_type
  • rsp1 : sdio_type
  • rsp1_bit : sdio_type
  • rsp2 : sdio_type
  • rsp2_bit : sdio_type
  • rsp3 : sdio_type
  • rsp3_bit : sdio_type
  • rsp4 : sdio_type
  • rsp4_bit : sdio_type
  • rsp_type : sdio_command_struct_type
  • rspcmd : sdio_type
  • rspcmd_bit : sdio_type
  • rspwt : sdio_type
  • rst : crc_type, usbd_type
  • rstfc : crm_type
  • rstien : usbd_type
  • rtccal : bpr_type
  • rtccal_bit : bpr_type
  • rtcen : crm_type
  • rtcsel : crm_type
  • rtsen : usart_type
  • rwtd : xmc_bank1_ctrl_tmg_reg_type
  • rx_addr : usb_ept_info
  • rxbuf : sdio_type
  • rxbufe : sdio_type
  • rxbufeien : sdio_type
  • rxbuff : sdio_type
  • rxbuffien : sdio_type
  • rxbufh : sdio_type
  • rxbufhien : sdio_type
  • rxbufien : sdio_type
  • rxdts : usbd_type
  • rxerro : sdio_type
  • rxerroien : sdio_type
  • rxsts : usbd_type
  • rxtc : usbd_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- s -

  • sbf : usart_type
  • sbiterr : sdio_type
  • sbiterrien : sdio_type
  • scgt : usart_type
  • sclk_freq : crm_clocks_freq_type
  • sclksel : crm_type
  • sclksts : crm_type
  • scmen : usart_type
  • scnacken : usart_type
  • scr : gpio_type
  • scr_bit : gpio_type
  • scr_structure : sd_scr_struct_type
  • sd_bus_width : sd_scr_struct_type
  • sd_cid_reg : sd_card_info_struct_type
  • sd_csd_reg : sd_card_info_struct_type
  • sd_scr_reg : sd_card_info_struct_type
  • sd_security : sd_scr_struct_type
  • sd_spec : sd_scr_struct_type
  • sd_spec3 : sd_scr_struct_type
  • sdio1en : crm_type
  • sdio2_mux : iomux_type
  • sdio2en : crm_type
  • sec : calendar_type
  • secers : flash_type
  • Sector : CFCardAddrStruct
  • Sector_Count : CFCardAddrStruct
  • sector_mask : flash_iap_type
  • sector_size : flash_iap_type, iap_info_type
  • SectorSize : CFCardAddrStruct
  • sef : pwc_type
  • select : flash_type
  • select_bit : flash_type
  • selpin : iomux_type
  • selport : iomux_type
  • sense_key : sense_type
  • sequence_mode : adc_base_config_type
  • setup : usbd_core_type
  • setup_buffer : usbd_core_type
  • setup_handler : usbd_class_handler
  • setuptc : usbd_type
  • sixth_id : nand_id_type
  • slben : spi_type, usart_type
  • slbtd : spi_type
  • sleep_debug : debug_type
  • smbalert : i2c_type
  • smbmode : i2c_type
  • smsel : tmr_type
  • sof : usbd_type
  • sof_handler : usbd_class_handler
  • sofien : usbd_type
  • sofnum : usbd_type
  • sofrnum : usbd_type
  • sofrnum_bit : usbd_type
  • sp : usbd_type
  • spec_version : sd_csd_struct_type
  • speed : i2c_type, usbd_core_type
  • speedmode : i2c_type
  • spi1_mux_h : iomux_type
  • spi1_mux_l : iomux_type
  • spi1en : crm_type
  • spi1rst : crm_type
  • spi2en : crm_type
  • spi2rst : crm_type
  • spi3en : crm_type
  • spi3rst : crm_type
  • spi4_mux : iomux_type
  • spi4en : crm_type
  • spi4rst : crm_type
  • spien : spi_type, usbd_type
  • spk_alt_setting : usb_audio_hid_type, usb_audio_type
  • spk_buffer : audio_codec_type
  • spk_calc : audio_codec_type
  • spk_enable : audio_codec_type
  • spk_freq : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • spk_mute : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • spk_rend : audio_codec_type
  • spk_roff : audio_codec_type
  • spk_rtotal : audio_codec_type
  • spk_stage : audio_codec_type
  • spk_threshold : audio_codec_type
  • spk_tx_size : audio_codec_type
  • spk_volume : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • spk_volume_limits : usb_audio_hid_type, usb_audio_type
  • spk_woff : audio_codec_type
  • spk_wtotal : audio_codec_type
  • sprst : can_type
  • spt1 : adc_type
  • spt1_bit : adc_type
  • spt2 : adc_type
  • spt2_bit : adc_type
  • sqen : adc_type
  • sramen : crm_type
  • ssb : usd_type
  • ssp : usbd_type
  • stall : usb_ept_info
  • standard_id : can_rx_message_type, can_tx_message_type
  • standby_debug : debug_type
  • startf : i2c_type
  • state : iap_info_type
  • State : PCCARD_HandleType
  • status : i2c_handle_type, usb_ept_info
  • stctrl : tmr_type
  • stctrl_bit : tmr_type
  • stdby_rst : flash_type
  • stdsel : spi_type
  • stis : tmr_type
  • stopbn : usart_type
  • stopf : i2c_type
  • stretch : i2c_type
  • sts : adc_type, dma_type, flash_type, sdio_type, spi_type, tmr_type, usart_type, wdt_type, wwdt_type
  • sts1 : i2c_type
  • sts1_bit : i2c_type
  • sts2 : flash_type, i2c_type
  • sts2_bit : flash_type, i2c_type
  • sts3 : flash_type
  • sts3_bit : flash_type
  • sts_bit : adc_type, dma_type, flash_type, sdio_type, spi_type, usart_type, wdt_type, wwdt_type
  • subbank : xmc_norsram_init_type, xmc_norsram_timing_init_type
  • swcsen : spi_type
  • swcsil : spi_type
  • swef : pwc_type
  • swevt : tmr_type
  • swevt_bit : tmr_type
  • swjtag_mux : iomux_type
  • swpen : pwc_type
  • swrstf : crm_type
  • swtrg : dac_type, exint_type
  • swtrg_bit : dac_type, exint_type
  • swtx : exint_type
  • syncben : xmc_bank1_ctrl_tmg_reg_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- t -

  • t : sc_atr_type
  • t0 : sc_atr_type
  • ta : rtc_type
  • taac : sd_csd_struct_type
  • taf : rtc_type
  • tah : rtc_type
  • tah_bit : rtc_type
  • taien : rtc_type
  • tail : usart_group_type
  • tal : rtc_type
  • tal_bit : rtc_type
  • tar : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • tc : usbd_type
  • tcien : can_type, usbd_type
  • tcr : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • tcrc : spi_type
  • tcrc_bit : spi_type
  • tdbe : i2c_type, spi_type, usart_type
  • tdbeie : spi_type
  • tdbeien : usart_type
  • tdc : i2c_type, usart_type
  • tdcien : usart_type
  • tden : tmr_type
  • tec : can_type
  • temp : keyboard_type
  • temp_write_protect : sd_csd_struct_type
  • ten : usart_type
  • tfrdir : sdio_type
  • tfren : sdio_type
  • tfrmode : sdio_type
  • third_id : nand_id_type
  • tien : tmr_type
  • tim8_pause : debug_type
  • timeout : i2c_handle_type, sdio_data_struct_type, sdio_type
  • tlength : sc_atr_type
  • tm0alf : can_type
  • tm0ct : can_type
  • tm0ef : can_type
  • tm0lpf : can_type
  • tm0tcf : can_type
  • tm0tef : can_type
  • tm0tsf : can_type
  • tm1alf : can_type
  • tm1ct : can_type
  • tm1ef : can_type
  • tm1lpf : can_type
  • tm1tcf : can_type
  • tm1tef : can_type
  • tm1tsf : can_type
  • tm2alf : can_type
  • tm2ct : can_type
  • tm2ef : can_type
  • tm2lpf : can_type
  • tm2tcf : can_type
  • tm2tef : can_type
  • tm2tsf : can_type
  • tmc : can_tx_mailbox_type
  • tmc_bit : can_tx_mailbox_type
  • tmdt0 : can_tx_mailbox_type
  • tmdt1 : can_tx_mailbox_type
  • tmdt2 : can_tx_mailbox_type
  • tmdt3 : can_tx_mailbox_type
  • tmdt4 : can_tx_mailbox_type
  • tmdt5 : can_tx_mailbox_type
  • tmdt6 : can_tx_mailbox_type
  • tmdt7 : can_tx_mailbox_type
  • tmdtbl : can_tx_mailbox_type
  • tmdth : can_tx_mailbox_type
  • tmdth_bit : can_tx_mailbox_type
  • tmdtl : can_tx_mailbox_type
  • tmdtl_bit : can_tx_mailbox_type
  • tmeid : can_tx_mailbox_type
  • tmfrsel : can_tx_mailbox_type
  • tmgwr_group : xmc_bank1_type
  • tmi : can_tx_mailbox_type
  • tmi_bit : can_tx_mailbox_type
  • tmidsel : can_tx_mailbox_type
  • tmnr : can_type
  • tmout : i2c_type
  • tmr10_mux : iomux_type
  • tmr10_pause : debug_type
  • tmr10en : crm_type
  • tmr10rst : crm_type
  • tmr11_mux : iomux_type
  • tmr11_pause : debug_type
  • tmr11en : crm_type
  • tmr11rst : crm_type
  • tmr12_pause : debug_type
  • tmr12en : crm_type
  • tmr12rst : crm_type
  • tmr13_mux : iomux_type
  • tmr13_pause : debug_type
  • tmr13en : crm_type
  • tmr13rst : crm_type
  • tmr14_mux : iomux_type
  • tmr14_pause : debug_type
  • tmr14en : crm_type
  • tmr14rst : crm_type
  • tmr15_mux : iomux_type
  • tmr15_pause : debug_type
  • tmr15en : crm_type
  • tmr15rst : crm_type
  • tmr1_mux : iomux_type
  • tmr1_pause : debug_type
  • tmr1en : crm_type
  • tmr1rst : crm_type
  • tmr2_mux : iomux_type
  • tmr2_pause : debug_type
  • tmr2en : crm_type
  • tmr2rst : crm_type
  • tmr3_mux : iomux_type
  • tmr3_pause : debug_type
  • tmr3en : crm_type
  • tmr3rst : crm_type
  • tmr4_mux : iomux_type
  • tmr4_pause : debug_type
  • tmr4en : crm_type
  • tmr4rst : crm_type
  • tmr5_pause : debug_type
  • tmr5ch4_mux : iomux_type
  • tmr5en : crm_type
  • tmr5rst : crm_type
  • tmr6_pause : debug_type
  • tmr6en : crm_type
  • tmr6rst : crm_type
  • tmr7_pause : debug_type
  • tmr7en : crm_type
  • tmr7rst : crm_type
  • tmr8en : crm_type
  • tmr8rst : crm_type
  • tmr9_mux : iomux_type
  • tmr9_pause : debug_type
  • tmr9en : crm_type
  • tmr9rst : crm_type
  • tmren : tmr_type
  • tmrise : i2c_type
  • tmrise_bit : i2c_type
  • tmsid : can_tx_mailbox_type
  • tmsr : can_tx_mailbox_type
  • tmts : can_tx_mailbox_type
  • tmtsten : can_tx_mailbox_type
  • Total_LBA_Sector : CFCardInfoStruct
  • total_len : usb_ept_info
  • Total_Sector : CFCardInfoStruct
  • touch_adjust : touch_dev_type
  • touch_read_xy : touch_dev_type
  • touch_scan : touch_dev_type
  • tpef : bpr_type
  • tpefclr : bpr_type
  • tpen : bpr_type
  • tpien : bpr_type
  • tpif : bpr_type
  • tpifclr : bpr_type
  • tpp : bpr_type
  • trace_ioen : debug_type
  • trace_mode : debug_type
  • trans_buf : usb_ept_info
  • trans_len : usb_ept_info
  • trans_type : usb_ept_info, usbd_type
  • transfer_direction : sdio_data_struct_type
  • transfer_mode : sdio_data_struct_type
  • transmission_mode : spi_init_type
  • trgif : tmr_type
  • trgswtr : tmr_type
  • trmode : i2c_type
  • ts : sc_atr_type
  • tsf : rtc_type
  • tsien : rtc_type
  • tsts : can_type
  • tsts_bit : can_type
  • ttc_enable : can_base_type
  • ttcen : can_type
  • tuerr : spi_type
  • tx_addr : usb_ept_info
  • tx_length : iap_info_type
  • tx_mailbox : can_type
  • txbuf : sdio_type
  • txbufe : sdio_type
  • txbufeien : sdio_type
  • txbuff : sdio_type
  • txbuffien : sdio_type
  • txbufh : sdio_type
  • txbufhien : sdio_type
  • txbufien : sdio_type
  • txdts : usbd_type
  • txerru : sdio_type
  • txerruien : sdio_type
  • txsts : usbd_type
  • txtc : usbd_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- u -

  • uart4en : crm_type
  • uart4rst : crm_type
  • uart5en : crm_type
  • uart5rst : crm_type
  • ucfor : usbd_type
  • ucforien : usbd_type
  • uen : usart_type
  • ukval : flash_type
  • unlock : flash_type
  • unlock2 : flash_type
  • unlock2_bit : flash_type
  • unlock3 : flash_type
  • unlock3_bit : flash_type
  • unlock_bit : flash_type
  • updf : rtc_type
  • usart1_mux : iomux_type
  • usart1en : crm_type
  • usart1rst : crm_type
  • usart2_mux : iomux_type
  • usart2en : crm_type
  • usart2rst : crm_type
  • usart3_mux : iomux_type
  • usart3en : crm_type
  • usart3rst : crm_type
  • usb_reg : usbd_core_type
  • usbbufs : crm_type
  • usbdiv_h : crm_type
  • usbdiv_l : crm_type
  • usben : crm_type
  • usbrst : crm_type
  • usd : flash_type
  • usd_bit : flash_type
  • usd_ukval : flash_type
  • usd_unlock : flash_type
  • usd_unlock_bit : flash_type
  • usderr : flash_type
  • usders : flash_type
  • usdprgm : flash_type
  • usdulks : flash_type
  • user_d0 : flash_type
  • user_d1 : flash_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- v -

  • vmcsel : adc_type
  • vmhb : adc_type
  • vmhb_bit : adc_type
  • vmlb : adc_type
  • vmlb_bit : adc_type
  • vmor : adc_type
  • vmorien : adc_type
  • vmsgen : adc_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- w -

  • wait_enable : xmc_nand_init_type
  • wait_signal_config : xmc_norsram_init_type
  • wait_signal_enable : xmc_norsram_init_type
  • wait_signal_lv : xmc_norsram_init_type
  • wait_type : sdio_command_struct_type
  • wdt_ato_en : flash_type
  • wdt_pause : debug_type
  • wdtrstf : crm_type
  • week : calendar_type
  • wen : xmc_bank1_ctrl_tmg_reg_type
  • win : wwdt_type
  • wIndex : usb_setup_type
  • wk : usbd_type
  • wkien : usbd_type
  • wLength : usb_setup_type
  • wMaxPacketSize : usb_endpoint_desc_type
  • wp_level : tmr_brkdt_config_type
  • wpc : tmr_type
  • wpen0 : gpio_type
  • wpen1 : gpio_type
  • wpen10 : gpio_type
  • wpen11 : gpio_type
  • wpen12 : gpio_type
  • wpen13 : gpio_type
  • wpen14 : gpio_type
  • wpen15 : gpio_type
  • wpen2 : gpio_type
  • wpen3 : gpio_type
  • wpen4 : gpio_type
  • wpen5 : gpio_type
  • wpen6 : gpio_type
  • wpen7 : gpio_type
  • wpen8 : gpio_type
  • wpen9 : gpio_type
  • wpr : gpio_type
  • wpr_bit : gpio_type
  • wpseq : gpio_type
  • wrapen : xmc_bank1_ctrl_tmg_reg_type
  • wrapped_mode_enable : xmc_norsram_init_type
  • write_addr : flash_iap_type
  • write_blk_misalign : sd_csd_struct_type
  • write_burst_syn : xmc_norsram_init_type
  • write_crc : flash_iap_type
  • write_data : fat_dir_type
  • write_enable : xmc_norsram_init_type
  • write_protect_group_enable : sd_csd_struct_type
  • write_protect_group_size : sd_csd_struct_type
  • write_speed_factor : sd_csd_struct_type
  • write_time : fat_dir_type
  • write_timing_enable : xmc_norsram_init_type, xmc_norsram_timing_init_type
  • wTotalLength : usb_configuration_desc_type
  • wum : usart_type
  • wValue : usb_setup_type
  • wwdt_pause : debug_type
  • wwdten : crm_type, wwdt_type
  • wwdtrst : crm_type
  • wwdtrstf : crm_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- x -

  • x_p : touch_dev_type
  • xmc_init : lcd_dev_type
  • xmc_nadv_mux : iomux_type
  • xmcen : crm_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- y -

  • y_p : touch_dev_type
  • year : calendar_type


AT32F403 Firmwary Library: Data Fields

Here is a list of all struct and union fields with links to the structures/unions they belong to:

- z -

  • zone : nand_address_type


AT32F403 Firmwary Library: Data Fields - Variables

- a -

  • ACESS_25_SECTORS_PASS : verification_result_struct
  • acken : i2c_type
  • ackfail : i2c_type
  • acs : spi_type
  • adc1_extrgord_mux : iomux_type
  • adc1_extrgpre_mux : iomux_type
  • adc1en : crm_type
  • adc1rst : crm_type
  • adc2_extrgord_mux : iomux_type
  • adc2_extrgpre_mux : iomux_type
  • adc2en : crm_type
  • adc2odt : adc_type
  • adc2rst : crm_type
  • adc3en : crm_type
  • adc3rst : crm_type
  • adc_freq : crm_clocks_freq_type
  • adcal : adc_type
  • adcalinit : adc_type
  • adcdiv_h : crm_type
  • adcdiv_l : crm_type
  • adcen : adc_type
  • addr : flash_type, tmr_type, usbd_type
  • addr1 : i2c_type
  • addr1mode : i2c_type
  • addr2 : flash_type, i2c_type
  • addr2_bit : flash_type
  • addr2en : i2c_type
  • addr3 : flash_type
  • addr3_bit : flash_type
  • addr7f : i2c_type
  • addr_bit : flash_type
  • addr_hold_time : xmc_norsram_timing_init_type
  • addr_setup_time : xmc_norsram_timing_init_type
  • address : cbd_extended_type, cbd_typical_type
  • addrhf : i2c_type
  • addrht : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • addrst : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • admuxen : xmc_bank1_ctrl_tmg_reg_type
  • aebo_enable : can_base_type
  • aeboen : can_type
  • aed_enable : can_base_type
  • aeden : can_type
  • ahb_freq : crm_clocks_freq_type
  • ahbdiv : crm_type
  • ahben : crm_type
  • ahben_bit : crm_type
  • alertf : i2c_type
  • alloc_length : cbd_extended_type, cbd_typical_type
  • alt_setting : cdc_msc_struct_type, cdc_struct_type, custom_hid_type, iap_info_type, keyboard_type, mouse_type, msc_type, printer_type, usb_audio_hid_type, vcp_keyboard_type
  • amdhizt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • amht : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • amst : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • amwt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • aoen : tmr_type
  • apb1_freq : crm_clocks_freq_type
  • apb1div : crm_type
  • apb1en : crm_type
  • apb1en_bit : crm_type
  • apb1rst : crm_type
  • apb1rst_bit : crm_type
  • apb2_freq : crm_clocks_freq_type
  • apb2div : crm_type
  • apb2en : crm_type
  • apb2en_bit : crm_type
  • apb2rst : crm_type
  • apb2rst_bit : crm_type
  • app_address : iap_info_type
  • argu : sdio_type
  • argu_bit : sdio_type
  • argument : sdio_command_struct_type
  • arlost : i2c_type
  • arpen : i2c_type
  • as_length : sense_type
  • asc : sense_type
  • ascq : sense_type
  • asyncm : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • asynwait_enable : xmc_norsram_init_type
  • ATA_CHECK_POWER_MODE_PASS : verification_result_struct
  • ATA_ERASE_SECTOR_PASS : verification_result_struct
  • ATA_EXECUTE_DRIVE_DIAG_PASS : verification_result_struct
  • ATA_FORMAT_TRACK_PASS : verification_result_struct
  • ATA_IDENTIFY_DRIVE_PASS : verification_result_struct
  • ATA_IDLE_IMMEDIATE_PASS : verification_result_struct
  • ATA_IDLE_PASS : verification_result_struct
  • ATA_INIT_DRIVE_PARA_PASS : verification_result_struct
  • ATA_READ_BUFFER_PASS : verification_result_struct
  • ATA_READ_LONG_SECTOR_PASS : verification_result_struct
  • ATA_READ_MULTIPLE_PASS : verification_result_struct
  • ATA_READ_SECTOR_PASS : verification_result_struct
  • ATA_READ_VERIFY_SECTOR_PASS : verification_result_struct
  • ATA_RECALIBRATE_PASS : verification_result_struct
  • ATA_REQUEST_SENSE_PASS : verification_result_struct
  • ATA_SECURITY_DISABLE_PASSWORD_PASS : verification_result_struct
  • ATA_SECURITY_ERASE_UNIT_PASS : verification_result_struct
  • ATA_SECURITY_EREASE_PREPARE_PASS : verification_result_struct
  • ATA_SECURITY_FREEZE_LOCK_PASS : verification_result_struct
  • ATA_SECURITY_SET_PASSWORD_PASS : verification_result_struct
  • ATA_SECURITY_UNLOCK_PASS : verification_result_struct
  • ATA_SEEK_PASS : verification_result_struct
  • ATA_SET_FEATURE_PASS : verification_result_struct
  • ATA_SET_MULTIPLE_MODE_PASS : verification_result_struct
  • ATA_SET_SLEEP_MODE_PASS : verification_result_struct
  • ATA_STANDBY_IMMEDIATE_PASS : verification_result_struct
  • ATA_STANDBY_PASS : verification_result_struct
  • ATA_TRANSLATE_SECTOR_PASS : verification_result_struct
  • ATA_WEAR_LEVEL_PASS : verification_result_struct
  • ATA_WRITE_BUFFER_PASS : verification_result_struct
  • ATA_WRITE_LONG_SECTOR_PASS : verification_result_struct
  • ATA_WRITE_MULTIPLE_PASS : verification_result_struct
  • ATA_WRITE_MULTIPLE_WO_ERASE_PASS : verification_result_struct
  • ATA_WRITE_SECTOR_PASS : verification_result_struct
  • ATA_WRITE_SECTOR_WO_ERASE_PASS : verification_result_struct
  • ATA_WRITE_VERIFY_PASS : verification_result_struct
  • attr : fat_dir_type
  • ATTRIBUTE_RW_PASS : verification_result_struct
  • audio_bitw : audio_codec_type
  • audio_cmd : usb_audio_hid_type, usb_audio_type
  • audio_cmd_len : usb_audio_hid_type, usb_audio_type
  • audio_feed_back : usb_audio_hid_type, usb_audio_type
  • audio_freq : audio_codec_type
  • audio_mic_data : usb_audio_hid_type, usb_audio_type
  • audio_protocol : i2s_init_type
  • audio_sampling_freq : i2s_init_type
  • audio_spk_data : usb_audio_hid_type, usb_audio_type
  • auto_output_enable : tmr_brkdt_config_type


AT32F403 Firmwary Library: Data Fields - Variables

- b -

  • bAlternateSetting : usb_interface_desc_type
  • bankers : flash_type
  • baudr : usart_type
  • baudr_bit : usart_type
  • baudrate_div : can_baudrate_type
  • bCBWCBLength : cbw_type
  • bCBWLUN : cbw_type
  • bcdDevice : usb_device_desc_type
  • bcdUSB : usb_device_desc_type
  • bConfigurationValue : usb_configuration_desc_type
  • bCSWStatus : csw_type
  • bDescriptorType : usb_configuration_desc_type, usb_device_desc_type, usb_endpoint_desc_type, usb_header_desc_type, usb_interface_desc_type
  • bDeviceClass : usb_device_desc_type
  • bDeviceProtocol : usb_device_desc_type
  • bDeviceSubClass : usb_device_desc_type
  • be : usbd_type
  • beien : usbd_type
  • bEndpointAddress : usb_endpoint_desc_type
  • bf : spi_type
  • bfbn : usart_type
  • bff : usart_type
  • bfien : usart_type
  • bInterfaceClass : usb_interface_desc_type
  • bInterfaceNumber : usb_interface_desc_type
  • bInterfaceProtocol : usb_interface_desc_type
  • bInterfaceSubClass : usb_interface_desc_type
  • bInterval : usb_endpoint_desc_type
  • bitrate : linecoding_type
  • bk1ctrl : xmc_bank1_ctrl_tmg_reg_type
  • bk1ctrl_bit : xmc_bank1_ctrl_tmg_reg_type
  • bk1tmg : xmc_bank1_ctrl_tmg_reg_type
  • bk1tmg_bit : xmc_bank1_ctrl_tmg_reg_type
  • bk1tmgwr : xmc_bank1_tmgwr_reg_type
  • bk1tmgwr_bit : xmc_bank1_tmgwr_reg_type
  • bk2ctrl : xmc_bank2_type
  • bk2ctrl_bit : xmc_bank2_type
  • bk2ecc : xmc_bank2_type
  • bk2ecc_bit : xmc_bank2_type
  • bk2is : xmc_bank2_type
  • bk2is_bit : xmc_bank2_type
  • bk2tmgatt : xmc_bank2_type
  • bk2tmgatt_bit : xmc_bank2_type
  • bk2tmgmem : xmc_bank2_type
  • bk2tmgmem_bit : xmc_bank2_type
  • bk3ctrl : xmc_bank3_type
  • bk3ctrl_bit : xmc_bank3_type
  • bk3ecc : xmc_bank3_type
  • bk3ecc_bit : xmc_bank3_type
  • bk3is : xmc_bank3_type
  • bk3is_bit : xmc_bank3_type
  • bk3tmgatt : xmc_bank3_type
  • bk3tmgatt_bit : xmc_bank3_type
  • bk3tmgmem : xmc_bank3_type
  • bk3tmgmem_bit : xmc_bank3_type
  • bk4ctrl : xmc_bank4_type
  • bk4ctrl_bit : xmc_bank4_type
  • bk4is : xmc_bank4_type
  • bk4is_bit : xmc_bank4_type
  • bk4tmgatt : xmc_bank4_type
  • bk4tmgatt_bit : xmc_bank4_type
  • bk4tmgio : xmc_bank4_type
  • bk4tmgio_bit : xmc_bank4_type
  • bk4tmgmem : xmc_bank4_type
  • bk4tmgmem_bit : xmc_bank4_type
  • bLength : usb_configuration_desc_type, usb_device_desc_type, usb_endpoint_desc_type, usb_header_desc_type, usb_interface_desc_type
  • blk_addr : cdc_msc_struct_type, msc_type
  • blk_len : cdc_msc_struct_type, msc_type
  • blk_nbr : cdc_msc_struct_type, msc_type
  • blk_size : cdc_msc_struct_type, msc_type
  • blksize : sdio_type
  • block : nand_address_type
  • block_size : sdio_data_struct_type
  • bmAttributes : usb_configuration_desc_type, usb_endpoint_desc_type
  • bMaxPacketSize0 : usb_device_desc_type
  • bMaxPower : usb_configuration_desc_type
  • bmCBWFlags : cbw_type
  • bmRequestType : usb_setup_type
  • bNumConfigurations : usb_device_desc_type
  • bNumEndpoints : usb_interface_desc_type
  • bNumInterfaces : usb_configuration_desc_type
  • bof : can_type
  • boien : can_type
  • bot_status : cdc_msc_struct_type, msc_type
  • bpdc : crm_type
  • bpdc_bit : crm_type
  • bpdrst : crm_type
  • bpren : crm_type
  • bprrst : crm_type
  • bpwen : pwc_type
  • brdiv : can_type
  • bRequest : usb_setup_type
  • brk : tmr_type
  • brk_bit : tmr_type
  • brk_enable : tmr_brkdt_config_type
  • brk_polarity : tmr_brkdt_config_type
  • brken : tmr_type
  • brkie : tmr_type
  • brkif : tmr_type
  • brkswtr : tmr_type
  • brkv : tmr_type
  • btaddr : usbd_type
  • btmg : can_type
  • btmg_bit : can_type
  • btopt : flash_type
  • bts1 : can_type
  • bts1_size : can_baudrate_type
  • bts2 : can_type
  • bts2_size : can_baudrate_type
  • buf : sdio_type, usart_group_type
  • buf_bit : sdio_type
  • bufcnt : sdio_type
  • bufcnt_bit : sdio_type
  • buffer_size : dma_init_type
  • buftbl : usbd_type
  • buftbl_bit : usbd_type
  • burst_mode_enable : xmc_norsram_init_type
  • bus_latency_time : xmc_norsram_timing_init_type
  • bus_type : xmc_nand_init_type, xmc_norsram_init_type
  • buserr : i2c_type
  • buslat : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • buslatr2r : xmc_bank1_type
  • buslatw2w : xmc_bank1_type
  • busws : sdio_type
  • busyf : i2c_type
  • bypsen : sdio_type
  • byte : nand_address_type


AT32F403 Firmwary Library: Data Fields - Variables

- c -

  • c1c : tmr_type
  • c1cen : tmr_type
  • c1cios : tmr_type
  • c1cp : tmr_type
  • c1den : tmr_type
  • c1df : tmr_type
  • c1dt : tmr_type
  • c1dt_bit : tmr_type
  • c1en : tmr_type
  • c1idiv : tmr_type
  • c1ien : tmr_type
  • c1if : tmr_type
  • c1insel : tmr_type
  • c1ios : tmr_type
  • c1oben : tmr_type
  • c1octrl : tmr_type
  • c1oien : tmr_type
  • c1osen : tmr_type
  • c1p : tmr_type
  • c1rf : tmr_type
  • c1swtr : tmr_type
  • c2c : tmr_type
  • c2cen : tmr_type
  • c2cios : tmr_type
  • c2cp : tmr_type
  • c2den : tmr_type
  • c2df : tmr_type
  • c2dt : tmr_type
  • c2dt_bit : tmr_type
  • c2en : tmr_type
  • c2idiv : tmr_type
  • c2ien : tmr_type
  • c2if : tmr_type
  • c2ios : tmr_type
  • c2oben : tmr_type
  • c2octrl : tmr_type
  • c2oien : tmr_type
  • c2osen : tmr_type
  • c2p : tmr_type
  • c2rf : tmr_type
  • c2swtr : tmr_type
  • c3c : tmr_type
  • c3cen : tmr_type
  • c3cios : tmr_type
  • c3cp : tmr_type
  • c3den : tmr_type
  • c3df : tmr_type
  • c3dt : tmr_type
  • c3dt_bit : tmr_type
  • c3en : tmr_type
  • c3idiv : tmr_type
  • c3ien : tmr_type
  • c3if : tmr_type
  • c3ios : tmr_type
  • c3oben : tmr_type
  • c3octrl : tmr_type
  • c3oien : tmr_type
  • c3osen : tmr_type
  • c3p : tmr_type
  • c3rf : tmr_type
  • c3swtr : tmr_type
  • c4c : tmr_type
  • c4den : tmr_type
  • c4df : tmr_type
  • c4dt : tmr_type
  • c4dt_bit : tmr_type
  • c4en : tmr_type
  • c4idiv : tmr_type
  • c4ien : tmr_type
  • c4if : tmr_type
  • c4ios : tmr_type
  • c4oben : tmr_type
  • c4octrl : tmr_type
  • c4oien : tmr_type
  • c4osen : tmr_type
  • c4p : tmr_type
  • c4rf : tmr_type
  • c4swtr : tmr_type
  • calout : bpr_type
  • calval : bpr_type
  • can1_pause : debug_type
  • can1en : crm_type
  • can1rst : crm_type
  • can_mux : iomux_type
  • card_blk_size : sd_card_info_struct_type
  • card_capacity : sd_card_info_struct_type
  • card_cmd_classes : sd_csd_struct_type
  • card_type : sd_card_info_struct_type
  • cardsts1 : sdio_type
  • cardsts2 : sdio_type
  • cardsts3 : sdio_type
  • cardsts4 : sdio_type
  • cbctrl : tmr_type
  • cbw_struct : cdc_msc_struct_type, msc_type
  • CBWCB : cbw_type
  • cce : adc_type
  • cceien : adc_type
  • ccen : spi_type
  • ccerr : spi_type
  • ccfs : tmr_type
  • ccos : bpr_type
  • ccsmen : sdio_type
  • cctrl : tmr_type
  • cctrl_bit : tmr_type
  • cdt : crc_type
  • cdt_bit : crc_type
  • cen : usbd_type
  • CF : PCCARD_HandleType
  • CFAddr : CFCardStruct
  • CFCardInfo : CFCardStruct
  • cfden : crm_type
  • cfdf : crm_type
  • cfdfc : crm_type
  • cfg : crm_type, wwdt_type
  • cfg_bit : crm_type, wwdt_type
  • cfgen : rtc_type
  • cfgf : rtc_type
  • cfghr : gpio_type
  • cfghr_bit : gpio_type
  • cfglr : gpio_type
  • cfglr_bit : gpio_type
  • chen : dma_channel_type
  • chpers : flash_type
  • chpl : dma_channel_type
  • cid_crc : sd_cid_struct_type
  • CIS_READ_PASS : verification_result_struct
  • class_bank : xmc_nand_pccard_timinginit_type
  • class_handler : usbd_core_type
  • clck : usbd_type
  • clear_handler : usbd_class_handler
  • clk_psc : xmc_norsram_timing_init_type
  • clkctrl : i2c_type, sdio_type
  • clkctrl_bit : i2c_type, sdio_type
  • clkdiv : tmr_type
  • clkdiv_h : sdio_type
  • clkdiv_l : sdio_type
  • clkegs : sdio_type
  • clken : usart_type
  • clkfreq : i2c_type
  • clkint : crm_type
  • clkint_bit : crm_type
  • clkoen : sdio_type
  • clkout_sel : crm_type
  • clkpha : spi_type, usart_type
  • clkpol : spi_type, usart_type
  • clkpsc : xmc_bank1_ctrl_tmg_reg_type
  • clock_phase : spi_init_type
  • clock_polarity : i2s_init_type, spi_init_type
  • clr : dma_type, gpio_type
  • clr_bit : dma_type, gpio_type
  • clsef : pwc_type
  • clswef : pwc_type
  • clus_high : fat_dir_type
  • clus_low : fat_dir_type
  • cm1 : tmr_type
  • cm1_input_bit : tmr_type
  • cm1_output_bit : tmr_type
  • cm2 : tmr_type
  • cm2_input_bit : tmr_type
  • cm2_output_bit : tmr_type
  • cmd : wdt_type
  • cmd20_support : sd_scr_struct_type
  • cmd23_support : sd_scr_struct_type
  • cmd_addr : cmd_data_group_type
  • cmd_bit : wdt_type
  • cmd_buf : cmd_data_group_type
  • cmd_check : cmd_data_group_type
  • cmd_head : cmd_data_group_type
  • cmd_index : sdio_command_struct_type
  • cmdcmpl : sdio_type
  • cmdcmplien : sdio_type
  • cmdctrl : sdio_type
  • cmdctrl_bit : sdio_type
  • cmdfail : sdio_type
  • cmdfailien : sdio_type
  • cmdhizt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cmdidx : sdio_type
  • cmdrspcmpl : sdio_type
  • cmdrspcmplien : sdio_type
  • cmdtimeout : sdio_type
  • cmdtimeoutien : sdio_type
  • cmht : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cmst : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cmwt : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • cnt : dma_channel_type, rtc_type, sdio_type, wwdt_type
  • cnt_dir : tmr_type
  • cnth : rtc_type
  • cnth_bit : rtc_type
  • cntl : rtc_type
  • cntl_bit : rtc_type
  • config_status : usbd_core_type
  • conn_state : usbd_core_type
  • content_protect_app : sd_csd_struct_type
  • copy_flag : sd_csd_struct_type
  • count : usart_group_type
  • cpoly : spi_type
  • cpoly_bit : spi_type
  • crcen : crm_type
  • create_data : fat_dir_type
  • create_time : fat_dir_type
  • create_time_tenth : fat_dir_type
  • crpgs : xmc_bank1_ctrl_tmg_reg_type
  • cs_mode_selection : spi_init_type
  • csd_crc : sd_csd_struct_type
  • csd_struct : sd_csd_struct_type
  • cspt0 : adc_type
  • cspt1 : adc_type
  • cspt10 : adc_type
  • cspt11 : adc_type
  • cspt12 : adc_type
  • cspt13 : adc_type
  • cspt14 : adc_type
  • cspt15 : adc_type
  • cspt16 : adc_type
  • cspt17 : adc_type
  • cspt2 : adc_type
  • cspt3 : adc_type
  • cspt4 : adc_type
  • cspt5 : adc_type
  • cspt6 : adc_type
  • cspt7 : adc_type
  • cspt8 : adc_type
  • cspt9 : adc_type
  • csrst : usbd_type
  • csw_struct : cdc_msc_struct_type, msc_type
  • ctrl : bpr_type, crc_type, crm_type, dac_type, debug_type, dma_channel_type, flash_type, pwc_type, usbd_type, wwdt_type
  • ctrl1 : adc_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl1_bit : adc_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl2 : adc_type, flash_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl2_bit : adc_type, flash_type, i2c_type, spi_type, tmr_type, usart_type
  • ctrl3 : flash_type, usart_type
  • ctrl3_bit : flash_type, usart_type
  • ctrl_bit : bpr_type, crc_type, crm_type, dac_type, debug_type, dma_channel_type, flash_type, pwc_type, usbd_type, wwdt_type
  • ctrl_tmg_group : xmc_bank1_type
  • ctrlh : rtc_type
  • ctrlh_bit : rtc_type
  • ctrll : rtc_type
  • ctrll_bit : rtc_type
  • ctrlsts : bpr_type, crm_type, pwc_type
  • ctrlsts_bit : bpr_type, crm_type, pwc_type
  • ctscf : usart_type
  • ctscfien : usart_type
  • ctsen : usart_type
  • Current_Cylinder : CFCardInfoStruct
  • Current_Head : CFCardInfoStruct
  • Current_Sector : CFCardInfoStruct
  • curs : can_type
  • cuss : can_type
  • cval : tmr_type
  • cval_bit : tmr_type
  • Cylinder : CFCardAddrStruct


AT32F403 Firmwary Library: Data Fields - Variables

- d -

  • d1dmaen : dac_type
  • d1dt12l : dac_type
  • d1dt12r : dac_type
  • d1dt8r : dac_type
  • d1dth12l : dac_type
  • d1dth12l_bit : dac_type
  • d1dth12r : dac_type
  • d1dth12r_bit : dac_type
  • d1dth8r : dac_type
  • d1dth8r_bit : dac_type
  • d1en : dac_type
  • d1nbsel : dac_type
  • d1nm : dac_type
  • d1obdis : dac_type
  • d1odt : dac_type
  • d1odt_bit : dac_type
  • d1swtrg : dac_type
  • d1trgen : dac_type
  • d1trgsel : dac_type
  • d2dmaen : dac_type
  • d2dt12l : dac_type
  • d2dt12r : dac_type
  • d2dt8r : dac_type
  • d2dth12l : dac_type
  • d2dth12l_bit : dac_type
  • d2dth12r : dac_type
  • d2dth12r_bit : dac_type
  • d2dth8r : dac_type
  • d2dth8r_bit : dac_type
  • d2en : dac_type
  • d2nbsel : dac_type
  • d2nm : dac_type
  • d2obdis : dac_type
  • d2odt : dac_type
  • d2odt_bit : dac_type
  • d2swtrg : dac_type
  • d2trgen : dac_type
  • d2trgsel : dac_type
  • da : flash_type
  • da_bit : flash_type
  • dacen : crm_type
  • dacrst : crm_type
  • data : can_rx_message_type, can_tx_message_type, cdc_msc_struct_type, linecoding_type, msc_type
  • data0 : usd_type
  • data1 : usd_type
  • data2 : usd_type
  • data3 : usd_type
  • data4 : usd_type
  • data5 : usd_type
  • data6 : usd_type
  • data7 : usd_type
  • data_addr_multiplex : xmc_norsram_init_type
  • data_align : adc_base_config_type
  • data_channel_format : i2s_init_type
  • data_latency_time : xmc_norsram_timing_init_type
  • data_len : cdc_msc_struct_type, msc_type
  • data_length : sdio_data_struct_type
  • data_setup_time : xmc_norsram_timing_init_type
  • data_stat_after_erase : sd_scr_struct_type
  • dataien : i2c_type
  • date : calendar_type
  • dbn : usart_type
  • dCBWDataTransferLength : cbw_type
  • dCBWSignature : cbw_type
  • dCBWTage : cbw_type
  • dCSWDataResidue : csw_type
  • dCSWSignature : csw_type
  • dCSWTag : csw_type
  • dd1dt12l : dac_type
  • dd1dt12r : dac_type
  • dd1dt8r : dac_type
  • dd2dt12l : dac_type
  • dd2dt12r : dac_type
  • dd2dt8r : dac_type
  • ddth12l : dac_type
  • ddth12l_bit : dac_type
  • ddth12r : dac_type
  • ddth12r_bit : dac_type
  • ddth8r : dac_type
  • ddth8r_bit : dac_type
  • deadtime : tmr_brkdt_config_type
  • deepsleep_debug : debug_type
  • default_config : usbd_core_type
  • Default_Cylinder : CFCardInfoStruct
  • Default_Head : CFCardInfoStruct
  • Default_Sector : CFCardInfoStruct
  • delay_time_ar : xmc_nand_init_type, xmc_pccard_init_type
  • delay_time_cr : xmc_pccard_init_type
  • delay_time_cycle : xmc_nand_init_type
  • depslp_rst : flash_type
  • desc_handler : usbd_core_type
  • descriptor : usbd_desc_t
  • dev : xmc_bank1_ctrl_tmg_reg_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • dev_config : usbd_core_type
  • devaddr : usbd_type
  • devaddr_bit : usbd_type
  • devaddrf : i2c_type
  • device : xmc_norsram_init_type
  • device_addr : usbd_core_type
  • device_code1 : nor_idtype
  • device_code2 : nor_idtype
  • device_code3 : nor_idtype
  • device_id : nand_id_type
  • device_size : sd_csd_struct_type
  • device_size_mult : sd_csd_struct_type
  • direction : dma_init_type
  • dirf : i2c_type
  • disusb : usbd_type
  • div : rtc_type, tmr_type, usart_type, wdt_type, wwdt_type
  • div_bit : tmr_type, wdt_type
  • divcnt : rtc_type
  • divcnth : rtc_type
  • divcnth_bit : rtc_type
  • divcntl : rtc_type
  • divcntl_bit : rtc_type
  • divf : wdt_type
  • divh : rtc_type
  • divh_bit : rtc_type
  • divl : rtc_type
  • divl_bit : rtc_type
  • dlc : can_rx_message_type, can_tx_message_type
  • dma1en : crm_type
  • dma2en : crm_type
  • dma_init_struct : i2c_handle_type
  • dma_rx_channel : i2c_handle_type
  • dma_tx_channel : i2c_handle_type
  • dmactrl : tmr_type
  • dmactrl_bit : tmr_type
  • dmadt : tmr_type
  • dmadt_bit : tmr_type
  • dmaen : i2c_type, sdio_type
  • DMAEnable : CFCardStruct
  • dmaend : i2c_type
  • dmaren : spi_type, usart_type
  • dmaten : spi_type, usart_type
  • dmsts : usbd_type
  • docmd : sdio_type
  • docmdien : sdio_type
  • dorx : sdio_type
  • dorxien : sdio_type
  • dotx : sdio_type
  • dotxien : sdio_type
  • dpsts : usbd_type
  • draw_point : lcd_dev_type
  • Drive : CFCardStruct
  • drs : tmr_type
  • Drv : CFCardAddrStruct
  • dsr_implemented : sd_csd_struct_type
  • dt : bpr_type, crc_type, i2c_type, sdio_type, spi_type, usart_type
  • dt1 : bpr_type
  • dt10 : bpr_type
  • dt10_bit : bpr_type
  • dt11 : bpr_type
  • dt11_bit : bpr_type
  • dt12 : bpr_type
  • dt12_bit : bpr_type
  • dt13 : bpr_type
  • dt13_bit : bpr_type
  • dt14 : bpr_type
  • dt14_bit : bpr_type
  • dt15 : bpr_type
  • dt15_bit : bpr_type
  • dt16 : bpr_type
  • dt16_bit : bpr_type
  • dt17 : bpr_type
  • dt17_bit : bpr_type
  • dt18 : bpr_type
  • dt18_bit : bpr_type
  • dt19 : bpr_type
  • dt19_bit : bpr_type
  • dt1_bit : bpr_type
  • dt2 : bpr_type
  • dt20 : bpr_type
  • dt20_bit : bpr_type
  • dt21 : bpr_type
  • dt21_bit : bpr_type
  • dt22 : bpr_type
  • dt22_bit : bpr_type
  • dt23 : bpr_type
  • dt23_bit : bpr_type
  • dt24 : bpr_type
  • dt24_bit : bpr_type
  • dt25 : bpr_type
  • dt25_bit : bpr_type
  • dt26 : bpr_type
  • dt26_bit : bpr_type
  • dt27 : bpr_type
  • dt27_bit : bpr_type
  • dt28 : bpr_type
  • dt28_bit : bpr_type
  • dt29 : bpr_type
  • dt29_bit : bpr_type
  • dt2_bit : bpr_type
  • dt3 : bpr_type
  • dt30 : bpr_type
  • dt30_bit : bpr_type
  • dt31 : bpr_type
  • dt31_bit : bpr_type
  • dt32 : bpr_type
  • dt32_bit : bpr_type
  • dt33 : bpr_type
  • dt33_bit : bpr_type
  • dt34 : bpr_type
  • dt34_bit : bpr_type
  • dt35 : bpr_type
  • dt35_bit : bpr_type
  • dt36 : bpr_type
  • dt36_bit : bpr_type
  • dt37 : bpr_type
  • dt37_bit : bpr_type
  • dt38 : bpr_type
  • dt38_bit : bpr_type
  • dt39 : bpr_type
  • dt39_bit : bpr_type
  • dt3_bit : bpr_type
  • dt4 : bpr_type
  • dt40 : bpr_type
  • dt40_bit : bpr_type
  • dt41 : bpr_type
  • dt41_bit : bpr_type
  • dt42 : bpr_type
  • dt42_bit : bpr_type
  • dt4_bit : bpr_type
  • dt5 : bpr_type
  • dt5_bit : bpr_type
  • dt6 : bpr_type
  • dt6_bit : bpr_type
  • dt7 : bpr_type
  • dt7_bit : bpr_type
  • dt8 : bpr_type
  • dt8_bit : bpr_type
  • dt9 : bpr_type
  • dt9_bit : bpr_type
  • dt_bit : crc_type, i2c_type, spi_type, usart_type
  • dtalign : adc_type
  • dtb : tmr_type
  • dtblkcmpl : sdio_type
  • dtblkcmplien : sdio_type
  • dtc : tmr_type
  • dtcmpl : sdio_type
  • dtcmplien : sdio_type
  • dtcnt : dma_channel_type, sdio_type
  • dtcnt_bit : dma_channel_type, sdio_type
  • dtctrl : sdio_type
  • dtctrl_bit : sdio_type
  • dtd : dma_channel_type
  • dterrf1 : dma_type
  • dterrf2 : dma_type
  • dterrf3 : dma_type
  • dterrf4 : dma_type
  • dterrf5 : dma_type
  • dterrf6 : dma_type
  • dterrf7 : dma_type
  • dterrfc1 : dma_type
  • dterrfc2 : dma_type
  • dterrfc3 : dma_type
  • dterrfc4 : dma_type
  • dterrfc5 : dma_type
  • dterrfc6 : dma_type
  • dterrfc7 : dma_type
  • dterrien : dma_channel_type
  • dtfail : sdio_type
  • dtfailien : sdio_type
  • dtlat : xmc_bank1_ctrl_tmg_reg_type
  • dtlen : sdio_type
  • dtlen_bit : sdio_type
  • dtst : xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type
  • dttimeout : sdio_type
  • dttimeoutien : sdio_type
  • dttmr : sdio_type
  • dttmr_bit : sdio_type
  • dutymode : i2c_type
  • dzc : can_type
  • dzen : can_type


AT32F403 Firmwary Library: Data Fields - Variables

- e -

  • eaf : can_type
  • eaien : can_type
  • ecc : xmc_bank2_type, xmc_bank3_type
  • ecc_code : sd_csd_struct_type
  • ecc_enable : xmc_nand_init_type
  • ecc_pagesize : xmc_nand_init_type
  • eccen : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • eccpgs : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • ecmben : tmr_type
  • edzien : can_type
  • edzif : can_type
  • en : xmc_bank1_ctrl_tmg_reg_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • Enable_8_bit_mode : CFCardStruct
  • enable_wait : xmc_pccard_init_type
  • enpd : usb_audio_hid_type, usb_audio_type
  • eoien : can_type
  • eoif : can_type
  • eopb0 : usd_type
  • epf : can_type
  • epien : can_type
  • epp0 : usd_type
  • epp1 : usd_type
  • epp2 : usd_type
  • epp3 : usd_type
  • epperr : flash_type
  • epps : flash_type
  • epps_bit : flash_type
  • ept : usbd_type
  • ept0_rx_handler : usbd_class_handler
  • ept0_slen : usb_ept_info
  • ept0_sts : usbd_core_type
  • ept0_tx_handler : usbd_class_handler
  • ept0_wlength : usbd_core_type
  • ept_address : usb_ept_info
  • ept_bit : usbd_type
  • ept_in : usbd_core_type
  • ept_num : usbd_type
  • ept_out : usbd_core_type
  • eptaddr : usbd_type
  • eptn : usb_ept_info
  • erase_group_size : sd_csd_struct_type
  • erase_group_size_mult : sd_csd_struct_type
  • err_code : sense_type
  • errie : flash_type, spi_type
  • errien : i2c_type, usart_type
  • error_code : i2c_handle_type
  • erstr : flash_type
  • esdiv : tmr_type
  • esf : tmr_type
  • esp : tmr_type
  • ests : can_type
  • ests_bit : can_type
  • etr : can_type
  • etrien : can_type
  • event_handler : usbd_class_handler
  • evoen : iomux_type
  • evten : exint_type
  • evten_bit : exint_type
  • evtenx : exint_type
  • evtien : i2c_type
  • evtout : iomux_type
  • evtout_bit : iomux_type
  • exf : usbd_type
  • exint0 : iomux_type
  • exint1 : iomux_type
  • exint10 : iomux_type
  • exint11 : iomux_type
  • exint12 : iomux_type
  • exint13 : iomux_type
  • exint14 : iomux_type
  • exint15 : iomux_type
  • exint2 : iomux_type
  • exint3 : iomux_type
  • exint4 : iomux_type
  • exint5 : iomux_type
  • exint6 : iomux_type
  • exint7 : iomux_type
  • exint8 : iomux_type
  • exint9 : iomux_type
  • exintc1 : iomux_type
  • exintc1_bit : iomux_type
  • exintc2 : iomux_type
  • exintc2_bit : iomux_type
  • exintc3 : iomux_type
  • exintc3_bit : iomux_type
  • exintc4 : iomux_type
  • exintc4_bit : iomux_type
  • exintrst : crm_type
  • ext : xmc_bank1_type
  • ext_bit : xmc_bank1_type
  • ext_flash_key : usd_type
  • ext_spim_en_mux : iomux_type
  • extended_id : can_rx_message_type, can_tx_message_type
  • extmdbw : xmc_bank1_ctrl_tmg_reg_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type


AT32F403 Firmwary Library: Data Fields - Variables

- f -

  • fa : flash_type
  • facfg : can_type
  • facfg_bit : can_type
  • faen0 : can_type
  • faen1 : can_type
  • faen10 : can_type
  • faen11 : can_type
  • faen12 : can_type
  • faen13 : can_type
  • faen2 : can_type
  • faen3 : can_type
  • faen4 : can_type
  • faen5 : can_type
  • faen6 : can_type
  • faen7 : can_type
  • faen8 : can_type
  • faen9 : can_type
  • fap : flash_type, usd_type
  • fbn : spi_type
  • fbwcfg : can_type
  • fbwcfg_bit : can_type
  • fbwsel0 : can_type
  • fbwsel1 : can_type
  • fbwsel10 : can_type
  • fbwsel11 : can_type
  • fbwsel12 : can_type
  • fbwsel13 : can_type
  • fbwsel2 : can_type
  • fbwsel3 : can_type
  • fbwsel4 : can_type
  • fbwsel5 : can_type
  • fbwsel6 : can_type
  • fbwsel7 : can_type
  • fbwsel8 : can_type
  • fbwsel9 : can_type
  • fcs : can_type
  • fcsodis : tmr_type
  • fcsodis_state : tmr_brkdt_config_type
  • fcsoen : tmr_type
  • fcsoen_state : tmr_brkdt_config_type
  • fctrl : can_type
  • fctrl_bit : can_type
  • fda : flash_type
  • fdtf1 : dma_type
  • fdtf2 : dma_type
  • fdtf3 : dma_type
  • fdtf4 : dma_type
  • fdtf5 : dma_type
  • fdtf6 : dma_type
  • fdtf7 : dma_type
  • fdtfc1 : dma_type
  • fdtfc2 : dma_type
  • fdtfc3 : dma_type
  • fdtfc4 : dma_type
  • fdtfc5 : dma_type
  • fdtfc6 : dma_type
  • fdtfc7 : dma_type
  • fdtien : dma_channel_type
  • feien : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • ferr : usart_type
  • fes : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • ffb : can_type
  • ffdb1 : can_filter_register_type
  • ffdb2 : can_filter_register_type
  • fifo_length : iap_info_type
  • fifo_mailbox : can_type
  • fifoe : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • fifth_id : nand_id_type
  • file_formart : sd_csd_struct_type
  • file_format_group : sd_csd_struct_type
  • file_name : fat_dir_type
  • file_size : fat_dir_type
  • file_write_nr : flash_iap_type
  • filter_activate_enable : can_filter_init_type
  • filter_bit : can_filter_init_type
  • filter_fifo : can_filter_init_type
  • filter_id_high : can_filter_init_type
  • filter_id_low : can_filter_init_type
  • filter_index : can_rx_message_type
  • filter_mask_high : can_filter_init_type
  • filter_mask_low : can_filter_init_type
  • filter_mode : can_filter_init_type
  • filter_number : can_filter_init_type
  • firmware_length : flash_iap_type
  • first_bit_transmission : spi_init_type
  • flag_address : iap_info_type
  • flash_app_addr : flash_iap_type
  • flash_app_size : flash_iap_type
  • flash_base_addr : flash_iap_type
  • flash_end_address : iap_info_type
  • flash_size : flash_iap_type, iap_info_type
  • flash_start_address : iap_info_type
  • flashen : crm_type
  • fmcfg : can_type
  • fmcfg_bit : can_type
  • fmsel0 : can_type
  • fmsel1 : can_type
  • fmsel10 : can_type
  • fmsel11 : can_type
  • fmsel12 : can_type
  • fmsel13 : can_type
  • fmsel2 : can_type
  • fmsel3 : can_type
  • fmsel4 : can_type
  • fmsel5 : can_type
  • fmsel6 : can_type
  • fmsel7 : can_type
  • fmsel8 : can_type
  • fmsel9 : can_type
  • format : linecoding_type
  • fourth_id : nand_id_type
  • fprgm : flash_type
  • fpx : exint_type
  • frame_bit_num : spi_init_type
  • frame_type : can_rx_message_type, can_tx_message_type
  • frf : can_type
  • frf_bit : can_type
  • frfsel0 : can_type
  • frfsel1 : can_type
  • frfsel10 : can_type
  • frfsel11 : can_type
  • frfsel12 : can_type
  • frfsel13 : can_type
  • frfsel2 : can_type
  • frfsel3 : can_type
  • frfsel4 : can_type
  • frfsel5 : can_type
  • frfsel6 : can_type
  • frfsel7 : can_type
  • frfsel8 : can_type
  • frfsel9 : can_type
  • fzc : can_type
  • fzen : can_type


AT32F403 Firmwary Library: Data Fields - Variables

- g -

  • g_audio_cur : usb_audio_hid_type, usb_audio_type
  • g_cmd : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • g_keyboard_tx_completed : vcp_keyboard_type
  • g_len : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • g_printer_data : printer_type
  • g_printer_port_status : printer_type
  • g_req : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • g_rx_buff : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_rx_completed : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_rxhid_buff : custom_hid_type, iap_info_type, usb_audio_hid_type
  • g_rxlen : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_tx_completed : cdc_msc_struct_type, cdc_struct_type, printer_type, vcp_keyboard_type
  • g_txhid_buff : custom_hid_type, usb_audio_hid_type
  • g_u8tx_completed : keyboard_type
  • gcaddrf : i2c_type
  • gcaen : i2c_type
  • gdiv : usart_type
  • gdiv_bit : usart_type
  • genstart : i2c_type
  • genstop : i2c_type
  • get_device_config_string : usbd_desc_handler
  • get_device_configuration : usbd_desc_handler
  • get_device_descriptor : usbd_desc_handler
  • get_device_interface_string : usbd_desc_handler
  • get_device_lang_id : usbd_desc_handler
  • get_device_manufacturer_string : usbd_desc_handler
  • get_device_other_speed : usbd_desc_handler
  • get_device_product_string : usbd_desc_handler
  • get_device_qualifier : usbd_desc_handler
  • get_device_serial_string : usbd_desc_handler
  • gf1 : dma_type
  • gf2 : dma_type
  • gf3 : dma_type
  • gf4 : dma_type
  • gf5 : dma_type
  • gf6 : dma_type
  • gf7 : dma_type
  • gfc1 : dma_type
  • gfc2 : dma_type
  • gfc3 : dma_type
  • gfc4 : dma_type
  • gfc5 : dma_type
  • gfc6 : dma_type
  • gfc7 : dma_type
  • gpio_drive_strength : gpio_init_type
  • gpio_mode : gpio_init_type
  • gpio_out_type : gpio_init_type
  • gpio_pins : gpio_init_type
  • gpio_pull : gpio_init_type
  • gpioaen : crm_type
  • gpioarst : crm_type
  • gpioben : crm_type
  • gpiobrst : crm_type
  • gpiocen : crm_type
  • gpiocrst : crm_type
  • gpioden : crm_type
  • gpiodrst : crm_type
  • gpioeen : crm_type
  • gpioerst : crm_type
  • gpiofen : crm_type
  • gpiofrst : crm_type
  • gpiogen : crm_type
  • gpiogrst : crm_type
  • gresume : usbd_type


AT32F403 Firmwary Library: Data Fields - Variables

- h -

  • h : sc_atr_type
  • hallde : tmr_type
  • hallien : tmr_type
  • hallif : tmr_type
  • hallswtr : tmr_type
  • hdtf1 : dma_type
  • hdtf2 : dma_type
  • hdtf3 : dma_type
  • hdtf4 : dma_type
  • hdtf5 : dma_type
  • hdtf6 : dma_type
  • hdtf7 : dma_type
  • hdtfc1 : dma_type
  • hdtfc2 : dma_type
  • hdtfc3 : dma_type
  • hdtfc4 : dma_type
  • hdtfc5 : dma_type
  • hdtfc6 : dma_type
  • hdtfc7 : dma_type
  • hdtien : dma_channel_type
  • Head : CFCardAddrStruct
  • head : usart_group_type
  • hextbyps : crm_type
  • hexten : crm_type
  • hextstbl : crm_type
  • hextstblf : crm_type
  • hextstblfc : crm_type
  • hextstblien : crm_type
  • hfcen : sdio_type
  • hickcal : crm_type
  • hickcal_key : crm_type
  • hicken : crm_type
  • hickstbl : crm_type
  • hickstblf : crm_type
  • hickstblfc : crm_type
  • hickstblien : crm_type
  • hicktrim : crm_type
  • hid_get_report : custom_hid_type
  • hid_protocol : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_set_idle : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_set_report : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_state : custom_hid_type, iap_info_type, keyboard_type, mouse_type, usb_audio_hid_type, vcp_keyboard_type
  • hid_suspend_flag : keyboard_type, mouse_type
  • hlength : sc_atr_type
  • hlien : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • hls : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • hostaddrf : i2c_type
  • hour : calendar_type
  • hwcsoe : spi_type


AT32F403 Firmwary Library: Data Fields - Variables

- i -

  • i2c1_mux : iomux_type
  • i2c1_smbus_timeout : debug_type
  • i2c1en : crm_type
  • i2c1rst : crm_type
  • i2c2_smbus_timeout : debug_type
  • i2c2en : crm_type
  • i2c2rst : crm_type
  • i2c3_mux : iomux_type
  • i2c3_smbus_timeout : debug_type
  • i2c3en : crm_type
  • i2c3rst : crm_type
  • i2cen : i2c_type
  • i2cx : i2c_handle_type
  • i2scbn : spi_type
  • i2sclk : spi_type
  • i2sclk_bit : spi_type
  • i2sclkpol : spi_type
  • i2sctrl : spi_type
  • i2sctrl_bit : spi_type
  • i2sdbn : spi_type
  • i2sdiv_h : spi_type
  • i2sdiv_l : spi_type
  • i2sen : spi_type
  • i2smclkoe : spi_type
  • i2smsel : spi_type
  • i2sodd : spi_type
  • iap_address : iap_info_type
  • iap_fifo : iap_info_type
  • iap_rx : iap_info_type
  • iap_tx : iap_info_type
  • iConfiguration : usb_configuration_desc_type
  • id : usart_type
  • id_type : can_rx_message_type, can_tx_message_type
  • idcode_bit : debug_type
  • iden : tmr_type
  • iden_bit : tmr_type
  • idlef : usart_type
  • idleien : usart_type
  • idProduct : usb_device_desc_type
  • idt : crc_type, gpio_type
  • idt0 : gpio_type
  • idt1 : gpio_type
  • idt10 : gpio_type
  • idt11 : gpio_type
  • idt12 : gpio_type
  • idt13 : gpio_type
  • idt14 : gpio_type
  • idt15 : gpio_type
  • idt2 : gpio_type
  • idt3 : gpio_type
  • idt4 : gpio_type
  • idt5 : gpio_type
  • idt6 : gpio_type
  • idt7 : gpio_type
  • idt8 : gpio_type
  • idt9 : gpio_type
  • idt_bit : crc_type, gpio_type
  • idVendor : usb_device_desc_type
  • iInterface : usb_interface_desc_type
  • iManufacturer : usb_device_desc_type
  • in_handler : usbd_class_handler
  • information : sense_type
  • Init : PCCARD_HandleType
  • init : touch_dev_type
  • init_handler : usbd_class_handler
  • inout : usb_ept_info, usbd_type
  • input_channel_select : tmr_input_config_type
  • input_filter_value : tmr_input_config_type
  • input_mapped_select : tmr_input_config_type
  • input_polarity_select : tmr_input_config_type
  • Instance : PCCARD_HandleType
  • intclr : sdio_type
  • intclr_bit : sdio_type
  • inten : can_type, exint_type, sdio_type
  • inten_bit : can_type, exint_type, sdio_type
  • intenx : exint_type
  • interface : usb_audio_hid_type, usb_audio_type
  • intsts : exint_type, usbd_type
  • intsts_bit : exint_type, usbd_type
  • intwt : sdio_type
  • IOAddr : CFCardStruct
  • iocb0 : gpio_type
  • iocb1 : gpio_type
  • iocb10 : gpio_type
  • iocb11 : gpio_type
  • iocb12 : gpio_type
  • iocb13 : gpio_type
  • iocb14 : gpio_type
  • iocb15 : gpio_type
  • iocb2 : gpio_type
  • iocb3 : gpio_type
  • iocb4 : gpio_type
  • iocb5 : gpio_type
  • iocb6 : gpio_type
  • iocb7 : gpio_type
  • iocb8 : gpio_type
  • iocb9 : gpio_type
  • ioen : sdio_type
  • iofc0 : gpio_type
  • iofc1 : gpio_type
  • iofc10 : gpio_type
  • iofc11 : gpio_type
  • iofc12 : gpio_type
  • iofc13 : gpio_type
  • iofc14 : gpio_type
  • iofc15 : gpio_type
  • iofc2 : gpio_type
  • iofc3 : gpio_type
  • iofc4 : gpio_type
  • iofc5 : gpio_type
  • iofc6 : gpio_type
  • iofc7 : gpio_type
  • iofc8 : gpio_type
  • iofc9 : gpio_type
  • iohizt : xmc_bank4_type
  • ioht : xmc_bank4_type
  • ioif : sdio_type
  • ioifien : sdio_type
  • iomc0 : gpio_type
  • iomc1 : gpio_type
  • iomc10 : gpio_type
  • iomc11 : gpio_type
  • iomc12 : gpio_type
  • iomc13 : gpio_type
  • iomc14 : gpio_type
  • iomc15 : gpio_type
  • iomc2 : gpio_type
  • iomc3 : gpio_type
  • iomc4 : gpio_type
  • iomc5 : gpio_type
  • iomc6 : gpio_type
  • iomc7 : gpio_type
  • iomc8 : gpio_type
  • iomc9 : gpio_type
  • iomuxen : crm_type
  • iomuxrst : crm_type
  • iosb0 : gpio_type
  • iosb1 : gpio_type
  • iosb10 : gpio_type
  • iosb11 : gpio_type
  • iosb12 : gpio_type
  • iosb13 : gpio_type
  • iosb14 : gpio_type
  • iosb15 : gpio_type
  • iosb2 : gpio_type
  • iosb3 : gpio_type
  • iosb4 : gpio_type
  • iosb5 : gpio_type
  • iosb6 : gpio_type
  • iosb7 : gpio_type
  • iosb8 : gpio_type
  • iosb9 : gpio_type
  • iost : xmc_bank4_type
  • iosusp : sdio_type
  • iowt : xmc_bank4_type
  • iProduct : usb_device_desc_type
  • irdaen : usart_type
  • irdalp : usart_type
  • is_double_buffer : usb_ept_info
  • isdiv : usart_type
  • iSerialNumber : usb_device_desc_type
  • ists : tmr_type
  • ists_bit : tmr_type
  • itsrven : adc_type


AT32F403 Firmwary Library: Data Fields - Variables

- k -

  • keyboard_buf : keyboard_type


AT32F403 Firmwary Library: Data Fields - Variables

- l -

  • last_access_data : fat_dir_type
  • last_len : usb_ept_info
  • lbcp : usart_type
  • lben : can_type
  • lcd_clear : lcd_dev_type
  • lcd_id : lcd_dev_type
  • lcd_init : lcd_dev_type
  • lcd_set_block : lcd_dev_type
  • length : usbd_desc_t
  • lextbyps : crm_type
  • lexten : crm_type
  • lextstbl : crm_type
  • lextstblf : crm_type
  • lextstblfc : crm_type
  • lextstblien : crm_type
  • licken : crm_type
  • lickstbl : crm_type
  • lickstblf : crm_type
  • lickstblfc : crm_type
  • lickstblien : crm_type
  • line_enable : exint_init_type
  • line_mode : exint_init_type
  • line_polarity : exint_init_type
  • line_select : exint_init_type
  • linecoding : cdc_msc_struct_type, cdc_struct_type, vcp_keyboard_type
  • linen : usart_type
  • linex : exint_type
  • lm : dma_channel_type
  • Lock : PCCARD_HandleType
  • loen : can_type
  • loop_mode_enable : dma_init_type
  • lpm : usbd_type
  • lprstf : crm_type
  • lpsel : pwc_type
  • lsamprx : can_type
  • lsof : usbd_type
  • lsofien : usbd_type
  • lsofnum : usbd_type
  • ltf : spi_type
  • lun : cbd_extended_type, cbd_typical_type


AT32F403 Firmwary Library: Data Fields - Variables

- m -

  • m2m : dma_channel_type
  • mackctrl : i2c_type
  • maddr : dma_channel_type
  • maddr_bit : dma_channel_type
  • maker_id : nand_id_type
  • manufact_date : sd_cid_struct_type
  • manufacturer_code : nor_idtype
  • manufacturer_default_ecc : sd_csd_struct_type
  • manufacturer_id : sd_cid_struct_type
  • master_slave_mode : spi_init_type
  • max_bus_clk_freq : sd_csd_struct_type
  • max_lun : cdc_msc_struct_type, msc_type
  • Max_Mutiple_Sector : CFCardInfoStruct
  • max_read_blk_length : sd_csd_struct_type
  • max_read_current_vdd_max : sd_csd_struct_type
  • max_read_current_vdd_min : sd_csd_struct_type
  • max_write_blk_length : sd_csd_struct_type
  • max_write_current_vdd_max : sd_csd_struct_type
  • max_write_current_vdd_min : sd_csd_struct_type
  • maxpacket : usb_ept_info
  • mclk_freq_division : spi_init_type
  • mclk_output_enable : i2s_init_type
  • mctrl : can_type
  • mctrl_bit : can_type
  • mdiv_h : spi_type
  • mdiv_l : spi_type
  • mdrsel : can_type
  • mdrsel_selection : can_base_type
  • mem_hiz_time : xmc_nand_pccard_timinginit_type
  • mem_hold_time : xmc_nand_pccard_timinginit_type
  • mem_setup_time : xmc_nand_pccard_timinginit_type
  • mem_waite_time : xmc_nand_pccard_timinginit_type
  • memory_base_addr : dma_init_type
  • memory_data_width : dma_init_type
  • memory_inc_enable : dma_init_type
  • mic_adj_count : audio_codec_type
  • mic_adj_stage : audio_codec_type
  • mic_alt_setting : usb_audio_hid_type, usb_audio_type
  • mic_buffer : audio_codec_type
  • mic_calc : audio_codec_type
  • mic_delta : audio_codec_type
  • mic_enable : audio_codec_type
  • mic_freq : usb_audio_hid_type, usb_audio_type
  • mic_mute : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • mic_roff : audio_codec_type
  • mic_rtotal : audio_codec_type
  • mic_rx_size : audio_codec_type
  • mic_stage : audio_codec_type
  • mic_volume : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • mic_volume_limits : usb_audio_hid_type, usb_audio_type
  • mic_wend : audio_codec_type
  • mic_woff : audio_codec_type
  • mic_wtotal : audio_codec_type
  • min : calendar_type
  • mincm : dma_channel_type
  • misc1 : crm_type
  • misc1_bit : crm_type
  • mmerr : spi_type
  • mmssr : can_type
  • mmssr_selection : can_base_type
  • mode : i2c_handle_type, xmc_norsram_timing_init_type
  • mode_selection : can_base_type
  • month : calendar_type
  • mouse_buffer : mouse_type
  • msc_state : cdc_msc_struct_type, msc_type
  • msc_up_status : flash_iap_type
  • mssel : adc_type
  • msten : spi_type
  • msts : can_type
  • msts_bit : can_type
  • Mutiple_Sector_Setting : CFCardInfoStruct
  • mwidth : dma_channel_type
  • mwmc : xmc_bank1_ctrl_tmg_reg_type


AT32F403 Firmwary Library: Data Fields - Variables

- n -

  • nand_bank : xmc_nand_init_type
  • nerr : usart_type
  • noren : xmc_bank1_ctrl_tmg_reg_type
  • nrstf : crm_type
  • nsac : sd_csd_struct_type
  • ntc : spi_type
  • nwasen : xmc_bank1_ctrl_tmg_reg_type
  • nwen : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • nwpol : xmc_bank1_ctrl_tmg_reg_type
  • nwsen : xmc_bank1_ctrl_tmg_reg_type
  • nwtcfg : xmc_bank1_ctrl_tmg_reg_type


AT32F403 Firmwary Library: Data Fields - Variables

- o -

  • oaddr1 : i2c_type
  • oaddr1_bit : i2c_type
  • oaddr2 : i2c_type
  • oaddr2_bit : i2c_type
  • obf : flash_type
  • oc_idle_state : tmr_output_config_type
  • oc_mode : tmr_output_config_type
  • oc_output_state : tmr_output_config_type
  • oc_polarity : tmr_output_config_type
  • occ_idle_state : tmr_output_config_type
  • occ_output_state : tmr_output_config_type
  • occ_polarity : tmr_output_config_type
  • occs : adc_type
  • ocdmaen : adc_type
  • oclen : adc_type
  • ocmen : tmr_type
  • ocpcnt : adc_type
  • ocpen : adc_type
  • ocswtrg : adc_type
  • octen : adc_type
  • octesel_h : adc_type
  • octesel_l : adc_type
  • ocvmen : adc_type
  • odf : flash_type
  • odfie : flash_type
  • odt : adc_type, gpio_type
  • odt0 : gpio_type
  • odt1 : gpio_type
  • odt10 : gpio_type
  • odt11 : gpio_type
  • odt12 : gpio_type
  • odt13 : gpio_type
  • odt14 : gpio_type
  • odt15 : gpio_type
  • odt2 : gpio_type
  • odt3 : gpio_type
  • odt4 : gpio_type
  • odt5 : gpio_type
  • odt6 : gpio_type
  • odt7 : gpio_type
  • odt8 : gpio_type
  • odt9 : gpio_type
  • odt_bit : adc_type, gpio_type
  • oem_app_id : sd_cid_struct_type
  • oen : tmr_type
  • old_conn_state : usbd_core_type
  • opcode : cbd_extended_type, cbd_typical_type
  • operation_mode : i2s_init_type
  • opersel : spi_type
  • oplk : flash_type
  • ora : spi_type
  • ordinary_channel_length : adc_base_config_type
  • osn1 : adc_type
  • osn10 : adc_type
  • osn11 : adc_type
  • osn12 : adc_type
  • osn13 : adc_type
  • osn14 : adc_type
  • osn15 : adc_type
  • osn16 : adc_type
  • osn2 : adc_type
  • osn3 : adc_type
  • osn4 : adc_type
  • osn5 : adc_type
  • osn6 : adc_type
  • osn7 : adc_type
  • osn8 : adc_type
  • osn9 : adc_type
  • osq1 : adc_type
  • osq1_bit : adc_type
  • osq2 : adc_type
  • osq2_bit : adc_type
  • osq3 : adc_type
  • osq3_bit : adc_type
  • ouf : i2c_type
  • out_handler : usbd_class_handler
  • outen : bpr_type
  • outm : bpr_type
  • outsel : bpr_type
  • ovfden : tmr_type
  • ovfen : tmr_type
  • ovff : rtc_type
  • ovfien : rtc_type, tmr_type
  • ovfif : tmr_type
  • ovfs : tmr_type
  • ovfswtr : tmr_type


AT32F403 Firmwary Library: Data Fields - Variables

- p -

  • paddr : dma_channel_type
  • paddr_bit : dma_channel_type
  • page : nand_address_type
  • parity : linecoding_type
  • part_blk_read : sd_csd_struct_type
  • part_blk_write : sd_csd_struct_type
  • pbuff : i2c_handle_type
  • pcautoen : adc_type
  • pcce : adc_type
  • pcceien : adc_type
  • pccs : adc_type
  • pcdto1 : adc_type
  • pcdto1_bit : adc_type
  • pcdto2 : adc_type
  • pcdto2_bit : adc_type
  • pcdto3 : adc_type
  • pcdto3_bit : adc_type
  • pcdto4 : adc_type
  • pcdto4_bit : adc_type
  • pclen : adc_type
  • pcmfssel : spi_type
  • pcount : i2c_handle_type
  • pcpen : adc_type
  • pcswtrg : adc_type
  • pcten : adc_type
  • pctesel_h : adc_type
  • pctesel_l : adc_type
  • pcvmen : adc_type
  • pd01_mux : iomux_type
  • pdata : usbd_class_handler
  • pdt1 : adc_type
  • pdt1_bit : adc_type
  • pdt2 : adc_type
  • pdt2_bit : adc_type
  • pdt3 : adc_type
  • pdt3_bit : adc_type
  • pdt4 : adc_type
  • pdt4_bit : adc_type
  • pecen : i2c_type
  • pecerr : i2c_type
  • pecten : i2c_type
  • pecval : i2c_type
  • pen : usart_type
  • peripheral_base_addr : dma_init_type
  • peripheral_data_width : dma_init_type
  • peripheral_inc_enable : dma_init_type
  • permanent_write_protect : sd_csd_struct_type
  • permode : i2c_type
  • perr : usart_type
  • perrien : usart_type
  • pid : debug_type
  • pincm : dma_channel_type
  • pllen : crm_type
  • pllhextdiv : crm_type
  • pllmult_h : crm_type
  • pllmult_l : crm_type
  • pllrange : crm_type
  • pllrcs : crm_type
  • pllstbl : crm_type
  • pllstblf : crm_type
  • pllstblfc : crm_type
  • pllstblien : crm_type
  • pmen : tmr_type
  • pndwt : sdio_type
  • polcfg1 : exint_type
  • polcfg1_bit : exint_type
  • polcfg2 : exint_type
  • polcfg2_bit : exint_type
  • poly : crc_type
  • poly_bit : crc_type
  • poly_size : crc_type
  • porrstf : crm_type
  • pr : tmr_type
  • pr_bit : tmr_type
  • prben : tmr_type
  • prgmerr : flash_type
  • priority : dma_init_type
  • product_name1 : sd_cid_struct_type
  • product_name2 : sd_cid_struct_type
  • product_reversion : sd_cid_struct_type
  • product_sn : sd_cid_struct_type
  • Protocol : CFCardStruct
  • prsf_enable : can_base_type
  • prsfen : can_type
  • ps : sdio_type
  • psel : usart_type
  • psn1 : adc_type
  • psn2 : adc_type
  • psn3 : adc_type
  • psn4 : adc_type
  • psq : adc_type
  • psq_bit : adc_type
  • psr : flash_type
  • psr_bit : flash_type
  • ptd : can_type
  • ptos : tmr_type
  • pvmen : pwc_type
  • pvmof : pwc_type
  • pvmsel : pwc_type
  • pwcen : crm_type
  • pwcrst : crm_type
  • pwidth : dma_channel_type
  • pwrctrl : sdio_type
  • pwrctrl_bit : sdio_type
  • pwrsven : sdio_type


AT32F403 Firmwary Library: Data Fields - Variables

- q -

  • qdzien : can_type
  • qdzif : can_type


AT32F403 Firmwary Library: Data Fields - Variables

- r -

  • rca : sd_card_info_struct_type
  • rcrc : spi_type
  • rcrc_bit : spi_type
  • rdbf : i2c_type, spi_type, usart_type
  • rdbfie : spi_type
  • rdbfien : usart_type
  • rdwtmode : sdio_type
  • rdwtstart : sdio_type
  • rdwtstop : sdio_type
  • read_blk_misalign : sd_csd_struct_type
  • read_crc : flash_iap_type
  • realrx : can_type
  • rec : can_type
  • reien : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • rem0_len : usb_ept_info
  • remap : iomux_type
  • remap2 : iomux_type
  • remap2_bit : iomux_type
  • remap_bit : iomux_type
  • remote_wakup : usbd_core_type
  • ren : usart_type
  • repeat_mode : adc_base_config_type
  • request_no : usb_audio_hid_type, usb_audio_type
  • res : fat_dir_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved : tmr_type, usd_type
  • reserved1 : adc_type, bpr_type, can_fifo_mailbox_type, can_tx_mailbox_type, can_type, cbd_extended_type, cbd_typical_type, crc_type, crm_type, dac_type, debug_type, dma_channel_type, dma_type, exint_type, flash_type, gpio_type, i2c_type, iomux_type, pwc_type, rtc_type, sd_cid_struct_type, sd_csd_struct_type, sd_scr_struct_type, sdio_type, sense_type, spi_type, tmr_type, usart_type, usbd_type, wdt_type, wwdt_type, xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type, xmc_bank1_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved2 : adc_type, bpr_type, can_tx_mailbox_type, can_type, cbd_extended_type, cbd_typical_type, crc_type, crm_type, dac_type, debug_type, flash_type, i2c_type, iomux_type, pwc_type, sd_cid_struct_type, sd_csd_struct_type, sdio_type, sense_type, spi_type, tmr_type, usart_type, usbd_type, xmc_bank1_ctrl_tmg_reg_type, xmc_bank1_tmgwr_reg_type, xmc_bank1_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved3 : adc_type, bpr_type, can_type, crm_type, debug_type, flash_type, i2c_type, iomux_type, sd_csd_struct_type, sense_type, usart_type, xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • reserved4 : adc_type, can_type, crm_type, flash_type, sd_csd_struct_type
  • reserved5 : can_type, crm_type
  • reserved6 : can_type
  • reserverd2 : sd_scr_struct_type
  • reserverd3 : sd_scr_struct_type
  • reset : i2c_type
  • respond_flag : iap_info_type
  • revid : crc_type
  • revod : crc_type
  • rf0 : can_type
  • rf0_bit : can_type
  • rf0ff : can_type
  • rf0fien : can_type
  • rf0mien : can_type
  • rf0mn : can_type
  • rf0of : can_type
  • rf0oien : can_type
  • rf0r : can_type
  • rf1 : can_type
  • rf1_bit : can_type
  • rf1ff : can_type
  • rf1fien : can_type
  • rf1mien : can_type
  • rf1mn : can_type
  • rf1of : can_type
  • rf1oien : can_type
  • rf1r : can_type
  • rfc : can_fifo_mailbox_type
  • rfc_bit : can_fifo_mailbox_type
  • rfdt0 : can_fifo_mailbox_type
  • rfdt1 : can_fifo_mailbox_type
  • rfdt2 : can_fifo_mailbox_type
  • rfdt3 : can_fifo_mailbox_type
  • rfdt4 : can_fifo_mailbox_type
  • rfdt5 : can_fifo_mailbox_type
  • rfdt6 : can_fifo_mailbox_type
  • rfdt7 : can_fifo_mailbox_type
  • rfdth : can_fifo_mailbox_type
  • rfdth_bit : can_fifo_mailbox_type
  • rfdtl : can_fifo_mailbox_type
  • rfdtl_bit : can_fifo_mailbox_type
  • rfeid : can_fifo_mailbox_type
  • rffmn : can_fifo_mailbox_type
  • rffri : can_fifo_mailbox_type
  • rfi : can_fifo_mailbox_type
  • rfi_bit : can_fifo_mailbox_type
  • rfidi : can_fifo_mailbox_type
  • rfsid : can_fifo_mailbox_type
  • rfts : can_fifo_mailbox_type
  • risetime : i2c_type
  • rld : wdt_type
  • rld_bit : wdt_type
  • rldf : wdt_type, wwdt_type
  • rldien : wwdt_type
  • rm : usart_type
  • roerr : spi_type, usart_type
  • rpen : adc_type
  • rpr : tmr_type
  • rpr_bit : tmr_type
  • rpx : exint_type
  • rsaw : can_type
  • rsaw_size : can_baudrate_type
  • rsp1 : sdio_type
  • rsp1_bit : sdio_type
  • rsp2 : sdio_type
  • rsp2_bit : sdio_type
  • rsp3 : sdio_type
  • rsp3_bit : sdio_type
  • rsp4 : sdio_type
  • rsp4_bit : sdio_type
  • rsp_type : sdio_command_struct_type
  • rspcmd : sdio_type
  • rspcmd_bit : sdio_type
  • rspwt : sdio_type
  • rst : crc_type, usbd_type
  • rstfc : crm_type
  • rstien : usbd_type
  • rtccal : bpr_type
  • rtccal_bit : bpr_type
  • rtcen : crm_type
  • rtcsel : crm_type
  • rtsen : usart_type
  • rwtd : xmc_bank1_ctrl_tmg_reg_type
  • rx_addr : usb_ept_info
  • rxbuf : sdio_type
  • rxbufe : sdio_type
  • rxbufeien : sdio_type
  • rxbuff : sdio_type
  • rxbuffien : sdio_type
  • rxbufh : sdio_type
  • rxbufhien : sdio_type
  • rxbufien : sdio_type
  • rxdts : usbd_type
  • rxerro : sdio_type
  • rxerroien : sdio_type
  • rxsts : usbd_type
  • rxtc : usbd_type


AT32F403 Firmwary Library: Data Fields - Variables

- s -

  • sbf : usart_type
  • sbiterr : sdio_type
  • sbiterrien : sdio_type
  • scgt : usart_type
  • sclk_freq : crm_clocks_freq_type
  • sclksel : crm_type
  • sclksts : crm_type
  • scmen : usart_type
  • scnacken : usart_type
  • scr : gpio_type
  • scr_bit : gpio_type
  • scr_structure : sd_scr_struct_type
  • sd_bus_width : sd_scr_struct_type
  • sd_cid_reg : sd_card_info_struct_type
  • sd_csd_reg : sd_card_info_struct_type
  • sd_scr_reg : sd_card_info_struct_type
  • sd_security : sd_scr_struct_type
  • sd_spec : sd_scr_struct_type
  • sd_spec3 : sd_scr_struct_type
  • sdio1en : crm_type
  • sdio2_mux : iomux_type
  • sdio2en : crm_type
  • sec : calendar_type
  • secers : flash_type
  • Sector : CFCardAddrStruct
  • Sector_Count : CFCardAddrStruct
  • sector_mask : flash_iap_type
  • sector_size : flash_iap_type, iap_info_type
  • SectorSize : CFCardAddrStruct
  • sef : pwc_type
  • select : flash_type
  • select_bit : flash_type
  • selpin : iomux_type
  • selport : iomux_type
  • sense_key : sense_type
  • sequence_mode : adc_base_config_type
  • setup : usbd_core_type
  • setup_buffer : usbd_core_type
  • setup_handler : usbd_class_handler
  • setuptc : usbd_type
  • sixth_id : nand_id_type
  • slben : spi_type, usart_type
  • slbtd : spi_type
  • sleep_debug : debug_type
  • smbalert : i2c_type
  • smbmode : i2c_type
  • smsel : tmr_type
  • sof : usbd_type
  • sof_handler : usbd_class_handler
  • sofien : usbd_type
  • sofnum : usbd_type
  • sofrnum : usbd_type
  • sofrnum_bit : usbd_type
  • sp : usbd_type
  • spec_version : sd_csd_struct_type
  • speed : i2c_type, usbd_core_type
  • speedmode : i2c_type
  • spi1_mux_h : iomux_type
  • spi1_mux_l : iomux_type
  • spi1en : crm_type
  • spi1rst : crm_type
  • spi2en : crm_type
  • spi2rst : crm_type
  • spi3en : crm_type
  • spi3rst : crm_type
  • spi4_mux : iomux_type
  • spi4en : crm_type
  • spi4rst : crm_type
  • spien : spi_type, usbd_type
  • spk_alt_setting : usb_audio_hid_type, usb_audio_type
  • spk_buffer : audio_codec_type
  • spk_calc : audio_codec_type
  • spk_enable : audio_codec_type
  • spk_freq : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • spk_mute : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • spk_rend : audio_codec_type
  • spk_roff : audio_codec_type
  • spk_rtotal : audio_codec_type
  • spk_stage : audio_codec_type
  • spk_threshold : audio_codec_type
  • spk_tx_size : audio_codec_type
  • spk_volume : audio_codec_type, usb_audio_hid_type, usb_audio_type
  • spk_volume_limits : usb_audio_hid_type, usb_audio_type
  • spk_woff : audio_codec_type
  • spk_wtotal : audio_codec_type
  • sprst : can_type
  • spt1 : adc_type
  • spt1_bit : adc_type
  • spt2 : adc_type
  • spt2_bit : adc_type
  • sqen : adc_type
  • sramen : crm_type
  • ssb : usd_type
  • ssp : usbd_type
  • stall : usb_ept_info
  • standard_id : can_rx_message_type, can_tx_message_type
  • standby_debug : debug_type
  • startf : i2c_type
  • state : iap_info_type
  • State : PCCARD_HandleType
  • status : i2c_handle_type, usb_ept_info
  • stctrl : tmr_type
  • stctrl_bit : tmr_type
  • stdby_rst : flash_type
  • stdsel : spi_type
  • stis : tmr_type
  • stopbn : usart_type
  • stopf : i2c_type
  • stretch : i2c_type
  • sts : adc_type, dma_type, flash_type, sdio_type, spi_type, tmr_type, usart_type, wdt_type, wwdt_type
  • sts1 : i2c_type
  • sts1_bit : i2c_type
  • sts2 : flash_type, i2c_type
  • sts2_bit : flash_type, i2c_type
  • sts3 : flash_type
  • sts3_bit : flash_type
  • sts_bit : adc_type, dma_type, flash_type, sdio_type, spi_type, usart_type, wdt_type, wwdt_type
  • subbank : xmc_norsram_init_type, xmc_norsram_timing_init_type
  • swcsen : spi_type
  • swcsil : spi_type
  • swef : pwc_type
  • swevt : tmr_type
  • swevt_bit : tmr_type
  • swjtag_mux : iomux_type
  • swpen : pwc_type
  • swrstf : crm_type
  • swtrg : dac_type, exint_type
  • swtrg_bit : dac_type, exint_type
  • swtx : exint_type
  • syncben : xmc_bank1_ctrl_tmg_reg_type


AT32F403 Firmwary Library: Data Fields - Variables

- t -

  • t : sc_atr_type
  • t0 : sc_atr_type
  • ta : rtc_type
  • taac : sd_csd_struct_type
  • taf : rtc_type
  • tah : rtc_type
  • tah_bit : rtc_type
  • taien : rtc_type
  • tail : usart_group_type
  • tal : rtc_type
  • tal_bit : rtc_type
  • tar : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • tc : usbd_type
  • tcien : can_type, usbd_type
  • tcr : xmc_bank2_type, xmc_bank3_type, xmc_bank4_type
  • tcrc : spi_type
  • tcrc_bit : spi_type
  • tdbe : i2c_type, spi_type, usart_type
  • tdbeie : spi_type
  • tdbeien : usart_type
  • tdc : i2c_type, usart_type
  • tdcien : usart_type
  • tden : tmr_type
  • tec : can_type
  • temp : keyboard_type
  • temp_write_protect : sd_csd_struct_type
  • ten : usart_type
  • tfrdir : sdio_type
  • tfren : sdio_type
  • tfrmode : sdio_type
  • third_id : nand_id_type
  • tien : tmr_type
  • tim8_pause : debug_type
  • timeout : i2c_handle_type, sdio_data_struct_type, sdio_type
  • tlength : sc_atr_type
  • tm0alf : can_type
  • tm0ct : can_type
  • tm0ef : can_type
  • tm0lpf : can_type
  • tm0tcf : can_type
  • tm0tef : can_type
  • tm0tsf : can_type
  • tm1alf : can_type
  • tm1ct : can_type
  • tm1ef : can_type
  • tm1lpf : can_type
  • tm1tcf : can_type
  • tm1tef : can_type
  • tm1tsf : can_type
  • tm2alf : can_type
  • tm2ct : can_type
  • tm2ef : can_type
  • tm2lpf : can_type
  • tm2tcf : can_type
  • tm2tef : can_type
  • tm2tsf : can_type
  • tmc : can_tx_mailbox_type
  • tmc_bit : can_tx_mailbox_type
  • tmdt0 : can_tx_mailbox_type
  • tmdt1 : can_tx_mailbox_type
  • tmdt2 : can_tx_mailbox_type
  • tmdt3 : can_tx_mailbox_type
  • tmdt4 : can_tx_mailbox_type
  • tmdt5 : can_tx_mailbox_type
  • tmdt6 : can_tx_mailbox_type
  • tmdt7 : can_tx_mailbox_type
  • tmdtbl : can_tx_mailbox_type
  • tmdth : can_tx_mailbox_type
  • tmdth_bit : can_tx_mailbox_type
  • tmdtl : can_tx_mailbox_type
  • tmdtl_bit : can_tx_mailbox_type
  • tmeid : can_tx_mailbox_type
  • tmfrsel : can_tx_mailbox_type
  • tmgwr_group : xmc_bank1_type
  • tmi : can_tx_mailbox_type
  • tmi_bit : can_tx_mailbox_type
  • tmidsel : can_tx_mailbox_type
  • tmnr : can_type
  • tmout : i2c_type
  • tmr10_mux : iomux_type
  • tmr10_pause : debug_type
  • tmr10en : crm_type
  • tmr10rst : crm_type
  • tmr11_mux : iomux_type
  • tmr11_pause : debug_type
  • tmr11en : crm_type
  • tmr11rst : crm_type
  • tmr12_pause : debug_type
  • tmr12en : crm_type
  • tmr12rst : crm_type
  • tmr13_mux : iomux_type
  • tmr13_pause : debug_type
  • tmr13en : crm_type
  • tmr13rst : crm_type
  • tmr14_mux : iomux_type
  • tmr14_pause : debug_type
  • tmr14en : crm_type
  • tmr14rst : crm_type
  • tmr15_mux : iomux_type
  • tmr15_pause : debug_type
  • tmr15en : crm_type
  • tmr15rst : crm_type
  • tmr1_mux : iomux_type
  • tmr1_pause : debug_type
  • tmr1en : crm_type
  • tmr1rst : crm_type
  • tmr2_mux : iomux_type
  • tmr2_pause : debug_type
  • tmr2en : crm_type
  • tmr2rst : crm_type
  • tmr3_mux : iomux_type
  • tmr3_pause : debug_type
  • tmr3en : crm_type
  • tmr3rst : crm_type
  • tmr4_mux : iomux_type
  • tmr4_pause : debug_type
  • tmr4en : crm_type
  • tmr4rst : crm_type
  • tmr5_pause : debug_type
  • tmr5ch4_mux : iomux_type
  • tmr5en : crm_type
  • tmr5rst : crm_type
  • tmr6_pause : debug_type
  • tmr6en : crm_type
  • tmr6rst : crm_type
  • tmr7_pause : debug_type
  • tmr7en : crm_type
  • tmr7rst : crm_type
  • tmr8en : crm_type
  • tmr8rst : crm_type
  • tmr9_mux : iomux_type
  • tmr9_pause : debug_type
  • tmr9en : crm_type
  • tmr9rst : crm_type
  • tmren : tmr_type
  • tmrise : i2c_type
  • tmrise_bit : i2c_type
  • tmsid : can_tx_mailbox_type
  • tmsr : can_tx_mailbox_type
  • tmts : can_tx_mailbox_type
  • tmtsten : can_tx_mailbox_type
  • Total_LBA_Sector : CFCardInfoStruct
  • total_len : usb_ept_info
  • Total_Sector : CFCardInfoStruct
  • touch_adjust : touch_dev_type
  • touch_read_xy : touch_dev_type
  • touch_scan : touch_dev_type
  • tpef : bpr_type
  • tpefclr : bpr_type
  • tpen : bpr_type
  • tpien : bpr_type
  • tpif : bpr_type
  • tpifclr : bpr_type
  • tpp : bpr_type
  • trace_ioen : debug_type
  • trace_mode : debug_type
  • trans_buf : usb_ept_info
  • trans_len : usb_ept_info
  • trans_type : usb_ept_info, usbd_type
  • transfer_direction : sdio_data_struct_type
  • transfer_mode : sdio_data_struct_type
  • transmission_mode : spi_init_type
  • trgif : tmr_type
  • trgswtr : tmr_type
  • trmode : i2c_type
  • ts : sc_atr_type
  • tsf : rtc_type
  • tsien : rtc_type
  • tsts : can_type
  • tsts_bit : can_type
  • ttc_enable : can_base_type
  • ttcen : can_type
  • tuerr : spi_type
  • tx_addr : usb_ept_info
  • tx_length : iap_info_type
  • tx_mailbox : can_type
  • txbuf : sdio_type
  • txbufe : sdio_type
  • txbufeien : sdio_type
  • txbuff : sdio_type
  • txbuffien : sdio_type
  • txbufh : sdio_type
  • txbufhien : sdio_type
  • txbufien : sdio_type
  • txdts : usbd_type
  • txerru : sdio_type
  • txerruien : sdio_type
  • txsts : usbd_type
  • txtc : usbd_type


AT32F403 Firmwary Library: Data Fields - Variables

- u -

  • uart4en : crm_type
  • uart4rst : crm_type
  • uart5en : crm_type
  • uart5rst : crm_type
  • ucfor : usbd_type
  • ucforien : usbd_type
  • uen : usart_type
  • ukval : flash_type
  • unlock : flash_type
  • unlock2 : flash_type
  • unlock2_bit : flash_type
  • unlock3 : flash_type
  • unlock3_bit : flash_type
  • unlock_bit : flash_type
  • updf : rtc_type
  • usart1_mux : iomux_type
  • usart1en : crm_type
  • usart1rst : crm_type
  • usart2_mux : iomux_type
  • usart2en : crm_type
  • usart2rst : crm_type
  • usart3_mux : iomux_type
  • usart3en : crm_type
  • usart3rst : crm_type
  • usb_reg : usbd_core_type
  • usbbufs : crm_type
  • usbdiv_h : crm_type
  • usbdiv_l : crm_type
  • usben : crm_type
  • usbrst : crm_type
  • usd : flash_type
  • usd_bit : flash_type
  • usd_ukval : flash_type
  • usd_unlock : flash_type
  • usd_unlock_bit : flash_type
  • usderr : flash_type
  • usders : flash_type
  • usdprgm : flash_type
  • usdulks : flash_type
  • user_d0 : flash_type
  • user_d1 : flash_type


AT32F403 Firmwary Library: Data Fields - Variables

- v -

  • vmcsel : adc_type
  • vmhb : adc_type
  • vmhb_bit : adc_type
  • vmlb : adc_type
  • vmlb_bit : adc_type
  • vmor : adc_type
  • vmorien : adc_type
  • vmsgen : adc_type


AT32F403 Firmwary Library: Data Fields - Variables

- w -

  • wait_enable : xmc_nand_init_type
  • wait_signal_config : xmc_norsram_init_type
  • wait_signal_enable : xmc_norsram_init_type
  • wait_signal_lv : xmc_norsram_init_type
  • wait_type : sdio_command_struct_type
  • wdt_ato_en : flash_type
  • wdt_pause : debug_type
  • wdtrstf : crm_type
  • week : calendar_type
  • wen : xmc_bank1_ctrl_tmg_reg_type
  • win : wwdt_type
  • wIndex : usb_setup_type
  • wk : usbd_type
  • wkien : usbd_type
  • wLength : usb_setup_type
  • wMaxPacketSize : usb_endpoint_desc_type
  • wp_level : tmr_brkdt_config_type
  • wpc : tmr_type
  • wpen0 : gpio_type
  • wpen1 : gpio_type
  • wpen10 : gpio_type
  • wpen11 : gpio_type
  • wpen12 : gpio_type
  • wpen13 : gpio_type
  • wpen14 : gpio_type
  • wpen15 : gpio_type
  • wpen2 : gpio_type
  • wpen3 : gpio_type
  • wpen4 : gpio_type
  • wpen5 : gpio_type
  • wpen6 : gpio_type
  • wpen7 : gpio_type
  • wpen8 : gpio_type
  • wpen9 : gpio_type
  • wpr : gpio_type
  • wpr_bit : gpio_type
  • wpseq : gpio_type
  • wrapen : xmc_bank1_ctrl_tmg_reg_type
  • wrapped_mode_enable : xmc_norsram_init_type
  • write_addr : flash_iap_type
  • write_blk_misalign : sd_csd_struct_type
  • write_burst_syn : xmc_norsram_init_type
  • write_crc : flash_iap_type
  • write_data : fat_dir_type
  • write_enable : xmc_norsram_init_type
  • write_protect_group_enable : sd_csd_struct_type
  • write_protect_group_size : sd_csd_struct_type
  • write_speed_factor : sd_csd_struct_type
  • write_time : fat_dir_type
  • write_timing_enable : xmc_norsram_init_type, xmc_norsram_timing_init_type
  • wTotalLength : usb_configuration_desc_type
  • wum : usart_type
  • wValue : usb_setup_type
  • wwdt_pause : debug_type
  • wwdten : crm_type, wwdt_type
  • wwdtrst : crm_type
  • wwdtrstf : crm_type


AT32F403 Firmwary Library: Data Fields - Variables

- x -

  • x_p : touch_dev_type
  • xmc_init : lcd_dev_type
  • xmc_nadv_mux : iomux_type
  • xmcen : crm_type


AT32F403 Firmwary Library: Data Fields - Variables

- y -

  • y_p : touch_dev_type
  • year : calendar_type


AT32F403 Firmwary Library: Data Fields - Variables

- z -

  • zone : nand_address_type


AT32F403 Firmwary Library: File List

File List
Here is a list of all files with brief descriptions:
at32f403.h | At32f403 header file
system_at32f403.c | All the functions for cmsis cortex-m4 system source file
system_at32f403.h | Cmsis cortex-m4 system header file
at32f403_adc.h | At32f403 adc header file
at32f403_bpr.h | At32f403 bpr header file
at32f403_can.h | At32f403 can header file
at32f403_crc.h | At32f403 crc header file
at32f403_crm.h | At32f403 crm header file
at32f403_dac.h | At32f403 dac header file
at32f403_debug.h | At32f403 debug header file
at32f403_def.h | At32f403 macros header file
at32f403_dma.h | At32f403 dma header file
at32f403_exint.h | At32f403 exint header file
at32f403_flash.h | At32f403 flash header file
at32f403_gpio.h | At32f403 gpio header file
at32f403_i2c.h | At32f403 i2c header file
at32f403_misc.h | At32f403 misc header file
at32f403_pwc.h | At32f403 pwc header file
at32f403_rtc.h | At32f403 rtc header file
at32f403_sdio.h | At32f403 sdio header file
at32f403_spi.h | At32f403 spi header file
at32f403_tmr.h | At32f403 tmr header file
at32f403_usart.h | At32f403 usart header file
at32f403_usb.h | At32f403 usb header file
at32f403_wdt.h | At32f403 wdt header file
at32f403_wwdt.h | At32f403 wwdt header file
at32f403_xmc.h | At32f403 xmc header file
at32f403_adc.c | All the functions for the adc firmware library
at32f403_bpr.c | All the functions for the bpr firmware library
at32f403_can.c | All the functions for the can firmware library
at32f403_crc.c | All the functions for the crc firmware library
at32f403_crm.c | All the functions for the crm firmware library
at32f403_dac.c | All the functions for the dac firmware library
at32f403_debug.c | All the functions for the debug firmware library
at32f403_dma.c | All the functions for the dma firmware library
at32f403_exint.c | All the functions for the exint firmware library
at32f403_flash.c | All the functions for the flash firmware library
at32f403_gpio.c | All the functions for the gpio firmware library
at32f403_i2c.c | All the functions for the i2c firmware library
at32f403_misc.c | All the functions for the misc firmware library
at32f403_pwc.c | All the functions for the pwc firmware library
at32f403_rtc.c | All the functions for the rtc firmware library
at32f403_sdio.c | All the functions for the sdio firmware library
at32f403_spi.c | All the functions for the spi firmware library
at32f403_tmr.c | All the functions for the tmr firmware library
at32f403_usart.c | All the functions for the usart firmware library
at32f403_usb.c | Functions for the usb firmware library
at32f403_wdt.c | All the functions for the wdt firmware library
at32f403_wwdt.c | All the functions for the wwdt firmware library
at32f403_xmc.c | All the functions for the xmc firmware library
main_page.h |
i2c_application.c | Driver library of the i2c peripheral
i2c_application.h | I2c application libray header file
audio_class.c | Usb audio class type
audio_class.h | Usb audio class file
audio/audio_conf.h | Usb audio config
audio_hid/audio_conf.h | Usb audio config
audio_desc.c | Usb audio device descriptor
audio_desc.h | Usb audio descriptor header file
audio_hid_class.c |
audio_hid_class.h |
audio_hid_desc.c |
audio_hid_desc.h |
cdc_class.c | Usb cdc class type
cdc_class.h | Usb cdc class file
cdc_desc.c | Usb cdc device descriptor
cdc_desc.h | Usb cdc descriptor header file
cdc_keyboard_class.c | Usb cdc and keyboard class type
cdc_keyboard_class.h | Usb cdc and keyboard class file
cdc_keyboard_desc.c | Usb cdc and keyboard device descriptor
cdc_keyboard_desc.h | Usb cdc and keyboard descriptor header file
cdc_msc_class.c | Usb cdc class type
cdc_msc_class.h | Usb cdc class file
cdc_msc_desc.c | Usb cdc device descriptor
cdc_msc_desc.h | Usb cdc descriptor header file
composite_cdc_msc/msc_bot_scsi.c | Usb mass storage bulk-only transport and scsi command
msc/msc_bot_scsi.c | Usb mass storage bulk-only transport and scsi command
custom_hid_class.c | Usb custom hid class type
custom_hid_class.h | Usb custom hid header file
custom_hid_desc.c | Usb hid device descriptor
custom_hid_desc.h | Usb custom hid descriptor header file
hid_iap_class.c | Usb hid iap class type
hid_iap_class.h | Usb hid iap header file
hid_iap_desc.c | Usb hid device descriptor
hid_iap_desc.h | Usb hid descriptor header file
keyboard_class.c | Usb hid keyboard class type
keyboard_class.h | Usb hid keyboard header file
keyboard_desc.c | Usb hid keyboard device descriptor
keyboard_desc.h | Usb keyboard descriptor header file
mouse_class.c | Usb hid mouse class type
mouse_class.h | Usb hid mouse header file
mouse_desc.c | Usb hid mouse device descriptor
mouse_desc.h | Usb mouse descriptor header file
msc_bot_scsi.h | Usb mass storage bulk-only transport and scsi command header file
msc_class.c | Usb msc class type
msc_class.h | Usb msc class file
msc_desc.c | Usb msc device descriptor
msc_desc.h | Usb msc descriptor header file
printer_class.c | Usb printer class type
printer_class.h | Usb printer class file
printer_desc.c | Usb printer device descriptor
printer_desc.h | Usb printer descriptor header file
usb_std.h | Usb standard header file
usbd_core.h | Usb device core header file
usbd_int.h |
usbd_sdr.h | Usb standard request header file
usbd_core.c | Usb driver
usbd_int.c | Usb interrupt request
usbd_sdr.c | Usb standard device request
at32f403_board.c | Set of firmware functions to manage leds and push-button. initialize delay function
at32f403_board.h | Header file for at-start board. set of firmware functions to manage leds and push-button. initialize delay function
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/bpr/tamper/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/can/communication_mode/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/can/filter/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/crc/calculation/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/debug/tmr1/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/exint/exint_config/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/rtc/calendar/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/dma/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/interrupt/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/irda/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/polling/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/printf/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/rs485/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/smartcard/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/synchronous/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/audio/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/msc/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/printer/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/nor/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/psram/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/xmc/sram/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/templates/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_freertos_demo/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_gen_random_number_demo/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h | Header file of clock program
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_clock.h | Header file of clock program
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/can/filter/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/templates/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_freertos_demo/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h | At32f403 config header file
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h | At32f403 config header file
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/can/filter/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/irda/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/polling/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/printf/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/templates/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_freertos_demo/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h | Header file of main interrupt service routines
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h | Header file of main interrupt service routines
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/can/filter/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/irda/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/polling/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/printf/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c | System clock config program
project/at_start_f403/templates/src/at32f403_clock.c | System clock config program
utilities/at32f403_freertos_demo/src/at32f403_clock.c | System clock config program
utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c | System clock config program
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c | System clock config program
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c | System clock config program
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c | System clock config program
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c | System clock config program
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c | System clock config program
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c | System clock config program
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/can/filter/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/crc/calculation/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/dma/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/irda/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/polling/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/printf/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/rs485/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/nor/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/psram/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/xmc/sram/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/templates/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_freertos_demo/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_gen_random_number_demo/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c | Main interrupt service routines
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c | Main interrupt service routines
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c | Main program
project/at_start_f403/examples/adc/current_vref_value_check/src/main.c | Main program
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c | Main program
project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c | Main program
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c | Main program
project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c | Main program
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c | Main program
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c | Main program
project/at_start_f403/examples/adc/voltage_monitoring/src/main.c | Main program
project/at_start_f403/examples/bpr/bpr_data/src/main.c | Main program
project/at_start_f403/examples/bpr/tamper/src/main.c | Main program
project/at_start_f403/examples/can/communication_mode/src/main.c | Main program
project/at_start_f403/examples/can/filter/src/main.c | Main program
project/at_start_f403/examples/can/loopback_mode/src/main.c | Main program
project/at_start_f403/examples/cortex_m4/bit_band/src/main.c | Main program
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c | Main program
project/at_start_f403/examples/cortex_m4/fpu/src/main.c | Main program
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c | Main program
project/at_start_f403/examples/crc/calculation/src/main.c | Main program
project/at_start_f403/examples/crm/clock_failure_detection/src/main.c | Main program
project/at_start_f403/examples/crm/sysclk_switch/src/main.c | Main program
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c | Main program
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c | Main program
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c | Main program
project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c | Main program
project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c | Main program
project/at_start_f403/examples/debug/tmr1/src/main.c | Main program
project/at_start_f403/examples/dma/data_to_gpio/src/main.c | Main program
project/at_start_f403/examples/dma/flash_to_sram/src/main.c | Main program
project/at_start_f403/examples/exint/exint_config/src/main.c | Main program
project/at_start_f403/examples/exint/exint_software_trigger/src/main.c | Main program
project/at_start_f403/examples/flash/fap_enable/src/main.c | Main program
project/at_start_f403/examples/flash/flash_write_read/src/main.c | Main program
project/at_start_f403/examples/flash/operate_spim/src/main.c | Main program
project/at_start_f403/examples/flash/run_in_spim/src/main.c | Main program
project/at_start_f403/examples/gpio/io_toggle/src/main.c | Main program
project/at_start_f403/examples/gpio/led_toggle/src/main.c | Main program
project/at_start_f403/examples/gpio/swjtag_remap/src/main.c | Main program
project/at_start_f403/examples/i2c/communication_dma/src/main.c | Main program
project/at_start_f403/examples/i2c/communication_int/src/main.c | Main program
project/at_start_f403/examples/i2c/communication_poll/src/main.c | Main program
project/at_start_f403/examples/i2c/eeprom/src/main.c | Main program
project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c | Main program
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c | Main program
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c | Main program
project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c | Main program
project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c | Main program
project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c | Main program
project/at_start_f403/examples/pwc/sleep_usart1/src/main.c | Main program
project/at_start_f403/examples/pwc/standby_rtc/src/main.c | Main program
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c | Main program
project/at_start_f403/examples/rtc/calendar/src/main.c | Main program
project/at_start_f403/examples/rtc/lick_calibration/src/main.c | Main program
project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c | Main program
project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c | Main program
project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c | Main program
project/at_start_f403/examples/spi/fullduplex_polling/src/main.c | Main program
project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c | Main program
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c | Main program
project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c | Main program
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c | Main program
project/at_start_f403/examples/spi/w25q_flash/src/main.c | Main program
project/at_start_f403/examples/tmr/6_steps/src/main.c | Main program
project/at_start_f403/examples/tmr/7_pwm_output/src/main.c | Main program
project/at_start_f403/examples/tmr/cascade_synchro/src/main.c | Main program
project/at_start_f403/examples/tmr/complementary_signals/src/main.c | Main program
project/at_start_f403/examples/tmr/dma/src/main.c | Main program
project/at_start_f403/examples/tmr/dma_burst/src/main.c | Main program
project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c | Main program
project/at_start_f403/examples/tmr/external_clock/src/main.c | Main program
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c | Main program
project/at_start_f403/examples/tmr/hang_mode/src/main.c | Main program
project/at_start_f403/examples/tmr/input_capture/src/main.c | Main program
project/at_start_f403/examples/tmr/oc_high/src/main.c | Main program
project/at_start_f403/examples/tmr/oc_low/src/main.c | Main program
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c | Main program
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c | Main program
project/at_start_f403/examples/tmr/one_cycle/src/main.c | Main program
project/at_start_f403/examples/tmr/parallel_synchro/src/main.c | Main program
project/at_start_f403/examples/tmr/pwm_input/src/main.c | Main program
project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c | Main program
project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c | Main program
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c | Main program
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c | Main program
project/at_start_f403/examples/tmr/timer_base/src/main.c | Main program
project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c | Main program
project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c | Main program
project/at_start_f403/examples/usart/half_duplex/src/main.c | Main program
project/at_start_f403/examples/usart/hw_flow_control/src/main.c | Main program
project/at_start_f403/examples/usart/idle_detection/src/main.c | Main program
project/at_start_f403/examples/usart/interrupt/src/main.c | Main program
project/at_start_f403/examples/usart/irda/src/main.c | Main program
project/at_start_f403/examples/usart/polling/src/main.c | Main program
project/at_start_f403/examples/usart/printf/src/main.c | Main program
project/at_start_f403/examples/usart/receiver_mute/src/main.c | Main program
project/at_start_f403/examples/usart/rs485/src/main.c | Main program
project/at_start_f403/examples/usart/smartcard/src/main.c | Main program
project/at_start_f403/examples/usart/synchronous/src/main.c | Main program
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c | Main program
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c | Main program
project/at_start_f403/examples/usb_device/audio/src/main.c | Main program
project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c | Main program
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c | Main program
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c | Main program
project/at_start_f403/examples/usb_device/custom_hid/src/main.c | Main program
project/at_start_f403/examples/usb_device/keyboard/src/main.c | Main program
project/at_start_f403/examples/usb_device/mouse/src/main.c | Main program
project/at_start_f403/examples/usb_device/msc/src/main.c | Main program
project/at_start_f403/examples/usb_device/printer/src/main.c | Main program
project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c | Main program
project/at_start_f403/examples/usb_device/virtual_comport/src/main.c | Main program
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c | Main program
project/at_start_f403/examples/wdt/wdt_reset/src/main.c | Main program
project/at_start_f403/examples/wdt/wdt_standby/src/main.c | Main program
project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c | Main program
project/at_start_f403/examples/xmc/lcd_8bit/src/main.c | Main program
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c | Main program
project/at_start_f403/examples/xmc/nand/ecc/src/main.c | Main program
project/at_start_f403/examples/xmc/nand/nand/src/main.c | Main program
project/at_start_f403/examples/xmc/nor/src/main.c | Main program
project/at_start_f403/examples/xmc/pc_card/src/main.c | Main program
project/at_start_f403/examples/xmc/psram/src/main.c | Main program
project/at_start_f403/examples/xmc/sram/src/main.c | Main program
project/at_start_f403/templates/src/main.c | Main program
utilities/at32f403_freertos_demo/src/main.c | Main program
utilities/at32f403_gen_random_number_demo/src/main.c | Main program
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c | Main program
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c | Main program
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c | Main program
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c | Main program
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c | Main program
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c | Main program
julia_fpu.h | Julia_fpu header file
julia_fpu.c | Julia_fpu source file
project/at_start_f403/examples/flash/flash_write_read/inc/flash.h | Flash header file
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h | Flash header file
project/at_start_f403/examples/flash/flash_write_read/src/flash.c | Flash program
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c | Flash program
operate_spim.h | Operate_spim header file
operate_spim.c | Operate spim program
run_in_spim.h | Run_in_spim header file
run_in_spim.c | Run in spim program
rtc.h | This file provides template for calendar api
rtc.c | This file provides template for calendar api
sd_mmc_card/inc/at32_sdio.h | This file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library
sdio_fatfs/inc/at32_sdio.h | This file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library
ffconf.h |
sd_mmc_card/src/at32_sdio.c | This file provides a set of functions needed to manage the sdio/mmc card memory
sdio_fatfs/src/at32_sdio.c | This file provides a set of functions needed to manage the sdio/mmc card memory
diskio.c |
spi_flash.h | Header file of spi_flash
spi_flash.c | Spi_flash source code
smartcard_config.h | Header file of clock program
audio/inc/audio_codec.h | Audio codec header file
composite_audio_hid/inc/audio_codec.h | Audio codec header file
project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h | Usb config header file
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h | Usb config header file
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h | Usb config header file
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h | Usb config header file
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h | Usb config header file
audio/src/audio_codec.c | Audio codec function
composite_audio_hid/src/audio_codec.c | Audio codec function
composite_vcp_msc/inc/msc_diskio.h | Usb mass storage disk interface header file
msc/inc/msc_diskio.h | Usb mass storage disk interface header file
virtual_msc_iap/inc/msc_diskio.h | Usb mass storage disk interface header file
composite_vcp_msc/src/msc_diskio.c | Usb mass storage disk function
msc/src/msc_diskio.c | Usb mass storage disk function
virtual_msc_iap/src/msc_diskio.c | Usb mass storage disk function
flash_fat16.h | Fat16 file system header file
flash_fat16.c | Fat16 file system
picture.h | This file contains all the picture used for lcd display
lcd_8bit/inc/xmc_lcd.h | Xmc_lcd header file
lcd_touch_16bit/inc/xmc_lcd.h | Xmc_lcd program header
lcd_8bit/src/xmc_lcd.c | Xmc_lcd config program
lcd_touch_16bit/src/xmc_lcd.c | Xmc_lcd program file
touch.h | This file contains all the functions prototypes for the touch firmware driver
touch.c | This file contains all the functions prototypes for the touch firmware driver
xmc_ecc.h | Header file for the nand ecc configuration
xmc_ecc.c | Nand ecc configuration
xmc_nand.h | Header file for the nand configuration
xmc_nand.c | Nand configuration
xmc_nor.h |
xmc_nor.c |
cf.c | Xmc pc card program
cf.h | Header file for the cf configuration
xmc_psram.h | Header file for the psram configuration
xmc_psram.c |
xmc_sram.h |
xmc_sram.c |
FreeRTOSConfig.h |
include_port.c | Include_port program
random.h | At32f403 random header file
random.c | Set of firmware functions to random function
app_led3_toggle/inc/iap.h | Iap header file
app_led4_toggle/inc/iap.h | Iap header file
bootloader/inc/iap.h | Iap header file
app_led3_toggle/inc/tmr.h | Tmr header file
app_led4_toggle/inc/tmr.h | Tmr header file
bootloader/inc/tmr.h | Tmr header file
app_led3_toggle/inc/usart.h | Usart header file
app_led4_toggle/inc/usart.h | Usart header file
bootloader/inc/usart.h | Usart header file
app_led3_toggle/src/iap.c | Iap program
app_led4_toggle/src/iap.c | Iap program
bootloader/src/iap.c | Iap program
app_led3_toggle/src/tmr.c | Tmr program
app_led4_toggle/src/tmr.c | Tmr program
bootloader/src/tmr.c | Tmr program
app_led3_toggle/src/usart.c | Usart program
app_led4_toggle/src/usart.c | Usart program
bootloader/src/usart.c | Usart program
app_led3_toggle/inc/hid_iap_user.h | Usb config header file
app_led4_toggle/inc/hid_iap_user.h | Usb config header file
bootloader/inc/hid_iap_user.h | Usb config header file
app_led3_toggle/src/hid_iap_user.c | Usb hid iap user file
app_led4_toggle/src/hid_iap_user.c | Usb hid iap user file
bootloader/src/hid_iap_user.c | Usb hid iap user file


AT32F403 Firmwary Library: at32f403.h File Reference

  • AT32F403_Firmware_Library_V2.0.8
  • libraries
  • cmsis
  • cm4
  • device_support
Macros | Typedefs | Enumerations
at32f403.h File Reference

at32f403 header file More...

#include "core_cm4.h"
#include "system_at32f403.h"
#include <stdint.h>
#include "at32f403_def.h"
#include "at32f403_conf.h"

Go to the source code of this file.

Macros

#define | __AT32F403_LIBRARY_VERSION_MAJOR (0x02)
at32f403 standard peripheral library version number More...
#define | __AT32F403_LIBRARY_VERSION_MIDDLE (0x00)
#define | __AT32F403_LIBRARY_VERSION_MINOR (0x08)
#define | __AT32F403_LIBRARY_VERSION_RC (0x00)
#define | __AT32F403_LIBRARY_VERSION
#define | __CM4_REV 0x0001U
configuration of the cortex-m4 processor and core peripherals More...
#define | __MPU_PRESENT 1
#define | __NVIC_PRIO_BITS 4
#define | __Vendor_SysTickConfig 0
#define | __FPU_PRESENT 1U
#define | REG8(addr) *(volatile uint8_t *)(addr)
#define | REG16(addr) *(volatile uint16_t *)(addr)
#define | REG32(addr) *(volatile uint32_t *)(addr)
#define | MAKE_VALUE(reg_offset, bit_num) (uint32_t)(((reg_offset) << 16) | (bit_num & 0x1F))
#define | PERIPH_REG(periph_base, value) REG32((periph_base + (value >> 16)))
#define | PERIPH_REG_BIT(value) (0x1U << (value & 0x1F))
#define | FLASH_BASE ((uint32_t)0x08000000)
#define | SPIM_FLASH_BASE ((uint32_t)0x08400000)
#define | USD_BASE ((uint32_t)0x1FFFF800)
#define | SRAM_BASE ((uint32_t)0x20000000)
#define | PERIPH_BASE ((uint32_t)0x40000000)
#define | XMC_REG_BASE ((uint32_t)0xA0000000)
#define | DEBUG_BASE ((uint32_t)0xE0042000)
#define | APB1PERIPH_BASE (PERIPH_BASE + 0x00000)
#define | APB2PERIPH_BASE (PERIPH_BASE + 0x10000)
#define | AHBPERIPH_BASE (PERIPH_BASE + 0x20000)
#define | TMR2_BASE (APB1PERIPH_BASE + 0x0000)
#define | TMR3_BASE (APB1PERIPH_BASE + 0x0400)
#define | TMR4_BASE (APB1PERIPH_BASE + 0x0800)
#define | TMR5_BASE (APB1PERIPH_BASE + 0x0C00)
#define | TMR6_BASE (APB1PERIPH_BASE + 0x1000)
#define | TMR7_BASE (APB1PERIPH_BASE + 0x1400)
#define | TMR12_BASE (APB1PERIPH_BASE + 0x1800)
#define | TMR13_BASE (APB1PERIPH_BASE + 0x1C00)
#define | TMR14_BASE (APB1PERIPH_BASE + 0x2000)
#define | RTC_BASE (APB1PERIPH_BASE + 0x2800)
#define | WWDT_BASE (APB1PERIPH_BASE + 0x2C00)
#define | WDT_BASE (APB1PERIPH_BASE + 0x3000)
#define | SPI2_BASE (APB1PERIPH_BASE + 0x3800)
#define | SPI3_BASE (APB1PERIPH_BASE + 0x3C00)
#define | SPI4_BASE (APB1PERIPH_BASE + 0x4000)
#define | USART2_BASE (APB1PERIPH_BASE + 0x4400)
#define | USART3_BASE (APB1PERIPH_BASE + 0x4800)
#define | UART4_BASE (APB1PERIPH_BASE + 0x4C00)
#define | UART5_BASE (APB1PERIPH_BASE + 0x5000)
#define | I2C1_BASE (APB1PERIPH_BASE + 0x5400)
#define | I2C2_BASE (APB1PERIPH_BASE + 0x5800)
#define | USBFS_BASE (APB1PERIPH_BASE + 0x5C00)
#define | CAN1_BASE (APB1PERIPH_BASE + 0x6400)
#define | I2C3_BASE (APB1PERIPH_BASE + 0x6800)
#define | BPR_BASE (APB1PERIPH_BASE + 0x6C00)
#define | PWC_BASE (APB1PERIPH_BASE + 0x7000)
#define | DAC_BASE (APB1PERIPH_BASE + 0x7400)
#define | IOMUX_BASE (APB2PERIPH_BASE + 0x0000)
#define | EXINT_BASE (APB2PERIPH_BASE + 0x0400)
#define | GPIOA_BASE (APB2PERIPH_BASE + 0x0800)
#define | GPIOB_BASE (APB2PERIPH_BASE + 0x0C00)
#define | GPIOC_BASE (APB2PERIPH_BASE + 0x1000)
#define | GPIOD_BASE (APB2PERIPH_BASE + 0x1400)
#define | GPIOE_BASE (APB2PERIPH_BASE + 0x1800)
#define | GPIOF_BASE (APB2PERIPH_BASE + 0x1C00)
#define | GPIOG_BASE (APB2PERIPH_BASE + 0x2000)
#define | ADC1_BASE (APB2PERIPH_BASE + 0x2400)
#define | ADC2_BASE (APB2PERIPH_BASE + 0x2800)
#define | TMR1_BASE (APB2PERIPH_BASE + 0x2C00)
#define | SPI1_BASE (APB2PERIPH_BASE + 0x3000)
#define | TMR8_BASE (APB2PERIPH_BASE + 0x3400)
#define | USART1_BASE (APB2PERIPH_BASE + 0x3800)
#define | ADC3_BASE (APB2PERIPH_BASE + 0x3C00)
#define | TMR15_BASE (APB2PERIPH_BASE + 0x4000)
#define | TMR9_BASE (APB2PERIPH_BASE + 0x4C00)
#define | TMR10_BASE (APB2PERIPH_BASE + 0x5000)
#define | TMR11_BASE (APB2PERIPH_BASE + 0x5400)
#define | SDIO1_BASE (APB2PERIPH_BASE + 0x8000)
#define | DMA1_BASE (AHBPERIPH_BASE + 0x0000)
#define | DMA1_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0008)
#define | DMA1_CHANNEL2_BASE (AHBPERIPH_BASE + 0x001C)
#define | DMA1_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0030)
#define | DMA1_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0044)
#define | DMA1_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0058)
#define | DMA1_CHANNEL6_BASE (AHBPERIPH_BASE + 0x006C)
#define | DMA1_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0080)
#define | DMA2_BASE (AHBPERIPH_BASE + 0x0400)
#define | DMA2_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0408)
#define | DMA2_CHANNEL2_BASE (AHBPERIPH_BASE + 0x041C)
#define | DMA2_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0430)
#define | DMA2_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0444)
#define | DMA2_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0458)
#define | DMA2_CHANNEL6_BASE (AHBPERIPH_BASE + 0x046C)
#define | DMA2_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0480)
#define | CRM_BASE (AHBPERIPH_BASE + 0x1000)
#define | FLASH_REG_BASE (AHBPERIPH_BASE + 0x2000)
#define | CRC_BASE (AHBPERIPH_BASE + 0x3000)
#define | SDIO2_BASE (AHBPERIPH_BASE + 0x3400)
#define | XMC_BANK1_REG_BASE (XMC_REG_BASE + 0x0000)
#define | XMC_BANK1E_REG_BASE (XMC_REG_BASE + 0x0104)
#define | XMC_BANK1E_H_BASE (XMC_REG_BASE + 0x0220)
#define | XMC_BANK2_REG_BASE (XMC_REG_BASE + 0x0060)
#define | XMC_BANK3_REG_BASE (XMC_REG_BASE + 0x0080)
#define | XMC_BANK4_REG_BASE (XMC_REG_BASE + 0x00A0)

Typedefs

typedef enum IRQn | IRQn_Type
at32f403 interrupt number definition, according to the selected device in Library_configuration_section More...
typedef int32_t | INT32
typedef int16_t | INT16
typedef int8_t | INT8
typedef uint32_t | UINT32
typedef uint16_t | UINT16
typedef uint8_t | UINT8
typedef int32_t | s32
typedef int16_t | s16
typedef int8_t | s8
typedef const int32_t | sc32
typedef const int16_t | sc16
typedef const int8_t | sc8
typedef __IO int32_t | vs32
typedef __IO int16_t | vs16
typedef __IO int8_t | vs8
typedef __I int32_t | vsc32
typedef __I int16_t | vsc16
typedef __I int8_t | vsc8
typedef uint32_t | u32
typedef uint16_t | u16
typedef uint8_t | u8
typedef const uint32_t | uc32
typedef const uint16_t | uc16
typedef const uint8_t | uc8
typedef __IO uint32_t | vu32
typedef __IO uint16_t | vu16
typedef __IO uint8_t | vu8
typedef __I uint32_t | vuc32
typedef __I uint16_t | vuc16
typedef __I uint8_t | vuc8

Enumerations

enum IRQn {
Reset_IRQn = -15 , NonMaskableInt_IRQn = -14 , HardFault_IRQn = -13 , MemoryManagement_IRQn = -12 ,
BusFault_IRQn = -11 , UsageFault_IRQn = -10 , SVCall_IRQn = -5 , DebugMonitor_IRQn = -4 ,
PendSV_IRQn = -2 , SysTick_IRQn = -1 , WWDT_IRQn = 0 , PVM_IRQn = 1 ,
TAMPER_IRQn = 2 , RTC_IRQn = 3 , FLASH_IRQn = 4 , CRM_IRQn = 5 ,
EXINT0_IRQn = 6 , EXINT1_IRQn = 7 , EXINT2_IRQn = 8 , EXINT3_IRQn = 9 ,
EXINT4_IRQn = 10 , DMA1_Channel1_IRQn = 11 , DMA1_Channel2_IRQn = 12 , DMA1_Channel3_IRQn = 13 ,
DMA1_Channel4_IRQn = 14 , DMA1_Channel5_IRQn = 15 , DMA1_Channel6_IRQn = 16 , DMA1_Channel7_IRQn = 17 ,
ADC1_2_IRQn = 18 , USBFS_H_CAN1_TX_IRQn = 19 , USBFS_L_CAN1_RX0_IRQn = 20 , CAN1_RX1_IRQn = 21 ,
CAN1_SE_IRQn = 22 , EXINT9_5_IRQn = 23 , TMR1_BRK_TMR9_IRQn = 24 , TMR1_OVF_TMR10_IRQn = 25 ,
TMR1_TRG_HALL_TMR11_IRQn = 26 , TMR1_CH_IRQn = 27 , TMR2_GLOBAL_IRQn = 28 , TMR3_GLOBAL_IRQn = 29 ,
TMR4_GLOBAL_IRQn = 30 , I2C1_EVT_IRQn = 31 , I2C1_ERR_IRQn = 32 , I2C2_EVT_IRQn = 33 ,
I2C2_ERR_IRQn = 34 , SPI1_IRQn = 35 , SPI2_IRQn = 36 , USART1_IRQn = 37 ,
USART2_IRQn = 38 , USART3_IRQn = 39 , EXINT15_10_IRQn = 40 , RTCAlarm_IRQn = 41 ,
USBFSWakeUp_IRQn = 42 , TMR8_BRK_TMR12_IRQn = 43 , TMR8_OVF_TMR13_IRQn = 44 , TMR8_TRG_HALL_TMR14_IRQn = 45 ,
TMR8_CH_IRQn = 46 , ADC3_IRQn = 47 , XMC_IRQn = 48 , SDIO1_IRQn = 49 ,
TMR5_GLOBAL_IRQn = 50 , SPI3_IRQn = 51 , UART4_IRQn = 52 , UART5_IRQn = 53 ,
TMR6_GLOBAL_IRQn = 54 , TMR7_GLOBAL_IRQn = 55 , DMA2_Channel1_IRQn = 56 , DMA2_Channel2_IRQn = 57 ,
DMA2_Channel3_IRQn = 58 , DMA2_Channel4_5_IRQn = 59 , SDIO2_IRQn = 60 , I2C3_EVT_IRQn = 61 ,
I2C3_ERR_IRQn = 62 , SPI4_IRQn = 63 , TMR15_BRK_IRQn = 68 , TMR15_OVF_IRQn = 69 ,
TMR15_TRG_HALL_IRQn = 70 , TMR15_IRQn = 71
}
at32f403 interrupt number definition, according to the selected device in Library_configuration_section More...
enum | flag_status { RESET = 0 , SET = !RESET }
flag status More...
enum | confirm_state { FALSE = 0 , TRUE = !FALSE }
confirm state More...
enum | error_status { ERROR = 0 , SUCCESS = !ERROR }
error status More...

Detailed Description

at32f403 header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403.h.


AT32F403 Firmwary Library: system_at32f403.c File Reference

  • libraries
  • cmsis
  • cm4
  • device_support
Macros | Functions | Variables
system_at32f403.c File Reference

contains all the functions for cmsis cortex-m4 system source file More...

#include "at32f403.h"

Go to the source code of this file.

Macros

#define VECT_TAB_OFFSET 0x0

Functions

void | SystemInit (void)
setup the microcontroller system initialize the flash interface. More...
void | system_core_clock_update (void)
update system_core_clock variable according to clock register values. the system_core_clock variable contains the core clock (hclk), it can be used by the user application to setup the systick timer or configure other parameters. More...

Variables

unsigned int system_core_clock = ((uint32_t)8000000)

Detailed Description

contains all the functions for cmsis cortex-m4 system source file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file system_at32f403.c.


AT32F403 Firmwary Library: system_at32f403.h File Reference

  • libraries
  • cmsis
  • cm4
  • device_support
Macros | Functions | Variables
system_at32f403.h File Reference

cmsis cortex-m4 system header file. More...

Go to the source code of this file.

Macros

#define | HEXT_STABLE_DELAY (5000u)
#define | PLL_STABLE_DELAY (500u)
#define | SystemCoreClock system_core_clock

Functions

void | SystemInit (void)
setup the microcontroller system initialize the flash interface. More...
void | system_core_clock_update (void)
update system_core_clock variable according to clock register values. the system_core_clock variable contains the core clock (hclk), it can be used by the user application to setup the systick timer or configure other parameters. More...

Variables

unsigned int system_core_clock

Detailed Description

cmsis cortex-m4 system header file.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file system_at32f403.h.


AT32F403 Firmwary Library: at32f403_adc.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_adc.h File Reference

at32f403 adc header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | adc_base_config_type
adc base config type More...
struct | adc_type
type define adc register all More...

Macros

#define | ADC_CCE_INT ((uint32_t)0x00000020)
#define | ADC_VMOR_INT ((uint32_t)0x00000040)
#define | ADC_PCCE_INT ((uint32_t)0x00000080)
#define | ADC_VMOR_FLAG ((uint8_t)0x01)
#define | ADC_CCE_FLAG ((uint8_t)0x02)
#define | ADC_PCCE_FLAG ((uint8_t)0x04)
#define | ADC_PCCS_FLAG ((uint8_t)0x08)
#define | ADC_OCCS_FLAG ((uint8_t)0x10)
#define | ADC1 ((adc_type *) ADC1_BASE)
#define | ADC2 ((adc_type *) ADC2_BASE)
#define | ADC3 ((adc_type *) ADC3_BASE)

Enumerations

enum adc_combine_mode_type {
ADC_INDEPENDENT_MODE = 0x00 , ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE = 0x01 , ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE = 0x02 , ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE = 0x03 ,
ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE = 0x04 , ADC_PREEMPT_SMLT_ONLY_MODE = 0x05 , ADC_ORDINARY_SMLT_ONLY_MODE = 0x06 , ADC_ORDINARY_SHORTSHIFT_ONLY_MODE = 0x07 ,
ADC_ORDINARY_LONGSHIFT_ONLY_MODE = 0x08 , ADC_PREEMPT_INTERLTRIG_ONLY_MODE = 0x09
}
adc combine mode type(these options are reserved in adc2 and adc3) More...
enum | adc_data_align_type { ADC_RIGHT_ALIGNMENT = 0x00 , ADC_LEFT_ALIGNMENT = 0x01 }
adc data align type More...
enum adc_channel_select_type {
ADC_CHANNEL_0 = 0x00 , ADC_CHANNEL_1 = 0x01 , ADC_CHANNEL_2 = 0x02 , ADC_CHANNEL_3 = 0x03 ,
ADC_CHANNEL_4 = 0x04 , ADC_CHANNEL_5 = 0x05 , ADC_CHANNEL_6 = 0x06 , ADC_CHANNEL_7 = 0x07 ,
ADC_CHANNEL_8 = 0x08 , ADC_CHANNEL_9 = 0x09 , ADC_CHANNEL_10 = 0x0A , ADC_CHANNEL_11 = 0x0B ,
ADC_CHANNEL_12 = 0x0C , ADC_CHANNEL_13 = 0x0D , ADC_CHANNEL_14 = 0x0E , ADC_CHANNEL_15 = 0x0F ,
ADC_CHANNEL_16 = 0x10 , ADC_CHANNEL_17 = 0x11
}
adc channel select type More...
enum adc_sampletime_select_type {
ADC_SAMPLETIME_1_5 = 0x00 , ADC_SAMPLETIME_7_5 = 0x01 , ADC_SAMPLETIME_13_5 = 0x02 , ADC_SAMPLETIME_28_5 = 0x03 ,
ADC_SAMPLETIME_41_5 = 0x04 , ADC_SAMPLETIME_55_5 = 0x05 , ADC_SAMPLETIME_71_5 = 0x06 , ADC_SAMPLETIME_239_5 = 0x07
}
adc sampletime select type More...
enum adc_ordinary_trig_select_type {
ADC12_ORDINARY_TRIG_TMR1CH1 = 0x00 , ADC12_ORDINARY_TRIG_TMR1CH2 = 0x01 , ADC12_ORDINARY_TRIG_TMR1CH3 = 0x02 , ADC12_ORDINARY_TRIG_TMR2CH2 = 0x03 ,
ADC12_ORDINARY_TRIG_TMR3TRGOUT = 0x04 , ADC12_ORDINARY_TRIG_TMR4CH4 = 0x05 , ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT = 0x06 , ADC12_ORDINARY_TRIG_SOFTWARE = 0x07 ,
ADC12_ORDINARY_TRIG_TMR15CH1 = 0x08 , ADC12_ORDINARY_TRIG_TMR15CH2 = 0x09 , ADC12_ORDINARY_TRIG_TMR15CH3 = 0x0A , ADC12_ORDINARY_TRIG_TMR15CH4 = 0x0B ,
ADC12_ORDINARY_TRIG_TMR15TRGOUT = 0x0C , ADC12_ORDINARY_TRIG_TMR1TRGOUT = 0x0D , ADC12_ORDINARY_TRIG_TMR8CH1 = 0x0E , ADC12_ORDINARY_TRIG_TMR8CH2 = 0x0F ,
ADC3_ORDINARY_TRIG_TMR3CH1 = 0x00 , ADC3_ORDINARY_TRIG_TMR2CH3 = 0x01 , ADC3_ORDINARY_TRIG_TMR1CH3 = 0x02 , ADC3_ORDINARY_TRIG_TMR8CH1 = 0x03 ,
ADC3_ORDINARY_TRIG_TMR8TRGOUT = 0x04 , ADC3_ORDINARY_TRIG_TMR5CH1 = 0x05 , ADC3_ORDINARY_TRIG_TMR5CH3 = 0x06 , ADC3_ORDINARY_TRIG_SOFTWARE = 0x07 ,
ADC3_ORDINARY_TRIG_TMR15CH1 = 0x08 , ADC3_ORDINARY_TRIG_TMR15CH2 = 0x09 , ADC3_ORDINARY_TRIG_TMR15CH3 = 0x0A , ADC3_ORDINARY_TRIG_TMR15CH4 = 0x0B ,
ADC3_ORDINARY_TRIG_TMR15TRGOUT = 0x0C , ADC3_ORDINARY_TRIG_TMR1TRGOUT = 0x0D , ADC3_ORDINARY_TRIG_TMR1CH1 = 0x0E , ADC3_ORDINARY_TRIG_TMR8CH3 = 0x0F
}
adc ordinary group trigger event select type More...
enum adc_preempt_trig_select_type {
ADC12_PREEMPT_TRIG_TMR1TRGOUT = 0x00 , ADC12_PREEMPT_TRIG_TMR1CH4 = 0x01 , ADC12_PREEMPT_TRIG_TMR2TRGOUT = 0x02 , ADC12_PREEMPT_TRIG_TMR2CH1 = 0x03 ,
ADC12_PREEMPT_TRIG_TMR3CH4 = 0x04 , ADC12_PREEMPT_TRIG_TMR4TRGOUT = 0x05 , ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 = 0x06 , ADC12_PREEMPT_TRIG_SOFTWARE = 0x07 ,
ADC12_PREEMPT_TRIG_TMR15CH1 = 0x08 , ADC12_PREEMPT_TRIG_TMR15CH2 = 0x09 , ADC12_PREEMPT_TRIG_TMR15CH3 = 0x0A , ADC12_PREEMPT_TRIG_TMR15CH4 = 0x0B ,
ADC12_PREEMPT_TRIG_TMR15TRGOUT = 0x0C , ADC12_PREEMPT_TRIG_TMR1CH1 = 0x0D , ADC12_PREEMPT_TRIG_TMR8CH1 = 0x0E , ADC12_PREEMPT_TRIG_TMR8TRGOUT = 0x0F ,
ADC3_PREEMPT_TRIG_TMR1TRGOUT = 0x00 , ADC3_PREEMPT_TRIG_TMR1CH4 = 0x01 , ADC3_PREEMPT_TRIG_TMR4CH3 = 0x02 , ADC3_PREEMPT_TRIG_TMR8CH2 = 0x03 ,
ADC3_PREEMPT_TRIG_TMR8CH4 = 0x04 , ADC3_PREEMPT_TRIG_TMR5TRGOUT = 0x05 , ADC3_PREEMPT_TRIG_TMR5CH4 = 0x06 , ADC3_PREEMPT_TRIG_SOFTWARE = 0x07 ,
ADC3_PREEMPT_TRIG_TMR15CH1 = 0x08 , ADC3_PREEMPT_TRIG_TMR15CH2 = 0x09 , ADC3_PREEMPT_TRIG_TMR15CH3 = 0x0A , ADC3_PREEMPT_TRIG_TMR15CH4 = 0x0B ,
ADC3_PREEMPT_TRIG_TMR15TRGOUT = 0x0C , ADC3_PREEMPT_TRIG_TMR1CH1 = 0x0D , ADC3_PREEMPT_TRIG_TMR1CH2 = 0x0E , ADC3_PREEMPT_TRIG_TMR8TRGOUT = 0x0F
}
adc preempt group trigger event select type More...
enum | adc_preempt_channel_type { ADC_PREEMPT_CHANNEL_1 = 0x00 , ADC_PREEMPT_CHANNEL_2 = 0x01 , ADC_PREEMPT_CHANNEL_3 = 0x02 , ADC_PREEMPT_CHANNEL_4 = 0x03 }
adc preempt channel type More...
enum adc_voltage_monitoring_type {
ADC_VMONITOR_SINGLE_ORDINARY = 0x00800200 , ADC_VMONITOR_SINGLE_PREEMPT = 0x00400200 , ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT = 0x00C00200 , ADC_VMONITOR_ALL_ORDINARY = 0x00800000 ,
ADC_VMONITOR_ALL_PREEMPT = 0x00400000 , ADC_VMONITOR_ALL_ORDINARY_PREEMPT = 0x00C00000 , ADC_VMONITOR_NONE = 0x00000000
}
adc voltage_monitoring type More...

Functions

void | adc_reset (adc_type *adc_x)
deinitialize the adc peripheral registers to their default reset values. More...
void | adc_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral. More...
void | adc_combine_mode_select (adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral. More...
void | adc_base_default_para_init (adc_base_config_type *adc_base_struct)
adc base default para init. More...
void | adc_base_config (adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters. More...
void | adc_dma_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer. More...
void | adc_interrupt_enable (adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts. More...
void | adc_calibration_init (adc_type *adc_x)
initialize calibration register of the specified adc peripheral. More...
flag_status | adc_calibration_init_status_get (adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral. More...
void | adc_calibration_start (adc_type *adc_x)
start calibration process of the specified adc peripheral. More...
flag_status | adc_calibration_status_get (adc_type *adc_x)
get calibration status of the specified adc peripheral. More...
void | adc_voltage_monitor_enable (adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified adc peripheral. More...
void | adc_voltage_monitor_threshold_value_set (adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
set voltage monitoring's high and low thresholds value of the specified adc peripheral. More...
void | adc_voltage_monitor_single_channel_select (adc_type *adc_x, adc_channel_select_type adc_channel)
select the voltage monitoring's channel of the specified adc peripheral. More...
void | adc_ordinary_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_preempt_channel_length_set (adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral. More...
void | adc_preempt_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_ordinary_conversion_trigger_set (adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_conversion_trigger_set (adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_offset_value_set (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value)
set preempt channel's conversion value offset of the specified adc peripheral. More...
void | adc_ordinary_part_count_set (adc_type *adc_x, uint8_t adc_channel_count)
set partitioned mode channel count of the specified adc peripheral. More...
void | adc_ordinary_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on ordinary channel of the specified adc peripheral. More...
void | adc_preempt_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on preempt channel of the specified adc peripheral. More...
void | adc_preempt_auto_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable automatic preempt group conversion of the specified adc peripheral. More...
void | adc_tempersensor_vintrv_enable (confirm_state new_state)
enable or disable the temperature sensor and vintrv channel. More...
void | adc_ordinary_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral. More...
flag_status | adc_ordinary_software_trigger_status_get (adc_type *adc_x)
get ordinary software start conversion status of the specified adc peripheral. More...
void | adc_preempt_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable preempt software start conversion of the specified adc peripheral. More...
flag_status | adc_preempt_software_trigger_status_get (adc_type *adc_x)
get preempt software start conversion status of the specified adc peripheral. More...
uint16_t | adc_ordinary_conversion_data_get (adc_type *adc_x)
return the last conversion data for ordinary channel of the specified adc peripheral. More...
uint32_t | adc_combine_ordinary_conversion_data_get (void)
return the last conversion data for ordinary channel of combine adc(adc1 and adc2). More...
uint16_t | adc_preempt_conversion_data_get (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral. More...
flag_status | adc_flag_get (adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral. More...
flag_status | adc_interrupt_flag_get (adc_type *adc_x, uint8_t adc_flag)
get interrupt flag of the specified adc peripheral. More...
void | adc_flag_clear (adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral. More...

Detailed Description

at32f403 adc header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_adc.h.


AT32F403 Firmwary Library: at32f403_bpr.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_bpr.h File Reference

at32f403 bpr header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct bpr_type
type define bpr register all More...

Macros

#define | BPR_TAMPER_INTERRUPT_FLAG ((uint32_t)0x00000001)
#define | BPR_TAMPER_EVENT_FLAG ((uint32_t)0x00000002)
#define | BPR ((bpr_type *) BPR_BASE)

Enumerations

enum bpr_data_type {
BPR_DATA1 = 0x04 , BPR_DATA2 = 0x08 , BPR_DATA3 = 0x0C , BPR_DATA4 = 0x10 ,
BPR_DATA5 = 0x14 , BPR_DATA6 = 0x18 , BPR_DATA7 = 0x1C , BPR_DATA8 = 0x20 ,
BPR_DATA9 = 0x24 , BPR_DATA10 = 0x28 , BPR_DATA11 = 0x40 , BPR_DATA12 = 0x44 ,
BPR_DATA13 = 0x48 , BPR_DATA14 = 0x4C , BPR_DATA15 = 0x50 , BPR_DATA16 = 0x54 ,
BPR_DATA17 = 0x58 , BPR_DATA18 = 0x5C , BPR_DATA19 = 0x60 , BPR_DATA20 = 0x64 ,
BPR_DATA21 = 0x68 , BPR_DATA22 = 0x6C , BPR_DATA23 = 0x70 , BPR_DATA24 = 0x74 ,
BPR_DATA25 = 0x78 , BPR_DATA26 = 0x7C , BPR_DATA27 = 0x80 , BPR_DATA28 = 0x84 ,
BPR_DATA29 = 0x88 , BPR_DATA30 = 0x8C , BPR_DATA31 = 0x90 , BPR_DATA32 = 0x94 ,
BPR_DATA33 = 0x98 , BPR_DATA34 = 0x9C , BPR_DATA35 = 0xA0 , BPR_DATA36 = 0xA4 ,
BPR_DATA37 = 0xA8 , BPR_DATA38 = 0xAC , BPR_DATA39 = 0xB0 , BPR_DATA40 = 0xB4 ,
BPR_DATA41 = 0xB8 , BPR_DATA42 = 0xBC
}
battery powered register data type More...
enum bpr_rtc_output_type {
BPR_RTC_OUTPUT_NONE = 0x000 , BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE = 0x080 , BPR_RTC_OUTPUT_ALARM = 0x100 , BPR_RTC_OUTPUT_SECOND = 0x300 ,
BPR_RTC_OUTPUT_CLOCK_CAL_AFTER = 0x480
}
bpr rtc output type More...
enum bpr_tamper_pin_active_level_type { BPR_TAMPER_PIN_ACTIVE_HIGH = 0x00 , BPR_TAMPER_PIN_ACTIVE_LOW = 0x01 }
tamper pin active level type More...

Functions

void | bpr_reset (void)
bpr reset by crm reset register More...
flag_status | bpr_flag_get (uint32_t flag)
bpr event flag get, for tamper event flag More...
flag_status | bpr_interrupt_flag_get (uint32_t flag)
bpr interrupt flag get More...
void | bpr_flag_clear (uint32_t flag)
clear bpr tamper flag More...
void | bpr_interrupt_enable (confirm_state new_state)
enable or disable bpr tamper interrupt More...
uint16_t | bpr_data_read (bpr_data_type bpr_data)
read bpr bpr data More...
void | bpr_data_write (bpr_data_type bpr_data, uint16_t data_value)
write bpr data More...
void | bpr_rtc_output_select (bpr_rtc_output_type output_source)
select bpr rtc output More...
void | bpr_rtc_clock_calibration_value_set (uint8_t calibration_value)
set rtc clock calibration value More...
void | bpr_tamper_pin_enable (confirm_state new_state)
enable or disable bpr tamper pin More...
void | bpr_tamper_pin_active_level_set (bpr_tamper_pin_active_level_type active_level)
set bpr tamper pin active level More...

Detailed Description

at32f403 bpr header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_bpr.h.


AT32F403 Firmwary Library: at32f403_can.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_can.h File Reference

at32f403 can header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | can_base_type
can init structure definition More...
struct | can_baudrate_type
can baudrate structure definition More...
struct | can_filter_init_type
can filter init structure definition More...
struct | can_tx_message_type
can tx message structure definition More...
struct | can_rx_message_type
can rx message structure definition More...
struct | can_tx_mailbox_type
can controller area network tx mailbox More...
struct | can_fifo_mailbox_type
can controller area network fifo mailbox More...
struct | can_filter_register_type
can controller area network filter bit register More...
struct | can_type
type define can register all More...

Macros

#define | FZC_TIMEOUT ((uint32_t)0x0000FFFF)
#define | DZC_TIMEOUT ((uint32_t)0x0000FFFF)
#define | CAN_EAF_FLAG ((uint32_t)0x01)
#define | CAN_EPF_FLAG ((uint32_t)0x02)
#define | CAN_BOF_FLAG ((uint32_t)0x03)
#define | CAN_ETR_FLAG ((uint32_t)0x04)
#define | CAN_EOIF_FLAG ((uint32_t)0x05)
#define | CAN_TM0TCF_FLAG ((uint32_t)0x06)
#define | CAN_TM1TCF_FLAG ((uint32_t)0x07)
#define | CAN_TM2TCF_FLAG ((uint32_t)0x08)
#define | CAN_RF0MN_FLAG ((uint32_t)0x09)
#define | CAN_RF0FF_FLAG ((uint32_t)0x0A)
#define | CAN_RF0OF_FLAG ((uint32_t)0x0B)
#define | CAN_RF1MN_FLAG ((uint32_t)0x0C)
#define | CAN_RF1FF_FLAG ((uint32_t)0x0D)
#define | CAN_RF1OF_FLAG ((uint32_t)0x0E)
#define | CAN_QDZIF_FLAG ((uint32_t)0x0F)
#define | CAN_EDZC_FLAG ((uint32_t)0x10)
#define | CAN_TMEF_FLAG ((uint32_t)0x11)
#define | CAN_TCIEN_INT ((uint32_t)0x00000001)
#define | CAN_RF0MIEN_INT ((uint32_t)0x00000002)
#define | CAN_RF0FIEN_INT ((uint32_t)0x00000004)
#define | CAN_RF0OIEN_INT ((uint32_t)0x00000008)
#define | CAN_RF1MIEN_INT ((uint32_t)0x00000010)
#define | CAN_RF1FIEN_INT ((uint32_t)0x00000020)
#define | CAN_RF1OIEN_INT ((uint32_t)0x00000040)
#define | CAN_EAIEN_INT ((uint32_t)0x00000100)
#define | CAN_EPIEN_INT ((uint32_t)0x00000200)
#define | CAN_BOIEN_INT ((uint32_t)0x00000400)
#define | CAN_ETRIEN_INT ((uint32_t)0x00000800)
#define | CAN_EOIEN_INT ((uint32_t)0x00008000)
#define | CAN_QDZIEN_INT ((uint32_t)0x00010000)
#define | CAN_EDZIEN_INT ((uint32_t)0x00020000)
#define | CAN_MSTS_EOIF_VAL ((uint32_t)0x00000004)
can flag clear operation macro definition val More...
#define | CAN_MSTS_QDZIF_VAL ((uint32_t)0x00000008)
#define | CAN_MSTS_EDZIF_VAL ((uint32_t)0x00000010)
#define | CAN_TSTS_TM0TCF_VAL ((uint32_t)0x00000001)
#define | CAN_TSTS_TM1TCF_VAL ((uint32_t)0x00000100)
#define | CAN_TSTS_TM2TCF_VAL ((uint32_t)0x00010000)
#define | CAN_TSTS_TM0CT_VAL ((uint32_t)0x00000080)
#define | CAN_TSTS_TM1CT_VAL ((uint32_t)0x00008000)
#define | CAN_TSTS_TM2CT_VAL ((uint32_t)0x00800000)
#define | CAN_RF0_RF0FF_VAL ((uint32_t)0x00000008)
#define | CAN_RF0_RF0OF_VAL ((uint32_t)0x00000010)
#define | CAN_RF0_RF0R_VAL ((uint32_t)0x00000020)
#define | CAN_RF1_RF1FF_VAL ((uint32_t)0x00000008)
#define | CAN_RF1_RF1OF_VAL ((uint32_t)0x00000010)
#define | CAN_RF1_RF1R_VAL ((uint32_t)0x00000020)
#define | CAN1 ((can_type *) CAN1_BASE)

Enumerations

enum | can_filter_fifo_type { CAN_FILTER_FIFO0 = 0x00 , CAN_FILTER_FIFO1 = 0x01 }
can filter fifo More...
enum | can_filter_mode_type { CAN_FILTER_MODE_ID_MASK = 0x00 , CAN_FILTER_MODE_ID_LIST = 0x01 }
can filter mode More...
enum | can_filter_bit_width_type { CAN_FILTER_16BIT = 0x00 , CAN_FILTER_32BIT = 0x01 }
can filter bit width select More...
enum | can_mode_type { CAN_MODE_COMMUNICATE = 0x00 , CAN_MODE_LOOPBACK = 0x01 , CAN_MODE_LISTENONLY = 0x02 , CAN_MODE_LISTENONLY_LOOPBACK = 0x03 }
can mode More...
enum | can_operating_mode_type { CAN_OPERATINGMODE_FREEZE = 0x00 , CAN_OPERATINGMODE_DOZE = 0x01 , CAN_OPERATINGMODE_COMMUNICATE = 0x02 }
can operating mode More...
enum | can_rsaw_type { CAN_RSAW_1TQ = 0x00 , CAN_RSAW_2TQ = 0x01 , CAN_RSAW_3TQ = 0x02 , CAN_RSAW_4TQ = 0x03 }
can resynchronization adjust width More...
enum can_bts1_type {
CAN_BTS1_1TQ = 0x00 , CAN_BTS1_2TQ = 0x01 , CAN_BTS1_3TQ = 0x02 , CAN_BTS1_4TQ = 0x03 ,
CAN_BTS1_5TQ = 0x04 , CAN_BTS1_6TQ = 0x05 , CAN_BTS1_7TQ = 0x06 , CAN_BTS1_8TQ = 0x07 ,
CAN_BTS1_9TQ = 0x08 , CAN_BTS1_10TQ = 0x09 , CAN_BTS1_11TQ = 0x0A , CAN_BTS1_12TQ = 0x0B ,
CAN_BTS1_13TQ = 0x0C , CAN_BTS1_14TQ = 0x0D , CAN_BTS1_15TQ = 0x0E , CAN_BTS1_16TQ = 0x0F
}
can bit time segment 1 More...
enum can_bts2_type {
CAN_BTS2_1TQ = 0x00 , CAN_BTS2_2TQ = 0x01 , CAN_BTS2_3TQ = 0x02 , CAN_BTS2_4TQ = 0x03 ,
CAN_BTS2_5TQ = 0x04 , CAN_BTS2_6TQ = 0x05 , CAN_BTS2_7TQ = 0x06 , CAN_BTS2_8TQ = 0x07
}
can bit time segment 2 More...
enum | can_identifier_type { CAN_ID_STANDARD = 0x00 , CAN_ID_EXTENDED = 0x01 }
can identifier type More...
enum | can_trans_frame_type { CAN_TFT_DATA = 0x00 , CAN_TFT_REMOTE = 0x01 }
can transmission frame type More...
enum | can_tx_mailbox_num_type { CAN_TX_MAILBOX0 = 0x00 , CAN_TX_MAILBOX1 = 0x01 , CAN_TX_MAILBOX2 = 0x02 }
can tx mailboxes More...
enum | can_rx_fifo_num_type { CAN_RX_FIFO0 = 0x00 , CAN_RX_FIFO1 = 0x01 }
can receive fifo More...
enum | can_transmit_status_type { CAN_TX_STATUS_FAILED = 0x00 , CAN_TX_STATUS_SUCCESSFUL = 0x01 , CAN_TX_STATUS_PENDING = 0x02 , CAN_TX_STATUS_NO_EMPTY = 0x04 }
can transmit status More...
enum | can_enter_doze_status_type { CAN_ENTER_DOZE_FAILED = 0x00 , CAN_ENTER_DOZE_SUCCESSFUL = 0x01 }
can enter doze mode status More...
enum | can_quit_doze_status_type { CAN_QUIT_DOZE_FAILED = 0x00 , CAN_QUIT_DOZE_SUCCESSFUL = 0x01 }
can quit doze mode status More...
enum | can_msg_discarding_rule_type { CAN_DISCARDING_FIRST_RECEIVED = 0x00 , CAN_DISCARDING_LAST_RECEIVED = 0x01 }
can message discarding rule select when overflow More...
enum | can_msg_sending_rule_type { CAN_SENDING_BY_ID = 0x00 , CAN_SENDING_BY_REQUEST = 0x01 }
can multiple message sending sequence rule More...
enum can_error_record_type {
CAN_ERRORRECORD_NOERR = 0x00 , CAN_ERRORRECORD_STUFFERR = 0x01 , CAN_ERRORRECORD_FORMERR = 0x02 , CAN_ERRORRECORD_ACKERR = 0x03 ,
CAN_ERRORRECORD_BITRECESSIVEERR = 0x04 , CAN_ERRORRECORD_BITDOMINANTERR = 0x05 , CAN_ERRORRECORD_CRCERR = 0x06 , CAN_ERRORRECORD_SOFTWARESETERR = 0x07
}
can error type record More...

Functions

void | can_reset (can_type *can_x)
deinitialize the can peripheral registers to their default reset values. More...
void | can_baudrate_default_para_init (can_baudrate_type *can_baudrate_struct)
fill each can_baudrate_struct member with its default value. More...
error_status | can_baudrate_set (can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral More...
void | can_default_para_init (can_base_type *can_base_struct)
fill each can_init_struct member with its default value. More...
error_status | can_base_init (can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct. More...
void | can_filter_default_para_init (can_filter_init_type *can_filter_init_struct)
fill each can_filter_init_struct member with its default value. More...
void | can_filter_init (can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct. More...
void | can_debug_transmission_prohibit (can_type *can_x, confirm_state new_state)
enable or disable the debug transmission prohibit of the specified can peripheral. More...
void | can_ttc_mode_enable (can_type *can_x, confirm_state new_state)
enable or disable time trigger operation communication mode of the specified can peripheral. More...
uint8_t | can_message_transmit (can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral. More...
can_transmit_status_type | can_transmit_status_get (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral. More...
void | can_transmit_cancel (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
cancel a transmit request of the specified can peripheral. More...
void | can_message_receive (can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral. More...
void | can_receive_fifo_release (can_type *can_x, can_rx_fifo_num_type fifo_number)
release the specified fifo of the specified can peripheral. More...
uint8_t | can_receive_message_pending_get (can_type *can_x, can_rx_fifo_num_type fifo_number)
return the number of pending messages of the specified can peripheral. More...
error_status | can_operating_mode_set (can_type *can_x, can_operating_mode_type can_operating_mode)
set the operation mode of the specified can peripheral. More...
can_enter_doze_status_type | can_doze_mode_enter (can_type *can_x)
enter the low power mode of the specified can peripheral. More...
can_quit_doze_status_type | can_doze_mode_exit (can_type *can_x)
exit the doze mode of the specified can peripheral. More...
can_error_record_type | can_error_type_record_get (can_type *can_x)
return the error type record (etr) of the specified can peripheral. More...
uint8_t | can_receive_error_counter_get (can_type *can_x)
return the receive error counter (rec) of the specified can peripheral. More...
uint8_t | can_transmit_error_counter_get (can_type *can_x)
return the transmit error counter of the specified can peripheral. More...
void | can_interrupt_enable (can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral. More...
flag_status | can_interrupt_flag_get (can_type *can_x, uint32_t can_flag)
get interrupt flag of the specified can peripheral. More...
flag_status | can_flag_get (can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral. More...
void | can_flag_clear (can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral. More...

Detailed Description

at32f403 can header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_can.h.


AT32F403 Firmwary Library: at32f403_crc.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_crc.h File Reference

at32f403 crc header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct crc_type
type define crc register all More...

Macros

#define CRC ((crc_type *) CRC_BASE)

Enumerations

enum | crc_reverse_input_type { CRC_REVERSE_INPUT_NO_AFFECTE = 0x00 , CRC_REVERSE_INPUT_BY_BYTE = 0x01 , CRC_REVERSE_INPUT_BY_HALFWORD = 0x02 , CRC_REVERSE_INPUT_BY_WORD = 0x03 }
crc reverse input data More...
enum | crc_reverse_output_type { CRC_REVERSE_OUTPUT_NO_AFFECTE = 0x00 , CRC_REVERSE_OUTPUT_DATA = 0x01 }
crc reverse output data More...
enum | crc_poly_size_type { CRC_POLY_SIZE_32B = 0x00 , CRC_POLY_SIZE_16B = 0x01 , CRC_POLY_SIZE_8B = 0x02 , CRC_POLY_SIZE_7B = 0x03 }
crc polynomial size More...

Functions

void | crc_data_reset (void)
reset the crc data register. More...
uint32_t | crc_one_word_calculate (uint32_t data)
compute the 32-bit crc of a given data word(32-bit). More...
uint32_t | crc_block_calculate (uint32_t *pbuffer, uint32_t length)
compute the 32-bit crc of a given buffer of data word(32-bit). More...
uint32_t | crc_data_get (void)
return the current crc value. More...
void | crc_common_data_set (uint8_t cdt_value)
store a 8-bit data in the common data register. More...
uint8_t | crc_common_data_get (void)
return the 8-bit data stored in the common data register More...
void | crc_init_data_set (uint32_t value)
set the 32-bit initial data of crc More...
void | crc_reverse_input_data_set (crc_reverse_input_type value)
control the reversal of the bit order in the input data More...
void | crc_reverse_output_data_set (crc_reverse_output_type value)
control the reversal of the bit order in the output data More...
void | crc_poly_value_set (uint32_t value)
config crc polynomial value More...
uint32_t | crc_poly_value_get (void)
return crc polynomial value More...
void | crc_poly_size_set (crc_poly_size_type size)
config crc polynomial data size More...
crc_poly_size_type | crc_poly_size_get (void)
return crc polynomial data size More...

Detailed Description

at32f403 crc header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_crc.h.


AT32F403 Firmwary Library: at32f403_crm.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_crm.h File Reference

at32f403 crm header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | crm_clocks_freq_type
crm clocks freqency structure More...
struct | crm_type
type define crm register all More...

Macros

#define | CRM_REG(value) PERIPH_REG(CRM_BASE, value)
#define | CRM_REG_BIT(value) PERIPH_REG_BIT(value)
#define | CRM_HICK_STABLE_FLAG MAKE_VALUE(0x00, 1)
#define | CRM_HEXT_STABLE_FLAG MAKE_VALUE(0x00, 17)
#define | CRM_PLL_STABLE_FLAG MAKE_VALUE(0x00, 25)
#define | CRM_LEXT_STABLE_FLAG MAKE_VALUE(0x20, 1)
#define | CRM_LICK_STABLE_FLAG MAKE_VALUE(0x24, 1)
#define | CRM_ALL_RESET_FLAG MAKE_VALUE(0x24, 24)
#define | CRM_NRST_RESET_FLAG MAKE_VALUE(0x24, 26)
#define | CRM_POR_RESET_FLAG MAKE_VALUE(0x24, 27)
#define | CRM_SW_RESET_FLAG MAKE_VALUE(0x24, 28)
#define | CRM_WDT_RESET_FLAG MAKE_VALUE(0x24, 29)
#define | CRM_WWDT_RESET_FLAG MAKE_VALUE(0x24, 30)
#define | CRM_LOWPOWER_RESET_FLAG MAKE_VALUE(0x24, 31)
#define | CRM_LICK_READY_INT_FLAG MAKE_VALUE(0x08, 0)
#define | CRM_LEXT_READY_INT_FLAG MAKE_VALUE(0x08, 1)
#define | CRM_HICK_READY_INT_FLAG MAKE_VALUE(0x08, 2)
#define | CRM_HEXT_READY_INT_FLAG MAKE_VALUE(0x08, 3)
#define | CRM_PLL_READY_INT_FLAG MAKE_VALUE(0x08, 4)
#define | CRM_CLOCK_FAILURE_INT_FLAG MAKE_VALUE(0x08, 7)
#define | CRM_LICK_STABLE_INT ((uint32_t)0x00000100)
#define | CRM_LEXT_STABLE_INT ((uint32_t)0x00000200)
#define | CRM_HICK_STABLE_INT ((uint32_t)0x00000400)
#define | CRM_HEXT_STABLE_INT ((uint32_t)0x00000800)
#define | CRM_PLL_STABLE_INT ((uint32_t)0x00001000)
#define | CRM_CLOCK_FAILURE_INT ((uint32_t)0x00800000)
#define | CRM ((crm_type *) CRM_BASE)

Enumerations

enum crm_periph_clock_type {
CRM_DMA1_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 0 & 0x1F)) , CRM_DMA2_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 1 & 0x1F)) , CRM_CRC_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 6 & 0x1F)) , CRM_XMC_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 8 & 0x1F)) ,
CRM_SDIO1_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 10 & 0x1F)) , CRM_SDIO2_PERIPH_CLOCK = (uint32_t)((( 0x14 ) << 16) | ( 11 & 0x1F)) , CRM_IOMUX_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 0 & 0x1F)) , CRM_GPIOA_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 2 & 0x1F)) ,
CRM_GPIOB_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 3 & 0x1F)) , CRM_GPIOC_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 4 & 0x1F)) , CRM_GPIOD_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 5 & 0x1F)) , CRM_GPIOE_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 6 & 0x1F)) ,
CRM_GPIOF_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 7 & 0x1F)) , CRM_GPIOG_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 8 & 0x1F)) , CRM_ADC1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 9 & 0x1F)) , CRM_ADC2_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 10 & 0x1F)) ,
CRM_TMR1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 11 & 0x1F)) , CRM_SPI1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 12 & 0x1F)) , CRM_TMR8_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 13 & 0x1F)) , CRM_USART1_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 14 & 0x1F)) ,
CRM_ADC3_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 15 & 0x1F)) , CRM_TMR15_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 16 & 0x1F)) , CRM_TMR9_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 19 & 0x1F)) , CRM_TMR10_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 20 & 0x1F)) ,
CRM_TMR11_PERIPH_CLOCK = (uint32_t)((( 0x18 ) << 16) | ( 21 & 0x1F)) , CRM_TMR2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 0 & 0x1F)) , CRM_TMR3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 1 & 0x1F)) , CRM_TMR4_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 2 & 0x1F)) ,
CRM_TMR5_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 3 & 0x1F)) , CRM_TMR6_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 4 & 0x1F)) , CRM_TMR7_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 5 & 0x1F)) , CRM_TMR12_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 6 & 0x1F)) ,
CRM_TMR13_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 7 & 0x1F)) , CRM_TMR14_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 8 & 0x1F)) , CRM_WWDT_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 11 & 0x1F)) , CRM_SPI2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 14 & 0x1F)) ,
CRM_SPI3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 15 & 0x1F)) , CRM_SPI4_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 16 & 0x1F)) , CRM_USART2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 17 & 0x1F)) , CRM_USART3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 18 & 0x1F)) ,
CRM_UART4_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 19 & 0x1F)) , CRM_UART5_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 20 & 0x1F)) , CRM_I2C1_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 21 & 0x1F)) , CRM_I2C2_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 22 & 0x1F)) ,
CRM_USB_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 23 & 0x1F)) , CRM_CAN1_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 25 & 0x1F)) , CRM_I2C3_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 26 & 0x1F)) , CRM_BPR_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 27 & 0x1F)) ,
CRM_PWC_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 28 & 0x1F)) , CRM_DAC_PERIPH_CLOCK = (uint32_t)((( 0x1C ) << 16) | ( 29 & 0x1F))
}
crm periph clock More...
enum crm_periph_reset_type {
CRM_IOMUX_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 0 & 0x1F)) , CRM_EXINT_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 1 & 0x1F)) , CRM_GPIOA_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 2 & 0x1F)) , CRM_GPIOB_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 3 & 0x1F)) ,
CRM_GPIOC_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 4 & 0x1F)) , CRM_GPIOD_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 5 & 0x1F)) , CRM_GPIOE_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 6 & 0x1F)) , CRM_GPIOF_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 7 & 0x1F)) ,
CRM_GPIOG_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 8 & 0x1F)) , CRM_ADC1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 9 & 0x1F)) , CRM_ADC2_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 10 & 0x1F)) , CRM_TMR1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 11 & 0x1F)) ,
CRM_SPI1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 12 & 0x1F)) , CRM_TMR8_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 13 & 0x1F)) , CRM_USART1_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 14 & 0x1F)) , CRM_ADC3_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 15 & 0x1F)) ,
CRM_TMR15_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 16 & 0x1F)) , CRM_TMR9_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 19 & 0x1F)) , CRM_TMR10_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 20 & 0x1F)) , CRM_TMR11_PERIPH_RESET = (uint32_t)((( 0x0C ) << 16) | ( 21 & 0x1F)) ,
CRM_TMR2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 0 & 0x1F)) , CRM_TMR3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 1 & 0x1F)) , CRM_TMR4_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 2 & 0x1F)) , CRM_TMR5_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 3 & 0x1F)) ,
CRM_TMR6_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 4 & 0x1F)) , CRM_TMR7_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 5 & 0x1F)) , CRM_TMR12_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 6 & 0x1F)) , CRM_TMR13_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 7 & 0x1F)) ,
CRM_TMR14_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 8 & 0x1F)) , CRM_WWDT_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 11 & 0x1F)) , CRM_SPI2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 14 & 0x1F)) , CRM_SPI3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 15 & 0x1F)) ,
CRM_SPI4_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 16 & 0x1F)) , CRM_USART2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 17 & 0x1F)) , CRM_USART3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 18 & 0x1F)) , CRM_UART4_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 19 & 0x1F)) ,
CRM_UART5_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 20 & 0x1F)) , CRM_I2C1_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 21 & 0x1F)) , CRM_I2C2_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 22 & 0x1F)) , CRM_USB_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 23 & 0x1F)) ,
CRM_CAN1_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 25 & 0x1F)) , CRM_I2C3_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 26 & 0x1F)) , CRM_BPR_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 27 & 0x1F)) , CRM_PWC_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 28 & 0x1F)) ,
CRM_DAC_PERIPH_RESET = (uint32_t)((( 0x10 ) << 16) | ( 29 & 0x1F))
}
crm periph reset More...
enum | crm_periph_clock_sleepmd_type { CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE = (uint32_t)((( 0x14 ) << 16) | ( 2 & 0x1F)) , CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE = (uint32_t)((( 0x14 ) << 16) | ( 4 & 0x1F)) }
crm periph clock in sleep mode More...
enum crm_pll_mult_type {
CRM_PLL_MULT_2 = 0 , CRM_PLL_MULT_3 = 1 , CRM_PLL_MULT_4 = 2 , CRM_PLL_MULT_5 = 3 ,
CRM_PLL_MULT_6 = 4 , CRM_PLL_MULT_7 = 5 , CRM_PLL_MULT_8 = 6 , CRM_PLL_MULT_9 = 7 ,
CRM_PLL_MULT_10 = 8 , CRM_PLL_MULT_11 = 9 , CRM_PLL_MULT_12 = 10 , CRM_PLL_MULT_13 = 11 ,
CRM_PLL_MULT_14 = 12 , CRM_PLL_MULT_15 = 13 , CRM_PLL_MULT_16 = 15 , CRM_PLL_MULT_17 = 16 ,
CRM_PLL_MULT_18 = 17 , CRM_PLL_MULT_19 = 18 , CRM_PLL_MULT_20 = 19 , CRM_PLL_MULT_21 = 20 ,
CRM_PLL_MULT_22 = 21 , CRM_PLL_MULT_23 = 22 , CRM_PLL_MULT_24 = 23 , CRM_PLL_MULT_25 = 24 ,
CRM_PLL_MULT_26 = 25 , CRM_PLL_MULT_27 = 26 , CRM_PLL_MULT_28 = 27 , CRM_PLL_MULT_29 = 28 ,
CRM_PLL_MULT_30 = 29 , CRM_PLL_MULT_31 = 30 , CRM_PLL_MULT_32 = 31 , CRM_PLL_MULT_33 = 32 ,
CRM_PLL_MULT_34 = 33 , CRM_PLL_MULT_35 = 34 , CRM_PLL_MULT_36 = 35 , CRM_PLL_MULT_37 = 36 ,
CRM_PLL_MULT_38 = 37 , CRM_PLL_MULT_39 = 38 , CRM_PLL_MULT_40 = 39 , CRM_PLL_MULT_41 = 40 ,
CRM_PLL_MULT_42 = 41 , CRM_PLL_MULT_43 = 42 , CRM_PLL_MULT_44 = 43 , CRM_PLL_MULT_45 = 44 ,
CRM_PLL_MULT_46 = 45 , CRM_PLL_MULT_47 = 46 , CRM_PLL_MULT_48 = 47 , CRM_PLL_MULT_49 = 48 ,
CRM_PLL_MULT_50 = 49 , CRM_PLL_MULT_51 = 50 , CRM_PLL_MULT_52 = 51 , CRM_PLL_MULT_53 = 52 ,
CRM_PLL_MULT_54 = 53 , CRM_PLL_MULT_55 = 54 , CRM_PLL_MULT_56 = 55 , CRM_PLL_MULT_57 = 56 ,
CRM_PLL_MULT_58 = 57 , CRM_PLL_MULT_59 = 58 , CRM_PLL_MULT_60 = 59 , CRM_PLL_MULT_61 = 60 ,
CRM_PLL_MULT_62 = 61 , CRM_PLL_MULT_63 = 62 , CRM_PLL_MULT_64 = 63
}
crm pll mult_x More...
enum | crm_pll_clock_source_type { CRM_PLL_SOURCE_HICK = 0x00 , CRM_PLL_SOURCE_HEXT = 0x01 , CRM_PLL_SOURCE_HEXT_DIV = 0x02 }
crm pll clock source More...
enum | crm_pll_output_range_type { CRM_PLL_OUTPUT_RANGE_LE72MHZ = 0x00 , CRM_PLL_OUTPUT_RANGE_GT72MHZ = 0x01 }
crm pll clock output range More...
enum crm_clock_source_type {
CRM_CLOCK_SOURCE_HICK = 0x00 , CRM_CLOCK_SOURCE_HEXT = 0x01 , CRM_CLOCK_SOURCE_PLL = 0x02 , CRM_CLOCK_SOURCE_LEXT = 0x03 ,
CRM_CLOCK_SOURCE_LICK = 0x04
}
crm clock source More...
enum crm_ahb_div_type {
CRM_AHB_DIV_1 = 0x00 , CRM_AHB_DIV_2 = 0x08 , CRM_AHB_DIV_4 = 0x09 , CRM_AHB_DIV_8 = 0x0A ,
CRM_AHB_DIV_16 = 0x0B , CRM_AHB_DIV_64 = 0x0C , CRM_AHB_DIV_128 = 0x0D , CRM_AHB_DIV_256 = 0x0E ,
CRM_AHB_DIV_512 = 0x0F
}
crm ahb division More...
enum crm_apb1_div_type {
CRM_APB1_DIV_1 = 0x00 , CRM_APB1_DIV_2 = 0x04 , CRM_APB1_DIV_4 = 0x05 , CRM_APB1_DIV_8 = 0x06 ,
CRM_APB1_DIV_16 = 0x07
}
crm apb1 division More...
enum crm_apb2_div_type {
CRM_APB2_DIV_1 = 0x00 , CRM_APB2_DIV_2 = 0x04 , CRM_APB2_DIV_4 = 0x05 , CRM_APB2_DIV_8 = 0x06 ,
CRM_APB2_DIV_16 = 0x07
}
crm apb2 division More...
enum crm_adc_div_type {
CRM_ADC_DIV_2 = 0x00 , CRM_ADC_DIV_4 = 0x01 , CRM_ADC_DIV_6 = 0x02 , CRM_ADC_DIV_8 = 0x03 ,
CRM_ADC_DIV_12 = 0x05 , CRM_ADC_DIV_16 = 0x07
}
crm adc division More...
enum crm_usb_div_type {
CRM_USB_DIV_1_5 = 0x00 , CRM_USB_DIV_1 = 0x01 , CRM_USB_DIV_2_5 = 0x02 , CRM_USB_DIV_2 = 0x03 ,
CRM_USB_DIV_3_5 = 0x04 , CRM_USB_DIV_3 = 0x05 , CRM_USB_DIV_4 = 0x06
}
crm usb division More...
enum | crm_rtc_clock_type { CRM_RTC_CLOCK_NOCLK = 0x00 , CRM_RTC_CLOCK_LEXT = 0x01 , CRM_RTC_CLOCK_LICK = 0x02 , CRM_RTC_CLOCK_HEXT_DIV = 0x03 }
crm rtc clock More...
enum | crm_sclk_type { CRM_SCLK_HICK = 0x00 , CRM_SCLK_HEXT = 0x01 , CRM_SCLK_PLL = 0x02 }
crm sclk select More...
enum crm_clkout_select_type {
CRM_CLKOUT_NOCLK = 0x00 , CRM_CLKOUT_LICK = 0x02 , CRM_CLKOUT_LEXT = 0x03 , CRM_CLKOUT_SCLK = 0x04 ,
CRM_CLKOUT_HICK = 0x05 , CRM_CLKOUT_HEXT = 0x06 , CRM_CLKOUT_PLL_DIV_2 = 0x07 , CRM_CLKOUT_PLL_DIV_4 = 0x0C ,
CRM_CLKOUT_USB = 0x0D , CRM_CLKOUT_ADC = 0x0E
}
crm clkout select More...
enum | crm_usb_int_map_type { CRM_USB_INT19_INT20 = 0x00 , CRM_USB_INT73_INT74 = 0x01 }
crm usbdev interrupt remap More...
enum | crm_usb_clock_source_type { CRM_USB_CLOCK_SOURCE_PLL = 0x00 , CRM_USB_CLOCK_SOURCE_HICK = 0x01 }
crm usb 48 mhz clock source select More...

Functions

void | crm_reset (void)
reset the crm register More...
void | crm_lext_bypass (confirm_state new_state)
enable or disable crm low speed external crystal bypass More...
void | crm_hext_bypass (confirm_state new_state)
enable or disable crm high speed external crystal bypass More...
flag_status | crm_flag_get (uint32_t flag)
get crm flag status More...
flag_status | crm_interrupt_flag_get (uint32_t flag)
get crm interrupt flag status More...
error_status | crm_hext_stable_wait (void)
wait for hext stable More...
void | crm_hick_clock_trimming_set (uint8_t trim_value)
set the hick trimming value More...
void | crm_hick_clock_calibration_set (uint8_t cali_value)
set the crm calibration value More...
void | crm_periph_clock_enable (crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock More...
void | crm_periph_reset (crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset More...
void | crm_periph_sleep_mode_clock_enable (crm_periph_clock_sleepmd_type value, confirm_state new_state)
enable or disable the peripheral clock in sleep mode More...
void | crm_clock_source_enable (crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source More...
void | crm_flag_clear (uint32_t flag)
clear the crm reset flags More...
void | crm_rtc_clock_select (crm_rtc_clock_type value)
select rtc clock More...
void | crm_rtc_clock_enable (confirm_state new_state)
enable or disable rtc More...
void | crm_ahb_div_set (crm_ahb_div_type value)
set crm ahb division More...
void | crm_apb1_div_set (crm_apb1_div_type value)
set crm apb1 division More...
void | crm_apb2_div_set (crm_apb2_div_type value)
set crm apb2 division More...
void | crm_adc_clock_div_set (crm_adc_div_type div_value)
set crm adc division More...
void | crm_usb_clock_div_set (crm_usb_div_type div_value)
set crm usb division More...
void | crm_clock_failure_detection_enable (confirm_state new_state)
enable or disable clock failure detection More...
void | crm_battery_powered_domain_reset (confirm_state new_state)
battery powered domain software reset More...
void | crm_pll_config (crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll More...
void | crm_sysclk_switch (crm_sclk_type value)
select system clock source More...
crm_sclk_type | crm_sysclk_switch_status_get (void)
indicate which clock source is used as system clock More...
void | crm_clocks_freq_get (crm_clocks_freq_type *clocks_struct)
get crm clocks freqency More...
void | crm_clock_out_set (crm_clkout_select_type clkout)
set crm clkout More...
void | crm_interrupt_enable (uint32_t crm_int, confirm_state new_state)
config crm interrupt More...

Detailed Description

at32f403 crm header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_crm.h.


AT32F403 Firmwary Library: at32f403_dac.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_dac.h File Reference

at32f403 dac header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct dac_type
type define dac register all More...

Macros

#define | DAC1_D1DMAUDRF ((uint32_t)(0x00002000))
#define | DAC2_D2DMAUDRF ((uint32_t)(0x20000000))
#define | DAC ((dac_type *) DAC_BASE)

Enumerations

enum | dac_select_type { DAC1_SELECT = 0x01 , DAC2_SELECT = 0x02 }
dac select type More...
enum dac_trigger_type {
DAC_TMR6_TRGOUT_EVENT = 0x00 , DAC_TMR8_TRGOUT_EVENT = 0x01 , DAC_TMR7_TRGOUT_EVENT = 0x02 , DAC_TMR5_TRGOUT_EVENT = 0x03 ,
DAC_TMR2_TRGOUT_EVENT = 0x04 , DAC_TMR4_TRGOUT_EVENT = 0x05 , DAC_EXTERNAL_INTERRUPT_LINE_9 = 0x06 , DAC_SOFTWARE_TRIGGER = 0x07
}
dac trigger type More...
enum | dac_wave_type { DAC_WAVE_GENERATE_NONE = 0x00 , DAC_WAVE_GENERATE_NOISE = 0x01 , DAC_WAVE_GENERATE_TRIANGLE = 0x02 }
dac wave type More...
enum dac_mask_amplitude_type {
DAC_LSFR_BIT0_AMPLITUDE_1 = 0x00 , DAC_LSFR_BIT10_AMPLITUDE_3 = 0x01 , DAC_LSFR_BIT20_AMPLITUDE_7 = 0x02 , DAC_LSFR_BIT30_AMPLITUDE_15 = 0x03 ,
DAC_LSFR_BIT40_AMPLITUDE_31 = 0x04 , DAC_LSFR_BIT50_AMPLITUDE_63 = 0x05 , DAC_LSFR_BIT60_AMPLITUDE_127 = 0x06 , DAC_LSFR_BIT70_AMPLITUDE_255 = 0x07 ,
DAC_LSFR_BIT80_AMPLITUDE_511 = 0x08 , DAC_LSFR_BIT90_AMPLITUDE_1023 = 0x09 , DAC_LSFR_BITA0_AMPLITUDE_2047 = 0x0A , DAC_LSFR_BITB0_AMPLITUDE_4095 = 0x0B
}
dac mask amplitude type More...
enum | dac1_aligned_data_type { DAC1_12BIT_RIGHT = 0x40007408 , DAC1_12BIT_LEFT = 0x4000740C , DAC1_8BIT_RIGHT = 0x40007410 }
dac1 aligned data type More...
enum | dac2_aligned_data_type { DAC2_12BIT_RIGHT = 0x40007414 , DAC2_12BIT_LEFT = 0x40007418 , DAC2_8BIT_RIGHT = 0x4000741C }
dac2 aligned data type More...
enum | dac_dual_data_type { DAC_DUAL_12BIT_RIGHT = 0x40007420 , DAC_DUAL_12BIT_LEFT = 0x40007424 , DAC_DUAL_8BIT_RIGHT = 0x40007428 }
dac dual data type More...

Functions

void | dac_reset (void)
dac reset More...
void | dac_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac More...
void | dac_output_buffer_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer More...
void | dac_trigger_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger More...
void | dac_trigger_select (dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger More...
void | dac_software_trigger_generate (dac_select_type dac_select)
generate dac software trigger More...
void | dac_dual_software_trigger_generate (void)
generate dac dual software trigger synchronously More...
void | dac_wave_generate (dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave More...
void | dac_mask_amplitude_select (dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude More...
void | dac_dma_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma More...
uint16_t | dac_data_output_get (dac_select_type dac_select)
get dac data output More...
void | dac_1_data_set (dac1_aligned_data_type dac1_aligned, uint16_t dac1_data)
set dac1 data More...
void | dac_2_data_set (dac2_aligned_data_type dac2_aligned, uint16_t dac2_data)
set dac2 data More...
void | dac_dual_data_set (dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
set dac dual data More...

Detailed Description

at32f403 dac header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_dac.h.


AT32F403 Firmwary Library: at32f403_debug.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Functions
at32f403_debug.h File Reference

at32f403 debug header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct debug_type
type define debug register all More...

Macros

#define | DEBUG_SLEEP 0x00000001
#define | DEBUG_DEEPSLEEP 0x00000002
#define | DEBUG_STANDBY 0x00000004
#define | DEBUG_WDT_PAUSE 0x00000100
#define | DEBUG_WWDT_PAUSE 0x00000200
#define | DEBUG_TMR1_PAUSE 0x00000400
#define | DEBUG_TMR2_PAUSE 0x00000800
#define | DEBUG_TMR3_PAUSE 0x00001000
#define | DEBUG_TMR4_PAUSE 0x00002000
#define | DEBUG_TMR5_PAUSE 0x00040000
#define | DEBUG_TMR6_PAUSE 0x00080000
#define | DEBUG_TMR7_PAUSE 0x00100000
#define | DEBUG_TMR8_PAUSE 0x00020000
#define | DEBUG_TMR9_PAUSE 0x10000000
#define | DEBUG_TMR10_PAUSE 0x20000000
#define | DEBUG_TMR11_PAUSE 0x40000000
#define | DEBUG_TMR12_PAUSE 0x02000000
#define | DEBUG_TMR13_PAUSE 0x04000000
#define | DEBUG_TMR14_PAUSE 0x08000000
#define | DEBUG_TMR15_PAUSE 0x00400000
#define | DEBUG_I2C1_SMBUS_TIMEOUT 0x00008000
#define | DEBUG_I2C2_SMBUS_TIMEOUT 0x00010000
#define | DEBUG_I2C3_SMBUS_TIMEOUT 0x80000000
#define | DEBUG_CAN1_PAUSE 0x00004000
#define | DEBUGMCU ((debug_type *) DEBUG_BASE)

Functions

uint32_t | debug_device_id_get (void)
get debug device id More...
void | debug_periph_mode_set (uint32_t periph_debug_mode, confirm_state new_state)
set periph debug mode More...

Detailed Description

at32f403 debug header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_debug.h.


AT32F403 Firmwary Library: at32f403_def.h File Reference

  • libraries
  • drivers
  • inc
Macros
at32f403_def.h File Reference

at32f403 macros header file More...

Go to the source code of this file.

Macros

#define UNUSED(x) (void)x /* to avoid gcc/g++ warnings */

Detailed Description

at32f403 macros header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_def.h.

Macro Definition Documentation

◆ UNUSED

#define UNUSED ( x ) (void)x /* to avoid gcc/g++ warnings */

Definition at line 63 of file at32f403_def.h.


AT32F403 Firmwary Library: at32f403_dma.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_dma.h File Reference

at32f403 dma header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | dma_init_type
dma init type More...
struct | dma_type
type define dma register More...
struct | dma_channel_type
type define dma channel register all More...

Macros

#define | DMA_FDT_INT ((uint32_t)0x00000002)
#define | DMA_HDT_INT ((uint32_t)0x00000004)
#define | DMA_DTERR_INT ((uint32_t)0x00000008)
#define | DMA1_GL1_FLAG ((uint32_t)0x00000001)
#define | DMA1_FDT1_FLAG ((uint32_t)0x00000002)
#define | DMA1_HDT1_FLAG ((uint32_t)0x00000004)
#define | DMA1_DTERR1_FLAG ((uint32_t)0x00000008)
#define | DMA1_GL2_FLAG ((uint32_t)0x00000010)
#define | DMA1_FDT2_FLAG ((uint32_t)0x00000020)
#define | DMA1_HDT2_FLAG ((uint32_t)0x00000040)
#define | DMA1_DTERR2_FLAG ((uint32_t)0x00000080)
#define | DMA1_GL3_FLAG ((uint32_t)0x00000100)
#define | DMA1_FDT3_FLAG ((uint32_t)0x00000200)
#define | DMA1_HDT3_FLAG ((uint32_t)0x00000400)
#define | DMA1_DTERR3_FLAG ((uint32_t)0x00000800)
#define | DMA1_GL4_FLAG ((uint32_t)0x00001000)
#define | DMA1_FDT4_FLAG ((uint32_t)0x00002000)
#define | DMA1_HDT4_FLAG ((uint32_t)0x00004000)
#define | DMA1_DTERR4_FLAG ((uint32_t)0x00008000)
#define | DMA1_GL5_FLAG ((uint32_t)0x00010000)
#define | DMA1_FDT5_FLAG ((uint32_t)0x00020000)
#define | DMA1_HDT5_FLAG ((uint32_t)0x00040000)
#define | DMA1_DTERR5_FLAG ((uint32_t)0x00080000)
#define | DMA1_GL6_FLAG ((uint32_t)0x00100000)
#define | DMA1_FDT6_FLAG ((uint32_t)0x00200000)
#define | DMA1_HDT6_FLAG ((uint32_t)0x00400000)
#define | DMA1_DTERR6_FLAG ((uint32_t)0x00800000)
#define | DMA1_GL7_FLAG ((uint32_t)0x01000000)
#define | DMA1_FDT7_FLAG ((uint32_t)0x02000000)
#define | DMA1_HDT7_FLAG ((uint32_t)0x04000000)
#define | DMA1_DTERR7_FLAG ((uint32_t)0x08000000)
#define | DMA2_GL1_FLAG ((uint32_t)0x10000001)
#define | DMA2_FDT1_FLAG ((uint32_t)0x10000002)
#define | DMA2_HDT1_FLAG ((uint32_t)0x10000004)
#define | DMA2_DTERR1_FLAG ((uint32_t)0x10000008)
#define | DMA2_GL2_FLAG ((uint32_t)0x10000010)
#define | DMA2_FDT2_FLAG ((uint32_t)0x10000020)
#define | DMA2_HDT2_FLAG ((uint32_t)0x10000040)
#define | DMA2_DTERR2_FLAG ((uint32_t)0x10000080)
#define | DMA2_GL3_FLAG ((uint32_t)0x10000100)
#define | DMA2_FDT3_FLAG ((uint32_t)0x10000200)
#define | DMA2_HDT3_FLAG ((uint32_t)0x10000400)
#define | DMA2_DTERR3_FLAG ((uint32_t)0x10000800)
#define | DMA2_GL4_FLAG ((uint32_t)0x10001000)
#define | DMA2_FDT4_FLAG ((uint32_t)0x10002000)
#define | DMA2_HDT4_FLAG ((uint32_t)0x10004000)
#define | DMA2_DTERR4_FLAG ((uint32_t)0x10008000)
#define | DMA2_GL5_FLAG ((uint32_t)0x10010000)
#define | DMA2_FDT5_FLAG ((uint32_t)0x10020000)
#define | DMA2_HDT5_FLAG ((uint32_t)0x10040000)
#define | DMA2_DTERR5_FLAG ((uint32_t)0x10080000)
#define | DMA1 ((dma_type *) DMA1_BASE)
#define | DMA1_CHANNEL1 ((dma_channel_type *) DMA1_CHANNEL1_BASE)
#define | DMA1_CHANNEL2 ((dma_channel_type *) DMA1_CHANNEL2_BASE)
#define | DMA1_CHANNEL3 ((dma_channel_type *) DMA1_CHANNEL3_BASE)
#define | DMA1_CHANNEL4 ((dma_channel_type *) DMA1_CHANNEL4_BASE)
#define | DMA1_CHANNEL5 ((dma_channel_type *) DMA1_CHANNEL5_BASE)
#define | DMA1_CHANNEL6 ((dma_channel_type *) DMA1_CHANNEL6_BASE)
#define | DMA1_CHANNEL7 ((dma_channel_type *) DMA1_CHANNEL7_BASE)
#define | DMA2 ((dma_type *) DMA2_BASE)
#define | DMA2_CHANNEL1 ((dma_channel_type *) DMA2_CHANNEL1_BASE)
#define | DMA2_CHANNEL2 ((dma_channel_type *) DMA2_CHANNEL2_BASE)
#define | DMA2_CHANNEL3 ((dma_channel_type *) DMA2_CHANNEL3_BASE)
#define | DMA2_CHANNEL4 ((dma_channel_type *) DMA2_CHANNEL4_BASE)
#define | DMA2_CHANNEL5 ((dma_channel_type *) DMA2_CHANNEL5_BASE)

Enumerations

enum | dma_dir_type { DMA_DIR_PERIPHERAL_TO_MEMORY = 0x0000 , DMA_DIR_MEMORY_TO_PERIPHERAL = 0x0010 , DMA_DIR_MEMORY_TO_MEMORY = 0x4000 }
dma direction type More...
enum | dma_peripheral_inc_type { DMA_PERIPHERAL_INC_DISABLE = 0x00 , DMA_PERIPHERAL_INC_ENABLE = 0x01 }
dma peripheral incremented type More...
enum | dma_memory_inc_type { DMA_MEMORY_INC_DISABLE = 0x00 , DMA_MEMORY_INC_ENABLE = 0x01 }
dma memory incremented type More...
enum | dma_peripheral_data_size_type { DMA_PERIPHERAL_DATA_WIDTH_BYTE = 0x00 , DMA_PERIPHERAL_DATA_WIDTH_HALFWORD = 0x01 , DMA_PERIPHERAL_DATA_WIDTH_WORD = 0x02 }
dma peripheral data size type More...
enum | dma_memory_data_size_type { DMA_MEMORY_DATA_WIDTH_BYTE = 0x00 , DMA_MEMORY_DATA_WIDTH_HALFWORD = 0x01 , DMA_MEMORY_DATA_WIDTH_WORD = 0x02 }
dma memory data size type More...
enum | dma_priority_level_type { DMA_PRIORITY_LOW = 0x00 , DMA_PRIORITY_MEDIUM = 0x01 , DMA_PRIORITY_HIGH = 0x02 , DMA_PRIORITY_VERY_HIGH = 0x03 }
dma priority level type More...

Functions

void | dma_reset (dma_channel_type *dmax_channely)
reset the dmax channely registers. More...
void | dma_data_number_set (dma_channel_type *dmax_channely, uint16_t data_number)
set the number of data to be transferred More...
uint16_t | dma_data_number_get (dma_channel_type *dmax_channely)
get number of data from dtcnt register More...
void | dma_interrupt_enable (dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt More...
void | dma_channel_enable (dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely More...
flag_status | dma_flag_get (uint32_t dmax_flag)
get dma flag More...
void | dma_flag_clear (uint32_t dmax_flag)
clear dma flag More...
void | dma_default_para_init (dma_init_type *dma_init_struct)
dma init config with its default value. More...
void | dma_init (dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init More...

Detailed Description

at32f403 dma header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_dma.h.


AT32F403 Firmwary Library: at32f403_exint.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_exint.h File Reference

at32f403 exint header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | exint_init_type
exint init type More...
struct | exint_type
type define exint register all More...

Macros

#define | EXINT_LINE_NONE ((uint32_t)0x000000)
#define | EXINT_LINE_0 ((uint32_t)0x000001)
#define | EXINT_LINE_1 ((uint32_t)0x000002)
#define | EXINT_LINE_2 ((uint32_t)0x000004)
#define | EXINT_LINE_3 ((uint32_t)0x000008)
#define | EXINT_LINE_4 ((uint32_t)0x000010)
#define | EXINT_LINE_5 ((uint32_t)0x000020)
#define | EXINT_LINE_6 ((uint32_t)0x000040)
#define | EXINT_LINE_7 ((uint32_t)0x000080)
#define | EXINT_LINE_8 ((uint32_t)0x000100)
#define | EXINT_LINE_9 ((uint32_t)0x000200)
#define | EXINT_LINE_10 ((uint32_t)0x000400)
#define | EXINT_LINE_11 ((uint32_t)0x000800)
#define | EXINT_LINE_12 ((uint32_t)0x001000)
#define | EXINT_LINE_13 ((uint32_t)0x002000)
#define | EXINT_LINE_14 ((uint32_t)0x004000)
#define | EXINT_LINE_15 ((uint32_t)0x008000)
#define | EXINT_LINE_16 ((uint32_t)0x010000)
#define | EXINT_LINE_17 ((uint32_t)0x020000)
#define | EXINT_LINE_18 ((uint32_t)0x040000)
#define | EXINT_LINE_19 ((uint32_t)0x080000)
#define | EXINT ((exint_type *) EXINT_BASE)

Enumerations

enum | exint_line_mode_type { EXINT_LINE_INTERRUPUT = 0x00 , EXINT_LINE_EVENT = 0x01 }
exint line mode type More...
enum | exint_polarity_config_type { EXINT_TRIGGER_RISING_EDGE = 0x00 , EXINT_TRIGGER_FALLING_EDGE = 0x01 , EXINT_TRIGGER_BOTH_EDGE = 0x02 }
exint polarity configuration type More...

Functions

void | exint_reset (void)
exint reset More...
void | exint_default_para_init (exint_init_type *exint_struct)
exint default para init More...
void | exint_init (exint_init_type *exint_struct)
exint init More...
void | exint_flag_clear (uint32_t exint_line)
clear exint flag More...
flag_status | exint_flag_get (uint32_t exint_line)
get exint flag More...
flag_status | exint_interrupt_flag_get (uint32_t exint_line)
get exint interrupt flag More...
void | exint_software_interrupt_event_generate (uint32_t exint_line)
generate exint software interrupt event More...
void | exint_interrupt_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint interrupt More...
void | exint_event_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint event More...

Detailed Description

at32f403 exint header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_exint.h.


AT32F403 Firmwary Library: at32f403_flash.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_flash.h File Reference

at32f403 flash header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | flash_type
type define flash register all More...
struct | usd_type
user system data More...

Macros

#define | FLASH_UNLOCK_KEY1 ((uint32_t)0x45670123)
#define | FLASH_UNLOCK_KEY2 ((uint32_t)0xCDEF89AB)
#define | FAP_RELIEVE_KEY ((uint16_t)0x00A5)
#define | FLASH_BANK1_START_ADDR ((uint32_t)0x08000000)
#define | FLASH_BANK1_END_ADDR ((uint32_t)0x0807FFFF)
#define | FLASH_BANK2_START_ADDR ((uint32_t)0x08080000)
#define | FLASH_BANK2_END_ADDR ((uint32_t)0x080FFFFF)
#define | FLASH_SPIM_START_ADDR ((uint32_t)0x08400000)
#define | FLASH_OBF_FLAG FLASH_BANK1_OBF_FLAG
#define | FLASH_ODF_FLAG FLASH_BANK1_ODF_FLAG
#define | FLASH_PRGMERR_FLAG FLASH_BANK1_PRGMERR_FLAG
#define | FLASH_EPPERR_FLAG FLASH_BANK1_EPPERR_FLAG
#define | FLASH_BANK1_OBF_FLAG ((uint32_t)0x00000001)
#define | FLASH_BANK1_ODF_FLAG ((uint32_t)0x00000020)
#define | FLASH_BANK1_PRGMERR_FLAG ((uint32_t)0x00000004)
#define | FLASH_BANK1_EPPERR_FLAG ((uint32_t)0x00000010)
#define | FLASH_BANK2_OBF_FLAG ((uint32_t)0x10000001)
#define | FLASH_BANK2_ODF_FLAG ((uint32_t)0x10000020)
#define | FLASH_BANK2_PRGMERR_FLAG ((uint32_t)0x10000004)
#define | FLASH_BANK2_EPPERR_FLAG ((uint32_t)0x10000010)
#define | FLASH_SPIM_OBF_FLAG ((uint32_t)0x20000001)
#define | FLASH_SPIM_ODF_FLAG ((uint32_t)0x20000020)
#define | FLASH_SPIM_PRGMERR_FLAG ((uint32_t)0x20000004)
#define | FLASH_SPIM_EPPERR_FLAG ((uint32_t)0x20000010)
#define | FLASH_USDERR_FLAG ((uint32_t)0x40000001)
#define | FLASH_ERR_INT FLASH_BANK1_ERR_INT
#define | FLASH_ODF_INT FLASH_BANK1_ODF_INT
#define | FLASH_BANK1_ERR_INT ((uint32_t)0x00000001)
#define | FLASH_BANK1_ODF_INT ((uint32_t)0x00000002)
#define | FLASH_BANK2_ERR_INT ((uint32_t)0x00000004)
#define | FLASH_BANK2_ODF_INT ((uint32_t)0x00000008)
#define | FLASH_SPIM_ERR_INT ((uint32_t)0x00000010)
#define | FLASH_SPIM_ODF_INT ((uint32_t)0x00000020)
#define | USD_WDT_ATO_DISABLE ((uint16_t)0x0001)
#define | USD_WDT_ATO_ENABLE ((uint16_t)0x0000)
#define | USD_DEPSLP_NO_RST ((uint16_t)0x0002)
#define | USD_DEPSLP_RST ((uint16_t)0x0000)
#define | USD_STDBY_NO_RST ((uint16_t)0x0004)
#define | USD_STDBY_RST ((uint16_t)0x0000)
#define | FLASH_BOOT_FROM_BANK1 ((uint16_t)0x0008)
#define | FLASH_BOOT_FROM_BANK2 ((uint16_t)0x0000)
#define | ERASE_TIMEOUT ((uint32_t)0x40000000)
#define | PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)
#define | SPIM_ERASE_TIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SPIM_PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)
#define | OPERATION_TIMEOUT ((uint32_t)0x10000000)
#define | FLASH ((flash_type *) FLASH_REG_BASE)
#define | USD ((usd_type *) USD_BASE)

Enumerations

enum flash_status_type {
FLASH_OPERATE_BUSY = 0x00 , FLASH_PROGRAM_ERROR = 0x01 , FLASH_EPP_ERROR = 0x02 , FLASH_OPERATE_DONE = 0x03 ,
FLASH_OPERATE_TIMEOUT = 0x04
}
flash status type More...
enum flash_spim_model_type { FLASH_SPIM_MODEL1 = 0x01 , FLASH_SPIM_MODEL2 = 0x02 }
flash spim model type More...

Functions

flag_status | flash_flag_get (uint32_t flash_flag)
check whether the specified flash flag is set or not. More...
void | flash_flag_clear (uint32_t flash_flag)
clear the flash flag. More...
flash_status_type | flash_operation_status_get (void)
return the flash operation status. More...
flash_status_type | flash_bank1_operation_status_get (void)
return the flash bank1 operation status. More...
flash_status_type | flash_bank2_operation_status_get (void)
return the flash bank2 operation status. More...
flash_status_type | flash_spim_operation_status_get (void)
return the flash spim operation status. More...
flash_status_type | flash_operation_wait_for (uint32_t time_out)
wait for flash operation complete or timeout. More...
flash_status_type | flash_bank1_operation_wait_for (uint32_t time_out)
wait for flash bank1 operation complete or timeout. More...
flash_status_type | flash_bank2_operation_wait_for (uint32_t time_out)
wait for flash bank2 operation complete or timeout. More...
flash_status_type | flash_spim_operation_wait_for (uint32_t time_out)
wait for flash spim operation complete or timeout. More...
void | flash_unlock (void)
unlock the flash controller. More...
void | flash_bank1_unlock (void)
unlock the flash bank1 controller. More...
void | flash_bank2_unlock (void)
unlock the flash bank2 controller. More...
void | flash_spim_unlock (void)
unlock the flash spim controller. More...
void | flash_lock (void)
lock the flash controller. More...
void | flash_bank1_lock (void)
lock the flash bank1 controller. More...
void | flash_bank2_lock (void)
lock the flash bank2 controller. More...
void | flash_spim_lock (void)
lock the flash spim controller. More...
flash_status_type | flash_sector_erase (uint32_t sector_address)
erase a specified flash sector. More...
flash_status_type | flash_internal_all_erase (void)
erase flash all internal sectors. More...
flash_status_type | flash_bank1_erase (void)
erase flash bank1 sectors. More...
flash_status_type | flash_bank2_erase (void)
erase flash bank2 sectors. More...
flash_status_type | flash_spim_all_erase (void)
erase flash spim sectors. More...
flash_status_type | flash_user_system_data_erase (void)
erase the flash user system data. More...
flash_status_type | flash_word_program (uint32_t address, uint32_t data)
program a word at a specified address. More...
flash_status_type | flash_halfword_program (uint32_t address, uint16_t data)
program a halfword at a specified address. More...
flash_status_type | flash_byte_program (uint32_t address, uint8_t data)
program a byte at a specified address. More...
flash_status_type | flash_user_system_data_program (uint32_t address, uint8_t data)
program a halfword at a specified user system data address. More...
flash_status_type | flash_epp_set (uint32_t *sector_bits)
config erase/program protection for the desired sectors. More...
void | flash_epp_status_get (uint32_t *sector_bits)
return the flash erase/program protection status. More...
flash_status_type | flash_fap_enable (confirm_state new_state)
enable or disable the flash access protection. More...
flag_status | flash_fap_status_get (void)
check the flash access protection status. More...
flash_status_type | flash_ssb_set (uint8_t usd_ssb)
program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt. More...
uint8_t | flash_ssb_status_get (void)
return the flash system setting byte status. More...
void | flash_interrupt_enable (uint32_t flash_int, confirm_state new_state)
enable or disable the specified flash interrupts. More...
void | flash_spim_model_select (flash_spim_model_type mode)
select spim supports extended spi flash chip model. More...
void | flash_spim_encryption_range_set (uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value, the writing data will be directly written to spim without encryption. More...
void | flash_spim_dummy_read (void)
operate the flash spim dummy read. More...
flash_status_type | flash_spim_mass_program (uint32_t address, uint8_t *buf, uint32_t cnt)
mass program for flash spim. More...

Detailed Description

at32f403 flash header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_flash.h.


AT32F403 Firmwary Library: at32f403_gpio.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_gpio.h File Reference

at32f403 gpio header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | gpio_init_type
gpio init type More...
struct | gpio_type
type define gpio register all More...
struct | iomux_type
type define iomux register all More...

Macros

#define | GPIO_PINS_0 0x0001
#define | GPIO_PINS_1 0x0002
#define | GPIO_PINS_2 0x0004
#define | GPIO_PINS_3 0x0008
#define | GPIO_PINS_4 0x0010
#define | GPIO_PINS_5 0x0020
#define | GPIO_PINS_6 0x0040
#define | GPIO_PINS_7 0x0080
#define | GPIO_PINS_8 0x0100
#define | GPIO_PINS_9 0x0200
#define | GPIO_PINS_10 0x0400
#define | GPIO_PINS_11 0x0800
#define | GPIO_PINS_12 0x1000
#define | GPIO_PINS_13 0x2000
#define | GPIO_PINS_14 0x4000
#define | GPIO_PINS_15 0x8000
#define | GPIO_PINS_ALL 0xFFFF
#define | IOMUX_MAKE_VALUE(reg_offset, bit_addr, bit_num, bit_val) (uint32_t)(((reg_offset) << 24) | ((bit_addr) << 16) | ((bit_num) << 8) | (bit_val))
#define | SPI1_MUX_01 IOMUX_MAKE_VALUE(0x04, 0, 1, 0x01)
#define | SPI1_MUX_10 IOMUX_MAKE_VALUE(0x04, 31, 1, 0x01)
#define | I2C1_MUX IOMUX_MAKE_VALUE(0x04, 1, 1, 0x01)
#define | USART1_MUX IOMUX_MAKE_VALUE(0x04, 2, 1, 0x01)
#define | USART2_MUX IOMUX_MAKE_VALUE(0x04, 3, 1, 0x01)
#define | USART3_MUX_01 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x01)
#define | USART3_MUX_11 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x03)
#define | TMR1_MUX_01 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x01)
#define | TMR1_MUX_11 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x03)
#define | TMR2_MUX_01 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x01)
#define | TMR2_MUX_10 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x02)
#define | TMR2_MUX_11 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x03)
#define | TMR3_MUX_10 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x02)
#define | TMR3_MUX_11 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x03)
#define | TMR4_MUX IOMUX_MAKE_VALUE(0x04, 12, 1, 0x01)
#define | CAN_MUX_10 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x02)
#define | CAN_MUX_11 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x03)
#define | PD01_MUX IOMUX_MAKE_VALUE(0x04, 15, 1, 0x01)
#define | TMR5CH4_MUX IOMUX_MAKE_VALUE(0x04, 16, 1, 0x01)
#define | ADC1_ETP_MUX IOMUX_MAKE_VALUE(0x04, 17, 1, 0x01)
#define | ADC1_ETO_MUX IOMUX_MAKE_VALUE(0x04, 18, 1, 0x01)
#define | ADC2_ETP_MUX IOMUX_MAKE_VALUE(0x04, 19, 1, 0x01)
#define | ADC2_ETO_MUX IOMUX_MAKE_VALUE(0x04, 20, 1, 0x01)
#define | SWJTAG_MUX_001 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x01)
#define | SWJTAG_MUX_010 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x02)
#define | SWJTAG_MUX_100 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x04)
#define | TMR15_MUX IOMUX_MAKE_VALUE(0x1C, 0, 1, 0x01)
#define | TMR9_MUX IOMUX_MAKE_VALUE(0x1C, 5, 1, 0x01)
#define | TMR10_MUX IOMUX_MAKE_VALUE(0x1C, 6, 1, 0x01)
#define | TMR11_MUX IOMUX_MAKE_VALUE(0x1C, 7, 1, 0x01)
#define | TMR13_MUX IOMUX_MAKE_VALUE(0x1C, 8, 1, 0x01)
#define | TMR14_MUX IOMUX_MAKE_VALUE(0x1C, 9, 1, 0x01)
#define | XMC_NADV_MUX IOMUX_MAKE_VALUE(0x1C, 10, 1, 0x01)
#define | SPI4_MUX IOMUX_MAKE_VALUE(0x1C, 17, 1, 0x01)
#define | I2C3_MUX IOMUX_MAKE_VALUE(0x1C, 18, 1, 0x01)
#define | SDIO2_MUX01 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x01)
#define | SDIO2_MUX10 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x02)
#define | SDIO2_MUX11 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x03)
#define | EXT_SPIM_EN_MUX IOMUX_MAKE_VALUE(0x1C, 21, 1, 0x01)
#define | GPIOA ((gpio_type *) GPIOA_BASE)
#define | GPIOB ((gpio_type *) GPIOB_BASE)
#define | GPIOC ((gpio_type *) GPIOC_BASE)
#define | GPIOD ((gpio_type *) GPIOD_BASE)
#define | GPIOE ((gpio_type *) GPIOE_BASE)
#define | GPIOF ((gpio_type *) GPIOF_BASE)
#define | GPIOG ((gpio_type *) GPIOG_BASE)
#define | IOMUX ((iomux_type *) IOMUX_BASE)

Enumerations

enum | gpio_mode_type { GPIO_MODE_INPUT = 0x00 , GPIO_MODE_OUTPUT = 0x10 , GPIO_MODE_MUX = 0x08 , GPIO_MODE_ANALOG = 0x03 }
gpio mode select More...
enum | gpio_drive_type { GPIO_DRIVE_STRENGTH_STRONGER = 0x01 , GPIO_DRIVE_STRENGTH_MODERATE = 0x02 , GPIO_DRIVE_STRENGTH_MAXIMUM = 0x03 }
gpio output drive strength select More...
enum | gpio_output_type { GPIO_OUTPUT_PUSH_PULL = 0x00 , GPIO_OUTPUT_OPEN_DRAIN = 0x04 }
gpio output type More...
enum | gpio_pull_type { GPIO_PULL_NONE = 0x0004 , GPIO_PULL_UP = 0x0018 , GPIO_PULL_DOWN = 0x0028 }
gpio pull type More...
enum gpio_pins_source_type {
GPIO_PINS_SOURCE0 = 0x00 , GPIO_PINS_SOURCE1 = 0x01 , GPIO_PINS_SOURCE2 = 0x02 , GPIO_PINS_SOURCE3 = 0x03 ,
GPIO_PINS_SOURCE4 = 0x04 , GPIO_PINS_SOURCE5 = 0x05 , GPIO_PINS_SOURCE6 = 0x06 , GPIO_PINS_SOURCE7 = 0x07 ,
GPIO_PINS_SOURCE8 = 0x08 , GPIO_PINS_SOURCE9 = 0x09 , GPIO_PINS_SOURCE10 = 0x0A , GPIO_PINS_SOURCE11 = 0x0B ,
GPIO_PINS_SOURCE12 = 0x0C , GPIO_PINS_SOURCE13 = 0x0D , GPIO_PINS_SOURCE14 = 0x0E , GPIO_PINS_SOURCE15 = 0x0F
}
gpio pins source type More...
enum gpio_port_source_type {
GPIO_PORT_SOURCE_GPIOA = 0x00 , GPIO_PORT_SOURCE_GPIOB = 0x01 , GPIO_PORT_SOURCE_GPIOC = 0x02 , GPIO_PORT_SOURCE_GPIOD = 0x03 ,
GPIO_PORT_SOURCE_GPIOE = 0x04 , GPIO_PORT_SOURCE_GPIOF = 0x05 , GPIO_PORT_SOURCE_GPIOG = 0x06
}
gpio port source type More...

Functions

void | gpio_reset (gpio_type *gpio_x)
reset the gpio register More...
void | gpio_iomux_reset (void)
reset the mux functions (remap, event control and exint configuration) registers to their default values. More...
void | gpio_init (gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral. More...
void | gpio_default_para_init (gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value. More...
flag_status | gpio_input_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified input port pin. More...
uint16_t | gpio_input_data_read (gpio_type *gpio_x)
read the specified gpio input data port. More...
flag_status | gpio_output_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified output port pin. More...
uint16_t | gpio_output_data_read (gpio_type *gpio_x)
read the specified gpio ouput data port. More...
void | gpio_bits_set (gpio_type *gpio_x, uint16_t pins)
set the selected data port bits. More...
void | gpio_bits_reset (gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits. More...
void | gpio_bits_write (gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
set or clear the selected data port bit. More...
void | gpio_port_write (gpio_type *gpio_x, uint16_t port_value)
write data to the specified gpio data port. More...
void | gpio_pin_wp_config (gpio_type *gpio_x, uint16_t pins)
write protect gpio pins configuration registers. More...
void | gpio_event_output_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as event output. More...
void | gpio_event_output_enable (confirm_state new_state)
enable or disable the event output. More...
void | gpio_pin_remap_config (uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration. More...
void | gpio_exint_line_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line. More...

Detailed Description

at32f403 gpio header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_gpio.h.


AT32F403 Firmwary Library: at32f403_i2c.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_i2c.h File Reference

at32f403 i2c header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct i2c_type
type define i2c register all More...

Macros

#define | I2C_STARTF_FLAG ((uint32_t)0x00000001)
#define | I2C_ADDR7F_FLAG ((uint32_t)0x00000002)
#define | I2C_TDC_FLAG ((uint32_t)0x00000004)
#define | I2C_ADDRHF_FLAG ((uint32_t)0x00000008)
#define | I2C_STOPF_FLAG ((uint32_t)0x00000010)
#define | I2C_RDBF_FLAG ((uint32_t)0x00000040)
#define | I2C_TDBE_FLAG ((uint32_t)0x00000080)
#define | I2C_BUSERR_FLAG ((uint32_t)0x00000100)
#define | I2C_ARLOST_FLAG ((uint32_t)0x00000200)
#define | I2C_ACKFAIL_FLAG ((uint32_t)0x00000400)
#define | I2C_OUF_FLAG ((uint32_t)0x00000800)
#define | I2C_PECERR_FLAG ((uint32_t)0x00001000)
#define | I2C_TMOUT_FLAG ((uint32_t)0x00004000)
#define | I2C_ALERTF_FLAG ((uint32_t)0x00008000)
#define | I2C_TRMODE_FLAG ((uint32_t)0x10010000)
#define | I2C_BUSYF_FLAG ((uint32_t)0x10020000)
#define | I2C_DIRF_FLAG ((uint32_t)0x10040000)
#define | I2C_GCADDRF_FLAG ((uint32_t)0x10100000)
#define | I2C_DEVADDRF_FLAG ((uint32_t)0x10200000)
#define | I2C_HOSTADDRF_FLAG ((uint32_t)0x10400000)
#define | I2C_ADDR2_FLAG ((uint32_t)0x10800000)
#define | I2C_DATA_INT ((uint16_t)0x0400)
#define | I2C_EVT_INT ((uint16_t)0x0200)
#define | I2C_ERR_INT ((uint16_t)0x0100)
#define | I2C1 ((i2c_type *) I2C1_BASE)
#define | I2C2 ((i2c_type *) I2C2_BASE)
#define | I2C3 ((i2c_type *) I2C3_BASE)

Enumerations

enum | i2c_master_ack_type { I2C_MASTER_ACK_CURRENT = 0x00 , I2C_MASTER_ACK_NEXT = 0x01 }
i2c master receiving mode acknowledge control More...
enum | i2c_pec_position_type { I2C_PEC_POSITION_CURRENT = 0x00 , I2C_PEC_POSITION_NEXT = 0x01 }
i2c pec position set More...
enum | i2c_smbus_alert_set_type { I2C_SMBUS_ALERT_HIGH = 0x00 , I2C_SMBUS_ALERT_LOW = 0x01 }
i2c smbus alert pin set More...
enum | i2c_smbus_mode_set_type { I2C_SMBUS_MODE_DEVICE = 0x00 , I2C_SMBUS_MODE_HOST = 0x01 }
i2c smbus mode set More...
enum | i2c_fsmode_duty_cycle_type { I2C_FSMODE_DUTY_2_1 = 0x00 , I2C_FSMODE_DUTY_16_9 = 0x01 }
i2c fast mode duty cycle More...
enum | i2c_address_mode_type { I2C_ADDRESS_MODE_7BIT = 0x00 , I2C_ADDRESS_MODE_10BIT = 0x01 }
i2c address mode More...
enum | i2c_direction_type { I2C_DIRECTION_TRANSMIT = 0x00 , I2C_DIRECTION_RECEIVE = 0x01 }
i2c address direction More...

Functions

void | i2c_reset (i2c_type *i2c_x)
reset the i2c register More...
void | i2c_software_reset (i2c_type *i2c_x, confirm_state new_state)
software reset. More...
void | i2c_init (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle. More...
void | i2c_own_address1_set (i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1. More...
void | i2c_own_address2_set (i2c_type *i2c_x, uint8_t address)
config own address2. More...
void | i2c_own_address2_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable own address2. More...
void | i2c_smbus_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable the smbus mode More...
void | i2c_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable i2c periph More...
void | i2c_fast_mode_duty_set (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty)
config fast mode duty cycle More...
void | i2c_clock_stretch_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable clock stretch. More...
void | i2c_ack_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable acknowledge. More...
void | i2c_master_receive_ack_set (i2c_type *i2c_x, i2c_master_ack_type pos)
master receiving mode acknowledge control. More...
void | i2c_pec_position_set (i2c_type *i2c_x, i2c_pec_position_type pos)
pec position set. More...
void | i2c_general_call_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable general call. More...
void | i2c_arp_mode_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable arp mode. More...
void | i2c_smbus_mode_set (i2c_type *i2c_x, i2c_smbus_mode_set_type mode)
config smbus host or device. More...
void | i2c_smbus_alert_set (i2c_type *i2c_x, i2c_smbus_alert_set_type level)
drive the smbus alert pin high or low. More...
void | i2c_pec_transmit_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec transfer. More...
void | i2c_pec_calculate_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec calcultetion. More...
uint8_t | i2c_pec_value_get (i2c_type *i2c_x)
get pec value. More...
void | i2c_dma_end_transfer_set (i2c_type *i2c_x, confirm_state new_state)
enable or disable if the next dma transfer will be the last one. More...
void | i2c_dma_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable dma requests. More...
void | i2c_interrupt_enable (i2c_type *i2c_x, uint16_t source, confirm_state new_state)
enable or disable interrupt More...
void | i2c_start_generate (i2c_type *i2c_x)
generate start condition. More...
void | i2c_stop_generate (i2c_type *i2c_x)
generate stop condition. More...
void | i2c_7bit_address_send (i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
transmit the slave address. More...
void | i2c_data_send (i2c_type *i2c_x, uint8_t data)
send a byte through the i2c periph. More...
uint8_t | i2c_data_receive (i2c_type *i2c_x)
receive a byte through the i2c periph. More...
flag_status | i2c_flag_get (i2c_type *i2c_x, uint32_t flag)
get flag status More...
flag_status | i2c_interrupt_flag_get (i2c_type *i2c_x, uint32_t flag)
get interrupt flag status More...
void | i2c_flag_clear (i2c_type *i2c_x, uint32_t flag)
clear flag status More...

Detailed Description

at32f403 i2c header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_i2c.h.


AT32F403 Firmwary Library: at32f403_misc.h File Reference

  • libraries
  • drivers
  • inc
Macros | Enumerations | Functions
at32f403_misc.h File Reference

at32f403 misc header file More...

#include "at32f403.h"

Go to the source code of this file.

Macros

#define | NVIC_VECTTAB_RAM ((uint32_t)0x20000000)
#define | NVIC_VECTTAB_FLASH ((uint32_t)0x08000000)

Enumerations

enum nvic_priority_group_type {
NVIC_PRIORITY_GROUP_0 = ((uint32_t)0x7) , NVIC_PRIORITY_GROUP_1 = ((uint32_t)0x6) , NVIC_PRIORITY_GROUP_2 = ((uint32_t)0x5) , NVIC_PRIORITY_GROUP_3 = ((uint32_t)0x4) ,
NVIC_PRIORITY_GROUP_4 = ((uint32_t)0x3)
}
nvic interrupt priority group More...
enum | nvic_lowpower_mode_type { NVIC_LP_SLEEPONEXIT = 0x02 , NVIC_LP_SLEEPDEEP = 0x04 , NVIC_LP_SEVONPEND = 0x10 }
nvic low power mode More...
enum | systick_clock_source_type { SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8 = ((uint32_t)0x00000000) , SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV = ((uint32_t)0x00000004) }
systick clock source More...

Functions

void | nvic_system_reset (void)
system reset More...
void | nvic_irq_enable (IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq More...
void | nvic_irq_disable (IRQn_Type irqn)
disable nvic irq number More...
void | nvic_priority_group_config (nvic_priority_group_type priority_group)
config nvic priority group More...
void | nvic_vector_table_set (uint32_t base, uint32_t offset)
set the vector table location and offset. More...
void | nvic_lowpower_mode_config (nvic_lowpower_mode_type lp_mode, confirm_state new_state)
config nvic lowpower mode More...
void | systick_clock_source_config (systick_clock_source_type source)
config systick clock source More...

Detailed Description

at32f403 misc header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_misc.h.


AT32F403 Firmwary Library: at32f403_pwc.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_pwc.h File Reference

at32f403 pwc header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct pwc_type
type define pwc register all More...

Macros

#define | PWC_WAKEUP_FLAG ((uint32_t)0x00000001)
#define | PWC_STANDBY_FLAG ((uint32_t)0x00000002)
#define | PWC_PVM_OUTPUT_FLAG ((uint32_t)0x00000004)
#define | PWC_WAKEUP_PIN_1 ((uint32_t)0x00000100)
pwc wakeup pin num definition More...
#define | PWC ((pwc_type *) PWC_BASE)

Enumerations

enum pwc_pvm_voltage_type {
PWC_PVM_VOLTAGE_2V3 = 0x01 , PWC_PVM_VOLTAGE_2V4 = 0x02 , PWC_PVM_VOLTAGE_2V5 = 0x03 , PWC_PVM_VOLTAGE_2V6 = 0x04 ,
PWC_PVM_VOLTAGE_2V7 = 0x05 , PWC_PVM_VOLTAGE_2V8 = 0x06 , PWC_PVM_VOLTAGE_2V9 = 0x07
}
pwc pvm voltage type More...
enum | pwc_sleep_enter_type { PWC_SLEEP_ENTER_WFI = 0x00 , PWC_SLEEP_ENTER_WFE = 0x01 }
pwc sleep enter type More...
enum | pwc_deep_sleep_enter_type { PWC_DEEP_SLEEP_ENTER_WFI = 0x00 , PWC_DEEP_SLEEP_ENTER_WFE = 0x01 }
pwc deep sleep enter type More...

Functions

void | pwc_reset (void)
deinitialize the pwc peripheral registers to their default reset values. More...
void | pwc_battery_powered_domain_access (confirm_state new_state)
enable or disable access to the battery powered domain. More...
void | pwc_pvm_level_select (pwc_pvm_voltage_type pvm_voltage)
select the voltage threshold detected by the power voltage detector. More...
void | pwc_power_voltage_monitor_enable (confirm_state new_state)
enable or disable pwc power voltage monitor (pvm) More...
void | pwc_wakeup_pin_enable (uint32_t pin_num, confirm_state new_state)
enable or disable pwc standby wakeup pin More...
void | pwc_flag_clear (uint32_t pwc_flag)
clear flag of pwc More...
flag_status | pwc_flag_get (uint32_t pwc_flag)
get flag of pwc More...
void | pwc_sleep_mode_enter (pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode More...
void | pwc_deep_sleep_mode_enter (pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode More...
void | pwc_standby_mode_enter (void)
enter pwc standby mode More...

Detailed Description

at32f403 pwc header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_pwc.h.


AT32F403 Firmwary Library: at32f403_rtc.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Functions
at32f403_rtc.h File Reference

at32f403 rtc header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct rtc_type
type define rtc register all More...

Macros

#define | RTC_TS_INT ((uint16_t)0x0001)
#define | RTC_TA_INT ((uint16_t)0x0002)
#define | RTC_OVF_INT ((uint16_t)0x0004)
#define | RTC_TS_FLAG ((uint16_t)0x0001)
#define | RTC_TA_FLAG ((uint16_t)0x0002)
#define | RTC_OVF_FLAG ((uint16_t)0x0004)
#define | RTC_UPDF_FLAG ((uint16_t)0x0008)
#define | RTC_CFGF_FLAG ((uint16_t)0x0020)
#define | RTC ((rtc_type *) RTC_BASE)

Functions

void | rtc_counter_set (uint32_t counter_value)
rtc counter set More...
uint32_t | rtc_counter_get (void)
rtc counter get More...
void | rtc_divider_set (uint32_t div_value)
rtc divider set More...
uint32_t | rtc_divider_get (void)
rtc divider get More...
void | rtc_alarm_set (uint32_t alarm_value)
rtc alarm value set More...
void | rtc_interrupt_enable (uint16_t source, confirm_state new_state)
rtc interrupt enable More...
flag_status | rtc_flag_get (uint16_t flag)
rtc flag get More...
flag_status | rtc_interrupt_flag_get (uint16_t flag)
rtc interrupt flag get More...
void | rtc_flag_clear (uint16_t flag)
rtc flag clear More...
void | rtc_wait_config_finish (void)
rtc wait configuration finish More...
void | rtc_wait_update_finish (void)
rtc wait update finish More...

Detailed Description

at32f403 rtc header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_rtc.h.


AT32F403 Firmwary Library: at32f403_sdio.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_sdio.h File Reference

at32f403 sdio header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | sdio_command_struct_type
sdio command structure More...
struct | sdio_data_struct_type
sdio data structure More...
struct | sdio_type
type define sdio register all More...

Macros

#define | SDIO_CMDFAIL_INT ((uint32_t)0x00000001)
#define | SDIO_DTFAIL_INT ((uint32_t)0x00000002)
#define | SDIO_CMDTIMEOUT_INT ((uint32_t)0x00000004)
#define | SDIO_DTTIMEOUT_INT ((uint32_t)0x00000008)
#define | SDIO_TXERRU_INT ((uint32_t)0x00000010)
#define | SDIO_RXERRO_INT ((uint32_t)0x00000020)
#define | SDIO_CMDRSPCMPL_INT ((uint32_t)0x00000040)
#define | SDIO_CMDCMPL_INT ((uint32_t)0x00000080)
#define | SDIO_DTCMP_INT ((uint32_t)0x00000100)
#define | SDIO_SBITERR_INT ((uint32_t)0x00000200)
#define | SDIO_DTBLKCMPL_INT ((uint32_t)0x00000400)
#define | SDIO_DOCMD_INT ((uint32_t)0x00000800)
#define | SDIO_DOTX_INT ((uint32_t)0x00001000)
#define | SDIO_DORX_INT ((uint32_t)0x00002000)
#define | SDIO_TXBUFH_INT ((uint32_t)0x00004000)
#define | SDIO_RXBUFH_INT ((uint32_t)0x00008000)
#define | SDIO_TXBUFF_INT ((uint32_t)0x00010000)
#define | SDIO_RXBUFF_INT ((uint32_t)0x00020000)
#define | SDIO_TXBUFE_INT ((uint32_t)0x00040000)
#define | SDIO_RXBUFE_INT ((uint32_t)0x00080000)
#define | SDIO_TXBUF_INT ((uint32_t)0x00100000)
#define | SDIO_RXBUF_INT ((uint32_t)0x00200000)
#define | SDIO_SDIOIF_INT ((uint32_t)0x00400000)
#define | SDIO_CMDFAIL_FLAG ((uint32_t)0x00000001)
#define | SDIO_DTFAIL_FLAG ((uint32_t)0x00000002)
#define | SDIO_CMDTIMEOUT_FLAG ((uint32_t)0x00000004)
#define | SDIO_DTTIMEOUT_FLAG ((uint32_t)0x00000008)
#define | SDIO_TXERRU_FLAG ((uint32_t)0x00000010)
#define | SDIO_RXERRO_FLAG ((uint32_t)0x00000020)
#define | SDIO_CMDRSPCMPL_FLAG ((uint32_t)0x00000040)
#define | SDIO_CMDCMPL_FLAG ((uint32_t)0x00000080)
#define | SDIO_DTCMPL_FLAG ((uint32_t)0x00000100)
#define | SDIO_SBITERR_FLAG ((uint32_t)0x00000200)
#define | SDIO_DTBLKCMPL_FLAG ((uint32_t)0x00000400)
#define | SDIO_DOCMD_FLAG ((uint32_t)0x00000800)
#define | SDIO_DOTX_FLAG ((uint32_t)0x00001000)
#define | SDIO_DORX_FLAG ((uint32_t)0x00002000)
#define | SDIO_TXBUFH_FLAG ((uint32_t)0x00004000)
#define | SDIO_RXBUFH_FLAG ((uint32_t)0x00008000)
#define | SDIO_TXBUFF_FLAG ((uint32_t)0x00010000)
#define | SDIO_RXBUFF_FLAG ((uint32_t)0x00020000)
#define | SDIO_TXBUFE_FLAG ((uint32_t)0x00040000)
#define | SDIO_RXBUFE_FLAG ((uint32_t)0x00080000)
#define | SDIO_TXBUF_FLAG ((uint32_t)0x00100000)
#define | SDIO_RXBUF_FLAG ((uint32_t)0x00200000)
#define | SDIO_SDIOIF_FLAG ((uint32_t)0x00400000)
#define | SDIO2 ((sdio_type *) SDIO2_BASE)

Enumerations

enum | sdio_power_state_type { SDIO_POWER_OFF = 0x00 , SDIO_POWER_ON = 0x03 }
sdio power state More...
enum | sdio_edge_phase_type { SDIO_CLOCK_EDGE_RISING = 0x00 , SDIO_CLOCK_EDGE_FALLING = 0x01 }
sdio edge phase More...
enum | sdio_bus_width_type { SDIO_BUS_WIDTH_D1 = 0x00 , SDIO_BUS_WIDTH_D4 = 0x01 , SDIO_BUS_WIDTH_D8 = 0x02 }
sdio bus width More...
enum | sdio_reponse_type { SDIO_RESPONSE_NO = 0x00 , SDIO_RESPONSE_SHORT = 0x01 , SDIO_RESPONSE_LONG = 0x03 }
sdio response type More...
enum | sdio_wait_type { SDIO_WAIT_FOR_NO = 0x00 , SDIO_WAIT_FOR_INT = 0x01 , SDIO_WAIT_FOR_PEND = 0x02 }
sdio wait type More...
enum | sdio_rsp_index_type { SDIO_RSP1_INDEX = 0x00 , SDIO_RSP2_INDEX = 0x01 , SDIO_RSP3_INDEX = 0x02 , SDIO_RSP4_INDEX = 0x03 }
sdio response register index More...
enum sdio_block_size_type {
SDIO_DATA_BLOCK_SIZE_1B = 0x00 , SDIO_DATA_BLOCK_SIZE_2B = 0x01 , SDIO_DATA_BLOCK_SIZE_4B = 0x02 , SDIO_DATA_BLOCK_SIZE_8B = 0x03 ,
SDIO_DATA_BLOCK_SIZE_16B = 0x04 , SDIO_DATA_BLOCK_SIZE_32B = 0x05 , SDIO_DATA_BLOCK_SIZE_64B = 0x06 , SDIO_DATA_BLOCK_SIZE_128B = 0x07 ,
SDIO_DATA_BLOCK_SIZE_256B = 0x08 , SDIO_DATA_BLOCK_SIZE_512B = 0x09 , SDIO_DATA_BLOCK_SIZE_1024B = 0x0A , SDIO_DATA_BLOCK_SIZE_2048B = 0x0B ,
SDIO_DATA_BLOCK_SIZE_4096B = 0x0C , SDIO_DATA_BLOCK_SIZE_8192B = 0x0D , SDIO_DATA_BLOCK_SIZE_16384B = 0x0E
}
sdio data block size More...
enum | sdio_transfer_mode_type { SDIO_DATA_BLOCK_TRANSFER = 0x00 , SDIO_DATA_STREAM_TRANSFER = 0x01 }
sdio data transfer mode More...
enum | sdio_transfer_direction_type { SDIO_DATA_TRANSFER_TO_CARD = 0x00 , SDIO_DATA_TRANSFER_TO_CONTROLLER = 0x01 }
sdio data transfer direction More...
enum | sdio_read_wait_mode_type { SDIO_READ_WAIT_CONTROLLED_BY_D2 = 0x00 , SDIO_READ_WAIT_CONTROLLED_BY_CK = 0x01 }
sdio read wait mode More...

Functions

void | sdio_reset (sdio_type *sdio_x)
reset the sdio register More...
void | sdio_power_set (sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller More...
sdio_power_state_type | sdio_power_status_get (sdio_type *sdio_x)
get power status. More...
void | sdio_clock_config (sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock More...
void | sdio_bus_width_config (sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width More...
void | sdio_clock_bypass (sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss More...
void | sdio_power_saving_mode_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle. More...
void | sdio_flow_control_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control. More...
void | sdio_clock_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output. More...
void | sdio_dma_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable dma. More...
void | sdio_interrupt_enable (sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt. More...
flag_status | sdio_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio flag. More...
flag_status | sdio_interrupt_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio interrupt flag. More...
void | sdio_flag_clear (sdio_type *sdio_x, uint32_t flag)
clear sdio flag. More...
void | sdio_command_config (sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command. More...
void | sdio_command_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM). More...
uint8_t | sdio_command_response_get (sdio_type *sdio_x)
get command index of last command for which response received. More...
uint32_t | sdio_response_get (sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command. More...
void | sdio_data_config (sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data. More...
void | sdio_data_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM). More...
uint32_t | sdio_data_counter_get (sdio_type *sdio_x)
get the number of remaining data bytes to be transferred. More...
uint32_t | sdio_data_read (sdio_type *sdio_x)
read a word data from sdio fifo. More...
uint32_t | sdio_buffer_counter_get (sdio_type *sdio_x)
get the number of words left to be written to or read from fifo.. More...
void | sdio_data_write (sdio_type *sdio_x, uint32_t data)
write one word data to fifo. More...
void | sdio_read_wait_mode_set (sdio_type *sdio_x, sdio_read_wait_mode_type mode)
set the read wait mode. More...
void | sdio_read_wait_start (sdio_type *sdio_x, confirm_state new_state)
enable or disable to start sd i/o read wait operation. More...
void | sdio_read_wait_stop (sdio_type *sdio_x, confirm_state new_state)
enable or disable to stop sd i/o read wait operation. More...
void | sdio_io_function_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable the sd i/o function. More...
void | sdio_io_suspend_command_set (sdio_type *sdio_x, confirm_state new_state)
enable or disable sd i/o suspend command sending. More...

Detailed Description

at32f403 sdio header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_sdio.h.


AT32F403 Firmwary Library: at32f403_spi.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_spi.h File Reference

at32f403 spi header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | spi_init_type
spi init type More...
struct | i2s_init_type
i2s init type More...
struct | spi_type
type define spi register all More...

Macros

#define | SPI_I2S_RDBF_FLAG 0x0001
#define | SPI_I2S_TDBE_FLAG 0x0002
#define | I2S_ACS_FLAG 0x0004
#define | I2S_TUERR_FLAG 0x0008
#define | SPI_CCERR_FLAG 0x0010
#define | SPI_MMERR_FLAG 0x0020
#define | SPI_I2S_ROERR_FLAG 0x0040
#define | SPI_I2S_BF_FLAG 0x0080
#define | SPI_I2S_ERROR_INT 0x0020
#define | SPI_I2S_RDBF_INT 0x0040
#define | SPI_I2S_TDBE_INT 0x0080
#define | SPI1 ((spi_type *) SPI1_BASE)
#define | SPI2 ((spi_type *) SPI2_BASE)
#define | SPI3 ((spi_type *) SPI3_BASE)

Enumerations

enum | spi_frame_bit_num_type { SPI_FRAME_8BIT = 0x00 , SPI_FRAME_16BIT = 0x01 }
spi frame bit num type More...
enum | spi_master_slave_mode_type { SPI_MODE_SLAVE = 0x00 , SPI_MODE_MASTER = 0x01 }
spi master/slave mode type More...
enum | spi_clock_polarity_type { SPI_CLOCK_POLARITY_LOW = 0x00 , SPI_CLOCK_POLARITY_HIGH = 0x01 }
spi clock polarity (clkpol) type More...
enum | spi_clock_phase_type { SPI_CLOCK_PHASE_1EDGE = 0x00 , SPI_CLOCK_PHASE_2EDGE = 0x01 }
spi clock phase (clkpha) type More...
enum | spi_cs_mode_type { SPI_CS_HARDWARE_MODE = 0x00 , SPI_CS_SOFTWARE_MODE = 0x01 }
spi cs mode type More...
enum spi_mclk_freq_div_type {
SPI_MCLK_DIV_2 = 0x00 , SPI_MCLK_DIV_4 = 0x01 , SPI_MCLK_DIV_8 = 0x02 , SPI_MCLK_DIV_16 = 0x03 ,
SPI_MCLK_DIV_32 = 0x04 , SPI_MCLK_DIV_64 = 0x05 , SPI_MCLK_DIV_128 = 0x06 , SPI_MCLK_DIV_256 = 0x07 ,
SPI_MCLK_DIV_512 = 0x08 , SPI_MCLK_DIV_1024 = 0x09
}
spi master clock frequency division type More...
enum | spi_first_bit_type { SPI_FIRST_BIT_MSB = 0x00 , SPI_FIRST_BIT_LSB = 0x01 }
spi transmit first bit (lsb/msb) type More...
enum | spi_transmission_mode_type { SPI_TRANSMIT_FULL_DUPLEX = 0x00 , SPI_TRANSMIT_SIMPLEX_RX = 0x01 , SPI_TRANSMIT_HALF_DUPLEX_RX = 0x02 , SPI_TRANSMIT_HALF_DUPLEX_TX = 0x03 }
spi transmission mode type More...
enum | spi_crc_direction_type { SPI_CRC_RX = 0x0014 , SPI_CRC_TX = 0x0018 }
spi crc direction type More...
enum | spi_half_duplex_direction_type { SPI_HALF_DUPLEX_DIRECTION_RX = 0x00 , SPI_HALF_DUPLEX_DIRECTION_TX = 0x01 }
spi single line bidirectional direction type More...
enum | spi_software_cs_level_type { SPI_SWCS_INTERNAL_LEVEL_LOW = 0x00 , SPI_SWCS_INTERNAL_LEVEL_HIGHT = 0x01 }
spi software cs internal level type More...
enum i2s_audio_protocol_type {
I2S_AUDIO_PROTOCOL_PHILLIPS = 0x00 , I2S_AUDIO_PROTOCOL_MSB = 0x01 , I2S_AUDIO_PROTOCOL_LSB = 0x02 , I2S_AUDIO_PROTOCOL_PCM_SHORT = 0x03 ,
I2S_AUDIO_PROTOCOL_PCM_LONG = 0x04
}
i2s audio protocol type More...
enum i2s_audio_sampling_freq_type {
I2S_AUDIO_FREQUENCY_DEFAULT = 2 , I2S_AUDIO_FREQUENCY_8K = 8000 , I2S_AUDIO_FREQUENCY_11_025K = 11025 , I2S_AUDIO_FREQUENCY_16K = 16000 ,
I2S_AUDIO_FREQUENCY_22_05K = 22050 , I2S_AUDIO_FREQUENCY_32K = 32000 , I2S_AUDIO_FREQUENCY_44_1K = 44100 , I2S_AUDIO_FREQUENCY_48K = 48000 ,
I2S_AUDIO_FREQUENCY_96K = 96000 , I2S_AUDIO_FREQUENCY_192K = 192000
}
i2s audio frequency type More...
enum | i2s_data_channel_format_type { I2S_DATA_16BIT_CHANNEL_16BIT = 0x01 , I2S_DATA_16BIT_CHANNEL_32BIT = 0x02 , I2S_DATA_24BIT_CHANNEL_32BIT = 0x03 , I2S_DATA_32BIT_CHANNEL_32BIT = 0x04 }
i2s data bit num and channel bit num type More...
enum | i2s_operation_mode_type { I2S_MODE_SLAVE_TX = 0x00 , I2S_MODE_SLAVE_RX = 0x01 , I2S_MODE_MASTER_TX = 0x02 , I2S_MODE_MASTER_RX = 0x03 }
i2s operation mode type More...
enum | i2s_clock_polarity_type { I2S_CLOCK_POLARITY_LOW = 0x00 , I2S_CLOCK_POLARITY_HIGH = 0x01 }
i2s clock polarity type More...

Functions

void | spi_i2s_reset (spi_type *spi_x)
spi reset by crm reset register More...
void | spi_default_para_init (spi_init_type *spi_init_struct)
spi init config with its default value. More...
void | spi_init (spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value. More...
void | spi_crc_next_transmit (spi_type *spi_x)
spi next transmit crc for the spi peripheral. More...
void | spi_crc_polynomial_set (spi_type *spi_x, uint16_t crc_poly)
set the crc polynomial value for the spi peripheral. More...
uint16_t | spi_crc_polynomial_get (spi_type *spi_x)
return the crc polynomial register value for the spi peripheral. More...
void | spi_crc_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware crc calculation for the spi peripheral. More...
uint16_t | spi_crc_value_get (spi_type *spi_x, spi_crc_direction_type crc_direction)
return the transmit or the receive crc value for the spi peripheral. More...
void | spi_hardware_cs_output_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware cs output for the spi peripheral. More...
void | spi_software_cs_internal_level_set (spi_type *spi_x, spi_software_cs_level_type level)
set the software cs internal level for the spi peripheral. More...
void | spi_frame_bit_num_set (spi_type *spi_x, spi_frame_bit_num_type bit_num)
set the data frame bit num for the spi peripheral. More...
void | spi_half_duplex_direction_set (spi_type *spi_x, spi_half_duplex_direction_type direction)
set the data transmission direction in single line bidirectiona half duplex mode of the spi peripheral. More...
void | spi_enable (spi_type *spi_x, confirm_state new_state)
enable or disable spi. More...
void | i2s_default_para_init (i2s_init_type *i2s_init_struct)
i2s init config with its default value. More...
void | i2s_init (spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value. More...
void | i2s_enable (spi_type *spi_x, confirm_state new_state)
enable or disable i2s. More...
void | spi_i2s_interrupt_enable (spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts. More...
void | spi_i2s_dma_transmitter_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode. More...
void | spi_i2s_dma_receiver_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode. More...
void | spi_i2s_data_transmit (spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit More...
uint16_t | spi_i2s_data_receive (spi_type *spi_x)
spi/i2s data receive More...
flag_status | spi_i2s_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral. More...
flag_status | spi_i2s_interrupt_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get interrupt flag of the specified spi/i2s peripheral. More...
void | spi_i2s_flag_clear (spi_type *spi_x, uint32_t spi_i2s_flag)
clear flag of the specified spi/i2s peripheral. More...

Detailed Description

at32f403 spi header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_spi.h.


AT32F403 Firmwary Library: at32f403_tmr.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_tmr.h File Reference

at32f403 tmr header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | tmr_output_config_type
tmr output config type More...
struct | tmr_input_config_type
tmr input capture config type More...
struct | tmr_brkdt_config_type
tmr brkdt config type More...
struct | tmr_type
type define tmr register all More...

Macros

#define | TMR_OVF_FLAG ((uint32_t)0x000001)
#define | TMR_C1_FLAG ((uint32_t)0x000002)
#define | TMR_C2_FLAG ((uint32_t)0x000004)
#define | TMR_C3_FLAG ((uint32_t)0x000008)
#define | TMR_C4_FLAG ((uint32_t)0x000010)
#define | TMR_HALL_FLAG ((uint32_t)0x000020)
#define | TMR_TRIGGER_FLAG ((uint32_t)0x000040)
#define | TMR_BRK_FLAG ((uint32_t)0x000080)
#define | TMR_C1_RECAPTURE_FLAG ((uint32_t)0x000200)
#define | TMR_C2_RECAPTURE_FLAG ((uint32_t)0x000400)
#define | TMR_C3_RECAPTURE_FLAG ((uint32_t)0x000800)
#define | TMR_C4_RECAPTURE_FLAG ((uint32_t)0x001000)
#define | TMR_OVF_INT ((uint32_t)0x000001)
#define | TMR_C1_INT ((uint32_t)0x000002)
#define | TMR_C2_INT ((uint32_t)0x000004)
#define | TMR_C3_INT ((uint32_t)0x000008)
#define | TMR_C4_INT ((uint32_t)0x000010)
#define | TMR_HALL_INT ((uint32_t)0x000020)
#define | TMR_TRIGGER_INT ((uint32_t)0x000040)
#define | TMR_BRK_INT ((uint32_t)0x000080)
#define | TMR1 ((tmr_type *) TMR1_BASE)
#define | TMR2 ((tmr_type *) TMR2_BASE)
#define | TMR3 ((tmr_type *) TMR3_BASE)
#define | TMR4 ((tmr_type *) TMR4_BASE)
#define | TMR5 ((tmr_type *) TMR5_BASE)
#define | TMR6 ((tmr_type *) TMR6_BASE)
#define | TMR7 ((tmr_type *) TMR7_BASE)
#define | TMR8 ((tmr_type *) TMR8_BASE)
#define | TMR9 ((tmr_type *) TMR9_BASE)
#define | TMR10 ((tmr_type *) TMR10_BASE)
#define | TMR11 ((tmr_type *) TMR11_BASE)
#define | TMR12 ((tmr_type *) TMR12_BASE)
#define | TMR13 ((tmr_type *) TMR13_BASE)
#define | TMR14 ((tmr_type *) TMR14_BASE)
#define | TMR15 ((tmr_type *) TMR15_BASE)

Enumerations

enum | tmr_clock_division_type { TMR_CLOCK_DIV1 = 0x00 , TMR_CLOCK_DIV2 = 0x01 , TMR_CLOCK_DIV4 = 0x02 }
tmr clock division type More...
enum tmr_count_mode_type {
TMR_COUNT_UP = 0x00 , TMR_COUNT_DOWN = 0x01 , TMR_COUNT_TWO_WAY_1 = 0x02 , TMR_COUNT_TWO_WAY_2 = 0x04 ,
TMR_COUNT_TWO_WAY_3 = 0x06
}
tmr counter mode type More...
enum tmr_primary_select_type {
TMR_PRIMARY_SEL_RESET = 0x00 , TMR_PRIMARY_SEL_ENABLE = 0x01 , TMR_PRIMARY_SEL_OVERFLOW = 0x02 , TMR_PRIMARY_SEL_COMPARE = 0x03 ,
TMR_PRIMARY_SEL_C1ORAW = 0x04 , TMR_PRIMARY_SEL_C2ORAW = 0x05 , TMR_PRIMARY_SEL_C3ORAW = 0x06 , TMR_PRIMARY_SEL_C4ORAW = 0x07
}
tmr primary mode select type More...
enum sub_tmr_input_sel_type {
TMR_SUB_INPUT_SEL_IS0 = 0x00 , TMR_SUB_INPUT_SEL_IS1 = 0x01 , TMR_SUB_INPUT_SEL_IS2 = 0x02 , TMR_SUB_INPUT_SEL_IS3 = 0x03 ,
TMR_SUB_INPUT_SEL_C1INC = 0x04 , TMR_SUB_INPUT_SEL_C1DF1 = 0x05 , TMR_SUB_INPUT_SEL_C2DF2 = 0x06 , TMR_SUB_INPUT_SEL_EXTIN = 0x07
}
tmr subordinate mode input select type More...
enum tmr_sub_mode_select_type {
TMR_SUB_MODE_DIABLE = 0x00 , TMR_SUB_ENCODER_MODE_A = 0x01 , TMR_SUB_ENCODER_MODE_B = 0x02 , TMR_SUB_ENCODER_MODE_C = 0x03 ,
TMR_SUB_RESET_MODE = 0x04 , TMR_SUB_HANG_MODE = 0x05 , TMR_SUB_TRIGGER_MODE = 0x06 , TMR_SUB_EXTERNAL_CLOCK_MODE_A = 0x07
}
tmr subordinate mode select type More...
enum | tmr_encoder_mode_type { TMR_ENCODER_MODE_A = TMR_SUB_ENCODER_MODE_A , TMR_ENCODER_MODE_B = TMR_SUB_ENCODER_MODE_B , TMR_ENCODER_MODE_C = TMR_SUB_ENCODER_MODE_C }
tmr encoder mode type More...
enum tmr_output_control_mode_type {
TMR_OUTPUT_CONTROL_OFF = 0x00 , TMR_OUTPUT_CONTROL_HIGH = 0x01 , TMR_OUTPUT_CONTROL_LOW = 0x02 , TMR_OUTPUT_CONTROL_SWITCH = 0x03 ,
TMR_OUTPUT_CONTROL_FORCE_LOW = 0x04 , TMR_OUTPUT_CONTROL_FORCE_HIGH = 0x05 , TMR_OUTPUT_CONTROL_PWM_MODE_A = 0x06 , TMR_OUTPUT_CONTROL_PWM_MODE_B = 0x07
}
tmr output control mode type More...
enum | tmr_force_output_type { TMR_FORCE_OUTPUT_HIGH = TMR_OUTPUT_CONTROL_FORCE_HIGH , TMR_FORCE_OUTPUT_LOW = TMR_OUTPUT_CONTROL_FORCE_LOW }
tmr force output type More...
enum | tmr_output_polarity_type { TMR_OUTPUT_ACTIVE_HIGH = 0x00 , TMR_OUTPUT_ACTIVE_LOW = 0x01 }
tmr output channel polarity type More...
enum | tmr_input_polarity_type { TMR_INPUT_RISING_EDGE = 0x00 , TMR_INPUT_FALLING_EDGE = 0x01 , TMR_INPUT_BOTH_EDGE = 0x03 }
tmr input channel polarity type More...
enum tmr_channel_select_type {
TMR_SELECT_CHANNEL_1 = 0x00 , TMR_SELECT_CHANNEL_1C = 0x01 , TMR_SELECT_CHANNEL_2 = 0x02 , TMR_SELECT_CHANNEL_2C = 0x03 ,
TMR_SELECT_CHANNEL_3 = 0x04 , TMR_SELECT_CHANNEL_3C = 0x05 , TMR_SELECT_CHANNEL_4 = 0x06
}
tmr channel select type More...
enum | tmr_channel1_input_connected_type { TMR_CHANEL1_CONNECTED_C1IRAW = 0x00 , TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR = 0x01 }
tmr channel1 input connected type More...
enum | tmr_input_direction_mapped_type { TMR_CC_CHANNEL_MAPPED_DIRECT = 0x01 , TMR_CC_CHANNEL_MAPPED_INDIRECT = 0x02 , TMR_CC_CHANNEL_MAPPED_STI = 0x03 }
tmr input channel mapped type channel direction More...
enum | tmr_channel_input_divider_type { TMR_CHANNEL_INPUT_DIV_1 = 0x00 , TMR_CHANNEL_INPUT_DIV_2 = 0x01 , TMR_CHANNEL_INPUT_DIV_4 = 0x02 , TMR_CHANNEL_INPUT_DIV_8 = 0x03 }
tmr input divider type More...
enum | tmr_dma_request_source_type { TMR_DMA_REQUEST_BY_CHANNEL = 0x00 , TMR_DMA_REQUEST_BY_OVERFLOW = 0x01 }
tmr dma request source select type More...
enum tmr_dma_request_type {
TMR_OVERFLOW_DMA_REQUEST = 0x00000100 , TMR_C1_DMA_REQUEST = 0x00000200 , TMR_C2_DMA_REQUEST = 0x00000400 , TMR_C3_DMA_REQUEST = 0x00000800 ,
TMR_C4_DMA_REQUEST = 0x00001000 , TMR_HALL_DMA_REQUEST = 0x00002000 , TMR_TRIGGER_DMA_REQUEST = 0x00004000
}
tmr dma request type More...
enum tmr_event_trigger_type {
TMR_OVERFLOW_SWTRIG = 0x00000001 , TMR_C1_SWTRIG = 0x00000002 , TMR_C2_SWTRIG = 0x00000004 , TMR_C3_SWTRIG = 0x00000008 ,
TMR_C4_SWTRIG = 0x00000010 , TMR_HALL_SWTRIG = 0x00000020 , TMR_TRIGGER_SWTRIG = 0x00000040 , TMR_BRK_SWTRIG = 0x00000080
}
tmr event triggered by software type More...
enum | tmr_polarity_active_type { TMR_POLARITY_ACTIVE_HIGH = 0x00 , TMR_POLARITY_ACTIVE_LOW = 0x01 , TMR_POLARITY_ACTIVE_BOTH = 0x02 }
tmr polarity active type More...
enum | tmr_external_signal_divider_type { TMR_ES_FREQUENCY_DIV_1 = 0x00 , TMR_ES_FREQUENCY_DIV_2 = 0x01 , TMR_ES_FREQUENCY_DIV_4 = 0x02 , TMR_ES_FREQUENCY_DIV_8 = 0x03 }
tmr external signal divider type More...
enum | tmr_external_signal_polarity_type { TMR_ES_POLARITY_NON_INVERTED = 0x00 , TMR_ES_POLARITY_INVERTED = 0x01 }
tmr external signal polarity type More...
enum tmr_dma_transfer_length_type {
TMR_DMA_TRANSFER_1BYTE = 0x00 , TMR_DMA_TRANSFER_2BYTES = 0x01 , TMR_DMA_TRANSFER_3BYTES = 0x02 , TMR_DMA_TRANSFER_4BYTES = 0x03 ,
TMR_DMA_TRANSFER_5BYTES = 0x04 , TMR_DMA_TRANSFER_6BYTES = 0x05 , TMR_DMA_TRANSFER_7BYTES = 0x06 , TMR_DMA_TRANSFER_8BYTES = 0x07 ,
TMR_DMA_TRANSFER_9BYTES = 0x08 , TMR_DMA_TRANSFER_10BYTES = 0x09 , TMR_DMA_TRANSFER_11BYTES = 0x0A , TMR_DMA_TRANSFER_12BYTES = 0x0B ,
TMR_DMA_TRANSFER_13BYTES = 0x0C , TMR_DMA_TRANSFER_14BYTES = 0x0D , TMR_DMA_TRANSFER_15BYTES = 0x0E , TMR_DMA_TRANSFER_16BYTES = 0x0F ,
TMR_DMA_TRANSFER_17BYTES = 0x10 , TMR_DMA_TRANSFER_18BYTES = 0x11
}
tmr dma transfer length type More...
enum tmr_dma_address_type {
TMR_CTRL1_ADDRESS = 0x0000 , TMR_CTRL2_ADDRESS = 0x0001 , TMR_STCTRL_ADDRESS = 0x0002 , TMR_IDEN_ADDRESS = 0x0003 ,
TMR_ISTS_ADDRESS = 0x0004 , TMR_SWEVT_ADDRESS = 0x0005 , TMR_CM1_ADDRESS = 0x0006 , TMR_CM2_ADDRESS = 0x0007 ,
TMR_CCTRL_ADDRESS = 0x0008 , TMR_CVAL_ADDRESS = 0x0009 , TMR_DIV_ADDRESS = 0x000A , TMR_PR_ADDRESS = 0x000B ,
TMR_RPR_ADDRESS = 0x000C , TMR_C1DT_ADDRESS = 0x000D , TMR_C2DT_ADDRESS = 0x000E , TMR_C3DT_ADDRESS = 0x000F ,
TMR_C4DT_ADDRESS = 0x0010 , TMR_BRK_ADDRESS = 0x0011 , TMR_DMACTRL_ADDRESS = 0x0012
}
tmr dma base address type More...
enum | tmr_brk_polarity_type { TMR_BRK_INPUT_ACTIVE_LOW = 0x00 , TMR_BRK_INPUT_ACTIVE_HIGH = 0x01 }
tmr brk polarity type More...
enum | tmr_wp_level_type { TMR_WP_OFF = 0x00 , TMR_WP_LEVEL_3 = 0x01 , TMR_WP_LEVEL_2 = 0x02 , TMR_WP_LEVEL_1 = 0x03 }
tmr write protect level type More...

Functions

void | tmr_reset (tmr_type *tmr_x)
tmr reset by crm reset register More...
void | tmr_counter_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter More...
void | tmr_output_default_para_init (tmr_output_config_type *tmr_output_struct)
init tmr output default para More...
void | tmr_input_default_para_init (tmr_input_config_type *tmr_input_struct)
init tmr input default para More...
void | tmr_brkdt_default_para_init (tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para More...
void | tmr_base_init (tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base More...
void | tmr_clock_source_div_set (tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division More...
void | tmr_cnt_dir_set (tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction More...
void | tmr_repetition_counter_set (tmr_type *tmr_x, uint8_t tmr_rpr_value)
set the repetition counter register(rpr) value More...
void | tmr_counter_value_set (tmr_type *tmr_x, uint32_t tmr_cnt_value)
set tmr counter value More...
uint32_t | tmr_counter_value_get (tmr_type *tmr_x)
get tmr counter value More...
void | tmr_div_value_set (tmr_type *tmr_x, uint32_t tmr_div_value)
set tmr div value More...
uint32_t | tmr_div_value_get (tmr_type *tmr_x)
get tmr div value More...
void | tmr_output_channel_config (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel More...
void | tmr_output_channel_mode_select (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_control_mode_type oc_mode)
select tmr output channel mode More...
void | tmr_period_value_set (tmr_type *tmr_x, uint32_t tmr_pr_value)
set tmr period value More...
uint32_t | tmr_period_value_get (tmr_type *tmr_x)
get tmr period value More...
void | tmr_channel_value_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value More...
uint32_t | tmr_channel_value_get (tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value More...
void | tmr_period_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer More...
void | tmr_output_channel_buffer_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer More...
void | tmr_output_channel_immediately_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel immediately More...
void | tmr_output_channel_switch_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel switch More...
void | tmr_one_cycle_mode_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr one cycle mode More...
void | tmr_32_bit_function_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode) More...
void | tmr_overflow_request_source_set (tmr_type *tmr_x, confirm_state new_state)
select tmr the overflow event sources More...
void | tmr_overflow_event_disable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr overflow event generation More...
void | tmr_input_channel_init (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel More...
void | tmr_channel_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable More...
void | tmr_input_channel_filter_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint16_t filter_value)
set tmr input channel filter More...
void | tmr_pwm_input_config (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input More...
void | tmr_channel1_input_select (tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
select tmr channel1 input More...
void | tmr_input_channel_divider_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_channel_input_divider_type divider_factor)
set tmr input channel divider More...
void | tmr_primary_mode_select (tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode More...
void | tmr_sub_mode_select (tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode More...
void | tmr_channel_dma_select (tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select)
select tmr channel dma More...
void | tmr_hall_select (tmr_type *tmr_x, confirm_state new_state)
select tmr hall More...
void | tmr_channel_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr channel buffer More...
void | tmr_trigger_input_select (tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger More...
void | tmr_sub_sync_mode_set (tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode More...
void | tmr_dma_request_enable (tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request More...
void | tmr_interrupt_enable (tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt More...
flag_status | tmr_interrupt_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr interrupt flag More...
flag_status | tmr_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag More...
void | tmr_flag_clear (tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag More...
void | tmr_event_sw_trigger (tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event More...
void | tmr_output_enable (tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable More...
void | tmr_internal_clock_set (tmr_type *tmr_x)
set tmr select internal clock More...
void | tmr_output_channel_polarity_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_polarity_active_type oc_polarity)
set tmr output channel polarity More...
void | tmr_external_clock_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock More...
void | tmr_external_clock_mode1_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode1 More...
void | tmr_external_clock_mode2_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode2 More...
void | tmr_encoder_mode_config (tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type ic1_polarity, tmr_input_polarity_type ic2_polarity)
config tmr encoder mode More...
void | tmr_force_output_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_force_output_type force_output)
set tmr force output More...
void | tmr_dma_control_config (tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, tmr_dma_address_type dma_base_address)
config tmr dma control More...
void | tmr_brkdt_config (tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time More...

Detailed Description

at32f403 tmr header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_tmr.h.


AT32F403 Firmwary Library: at32f403_usart.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_usart.h File Reference

at32f403 usart header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct usart_type
type define usart register all More...

Macros

#define | USART_PERR_FLAG ((uint32_t)0x00000001)
#define | USART_FERR_FLAG ((uint32_t)0x00000002)
#define | USART_NERR_FLAG ((uint32_t)0x00000004)
#define | USART_ROERR_FLAG ((uint32_t)0x00000008)
#define | USART_IDLEF_FLAG ((uint32_t)0x00000010)
#define | USART_RDBF_FLAG ((uint32_t)0x00000020)
#define | USART_TDC_FLAG ((uint32_t)0x00000040)
#define | USART_TDBE_FLAG ((uint32_t)0x00000080)
#define | USART_BFF_FLAG ((uint32_t)0x00000100)
#define | USART_CTSCF_FLAG ((uint32_t)0x00000200)
#define | USART_IDLE_INT MAKE_VALUE(0x0C,0x04)
#define | USART_RDBF_INT MAKE_VALUE(0x0C,0x05)
#define | USART_TDC_INT MAKE_VALUE(0x0C,0x06)
#define | USART_TDBE_INT MAKE_VALUE(0x0C,0x07)
#define | USART_PERR_INT MAKE_VALUE(0x0C,0x08)
#define | USART_BF_INT MAKE_VALUE(0x10,0x06)
#define | USART_ERR_INT MAKE_VALUE(0x14,0x00)
#define | USART_CTSCF_INT MAKE_VALUE(0x14,0x0A)
#define | USART1 ((usart_type *) USART1_BASE)
#define | USART2 ((usart_type *) USART2_BASE)
#define | USART3 ((usart_type *) USART3_BASE)

Enumerations

enum | usart_parity_selection_type { USART_PARITY_NONE = 0x00 , USART_PARITY_EVEN = 0x01 , USART_PARITY_ODD = 0x02 }
usart parity selection type More...
enum | usart_wakeup_mode_type { USART_WAKEUP_BY_IDLE_FRAME = 0x00 , USART_WAKEUP_BY_MATCHING_ID = 0x01 }
usart wakeup mode type More...
enum | usart_data_bit_num_type { USART_DATA_8BITS = 0x00 , USART_DATA_9BITS = 0x01 }
usart data bit num type More...
enum | usart_break_bit_num_type { USART_BREAK_10BITS = 0x00 , USART_BREAK_11BITS = 0x01 }
usart break frame bit num type More...
enum | usart_clock_phase_type { USART_CLOCK_PHASE_1EDGE = 0x00 , USART_CLOCK_PHASE_2EDGE = 0x01 }
usart phase of the clock type More...
enum | usart_clock_polarity_type { USART_CLOCK_POLARITY_LOW = 0x00 , USART_CLOCK_POLARITY_HIGH = 0x01 }
usart polarity of the clock type More...
enum | usart_lbcp_type { USART_CLOCK_LAST_BIT_NONE = 0x00 , USART_CLOCK_LAST_BIT_OUTPUT = 0x01 }
usart last bit clock pulse type More...
enum | usart_stop_bit_num_type { USART_STOP_1_BIT = 0x00 , USART_STOP_0_5_BIT = 0x01 , USART_STOP_2_BIT = 0x02 , USART_STOP_1_5_BIT = 0x03 }
usart stop bit num type More...
enum | usart_hardware_flow_control_type { USART_HARDWARE_FLOW_NONE = 0x00 , USART_HARDWARE_FLOW_RTS = 0x01 , USART_HARDWARE_FLOW_CTS = 0x02 , USART_HARDWARE_FLOW_RTS_CTS = 0x03 }
usart hardware flow control type More...

Functions

void | usart_reset (usart_type *usart_x)
deinitialize the usart peripheral registers to their default reset values. More...
void | usart_init (usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters. More...
void | usart_parity_selection_config (usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config. More...
void | usart_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral. More...
void | usart_transmitter_enable (usart_type *usart_x, confirm_state new_state)
usart transmitter enable. More...
void | usart_receiver_enable (usart_type *usart_x, confirm_state new_state)
usart receiver enable. More...
void | usart_clock_config (usart_type *usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
usart clock config. More...
void | usart_clock_enable (usart_type *usart_x, confirm_state new_state)
usart enable the ck pin. More...
void | usart_interrupt_enable (usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts. More...
void | usart_dma_transmitter_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface. More...
void | usart_dma_receiver_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface. More...
void | usart_wakeup_id_set (usart_type *usart_x, uint8_t usart_id)
set the wakeup id of the usart. More...
void | usart_wakeup_mode_set (usart_type *usart_x, usart_wakeup_mode_type wakeup_mode)
select the usart wakeup method in multi-processor communication. More...
void | usart_receiver_mute_enable (usart_type *usart_x, confirm_state new_state)
config the usart in mute mode in multi-processor communication. More...
void | usart_break_bit_num_set (usart_type *usart_x, usart_break_bit_num_type break_bit)
set the usart break frame bit num. More...
void | usart_lin_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart lin mode. More...
void | usart_data_transmit (usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral. More...
uint16_t | usart_data_receive (usart_type *usart_x)
return the most recent received data by the usart peripheral. More...
void | usart_break_send (usart_type *usart_x)
transmit break characters. More...
void | usart_smartcard_guard_time_set (usart_type *usart_x, uint8_t guard_time_val)
config the specified usart smartcard guard time. More...
void | usart_irda_smartcard_division_set (usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division. More...
void | usart_smartcard_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart smart card mode. More...
void | usart_smartcard_nack_set (usart_type *usart_x, confirm_state new_state)
enable or disable nack transmission in smartcard mode. More...
void | usart_single_line_halfduplex_select (usart_type *usart_x, confirm_state new_state)
enable or disable the usart single line bidirectional half-duplex communication. More...
void | usart_irda_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's irda interface. More...
void | usart_irda_low_power_enable (usart_type *usart_x, confirm_state new_state)
configure the usart's irda low power. More...
void | usart_hardware_flow_control_set (usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control. More...
flag_status | usart_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not. More...
flag_status | usart_interrupt_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart interrupt flag is set or not. More...
void | usart_flag_clear (usart_type *usart_x, uint32_t flag)
clear the usart's pending flags. More...

Detailed Description

at32f403 usart header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_usart.h.


AT32F403 Firmwary Library: at32f403_usb.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
at32f403_usb.h File Reference

at32f403 usb header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | usb_ept_info
usb endpoint infomation structure definition More...
struct | usbd_type
type define usb register all More...

Macros

#define | USB_LSOF_INT ((uint32_t)0x00000100)
#define | USB_SOF_INT ((uint32_t)0x00000200)
#define | USB_RST_INT ((uint32_t)0x00000400)
#define | USB_SP_INT ((uint32_t)0x00000800)
#define | USB_WK_INT ((uint32_t)0x00001000)
#define | USB_BE_INT ((uint32_t)0x00002000)
#define | USB_UCFOR_INT ((uint32_t)0x00004000)
#define | USB_TC_INT ((uint32_t)0x00008000)
#define | USB_EPT_NUM_FLAG ((uint32_t)0x0000000F)
#define | USB_INOUT_FLAG ((uint32_t)0x00000010)
#define | USB_LSOF_FLAG ((uint32_t)0x00000100)
#define | USB_SOF_FLAG ((uint32_t)0x00000200)
#define | USB_RST_FLAG ((uint32_t)0x00000400)
#define | USB_SP_FLAG ((uint32_t)0x00000800)
#define | USB_WK_FLAG ((uint32_t)0x00001000)
#define | USB_BE_FLAG ((uint32_t)0x00002000)
#define | USB_UCFOR_FLAG ((uint32_t)0x00004000)
#define | USB_TC_FLAG ((uint32_t)0x00008000)
#define | USB_EPTADDR ((uint32_t)0x0000000F)
#define | USB_TXSTS ((uint32_t)0x00000030)
#define | USB_TXDTS ((uint32_t)0x00000040)
#define | USB_TXTC ((uint32_t)0x00000080)
#define | USB_EXF ((uint32_t)0x00000100)
#define | USB_TRANS_TYPE ((uint32_t)0x00000600)
#define | USB_SETUPTC ((uint32_t)0x00000800)
#define | USB_RXSTS ((uint32_t)0x00003000)
#define | USB_RXDTS ((uint32_t)0x00004000)
#define | USB_RXTC ((uint32_t)0x00008000)
#define | USB_EPT_BIT_MASK (uint32_t)(USB_TXTC | USB_SETUPTC | USB_EPTADDR | USB_EXF | USB_RXTC | USB_TRANS_TYPE)
#define | USB_TX_MASK (USB_TXSTS | USB_EPT_BIT_MASK)
#define | USB_RX_MASK (USB_RXSTS | USB_EPT_BIT_MASK)
#define | USB_TX_DISABLE ((uint32_t)0x00000000)
#define | USB_TX_STALL ((uint32_t)0x00000010)
#define | USB_TX_NAK ((uint32_t)0x00000020)
#define | USB_TX_VALID ((uint32_t)0x00000030)
#define | USB_TXDTS0 ((uint32_t)0x00000010)
#define | USB_TXDTS1 ((uint32_t)0x00000020)
#define | USB_RX_DISABLE ((uint32_t)0x00000000)
#define | USB_RX_STALL ((uint32_t)0x00001000)
#define | USB_RX_NAK ((uint32_t)0x00002000)
#define | USB_RX_VALID ((uint32_t)0x00003000)
#define | USB_RXDTS0 ((uint32_t)0x00001000)
#define | USB_RXDTS1 ((uint32_t)0x00002000)
#define | USB_EPT_CONTROL ((uint32_t)0x00000200)
#define | USB_EPT_BULK ((uint32_t)0x00000000)
#define | USB_EPT_INT ((uint32_t)0x00000600)
#define | USB_EPT_ISO ((uint32_t)0x00000400)
#define | USB_BUFFER_TABLE_ADDRESS 0x0000
#define | USB_PACKET_BUFFER_ADDRESS 0x40006000
#define | USB_PACKET_BUFFER_ADDRESS_EX 0x40007800
#define | USB_SET_TXSTS(ept_num, new_sts)
set usb endpoint tx status More...
#define | USB_SET_RXSTS(ept_num, new_sts)
set usb endpoint rx status More...
#define | GET_TX_LEN_ADDR(eptn) (uint32_t *)((USB->buftbl + eptn * 8 + 2) * 2 + g_usb_packet_address)
get usb endpoint tx/rx length address More...
#define | GET_RX_LEN_ADDR(eptn) (uint32_t *)((USB->buftbl + eptn * 8 + 6) * 2 + g_usb_packet_address)
#define | USB_GET_TX_LEN(eptn) ((uint16_t)(*GET_TX_LEN_ADDR(eptn)) & 0x3ff)
get usb endpoint tx/rx data length More...
#define | USB_GET_RX_LEN(eptn) ((uint16_t)(*GET_RX_LEN_ADDR(eptn)) & 0x3ff)
#define | USB_DBUF0_GET_LEN(eptn) USB_GET_TX_LEN(eptn)
double buffer mode get endpoint buf0/buf1 data length More...
#define | USB_DBUF1_GET_LEN(eptn) USB_GET_RX_LEN(eptn)
#define | BLK32(reg, len, blks)
set usb length of rx buffer More...
#define | BLK2(reg, len, blks)
#define | USB_SET_RXLEN_REG(reg, len)
#define | USB_SET_TXLEN(eptn, len) (*(GET_TX_LEN_ADDR(eptn)) = (len))
set endpoint tx/rx transfer length More...
#define | USB_SET_RXLEN(eptn, len)
#define | USB_OUT_EPT_DOUBLE_BUF0(eptn, len)
double buffer mode set endpoint rx buf0 length More...
#define | USB_SET_EPT_DOUBLE_BUF0_LEN(eptn, len, dir)
double buffer mode set endpoint buf0 length More...
#define | USB_SET_EPT_DOUBLE_BUF1_LEN(eptn, len, dir)
double buffer mode set endpoint buf1 length More...
#define | USB_SET_TX_ADDRESS(eptn, address) (*(uint32_t *)((USB->buftbl + eptn * 8) * 2 + g_usb_packet_address) = address)
set usb endpoint tx/rx fifo address More...
#define | USB_SET_RX_ADDRESS(eptn, address) (*(uint32_t *)((USB->buftbl + eptn * 8 + 4) * 2 + g_usb_packet_address) = address)
#define | USB_SET_DOUBLE_BUFF0_ADDRESS(eptn, address) (USB_SET_TX_ADDRESS(eptn, address))
set double buffer mode usb endpoint buf0/buf1 fifo address More...
#define | USB_SET_DOUBLE_BUFF1_ADDRESS(eptn, address) (USB_SET_RX_ADDRESS(eptn, address))
#define | USB_TOGGLE_TXDTS(eptn) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_TXDTS | USB_RXTC | USB_TXTC))
set usb tx/rx toggle More...
#define | USB_TOGGLE_RXDTS(eptn) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_RXDTS | USB_RXTC | USB_TXTC))
#define | USB_CLEAR_TXDTS(eptn)
clear usb tx/rx toggle More...
#define | USB_CLEAR_RXDTS(eptn)
#define | USB_SET_TRANS_TYPE(eptn, type) (USB->ept[eptn] = (USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_TRANS_TYPE)) | type)
set usb endpoint type More...
#define | USB_SET_EXF(eptn) (USB->ept[eptn] = USB_TXTC | USB_RXTC | ((USB->ept[eptn] | USB_EXF) & USB_EPT_BIT_MASK))
set/clear usb extend function More...
#define | USB_CLEAR_EXF(eptn) (USB->ept[eptn] = USB_TXTC | USB_RXTC | (USB->ept[eptn] & ((~USB_EXF) & USB_EPT_BIT_MASK)))
#define | USB_SET_EPT_ADDRESS(eptn, address) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_EPTADDR)) | address))
set usb device address More...
#define | USB_FREE_DB_USER_BUFFER(eptn, inout)
free buffer used by application More...
#define | USB_CLEAR_TXTC(eptn) (USB->ept[eptn] &= 0xFF7F & USB_EPT_BIT_MASK)
clear tx/rx transfer completed flag More...
#define | USB_CLEAR_RXTC(eptn) (USB->ept[eptn] &= 0x7FFF & USB_EPT_BIT_MASK)
#define | USB_SET_EPT_DOUBLE_BUFFER(eptn) USB_SET_EXF(eptn)
set/clear endpoint double buffer mode More...
#define | USB_CLEAR_EPT_DOUBLE_BUFFER(eptn) USB_CLEAR_EXF(eptn)
#define | USB ((usbd_type *) USBFS_BASE)

Typedefs

typedef usbd_type usb_reg_type

Enumerations

enum usb_ept_number_type {
USB_EPT0 = 0x00 , USB_EPT1 = 0x01 , USB_EPT2 = 0x02 , USB_EPT3 = 0x03 ,
USB_EPT4 = 0x04 , USB_EPT5 = 0x05 , USB_EPT6 = 0x06 , USB_EPT7 = 0x07
}
usb endpoint number define More...
enum | ept_trans_type { EPT_CONTROL_TYPE = 0x00 , EPT_ISO_TYPE = 0x01 , EPT_BULK_TYPE = 0x02 , EPT_INT_TYPE = 0x03 }
usb endpoint max num define More...
enum | ept_inout_type { EPT_IN = 0x00 , EPT_OUT = 0x01 }
endpoint endpoint direction define More...
enum | data_trans_dir { DATA_TRANS_OUT = 0x00 , DATA_TRANS_IN = 0x01 }
data transfer direction More...
enum | usb_clk48_s { USB_CLK_HICK , USB_CLK_HEXT }
usb clock select More...

Functions

void | usb_dev_init (usbd_type *usbx)
initialize usb peripheral controller register More...
void | usb_connect (usbd_type *usbx)
connect usb device More...
void | usb_disconnect (usbd_type *usbx)
disconnect usb device More...
void | usb_usbbufs_enable (usbd_type *usbx, confirm_state state)
mapping usb packet buffer area two mapping intervals are available for packet buffer area, and are select by the usbbufs in the crm misc1 register. when usbbufs is 0,sram size is 512 bytes, packet buffer start address is 0x40006000.when usbbufs is 1, sram size is fixed to 768 bytes, and the packet buffer start address is fixed to 0x40007800, usb packet buffer can be set to the maximum of 768 bytes. More...
void | usb_ept_open (usbd_type *usbx, usb_ept_info *ept_info)
open usb endpoint More...
void | usb_ept_close (usbd_type *usbx, usb_ept_info *ept_info)
close usb endpoint More...
void | usb_write_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
write data from user memory to usb buffer More...
void | usb_read_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
read data from usb buffer to user buffer More...
void | usb_interrupt_enable (usbd_type *usbx, uint16_t interrupt, confirm_state new_state)
usb interrupt enable More...
void | usb_set_address (usbd_type *usbx, uint8_t address)
set the host assignment address More...
void | usb_ept_stall (usbd_type *usbx, usb_ept_info *ept_info)
set endpoint tx or rx status to stall More...
void | usb_enter_suspend (usbd_type *usbx)
usb device enter suspend mode More...
void | usb_exit_suspend (usbd_type *usbx)
usb device exit suspend mode More...
void | usb_remote_wkup_set (usbd_type *usbx)
usb remote wakeup set More...
void | usb_remote_wkup_clear (usbd_type *usbx)
usb remote wakeup clear More...
uint16_t | usb_buffer_malloc (uint16_t maxpacket)
usb auto malloc endpoint buffer More...
void | usb_buffer_free (void)
free usb endpoint buffer More...
flag_status | usb_flag_get (usbd_type *usbx, uint16_t flag)
get flag of usb. More...
flag_status | usb_interrupt_flag_get (usbd_type *usbx, uint16_t flag)
get interrupt flag of usb. More...
void | usb_flag_clear (usbd_type *usbx, uint16_t flag)
clear flag of usb. More...

Variables

uint32_t g_usb_packet_address

Detailed Description

at32f403 usb header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_usb.h.


AT32F403 Firmwary Library: at32f403_wdt.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_wdt.h File Reference

at32f403 wdt header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct wdt_type
type define wdt register all More...

Macros

#define | WDT_DIVF_UPDATE_FLAG ((uint16_t)0x0001)
#define | WDT_RLDF_UPDATE_FLAG ((uint16_t)0x0002)
#define | WDT ((wdt_type *) WDT_BASE)

Enumerations

enum wdt_division_type {
WDT_CLK_DIV_4 = 0x00 , WDT_CLK_DIV_8 = 0x01 , WDT_CLK_DIV_16 = 0x02 , WDT_CLK_DIV_32 = 0x03 ,
WDT_CLK_DIV_64 = 0x04 , WDT_CLK_DIV_128 = 0x05 , WDT_CLK_DIV_256 = 0x06
}
wdt division value type More...
enum wdt_cmd_value_type { WDT_CMD_LOCK = 0x0000 , WDT_CMD_UNLOCK = 0x5555 , WDT_CMD_ENABLE = 0xCCCC , WDT_CMD_RELOAD = 0xAAAA }
wdt cmd value type More...

Functions

void | wdt_enable (void)
wdt enable ,the reload value will be sent to the counter More...
void | wdt_counter_reload (void)
reload wdt counter More...
void | wdt_reload_value_set (uint16_t reload_value)
set wdt counter reload value More...
void | wdt_divider_set (wdt_division_type division)
set wdt division divider More...
void | wdt_register_write_enable (confirm_state new_state)
enable or disable wdt cmd register write More...
flag_status | wdt_flag_get (uint16_t wdt_flag)
get wdt flag More...

Detailed Description

at32f403 wdt header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_wdt.h.


AT32F403 Firmwary Library: at32f403_wwdt.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_wwdt.h File Reference

at32f403 wwdt header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct wwdt_type
type define wwdt register all More...

Macros

#define | WWDT_EN_BIT ((uint32_t)0x00000080)
#define | WWDT ((wwdt_type *) WWDT_BASE)

Enumerations

enum wwdt_division_type { WWDT_PCLK1_DIV_4096 = 0x00 , WWDT_PCLK1_DIV_8192 = 0x01 , WWDT_PCLK1_DIV_16384 = 0x02 , WWDT_PCLK1_DIV_32768 = 0x03 }
wwdt division type More...

Functions

void | wwdt_reset (void)
wwdt reset by crm reset register More...
void | wwdt_divider_set (wwdt_division_type division)
wwdt division set More...
void | wwdt_flag_clear (void)
wwdt reload counter interrupt flag clear More...
void | wwdt_enable (uint8_t wwdt_cnt)
wwdt enable and the counter value load More...
void | wwdt_interrupt_enable (void)
wwdt reload counter interrupt enable More...
flag_status | wwdt_flag_get (void)
wwdt reload counter interrupt flag get More...
flag_status | wwdt_interrupt_flag_get (void)
wwdt reload counter interrupt flag get More...
void | wwdt_counter_set (uint8_t wwdt_cnt)
wwdt counter value set More...
void | wwdt_window_counter_set (uint8_t window_cnt)
wwdt window counter value set More...

Detailed Description

at32f403 wwdt header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_wwdt.h.


AT32F403 Firmwary Library: at32f403_xmc.h File Reference

  • libraries
  • drivers
  • inc
Data Structures | Macros | Enumerations | Functions
at32f403_xmc.h File Reference

at32f403 xmc header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | xmc_norsram_timing_init_type
nor/sram banks timing parameters More...
struct | xmc_norsram_init_type
xmc nor/sram init structure definition More...
struct | xmc_nand_pccard_timinginit_type
nand timing parameters xmc More...
struct | xmc_nand_init_type
xmc nand init structure definition More...
struct | xmc_pccard_init_type
xmc pccard init structure definition More...
struct | xmc_bank1_ctrl_tmg_reg_type
struct | xmc_bank1_tmgwr_reg_type
struct | xmc_bank1_type
xmc bank1 registers More...
struct | xmc_bank2_type
xmc bank2 registers More...
struct | xmc_bank3_type
xmc bank3 registers More...
struct | xmc_bank4_type
xmc bank4 registers More...

Macros

#define | XMC_BANK1 ((xmc_bank1_type *) XMC_BANK1_REG_BASE)
#define | XMC_BANK2 ((xmc_bank2_type *) XMC_BANK2_REG_BASE)
#define | XMC_BANK3 ((xmc_bank3_type *) XMC_BANK3_REG_BASE)
#define | XMC_BANK4 ((xmc_bank4_type *) XMC_BANK4_REG_BASE)

Enumerations

enum | xmc_data_addr_mux_type { XMC_DATA_ADDR_MUX_DISABLE = 0x00000000 , XMC_DATA_ADDR_MUX_ENABLE = 0x00000002 }
xmc data address bus multiplexing type More...
enum | xmc_burst_access_mode_type { XMC_BURST_MODE_DISABLE = 0x00000000 , XMC_BURST_MODE_ENABLE = 0x00000100 }
xmc burst access mode type More...
enum | xmc_asyn_wait_type { XMC_ASYN_WAIT_DISABLE = 0x00000000 , XMC_ASYN_WAIT_ENABLE = 0x00008000 }
xmc asynchronous wait type More...
enum | xmc_wrap_mode_type { XMC_WRAPPED_MODE_DISABLE = 0x00000000 , XMC_WRAPPED_MODE_ENABLE = 0x00000400 }
xmc wrapped mode type More...
enum | xmc_write_operation_type { XMC_WRITE_OPERATION_DISABLE = 0x00000000 , XMC_WRITE_OPERATION_ENABLE = 0x00001000 }
xmc write operation type More...
enum | xmc_wait_signal_type { XMC_WAIT_SIGNAL_DISABLE = 0x00000000 , XMC_WAIT_SIGNAL_ENABLE = 0x00002000 }
xmc wait signal type More...
enum | xmc_write_burst_type { XMC_WRITE_BURST_SYN_DISABLE = 0x00000000 , XMC_WRITE_BURST_SYN_ENABLE = 0x00080000 }
xmc write burst type More...
enum | xmc_extended_mode_type { XMC_WRITE_TIMING_DISABLE = 0x00000000 , XMC_WRITE_TIMING_ENABLE = 0x00004000 }
xmc extended mode type More...
enum | xmc_nand_pccard_wait_type { XMC_WAIT_OPERATION_DISABLE = 0x00000000 , XMC_WAIT_OPERATION_ENABLE = 0x00000002 }
xmc nand wait type More...
enum | xmc_ecc_enable_type { XMC_ECC_OPERATION_DISABLE = 0x00000000 , XMC_ECC_OPERATION_ENABLE = 0x00000040 }
xmc ecc enable type More...
enum | xmc_nor_sram_subbank_type { XMC_BANK1_NOR_SRAM1 = 0x00000000 , XMC_BANK1_NOR_SRAM2 = 0x00000001 , XMC_BANK1_NOR_SRAM3 = 0x00000002 , XMC_BANK1_NOR_SRAM4 = 0x00000003 }
xmc nor/sram bank type More...
enum | xmc_class_bank_type { XMC_BANK2_NAND = 0x00000000 , XMC_BANK3_NAND = 0x00000001 , XMC_BANK4_PCCARD = 0x00000002 }
xmc class bank type More...
enum | xmc_memory_type { XMC_DEVICE_SRAM = 0x00000000 , XMC_DEVICE_PSRAM = 0x00000004 , XMC_DEVICE_NOR = 0x00000008 }
xmc memory type More...
enum | xmc_data_width_type { XMC_BUSTYPE_8_BITS = 0x00000000 , XMC_BUSTYPE_16_BITS = 0x00000010 }
xmc data width type More...
enum | xmc_wait_signal_polarity_type { XMC_WAIT_SIGNAL_LEVEL_LOW = 0x00000000 , XMC_WAIT_SIGNAL_LEVEL_HIGH = 0x00000200 }
xmc wait signal polarity type More...
enum | xmc_wait_timing_type { XMC_WAIT_SIGNAL_SYN_BEFORE = 0x00000000 , XMC_WAIT_SIGNAL_SYN_DURING = 0x00000800 }
xmc wait timing type More...
enum | xmc_access_mode_type { XMC_ACCESS_MODE_A = 0x00000000 , XMC_ACCESS_MODE_B = 0x10000000 , XMC_ACCESS_MODE_C = 0x20000000 , XMC_ACCESS_MODE_D = 0x30000000 }
xmc access mode type More...
enum xmc_ecc_pagesize_type {
XMC_ECC_PAGESIZE_256_BYTES = 0x00000000 , XMC_ECC_PAGESIZE_512_BYTES = 0x00020000 , XMC_ECC_PAGESIZE_1024_BYTES = 0x00040000 , XMC_ECC_PAGESIZE_2048_BYTES = 0x00060000 ,
XMC_ECC_PAGESIZE_4096_BYTES = 0x00080000 , XMC_ECC_PAGESIZE_8192_BYTES = 0x000A0000
}
xmc ecc page size type More...
enum | xmc_interrupt_sources_type { XMC_INT_RISING_EDGE = 0x00000008 , XMC_INT_LEVEL = 0x00000010 , XMC_INT_FALLING_EDGE = 0x00000020 }
xmc interrupt sources type More...
enum | xmc_interrupt_flag_type { XMC_RISINGEDGE_FLAG = 0x00000001 , XMC_LEVEL_FLAG = 0x00000002 , XMC_FALLINGEDGE_FLAG = 0x00000004 , XMC_FEMPT_FLAG = 0x00000040 }
xmc interrupt flag type More...

Functions

void | xmc_nor_sram_reset (xmc_nor_sram_subbank_type xmc_subbank)
xmc nor or sram registers reset More...
void | xmc_nor_sram_init (xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct. More...
void | xmc_nor_sram_timing_config (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct and xmc_w_timing_struct. More...
void | xmc_norsram_default_para_init (xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value. More...
void | xmc_norsram_timing_default_para_init (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value. More...
void | xmc_nor_sram_enable (xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank. More...
void | xmc_ext_timing_config (volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase. More...
void | xmc_nand_reset (xmc_class_bank_type xmc_bank)
xmc nand flash registers reset More...
void | xmc_nand_init (xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_timing_config (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_default_para_init (xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value. More...
void | xmc_nand_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default value. More...
void | xmc_nand_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank. More...
void | xmc_nand_ecc_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature. More...
uint32_t | xmc_ecc_get (xmc_class_bank_type xmc_bank)
return the error correction code register value. More...
void | xmc_interrupt_enable (xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state)
enable or disable the specified xmc interrupts. More...
flag_status | xmc_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc flag is set or not. More...
flag_status | xmc_interrupt_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc interrupt flag is set or not. More...
void | xmc_flag_clear (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
clear the xmc's pending flags. More...
void | xmc_pccard_reset (void)
xmc pc card registers reset More...
void | xmc_pccard_init (xmc_pccard_init_type *xmc_pccard_init_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct. More...
void | xmc_pccard_timing_config (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct. More...
void | xmc_pccard_default_para_init (xmc_pccard_init_type *xmc_pccard_init_struct)
fill each xmc_pccard_init_struct member with its default value. More...
void | xmc_pccard_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct member with its default value. More...
void | xmc_pccard_enable (confirm_state new_state)
enable or disable the pccard memory bank. More...

Detailed Description

at32f403 xmc header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_xmc.h.


AT32F403 Firmwary Library: at32f403_adc.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_adc.c File Reference

contains all the functions for the adc firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | adc_reset (adc_type *adc_x)
deinitialize the adc peripheral registers to their default reset values. More...
void | adc_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral. More...
void | adc_combine_mode_select (adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral. More...
void | adc_base_default_para_init (adc_base_config_type *adc_base_struct)
adc base default para init. More...
void | adc_base_config (adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters. More...
void | adc_dma_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer. More...
void | adc_interrupt_enable (adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts. More...
void | adc_calibration_init (adc_type *adc_x)
initialize calibration register of the specified adc peripheral. More...
flag_status | adc_calibration_init_status_get (adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral. More...
void | adc_calibration_start (adc_type *adc_x)
start calibration process of the specified adc peripheral. More...
flag_status | adc_calibration_status_get (adc_type *adc_x)
get calibration status of the specified adc peripheral. More...
void | adc_voltage_monitor_enable (adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified adc peripheral. More...
void | adc_voltage_monitor_threshold_value_set (adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
set voltage monitoring's high and low thresholds value of the specified adc peripheral. More...
void | adc_voltage_monitor_single_channel_select (adc_type *adc_x, adc_channel_select_type adc_channel)
select the voltage monitoring's channel of the specified adc peripheral. More...
void | adc_ordinary_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_preempt_channel_length_set (adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral. More...
void | adc_preempt_channel_set (adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc peripheral. More...
void | adc_ordinary_conversion_trigger_set (adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_conversion_trigger_set (adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specified adc peripheral. More...
void | adc_preempt_offset_value_set (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value)
set preempt channel's conversion value offset of the specified adc peripheral. More...
void | adc_ordinary_part_count_set (adc_type *adc_x, uint8_t adc_channel_count)
set partitioned mode channel count of the specified adc peripheral. More...
void | adc_ordinary_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on ordinary channel of the specified adc peripheral. More...
void | adc_preempt_part_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on preempt channel of the specified adc peripheral. More...
void | adc_preempt_auto_mode_enable (adc_type *adc_x, confirm_state new_state)
enable or disable automatic preempt group conversion of the specified adc peripheral. More...
void | adc_tempersensor_vintrv_enable (confirm_state new_state)
enable or disable the temperature sensor and vintrv channel. More...
void | adc_ordinary_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral. More...
flag_status | adc_ordinary_software_trigger_status_get (adc_type *adc_x)
get ordinary software start conversion status of the specified adc peripheral. More...
void | adc_preempt_software_trigger_enable (adc_type *adc_x, confirm_state new_state)
enable or disable preempt software start conversion of the specified adc peripheral. More...
flag_status | adc_preempt_software_trigger_status_get (adc_type *adc_x)
get preempt software start conversion status of the specified adc peripheral. More...
uint16_t | adc_ordinary_conversion_data_get (adc_type *adc_x)
return the last conversion data for ordinary channel of the specified adc peripheral. More...
uint32_t | adc_combine_ordinary_conversion_data_get (void)
return the last conversion data for ordinary channel of combine adc(adc1 and adc2). More...
uint16_t | adc_preempt_conversion_data_get (adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral. More...
flag_status | adc_flag_get (adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral. More...
flag_status | adc_interrupt_flag_get (adc_type *adc_x, uint8_t adc_flag)
get interrupt flag of the specified adc peripheral. More...
void | adc_flag_clear (adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral. More...

Detailed Description

contains all the functions for the adc firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_adc.c.


AT32F403 Firmwary Library: at32f403_bpr.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_bpr.c File Reference

contains all the functions for the bpr firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | bpr_reset (void)
bpr reset by crm reset register More...
flag_status | bpr_flag_get (uint32_t flag)
bpr event flag get, for tamper event flag More...
flag_status | bpr_interrupt_flag_get (uint32_t flag)
bpr interrupt flag get More...
void | bpr_flag_clear (uint32_t flag)
clear bpr tamper flag More...
void | bpr_interrupt_enable (confirm_state new_state)
enable or disable bpr tamper interrupt More...
uint16_t | bpr_data_read (bpr_data_type bpr_data)
read bpr bpr data More...
void | bpr_data_write (bpr_data_type bpr_data, uint16_t data_value)
write bpr data More...
void | bpr_rtc_output_select (bpr_rtc_output_type output_source)
select bpr rtc output More...
void | bpr_rtc_clock_calibration_value_set (uint8_t calibration_value)
set rtc clock calibration value More...
void | bpr_tamper_pin_enable (confirm_state new_state)
enable or disable bpr tamper pin More...
void | bpr_tamper_pin_active_level_set (bpr_tamper_pin_active_level_type active_level)
set bpr tamper pin active level More...

Detailed Description

contains all the functions for the bpr firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_bpr.c.


AT32F403 Firmwary Library: at32f403_can.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_can.c File Reference

contains all the functions for the can firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | can_reset (can_type *can_x)
deinitialize the can peripheral registers to their default reset values. More...
void | can_baudrate_default_para_init (can_baudrate_type *can_baudrate_struct)
fill each can_baudrate_struct member with its default value. More...
error_status | can_baudrate_set (can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral More...
void | can_default_para_init (can_base_type *can_base_struct)
fill each can_init_struct member with its default value. More...
error_status | can_base_init (can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct. More...
void | can_filter_default_para_init (can_filter_init_type *can_filter_init_struct)
fill each can_filter_init_struct member with its default value. More...
void | can_filter_init (can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct. More...
void | can_debug_transmission_prohibit (can_type *can_x, confirm_state new_state)
enable or disable the debug transmission prohibit of the specified can peripheral. More...
void | can_ttc_mode_enable (can_type *can_x, confirm_state new_state)
enable or disable time trigger operation communication mode of the specified can peripheral. More...
uint8_t | can_message_transmit (can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral. More...
can_transmit_status_type | can_transmit_status_get (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral. More...
void | can_transmit_cancel (can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
cancel a transmit request of the specified can peripheral. More...
void | can_message_receive (can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral. More...
void | can_receive_fifo_release (can_type *can_x, can_rx_fifo_num_type fifo_number)
release the specified fifo of the specified can peripheral. More...
uint8_t | can_receive_message_pending_get (can_type *can_x, can_rx_fifo_num_type fifo_number)
return the number of pending messages of the specified can peripheral. More...
error_status | can_operating_mode_set (can_type *can_x, can_operating_mode_type can_operating_mode)
set the operation mode of the specified can peripheral. More...
can_enter_doze_status_type | can_doze_mode_enter (can_type *can_x)
enter the low power mode of the specified can peripheral. More...
can_quit_doze_status_type | can_doze_mode_exit (can_type *can_x)
exit the doze mode of the specified can peripheral. More...
can_error_record_type | can_error_type_record_get (can_type *can_x)
return the error type record (etr) of the specified can peripheral. More...
uint8_t | can_receive_error_counter_get (can_type *can_x)
return the receive error counter (rec) of the specified can peripheral. More...
uint8_t | can_transmit_error_counter_get (can_type *can_x)
return the transmit error counter of the specified can peripheral. More...
void | can_interrupt_enable (can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral. More...
flag_status | can_interrupt_flag_get (can_type *can_x, uint32_t can_flag)
get interrupt flag of the specified can peripheral. More...
flag_status | can_flag_get (can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral. More...
void | can_flag_clear (can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral. More...

Detailed Description

contains all the functions for the can firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_can.c.


AT32F403 Firmwary Library: at32f403_crc.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_crc.c File Reference

contains all the functions for the crc firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | crc_data_reset (void)
reset the crc data register. More...
uint32_t | crc_one_word_calculate (uint32_t data)
compute the 32-bit crc of a given data word(32-bit). More...
uint32_t | crc_block_calculate (uint32_t *pbuffer, uint32_t length)
compute the 32-bit crc of a given buffer of data word(32-bit). More...
uint32_t | crc_data_get (void)
return the current crc value. More...
void | crc_common_data_set (uint8_t cdt_value)
store a 8-bit data in the common data register. More...
uint8_t | crc_common_data_get (void)
return the 8-bit data stored in the common data register More...
void | crc_init_data_set (uint32_t value)
set the 32-bit initial data of crc More...
void | crc_reverse_input_data_set (crc_reverse_input_type value)
control the reversal of the bit order in the input data More...
void | crc_reverse_output_data_set (crc_reverse_output_type value)
control the reversal of the bit order in the output data More...
void | crc_poly_value_set (uint32_t value)
config crc polynomial value More...
uint32_t | crc_poly_value_get (void)
return crc polynomial value More...
void | crc_poly_size_set (crc_poly_size_type size)
config crc polynomial data size More...
crc_poly_size_type | crc_poly_size_get (void)
return crc polynomial data size More...

Detailed Description

contains all the functions for the crc firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_crc.c.


AT32F403 Firmwary Library: at32f403_crm.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_crm.c File Reference

contains all the functions for the crm firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | crm_reset (void)
reset the crm register More...
void | crm_lext_bypass (confirm_state new_state)
enable or disable crm low speed external crystal bypass More...
void | crm_hext_bypass (confirm_state new_state)
enable or disable crm high speed external crystal bypass More...
flag_status | crm_flag_get (uint32_t flag)
get crm flag status More...
flag_status | crm_interrupt_flag_get (uint32_t flag)
get crm interrupt flag status More...
error_status | crm_hext_stable_wait (void)
wait for hext stable More...
void | crm_hick_clock_trimming_set (uint8_t trim_value)
set the hick trimming value More...
void | crm_hick_clock_calibration_set (uint8_t cali_value)
set the crm calibration value More...
void | crm_periph_clock_enable (crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock More...
void | crm_periph_reset (crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset More...
void | crm_periph_sleep_mode_clock_enable (crm_periph_clock_sleepmd_type value, confirm_state new_state)
enable or disable the peripheral clock in sleep mode More...
void | crm_clock_source_enable (crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source More...
void | crm_flag_clear (uint32_t flag)
clear the crm reset flags More...
void | crm_rtc_clock_select (crm_rtc_clock_type value)
select rtc clock More...
void | crm_rtc_clock_enable (confirm_state new_state)
enable or disable rtc More...
void | crm_ahb_div_set (crm_ahb_div_type value)
set crm ahb division More...
void | crm_apb1_div_set (crm_apb1_div_type value)
set crm apb1 division More...
void | crm_apb2_div_set (crm_apb2_div_type value)
set crm apb2 division More...
void | crm_adc_clock_div_set (crm_adc_div_type div_value)
set crm adc division More...
void | crm_usb_clock_div_set (crm_usb_div_type div_value)
set crm usb division More...
void | crm_clock_failure_detection_enable (confirm_state new_state)
enable or disable clock failure detection More...
void | crm_battery_powered_domain_reset (confirm_state new_state)
battery powered domain software reset More...
void | crm_pll_config (crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll More...
void | crm_sysclk_switch (crm_sclk_type value)
select system clock source More...
crm_sclk_type | crm_sysclk_switch_status_get (void)
indicate which clock source is used as system clock More...
void | crm_clocks_freq_get (crm_clocks_freq_type *clocks_struct)
get crm clocks freqency More...
void | crm_clock_out_set (crm_clkout_select_type clkout)
set crm clkout More...
void | crm_interrupt_enable (uint32_t crm_int, confirm_state new_state)
config crm interrupt More...

Detailed Description

contains all the functions for the crm firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_crm.c.


AT32F403 Firmwary Library: at32f403_dac.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_dac.c File Reference

contains all the functions for the dac firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | dac_reset (void)
dac reset More...
void | dac_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac More...
void | dac_output_buffer_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer More...
void | dac_trigger_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger More...
void | dac_trigger_select (dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger More...
void | dac_software_trigger_generate (dac_select_type dac_select)
generate dac software trigger More...
void | dac_dual_software_trigger_generate (void)
generate dac dual software trigger synchronously More...
void | dac_wave_generate (dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave More...
void | dac_mask_amplitude_select (dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude More...
void | dac_dma_enable (dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma More...
uint16_t | dac_data_output_get (dac_select_type dac_select)
get dac data output More...
void | dac_1_data_set (dac1_aligned_data_type dac1_aligned, uint16_t dac1_data)
set dac1 data More...
void | dac_2_data_set (dac2_aligned_data_type dac2_aligned, uint16_t dac2_data)
set dac2 data More...
void | dac_dual_data_set (dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
set dac dual data More...

Detailed Description

contains all the functions for the dac firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_dac.c.


AT32F403 Firmwary Library: at32f403_debug.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_debug.c File Reference

contains all the functions for the debug firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

uint32_t | debug_device_id_get (void)
get debug device id More...
void | debug_periph_mode_set (uint32_t periph_debug_mode, confirm_state new_state)
set periph debug mode More...

Detailed Description

contains all the functions for the debug firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_debug.c.


AT32F403 Firmwary Library: at32f403_dma.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_dma.c File Reference

contains all the functions for the dma firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | dma_reset (dma_channel_type *dmax_channely)
reset the dmax channely registers. More...
void | dma_data_number_set (dma_channel_type *dmax_channely, uint16_t data_number)
set the number of data to be transferred More...
uint16_t | dma_data_number_get (dma_channel_type *dmax_channely)
get number of data from dtcnt register More...
void | dma_interrupt_enable (dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt More...
void | dma_channel_enable (dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely More...
flag_status | dma_flag_get (uint32_t dmax_flag)
get dma flag More...
void | dma_flag_clear (uint32_t dmax_flag)
clear dma flag More...
void | dma_default_para_init (dma_init_type *dma_init_struct)
dma init config with its default value. More...
void | dma_init (dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init More...

Detailed Description

contains all the functions for the dma firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_dma.c.


AT32F403 Firmwary Library: at32f403_exint.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_exint.c File Reference

contains all the functions for the exint firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | exint_reset (void)
exint reset More...
void | exint_default_para_init (exint_init_type *exint_struct)
exint default para init More...
void | exint_init (exint_init_type *exint_struct)
exint init More...
void | exint_flag_clear (uint32_t exint_line)
clear exint flag More...
flag_status | exint_flag_get (uint32_t exint_line)
get exint flag More...
flag_status | exint_interrupt_flag_get (uint32_t exint_line)
get exint interrupt flag More...
void | exint_software_interrupt_event_generate (uint32_t exint_line)
generate exint software interrupt event More...
void | exint_interrupt_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint interrupt More...
void | exint_event_enable (uint32_t exint_line, confirm_state new_state)
enable or disable exint event More...

Detailed Description

contains all the functions for the exint firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_exint.c.


AT32F403 Firmwary Library: at32f403_flash.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_flash.c File Reference

contains all the functions for the flash firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

flag_status | flash_flag_get (uint32_t flash_flag)
check whether the specified flash flag is set or not. More...
void | flash_flag_clear (uint32_t flash_flag)
clear the flash flag. More...
flash_status_type | flash_operation_status_get (void)
return the flash operation status. More...
flash_status_type | flash_bank1_operation_status_get (void)
return the flash bank1 operation status. More...
flash_status_type | flash_bank2_operation_status_get (void)
return the flash bank2 operation status. More...
flash_status_type | flash_spim_operation_status_get (void)
return the flash spim operation status. More...
flash_status_type | flash_operation_wait_for (uint32_t time_out)
wait for flash operation complete or timeout. More...
flash_status_type | flash_bank1_operation_wait_for (uint32_t time_out)
wait for flash bank1 operation complete or timeout. More...
flash_status_type | flash_bank2_operation_wait_for (uint32_t time_out)
wait for flash bank2 operation complete or timeout. More...
flash_status_type | flash_spim_operation_wait_for (uint32_t time_out)
wait for flash spim operation complete or timeout. More...
void | flash_unlock (void)
unlock the flash controller. More...
void | flash_bank1_unlock (void)
unlock the flash bank1 controller. More...
void | flash_bank2_unlock (void)
unlock the flash bank2 controller. More...
void | flash_spim_unlock (void)
unlock the flash spim controller. More...
void | flash_lock (void)
lock the flash controller. More...
void | flash_bank1_lock (void)
lock the flash bank1 controller. More...
void | flash_bank2_lock (void)
lock the flash bank2 controller. More...
void | flash_spim_lock (void)
lock the flash spim controller. More...
flash_status_type | flash_sector_erase (uint32_t sector_address)
erase a specified flash sector. More...
flash_status_type | flash_internal_all_erase (void)
erase flash all internal sectors. More...
flash_status_type | flash_bank1_erase (void)
erase flash bank1 sectors. More...
flash_status_type | flash_bank2_erase (void)
erase flash bank2 sectors. More...
flash_status_type | flash_spim_all_erase (void)
erase flash spim sectors. More...
flash_status_type | flash_user_system_data_erase (void)
erase the flash user system data. More...
flash_status_type | flash_word_program (uint32_t address, uint32_t data)
program a word at a specified address. More...
flash_status_type | flash_halfword_program (uint32_t address, uint16_t data)
program a halfword at a specified address. More...
flash_status_type | flash_byte_program (uint32_t address, uint8_t data)
program a byte at a specified address. More...
flash_status_type | flash_user_system_data_program (uint32_t address, uint8_t data)
program a halfword at a specified user system data address. More...
flash_status_type | flash_epp_set (uint32_t *sector_bits)
config erase/program protection for the desired sectors. More...
void | flash_epp_status_get (uint32_t *sector_bits)
return the flash erase/program protection status. More...
flash_status_type | flash_fap_enable (confirm_state new_state)
enable or disable the flash access protection. More...
flag_status | flash_fap_status_get (void)
check the flash access protection status. More...
flash_status_type | flash_ssb_set (uint8_t usd_ssb)
program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt. More...
uint8_t | flash_ssb_status_get (void)
return the flash system setting byte status. More...
void | flash_interrupt_enable (uint32_t flash_int, confirm_state new_state)
enable or disable the specified flash interrupts. More...
void | flash_spim_model_select (flash_spim_model_type mode)
select spim supports extended spi flash chip model. More...
void | flash_spim_encryption_range_set (uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value, the writing data will be directly written to spim without encryption. More...
void | flash_spim_dummy_read (void)
operate the flash spim dummy read. More...
flash_status_type | flash_spim_mass_program (uint32_t address, uint8_t *buf, uint32_t cnt)
mass program for flash spim. More...

Detailed Description

contains all the functions for the flash firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_flash.c.


AT32F403 Firmwary Library: at32f403_gpio.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_gpio.c File Reference

contains all the functions for the gpio firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | gpio_reset (gpio_type *gpio_x)
reset the gpio register More...
void | gpio_iomux_reset (void)
reset the mux functions (remap, event control and exint configuration) registers to their default values. More...
void | gpio_init (gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral. More...
void | gpio_default_para_init (gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value. More...
flag_status | gpio_input_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified input port pin. More...
uint16_t | gpio_input_data_read (gpio_type *gpio_x)
read the specified gpio input data port. More...
flag_status | gpio_output_data_bit_read (gpio_type *gpio_x, uint16_t pins)
read the specified output port pin. More...
uint16_t | gpio_output_data_read (gpio_type *gpio_x)
read the specified gpio ouput data port. More...
void | gpio_bits_set (gpio_type *gpio_x, uint16_t pins)
set the selected data port bits. More...
void | gpio_bits_reset (gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits. More...
void | gpio_bits_write (gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
set or clear the selected data port bit. More...
void | gpio_port_write (gpio_type *gpio_x, uint16_t port_value)
write data to the specified gpio data port. More...
void | gpio_pin_wp_config (gpio_type *gpio_x, uint16_t pins)
write protect gpio pins configuration registers. More...
void | gpio_event_output_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as event output. More...
void | gpio_event_output_enable (confirm_state new_state)
enable or disable the event output. More...
void | gpio_pin_remap_config (uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration. More...
void | gpio_exint_line_config (gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line. More...

Detailed Description

contains all the functions for the gpio firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_gpio.c.


AT32F403 Firmwary Library: at32f403_i2c.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_i2c.c File Reference

contains all the functions for the i2c firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | i2c_reset (i2c_type *i2c_x)
reset the i2c register More...
void | i2c_software_reset (i2c_type *i2c_x, confirm_state new_state)
software reset. More...
void | i2c_init (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle. More...
void | i2c_own_address1_set (i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1. More...
void | i2c_own_address2_set (i2c_type *i2c_x, uint8_t address)
config own address2. More...
void | i2c_own_address2_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable own address2. More...
void | i2c_smbus_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable the smbus mode More...
void | i2c_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable i2c periph More...
void | i2c_fast_mode_duty_set (i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty)
config fast mode duty cycle More...
void | i2c_clock_stretch_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable clock stretch. More...
void | i2c_ack_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable acknowledge. More...
void | i2c_master_receive_ack_set (i2c_type *i2c_x, i2c_master_ack_type pos)
master receiving mode acknowledge control. More...
void | i2c_pec_position_set (i2c_type *i2c_x, i2c_pec_position_type pos)
pec position set. More...
void | i2c_general_call_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable general call. More...
void | i2c_arp_mode_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable arp mode. More...
void | i2c_smbus_mode_set (i2c_type *i2c_x, i2c_smbus_mode_set_type mode)
config smbus host or device. More...
void | i2c_smbus_alert_set (i2c_type *i2c_x, i2c_smbus_alert_set_type level)
drive the smbus alert pin high or low. More...
void | i2c_pec_transmit_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec transfer. More...
void | i2c_pec_calculate_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable pec calcultetion. More...
uint8_t | i2c_pec_value_get (i2c_type *i2c_x)
get pec value. More...
void | i2c_dma_end_transfer_set (i2c_type *i2c_x, confirm_state new_state)
enable or disable if the next dma transfer will be the last one. More...
void | i2c_dma_enable (i2c_type *i2c_x, confirm_state new_state)
enable or disable dma requests. More...
void | i2c_interrupt_enable (i2c_type *i2c_x, uint16_t source, confirm_state new_state)
enable or disable interrupt More...
void | i2c_start_generate (i2c_type *i2c_x)
generate start condition. More...
void | i2c_stop_generate (i2c_type *i2c_x)
generate stop condition. More...
void | i2c_7bit_address_send (i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
transmit the slave address. More...
void | i2c_data_send (i2c_type *i2c_x, uint8_t data)
send a byte through the i2c periph. More...
uint8_t | i2c_data_receive (i2c_type *i2c_x)
receive a byte through the i2c periph. More...
flag_status | i2c_flag_get (i2c_type *i2c_x, uint32_t flag)
get flag status More...
flag_status | i2c_interrupt_flag_get (i2c_type *i2c_x, uint32_t flag)
get interrupt flag status More...
void | i2c_flag_clear (i2c_type *i2c_x, uint32_t flag)
clear flag status More...

Detailed Description

contains all the functions for the i2c firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_i2c.c.


AT32F403 Firmwary Library: at32f403_misc.c File Reference

  • libraries
  • drivers
  • src
Macros | Functions
at32f403_misc.c File Reference

contains all the functions for the misc firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Macros

#define AIRCR_VECTKEY_MASK ((uint32_t)0x05FA0000)

Functions

void | nvic_system_reset (void)
system reset More...
void | nvic_irq_enable (IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq More...
void | nvic_irq_disable (IRQn_Type irqn)
disable nvic irq number More...
void | nvic_priority_group_config (nvic_priority_group_type priority_group)
config nvic priority group More...
void | nvic_vector_table_set (uint32_t base, uint32_t offset)
set the vector table location and offset. More...
void | nvic_lowpower_mode_config (nvic_lowpower_mode_type lp_mode, confirm_state new_state)
config nvic lowpower mode More...
void | systick_clock_source_config (systick_clock_source_type source)
config systick clock source More...

Detailed Description

contains all the functions for the misc firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_misc.c.


AT32F403 Firmwary Library: at32f403_pwc.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_pwc.c File Reference

contains all the functions for the pwc firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | pwc_reset (void)
deinitialize the pwc peripheral registers to their default reset values. More...
void | pwc_battery_powered_domain_access (confirm_state new_state)
enable or disable access to the battery powered domain. More...
void | pwc_pvm_level_select (pwc_pvm_voltage_type pvm_voltage)
select the voltage threshold detected by the power voltage detector. More...
void | pwc_power_voltage_monitor_enable (confirm_state new_state)
enable or disable pwc power voltage monitor (pvm) More...
void | pwc_wakeup_pin_enable (uint32_t pin_num, confirm_state new_state)
enable or disable pwc standby wakeup pin More...
void | pwc_flag_clear (uint32_t pwc_flag)
clear flag of pwc More...
flag_status | pwc_flag_get (uint32_t pwc_flag)
get flag of pwc More...
void | pwc_sleep_mode_enter (pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode More...
void | pwc_deep_sleep_mode_enter (pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode More...
void | pwc_standby_mode_enter (void)
enter pwc standby mode More...

Detailed Description

contains all the functions for the pwc firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_pwc.c.


AT32F403 Firmwary Library: at32f403_rtc.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_rtc.c File Reference

contains all the functions for the rtc firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | rtc_counter_set (uint32_t counter_value)
rtc counter set More...
uint32_t | rtc_counter_get (void)
rtc counter get More...
void | rtc_divider_set (uint32_t div_value)
rtc divider set More...
uint32_t | rtc_divider_get (void)
rtc divider get More...
void | rtc_alarm_set (uint32_t alarm_value)
rtc alarm value set More...
void | rtc_interrupt_enable (uint16_t source, confirm_state new_state)
rtc interrupt enable More...
flag_status | rtc_flag_get (uint16_t flag)
rtc flag get More...
flag_status | rtc_interrupt_flag_get (uint16_t flag)
rtc interrupt flag get More...
void | rtc_flag_clear (uint16_t flag)
rtc flag clear More...
void | rtc_wait_config_finish (void)
rtc wait configuration finish More...
void | rtc_wait_update_finish (void)
rtc wait update finish More...

Detailed Description

contains all the functions for the rtc firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_rtc.c.


AT32F403 Firmwary Library: at32f403_sdio.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_sdio.c File Reference

contains all the functions for the sdio firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | sdio_reset (sdio_type *sdio_x)
reset the sdio register More...
void | sdio_power_set (sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller More...
sdio_power_state_type | sdio_power_status_get (sdio_type *sdio_x)
get power status. More...
void | sdio_clock_config (sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock More...
void | sdio_bus_width_config (sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width More...
void | sdio_clock_bypass (sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss More...
void | sdio_power_saving_mode_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle. More...
void | sdio_flow_control_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control. More...
void | sdio_clock_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output. More...
void | sdio_dma_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable dma. More...
void | sdio_interrupt_enable (sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt. More...
flag_status | sdio_interrupt_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio interrupt flag. More...
flag_status | sdio_flag_get (sdio_type *sdio_x, uint32_t flag)
get sdio flag. More...
void | sdio_flag_clear (sdio_type *sdio_x, uint32_t flag)
clear sdio flag. More...
void | sdio_command_config (sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command. More...
void | sdio_command_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM). More...
uint8_t | sdio_command_response_get (sdio_type *sdio_x)
get command index of last command for which response received. More...
uint32_t | sdio_response_get (sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command. More...
void | sdio_data_config (sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data. More...
void | sdio_data_state_machine_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM). More...
uint32_t | sdio_data_counter_get (sdio_type *sdio_x)
get the number of remaining data bytes to be transferred. More...
uint32_t | sdio_data_read (sdio_type *sdio_x)
read a word data from sdio fifo. More...
uint32_t | sdio_buffer_counter_get (sdio_type *sdio_x)
get the number of words left to be written to or read from fifo.. More...
void | sdio_data_write (sdio_type *sdio_x, uint32_t data)
write one word data to fifo. More...
void | sdio_read_wait_mode_set (sdio_type *sdio_x, sdio_read_wait_mode_type mode)
set the read wait mode. More...
void | sdio_read_wait_start (sdio_type *sdio_x, confirm_state new_state)
enable or disable to start sd i/o read wait operation. More...
void | sdio_read_wait_stop (sdio_type *sdio_x, confirm_state new_state)
enable or disable to stop sd i/o read wait operation. More...
void | sdio_io_function_enable (sdio_type *sdio_x, confirm_state new_state)
enable or disable the sd i/o function. More...
void | sdio_io_suspend_command_set (sdio_type *sdio_x, confirm_state new_state)
enable or disable sd i/o suspend command sending. More...

Detailed Description

contains all the functions for the sdio firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_sdio.c.


AT32F403 Firmwary Library: at32f403_spi.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_spi.c File Reference

contains all the functions for the spi firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | spi_i2s_reset (spi_type *spi_x)
spi reset by crm reset register More...
void | spi_default_para_init (spi_init_type *spi_init_struct)
spi init config with its default value. More...
void | spi_init (spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value. More...
void | spi_crc_next_transmit (spi_type *spi_x)
spi next transmit crc for the spi peripheral. More...
void | spi_crc_polynomial_set (spi_type *spi_x, uint16_t crc_poly)
set the crc polynomial value for the spi peripheral. More...
uint16_t | spi_crc_polynomial_get (spi_type *spi_x)
return the crc polynomial register value for the spi peripheral. More...
void | spi_crc_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware crc calculation for the spi peripheral. More...
uint16_t | spi_crc_value_get (spi_type *spi_x, spi_crc_direction_type crc_direction)
return the transmit or the receive crc value for the spi peripheral. More...
void | spi_hardware_cs_output_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the hardware cs output for the spi peripheral. More...
void | spi_software_cs_internal_level_set (spi_type *spi_x, spi_software_cs_level_type level)
set the software cs internal level for the spi peripheral. More...
void | spi_frame_bit_num_set (spi_type *spi_x, spi_frame_bit_num_type bit_num)
set the data frame bit num for the spi peripheral. More...
void | spi_half_duplex_direction_set (spi_type *spi_x, spi_half_duplex_direction_type direction)
set the data transmission direction in single line bidirectiona half duplex mode of the spi peripheral. More...
void | spi_enable (spi_type *spi_x, confirm_state new_state)
enable or disable spi. More...
void | i2s_default_para_init (i2s_init_type *i2s_init_struct)
i2s init config with its default value. More...
void | i2s_init (spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value. More...
void | i2s_enable (spi_type *spi_x, confirm_state new_state)
enable or disable i2s. More...
void | spi_i2s_interrupt_enable (spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts. More...
void | spi_i2s_dma_transmitter_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode. More...
void | spi_i2s_dma_receiver_enable (spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode. More...
void | spi_i2s_data_transmit (spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit More...
uint16_t | spi_i2s_data_receive (spi_type *spi_x)
spi/i2s data receive More...
flag_status | spi_i2s_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral. More...
flag_status | spi_i2s_interrupt_flag_get (spi_type *spi_x, uint32_t spi_i2s_flag)
get interrupt flag of the specified spi/i2s peripheral. More...
void | spi_i2s_flag_clear (spi_type *spi_x, uint32_t spi_i2s_flag)
clear flag of the specified spi/i2s peripheral. More...

Detailed Description

contains all the functions for the spi firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_spi.c.


AT32F403 Firmwary Library: at32f403_tmr.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_tmr.c File Reference

contains all the functions for the tmr firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | tmr_reset (tmr_type *tmr_x)
tmr reset by crm reset register More...
void | tmr_counter_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter More...
void | tmr_output_default_para_init (tmr_output_config_type *tmr_output_struct)
init tmr output default para More...
void | tmr_input_default_para_init (tmr_input_config_type *tmr_input_struct)
init tmr input default para More...
void | tmr_brkdt_default_para_init (tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para More...
void | tmr_base_init (tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base More...
void | tmr_clock_source_div_set (tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division More...
void | tmr_cnt_dir_set (tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction More...
void | tmr_repetition_counter_set (tmr_type *tmr_x, uint8_t tmr_rpr_value)
set the repetition counter register(rpr) value More...
void | tmr_counter_value_set (tmr_type *tmr_x, uint32_t tmr_cnt_value)
set tmr counter value More...
uint32_t | tmr_counter_value_get (tmr_type *tmr_x)
get tmr counter value More...
void | tmr_div_value_set (tmr_type *tmr_x, uint32_t tmr_div_value)
set tmr div value More...
uint32_t | tmr_div_value_get (tmr_type *tmr_x)
get tmr div value More...
void | tmr_output_channel_config (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel More...
void | tmr_output_channel_mode_select (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_control_mode_type oc_mode)
select tmr output channel mode More...
void | tmr_period_value_set (tmr_type *tmr_x, uint32_t tmr_pr_value)
set tmr period value More...
uint32_t | tmr_period_value_get (tmr_type *tmr_x)
get tmr period value More...
void | tmr_channel_value_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value More...
uint32_t | tmr_channel_value_get (tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value More...
void | tmr_period_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer More...
void | tmr_output_channel_buffer_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer More...
void | tmr_output_channel_immediately_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel immediately More...
void | tmr_output_channel_switch_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel switch More...
void | tmr_one_cycle_mode_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr one cycle mode More...
void | tmr_32_bit_function_enable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode) More...
void | tmr_overflow_request_source_set (tmr_type *tmr_x, confirm_state new_state)
select tmr the overflow event sources More...
void | tmr_overflow_event_disable (tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr overflow event generation More...
void | tmr_input_channel_init (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel More...
void | tmr_channel_enable (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable More...
void | tmr_input_channel_filter_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint16_t filter_value)
set tmr input channel filter More...
void | tmr_pwm_input_config (tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input More...
void | tmr_channel1_input_select (tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
select tmr channel1 input More...
void | tmr_input_channel_divider_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_channel_input_divider_type divider_factor)
set tmr input channel divider More...
void | tmr_primary_mode_select (tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode More...
void | tmr_sub_mode_select (tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode More...
void | tmr_channel_dma_select (tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select)
select tmr channel dma More...
void | tmr_hall_select (tmr_type *tmr_x, confirm_state new_state)
select tmr hall More...
void | tmr_channel_buffer_enable (tmr_type *tmr_x, confirm_state new_state)
enable tmr channel buffer More...
void | tmr_trigger_input_select (tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger More...
void | tmr_sub_sync_mode_set (tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode More...
void | tmr_dma_request_enable (tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request More...
void | tmr_interrupt_enable (tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt More...
flag_status | tmr_interrupt_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr interrupt flag More...
flag_status | tmr_flag_get (tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag More...
void | tmr_flag_clear (tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag More...
void | tmr_event_sw_trigger (tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event More...
void | tmr_output_enable (tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable More...
void | tmr_internal_clock_set (tmr_type *tmr_x)
set tmr select internal clock More...
void | tmr_output_channel_polarity_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_polarity_active_type oc_polarity)
set tmr output channel polarity More...
void | tmr_external_clock_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock More...
void | tmr_external_clock_mode1_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode1 More...
void | tmr_external_clock_mode2_config (tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode2 More...
void | tmr_encoder_mode_config (tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type ic1_polarity, tmr_input_polarity_type ic2_polarity)
config tmr encoder mode More...
void | tmr_force_output_set (tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_force_output_type force_output)
set tmr force output More...
void | tmr_dma_control_config (tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, tmr_dma_address_type dma_base_address)
config tmr dma control More...
void | tmr_brkdt_config (tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time More...

Detailed Description

contains all the functions for the tmr firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_tmr.c.


AT32F403 Firmwary Library: at32f403_usart.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_usart.c File Reference

contains all the functions for the usart firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | usart_reset (usart_type *usart_x)
deinitialize the usart peripheral registers to their default reset values. More...
void | usart_init (usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters. More...
void | usart_parity_selection_config (usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config. More...
void | usart_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral. More...
void | usart_transmitter_enable (usart_type *usart_x, confirm_state new_state)
usart transmitter enable. More...
void | usart_receiver_enable (usart_type *usart_x, confirm_state new_state)
usart receiver enable. More...
void | usart_clock_config (usart_type *usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
usart clock config. More...
void | usart_clock_enable (usart_type *usart_x, confirm_state new_state)
usart enable the ck pin. More...
void | usart_interrupt_enable (usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts. More...
void | usart_dma_transmitter_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface. More...
void | usart_dma_receiver_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface. More...
void | usart_wakeup_id_set (usart_type *usart_x, uint8_t usart_id)
set the wakeup id of the usart. More...
void | usart_wakeup_mode_set (usart_type *usart_x, usart_wakeup_mode_type wakeup_mode)
select the usart wakeup method in multi-processor communication. More...
void | usart_receiver_mute_enable (usart_type *usart_x, confirm_state new_state)
config the usart in mute mode in multi-processor communication. More...
void | usart_break_bit_num_set (usart_type *usart_x, usart_break_bit_num_type break_bit)
set the usart break frame bit num. More...
void | usart_lin_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart lin mode. More...
void | usart_data_transmit (usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral. More...
uint16_t | usart_data_receive (usart_type *usart_x)
return the most recent received data by the usart peripheral. More...
void | usart_break_send (usart_type *usart_x)
transmit break characters. More...
void | usart_smartcard_guard_time_set (usart_type *usart_x, uint8_t guard_time_val)
config the specified usart smartcard guard time. More...
void | usart_irda_smartcard_division_set (usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division. More...
void | usart_smartcard_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart smart card mode. More...
void | usart_smartcard_nack_set (usart_type *usart_x, confirm_state new_state)
enable or disable nack transmission in smartcard mode. More...
void | usart_single_line_halfduplex_select (usart_type *usart_x, confirm_state new_state)
enable or disable the usart single line bidirectional half-duplex communication. More...
void | usart_irda_mode_enable (usart_type *usart_x, confirm_state new_state)
enable or disable the usart's irda interface. More...
void | usart_irda_low_power_enable (usart_type *usart_x, confirm_state new_state)
configure the usart's irda low power. More...
void | usart_hardware_flow_control_set (usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control. More...
flag_status | usart_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not. More...
flag_status | usart_interrupt_flag_get (usart_type *usart_x, uint32_t flag)
check whether the specified usart interrupt flag is set or not. More...
void | usart_flag_clear (usart_type *usart_x, uint32_t flag)
clear the usart's pending flags. More...

Detailed Description

contains all the functions for the usart firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_usart.c.


AT32F403 Firmwary Library: at32f403_usb.c File Reference

  • libraries
  • drivers
  • src
Macros | Functions | Variables
at32f403_usb.c File Reference

contains the functions for the usb firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Macros

#define USB_ENDP_DESC_TABLE_OFFSET 0x40
usb packet buffer start address More...

Functions

void | usb_dev_init (usbd_type *usbx)
initialize usb peripheral controller register More...
void | usb_connect (usbd_type *usbx)
connect usb device More...
void | usb_disconnect (usbd_type *usbx)
disconnect usb device More...
void | usb_usbbufs_enable (usbd_type *usbx, confirm_state state)
mapping usb packet buffer area two mapping intervals are available for packet buffer area, and are select by the usbbufs in the crm misc1 register. when usbbufs is 0,sram size is 512 bytes, packet buffer start address is 0x40006000.when usbbufs is 1, sram size is fixed to 768 bytes, and the packet buffer start address is fixed to 0x40007800, usb packet buffer can be set to the maximum of 768 bytes. More...
void | usb_ept_open (usbd_type *usbx, usb_ept_info *ept_info)
open usb endpoint More...
void | usb_ept_close (usbd_type *usbx, usb_ept_info *ept_info)
close usb endpoint More...
void | usb_write_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
write data from user memory to usb buffer More...
void | usb_read_packet (uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
read data from usb buffer to user buffer More...
void | usb_interrupt_enable (usbd_type *usbx, uint16_t interrupt, confirm_state new_state)
usb interrupt enable More...
void | usb_set_address (usbd_type *usbx, uint8_t address)
set the host assignment address More...
void | usb_ept_stall (usbd_type *usbx, usb_ept_info *ept_info)
set endpoint tx or rx status to stall More...
void | usb_enter_suspend (usbd_type *usbx)
usb device enter suspend mode More...
void | usb_exit_suspend (usbd_type *usbx)
usb device exit suspend mode More...
void | usb_remote_wkup_set (usbd_type *usbx)
usb remote wakeup set More...
void | usb_remote_wkup_clear (usbd_type *usbx)
usb remote wakeup clear More...
uint16_t | usb_buffer_malloc (uint16_t maxpacket)
usb auto malloc endpoint buffer More...
void | usb_buffer_free (void)
free usb endpoint buffer More...
flag_status | usb_flag_get (usbd_type *usbx, uint16_t flag)
get flag of usb. More...
flag_status | usb_interrupt_flag_get (usbd_type *usbx, uint16_t flag)
get interrupt flag of usb. More...
void | usb_flag_clear (usbd_type *usbx, uint16_t flag)
clear flag of usb. More...

Variables

uint32_t | g_usb_packet_address = 0x40006000
static uint16_t | g_usb_offset_addr = 0x40

Detailed Description

contains the functions for the usb firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_usb.c.


AT32F403 Firmwary Library: at32f403_wdt.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_wdt.c File Reference

contains all the functions for the wdt firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | wdt_enable (void)
wdt enable ,the reload value will be sent to the counter More...
void | wdt_counter_reload (void)
reload wdt counter More...
void | wdt_reload_value_set (uint16_t reload_value)
set wdt counter reload value More...
void | wdt_divider_set (wdt_division_type division)
set wdt division divider More...
void | wdt_register_write_enable (confirm_state new_state)
enable or disable wdt cmd register write More...
flag_status | wdt_flag_get (uint16_t wdt_flag)
get wdt flag More...

Detailed Description

contains all the functions for the wdt firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_wdt.c.


AT32F403 Firmwary Library: at32f403_wwdt.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_wwdt.c File Reference

contains all the functions for the wwdt firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | wwdt_reset (void)
wwdt reset by crm reset register More...
void | wwdt_divider_set (wwdt_division_type division)
wwdt division set More...
void | wwdt_flag_clear (void)
wwdt reload counter interrupt flag clear More...
void | wwdt_enable (uint8_t wwdt_cnt)
wwdt enable and the counter value load More...
void | wwdt_interrupt_enable (void)
wwdt reload counter interrupt enable More...
flag_status | wwdt_flag_get (void)
wwdt reload counter interrupt flag get More...
flag_status | wwdt_interrupt_flag_get (void)
wwdt reload counter interrupt flag get More...
void | wwdt_counter_set (uint8_t wwdt_cnt)
wwdt counter value set More...
void | wwdt_window_counter_set (uint8_t window_cnt)
wwdt window counter value set More...

Detailed Description

contains all the functions for the wwdt firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_wwdt.c.


AT32F403 Firmwary Library: at32f403_xmc.c File Reference

  • libraries
  • drivers
  • src
Functions
at32f403_xmc.c File Reference

contains all the functions for the xmc firmware library More...

#include "at32f403_conf.h"

Go to the source code of this file.

Functions

void | xmc_nor_sram_reset (xmc_nor_sram_subbank_type xmc_subbank)
xmc nor or sram registers reset More...
void | xmc_nor_sram_init (xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct. More...
void | xmc_nor_sram_timing_config (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct and xmc_w_timing_struct. More...
void | xmc_norsram_default_para_init (xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value. More...
void | xmc_norsram_timing_default_para_init (xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value. More...
void | xmc_nor_sram_enable (xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank. More...
void | xmc_ext_timing_config (volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase. More...
void | xmc_nand_reset (xmc_class_bank_type xmc_bank)
xmc nand flash registers reset More...
void | xmc_nand_init (xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_timing_config (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct. More...
void | xmc_nand_default_para_init (xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value. More...
void | xmc_nand_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default value. More...
void | xmc_nand_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank. More...
void | xmc_nand_ecc_enable (xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature. More...
uint32_t | xmc_ecc_get (xmc_class_bank_type xmc_bank)
return the error correction code register value. More...
void | xmc_interrupt_enable (xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state)
enable or disable the specified xmc interrupts. More...
flag_status | xmc_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc flag is set or not. More...
flag_status | xmc_interrupt_flag_status_get (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc interrupt flag is set or not. More...
void | xmc_flag_clear (xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
clear the xmc's pending flags. More...
void | xmc_pccard_reset (void)
xmc pc card registers reset More...
void | xmc_pccard_init (xmc_pccard_init_type *xmc_pccard_init_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct. More...
void | xmc_pccard_timing_config (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct. More...
void | xmc_pccard_default_para_init (xmc_pccard_init_type *xmc_pccard_init_struct)
fill each xmc_pccard_init_struct member with its default value. More...
void | xmc_pccard_timing_default_para_init (xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struct member with its default value. More...
void | xmc_pccard_enable (confirm_state new_state)
enable or disable the pccard memory bank. More...

Detailed Description

contains all the functions for the xmc firmware library

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_xmc.c.


AT32F403 Firmwary Library: main_page.h File Reference

  • main_page
main_page.h File Reference

Go to the source code of this file.


AT32F403 Firmwary Library: i2c_application.c File Reference

  • middlewares
  • i2c_application_library
Macros | Functions
i2c_application.c File Reference

the driver library of the i2c peripheral More...

#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | DMA_GET_TC_FLAG(DMA_CHANNEL)
get the dma transfer complete flag through the channel More...
#define | DMA_GET_HT_FLAG(DMA_CHANNEL)
get the dma half transfer flag through the channel More...
#define | DMA_GET_TERR_FLAG(DMA_CHANNEL)
get the dma transfer error flag through the channel More...
#define | I2C_START 0
i2c transmission status More...
#define | I2C_END 1

Functions

__WEAK void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | i2c_config (i2c_handle_type *hi2c)
i2c peripheral initialization. More...
i2c_status_type | i2c_wait_end (i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end. More...
i2c_status_type | i2c_wait_flag (i2c_handle_type *hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout)
wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are waiting to be set More...
void | i2c_dma_config (i2c_handle_type *hi2c, dma_channel_type *dma_channelx, uint8_t *pdata, uint16_t size)
dma transfer cofiguration. More...
i2c_status_type | i2c_master_write_addr (i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
send address in master transmits mode. More...
i2c_status_type | i2c_master_read_addr (i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
send address in master receive mode. More...
i2c_status_type | i2c_master_transmit (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode. More...
i2c_status_type | i2c_slave_receive (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through polling mode. More...
i2c_status_type | i2c_master_receive (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through polling mode. More...
i2c_status_type | i2c_slave_transmit (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through polling mode. More...
i2c_status_type | i2c_master_transmit_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through interrupt mode. More...
i2c_status_type | i2c_slave_receive_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through interrupt mode. More...
i2c_status_type | i2c_master_receive_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through interrupt mode. More...
i2c_status_type | i2c_slave_transmit_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through interrupt mode. More...
i2c_status_type | i2c_master_transmit_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through dma mode. More...
i2c_status_type | i2c_slave_receive_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through dma mode. More...
i2c_status_type | i2c_master_receive_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through dma mode. More...
i2c_status_type | i2c_slave_transmit_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through dma mode. More...
i2c_status_type | i2c_memory_address_send (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t mem_address, int32_t timeout)
send memory address. More...
i2c_status_type | i2c_memory_write (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through polling mode. More...
i2c_status_type | i2c_memory_read (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
i2c_status_type | i2c_memory_write_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through interrupt mode. More...
i2c_status_type | i2c_memory_read_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through interrupt mode. More...
i2c_status_type | i2c_memory_write_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through dma mode. More...
i2c_status_type | i2c_memory_read_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
void | i2c_master_tx_isr_int (i2c_handle_type *hi2c)
master transfer mode interrupt procession function More...
void | i2c_master_rx_isr_int (i2c_handle_type *hi2c)
master receive mode interrupt procession function More...
void | i2c_slave_tx_isr_int (i2c_handle_type *hi2c)
slave transfer mode interrupt procession function More...
void | i2c_slave_rx_isr_int (i2c_handle_type *hi2c)
slave receive mode interrupt procession function More...
void | i2c_master_tx_isr_dma (i2c_handle_type *hi2c)
master interrupt processing function in dma mode. More...
void | i2c_slave_tx_rx_isr_dma (i2c_handle_type *hi2c)
slave interrupt processing function in dma mode. More...
void | i2c_evt_irq_handler (i2c_handle_type *hi2c)
interrupt procession function. More...
void | i2c_dma_tx_irq_handler (i2c_handle_type *hi2c)
dma transmission complete interrupt function. More...
void | i2c_dma_rx_irq_handler (i2c_handle_type *hi2c)
dma reveive complete interrupt function. More...
void | i2c_err_irq_handler (i2c_handle_type *hi2c)
i2c error interrupt function. More...

Detailed Description

the driver library of the i2c peripheral

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file i2c_application.c.


AT32F403 Firmwary Library: i2c_application.h File Reference

  • middlewares
  • i2c_application_library
Data Structures | Macros | Enumerations | Functions
i2c_application.h File Reference

i2c application libray header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct i2c_handle_type

Macros

#define | I2C_EVENT_CHECK_NONE ((uint32_t)0x00000000)
#define | I2C_EVENT_CHECK_ACKFAIL ((uint32_t)0x00000001)
#define | I2C_EVENT_CHECK_STOP ((uint32_t)0x00000002)

Enumerations

enum i2c_mem_address_width_type { I2C_MEM_ADDR_WIDIH_8 = 0x01 , I2C_MEM_ADDR_WIDIH_16 = 0x02 }
enum i2c_mode_type {
I2C_INT_MA_TX = 0 , I2C_INT_MA_RX , I2C_INT_SLA_TX , I2C_INT_SLA_RX ,
I2C_DMA_MA_TX , I2C_DMA_MA_RX , I2C_DMA_SLA_TX , I2C_DMA_SLA_RX
}
enum i2c_status_type {
I2C_OK = 0 , I2C_ERR_STEP_1 , I2C_ERR_STEP_2 , I2C_ERR_STEP_3 ,
I2C_ERR_STEP_4 , I2C_ERR_STEP_5 , I2C_ERR_STEP_6 , I2C_ERR_STEP_7 ,
I2C_ERR_STEP_8 , I2C_ERR_STEP_9 , I2C_ERR_STEP_10 , I2C_ERR_STEP_11 ,
I2C_ERR_STEP_12 , I2C_ERR_START , I2C_ERR_ADDR10 , I2C_ERR_ADDR ,
I2C_ERR_STOP , I2C_ERR_ACKFAIL , I2C_ERR_TIMEOUT , I2C_ERR_INTERRUPT
}

Functions

void | i2c_config (i2c_handle_type *hi2c)
i2c peripheral initialization. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
i2c_status_type | i2c_wait_end (i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end. More...
i2c_status_type | i2c_wait_flag (i2c_handle_type *hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout)
wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are waiting to be set More...
i2c_status_type | i2c_master_transmit (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode. More...
i2c_status_type | i2c_master_receive (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through polling mode. More...
i2c_status_type | i2c_slave_transmit (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through polling mode. More...
i2c_status_type | i2c_slave_receive (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through polling mode. More...
i2c_status_type | i2c_master_transmit_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through interrupt mode. More...
i2c_status_type | i2c_master_receive_int (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through interrupt mode. More...
i2c_status_type | i2c_slave_transmit_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through interrupt mode. More...
i2c_status_type | i2c_slave_receive_int (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through interrupt mode. More...
i2c_status_type | i2c_master_transmit_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through dma mode. More...
i2c_status_type | i2c_master_receive_dma (i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through dma mode. More...
i2c_status_type | i2c_slave_transmit_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through dma mode. More...
i2c_status_type | i2c_slave_receive_dma (i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through dma mode. More...
i2c_status_type | i2c_memory_write (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through polling mode. More...
i2c_status_type | i2c_memory_write_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through interrupt mode. More...
i2c_status_type | i2c_memory_write_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through dma mode. More...
i2c_status_type | i2c_memory_read (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
i2c_status_type | i2c_memory_read_int (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through interrupt mode. More...
i2c_status_type | i2c_memory_read_dma (i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode. More...
void | i2c_evt_irq_handler (i2c_handle_type *hi2c)
interrupt procession function. More...
void | i2c_err_irq_handler (i2c_handle_type *hi2c)
i2c error interrupt function. More...
void | i2c_dma_tx_irq_handler (i2c_handle_type *hi2c)
dma transmission complete interrupt function. More...
void | i2c_dma_rx_irq_handler (i2c_handle_type *hi2c)
dma reveive complete interrupt function. More...

Detailed Description

i2c application libray header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file i2c_application.h.


AT32F403 Firmwary Library: audio_class.c File Reference

  • middlewares
  • usbd_class
  • audio
Functions | Variables
audio_class.c File Reference

usb audio class type More...

#include "usbd_core.h"
#include "audio_class.h"
#include "audio_desc.h"
#include "audio_codec.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
static void | audio_req_get_cur (void *udev, usb_setup_type *setup)
usb audio request get cur More...
static void | audio_req_set_cur (void *udev, usb_setup_type *setup)
usb audio request set cur More...
static void | audio_req_get_min (void *udev, usb_setup_type *setup)
usb audio request get min More...
static void | audio_req_get_max (void *udev, usb_setup_type *setup)
usb audio request get max More...
static void | audio_req_get_res (void *udev, usb_setup_type *setup)
usb audio request get res More...
static void | audio_get_interface (void *udev, usb_setup_type *setup)
usb audio get interface More...
static void | audio_set_interface (void *udev, usb_setup_type *setup)
usb audio set interface More...

Variables

usb_audio_type audio_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0}
usbd_class_handler audio_class_handler

Detailed Description

usb audio class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio_class.c.


AT32F403 Firmwary Library: audio_class.h File Reference

  • middlewares
  • usbd_class
  • audio
Data Structures | Macros | Variables
audio_class.h File Reference

usb audio class file More...

#include "usb_std.h"
#include "usbd_core.h"
#include "audio_conf.h"

Go to the source code of this file.

Data Structures

struct usb_audio_type
usb audio control struct More...

Macros

#define | USBD_AUDIO_MIC_IN_EPT 0x81
endpoint define More...
#define | USBD_AUDIO_SPK_OUT_EPT 0x02
#define | USBD_AUDIO_FEEDBACK_EPT 0x83
#define | AUDIO_REMAIN_SIZE 40
endpoint support max size More...
#define | AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3
#define | FEEDBACK_REFRESH_TIME 0x8
#define | AUDIO_REQ_CONTROL_INTERFACE 0x01
request type define More...
#define | AUDIO_REQ_CONTROL_ENDPOINT 0x02
#define | AUDIO_REQ_CONTROL_MASK 0x03
#define | AUDIO_MUTE_CONTROL 0x01
audio set cur type define More...
#define | AUDIO_VOLUME_CONTROL 0x02
#define | AUDIO_FREQ_SET_CONTROL 0x03
#define | AUDIO_DESCRIPTOR_TYPE 0x21
audio descriptor type More...
#define | AUDIO_DESCRIPTOR_SIZE 0x09

Variables

usbd_class_handler audio_class_handler

Detailed Description

usb audio class file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio_class.h.


AT32F403 Firmwary Library: audio_conf.h File Reference

  • middlewares
  • usbd_class
  • audio
Macros
audio/audio_conf.h File Reference

usb audio config More...

Go to the source code of this file.

Macros

#define | AUDIO_SUPPORT_SPK 1
#define | AUDIO_SUPPORT_MIC 1
#define | AUDIO_SUPPORT_FEEDBACK 1
#define | AUDIO_SUPPORT_FREQ_16K 1
#define | AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/
#define | AUDIO_SUPPORT_FREQ
#define | AUDIO_FREQ_16K 16000
#define | AUDIO_FREQ_48K 48000 /*usb fifo not support*/
#define | AUDIO_BITW_16 16
#define | AUDIO_MIC_CHANEL_NUM 2
#define | AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SPK_CHANEL_NUM 2
#define | AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SUPPORT_MAX_FREQ 16
#define | AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K
#define | AUDIO_DEFAULT_BITW AUDIO_BITW_16

Detailed Description

usb audio config

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio/audio_conf.h.


AT32F403 Firmwary Library: audio_conf.h File Reference

  • middlewares
  • usbd_class
  • audio_hid
Macros
audio_hid/audio_conf.h File Reference

usb audio config More...

Go to the source code of this file.

Macros

#define | AUDIO_SUPPORT_SPK 1
#define | AUDIO_SUPPORT_MIC 1
#define | AUDIO_SUPPORT_FEEDBACK 1
#define | AUDIO_SUPPORT_FREQ_16K 1
#define | AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/
#define | AUDIO_SUPPORT_FREQ
#define | AUDIO_FREQ_16K 16000
#define | AUDIO_FREQ_48K 48000 /*usb fifo not support*/
#define | AUDIO_BITW_16 16
#define | AUDIO_MIC_CHANEL_NUM 2
#define | AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SPK_CHANEL_NUM 2
#define | AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16
#define | AUDIO_SUPPORT_MAX_FREQ 16
#define | AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K
#define | AUDIO_DEFAULT_BITW AUDIO_BITW_16

Detailed Description

usb audio config

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio_hid/audio_conf.h.


AT32F403 Firmwary Library: audio_desc.c File Reference

  • middlewares
  • usbd_class
  • audio
Functions | Variables
audio_desc.c File Reference

usb audio device descriptor More...

#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "audio_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler audio_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb audio device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio_desc.c.


AT32F403 Firmwary Library: audio_desc.h File Reference

  • middlewares
  • usbd_class
  • audio
Macros | Variables
audio_desc.h File Reference

usb audio descriptor header file More...

#include "audio_class.h"
#include "usbd_core.h"
#include "audio_conf.h"

Go to the source code of this file.

Macros

#define | AUDIO_BCD_NUM 0x0100
#define | USBD_AUDIO_VENDOR_ID 0x2E3C
#define | USBD_AUDIO_PRODUCT_ID 0x5730
#define | USBD_AUDIO_SIZ_STRING_LANGID 4
#define | USBD_AUDIO_SIZ_STRING_SERIAL 0x1A
#define | USBD_AUDIO_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_AUDIO_DESC_PRODUCT_STRING "AT32 Audio"
#define | USBD_AUDIO_DESC_CONFIGURATION_STRING "Audio Config"
#define | USBD_AUDIO_DESC_INTERFACE_STRING "Audio Interface"
#define | AUDIO_SUBCLASS_UNDEFINED 0x00
audio interface subclass codes More...
#define | AUDIO_SUBCLASS_AUDIOCONTROL 0x01
#define | AUDIO_SUBCLASS_AUDIOSTREAMING 0x02
#define | AUDIO_SUBCLASS_MIDISTREMING 0x03
#define | AUDIO_CS_INTERFACE 0x24
audio class-specific descriptor types More...
#define | AUDIO_CS_ENDPOINT 0x25
#define | AUDIO_CS_STRING 0x23
#define | AUDIO_CS_CONFIGURATION 0x22
#define | AUDIO_CS_DEVICE 0x21
#define | AUDIO_CS_UNDEFINED 0x20
#define | AUDIO_PROTOCOL_UNDEFINED 0x00
audio interface protocol codes More...
#define | AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00
audio class-specific ac interface descriptor subtypes More...
#define | AUDIO_AC_HEADER 0x01
#define | AUDIO_AC_INPUT_TERMINAL 0x02
#define | AUDIO_AC_OUTPUT_TERMINAL 0x03
#define | AUDIO_AC_MIXER_UNIT 0x04
#define | AUDIO_AC_SELECTOR_UNIT 0x05
#define | AUDIO_AC_FEATURE_UNIT 0x06
#define | AUDIO_AC_PROCESSING_UNIT 0x07
#define | AUDIO_AC_EXTENSION_UNIT 0x08
#define | AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00
audio class-specific as interface descriptor subtypes More...
#define | AUDIO_AS_GENERAL 0x01
#define | AUDIO_AS_FORMAT_TYPE 0x02
#define | AUDIO_AS_FORMAT_SPECIFIC 0x03
#define | AUDIO_REQUEST_CODE_UNDEFINED 0x00
audio class-specific request codes More...
#define | AUDIO_REQ_SET_CUR 0x01
#define | AUDIO_REQ_GET_CUR 0x81
#define | AUDIO_REQ_SET_MIN 0x02
#define | AUDIO_REQ_GET_MIN 0x82
#define | AUDIO_REQ_SET_MAX 0x03
#define | AUDIO_REQ_GET_MAX 0x83
#define | AUDIO_REQ_SET_RES 0x04
#define | AUDIO_REQ_GET_RES 0x84
#define | AUDIO_REQ_SET_MEM 0x05
#define | AUDIO_REQ_GET_MEM 0x85
#define | AUDIO_REQ_GET_STAT 0xFF
#define | AUDIO_FU_CONTROL_UNDEFINED 0x00
audio feature unit control selectors More...
#define | AUDIO_FU_MUTE_CONTROL 0x01
#define | AUDIO_FU_VOLUME_CONTROL 0x02
#define | AUDIO_FU_BASS_CONTROL 0x03
#define | AUDIO_FU_MID_CONTROL 0x04
#define | AUDIO_FU_TREBLE_CONTROL 0x05
#define | AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100
audio terminal type More...
#define | AUDIO_TERMINAL_TYPE_STREAMING 0x0101
#define | AUDIO_TERMINAL_TYPE_VENDOR 0x01FF
#define | AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200
#define | AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201
#define | AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300
#define | AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301
#define | AUDIO_FORMAT_TYPE_I 0x01
audio format type 1 More...
#define | AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)
audio interface config More...
#define | AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)
#define | AUDIO_MIC_INTERFACE 0x01
#define | AUDIO_SPK_INTERFACE 0x02
#define | AUDIO_INPUT_TERMINAL_SIZE 0x0C
audio interface descriptor size define More...
#define | AUDIO_OUTPUT_TERMINAL_SIZE 0x09
#define | AUDIO_FEATURE_UNIT_SIZE 0x0D
#define | AUDIO_MIC_INPUT_TERMINAL_ID 0x01
audio terminal id define More...
#define | AUDIO_MIC_FEATURE_UNIT_ID 0x02
#define | AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03
#define | AUDIO_SPK_INPUT_TERMINAL_ID 0x04
#define | AUDIO_SPK_FEATURE_UNIT_ID 0x05
#define | AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06
#define | AUDIO_MIC_INTERFACE_NUMBER 0x01
audio interface number More...
#define | AUDIO_SPK_INTERFACE_NUMBER 0x02
#define | AT32_AUDIO_FREQ_16K 16000
audio support freq More...
#define | AT32_AUDIO_FREQ_48K 48000
#define | AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio microphone freq and channel config More...
#define | AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM
#define | AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)
#define | AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio speaker freq and channel config More...
#define | AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM
#define | AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)
#define | AUDIO_BINTERVAL_TIME 0x01
#define | USBD_AUDIO_CONFIG_DESC_SIZE
#define | SAMPLE_FREQ(frq) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler audio_desc_handler
device descriptor handler structure More...

Detailed Description

usb audio descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio_desc.h.


AT32F403 Firmwary Library: audio_hid_class.c File Reference

  • middlewares
  • usbd_class
  • audio_hid
Functions | Variables
audio_hid_class.c File Reference
#include "usbd_core.h"
#include "audio_hid_class.h"
#include "audio_hid_desc.h"
#include "audio_codec.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
static void | audio_req_get_cur (void *udev, usb_setup_type *setup)
usb audio request get cur More...
static void | audio_req_set_cur (void *udev, usb_setup_type *setup)
usb audio request set cur More...
static void | audio_req_get_min (void *udev, usb_setup_type *setup)
usb audio request get min More...
static void | audio_req_get_max (void *udev, usb_setup_type *setup)
usb audio request get max More...
static void | audio_req_get_res (void *udev, usb_setup_type *setup)
usb audio request get res More...
static void | audio_get_interface (void *udev, usb_setup_type *setup)
usb audio get interface More...
static void | audio_set_interface (void *udev, usb_setup_type *setup)
usb audio set interface More...
static void | usb_hid_buf_process (void *udev, uint8_t *report, uint16_t len)
usb device report function More...
usb_sts_type | class_audio_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
usb_sts_type | class_hid_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
usb_sts_type | audio_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

usb_audio_hid_type audio_hid_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0}
usbd_class_handler audio_hid_class_handler


AT32F403 Firmwary Library: audio_hid_class.h File Reference

  • middlewares
  • usbd_class
  • audio_hid
Data Structures | Macros | Functions | Variables
audio_hid_class.h File Reference
#include "usb_std.h"
#include "usbd_core.h"
#include "audio_conf.h"

Go to the source code of this file.

Data Structures

struct usb_audio_hid_type
usb audio control struct More...

Macros

#define | USBD_AUHID_AUDIO_MIC_IN_EPT 0x81
endpoint define More...
#define | USBD_AUHID_AUDIO_SPK_OUT_EPT 0x02
#define | USBD_AUHID_AUDIO_FEEDBACK_EPT 0x83
#define | USBD_AUHID_HID_IN_EPT 0x84
usb custom hid use endpoint define More...
#define | USBD_AUHID_HID_OUT_EPT 0x05
#define | USBD_AUHID_IN_MAXPACKET_SIZE 0x40
usb custom hid in and out max packet size define More...
#define | USBD_AUHID_OUT_MAXPACKET_SIZE 0x40
#define | AUDIO_REMAIN_SIZE 40
endpoint support max size More...
#define | AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
#define | AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3
#define | FEEDBACK_REFRESH_TIME 0x8
#define | AUDIO_REQ_CONTROL_INTERFACE 0x01
request type define More...
#define | AUDIO_REQ_CONTROL_ENDPOINT 0x02
#define | AUDIO_REQ_CONTROL_MASK 0x03
#define | AUDIO_MUTE_CONTROL 0x01
audio set cur type define More...
#define | AUDIO_VOLUME_CONTROL 0x02
#define | AUDIO_FREQ_SET_CONTROL 0x03
#define | AUDIO_MUTE_CONTROL 0x01
audio set cur type define More...
#define | AUDIO_VOLUME_CONTROL 0x02
#define | AUDIO_FREQ_SET_CONTROL 0x03
#define | AUDIO_DESCRIPTOR_TYPE 0x21
audio descriptor type More...
#define | AUDIO_DESCRIPTOR_SIZE 0x09

Functions

usb_sts_type audio_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

usbd_class_handler audio_hid_class_handler


AT32F403 Firmwary Library: audio_hid_desc.c File Reference

  • middlewares
  • usbd_class
  • audio_hid
Functions | Variables
audio_hid_desc.c File Reference
#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "audio_hid_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler audio_hid_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc


AT32F403 Firmwary Library: audio_hid_desc.h File Reference

  • middlewares
  • usbd_class
  • audio_hid
Macros | Variables
audio_hid_desc.h File Reference
#include "audio_hid_class.h"
#include "usbd_core.h"
#include "audio_conf.h"

Go to the source code of this file.

Macros

#define | AUHID_BCD_NUM 0x0100
#define | USBD_AUHID_VENDOR_ID 0x2E3C
#define | USBD_AUHID_PRODUCT_ID 0x5555
#define | USBD_AUHID_SIZ_STRING_LANGID 4
#define | USBD_AUHID_SIZ_STRING_SERIAL 0x1A
#define | USBD_AUHID_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_AUHID_DESC_PRODUCT_STRING "AT32 Audio"
#define | USBD_AUHID_DESC_CONFIGURATION_STRING "Audio Config"
#define | USBD_AUHID_DESC_INTERFACE_STRING "Audio Interface"
#define | AUDIO_SUBCLASS_UNDEFINED 0x00
audio interface subclass codes More...
#define | AUDIO_SUBCLASS_AUDIOCONTROL 0x01
#define | AUDIO_SUBCLASS_AUDIOSTREAMING 0x02
#define | AUDIO_SUBCLASS_MIDISTREMING 0x03
#define | AUDIO_CS_INTERFACE 0x24
audio class-specific descriptor types More...
#define | AUDIO_CS_ENDPOINT 0x25
#define | AUDIO_CS_STRING 0x23
#define | AUDIO_CS_CONFIGURATION 0x22
#define | AUDIO_CS_DEVICE 0x21
#define | AUDIO_CS_UNDEFINED 0x20
#define | AUDIO_PROTOCOL_UNDEFINED 0x00
audio interface protocol codes More...
#define | AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00
audio class-specific ac interface descriptor subtypes More...
#define | AUDIO_AC_HEADER 0x01
#define | AUDIO_AC_INPUT_TERMINAL 0x02
#define | AUDIO_AC_OUTPUT_TERMINAL 0x03
#define | AUDIO_AC_MIXER_UNIT 0x04
#define | AUDIO_AC_SELECTOR_UNIT 0x05
#define | AUDIO_AC_FEATURE_UNIT 0x06
#define | AUDIO_AC_PROCESSING_UNIT 0x07
#define | AUDIO_AC_EXTENSION_UNIT 0x08
#define | AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00
audio class-specific as interface descriptor subtypes More...
#define | AUDIO_AS_GENERAL 0x01
#define | AUDIO_AS_FORMAT_TYPE 0x02
#define | AUDIO_AS_FORMAT_SPECIFIC 0x03
#define | AUDIO_REQUEST_CODE_UNDEFINED 0x00
audio class-specific request codes More...
#define | AUDIO_REQ_SET_CUR 0x01
#define | AUDIO_REQ_GET_CUR 0x81
#define | AUDIO_REQ_SET_MIN 0x02
#define | AUDIO_REQ_GET_MIN 0x82
#define | AUDIO_REQ_SET_MAX 0x03
#define | AUDIO_REQ_GET_MAX 0x83
#define | AUDIO_REQ_SET_RES 0x04
#define | AUDIO_REQ_GET_RES 0x84
#define | AUDIO_REQ_SET_MEM 0x05
#define | AUDIO_REQ_GET_MEM 0x85
#define | AUDIO_REQ_GET_STAT 0xFF
#define | AUDIO_FU_CONTROL_UNDEFINED 0x00
audio feature unit control selectors More...
#define | AUDIO_FU_MUTE_CONTROL 0x01
#define | AUDIO_FU_VOLUME_CONTROL 0x02
#define | AUDIO_FU_BASS_CONTROL 0x03
#define | AUDIO_FU_MID_CONTROL 0x04
#define | AUDIO_FU_TREBLE_CONTROL 0x05
#define | AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100
audio terminal type More...
#define | AUDIO_TERMINAL_TYPE_STREAMING 0x0101
#define | AUDIO_TERMINAL_TYPE_VENDOR 0x01FF
#define | AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200
#define | AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201
#define | AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300
#define | AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301
#define | AUDIO_FORMAT_TYPE_I 0x01
audio format type 1 More...
#define | AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)
audio interface config More...
#define | AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)
#define | AUDIO_MIC_INTERFACE 0x01
#define | AUDIO_SPK_INTERFACE 0x02
#define | AUDIO_INPUT_TERMINAL_SIZE 0x0C
audio interface descriptor size define More...
#define | AUDIO_OUTPUT_TERMINAL_SIZE 0x09
#define | AUDIO_FEATURE_UNIT_SIZE 0x0D
#define | AUDIO_MIC_INPUT_TERMINAL_ID 0x01
audio terminal id define More...
#define | AUDIO_MIC_FEATURE_UNIT_ID 0x02
#define | AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03
#define | AUDIO_SPK_INPUT_TERMINAL_ID 0x04
#define | AUDIO_SPK_FEATURE_UNIT_ID 0x05
#define | AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06
#define | AUDIO_MIC_INTERFACE_NUMBER 0x01
audio interface number More...
#define | AUDIO_SPK_INTERFACE_NUMBER 0x02
#define | HID_INTERFACE_NUMBER 0x03
#define | AT32_AUDIO_FREQ_16K 16000
audio support freq More...
#define | AT32_AUDIO_FREQ_48K 48000
#define | AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio microphone freq and channel config More...
#define | AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM
#define | AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)
#define | AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
audio speaker freq and channel config More...
#define | AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM
#define | AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)
#define | AUHID_HID_BINTERVAL_TIME 0x01
#define | AUHID_HID_BCD_NUM 0x0110
usb bcd number define More...
#define | HID_CLASS_DESC_HID 0x21
usb hid class descriptor define More...
#define | HID_CLASS_DESC_REPORT 0x22
#define | HID_CLASS_DESC_PHYSICAL 0x23
#define | HID_REPORT_ID_1 0x01
usb hid report id define More...
#define | HID_REPORT_ID_2 0x02
#define | HID_REPORT_ID_3 0x03
#define | HID_REPORT_ID_4 0x04
#define | HID_REPORT_ID_5 0x05
#define | HID_REPORT_ID_6 0xF0
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)
#define | SAMPLE_FREQ(frq) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))
#define | USBD_AUHID_HID_SIZ_REPORT_DESC 126
#define | USBD_AUHID_HID_DESC_SIZE 32
#define | USBD_AUHID_CONFIG_DESC_SIZE

Variables

uint8_t | g_usbd_audio_hid_report [126]
usb hid report descriptor More...
uint8_t | g_audio_hid_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler audio_hid_desc_handler
device descriptor handler structure More...


AT32F403 Firmwary Library: cdc_class.c File Reference

  • middlewares
  • usbd_class
  • cdc
Functions | Variables
cdc_class.c File Reference

usb cdc class type More...

#include "usbd_core.h"
#include "cdc_class.h"
#include "cdc_desc.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
static usb_sts_type | cdc_struct_init (cdc_struct_type *pcdc)
usb device cdc init More...
void | usb_usart_config (linecoding_type linecoding)
this function handles usart2 and linecoding config. More...
static void | usb_vcp_cmd_process (void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device class request function More...
uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

linecoding_type linecoding
cdc_struct_type cdc_struct
usbd_class_handler cdc_class_handler

Detailed Description

usb cdc class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_class.c.


AT32F403 Firmwary Library: cdc_class.h File Reference

  • middlewares
  • usbd_class
  • cdc
Data Structures | Macros | Functions | Variables
cdc_class.h File Reference

usb cdc class file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct cdc_struct_type
usb cdc class struct More...

Macros

#define | USBD_CDC_INT_EPT 0x82
usb cdc use endpoint define More...
#define | USBD_CDC_BULK_IN_EPT 0x81
#define | USBD_CDC_BULK_OUT_EPT 0x01
#define | USBD_CDC_IN_MAXPACKET_SIZE 0x40
usb cdc in and out max packet size define More...
#define | USBD_CDC_OUT_MAXPACKET_SIZE 0x40
#define | USBD_CDC_CMD_MAXPACKET_SIZE 0x08

Functions

uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

usbd_class_handler cdc_class_handler

Detailed Description

usb cdc class file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_class.h.


AT32F403 Firmwary Library: cdc_desc.c File Reference

  • middlewares
  • usbd_class
  • cdc
Functions | Variables
cdc_desc.c File Reference

usb cdc device descriptor More...

#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "cdc_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler cdc_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb cdc device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_desc.c.


AT32F403 Firmwary Library: cdc_desc.h File Reference

  • middlewares
  • usbd_class
  • cdc
Macros | Variables
cdc_desc.h File Reference

usb cdc descriptor header file More...

#include "cdc_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | CDC_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_CDC_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_CDC_PRODUCT_ID 0x5740
#define | USBD_CDC_CONFIG_DESC_SIZE 67
usb descriptor size define More...
#define | USBD_CDC_SIZ_STRING_LANGID 4
#define | USBD_CDC_SIZ_STRING_SERIAL 0x1A
#define | USBD_CDC_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_CDC_DESC_PRODUCT_STRING "AT32 Virtual Com Port "
#define | USBD_CDC_DESC_CONFIGURATION_STRING "Virtual ComPort Config"
#define | USBD_CDC_DESC_INTERFACE_STRING "Virtual ComPort Interface"
#define | CDC_HID_BINTERVAL_TIME 0xFF
usb endpoint interval define More...
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler cdc_desc_handler
device descriptor handler structure More...

Detailed Description

usb cdc descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_desc.h.


AT32F403 Firmwary Library: cdc_keyboard_class.c File Reference

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
Macros | Functions | Variables
cdc_keyboard_class.c File Reference

usb cdc and keyboard class type More...

#include "usbd_core.h"
#include "cdc_keyboard_class.h"
#include "cdc_keyboard_desc.h"

Go to the source code of this file.

Macros

#define SHIFT 0x80

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
static usb_sts_type | cdc_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | keyboard_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static void | usb_vcp_cmd_process (void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device class request function More...
uint16_t | usb_vcpkybrd_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcpkybrd_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...
usb_sts_type | usb_vcpkybrd_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_vcpkybrd_keyboard_send_char (void *udev, uint8_t ascii_code)
usb keyoard send char More...

Variables

vcp_keyboard_type vcp_keyboard_struct
static const unsigned char _asciimap [128]
linecoding_type linecoding_vcpkybrd
usbd_class_handler cdc_keyboard_class_handler

Detailed Description

usb cdc and keyboard class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_keyboard_class.c.


AT32F403 Firmwary Library: cdc_keyboard_class.h File Reference

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
Data Structures | Macros | Functions | Variables
cdc_keyboard_class.h File Reference

usb cdc and keyboard class file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct vcp_keyboard_type

Macros

#define | USBD_VCPKYBRD_CDC_INT_EPT 0x82
usb use endpoint define More...
#define | USBD_VCPKYBRD_CDC_BULK_IN_EPT 0x81
#define | USBD_VCPKYBRD_CDC_BULK_OUT_EPT 0x01
#define | USBD_VCPKYBRD_HID_IN_EPT 0x83
#define | USBD_VCPKYBRD_IN_MAXPACKET_SIZE 0x40
usb in and out max packet size define More...
#define | USBD_VCPKYBRD_OUT_MAXPACKET_SIZE 0x40
#define | USBD_VCPKYBRD_CMD_MAXPACKET_SIZE 0x08

Functions

uint16_t | usb_vcpkybrd_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcpkybrd_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...
usb_sts_type | usb_vcpkybrd_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_vcpkybrd_keyboard_send_char (void *udev, uint8_t ascii_code)
usb keyoard send char More...

Variables

usbd_class_handler cdc_keyboard_class_handler

Detailed Description

usb cdc and keyboard class file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_keyboard_class.h.


AT32F403 Firmwary Library: cdc_keyboard_desc.c File Reference

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
Functions | Variables
cdc_keyboard_desc.c File Reference

usb cdc and keyboard device descriptor More...

#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "cdc_keyboard_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler cdc_keyboard_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb cdc and keyboard device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_keyboard_desc.c.


AT32F403 Firmwary Library: cdc_keyboard_desc.h File Reference

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
Macros | Variables
cdc_keyboard_desc.h File Reference

usb cdc and keyboard descriptor header file More...

#include "cdc_keyboard_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | VCPKYBRD_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_VCPKYBRD_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_VCPKYBRD_PRODUCT_ID 0x5750
#define | USBD_VCPKYBRD_CONFIG_DESC_SIZE 108
usb descriptor size define More...
#define | USBD_VCPKYBRD_HID_SIZ_REPORT_DESC 63
#define | USBD_VCPKYBRD_SIZ_STRING_LANGID 4
#define | USBD_VCPKYBRD_SIZ_STRING_SERIAL 0x1A
#define | USBD_VCPKYBRD_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_VCPKYBRD_DESC_PRODUCT_STRING "AT32 Composite VCP and Keyboard"
#define | USBD_VCPKYBRD_DESC_CONFIGURATION_STRING "Composite VCP and Keyboard Config"
#define | USBD_VCPKYBRD_DESC_INTERFACE_STRING "Composite VCP and Keyboard Interface"
#define | VCPKYBRD_HID_BINTERVAL_TIME 0x0A
usb endpoint interval define More...
#define | VCPKYBRD_CDC_INTERFACE 0x00
usb interface define More...
#define | VCPKYBRD_CDC_DATA_INTERFACE 0x01
#define | VCPKYBRD_KEYBOARD_INTERFACE 0x02
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

uint8_t | g_usbd_vcpkybrd_hid_report [63]
usb hid keyboard report descriptor More...
uint8_t | g_vcpkybrd_hid_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler cdc_keyboard_desc_handler
device descriptor handler structure More...

Detailed Description

usb cdc and keyboard descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_keyboard_desc.h.


AT32F403 Firmwary Library: cdc_msc_class.c File Reference

  • middlewares
  • usbd_class
  • composite_cdc_msc
Functions | Variables
cdc_msc_class.c File Reference

usb cdc class type More...

#include "usbd_core.h"
#include "cdc_msc_class.h"
#include "cdc_msc_desc.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
static usb_sts_type | cdc_struct_init (cdc_msc_struct_type *pcdc)
usb device cdc init More...
void | usb_usart_config (linecoding_type linecoding)
this function handles usart2 and linecoding config. More...
static void | usb_vcp_cmd_process (void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device function More...
static usb_sts_type | cdc_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | msc_class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

linecoding_type linecoding
cdc_msc_struct_type cdc_msc_struct
usbd_class_handler cdc_msc_class_handler

Detailed Description

usb cdc class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_msc_class.c.


AT32F403 Firmwary Library: cdc_msc_class.h File Reference

  • middlewares
  • usbd_class
  • composite_cdc_msc
Data Structures | Macros | Functions | Variables
cdc_msc_class.h File Reference

usb cdc class file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct | cbd_typical_type
typical command block description More...
struct | cbd_extended_type
extended command block description More...
struct | cbw_type
command block wrapper More...
struct | csw_type
command block wrapper More...
struct | sense_type
request sense standard data More...
struct | msc_type
struct | cdc_msc_struct_type
usb cdc class struct More...

Macros

#define | USBD_CDC_INT_EPT 0x82
usb cdc use endpoint define More...
#define | USBD_CDC_BULK_IN_EPT 0x83
#define | USBD_CDC_BULK_OUT_EPT 0x02
#define | USBD_MSC_BULK_IN_EPT 0x81
#define | USBD_MSC_BULK_OUT_EPT 0x01
#define | USBD_CDC_MSC_IN_MAXPACKET_SIZE 0x40
usb cdc in and out max packet size define More...
#define | USBD_CDC_MSC_OUT_MAXPACKET_SIZE 0x40
#define | USBD_CDC_CMD_MAXPACKET_SIZE 0x08
#define | MSC_SUPPORT_MAX_LUN 1
#define | MSC_MAX_DATA_BUF_LEN 4096
#define | MSC_CMD_FORMAT_UNIT 0x04
#define | MSC_CMD_INQUIRY 0x12
#define | MSC_CMD_START_STOP 0x1B
#define | MSC_CMD_MODE_SENSE6 0x1A
#define | MSC_CMD_MODE_SENSE10 0x5A
#define | MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E
#define | MSC_CMD_READ_10 0x28
#define | MSC_CMD_READ_12 0xA8
#define | MSC_CMD_READ_CAPACITY 0x25
#define | MSC_CMD_READ_FORMAT_CAPACITY 0x23
#define | MSC_CMD_REQUEST_SENSE 0x03
#define | MSC_CMD_TEST_UNIT 0x00
#define | MSC_CMD_VERIFY 0x2F
#define | MSC_CMD_WRITE_10 0x2A
#define | MSC_CMD_WRITE_12 0xAA
#define | MSC_CMD_WRITE_VERIFY 0x2E
#define | MSC_REQ_GET_MAX_LUN 0xFE
#define | MSC_REQ_BO_RESET 0xFF
#define | SET_LINE_CODING 0x20
#define | GET_LINE_CODING 0x21
#define | CBW_CMD_LENGTH 31
#define | CBW_DCBWSIGNATURE 0x43425355
#define | CBW_BMCBWFLAGS_DIR_OUT 0x00
#define | CBW_BMCBWFLAGS_DIR_IN 0x80
#define | CSW_CMD_LENGTH 13
#define | CSW_DCSWSIGNATURE 0x53425355
#define | CSW_BCSWSTATUS_PASS 0x00
#define | CSW_BCSWSTATUS_FAILED 0x01
#define | CSW_BCSWSTATUS_PHASE_ERR 0x02
#define | MSC_STATE_MACHINE_CMD 0x00
#define | MSC_STATE_MACHINE_DATA_IN 0x01
#define | MSC_STATE_MACHINE_DATA_OUT 0x02
#define | MSC_STATE_MACHINE_SEND_DATA 0x03
#define | MSC_STATE_MACHINE_LAST_DATA 0x04
#define | MSC_STATE_MACHINE_STATUS 0x05
#define | MSC_STATE_MACHINE_FAILED 0x06
#define | MSC_STATE_MACHINE_IDLE 0x07
#define | MSC_BOT_STATE_IDLE 0x00
#define | MSC_BOT_STATE_RECOVERY 0x01
#define | MSC_BOT_STATE_ERROR 0x02
#define | REQ_SENSE_STANDARD_DATA_LEN 0x12
#define | SENSE_KEY_NO_SENSE 0x00
#define | SENSE_KEY_RECOVERED_ERROR 0x01
#define | SENSE_KEY_NOT_READY 0x02
#define | SENSE_KEY_MEDIUM_ERROR 0x03
#define | SENSE_KEY_HARDWARE_ERROR 0x04
#define | SENSE_KEY_ILLEGAL_REQUEST 0x05
#define | SENSE_KEY_UNIT_ATTENTION 0x06
#define | SENSE_KEY_DATA_PROTECT 0x07
#define | SENSE_KEY_BLANK_CHECK 0x08
#define | SENSE_KEY_VENDERO_SPECIFIC 0x09
#define | SENSE_KEY_ABORTED_COMMAND 0x0B
#define | SENSE_KEY_VOLUME_OVERFLOW 0x0D
#define | SENSE_KEY_MISCOMPARE 0x0E
#define | INVALID_COMMAND 0x20
#define | INVALID_FIELED_IN_COMMAND 0x24
#define | PARAMETER_LIST_LENGTH_ERROR 0x1A
#define | INVALID_FIELD_IN_PARAMETER_LIST 0x26
#define | ADDRESS_OUT_OF_RANGE 0x21
#define | MEDIUM_NOT_PRESENT 0x3A
#define | MEDIUM_HAVE_CHANGED 0x28
#define | SCSI_INQUIRY_DATA_LENGTH 36

Functions

uint16_t | usb_vcp_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_vcp_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...
void | bot_scsi_init (void *udev)
initialize bulk-only transport and scsi More...
void | bot_scsi_reset (void *udev)
reset bulk-only transport and scsi More...
void | bot_scsi_datain_handler (void *pudev, uint8_t ept_num)
bulk-only transport data in handler More...
void | bot_scsi_dataout_handler (void *pudev, uint8_t ept_num)
bulk-only transport data out handler More...
void | bot_cbw_decode (void *udev)
bulk-only cbw decode More...
void | bot_scsi_send_data (void *udev, uint8_t *buffer, uint32_t len)
send bot data More...
void | bot_scsi_send_csw (void *udev, uint8_t status)
send command status More...
void | bot_scsi_sense_code (void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code More...
usb_sts_type | bot_scsi_check_address (void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address More...
void | bot_scsi_stall (void *udev)
bot endpoint stall More...
usb_sts_type | bot_scsi_cmd_process (void *udev)
bulk-only transport scsi command process More...
usb_sts_type | bot_scsi_test_unit (void *udev, uint8_t lun)
bulk-only transport scsi command test unit More...
usb_sts_type | bot_scsi_inquiry (void *udev, uint8_t lun)
bulk-only transport scsi command inquiry More...
usb_sts_type | bot_scsi_start_stop (void *udev, uint8_t lun)
bulk-only transport scsi command start stop More...
usb_sts_type | bot_scsi_allow_medium_removal (void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal More...
usb_sts_type | bot_scsi_mode_sense6 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6 More...
usb_sts_type | bot_scsi_mode_sense10 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10 More...
usb_sts_type | bot_scsi_read10 (void *udev, uint8_t lun)
bulk-only transport scsi command read10 More...
usb_sts_type | bot_scsi_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command capacity More...
usb_sts_type | bot_scsi_format_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command format capacity More...
usb_sts_type | bot_scsi_request_sense (void *udev, uint8_t lun)
bulk-only transport scsi command request sense More...
usb_sts_type | bot_scsi_verify (void *udev, uint8_t lun)
bulk-only transport scsi command verify More...
usb_sts_type | bot_scsi_write10 (void *udev, uint8_t lun)
bulk-only transport scsi command write10 More...
void | bot_scsi_clear_feature (void *udev, uint8_t ept_num)
clear feature More...

Variables

usbd_class_handler cdc_msc_class_handler

Detailed Description

usb cdc class file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_msc_class.h.


AT32F403 Firmwary Library: cdc_msc_desc.c File Reference

  • middlewares
  • usbd_class
  • composite_cdc_msc
Macros | Functions | Variables
cdc_msc_desc.c File Reference

usb cdc device descriptor More...

#include "stdio.h"
#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "cdc_msc_desc.h"

Go to the source code of this file.

Macros

#define USB_INTERFACE_ASSOCIATION_TYPE 0x0B

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler cdc_msc_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb cdc device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_msc_desc.c.


AT32F403 Firmwary Library: cdc_msc_desc.h File Reference

  • middlewares
  • usbd_class
  • composite_cdc_msc
Macros | Variables
cdc_msc_desc.h File Reference

usb cdc descriptor header file More...

#include "cdc_msc_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | CDC_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_CDC_MSC_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_CDC_MSC_PRODUCT_ID 0x5760
#define | USBD_CDC_MSC_CONFIG_DESC_SIZE 106
usb descriptor size define More...
#define | USBD_CDC_SIZ_STRING_LANGID 4
#define | USBD_CDC_SIZ_STRING_SERIAL 0x1A
#define | USBD_CDC_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_CDC_DESC_PRODUCT_STRING "AT32 Composite VCP and MSC "
#define | USBD_CDC_DESC_CONFIGURATION_STRING "Composite VCP and MSC Config"
#define | USBD_CDC_DESC_INTERFACE_STRING "Composite VCP and MSC Interface"
#define | CDC_HID_BINTERVAL_TIME 0xFF
usb endpoint interval define More...
#define | VCPMSC_MSC_INTERFACE 0x00
usb interface define More...
#define | VCPMSC_CDC_INTERFACE 0x01
#define | VCPMSC_CDC_DATA_INTERFACE 0x02
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler cdc_msc_desc_handler
device descriptor handler structure More...

Detailed Description

usb cdc descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cdc_msc_desc.h.


AT32F403 Firmwary Library: msc_bot_scsi.c File Reference

  • middlewares
  • usbd_class
  • composite_cdc_msc
Functions | Variables
composite_cdc_msc/msc_bot_scsi.c File Reference

usb mass storage bulk-only transport and scsi command More...

#include "cdc_msc_class.h"
#include "msc_diskio.h"

Go to the source code of this file.

Functions

void | bot_scsi_init (void *udev)
initialize bulk-only transport and scsi More...
void | bot_scsi_reset (void *udev)
reset bulk-only transport and scsi More...
void | bot_scsi_datain_handler (void *udev, uint8_t ept_num)
bulk-only transport data in handler More...
void | bot_scsi_dataout_handler (void *udev, uint8_t ept_num)
bulk-only transport data out handler More...
void | bot_cbw_decode (void *udev)
bulk-only cbw decode More...
void | bot_scsi_send_data (void *udev, uint8_t *buffer, uint32_t len)
send bot data More...
void | bot_scsi_send_csw (void *udev, uint8_t status)
send command status More...
void | bot_scsi_sense_code (void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code More...
usb_sts_type | bot_scsi_check_address (void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address More...
void | bot_scsi_stall (void *udev)
bot endpoint stall More...
usb_sts_type | bot_scsi_test_unit (void *udev, uint8_t lun)
bulk-only transport scsi command test unit More...
usb_sts_type | bot_scsi_inquiry (void *udev, uint8_t lun)
bulk-only transport scsi command inquiry More...
usb_sts_type | bot_scsi_start_stop (void *udev, uint8_t lun)
bulk-only transport scsi command start stop More...
usb_sts_type | bot_scsi_allow_medium_removal (void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal More...
usb_sts_type | bot_scsi_mode_sense6 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6 More...
usb_sts_type | bot_scsi_mode_sense10 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10 More...
usb_sts_type | bot_scsi_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command capacity More...
usb_sts_type | bot_scsi_format_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command format capacity More...
usb_sts_type | bot_scsi_request_sense (void *udev, uint8_t lun)
bulk-only transport scsi command request sense More...
usb_sts_type | bot_scsi_verify (void *udev, uint8_t lun)
bulk-only transport scsi command verify More...
usb_sts_type | bot_scsi_read10 (void *udev, uint8_t lun)
bulk-only transport scsi command read10 More...
usb_sts_type | bot_scsi_write10 (void *udev, uint8_t lun)
bulk-only transport scsi command write10 More...
void | bot_scsi_clear_feature (void *udev, uint8_t ept_num)
clear feature More...
usb_sts_type | bot_scsi_cmd_process (void *udev)
bulk-only transport scsi command process More...

Variables

ALIGNED_HEAD uint8_t page00_inquiry_data[] ALIGNED_TAIL

Detailed Description

usb mass storage bulk-only transport and scsi command

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file composite_cdc_msc/msc_bot_scsi.c.


AT32F403 Firmwary Library: msc_bot_scsi.c File Reference

  • middlewares
  • usbd_class
  • msc
Functions | Variables
msc/msc_bot_scsi.c File Reference

usb mass storage bulk-only transport and scsi command More...

#include "msc_bot_scsi.h"
#include "msc_diskio.h"

Go to the source code of this file.

Functions

void | bot_scsi_init (void *udev)
initialize bulk-only transport and scsi More...
void | bot_scsi_reset (void *udev)
reset bulk-only transport and scsi More...
void | bot_scsi_datain_handler (void *udev, uint8_t ept_num)
bulk-only transport data in handler More...
void | bot_scsi_dataout_handler (void *udev, uint8_t ept_num)
bulk-only transport data out handler More...
void | bot_cbw_decode (void *udev)
bulk-only cbw decode More...
void | bot_scsi_send_data (void *udev, uint8_t *buffer, uint32_t len)
send bot data More...
void | bot_scsi_send_csw (void *udev, uint8_t status)
send command status More...
void | bot_scsi_sense_code (void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code More...
usb_sts_type | bot_scsi_check_address (void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address More...
void | bot_scsi_stall (void *udev)
bot endpoint stall More...
usb_sts_type | bot_scsi_test_unit (void *udev, uint8_t lun)
bulk-only transport scsi command test unit More...
usb_sts_type | bot_scsi_inquiry (void *udev, uint8_t lun)
bulk-only transport scsi command inquiry More...
usb_sts_type | bot_scsi_start_stop (void *udev, uint8_t lun)
bulk-only transport scsi command start stop More...
usb_sts_type | bot_scsi_allow_medium_removal (void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal More...
usb_sts_type | bot_scsi_mode_sense6 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6 More...
usb_sts_type | bot_scsi_mode_sense10 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10 More...
usb_sts_type | bot_scsi_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command capacity More...
usb_sts_type | bot_scsi_format_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command format capacity More...
usb_sts_type | bot_scsi_request_sense (void *udev, uint8_t lun)
bulk-only transport scsi command request sense More...
usb_sts_type | bot_scsi_verify (void *udev, uint8_t lun)
bulk-only transport scsi command verify More...
usb_sts_type | bot_scsi_read10 (void *udev, uint8_t lun)
bulk-only transport scsi command read10 More...
usb_sts_type | bot_scsi_write10 (void *udev, uint8_t lun)
bulk-only transport scsi command write10 More...
void | bot_scsi_clear_feature (void *udev, uint8_t ept_num)
clear feature More...
usb_sts_type | bot_scsi_cmd_process (void *udev)
bulk-only transport scsi command process More...

Variables

ALIGNED_HEAD uint8_t page00_inquiry_data[] ALIGNED_TAIL

Detailed Description

usb mass storage bulk-only transport and scsi command

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc/msc_bot_scsi.c.


AT32F403 Firmwary Library: custom_hid_class.c File Reference

  • middlewares
  • usbd_class
  • custom_hid
Functions | Variables
custom_hid_class.c File Reference

usb custom hid class type More...

#include "usbd_core.h"
#include "custom_hid_class.h"
#include "custom_hid_desc.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
static void | usb_hid_buf_process (void *udev, uint8_t *report, uint16_t len)
usb device class report function More...
usb_sts_type | custom_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

custom_hid_type custom_hid_struct
usbd_class_handler custom_hid_class_handler

Detailed Description

usb custom hid class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file custom_hid_class.c.


AT32F403 Firmwary Library: custom_hid_class.h File Reference

  • middlewares
  • usbd_class
  • custom_hid
Data Structures | Macros | Functions | Variables
custom_hid_class.h File Reference

usb custom hid header file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct custom_hid_type

Macros

#define | USBD_CUSTOM_HID_IN_EPT 0x81
usb custom hid use endpoint define More...
#define | USBD_CUSTOM_HID_OUT_EPT 0x01
#define | USBD_CUSTOM_IN_MAXPACKET_SIZE 0x40
usb custom hid in and out max packet size define More...
#define | USBD_CUSTOM_OUT_MAXPACKET_SIZE 0x40

Functions

usb_sts_type custom_hid_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

usbd_class_handler custom_hid_class_handler

Detailed Description

usb custom hid header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file custom_hid_class.h.


AT32F403 Firmwary Library: custom_hid_desc.c File Reference

  • middlewares
  • usbd_class
  • custom_hid
Functions | Variables
custom_hid_desc.c File Reference

usb hid device descriptor More...

#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "custom_hid_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler custom_hid_desc_handler
custom hid device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb hid device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file custom_hid_desc.c.


AT32F403 Firmwary Library: custom_hid_desc.h File Reference

  • middlewares
  • usbd_class
  • custom_hid
Macros | Variables
custom_hid_desc.h File Reference

usb custom hid descriptor header file More...

#include "custom_hid_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | CUSHID_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_CUSHID_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_CUSHID_PRODUCT_ID 0x5745
#define | USBD_CUSHID_CONFIG_DESC_SIZE 41
usb descriptor size define More...
#define | USBD_CUSHID_SIZ_REPORT_DESC 126
#define | USBD_CUSHID_SIZ_STRING_LANGID 4
#define | USBD_CUSHID_SIZ_STRING_SERIAL 0x1A
#define | USBD_CUSHID_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_CUSHID_DESC_PRODUCT_STRING "Custom HID"
#define | USBD_CUSHID_DESC_CONFIGURATION_STRING "Custom HID Config"
#define | USBD_CUSHID_DESC_INTERFACE_STRING "Custom HID Interface"
#define | CUSHID_BINTERVAL_TIME 0x0A
#define | HID_REPORT_ID_1 0x01
usb hid report id define More...
#define | HID_REPORT_ID_2 0x02
#define | HID_REPORT_ID_3 0x03
#define | HID_REPORT_ID_4 0x04
#define | HID_REPORT_ID_5 0x05
#define | HID_REPORT_ID_6 0xF0
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

uint8_t | g_usbd_custom_hid_report [126]
usb hid report descriptor More...
uint8_t | g_custom_hid_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler custom_hid_desc_handler
custom hid device descriptor handler structure More...

Detailed Description

usb custom hid descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file custom_hid_desc.h.


AT32F403 Firmwary Library: hid_iap_class.c File Reference

  • middlewares
  • usbd_class
  • hid_iap
Functions | Variables
hid_iap_class.c File Reference

usb hid iap class type More...

#include "usbd_core.h"
#include "hid_iap_class.h"
#include "hid_iap_desc.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
usb_sts_type | usb_iap_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...

Variables

iap_info_type iap_info
usbd_class_handler hid_iap_class_handler

Detailed Description

usb hid iap class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file hid_iap_class.c.


AT32F403 Firmwary Library: hid_iap_class.h File Reference

  • middlewares
  • usbd_class
  • hid_iap
Data Structures | Macros | Enumerations | Functions | Variables
hid_iap_class.h File Reference

usb hid iap header file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct iap_info_type

Macros

#define | USBD_HIDIAP_IN_EPT 0x81
#define | USBD_HIDIAP_OUT_EPT 0x01
#define | USBD_HIDIAP_IN_MAXPACKET_SIZE 0x40
#define | USBD_HIDIAP_OUT_MAXPACKET_SIZE 0x40
#define | FLASH_SIZE_REG() ((*(uint32_t *)0x1FFFF7E0) & 0xFFFF) /*Get Flash size*/
#define | KB_TO_B(kb) ((kb) << 10)
#define | SECTOR_SIZE_1K 0x400
#define | SECTOR_SIZE_2K 0x800
#define | SECTOR_SIZE_4K 0x1000
#define | IAP_CMD_IDLE 0x5AA0
iap command More...
#define | IAP_CMD_START 0x5AA1
#define | IAP_CMD_ADDR 0x5AA2
#define | IAP_CMD_DATA 0x5AA3
#define | IAP_CMD_FINISH 0x5AA4
#define | IAP_CMD_CRC 0x5AA5
#define | IAP_CMD_JMP 0x5AA6
#define | IAP_CMD_GET 0x5AA7
#define | HID_IAP_BUFFER_LEN 1024
#define | IAP_UPGRADE_COMPLETE_FLAG 0x41544B38
#define | CONVERT_ENDIAN(dwValue)
#define | IAP_ACK 0xFF00
#define | IAP_NACK 0x00FF

Enumerations

enum iap_result_type { IAP_SUCCESS , IAP_WAIT , IAP_FAILED }
enum iap_machine_state_type {
IAP_STS_IDLE , IAP_STS_START , IAP_STS_ADDR , IAP_STS_DATA ,
IAP_STS_FINISH , IAP_STS_CRC , IAP_STS_JMP_WAIT , IAP_STS_JMP
}

Functions

usb_sts_type | usb_iap_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *report, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...

Variables

usbd_class_handler hid_iap_class_handler
iap_info_type iap_info

Detailed Description

usb hid iap header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file hid_iap_class.h.


AT32F403 Firmwary Library: hid_iap_desc.c File Reference

  • middlewares
  • usbd_class
  • hid_iap
Functions | Variables
hid_iap_desc.c File Reference

usb hid device descriptor More...

#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "hid_iap_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb hid device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file hid_iap_desc.c.


AT32F403 Firmwary Library: hid_iap_desc.h File Reference

  • middlewares
  • usbd_class
  • hid_iap
Macros | Variables
hid_iap_desc.h File Reference

usb hid descriptor header file More...

#include "hid_iap_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | HIDIAP_BCD_NUM 0x0110
#define | USBD_HIDIAP_VENDOR_ID 0x2E3C
#define | USBD_HIDIAP_PRODUCT_ID 0xAF01
#define | USBD_HIDIAP_CONFIG_DESC_SIZE 41
#define | USBD_HIDIAP_SIZ_REPORT_DESC 32
#define | USBD_HIDIAP_SIZ_STRING_LANGID 4
#define | USBD_HIDIAP_SIZ_STRING_SERIAL 0x1A
#define | USBD_HIDIAP_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_HIDIAP_DESC_PRODUCT_STRING "HID IAP"
#define | USBD_HIDIAP_DESC_CONFIGURATION_STRING "HID IAP Config"
#define | USBD_HIDIAP_DESC_INTERFACE_STRING "HID IAP Interface"
#define | HIDIAP_BINTERVAL_TIME 0x01
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

uint8_t | g_usbd_hidiap_report [32]
usb hid report descriptor More...
uint8_t | g_hidiap_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure More...

Detailed Description

usb hid descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file hid_iap_desc.h.


AT32F403 Firmwary Library: keyboard_class.c File Reference

  • middlewares
  • usbd_class
  • keyboard
Macros | Functions | Variables
keyboard_class.c File Reference

usb hid keyboard class type More...

#include "usbd_core.h"
#include "keyboard_class.h"
#include "keyboard_desc.h"

Go to the source code of this file.

Macros

#define SHIFT 0x80

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
usb_sts_type | usb_keyboard_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_keyboard_send_char (void *udev, uint8_t ascii_code)
usb device class report function More...

Variables

keyboard_type keyboard_struct
static const unsigned char _asciimap [128]
usbd_class_handler keyboard_class_handler

Detailed Description

usb hid keyboard class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file keyboard_class.c.


AT32F403 Firmwary Library: keyboard_class.h File Reference

  • middlewares
  • usbd_class
  • keyboard
Data Structures | Macros | Functions | Variables
keyboard_class.h File Reference

usb hid keyboard header file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct keyboard_type

Macros

#define | USBD_KEYBOARD_IN_EPT 0x81
usb hid use endpoint define More...
#define | USBD_KEYBOARD_IN_MAXPACKET_SIZE 0x40
usb hid in and out max packet size define More...
#define | USBD_KEYBOARD_OUT_MAXPACKET_SIZE 0x40

Functions

usb_sts_type | usb_keyboard_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_keyboard_send_char (void *udev, uint8_t ascii_code)
usb device class report function More...

Variables

usbd_class_handler keyboard_class_handler

Detailed Description

usb hid keyboard header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file keyboard_class.h.


AT32F403 Firmwary Library: keyboard_desc.c File Reference

  • middlewares
  • usbd_class
  • keyboard
Functions | Variables
keyboard_desc.c File Reference

usb hid keyboard device descriptor More...

#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "keyboard_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler keyboard_desc_handler
keyboard device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb hid keyboard device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file keyboard_desc.c.


AT32F403 Firmwary Library: keyboard_desc.h File Reference

  • middlewares
  • usbd_class
  • keyboard
Macros | Variables
keyboard_desc.h File Reference

usb keyboard descriptor header file More...

#include "keyboard_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | KEYBOARD_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_KEYBOARD_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_KEYBOARD_PRODUCT_ID 0x6040
#define | USBD_KEYBOARD_CONFIG_DESC_SIZE 34
usb descriptor size define More...
#define | USBD_KEYBOARD_SIZ_REPORT_DESC 63
#define | USBD_KEYBOARD_SIZ_STRING_LANGID 4
#define | USBD_KEYBOARD_SIZ_STRING_SERIAL 0x1A
#define | USBD_KEYBOARD_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_KEYBOARD_DESC_PRODUCT_STRING "Keyboard"
#define | USBD_KEYBOARD_DESC_CONFIGURATION_STRING "Keyboard Config"
#define | USBD_KEYBOARD_DESC_INTERFACE_STRING "Keyboard Interface"
#define | KEYBOARD_BINTERVAL_TIME 0x0A
usb hid endpoint interval define More...
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

uint8_t | g_usbd_keyboard_report [63]
usb mouse report descriptor More...
uint8_t | g_keyboard_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler keyboard_desc_handler
keyboard device descriptor handler structure More...

Detailed Description

usb keyboard descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file keyboard_desc.h.


AT32F403 Firmwary Library: mouse_class.c File Reference

  • middlewares
  • usbd_class
  • mouse
Functions | Variables
mouse_class.c File Reference

usb hid mouse class type More...

#include "usbd_core.h"
#include "mouse_class.h"
#include "mouse_desc.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device class endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device class endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device class transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device class endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device class sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device class event handler More...
usb_sts_type | usb_mouse_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_mouse_send (void *udev, uint8_t op)
usb device class report function More...

Variables

mouse_type mouse_struct
usbd_class_handler mouse_class_handler

Detailed Description

usb hid mouse class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file mouse_class.c.


AT32F403 Firmwary Library: mouse_class.h File Reference

  • middlewares
  • usbd_class
  • mouse
Data Structures | Macros | Functions | Variables
mouse_class.h File Reference

usb hid mouse header file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct mouse_type

Macros

#define | USBD_MOUSE_IN_EPT 0x81
usb hid use endpoint define More...
#define | USBD_MOUSE_IN_MAXPACKET_SIZE 0x40
usb hid in and out max packet size define More...
#define | MOVE_STEP 20
usb hid mouse operation More...
#define | BUTTON_RELEASE 0
#define | LEFT_BUTTON 1
#define | RIGHT_BUTTON 2
#define | LEFT_MOVE 3
#define | RIGHT_MOVE 4
#define | UP_MOVE 5
#define | DOWN_MOVE 6

Functions

usb_sts_type | usb_mouse_class_send_report (void *udev, uint8_t *report, uint16_t len)
usb device class send report More...
void | usb_hid_mouse_send (void *udev, uint8_t op)
usb device class report function More...

Variables

usbd_class_handler mouse_class_handler

Detailed Description

usb hid mouse header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file mouse_class.h.


AT32F403 Firmwary Library: mouse_desc.c File Reference

  • middlewares
  • usbd_class
  • mouse
Functions | Variables
mouse_desc.c File Reference

usb hid mouse device descriptor More...

#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "mouse_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler mouse_desc_handler
mouse device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb hid mouse device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file mouse_desc.c.


AT32F403 Firmwary Library: mouse_desc.h File Reference

  • middlewares
  • usbd_class
  • mouse
Macros | Variables
mouse_desc.h File Reference

usb mouse descriptor header file More...

#include "mouse_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | MOUSE_BCD_NUM 0x0110
usb bcd number define More...
#define | USBD_MOUSE_VENDOR_ID 0x2E3C
usb vendor id and product id define More...
#define | USBD_MOUSE_PRODUCT_ID 0x5710
#define | USBD_MOUSE_CONFIG_DESC_SIZE 34
usb descriptor size define More...
#define | USBD_MOUSE_SIZ_REPORT_DESC 74
#define | USBD_MOUSE_SIZ_STRING_LANGID 4
#define | USBD_MOUSE_SIZ_STRING_SERIAL 0x1A
#define | USBD_MOUSE_DESC_MANUFACTURER_STRING "Artery"
usb string define(vendor, product configuration, interface) More...
#define | USBD_MOUSE_DESC_PRODUCT_STRING "Mouse"
#define | USBD_MOUSE_DESC_CONFIGURATION_STRING "Mouse Config"
#define | USBD_MOUSE_DESC_INTERFACE_STRING "Mouse Interface"
#define | MOUSE_BINTERVAL_TIME 0x0A
usb hid endpoint interval define More...
#define | MCU_ID1 (0x1FFFF7E8)
usb mcu id address deine More...
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

uint8_t | g_usbd_mouse_report [74]
usb mouse report descriptor More...
uint8_t | g_mouse_usb_desc [9]
usb hid descriptor More...
usbd_desc_handler mouse_desc_handler
mouse device descriptor handler structure More...

Detailed Description

usb mouse descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file mouse_desc.h.


AT32F403 Firmwary Library: msc_bot_scsi.h File Reference

  • middlewares
  • usbd_class
  • msc
Data Structures | Macros | Functions
msc_bot_scsi.h File Reference

usb mass storage bulk-only transport and scsi command header file More...

#include "msc_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct | cbd_typical_type
typical command block description More...
struct | cbd_extended_type
extended command block description More...
struct | cbw_type
command block wrapper More...
struct | csw_type
command block wrapper More...
struct | sense_type
request sense standard data More...
struct | msc_type

Macros

#define | MSC_SUPPORT_MAX_LUN 1
#define | MSC_MAX_DATA_BUF_LEN 4096
#define | MSC_CMD_FORMAT_UNIT 0x04
#define | MSC_CMD_INQUIRY 0x12
#define | MSC_CMD_START_STOP 0x1B
#define | MSC_CMD_MODE_SENSE6 0x1A
#define | MSC_CMD_MODE_SENSE10 0x5A
#define | MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E
#define | MSC_CMD_READ_10 0x28
#define | MSC_CMD_READ_12 0xA8
#define | MSC_CMD_READ_CAPACITY 0x25
#define | MSC_CMD_READ_FORMAT_CAPACITY 0x23
#define | MSC_CMD_REQUEST_SENSE 0x03
#define | MSC_CMD_TEST_UNIT 0x00
#define | MSC_CMD_VERIFY 0x2F
#define | MSC_CMD_WRITE_10 0x2A
#define | MSC_CMD_WRITE_12 0xAA
#define | MSC_CMD_WRITE_VERIFY 0x2E
#define | MSC_REQ_GET_MAX_LUN 0xFE
#define | MSC_REQ_BO_RESET 0xFF
#define | SET_LINE_CODING 0x20
#define | GET_LINE_CODING 0x21
#define | CBW_CMD_LENGTH 31
#define | CBW_DCBWSIGNATURE 0x43425355
#define | CBW_BMCBWFLAGS_DIR_OUT 0x00
#define | CBW_BMCBWFLAGS_DIR_IN 0x80
#define | CSW_CMD_LENGTH 13
#define | CSW_DCSWSIGNATURE 0x53425355
#define | CSW_BCSWSTATUS_PASS 0x00
#define | CSW_BCSWSTATUS_FAILED 0x01
#define | CSW_BCSWSTATUS_PHASE_ERR 0x02
#define | MSC_STATE_MACHINE_CMD 0x00
#define | MSC_STATE_MACHINE_DATA_IN 0x01
#define | MSC_STATE_MACHINE_DATA_OUT 0x02
#define | MSC_STATE_MACHINE_SEND_DATA 0x03
#define | MSC_STATE_MACHINE_LAST_DATA 0x04
#define | MSC_STATE_MACHINE_STATUS 0x05
#define | MSC_STATE_MACHINE_FAILED 0x06
#define | MSC_STATE_MACHINE_IDLE 0x07
#define | MSC_BOT_STATE_IDLE 0x00
#define | MSC_BOT_STATE_RECOVERY 0x01
#define | MSC_BOT_STATE_ERROR 0x02
#define | REQ_SENSE_STANDARD_DATA_LEN 0x12
#define | SENSE_KEY_NO_SENSE 0x00
#define | SENSE_KEY_RECOVERED_ERROR 0x01
#define | SENSE_KEY_NOT_READY 0x02
#define | SENSE_KEY_MEDIUM_ERROR 0x03
#define | SENSE_KEY_HARDWARE_ERROR 0x04
#define | SENSE_KEY_ILLEGAL_REQUEST 0x05
#define | SENSE_KEY_UNIT_ATTENTION 0x06
#define | SENSE_KEY_DATA_PROTECT 0x07
#define | SENSE_KEY_BLANK_CHECK 0x08
#define | SENSE_KEY_VENDERO_SPECIFIC 0x09
#define | SENSE_KEY_ABORTED_COMMAND 0x0B
#define | SENSE_KEY_VOLUME_OVERFLOW 0x0D
#define | SENSE_KEY_MISCOMPARE 0x0E
#define | INVALID_COMMAND 0x20
#define | INVALID_FIELED_IN_COMMAND 0x24
#define | PARAMETER_LIST_LENGTH_ERROR 0x1A
#define | INVALID_FIELD_IN_PARAMETER_LIST 0x26
#define | ADDRESS_OUT_OF_RANGE 0x21
#define | MEDIUM_NOT_PRESENT 0x3A
#define | MEDIUM_HAVE_CHANGED 0x28
#define | SCSI_INQUIRY_DATA_LENGTH 36

Functions

void | bot_scsi_init (void *udev)
initialize bulk-only transport and scsi More...
void | bot_scsi_reset (void *udev)
reset bulk-only transport and scsi More...
void | bot_scsi_datain_handler (void *pudev, uint8_t ept_num)
bulk-only transport data in handler More...
void | bot_scsi_dataout_handler (void *pudev, uint8_t ept_num)
bulk-only transport data out handler More...
void | bot_cbw_decode (void *udev)
bulk-only cbw decode More...
void | bot_scsi_send_data (void *udev, uint8_t *buffer, uint32_t len)
send bot data More...
void | bot_scsi_send_csw (void *udev, uint8_t status)
send command status More...
void | bot_scsi_sense_code (void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code More...
usb_sts_type | bot_scsi_check_address (void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address More...
void | bot_scsi_stall (void *udev)
bot endpoint stall More...
usb_sts_type | bot_scsi_cmd_process (void *udev)
bulk-only transport scsi command process More...
usb_sts_type | bot_scsi_test_unit (void *udev, uint8_t lun)
bulk-only transport scsi command test unit More...
usb_sts_type | bot_scsi_inquiry (void *udev, uint8_t lun)
bulk-only transport scsi command inquiry More...
usb_sts_type | bot_scsi_start_stop (void *udev, uint8_t lun)
bulk-only transport scsi command start stop More...
usb_sts_type | bot_scsi_allow_medium_removal (void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal More...
usb_sts_type | bot_scsi_mode_sense6 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6 More...
usb_sts_type | bot_scsi_mode_sense10 (void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10 More...
usb_sts_type | bot_scsi_read10 (void *udev, uint8_t lun)
bulk-only transport scsi command read10 More...
usb_sts_type | bot_scsi_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command capacity More...
usb_sts_type | bot_scsi_format_capacity (void *udev, uint8_t lun)
bulk-only transport scsi command format capacity More...
usb_sts_type | bot_scsi_request_sense (void *udev, uint8_t lun)
bulk-only transport scsi command request sense More...
usb_sts_type | bot_scsi_verify (void *udev, uint8_t lun)
bulk-only transport scsi command verify More...
usb_sts_type | bot_scsi_write10 (void *udev, uint8_t lun)
bulk-only transport scsi command write10 More...
void | bot_scsi_clear_feature (void *udev, uint8_t ept_num)
clear feature More...

Detailed Description

usb mass storage bulk-only transport and scsi command header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc_bot_scsi.h.


AT32F403 Firmwary Library: msc_class.c File Reference

  • middlewares
  • usbd_class
  • msc
Functions | Variables
msc_class.c File Reference

usb msc class type More...

#include "usbd_core.h"
#include "msc_class.h"
#include "msc_desc.h"
#include "msc_bot_scsi.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...

Variables

msc_type msc_struct
usbd_class_handler msc_class_handler

Detailed Description

usb msc class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc_class.c.


AT32F403 Firmwary Library: msc_class.h File Reference

  • middlewares
  • usbd_class
  • msc
Macros | Variables
msc_class.h File Reference

usb msc class file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | USBD_MSC_BULK_IN_EPT 0x81
#define | USBD_MSC_BULK_OUT_EPT 0x01
#define | USBD_IN_MAXPACKET_SIZE 0x40
#define | USBD_OUT_MAXPACKET_SIZE 0x40

Variables

usbd_class_handler msc_class_handler

Detailed Description

usb msc class file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc_class.h.


AT32F403 Firmwary Library: msc_desc.c File Reference

  • middlewares
  • usbd_class
  • msc
Functions | Variables
msc_desc.c File Reference

usb msc device descriptor More...

#include "stdio.h"
#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "msc_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler msc_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb msc device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc_desc.c.


AT32F403 Firmwary Library: msc_desc.h File Reference

  • middlewares
  • usbd_class
  • msc
Macros | Variables
msc_desc.h File Reference

usb msc descriptor header file More...

#include "msc_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | MSC_BCD_NUM 0x0110
#define | USBD_MSC_VENDOR_ID 0x2E3C
#define | USBD_MSC_PRODUCT_ID 0x5720
#define | USBD_MSC_CONFIG_DESC_SIZE 32
#define | USBD_MSC_SIZ_STRING_LANGID 4
#define | USBD_MSC_SIZ_STRING_SERIAL 0x1A
#define | USBD_MSC_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_MSC_DESC_PRODUCT_STRING "AT32 Mass Storage"
#define | USBD_MSC_DESC_CONFIGURATION_STRING "Mass Storage Config"
#define | USBD_MSC_DESC_INTERFACE_STRING "Mass Storage Interface"
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler msc_desc_handler
device descriptor handler structure More...

Detailed Description

usb msc descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc_desc.h.


AT32F403 Firmwary Library: printer_class.c File Reference

  • middlewares
  • usbd_class
  • printer
Functions | Variables
printer_class.c File Reference

usb printer class type More...

#include "usbd_core.h"
#include "printer_class.h"
#include "printer_desc.h"

Go to the source code of this file.

Functions

static usb_sts_type | class_init_handler (void *udev)
initialize usb custom hid endpoint More...
static usb_sts_type | class_clear_handler (void *udev)
clear endpoint or other state More...
static usb_sts_type | class_setup_handler (void *udev, usb_setup_type *setup)
usb device class setup request handler More...
static usb_sts_type | class_ept0_tx_handler (void *udev)
usb device endpoint 0 in status stage complete More...
static usb_sts_type | class_ept0_rx_handler (void *udev)
usb device endpoint 0 out status stage complete More...
static usb_sts_type | class_in_handler (void *udev, uint8_t ept_num)
usb device transmision complete handler More...
static usb_sts_type | class_out_handler (void *udev, uint8_t ept_num)
usb device endpoint receive data More...
static usb_sts_type | class_sof_handler (void *udev)
usb device sof handler More...
static usb_sts_type | class_event_handler (void *udev, usbd_event_type event)
usb device event handler More...
uint16_t | usb_printer_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_printer_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

static ALIGNED_HEAD uint8_t printer_device_id[24] ALIGNED_TAIL
printer_type printer_struct
usbd_class_handler printer_class_handler

Detailed Description

usb printer class type

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file printer_class.c.


AT32F403 Firmwary Library: printer_class.h File Reference

  • middlewares
  • usbd_class
  • printer
Data Structures | Macros | Enumerations | Functions | Variables
printer_class.h File Reference

usb printer class file More...

#include "usb_std.h"
#include "usbd_core.h"

Go to the source code of this file.

Data Structures

struct printer_type

Macros

#define | USBD_PRINTER_BULK_IN_EPT 0x81
#define | USBD_PRINTER_BULK_OUT_EPT 0x01
#define | USBD_PRINTER_IN_MAXPACKET_SIZE 0x40
#define | USBD_PRINTER_OUT_MAXPACKET_SIZE 0x40
#define | PRINTER_DEVICE_ID_LEN 24

Enumerations

enum printer_req_type { PRINTER_REQ_GET_DEVICE_ID = 0x00 , PRINTER_REQ_GET_PORT_STATUS = 0x01 , PRINTER_REQ_GET_SOFT_RESET = 0x02 }

Functions

uint16_t | usb_printer_get_rxdata (void *udev, uint8_t *recv_data)
usb device class rx data process More...
error_status | usb_printer_send_data (void *udev, uint8_t *send_data, uint16_t len)
usb device class send data More...

Variables

usbd_class_handler printer_class_handler

Detailed Description

usb printer class file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file printer_class.h.


AT32F403 Firmwary Library: printer_desc.c File Reference

  • middlewares
  • usbd_class
  • printer
Functions | Variables
printer_desc.c File Reference

usb printer device descriptor More...

#include "stdio.h"
#include "usb_std.h"
#include "usbd_sdr.h"
#include "usbd_core.h"
#include "printer_desc.h"

Go to the source code of this file.

Functions

static usbd_desc_t * | get_device_descriptor (void)
get device descriptor More...
static usbd_desc_t * | get_device_qualifier (void)
get device qualifier More...
static usbd_desc_t * | get_device_configuration (void)
get config descriptor More...
static usbd_desc_t * | get_device_other_speed (void)
get other speed descriptor More...
static usbd_desc_t * | get_device_lang_id (void)
get lang id descriptor More...
static usbd_desc_t * | get_device_manufacturer_string (void)
get manufacturer descriptor More...
static usbd_desc_t * | get_device_product_string (void)
get product descriptor More...
static usbd_desc_t * | get_device_serial_string (void)
get serial descriptor More...
static usbd_desc_t * | get_device_interface_string (void)
get interface descriptor More...
static usbd_desc_t * | get_device_config_string (void)
get device config descriptor More...
static uint16_t | usbd_unicode_convert (uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert More...
static void | usbd_int_to_unicode (uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode More...
static void | get_serial_num (void)
usb get serial number More...

Variables

static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] | ALIGNED_TAIL
usb device standard descriptor More...
usbd_desc_handler printer_desc_handler
device descriptor handler structure More...
static usbd_desc_t | device_descriptor
static usbd_desc_t | config_descriptor
static usbd_desc_t | langid_descriptor
static usbd_desc_t | serial_descriptor
static usbd_desc_t | vp_desc

Detailed Description

usb printer device descriptor

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file printer_desc.c.


AT32F403 Firmwary Library: printer_desc.h File Reference

  • middlewares
  • usbd_class
  • printer
Macros | Variables
printer_desc.h File Reference

usb printer descriptor header file More...

#include "printer_class.h"
#include "usbd_core.h"

Go to the source code of this file.

Macros

#define | PRINTER_BCD_NUM 0x0110
#define | USBD_PRINTER_VENDOR_ID 0x2E3C
#define | USBD_PRINTER_PRODUCT_ID 0x57FF
#define | USBD_PRINTER_CONFIG_DESC_SIZE 32
#define | USBD_PRINTER_SIZ_STRING_LANGID 4
#define | USBD_PRINTER_SIZ_STRING_SERIAL 0x1A
#define | USBD_PRINTER_DESC_MANUFACTURER_STRING "Artery"
#define | USBD_PRINTER_DESC_PRODUCT_STRING "AT32 Printer"
#define | USBD_PRINTER_DESC_CONFIGURATION_STRING "Printer Config"
#define | USBD_PRINTER_DESC_INTERFACE_STRING "Printer Interface"
#define | PRINTER_PROTOCOL_UNIDIRECTIONAL 0x01
#define | PRINTER_PROTOCOL_BI_DIRECTIONAL 0x02
#define | PRINTER_PROTOCOL_1284_4 0x03
#define | PRINTER_PROTOCOL_VENDOR_SPECIFIC 0xFF
#define | MCU_ID1 (0x1FFFF7E8)
#define | MCU_ID2 (0x1FFFF7EC)
#define | MCU_ID3 (0x1FFFF7F0)

Variables

usbd_desc_handler printer_desc_handler
device descriptor handler structure More...

Detailed Description

usb printer descriptor header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file printer_desc.h.


AT32F403 Firmwary Library: usb_std.h File Reference

  • middlewares
  • usbd_drivers
  • inc
Data Structures | Macros | Enumerations
usb_std.h File Reference

usb standard header file More...

#include "usb_conf.h"

Go to the source code of this file.

Data Structures

struct | linecoding_type
usb cdc class set line coding struct More...
struct | usb_setup_type
format of usb setup data More...
struct | usb_device_desc_type
format of standard device descriptor More...
struct | usb_configuration_desc_type
format of standard configuration descriptor More...
struct | usb_interface_desc_type
format of standard interface descriptor More...
struct | usb_endpoint_desc_type
format of standard endpoint descriptor More...
struct | usb_header_desc_type
format of header More...

Macros

#define | USB_REQ_RECIPIENT_DEVICE 0x00
usb request recipient More...
#define | USB_REQ_RECIPIENT_INTERFACE 0x01
#define | USB_REQ_RECIPIENT_ENDPOINT 0x02
#define | USB_REQ_RECIPIENT_OTHER 0x03
#define | USB_REQ_RECIPIENT_MASK 0x1F
#define | USB_REQ_TYPE_STANDARD 0x00
usb request type More...
#define | USB_REQ_TYPE_CLASS 0x20
#define | USB_REQ_TYPE_VENDOR 0x40
#define | USB_REQ_TYPE_RESERVED 0x60
#define | USB_REQ_DIR_HTD 0x00
usb request data transfer direction More...
#define | USB_REQ_DIR_DTH 0x80
#define | USB_STD_REQ_GET_STATUS 0
usb standard device requests codes More...
#define | USB_STD_REQ_CLEAR_FEATURE 1
#define | USB_STD_REQ_SET_FEATURE 3
#define | USB_STD_REQ_SET_ADDRESS 5
#define | USB_STD_REQ_GET_DESCRIPTOR 6
#define | USB_STD_REQ_SET_DESCRIPTOR 7
#define | USB_STD_REQ_GET_CONFIGURATION 8
#define | USB_STD_REQ_SET_CONFIGURATION 9
#define | USB_STD_REQ_GET_INTERFACE 10
#define | USB_STD_REQ_SET_INTERFACE 11
#define | USB_STD_REQ_SYNCH_FRAME 12
#define | USB_DESCIPTOR_TYPE_DEVICE 1
usb standard device type More...
#define | USB_DESCIPTOR_TYPE_CONFIGURATION 2
#define | USB_DESCIPTOR_TYPE_STRING 3
#define | USB_DESCIPTOR_TYPE_INTERFACE 4
#define | USB_DESCIPTOR_TYPE_ENDPOINT 5
#define | USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER 6
#define | USB_DESCIPTOR_TYPE_OTHER_SPEED 7
#define | USB_DESCIPTOR_TYPE_INTERFACE_POWER 8
#define | USB_LANGID_STRING 0
usb standard string type More...
#define | USB_MFC_STRING 1
#define | USB_PRODUCT_STRING 2
#define | USB_SERIAL_STRING 3
#define | USB_CONFIG_STRING 4
#define | USB_INTERFACE_STRING 5
#define | USB_CONF_REMOTE_WAKEUP 2
usb configuration attributes More...
#define | USB_CONF_SELF_POWERED 1
#define | USB_FEATURE_EPT_HALT 0
usb standard feature selectors More...
#define | USB_FEATURE_REMOTE_WAKEUP 1
#define | USB_FEATURE_TEST_MODE 2
#define | USB_EPT0_IDLE 0
endpoint 0 state More...
#define | USB_EPT0_SETUP 1
#define | USB_EPT0_DATA_IN 2
#define | USB_EPT0_DATA_OUT 3
#define | USB_EPT0_STATUS_IN 4
#define | USB_EPT0_STATUS_OUT 5
#define | USB_EPT0_STALL 6
#define | USB_DEVICE_QUALIFIER_DESC_LEN 0x0A
usb descriptor length More...
#define | USB_DEVICE_DESC_LEN 0x12
#define | USB_DEVICE_CFG_DESC_LEN 0x09
#define | USB_DEVICE_IF_DESC_LEN 0x09
#define | USB_DEVICE_EPT_LEN 0x07
#define | USB_DEVICE_OTG_DESC_LEN 0x03
#define | USB_DEVICE_LANGID_STR_DESC_LEN 0x04
#define | USB_DEVICE_OTHER_SPEED_DESC_SIZ_LEN 0x09
#define | USB_CLASS_CODE_AUDIO 0x01
usb class code More...
#define | USB_CLASS_CODE_CDC 0x02
#define | USB_CLASS_CODE_HID 0x03
#define | USB_CLASS_CODE_PRINTER 0x07
#define | USB_CLASS_CODE_MSC 0x08
#define | USB_CLASS_CODE_HUB 0x09
#define | USB_CLASS_CODE_CDCDATA 0x0A
#define | USB_CLASS_CODE_CCID 0x0B
#define | USB_CLASS_CODE_VIDEO 0x0E
#define | USB_CLASS_CODE_VENDOR 0xFF
#define | USB_EPT_DESC_CONTROL 0x00
usb endpoint type More...
#define | USB_EPT_DESC_ISO 0x01
#define | USB_EPT_DESC_BULK 0x02
#define | USB_EPT_DESC_INTERRUPT 0x03
#define | USB_EPT_DESC_NSYNC 0x00
#define | USB_ETP_DESC_ASYNC 0x04
#define | USB_ETP_DESC_ADAPTIVE 0x08
#define | USB_ETP_DESC_SYNC 0x0C
#define | USB_EPT_DESC_DATA_EPT 0x00
#define | USB_EPT_DESC_FD_EPT 0x10
#define | USB_EPT_DESC_FDDATA_EPT 0x20
#define | USBD_CDC_CS_INTERFACE 0x24
usb cdc class descriptor define More...
#define | USBD_CDC_CS_ENDPOINT 0x25
#define | USBD_CDC_SUBTYPE_HEADER 0x00
usb cdc class sub-type define More...
#define | USBD_CDC_SUBTYPE_CMF 0x01
#define | USBD_CDC_SUBTYPE_ACM 0x02
#define | USBD_CDC_SUBTYPE_UFD 0x06
#define | SET_LINE_CODING 0x20
usb cdc class request code define More...
#define | GET_LINE_CODING 0x21
#define | HID_CLASS_DESC_HID 0x21
usb hid class descriptor define More...
#define | HID_CLASS_DESC_REPORT 0x22
#define | HID_CLASS_DESC_PHYSICAL 0x23
#define | HID_REQ_SET_PROTOCOL 0x0B
usb hid class request code define More...
#define | HID_REQ_GET_PROTOCOL 0x03
#define | HID_REQ_SET_IDLE 0x0A
#define | HID_REQ_GET_IDLE 0x02
#define | HID_REQ_SET_REPORT 0x09
#define | HID_REQ_GET_REPORT 0x01
#define | HID_DESCRIPTOR_TYPE 0x21
#define | HID_REPORT_DESC 0x22
#define | USB_MAX_EP0_SIZE 64
endpoint 0 max size More...
#define | SWAPBYTE(addr)
usb swap address More...
#define | MIN(a, b) (uint16_t)(((a) < (b)) ? (a) : (b))
min and max define More...
#define | MAX(a, b) (uint16_t)(((a) > (b)) ? (a) : (b))
#define | LBYTE(x) ((uint8_t)(x & 0x00FF))
low byte and high byte define More...
#define | HBYTE(x) ((uint8_t)((x & 0xFF00) >>8))

Enumerations

enum usbd_conn_state { USB_CONN_STATE_DEFAULT =1 , USB_CONN_STATE_ADDRESSED , USB_CONN_STATE_CONFIGURED , USB_CONN_STATE_SUSPENDED }
usb device connect state More...
enum usb_sts_type {
USB_OK , USB_FAIL , USB_WAIT , USB_NOT_SUPPORT ,
USB_ERROR
}
usb return status More...

Detailed Description

usb standard header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file usb_std.h.


AT32F403 Firmwary Library: usbd_core.h File Reference

  • middlewares
  • usbd_drivers
  • inc
Data Structures | Enumerations | Functions
usbd_core.h File Reference

usb device core header file More...

#include "usb_conf.h"
#include "usb_std.h"

Go to the source code of this file.

Data Structures

struct | usbd_desc_t
usb device descriptor struct More...
struct | usbd_desc_handler
usb device descriptor handler More...
struct | usbd_class_handler
usb device class handler More...
struct | usbd_core_type
usb device core struct type More...

Enumerations

enum usbd_event_type {
USBD_NOP_EVENT , USBD_RESET_EVENT , USBD_SUSPEND_EVENT , USBD_WAKEUP_EVENT ,
USBD_ERR_EVENT
}
usb device event More...

Functions

void | usbd_core_in_handler (usbd_core_type *udev, uint8_t ept_num)
usb core in transfer complete handler More...
void | usbd_core_out_handler (usbd_core_type *udev, uint8_t ept_num)
usb core out transfer complete handler More...
void | usbd_core_setup_handler (usbd_core_type *udev, uint8_t ept_num)
usb core setup transfer complete handler More...
void | usbd_ctrl_unsupport (usbd_core_type *udev)
un-support device request More...
void | usbd_ctrl_send (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data More...
void | usbd_ctrl_recv (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data More...
void | usbd_ctrl_send_status (usbd_core_type *udev)
usb control endpoint send in status More...
void | usbd_ctrl_recv_status (usbd_core_type *udev)
usb control endpoint send out status More...
void | usbd_set_stall (usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall. More...
void | usbd_clear_stall (usbd_core_type *udev, uint8_t ept_addr)
clear endpoint stall More...
void | usbd_ept_open (usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint More...
void | usbd_ept_close (usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint More...
void | usbd_ept_send (usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data More...
void | usbd_ept_recv (usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data More...
void | usbd_connect (usbd_core_type *udev)
usb device connect to host More...
void | usbd_disconnect (usbd_core_type *udev)
usb device disconnect to host More...
void | usbd_set_device_addr (usbd_core_type *udev, uint8_t address)
usb device set device address. More...
uint32_t | usbd_get_recv_len (usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length More...
usbd_conn_state | usbd_connect_state_get (usbd_core_type *udev)
get usb connect state More...
void | usbd_ept_dbuffer_enable (usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer. More...
void | usbd_ept_buf_auto_define (usb_ept_info *ept_info)
usb auto define endpoint buffer More...
void | usbd_ept_buf_custom_define (usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer More...
void | usbd_ept_defaut_init (usbd_core_type *udev)
usb endpoint structure initialization More...
void | usbd_remote_wakeup (usbd_core_type *udev)
usb device remote wakeup More...
void | usbd_enter_suspend (usbd_core_type *udev)
usb device enter suspend mode More...
void | usbd_core_init (usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core More...

Detailed Description

usb device core header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file usbd_core.h.


AT32F403 Firmwary Library: usbd_int.h File Reference

  • middlewares
  • usbd_drivers
  • inc
Functions
usbd_int.h File Reference
#include "usbd_core.h"

Go to the source code of this file.

Functions

void | usbd_irq_handler (usbd_core_type *udev)
usb device interrput request handler. More...
void | usbd_ept_loop_handler (usbd_core_type *udev)
usb device endpoint loop handler. More...
void | usbd_eptn_handler (usbd_core_type *udev, usb_ept_number_type ept_num)
usb device endpoint request handler. More...
void | usbd_reset_handler (usbd_core_type *udev)
usb device reset interrupt request handler. More...
void | usbd_sof_handler (usbd_core_type *udev)
usb device sof interrupt request handler. More...
void | usbd_suspend_handler (usbd_core_type *udev)
usb device suspend interrupt request handler. More...
void | usbd_wakeup_handler (usbd_core_type *udev)
usb device wakup interrupt request handler. More...


AT32F403 Firmwary Library: usbd_sdr.h File Reference

  • middlewares
  • usbd_drivers
  • inc
Functions
usbd_sdr.h File Reference

usb standard request header file More...

#include "usbd_core.h"

Go to the source code of this file.

Functions

void | usbd_setup_request_parse (usb_setup_type *setup, uint8_t *buf)
usb parse standard setup request More...
usb_sts_type | usbd_device_request (usbd_core_type *udev)
standard usb device requests More...
usb_sts_type | usbd_interface_request (usbd_core_type *udev)
standard usb interface requests More...
usb_sts_type | usbd_endpoint_request (usbd_core_type *udev)
standard usb endpoint requests More...

Detailed Description

usb standard request header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file usbd_sdr.h.


AT32F403 Firmwary Library: usbd_core.c File Reference

  • middlewares
  • usbd_drivers
  • src
Functions
usbd_core.c File Reference

usb driver More...

#include "usbd_core.h"
#include "usbd_sdr.h"

Go to the source code of this file.

Functions

void | usbd_core_in_handler (usbd_core_type *udev, uint8_t ept_addr)
usb core in transfer complete handler More...
void | usbd_core_out_handler (usbd_core_type *udev, uint8_t ept_addr)
usb core out transfer complete handler More...
void | usbd_core_setup_handler (usbd_core_type *udev, uint8_t ept_num)
usb core setup transfer complete handler More...
void | usbd_ctrl_send (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data More...
void | usbd_ctrl_recv (usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data More...
void | usbd_ctrl_send_status (usbd_core_type *udev)
usb control endpoint send in status More...
void | usbd_ctrl_recv_status (usbd_core_type *udev)
usb control endpoint send out status More...
void | usbd_clear_stall (usbd_core_type *udev, uint8_t ept_addr)
clear endpoint stall More...
void | usbd_set_stall (usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall. More...
void | usbd_ctrl_unsupport (usbd_core_type *udev)
un-support device request More...
void | usbd_ept_send (usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
usb endpoint send data More...
void | usbd_ept_recv (usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
usb endpoint receive data More...
uint32_t | usbd_get_recv_len (usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length More...
void | usbd_ept_dbuffer_enable (usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer. More...
void | usbd_ept_buf_auto_define (usb_ept_info *ept_info)
usb auto define endpoint buffer More...
void | usbd_ept_buf_custom_define (usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer More...
void | usbd_ept_open (usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint More...
void | usbd_ept_close (usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint More...
void | usbd_connect (usbd_core_type *udev)
usb device connect to host More...
void | usbd_disconnect (usbd_core_type *udev)
usb device disconnect to host More...
void | usbd_set_device_addr (usbd_core_type *udev, uint8_t address)
usb device set device address. More...
usbd_conn_state | usbd_connect_state_get (usbd_core_type *udev)
get usb connect state More...
void | usbd_remote_wakeup (usbd_core_type *udev)
usb device remote wakeup More...
void | usbd_enter_suspend (usbd_core_type *udev)
usb device enter suspend mode More...
void | usbd_ept_defaut_init (usbd_core_type *udev)
usb endpoint structure initialization More...
void | usbd_core_init (usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *class_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core More...

Detailed Description

usb driver

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file usbd_core.c.


AT32F403 Firmwary Library: usbd_int.c File Reference

  • middlewares
  • usbd_drivers
  • src
Functions
usbd_int.c File Reference

usb interrupt request More...

#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usbd_irq_handler (usbd_core_type *udev)
usb device interrput request handler. More...
void | usbd_eptn_handler (usbd_core_type *udev, usb_ept_number_type ept_num)
usb device endpoint request handler. More...
void | usbd_ept_loop_handler (usbd_core_type *udev)
usb device endpoint loop handler. More...
void | usbd_reset_handler (usbd_core_type *udev)
usb device reset interrupt request handler. More...
void | usbd_sof_handler (usbd_core_type *udev)
usb device sof interrupt request handler. More...
void | usbd_suspend_handler (usbd_core_type *udev)
usb device suspend interrupt request handler. More...
void | usbd_wakeup_handler (usbd_core_type *udev)
usb device wakup interrupt request handler. More...

Detailed Description

usb interrupt request

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file usbd_int.c.


AT32F403 Firmwary Library: usbd_sdr.c File Reference

  • middlewares
  • usbd_drivers
  • src
Functions
usbd_sdr.c File Reference

usb standard device request More...

#include "usbd_sdr.h"

Go to the source code of this file.

Functions

static usb_sts_type | usbd_get_descriptor (usbd_core_type *udev)
get usb standard device description request More...
static usb_sts_type | usbd_set_address (usbd_core_type *udev)
this request sets the device address More...
static usb_sts_type | usbd_get_status (usbd_core_type *udev)
get usb status request More...
static usb_sts_type | usbd_clear_feature (usbd_core_type *udev)
clear usb feature request More...
static usb_sts_type | usbd_set_feature (usbd_core_type *udev)
set usb feature request More...
static usb_sts_type | usbd_get_configuration (usbd_core_type *udev)
get usb configuration request More...
static usb_sts_type | usbd_set_configuration (usbd_core_type *udev)
sets the usb device configuration request More...
void | usbd_setup_request_parse (usb_setup_type *setup, uint8_t *buf)
usb parse standard setup request More...
usb_sts_type | usbd_device_request (usbd_core_type *udev)
standard usb device requests More...
usb_sts_type | usbd_interface_request (usbd_core_type *udev)
standard usb interface requests More...
usb_sts_type | usbd_endpoint_request (usbd_core_type *udev)
standard usb endpoint requests More...

Detailed Description

usb standard device request

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file usbd_sdr.c.


AT32F403 Firmwary Library: at32f403_board.c File Reference

  • project
  • at32f403_board
Macros | Functions | Variables
at32f403_board.c File Reference

set of firmware functions to manage leds and push-button. initialize delay function. More...

#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define | STEP_DELAY_MS 50
#define | PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)

Functions

int | fputc (int ch, FILE *f)
retargets the c library printf function to the usart. More...
void | uart_print_init (uint32_t baudrate)
initialize uart More...
void | at32_board_init ()
board initialize interface init led and button More...
void | at32_button_init (void)
configure button gpio More...
uint8_t | at32_button_state (void)
returns the selected button state More...
button_type at32_button_press ()
returns which button have press down More...
void | at32_led_init (led_type led)
configure led gpio More...
void | at32_led_on (led_type led)
turns selected led on. More...
void | at32_led_off (led_type led)
turns selected led off. More...
void | at32_led_toggle (led_type led)
turns selected led toggle. More...
void | delay_init ()
initialize delay function More...
void | delay_us (uint32_t nus)
inserts a delay time. More...
void | delay_ms (uint16_t nms)
inserts a delay time. More...
void | delay_sec (uint16_t sec)
inserts a delay time. More...

Variables

gpio_type * | led_gpio_port [3] = {LED2_GPIO, LED3_GPIO, LED4_GPIO}
uint16_t | led_gpio_pin [3] = {LED2_PIN, LED3_PIN, LED4_PIN}
crm_periph_clock_type | led_gpio_crm_clk [3] = {LED2_GPIO_CRM_CLK, LED3_GPIO_CRM_CLK, LED4_GPIO_CRM_CLK}
static __IO uint32_t | fac_us
static __IO uint32_t | fac_ms

Detailed Description

set of firmware functions to manage leds and push-button. initialize delay function.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_board.c.


AT32F403 Firmwary Library: at32f403_board.h File Reference

  • at32f403_board
Macros | Enumerations | Functions
at32f403_board.h File Reference

header file for at-start board. set of firmware functions to manage leds and push-button. initialize delay function. More...

#include "stdio.h"
#include "at32f403.h"

Go to the source code of this file.

Macros

#define | LED_NUM 3
#define | PRINT_UART USART1
#define | PRINT_UART_CRM_CLK CRM_USART1_PERIPH_CLOCK
#define | PRINT_UART_TX_PIN GPIO_PINS_9
#define | PRINT_UART_TX_GPIO GPIOA
#define | PRINT_UART_TX_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
#define | USER_BUTTON_PIN GPIO_PINS_0
#define | USER_BUTTON_PORT GPIOA
#define | USER_BUTTON_CRM_CLK CRM_GPIOA_PERIPH_CLOCK

Enumerations

enum | led_type { LED2 = 0 , LED3 = 1 , LED4 = 2 }
enum | button_type { USER_BUTTON = 0 , NO_BUTTON = 1 }

Functions

void | at32_board_init (void)
board initialize interface init led and button More...
void | at32_led_init (led_type led)
configure led gpio More...
void | at32_led_on (led_type led)
turns selected led on. More...
void | at32_led_off (led_type led)
turns selected led off. More...
void | at32_led_toggle (led_type led)
turns selected led toggle. More...
void | at32_button_init (void)
configure button gpio More...
button_type | at32_button_press (void)
returns which button have press down More...
uint8_t | at32_button_state (void)
returns the selected button state More...
void | delay_init (void)
initialize delay function More...
void | delay_us (uint32_t nus)
inserts a delay time. More...
void | delay_ms (uint16_t nms)
inserts a delay time. More...
void | delay_sec (uint16_t sec)
inserts a delay time. More...
void | uart_print_init (uint32_t baudrate)
initialize uart More...

Detailed Description

header file for at-start board. set of firmware functions to manage leds and push-button. initialize delay function.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file at32f403_board.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • at_start_f403
  • examples
  • adc
  • combine_mode_ordinary_simult
  • inc
Functions
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • current_vref_value_check
  • inc
Functions
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • exint_trigger_partitioned
  • inc
Functions
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • internal_temperature_sensor
  • inc
Functions
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • repeat_conversion_loop_transfer
  • inc
Functions
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • software_trigger_repeat
  • inc
Functions
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • tmr_trigger_automatic_preempted
  • inc
Functions
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • triple_adc_synchro_trigger
  • inc
Functions
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • adc
  • voltage_monitoring
  • inc
Functions
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • bpr
  • bpr_data
  • inc
Functions
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • bpr
  • tamper
  • inc
Functions
project/at_start_f403/examples/bpr/tamper/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/tamper/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • can
  • communication_mode
  • inc
Functions
project/at_start_f403/examples/can/communication_mode/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/communication_mode/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • can
  • filter
  • inc
Functions
project/at_start_f403/examples/can/filter/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/filter/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • can
  • loopback_mode
  • inc
Functions
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • cortex_m4
  • bit_band
  • inc
Functions
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • cortex_m4
  • cmsis_dsp
  • inc
Functions
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • cortex_m4
  • fpu
  • inc
Functions
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • cortex_m4
  • systick_interrupt
  • inc
Functions
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • crc
  • calculation
  • inc
Functions
project/at_start_f403/examples/crc/calculation/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crc/calculation/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • crm
  • clock_failure_detection
  • inc
Functions
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • crm
  • sysclk_switch
  • inc
Functions
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • dac
  • double_mode_dma_sinewave
  • inc
Functions
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • dac
  • double_mode_dma_squarewave
  • inc
Functions
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • dac
  • one_dac_dma_escalator
  • inc
Functions
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • dac
  • one_dac_noisewave
  • inc
Functions
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • dac
  • two_dac_trianglewave
  • inc
Functions
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • debug
  • tmr1
  • inc
Functions
project/at_start_f403/examples/debug/tmr1/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/debug/tmr1/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • dma
  • data_to_gpio
  • inc
Functions
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • dma
  • flash_to_sram
  • inc
Functions
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • exint
  • exint_config
  • inc
Functions
project/at_start_f403/examples/exint/exint_config/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_config/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • exint
  • exint_software_trigger
  • inc
Functions
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • flash
  • fap_enable
  • inc
Functions
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • flash
  • flash_write_read
  • inc
Functions
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • flash
  • operate_spim
  • inc
Functions
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • flash
  • run_in_spim
  • inc
Functions
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • gpio
  • io_toggle
  • inc
Functions
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • gpio
  • led_toggle
  • inc
Functions
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • gpio
  • swjtag_remap
  • inc
Functions
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • i2c
  • communication_dma
  • inc
Functions
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • i2c
  • communication_int
  • inc
Functions
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • i2c
  • communication_poll
  • inc
Functions
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • i2c
  • eeprom
  • inc
Functions
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • i2s
  • halfduplex_dma
  • inc
Functions
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • i2s
  • halfduplex_interrupt
  • inc
Functions
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • inc
Functions
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • pwc
  • deepsleep_rtc
  • inc
Functions
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • pwc
  • power_voltage_monitor
  • inc
Functions
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • pwc
  • sleep_tmr2
  • inc
Functions
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • pwc
  • sleep_usart1
  • inc
Functions
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • pwc
  • standby_rtc
  • inc
Functions
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • pwc
  • standby_wakeup_pin
  • inc
Functions
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • rtc
  • calendar
  • inc
Functions
project/at_start_f403/examples/rtc/calendar/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/calendar/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • rtc
  • lick_calibration
  • inc
Functions
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • sdio
  • sd_mmc_card
  • inc
Functions
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • sdio
  • sdio_fatfs
  • inc
Functions
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • spi
  • crc_transfer_polling
  • inc
Functions
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • spi
  • fullduplex_polling
  • inc
Functions
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • spi
  • halfduplex_interrupt
  • inc
Functions
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • spi
  • halfduplex_transceiver_switch
  • inc
Functions
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • spi
  • only_receive_mode_polling
  • inc
Functions
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • inc
Functions
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • spi
  • w25q_flash
  • inc
Functions
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • 6_steps
  • inc
Functions
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • 7_pwm_output
  • inc
Functions
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • cascade_synchro
  • inc
Functions
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • complementary_signals
  • inc
Functions
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • dma
  • inc
Functions
project/at_start_f403/examples/tmr/dma/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • dma_burst
  • inc
Functions
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • encoder_tmr2
  • inc
Functions
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • external_clock
  • inc
Functions
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • hall_xor_tmr2
  • inc
Functions
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • hang_mode
  • inc
Functions
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • input_capture
  • inc
Functions
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • oc_high
  • inc
Functions
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • oc_low
  • inc
Functions
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • oc_toggle_tmr3
  • inc
Functions
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • oc_toggle_tmr9
  • inc
Functions
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • one_cycle
  • inc
Functions
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • parallel_synchro
  • inc
Functions
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • pwm_input
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • pwm_input_dma
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • pwm_output_simulate
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • pwm_output_tmr10
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • pwm_output_tmr3
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • timer_base
  • inc
Functions
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • tmr1_synchro
  • inc
Functions
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • tmr
  • tmr2_32bit
  • inc
Functions
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • half_duplex
  • inc
Functions
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • hw_flow_control
  • inc
Functions
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • idle_detection
  • inc
Functions
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • interrupt
  • inc
Functions
project/at_start_f403/examples/usart/interrupt/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/interrupt/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • irda
  • inc
Functions
project/at_start_f403/examples/usart/irda/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/irda/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • polling
  • inc
Functions
project/at_start_f403/examples/usart/polling/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/polling/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • printf
  • inc
Functions
project/at_start_f403/examples/usart/printf/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/printf/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • receiver_mute
  • inc
Functions
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • rs485
  • inc
Functions
project/at_start_f403/examples/usart/rs485/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/rs485/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • smartcard
  • inc
Functions
project/at_start_f403/examples/usart/smartcard/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/smartcard/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • synchronous
  • inc
Functions
project/at_start_f403/examples/usart/synchronous/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/synchronous/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • transfer_by_dma_interrupt
  • inc
Functions
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usart
  • transfer_by_dma_polling
  • inc
Functions
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • audio
  • inc
Functions
project/at_start_f403/examples/usb_device/audio/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/audio/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • composite_audio_hid
  • inc
Functions
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • composite_vcp_keyboard
  • inc
Functions
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • composite_vcp_msc
  • inc
Functions
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • custom_hid
  • inc
Functions
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • keyboard
  • inc
Functions
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • mouse
  • inc
Functions
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • msc
  • inc
Functions
project/at_start_f403/examples/usb_device/msc/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/msc/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • printer
  • inc
Functions
project/at_start_f403/examples/usb_device/printer/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/printer/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • vcp_loopback
  • inc
Functions
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • virtual_comport
  • inc
Functions
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • usb_device
  • virtual_msc_iap
  • inc
Functions
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • wdt
  • wdt_reset
  • inc
Functions
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • wdt
  • wdt_standby
  • inc
Functions
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • wwdt
  • wwdt_reset
  • inc
Functions
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • lcd_8bit
  • inc
Functions
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • lcd_touch_16bit
  • inc
Functions
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • nand
  • ecc
  • inc
Functions
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • nand
  • nand
  • inc
Functions
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • nor
  • inc
Functions
project/at_start_f403/examples/xmc/nor/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nor/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • pc_card
  • inc
Functions
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • psram
  • inc
Functions
project/at_start_f403/examples/xmc/psram/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/psram/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • xmc
  • sram
  • inc
Functions
project/at_start_f403/examples/xmc/sram/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/sram/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • templates
  • inc
Functions
project/at_start_f403/templates/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/templates/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_freertos_demo
  • inc
Functions
utilities/at32f403_freertos_demo/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_freertos_demo/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • inc
Functions
utilities/at32f403_gen_random_number_demo/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_gen_random_number_demo/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
Functions
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_clock.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
Functions
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_clock.h File Reference

header file of clock program More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void system_clock_config (void)
system clock config program More...

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_clock.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • combine_mode_ordinary_simult
  • inc
Macros
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • current_vref_value_check
  • inc
Macros
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • exint_trigger_partitioned
  • inc
Macros
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • internal_temperature_sensor
  • inc
Macros
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • repeat_conversion_loop_transfer
  • inc
Macros
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • software_trigger_repeat
  • inc
Macros
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • tmr_trigger_automatic_preempted
  • inc
Macros
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • triple_adc_synchro_trigger
  • inc
Macros
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • adc
  • voltage_monitoring
  • inc
Macros
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • bpr
  • bpr_data
  • inc
Macros
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • bpr
  • tamper
  • inc
Macros
project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • can
  • communication_mode
  • inc
Macros
project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • can
  • filter
  • inc
Macros
project/at_start_f403/examples/can/filter/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/can/filter/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • can
  • loopback_mode
  • inc
Macros
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • cortex_m4
  • bit_band
  • inc
Macros
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • cortex_m4
  • cmsis_dsp
  • inc
Macros
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • cortex_m4
  • fpu
  • inc
Macros
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • cortex_m4
  • systick_interrupt
  • inc
Macros
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • crc
  • calculation
  • inc
Macros
project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • crm
  • clock_failure_detection
  • inc
Macros
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • crm
  • sysclk_switch
  • inc
Macros
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • dac
  • double_mode_dma_sinewave
  • inc
Macros
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • dac
  • double_mode_dma_squarewave
  • inc
Macros
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • dac
  • one_dac_dma_escalator
  • inc
Macros
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • dac
  • one_dac_noisewave
  • inc
Macros
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • dac
  • two_dac_trianglewave
  • inc
Macros
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • debug
  • tmr1
  • inc
Macros
project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • dma
  • data_to_gpio
  • inc
Macros
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • dma
  • flash_to_sram
  • inc
Macros
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • exint
  • exint_config
  • inc
Macros
project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • exint
  • exint_software_trigger
  • inc
Macros
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • flash
  • fap_enable
  • inc
Macros
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • flash
  • flash_write_read
  • inc
Macros
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • flash
  • operate_spim
  • inc
Macros
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • flash
  • run_in_spim
  • inc
Macros
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • gpio
  • io_toggle
  • inc
Macros
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • gpio
  • led_toggle
  • inc
Macros
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • gpio
  • swjtag_remap
  • inc
Macros
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • i2c
  • communication_dma
  • inc
Macros
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • i2c
  • communication_int
  • inc
Macros
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • i2c
  • communication_poll
  • inc
Macros
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • i2c
  • eeprom
  • inc
Macros
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • i2s
  • halfduplex_dma
  • inc
Macros
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • i2s
  • halfduplex_interrupt
  • inc
Macros
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • inc
Macros
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • pwc
  • deepsleep_rtc
  • inc
Macros
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • pwc
  • power_voltage_monitor
  • inc
Macros
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • pwc
  • sleep_tmr2
  • inc
Macros
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • pwc
  • sleep_usart1
  • inc
Macros
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • pwc
  • standby_rtc
  • inc
Macros
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • pwc
  • standby_wakeup_pin
  • inc
Macros
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • rtc
  • calendar
  • inc
Macros
project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • rtc
  • lick_calibration
  • inc
Macros
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • sdio
  • sd_mmc_card
  • inc
Macros
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • sdio
  • sdio_fatfs
  • inc
Macros
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • spi
  • crc_transfer_polling
  • inc
Macros
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • spi
  • fullduplex_polling
  • inc
Macros
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • spi
  • halfduplex_interrupt
  • inc
Macros
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • spi
  • halfduplex_transceiver_switch
  • inc
Macros
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • spi
  • only_receive_mode_polling
  • inc
Macros
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • inc
Macros
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • spi
  • w25q_flash
  • inc
Macros
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • 6_steps
  • inc
Macros
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • 7_pwm_output
  • inc
Macros
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • cascade_synchro
  • inc
Macros
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • complementary_signals
  • inc
Macros
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • dma
  • inc
Macros
project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • dma_burst
  • inc
Macros
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • encoder_tmr2
  • inc
Macros
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • external_clock
  • inc
Macros
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • hall_xor_tmr2
  • inc
Macros
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • hang_mode
  • inc
Macros
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • input_capture
  • inc
Macros
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • oc_high
  • inc
Macros
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • oc_low
  • inc
Macros
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • oc_toggle_tmr3
  • inc
Macros
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • oc_toggle_tmr9
  • inc
Macros
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • one_cycle
  • inc
Macros
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • parallel_synchro
  • inc
Macros
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • pwm_input
  • inc
Macros
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • pwm_input_dma
  • inc
Macros
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • pwm_output_simulate
  • inc
Macros
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • pwm_output_tmr10
  • inc
Macros
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • pwm_output_tmr3
  • inc
Macros
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • timer_base
  • inc
Macros
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • tmr1_synchro
  • inc
Macros
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • tmr
  • tmr2_32bit
  • inc
Macros
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • half_duplex
  • inc
Macros
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • hw_flow_control
  • inc
Macros
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • idle_detection
  • inc
Macros
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • interrupt
  • inc
Macros
project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • irda
  • inc
Macros
project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • polling
  • inc
Macros
project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • printf
  • inc
Macros
project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • receiver_mute
  • inc
Macros
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • rs485
  • inc
Macros
project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • smartcard
  • inc
Macros
project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • synchronous
  • inc
Macros
project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • transfer_by_dma_interrupt
  • inc
Macros
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usart
  • transfer_by_dma_polling
  • inc
Macros
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • audio
  • inc
Macros
project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • composite_audio_hid
  • inc
Macros
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • composite_vcp_keyboard
  • inc
Macros
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • composite_vcp_msc
  • inc
Macros
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • custom_hid
  • inc
Macros
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • keyboard
  • inc
Macros
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • mouse
  • inc
Macros
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • msc
  • inc
Macros
project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • printer
  • inc
Macros
project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • vcp_loopback
  • inc
Macros
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • virtual_comport
  • inc
Macros
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • usb_device
  • virtual_msc_iap
  • inc
Macros
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • wdt
  • wdt_reset
  • inc
Macros
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • wdt
  • wdt_standby
  • inc
Macros
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • wwdt
  • wwdt_reset
  • inc
Macros
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • lcd_8bit
  • inc
Macros
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • lcd_touch_16bit
  • inc
Macros
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • nand
  • ecc
  • inc
Macros
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • nand
  • nand
  • inc
Macros
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • nor
  • inc
Macros
project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • pc_card
  • inc
Macros
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • psram
  • inc
Macros
project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • xmc
  • sram
  • inc
Macros
project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • templates
  • inc
Macros
project/at_start_f403/templates/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/templates/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_freertos_demo
  • inc
Macros
utilities/at32f403_freertos_demo/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_freertos_demo/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • inc
Macros
utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Macros
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Macros
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
Macros
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Macros
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Macros
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_conf.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
Macros
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h File Reference

at32f403 config header file More...

#include "at32f403_crm.h"
#include "at32f403_tmr.h"
#include "at32f403_rtc.h"
#include "at32f403_bpr.h"
#include "at32f403_gpio.h"
#include "at32f403_i2c.h"
#include "at32f403_usart.h"
#include "at32f403_pwc.h"
#include "at32f403_can.h"
#include "at32f403_adc.h"
#include "at32f403_dac.h"
#include "at32f403_spi.h"
#include "at32f403_dma.h"
#include "at32f403_debug.h"
#include "at32f403_flash.h"
#include "at32f403_crc.h"
#include "at32f403_wwdt.h"
#include "at32f403_wdt.h"
#include "at32f403_exint.h"
#include "at32f403_sdio.h"
#include "at32f403_xmc.h"
#include "at32f403_misc.h"
#include "at32f403_usb.h"

Go to the source code of this file.

Macros

#define | HEXT_VALUE ((uint32_t)8000000)
in the following line adjust the value of high speed external crystal (hext) used in your application More...
#define | HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
in the following line adjust the high speed external crystal (hext) startup timeout value More...
#define | HICK_VALUE ((uint32_t)8000000)
#define | LEXT_VALUE ((uint32_t)32768)
#define | CRM_MODULE_ENABLED
#define | TMR_MODULE_ENABLED
#define | RTC_MODULE_ENABLED
#define | BPR_MODULE_ENABLED
#define | GPIO_MODULE_ENABLED
#define | I2C_MODULE_ENABLED
#define | USART_MODULE_ENABLED
#define | PWC_MODULE_ENABLED
#define | CAN_MODULE_ENABLED
#define | ADC_MODULE_ENABLED
#define | DAC_MODULE_ENABLED
#define | SPI_MODULE_ENABLED
#define | DMA_MODULE_ENABLED
#define | DEBUG_MODULE_ENABLED
#define | FLASH_MODULE_ENABLED
#define | CRC_MODULE_ENABLED
#define | WWDT_MODULE_ENABLED
#define | WDT_MODULE_ENABLED
#define | EXINT_MODULE_ENABLED
#define | SDIO_MODULE_ENABLED
#define | XMC_MODULE_ENABLED
#define | USB_MODULE_ENABLED
#define | MISC_MODULE_ENABLED

Detailed Description

at32f403 config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

Macro Definition Documentation

◆ ADC_MODULE_ENABLED

#define ADC_MODULE_ENABLED

Definition at line 63 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ BPR_MODULE_ENABLED

#define BPR_MODULE_ENABLED

Definition at line 57 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ CAN_MODULE_ENABLED

#define CAN_MODULE_ENABLED

Definition at line 62 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ CRC_MODULE_ENABLED

#define CRC_MODULE_ENABLED

Definition at line 69 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ CRM_MODULE_ENABLED

#define CRM_MODULE_ENABLED

Definition at line 54 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ DAC_MODULE_ENABLED

#define DAC_MODULE_ENABLED

Definition at line 64 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ DEBUG_MODULE_ENABLED

#define DEBUG_MODULE_ENABLED

Definition at line 67 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ DMA_MODULE_ENABLED

#define DMA_MODULE_ENABLED

Definition at line 66 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ EXINT_MODULE_ENABLED

#define EXINT_MODULE_ENABLED

Definition at line 72 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ FLASH_MODULE_ENABLED

#define FLASH_MODULE_ENABLED

Definition at line 68 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ GPIO_MODULE_ENABLED

#define GPIO_MODULE_ENABLED

Definition at line 58 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ HEXT_STARTUP_TIMEOUT

#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)

in the following line adjust the high speed external crystal (hext) startup timeout value

time out for hext start up

Definition at line 49 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ HEXT_VALUE

#define HEXT_VALUE ((uint32_t)8000000)

in the following line adjust the value of high speed external crystal (hext) used in your application

tip: to avoid modifying this file each time you need to use different hext, you can define the hext value in your toolchain compiler preprocessor. value of the high speed external crystal in hz

Definition at line 42 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ HICK_VALUE

#define HICK_VALUE ((uint32_t)8000000)

value of the high speed internal clock in hz

Definition at line 50 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ I2C_MODULE_ENABLED

#define I2C_MODULE_ENABLED

Definition at line 59 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ LEXT_VALUE

#define LEXT_VALUE ((uint32_t)32768)

value of the low speed external clock in hz

Definition at line 51 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ MISC_MODULE_ENABLED

#define MISC_MODULE_ENABLED

Definition at line 76 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ PWC_MODULE_ENABLED

#define PWC_MODULE_ENABLED

Definition at line 61 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ RTC_MODULE_ENABLED

#define RTC_MODULE_ENABLED

Definition at line 56 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ SDIO_MODULE_ENABLED

#define SDIO_MODULE_ENABLED

Definition at line 73 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ SPI_MODULE_ENABLED

#define SPI_MODULE_ENABLED

Definition at line 65 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ TMR_MODULE_ENABLED

#define TMR_MODULE_ENABLED

Definition at line 55 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ USART_MODULE_ENABLED

#define USART_MODULE_ENABLED

Definition at line 60 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ USB_MODULE_ENABLED

#define USB_MODULE_ENABLED

Definition at line 75 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ WDT_MODULE_ENABLED

#define WDT_MODULE_ENABLED

Definition at line 71 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ WWDT_MODULE_ENABLED

#define WWDT_MODULE_ENABLED

Definition at line 70 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.

◆ XMC_MODULE_ENABLED

#define XMC_MODULE_ENABLED

Definition at line 74 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • combine_mode_ordinary_simult
  • inc
Functions
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • current_vref_value_check
  • inc
Functions
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • exint_trigger_partitioned
  • inc
Functions
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • internal_temperature_sensor
  • inc
Functions
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • repeat_conversion_loop_transfer
  • inc
Functions
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • software_trigger_repeat
  • inc
Functions
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • tmr_trigger_automatic_preempted
  • inc
Functions
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • triple_adc_synchro_trigger
  • inc
Functions
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • adc
  • voltage_monitoring
  • inc
Functions
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • bpr
  • bpr_data
  • inc
Functions
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • bpr
  • tamper
  • inc
Functions
project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • can
  • communication_mode
  • inc
Functions
project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • can
  • filter
  • inc
Functions
project/at_start_f403/examples/can/filter/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/filter/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • can
  • loopback_mode
  • inc
Functions
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • cortex_m4
  • bit_band
  • inc
Functions
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • cortex_m4
  • cmsis_dsp
  • inc
Functions
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • cortex_m4
  • fpu
  • inc
Functions
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • cortex_m4
  • systick_interrupt
  • inc
Functions
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • crc
  • calculation
  • inc
Functions
project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • crm
  • clock_failure_detection
  • inc
Functions
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • crm
  • sysclk_switch
  • inc
Functions
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • dac
  • double_mode_dma_sinewave
  • inc
Functions
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • dac
  • double_mode_dma_squarewave
  • inc
Functions
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • dac
  • one_dac_dma_escalator
  • inc
Functions
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • dac
  • one_dac_noisewave
  • inc
Functions
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • dac
  • two_dac_trianglewave
  • inc
Functions
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • debug
  • tmr1
  • inc
Functions
project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • dma
  • data_to_gpio
  • inc
Functions
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • dma
  • flash_to_sram
  • inc
Functions
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • exint
  • exint_config
  • inc
Functions
project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • exint
  • exint_software_trigger
  • inc
Functions
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • flash
  • fap_enable
  • inc
Functions
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • flash
  • flash_write_read
  • inc
Functions
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • flash
  • operate_spim
  • inc
Functions
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • flash
  • run_in_spim
  • inc
Functions
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • gpio
  • io_toggle
  • inc
Functions
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • gpio
  • led_toggle
  • inc
Functions
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • gpio
  • swjtag_remap
  • inc
Functions
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • i2c
  • communication_dma
  • inc
Functions
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • i2c
  • communication_int
  • inc
Functions
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • i2c
  • communication_poll
  • inc
Functions
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • i2c
  • eeprom
  • inc
Functions
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • i2s
  • halfduplex_dma
  • inc
Functions
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • i2s
  • halfduplex_interrupt
  • inc
Functions
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • inc
Functions
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • pwc
  • deepsleep_rtc
  • inc
Functions
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • pwc
  • power_voltage_monitor
  • inc
Functions
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • pwc
  • sleep_tmr2
  • inc
Functions
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • pwc
  • sleep_usart1
  • inc
Functions
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • pwc
  • standby_rtc
  • inc
Functions
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • pwc
  • standby_wakeup_pin
  • inc
Functions
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • rtc
  • calendar
  • inc
Functions
project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • rtc
  • lick_calibration
  • inc
Functions
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • sdio
  • sd_mmc_card
  • inc
Functions
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • sdio
  • sdio_fatfs
  • inc
Functions
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • spi
  • crc_transfer_polling
  • inc
Functions
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • spi
  • fullduplex_polling
  • inc
Functions
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • spi
  • halfduplex_interrupt
  • inc
Functions
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • spi
  • halfduplex_transceiver_switch
  • inc
Functions
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • spi
  • only_receive_mode_polling
  • inc
Functions
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • inc
Functions
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • spi
  • w25q_flash
  • inc
Functions
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • 6_steps
  • inc
Functions
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • 7_pwm_output
  • inc
Functions
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • cascade_synchro
  • inc
Functions
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • complementary_signals
  • inc
Functions
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • dma
  • inc
Functions
project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • dma_burst
  • inc
Functions
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • encoder_tmr2
  • inc
Functions
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • external_clock
  • inc
Functions
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • hall_xor_tmr2
  • inc
Functions
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • hang_mode
  • inc
Functions
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • input_capture
  • inc
Functions
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • oc_high
  • inc
Functions
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • oc_low
  • inc
Functions
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • oc_toggle_tmr3
  • inc
Functions
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • oc_toggle_tmr9
  • inc
Functions
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • one_cycle
  • inc
Functions
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • parallel_synchro
  • inc
Functions
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • pwm_input
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • pwm_input_dma
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • pwm_output_simulate
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • pwm_output_tmr10
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • pwm_output_tmr3
  • inc
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • timer_base
  • inc
Functions
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • tmr1_synchro
  • inc
Functions
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • tmr
  • tmr2_32bit
  • inc
Functions
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • half_duplex
  • inc
Functions
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • hw_flow_control
  • inc
Functions
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • idle_detection
  • inc
Functions
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • interrupt
  • inc
Functions
project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • irda
  • inc
Functions
project/at_start_f403/examples/usart/irda/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/irda/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • polling
  • inc
Functions
project/at_start_f403/examples/usart/polling/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/polling/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • printf
  • inc
Functions
project/at_start_f403/examples/usart/printf/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/printf/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • receiver_mute
  • inc
Functions
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • rs485
  • inc
Functions
project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • smartcard
  • inc
Functions
project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • synchronous
  • inc
Functions
project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • transfer_by_dma_interrupt
  • inc
Functions
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usart
  • transfer_by_dma_polling
  • inc
Functions
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • audio
  • inc
Functions
project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • composite_audio_hid
  • inc
Functions
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • composite_vcp_keyboard
  • inc
Functions
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • composite_vcp_msc
  • inc
Functions
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • custom_hid
  • inc
Functions
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • keyboard
  • inc
Functions
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • mouse
  • inc
Functions
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • msc
  • inc
Functions
project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • printer
  • inc
Functions
project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • vcp_loopback
  • inc
Functions
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • virtual_comport
  • inc
Functions
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • usb_device
  • virtual_msc_iap
  • inc
Functions
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • wdt
  • wdt_reset
  • inc
Functions
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • wdt
  • wdt_standby
  • inc
Functions
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • wwdt
  • wwdt_reset
  • inc
Functions
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • lcd_8bit
  • inc
Functions
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • lcd_touch_16bit
  • inc
Functions
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • nand
  • ecc
  • inc
Functions
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • nand
  • nand
  • inc
Functions
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • nor
  • inc
Functions
project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • pc_card
  • inc
Functions
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • psram
  • inc
Functions
project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • xmc
  • sram
  • inc
Functions
project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • templates
  • inc
Functions
project/at_start_f403/templates/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/templates/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_freertos_demo
  • inc
Functions
utilities/at32f403_freertos_demo/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_freertos_demo/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • inc
Functions
utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
Functions
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_int.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
Functions
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h File Reference

header file of main interrupt service routines. More...

#include "at32f403.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

header file of main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h.


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • combine_mode_ordinary_simult
  • src
Functions
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • current_vref_value_check
  • src
Functions
project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • exint_trigger_partitioned
  • src
Functions
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • internal_temperature_sensor
  • src
Functions
project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • repeat_conversion_loop_transfer
  • src
Functions
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • software_trigger_repeat
  • src
Functions
project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • tmr_trigger_automatic_preempted
  • src
Functions
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • triple_adc_synchro_trigger
  • src
Functions
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • adc
  • voltage_monitoring
  • src
Functions
project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • bpr
  • bpr_data
  • src
Functions
project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • bpr
  • tamper
  • src
Functions
project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • can
  • communication_mode
  • src
Functions
project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • can
  • filter
  • src
Functions
project/at_start_f403/examples/can/filter/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/filter/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/can/filter/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/can/filter/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • can
  • loopback_mode
  • src
Functions
project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • cortex_m4
  • bit_band
  • src
Functions
project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • cortex_m4
  • cmsis_dsp
  • src
Functions
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • cortex_m4
  • fpu
  • src
Functions
project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • cortex_m4
  • systick_interrupt
  • src
Functions
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • crc
  • calculation
  • src
Functions
project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • crm
  • clock_failure_detection
  • src
Functions
project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • crm
  • sysclk_switch
  • src
Functions
project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • dac
  • double_mode_dma_sinewave
  • src
Functions
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • dac
  • double_mode_dma_squarewave
  • src
Functions
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • dac
  • one_dac_dma_escalator
  • src
Functions
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • dac
  • one_dac_noisewave
  • src
Functions
project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • dac
  • two_dac_trianglewave
  • src
Functions
project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • debug
  • tmr1
  • src
Functions
project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • dma
  • data_to_gpio
  • src
Functions
project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • dma
  • flash_to_sram
  • src
Functions
project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • exint
  • exint_config
  • src
Functions
project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • exint
  • exint_software_trigger
  • src
Functions
project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • flash
  • fap_enable
  • src
Functions
project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • flash
  • flash_write_read
  • src
Functions
project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • flash
  • operate_spim
  • src
Functions
project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 120000000
  • ahbdiv = 1
  • ahbclk = 120000000
  • apb2div = 2
  • apb2clk = 60000000
  • apb1div = 2
  • apb1clk = 60000000
  • pll_mult = 30
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • flash
  • run_in_spim
  • src
Functions
project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 120000000
  • ahbdiv = 1
  • ahbclk = 120000000
  • apb2div = 2
  • apb2clk = 60000000
  • apb1div = 2
  • apb1clk = 60000000
  • pll_mult = 30
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • gpio
  • io_toggle
  • src
Functions
project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • gpio
  • led_toggle
  • src
Functions
project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • gpio
  • swjtag_remap
  • src
Functions
project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • i2c
  • communication_dma
  • src
Functions
project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • i2c
  • communication_int
  • src
Functions
project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • i2c
  • communication_poll
  • src
Functions
project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • i2c
  • eeprom
  • src
Functions
project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • i2s
  • halfduplex_dma
  • src
Functions
project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • i2s
  • halfduplex_interrupt
  • src
Functions
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • src
Functions
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • pwc
  • deepsleep_rtc
  • src
Functions
project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • pwc
  • power_voltage_monitor
  • src
Functions
project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • pwc
  • sleep_tmr2
  • src
Functions
project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • pwc
  • sleep_usart1
  • src
Functions
project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • pwc
  • standby_rtc
  • src
Functions
project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • pwc
  • standby_wakeup_pin
  • src
Functions
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • rtc
  • calendar
  • src
Functions
project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • rtc
  • lick_calibration
  • src
Functions
project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • sdio
  • sd_mmc_card
  • src
Functions
project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • sdio
  • sdio_fatfs
  • src
Functions
project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • spi
  • crc_transfer_polling
  • src
Functions
project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • spi
  • fullduplex_polling
  • src
Functions
project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • spi
  • halfduplex_interrupt
  • src
Functions
project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • spi
  • halfduplex_transceiver_switch
  • src
Functions
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • spi
  • only_receive_mode_polling
  • src
Functions
project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • src
Functions
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • spi
  • w25q_flash
  • src
Functions
project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • 6_steps
  • src
Functions
project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • 7_pwm_output
  • src
Functions
project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • cascade_synchro
  • src
Functions
project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • complementary_signals
  • src
Functions
project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • dma
  • src
Functions
project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • dma_burst
  • src
Functions
project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • encoder_tmr2
  • src
Functions
project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • external_clock
  • src
Functions
project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • hall_xor_tmr2
  • src
Functions
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • hang_mode
  • src
Functions
project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • input_capture
  • src
Functions
project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • oc_high
  • src
Functions
project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • oc_low
  • src
Functions
project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • oc_toggle_tmr3
  • src
Functions
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • oc_toggle_tmr9
  • src
Functions
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • one_cycle
  • src
Functions
project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • parallel_synchro
  • src
Functions
project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • pwm_input
  • src
Functions
project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • pwm_input_dma
  • src
Functions
project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • pwm_output_simulate
  • src
Functions
project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • pwm_output_tmr10
  • src
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • pwm_output_tmr3
  • src
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • timer_base
  • src
Functions
project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • tmr1_synchro
  • src
Functions
project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • tmr
  • tmr2_32bit
  • src
Functions
project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • half_duplex
  • src
Functions
project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • hw_flow_control
  • src
Functions
project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • idle_detection
  • src
Functions
project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • interrupt
  • src
Functions
project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • irda
  • src
Functions
project/at_start_f403/examples/usart/irda/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/irda/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/irda/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/irda/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • polling
  • src
Functions
project/at_start_f403/examples/usart/polling/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/polling/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/polling/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/polling/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • printf
  • src
Functions
project/at_start_f403/examples/usart/printf/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/printf/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/printf/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/printf/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • receiver_mute
  • src
Functions
project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • rs485
  • src
Functions
project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • smartcard
  • src
Functions
project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • synchronous
  • src
Functions
project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • transfer_by_dma_interrupt
  • src
Functions
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usart
  • transfer_by_dma_polling
  • src
Functions
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • audio
  • src
Functions
project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • composite_audio_hid
  • src
Functions
project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • composite_vcp_keyboard
  • src
Functions
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • composite_vcp_msc
  • src
Functions
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • custom_hid
  • src
Functions
project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • keyboard
  • src
Functions
project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • mouse
  • src
Functions
project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • msc
  • src
Functions
project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • printer
  • src
Functions
project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • vcp_loopback
  • src
Functions
project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • virtual_comport
  • src
Functions
project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • usb_device
  • virtual_msc_iap
  • src
Functions
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • wdt
  • wdt_reset
  • src
Functions
project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • wdt
  • wdt_standby
  • src
Functions
project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • wwdt
  • wwdt_reset
  • src
Functions
project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • lcd_8bit
  • src
Functions
project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • lcd_touch_16bit
  • src
Functions
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • nand
  • ecc
  • src
Functions
project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • nand
  • nand
  • src
Functions
project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • nor
  • src
Functions
project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • pc_card
  • src
Functions
project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • psram
  • src
Functions
project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • xmc
  • sram
  • src
Functions
project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c.

Function Documentation

◆ system_clock_config()

void system_clock_config ( void )

system clock config program

Note
the system clock is configured as follow: system clock (sclk) = hext / 2 * pll_mult system clock source = pll (hext)
  • hext = HEXT_VALUE
  • sclk = 192000000
  • ahbdiv = 1
  • ahbclk = 192000000
  • apb2div = 2
  • apb2clk = 96000000
  • apb1div = 2
  • apb1clk = 96000000
  • pll_mult = 48
  • pll_range = GT72MHZ (greater than 72 mhz)
Parameters
none
Return values
none

< phase locking loop stable flag

Definition at line 59 of file project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c.

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • templates
  • src
Functions
project/at_start_f403/templates/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/templates/src/at32f403_clock.c.


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_freertos_demo
  • src
Functions
utilities/at32f403_freertos_demo/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_freertos_demo/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_freertos_demo/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • src
Functions
utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_clock.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
Functions
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c File Reference

system clock config program More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | system_clock_config (void)
system clock config program More...

Detailed Description

system clock config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c.

Function Documentation

◆ wait_stbl()

static void wait_stbl ( uint32_t delay )
static

delay to wait for stable.

Note
this function should be used before reading stable flag.
Parameters
none
Return values
none

Definition at line 34 of file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c.

Referenced by system_clock_config().


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • combine_mode_ordinary_simult
  • src
Functions | Variables
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...

Variables

__IO uint32_t | adc1_ordinary_valuetab [5][3]
__IO uint32_t | dma1_trans_complete_flag

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • current_vref_value_check
  • src
Functions
project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • exint_trigger_partitioned
  • src
Functions | Variables
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
void | ADC1_2_IRQHandler (void)
this function handles adc1_2 handler. More...

Variables

__IO uint16_t | adc1_preempt_valuetab [3][3]
__IO uint16_t | dma_trans_complete_flag
__IO uint16_t | preempt_trigger_count

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • internal_temperature_sensor
  • src
Functions
project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • repeat_conversion_loop_transfer
  • src
Functions | Variables
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...

Variables

__IO uint16_t dma_trans_complete_flag

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • software_trigger_repeat
  • src
Functions | Variables
project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...

Variables

__IO uint16_t dma_trans_complete_flag

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • tmr_trigger_automatic_preempted
  • src
Functions | Variables
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
void | ADC1_2_IRQHandler (void)
this function handles adc1_2 handler. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [5][3]
__IO uint16_t | adc1_preempt_valuetab [5][3]
__IO uint16_t | dma_trans_complete_flag
__IO uint16_t | preempt_conversion_count

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • triple_adc_synchro_trigger
  • src
Functions | Variables
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1_channel1 handler. More...
void | DMA2_Channel4_5_IRQHandler (void)
this function handles dma2_channel4_5 handler. More...

Variables

__IO uint32_t | adc1_ordinary_valuetab [5][3]
__IO uint16_t | adc3_ordinary_valuetab [5][3]
__IO uint32_t | dma1_trans_complete_flag
__IO uint32_t | dma2_trans_complete_flag

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • adc
  • voltage_monitoring
  • src
Functions | Variables
project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | ADC1_2_IRQHandler (void)
this function handles adc1_2 handler. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3]
__IO uint16_t | vmor_flag_index

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • bpr
  • bpr_data
  • src
Functions
project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • bpr
  • tamper
  • src
Functions
project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

uint32_t | bpr_reg_judge (void)
checks if the bpr dt registers are reset or not. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TAMPER_IRQHandler (void)
this function handles tamper interrupt request. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • can
  • communication_mode
  • src
Functions
project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • can
  • filter
  • src
Functions
project/at_start_f403/examples/can/filter/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/filter/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • can
  • loopback_mode
  • src
Functions
project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • cortex_m4
  • bit_band
  • src
Functions
project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • cortex_m4
  • cmsis_dsp
  • src
Functions
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • cortex_m4
  • fpu
  • src
Functions
project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • cortex_m4
  • systick_interrupt
  • src
Functions
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | systick_handler (void)
systick interrupt handler. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • crc
  • calculation
  • src
Functions
project/at_start_f403/examples/crc/calculation/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crc/calculation/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • crm
  • clock_failure_detection
  • src
Functions
project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | clock_failure_detection_handler (void)
clock failure detection handler. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • crm
  • sysclk_switch
  • src
Functions
project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • dac
  • double_mode_dma_sinewave
  • src
Functions
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • dac
  • double_mode_dma_squarewave
  • src
Functions
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • dac
  • one_dac_dma_escalator
  • src
Functions
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • dac
  • one_dac_noisewave
  • src
Functions
project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • dac
  • two_dac_trianglewave
  • src
Functions
project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • debug
  • tmr1
  • src
Functions
project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • dma
  • data_to_gpio
  • src
Functions
project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • dma
  • flash_to_sram
  • src
Functions
project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • exint
  • exint_config
  • src
Functions
project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • exint
  • exint_software_trigger
  • src
Functions
project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • flash
  • fap_enable
  • src
Functions
project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • flash
  • flash_write_read
  • src
Functions
project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • flash
  • operate_spim
  • src
Functions
project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • flash
  • run_in_spim
  • src
Functions
project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • gpio
  • io_toggle
  • src
Functions
project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • gpio
  • led_toggle
  • src
Functions
project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • gpio
  • swjtag_remap
  • src
Functions
project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • i2c
  • communication_dma
  • src
Macros | Functions | Variables
project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | I2Cx_DMA_TX_IRQHandler DMA1_Channel6_IRQHandler
#define | I2Cx_DMA_RX_IRQHandler DMA1_Channel7_IRQHandler
#define | I2Cx_EVT_IRQHandler I2C1_EVT_IRQHandler
#define | I2Cx_ERR_IRQHandler I2C1_ERR_IRQHandler

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel7_IRQHandler (void)
this function handles dma interrupt request. More...
void | DMA1_Channel6_IRQHandler (void)
this function handles dma interrupt request. More...
void | I2C1_EVT_IRQHandler (void)
this function handles i2c event interrupt request. More...
void | I2C1_ERR_IRQHandler (void)
this function handles i2c error interrupt request. More...

Variables

i2c_handle_type hi2cx

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

Macro Definition Documentation

◆ I2Cx_DMA_RX_IRQHandler

#define I2Cx_DMA_RX_IRQHandler DMA1_Channel7_IRQHandler

Definition at line 32 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ I2Cx_DMA_TX_IRQHandler

#define I2Cx_DMA_TX_IRQHandler DMA1_Channel6_IRQHandler

Definition at line 31 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ I2Cx_ERR_IRQHandler

#define I2Cx_ERR_IRQHandler I2C1_ERR_IRQHandler

Definition at line 34 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.

◆ I2Cx_EVT_IRQHandler

#define I2Cx_EVT_IRQHandler I2C1_EVT_IRQHandler

Definition at line 33 of file project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • i2c
  • communication_int
  • src
Macros | Functions | Variables
project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | I2Cx_EVT_IRQHandler I2C1_EVT_IRQHandler
#define | I2Cx_ERR_IRQHandler I2C1_ERR_IRQHandler

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | I2C1_EVT_IRQHandler (void)
this function handles i2c event interrupt request. More...
void | I2C1_ERR_IRQHandler (void)
this function handles i2c error interrupt request. More...

Variables

i2c_handle_type hi2cx

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

Macro Definition Documentation

◆ I2Cx_ERR_IRQHandler

#define I2Cx_ERR_IRQHandler I2C1_ERR_IRQHandler

Definition at line 32 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.

◆ I2Cx_EVT_IRQHandler

#define I2Cx_EVT_IRQHandler I2C1_EVT_IRQHandler

Definition at line 31 of file project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • i2c
  • communication_poll
  • src
Functions
project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • i2c
  • eeprom
  • src
Macros | Functions | Variables
project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | I2Cx_DMA_TX_IRQHandler DMA1_Channel4_IRQHandler
#define | I2Cx_DMA_RX_IRQHandler DMA1_Channel5_IRQHandler
#define | I2Cx_EVT_IRQHandler I2C2_EVT_IRQHandler
#define | I2Cx_ERR_IRQHandler I2C2_ERR_IRQHandler

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel5_IRQHandler (void)
this function handles dma interrupt request. More...
void | DMA1_Channel4_IRQHandler (void)
this function handles dma interrupt request. More...
void | I2C2_EVT_IRQHandler (void)
this function handles i2c event interrupt request. More...
void | I2C2_ERR_IRQHandler (void)
this function handles i2c error interrupt request. More...

Variables

i2c_handle_type hi2cx

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

Macro Definition Documentation

◆ I2Cx_DMA_RX_IRQHandler

#define I2Cx_DMA_RX_IRQHandler DMA1_Channel5_IRQHandler

Definition at line 32 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ I2Cx_DMA_TX_IRQHandler

#define I2Cx_DMA_TX_IRQHandler DMA1_Channel4_IRQHandler

Definition at line 31 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ I2Cx_ERR_IRQHandler

#define I2Cx_ERR_IRQHandler I2C2_ERR_IRQHandler

Definition at line 34 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.

◆ I2Cx_EVT_IRQHandler

#define I2Cx_EVT_IRQHandler I2C2_EVT_IRQHandler

Definition at line 33 of file project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • i2s
  • halfduplex_dma
  • src
Functions
project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • i2s
  • halfduplex_interrupt
  • src
Functions | Variables
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | SPI2_IRQHandler (void)
This function handles the spi2 interrupt request. More...
void | SPI1_IRQHandler (void)
This function handles the spi1 interrupt request. More...

Variables

uint16_t | i2s1_buffer_tx []
uint16_t | i2s2_buffer_rx []
__IO uint32_t | tx_index
__IO uint32_t | rx_index

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

Variable Documentation

◆ rx_index

__IO uint32_t rx_index

Definition at line 31 of file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c.

Referenced by SPI2_IRQHandler().


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • src
Functions
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • pwc
  • deepsleep_rtc
  • src
Functions
project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | RTCAlarm_IRQHandler (void)
this function handles the rtc alarm through exint line interrupt request. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • pwc
  • power_voltage_monitor
  • src
Functions
project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | PVM_IRQHandler (void)
this function handles the power voltage monitoring output interrupt request. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • pwc
  • sleep_tmr2
  • src
Functions
project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles the timer interrupt request. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • pwc
  • sleep_usart1
  • src
Functions | Variables
project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART1_IRQHandler (void)
this function handles the usatt interrupt request. More...

Variables

uint16_t usart1_index = 0

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • pwc
  • standby_rtc
  • src
Functions
project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • pwc
  • standby_wakeup_pin
  • src
Functions
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • rtc
  • calendar
  • src
Functions
project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | RTC_IRQHandler (void)
this function handles rtc handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • rtc
  • lick_calibration
  • src
Functions | Variables
project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Functions

uint32_t | incrementvar_operationcomplete (void)
increments operationcomplete variable and return its value before increment operation. More...
uint32_t | getvar_operationcomplete (void)
returns operationcomplete value. More...
void | setvar_periodvalue (uint32_t Value)
sets the periodvalue variable with input parameter. More...
void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | RTC_IRQHandler (void)
this function handles rtc global interrupt request. More...
void | TMR5_GLOBAL_IRQHandler (void)
this function handles tmr5 global interrupt request. More...

Variables

__IO uint32_t | periodvalue
__IO uint32_t | operationcomplete
uint16_t | tmpCC4 [2] = {0, 0}

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • sdio
  • sd_mmc_card
  • src
Functions
project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • sdio
  • sdio_fatfs
  • src
Functions
project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • spi
  • crc_transfer_polling
  • src
Functions
project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • spi
  • fullduplex_polling
  • src
Functions
project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • spi
  • halfduplex_interrupt
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define BUFFERSIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | SPI1_IRQHandler (void)
This function handles the spi1 interrupt request. More...
void | SPI2_IRQHandler (void)
This function handles the spi2 interrupt request. More...

Variables

uint8_t | spi1_tx_buffer []
uint8_t | spi2_rx_buffer []
uint32_t | tx_index
uint32_t | rx_index

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • spi
  • halfduplex_transceiver_switch
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define BUFFERSIZE 32

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | SPI1_IRQHandler (void)
This function handles the spi1 interrupt request. More...
void | SPI2_IRQHandler (void)
This function handles the spi2 interrupt request. More...

Variables

uint8_t | spi1_tx_buffer []
uint8_t | spi2_tx_buffer []
uint8_t | spi1_rx_buffer []
uint8_t | spi2_rx_buffer []
uint32_t | tx_index
uint32_t | rx_index

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • spi
  • only_receive_mode_polling
  • src
Functions
project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • src
Functions
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • spi
  • w25q_flash
  • src
Functions
project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • 6_steps
  • src
Functions
project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • 7_pwm_output
  • src
Functions
project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • cascade_synchro
  • src
Functions
project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • complementary_signals
  • src
Functions
project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • dma
  • src
Functions
project/at_start_f403/examples/tmr/dma/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • dma_burst
  • src
Functions
project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • encoder_tmr2
  • src
Functions
project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • external_clock
  • src
Functions
project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • hall_xor_tmr2
  • src
Functions
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • hang_mode
  • src
Functions
project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • input_capture
  • src
Functions
project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • oc_high
  • src
Functions
project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles tmr2 global interrupt request. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • oc_low
  • src
Functions
project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles tmr2 global interrupt request. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • oc_toggle_tmr3
  • src
Functions | Variables
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR3_GLOBAL_IRQHandler (void)
this function handles tmr3 global interrupt request. More...

Variables

__IO uint16_t | ccr1_val
__IO uint16_t | ccr2_val
__IO uint16_t | ccr3_val
__IO uint16_t | ccr4_val
uint32_t | capture = 0

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • oc_toggle_tmr9
  • src
Functions | Variables
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR1_BRK_TMR9_IRQHandler (void)
this function handles TMR9 global interrupt request. More...

Variables

__IO uint16_t | ccr1_val
__IO uint16_t | ccr2_val
uint16_t | capture = 0

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • one_cycle
  • src
Functions
project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • parallel_synchro
  • src
Functions
project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • pwm_input
  • src
Functions | Variables
project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR3_GLOBAL_IRQHandler (void)
this function handles tmr3 global interrupt request. More...

Variables

uint16_t | duty_cycle
uint32_t | frequency
__IO uint16_t | ic2value = 0

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • pwm_input_dma
  • src
Functions
project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • pwm_output_simulate
  • src
Functions | Variables
project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | TMR2_GLOBAL_IRQHandler (void)

Variables

__IO uint16_t | ccr1_val
__IO uint16_t | ccr2_val
__IO uint16_t | ccr3_val
__IO uint16_t | ccr4_val
uint16_t | capture = 0

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • pwm_output_tmr10
  • src
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • pwm_output_tmr3
  • src
Functions
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • timer_base
  • src
Functions
project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • tmr1_synchro
  • src
Functions
project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • tmr
  • tmr2_32bit
  • src
Functions
project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • half_duplex
  • src
Functions
project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • hw_flow_control
  • src
Functions
project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • idle_detection
  • src
Functions
project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART2_IRQHandler (void)
this function handles usart2 handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • interrupt
  • src
Functions | Variables
project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART2_IRQHandler (void)
this function handles usart2 handler. More...
void | USART3_IRQHandler (void)
this function handles usart3 handler. More...

Variables

uint8_t | usart2_tx_buffer []
uint8_t | usart3_tx_buffer []
uint8_t | usart2_rx_buffer []
uint8_t | usart3_rx_buffer []
uint8_t | usart2_tx_counter
uint8_t | usart3_tx_counter
uint8_t | usart2_rx_counter
uint8_t | usart3_rx_counter
uint8_t | usart2_tx_buffer_size
uint8_t | usart3_tx_buffer_size

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • irda
  • src
Functions
project/at_start_f403/examples/usart/irda/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/irda/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • polling
  • src
Functions
project/at_start_f403/examples/usart/polling/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/polling/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • printf
  • src
Functions
project/at_start_f403/examples/usart/printf/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/printf/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • receiver_mute
  • src
Functions | Variables
project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | USART3_IRQHandler (void)
this function handles usart3 handler. More...

Variables

uint8_t | usart3_rx_buffer []
uint8_t | rx_counter

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • rs485
  • src
Functions
project/at_start_f403/examples/usart/rs485/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/rs485/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • smartcard
  • src
Functions | Variables
project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"
#include "smartcard_config.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | EXINT9_5_IRQHandler (void)
this function handles external lines 9 to 5 interrupt request. More...
void | SC_USART_IRQHandler (void)
this function handles sc_usart global interrupt request. More...

Variables

uint32_t card_inserted

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • synchronous
  • src
Functions
project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • transfer_by_dma_interrupt
  • src
Functions | Variables
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...
void | DMA1_Channel7_IRQHandler (void)
this function handles dma1 channel7 handler. More...
void | DMA1_Channel6_IRQHandler (void)
this function handles dma1 channel6 handler. More...
void | DMA1_Channel2_IRQHandler (void)
this function handles dma1 channel2 handler. More...
void | DMA1_Channel3_IRQHandler (void)
this function handles dma1 channel3 handler. More...

Variables

uint8_t | usart2_tx_dma_status
uint8_t | usart2_rx_dma_status
uint8_t | usart3_tx_dma_status
uint8_t | usart3_rx_dma_status

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usart
  • transfer_by_dma_polling
  • src
Functions
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • audio
  • src
Functions
project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • composite_audio_hid
  • src
Functions
project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • composite_vcp_keyboard
  • src
Functions
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • composite_vcp_msc
  • src
Functions
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • custom_hid
  • src
Functions
project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • keyboard
  • src
Functions
project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • mouse
  • src
Functions
project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • msc
  • src
Functions
project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • printer
  • src
Functions
project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • vcp_loopback
  • src
Functions
project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • virtual_comport
  • src
Functions
project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • usb_device
  • virtual_msc_iap
  • src
Functions
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • wdt
  • wdt_reset
  • src
Functions
project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • wdt
  • wdt_standby
  • src
Functions
project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • wwdt
  • wwdt_reset
  • src
Functions
project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • lcd_8bit
  • src
Functions
project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • lcd_touch_16bit
  • src
Functions
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • nand
  • ecc
  • src
Functions
project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • nand
  • nand
  • src
Functions
project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • nor
  • src
Functions
project/at_start_f403/examples/xmc/nor/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nor/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • pc_card
  • src
Functions
project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • psram
  • src
Functions
project/at_start_f403/examples/xmc/psram/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/psram/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • xmc
  • sram
  • src
Functions
project/at_start_f403/examples/xmc/sram/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/sram/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • templates
  • src
Functions
project/at_start_f403/templates/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/templates/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_freertos_demo
  • src
Functions
utilities/at32f403_freertos_demo/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | DebugMon_Handler (void)
this function handles svcall exception. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_freertos_demo/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • src
Functions
utilities/at32f403_gen_random_number_demo/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_gen_random_number_demo/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c.


AT32F403 Firmwary Library: at32f403_int.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
Functions
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c File Reference

main interrupt service routines. More...

#include "at32f403_int.h"

Go to the source code of this file.

Functions

void | NMI_Handler (void)
this function handles nmi exception. More...
void | HardFault_Handler (void)
this function handles hard fault exception. More...
void | MemManage_Handler (void)
this function handles memory manage exception. More...
void | BusFault_Handler (void)
this function handles bus fault exception. More...
void | UsageFault_Handler (void)
this function handles usage fault exception. More...
void | SVC_Handler (void)
this function handles svcall exception. More...
void | DebugMon_Handler (void)
this function handles debug monitor exception. More...
void | PendSV_Handler (void)
this function handles pendsv_handler exception. More...
void | SysTick_Handler (void)
this function handles systick handler. More...

Detailed Description

main interrupt service routines.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • combine_mode_ordinary_simult
  • src
Functions | Variables
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint32_t | adc1_ordinary_valuetab [5][3]
__IO uint32_t | dma1_trans_complete_flag = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • current_vref_value_check
  • src
Functions | Variables
project/at_start_f403/examples/adc/current_vref_value_check/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t adc1_ordinary_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/current_vref_value_check/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • exint_trigger_partitioned
  • src
Functions | Variables
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | exint_config (void)
exint configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3][3] = {0}
__IO uint16_t | adc1_preempt_valuetab [3][3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0
__IO uint16_t | preempt_trigger_count = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • internal_temperature_sensor
  • src
Macros | Functions | Variables
project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | ADC_VREF (3.3)
#define | ADC_TEMP_BASE (1.26)
#define | ADC_TEMP_SLOPE (-0.00423)

Functions

static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t adc1_ordinary_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • repeat_conversion_loop_transfer
  • src
Functions | Variables
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • software_trigger_repeat
  • src
Functions | Variables
project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • tmr_trigger_automatic_preempted
  • src
Functions | Variables
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | tmr1_config (void)
tmr1 configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [5][3] = {0}
__IO uint16_t | adc1_preempt_valuetab [5][3] = {0}
__IO uint16_t | dma_trans_complete_flag = 0
__IO uint16_t | preempt_conversion_count = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • triple_adc_synchro_trigger
  • src
Functions | Variables
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | tmr1_config (void)
tmr1 configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint32_t | adc1_ordinary_valuetab [5][3]
__IO uint16_t | adc3_ordinary_valuetab [5][3]
__IO uint32_t | dma1_trans_complete_flag = 0
__IO uint32_t | dma2_trans_complete_flag = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • adc
  • voltage_monitoring
  • src
Functions | Variables
project/at_start_f403/examples/adc/voltage_monitoring/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | dma_config (void)
dma configuration. More...
static void | adc_config (void)
adc configuration. More...
int | main (void)
main function. More...

Variables

__IO uint16_t | adc1_ordinary_valuetab [3] = {0}
__IO uint16_t | vmor_flag_index = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/adc/voltage_monitoring/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • bpr
  • bpr_data
  • src
Macros | Functions | Variables
project/at_start_f403/examples/bpr/bpr_data/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BPR_DR_NUMBER 42

Functions

void | bpr_reg_write (void)
write data to bpr dt register. More...
uint8_t | bpr_reg_check (void)
checks if the bpr dt register values are correct or not. More...
void | uart_init (uint32_t baudrate)
init usart. More...
int | main (void)
main function. More...

Variables

bpr_data_type bpr_addr_tab [42]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/bpr_data/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • bpr
  • tamper
  • src
Macros | Functions | Variables
project/at_start_f403/examples/bpr/tamper/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BPR_DR_NUMBER 42

Functions

void | bpr_reg_write (void)
write data to bpr dt registers. More...
uint8_t | bpr_reg_check (void)
checks if the bpr dt registers values are correct or not. More...
uint32_t | bpr_reg_judge (void)
checks if the bpr dt registers are reset or not. More...
int | main (void)
main function. More...

Variables

bpr_data_type bpr_addr_tab [42]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/bpr/tamper/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • can
  • communication_mode
  • src
Functions
project/at_start_f403/examples/can/communication_mode/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | can_gpio_config (void)
can gpio config More...
static void | can_configuration (void)
can configiguration. More...
static void | can_transmit_data (void)
can transmit data More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
can1 interrupt function rx0 More...
void | CAN1_SE_IRQHandler (void)
can1 interrupt function se More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/communication_mode/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • can
  • filter
  • src
Macros | Functions | Variables
project/at_start_f403/examples/can/filter/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | FILTER_EXT_ID1 ((uint32_t)0x18F5F100)
#define | FILTER_EXT_ID2 ((uint32_t)0x18F5F200)
#define | FILTER_EXT_ID3 ((uint32_t)0x18F5F300)
#define | FILTER_STD_ID1 ((uint16_t)0x04F6)
#define | FILTER_STD_ID2 ((uint16_t)0x04F7)
#define | FILTER_STD_ID3 ((uint16_t)0x04F8)

Functions

static void | can_gpio_config (void)
can gpio config More...
static void | can_configuration (void)
can configiguration. More...
static void | can_transmit_data (void)
can transmit data More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
can1 interrupt function rx0 More...
void | CAN1_SE_IRQHandler (void)
can1 interrupt function se More...
int | main (void)
main function. More...

Variables

uint8_t test_result = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/filter/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • can
  • loopback_mode
  • src
Functions
project/at_start_f403/examples/can/loopback_mode/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | can_gpio_config (void)
can gpio config More...
static void | can_configuration (void)
can configiguration. More...
static void | can_transmit_data (void)
can transmit data More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
can1 interrupt function rx0 More...
void | CAN1_SE_IRQHandler (void)
can1 interrupt function se More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/can/loopback_mode/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • cortex_m4
  • bit_band
  • src
Macros | Functions | Variables
project/at_start_f403/examples/cortex_m4/bit_band/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | RAM_BASE 0x20000000
#define | RAM_BITBAND_BASE 0x22000000
#define | VARIABLES_RESET_BIT(variables_addr, bit_number) (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 0)
#define | VARIABLES_SET_BIT(variables_addr, bit_number) (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 1)
#define | VARIABLES_GET_BIT(variables_addr, bit_number) (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)))
#define | PERIPHERAL_BASE 0x40000000
#define | PERIPHERAL_BITBAND_BASE 0x42000000
#define | PERIPHERAL_RESET_BIT(peripheral_addr, bit_number) (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 0)
#define | PERIPHERAL_SET_BIT(peripheral_addr, bit_number) (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 1)

Functions

void | result_error (void)
led4 flick for error. More...
int | main (void)
main function. More...

Variables

__IO uint32_t | variables
__IO uint32_t | variables_addr = 0
__IO uint32_t | variables_bit_val = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/bit_band/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • cortex_m4
  • cmsis_dsp
  • src
Macros | Functions | Variables
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "arm_math.h"

Go to the source code of this file.

Macros

#define | USE_STATIC_INIT
#define | TEST_LENGTH_SAMPLES (20*4)
#define | NUMSTUDENTS 20
#define | NUMSUBJECTS 4

Functions

int32_t main ()
main function. More...

Variables

const float32_t | testMarks_f32 [(20 *4)]
const float32_t | testUnity_f32 [4]
static float32_t | testOutput [(20 *4)]
uint32_t | numStudents = 20
uint32_t | numSubjects = 4
float32_t | max_marks
float32_t | min_marks
float32_t | mean
float32_t | std
float32_t | var
uint32_t | student_num

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • cortex_m4
  • fpu
  • src
Macros | Functions | Variables
project/at_start_f403/examples/cortex_m4/fpu/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "julia_fpu.h"

Go to the source code of this file.

Macros

#define | SCREEN_X_SIZE ((uint16_t)320)
#define | SCREEN_Y_SIZE ((uint16_t)240)
#define | ZOOM ((uint16_t)100)

Functions

int main (void)
main function. More...

Variables

uint8_t buffer [((uint16_t) 320) *((uint16_t) 240)]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/fpu/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • cortex_m4
  • systick_interrupt
  • src
Macros | Functions
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | MS_TICK (system_core_clock / 1000U)
#define | DELAY 200 /* 200 ms ticks */

Functions

void | systick_handler (void)
systick interrupt handler. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • crc
  • calculation
  • src
Macros | Functions | Variables
project/at_start_f403/examples/crc/calculation/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 120

Functions

int main (void)
main function. More...

Variables

static const uint32_t | data_buffer [120]
__IO uint32_t | crc_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crc/calculation/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • crm
  • clock_failure_detection
  • src
Functions
project/at_start_f403/examples/crm/clock_failure_detection/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | clkout_config (void)
clkout configuration. More...
static void | sclk_192m_hick_config (void)
config sclk 192 mhz with hick clock source. More...
static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
void | clock_failure_detection_handler (void)
clock failure detection handler. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/clock_failure_detection/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • crm
  • sysclk_switch
  • src
Functions
project/at_start_f403/examples/crm/sysclk_switch/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

static void | clkout_config (void)
clkout configuration. More...
static void | sclk_64m_hick_config (void)
config sclk 64 mhz with hick clock source. More...
static void | wait_stbl (uint32_t delay)
delay to wait for stable. More...
static void | sclk_96m_hext_config (void)
config sclk 96 mhz with hext clock source. More...
static void | switch_system_clock (void)
sclk switch function. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/crm/sysclk_switch/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • dac
  • double_mode_dma_sinewave
  • src
Functions | Variables
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
const uint16_t | sine12bit [32]
uint32_t | dualsine12bit [32]
uint32_t | idx = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • dac
  • double_mode_dma_squarewave
  • src
Functions | Variables
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
uint32_t | dualsquare12bit [2] = {(0xfff | (0xfff << 16)), 0}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • dac
  • one_dac_dma_escalator
  • src
Functions | Variables
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
const uint8_t | escalator8bit [6] = {0x0, 0x33, 0x66, 0x99, 0xCC, 0xFF}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • dac
  • one_dac_noisewave
  • src
Functions | Variables
project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type gpio_init_struct = {0}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • dac
  • two_dac_trianglewave
  • src
Functions | Variables
project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • debug
  • tmr1
  • src
Functions | Variables
project/at_start_f403/examples/debug/tmr1/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | TMR1_OVF_TMR10_IRQHandler (void)
this function handles tmr1 overflow handler. More...
int | main (void)
main function. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | counter = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/debug/tmr1/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • dma
  • data_to_gpio
  • src
Macros | Functions | Variables
project/at_start_f403/examples/dma/data_to_gpio/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 16

Functions

void | DMA1_Channel2_IRQHandler (void)
this function handles DMA2 channel1 handler. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
uint16_t | src_buffer [16]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/data_to_gpio/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • dma
  • flash_to_sram
  • src
Macros | Functions | Variables
project/at_start_f403/examples/dma/flash_to_sram/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 32

Functions

error_status | buffer_compare (const uint32_t *pbuffer, uint32_t *pbuffer1, uint16_t buffer_length)
compares two buffers. More...
void | DMA1_Channel1_IRQHandler (void)
this function handles dma1 channel1 handler. More...
int | main (void)
main function. More...

Variables

const uint32_t | src_const_buffer [32]
uint32_t | dst_buffer [32]
gpio_init_type | gpio_init_struct = {0}
dma_init_type | dma_init_struct = {0}
__IO uint32_t | data_counter_end = 0x01
error_status transfer_status = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/dma/flash_to_sram/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • exint
  • exint_config
  • src
Functions
project/at_start_f403/examples/exint/exint_config/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | exint_line0_config (void)
exint line0 config. configure pa0 in interrupt mode More...
int | main (void)
main function. More...
void | EXINT0_IRQHandler (void)
exint0 interrupt handler More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_config/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • exint
  • exint_software_trigger
  • src
Functions
project/at_start_f403/examples/exint/exint_software_trigger/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | exint_line4_config (void)
exint line4 config. configure pa0 in interrupt mode More...
static void | tmr1_config (void)
tmr1 configuration. More...
void | TMR1_OVF_TMR10_IRQHandler (void)
tmr1 interrupt handler More...
void | EXINT4_IRQHandler (void)
exint4 interrupt handler More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/exint/exint_software_trigger/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • flash
  • fap_enable
  • src
Functions
project/at_start_f403/examples/flash/fap_enable/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/fap_enable/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • flash
  • flash_write_read
  • src
Macros | Functions | Variables
project/at_start_f403/examples/flash/flash_write_read/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "flash.h"

Go to the source code of this file.

Macros

#define | TEST_BUFEER_SIZE 3000
#define | TEST_FLASH_ADDRESS_START (0x08000000 + 1024 * 10)

Functions

error_status | buffer_compare (uint16_t *p_buffer1, uint16_t *p_buffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint16_t | buffer_write [3000]
uint16_t | buffer_read [3000]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • flash
  • operate_spim
  • src
Functions
project/at_start_f403/examples/flash/operate_spim/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "operate_spim.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/operate_spim/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • flash
  • run_in_spim
  • src
Functions
project/at_start_f403/examples/flash/run_in_spim/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "run_in_spim.h"

Go to the source code of this file.

Functions

void | spim_init (void)
init the spim flash More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/run_in_spim/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • gpio
  • io_toggle
  • src
Functions
project/at_start_f403/examples/gpio/io_toggle/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | gpio_config (void)
pa.01 gpio configuration. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/io_toggle/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • gpio
  • led_toggle
  • src
Functions
project/at_start_f403/examples/gpio/led_toggle/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/led_toggle/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • gpio
  • swjtag_remap
  • src
Functions
project/at_start_f403/examples/gpio/swjtag_remap/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | swj_dp_config (void)
configure the gpio of swj-dp. More...
void | gpio_pins_toggle (gpio_type *gpio_x, uint16_t gpio_pin)
toggles the specified gpio pin More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/gpio/swjtag_remap/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • i2c
  • communication_dma
  • src
Macros | Functions | Variables
project/at_start_f403/examples/i2c/communication_dma/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_6
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_7
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK
#define | I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL6
#define | I2Cx_DMA_TX_IRQn DMA1_Channel6_IRQn
#define | I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL7
#define | I2Cx_DMA_RX_IRQn DMA1_Channel7_IRQn
#define | I2Cx_EVT_IRQn I2C1_EVT_IRQn
#define | I2Cx_ERR_IRQn I2C1_ERR_IRQn
#define | BUF_SIZE 8
#define | MASTER_BOARD

Functions

uint32_t | buffer_compare (uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | error_handler (uint32_t error_code)
error handler program More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | rx_buf [8] = {0}
i2c_handle_type hi2cx

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_dma/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • i2c
  • communication_int
  • src
Macros | Functions | Variables
project/at_start_f403/examples/i2c/communication_int/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_6
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_7
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_EVT_IRQn I2C1_EVT_IRQn
#define | I2Cx_ERR_IRQn I2C1_ERR_IRQn
#define | BUF_SIZE 8
#define | MASTER_BOARD

Functions

uint32_t | buffer_compare (uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal. More...
void | error_handler (uint32_t error_code)
error handler program More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | rx_buf [8] = {0}
i2c_handle_type hi2cx

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_int/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • i2c
  • communication_poll
  • src
Macros | Functions | Variables
project/at_start_f403/examples/i2c/communication_poll/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_6
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_7
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | BUF_SIZE 8
#define | MASTER_BOARD

Functions

void | error_handler (uint32_t error_code)
error handler program More...
uint32_t | buffer_compare (uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | rx_buf [8] = {0}
i2c_handle_type hi2cx

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/communication_poll/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • i2c
  • eeprom
  • src
Macros | Functions | Variables
project/at_start_f403/examples/i2c/eeprom/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "i2c_application.h"

Go to the source code of this file.

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 100000
#define | I2Cx_ADDRESS 0xA0
#define | I2Cx_PORT I2C2
#define | I2Cx_CLK CRM_I2C2_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_10
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_11
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK
#define | I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL4
#define | I2Cx_DMA_TX_IRQn DMA1_Channel4_IRQn
#define | I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL5
#define | I2Cx_DMA_RX_IRQn DMA1_Channel5_IRQn
#define | I2Cx_EVT_IRQn I2C2_EVT_IRQn
#define | I2Cx_ERR_IRQn I2C2_ERR_IRQn
#define | BUF_SIZE 8

Functions

void | error_handler (uint32_t error_code)
error handler program More...
uint32_t | buffer_compare (uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal. More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buf1 [8] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}
uint8_t | tx_buf2 [8] = {0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80}
uint8_t | tx_buf3 [8] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88}
uint8_t | rx_buf1 [8] = {0}
uint8_t | rx_buf2 [8] = {0}
uint8_t | rx_buf3 [8] = {0}
i2c_handle_type hi2cx

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2c/eeprom/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • i2s
  • halfduplex_dma
  • src
Functions | Variables
project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include <stdio.h>

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | i2s_config (void)
i2s configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function. More...
int | main (void)
main function. More...

Variables

uint16_t | i2s1_buffer_tx [32]
uint16_t | i2s2_buffer_rx [32]
volatile error_status | transfer_status = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • i2s
  • halfduplex_interrupt
  • src
Functions | Variables
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include <stdio.h>

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | i2s_config (i2s_data_channel_format_type format, i2s_audio_sampling_freq_type freq)
i2s configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function. More...
error_status | buffer_compare_24bits (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare_24bits function. More...
int | main (void)
main function. More...

Variables

uint16_t | i2s1_buffer_tx [32]
uint16_t | i2s2_buffer_rx [32]
__IO uint32_t | tx_index = 0
__IO uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • src
Functions | Variables
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include <stdio.h>

Go to the source code of this file.

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
static void | i2s_config (i2s_operation_mode_type i2s1_mode, i2s_operation_mode_type i2s2_mode)
i2s configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function. More...
int | main (void)
main function. More...

Variables

uint16_t | i2s1_buffer_tx [32]
uint16_t | spi1_buffer_tx [32]
uint16_t | i2s2_buffer_rx [32]
uint16_t | spi2_buffer_rx [32]
__IO uint32_t | tx_index = 0
__IO uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR
volatile error_status | transfer_status3 = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • pwc
  • deepsleep_rtc
  • src
Functions
project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | rtc_config (void)
rtc configuration. More...
void | system_clock_recover (void)
systemclock recover. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • pwc
  • power_voltage_monitor
  • src
Functions
project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | pvm_exint_config (void)
power voltage monitor exint configuration. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • pwc
  • sleep_tmr2
  • src
Functions
project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | tmr2_config (void)
tmr2 configuration. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • pwc
  • sleep_usart1
  • src
Functions
project/at_start_f403/examples/pwc/sleep_usart1/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | usart1_config (uint32_t baudrate)
usart1 configuration. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/sleep_usart1/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • pwc
  • standby_rtc
  • src
Functions
project/at_start_f403/examples/pwc/standby_rtc/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | rtc_config (void)
rtc configuration. More...
void | rtc_alarm_config (uint8_t alarm_time)
rtc alarm set. More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_rtc/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • pwc
  • standby_wakeup_pin
  • src
Functions
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • rtc
  • calendar
  • src
Functions | Variables
project/at_start_f403/examples/rtc/calendar/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "rtc.h"

Go to the source code of this file.

Functions

void | alarm_init (void)
init alarm. More...
int | main (void)
main function. More...

Variables

char const weekday_table [7][10] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/calendar/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • rtc
  • lick_calibration
  • src
Functions | Variables
project/at_start_f403/examples/rtc/lick_calibration/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | nvic_configuration (void)
configures the nested vectored interrupt controller. More...
void | rtc_configuration (void)
configures the rtc. More...
uint32_t | incrementvar_operationcomplete (void)
increments operationcomplete variable and return its value before increment operation. More...
uint32_t | getvar_operationcomplete (void)
returns operationcomplete value. More...
void | setvar_periodvalue (uint32_t value)
sets the periodvalue variable with input parameter. More...
int | main (void)
main function. More...

Variables

crm_clocks_freq_type crm_clocks
__IO uint32_t | periodvalue = 0
__IO uint32_t | lickfreq = 0
__IO uint32_t | operationcomplete = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/rtc/lick_calibration/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • sdio
  • sd_mmc_card
  • src
Macros | Functions | Variables
project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c File Reference

main program More...

#include <stdbool.h>
#include <string.h>
#include "at32_sdio.h"
#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | BLOCK_SIZE (512)
#define | BLOCKS_NUMBER (64)
#define | MULTI_BUFFER_SIZE (BLOCK_SIZE * BLOCKS_NUMBER)
#define | STREAM_BUFFER_SIZE (4096)

Functions

static error_status | sd_single_block_test (void)
sd card single block read/write test. More...
static error_status | sd_multiple_blocks_test (void)
sd card multiple blocks read/write test. More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
static void | sd_test_error (void)
LED2 on off every 300ms for sd test failed. More...
static void | nvic_configuration (void)
configures sdio1 irq channel. More...
static error_status | mmc_stream_test (void)
mmc card data stream read/write test. More...
void | show_card_info (void)
show sd/mmc card info. More...
int | main (void)
main function. More...

Variables

static uint8_t | sblock_tbuffer [(512)]
static uint8_t | sblock_rbuffer [(512)]
static uint8_t | mblock_tbuffer [((512) *(64))]
static uint8_t | mblock_rbuffer [((512) *(64))]
static uint8_t | stream_tbuffer [(4096)]
static uint8_t | stream_rbuffer [(4096)]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • sdio
  • sdio_fatfs
  • src
Functions | Variables
project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c File Reference

main program More...

#include <stdbool.h>
#include <string.h>
#include "at32_sdio.h"
#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "ff.h"

Go to the source code of this file.

Functions

uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
static void | sd_test_error (void)
led2 on off every 300ms for sd test failed. More...
static void | nvic_configuration (void)
configures sdio1 irq channel. More...
static error_status | fatfs_test (void)
fatfs file read/write test. More...
int | main (void)
main function. More...

Variables

FATFS | fs
FIL | file
BYTE | work [FF_MAX_SS]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • spi
  • crc_transfer_polling
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 32

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

uint16_t | spi1_tx_buffer [32]
uint16_t | spi2_tx_buffer [32]
uint16_t | spi1_rx_buffer [32]
uint16_t | spi2_rx_buffer [32]
uint32_t | tx_index = 0
uint32_t | rx_index = 0
__IO uint16_t | crc1_value = 0
__IO uint16_t | crc2_value = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • spi
  • fullduplex_polling
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/fullduplex_polling/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 32

Functions

static void | gpio_config (uint16_t spi1_mode, uint16_t spi2_mode)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t bufferlength)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_tx_buffer [32]
uint8_t | spi1_rx_buffer [32]
uint8_t | spi2_rx_buffer [32]
uint32_t | tx_index = 0
uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR
volatile error_status | transfer_status3 = ERROR
volatile error_status | transfer_status4 = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/fullduplex_polling/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • spi
  • halfduplex_interrupt
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 32

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_rx_buffer [32]
volatile uint32_t | tx_index = 0
volatile uint32_t | rx_index = 0
volatile error_status | transfer_status = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • spi
  • halfduplex_transceiver_switch
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 32

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_tx_buffer [32]
uint8_t | spi1_rx_buffer [32]
uint8_t | spi2_rx_buffer [32]
volatile uint32_t | tx_index = 0
volatile uint32_t | rx_index = 0
volatile error_status | transfer_status1 = ERROR
volatile error_status | transfer_status2 = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • spi
  • only_receive_mode_polling
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 32

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

spi_init_type spi_init_struct
uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_rx_buffer [32]
uint32_t | tx_index = 0
uint32_t | rx_index = 0
volatile error_status | transfer_status = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 32

Functions

static void | gpio_config (void)
gpio configuration. More...
static void | spi_config (void)
spi configuration. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

uint8_t | spi1_tx_buffer [32]
uint8_t | spi2_rx_buffer [32]
__IO uint8_t | tx_index = 0
volatile error_status | transfer_status = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • spi
  • w25q_flash
  • src
Macros | Functions | Variables
project/at_start_f403/examples/spi/w25q_flash/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "spi_flash.h"

Go to the source code of this file.

Macros

#define | FLASH_TEST_ADDR 0x1000
#define | BUF_SIZE 0x256

Functions

void | tx_data_fill (void)
transfer data fill. More...
error_status | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function. More...
int | main (void)
main function. More...

Variables

uint8_t | tx_buffer [0x256]
uint8_t | rx_buffer [0x256]
volatile error_status | transfer_status = ERROR

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/spi/w25q_flash/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • 6_steps
  • src
Functions | Variables
project/at_start_f403/examples/tmr/6_steps/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | systick_configuration (void)
configures the systick. More...
int | main (void)
main function. More...
void | TMR1_TRG_HALL_TMR11_IRQHandler (void)
this function handles tmr1 trigger and hall interrupts requests. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_brkdt_config_type | tmr_brkdt_config_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
__IO uint32_t | step = 1

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/6_steps/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • 7_pwm_output
  • src
Functions | Variables
project/at_start_f403/examples/tmr/7_pwm_output/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | timer_period = 0
uint16_t | channel1_pulse = 0
uint16_t | channel2_pulse = 0
uint16_t | channel3_pulse = 0
uint16_t | channel4_pulse = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/7_pwm_output/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • cascade_synchro
  • src
Functions | Variables
project/at_start_f403/examples/tmr/cascade_synchro/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/cascade_synchro/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • complementary_signals
  • src
Functions | Variables
project/at_start_f403/examples/tmr/complementary_signals/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_brkdt_config_type | tmr_brkdt_config_struct = {0}
uint16_t | timer_period = 0
uint16_t | channel1_pulse = 0
uint16_t | channel2_pulse = 0
uint16_t | channel3_pulse = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/complementary_signals/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • dma
  • src
Functions | Variables
project/at_start_f403/examples/tmr/dma/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | timer_period = 0
uint16_t | src_buffer [3] = {0, 0, 0}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • dma_burst
  • src
Functions | Variables
project/at_start_f403/examples/tmr/dma_burst/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
tmr_output_config_type tmr_output_struct
dma_init_type | dma_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | timer_period = 0
uint16_t | src_buffer [3] = {0x0FFF, 0x0000, 0x0555}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/dma_burst/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • encoder_tmr2
  • src
Functions | Variables
project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | delay (uint32_t time)
delay function More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint32_t | counter

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • external_clock
  • src
Functions | Variables
project/at_start_f403/examples/tmr/external_clock/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_input_config_type tmr_input_config_struct

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/external_clock/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • hall_xor_tmr2
  • src
Functions | Variables
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int | main (void)
main function. More...
void | TMR2_GLOBAL_IRQHandler (void)
this function handles TMR2 trigger exception. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_input_config_type tmr_input_config_struct

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • hang_mode
  • src
Functions | Variables
project/at_start_f403/examples/tmr/hang_mode/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_output_config_type tmr_output_struct
tmr_input_config_type tmr_input_config_struct

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/hang_mode/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • input_capture
  • src
Functions | Variables
project/at_start_f403/examples/tmr/input_capture/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | delay (uint32_t time)
delay function More...
void | uart_init (uint32_t baudrate)
init usart. More...
void | TMR3_GLOBAL_IRQHandler (void)
this function handles tmr3 trigger exception. More...
int | main (void)
main function. More...

Variables

gpio_init_type | gpio_init_struct = {0}
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
tmr_input_config_type tmr_input_config_struct
__IO uint32_t | tmr3freq = 0
__IO uint32_t | sys_counter = 0
__IO uint16_t | capturenumber = 0
__IO uint16_t | ic3readvalue1 = 0
__IO uint16_t | ic3readvalue2 = 0
__IO uint32_t | capture = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/input_capture/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • oc_high
  • src
Functions | Variables
project/at_start_f403/examples/tmr/oc_high/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | gpio_configuration (void)
configure the gpioc pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | ccr1_val = 1000
uint16_t | ccr2_val = 500
uint16_t | ccr3_val = 250
uint16_t | ccr4_val = 125
uint16_t | prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_high/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • oc_low
  • src
Functions | Variables
project/at_start_f403/examples/tmr/oc_low/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | gpio_configuration (void)
configure the gpioc pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 1000
uint16_t | ccr2_val = 500
uint16_t | ccr3_val = 250
uint16_t | ccr4_val = 125
uint16_t | prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_low/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • oc_toggle_tmr3
  • src
Functions | Variables
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
void | nvic_configuration (void)
configures the nested vectored interrupt controller. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
__IO uint16_t | ccr1_val = 32768
__IO uint16_t | ccr2_val = 16384
__IO uint16_t | ccr3_val = 8192
__IO uint16_t | ccr4_val = 4096
uint16_t | prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • oc_toggle_tmr9
  • src
Functions | Variables
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr9 pins. More...
void | nvic_configuration (void)
configures the nested vectored interrupt controller. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
__IO uint16_t | ccr1_val = 32768
__IO uint16_t | ccr2_val = 16384
uint16_t | prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • one_cycle
  • src
Functions | Variables
project/at_start_f403/examples/tmr/one_cycle/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
tmr_input_config_type tmr_ic_init_structure
uint16_t prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/one_cycle/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • parallel_synchro
  • src
Functions | Variables
project/at_start_f403/examples/tmr/parallel_synchro/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/parallel_synchro/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • pwm_input
  • src
Functions | Variables
project/at_start_f403/examples/tmr/pwm_input/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "stdio.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr3 pins. More...
int | main (void)
main function. More...

Variables

tmr_input_config_type tmr_ic_init_structure
__IO uint16_t | duty_cycle = 0
__IO uint32_t | frequency = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • pwm_input_dma
  • src
Macros | Functions | Variables
project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | TMR1_C1DT_ADDRESS 0x40012C34
#define | TMR1_C2DT_ADDRESS 0x40012C38
#define | SAMPLING_NUM 1000

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
void | DMA1_Channel2_IRQHandler (void)
int | main (void)
main function. More...

Variables

tmr_input_config_type tmr_ic_init_structure
dma_init_type dma_init_structure
__IO uint16_t | buffer_cc1 [1000]
__IO uint16_t | buffer_cc2 [1000]
__IO uint32_t | frequency = 0
__IO float | duty_cycle = 0
uint32_t | freq_result
float | duty_result

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • pwm_output_simulate
  • src
Functions | Variables
project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 40961
uint16_t | ccr2_val = 27309
uint16_t | ccr3_val = 13654
uint16_t | ccr4_val = 6826
uint16_t | prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • pwm_output_tmr10
  • src
Functions | Variables
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 249
uint16_t | prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • pwm_output_tmr3
  • src
Functions | Variables
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint16_t | ccr1_val = 333
uint16_t | ccr2_val = 249
uint16_t | ccr3_val = 166
uint16_t | ccr4_val = 83
uint16_t | prescaler_value = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • timer_base
  • src
Functions | Variables
project/at_start_f403/examples/tmr/timer_base/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | clkout_config (void)
void | TMR1_OVF_TMR10_IRQHandler (void)
this function handles timer1 overflow handler. More...
int | main (void)
main function. More...

Variables

crm_clocks_freq_type crm_clocks_freq_struct = {0}

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/timer_base/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • tmr1_synchro
  • src
Functions | Variables
project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • tmr
  • tmr2_32bit
  • src
Functions | Variables
project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | crm_configuration (void)
configures the different peripheral clocks. More...
void | gpio_configuration (void)
configure the tmr1 pins. More...
int | main (void)
main function. More...

Variables

tmr_output_config_type tmr_oc_init_structure
uint32_t | ccr1_val = 0x7FFFF
uint32_t | ccr2_val = 0x3FFFF
uint32_t | ccr3_val = 0x1FFFF
uint32_t | ccr4_val = 0xFFFF

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • half_duplex
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/half_duplex/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | usart_configuration (void)
config usart More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart half-duplex transfer: usart2 -> usart3"
uint8_t | usart3_tx_buffer [] = "usart half-duplex transfer: usart3 -> usart2"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
uint8_t | data_count

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/half_duplex/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • hw_flow_control
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/hw_flow_control/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define BUFFER_SIZE 16

Functions

void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Variables

uint8_t | rx_buffer [16]
uint8_t | data_count

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/hw_flow_control/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • idle_detection
  • src
Functions
project/at_start_f403/examples/usart/idle_detection/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/idle_detection/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • interrupt
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/interrupt/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | usart_configuration (void)
config usart More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by interrupt: usart2 -> usart3 using interrupt"
uint8_t | usart3_tx_buffer [] = "usart transfer by interrupt: usart3 -> usart2 using interrupt"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
volatile uint8_t | usart2_tx_counter = 0x00
volatile uint8_t | usart3_tx_counter = 0x00
volatile uint8_t | usart2_rx_counter = 0x00
volatile uint8_t | usart3_rx_counter = 0x00
uint8_t | usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)
uint8_t | usart3_tx_buffer_size = ((sizeof( usart3_tx_buffer ) / sizeof(*( usart3_tx_buffer ))) - 1)

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/interrupt/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • irda
  • src
Functions
project/at_start_f403/examples/usart/irda/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/irda/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • polling
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/polling/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | usart_configuration (void)
config usart More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by interrupt: usart2 -> usart3 using interrupt"
uint8_t | usart3_tx_buffer [] = "usart transfer by interrupt: usart3 -> usart2 using interrupt"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
uint8_t | usart2_tx_counter = 0x00
uint8_t | usart3_tx_counter = 0x00
uint8_t | usart2_rx_counter = 0x00
uint8_t | usart3_rx_counter = 0x00
uint8_t | usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)
uint8_t | usart3_tx_buffer_size = ((sizeof( usart3_tx_buffer ) / sizeof(*( usart3_tx_buffer ))) - 1)

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/polling/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • printf
  • src
Functions | Variables
project/at_start_f403/examples/usart/printf/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

__IO uint32_t time_cnt = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/printf/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • receiver_mute
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/receiver_mute/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | BUFFER_SIZE 7
#define | MATCH_ID_VAL 0x81
#define | ERROR_ID_VAL 0x82
#define | DATA1_VAL 0x7F
#define | DATA2_VAL 0x7A
#define | DATA3_VAL 0x7B
#define | DATA4_VAL 0x7C

Functions

void | usart_configuration (void)
config usart More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [7] = { 0x7F , 0x81 , 0x7A , 0x82 , 0x7B , 0x81 , 0x7C }
uint8_t | usart3_rx_buffer [7]
uint8_t | tx_counter = 0
uint8_t | rx_counter = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/receiver_mute/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • rs485
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/rs485/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | RS485_BAUDRATE 9600
#define | RS485_BUFFER_SIZE 128

Functions

static void | rs485_config (void)
rs485 configiguration. More...
static void | rs485_send_data (u8 *buf, u8 cnt)
rs485 send data More...
int | main (void)
main function. More...
void | USART2_IRQHandler (void)
usart2 interrupt handler More...

Variables

uint8_t | rs485_buffer_rx [128]
uint8_t | rs485_buffer_rx_cnt = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/rs485/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • smartcard
  • src
Data Structures | Macros | Functions | Variables
project/at_start_f403/examples/usart/smartcard/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "smartcard_config.h"

Go to the source code of this file.

Data Structures

struct sc_atr_type

Macros

#define | T0_PROTOCOL 0x00 /* t0 protocol */
#define | SETUP_LENGTH 20
#define | HIST_LENGTH 20
#define | SC_RECEIVE_TIMEOUT 0xA000 /* direction to reader */
#define | SC_USART_DIV_VAL 20 /* ISO 7816-3 protocol: SC_CLOCK_FREQ(PCLK/(2*USART_DIV_VAL)) is between 1 and 5 MHz */
#define | SC_F_DIV_D 372 /* ISO 7816-3 protocol: F/D = 372 */

Functions

void | usart_configuration (void)
config usart More...
uint8_t | sc_response_decode (__IO uint8_t *card)
decode the card atr response. More...
int | main (void)
main function. More...

Variables

sc_atr_type sc_a2r_struct
uint32_t | sc_baud_rate = 0
uint32_t | sc_clock_freq = 0
uint32_t | counter = 0
error_status atr_decode_status = ERROR
uint32_t | card_inserted = 0
uint32_t | card_protocol = 1
uint8_t | dst_buffer [50]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/smartcard/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • synchronous
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/synchronous/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | SPI2_TX_BUFFER_SIZE (COUNTOF(spi2_tx_buffer) - 1)
#define | DYMMY_BYTE 0x00

Functions

void | usart_spi_configuration (void)
config usart and spi More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart synchronous example: usart2 -> spi2"
uint8_t | spi2_tx_buffer [] = "usart synchronous example: spi2 -> usart2"
uint8_t | usart2_rx_buffer [((sizeof(spi2_tx_buffer)/sizeof(*(spi2_tx_buffer))) - 1)]
uint8_t | spi2_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
uint8_t | usart2_tx_counter = 0x00
uint8_t | spi2_tx_counter = 0x00
uint8_t | usart2_rx_counter = 0x00
uint8_t | spi2_rx_counter = 0x00
uint8_t | usart2_tx_buffer_size = ((sizeof( usart2_tx_buffer ) / sizeof(*( usart2_tx_buffer ))) - 1)
uint8_t | spi2_tx_buffer_size = ((sizeof( spi2_tx_buffer ) / sizeof(*( spi2_tx_buffer ))) - 1)

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/synchronous/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • transfer_by_dma_interrupt
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | usart_configuration (void)
config usart More...
void | dma_configuration (void)
config dma for usart2 and usart3 More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by dma interrupt: usart2 -> usart3 using dma"
uint8_t | usart3_tx_buffer [] = "usart transfer by dma interrupt: usart3 -> usart2 using dma"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
volatile uint8_t | usart2_tx_dma_status = 0
volatile uint8_t | usart2_rx_dma_status = 0
volatile uint8_t | usart3_tx_dma_status = 0
volatile uint8_t | usart3_rx_dma_status = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usart
  • transfer_by_dma_polling
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | COUNTOF(a) (sizeof(a) / sizeof(*(a)))
#define | USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
#define | USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)

Functions

void | usart_configuration (void)
config usart More...
void | dma_configuration (void)
config dma for usart2 and usart3 More...
uint8_t | buffer_compare (uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers. More...
int | main (void)
main function. More...

Variables

uint8_t | usart2_tx_buffer [] = "usart transfer by dma interrupt: usart2 -> usart3 using dma"
uint8_t | usart3_tx_buffer [] = "usart transfer by dma interrupt: usart3 -> usart2 using dma"
uint8_t | usart2_rx_buffer [((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
uint8_t | usart3_rx_buffer [((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • audio
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/audio/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "audio_class.h"
#include "audio_desc.h"
#include "usbd_int.h"
#include "audio_codec.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/audio/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • composite_audio_hid
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "usbd_int.h"
#include "audio_hid_class.h"
#include "audio_hid_desc.h"
#include "audio_codec.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
uint8_t report_buf [USBD_AUHID_IN_MAXPACKET_SIZE]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • composite_vcp_keyboard
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "cdc_keyboard_class.h"
#include "cdc_keyboard_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | keyboard_send_string (void *udev, uint8_t *string, uint8_t len)
keyboard send string More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
uint8_t usb_buffer [256]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • composite_vcp_msc
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "cdc_msc_class.h"
#include "cdc_msc_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
uint8_t usb_buffer [256]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • custom_hid
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/custom_hid/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "custom_hid_class.h"
#include "custom_hid_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
uint8_t report_buf [USBD_CUSTOM_IN_MAXPACKET_SIZE]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/custom_hid/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • keyboard
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/keyboard/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "keyboard_class.h"
#include "keyboard_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | keyboard_send_string (void *udev, uint8_t *string, uint8_t len)
keyboard send string More...
void | system_clock_recover (void)
systemclock recover. More...
void | button_exint_init (void)
configure button exint More...
void | usb_low_power_wakeup_config (void)
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/keyboard/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • mouse
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/mouse/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "mouse_class.h"
#include "mouse_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | system_clock_recover (void)
systemclock recover. More...
void | button_exint_init (void)
configure button exint More...
void | usb_low_power_wakeup_config (void)
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
__IO uint8_t | press_mouse = 0
uint8_t | report_buf [USBD_MOUSE_IN_MAXPACKET_SIZE]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/mouse/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • msc
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/msc/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "msc_class.h"
#include "msc_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/msc/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • printer
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/printer/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "printer_class.h"
#include "printer_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

uint8_t usb_buffer [256]
usbd_core_type usb_core_dev

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/printer/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • vcp_loopback
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "cdc_class.h"
#include "cdc_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
uint8_t usb_buffer [256]

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • virtual_comport
  • src
Macros | Functions | Variables
project/at_start_f403/examples/usb_device/virtual_comport/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "cdc_class.h"
#include "cdc_desc.h"
#include "usbd_int.h"

Go to the source code of this file.

Macros

#define usart_buffer_size 2048

Functions

void | usb_usart_config (linecoding_type linecoding)
this function handles usart2 and linecoding config. More...
void | usart_gpio_config (void)
this function handles usart2 gpio config. More...
void | usart_send_data (uint8_t *send_data, uint16_t len)
this function handles usart2 send data. More...
uint16_t | usart_receive_data (void)
this function handles usart2 receive data. More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | USART2_IRQHandler (void)
this function handles usart2 handler. More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
uint8_t | usb_buffer [256]
linecoding_type linecoding
uint8_t | usart_rx_buffer [2048]
uint16_t | hw_usart_rx_index = 0
uint16_t | hw_usart_read_index = 0
uint16_t | usart_rx_data_len = 0
uint16_t | ov_cnt = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_comport/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • usb_device
  • virtual_msc_iap
  • src
Functions | Variables
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "msc_class.h"
#include "msc_desc.h"
#include "usbd_int.h"
#include "flash_fat16.h"

Go to the source code of this file.

Functions

void | jump_to_app (uint32_t address)
jump to app More...
void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
int | main (void)
main function. More...
void | usb_reset ()
usb re-connect More...
void | flash_fat16_loop_status (void)
loop status More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Variables

usbd_core_type usb_core_dev
void(* pftarget )(void)

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • wdt
  • wdt_reset
  • src
Functions
project/at_start_f403/examples/wdt/wdt_reset/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_reset/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • wdt
  • wdt_standby
  • src
Functions
project/at_start_f403/examples/wdt/wdt_standby/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wdt/wdt_standby/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • wwdt
  • wwdt_reset
  • src
Functions
project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • lcd_8bit
  • src
Functions | Variables
project/at_start_f403/examples/xmc/lcd_8bit/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "xmc_lcd.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | point_color

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_8bit/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • lcd_touch_16bit
  • src
Functions | Variables
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "xmc_lcd.h"
#include "touch.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
uint16_t | point_color

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • nand
  • ecc
  • src
Functions | Variables
project/at_start_f403/examples/xmc/nand/ecc/src/main.c File Reference

main program More...

#include "xmc_ecc.h"
#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | fill_buffer (uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
Fill the global buffer. More...
void | nand_ecc_correction (uint8_t *pbuffer, uint32_t tx_ecc_value,uint32_t rx_ecc_value)
ecc correct 1 bit error More...
int | main (void)
main function. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
nand_id_type nand_id_struct
nand_address_type write_read_addr_struct
uint8_t | tx_buffer [BUFFER_SIZE]
uint8_t | rx_buffer [BUFFER_SIZE]
uint32_t | page_number = 1
uint32_t | status = 0
uint32_t | j = 0
uint32_t | ecc_value_write = 0
uint32_t | ecc_value_read = 0
uint32_t | ecc_value_write_last = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/ecc/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • nand
  • nand
  • src
Functions | Variables
project/at_start_f403/examples/xmc/nand/nand/src/main.c File Reference

main program More...

#include "xmc_nand.h"
#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | fill_buffer (uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...
int | main (void)
main function. More...

Variables

crm_clocks_freq_type | crm_clocks_freq_struct = {0}
nand_id_type | nand_id_struct = {0}
nand_address_type write_read_addr_struct
uint8_t | txbuffer [BUFFER_SIZE]
uint8_t | rxbuffer [BUFFER_SIZE+NAND_SPARE_AREA_SIZE]
uint32_t | pagenumber = BUFFER_SIZE / NAND_PAGE_SIZE
uint32_t | writereadstatus = 0
uint32_t | status = 0
uint32_t | j = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nand/nand/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • nor
  • src
Macros | Functions | Variables
project/at_start_f403/examples/xmc/nor/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "xmc_nor.h"

Go to the source code of this file.

Macros

#define | buffer_size 0x400
#define | write_read_addr 0x8000

Functions

int main (void)
main function. More...

Variables

uint16_t | txbuffer [0x400]
uint16_t | rxbuffer [0x400]
uint32_t | writereadstatus = 0
uint32_t | number = 0
nor_idtype nor_id

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/nor/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • pc_card
  • src
Macros | Enumerations | Functions | Variables
project/at_start_f403/examples/xmc/pc_card/src/main.c File Reference

main program More...

#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "cf.h"

Go to the source code of this file.

Macros

#define Start_Sector 0

Enumerations

enum TestStatus { FAILED = 0 , PASSED = 1 }

Functions

uint8_t pccard_TxBuffer[PCCARD_SECTOR_SIZE *sizeof(uint8_t)] | __attribute__ ((aligned(4)))
static void | Fill_Buffer (uint8_t *pBuffer, uint32_t uwBufferLenght, uint32_t uwOffset)
Fills buffer with user predefined data. More...
static TestStatus | Buffercmp (uint8_t *pBuffer, uint8_t *pBuffer1, uint32_t uwBufferLenght)
Compares two buffers. More...
int | main (void)
main function. More...

Variables

PCCARD_HandleType pccardHandle
xmc_nand_pccard_timinginit_type PCCARD_PMEM4_Timing
xmc_nand_pccard_timinginit_type PCCARD_PATT4_Timing
xmc_nand_pccard_timinginit_type PCCARD_PIO4_Timing
verification_result_struct verification_result
uint8_t | Test_Mode = 0
uint8_t | orig_default_Sector
uint8_t | orig_default_head
uint32_t | u32i

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/pc_card/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • psram
  • src
Macros | Functions | Variables
project/at_start_f403/examples/xmc/psram/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "xmc_psram.h"

Go to the source code of this file.

Macros

#define | BUFFER_SIZE 0x400
#define | WRITE_READ_ADDR 0x8000

Functions

void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...
int | main (void)
main function. More...

Variables

uint16_t | txbuffer [0x400]
uint16_t | rxbuffer [0x400]
uint32_t | writereadstatus = 0
uint16_t | index_cnt = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/psram/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • xmc
  • sram
  • src
Macros | Functions | Variables
project/at_start_f403/examples/xmc/sram/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "xmc_sram.h"

Go to the source code of this file.

Macros

#define | BUFFER_SIZE 0x400
#define | WRITE_READ_ADDR 0x8000

Functions

void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...
int | main (void)
main function. More...

Variables

uint16_t | txbuffer [0x400]
uint16_t | rxbuffer [0x400]
uint32_t | writereadstatus = 0
uint16_t | index_cnt = 0

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/xmc/sram/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • templates
  • src
Macros | Functions | Variables
project/at_start_f403/templates/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"

Go to the source code of this file.

Macros

#define | DELAY 100
#define | FAST 1
#define | SLOW 4

Functions

void | button_exint_init (void)
configure button exint More...
void | button_isr (void)
button handler function More...
void | EXINT0_IRQHandler (void)
exint0 interrupt handler More...
int | main (void)
main function. More...

Variables

uint8_t g_speed = 1

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/templates/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_freertos_demo
  • src
Functions | Variables
utilities/at32f403_freertos_demo/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "FreeRTOS.h"
#include "task.h"

Go to the source code of this file.

Functions

void | led2_task_function (void *pvParameters)
void | led3_task_function (void *pvParameters)
int | main (void)
main function. More...

Variables

TaskHandle_t | led2_handler
TaskHandle_t | led3_handler

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_freertos_demo/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • src
Functions
utilities/at32f403_gen_random_number_demo/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "stdio.h"
#include "random.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_gen_random_number_demo/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "tmr.h"
#include "usart.h"
#include "iap.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "tmr.h"
#include "usart.h"
#include "iap.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "tmr.h"
#include "usart.h"
#include "flash.h"
#include "iap.h"

Go to the source code of this file.

Functions

int main (void)
main function. More...

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions | Variables
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "hid_iap_class.h"
#include "hid_iap_desc.h"
#include "hid_iap_user.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
int | main (void)
main function. More...

Variables

usbd_core_type usb_core_dev

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions | Variables
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "hid_iap_class.h"
#include "hid_iap_desc.h"
#include "hid_iap_user.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
int | main (void)
main function. More...

Variables

usbd_core_type usb_core_dev

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c.


AT32F403 Firmwary Library: main.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
Functions | Variables
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c File Reference

main program More...

#include "at32f403_board.h"
#include "at32f403_clock.h"
#include "usbd_core.h"
#include "hid_iap_class.h"
#include "hid_iap_desc.h"
#include "hid_iap_user.h"
#include "usbd_int.h"

Go to the source code of this file.

Functions

void | usb_clock48m_select (usb_clk48_s clk_s)
usb 48M clock select More...
void | USBFS_L_CAN1_RX0_IRQHandler (void)
this function handles usb interrupt. More...
void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...
int | main (void)
main function. More...

Variables

usbd_core_type usb_core_dev

Detailed Description

main program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c.


AT32F403 Firmwary Library: julia_fpu.h File Reference

  • cortex_m4
  • fpu
  • inc
Macros | Functions
julia_fpu.h File Reference

julia_fpu header file More...

#include "at32f403.h"

Go to the source code of this file.

Macros

#define | ITERATION 200
#define | REAL_CONSTANT (0.285f)
#define | IMG_CONSTANT (0.01f)

Functions

void generate_julia_fpu (uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t *buffer)
julia calculation test with fpu option enable or disable More...

Detailed Description

julia_fpu header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file julia_fpu.h.


AT32F403 Firmwary Library: julia_fpu.c File Reference

  • cortex_m4
  • fpu
  • src
Functions
julia_fpu.c File Reference

julia_fpu source file More...

#include "julia_fpu.h"

Go to the source code of this file.

Functions

void generate_julia_fpu (uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t *buffer)
julia calculation test with fpu option enable or disable More...

Detailed Description

julia_fpu source file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file julia_fpu.c.


AT32F403 Firmwary Library: flash.h File Reference

  • flash
  • flash_write_read
  • inc
Functions
project/at_start_f403/examples/flash/flash_write_read/inc/flash.h File Reference

flash header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Functions

void | flash_read (uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
read data using halfword mode More...
error_status | flash_write_nocheck (uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode without checking More...
error_status | flash_write (uint32_t write_addr, uint16_t *p_Buffer, uint16_t num_write)
write data using halfword mode with checking More...

Detailed Description

flash header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/inc/flash.h.


AT32F403 Firmwary Library: flash.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
Macros | Functions
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h File Reference

flash header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define | FLASH_SIZE (*((uint32_t*)0x1FFFF7E0)) /* read from at32 flash capacity register(unit:kbyte) */
#define | SRAM_SIZE 224 /* sram size, unit:kbyte */

Functions

void | flash_2kb_write (uint32_t write_addr, uint8_t *pbuffer)
flash erase/program operation. More...
flag_status | flash_upgrade_flag_read (void)
check flash upgrade flag. More...

Detailed Description

flash header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h.


AT32F403 Firmwary Library: flash.c File Reference

  • flash
  • flash_write_read
  • src
Macros | Functions | Variables
project/at_start_f403/examples/flash/flash_write_read/src/flash.c File Reference

flash program More...

#include "at32f403_board.h"
#include "flash.h"

Go to the source code of this file.

Macros

#define SECTOR_SIZE 2048 /* this parameter depends on the specific model of the chip */

Functions

void | flash_read (uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
read data using halfword mode More...
error_status | flash_write_nocheck (uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode without checking More...
error_status | flash_write (uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode with checking More...

Variables

uint16_t flash_buf [2048/2]

Detailed Description

flash program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/flash/flash_write_read/src/flash.c.


AT32F403 Firmwary Library: flash.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
Functions
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c File Reference

flash program More...

#include "flash.h"
#include "usart.h"
#include "iap.h"

Go to the source code of this file.

Functions

void | flash_2kb_write (uint32_t write_addr, uint8_t *pbuffer)
flash erase/program operation. More...
flag_status | flash_upgrade_flag_read (void)
check flash upgrade flag. More...

Detailed Description

flash program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c.


AT32F403 Firmwary Library: operate_spim.h File Reference

  • flash
  • operate_spim
  • inc
Macros | Functions
operate_spim.h File Reference

operate_spim header file More...

Go to the source code of this file.

Macros

#define | SPIM_SECTOR_SIZE 4096
#define | SPIM_TEST_ADDR 0x08400000

Functions

void spim_operate (void)
operate spim flash More...

Detailed Description

operate_spim header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file operate_spim.h.


AT32F403 Firmwary Library: operate_spim.c File Reference

  • flash
  • operate_spim
  • src
Functions | Variables
operate_spim.c File Reference

operate spim program More...

#include "at32f403_board.h"
#include "operate_spim.h"
#include <string.h>

Go to the source code of this file.

Functions

void | spim_init (void)
init the spim flash More...
void | sector_read (uint32_t address, uint32_t sector_size, uint8_t *buf)
read one sector from a specified address in spim flash More...
void | spim_operate (void)
operate spim flash More...

Variables

uint8_t | write_buffer [4096]
uint8_t | read_buffer [4096]

Detailed Description

operate spim program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file operate_spim.c.


AT32F403 Firmwary Library: run_in_spim.h File Reference

  • flash
  • run_in_spim
  • inc
Functions
run_in_spim.h File Reference

run_in_spim header file More...

Go to the source code of this file.

Functions

void spim_run (void)
check the led toggle in spim More...

Detailed Description

run_in_spim header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file run_in_spim.h.


AT32F403 Firmwary Library: run_in_spim.c File Reference

  • flash
  • run_in_spim
  • src
Functions
run_in_spim.c File Reference

run in spim program More...

#include "at32f403_board.h"
#include "run_in_spim.h"

Go to the source code of this file.

Functions

void spim_run (void)
check the led toggle in spim More...

Detailed Description

run in spim program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file run_in_spim.c.


AT32F403 Firmwary Library: rtc.h File Reference

  • rtc
  • calendar
  • inc
Data Structures | Functions | Variables
rtc.h File Reference

this file provides template for calendar api. More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct calendar_type

Functions

uint8_t | rtc_init (calendar_type *calendar)
rtc peripheral initialization. More...
uint8_t | rtc_time_set (calendar_type *calendar)
set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
uint8_t | rtc_alarm_clock_set (calendar_type *calendar)
set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
void | rtc_time_get (void)
get current time. More...

Variables

calendar_type calendar

Detailed Description

this file provides template for calendar api.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file rtc.h.


AT32F403 Firmwary Library: rtc.c File Reference

  • rtc
  • calendar
  • src
Functions | Variables
rtc.c File Reference

this file provides template for calendar api. More...

#include "rtc.h"

Go to the source code of this file.

Functions

uint8_t | rtc_init (calendar_type *calendar)
rtc peripheral initialization. More...
uint8_t | is_leap_year (uint16_t year)
judeg the leap year or common year. More...
uint8_t | rtc_time_set (calendar_type *calendar)
set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
uint8_t | rtc_alarm_clock_set (calendar_type *calendar)
set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099 More...
uint8_t | rtc_week_get (uint16_t year, uint8_t month, uint8_t day)
get current week by input leap year\mouth\day. More...
void | rtc_time_get (void)
get current time. More...

Variables

calendar_type calendar
const uint8_t | table_week [12] = {0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5}
const uint8_t | mon_table [12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}

Detailed Description

this file provides template for calendar api.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file rtc.c.


AT32F403 Firmwary Library: at32_sdio.h File Reference

  • sdio
  • sd_mmc_card
  • inc
Data Structures | Macros | Enumerations | Functions | Variables
sd_mmc_card/inc/at32_sdio.h File Reference

this file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library. More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | sd_csd_struct_type
struct | sd_cid_struct_type
struct | sd_scr_struct_type
struct | sd_card_info_struct_type

Macros

#define | SDIOx SDIO1
#define | SD_CMD_GO_IDLE_STATE ((uint8_t)0)
#define | SD_CMD_SEND_OP_COND ((uint8_t)1)
#define | SD_CMD_ALL_SEND_CID ((uint8_t)2)
#define | SD_CMD_SET_REL_ADDR ((uint8_t)3)
#define | SD_CMD_SET_DSR ((uint8_t)4)
#define | SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)
#define | SD_CMD_HS_SWITCH ((uint8_t)6)
#define | SD_CMD_SEL_DESEL_CARD ((uint8_t)7)
#define | SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)
#define | SD_CMD_SEND_CSD ((uint8_t)9)
#define | SD_CMD_SEND_CID ((uint8_t)10)
#define | SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)
#define | SD_CMD_STOP_TRANSMISSION ((uint8_t)12)
#define | SD_CMD_SEND_STATUS ((uint8_t)13)
#define | SD_CMD_HS_BUSTEST_READ ((uint8_t)14)
#define | SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)
#define | SD_CMD_SET_BLOCKLEN ((uint8_t)16)
#define | SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)
#define | SD_CMD_READ_MULT_BLOCK ((uint8_t)18)
#define | SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)
#define | SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)
#define | SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)
#define | SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)
#define | SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)
#define | SD_CMD_PROG_CID ((uint8_t)26)
#define | SD_CMD_PROG_CSD ((uint8_t)27)
#define | SD_CMD_SET_WRITE_PROT ((uint8_t)28)
#define | SD_CMD_CLR_WRITE_PROT ((uint8_t)29)
#define | SD_CMD_SEND_WRITE_PROT ((uint8_t)30)
#define | SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)
#define | SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)
#define | SD_CMD_ERASE_GRP_START ((uint8_t)35)
#define | SD_CMD_ERASE_GRP_END ((uint8_t)36)
#define | SD_CMD_ERASE ((uint8_t)38)
#define | SD_CMD_FAST_IO ((uint8_t)39)
#define | SD_CMD_GO_IRQ_STATE ((uint8_t)40)
#define | SD_CMD_LOCK_UNLOCK ((uint8_t)42)
#define | SD_CMD_APP_CMD ((uint8_t)55)
#define | SD_CMD_GEN_CMD ((uint8_t)56)
#define | SD_CMD_NO_CMD ((uint8_t)64)
#define | SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)
#define | SD_CMD_SD_APP_STAUS ((uint8_t)13)
#define | SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)
#define | SD_CMD_SD_APP_OP_COND ((uint8_t)41)
#define | SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)
#define | SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)
#define | SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)
#define | SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)
#define | SD_CMD_SD_APP_GET_MKB ((uint8_t)43)
#define | SD_CMD_SD_APP_GET_MID ((uint8_t)44)
#define | SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)
#define | SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)
#define | SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)
#define | SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)
#define | SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)
#define | SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)
#define | SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)
#define | SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)
#define | SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)
#define | NULL 0
#define | SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)
#define | SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)
#define | SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SDIO_FIFO_Address ((uint32_t)0x40018080)
#define | SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)
#define | SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)
#define | SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)
#define | SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)
#define | SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)
#define | SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)
#define | SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)
#define | SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)
#define | SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)
#define | SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)
#define | SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)
#define | SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)
#define | SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)
#define | SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)
#define | SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)
#define | SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)
#define | SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)
#define | SD_OCR_ERASE_RESET ((uint32_t)0x00002000)
#define | MMC_SWITCH_ERROR ((uint32_t)0x00000080)
#define | SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)
#define | SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)
#define | SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)
#define | SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)
#define | SD_R5_ERROR ((uint32_t)0x00000800)
#define | SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)
#define | SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)
#define | SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)
#define | SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)
#define | SD_HIGH_CAPACITY ((uint32_t)0x40000000)
#define | SD_STD_CAPACITY ((uint32_t)0x00000000)
#define | SD_CHECK_PATTERN ((uint32_t)0x000001AA)
#define | SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)
#define | SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)
#define | SD_ALLZERO ((uint32_t)0x00000000)
#define | SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)
#define | SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)
#define | SD_CARD_LOCKED ((uint32_t)0x02000000)
#define | SD_CARD_PROGRAMMING ((uint32_t)0x00000007)
#define | SD_CARD_RECEIVING ((uint32_t)0x00000006)
#define | SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SD_0TO7BITS ((uint32_t)0x000000FF)
#define | SD_8TO15BITS ((uint32_t)0x0000FF00)
#define | SD_16TO23BITS ((uint32_t)0x00FF0000)
#define | SD_24TO31BITS ((uint32_t)0xFF000000)
#define | SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)
#define | SD_HALFFIFO ((uint32_t)0x00000008)
#define | SD_HALFFIFOBYTES ((uint32_t)0x00000020)
#define | SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)
#define | SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)
#define | SD_CCCC_ERASE ((uint32_t)0x00000020)
#define | SDIO_SEND_IF_COND ((uint32_t)0x00000008)
#define | EXT_CSD_Command_set 0x0
#define | EXT_CSD_Set_bit 0x1
#define | EXT_CSD_Clear_byte 0x2
#define | EXT_CSD_Write_byte 0x3
#define | EXT_CSD_CMD_SET_NORMAL (1<<0)
#define | EXT_CSD_CMD_SET_SECURE (1<<1)
#define | EXT_CSD_CMD_SET_CPSECURE (1<<2)
#define | EXT_CSD_BUS_WIDTH 183
#define | EXT_CSD_HS_TIMING 185
#define | SDIO_INTR_STS_WRITE_MASK
#define | SDIO_INTR_STS_READ_MASK

Enumerations

enum sd_data_transfer_mode_type { SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 , SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 }
enum sd_error_status_type {
SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 , SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 ,
SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 , SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 ,
SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 , SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 ,
SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 , SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 ,
SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 , SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 ,
SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 , SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 ,
SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 , SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 ,
SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 , SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 ,
SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR , SD_NOT_CONFIGURED , SD_REQ_PENDING ,
SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER , SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW ,
SD_ERROR , SD_OK = 0 , SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 ,
SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 , SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 ,
SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 , SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 ,
SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 , SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 ,
SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 , SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 ,
SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 , SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 ,
SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 , SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 ,
SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 , SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 ,
SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 , SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR ,
SD_NOT_CONFIGURED , SD_REQ_PENDING , SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER ,
SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW , SD_ERROR , SD_OK = 0
}
enum sd_card_state_type {
SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) , SD_CARD_TRANSFER = ((uint32_t)0x00000004) ,
SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) , SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) ,
SD_CARD_ERROR = ((uint32_t)0x000000FF) , SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) ,
SD_CARD_TRANSFER = ((uint32_t)0x00000004) , SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) ,
SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) , SD_CARD_ERROR = ((uint32_t)0x000000FF)
}
enum sd_memory_card_type {
SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 , SDIO_MULTIMEDIA_CARD = 3 ,
SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 , SDIO_HIGH_CAPACITY_MMC_CARD = 7 ,
SDIO_SDIO_CARD = 8 , SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 ,
SDIO_MULTIMEDIA_CARD = 3 , SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 ,
SDIO_HIGH_CAPACITY_MMC_CARD = 7 , SDIO_SDIO_CARD = 8
}

Functions

sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clkdiv)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...

Variables

sd_card_info_struct_type sd_card_info

Detailed Description

this file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file sd_mmc_card/inc/at32_sdio.h.


AT32F403 Firmwary Library: at32_sdio.h File Reference

  • sdio
  • sdio_fatfs
  • inc
Data Structures | Macros | Enumerations | Functions | Variables
sdio_fatfs/inc/at32_sdio.h File Reference

this file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library. More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | sd_csd_struct_type
struct | sd_cid_struct_type
struct | sd_scr_struct_type
struct | sd_card_info_struct_type

Macros

#define | SDIOx SDIO1
#define | SD_CMD_GO_IDLE_STATE ((uint8_t)0)
#define | SD_CMD_SEND_OP_COND ((uint8_t)1)
#define | SD_CMD_ALL_SEND_CID ((uint8_t)2)
#define | SD_CMD_SET_REL_ADDR ((uint8_t)3)
#define | SD_CMD_SET_DSR ((uint8_t)4)
#define | SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)
#define | SD_CMD_HS_SWITCH ((uint8_t)6)
#define | SD_CMD_SEL_DESEL_CARD ((uint8_t)7)
#define | SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)
#define | SD_CMD_SEND_CSD ((uint8_t)9)
#define | SD_CMD_SEND_CID ((uint8_t)10)
#define | SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)
#define | SD_CMD_STOP_TRANSMISSION ((uint8_t)12)
#define | SD_CMD_SEND_STATUS ((uint8_t)13)
#define | SD_CMD_HS_BUSTEST_READ ((uint8_t)14)
#define | SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)
#define | SD_CMD_SET_BLOCKLEN ((uint8_t)16)
#define | SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)
#define | SD_CMD_READ_MULT_BLOCK ((uint8_t)18)
#define | SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)
#define | SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)
#define | SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)
#define | SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)
#define | SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)
#define | SD_CMD_PROG_CID ((uint8_t)26)
#define | SD_CMD_PROG_CSD ((uint8_t)27)
#define | SD_CMD_SET_WRITE_PROT ((uint8_t)28)
#define | SD_CMD_CLR_WRITE_PROT ((uint8_t)29)
#define | SD_CMD_SEND_WRITE_PROT ((uint8_t)30)
#define | SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)
#define | SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)
#define | SD_CMD_ERASE_GRP_START ((uint8_t)35)
#define | SD_CMD_ERASE_GRP_END ((uint8_t)36)
#define | SD_CMD_ERASE ((uint8_t)38)
#define | SD_CMD_FAST_IO ((uint8_t)39)
#define | SD_CMD_GO_IRQ_STATE ((uint8_t)40)
#define | SD_CMD_LOCK_UNLOCK ((uint8_t)42)
#define | SD_CMD_APP_CMD ((uint8_t)55)
#define | SD_CMD_GEN_CMD ((uint8_t)56)
#define | SD_CMD_NO_CMD ((uint8_t)64)
#define | SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)
#define | SD_CMD_SD_APP_STAUS ((uint8_t)13)
#define | SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)
#define | SD_CMD_SD_APP_OP_COND ((uint8_t)41)
#define | SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)
#define | SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)
#define | SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)
#define | SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)
#define | SD_CMD_SD_APP_GET_MKB ((uint8_t)43)
#define | SD_CMD_SD_APP_GET_MID ((uint8_t)44)
#define | SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)
#define | SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)
#define | SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)
#define | SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)
#define | SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)
#define | SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)
#define | SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)
#define | SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)
#define | SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)
#define | NULL 0
#define | SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)
#define | SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)
#define | SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SDIO_FIFO_Address ((uint32_t)0x40018080)
#define | SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)
#define | SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)
#define | SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)
#define | SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)
#define | SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)
#define | SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)
#define | SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)
#define | SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)
#define | SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)
#define | SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)
#define | SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)
#define | SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)
#define | SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)
#define | SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)
#define | SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)
#define | SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)
#define | SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)
#define | SD_OCR_ERASE_RESET ((uint32_t)0x00002000)
#define | MMC_SWITCH_ERROR ((uint32_t)0x00000080)
#define | SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)
#define | SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)
#define | SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)
#define | SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)
#define | SD_R5_ERROR ((uint32_t)0x00000800)
#define | SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)
#define | SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)
#define | SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)
#define | SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)
#define | SD_HIGH_CAPACITY ((uint32_t)0x40000000)
#define | SD_STD_CAPACITY ((uint32_t)0x00000000)
#define | SD_CHECK_PATTERN ((uint32_t)0x000001AA)
#define | SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)
#define | SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)
#define | SD_ALLZERO ((uint32_t)0x00000000)
#define | SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)
#define | SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)
#define | SD_CARD_LOCKED ((uint32_t)0x02000000)
#define | SD_CARD_PROGRAMMING ((uint32_t)0x00000007)
#define | SD_CARD_RECEIVING ((uint32_t)0x00000006)
#define | SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
#define | SD_0TO7BITS ((uint32_t)0x000000FF)
#define | SD_8TO15BITS ((uint32_t)0x0000FF00)
#define | SD_16TO23BITS ((uint32_t)0x00FF0000)
#define | SD_24TO31BITS ((uint32_t)0xFF000000)
#define | SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)
#define | SD_HALFFIFO ((uint32_t)0x00000008)
#define | SD_HALFFIFOBYTES ((uint32_t)0x00000020)
#define | SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)
#define | SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)
#define | SD_CCCC_ERASE ((uint32_t)0x00000020)
#define | SDIO_SEND_IF_COND ((uint32_t)0x00000008)
#define | EXT_CSD_Command_set 0x0
#define | EXT_CSD_Set_bit 0x1
#define | EXT_CSD_Clear_byte 0x2
#define | EXT_CSD_Write_byte 0x3
#define | EXT_CSD_CMD_SET_NORMAL (1<<0)
#define | EXT_CSD_CMD_SET_SECURE (1<<1)
#define | EXT_CSD_CMD_SET_CPSECURE (1<<2)
#define | EXT_CSD_BUS_WIDTH 183
#define | EXT_CSD_HS_TIMING 185
#define | SDIO_INTR_STS_WRITE_MASK
#define | SDIO_INTR_STS_READ_MASK

Enumerations

enum sd_data_transfer_mode_type { SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 , SD_TRANSFER_POLLING_MODE = 0 , SD_TRANSFER_DMA_MODE = 1 }
enum sd_error_status_type {
SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 , SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 ,
SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 , SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 ,
SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 , SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 ,
SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 , SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 ,
SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 , SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 ,
SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 , SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 ,
SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 , SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 ,
SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 , SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 ,
SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR , SD_NOT_CONFIGURED , SD_REQ_PENDING ,
SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER , SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW ,
SD_ERROR , SD_OK = 0 , SD_CMD_FAIL = 1 , SD_DATA_FAIL = 2 ,
SD_CMD_RSP_TIMEOUT = 3 , SD_DATA_TIMEOUT = 4 , SD_TX_UNDERRUN = 5 , SD_RX_OVERRUN = 6 ,
SD_START_BIT_ERR = 7 , SD_CMD_OUT_OF_RANGE = 8 , SD_ADDR_MISALIGNED = 9 , SD_BLK_LEN_ERR = 10 ,
SD_ERASE_SEQ_ERR = 11 , SD_INVALID_ERASE_PARAM = 12 , SD_WR_PROTECT_VIOLATION = 13 , SD_LOCK_UNLOCK_ERROR = 14 ,
SD_CMD_CRC_ERROR = 15 , SD_ILLEGAL_CMD = 16 , SD_CARD_ECC_ERROR = 17 , SD_CARD_CONTROLLER_ERR = 18 ,
SD_GENERAL_UNKNOWN_ERROR = 19 , SD_STREAM_RD_UNDERRUN = 20 , SD_STREAM_WR_OVERRUN = 21 , SD_CID_CSD_OVERWRITE = 22 ,
SD_WP_ERASE_SKIP = 23 , SD_CARD_ECC_DISABLED = 24 , SD_ERASE_RESET = 25 , SD_AKE_SEQ_ERROR = 26 ,
SD_INVALID_VOLTRANGE = 27 , SD_ADDR_OUT_OF_RANGE = 28 , SD_SWITCH_ERROR = 29 , SD_SDIO_DISABLED = 30 ,
SD_SDIO_FUNC_BUSY = 31 , SD_SDIO_FUNC_ERROR = 32 , SD_SDIO_UNKNOWN_FUNC = 33 , SD_INTERNAL_ERROR ,
SD_NOT_CONFIGURED , SD_REQ_PENDING , SD_REQ_NOT_APPLICABLE , SD_INVALID_PARAMETER ,
SD_UNSUPPORTED_FEATURE , SD_UNSUPPORTED_HW , SD_ERROR , SD_OK = 0
}
enum sd_card_state_type {
SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) , SD_CARD_TRANSFER = ((uint32_t)0x00000004) ,
SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) , SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) ,
SD_CARD_ERROR = ((uint32_t)0x000000FF) , SD_CARD_READY = ((uint32_t)0x00000001) , SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002) , SD_CARD_STANDBY = ((uint32_t)0x00000003) ,
SD_CARD_TRANSFER = ((uint32_t)0x00000004) , SD_CARD_SENDING = ((uint32_t)0x00000005) , SD_CARD_RECEIVING = ((uint32_t)0x00000006) , SD_CARD_PROGRAMMING = ((uint32_t)0x00000007) ,
SD_CARD_DISCONNECTED = ((uint32_t)0x00000008) , SD_CARD_ERROR = ((uint32_t)0x000000FF)
}
enum sd_memory_card_type {
SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 , SDIO_MULTIMEDIA_CARD = 3 ,
SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 , SDIO_HIGH_CAPACITY_MMC_CARD = 7 ,
SDIO_SDIO_CARD = 8 , SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0 , SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1 , SDIO_HIGH_CAPACITY_SD_CARD = 2 ,
SDIO_MULTIMEDIA_CARD = 3 , SDIO_SECURE_DIGITAL_IO_CARD = 4 , SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5 , SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6 ,
SDIO_HIGH_CAPACITY_MMC_CARD = 7 , SDIO_SDIO_CARD = 8
}

Functions

sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clkdiv)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...

Variables

sd_card_info_struct_type sd_card_info

Detailed Description

this file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file sdio_fatfs/inc/at32_sdio.h.


AT32F403 Firmwary Library: ffconf.h File Reference

  • sdio
  • sdio_fatfs
  • inc
Macros
ffconf.h File Reference

Go to the source code of this file.

Macros

#define | FFCONF_DEF 86631 /* Revision ID */
#define | FF_FS_READONLY 0
#define | FF_FS_MINIMIZE 0
#define | FF_USE_FIND 0
#define | FF_USE_MKFS 1
#define | FF_USE_FASTSEEK 1
#define | FF_USE_EXPAND 0
#define | FF_USE_CHMOD 0
#define | FF_USE_LABEL 0
#define | FF_USE_FORWARD 0
#define | FF_USE_STRFUNC 0
#define | FF_PRINT_LLI 0
#define | FF_PRINT_FLOAT 0
#define | FF_STRF_ENCODE 0
#define | FF_CODE_PAGE 932
#define | FF_USE_LFN 0
#define | FF_MAX_LFN 255
#define | FF_LFN_UNICODE 0
#define | FF_LFN_BUF 255
#define | FF_SFN_BUF 12
#define | FF_FS_RPATH 0
#define | FF_VOLUMES 3
#define | FF_STR_VOLUME_ID 0
#define | FF_VOLUME_STRS "RAM","NAND","CF","SD","SD2","USB","USB2","USB3"
#define | FF_MULTI_PARTITION 0
#define | FF_MIN_SS 512
#define | FF_MAX_SS 512
#define | FF_LBA64 0
#define | FF_MIN_GPT 0x10000000
#define | FF_USE_TRIM 0
#define | FF_FS_TINY 0
#define | FF_FS_EXFAT 0
#define | FF_FS_NORTC 1
#define | FF_NORTC_MON 1
#define | FF_NORTC_MDAY 1
#define | FF_NORTC_YEAR 2020
#define | FF_FS_NOFSINFO 0
#define | FF_FS_LOCK 0
#define | FF_FS_REENTRANT 0
#define | FF_FS_TIMEOUT 1000
#define | FF_SYNC_t HANDLE

Macro Definition Documentation

◆ FF_CODE_PAGE

#define FF_CODE_PAGE 932

Definition at line 87 of file ffconf.h.

◆ FF_FS_EXFAT

#define FF_FS_EXFAT 0

Definition at line 234 of file ffconf.h.

◆ FF_FS_LOCK

#define FF_FS_LOCK 0

Definition at line 266 of file ffconf.h.

◆ FF_FS_MINIMIZE

#define FF_FS_MINIMIZE 0

Definition at line 18 of file ffconf.h.

◆ FF_FS_NOFSINFO

#define FF_FS_NOFSINFO 0

Definition at line 254 of file ffconf.h.

◆ FF_FS_NORTC

#define FF_FS_NORTC 1

Definition at line 240 of file ffconf.h.

◆ FF_FS_READONLY

#define FF_FS_READONLY 0

Definition at line 11 of file ffconf.h.

◆ FF_FS_REENTRANT

#define FF_FS_REENTRANT 0

Definition at line 279 of file ffconf.h.

◆ FF_FS_RPATH

#define FF_FS_RPATH 0

Definition at line 156 of file ffconf.h.

◆ FF_FS_TIMEOUT

#define FF_FS_TIMEOUT 1000

Definition at line 280 of file ffconf.h.

◆ FF_FS_TINY

#define FF_FS_TINY 0

Definition at line 227 of file ffconf.h.

◆ FF_LBA64

#define FF_LBA64 0

Definition at line 206 of file ffconf.h.

◆ FF_LFN_BUF

#define FF_LFN_BUF 255

Definition at line 148 of file ffconf.h.

◆ FF_LFN_UNICODE

#define FF_LFN_UNICODE 0

Definition at line 136 of file ffconf.h.

◆ FF_MAX_LFN

#define FF_MAX_LFN 255

Definition at line 117 of file ffconf.h.

◆ FF_MAX_SS

#define FF_MAX_SS 512

Definition at line 197 of file ffconf.h.

◆ FF_MIN_GPT

#define FF_MIN_GPT 0x10000000

Definition at line 211 of file ffconf.h.

◆ FF_MIN_SS

#define FF_MIN_SS 512

Definition at line 196 of file ffconf.h.

◆ FF_MULTI_PARTITION

#define FF_MULTI_PARTITION 0

Definition at line 187 of file ffconf.h.

◆ FF_NORTC_MDAY

#define FF_NORTC_MDAY 1

Definition at line 242 of file ffconf.h.

◆ FF_NORTC_MON

#define FF_NORTC_MON 1

Definition at line 241 of file ffconf.h.

◆ FF_NORTC_YEAR

#define FF_NORTC_YEAR 2020

Definition at line 243 of file ffconf.h.

◆ FF_PRINT_FLOAT

#define FF_PRINT_FLOAT 0

Definition at line 61 of file ffconf.h.

◆ FF_PRINT_LLI

#define FF_PRINT_LLI 0

Definition at line 60 of file ffconf.h.

◆ FF_SFN_BUF

#define FF_SFN_BUF 12

Definition at line 149 of file ffconf.h.

◆ FF_STR_VOLUME_ID

#define FF_STR_VOLUME_ID 0

Definition at line 173 of file ffconf.h.

◆ FF_STRF_ENCODE

#define FF_STRF_ENCODE 0

Definition at line 62 of file ffconf.h.

◆ FF_SYNC_t

#define FF_SYNC_t HANDLE

Definition at line 281 of file ffconf.h.

◆ FF_USE_CHMOD

#define FF_USE_CHMOD 0

Definition at line 45 of file ffconf.h.

◆ FF_USE_EXPAND

#define FF_USE_EXPAND 0

Definition at line 41 of file ffconf.h.

◆ FF_USE_FASTSEEK

#define FF_USE_FASTSEEK 1

Definition at line 37 of file ffconf.h.

◆ FF_USE_FIND

#define FF_USE_FIND 0

Definition at line 28 of file ffconf.h.

◆ FF_USE_FORWARD

#define FF_USE_FORWARD 0

Definition at line 55 of file ffconf.h.

◆ FF_USE_LABEL

#define FF_USE_LABEL 0

Definition at line 50 of file ffconf.h.

◆ FF_USE_LFN

#define FF_USE_LFN 0

Definition at line 116 of file ffconf.h.

◆ FF_USE_MKFS

#define FF_USE_MKFS 1

Definition at line 33 of file ffconf.h.

◆ FF_USE_STRFUNC

#define FF_USE_STRFUNC 0

Definition at line 59 of file ffconf.h.

◆ FF_USE_TRIM

#define FF_USE_TRIM 0

Definition at line 216 of file ffconf.h.

◆ FF_VOLUME_STRS

#define FF_VOLUME_STRS "RAM","NAND","CF","SD","SD2","USB","USB2","USB3"

Definition at line 174 of file ffconf.h.

◆ FF_VOLUMES

#define FF_VOLUMES 3

Definition at line 169 of file ffconf.h.

◆ FFCONF_DEF

#define FFCONF_DEF 86631 /* Revision ID */

Definition at line 5 of file ffconf.h.


AT32F403 Firmwary Library: at32_sdio.c File Reference

  • sdio
  • sd_mmc_card
  • src
Functions | Variables
sd_mmc_card/src/at32_sdio.c File Reference

this file provides a set of functions needed to manage the sdio/mmc card memory. More...

#include "at32_sdio.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

sd_error_status_type | command_error (void)
checks for error conditions for cmd0. More...
sd_error_status_type | command_rsp1_error (uint8_t cmd)
checks for error conditions for R1 response. More...
sd_error_status_type | command_rsp2_error (void)
checks for error conditions for R2 (cid or csd) response. More...
sd_error_status_type | command_rsp3_error (void)
checks for error conditions for R3 (ocr) response. More...
sd_error_status_type | command_rsp4_error (uint8_t cmd)
checks for error conditions for r4 response. More...
sd_error_status_type | command_rsp5_error (uint8_t cmd)
checks for error conditions for r5 response. More...
sd_error_status_type | command_rsp6_error (uint8_t cmd, uint16_t *prca)
checks for error conditions for r6 (rca) response. More...
sd_error_status_type | command_rsp7_error (void)
checks for error conditions for R7 response. More...
sd_error_status_type | sd_bus_wide_enable (confirm_state new_state)
enable or disable the sdio wide bus mode. More...
sd_error_status_type | mmc_switch (uint8_t set, uint8_t index, uint8_t value)
switch mmc card speed to high speed More...
sd_error_status_type | sd_switch (uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp)
switch sd card speed to high speed More...
sd_error_status_type | check_card_programming (uint8_t *p_status)
checks if the sd card is in programming state. More...
sd_error_status_type | speed_change (uint8_t speed)
set bus speed More...
sd_error_status_type | scr_find (void)
find the sd card scr register value. More...
uint8_t | convert_from_bytes_to_power_of_two (uint16_t number_of_bytes)
converts the number of bytes in power of two and returns the power. More...
sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clk_div)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sdio_command_data_send (sdio_command_struct_type *sdio_cmd_init_t, sdio_data_struct_type *sdio_data_init_t, uint32_t *buf)
read data from or write data to sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
void | SDIO1_IRQHandler (void)
sdio1 isr. More...
void | SDIO2_IRQHandler (void)
sdio2 isr. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...

Variables

sdio_command_struct_type sdio_command_init_struct
sdio_data_struct_type sdio_data_init_struct
static sd_memory_card_type | card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1
static uint32_t | csd_table [4]
static uint32_t | cid_table [4]
static uint32_t | rca = 0
static sd_data_transfer_mode_type | device_mode = SD_TRANSFER_POLLING_MODE
static uint8_t | stop_flag = 0
volatile sd_error_status_type | transfer_error = SD_OK
volatile uint8_t | transfer_end = 0
sd_card_info_struct_type sd_card_info

Detailed Description

this file provides a set of functions needed to manage the sdio/mmc card memory.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file sd_mmc_card/src/at32_sdio.c.


AT32F403 Firmwary Library: at32_sdio.c File Reference

  • sdio
  • sdio_fatfs
  • src
Functions | Variables
sdio_fatfs/src/at32_sdio.c File Reference

this file provides a set of functions needed to manage the sdio/mmc card memory. More...

#include <string.h>
#include "at32_sdio.h"
#include "at32f403_board.h"

Go to the source code of this file.

Functions

sd_error_status_type | command_error (void)
checks for error conditions for cmd0. More...
sd_error_status_type | command_rsp1_error (uint8_t cmd)
checks for error conditions for R1 response. More...
sd_error_status_type | command_rsp2_error (void)
checks for error conditions for R2 (cid or csd) response. More...
sd_error_status_type | command_rsp3_error (void)
checks for error conditions for R3 (ocr) response. More...
sd_error_status_type | command_rsp4_error (uint8_t cmd)
checks for error conditions for r4 response. More...
sd_error_status_type | command_rsp5_error (uint8_t cmd)
checks for error conditions for r5 response. More...
sd_error_status_type | command_rsp6_error (uint8_t cmd, uint16_t *prca)
checks for error conditions for r6 (rca) response. More...
sd_error_status_type | command_rsp7_error (void)
checks for error conditions for R7 response. More...
sd_error_status_type | sd_bus_wide_enable (confirm_state new_state)
enable or disable the sdio wide bus mode. More...
sd_error_status_type | mmc_switch (uint8_t set, uint8_t index, uint8_t value)
switch mmc card speed to high speed More...
sd_error_status_type | sd_switch (uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp)
switch sd card speed to high speed More...
sd_error_status_type | check_card_programming (uint8_t *p_status)
checks if the sd card is in programming state. More...
sd_error_status_type | speed_change (uint8_t speed)
set bus speed More...
sd_error_status_type | scr_find (void)
find the sd card scr register value. More...
uint8_t | convert_from_bytes_to_power_of_two (uint16_t number_of_bytes)
converts the number of bytes in power of two and returns the power. More...
sd_error_status_type | sd_init (void)
initializes the sd card and put it into standby state (ready for data transfer). More...
void | sdio_clock_set (uint32_t clk_div)
set sdio clock devision factor. More...
sd_error_status_type | sd_power_on (void)
enquires cards about their operating voltage and configures clock controls. More...
sd_error_status_type | sd_power_off (void)
turns the sdio output signals off. More...
sd_error_status_type | sd_card_init (void)
intialises all cards or single card as the case may be card(s) come into standby state. More...
sd_error_status_type | sd_card_info_get (sd_card_info_struct_type *card_info)
returns information about specific card. More...
sd_error_status_type | sd_wide_bus_operation_config (sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card. More...
sd_error_status_type | sd_device_mode_set (uint32_t mode)
set sdio work mode. More...
sd_error_status_type | sd_deselect_select (uint32_t addr)
selects od deselects the corresponding card. More...
sd_error_status_type | sdio_command_data_send (sdio_command_struct_type *sdio_cmd_init_t, sdio_data_struct_type *sdio_data_init_t, uint32_t *buf)
read data from or write data to sd card. More...
sd_error_status_type | sd_blocks_erase (long long addr, uint32_t nblks)
erase continuous data block More...
sd_error_status_type | sd_block_read (uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_read (uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_block_write (const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be managed by dma mode or polling mode. More...
sd_error_status_type | sd_mult_blocks_write (const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed by dma mode only. More...
sd_error_status_type | mmc_stream_read (uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream. More...
sd_error_status_type | mmc_stream_write (uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream. More...
void | SDIO1_IRQHandler (void)
sdio1 isr. More...
void | SDIO2_IRQHandler (void)
sdio2 isr. More...
sd_error_status_type | sd_irq_service (void)
allows to process all the interrupts that are high. More...
sd_error_status_type | sd_status_send (uint32_t *p_card_status)
read current card status. More...
sd_card_state_type | sd_state_get (void)
returns information about sd card. More...
void | sd_dma_config (uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio More...

Variables

sdio_command_struct_type sdio_command_init_struct
sdio_data_struct_type sdio_data_init_struct
static sd_memory_card_type | card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1
static uint32_t | csd_table [4]
static uint32_t | cid_table [4]
static uint32_t | rca = 0
static sd_data_transfer_mode_type | device_mode = SD_TRANSFER_POLLING_MODE
static uint8_t | stop_flag = 0
volatile sd_error_status_type | transfer_error = SD_OK
volatile uint8_t | transfer_end = 0
sd_card_info_struct_type sd_card_info

Detailed Description

this file provides a set of functions needed to manage the sdio/mmc card memory.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file sdio_fatfs/src/at32_sdio.c.


AT32F403 Firmwary Library: diskio.c File Reference

  • sdio
  • sdio_fatfs
  • src
Macros | Functions
diskio.c File Reference
#include "ff.h"
#include "diskio.h"
#include <string.h>
#include "at32_sdio.h"

Go to the source code of this file.

Macros

#define | DEV_RAM 0 /* Example: Map Ramdisk to physical drive 0 */
#define | DEV_MMC 1 /* Example: Map MMC/SD card to physical drive 1 */
#define | DEV_USB 2 /* Example: Map USB MSD to physical drive 2 */

Functions

__align (4)
sd_error_status_type | sd_write_disk (const uint8_t *buf, uint32_t sector, uint8_t cnt)
write sd card sector More...
DSTATUS | disk_status (BYTE pdrv)
DSTATUS | disk_initialize (BYTE pdrv)
DRESULT | disk_read (BYTE pdrv, BYTE *buff, LBA_t sector, UINT count)
DRESULT | disk_write (BYTE pdrv, const BYTE *buff, LBA_t sector, UINT count)
DRESULT | disk_ioctl (BYTE pdrv, BYTE cmd, void *buff)

Macro Definition Documentation

◆ DEV_MMC

#define DEV_MMC 1 /* Example: Map MMC/SD card to physical drive 1 */

Definition at line 19 of file diskio.c.

◆ DEV_RAM

#define DEV_RAM 0 /* Example: Map Ramdisk to physical drive 0 */

Definition at line 18 of file diskio.c.

◆ DEV_USB

#define DEV_USB 2 /* Example: Map USB MSD to physical drive 2 */

Definition at line 20 of file diskio.c.

Function Documentation

◆ __align()

__align ( 4 )

Definition at line 22 of file diskio.c.

◆ disk_initialize()

DSTATUS disk_initialize ( BYTE pdrv )

Definition at line 141 of file diskio.c.

◆ disk_ioctl()

DRESULT disk_ioctl | ( | BYTE | pdrv,
 |  | BYTE | cmd,
 |  | void * | buff
 | ) |  |

Definition at line 245 of file diskio.c.

◆ disk_read()

DRESULT disk_read | ( | BYTE | pdrv,
 |  | BYTE * | buff,
 |  | LBA_t | sector,
 |  | UINT | count
 | ) |  |

Definition at line 172 of file diskio.c.

◆ disk_status()

DSTATUS disk_status ( BYTE pdrv )

Definition at line 110 of file diskio.c.

◆ disk_write()

DRESULT disk_write | ( | BYTE | pdrv,
 |  | const BYTE * | buff,
 |  | LBA_t | sector,
 |  | UINT | count
 | ) |  |

Definition at line 209 of file diskio.c.

◆ sd_write_disk()

sd_error_status_type sd_write_disk | ( | const uint8_t * | buf,
 |  | uint32_t | sector,
 |  | uint8_t | cnt
 | ) |  |

write sd card sector

Parameters
buf | write data buf
sector | sector address
cnt | sector count
Return values
sd_error_status_type sd card error code.

Definition at line 74 of file diskio.c.

Referenced by disk_write().


AT32F403 Firmwary Library: spi_flash.h File Reference

  • spi
  • w25q_flash
  • inc
Macros | Functions
spi_flash.h File Reference

header file of spi_flash More...

#include "at32f403.h"

Go to the source code of this file.

Macros

#define | SPI_TRANS_DMA
#define | FLASH_CS_HIGH() gpio_bits_set(GPIOB, GPIO_PINS_12)
#define | FLASH_CS_LOW() gpio_bits_reset(GPIOB, GPIO_PINS_12)
#define | W25Q80 0xEF13
#define | W25Q16 0xEF14
#define | W25Q32 0xEF15
#define | W25Q64 0xEF16
#define | W25Q128 0xEF17
#define | SPIF_CHIP_SIZE 0x1000000
#define | SPIF_SECTOR_SIZE 4096
#define | SPIF_PAGE_SIZE 256
#define | SPIF_WRITEENABLE 0x06
#define | SPIF_WRITEDISABLE 0x04
#define | SPIF_READSTATUSREG1 0x05
#define | SPIF_WRITESTATUSREG1 0x01
#define | SPIF_READSTATUSREG2 0x35
#define | SPIF_WRITESTATUSREG2 0x31
#define | SPIF_READSTATUSREG3 0x15
#define | SPIF_WRITESTATUSREG3 0x11
#define | SPIF_READDATA 0x03
#define | SPIF_FASTREADDATA 0x0B
#define | SPIF_FASTREADDUAL 0x3B
#define | SPIF_PAGEPROGRAM 0x02
#define | SPIF_BLOCKERASE 0xD8
#define | SPIF_SECTORERASE 0x20
#define | SPIF_CHIPERASE 0xC7
#define | SPIF_POWERDOWN 0xB9
#define | SPIF_RELEASEPOWERDOWN 0xAB
#define | SPIF_DEVICEID 0xAB
#define | SPIF_MANUFACTDEVICEID 0x90
#define | SPIF_JEDECDEVICEID 0x9F
#define | FLASH_SPI_DUMMY_BYTE 0xA5

Functions

void | spiflash_init (void)
spi configuration. More...
void | spiflash_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data to flash More...
void | spiflash_read (uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
read data from flash More...
void | spiflash_sector_erase (uint32_t erase_addr)
erase a sector data More...
void | spiflash_write_nocheck (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data without check More...
void | spiflash_page_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write a page data More...
void | spi_bytes_write (uint8_t *pbuffer, uint32_t length)
write data continuously More...
void | spi_bytes_read (uint8_t *pbuffer, uint32_t length)
read data continuously More...
void | spiflash_wait_busy (void)
wait program done More...
uint8_t | spiflash_read_sr1 (void)
read sr1 register More...
void | spiflash_write_enable (void)
enable write operation More...
uint16_t | spiflash_read_id (void)
read device id More...
uint8_t | spi_byte_write (uint8_t data)
write a byte to flash More...
uint8_t | spi_byte_read (void)
read a byte to flash More...

Detailed Description

header file of spi_flash

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file spi_flash.h.


AT32F403 Firmwary Library: spi_flash.c File Reference

  • spi
  • w25q_flash
  • src
Functions | Variables
spi_flash.c File Reference

spi_flash source code More...

#include "spi_flash.h"

Go to the source code of this file.

Functions

void | spiflash_init (void)
spi configuration. More...
void | spiflash_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data to flash More...
void | spiflash_read (uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
read data from flash More...
void | spiflash_sector_erase (uint32_t erase_addr)
erase a sector data More...
void | spiflash_write_nocheck (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data without check More...
void | spiflash_page_write (uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write a page data More...
void | spi_bytes_write (uint8_t *pbuffer, uint32_t length)
write data continuously More...
void | spi_bytes_read (uint8_t *pbuffer, uint32_t length)
read data continuously More...
void | spiflash_wait_busy (void)
wait program done More...
uint8_t | spiflash_read_sr1 (void)
read sr1 register More...
void | spiflash_write_enable (void)
enable write operation More...
uint16_t | spiflash_read_id (void)
read device id More...
uint8_t | spi_byte_write (uint8_t data)
write a byte to flash More...
uint8_t | spi_byte_read (void)
read a byte to flash More...

Variables

uint8_t spiflash_sector_buf [SPIF_SECTOR_SIZE]

Detailed Description

spi_flash source code

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file spi_flash.c.


AT32F403 Firmwary Library: smartcard_config.h File Reference

  • usart
  • smartcard
  • inc
Macros
smartcard_config.h File Reference

header file of clock program More...

Go to the source code of this file.

Macros

#define | SC_USART USART2
#define | SC_USART_CLK CRM_USART2_PERIPH_CLOCK
#define | SC_USART_GPIO_CLK CRM_GPIOA_PERIPH_CLOCK
#define | SC_USART_TX_PIN GPIO_PINS_2
#define | SC_USART_TX_PORT GPIOA
#define | SC_USART_CLK_PIN GPIO_PINS_4
#define | SC_USART_CLK_PORT GPIOA
#define | SC_USART_IRQn USART2_IRQn
#define | SC_USART_IRQHandler USART2_IRQHandler
#define | SC_3_5V_PIN GPIO_PINS_5
#define | SC_RESET_PIN GPIO_PINS_6
#define | SC_CMDVCC_PIN GPIO_PINS_7
#define | SC_OFF_PIN GPIO_PINS_8
#define | SC_3_5V_PORT GPIOA
#define | SC_RESET_PORT GPIOA
#define | SC_CMDVCC_PORT GPIOA
#define | SC_OFF_PORT GPIOA
#define | SC_3_5V_CLK CRM_GPIOA_PERIPH_CLOCK
#define | SC_RESET_CLK CRM_GPIOA_PERIPH_CLOCK
#define | SC_CMDVCC_CLK CRM_GPIOA_PERIPH_CLOCK
#define | SC_OFF_CLK CRM_GPIOA_PERIPH_CLOCK
#define | SC_OFF_EXINT EXINT_LINE_8
#define | SC_OFF_PORTSOURCE GPIO_PORT_SOURCE_GPIOA
#define | SC_OFF_PINSOURCE GPIO_PINS_SOURCE8
#define | SC_OFF_EXINT_IRQ EXINT9_5_IRQn

Detailed Description

header file of clock program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file smartcard_config.h.

Macro Definition Documentation

◆ SC_3_5V_CLK

#define SC_3_5V_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 53 of file smartcard_config.h.

◆ SC_3_5V_PIN

#define SC_3_5V_PIN GPIO_PINS_5

Definition at line 45 of file smartcard_config.h.

◆ SC_3_5V_PORT

#define SC_3_5V_PORT GPIOA

Definition at line 49 of file smartcard_config.h.

◆ SC_CMDVCC_CLK

#define SC_CMDVCC_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 55 of file smartcard_config.h.

◆ SC_CMDVCC_PIN

#define SC_CMDVCC_PIN GPIO_PINS_7

Definition at line 47 of file smartcard_config.h.

◆ SC_CMDVCC_PORT

#define SC_CMDVCC_PORT GPIOA

Definition at line 51 of file smartcard_config.h.

◆ SC_OFF_CLK

#define SC_OFF_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 56 of file smartcard_config.h.

◆ SC_OFF_EXINT

#define SC_OFF_EXINT EXINT_LINE_8

Definition at line 57 of file smartcard_config.h.

◆ SC_OFF_EXINT_IRQ

#define SC_OFF_EXINT_IRQ EXINT9_5_IRQn

Definition at line 60 of file smartcard_config.h.

◆ SC_OFF_PIN

#define SC_OFF_PIN GPIO_PINS_8

Definition at line 48 of file smartcard_config.h.

◆ SC_OFF_PINSOURCE

#define SC_OFF_PINSOURCE GPIO_PINS_SOURCE8

Definition at line 59 of file smartcard_config.h.

◆ SC_OFF_PORT

#define SC_OFF_PORT GPIOA

Definition at line 52 of file smartcard_config.h.

◆ SC_OFF_PORTSOURCE

#define SC_OFF_PORTSOURCE GPIO_PORT_SOURCE_GPIOA

Definition at line 58 of file smartcard_config.h.

◆ SC_RESET_CLK

#define SC_RESET_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 54 of file smartcard_config.h.

◆ SC_RESET_PIN

#define SC_RESET_PIN GPIO_PINS_6

Definition at line 46 of file smartcard_config.h.

◆ SC_RESET_PORT

#define SC_RESET_PORT GPIOA

Definition at line 50 of file smartcard_config.h.

◆ SC_USART

#define SC_USART USART2

Definition at line 34 of file smartcard_config.h.

◆ SC_USART_CLK

#define SC_USART_CLK CRM_USART2_PERIPH_CLOCK

Definition at line 35 of file smartcard_config.h.

◆ SC_USART_CLK_PIN

#define SC_USART_CLK_PIN GPIO_PINS_4

Definition at line 39 of file smartcard_config.h.

◆ SC_USART_CLK_PORT

#define SC_USART_CLK_PORT GPIOA

Definition at line 40 of file smartcard_config.h.

◆ SC_USART_GPIO_CLK

#define SC_USART_GPIO_CLK CRM_GPIOA_PERIPH_CLOCK

Definition at line 36 of file smartcard_config.h.

◆ SC_USART_IRQHandler

#define SC_USART_IRQHandler ( void ) USART2_IRQHandler

Definition at line 42 of file smartcard_config.h.

◆ SC_USART_IRQn

#define SC_USART_IRQn USART2_IRQn

Definition at line 41 of file smartcard_config.h.

◆ SC_USART_TX_PIN

#define SC_USART_TX_PIN GPIO_PINS_2

Definition at line 37 of file smartcard_config.h.

◆ SC_USART_TX_PORT

#define SC_USART_TX_PORT GPIOA

Definition at line 38 of file smartcard_config.h.


AT32F403 Firmwary Library: audio_codec.h File Reference

  • usb_device
  • audio
  • inc
Data Structures | Macros | Functions
audio/inc/audio_codec.h File Reference

audio codec header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct audio_codec_type

Macros

#define | WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/
#define | WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/
#define | WM8988_R2_LOUT1_VOLUME 0x02
#define | WM8988_R3_ROUT1_VOLUME 0x03
#define | WM8988_R4_RESERVED 0x04
#define | WM8988_R5_ADC_DAC_CONTROL 0x05
#define | WM8988_R6_RESERVED 0x06
#define | WM8988_R7_AUDIO_INTERFACE 0x07
#define | WM8988_R8_SAMPLE_RATE 0x08
#define | WM8988_R9_RESERVED 0x09
#define | WM8988_R10_LEFT_DAC_VOLUME 0x0A
#define | WM8988_R11_RIGHT_DAC_VOLUME 0x0B
#define | WM8988_R12_BASS_CONTROL 0x0C
#define | WM8988_R13_TREBLE_CONTROL 0x0D
#define | WM8988_R14_
#define | WM8988_R15_RESET 0x0F
#define | WM8988_R16_3D_CONTROL 0x10
#define | WM8988_R17_ALC1 0x11
#define | WM8988_R18_ALC2 0x12
#define | WM8988_R19_ALC3 0x13
#define | WM8988_R20_NOISE_GATE 0x14
#define | WM8988_R21_LEFT_ADC_VOLUME 0x15
#define | WM8988_R22_RIGHT_ADC_VOLUME 0x16
#define | WM8988_R23_ADDITIONAL_1_CONTROL 0x17
#define | WM8988_R24_ADDITIONAL_2_CONTROL 0x18
#define | WM8988_R25_PWR_1_MGMT 0x19
#define | WM8988_R26_PWR_2_MGMT 0x1A
#define | WM8988_R27_ADDITIONAL_3_CONTROL 0x1B
#define | WM8988_R31_ADC_INPUT_MODE 0x1F
#define | WM8988_R32_ADC_L_SIGNAL_PATH 0x20
#define | WM8988_R33_ADC_R_SIGNAL_PATH 0x21
#define | WM8988_R34_LEFT_OUT_MIX_1 0x22
#define | WM8988_R35_LEFT_OUT_MIX_2 0x23
#define | WM8988_R36_RIGHT_OUT_MIX_1 0x24
#define | WM8988_R37_RIGHT_OUT_MIX_2 0x25
#define | WM8988_R38_RESERVED
#define | WM8988_R39_RESERVED
#define | WM8988_R40_LOUT2_VOLUME 0x28
#define | WM8988_R41_ROUT2_VOLUME 0x29
#define | WM8988_R42_RESERVED
#define | WM8988_R43_LOW_POWER_PALYBACK 0x43
#define | WM8988_I2C_ADDR_CSB_LOW 0x34
#define | WM8988_I2C_ADDR_CSB_HIGH 0x36
#define | I2S1_WS_PIN GPIO_PINS_4
#define | I2S1_CK_PIN GPIO_PINS_5
#define | I2S1_SD_PIN GPIO_PINS_7
#define | I2S1_GPIO GPIOA
#define | I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
#define | I2S1_DT_ADDRESS (&(SPI1->dt))
#define | I2S2_WS_PIN GPIO_PINS_12
#define | I2S2_CK_PIN GPIO_PINS_13
#define | I2S2_SD_PIN GPIO_PINS_15
#define | I2S2_GPIO GPIOB
#define | I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2S2_DT_ADDRESS (&(SPI2->dt))
#define | SPK_TX_FIFO_SIZE (1024 * 4)
#define | MIC_BUFFER_SIZE 1024
#define | SPK_BUFFER_SIZE 4096
#define | DMA_BUFFER_SIZE 288

Functions

error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
audio codec interface More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...

Detailed Description

audio codec header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio/inc/audio_codec.h.


AT32F403 Firmwary Library: audio_codec.h File Reference

  • usb_device
  • composite_audio_hid
  • inc
Data Structures | Macros | Functions
composite_audio_hid/inc/audio_codec.h File Reference

audio codec header file More...

#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct audio_codec_type

Macros

#define | WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/
#define | WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/
#define | WM8988_R2_LOUT1_VOLUME 0x02
#define | WM8988_R3_ROUT1_VOLUME 0x03
#define | WM8988_R4_RESERVED 0x04
#define | WM8988_R5_ADC_DAC_CONTROL 0x05
#define | WM8988_R6_RESERVED 0x06
#define | WM8988_R7_AUDIO_INTERFACE 0x07
#define | WM8988_R8_SAMPLE_RATE 0x08
#define | WM8988_R9_RESERVED 0x09
#define | WM8988_R10_LEFT_DAC_VOLUME 0x0A
#define | WM8988_R11_RIGHT_DAC_VOLUME 0x0B
#define | WM8988_R12_BASS_CONTROL 0x0C
#define | WM8988_R13_TREBLE_CONTROL 0x0D
#define | WM8988_R14_
#define | WM8988_R15_RESET 0x0F
#define | WM8988_R16_3D_CONTROL 0x10
#define | WM8988_R17_ALC1 0x11
#define | WM8988_R18_ALC2 0x12
#define | WM8988_R19_ALC3 0x13
#define | WM8988_R20_NOISE_GATE 0x14
#define | WM8988_R21_LEFT_ADC_VOLUME 0x15
#define | WM8988_R22_RIGHT_ADC_VOLUME 0x16
#define | WM8988_R23_ADDITIONAL_1_CONTROL 0x17
#define | WM8988_R24_ADDITIONAL_2_CONTROL 0x18
#define | WM8988_R25_PWR_1_MGMT 0x19
#define | WM8988_R26_PWR_2_MGMT 0x1A
#define | WM8988_R27_ADDITIONAL_3_CONTROL 0x1B
#define | WM8988_R31_ADC_INPUT_MODE 0x1F
#define | WM8988_R32_ADC_L_SIGNAL_PATH 0x20
#define | WM8988_R33_ADC_R_SIGNAL_PATH 0x21
#define | WM8988_R34_LEFT_OUT_MIX_1 0x22
#define | WM8988_R35_LEFT_OUT_MIX_2 0x23
#define | WM8988_R36_RIGHT_OUT_MIX_1 0x24
#define | WM8988_R37_RIGHT_OUT_MIX_2 0x25
#define | WM8988_R38_RESERVED
#define | WM8988_R39_RESERVED
#define | WM8988_R40_LOUT2_VOLUME 0x28
#define | WM8988_R41_ROUT2_VOLUME 0x29
#define | WM8988_R42_RESERVED
#define | WM8988_R43_LOW_POWER_PALYBACK 0x43
#define | WM8988_I2C_ADDR_CSB_LOW 0x34
#define | WM8988_I2C_ADDR_CSB_HIGH 0x36
#define | I2S1_WS_PIN GPIO_PINS_4
#define | I2S1_CK_PIN GPIO_PINS_5
#define | I2S1_SD_PIN GPIO_PINS_7
#define | I2S1_GPIO GPIOA
#define | I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
#define | I2S1_DT_ADDRESS (&(SPI1->dt))
#define | I2S2_WS_PIN GPIO_PINS_12
#define | I2S2_CK_PIN GPIO_PINS_13
#define | I2S2_SD_PIN GPIO_PINS_15
#define | I2S2_GPIO GPIOB
#define | I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2S2_DT_ADDRESS (&(SPI2->dt))
#define | SPK_TX_FIFO_SIZE (1024 * 4)
#define | MIC_BUFFER_SIZE 1024
#define | SPK_BUFFER_SIZE 4096
#define | DMA_BUFFER_SIZE 288

Functions

error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
audio codec interface More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...

Detailed Description

audio codec header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file composite_audio_hid/inc/audio_codec.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • audio
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define | USB_BUFFER_SIZE_EX
usb endpoint max num define More...
#define | USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • composite_audio_hid
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define | USB_BUFFER_SIZE_EX
usb endpoint max num define More...
#define | USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • composite_vcp_keyboard
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • composite_vcp_msc
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • custom_hid
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • keyboard
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define | USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...
#define | USB_LOW_POWER_WAKUP
usb low power wakeup handler enable More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • mouse
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define | USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...
#define | USB_LOW_POWER_WAKUP
usb low power wakeup handler enable More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • msc
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • printer
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • vcp_loopback
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define | EPT0_TX_ADDR 0x40
usb endpoint max num define More...
#define | EPT0_RX_ADDR 0x80
#define | EPT1_TX_ADDR 0xC0
#define | EPT1_RX_ADDR 0x100
#define | EPT2_TX_ADDR 0x140
#define | EPT2_RX_ADDR 0x180
#define | EPT3_TX_ADDR 0x00
#define | EPT3_RX_ADDR 0x00
#define | EPT4_TX_ADDR 0x00
#define | EPT4_RX_ADDR 0x00
#define | EPT5_TX_ADDR 0x00
#define | EPT5_RX_ADDR 0x00
#define | EPT6_TX_ADDR 0x00
#define | EPT6_RX_ADDR 0x00
#define | EPT7_TX_ADDR 0x00
#define | EPT7_RX_ADDR 0x00

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • virtual_comport
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define | USB_VIRTUAL_COMPORT
usb endpoint max num define More...
#define | EPT0_TX_ADDR 0x40
user custom endpoint buffer EPTn_TX_ADDR, EPTn_RX_ADDR must less than usb buffer size More...
#define | EPT0_RX_ADDR 0x80
#define | EPT1_TX_ADDR 0xC0
#define | EPT1_RX_ADDR 0x100
#define | EPT2_TX_ADDR 0x140
#define | EPT2_RX_ADDR 0x180
#define | EPT3_TX_ADDR 0x00
#define | EPT3_RX_ADDR 0x00
#define | EPT4_TX_ADDR 0x00
#define | EPT4_RX_ADDR 0x00
#define | EPT5_TX_ADDR 0x00
#define | EPT5_RX_ADDR 0x00
#define | EPT6_TX_ADDR 0x00
#define | EPT6_RX_ADDR 0x00
#define | EPT7_TX_ADDR 0x00
#define | EPT7_RX_ADDR 0x00

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • usb_device
  • virtual_msc_iap
  • inc
Macros | Functions
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Macros | Functions
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Macros | Functions
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h.


AT32F403 Firmwary Library: usb_conf.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
Macros | Functions
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h File Reference

usb config header file More...

#include "at32f403.h"
#include "at32f403_board.h"
#include "stdio.h"

Go to the source code of this file.

Macros

#define USB_EPT_AUTO_MALLOC_BUFFER
usb endpoint max num define More...

Functions

void | usb_delay_ms (uint32_t ms)
usb delay millisecond function. More...
void | usb_delay_us (uint32_t us)
usb delay microsecond function. More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h.


AT32F403 Firmwary Library: audio_codec.c File Reference

  • usb_device
  • audio
  • src
Macros | Functions | Variables
audio/src/audio_codec.c File Reference

audio codec function More...

#include "audio_codec.h"
#include "i2c_application.h"
#include "audio_conf.h"
#include <string.h>

Go to the source code of this file.

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 200000
#define | I2Cx_ADDRESS 0x00
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_8
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_9
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)
wm8988 freq More...
#define | WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)
#define | WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)
wm8988 bit width More...

Functions

void | memset16_buffer (uint16_t *buffer, uint32_t set, uint32_t len)
buffer memset More...
void | codec_i2s_reset (void)
audio codec i2s reset More...
void | codec_i2s_init (audio_codec_type *param)
audio codec i2s init More...
void | mclk_tmr1_init (void)
mclk clock conifg More...
void | copy_buff (uint16_t *dest, uint16_t *src, uint32_t len)
copy buffer More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
codec speaker write fifo More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | DMA1_Channel3_IRQHandler (void)
this function handles dma1 channel3 interrupt. More...
void | DMA1_Channel4_IRQHandler (void)
this function handles dma1 channel4 interrupt. More...
error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...

Variables

uint16_t | reg_addr_data []
wm8988 register default value More...
i2c_handle_type hi2cx
audio_codec_type audio_codec
uint16_t | spk_dma_buffer [DMA_BUFFER_SIZE]
uint16_t | mic_dma_buffer [DMA_BUFFER_SIZE]

Detailed Description

audio codec function

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file audio/src/audio_codec.c.


AT32F403 Firmwary Library: audio_codec.c File Reference

  • usb_device
  • composite_audio_hid
  • src
Macros | Functions | Variables
composite_audio_hid/src/audio_codec.c File Reference

audio codec function More...

#include "audio_codec.h"
#include "i2c_application.h"
#include "audio_conf.h"
#include <string.h>

Go to the source code of this file.

Macros

#define | I2C_TIMEOUT 0xFFFFFFFF
#define | I2Cx_SPEED 200000
#define | I2Cx_ADDRESS 0x00
#define | I2Cx_PORT I2C1
#define | I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
#define | I2Cx_SCL_PIN GPIO_PINS_8
#define | I2Cx_SCL_GPIO_PORT GPIOB
#define | I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | I2Cx_SDA_PIN GPIO_PINS_9
#define | I2Cx_SDA_GPIO_PORT GPIOB
#define | I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
#define | WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)
wm8988 freq More...
#define | WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)
#define | WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)
wm8988 bit width More...

Functions

void | memset16_buffer (uint16_t *buffer, uint32_t set, uint32_t len)
buffer memset More...
void | codec_i2s_reset (void)
audio codec i2s reset More...
void | codec_i2s_init (audio_codec_type *param)
audio codec i2s init More...
void | mclk_tmr1_init (void)
mclk clock conifg More...
void | copy_buff (uint16_t *dest, uint16_t *src, uint32_t len)
copy buffer More...
void | audio_codec_set_mic_freq (uint32_t freq)
audio codec set microphone freq More...
void | audio_codec_set_spk_freq (uint32_t freq)
audio codec set speaker freq More...
void | audio_codec_spk_alt_setting (uint32_t alt_seting)
audio codec speaker alt setting config More...
void | audio_codec_mic_alt_setting (uint32_t alt_seting)
audio codec microphone alt setting config More...
void | audio_codec_set_mic_mute (uint8_t mute)
audio codec set microphone mute More...
void | audio_codec_set_spk_mute (uint8_t mute)
audio codec set speaker mute More...
void | audio_codec_set_mic_volume (uint16_t volume)
audio codec set microphone volume More...
void | audio_codec_set_spk_volume (uint16_t volume)
audio codec set speaker volume More...
uint8_t | audio_codec_spk_feedback (uint8_t *feedback)
codec speaker feedback More...
void | audio_codec_spk_fifo_write (uint8_t *data, uint32_t len)
codec speaker write fifo More...
uint32_t | audio_codec_mic_get_data (uint8_t *buffer)
codec microphone get data More...
void | audio_codec_modify_freq (uint32_t freq)
audio codec modify freq More...
void | i2c_lowlevel_init (i2c_handle_type *hi2c)
initializes peripherals used by the i2c. More...
void | DMA1_Channel3_IRQHandler (void)
this function handles dma1 channel3 interrupt. More...
void | DMA1_Channel4_IRQHandler (void)
this function handles dma1 channel4 interrupt. More...
error_status | audio_codec_init (void)
audio codec init More...
error_status | audio_codec_loop (void)
audio codec loop More...

Variables

uint16_t | reg_addr_data []
wm8988 register default value More...
i2c_handle_type hi2cx
audio_codec_type audio_codec
uint16_t | spk_dma_buffer [DMA_BUFFER_SIZE]
uint16_t | mic_dma_buffer [DMA_BUFFER_SIZE]

Detailed Description

audio codec function

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file composite_audio_hid/src/audio_codec.c.


AT32F403 Firmwary Library: msc_diskio.h File Reference

  • usb_device
  • composite_vcp_msc
  • inc
Macros | Functions
composite_vcp_msc/inc/msc_diskio.h File Reference

usb mass storage disk interface header file More...

#include "usb_conf.h"
#include "usb_std.h"

Go to the source code of this file.

Macros

#define | INTERNAL_FLASH_LUN 0
#define | SPI_FLASH_LUN 1
#define | SD_LUN 2
#define | USB_FLASH_ADDR_OFFSET 0x08005000
#define | SECTOR_SIZE_1K 1024
#define | SECTOR_SIZE_2K 2048
#define | SECTOR_SIZE_4K 4096

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...

Detailed Description

usb mass storage disk interface header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file composite_vcp_msc/inc/msc_diskio.h.


AT32F403 Firmwary Library: msc_diskio.h File Reference

  • usb_device
  • msc
  • inc
Macros | Functions
msc/inc/msc_diskio.h File Reference

usb mass storage disk interface header file More...

#include "usb_conf.h"
#include "usb_std.h"

Go to the source code of this file.

Macros

#define | INTERNAL_FLASH_LUN 0
#define | SPI_FLASH_LUN 1
#define | SD_LUN 2
#define | USB_FLASH_ADDR_OFFSET 0x08005000
#define | SECTOR_SIZE_1K 1024
#define | SECTOR_SIZE_2K 2048
#define | SECTOR_SIZE_4K 4096

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...

Detailed Description

usb mass storage disk interface header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc/inc/msc_diskio.h.


AT32F403 Firmwary Library: msc_diskio.h File Reference

  • usb_device
  • virtual_msc_iap
  • inc
Macros | Functions
virtual_msc_iap/inc/msc_diskio.h File Reference

usb mass storage disk interface header file More...

#include "usb_conf.h"
#include "usb_std.h"

Go to the source code of this file.

Macros

#define | INTERNAL_FLASH_LUN 0
#define | SPI_FLASH_LUN 1
#define | SD_LUN 2
#define | USB_FLASH_ADDR_OFFSET 0x08004000

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...

Detailed Description

usb mass storage disk interface header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file virtual_msc_iap/inc/msc_diskio.h.


AT32F403 Firmwary Library: msc_diskio.c File Reference

  • usb_device
  • composite_vcp_msc
  • src
Functions | Variables
composite_vcp_msc/src/msc_diskio.c File Reference

usb mass storage disk function More...

#include "msc_diskio.h"
#include "cdc_msc_class.h"

Go to the source code of this file.

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...

Variables

uint32_t | sector_size = 2048
uint32_t | msc_flash_size
uint8_t | scsi_inquiry [MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]

Detailed Description

usb mass storage disk function

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file composite_vcp_msc/src/msc_diskio.c.


AT32F403 Firmwary Library: msc_diskio.c File Reference

  • usb_device
  • msc
  • src
Functions | Variables
msc/src/msc_diskio.c File Reference

usb mass storage disk function More...

#include "msc_diskio.h"
#include "msc_bot_scsi.h"

Go to the source code of this file.

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...

Variables

uint32_t | sector_size = 2048
uint32_t | msc_flash_size
uint8_t | scsi_inquiry [MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]

Detailed Description

usb mass storage disk function

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file msc/src/msc_diskio.c.


AT32F403 Firmwary Library: msc_diskio.c File Reference

  • usb_device
  • virtual_msc_iap
  • src
Functions | Variables
virtual_msc_iap/src/msc_diskio.c File Reference

usb mass storage disk function More...

#include "msc_diskio.h"
#include "msc_bot_scsi.h"
#include "flash_fat16.h"

Go to the source code of this file.

Functions

uint8_t * | get_inquiry (uint8_t lun)
get disk inquiry More...
usb_sts_type | msc_disk_read (uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read More...
usb_sts_type | msc_disk_write (uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write More...
usb_sts_type | msc_disk_capacity (uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity More...

Variables

uint8_t scsi_inquiry [MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]

Detailed Description

usb mass storage disk function

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file virtual_msc_iap/src/msc_diskio.c.


AT32F403 Firmwary Library: flash_fat16.h File Reference

  • usb_device
  • virtual_msc_iap
  • inc
Data Structures | Macros | Enumerations | Functions | Variables
flash_fat16.h File Reference

fat16 file system header file More...

#include "usb_conf.h"

Go to the source code of this file.

Data Structures

struct | fat_dir_type
struct | flash_iap_type

Macros

#define | FAT16_SECTOR_SIZE 62
#define | FAT16_TABLE_SIZE 4
#define | FAT16_BYTE_PER_SIZE 2048
#define | FAT16_FILENAME_SIZE 11
#define | FAT16_DIR_SIZE 47
#define | FLASH_FAT16_BOOT_SECTOR_ADDR 0x00
#define | FLASH_FAT16_1_ADDR 0x3000
#define | FLASH_FAT16_2_ADDR 0x3800
#define | FLASH_FAT16_ROOT_ADDR 0x4000
#define | FLASH_FAT16_FILE_START_ADDR 0x8800
#define | FLASH_APP_START_ADDR 0x08005000
#define | FLASH_SECTOR_1K_SIZE 0x400
#define | FLASH_SECTOR_2K_SIZE 0x800
#define | FLASH_SECTOR_4K_SIZE 0x1000
#define | FLASH_SECTOR_1K_ALLGNED 0x3FF
#define | FLASH_SECTOR_2K_ALLGNED 0x7FF
#define | FLASH_SECTOR_4K_ALLGNED 0xFFF
#define | FILE_SUFFIX1_LEN 3
#define | FILE_SUFFIX2_LEN 3
#define | FILE_SUFFIX1_NAME "BIN"
#define | FILE_SUFFIX2_NAME "bin"
#define | INVAILD_OFFSET_ADDR 0xFFFFFFFF
#define | IAP_UPGRADE_COMPLETE_FLAG 0x41544B38
#define | IAP_SUCCESS 0
#define | IAP_FAILED 1

Enumerations

enum upgrade_status_type {
UPGRADE_READY = 0 , UPGRAGE_ONGOING , UPGRADE_SUCCESS , UPGRADE_FAILED ,
UPGRADE_LARGE , UPGRADE_UNKNOWN , UPGRADE_DONE , UPGRADE_JUMP
}

Functions

uint32_t | flash_fat16_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
write a logical block address More...
uint32_t | flash_fat16_read (uint32_t fat_lbk, uint8_t *data, uint32_t len)
read a logical block address More...
void | flash_fat16_init (void)
flash fat16 iap init More...
void | flash_fat16_loop_status (void)
loop status More...
uint32_t | flash_fat16_set_name (const uint8_t *file_name, uint8_t len)
set file name More...
uint8_t | flash_fat16_get_upgrade_flag (void)
get iap upgrade complete flag More...

Variables

flash_iap_type flash_iap

Detailed Description

fat16 file system header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file flash_fat16.h.


AT32F403 Firmwary Library: flash_fat16.c File Reference

  • usb_device
  • virtual_msc_iap
  • src
Macros | Functions | Variables
flash_fat16.c File Reference

fat16 file system More...

#include "flash_fat16.h"
#include "usb_conf.h"

Go to the source code of this file.

Macros

#define FAT16_SECTOR_SIZE 62

Functions

uint32_t | flash_fat16_boot_dir_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
boot dir write More...
uint32_t | flash_fat16_sector_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
write sector More...
uint32_t | fat16_memory_copy (uint8_t *dst, const uint8_t *src, uint32_t len)
memory copy function More...
uint32_t | fat16_memory_memset (uint8_t *dst, uint32_t set, uint32_t len)
memset function More...
uint32_t | flash_write_data (uint32_t address, uint8_t *data, uint32_t len)
write data to flash More...
uint32_t | flash_read_data (uint32_t address, uint8_t *data, uint32_t len)
read data from flash More...
uint32_t | fat16_memory_cmp (uint8_t *dst, uint8_t *src, uint32_t len)
memory compare function More...
uint32_t | flash_crc_check (uint32_t address, uint8_t *data, uint32_t len)
crc check More...
void | flash_fat16_clear_upgrade_flag (void)
clear iap upgrade flag More...
void | flash_fat16_set_upgrade_flag (void)
set iap upgrade complete flag More...
uint8_t | flash_fat16_get_upgrade_flag (void)
get iap upgrade complete flag More...
uint32_t | flash_fat16_read (uint32_t fat_lbk, uint8_t *data, uint32_t len)
read a logical block address More...
uint32_t | flash_fat16_write (uint32_t fat_lbk, uint8_t *data, uint32_t len)
write a logical block address More...
uint32_t | flash_fat16_set_name (const uint8_t *file_name, uint8_t len)
set file name More...
uint32_t | flash_fat16_addr_offset (uint8_t *file_name)
get offset address More...
void | flash_fat16_init (void)
flash fat16 iap init More...

Variables

static uint8_t | fat16_sector [62]
const uint8_t | fat16_root_dir_sector [FAT16_DIR_SIZE]
const uint8_t | fat16_table_sector0 [FAT16_TABLE_SIZE]
uint8_t | fat16_file_name [FAT16_FILENAME_SIZE]
fat_dir_type g_file_attr
flash_iap_type flash_iap
uint32_t | file_write_nr = 0
uint8_t | file_match = 0

Detailed Description

fat16 file system

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file flash_fat16.c.


AT32F403 Firmwary Library: picture.h File Reference

  • xmc
  • lcd_8bit
  • inc
Variables
picture.h File Reference

this file contains all the picture used for lcd display. More...

Go to the source code of this file.

Variables

const unsigned char | gimage_3 [51000]
const unsigned char | gimage_8 [51000]
const unsigned char | gimage_5 [51000]
const unsigned char | gimage_9 [51000]
const unsigned char | gimage_0 [51000]

Detailed Description

this file contains all the picture used for lcd display.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file picture.h.

Variable Documentation

◆ gimage_0

const unsigned char gimage_0[51000]

Definition at line 12792 of file picture.h.

Referenced by lcd_display_number().

◆ gimage_3

const unsigned char gimage_3[51000]

Definition at line 31 of file picture.h.

Referenced by lcd_display_number().

◆ gimage_5

const unsigned char gimage_5[51000]

Definition at line 6412 of file picture.h.

Referenced by lcd_display_number().

◆ gimage_8

const unsigned char gimage_8[51000]

Definition at line 3222 of file picture.h.

Referenced by lcd_display_number().

◆ gimage_9

const unsigned char gimage_9[51000]

Definition at line 9602 of file picture.h.

Referenced by lcd_display_number().


AT32F403 Firmwary Library: xmc_lcd.h File Reference

  • xmc
  • lcd_8bit
  • inc
Macros | Functions
lcd_8bit/inc/xmc_lcd.h File Reference

xmc_lcd header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define | XMC_LCD_COMMAND 0x60000000
#define | XMC_LCD_DATA 0x60000001
#define | LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)
#define | LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)
#define | WHITE 0xFFFF
#define | BLACK 0x0000
#define | BLUE 0x001F
#define | BRED 0xF81F
#define | GRED 0xFFE0
#define | GBLUE 0x07FF
#define | RED 0xF800
#define | MAGENTA 0xF81F
#define | GREEN 0x07E0
#define | CYAN 0x7FFF
#define | YELLOW 0xFFE0
#define | BROWN 0xBC40
#define | BRRED 0xFC07
#define | GRAY 0x8430

Functions

void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint8_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint8_t data)
this function is write data to lcd. More...
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...
void | lcd_display_number (void)
this function is display number on the lcd. More...

Detailed Description

xmc_lcd header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file lcd_8bit/inc/xmc_lcd.h.


AT32F403 Firmwary Library: xmc_lcd.h File Reference

  • xmc
  • lcd_touch_16bit
  • inc
Data Structures | Macros | Functions | Variables
lcd_touch_16bit/inc/xmc_lcd.h File Reference

xmc_lcd program header More...

#include "at32f403_board.h"

Go to the source code of this file.

Data Structures

struct lcd_dev_type

Macros

#define | XMC_LCD_COMMAND 0x60000000
#define | XMC_LCD_DATA 0x60000002
#define | LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)
#define | LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)
#define | LCD_BL_HIGH gpio_bits_set(GPIOB,GPIO_PINS_8)
#define | LCD_BL_LOW gpio_bits_reset(GPIOB,GPIO_PINS_8)
#define | WHITE 0xFFFF
#define | BLACK 0x0000
#define | BLUE 0x001F
#define | BRED 0xF81F
#define | GRED 0xFFE0
#define | GBLUE 0x07FF
#define | RED 0xF800
#define | MAGENTA 0xF81F
#define | GREEN 0x07E0
#define | CYAN 0x7FFF
#define | YELLOW 0xFFE0
#define | BROWN 0xBC40
#define | BRRED 0xFC07
#define | GRAY 0x8430

Functions

void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint16_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint16_t data)
this function is write data to lcd. More...
uint16_t | lcd_rd_data (void)
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...

Variables

static uint16_t LCD_ID
lcd_dev_type lcd_dev_struct
lcd_dev_type * lcd_struct

Detailed Description

xmc_lcd program header

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file lcd_touch_16bit/inc/xmc_lcd.h.


AT32F403 Firmwary Library: xmc_lcd.c File Reference

  • xmc
  • lcd_8bit
  • src
Functions
lcd_8bit/src/xmc_lcd.c File Reference

xmc_lcd config program More...

#include "at32f403_board.h"
#include "xmc_lcd.h"
#include "picture.h"

Go to the source code of this file.

Functions

void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint8_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint8_t data)
this function is write data to lcd. More...
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...
void | lcd_display_number (void)
this function is display number on the lcd. More...

Detailed Description

xmc_lcd config program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file lcd_8bit/src/xmc_lcd.c.


AT32F403 Firmwary Library: xmc_lcd.c File Reference

  • xmc
  • lcd_touch_16bit
  • src
Functions | Variables
lcd_touch_16bit/src/xmc_lcd.c File Reference

xmc_lcd program file More...

#include "xmc_lcd.h"

Go to the source code of this file.

Functions

void | xmc_init (void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_init (void)
configures the lcd. this function must be called before any write/read operation on the lcd. More...
void | lcd_wr_command (uint16_t command)
this function is write command to lcd. More...
void | lcd_wr_data (uint16_t data)
this function is write data to lcd. More...
uint16_t | lcd_rd_data (void)
void | lcd_set_block (uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd. More...
void | lcd_write_one_point (uint16_t color)
this function is write one point to lcd. More...
void | lcd_draw_point (uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd. More...
void | lcd_clear (uint16_t color)
this function is clear the lcd. More...

Variables

lcd_dev_type lcd_dev_struct
lcd_dev_type * lcd_struct

Detailed Description

xmc_lcd program file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file lcd_touch_16bit/src/xmc_lcd.c.


AT32F403 Firmwary Library: touch.h File Reference

  • xmc
  • lcd_touch_16bit
  • inc
Data Structures | Macros | Functions | Variables
touch.h File Reference

this file contains all the functions prototypes for the touch firmware driver. More...

#include "at32f403_board.h"

Go to the source code of this file.

Data Structures

struct touch_dev_type

Macros

#define | TCLK_HIGH gpio_bits_set(GPIOB,GPIO_PINS_3)
#define | TCLK_LOW gpio_bits_reset(GPIOB,GPIO_PINS_3)
#define | TDOUT gpio_input_data_bit_read(GPIOB,GPIO_PINS_4)
#define | TDIN_HIGH gpio_bits_set(GPIOB,GPIO_PINS_5)
#define | TDIN_LOW gpio_bits_reset(GPIOB,GPIO_PINS_5)
#define | PEN_HIGH gpio_input_data_bit_read(GPIOB,GPIO_PINS_11)
#define | TCS_HIGH gpio_bits_set(GPIOB,GPIO_PINS_6)
#define | TCS_LOW gpio_bits_reset(GPIOB,GPIO_PINS_6)

Functions

void | touch_pin_init (void)
this function is init touch pin. More...
void | touch_read_xy (uint16_t *x, uint16_t *y)
this function is read data from touch. More...
void | touch_scan (void)
this function is scanning the screen. More...
uint16_t | touch_read_x_or_y (uint8_t xy)
uint16_t | touch_read_ad (uint8_t xy)
this function is read data from touch. More...
void | touch_write_1byte (uint8_t cmd)
this function is write command to touch. More...
uint8_t | touch_read_1byte (void)
this function is read data from touch. More...
error_status | touch_adjust (void)
this function is adjust the screen. More...

Variables

touch_dev_type touch_dev_struct
touch_dev_type * touch_struct

Detailed Description

this file contains all the functions prototypes for the touch firmware driver.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file touch.h.


AT32F403 Firmwary Library: touch.c File Reference

  • xmc
  • lcd_touch_16bit
  • src
Macros | Functions | Variables
touch.c File Reference

this file contains all the functions prototypes for the touch firmware driver. More...

#include "touch.h"
#include "xmc_lcd.h"

Go to the source code of this file.

Macros

#define | READ_TIMES 5
this function is processing data that read from touch. More...
#define | LOST_VAL 1

Functions

void | touch_pin_init (void)
this function is init touch pin. More...
void | touch_read_xy (uint16_t *x, uint16_t *y)
this function is read data from touch. More...
uint16_t | touch_read_x_or_y (uint8_t xy)
uint16_t | touch_read_ad (uint8_t xy)
this function is read data from touch. More...
void | touch_write_1byte (uint8_t cmd)
this function is write command to touch. More...
uint8_t | touch_read_1byte (void)
this function is read data from touch. More...
void | touch_scan (void)
this function is scanning the screen. More...
error_status | touch_adjust (void)
this function is adjust the screen. More...

Variables

touch_dev_type touch_dev_struct
uint8_t | cmd_rdx = 0xd0
uint8_t | cmd_rdy = 0x90
touch_dev_type * touch_struct

Detailed Description

this file contains all the functions prototypes for the touch firmware driver.

        Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file touch.c.


AT32F403 Firmwary Library: xmc_ecc.h File Reference

  • xmc
  • nand
  • ecc
  • inc
Data Structures | Macros | Functions | Variables
xmc_ecc.h File Reference

header file for the nand ecc configuration. More...

#include "at32f403_board.h"

Go to the source code of this file.

Data Structures

struct | nand_id_type
struct | nand_address_type

Macros

#define | ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)
#define | COL_ADDRESS address_struct.byte
#define | BUFFER_SIZE NAND_PAGE_SIZE
#define | XMC_Bank_NAND XMC_Bank2_NAND
#define | Bank_NAND_ADDR Bank2_NAND_ADDR
#define | Bank2_NAND_ADDR ((uint32_t)0x70000000)
#define | CMD_AREA (uint32_t)(1<<16)
#define | ADDR_AREA (uint32_t)(1<<17)
#define | DATA_AREA ((uint32_t)0x00000000)
#define | NAND_CMD_AREA_A ((uint8_t)0x00)
#define | NAND_CMD_AREA_B ((uint8_t)0x01)
#define | NAND_CMD_AREA_C ((uint8_t)0x50)
#define | NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)
#define | NAND_CMD_WRITE0 ((uint8_t)0x80)
#define | NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)
#define | NAND_CMD_ERASE0 ((uint8_t)0x60)
#define | NAND_CMD_ERASE1 ((uint8_t)0xD0)
#define | NAND_CMD_READID ((uint8_t)0x90)
#define | NAND_CMD_STATUS ((uint8_t)0x70)
#define | NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)
#define | NAND_CMD_RESET ((uint8_t)0xFF)
#define | NAND_VALID_ADDRESS ((uint32_t)0x00000100)
#define | NAND_INVALID_ADDRESS ((uint32_t)0x00000200)
#define | NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)
#define | NAND_BUSY ((uint32_t)0x00000000)
#define | NAND_ERROR ((uint32_t)0x00000001)
#define | NAND_READY ((uint32_t)0x00000040)
#define | addr_1st_cycle(addr) (uint8_t)((addr) & 0xFF)
#define | addr_2nd_cycle(addr) (uint8_t)(((addr) & 0xFF00) >> 8)
#define | addr_3rd_cycle(addr) (uint8_t)(((addr) & 0xFF0000) >> 16)
#define | addr_4th_cycle(addr) (uint8_t)(((addr) & 0xFF000000) >> 24)

Functions

void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Variables

uint32_t | ecc_value_write
uint32_t | ecc_value_read

Detailed Description

header file for the nand ecc configuration.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file xmc_ecc.h.


AT32F403 Firmwary Library: xmc_ecc.c File Reference

  • xmc
  • nand
  • ecc
  • src
Functions
xmc_ecc.c File Reference

nand ecc configuration More...

#include "xmc_ecc.h"

Go to the source code of this file.

Functions

void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Detailed Description

nand ecc configuration

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file xmc_ecc.c.


AT32F403 Firmwary Library: xmc_nand.h File Reference

  • xmc
  • nand
  • nand
  • inc
Data Structures | Macros | Functions
xmc_nand.h File Reference

header file for the nand configuration. More...

#include "at32f403_board.h"

Go to the source code of this file.

Data Structures

struct | nand_id_type
struct | nand_address_type

Macros

#define | ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)
#define | COL_ADDRESS address_struct.byte
#define | BUFFER_SIZE NAND_PAGE_SIZE
#define | XMC_Bank_NAND XMC_Bank2_NAND
#define | Bank_NAND_ADDR Bank2_NAND_ADDR
#define | Bank2_NAND_ADDR ((uint32_t)0x70000000)
#define | CMD_AREA (uint32_t)(1<<16)
#define | ADDR_AREA (uint32_t)(1<<17)
#define | DATA_AREA ((uint32_t)0x00000000)
#define | NAND_CMD_AREA_A ((uint8_t)0x00)
#define | NAND_CMD_AREA_B ((uint8_t)0x01)
#define | NAND_CMD_AREA_C ((uint8_t)0x50)
#define | NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)
#define | NAND_CMD_WRITE0 ((uint8_t)0x80)
#define | NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)
#define | NAND_CMD_ERASE0 ((uint8_t)0x60)
#define | NAND_CMD_ERASE1 ((uint8_t)0xD0)
#define | NAND_CMD_READID ((uint8_t)0x90)
#define | NAND_CMD_STATUS ((uint8_t)0x70)
#define | NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)
#define | NAND_CMD_RESET ((uint8_t)0xFF)
#define | NAND_VALID_ADDRESS ((uint32_t)0x00000100)
#define | NAND_INVALID_ADDRESS ((uint32_t)0x00000200)
#define | NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)
#define | NAND_BUSY ((uint32_t)0x00000000)
#define | NAND_ERROR ((uint32_t)0x00000001)
#define | NAND_READY ((uint32_t)0x00000040)
#define | addr_1st_cycle(addr) (uint8_t)((addr) & 0x000000FF)
#define | addr_2nd_cycle(addr) (uint8_t)(((addr) & 0x0000FF00) >> 8)
#define | addr_3rd_cycle(addr) (uint8_t)(((addr) & 0x00FF0000) >> 16)
#define | addr_4th_cycle(addr) (uint8_t)(((addr) & 0xFF000000) >> 24)

Functions

void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Detailed Description

header file for the nand configuration.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file xmc_nand.h.


AT32F403 Firmwary Library: xmc_nand.c File Reference

  • xmc
  • nand
  • nand
  • src
Functions
xmc_nand.c File Reference

nand configuration More...

#include "at32f403_board.h"
#include "xmc_nand.h"

Go to the source code of this file.

Functions

void | nand_init (void)
configures the xmc and gpios to interface with the nand memory. this function must be called before any write/read operation on the nand. More...
void | nand_read_id (nand_id_type *nand_id_struct)
reads nand memory's id. More...
uint32_t | nand_write_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size. More...
uint32_t | nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size. More...
uint32_t | nand_write_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses. More...
uint32_t | nand_read_spare_area (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses. More...
uint32_t | nand_erase_block (nand_address_type address_struct)
this routine erase complete block from nand flash More...
uint32_t | nand_reset (void)
this routine reset the nand flash. More...
uint32_t | nand_get_status (void)
get the nand operation status. More...
uint32_t | nand_read_status (void)
reads the nand memory status using the read status command. More...
uint32_t | nand_address_increment (nand_address_type *address_struct)
increment the nand memory address. More...

Detailed Description

nand configuration

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file xmc_nand.c.


AT32F403 Firmwary Library: xmc_nor.h File Reference

  • xmc
  • nor
  • inc
Data Structures | Enumerations | Functions
xmc_nor.h File Reference
#include "at32f403_clock.h"

Go to the source code of this file.

Data Structures

struct nor_idtype

Enumerations

enum nor_status { NOR_SUCCESS = 0 , NOR_ONGOING , NOR_ERROR , NOR_TIMEOUT }

Functions

void | nor_init (void)
configures the xmc and gpios to interface with the nor memory. this function must be called before any write/read operation on the nor. More...
void | nor_readid (nor_idtype *nor_id)
reads nor memory's manufacturer and device code. More...
nor_status | nor_eraseblock (uint32_t blockaddr)
erases the specified nor memory block. More...
nor_status | nor_erasechip (void)
erases the entire chip. More...
nor_status | nor_writehalfword (uint32_t writeaddr, uint16_t data)
writes a half-word to the nor memory. More...
nor_status | nor_writebuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. More...
nor_status | nor_programbuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor memory. More...
uint16_t | nor_readhalfword (uint32_t readaddr)
reads a half-word from the nor memory. More...
void | nor_readbuffer (uint16_t *pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
reads a block of data from the xmc nor memory. More...
nor_status | nor_returntoreadmode (void)
returns the nor memory to read mode. More...
nor_status | nor_reset (void)
returns the nor memory to read mode and resets the errors in the nor memory status register. More...
nor_status | nor_getstatus (uint32_t timeout)
returns the nor operation status. More...
void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...


AT32F403 Firmwary Library: xmc_nor.c File Reference

  • xmc
  • nor
  • src
Macros | Functions
xmc_nor.c File Reference
#include "xmc_nor.h"

Go to the source code of this file.

Macros

#define | BANK1_NOR2_ADDR ((uint32_t)0x64000000)
#define | BLOCKERASE_TIMEOUT ((uint32_t)0x00A00000)
#define | CHIPERASE_TIMEOUT ((uint32_t)0x30000000)
#define | PROGRAM_TIMEOUT ((uint32_t)0x00001400)
#define | ADDR_SHIFT(A) (BANK1_NOR2_ADDR + (2 * (A)))
#define | NOR_WRITE(address, data) (*(__IO uint16_t *)(address) = (data))

Functions

void | nor_init (void)
configures the xmc and gpios to interface with the nor memory. this function must be called before any write/read operation on the nor. More...
void | nor_readid (nor_idtype *nor_id)
reads nor memory's manufacturer and device code. More...
nor_status | nor_eraseblock (uint32_t blockaddr)
erases the specified nor memory block. More...
nor_status | nor_erasechip (void)
erases the entire chip. More...
nor_status | nor_writehalfword (uint32_t writeaddr, uint16_t data)
writes a half-word to the nor memory. More...
nor_status | nor_writebuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. More...
nor_status | nor_programbuffer (uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor memory. More...
uint16_t | nor_readhalfword (uint32_t readaddr)
reads a half-word from the nor memory. More...
void | nor_readbuffer (uint16_t *pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
reads a block of data from the xmc nor memory. More...
nor_status | nor_returntoreadmode (void)
returns the nor memory to read mode. More...
nor_status | nor_reset (void)
returns the nor memory to read mode and resets the errors in the nor memory status register. More...
nor_status | nor_getstatus (uint32_t timeout)
returns the nor operation status. More...
void | fill_buffer (uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer More...


AT32F403 Firmwary Library: cf.c File Reference

  • xmc
  • pc_card
  • pc_card
Macros | Functions | Variables
cf.c File Reference

xmc pc card program More...

#include "cf.h"
#include "at32f403.h"
#include "at32f403_board.h"
#include <string.h>
#include <stdlib.h>
#include <stdio.h>

Go to the source code of this file.

Macros

#define | PCCARD_TIMEOUT_READ_ID (uint32_t)0x0000FFFF
#define | PCCARD_TIMEOUT_SECTOR (uint32_t)0x0000FFFF
#define | PCCARD_TIMEOUT_STATUS (uint32_t)0x01000000
#define | PCCARD_STATUS_OK (uint8_t)0x58
#define | PCCARD_STATUS_WRITE_OK (uint8_t)0x50

Functions

void | MYDMA_Config (dma_channel_type *DMAy_channelx, uint32_t cpar_src, uint32_t cmar_dst, uint32_t cndtr, uint8_t Transfer_Type, uint8_t Transfer_Width)
DMA configuration. More...
StatusType | XMC_PCCARD_InitCtrl (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
XMC InitCtrl. More...
StatusType | XMC_Enable_Wait_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init)
XMC Enable Wait Feature. More...
StatusType | XMC_Enable_16bit_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
Set 16bit_Feature. More...
StatusType | XMC_PCCARD_InitCommonSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init CommonSpace Timing. More...
StatusType | XMC_PCCARD_InitAttributeSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init AttributeSpace Timing. More...
StatusType | XMC_PCCARD_InitIOSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init IOSpace Timing. More...
StatusType | PCCARD_Init (PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming)
Perform the PCCARD memory Initialization sequence. More...
StatusType | Enable_Wait_Feature (PCCARD_HandleType *hpccard)
Enable Wait Feature. More...
StatusType | PCCARD_DeInit (PCCARD_HandleType *hpccard)
Perform the PCCARD memory De-initialization sequence. More...
BOOL | PCCARD_Identify (PCCARD_HandleType *hpccard)
Identify. More...
BOOL | PCCARD_Read_ID (PCCARD_HandleType *hpccard)
Read Compact Flash's ID. More...
BOOL | PCCARD_Read_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Read sector from PCCARD memory. More...
BOOL | PCCARD_Write_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Write sector to PCCARD memory. More...
BOOL | PCCARD_Erase_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count)
Erase sector from PCCARD memory. More...
BOOL | PCCARD_Diagnostic (PCCARD_HandleType *hpccard)
Diagnostic. More...
BOOL | PCCARD_Check_Power_Mode (PCCARD_HandleType *hpccard)
Check Power Mode. More...
BOOL | PCCARD_Idle (PCCARD_HandleType *hpccard, uint32_t Sector_Count)
Set idle. More...
BOOL | PCCARD_Idle_Immediate (PCCARD_HandleType *hpccard)
Idle immediate. More...
BOOL | PCCARD_Set_Sleep_Mode (PCCARD_HandleType *hpccard)
Set sleep mode. More...
BOOL | PCCARD_Standby (PCCARD_HandleType *hpccard)
Set Standby. More...
BOOL | PCCARD_Standby_Immediate (PCCARD_HandleType *hpccard)
Standby Immediate. More...
BOOL | PCCARD_Reuqest_Sense (PCCARD_HandleType *hpccard)
Reuqest Sense the pccard. More...
BOOL | PCCARD_Recalibrate (PCCARD_HandleType *hpccard)
Recalibrate the pccard. More...
BOOL | PCCARD_Init_Drive_Para (PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Init drive para. More...
BOOL | PCCARD_Seek (PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count)
seek pccard More...
BOOL | PCCARD_Format_Track (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
format track More...
BOOL | PCCARD_Read_Verify_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count)
read Verify Sector More...
BOOL | PCCARD_Write_Verify (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Verify More...
BOOL | PCCARD_Set_Multiple_Mode (PCCARD_HandleType *hpccard, uint32_t Sector_Count)
set multiple mode More...
BOOL | PCCARD_Set_Features (PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature)
set features More...
BOOL | PCCARD_Read_Buffer (PCCARD_HandleType *hpccard, uint8_t *pBuffer)
read buffer More...
BOOL | PCCARD_Write_Buffer (PCCARD_HandleType *hpccard, uint8_t *pBuffer)
write buffer More...
BOOL | PCCARD_Translate_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address)
Translate sector. More...
BOOL | PCCARD_Write_Sector_WO_ERASE (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write sector WO_ERASE More...
BOOL | PCCARD_Write_Multiple (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple More...
BOOL | PCCARD_Read_Multiple (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
read Multiple More...
BOOL | PCCARD_Write_Multiple_WO_ERASE (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple WO_ERASE More...
BOOL | PCCARD_Read_Long_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
read long sector More...
BOOL | PCCARD_Write_Long_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
write long sector More...
uint8_t * | Read_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
read sector More...
uint8_t * | Write_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
write sector More...
BOOL | PCCARD_Reset (PCCARD_HandleType *hpccard)
Reset the PCCARD memory. More...
void | Translate_CHSAddr (PCCARD_HandleType *hpccard, uint32_t Start, uint16_t Sector_Count, uint16_t Sector_Limit)
BOOL | ReadCFCardCISInformation (PCCARD_HandleType *hpccard)
Read CIS Information. More...
BOOL | CF_SendCommand (PCCARD_HandleType *hpccard, uint8_t Cmd)
Send command. More...
BOOL | TaskFileRegIsValid (PCCARD_HandleType *hpccard)
Check the PCCARD TaskFileReg valid. More...
BOOL | Vaild_Init_Drive_Para (PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Check the PCCARD info valid. More...
void | show_verification_result (verification_result_struct *result)
printf the verification result. More...
void | PCCARD_IRQHandler (PCCARD_HandleType *hpccard)
This function handles PCCARD device interrupt request. More...
PCCARD_StateType | PCCARD_GetState (PCCARD_HandleType *hpccard)
return the PCCARD controller state More...
uint8_t | PCCARD_Read_ERROR_REG (PCCARD_HandleType *hpccard)
Get the PCCARD error reg value. More...
uint8_t | PCCARD_Read_STATUS_REG (PCCARD_HandleType *hpccard)
Get the PCCARD status reg value. More...
void | XMC_IRQHandler (void)

Variables

dma_init_type DMA_InitStructure
u16 DMA1_MEM_LEN

Detailed Description

xmc pc card program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cf.c.


AT32F403 Firmwary Library: cf.h File Reference

  • xmc
  • pc_card
  • pc_card
Data Structures | Macros | Typedefs | Enumerations | Functions
cf.h File Reference

header file for the cf configuration. More...

#include "stdint.h"
#include "at32f403.h"

Go to the source code of this file.

Data Structures

struct | CFCardInfoStruct
struct | CFCardAddrStruct
struct | CFCardStruct
struct | verification_result_struct
struct | PCCARD_HandleType
XMC_PCCARD handle Structure definition. More...

Macros

#define | FALSE 0
#define | TRUE 1
#define | XMC_BASE ((uint32_t)0x60000000)
#define | XMC_BANK4_ (XMC_BASE + 0x30000000)
#define | PCCARD_DEVICE_ADDRESS XMC_BANK4_ /* 0x9000 0000 */
#define | PCCARD_COMMON_SPACE_ADDRESS PCCARD_DEVICE_ADDRESS /* Common space size to @0x93FF FFFF */
#define | PCCARD_ATTRIBUTE_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x08000000)) /* Attribute space size to @0x9BFF FFFF */
#define | PCCARD_IO_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x0C000000)) /* IO space size to @0x9FFF FFFF */
#define | PCCARD_IO_SPACE_PRIMARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x1F0)) /* IO space size to @0x9FFF FFFF */
#define | PCCARD_IO_SPACE_SECONDARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x170)) /* IO space size to @0x9FFF FFFF */
#define | ATA_DATA ((uint8_t)0x00) /* Data register */
#define | ATA_ERROR_REG ((uint8_t)0x01) /* Error register */
#define | ATA_FEATURE_REG ((uint8_t)0x01) /* Feature register */
#define | ATA_SECTOR_COUNT ((uint8_t)0x02) /* Sector Count register */
#define | ATA_SECTOR_NUMBER ((uint8_t)0x03) /* Sector Number register */
#define | ATA_CYLINDER_LOW ((uint8_t)0x04) /* Cylinder low register */
#define | ATA_CYLINDER_HIGH ((uint8_t)0x05) /* Cylinder high register */
#define | ATA_CARD_HEAD ((uint8_t)0x06) /* Card/Head register */
#define | ATA_STATUS_CMD ((uint8_t)0x07) /* Status(read)/Command(write) register */
#define | ATA_STATUS_CMD_ALTERNATE ((uint8_t)0x0E) /* Alternate Status(read)/Command(write) register */
#define | ATA_COMMON_DATA_AREA ((uint16_t)0x0400) /* Start of data area (for Common access only!) */
#define | ATTRIBUTE_MEM_BASE 0
#define | ATTRIBUTE_MEM_CONFIG_BASE 0x200
#define | CONFIG_OPTION_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x00
#define | CARD_CONFIG_STATUS_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x02
#define | PIN_REPLACE_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x04
#define | SOCKET_COPY_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x06
#define | CONF0_BIT 0x01
#define | CONF1_BIT 0x02
#define | CONF2_BIT 0x04
#define | CONF3_BIT 0x08
#define | CONF4_BIT 0x10
#define | CONF5_BIT 0x20
#define | LEVLREQ_BIT 0x40
#define | SRESET_BIT 0x80
#define | CF_MEM_MAP_MODE 0x00
#define | CF_IO_16_MODE 0x01
#define | CF_IO_PRICH_MODE 0x02
#define | CF_IO_SECCH_MODE 0x03
#define | ATA_CHECK_POWER_MODE_CMD ((uint8_t)0xE5)
#define | ATA_EXECUTE_DRIVE_DIAG_CMD ((uint8_t)0x90)
#define | ATA_ERASE_SECTOR_CMD ((uint8_t)0xC0)
#define | ATA_FORMAT_TRACK_CMD ((uint8_t)0x50)
#define | ATA_IDENTIFY_DRIVE_CMD ((uint8_t)0xEC)
#define | ATA_IDLE_CMD ((uint8_t)0xE3)
#define | ATA_IDLE_IMMEDIATE_CMD ((uint8_t)0xE1)
#define | ATA_INIT_DRIVE_PARA_CMD ((uint8_t)0x91)
#define | ATA_READ_BUFFER_CMD ((uint8_t)0xE4)
#define | ATA_READ_LONG_SECTOR_CMD ((uint8_t)0x22)
#define | ATA_READ_MULTIPLE_CMD ((uint8_t)0xC4)
#define | ATA_READ_SECTOR_CMD ((uint8_t)0x20)
#define | ATA_READ_VERIFY_SECTOR_CMD ((uint8_t)0x40)
#define | ATA_RECALIBRATE_CMD ((uint8_t)0x10)
#define | ATA_REQUEST_SENSE_CMD ((uint8_t)0x03)
#define | ATA_SECURITY_DISABLE_PASSWORD_CMD ((uint8_t)0xF6)
#define | ATA_SECURITY_EREASE_PREPARE_CMD ((uint8_t)0xF3)
#define | ATA_SECURITY_ERASE_UNIT_CMD ((uint8_t)0xF4)
#define | ATA_SECURITY_FREEZE_LOCK_CMD ((uint8_t)0xF5)
#define | ATA_SECURITY_SET_PASSWORD_CMD ((uint8_t)0xF1)
#define | ATA_SECURITY_UNLOCK_CMD ((uint8_t)0xF2)
#define | ATA_SEEK_CMD ((uint8_t)0x70)
#define | ATA_SET_FEATURE_CMD ((uint8_t)0xEF)
#define | ATA_SET_MULTIPLE_MODE_CMD ((uint8_t)0xC6)
#define | ATA_SET_SLEEP_MODE_CMD ((uint8_t)0xE6)
#define | ATA_STANDBY_CMD ((uint8_t)0xE2)
#define | ATA_STANDBY_IMMEDIATE_CMD ((uint8_t)0xE0)
#define | ATA_TRANSLATE_SECTOR_CMD ((uint8_t)0x87)
#define | ATA_WEAR_LEVEL_CMD ((uint8_t)0xF5)
#define | ATA_WRITE_BUFFER_CMD ((uint8_t)0xE8)
#define | ATA_WRITE_LONG_SECTOR_CMD ((uint8_t)0x32)
#define | ATA_WRITE_MULTIPLE_CMD ((uint8_t)0xC5)
#define | ATA_WRITE_MULTIPLE_WO_ERASE_CMD ((uint8_t)0xCD)
#define | ATA_WRITE_SECTOR_CMD ((uint8_t)0x30)
#define | ATA_WRITE_SECTOR_WO_ERASE_CMD ((uint8_t)0x38)
#define | ATA_WRITE_VERIFY_CMD ((uint8_t)0x3C)
#define | ENABLE_8BIT_MODE 0x01
#define | ENABLE_PWR_LV1 0x0a
#define | DISABLE_READ_LOOK_AHEAD 0x55
#define | DISABLE_POR 0x66
#define | NOP 0x69
#define | DISABLE_8BIT_MODE 0x81
#define | DISABLE_PWR_LV1 0x8a
#define | SET_HOST_CUR_SOURCE_CAP 0x9a
#define | APPLY_4BYTE_DATA_RW_LONG_CMD 0xbb
#define | ENABLE_POR 0xcc
#define | BUSY_BIT 0x80
#define | RDY_BIT 0x40
#define | DWF_BIT 0x20
#define | DSC_BIT 0x10
#define | DRQ_BIT 0x08
#define | CORR_BIT 0x04
#define | ERR_BIT 0x01
#define | BBK_BIT 0x80
#define | UNC_BIT 0x40
#define | IDNF_BIT 0x10
#define | ABRT_BIT 0x04
#define | AMNF_BIT 0x01
#define | PCCARD_TIMEOUT_ERROR ((uint8_t)0x60)
#define | PCCARD_BUSY ((uint8_t)0x80)
#define | PCCARD_PROGR ((uint8_t)0x01)
#define | PCCARD_READY ((uint8_t)0x40)
#define | PCCARD_SECTOR_SIZE ((uint32_t)512)
#define | PCCARD_LONG_SECTOR_SIZE ((uint32_t)516)
#define | PCCARD_25_SECTORS_SIZES ((uint32_t)(512*25))
#define | CISTPL_DEVICE 0x01
#define | CISTPL_DEVICE_OC 0x1c
#define | CISTPL_JEDEC_C 0x18
#define | CISTPL_MANFID 0x20
#define | CISTPL_VERS_1 0x15
#define | CISTPL_FUNCID 0x21
#define | CISTPL_FUNCE 0x22
#define | CISTPL_CONFIG 0x1a
#define | CISTPL_CFTABLE_ENTRY 0x1b
#define | CISTPL_NO_LINK 0x14
#define | CISTPL_END 0xff
#define | TPL_LINK_LOC 16
#define | MAX_CIS_LEN 0x200
#define | CF_DEVICE_ADDRESS PCCARD_DEVICE_ADDRESS
#define | CF_ATTRIBUTE_SPACE_ADDRESS PCCARD_ATTRIBUTE_SPACE_ADDRESS
#define | CF_COMMON_SPACE_ADDRESS PCCARD_COMMON_SPACE_ADDRESS
#define | CF_IO_SPACE_ADDRESS PCCARD_IO_SPACE_ADDRESS
#define | CF_IO_SPACE_PRIMARY_ADDR PCCARD_IO_SPACE_PRIMARY_ADDR
#define | CF_TIMEOUT_ERROR PCCARD_TIMEOUT_ERROR
#define | CF_BUSY PCCARD_BUSY
#define | CF_PROGR PCCARD_PROGR
#define | CF_READY PCCARD_READY
#define | CF_SECTOR_SIZE PCCARD_SECTOR_SIZE
#define | Read_Transfer 1
#define | Write_Transfer 0
#define | Enable_8_bit_Transfer 1
#define | Enable_16_bit_Transfer 0
#define | CF_print(cond, _x_)
#define | ERR_REG_INFO 0
#define | STS_REG_INFO 0
#define | PRT_INIT_INFO 1
#define | PRT_CMD_INFO 0
#define | PRT_ERR_INFO 0
#define | __PCCARD_Reset_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = PCCARD_STATE_RESET)
Reset PCCARD handle state. More...
#define | __XMC_PCCARD_GET_FLAG(__INSTANCE__, __FLAG__) (((__INSTANCE__)->BK4STS &(__FLAG__)) == (__FLAG__))
#define | __XMC_PCCARD_CLEAR_FLAG(__INSTANCE__, __FLAG__) BIT_CLEAR((__INSTANCE__)->BK4STS, (__FLAG__))
#define | XMC_BKxCTRL_DEV_PCCARD ((uint32_t)0x00000000)
#define | BKxTMGMEM_CLEAR_MASK
#define | BKxTMGATT_CLEAR_MASK
#define | BK4TMGIO_CLEAR_MASK

Typedefs

typedef unsigned char BOOL

Enumerations

enum | LockType { UNLOCKED = 0x00 , LOCKED = 0x01 }
enum | StatusType { STATUS_OK = 0x00 , STATUS_ERROR = 0x01 }
enum | PCCARD_StateType { PCCARD_STATE_RESET = 0x00 , PCCARD_STATE_READY = 0x01 , PCCARD_STATE_BUSY = 0x02 , PCCARD_STATE_ERROR = 0x04 }
HAL PCCARD State structures definition. More...

Functions

StatusType | PCCARD_Init (PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming)
Perform the PCCARD memory Initialization sequence. More...
StatusType | PCCARD_DeInit (PCCARD_HandleType *hpccard)
Perform the PCCARD memory De-initialization sequence. More...
StatusType | Enable_Wait_Feature (PCCARD_HandleType *hpccard)
Enable Wait Feature. More...
BOOL | PCCARD_Read_ID (PCCARD_HandleType *hpccard)
Read Compact Flash's ID. More...
BOOL | PCCARD_Identify (PCCARD_HandleType *hpccard)
Identify. More...
BOOL | PCCARD_Write_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Write sector to PCCARD memory. More...
BOOL | PCCARD_Read_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Read sector from PCCARD memory. More...
BOOL | PCCARD_Erase_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count)
Erase sector from PCCARD memory. More...
BOOL | PCCARD_Diagnostic (PCCARD_HandleType *hpccard)
Diagnostic. More...
BOOL | PCCARD_Reset (PCCARD_HandleType *hpccard)
Reset the PCCARD memory. More...
BOOL | PCCARD_Check_Power_Mode (PCCARD_HandleType *hpccard)
Check Power Mode. More...
BOOL | PCCARD_Idle (PCCARD_HandleType *hpccard, uint32_t Sector_Count)
Set idle. More...
BOOL | PCCARD_Idle_Immediate (PCCARD_HandleType *hpccard)
Idle immediate. More...
BOOL | PCCARD_Set_Sleep_Mode (PCCARD_HandleType *hpccard)
Set sleep mode. More...
BOOL | PCCARD_Standby (PCCARD_HandleType *hpccard)
Set Standby. More...
BOOL | PCCARD_Standby_Immediate (PCCARD_HandleType *hpccard)
Standby Immediate. More...
BOOL | PCCARD_Reuqest_Sense (PCCARD_HandleType *hpccard)
Reuqest Sense the pccard. More...
BOOL | PCCARD_Read_Buffer (PCCARD_HandleType *hpccard, uint8_t *pBuffer)
read buffer More...
BOOL | PCCARD_Write_Buffer (PCCARD_HandleType *hpccard, uint8_t *pBuffer)
write buffer More...
BOOL | PCCARD_Recalibrate (PCCARD_HandleType *hpccard)
Recalibrate the pccard. More...
BOOL | PCCARD_Init_Drive_Para (PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Init drive para. More...
BOOL | PCCARD_Seek (PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count)
seek pccard More...
BOOL | PCCARD_Translate_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address)
Translate sector. More...
BOOL | PCCARD_Read_Long_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
read long sector More...
BOOL | PCCARD_Write_Long_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
write long sector More...
BOOL | PCCARD_Write_Sector_WO_ERASE (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write sector WO_ERASE More...
BOOL | PCCARD_Format_Track (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
format track More...
BOOL | PCCARD_Read_Verify_Sector (PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count)
read Verify Sector More...
BOOL | PCCARD_Write_Verify (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Verify More...
BOOL | PCCARD_Set_Multiple_Mode (PCCARD_HandleType *hpccard, uint32_t Sector_Count)
set multiple mode More...
BOOL | PCCARD_Set_Features (PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature)
set features More...
BOOL | PCCARD_Write_Multiple (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple More...
BOOL | PCCARD_Read_Multiple (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
read Multiple More...
BOOL | PCCARD_Write_Multiple_WO_ERASE (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple WO_ERASE More...
BOOL | ReadCFCardCISInformation (PCCARD_HandleType *hpccard)
Read CIS Information. More...
BOOL | CF_SendCommand (PCCARD_HandleType *hpccard, uint8_t Cmd)
Send command. More...
BOOL | TaskFileRegIsValid (PCCARD_HandleType *hpccard)
Check the PCCARD TaskFileReg valid. More...
BOOL | Vaild_Init_Drive_Para (PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Check the PCCARD info valid. More...
void | Translate_CHSAddr (PCCARD_HandleType *hpccard, uint32_t Start, uint16_t Sector_Count, uint16_t Sector_Limit)
void | PCCARD_IRQHandler (PCCARD_HandleType *hpccard)
This function handles PCCARD device interrupt request. More...
void | PCCARD_ITCallback (PCCARD_HandleType *hpccard)
void | show_verification_result (verification_result_struct *result)
printf the verification result. More...
uint8_t * | Read_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
read sector More...
uint8_t * | Write_Sector (PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
write sector More...
PCCARD_StateType | PCCARD_GetState (PCCARD_HandleType *hpccard)
return the PCCARD controller state More...
uint8_t | PCCARD_Read_ERROR_REG (PCCARD_HandleType *hpccard)
Get the PCCARD error reg value. More...
uint8_t | PCCARD_Read_STATUS_REG (PCCARD_HandleType *hpccard)
Get the PCCARD status reg value. More...
StatusType | XMC_PCCARD_InitCtrl (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
XMC InitCtrl. More...
StatusType | XMC_Enable_Wait_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init)
XMC Enable Wait Feature. More...
StatusType | XMC_Enable_16bit_Feature (xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
Set 16bit_Feature. More...
StatusType | XMC_PCCARD_InitCommonSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init CommonSpace Timing. More...
StatusType | XMC_PCCARD_InitAttributeSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init AttributeSpace Timing. More...
StatusType | XMC_PCCARD_InitIOSpaceTiming (xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init IOSpace Timing. More...

Detailed Description

header file for the cf configuration.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file cf.h.


AT32F403 Firmwary Library: xmc_psram.h File Reference

  • xmc
  • psram
  • inc
Functions
xmc_psram.h File Reference

header file for the psram configuration. More...

#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | psram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | psram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc psram memory. More...
void | psram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc psram memory. More...

Detailed Description

header file for the psram configuration.

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file xmc_psram.h.


AT32F403 Firmwary Library: xmc_psram.c File Reference

  • xmc
  • psram
  • src
Macros | Functions
xmc_psram.c File Reference
#include "xmc_psram.h"

Go to the source code of this file.

Macros

#define Bank1_SRAM1_ADDR ((uint32_t)0x60000000)

Functions

void | psram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | psram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc psram memory. More...
void | psram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc psram memory. More...


AT32F403 Firmwary Library: xmc_sram.h File Reference

  • xmc
  • sram
  • inc
Functions
xmc_sram.h File Reference
#include "at32f403_clock.h"

Go to the source code of this file.

Functions

void | sram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | sram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc sram memory. More...
void | sram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc sram memory. More...


AT32F403 Firmwary Library: xmc_sram.c File Reference

  • xmc
  • sram
  • src
Macros | Functions
xmc_sram.c File Reference
#include "xmc_sram.h"

Go to the source code of this file.

Macros

#define Bank1_SRAM1_ADDR ((uint32_t)0x60000000)

Functions

void | sram_init (void)
configures the xmc and gpios to interface with the sram memory. this function must be called before any write/read operation on the psram. More...
void | sram_writebuffer (uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc sram memory. More...
void | sram_readbuffer (uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc sram memory. More...


AT32F403 Firmwary Library: FreeRTOSConfig.h File Reference

  • utilities
  • at32f403_freertos_demo
  • inc
Macros
FreeRTOSConfig.h File Reference

Go to the source code of this file.

Macros

#define | configUSE_PREEMPTION 1
#define | configUSE_IDLE_HOOK 0
#define | configUSE_TICK_HOOK 0
#define | configCPU_CLOCK_HZ ( ( unsigned long ) system_core_clock )
#define | configTICK_RATE_HZ ( ( TickType_t ) 1000 )
#define | configMAX_PRIORITIES ( 5 )
#define | configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )
#define | configSUPPORT_DYNAMIC_ALLOCATION 1
#define | configTOTAL_HEAP_SIZE ( ( size_t ) ( 8 * 1024 ) )
#define | configMAX_TASK_NAME_LEN ( 16 )
#define | configUSE_16_BIT_TICKS 0
#define | configIDLE_SHOULD_YIELD 1
#define | configUSE_CO_ROUTINES 0
#define | configMAX_CO_ROUTINE_PRIORITIES ( 2 )
#define | INCLUDE_vTaskPrioritySet 1
#define | INCLUDE_uxTaskPriorityGet 1
#define | INCLUDE_vTaskDelete 1
#define | INCLUDE_vTaskCleanUpResources 0
#define | INCLUDE_vTaskSuspend 1
#define | INCLUDE_vTaskDelayUntil 1
#define | INCLUDE_vTaskDelay 1
#define | INCLUDE_xTaskGetCurrentTaskHandle 1
#define | configPRIO_BITS 4 /* 15 priority levels */
#define | configLIBRARY_LOWEST_INTERRUPT_PRIORITY 0x0f
#define | configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 0x01
#define | configKERNEL_INTERRUPT_PRIORITY ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
#define | configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
#define | configASSERT(x) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }
#define | vPortSVCHandler SVC_Handler
#define | xPortPendSVHandler PendSV_Handler
#define | xPortSysTickHandler SysTick_Handler

Macro Definition Documentation

◆ configASSERT

#define configASSERT ( x ) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }

Definition at line 168 of file FreeRTOSConfig.h.

◆ configCPU_CLOCK_HZ

#define configCPU_CLOCK_HZ ( ( unsigned long ) system_core_clock )

Definition at line 115 of file FreeRTOSConfig.h.

◆ configIDLE_SHOULD_YIELD

#define configIDLE_SHOULD_YIELD 1

Definition at line 123 of file FreeRTOSConfig.h.

◆ configKERNEL_INTERRUPT_PRIORITY

#define configKERNEL_INTERRUPT_PRIORITY ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )

Definition at line 161 of file FreeRTOSConfig.h.

◆ configLIBRARY_LOWEST_INTERRUPT_PRIORITY

#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 0x0f

Definition at line 151 of file FreeRTOSConfig.h.

◆ configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY

#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 0x01

Definition at line 157 of file FreeRTOSConfig.h.

◆ configMAX_CO_ROUTINE_PRIORITIES

#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )

Definition at line 128 of file FreeRTOSConfig.h.

◆ configMAX_PRIORITIES

#define configMAX_PRIORITIES ( 5 )

Definition at line 117 of file FreeRTOSConfig.h.

◆ configMAX_SYSCALL_INTERRUPT_PRIORITY

#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )

Definition at line 164 of file FreeRTOSConfig.h.

◆ configMAX_TASK_NAME_LEN

#define configMAX_TASK_NAME_LEN ( 16 )

Definition at line 121 of file FreeRTOSConfig.h.

◆ configMINIMAL_STACK_SIZE

#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )

Definition at line 118 of file FreeRTOSConfig.h.

◆ configPRIO_BITS

#define configPRIO_BITS 4 /* 15 priority levels */

Definition at line 146 of file FreeRTOSConfig.h.

◆ configSUPPORT_DYNAMIC_ALLOCATION

#define configSUPPORT_DYNAMIC_ALLOCATION 1

Definition at line 119 of file FreeRTOSConfig.h.

◆ configTICK_RATE_HZ

#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )

Definition at line 116 of file FreeRTOSConfig.h.

◆ configTOTAL_HEAP_SIZE

#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 8 * 1024 ) )

Definition at line 120 of file FreeRTOSConfig.h.

◆ configUSE_16_BIT_TICKS

#define configUSE_16_BIT_TICKS 0

Definition at line 122 of file FreeRTOSConfig.h.

◆ configUSE_CO_ROUTINES

#define configUSE_CO_ROUTINES 0

Definition at line 127 of file FreeRTOSConfig.h.

◆ configUSE_IDLE_HOOK

#define configUSE_IDLE_HOOK 0

Definition at line 113 of file FreeRTOSConfig.h.

◆ configUSE_PREEMPTION

#define configUSE_PREEMPTION 1

Definition at line 112 of file FreeRTOSConfig.h.

◆ configUSE_TICK_HOOK

#define configUSE_TICK_HOOK 0

Definition at line 114 of file FreeRTOSConfig.h.

◆ INCLUDE_uxTaskPriorityGet

#define INCLUDE_uxTaskPriorityGet 1

Definition at line 134 of file FreeRTOSConfig.h.

◆ INCLUDE_vTaskCleanUpResources

#define INCLUDE_vTaskCleanUpResources 0

Definition at line 136 of file FreeRTOSConfig.h.

◆ INCLUDE_vTaskDelay

#define INCLUDE_vTaskDelay 1

Definition at line 139 of file FreeRTOSConfig.h.

◆ INCLUDE_vTaskDelayUntil

#define INCLUDE_vTaskDelayUntil 1

Definition at line 138 of file FreeRTOSConfig.h.

◆ INCLUDE_vTaskDelete

#define INCLUDE_vTaskDelete 1

Definition at line 135 of file FreeRTOSConfig.h.

◆ INCLUDE_vTaskPrioritySet

#define INCLUDE_vTaskPrioritySet 1

Definition at line 133 of file FreeRTOSConfig.h.

◆ INCLUDE_vTaskSuspend

#define INCLUDE_vTaskSuspend 1

Definition at line 137 of file FreeRTOSConfig.h.

◆ INCLUDE_xTaskGetCurrentTaskHandle

#define INCLUDE_xTaskGetCurrentTaskHandle 1

Definition at line 140 of file FreeRTOSConfig.h.

◆ vPortSVCHandler

#define vPortSVCHandler SVC_Handler

Definition at line 172 of file FreeRTOSConfig.h.

◆ xPortPendSVHandler

#define xPortPendSVHandler PendSV_Handler

Definition at line 173 of file FreeRTOSConfig.h.

◆ xPortSysTickHandler

#define xPortSysTickHandler SysTick_Handler

Definition at line 174 of file FreeRTOSConfig.h.


AT32F403 Firmwary Library: include_port.c File Reference

  • utilities
  • at32f403_freertos_demo
  • src
include_port.c File Reference

include_port program More...

#include "..\..\..\middlewares\freertos\source\portable\rvds\ARM_CM4F\port.c"

Go to the source code of this file.

Detailed Description

include_port program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file include_port.c.


AT32F403 Firmwary Library: random.h File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • inc
Macros | Functions
random.h File Reference

at32f403 random header file More...

#include "at32f403.h"

Go to the source code of this file.

Macros

#define ENABLE_RTC_ASSEED (1)

Functions

void randnum_test (void)
enable rtc as seed More...

Detailed Description

at32f403 random header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file random.h.


AT32F403 Firmwary Library: random.c File Reference

  • utilities
  • at32f403_gen_random_number_demo
  • src
Macros | Functions
random.c File Reference

set of firmware functions to random function More...

#include "at32f403_board.h"
#include "random.h"
#include "stdio.h"
#include <stdlib.h>

Go to the source code of this file.

Macros

#define DEVICE_ID_ADDR1 0x1FFFF7E8

Functions

int | get_uid_for_seed (void)
get uid value as seed More...
void | randnum_test (void)
enable rtc as seed More...

Detailed Description

set of firmware functions to random function

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file random.c.


AT32F403 Firmwary Library: iap.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Macros | Functions
app_led3_toggle/inc/iap.h File Reference

iap header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define | APP_START_ADDR 0x08004000
#define | IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
#define | IAP_UPGRADE_FLAG 0x41544B38

Functions

void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...

Detailed Description

iap header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/inc/iap.h.


AT32F403 Firmwary Library: iap.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Macros | Functions
app_led4_toggle/inc/iap.h File Reference

iap header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define | APP_START_ADDR 0x08004000
#define | IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
#define | IAP_UPGRADE_FLAG 0x41544B38

Functions

void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...

Detailed Description

iap header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/inc/iap.h.


AT32F403 Firmwary Library: iap.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
bootloader/inc/iap.h File Reference

iap header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Data Structures

struct cmd_data_group_type
cmd data group type More...

Macros

#define | APP_START_ADDR 0x08004000
#define | IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
#define | IAP_UPGRADE_FLAG 0x41544B38

Typedefs

typedef void(* iapfun) (void)

Enumerations

enum cmd_data_step_type {
CMD_DATA_IDLE , CMD_DATA_ADDR , CMD_DATA_BUF , CMD_DATA_CHACK ,
CMD_DATA_DONE , CMD_DATA_ERR
}
cmd data step type More...
enum cmd_ctr_step_type {
CMD_CTR_IDLE , CMD_CTR_INIT , CMD_CTR_DONE , CMD_CTR_ERR ,
CMD_CTR_APP
}
cmd ctr step type More...
enum update_status_type { UPDATE_PRE , UPDATE_CLEAR_FLAG , UPDATE_ING , UPDATE_DONE }
update status type More...

Functions

void | command_handle (void)
command analysis handle. More...
void | back_err (void)
command response error. More...
void | back_ok (void)
command response ok. More...
void | iap_upgrade_app_handle (void)
iap upgrade app handle. More...
void | app_load (uint32_t appxaddr)
app load. More...

Variables

cmd_data_group_type cmd_data_group_type_struct
cmd_data_step_type cmd_data_step
cmd_ctr_step_type cmd_ctr_step
update_status_type update_status

Detailed Description

iap header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/inc/iap.h.


AT32F403 Firmwary Library: tmr.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Functions
app_led3_toggle/inc/tmr.h File Reference

tmr header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Functions

void tmr_init (void)
init tmr. More...

Detailed Description

tmr header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/inc/tmr.h.


AT32F403 Firmwary Library: tmr.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Functions
app_led4_toggle/inc/tmr.h File Reference

tmr header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Functions

void tmr_init (void)
init tmr. More...

Detailed Description

tmr header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/inc/tmr.h.


AT32F403 Firmwary Library: tmr.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
Functions | Variables
bootloader/inc/tmr.h File Reference

tmr header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Functions

void tmr_init (void)
init tmr. More...

Variables

uint8_t | time_ira_cnt
uint8_t | get_data_from_usart_flag

Detailed Description

tmr header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/inc/tmr.h.


AT32F403 Firmwary Library: usart.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Macros | Functions | Variables
app_led3_toggle/inc/usart.h File Reference

usart header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define | IAP_REV_FLAG_NO 0
#define | IAP_REV_FLAG_5A 1
#define | IAP_REV_FLAG_DONE 2
#define | IAP_REV_FLAG_ERROR 3

Functions

void | uart_init (uint32_t baudrate)
init usart. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Variables

uint8_t iap_flag

Detailed Description

usart header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/inc/usart.h.


AT32F403 Firmwary Library: usart.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Macros | Functions | Variables
app_led4_toggle/inc/usart.h File Reference

usart header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Macros

#define | IAP_REV_FLAG_NO 0
#define | IAP_REV_FLAG_5A 1
#define | IAP_REV_FLAG_DONE 2
#define | IAP_REV_FLAG_ERROR 3

Functions

void | uart_init (uint32_t baudrate)
init usart. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Variables

uint8_t iap_flag

Detailed Description

usart header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/inc/usart.h.


AT32F403 Firmwary Library: usart.h File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
Data Structures | Macros | Functions | Variables
bootloader/inc/usart.h File Reference

usart header file More...

#include "at32f403_board.h"

Go to the source code of this file.

Data Structures

struct usart_group_type
usart group type More...

Macros

#define USART_REC_LEN 1024

Functions

void uart_init (uint32_t baudrate)
init usart. More...

Variables

usart_group_type usart_group_struct

Detailed Description

usart header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/inc/usart.h.


AT32F403 Firmwary Library: iap.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions
app_led3_toggle/src/iap.c File Reference

iap program More...

#include "iap.h"
#include "usart.h"
#include "tmr.h"

Go to the source code of this file.

Functions

void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...

Detailed Description

iap program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/src/iap.c.


AT32F403 Firmwary Library: iap.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions
app_led4_toggle/src/iap.c File Reference

iap program More...

#include "iap.h"
#include "usart.h"
#include "tmr.h"

Go to the source code of this file.

Functions

void | iap_command_handle (void)
iap command handle handle. More...
void | iap_init (void)
iap init. More...

Detailed Description

iap program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/src/iap.c.


AT32F403 Firmwary Library: iap.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
Functions | Variables
bootloader/src/iap.c File Reference

iap program More...

#include "iap.h"
#include "usart.h"
#include "flash.h"
#include "tmr.h"

Go to the source code of this file.

Functions

void | app_load (uint32_t app_addr)
app load. More...
uint8_t | data_take (void)
take data from usart buf. More...
void | command_handle (void)
command analysis handle. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...
void | app_update_handle (void)
app update flow handle. More...
void | iap_upgrade_app_handle (void)
iap upgrade app handle. More...

Variables

cmd_data_step_type cmd_data_step = CMD_DATA_IDLE
cmd_ctr_step_type cmd_ctr_step = CMD_CTR_IDLE
cmd_data_group_type cmd_data_group_struct
update_status_type update_status = UPDATE_PRE
static uint8_t | cmd_addr_cnt = 0
static uint32_t | cmd_data_cnt = 0
iapfun jump_to_app
jump to app More...

Detailed Description

iap program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/src/iap.c.


AT32F403 Firmwary Library: tmr.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions
app_led3_toggle/src/tmr.c File Reference

tmr program More...

#include "at32f403_board.h"
#include "tmr.h"
#include "iap.h"

Go to the source code of this file.

Functions

void | tmr_init (void)
init tmr. More...
void | TMR3_GLOBAL_IRQHandler (void)
tmr3 global interrupt handler. More...

Detailed Description

tmr program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/src/tmr.c.


AT32F403 Firmwary Library: tmr.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions
app_led4_toggle/src/tmr.c File Reference

tmr program More...

#include "at32f403_board.h"
#include "tmr.h"
#include "iap.h"

Go to the source code of this file.

Functions

void | tmr_init (void)
init tmr. More...
void | TMR3_GLOBAL_IRQHandler (void)
tmr3 global interrupt handler. More...

Detailed Description

tmr program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/src/tmr.c.


AT32F403 Firmwary Library: tmr.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
Functions | Variables
bootloader/src/tmr.c File Reference

tmr program More...

#include "at32f403_board.h"
#include "tmr.h"
#include "iap.h"

Go to the source code of this file.

Functions

void | tmr_init (void)
init tmr. More...
void | TMR3_GLOBAL_IRQHandler (void)
tmr3 global interrupt handler. More...

Variables

uint8_t | time_ira_cnt =0
uint8_t | get_data_from_usart_flag = 0

Detailed Description

tmr program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/src/tmr.c.


AT32F403 Firmwary Library: usart.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions | Variables
app_led3_toggle/src/usart.c File Reference

usart program More...

#include "usart.h"
#include "tmr.h"

Go to the source code of this file.

Functions

void | uart_init (uint32_t baudrate)
init usart. More...
void | USART1_IRQHandler (void)
usart1 interrupt handler. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Variables

uint8_t iap_flag = IAP_REV_FLAG_NO

Detailed Description

usart program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/src/usart.c.


AT32F403 Firmwary Library: usart.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions | Variables
app_led4_toggle/src/usart.c File Reference

usart program More...

#include "usart.h"
#include "tmr.h"

Go to the source code of this file.

Functions

void | uart_init (uint32_t baudrate)
init usart. More...
void | USART1_IRQHandler (void)
usart1 interrupt handler. More...
void | back_ok (void)
command response ok. More...
void | back_err (void)
command response error. More...

Variables

uint8_t iap_flag = IAP_REV_FLAG_NO

Detailed Description

usart program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/src/usart.c.


AT32F403 Firmwary Library: usart.c File Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
Functions | Variables
bootloader/src/usart.c File Reference

usart program More...

#include "usart.h"
#include "tmr.h"

Go to the source code of this file.

Functions

void | uart_init (uint32_t baudrate)
init usart. More...
void | USART1_IRQHandler (void)
usart1 interrupt handler. More...

Variables

usart_group_type usart_group_struct

Detailed Description

usart program

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/src/usart.c.


AT32F403 Firmwary Library: hid_iap_user.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
Macros | Functions
app_led3_toggle/inc/hid_iap_user.h File Reference

usb config header file More...

#include "hid_iap_class.h"

Go to the source code of this file.

Macros

#define FLASH_APP_ADDRESS 0x08005000

Functions

void | iap_init (void)
iap init. More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | app_loop (void)
iap loop More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/inc/hid_iap_user.h.


AT32F403 Firmwary Library: hid_iap_user.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
Macros | Functions
app_led4_toggle/inc/hid_iap_user.h File Reference

usb config header file More...

#include "hid_iap_class.h"

Go to the source code of this file.

Macros

#define FLASH_APP_ADDRESS 0x08005000

Functions

void | iap_init (void)
iap init. More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | app_loop (void)
iap loop More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/inc/hid_iap_user.h.


AT32F403 Firmwary Library: hid_iap_user.h File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
Macros | Functions
bootloader/inc/hid_iap_user.h File Reference

usb config header file More...

#include "hid_iap_class.h"

Go to the source code of this file.

Macros

#define FLASH_APP_ADDRESS 0x08005000

Functions

void | iap_init (void)
iap init. More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_loop (void)
iap loop More...
void | jump_to_app (uint32_t address)
jump to app More...

Detailed Description

usb config header file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/inc/hid_iap_user.h.


AT32F403 Firmwary Library: hid_iap_user.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
Functions | Variables
app_led3_toggle/src/hid_iap_user.c File Reference

usb hid iap user file More...

#include "hid_iap_user.h"
#include "hid_iap_class.h"
#include "string.h"

Go to the source code of this file.

Functions

void | iap_clear_upgrade_flag (void)
clear iap upgrade flag More...
void | iap_set_upgrade_flag (void)
set iap upgrade complete flag More...
uint32_t | crc_cal (uint32_t addr, uint16_t nk)
crc cal More...
void | iap_idle (void)
iap idle function More...
void | iap_start (void)
iap start function More...
void | iap_finish (void)
void | iap_jump (void)
void | iap_respond (uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_init (void)
iap init More...
void | iap_get ()
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *pdata, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...
void | app_loop (void)
iap loop More...

Variables

void(* pftarget )(void)

Detailed Description

usb hid iap user file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led3_toggle/src/hid_iap_user.c.


AT32F403 Firmwary Library: hid_iap_user.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
Functions | Variables
app_led4_toggle/src/hid_iap_user.c File Reference

usb hid iap user file More...

#include "hid_iap_user.h"
#include "hid_iap_class.h"
#include "string.h"

Go to the source code of this file.

Functions

void | iap_clear_upgrade_flag (void)
clear iap upgrade flag More...
void | iap_set_upgrade_flag (void)
set iap upgrade complete flag More...
uint32_t | crc_cal (uint32_t addr, uint16_t nk)
crc cal More...
void | iap_idle (void)
iap idle function More...
void | iap_start (void)
iap start function More...
void | iap_finish (void)
void | iap_jump (void)
void | iap_respond (uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_init (void)
iap init More...
void | iap_get ()
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *pdata, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...
void | app_loop (void)
iap loop More...

Variables

void(* pftarget )(void)

Detailed Description

usb hid iap user file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file app_led4_toggle/src/hid_iap_user.c.


AT32F403 Firmwary Library: hid_iap_user.c File Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
Functions | Variables
bootloader/src/hid_iap_user.c File Reference

usb hid iap user file More...

#include "hid_iap_user.h"
#include "hid_iap_class.h"
#include "string.h"

Go to the source code of this file.

Functions

void | iap_clear_upgrade_flag (void)
clear iap upgrade flag More...
void | iap_set_upgrade_flag (void)
set iap upgrade complete flag More...
uint32_t | crc_cal (uint32_t addr, uint16_t nk)
crc cal More...
void | iap_idle (void)
iap idle function More...
void | iap_start (void)
iap start function More...
iap_result_type | iap_address (uint8_t *pdata, uint32_t len)
iap parse address More...
void | iap_finish (void)
iap_result_type | iap_data_write (uint8_t *pdata, uint32_t len)
void | iap_jump (void)
void | iap_respond (uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
void | jump_to_app (uint32_t address)
jump to app More...
iap_result_type | iap_get_upgrade_flag (void)
get iap upgrade complete flag More...
void | iap_erase_sector (uint32_t address)
set iap upgrade complete flag More...
void | iap_init (void)
iap init More...
void | iap_crc (uint8_t *pdata, uint32_t len)
void | iap_get ()
iap_result_type | usbd_hid_iap_process (void *udev, uint8_t *pdata, uint16_t len)
usb device iap function More...
void | usbd_hid_iap_in_complete (void *udev)
usb device in transfer complete function More...
void | iap_loop (void)
iap loop More...

Variables

void(* pftarget )(void)

Detailed Description

usb hid iap user file

                  Copyright notice & Disclaimer

The software Board Support Package (BSP) that is made available to download from Artery official website is the copyrighted work of Artery. Artery authorizes customers to use, copy, and distribute the BSP software and its related documentation for the purpose of design and development in conjunction with Artery microcontrollers. Use of the software is governed by this copyright notice and the following disclaimer.

THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES, GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS, TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

Definition in file bootloader/src/hid_iap_user.c.


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- _ -

  • __align() : diskio.c
  • __AT32F403_LIBRARY_VERSION : at32f403.h
  • __AT32F403_LIBRARY_VERSION_MAJOR : at32f403.h
  • __AT32F403_LIBRARY_VERSION_MIDDLE : at32f403.h
  • __AT32F403_LIBRARY_VERSION_MINOR : at32f403.h
  • __AT32F403_LIBRARY_VERSION_RC : at32f403.h
  • __attribute__() : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • __CM4_REV : at32f403.h
  • __FPU_PRESENT : at32f403.h
  • __MPU_PRESENT : at32f403.h
  • __NVIC_PRIO_BITS : at32f403.h
  • __PCCARD_Reset_HANDLE_STATE : cf.h
  • __Vendor_SysTickConfig : at32f403.h
  • __XMC_PCCARD_CLEAR_FLAG : cf.h
  • __XMC_PCCARD_GET_FLAG : cf.h
  • _asciimap : cdc_keyboard_class.c, keyboard_class.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- a -

  • ABRT_BIT : cf.h
  • ADC1 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_SOFTWARE : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1CH2 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1CH3 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR2CH2 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR3TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR4CH4 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR8CH1 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR8CH2 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_SOFTWARE : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR1CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR2CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR2TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR3CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR4TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR8CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR8TRGOUT : at32f403_adc.h
  • ADC1_2_IRQHandler() : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c
  • ADC1_2_IRQn : at32f403.h
  • ADC1_BASE : at32f403.h
  • ADC1_ETO_MUX : at32f403_gpio.h
  • ADC1_ETP_MUX : at32f403_gpio.h
  • adc1_ordinary_value : project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • adc1_ordinary_valuetab : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • adc1_preempt_valuetab : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c
  • ADC2 : at32f403_adc.h
  • ADC2_BASE : at32f403.h
  • ADC2_ETO_MUX : at32f403_gpio.h
  • ADC2_ETP_MUX : at32f403_gpio.h
  • ADC3 : at32f403_adc.h
  • ADC3_BASE : at32f403.h
  • ADC3_IRQn : at32f403.h
  • ADC3_ORDINARY_TRIG_SOFTWARE : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR1CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR2CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR3CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR5CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR5CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR8CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR8CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR8TRGOUT : at32f403_adc.h
  • adc3_ordinary_valuetab : project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c
  • ADC3_PREEMPT_TRIG_SOFTWARE : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1CH2 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR4CH3 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR5CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR5TRGOUT : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR8CH2 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR8CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR8TRGOUT : at32f403_adc.h
  • adc_base_config() : at32f403_adc.h, at32f403_adc.c
  • adc_base_default_para_init() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_init() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_init_status_get() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_start() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_status_get() : at32f403_adc.h, at32f403_adc.c
  • ADC_CCE_FLAG : at32f403_adc.h
  • ADC_CCE_INT : at32f403_adc.h
  • ADC_CHANNEL_0 : at32f403_adc.h
  • ADC_CHANNEL_1 : at32f403_adc.h
  • ADC_CHANNEL_10 : at32f403_adc.h
  • ADC_CHANNEL_11 : at32f403_adc.h
  • ADC_CHANNEL_12 : at32f403_adc.h
  • ADC_CHANNEL_13 : at32f403_adc.h
  • ADC_CHANNEL_14 : at32f403_adc.h
  • ADC_CHANNEL_15 : at32f403_adc.h
  • ADC_CHANNEL_16 : at32f403_adc.h
  • ADC_CHANNEL_17 : at32f403_adc.h
  • ADC_CHANNEL_2 : at32f403_adc.h
  • ADC_CHANNEL_3 : at32f403_adc.h
  • ADC_CHANNEL_4 : at32f403_adc.h
  • ADC_CHANNEL_5 : at32f403_adc.h
  • ADC_CHANNEL_6 : at32f403_adc.h
  • ADC_CHANNEL_7 : at32f403_adc.h
  • ADC_CHANNEL_8 : at32f403_adc.h
  • ADC_CHANNEL_9 : at32f403_adc.h
  • adc_channel_select_type : at32f403_adc.h
  • adc_combine_mode_select() : at32f403_adc.h, at32f403_adc.c
  • adc_combine_mode_type : at32f403_adc.h
  • adc_combine_ordinary_conversion_data_get() : at32f403_adc.h, at32f403_adc.c
  • adc_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • adc_data_align_type : at32f403_adc.h
  • adc_dma_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_flag_clear() : at32f403_adc.h, at32f403_adc.c
  • adc_flag_get() : at32f403_adc.h, at32f403_adc.c
  • ADC_INDEPENDENT_MODE : at32f403_adc.h
  • adc_interrupt_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_interrupt_flag_get() : at32f403_adc.h, at32f403_adc.c
  • ADC_LEFT_ALIGNMENT : at32f403_adc.h
  • ADC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • ADC_OCCS_FLAG : at32f403_adc.h
  • adc_ordinary_channel_set() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_conversion_data_get() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_conversion_trigger_set() : at32f403_adc.h, at32f403_adc.c
  • ADC_ORDINARY_LONGSHIFT_ONLY_MODE : at32f403_adc.h
  • ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE : at32f403_adc.h
  • adc_ordinary_part_count_set() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_part_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • ADC_ORDINARY_SHORTSHIFT_ONLY_MODE : at32f403_adc.h
  • ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE : at32f403_adc.h
  • ADC_ORDINARY_SMLT_ONLY_MODE : at32f403_adc.h
  • ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE : at32f403_adc.h
  • ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE : at32f403_adc.h
  • adc_ordinary_software_trigger_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_software_trigger_status_get() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_trig_select_type : at32f403_adc.h
  • ADC_PCCE_FLAG : at32f403_adc.h
  • ADC_PCCE_INT : at32f403_adc.h
  • ADC_PCCS_FLAG : at32f403_adc.h
  • adc_preempt_auto_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • ADC_PREEMPT_CHANNEL_1 : at32f403_adc.h
  • ADC_PREEMPT_CHANNEL_2 : at32f403_adc.h
  • ADC_PREEMPT_CHANNEL_3 : at32f403_adc.h
  • ADC_PREEMPT_CHANNEL_4 : at32f403_adc.h
  • adc_preempt_channel_length_set() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_channel_set() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_channel_type : at32f403_adc.h
  • adc_preempt_conversion_data_get() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_conversion_trigger_set() : at32f403_adc.h, at32f403_adc.c
  • ADC_PREEMPT_INTERLTRIG_ONLY_MODE : at32f403_adc.h
  • adc_preempt_offset_value_set() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_part_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • ADC_PREEMPT_SMLT_ONLY_MODE : at32f403_adc.h
  • adc_preempt_software_trigger_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_software_trigger_status_get() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_trig_select_type : at32f403_adc.h
  • adc_reset() : at32f403_adc.h, at32f403_adc.c
  • ADC_RIGHT_ALIGNMENT : at32f403_adc.h
  • ADC_SAMPLETIME_13_5 : at32f403_adc.h
  • ADC_SAMPLETIME_1_5 : at32f403_adc.h
  • ADC_SAMPLETIME_239_5 : at32f403_adc.h
  • ADC_SAMPLETIME_28_5 : at32f403_adc.h
  • ADC_SAMPLETIME_41_5 : at32f403_adc.h
  • ADC_SAMPLETIME_55_5 : at32f403_adc.h
  • ADC_SAMPLETIME_71_5 : at32f403_adc.h
  • ADC_SAMPLETIME_7_5 : at32f403_adc.h
  • adc_sampletime_select_type : at32f403_adc.h
  • ADC_TEMP_BASE : project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • ADC_TEMP_SLOPE : project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • adc_tempersensor_vintrv_enable() : at32f403_adc.h, at32f403_adc.c
  • ADC_VMONITOR_ALL_ORDINARY : at32f403_adc.h
  • ADC_VMONITOR_ALL_ORDINARY_PREEMPT : at32f403_adc.h
  • ADC_VMONITOR_ALL_PREEMPT : at32f403_adc.h
  • ADC_VMONITOR_NONE : at32f403_adc.h
  • ADC_VMONITOR_SINGLE_ORDINARY : at32f403_adc.h
  • ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT : at32f403_adc.h
  • ADC_VMONITOR_SINGLE_PREEMPT : at32f403_adc.h
  • ADC_VMOR_FLAG : at32f403_adc.h
  • ADC_VMOR_INT : at32f403_adc.h
  • adc_voltage_monitor_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_voltage_monitor_single_channel_select() : at32f403_adc.h, at32f403_adc.c
  • adc_voltage_monitor_threshold_value_set() : at32f403_adc.h, at32f403_adc.c
  • adc_voltage_monitoring_type : at32f403_adc.h
  • ADC_VREF : project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • addr_1st_cycle : xmc_ecc.h, xmc_nand.h
  • addr_2nd_cycle : xmc_ecc.h, xmc_nand.h
  • addr_3rd_cycle : xmc_ecc.h, xmc_nand.h
  • addr_4th_cycle : xmc_ecc.h, xmc_nand.h
  • ADDR_AREA : xmc_ecc.h, xmc_nand.h
  • ADDR_SHIFT : xmc_nor.c
  • ADDRESS_OUT_OF_RANGE : cdc_msc_class.h, msc_bot_scsi.h
  • AHBPERIPH_BASE : at32f403.h
  • AIRCR_VECTKEY_MASK : at32f403_misc.c
  • alarm_init() : project/at_start_f403/examples/rtc/calendar/src/main.c
  • ALIGNED_TAIL : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, composite_cdc_msc/msc_bot_scsi.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc/msc_bot_scsi.c, msc_desc.c, printer_class.c, printer_desc.c
  • AMNF_BIT : cf.h
  • APB1PERIPH_BASE : at32f403.h
  • APB2PERIPH_BASE : at32f403.h
  • app_load() : bootloader/inc/iap.h, bootloader/src/iap.c
  • app_loop() : app_led3_toggle/inc/hid_iap_user.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/inc/hid_iap_user.h, app_led4_toggle/src/hid_iap_user.c
  • APP_START_ADDR : app_led3_toggle/inc/iap.h, app_led4_toggle/inc/iap.h, bootloader/inc/iap.h
  • app_update_handle() : bootloader/src/iap.c
  • APPLY_4BYTE_DATA_RW_LONG_CMD : cf.h
  • AT32_AUDIO_FREQ_16K : audio_desc.h, audio_hid_desc.h
  • AT32_AUDIO_FREQ_48K : audio_desc.h, audio_hid_desc.h
  • at32_board_init() : at32f403_board.c, at32f403_board.h
  • at32_button_init() : at32f403_board.c, at32f403_board.h
  • at32_button_press() : at32f403_board.c, at32f403_board.h
  • at32_button_state() : at32f403_board.c, at32f403_board.h
  • at32_led_init() : at32f403_board.c, at32f403_board.h
  • at32_led_off() : at32f403_board.c, at32f403_board.h
  • at32_led_on() : at32f403_board.c, at32f403_board.h
  • at32_led_toggle() : at32f403_board.c, at32f403_board.h
  • ATA_CARD_HEAD : cf.h
  • ATA_CHECK_POWER_MODE_CMD : cf.h
  • ATA_COMMON_DATA_AREA : cf.h
  • ATA_CYLINDER_HIGH : cf.h
  • ATA_CYLINDER_LOW : cf.h
  • ATA_DATA : cf.h
  • ATA_ERASE_SECTOR_CMD : cf.h
  • ATA_ERROR_REG : cf.h
  • ATA_EXECUTE_DRIVE_DIAG_CMD : cf.h
  • ATA_FEATURE_REG : cf.h
  • ATA_FORMAT_TRACK_CMD : cf.h
  • ATA_IDENTIFY_DRIVE_CMD : cf.h
  • ATA_IDLE_CMD : cf.h
  • ATA_IDLE_IMMEDIATE_CMD : cf.h
  • ATA_INIT_DRIVE_PARA_CMD : cf.h
  • ATA_READ_BUFFER_CMD : cf.h
  • ATA_READ_LONG_SECTOR_CMD : cf.h
  • ATA_READ_MULTIPLE_CMD : cf.h
  • ATA_READ_SECTOR_CMD : cf.h
  • ATA_READ_VERIFY_SECTOR_CMD : cf.h
  • ATA_RECALIBRATE_CMD : cf.h
  • ATA_REQUEST_SENSE_CMD : cf.h
  • ATA_SECTOR_COUNT : cf.h
  • ATA_SECTOR_NUMBER : cf.h
  • ATA_SECURITY_DISABLE_PASSWORD_CMD : cf.h
  • ATA_SECURITY_ERASE_UNIT_CMD : cf.h
  • ATA_SECURITY_EREASE_PREPARE_CMD : cf.h
  • ATA_SECURITY_FREEZE_LOCK_CMD : cf.h
  • ATA_SECURITY_SET_PASSWORD_CMD : cf.h
  • ATA_SECURITY_UNLOCK_CMD : cf.h
  • ATA_SEEK_CMD : cf.h
  • ATA_SET_FEATURE_CMD : cf.h
  • ATA_SET_MULTIPLE_MODE_CMD : cf.h
  • ATA_SET_SLEEP_MODE_CMD : cf.h
  • ATA_STANDBY_CMD : cf.h
  • ATA_STANDBY_IMMEDIATE_CMD : cf.h
  • ATA_STATUS_CMD : cf.h
  • ATA_STATUS_CMD_ALTERNATE : cf.h
  • ATA_TRANSLATE_SECTOR_CMD : cf.h
  • ATA_WEAR_LEVEL_CMD : cf.h
  • ATA_WRITE_BUFFER_CMD : cf.h
  • ATA_WRITE_LONG_SECTOR_CMD : cf.h
  • ATA_WRITE_MULTIPLE_CMD : cf.h
  • ATA_WRITE_MULTIPLE_WO_ERASE_CMD : cf.h
  • ATA_WRITE_SECTOR_CMD : cf.h
  • ATA_WRITE_SECTOR_WO_ERASE_CMD : cf.h
  • ATA_WRITE_VERIFY_CMD : cf.h
  • atr_decode_status : project/at_start_f403/examples/usart/smartcard/src/main.c
  • ATTRIBUTE_MEM_BASE : cf.h
  • ATTRIBUTE_MEM_CONFIG_BASE : cf.h
  • AUDIO_AC_DESCRIPTOR_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_EXTENSION_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_FEATURE_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_HEADER : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_INPUT_TERMINAL : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_MIXER_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_OUTPUT_TERMINAL : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_PROCESSING_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_SELECTOR_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_DESCRIPTOR_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_FORMAT_SPECIFIC : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_FORMAT_TYPE : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_GENERAL : audio_desc.h, audio_hid_desc.h
  • AUDIO_BCD_NUM : audio_desc.h
  • AUDIO_BINTERVAL_TIME : audio_desc.h
  • AUDIO_BITW_16 : audio/audio_conf.h, audio_hid/audio_conf.h
  • audio_class_handler : audio_class.c, audio_class.h
  • audio_codec : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • audio_codec_init() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_loop() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_mic_alt_setting() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_mic_get_data() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_modify_freq() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_mic_freq() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_mic_mute() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_mic_volume() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_spk_freq() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_spk_mute() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_spk_volume() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_spk_alt_setting() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_spk_feedback() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_spk_fifo_write() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • AUDIO_CS_CONFIGURATION : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_DEVICE : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_ENDPOINT : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_INTERFACE : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_STRING : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_DEFAULT_BITW : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_DEFAULT_FREQ : audio/audio_conf.h, audio_hid/audio_conf.h
  • audio_desc_handler : audio_desc.c, audio_desc.h
  • AUDIO_DESCRIPTOR_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_DESCRIPTOR_TYPE : audio_class.h, audio_hid_class.h
  • AUDIO_FEATURE_UNIT_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_FEEDBACK_MAXPACKET_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_FORMAT_TYPE_I : audio_desc.h, audio_hid_desc.h
  • AUDIO_FREQ_16K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_FREQ_48K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_FREQ_SET_CONTROL : audio_class.h, audio_hid_class.h
  • AUDIO_FU_BASS_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_CONTROL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_MID_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_MUTE_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_TREBLE_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_VOLUME_CONTROL : audio_desc.h, audio_hid_desc.h
  • audio_get_interface() : audio_class.c, audio_hid_class.c
  • audio_hid_class_handler : audio_hid_class.c, audio_hid_class.h
  • audio_hid_class_send_report() : audio_hid_class.c, audio_hid_class.h
  • audio_hid_desc_handler : audio_hid_desc.c, audio_hid_desc.h
  • audio_hid_struct : audio_hid_class.c
  • AUDIO_INPUT_TERMINAL_MICROPHONE : audio_desc.h, audio_hid_desc.h
  • AUDIO_INPUT_TERMINAL_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_INPUT_TERMINAL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_INTERFACE_LEN : audio_desc.h, audio_hid_desc.h
  • AUDIO_INTERFACE_NUM : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_BITW : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_CHANEL_NUM : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_MIC_CHR : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_DEFAULT_BITW : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_MIC_FEATURE_UNIT_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_FREQ_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_IN_MAXPACKET_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_MIC_INPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_INTERFACE : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_INTERFACE_NUMBER : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_OUTPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_MUTE_CONTROL : audio_class.h, audio_hid_class.h
  • AUDIO_OUTPUT_TERMINAL_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_OUTPUT_TERMINAL_SPEAKER : audio_desc.h, audio_hid_desc.h
  • AUDIO_OUTPUT_TERMINAL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_PROTOCOL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_REMAIN_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_REQ_CONTROL_ENDPOINT : audio_class.h, audio_hid_class.h
  • AUDIO_REQ_CONTROL_INTERFACE : audio_class.h, audio_hid_class.h
  • AUDIO_REQ_CONTROL_MASK : audio_class.h, audio_hid_class.h
  • audio_req_get_cur() : audio_class.c, audio_hid_class.c
  • AUDIO_REQ_GET_CUR : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_GET_MAX : audio_desc.h, audio_hid_desc.h
  • audio_req_get_max() : audio_class.c, audio_hid_class.c
  • AUDIO_REQ_GET_MEM : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_GET_MIN : audio_desc.h, audio_hid_desc.h
  • audio_req_get_min() : audio_class.c, audio_hid_class.c
  • AUDIO_REQ_GET_RES : audio_desc.h, audio_hid_desc.h
  • audio_req_get_res() : audio_class.c, audio_hid_class.c
  • AUDIO_REQ_GET_STAT : audio_desc.h, audio_hid_desc.h
  • audio_req_set_cur() : audio_class.c, audio_hid_class.c
  • AUDIO_REQ_SET_CUR : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_MAX : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_MEM : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_MIN : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_RES : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQUEST_CODE_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • audio_set_interface() : audio_class.c, audio_hid_class.c
  • AUDIO_SPK_BITW : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_CHANEL_NUM : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SPK_CHR : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_DEFAULT_BITW : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SPK_FEATURE_UNIT_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_FREQ_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_INPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_INTERFACE : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_INTERFACE_NUMBER : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_OUT_MAXPACKET_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_SPK_OUTPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • audio_struct : audio_class.c
  • AUDIO_SUBCLASS_AUDIOCONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUBCLASS_AUDIOSTREAMING : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUBCLASS_MIDISTREMING : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUBCLASS_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUPPORT_FEEDBACK : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_FREQ : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_FREQ_16K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_FREQ_48K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_MAX_FREQ : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_MIC : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_SPK : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_TERMINAL_TYPE_STREAMING : audio_desc.h, audio_hid_desc.h
  • AUDIO_TERMINAL_TYPE_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_TERMINAL_TYPE_VENDOR : audio_desc.h, audio_hid_desc.h
  • AUDIO_VOLUME_CONTROL : audio_class.h, audio_hid_class.h
  • AUHID_BCD_NUM : audio_hid_desc.h
  • AUHID_HID_BCD_NUM : audio_hid_desc.h
  • AUHID_HID_BINTERVAL_TIME : audio_hid_desc.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- b -

  • back_err() : app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c, bootloader/inc/iap.h, bootloader/src/iap.c
  • back_ok() : app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c, bootloader/inc/iap.h, bootloader/src/iap.c
  • BANK1_NOR2_ADDR : xmc_nor.c
  • Bank1_SRAM1_ADDR : xmc_psram.c, xmc_sram.c
  • Bank2_NAND_ADDR : xmc_ecc.h, xmc_nand.h
  • Bank_NAND_ADDR : xmc_ecc.h, xmc_nand.h
  • BBK_BIT : cf.h
  • BK4TMGIO_CLEAR_MASK : cf.h
  • BKxTMGATT_CLEAR_MASK : cf.h
  • BKxTMGMEM_CLEAR_MASK : cf.h
  • BLACK : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BLK2 : at32f403_usb.h
  • BLK32 : at32f403_usb.h
  • BLOCK_SIZE : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • BLOCKERASE_TIMEOUT : xmc_nor.c
  • BLOCKS_NUMBER : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • BLUE : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BOOL : cf.h
  • bot_cbw_decode() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_allow_medium_removal() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_capacity() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_check_address() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_clear_feature() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_cmd_process() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_datain_handler() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_dataout_handler() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_format_capacity() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_init() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_inquiry() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_mode_sense10() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_mode_sense6() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_read10() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_request_sense() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_reset() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_send_csw() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_send_data() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_sense_code() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_stall() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_start_stop() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_test_unit() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_verify() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_write10() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • BPR : at32f403_bpr.h
  • bpr_addr_tab : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • BPR_BASE : at32f403.h
  • BPR_DATA1 : at32f403_bpr.h
  • BPR_DATA10 : at32f403_bpr.h
  • BPR_DATA11 : at32f403_bpr.h
  • BPR_DATA12 : at32f403_bpr.h
  • BPR_DATA13 : at32f403_bpr.h
  • BPR_DATA14 : at32f403_bpr.h
  • BPR_DATA15 : at32f403_bpr.h
  • BPR_DATA16 : at32f403_bpr.h
  • BPR_DATA17 : at32f403_bpr.h
  • BPR_DATA18 : at32f403_bpr.h
  • BPR_DATA19 : at32f403_bpr.h
  • BPR_DATA2 : at32f403_bpr.h
  • BPR_DATA20 : at32f403_bpr.h
  • BPR_DATA21 : at32f403_bpr.h
  • BPR_DATA22 : at32f403_bpr.h
  • BPR_DATA23 : at32f403_bpr.h
  • BPR_DATA24 : at32f403_bpr.h
  • BPR_DATA25 : at32f403_bpr.h
  • BPR_DATA26 : at32f403_bpr.h
  • BPR_DATA27 : at32f403_bpr.h
  • BPR_DATA28 : at32f403_bpr.h
  • BPR_DATA29 : at32f403_bpr.h
  • BPR_DATA3 : at32f403_bpr.h
  • BPR_DATA30 : at32f403_bpr.h
  • BPR_DATA31 : at32f403_bpr.h
  • BPR_DATA32 : at32f403_bpr.h
  • BPR_DATA33 : at32f403_bpr.h
  • BPR_DATA34 : at32f403_bpr.h
  • BPR_DATA35 : at32f403_bpr.h
  • BPR_DATA36 : at32f403_bpr.h
  • BPR_DATA37 : at32f403_bpr.h
  • BPR_DATA38 : at32f403_bpr.h
  • BPR_DATA39 : at32f403_bpr.h
  • BPR_DATA4 : at32f403_bpr.h
  • BPR_DATA40 : at32f403_bpr.h
  • BPR_DATA41 : at32f403_bpr.h
  • BPR_DATA42 : at32f403_bpr.h
  • BPR_DATA5 : at32f403_bpr.h
  • BPR_DATA6 : at32f403_bpr.h
  • BPR_DATA7 : at32f403_bpr.h
  • BPR_DATA8 : at32f403_bpr.h
  • BPR_DATA9 : at32f403_bpr.h
  • bpr_data_read() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_data_type : at32f403_bpr.h
  • bpr_data_write() : at32f403_bpr.h, at32f403_bpr.c
  • BPR_DR_NUMBER : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • bpr_flag_clear() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_flag_get() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_interrupt_enable() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_interrupt_flag_get() : at32f403_bpr.h, at32f403_bpr.c
  • BPR_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • bpr_reg_check() : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • bpr_reg_judge() : project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • bpr_reg_write() : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • bpr_reset() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_rtc_clock_calibration_value_set() : at32f403_bpr.h, at32f403_bpr.c
  • BPR_RTC_OUTPUT_ALARM : at32f403_bpr.h
  • BPR_RTC_OUTPUT_CLOCK_CAL_AFTER : at32f403_bpr.h
  • BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE : at32f403_bpr.h
  • BPR_RTC_OUTPUT_NONE : at32f403_bpr.h
  • BPR_RTC_OUTPUT_SECOND : at32f403_bpr.h
  • bpr_rtc_output_select() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_rtc_output_type : at32f403_bpr.h
  • BPR_TAMPER_EVENT_FLAG : at32f403_bpr.h
  • BPR_TAMPER_INTERRUPT_FLAG : at32f403_bpr.h
  • BPR_TAMPER_PIN_ACTIVE_HIGH : at32f403_bpr.h
  • bpr_tamper_pin_active_level_set() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_tamper_pin_active_level_type : at32f403_bpr.h
  • BPR_TAMPER_PIN_ACTIVE_LOW : at32f403_bpr.h
  • bpr_tamper_pin_enable() : at32f403_bpr.h, at32f403_bpr.c
  • BRED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BROWN : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BRRED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BUF_SIZE : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c
  • buffer : project/at_start_f403/examples/cortex_m4/fpu/src/main.c
  • buffer_cc1 : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • buffer_cc2 : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • buffer_compare() : project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/flash/flash_write_read/src/main.c, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • buffer_compare_24bits() : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c
  • buffer_read : project/at_start_f403/examples/flash/flash_write_read/src/main.c
  • BUFFER_SIZE : project/at_start_f403/examples/crc/calculation/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, xmc_ecc.h, xmc_nand.h, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • buffer_size : project/at_start_f403/examples/xmc/nor/src/main.c
  • buffer_write : project/at_start_f403/examples/flash/flash_write_read/src/main.c
  • Buffercmp() : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • BUFFERSIZE : project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c
  • BusFault_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • BusFault_IRQn : at32f403.h
  • BUSY_BIT : cf.h
  • button_exint_init() : project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/templates/src/main.c
  • button_isr() : project/at_start_f403/templates/src/main.c
  • BUTTON_RELEASE : mouse_class.h
  • button_type : at32f403_board.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- c -

  • calendar : rtc.h, rtc.c
  • CAN1 : at32f403_can.h
  • CAN1_BASE : at32f403.h
  • CAN1_RX1_IRQn : at32f403.h
  • CAN1_SE_IRQHandler() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • CAN1_SE_IRQn : at32f403.h
  • can_base_init() : at32f403_can.h, at32f403_can.c
  • can_baudrate_default_para_init() : at32f403_can.h, at32f403_can.c
  • can_baudrate_set() : at32f403_can.h, at32f403_can.c
  • CAN_BOF_FLAG : at32f403_can.h
  • CAN_BOIEN_INT : at32f403_can.h
  • CAN_BTS1_10TQ : at32f403_can.h
  • CAN_BTS1_11TQ : at32f403_can.h
  • CAN_BTS1_12TQ : at32f403_can.h
  • CAN_BTS1_13TQ : at32f403_can.h
  • CAN_BTS1_14TQ : at32f403_can.h
  • CAN_BTS1_15TQ : at32f403_can.h
  • CAN_BTS1_16TQ : at32f403_can.h
  • CAN_BTS1_1TQ : at32f403_can.h
  • CAN_BTS1_2TQ : at32f403_can.h
  • CAN_BTS1_3TQ : at32f403_can.h
  • CAN_BTS1_4TQ : at32f403_can.h
  • CAN_BTS1_5TQ : at32f403_can.h
  • CAN_BTS1_6TQ : at32f403_can.h
  • CAN_BTS1_7TQ : at32f403_can.h
  • CAN_BTS1_8TQ : at32f403_can.h
  • CAN_BTS1_9TQ : at32f403_can.h
  • can_bts1_type : at32f403_can.h
  • CAN_BTS2_1TQ : at32f403_can.h
  • CAN_BTS2_2TQ : at32f403_can.h
  • CAN_BTS2_3TQ : at32f403_can.h
  • CAN_BTS2_4TQ : at32f403_can.h
  • CAN_BTS2_5TQ : at32f403_can.h
  • CAN_BTS2_6TQ : at32f403_can.h
  • CAN_BTS2_7TQ : at32f403_can.h
  • CAN_BTS2_8TQ : at32f403_can.h
  • can_bts2_type : at32f403_can.h
  • can_configuration() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • can_debug_transmission_prohibit() : at32f403_can.h, at32f403_can.c
  • can_default_para_init() : at32f403_can.h, at32f403_can.c
  • CAN_DISCARDING_FIRST_RECEIVED : at32f403_can.h
  • CAN_DISCARDING_LAST_RECEIVED : at32f403_can.h
  • can_doze_mode_enter() : at32f403_can.h, at32f403_can.c
  • can_doze_mode_exit() : at32f403_can.h, at32f403_can.c
  • CAN_EAF_FLAG : at32f403_can.h
  • CAN_EAIEN_INT : at32f403_can.h
  • CAN_EDZC_FLAG : at32f403_can.h
  • CAN_EDZIEN_INT : at32f403_can.h
  • CAN_ENTER_DOZE_FAILED : at32f403_can.h
  • can_enter_doze_status_type : at32f403_can.h
  • CAN_ENTER_DOZE_SUCCESSFUL : at32f403_can.h
  • CAN_EOIEN_INT : at32f403_can.h
  • CAN_EOIF_FLAG : at32f403_can.h
  • CAN_EPF_FLAG : at32f403_can.h
  • CAN_EPIEN_INT : at32f403_can.h
  • can_error_record_type : at32f403_can.h
  • can_error_type_record_get() : at32f403_can.h, at32f403_can.c
  • CAN_ERRORRECORD_ACKERR : at32f403_can.h
  • CAN_ERRORRECORD_BITDOMINANTERR : at32f403_can.h
  • CAN_ERRORRECORD_BITRECESSIVEERR : at32f403_can.h
  • CAN_ERRORRECORD_CRCERR : at32f403_can.h
  • CAN_ERRORRECORD_FORMERR : at32f403_can.h
  • CAN_ERRORRECORD_NOERR : at32f403_can.h
  • CAN_ERRORRECORD_SOFTWARESETERR : at32f403_can.h
  • CAN_ERRORRECORD_STUFFERR : at32f403_can.h
  • CAN_ETR_FLAG : at32f403_can.h
  • CAN_ETRIEN_INT : at32f403_can.h
  • CAN_FILTER_16BIT : at32f403_can.h
  • CAN_FILTER_32BIT : at32f403_can.h
  • can_filter_bit_width_type : at32f403_can.h
  • can_filter_default_para_init() : at32f403_can.h, at32f403_can.c
  • CAN_FILTER_FIFO0 : at32f403_can.h
  • CAN_FILTER_FIFO1 : at32f403_can.h
  • can_filter_fifo_type : at32f403_can.h
  • can_filter_init() : at32f403_can.h, at32f403_can.c
  • CAN_FILTER_MODE_ID_LIST : at32f403_can.h
  • CAN_FILTER_MODE_ID_MASK : at32f403_can.h
  • can_filter_mode_type : at32f403_can.h
  • can_flag_clear() : at32f403_can.h, at32f403_can.c
  • can_flag_get() : at32f403_can.h, at32f403_can.c
  • can_gpio_config() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • CAN_ID_EXTENDED : at32f403_can.h
  • CAN_ID_STANDARD : at32f403_can.h
  • can_identifier_type : at32f403_can.h
  • can_interrupt_enable() : at32f403_can.h, at32f403_can.c
  • can_interrupt_flag_get() : at32f403_can.h, at32f403_can.c
  • can_message_receive() : at32f403_can.h, at32f403_can.c
  • can_message_transmit() : at32f403_can.h, at32f403_can.c
  • CAN_MODE_COMMUNICATE : at32f403_can.h
  • CAN_MODE_LISTENONLY : at32f403_can.h
  • CAN_MODE_LISTENONLY_LOOPBACK : at32f403_can.h
  • CAN_MODE_LOOPBACK : at32f403_can.h
  • can_mode_type : at32f403_can.h
  • CAN_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • can_msg_discarding_rule_type : at32f403_can.h
  • can_msg_sending_rule_type : at32f403_can.h
  • CAN_MSTS_EDZIF_VAL : at32f403_can.h
  • CAN_MSTS_EOIF_VAL : at32f403_can.h
  • CAN_MSTS_QDZIF_VAL : at32f403_can.h
  • CAN_MUX_10 : at32f403_gpio.h
  • CAN_MUX_11 : at32f403_gpio.h
  • can_operating_mode_set() : at32f403_can.h, at32f403_can.c
  • can_operating_mode_type : at32f403_can.h
  • CAN_OPERATINGMODE_COMMUNICATE : at32f403_can.h
  • CAN_OPERATINGMODE_DOZE : at32f403_can.h
  • CAN_OPERATINGMODE_FREEZE : at32f403_can.h
  • CAN_QDZIEN_INT : at32f403_can.h
  • CAN_QDZIF_FLAG : at32f403_can.h
  • CAN_QUIT_DOZE_FAILED : at32f403_can.h
  • can_quit_doze_status_type : at32f403_can.h
  • CAN_QUIT_DOZE_SUCCESSFUL : at32f403_can.h
  • can_receive_error_counter_get() : at32f403_can.h, at32f403_can.c
  • can_receive_fifo_release() : at32f403_can.h, at32f403_can.c
  • can_receive_message_pending_get() : at32f403_can.h, at32f403_can.c
  • can_reset() : at32f403_can.h, at32f403_can.c
  • CAN_RF0_RF0FF_VAL : at32f403_can.h
  • CAN_RF0_RF0OF_VAL : at32f403_can.h
  • CAN_RF0_RF0R_VAL : at32f403_can.h
  • CAN_RF0FF_FLAG : at32f403_can.h
  • CAN_RF0FIEN_INT : at32f403_can.h
  • CAN_RF0MIEN_INT : at32f403_can.h
  • CAN_RF0MN_FLAG : at32f403_can.h
  • CAN_RF0OF_FLAG : at32f403_can.h
  • CAN_RF0OIEN_INT : at32f403_can.h
  • CAN_RF1_RF1FF_VAL : at32f403_can.h
  • CAN_RF1_RF1OF_VAL : at32f403_can.h
  • CAN_RF1_RF1R_VAL : at32f403_can.h
  • CAN_RF1FF_FLAG : at32f403_can.h
  • CAN_RF1FIEN_INT : at32f403_can.h
  • CAN_RF1MIEN_INT : at32f403_can.h
  • CAN_RF1MN_FLAG : at32f403_can.h
  • CAN_RF1OF_FLAG : at32f403_can.h
  • CAN_RF1OIEN_INT : at32f403_can.h
  • CAN_RSAW_1TQ : at32f403_can.h
  • CAN_RSAW_2TQ : at32f403_can.h
  • CAN_RSAW_3TQ : at32f403_can.h
  • CAN_RSAW_4TQ : at32f403_can.h
  • can_rsaw_type : at32f403_can.h
  • CAN_RX_FIFO0 : at32f403_can.h
  • CAN_RX_FIFO1 : at32f403_can.h
  • can_rx_fifo_num_type : at32f403_can.h
  • CAN_SENDING_BY_ID : at32f403_can.h
  • CAN_SENDING_BY_REQUEST : at32f403_can.h
  • CAN_TCIEN_INT : at32f403_can.h
  • CAN_TFT_DATA : at32f403_can.h
  • CAN_TFT_REMOTE : at32f403_can.h
  • CAN_TM0TCF_FLAG : at32f403_can.h
  • CAN_TM1TCF_FLAG : at32f403_can.h
  • CAN_TM2TCF_FLAG : at32f403_can.h
  • CAN_TMEF_FLAG : at32f403_can.h
  • can_trans_frame_type : at32f403_can.h
  • can_transmit_cancel() : at32f403_can.h, at32f403_can.c
  • can_transmit_data() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • can_transmit_error_counter_get() : at32f403_can.h, at32f403_can.c
  • can_transmit_status_get() : at32f403_can.h, at32f403_can.c
  • can_transmit_status_type : at32f403_can.h
  • CAN_TSTS_TM0CT_VAL : at32f403_can.h
  • CAN_TSTS_TM0TCF_VAL : at32f403_can.h
  • CAN_TSTS_TM1CT_VAL : at32f403_can.h
  • CAN_TSTS_TM1TCF_VAL : at32f403_can.h
  • CAN_TSTS_TM2CT_VAL : at32f403_can.h
  • CAN_TSTS_TM2TCF_VAL : at32f403_can.h
  • can_ttc_mode_enable() : at32f403_can.h, at32f403_can.c
  • CAN_TX_MAILBOX0 : at32f403_can.h
  • CAN_TX_MAILBOX1 : at32f403_can.h
  • CAN_TX_MAILBOX2 : at32f403_can.h
  • can_tx_mailbox_num_type : at32f403_can.h
  • CAN_TX_STATUS_FAILED : at32f403_can.h
  • CAN_TX_STATUS_NO_EMPTY : at32f403_can.h
  • CAN_TX_STATUS_PENDING : at32f403_can.h
  • CAN_TX_STATUS_SUCCESSFUL : at32f403_can.h
  • capture : project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c
  • capturenumber : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • CARD_CONFIG_STATUS_REG : cf.h
  • card_inserted : project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/src/main.c
  • card_protocol : project/at_start_f403/examples/usart/smartcard/src/main.c
  • card_type : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • CBW_BMCBWFLAGS_DIR_IN : cdc_msc_class.h, msc_bot_scsi.h
  • CBW_BMCBWFLAGS_DIR_OUT : cdc_msc_class.h, msc_bot_scsi.h
  • CBW_CMD_LENGTH : cdc_msc_class.h, msc_bot_scsi.h
  • CBW_DCBWSIGNATURE : cdc_msc_class.h, msc_bot_scsi.h
  • ccr1_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • ccr2_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • ccr3_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • ccr4_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • CDC_BCD_NUM : cdc_desc.h, cdc_msc_desc.h
  • cdc_class_handler : cdc_class.c, cdc_class.h
  • cdc_class_setup_handler() : cdc_keyboard_class.c, cdc_msc_class.c
  • cdc_desc_handler : cdc_desc.c, cdc_desc.h
  • CDC_HID_BINTERVAL_TIME : cdc_desc.h, cdc_msc_desc.h
  • cdc_keyboard_class_handler : cdc_keyboard_class.c, cdc_keyboard_class.h
  • cdc_keyboard_desc_handler : cdc_keyboard_desc.c, cdc_keyboard_desc.h
  • cdc_msc_class_handler : cdc_msc_class.c, cdc_msc_class.h
  • cdc_msc_desc_handler : cdc_msc_desc.c, cdc_msc_desc.h
  • cdc_msc_struct : cdc_msc_class.c
  • cdc_struct : cdc_class.c
  • cdc_struct_init() : cdc_class.c, cdc_msc_class.c
  • CF_ATTRIBUTE_SPACE_ADDRESS : cf.h
  • CF_BUSY : cf.h
  • CF_COMMON_SPACE_ADDRESS : cf.h
  • CF_DEVICE_ADDRESS : cf.h
  • CF_IO_16_MODE : cf.h
  • CF_IO_PRICH_MODE : cf.h
  • CF_IO_SECCH_MODE : cf.h
  • CF_IO_SPACE_ADDRESS : cf.h
  • CF_IO_SPACE_PRIMARY_ADDR : cf.h
  • CF_MEM_MAP_MODE : cf.h
  • CF_print : cf.h
  • CF_PROGR : cf.h
  • CF_READY : cf.h
  • CF_SECTOR_SIZE : cf.h
  • CF_SendCommand() : cf.c
  • CF_TIMEOUT_ERROR : cf.h
  • channel1_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • channel2_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • channel3_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • channel4_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c
  • check_card_programming() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • CHIPERASE_TIMEOUT : xmc_nor.c
  • cid_table : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • CISTPL_CFTABLE_ENTRY : cf.h
  • CISTPL_CONFIG : cf.h
  • CISTPL_DEVICE : cf.h
  • CISTPL_DEVICE_OC : cf.h
  • CISTPL_END : cf.h
  • CISTPL_FUNCE : cf.h
  • CISTPL_FUNCID : cf.h
  • CISTPL_JEDEC_C : cf.h
  • CISTPL_MANFID : cf.h
  • CISTPL_NO_LINK : cf.h
  • CISTPL_VERS_1 : cf.h
  • class_audio_setup_handler() : audio_hid_class.c
  • class_clear_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_ept0_rx_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_ept0_tx_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_event_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_hid_setup_handler() : audio_hid_class.c
  • class_in_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_init_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_out_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_setup_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_sof_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • clkout_config() : project/at_start_f403/examples/crm/clock_failure_detection/src/main.c, project/at_start_f403/examples/crm/sysclk_switch/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c
  • clock_failure_detection_handler() : project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/src/main.c
  • cmd_addr_cnt : bootloader/src/iap.c
  • CMD_AREA : xmc_ecc.h, xmc_nand.h
  • CMD_CTR_APP : bootloader/inc/iap.h
  • CMD_CTR_DONE : bootloader/inc/iap.h
  • CMD_CTR_ERR : bootloader/inc/iap.h
  • CMD_CTR_IDLE : bootloader/inc/iap.h
  • CMD_CTR_INIT : bootloader/inc/iap.h
  • cmd_ctr_step : bootloader/inc/iap.h, bootloader/src/iap.c
  • cmd_ctr_step_type : bootloader/inc/iap.h
  • CMD_DATA_ADDR : bootloader/inc/iap.h
  • CMD_DATA_BUF : bootloader/inc/iap.h
  • CMD_DATA_CHACK : bootloader/inc/iap.h
  • cmd_data_cnt : bootloader/src/iap.c
  • CMD_DATA_DONE : bootloader/inc/iap.h
  • CMD_DATA_ERR : bootloader/inc/iap.h
  • cmd_data_group_struct : bootloader/src/iap.c
  • cmd_data_group_type_struct : bootloader/inc/iap.h
  • CMD_DATA_IDLE : bootloader/inc/iap.h
  • cmd_data_step : bootloader/inc/iap.h, bootloader/src/iap.c
  • cmd_data_step_type : bootloader/inc/iap.h
  • cmd_rdx : touch.c
  • cmd_rdy : touch.c
  • codec_i2s_init() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • codec_i2s_reset() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • COL_ADDRESS : xmc_ecc.h, xmc_nand.h
  • command_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_handle() : bootloader/inc/iap.h, bootloader/src/iap.c
  • command_rsp1_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp2_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp3_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp4_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp5_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp6_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp7_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • CONF0_BIT : cf.h
  • CONF1_BIT : cf.h
  • CONF2_BIT : cf.h
  • CONF3_BIT : cf.h
  • CONF4_BIT : cf.h
  • CONF5_BIT : cf.h
  • config_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • CONFIG_OPTION_REG : cf.h
  • configASSERT : FreeRTOSConfig.h
  • configCPU_CLOCK_HZ : FreeRTOSConfig.h
  • configIDLE_SHOULD_YIELD : FreeRTOSConfig.h
  • configKERNEL_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configLIBRARY_LOWEST_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configMAX_CO_ROUTINE_PRIORITIES : FreeRTOSConfig.h
  • configMAX_PRIORITIES : FreeRTOSConfig.h
  • configMAX_SYSCALL_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configMAX_TASK_NAME_LEN : FreeRTOSConfig.h
  • configMINIMAL_STACK_SIZE : FreeRTOSConfig.h
  • configPRIO_BITS : FreeRTOSConfig.h
  • configSUPPORT_DYNAMIC_ALLOCATION : FreeRTOSConfig.h
  • configTICK_RATE_HZ : FreeRTOSConfig.h
  • configTOTAL_HEAP_SIZE : FreeRTOSConfig.h
  • configUSE_16_BIT_TICKS : FreeRTOSConfig.h
  • configUSE_CO_ROUTINES : FreeRTOSConfig.h
  • configUSE_IDLE_HOOK : FreeRTOSConfig.h
  • configUSE_PREEMPTION : FreeRTOSConfig.h
  • configUSE_TICK_HOOK : FreeRTOSConfig.h
  • confirm_state : at32f403.h
  • CONVERT_ENDIAN : hid_iap_class.h
  • convert_from_bytes_to_power_of_two() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • copy_buff() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • CORR_BIT : cf.h
  • counter : project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c
  • COUNTOF : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • CRC : at32f403_crc.h
  • crc1_value : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c
  • crc2_value : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c
  • CRC_BASE : at32f403.h
  • crc_block_calculate() : at32f403_crc.h, at32f403_crc.c
  • crc_cal() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • crc_common_data_get() : at32f403_crc.h, at32f403_crc.c
  • crc_common_data_set() : at32f403_crc.h, at32f403_crc.c
  • crc_data_get() : at32f403_crc.h, at32f403_crc.c
  • crc_data_reset() : at32f403_crc.h, at32f403_crc.c
  • crc_init_data_set() : at32f403_crc.h, at32f403_crc.c
  • CRC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • crc_one_word_calculate() : at32f403_crc.h, at32f403_crc.c
  • CRC_POLY_SIZE_16B : at32f403_crc.h
  • CRC_POLY_SIZE_32B : at32f403_crc.h
  • CRC_POLY_SIZE_7B : at32f403_crc.h
  • CRC_POLY_SIZE_8B : at32f403_crc.h
  • crc_poly_size_get() : at32f403_crc.h, at32f403_crc.c
  • crc_poly_size_set() : at32f403_crc.h, at32f403_crc.c
  • crc_poly_size_type : at32f403_crc.h
  • crc_poly_value_get() : at32f403_crc.h, at32f403_crc.c
  • crc_poly_value_set() : at32f403_crc.h, at32f403_crc.c
  • CRC_REVERSE_INPUT_BY_BYTE : at32f403_crc.h
  • CRC_REVERSE_INPUT_BY_HALFWORD : at32f403_crc.h
  • CRC_REVERSE_INPUT_BY_WORD : at32f403_crc.h
  • crc_reverse_input_data_set() : at32f403_crc.h, at32f403_crc.c
  • CRC_REVERSE_INPUT_NO_AFFECTE : at32f403_crc.h
  • crc_reverse_input_type : at32f403_crc.h
  • CRC_REVERSE_OUTPUT_DATA : at32f403_crc.h
  • crc_reverse_output_data_set() : at32f403_crc.h, at32f403_crc.c
  • CRC_REVERSE_OUTPUT_NO_AFFECTE : at32f403_crc.h
  • crc_reverse_output_type : at32f403_crc.h
  • crc_value : project/at_start_f403/examples/crc/calculation/src/main.c
  • CRM : at32f403_crm.h
  • CRM_ADC1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_ADC1_PERIPH_RESET : at32f403_crm.h
  • CRM_ADC2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_ADC2_PERIPH_RESET : at32f403_crm.h
  • CRM_ADC3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_ADC3_PERIPH_RESET : at32f403_crm.h
  • crm_adc_clock_div_set() : at32f403_crm.h, at32f403_crm.c
  • CRM_ADC_DIV_12 : at32f403_crm.h
  • CRM_ADC_DIV_16 : at32f403_crm.h
  • CRM_ADC_DIV_2 : at32f403_crm.h
  • CRM_ADC_DIV_4 : at32f403_crm.h
  • CRM_ADC_DIV_6 : at32f403_crm.h
  • CRM_ADC_DIV_8 : at32f403_crm.h
  • crm_adc_div_type : at32f403_crm.h
  • CRM_AHB_DIV_1 : at32f403_crm.h
  • CRM_AHB_DIV_128 : at32f403_crm.h
  • CRM_AHB_DIV_16 : at32f403_crm.h
  • CRM_AHB_DIV_2 : at32f403_crm.h
  • CRM_AHB_DIV_256 : at32f403_crm.h
  • CRM_AHB_DIV_4 : at32f403_crm.h
  • CRM_AHB_DIV_512 : at32f403_crm.h
  • CRM_AHB_DIV_64 : at32f403_crm.h
  • CRM_AHB_DIV_8 : at32f403_crm.h
  • crm_ahb_div_set() : at32f403_crm.h, at32f403_crm.c
  • crm_ahb_div_type : at32f403_crm.h
  • CRM_ALL_RESET_FLAG : at32f403_crm.h
  • CRM_APB1_DIV_1 : at32f403_crm.h
  • CRM_APB1_DIV_16 : at32f403_crm.h
  • CRM_APB1_DIV_2 : at32f403_crm.h
  • CRM_APB1_DIV_4 : at32f403_crm.h
  • CRM_APB1_DIV_8 : at32f403_crm.h
  • crm_apb1_div_set() : at32f403_crm.h, at32f403_crm.c
  • crm_apb1_div_type : at32f403_crm.h
  • CRM_APB2_DIV_1 : at32f403_crm.h
  • CRM_APB2_DIV_16 : at32f403_crm.h
  • CRM_APB2_DIV_2 : at32f403_crm.h
  • CRM_APB2_DIV_4 : at32f403_crm.h
  • CRM_APB2_DIV_8 : at32f403_crm.h
  • crm_apb2_div_set() : at32f403_crm.h, at32f403_crm.c
  • crm_apb2_div_type : at32f403_crm.h
  • CRM_BASE : at32f403.h
  • crm_battery_powered_domain_reset() : at32f403_crm.h, at32f403_crm.c
  • CRM_BPR_PERIPH_CLOCK : at32f403_crm.h
  • CRM_BPR_PERIPH_RESET : at32f403_crm.h
  • CRM_CAN1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_CAN1_PERIPH_RESET : at32f403_crm.h
  • CRM_CLKOUT_ADC : at32f403_crm.h
  • CRM_CLKOUT_HEXT : at32f403_crm.h
  • CRM_CLKOUT_HICK : at32f403_crm.h
  • CRM_CLKOUT_LEXT : at32f403_crm.h
  • CRM_CLKOUT_LICK : at32f403_crm.h
  • CRM_CLKOUT_NOCLK : at32f403_crm.h
  • CRM_CLKOUT_PLL_DIV_2 : at32f403_crm.h
  • CRM_CLKOUT_PLL_DIV_4 : at32f403_crm.h
  • CRM_CLKOUT_SCLK : at32f403_crm.h
  • crm_clkout_select_type : at32f403_crm.h
  • CRM_CLKOUT_USB : at32f403_crm.h
  • crm_clock_failure_detection_enable() : at32f403_crm.h, at32f403_crm.c
  • CRM_CLOCK_FAILURE_INT : at32f403_crm.h
  • CRM_CLOCK_FAILURE_INT_FLAG : at32f403_crm.h
  • crm_clock_out_set() : at32f403_crm.h, at32f403_crm.c
  • crm_clock_source_enable() : at32f403_crm.h, at32f403_crm.c
  • CRM_CLOCK_SOURCE_HEXT : at32f403_crm.h
  • CRM_CLOCK_SOURCE_HICK : at32f403_crm.h
  • CRM_CLOCK_SOURCE_LEXT : at32f403_crm.h
  • CRM_CLOCK_SOURCE_LICK : at32f403_crm.h
  • CRM_CLOCK_SOURCE_PLL : at32f403_crm.h
  • crm_clock_source_type : at32f403_crm.h
  • crm_clocks : project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • crm_clocks_freq_get() : at32f403_crm.h, at32f403_crm.c
  • crm_clocks_freq_struct : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c, project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c, project/at_start_f403/examples/xmc/lcd_8bit/src/main.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • crm_configuration() : project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • CRM_CRC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_DAC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_DAC_PERIPH_RESET : at32f403_crm.h
  • CRM_DMA1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_DMA2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_EXINT_PERIPH_RESET : at32f403_crm.h
  • crm_flag_clear() : at32f403_crm.h, at32f403_crm.c
  • crm_flag_get() : at32f403_crm.h, at32f403_crm.c
  • CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE : at32f403_crm.h
  • CRM_GPIOA_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOA_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOB_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOB_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOC_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOD_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOD_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOE_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOE_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOF_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOF_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOG_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOG_PERIPH_RESET : at32f403_crm.h
  • crm_hext_bypass() : at32f403_crm.h, at32f403_crm.c
  • CRM_HEXT_READY_INT_FLAG : at32f403_crm.h
  • CRM_HEXT_STABLE_FLAG : at32f403_crm.h
  • CRM_HEXT_STABLE_INT : at32f403_crm.h
  • crm_hext_stable_wait() : at32f403_crm.h, at32f403_crm.c
  • crm_hick_clock_calibration_set() : at32f403_crm.h, at32f403_crm.c
  • crm_hick_clock_trimming_set() : at32f403_crm.h, at32f403_crm.c
  • CRM_HICK_READY_INT_FLAG : at32f403_crm.h
  • CRM_HICK_STABLE_FLAG : at32f403_crm.h
  • CRM_HICK_STABLE_INT : at32f403_crm.h
  • CRM_I2C1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_I2C1_PERIPH_RESET : at32f403_crm.h
  • CRM_I2C2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_I2C2_PERIPH_RESET : at32f403_crm.h
  • CRM_I2C3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_I2C3_PERIPH_RESET : at32f403_crm.h
  • crm_interrupt_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_interrupt_flag_get() : at32f403_crm.h, at32f403_crm.c
  • CRM_IOMUX_PERIPH_CLOCK : at32f403_crm.h
  • CRM_IOMUX_PERIPH_RESET : at32f403_crm.h
  • CRM_IRQn : at32f403.h
  • crm_lext_bypass() : at32f403_crm.h, at32f403_crm.c
  • CRM_LEXT_READY_INT_FLAG : at32f403_crm.h
  • CRM_LEXT_STABLE_FLAG : at32f403_crm.h
  • CRM_LEXT_STABLE_INT : at32f403_crm.h
  • CRM_LICK_READY_INT_FLAG : at32f403_crm.h
  • CRM_LICK_STABLE_FLAG : at32f403_crm.h
  • CRM_LICK_STABLE_INT : at32f403_crm.h
  • CRM_LOWPOWER_RESET_FLAG : at32f403_crm.h
  • CRM_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • CRM_NRST_RESET_FLAG : at32f403_crm.h
  • crm_periph_clock_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_periph_clock_sleepmd_type : at32f403_crm.h
  • crm_periph_clock_type : at32f403_crm.h
  • crm_periph_reset() : at32f403_crm.h, at32f403_crm.c
  • crm_periph_reset_type : at32f403_crm.h
  • crm_periph_sleep_mode_clock_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_pll_clock_source_type : at32f403_crm.h
  • crm_pll_config() : at32f403_crm.h, at32f403_crm.c
  • CRM_PLL_MULT_10 : at32f403_crm.h
  • CRM_PLL_MULT_11 : at32f403_crm.h
  • CRM_PLL_MULT_12 : at32f403_crm.h
  • CRM_PLL_MULT_13 : at32f403_crm.h
  • CRM_PLL_MULT_14 : at32f403_crm.h
  • CRM_PLL_MULT_15 : at32f403_crm.h
  • CRM_PLL_MULT_16 : at32f403_crm.h
  • CRM_PLL_MULT_17 : at32f403_crm.h
  • CRM_PLL_MULT_18 : at32f403_crm.h
  • CRM_PLL_MULT_19 : at32f403_crm.h
  • CRM_PLL_MULT_2 : at32f403_crm.h
  • CRM_PLL_MULT_20 : at32f403_crm.h
  • CRM_PLL_MULT_21 : at32f403_crm.h
  • CRM_PLL_MULT_22 : at32f403_crm.h
  • CRM_PLL_MULT_23 : at32f403_crm.h
  • CRM_PLL_MULT_24 : at32f403_crm.h
  • CRM_PLL_MULT_25 : at32f403_crm.h
  • CRM_PLL_MULT_26 : at32f403_crm.h
  • CRM_PLL_MULT_27 : at32f403_crm.h
  • CRM_PLL_MULT_28 : at32f403_crm.h
  • CRM_PLL_MULT_29 : at32f403_crm.h
  • CRM_PLL_MULT_3 : at32f403_crm.h
  • CRM_PLL_MULT_30 : at32f403_crm.h
  • CRM_PLL_MULT_31 : at32f403_crm.h
  • CRM_PLL_MULT_32 : at32f403_crm.h
  • CRM_PLL_MULT_33 : at32f403_crm.h
  • CRM_PLL_MULT_34 : at32f403_crm.h
  • CRM_PLL_MULT_35 : at32f403_crm.h
  • CRM_PLL_MULT_36 : at32f403_crm.h
  • CRM_PLL_MULT_37 : at32f403_crm.h
  • CRM_PLL_MULT_38 : at32f403_crm.h
  • CRM_PLL_MULT_39 : at32f403_crm.h
  • CRM_PLL_MULT_4 : at32f403_crm.h
  • CRM_PLL_MULT_40 : at32f403_crm.h
  • CRM_PLL_MULT_41 : at32f403_crm.h
  • CRM_PLL_MULT_42 : at32f403_crm.h
  • CRM_PLL_MULT_43 : at32f403_crm.h
  • CRM_PLL_MULT_44 : at32f403_crm.h
  • CRM_PLL_MULT_45 : at32f403_crm.h
  • CRM_PLL_MULT_46 : at32f403_crm.h
  • CRM_PLL_MULT_47 : at32f403_crm.h
  • CRM_PLL_MULT_48 : at32f403_crm.h
  • CRM_PLL_MULT_49 : at32f403_crm.h
  • CRM_PLL_MULT_5 : at32f403_crm.h
  • CRM_PLL_MULT_50 : at32f403_crm.h
  • CRM_PLL_MULT_51 : at32f403_crm.h
  • CRM_PLL_MULT_52 : at32f403_crm.h
  • CRM_PLL_MULT_53 : at32f403_crm.h
  • CRM_PLL_MULT_54 : at32f403_crm.h
  • CRM_PLL_MULT_55 : at32f403_crm.h
  • CRM_PLL_MULT_56 : at32f403_crm.h
  • CRM_PLL_MULT_57 : at32f403_crm.h
  • CRM_PLL_MULT_58 : at32f403_crm.h
  • CRM_PLL_MULT_59 : at32f403_crm.h
  • CRM_PLL_MULT_6 : at32f403_crm.h
  • CRM_PLL_MULT_60 : at32f403_crm.h
  • CRM_PLL_MULT_61 : at32f403_crm.h
  • CRM_PLL_MULT_62 : at32f403_crm.h
  • CRM_PLL_MULT_63 : at32f403_crm.h
  • CRM_PLL_MULT_64 : at32f403_crm.h
  • CRM_PLL_MULT_7 : at32f403_crm.h
  • CRM_PLL_MULT_8 : at32f403_crm.h
  • CRM_PLL_MULT_9 : at32f403_crm.h
  • crm_pll_mult_type : at32f403_crm.h
  • CRM_PLL_OUTPUT_RANGE_GT72MHZ : at32f403_crm.h
  • CRM_PLL_OUTPUT_RANGE_LE72MHZ : at32f403_crm.h
  • crm_pll_output_range_type : at32f403_crm.h
  • CRM_PLL_READY_INT_FLAG : at32f403_crm.h
  • CRM_PLL_SOURCE_HEXT : at32f403_crm.h
  • CRM_PLL_SOURCE_HEXT_DIV : at32f403_crm.h
  • CRM_PLL_SOURCE_HICK : at32f403_crm.h
  • CRM_PLL_STABLE_FLAG : at32f403_crm.h
  • CRM_PLL_STABLE_INT : at32f403_crm.h
  • CRM_POR_RESET_FLAG : at32f403_crm.h
  • CRM_PWC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_PWC_PERIPH_RESET : at32f403_crm.h
  • CRM_REG : at32f403_crm.h
  • CRM_REG_BIT : at32f403_crm.h
  • crm_reset() : at32f403_crm.h, at32f403_crm.c
  • crm_rtc_clock_enable() : at32f403_crm.h, at32f403_crm.c
  • CRM_RTC_CLOCK_HEXT_DIV : at32f403_crm.h
  • CRM_RTC_CLOCK_LEXT : at32f403_crm.h
  • CRM_RTC_CLOCK_LICK : at32f403_crm.h
  • CRM_RTC_CLOCK_NOCLK : at32f403_crm.h
  • crm_rtc_clock_select() : at32f403_crm.h, at32f403_crm.c
  • crm_rtc_clock_type : at32f403_crm.h
  • CRM_SCLK_HEXT : at32f403_crm.h
  • CRM_SCLK_HICK : at32f403_crm.h
  • CRM_SCLK_PLL : at32f403_crm.h
  • crm_sclk_type : at32f403_crm.h
  • CRM_SDIO1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SDIO2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI1_PERIPH_RESET : at32f403_crm.h
  • CRM_SPI2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI2_PERIPH_RESET : at32f403_crm.h
  • CRM_SPI3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI3_PERIPH_RESET : at32f403_crm.h
  • CRM_SPI4_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI4_PERIPH_RESET : at32f403_crm.h
  • CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE : at32f403_crm.h
  • CRM_SW_RESET_FLAG : at32f403_crm.h
  • crm_sysclk_switch() : at32f403_crm.h, at32f403_crm.c
  • crm_sysclk_switch_status_get() : at32f403_crm.h, at32f403_crm.c
  • CRM_TMR10_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR10_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR11_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR11_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR12_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR12_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR13_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR13_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR14_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR14_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR15_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR15_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR1_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR2_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR3_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR4_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR4_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR5_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR5_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR6_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR6_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR7_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR7_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR8_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR8_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR9_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR9_PERIPH_RESET : at32f403_crm.h
  • CRM_UART4_PERIPH_CLOCK : at32f403_crm.h
  • CRM_UART4_PERIPH_RESET : at32f403_crm.h
  • CRM_UART5_PERIPH_CLOCK : at32f403_crm.h
  • CRM_UART5_PERIPH_RESET : at32f403_crm.h
  • CRM_USART1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USART1_PERIPH_RESET : at32f403_crm.h
  • CRM_USART2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USART2_PERIPH_RESET : at32f403_crm.h
  • CRM_USART3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USART3_PERIPH_RESET : at32f403_crm.h
  • crm_usb_clock_div_set() : at32f403_crm.h, at32f403_crm.c
  • CRM_USB_CLOCK_SOURCE_HICK : at32f403_crm.h
  • CRM_USB_CLOCK_SOURCE_PLL : at32f403_crm.h
  • crm_usb_clock_source_type : at32f403_crm.h
  • CRM_USB_DIV_1 : at32f403_crm.h
  • CRM_USB_DIV_1_5 : at32f403_crm.h
  • CRM_USB_DIV_2 : at32f403_crm.h
  • CRM_USB_DIV_2_5 : at32f403_crm.h
  • CRM_USB_DIV_3 : at32f403_crm.h
  • CRM_USB_DIV_3_5 : at32f403_crm.h
  • CRM_USB_DIV_4 : at32f403_crm.h
  • crm_usb_div_type : at32f403_crm.h
  • CRM_USB_INT19_INT20 : at32f403_crm.h
  • CRM_USB_INT73_INT74 : at32f403_crm.h
  • crm_usb_int_map_type : at32f403_crm.h
  • CRM_USB_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USB_PERIPH_RESET : at32f403_crm.h
  • CRM_WDT_RESET_FLAG : at32f403_crm.h
  • CRM_WWDT_PERIPH_CLOCK : at32f403_crm.h
  • CRM_WWDT_PERIPH_RESET : at32f403_crm.h
  • CRM_WWDT_RESET_FLAG : at32f403_crm.h
  • CRM_XMC_PERIPH_CLOCK : at32f403_crm.h
  • csd_table : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • CSW_BCSWSTATUS_FAILED : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_BCSWSTATUS_PASS : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_BCSWSTATUS_PHASE_ERR : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_CMD_LENGTH : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_DCSWSIGNATURE : cdc_msc_class.h, msc_bot_scsi.h
  • CUSHID_BCD_NUM : custom_hid_desc.h
  • CUSHID_BINTERVAL_TIME : custom_hid_desc.h
  • custom_hid_class_handler : custom_hid_class.c, custom_hid_class.h
  • custom_hid_class_send_report() : custom_hid_class.c, custom_hid_class.h
  • custom_hid_desc_handler : custom_hid_desc.c, custom_hid_desc.h
  • custom_hid_struct : custom_hid_class.c
  • CYAN : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- d -

  • DAC : at32f403_dac.h
  • DAC1_12BIT_LEFT : at32f403_dac.h
  • DAC1_12BIT_RIGHT : at32f403_dac.h
  • DAC1_8BIT_RIGHT : at32f403_dac.h
  • dac1_aligned_data_type : at32f403_dac.h
  • DAC1_D1DMAUDRF : at32f403_dac.h
  • DAC1_SELECT : at32f403_dac.h
  • DAC2_12BIT_LEFT : at32f403_dac.h
  • DAC2_12BIT_RIGHT : at32f403_dac.h
  • DAC2_8BIT_RIGHT : at32f403_dac.h
  • dac2_aligned_data_type : at32f403_dac.h
  • DAC2_D2DMAUDRF : at32f403_dac.h
  • DAC2_SELECT : at32f403_dac.h
  • dac_1_data_set() : at32f403_dac.h, at32f403_dac.c
  • dac_2_data_set() : at32f403_dac.h, at32f403_dac.c
  • DAC_BASE : at32f403.h
  • dac_data_output_get() : at32f403_dac.h, at32f403_dac.c
  • dac_dma_enable() : at32f403_dac.h, at32f403_dac.c
  • DAC_DUAL_12BIT_LEFT : at32f403_dac.h
  • DAC_DUAL_12BIT_RIGHT : at32f403_dac.h
  • DAC_DUAL_8BIT_RIGHT : at32f403_dac.h
  • dac_dual_data_set() : at32f403_dac.h, at32f403_dac.c
  • dac_dual_data_type : at32f403_dac.h
  • dac_dual_software_trigger_generate() : at32f403_dac.h, at32f403_dac.c
  • dac_enable() : at32f403_dac.h, at32f403_dac.c
  • DAC_EXTERNAL_INTERRUPT_LINE_9 : at32f403_dac.h
  • DAC_LSFR_BIT0_AMPLITUDE_1 : at32f403_dac.h
  • DAC_LSFR_BIT10_AMPLITUDE_3 : at32f403_dac.h
  • DAC_LSFR_BIT20_AMPLITUDE_7 : at32f403_dac.h
  • DAC_LSFR_BIT30_AMPLITUDE_15 : at32f403_dac.h
  • DAC_LSFR_BIT40_AMPLITUDE_31 : at32f403_dac.h
  • DAC_LSFR_BIT50_AMPLITUDE_63 : at32f403_dac.h
  • DAC_LSFR_BIT60_AMPLITUDE_127 : at32f403_dac.h
  • DAC_LSFR_BIT70_AMPLITUDE_255 : at32f403_dac.h
  • DAC_LSFR_BIT80_AMPLITUDE_511 : at32f403_dac.h
  • DAC_LSFR_BIT90_AMPLITUDE_1023 : at32f403_dac.h
  • DAC_LSFR_BITA0_AMPLITUDE_2047 : at32f403_dac.h
  • DAC_LSFR_BITB0_AMPLITUDE_4095 : at32f403_dac.h
  • dac_mask_amplitude_select() : at32f403_dac.h, at32f403_dac.c
  • dac_mask_amplitude_type : at32f403_dac.h
  • DAC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • dac_output_buffer_enable() : at32f403_dac.h, at32f403_dac.c
  • dac_reset() : at32f403_dac.h, at32f403_dac.c
  • dac_select_type : at32f403_dac.h
  • DAC_SOFTWARE_TRIGGER : at32f403_dac.h
  • dac_software_trigger_generate() : at32f403_dac.h, at32f403_dac.c
  • DAC_TMR2_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR4_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR5_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR6_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR7_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR8_TRGOUT_EVENT : at32f403_dac.h
  • dac_trigger_enable() : at32f403_dac.h, at32f403_dac.c
  • dac_trigger_select() : at32f403_dac.h, at32f403_dac.c
  • dac_trigger_type : at32f403_dac.h
  • dac_wave_generate() : at32f403_dac.h, at32f403_dac.c
  • DAC_WAVE_GENERATE_NOISE : at32f403_dac.h
  • DAC_WAVE_GENERATE_NONE : at32f403_dac.h
  • DAC_WAVE_GENERATE_TRIANGLE : at32f403_dac.h
  • dac_wave_type : at32f403_dac.h
  • DATA1_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA2_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA3_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA4_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA_AREA : xmc_ecc.h, xmc_nand.h
  • data_buffer : project/at_start_f403/examples/crc/calculation/src/main.c
  • data_count : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c
  • data_counter_end : project/at_start_f403/examples/dma/flash_to_sram/src/main.c
  • data_take() : bootloader/src/iap.c
  • data_trans_dir : at32f403_usb.h
  • DATA_TRANS_IN : at32f403_usb.h
  • DATA_TRANS_OUT : at32f403_usb.h
  • DEBUG_BASE : at32f403.h
  • DEBUG_CAN1_PAUSE : at32f403_debug.h
  • DEBUG_DEEPSLEEP : at32f403_debug.h
  • debug_device_id_get() : at32f403_debug.h, at32f403_debug.c
  • DEBUG_I2C1_SMBUS_TIMEOUT : at32f403_debug.h
  • DEBUG_I2C2_SMBUS_TIMEOUT : at32f403_debug.h
  • DEBUG_I2C3_SMBUS_TIMEOUT : at32f403_debug.h
  • DEBUG_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • debug_periph_mode_set() : at32f403_debug.h, at32f403_debug.c
  • DEBUG_SLEEP : at32f403_debug.h
  • DEBUG_STANDBY : at32f403_debug.h
  • DEBUG_TMR10_PAUSE : at32f403_debug.h
  • DEBUG_TMR11_PAUSE : at32f403_debug.h
  • DEBUG_TMR12_PAUSE : at32f403_debug.h
  • DEBUG_TMR13_PAUSE : at32f403_debug.h
  • DEBUG_TMR14_PAUSE : at32f403_debug.h
  • DEBUG_TMR15_PAUSE : at32f403_debug.h
  • DEBUG_TMR1_PAUSE : at32f403_debug.h
  • DEBUG_TMR2_PAUSE : at32f403_debug.h
  • DEBUG_TMR3_PAUSE : at32f403_debug.h
  • DEBUG_TMR4_PAUSE : at32f403_debug.h
  • DEBUG_TMR5_PAUSE : at32f403_debug.h
  • DEBUG_TMR6_PAUSE : at32f403_debug.h
  • DEBUG_TMR7_PAUSE : at32f403_debug.h
  • DEBUG_TMR8_PAUSE : at32f403_debug.h
  • DEBUG_TMR9_PAUSE : at32f403_debug.h
  • DEBUG_WDT_PAUSE : at32f403_debug.h
  • DEBUG_WWDT_PAUSE : at32f403_debug.h
  • DEBUGMCU : at32f403_debug.h
  • DebugMon_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • DebugMonitor_IRQn : at32f403.h
  • delay() : project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c
  • DELAY : project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c, project/at_start_f403/templates/src/main.c
  • delay_init() : at32f403_board.c, at32f403_board.h
  • delay_ms() : at32f403_board.c, at32f403_board.h
  • delay_sec() : at32f403_board.c, at32f403_board.h
  • delay_us() : at32f403_board.c, at32f403_board.h
  • DEV_MMC : diskio.c
  • DEV_RAM : diskio.c
  • DEV_USB : diskio.c
  • device_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • DEVICE_ID_ADDR1 : random.c
  • device_mode : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • DISABLE_8BIT_MODE : cf.h
  • DISABLE_POR : cf.h
  • DISABLE_PWR_LV1 : cf.h
  • DISABLE_READ_LOOK_AHEAD : cf.h
  • disk_initialize() : diskio.c
  • disk_ioctl() : diskio.c
  • disk_read() : diskio.c
  • disk_status() : diskio.c
  • disk_write() : diskio.c
  • DMA1 : at32f403_dma.h
  • DMA1_BASE : at32f403.h
  • DMA1_CHANNEL1 : at32f403_dma.h
  • DMA1_CHANNEL1_BASE : at32f403.h
  • DMA1_Channel1_IRQHandler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c
  • DMA1_Channel1_IRQn : at32f403.h
  • DMA1_CHANNEL2 : at32f403_dma.h
  • DMA1_CHANNEL2_BASE : at32f403.h
  • DMA1_Channel2_IRQHandler() : project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c
  • DMA1_Channel2_IRQn : at32f403.h
  • DMA1_CHANNEL3 : at32f403_dma.h
  • DMA1_CHANNEL3_BASE : at32f403.h
  • DMA1_Channel3_IRQHandler() : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • DMA1_Channel3_IRQn : at32f403.h
  • DMA1_CHANNEL4 : at32f403_dma.h
  • DMA1_CHANNEL4_BASE : at32f403.h
  • DMA1_Channel4_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • DMA1_Channel4_IRQn : at32f403.h
  • DMA1_CHANNEL5 : at32f403_dma.h
  • DMA1_CHANNEL5_BASE : at32f403.h
  • DMA1_Channel5_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • DMA1_Channel5_IRQn : at32f403.h
  • DMA1_CHANNEL6 : at32f403_dma.h
  • DMA1_CHANNEL6_BASE : at32f403.h
  • DMA1_Channel6_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c
  • DMA1_Channel6_IRQn : at32f403.h
  • DMA1_CHANNEL7 : at32f403_dma.h
  • DMA1_CHANNEL7_BASE : at32f403.h
  • DMA1_Channel7_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c
  • DMA1_Channel7_IRQn : at32f403.h
  • DMA1_DTERR1_FLAG : at32f403_dma.h
  • DMA1_DTERR2_FLAG : at32f403_dma.h
  • DMA1_DTERR3_FLAG : at32f403_dma.h
  • DMA1_DTERR4_FLAG : at32f403_dma.h
  • DMA1_DTERR5_FLAG : at32f403_dma.h
  • DMA1_DTERR6_FLAG : at32f403_dma.h
  • DMA1_DTERR7_FLAG : at32f403_dma.h
  • DMA1_FDT1_FLAG : at32f403_dma.h
  • DMA1_FDT2_FLAG : at32f403_dma.h
  • DMA1_FDT3_FLAG : at32f403_dma.h
  • DMA1_FDT4_FLAG : at32f403_dma.h
  • DMA1_FDT5_FLAG : at32f403_dma.h
  • DMA1_FDT6_FLAG : at32f403_dma.h
  • DMA1_FDT7_FLAG : at32f403_dma.h
  • DMA1_GL1_FLAG : at32f403_dma.h
  • DMA1_GL2_FLAG : at32f403_dma.h
  • DMA1_GL3_FLAG : at32f403_dma.h
  • DMA1_GL4_FLAG : at32f403_dma.h
  • DMA1_GL5_FLAG : at32f403_dma.h
  • DMA1_GL6_FLAG : at32f403_dma.h
  • DMA1_GL7_FLAG : at32f403_dma.h
  • DMA1_HDT1_FLAG : at32f403_dma.h
  • DMA1_HDT2_FLAG : at32f403_dma.h
  • DMA1_HDT3_FLAG : at32f403_dma.h
  • DMA1_HDT4_FLAG : at32f403_dma.h
  • DMA1_HDT5_FLAG : at32f403_dma.h
  • DMA1_HDT6_FLAG : at32f403_dma.h
  • DMA1_HDT7_FLAG : at32f403_dma.h
  • DMA1_MEM_LEN : cf.c
  • dma1_trans_complete_flag : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c
  • DMA2 : at32f403_dma.h
  • DMA2_BASE : at32f403.h
  • DMA2_CHANNEL1 : at32f403_dma.h
  • DMA2_CHANNEL1_BASE : at32f403.h
  • DMA2_Channel1_IRQn : at32f403.h
  • DMA2_CHANNEL2 : at32f403_dma.h
  • DMA2_CHANNEL2_BASE : at32f403.h
  • DMA2_Channel2_IRQn : at32f403.h
  • DMA2_CHANNEL3 : at32f403_dma.h
  • DMA2_CHANNEL3_BASE : at32f403.h
  • DMA2_Channel3_IRQn : at32f403.h
  • DMA2_CHANNEL4 : at32f403_dma.h
  • DMA2_Channel4_5_IRQHandler() : project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c
  • DMA2_Channel4_5_IRQn : at32f403.h
  • DMA2_CHANNEL4_BASE : at32f403.h
  • DMA2_CHANNEL5 : at32f403_dma.h
  • DMA2_CHANNEL5_BASE : at32f403.h
  • DMA2_CHANNEL6_BASE : at32f403.h
  • DMA2_CHANNEL7_BASE : at32f403.h
  • DMA2_DTERR1_FLAG : at32f403_dma.h
  • DMA2_DTERR2_FLAG : at32f403_dma.h
  • DMA2_DTERR3_FLAG : at32f403_dma.h
  • DMA2_DTERR4_FLAG : at32f403_dma.h
  • DMA2_DTERR5_FLAG : at32f403_dma.h
  • DMA2_FDT1_FLAG : at32f403_dma.h
  • DMA2_FDT2_FLAG : at32f403_dma.h
  • DMA2_FDT3_FLAG : at32f403_dma.h
  • DMA2_FDT4_FLAG : at32f403_dma.h
  • DMA2_FDT5_FLAG : at32f403_dma.h
  • DMA2_GL1_FLAG : at32f403_dma.h
  • DMA2_GL2_FLAG : at32f403_dma.h
  • DMA2_GL3_FLAG : at32f403_dma.h
  • DMA2_GL4_FLAG : at32f403_dma.h
  • DMA2_GL5_FLAG : at32f403_dma.h
  • DMA2_HDT1_FLAG : at32f403_dma.h
  • DMA2_HDT2_FLAG : at32f403_dma.h
  • DMA2_HDT3_FLAG : at32f403_dma.h
  • DMA2_HDT4_FLAG : at32f403_dma.h
  • DMA2_HDT5_FLAG : at32f403_dma.h
  • dma2_trans_complete_flag : project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c
  • DMA_BUFFER_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • dma_channel_enable() : at32f403_dma.h, at32f403_dma.c
  • dma_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • dma_configuration() : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • dma_data_number_get() : at32f403_dma.h, at32f403_dma.c
  • dma_data_number_set() : at32f403_dma.h, at32f403_dma.c
  • dma_default_para_init() : at32f403_dma.h, at32f403_dma.c
  • DMA_DIR_MEMORY_TO_MEMORY : at32f403_dma.h
  • DMA_DIR_MEMORY_TO_PERIPHERAL : at32f403_dma.h
  • DMA_DIR_PERIPHERAL_TO_MEMORY : at32f403_dma.h
  • dma_dir_type : at32f403_dma.h
  • DMA_DTERR_INT : at32f403_dma.h
  • DMA_FDT_INT : at32f403_dma.h
  • dma_flag_clear() : at32f403_dma.h, at32f403_dma.c
  • dma_flag_get() : at32f403_dma.h, at32f403_dma.c
  • DMA_GET_HT_FLAG : i2c_application.c
  • DMA_GET_TC_FLAG : i2c_application.c
  • DMA_GET_TERR_FLAG : i2c_application.c
  • DMA_HDT_INT : at32f403_dma.h
  • dma_init() : at32f403_dma.h, at32f403_dma.c
  • dma_init_struct : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c
  • dma_init_structure : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • DMA_InitStructure : cf.c
  • dma_interrupt_enable() : at32f403_dma.h, at32f403_dma.c
  • dma_memory_data_size_type : at32f403_dma.h
  • DMA_MEMORY_DATA_WIDTH_BYTE : at32f403_dma.h
  • DMA_MEMORY_DATA_WIDTH_HALFWORD : at32f403_dma.h
  • DMA_MEMORY_DATA_WIDTH_WORD : at32f403_dma.h
  • DMA_MEMORY_INC_DISABLE : at32f403_dma.h
  • DMA_MEMORY_INC_ENABLE : at32f403_dma.h
  • dma_memory_inc_type : at32f403_dma.h
  • DMA_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • dma_peripheral_data_size_type : at32f403_dma.h
  • DMA_PERIPHERAL_DATA_WIDTH_BYTE : at32f403_dma.h
  • DMA_PERIPHERAL_DATA_WIDTH_HALFWORD : at32f403_dma.h
  • DMA_PERIPHERAL_DATA_WIDTH_WORD : at32f403_dma.h
  • DMA_PERIPHERAL_INC_DISABLE : at32f403_dma.h
  • DMA_PERIPHERAL_INC_ENABLE : at32f403_dma.h
  • dma_peripheral_inc_type : at32f403_dma.h
  • DMA_PRIORITY_HIGH : at32f403_dma.h
  • dma_priority_level_type : at32f403_dma.h
  • DMA_PRIORITY_LOW : at32f403_dma.h
  • DMA_PRIORITY_MEDIUM : at32f403_dma.h
  • DMA_PRIORITY_VERY_HIGH : at32f403_dma.h
  • dma_reset() : at32f403_dma.h, at32f403_dma.c
  • dma_trans_complete_flag : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c
  • DOWN_MOVE : mouse_class.h
  • DRQ_BIT : cf.h
  • DSC_BIT : cf.h
  • dst_buffer : project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c
  • dualsine12bit : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c
  • dualsquare12bit : project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c
  • duty_cycle : project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • duty_result : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • DWF_BIT : cf.h
  • DYMMY_BYTE : project/at_start_f403/examples/usart/synchronous/src/main.c
  • DZC_TIMEOUT : at32f403_can.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- e -

  • ecc_value_read : xmc_ecc.h, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • ecc_value_write : xmc_ecc.h, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • ecc_value_write_last : project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • Enable_16_bit_Transfer : cf.h
  • Enable_8_bit_Transfer : cf.h
  • ENABLE_8BIT_MODE : cf.h
  • ENABLE_POR : cf.h
  • ENABLE_PWR_LV1 : cf.h
  • ENABLE_RTC_ASSEED : random.h
  • Enable_Wait_Feature() : cf.c
  • EPT0_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT0_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT1_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT1_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT2_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT2_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT3_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT3_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT4_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT4_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT5_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT5_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT6_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT6_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT7_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT7_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT_BULK_TYPE : at32f403_usb.h
  • EPT_CONTROL_TYPE : at32f403_usb.h
  • EPT_IN : at32f403_usb.h
  • ept_inout_type : at32f403_usb.h
  • EPT_INT_TYPE : at32f403_usb.h
  • EPT_ISO_TYPE : at32f403_usb.h
  • EPT_OUT : at32f403_usb.h
  • ept_trans_type : at32f403_usb.h
  • ERASE_TIMEOUT : at32f403_flash.h
  • ERR_BIT : cf.h
  • ERR_REG_INFO : cf.h
  • ERROR : at32f403.h
  • error_handler() : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • ERROR_ID_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • error_status : at32f403.h
  • escalator8bit : project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c
  • EXINT : at32f403_exint.h
  • EXINT0_IRQHandler() : project/at_start_f403/examples/exint/exint_config/src/main.c, project/at_start_f403/templates/src/main.c
  • EXINT0_IRQn : at32f403.h
  • EXINT15_10_IRQn : at32f403.h
  • EXINT1_IRQn : at32f403.h
  • EXINT2_IRQn : at32f403.h
  • EXINT3_IRQn : at32f403.h
  • EXINT4_IRQHandler() : project/at_start_f403/examples/exint/exint_software_trigger/src/main.c
  • EXINT4_IRQn : at32f403.h
  • EXINT9_5_IRQHandler() : project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c
  • EXINT9_5_IRQn : at32f403.h
  • EXINT_BASE : at32f403.h
  • exint_config() : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c
  • exint_default_para_init() : at32f403_exint.h, at32f403_exint.c
  • exint_event_enable() : at32f403_exint.h, at32f403_exint.c
  • exint_flag_clear() : at32f403_exint.h, at32f403_exint.c
  • exint_flag_get() : at32f403_exint.h, at32f403_exint.c
  • exint_init() : at32f403_exint.h, at32f403_exint.c
  • exint_interrupt_enable() : at32f403_exint.h, at32f403_exint.c
  • exint_interrupt_flag_get() : at32f403_exint.h, at32f403_exint.c
  • exint_line0_config() : project/at_start_f403/examples/exint/exint_config/src/main.c
  • exint_line4_config() : project/at_start_f403/examples/exint/exint_software_trigger/src/main.c
  • EXINT_LINE_0 : at32f403_exint.h
  • EXINT_LINE_1 : at32f403_exint.h
  • EXINT_LINE_10 : at32f403_exint.h
  • EXINT_LINE_11 : at32f403_exint.h
  • EXINT_LINE_12 : at32f403_exint.h
  • EXINT_LINE_13 : at32f403_exint.h
  • EXINT_LINE_14 : at32f403_exint.h
  • EXINT_LINE_15 : at32f403_exint.h
  • EXINT_LINE_16 : at32f403_exint.h
  • EXINT_LINE_17 : at32f403_exint.h
  • EXINT_LINE_18 : at32f403_exint.h
  • EXINT_LINE_19 : at32f403_exint.h
  • EXINT_LINE_2 : at32f403_exint.h
  • EXINT_LINE_3 : at32f403_exint.h
  • EXINT_LINE_4 : at32f403_exint.h
  • EXINT_LINE_5 : at32f403_exint.h
  • EXINT_LINE_6 : at32f403_exint.h
  • EXINT_LINE_7 : at32f403_exint.h
  • EXINT_LINE_8 : at32f403_exint.h
  • EXINT_LINE_9 : at32f403_exint.h
  • EXINT_LINE_EVENT : at32f403_exint.h
  • EXINT_LINE_INTERRUPUT : at32f403_exint.h
  • exint_line_mode_type : at32f403_exint.h
  • EXINT_LINE_NONE : at32f403_exint.h
  • EXINT_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • exint_polarity_config_type : at32f403_exint.h
  • exint_reset() : at32f403_exint.h, at32f403_exint.c
  • exint_software_interrupt_event_generate() : at32f403_exint.h, at32f403_exint.c
  • EXINT_TRIGGER_BOTH_EDGE : at32f403_exint.h
  • EXINT_TRIGGER_FALLING_EDGE : at32f403_exint.h
  • EXINT_TRIGGER_RISING_EDGE : at32f403_exint.h
  • EXT_CSD_BUS_WIDTH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Clear_byte : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_CMD_SET_CPSECURE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_CMD_SET_NORMAL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_CMD_SET_SECURE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Command_set : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_HS_TIMING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Set_bit : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Write_byte : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_SPIM_EN_MUX : at32f403_gpio.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- f -

  • fac_ms : at32f403_board.c
  • fac_us : at32f403_board.c
  • FAILED : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • FALSE : cf.h, at32f403.h
  • FAP_RELIEVE_KEY : at32f403_flash.h
  • FAST : project/at_start_f403/templates/src/main.c
  • FAT16_BYTE_PER_SIZE : flash_fat16.h
  • FAT16_DIR_SIZE : flash_fat16.h
  • fat16_file_name : flash_fat16.c
  • FAT16_FILENAME_SIZE : flash_fat16.h
  • fat16_memory_cmp() : flash_fat16.c
  • fat16_memory_copy() : flash_fat16.c
  • fat16_memory_memset() : flash_fat16.c
  • fat16_root_dir_sector : flash_fat16.c
  • fat16_sector : flash_fat16.c
  • FAT16_SECTOR_SIZE : flash_fat16.h, flash_fat16.c
  • fat16_table_sector0 : flash_fat16.c
  • FAT16_TABLE_SIZE : flash_fat16.h
  • fatfs_test() : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • FEEDBACK_REFRESH_TIME : audio_class.h, audio_hid_class.h
  • FF_CODE_PAGE : ffconf.h
  • FF_FS_EXFAT : ffconf.h
  • FF_FS_LOCK : ffconf.h
  • FF_FS_MINIMIZE : ffconf.h
  • FF_FS_NOFSINFO : ffconf.h
  • FF_FS_NORTC : ffconf.h
  • FF_FS_READONLY : ffconf.h
  • FF_FS_REENTRANT : ffconf.h
  • FF_FS_RPATH : ffconf.h
  • FF_FS_TIMEOUT : ffconf.h
  • FF_FS_TINY : ffconf.h
  • FF_LBA64 : ffconf.h
  • FF_LFN_BUF : ffconf.h
  • FF_LFN_UNICODE : ffconf.h
  • FF_MAX_LFN : ffconf.h
  • FF_MAX_SS : ffconf.h
  • FF_MIN_GPT : ffconf.h
  • FF_MIN_SS : ffconf.h
  • FF_MULTI_PARTITION : ffconf.h
  • FF_NORTC_MDAY : ffconf.h
  • FF_NORTC_MON : ffconf.h
  • FF_NORTC_YEAR : ffconf.h
  • FF_PRINT_FLOAT : ffconf.h
  • FF_PRINT_LLI : ffconf.h
  • FF_SFN_BUF : ffconf.h
  • FF_STR_VOLUME_ID : ffconf.h
  • FF_STRF_ENCODE : ffconf.h
  • FF_SYNC_t : ffconf.h
  • FF_USE_CHMOD : ffconf.h
  • FF_USE_EXPAND : ffconf.h
  • FF_USE_FASTSEEK : ffconf.h
  • FF_USE_FIND : ffconf.h
  • FF_USE_FORWARD : ffconf.h
  • FF_USE_LABEL : ffconf.h
  • FF_USE_LFN : ffconf.h
  • FF_USE_MKFS : ffconf.h
  • FF_USE_STRFUNC : ffconf.h
  • FF_USE_TRIM : ffconf.h
  • FF_VOLUME_STRS : ffconf.h
  • FF_VOLUMES : ffconf.h
  • FFCONF_DEF : ffconf.h
  • file : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • file_match : flash_fat16.c
  • FILE_SUFFIX1_LEN : flash_fat16.h
  • FILE_SUFFIX1_NAME : flash_fat16.h
  • FILE_SUFFIX2_LEN : flash_fat16.h
  • FILE_SUFFIX2_NAME : flash_fat16.h
  • file_write_nr : flash_fat16.c
  • fill_buffer() : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c, xmc_nor.h, xmc_nor.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • Fill_Buffer() : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • FILTER_EXT_ID1 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_EXT_ID2 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_EXT_ID3 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_STD_ID1 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_STD_ID2 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_STD_ID3 : project/at_start_f403/examples/can/filter/src/main.c
  • flag_status : at32f403.h
  • FLASH : at32f403_flash.h
  • flash_2kb_write() : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c
  • FLASH_APP_ADDRESS : app_led3_toggle/inc/hid_iap_user.h, app_led4_toggle/inc/hid_iap_user.h, bootloader/inc/hid_iap_user.h
  • FLASH_APP_START_ADDR : flash_fat16.h
  • FLASH_BANK1_END_ADDR : at32f403_flash.h
  • FLASH_BANK1_EPPERR_FLAG : at32f403_flash.h
  • flash_bank1_erase() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BANK1_ERR_INT : at32f403_flash.h
  • flash_bank1_lock() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BANK1_OBF_FLAG : at32f403_flash.h
  • FLASH_BANK1_ODF_FLAG : at32f403_flash.h
  • FLASH_BANK1_ODF_INT : at32f403_flash.h
  • flash_bank1_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_bank1_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BANK1_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_BANK1_START_ADDR : at32f403_flash.h
  • flash_bank1_unlock() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BANK2_END_ADDR : at32f403_flash.h
  • FLASH_BANK2_EPPERR_FLAG : at32f403_flash.h
  • flash_bank2_erase() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BANK2_ERR_INT : at32f403_flash.h
  • flash_bank2_lock() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BANK2_OBF_FLAG : at32f403_flash.h
  • FLASH_BANK2_ODF_FLAG : at32f403_flash.h
  • FLASH_BANK2_ODF_INT : at32f403_flash.h
  • flash_bank2_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_bank2_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BANK2_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_BANK2_START_ADDR : at32f403_flash.h
  • flash_bank2_unlock() : at32f403_flash.h, at32f403_flash.c
  • FLASH_BASE : at32f403.h
  • FLASH_BOOT_FROM_BANK1 : at32f403_flash.h
  • FLASH_BOOT_FROM_BANK2 : at32f403_flash.h
  • flash_buf : project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • flash_byte_program() : at32f403_flash.h, at32f403_flash.c
  • flash_crc_check() : flash_fat16.c
  • FLASH_CS_HIGH : spi_flash.h
  • FLASH_CS_LOW : spi_flash.h
  • FLASH_EPP_ERROR : at32f403_flash.h
  • flash_epp_set() : at32f403_flash.h, at32f403_flash.c
  • flash_epp_status_get() : at32f403_flash.h, at32f403_flash.c
  • FLASH_EPPERR_FLAG : at32f403_flash.h
  • FLASH_ERR_INT : at32f403_flash.h
  • flash_fap_enable() : at32f403_flash.h, at32f403_flash.c
  • flash_fap_status_get() : at32f403_flash.h, at32f403_flash.c
  • FLASH_FAT16_1_ADDR : flash_fat16.h
  • FLASH_FAT16_2_ADDR : flash_fat16.h
  • flash_fat16_addr_offset() : flash_fat16.c
  • flash_fat16_boot_dir_write() : flash_fat16.c
  • FLASH_FAT16_BOOT_SECTOR_ADDR : flash_fat16.h
  • flash_fat16_clear_upgrade_flag() : flash_fat16.c
  • FLASH_FAT16_FILE_START_ADDR : flash_fat16.h
  • flash_fat16_get_upgrade_flag() : flash_fat16.h, flash_fat16.c
  • flash_fat16_init() : flash_fat16.h, flash_fat16.c
  • flash_fat16_loop_status() : flash_fat16.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c
  • flash_fat16_read() : flash_fat16.h, flash_fat16.c
  • FLASH_FAT16_ROOT_ADDR : flash_fat16.h
  • flash_fat16_sector_write() : flash_fat16.c
  • flash_fat16_set_name() : flash_fat16.h, flash_fat16.c
  • flash_fat16_set_upgrade_flag() : flash_fat16.c
  • flash_fat16_write() : flash_fat16.h, flash_fat16.c
  • flash_flag_clear() : at32f403_flash.h, at32f403_flash.c
  • flash_flag_get() : at32f403_flash.h, at32f403_flash.c
  • flash_halfword_program() : at32f403_flash.h, at32f403_flash.c
  • flash_iap : flash_fat16.h, flash_fat16.c
  • flash_internal_all_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_interrupt_enable() : at32f403_flash.h, at32f403_flash.c
  • FLASH_IRQn : at32f403.h
  • flash_lock() : at32f403_flash.h, at32f403_flash.c
  • FLASH_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • FLASH_OBF_FLAG : at32f403_flash.h
  • FLASH_ODF_FLAG : at32f403_flash.h
  • FLASH_ODF_INT : at32f403_flash.h
  • FLASH_OPERATE_BUSY : at32f403_flash.h
  • FLASH_OPERATE_DONE : at32f403_flash.h
  • FLASH_OPERATE_TIMEOUT : at32f403_flash.h
  • flash_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • FLASH_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_PROGRAM_ERROR : at32f403_flash.h
  • flash_read() : project/at_start_f403/examples/flash/flash_write_read/inc/flash.h, project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • flash_read_data() : flash_fat16.c
  • FLASH_REG_BASE : at32f403.h
  • FLASH_SECTOR_1K_ALLGNED : flash_fat16.h
  • FLASH_SECTOR_1K_SIZE : flash_fat16.h
  • FLASH_SECTOR_2K_ALLGNED : flash_fat16.h
  • FLASH_SECTOR_2K_SIZE : flash_fat16.h
  • FLASH_SECTOR_4K_ALLGNED : flash_fat16.h
  • FLASH_SECTOR_4K_SIZE : flash_fat16.h
  • flash_sector_erase() : at32f403_flash.h, at32f403_flash.c
  • FLASH_SIZE : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h
  • FLASH_SIZE_REG : hid_iap_class.h
  • FLASH_SPI_DUMMY_BYTE : spi_flash.h
  • flash_spim_all_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_dummy_read() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_encryption_range_set() : at32f403_flash.h, at32f403_flash.c
  • FLASH_SPIM_EPPERR_FLAG : at32f403_flash.h
  • FLASH_SPIM_ERR_INT : at32f403_flash.h
  • flash_spim_lock() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_mass_program() : at32f403_flash.h, at32f403_flash.c
  • FLASH_SPIM_MODEL1 : at32f403_flash.h
  • FLASH_SPIM_MODEL2 : at32f403_flash.h
  • flash_spim_model_select() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_model_type : at32f403_flash.h
  • FLASH_SPIM_OBF_FLAG : at32f403_flash.h
  • FLASH_SPIM_ODF_FLAG : at32f403_flash.h
  • FLASH_SPIM_ODF_INT : at32f403_flash.h
  • flash_spim_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • FLASH_SPIM_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_SPIM_START_ADDR : at32f403_flash.h
  • flash_spim_unlock() : at32f403_flash.h, at32f403_flash.c
  • flash_ssb_set() : at32f403_flash.h, at32f403_flash.c
  • flash_ssb_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_status_type : at32f403_flash.h
  • FLASH_TEST_ADDR : project/at_start_f403/examples/spi/w25q_flash/src/main.c
  • flash_unlock() : at32f403_flash.h, at32f403_flash.c
  • FLASH_UNLOCK_KEY1 : at32f403_flash.h
  • FLASH_UNLOCK_KEY2 : at32f403_flash.h
  • flash_upgrade_flag_read() : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c
  • FLASH_USDERR_FLAG : at32f403_flash.h
  • flash_user_system_data_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_user_system_data_program() : at32f403_flash.h, at32f403_flash.c
  • flash_word_program() : at32f403_flash.h, at32f403_flash.c
  • flash_write() : project/at_start_f403/examples/flash/flash_write_read/inc/flash.h, project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • flash_write_data() : flash_fat16.c
  • flash_write_nocheck() : project/at_start_f403/examples/flash/flash_write_read/inc/flash.h, project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • fputc() : at32f403_board.c
  • freq_result : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • frequency : project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • fs : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • FZC_TIMEOUT : at32f403_can.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- g -

  • g_audio_hid_usb_desc : audio_hid_desc.h
  • g_custom_hid_usb_desc : custom_hid_desc.h
  • g_file_attr : flash_fat16.c
  • g_hidiap_usb_desc : hid_iap_desc.h
  • g_keyboard_usb_desc : keyboard_desc.h
  • g_mouse_usb_desc : mouse_desc.h
  • g_speed : project/at_start_f403/templates/src/main.c
  • g_usb_offset_addr : at32f403_usb.c
  • g_usb_packet_address : at32f403_usb.h, at32f403_usb.c
  • g_usbd_audio_hid_report : audio_hid_desc.h
  • g_usbd_custom_hid_report : custom_hid_desc.h
  • g_usbd_hidiap_report : hid_iap_desc.h
  • g_usbd_keyboard_report : keyboard_desc.h
  • g_usbd_mouse_report : mouse_desc.h
  • g_usbd_vcpkybrd_hid_report : cdc_keyboard_desc.h
  • g_vcpkybrd_hid_usb_desc : cdc_keyboard_desc.h
  • GBLUE : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • generate_julia_fpu() : julia_fpu.h, julia_fpu.c
  • get_data_from_usart_flag : bootloader/inc/tmr.h, bootloader/src/tmr.c
  • get_device_config_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_configuration() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_descriptor() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_interface_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_lang_id() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_manufacturer_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_other_speed() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_product_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_qualifier() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_serial_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_inquiry() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • GET_LINE_CODING : cdc_msc_class.h, msc_bot_scsi.h, usb_std.h
  • GET_RX_LEN_ADDR : at32f403_usb.h
  • get_serial_num() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • GET_TX_LEN_ADDR : at32f403_usb.h
  • get_uid_for_seed() : random.c
  • getvar_operationcomplete() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • gimage_0 : picture.h
  • gimage_3 : picture.h
  • gimage_5 : picture.h
  • gimage_8 : picture.h
  • gimage_9 : picture.h
  • gpio_bits_reset() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_bits_set() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_bits_write() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c, project/at_start_f403/examples/gpio/io_toggle/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • gpio_configuration() : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • gpio_default_para_init() : at32f403_gpio.h, at32f403_gpio.c
  • GPIO_DRIVE_STRENGTH_MAXIMUM : at32f403_gpio.h
  • GPIO_DRIVE_STRENGTH_MODERATE : at32f403_gpio.h
  • GPIO_DRIVE_STRENGTH_STRONGER : at32f403_gpio.h
  • gpio_drive_type : at32f403_gpio.h
  • gpio_event_output_config() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_event_output_enable() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_exint_line_config() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_init() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_init_struct : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/cascade_synchro/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c
  • gpio_input_data_bit_read() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_input_data_read() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_iomux_reset() : at32f403_gpio.h, at32f403_gpio.c
  • GPIO_MODE_ANALOG : at32f403_gpio.h
  • GPIO_MODE_INPUT : at32f403_gpio.h
  • GPIO_MODE_MUX : at32f403_gpio.h
  • GPIO_MODE_OUTPUT : at32f403_gpio.h
  • gpio_mode_type : at32f403_gpio.h
  • GPIO_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • gpio_output_data_bit_read() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_output_data_read() : at32f403_gpio.h, at32f403_gpio.c
  • GPIO_OUTPUT_OPEN_DRAIN : at32f403_gpio.h
  • GPIO_OUTPUT_PUSH_PULL : at32f403_gpio.h
  • gpio_output_type : at32f403_gpio.h
  • gpio_pin_remap_config() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_pin_wp_config() : at32f403_gpio.h, at32f403_gpio.c
  • GPIO_PINS_0 : at32f403_gpio.h
  • GPIO_PINS_1 : at32f403_gpio.h
  • GPIO_PINS_10 : at32f403_gpio.h
  • GPIO_PINS_11 : at32f403_gpio.h
  • GPIO_PINS_12 : at32f403_gpio.h
  • GPIO_PINS_13 : at32f403_gpio.h
  • GPIO_PINS_14 : at32f403_gpio.h
  • GPIO_PINS_15 : at32f403_gpio.h
  • GPIO_PINS_2 : at32f403_gpio.h
  • GPIO_PINS_3 : at32f403_gpio.h
  • GPIO_PINS_4 : at32f403_gpio.h
  • GPIO_PINS_5 : at32f403_gpio.h
  • GPIO_PINS_6 : at32f403_gpio.h
  • GPIO_PINS_7 : at32f403_gpio.h
  • GPIO_PINS_8 : at32f403_gpio.h
  • GPIO_PINS_9 : at32f403_gpio.h
  • GPIO_PINS_ALL : at32f403_gpio.h
  • GPIO_PINS_SOURCE0 : at32f403_gpio.h
  • GPIO_PINS_SOURCE1 : at32f403_gpio.h
  • GPIO_PINS_SOURCE10 : at32f403_gpio.h
  • GPIO_PINS_SOURCE11 : at32f403_gpio.h
  • GPIO_PINS_SOURCE12 : at32f403_gpio.h
  • GPIO_PINS_SOURCE13 : at32f403_gpio.h
  • GPIO_PINS_SOURCE14 : at32f403_gpio.h
  • GPIO_PINS_SOURCE15 : at32f403_gpio.h
  • GPIO_PINS_SOURCE2 : at32f403_gpio.h
  • GPIO_PINS_SOURCE3 : at32f403_gpio.h
  • GPIO_PINS_SOURCE4 : at32f403_gpio.h
  • GPIO_PINS_SOURCE5 : at32f403_gpio.h
  • GPIO_PINS_SOURCE6 : at32f403_gpio.h
  • GPIO_PINS_SOURCE7 : at32f403_gpio.h
  • GPIO_PINS_SOURCE8 : at32f403_gpio.h
  • GPIO_PINS_SOURCE9 : at32f403_gpio.h
  • gpio_pins_source_type : at32f403_gpio.h
  • gpio_pins_toggle() : project/at_start_f403/examples/gpio/swjtag_remap/src/main.c
  • GPIO_PORT_SOURCE_GPIOA : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOB : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOC : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOD : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOE : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOF : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOG : at32f403_gpio.h
  • gpio_port_source_type : at32f403_gpio.h
  • gpio_port_write() : at32f403_gpio.h, at32f403_gpio.c
  • GPIO_PULL_DOWN : at32f403_gpio.h
  • GPIO_PULL_NONE : at32f403_gpio.h
  • gpio_pull_type : at32f403_gpio.h
  • GPIO_PULL_UP : at32f403_gpio.h
  • gpio_reset() : at32f403_gpio.h, at32f403_gpio.c
  • GPIOA : at32f403_gpio.h
  • GPIOA_BASE : at32f403.h
  • GPIOB : at32f403_gpio.h
  • GPIOB_BASE : at32f403.h
  • GPIOC : at32f403_gpio.h
  • GPIOC_BASE : at32f403.h
  • GPIOD : at32f403_gpio.h
  • GPIOD_BASE : at32f403.h
  • GPIOE : at32f403_gpio.h
  • GPIOE_BASE : at32f403.h
  • GPIOF : at32f403_gpio.h
  • GPIOF_BASE : at32f403.h
  • GPIOG : at32f403_gpio.h
  • GPIOG_BASE : at32f403.h
  • GRAY : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • GRED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • GREEN : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- h -

  • HardFault_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • HardFault_IRQn : at32f403.h
  • HBYTE : usb_std.h
  • HEXT_STABLE_DELAY : system_at32f403.h
  • HEXT_STARTUP_TIMEOUT : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • HEXT_VALUE : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • hi2cx : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • HICK_VALUE : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • HID_CLASS_DESC_HID : audio_hid_desc.h, usb_std.h
  • HID_CLASS_DESC_PHYSICAL : audio_hid_desc.h, usb_std.h
  • HID_CLASS_DESC_REPORT : audio_hid_desc.h, usb_std.h
  • HID_DESCRIPTOR_TYPE : usb_std.h
  • HID_IAP_BUFFER_LEN : hid_iap_class.h
  • hid_iap_class_handler : hid_iap_class.c, hid_iap_class.h
  • hid_iap_desc_handler : hid_iap_desc.c, hid_iap_desc.h
  • HID_INTERFACE_NUMBER : audio_hid_desc.h
  • HID_REPORT_DESC : usb_std.h
  • HID_REPORT_ID_1 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_2 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_3 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_4 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_5 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_6 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REQ_GET_IDLE : usb_std.h
  • HID_REQ_GET_PROTOCOL : usb_std.h
  • HID_REQ_GET_REPORT : usb_std.h
  • HID_REQ_SET_IDLE : usb_std.h
  • HID_REQ_SET_PROTOCOL : usb_std.h
  • HID_REQ_SET_REPORT : usb_std.h
  • HIDIAP_BCD_NUM : hid_iap_desc.h
  • HIDIAP_BINTERVAL_TIME : hid_iap_desc.h
  • HIST_LENGTH : project/at_start_f403/examples/usart/smartcard/src/main.c
  • hw_usart_read_index : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • hw_usart_rx_index : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- i -

  • I2C1 : at32f403_i2c.h
  • I2C1_BASE : at32f403.h
  • I2C1_ERR_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c
  • I2C1_ERR_IRQn : at32f403.h
  • I2C1_EVT_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c
  • I2C1_EVT_IRQn : at32f403.h
  • I2C1_MUX : at32f403_gpio.h
  • I2C2 : at32f403_i2c.h
  • I2C2_BASE : at32f403.h
  • I2C2_ERR_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2C2_ERR_IRQn : at32f403.h
  • I2C2_EVT_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2C2_EVT_IRQn : at32f403.h
  • I2C3 : at32f403_i2c.h
  • I2C3_BASE : at32f403.h
  • I2C3_ERR_IRQn : at32f403.h
  • I2C3_EVT_IRQn : at32f403.h
  • I2C3_MUX : at32f403_gpio.h
  • i2c_7bit_address_send() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_ack_enable() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_ACKFAIL_FLAG : at32f403_i2c.h
  • I2C_ADDR2_FLAG : at32f403_i2c.h
  • I2C_ADDR7F_FLAG : at32f403_i2c.h
  • I2C_ADDRESS_MODE_10BIT : at32f403_i2c.h
  • I2C_ADDRESS_MODE_7BIT : at32f403_i2c.h
  • i2c_address_mode_type : at32f403_i2c.h
  • I2C_ADDRHF_FLAG : at32f403_i2c.h
  • I2C_ALERTF_FLAG : at32f403_i2c.h
  • I2C_ARLOST_FLAG : at32f403_i2c.h
  • i2c_arp_mode_enable() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_BUSERR_FLAG : at32f403_i2c.h
  • I2C_BUSYF_FLAG : at32f403_i2c.h
  • i2c_clock_stretch_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_config() : i2c_application.c, i2c_application.h
  • I2C_DATA_INT : at32f403_i2c.h
  • i2c_data_receive() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_data_send() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_DEVADDRF_FLAG : at32f403_i2c.h
  • I2C_DIRECTION_RECEIVE : at32f403_i2c.h
  • I2C_DIRECTION_TRANSMIT : at32f403_i2c.h
  • i2c_direction_type : at32f403_i2c.h
  • I2C_DIRF_FLAG : at32f403_i2c.h
  • i2c_dma_config() : i2c_application.c
  • i2c_dma_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_dma_end_transfer_set() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_DMA_MA_RX : i2c_application.h
  • I2C_DMA_MA_TX : i2c_application.h
  • i2c_dma_rx_irq_handler() : i2c_application.c, i2c_application.h
  • I2C_DMA_SLA_RX : i2c_application.h
  • I2C_DMA_SLA_TX : i2c_application.h
  • i2c_dma_tx_irq_handler() : i2c_application.c, i2c_application.h
  • i2c_enable() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_END : i2c_application.c
  • I2C_ERR_ACKFAIL : i2c_application.h
  • I2C_ERR_ADDR : i2c_application.h
  • I2C_ERR_ADDR10 : i2c_application.h
  • I2C_ERR_INT : at32f403_i2c.h
  • I2C_ERR_INTERRUPT : i2c_application.h
  • i2c_err_irq_handler() : i2c_application.c, i2c_application.h
  • I2C_ERR_START : i2c_application.h
  • I2C_ERR_STEP_1 : i2c_application.h
  • I2C_ERR_STEP_10 : i2c_application.h
  • I2C_ERR_STEP_11 : i2c_application.h
  • I2C_ERR_STEP_12 : i2c_application.h
  • I2C_ERR_STEP_2 : i2c_application.h
  • I2C_ERR_STEP_3 : i2c_application.h
  • I2C_ERR_STEP_4 : i2c_application.h
  • I2C_ERR_STEP_5 : i2c_application.h
  • I2C_ERR_STEP_6 : i2c_application.h
  • I2C_ERR_STEP_7 : i2c_application.h
  • I2C_ERR_STEP_8 : i2c_application.h
  • I2C_ERR_STEP_9 : i2c_application.h
  • I2C_ERR_STOP : i2c_application.h
  • I2C_ERR_TIMEOUT : i2c_application.h
  • I2C_EVENT_CHECK_ACKFAIL : i2c_application.h
  • I2C_EVENT_CHECK_NONE : i2c_application.h
  • I2C_EVENT_CHECK_STOP : i2c_application.h
  • I2C_EVT_INT : at32f403_i2c.h
  • i2c_evt_irq_handler() : i2c_application.c, i2c_application.h
  • i2c_fast_mode_duty_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_flag_clear() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_flag_get() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_FSMODE_DUTY_16_9 : at32f403_i2c.h
  • I2C_FSMODE_DUTY_2_1 : at32f403_i2c.h
  • i2c_fsmode_duty_cycle_type : at32f403_i2c.h
  • I2C_GCADDRF_FLAG : at32f403_i2c.h
  • i2c_general_call_enable() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_HOSTADDRF_FLAG : at32f403_i2c.h
  • i2c_init() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_INT_MA_RX : i2c_application.h
  • I2C_INT_MA_TX : i2c_application.h
  • I2C_INT_SLA_RX : i2c_application.h
  • I2C_INT_SLA_TX : i2c_application.h
  • i2c_interrupt_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_interrupt_flag_get() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_lowlevel_init() : i2c_application.c, i2c_application.h, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2C_MASTER_ACK_CURRENT : at32f403_i2c.h
  • I2C_MASTER_ACK_NEXT : at32f403_i2c.h
  • i2c_master_ack_type : at32f403_i2c.h
  • i2c_master_read_addr() : i2c_application.c
  • i2c_master_receive() : i2c_application.c, i2c_application.h
  • i2c_master_receive_ack_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_master_receive_dma() : i2c_application.c, i2c_application.h
  • i2c_master_receive_int() : i2c_application.c, i2c_application.h
  • i2c_master_rx_isr_int() : i2c_application.c
  • i2c_master_transmit() : i2c_application.c, i2c_application.h
  • i2c_master_transmit_dma() : i2c_application.c, i2c_application.h
  • i2c_master_transmit_int() : i2c_application.c, i2c_application.h
  • i2c_master_tx_isr_dma() : i2c_application.c
  • i2c_master_tx_isr_int() : i2c_application.c
  • i2c_master_write_addr() : i2c_application.c
  • I2C_MEM_ADDR_WIDIH_16 : i2c_application.h
  • I2C_MEM_ADDR_WIDIH_8 : i2c_application.h
  • i2c_mem_address_width_type : i2c_application.h
  • i2c_memory_address_send() : i2c_application.c
  • i2c_memory_read() : i2c_application.c, i2c_application.h
  • i2c_memory_read_dma() : i2c_application.c, i2c_application.h
  • i2c_memory_read_int() : i2c_application.c, i2c_application.h
  • i2c_memory_write() : i2c_application.c, i2c_application.h
  • i2c_memory_write_dma() : i2c_application.c, i2c_application.h
  • i2c_memory_write_int() : i2c_application.c, i2c_application.h
  • i2c_mode_type : i2c_application.h
  • I2C_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • I2C_OK : i2c_application.h
  • I2C_OUF_FLAG : at32f403_i2c.h
  • i2c_own_address1_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_own_address2_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_own_address2_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_pec_calculate_enable() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_PEC_POSITION_CURRENT : at32f403_i2c.h
  • I2C_PEC_POSITION_NEXT : at32f403_i2c.h
  • i2c_pec_position_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_pec_position_type : at32f403_i2c.h
  • i2c_pec_transmit_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_pec_value_get() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_PECERR_FLAG : at32f403_i2c.h
  • I2C_RDBF_FLAG : at32f403_i2c.h
  • i2c_reset() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_slave_receive() : i2c_application.c, i2c_application.h
  • i2c_slave_receive_dma() : i2c_application.c, i2c_application.h
  • i2c_slave_receive_int() : i2c_application.c, i2c_application.h
  • i2c_slave_rx_isr_int() : i2c_application.c
  • i2c_slave_transmit() : i2c_application.c, i2c_application.h
  • i2c_slave_transmit_dma() : i2c_application.c, i2c_application.h
  • i2c_slave_transmit_int() : i2c_application.c, i2c_application.h
  • i2c_slave_tx_isr_int() : i2c_application.c
  • i2c_slave_tx_rx_isr_dma() : i2c_application.c
  • I2C_SMBUS_ALERT_HIGH : at32f403_i2c.h
  • I2C_SMBUS_ALERT_LOW : at32f403_i2c.h
  • i2c_smbus_alert_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_smbus_alert_set_type : at32f403_i2c.h
  • i2c_smbus_enable() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_SMBUS_MODE_DEVICE : at32f403_i2c.h
  • I2C_SMBUS_MODE_HOST : at32f403_i2c.h
  • i2c_smbus_mode_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_smbus_mode_set_type : at32f403_i2c.h
  • i2c_software_reset() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_START : i2c_application.c
  • i2c_start_generate() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_STARTF_FLAG : at32f403_i2c.h
  • i2c_status_type : i2c_application.h
  • i2c_stop_generate() : at32f403_i2c.h, at32f403_i2c.c
  • I2C_STOPF_FLAG : at32f403_i2c.h
  • I2C_TDBE_FLAG : at32f403_i2c.h
  • I2C_TDC_FLAG : at32f403_i2c.h
  • I2C_TIMEOUT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2C_TMOUT_FLAG : at32f403_i2c.h
  • I2C_TRMODE_FLAG : at32f403_i2c.h
  • i2c_wait_end() : i2c_application.c, i2c_application.h
  • i2c_wait_flag() : i2c_application.c, i2c_application.h
  • I2Cx_ADDRESS : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_DMA_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_RX_CHANNEL : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_RX_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_DMA_RX_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_TX_CHANNEL : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_TX_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_DMA_TX_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_ERR_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_ERR_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_EVT_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_EVT_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_PORT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SCL_GPIO_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SCL_GPIO_PORT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SCL_PIN : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SDA_GPIO_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SDA_GPIO_PORT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SDA_PIN : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SPEED : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • i2s1_buffer_tx : project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • I2S1_CK_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_DT_ADDRESS : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_GPIO : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_GPIO_CRM_CLK : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_SD_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_WS_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • i2s2_buffer_rx : project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • I2S2_CK_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_DT_ADDRESS : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_GPIO : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_GPIO_CRM_CLK : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_SD_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_WS_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S_ACS_FLAG : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_11_025K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_16K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_192K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_22_05K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_32K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_44_1K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_48K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_8K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_96K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_DEFAULT : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_LSB : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_MSB : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_PCM_LONG : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_PCM_SHORT : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_PHILLIPS : at32f403_spi.h
  • i2s_audio_protocol_type : at32f403_spi.h
  • i2s_audio_sampling_freq_type : at32f403_spi.h
  • I2S_CLOCK_POLARITY_HIGH : at32f403_spi.h
  • I2S_CLOCK_POLARITY_LOW : at32f403_spi.h
  • i2s_clock_polarity_type : at32f403_spi.h
  • i2s_config() : project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • I2S_DATA_16BIT_CHANNEL_16BIT : at32f403_spi.h
  • I2S_DATA_16BIT_CHANNEL_32BIT : at32f403_spi.h
  • I2S_DATA_24BIT_CHANNEL_32BIT : at32f403_spi.h
  • I2S_DATA_32BIT_CHANNEL_32BIT : at32f403_spi.h
  • i2s_data_channel_format_type : at32f403_spi.h
  • i2s_default_para_init() : at32f403_spi.h, at32f403_spi.c
  • i2s_enable() : at32f403_spi.h, at32f403_spi.c
  • i2s_init() : at32f403_spi.h, at32f403_spi.c
  • I2S_MODE_MASTER_RX : at32f403_spi.h
  • I2S_MODE_MASTER_TX : at32f403_spi.h
  • I2S_MODE_SLAVE_RX : at32f403_spi.h
  • I2S_MODE_SLAVE_TX : at32f403_spi.h
  • i2s_operation_mode_type : at32f403_spi.h
  • I2S_TUERR_FLAG : at32f403_spi.h
  • IAP_ACK : hid_iap_class.h
  • iap_address() : bootloader/src/hid_iap_user.c
  • iap_clear_upgrade_flag() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • IAP_CMD_ADDR : hid_iap_class.h
  • IAP_CMD_CRC : hid_iap_class.h
  • IAP_CMD_DATA : hid_iap_class.h
  • IAP_CMD_FINISH : hid_iap_class.h
  • IAP_CMD_GET : hid_iap_class.h
  • IAP_CMD_IDLE : hid_iap_class.h
  • IAP_CMD_JMP : hid_iap_class.h
  • IAP_CMD_START : hid_iap_class.h
  • iap_command_handle() : app_led3_toggle/inc/iap.h, app_led3_toggle/src/iap.c, app_led4_toggle/inc/iap.h, app_led4_toggle/src/iap.c
  • iap_crc() : bootloader/src/hid_iap_user.c
  • iap_data_write() : bootloader/src/hid_iap_user.c
  • iap_erase_sector() : bootloader/src/hid_iap_user.c
  • IAP_FAILED : flash_fat16.h, hid_iap_class.h
  • iap_finish() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_flag : app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c
  • iap_get() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_get_upgrade_flag() : app_led3_toggle/inc/hid_iap_user.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/inc/hid_iap_user.h, app_led4_toggle/src/hid_iap_user.c, bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c
  • iap_idle() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_info : hid_iap_class.c, hid_iap_class.h
  • iap_init() : app_led3_toggle/inc/iap.h, app_led3_toggle/src/iap.c, app_led4_toggle/inc/iap.h, app_led4_toggle/src/iap.c, app_led3_toggle/inc/hid_iap_user.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/inc/hid_iap_user.h, app_led4_toggle/src/hid_iap_user.c, bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c
  • iap_jump() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_loop() : bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c
  • iap_machine_state_type : hid_iap_class.h
  • IAP_NACK : hid_iap_class.h
  • iap_respond() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_result_type : hid_iap_class.h
  • IAP_REV_FLAG_5A : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • IAP_REV_FLAG_DONE : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • IAP_REV_FLAG_ERROR : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • IAP_REV_FLAG_NO : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • iap_set_upgrade_flag() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_start() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • IAP_STS_ADDR : hid_iap_class.h
  • IAP_STS_CRC : hid_iap_class.h
  • IAP_STS_DATA : hid_iap_class.h
  • IAP_STS_FINISH : hid_iap_class.h
  • IAP_STS_IDLE : hid_iap_class.h
  • IAP_STS_JMP : hid_iap_class.h
  • IAP_STS_JMP_WAIT : hid_iap_class.h
  • IAP_STS_START : hid_iap_class.h
  • IAP_SUCCESS : flash_fat16.h, hid_iap_class.h
  • iap_upgrade_app_handle() : bootloader/inc/iap.h, bootloader/src/iap.c
  • IAP_UPGRADE_COMPLETE_FLAG : hid_iap_class.h, flash_fat16.h
  • IAP_UPGRADE_FLAG : app_led3_toggle/inc/iap.h, app_led4_toggle/inc/iap.h, bootloader/inc/iap.h
  • IAP_UPGRADE_FLAG_ADDR : app_led3_toggle/inc/iap.h, app_led4_toggle/inc/iap.h, bootloader/inc/iap.h
  • IAP_WAIT : hid_iap_class.h
  • iapfun : bootloader/inc/iap.h
  • ic2value : project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c
  • ic3readvalue1 : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • ic3readvalue2 : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • IDNF_BIT : cf.h
  • idx : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c
  • IMG_CONSTANT : julia_fpu.h
  • INCLUDE_uxTaskPriorityGet : FreeRTOSConfig.h
  • INCLUDE_vTaskCleanUpResources : FreeRTOSConfig.h
  • INCLUDE_vTaskDelay : FreeRTOSConfig.h
  • INCLUDE_vTaskDelayUntil : FreeRTOSConfig.h
  • INCLUDE_vTaskDelete : FreeRTOSConfig.h
  • INCLUDE_vTaskPrioritySet : FreeRTOSConfig.h
  • INCLUDE_vTaskSuspend : FreeRTOSConfig.h
  • INCLUDE_xTaskGetCurrentTaskHandle : FreeRTOSConfig.h
  • incrementvar_operationcomplete() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • index_cnt : project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • INT16 : at32f403.h
  • INT32 : at32f403.h
  • INT8 : at32f403.h
  • INTERNAL_FLASH_LUN : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • INVAILD_OFFSET_ADDR : flash_fat16.h
  • INVALID_COMMAND : cdc_msc_class.h, msc_bot_scsi.h
  • INVALID_FIELD_IN_PARAMETER_LIST : cdc_msc_class.h, msc_bot_scsi.h
  • INVALID_FIELED_IN_COMMAND : cdc_msc_class.h, msc_bot_scsi.h
  • IOMUX : at32f403_gpio.h
  • IOMUX_BASE : at32f403.h
  • IOMUX_MAKE_VALUE : at32f403_gpio.h
  • IRQn : at32f403.h
  • IRQn_Type : at32f403.h
  • is_leap_year() : rtc.c
  • ITERATION : julia_fpu.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- j -

  • j : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • jump_to_app : bootloader/src/iap.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- k -

  • KB_TO_B : hid_iap_class.h
  • KEYBOARD_BCD_NUM : keyboard_desc.h
  • KEYBOARD_BINTERVAL_TIME : keyboard_desc.h
  • keyboard_class_handler : keyboard_class.c, keyboard_class.h
  • keyboard_class_setup_handler() : cdc_keyboard_class.c
  • keyboard_desc_handler : keyboard_desc.c, keyboard_desc.h
  • keyboard_send_string() : project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c
  • keyboard_struct : keyboard_class.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- l -

  • langid_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • LBYTE : usb_std.h
  • LCD_BL_HIGH : lcd_touch_16bit/inc/xmc_lcd.h
  • LCD_BL_LOW : lcd_touch_16bit/inc/xmc_lcd.h
  • lcd_clear() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_dev_struct : lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_display_number() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c
  • lcd_draw_point() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • LCD_ID : lcd_touch_16bit/inc/xmc_lcd.h
  • lcd_init() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_rd_data() : lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • LCD_RESET_HIGH : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • LCD_RESET_LOW : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • lcd_set_block() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_struct : lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_wr_command() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_wr_data() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_write_one_point() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • LED2 : at32f403_board.h
  • led2_handler : utilities/at32f403_freertos_demo/src/main.c
  • led2_task_function() : utilities/at32f403_freertos_demo/src/main.c
  • LED3 : at32f403_board.h
  • led3_handler : utilities/at32f403_freertos_demo/src/main.c
  • led3_task_function() : utilities/at32f403_freertos_demo/src/main.c
  • LED4 : at32f403_board.h
  • led_gpio_crm_clk : at32f403_board.c
  • led_gpio_pin : at32f403_board.c
  • led_gpio_port : at32f403_board.c
  • LED_NUM : at32f403_board.h
  • led_type : at32f403_board.h
  • LEFT_BUTTON : mouse_class.h
  • LEFT_MOVE : mouse_class.h
  • LEVLREQ_BIT : cf.h
  • LEXT_VALUE : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • lickfreq : project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • linecoding : cdc_class.c, cdc_msc_class.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • linecoding_vcpkybrd : cdc_keyboard_class.c
  • LOCKED : cf.h
  • LockType : cf.h
  • LOST_VAL : touch.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- m -

  • MAGENTA : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • main() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c, project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c, project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c, project/at_start_f403/examples/cortex_m4/bit_band/src/main.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c, project/at_start_f403/examples/cortex_m4/fpu/src/main.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c, project/at_start_f403/examples/crc/calculation/src/main.c, project/at_start_f403/examples/crm/clock_failure_detection/src/main.c, project/at_start_f403/examples/crm/sysclk_switch/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c, project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/exint/exint_config/src/main.c, project/at_start_f403/examples/exint/exint_software_trigger/src/main.c, project/at_start_f403/examples/flash/fap_enable/src/main.c, project/at_start_f403/examples/flash/flash_write_read/src/main.c, project/at_start_f403/examples/flash/operate_spim/src/main.c, project/at_start_f403/examples/flash/run_in_spim/src/main.c, project/at_start_f403/examples/gpio/io_toggle/src/main.c, project/at_start_f403/examples/gpio/led_toggle/src/main.c, project/at_start_f403/examples/gpio/swjtag_remap/src/main.c, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c, project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c, project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c, project/at_start_f403/examples/pwc/sleep_usart1/src/main.c, project/at_start_f403/examples/pwc/standby_rtc/src/main.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c, project/at_start_f403/examples/rtc/calendar/src/main.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/cascade_synchro/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c, project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/usart/idle_detection/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/irda/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/printf/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/rs485/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c, project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, project/at_start_f403/examples/wdt/wdt_reset/src/main.c, project/at_start_f403/examples/wdt/wdt_standby/src/main.c, project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c, project/at_start_f403/examples/xmc/lcd_8bit/src/main.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/pc_card/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/templates/src/main.c, utilities/at32f403_freertos_demo/src/main.c, utilities/at32f403_gen_random_number_demo/src/main.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c
  • MAKE_VALUE : at32f403.h
  • MASTER_BOARD : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c
  • MATCH_ID_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • MAX : usb_std.h
  • MAX_CIS_LEN : cf.h
  • max_marks : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • mblock_rbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • mblock_tbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • mclk_tmr1_init() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • MCU_ID1 : audio_desc.h, audio_hid_desc.h, cdc_desc.h, cdc_keyboard_desc.h, cdc_msc_desc.h, custom_hid_desc.h, hid_iap_desc.h, keyboard_desc.h, mouse_desc.h, msc_desc.h, printer_desc.h
  • MCU_ID2 : audio_desc.h, audio_hid_desc.h, cdc_desc.h, cdc_keyboard_desc.h, cdc_msc_desc.h, custom_hid_desc.h, hid_iap_desc.h, keyboard_desc.h, mouse_desc.h, msc_desc.h, printer_desc.h
  • MCU_ID3 : audio_desc.h, audio_hid_desc.h, cdc_desc.h, cdc_keyboard_desc.h, cdc_msc_desc.h, custom_hid_desc.h, hid_iap_desc.h, keyboard_desc.h, mouse_desc.h, msc_desc.h, printer_desc.h
  • mean : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • MEDIUM_HAVE_CHANGED : cdc_msc_class.h, msc_bot_scsi.h
  • MEDIUM_NOT_PRESENT : cdc_msc_class.h, msc_bot_scsi.h
  • MemManage_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • MemoryManagement_IRQn : at32f403.h
  • memset16_buffer() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • MIC_BUFFER_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • mic_dma_buffer : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • MIN : usb_std.h
  • min_marks : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • MISC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • mmc_stream_read() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • mmc_stream_test() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • mmc_stream_write() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • mmc_switch() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • MMC_SWITCH_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • mon_table : rtc.c
  • MOUSE_BCD_NUM : mouse_desc.h
  • MOUSE_BINTERVAL_TIME : mouse_desc.h
  • mouse_class_handler : mouse_class.c, mouse_class.h
  • mouse_desc_handler : mouse_desc.c, mouse_desc.h
  • mouse_struct : mouse_class.c
  • MOVE_STEP : mouse_class.h
  • MS_TICK : project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c
  • MSC_BCD_NUM : msc_desc.h
  • MSC_BOT_STATE_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_BOT_STATE_IDLE : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_BOT_STATE_RECOVERY : cdc_msc_class.h, msc_bot_scsi.h
  • msc_class_handler : msc_class.c, msc_class.h
  • msc_class_setup_handler() : cdc_msc_class.c
  • MSC_CMD_ALLOW_MEDIUM_REMOVAL : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_FORMAT_UNIT : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_INQUIRY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_MODE_SENSE10 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_MODE_SENSE6 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_10 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_12 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_CAPACITY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_FORMAT_CAPACITY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_REQUEST_SENSE : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_START_STOP : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_TEST_UNIT : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_VERIFY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_WRITE_10 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_WRITE_12 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_WRITE_VERIFY : cdc_msc_class.h, msc_bot_scsi.h
  • msc_desc_handler : msc_desc.c, msc_desc.h
  • msc_disk_capacity() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • msc_disk_read() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • msc_disk_write() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • msc_flash_size : composite_vcp_msc/src/msc_diskio.c, msc/src/msc_diskio.c
  • MSC_MAX_DATA_BUF_LEN : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_REQ_BO_RESET : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_REQ_GET_MAX_LUN : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_CMD : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_DATA_IN : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_DATA_OUT : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_FAILED : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_IDLE : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_LAST_DATA : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_SEND_DATA : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_STATUS : cdc_msc_class.h, msc_bot_scsi.h
  • msc_struct : msc_class.c
  • MSC_SUPPORT_MAX_LUN : cdc_msc_class.h, msc_bot_scsi.h
  • MULTI_BUFFER_SIZE : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • MYDMA_Config() : cf.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- n -

  • nand_address_increment() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • NAND_BUSY : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_A : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_B : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_C : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_TRUE1 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_ERASE0 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_ERASE1 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_LOCK_STATUS : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_READID : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_RESET : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_STATUS : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_WRITE0 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_WRITE_TRUE1 : xmc_ecc.h, xmc_nand.h
  • nand_ecc_correction() : project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • nand_erase_block() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • NAND_ERROR : xmc_ecc.h, xmc_nand.h
  • nand_get_status() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_id_struct : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • nand_init() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • NAND_INVALID_ADDRESS : xmc_ecc.h, xmc_nand.h
  • nand_read_id() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_read_small_page() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_read_spare_area() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_read_status() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • NAND_READY : xmc_ecc.h, xmc_nand.h
  • nand_reset() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • NAND_TIMEOUT_ERROR : xmc_ecc.h, xmc_nand.h
  • NAND_VALID_ADDRESS : xmc_ecc.h, xmc_nand.h
  • nand_write_small_page() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_write_spare_area() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • NMI_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • NO_BUTTON : at32f403_board.h
  • NonMaskableInt_IRQn : at32f403.h
  • NOP : cf.h
  • nor_eraseblock() : xmc_nor.h, xmc_nor.c
  • nor_erasechip() : xmc_nor.h, xmc_nor.c
  • NOR_ERROR : xmc_nor.h
  • nor_getstatus() : xmc_nor.h, xmc_nor.c
  • nor_id : project/at_start_f403/examples/xmc/nor/src/main.c
  • nor_init() : xmc_nor.h, xmc_nor.c
  • NOR_ONGOING : xmc_nor.h
  • nor_programbuffer() : xmc_nor.h, xmc_nor.c
  • nor_readbuffer() : xmc_nor.h, xmc_nor.c
  • nor_readhalfword() : xmc_nor.h, xmc_nor.c
  • nor_readid() : xmc_nor.h, xmc_nor.c
  • nor_reset() : xmc_nor.h, xmc_nor.c
  • nor_returntoreadmode() : xmc_nor.h, xmc_nor.c
  • nor_status : xmc_nor.h
  • NOR_SUCCESS : xmc_nor.h
  • NOR_TIMEOUT : xmc_nor.h
  • NOR_WRITE : xmc_nor.c
  • nor_writebuffer() : xmc_nor.h, xmc_nor.c
  • nor_writehalfword() : xmc_nor.h, xmc_nor.c
  • NULL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • number : project/at_start_f403/examples/xmc/nor/src/main.c
  • numStudents : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • NUMSTUDENTS : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • numSubjects : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • NUMSUBJECTS : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • nvic_configuration() : project/at_start_f403/examples/rtc/lick_calibration/src/main.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c
  • nvic_irq_disable() : at32f403_misc.h, at32f403_misc.c
  • nvic_irq_enable() : at32f403_misc.h, at32f403_misc.c
  • nvic_lowpower_mode_config() : at32f403_misc.h, at32f403_misc.c
  • nvic_lowpower_mode_type : at32f403_misc.h
  • NVIC_LP_SEVONPEND : at32f403_misc.h
  • NVIC_LP_SLEEPDEEP : at32f403_misc.h
  • NVIC_LP_SLEEPONEXIT : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_0 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_1 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_2 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_3 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_4 : at32f403_misc.h
  • nvic_priority_group_config() : at32f403_misc.h, at32f403_misc.c
  • nvic_priority_group_type : at32f403_misc.h
  • nvic_system_reset() : at32f403_misc.h, at32f403_misc.c
  • nvic_vector_table_set() : at32f403_misc.h, at32f403_misc.c
  • NVIC_VECTTAB_FLASH : at32f403_misc.h
  • NVIC_VECTTAB_RAM : at32f403_misc.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- o -

  • OPERATION_TIMEOUT : at32f403_flash.h
  • operationcomplete : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • orig_default_head : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • orig_default_Sector : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • ov_cnt : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- p -

  • page_number : project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • pagenumber : project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • PARAMETER_LIST_LENGTH_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • PASSED : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PCCARD_25_SECTORS_SIZES : cf.h
  • PCCARD_ATTRIBUTE_SPACE_ADDRESS : cf.h
  • PCCARD_BUSY : cf.h
  • PCCARD_Check_Power_Mode() : cf.c
  • PCCARD_COMMON_SPACE_ADDRESS : cf.h
  • PCCARD_DeInit() : cf.c
  • PCCARD_DEVICE_ADDRESS : cf.h
  • PCCARD_Diagnostic() : cf.c
  • PCCARD_Erase_Sector() : cf.c
  • PCCARD_Format_Track() : cf.c
  • PCCARD_GetState() : cf.c
  • PCCARD_Identify() : cf.c
  • PCCARD_Idle() : cf.c
  • PCCARD_Idle_Immediate() : cf.c
  • PCCARD_Init() : cf.c
  • PCCARD_Init_Drive_Para() : cf.c
  • PCCARD_IO_SPACE_ADDRESS : cf.h
  • PCCARD_IO_SPACE_PRIMARY_ADDR : cf.h
  • PCCARD_IO_SPACE_SECONDARY_ADDR : cf.h
  • PCCARD_IRQHandler() : cf.c
  • PCCARD_ITCallback() : cf.h
  • PCCARD_LONG_SECTOR_SIZE : cf.h
  • PCCARD_PATT4_Timing : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PCCARD_PIO4_Timing : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PCCARD_PMEM4_Timing : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PCCARD_PROGR : cf.h
  • PCCARD_Read_Buffer() : cf.c
  • PCCARD_Read_ERROR_REG() : cf.c
  • PCCARD_Read_ID() : cf.c
  • PCCARD_Read_Long_Sector() : cf.c
  • PCCARD_Read_Multiple() : cf.c
  • PCCARD_Read_Sector() : cf.c
  • PCCARD_Read_STATUS_REG() : cf.c
  • PCCARD_Read_Verify_Sector() : cf.c
  • PCCARD_READY : cf.h
  • PCCARD_Recalibrate() : cf.c
  • PCCARD_Reset() : cf.c
  • PCCARD_Reuqest_Sense() : cf.c
  • PCCARD_SECTOR_SIZE : cf.h
  • PCCARD_Seek() : cf.c
  • PCCARD_Set_Features() : cf.c
  • PCCARD_Set_Multiple_Mode() : cf.c
  • PCCARD_Set_Sleep_Mode() : cf.c
  • PCCARD_Standby() : cf.c
  • PCCARD_Standby_Immediate() : cf.c
  • PCCARD_STATE_BUSY : cf.h
  • PCCARD_STATE_ERROR : cf.h
  • PCCARD_STATE_READY : cf.h
  • PCCARD_STATE_RESET : cf.h
  • PCCARD_StateType : cf.h
  • PCCARD_STATUS_OK : cf.c
  • PCCARD_STATUS_WRITE_OK : cf.c
  • PCCARD_TIMEOUT_ERROR : cf.h
  • PCCARD_TIMEOUT_READ_ID : cf.c
  • PCCARD_TIMEOUT_SECTOR : cf.c
  • PCCARD_TIMEOUT_STATUS : cf.c
  • PCCARD_Translate_Sector() : cf.c
  • PCCARD_Write_Buffer() : cf.c
  • PCCARD_Write_Long_Sector() : cf.c
  • PCCARD_Write_Multiple() : cf.c
  • PCCARD_Write_Multiple_WO_ERASE() : cf.c
  • PCCARD_Write_Sector() : cf.c
  • PCCARD_Write_Sector_WO_ERASE() : cf.c
  • PCCARD_Write_Verify() : cf.c
  • pccardHandle : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PD01_MUX : at32f403_gpio.h
  • PEN_HIGH : touch.h
  • PendSV_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • PendSV_IRQn : at32f403.h
  • periodvalue : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • PERIPH_BASE : at32f403.h
  • PERIPH_REG : at32f403.h
  • PERIPH_REG_BIT : at32f403.h
  • PERIPHERAL_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • PERIPHERAL_BITBAND_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • PERIPHERAL_RESET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • PERIPHERAL_SET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • pftarget : project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • PIN_REPLACE_REG : cf.h
  • PLL_STABLE_DELAY : system_at32f403.h
  • point_color : project/at_start_f403/examples/xmc/lcd_8bit/src/main.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c
  • preempt_conversion_count : project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c
  • preempt_trigger_count : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c
  • prescaler_value : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c
  • press_mouse : project/at_start_f403/examples/usb_device/mouse/src/main.c
  • PRINT_UART : at32f403_board.h
  • PRINT_UART_CRM_CLK : at32f403_board.h
  • PRINT_UART_TX_GPIO : at32f403_board.h
  • PRINT_UART_TX_GPIO_CRM_CLK : at32f403_board.h
  • PRINT_UART_TX_PIN : at32f403_board.h
  • PRINTER_BCD_NUM : printer_desc.h
  • printer_class_handler : printer_class.c, printer_class.h
  • printer_desc_handler : printer_desc.c, printer_desc.h
  • PRINTER_DEVICE_ID_LEN : printer_class.h
  • PRINTER_PROTOCOL_1284_4 : printer_desc.h
  • PRINTER_PROTOCOL_BI_DIRECTIONAL : printer_desc.h
  • PRINTER_PROTOCOL_UNIDIRECTIONAL : printer_desc.h
  • PRINTER_PROTOCOL_VENDOR_SPECIFIC : printer_desc.h
  • PRINTER_REQ_GET_DEVICE_ID : printer_class.h
  • PRINTER_REQ_GET_PORT_STATUS : printer_class.h
  • PRINTER_REQ_GET_SOFT_RESET : printer_class.h
  • printer_req_type : printer_class.h
  • printer_struct : printer_class.c
  • PROGRAM_TIMEOUT : xmc_nor.c
  • PROGRAMMING_TIMEOUT : at32f403_flash.h
  • PRT_CMD_INFO : cf.h
  • PRT_ERR_INFO : cf.h
  • PRT_INIT_INFO : cf.h
  • psram_init() : xmc_psram.h, xmc_psram.c
  • psram_readbuffer() : xmc_psram.h, xmc_psram.c
  • psram_writebuffer() : xmc_psram.h, xmc_psram.c
  • PUTCHAR_PROTOTYPE : at32f403_board.c
  • pvm_exint_config() : project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c
  • PVM_IRQHandler() : project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c
  • PVM_IRQn : at32f403.h
  • PWC : at32f403_pwc.h
  • PWC_BASE : at32f403.h
  • pwc_battery_powered_domain_access() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_deep_sleep_enter_type : at32f403_pwc.h
  • PWC_DEEP_SLEEP_ENTER_WFE : at32f403_pwc.h
  • PWC_DEEP_SLEEP_ENTER_WFI : at32f403_pwc.h
  • pwc_deep_sleep_mode_enter() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_flag_clear() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_flag_get() : at32f403_pwc.h, at32f403_pwc.c
  • PWC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • pwc_power_voltage_monitor_enable() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_pvm_level_select() : at32f403_pwc.h, at32f403_pwc.c
  • PWC_PVM_OUTPUT_FLAG : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V3 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V4 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V5 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V6 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V7 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V8 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V9 : at32f403_pwc.h
  • pwc_pvm_voltage_type : at32f403_pwc.h
  • pwc_reset() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_sleep_enter_type : at32f403_pwc.h
  • PWC_SLEEP_ENTER_WFE : at32f403_pwc.h
  • PWC_SLEEP_ENTER_WFI : at32f403_pwc.h
  • pwc_sleep_mode_enter() : at32f403_pwc.h, at32f403_pwc.c
  • PWC_STANDBY_FLAG : at32f403_pwc.h
  • pwc_standby_mode_enter() : at32f403_pwc.h, at32f403_pwc.c
  • PWC_WAKEUP_FLAG : at32f403_pwc.h
  • PWC_WAKEUP_PIN_1 : at32f403_pwc.h
  • pwc_wakeup_pin_enable() : at32f403_pwc.h, at32f403_pwc.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- r -

  • RAM_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • RAM_BITBAND_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • randnum_test() : random.h, random.c
  • rca : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • RDY_BIT : cf.h
  • read_buffer : operate_spim.c
  • Read_Sector() : cf.c
  • READ_TIMES : touch.c
  • Read_Transfer : cf.h
  • ReadCFCardCISInformation() : cf.c
  • REAL_CONSTANT : julia_fpu.h
  • RED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • REG16 : at32f403.h
  • REG32 : at32f403.h
  • REG8 : at32f403.h
  • reg_addr_data : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • report_buf : project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c
  • REQ_SENSE_STANDARD_DATA_LEN : cdc_msc_class.h, msc_bot_scsi.h
  • RESET : at32f403.h
  • Reset_IRQn : at32f403.h
  • result_error() : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • RIGHT_BUTTON : mouse_class.h
  • RIGHT_MOVE : mouse_class.h
  • ROW_ADDRESS : xmc_ecc.h, xmc_nand.h
  • RS485_BAUDRATE : project/at_start_f403/examples/usart/rs485/src/main.c
  • rs485_buffer_rx : project/at_start_f403/examples/usart/rs485/src/main.c
  • rs485_buffer_rx_cnt : project/at_start_f403/examples/usart/rs485/src/main.c
  • RS485_BUFFER_SIZE : project/at_start_f403/examples/usart/rs485/src/main.c
  • rs485_config() : project/at_start_f403/examples/usart/rs485/src/main.c
  • rs485_send_data() : project/at_start_f403/examples/usart/rs485/src/main.c
  • RTC : at32f403_rtc.h
  • rtc_alarm_clock_set() : rtc.h, rtc.c
  • rtc_alarm_config() : project/at_start_f403/examples/pwc/standby_rtc/src/main.c
  • rtc_alarm_set() : at32f403_rtc.h, at32f403_rtc.c
  • RTC_BASE : at32f403.h
  • RTC_CFGF_FLAG : at32f403_rtc.h
  • rtc_config() : project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c, project/at_start_f403/examples/pwc/standby_rtc/src/main.c
  • rtc_configuration() : project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • rtc_counter_get() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_counter_set() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_divider_get() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_divider_set() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_flag_clear() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_flag_get() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_init() : rtc.h, rtc.c
  • rtc_interrupt_enable() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_interrupt_flag_get() : at32f403_rtc.h, at32f403_rtc.c
  • RTC_IRQHandler() : project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c
  • RTC_IRQn : at32f403.h
  • RTC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • RTC_OVF_FLAG : at32f403_rtc.h
  • RTC_OVF_INT : at32f403_rtc.h
  • RTC_TA_FLAG : at32f403_rtc.h
  • RTC_TA_INT : at32f403_rtc.h
  • rtc_time_get() : rtc.h, rtc.c
  • rtc_time_set() : rtc.h, rtc.c
  • RTC_TS_FLAG : at32f403_rtc.h
  • RTC_TS_INT : at32f403_rtc.h
  • RTC_UPDF_FLAG : at32f403_rtc.h
  • rtc_wait_config_finish() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_wait_update_finish() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_week_get() : rtc.c
  • RTCAlarm_IRQHandler() : project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c
  • RTCAlarm_IRQn : at32f403.h
  • rx_buf : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c
  • rx_buf1 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • rx_buf2 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • rx_buf3 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • rx_buffer : project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • rx_counter : project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • rx_index : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c
  • rxbuffer : project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- s -

  • s16 : at32f403.h
  • s32 : at32f403.h
  • s8 : at32f403.h
  • SAMPLE_FREQ : audio_desc.h, audio_hid_desc.h
  • SAMPLING_NUM : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • sblock_rbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • sblock_tbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • sc16 : at32f403.h
  • sc32 : at32f403.h
  • sc8 : at32f403.h
  • SC_3_5V_CLK : smartcard_config.h
  • SC_3_5V_PIN : smartcard_config.h
  • SC_3_5V_PORT : smartcard_config.h
  • sc_a2r_struct : project/at_start_f403/examples/usart/smartcard/src/main.c
  • sc_baud_rate : project/at_start_f403/examples/usart/smartcard/src/main.c
  • sc_clock_freq : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_CMDVCC_CLK : smartcard_config.h
  • SC_CMDVCC_PIN : smartcard_config.h
  • SC_CMDVCC_PORT : smartcard_config.h
  • SC_F_DIV_D : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_OFF_CLK : smartcard_config.h
  • SC_OFF_EXINT : smartcard_config.h
  • SC_OFF_EXINT_IRQ : smartcard_config.h
  • SC_OFF_PIN : smartcard_config.h
  • SC_OFF_PINSOURCE : smartcard_config.h
  • SC_OFF_PORT : smartcard_config.h
  • SC_OFF_PORTSOURCE : smartcard_config.h
  • SC_RECEIVE_TIMEOUT : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_RESET_CLK : smartcard_config.h
  • SC_RESET_PIN : smartcard_config.h
  • SC_RESET_PORT : smartcard_config.h
  • sc_response_decode() : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_USART : smartcard_config.h
  • SC_USART_CLK : smartcard_config.h
  • SC_USART_CLK_PIN : smartcard_config.h
  • SC_USART_CLK_PORT : smartcard_config.h
  • SC_USART_DIV_VAL : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_USART_GPIO_CLK : smartcard_config.h
  • SC_USART_IRQHandler : smartcard_config.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c
  • SC_USART_IRQn : smartcard_config.h
  • SC_USART_TX_PIN : smartcard_config.h
  • SC_USART_TX_PORT : smartcard_config.h
  • sclk_192m_hick_config() : project/at_start_f403/examples/crm/clock_failure_detection/src/main.c
  • sclk_64m_hick_config() : project/at_start_f403/examples/crm/sysclk_switch/src/main.c
  • sclk_96m_hext_config() : project/at_start_f403/examples/crm/sysclk_switch/src/main.c
  • scr_find() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SCREEN_X_SIZE : project/at_start_f403/examples/cortex_m4/fpu/src/main.c
  • SCREEN_Y_SIZE : project/at_start_f403/examples/cortex_m4/fpu/src/main.c
  • scsi_inquiry : composite_vcp_msc/src/msc_diskio.c, msc/src/msc_diskio.c, virtual_msc_iap/src/msc_diskio.c
  • SCSI_INQUIRY_DATA_LENGTH : cdc_msc_class.h, msc_bot_scsi.h
  • SD_0TO7BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_16TO23BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_24TO31BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_8TO15BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ADDR_MISALIGNED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ADDR_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_AKE_SEQ_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ALLZERO : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_BLK_LEN_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_block_read() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_block_write() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_blocks_erase() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_bus_wide_enable() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SD_CARD_CONTROLLER_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_DISCONNECTED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_ECC_DISABLED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_ECC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_IDENTIFICATION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_card_info : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_card_info_get() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_card_init() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SD_CARD_LOCKED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_PROGRAMMING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h, sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_READY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_RECEIVING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h, sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_SENDING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_STANDBY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_card_state_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_TRANSFER : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CCCC_ERASE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CCCC_LOCK_UNLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CCCC_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CHECK_PATTERN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CID_CSD_OVERWRITE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ALL_SEND_CID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_APP_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_APP_SD_SET_BUSWIDTH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_CLR_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_CRC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ERASE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ERASE_GRP_END : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ERASE_GRP_START : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_FAIL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_FAST_IO : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GEN_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GO_IDLE_STATE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GO_INACTIVE_STATE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GO_IRQ_STATE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_BUSTEST_READ : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_BUSTEST_WRITE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_SEND_EXT_CSD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_SWITCH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_LOCK_UNLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_NO_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_PROG_CID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_PROG_CSD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_READ_DAT_UNTIL_STOP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_READ_MULT_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_READ_SINGLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_RSP_TIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_CHANGE_SECURE_AREA : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_CER_RES1 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_CER_RN2 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_MID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_MKB : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_OP_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_ERASE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_WRITE_MKB : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SEND_SCR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SET_CER_RES2 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SET_CER_RN1 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SET_CLR_CARD_DETECT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_STAUS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_ERASE_GRP_END : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_ERASE_GRP_START : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SDIO_RW_DIRECT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SDIO_RW_EXTENDED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SDIO_SEN_OP_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEL_DESEL_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_CID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_CSD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_OP_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_STATUS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_BLOCK_COUNT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_BLOCKLEN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_DSR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_REL_ADDR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_STOP_TRANSMISSION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_WRITE_DAT_UNTIL_STOP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_WRITE_MULT_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_WRITE_SINGLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_DATA_FAIL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_DATA_TIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_data_transfer_mode_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_DATATIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_deselect_select() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_device_mode_set() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_dma_config() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SD_ERASE_RESET : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ERASE_SEQ_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_error_status_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_GENERAL_UNKNOWN_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_HALFFIFO : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_HALFFIFOBYTES : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_HIGH_CAPACITY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ILLEGAL_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_init() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SD_INTERNAL_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_INVALID_ERASE_PARAM : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_INVALID_PARAMETER : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_INVALID_VOLTRANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_irq_service() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SD_LOCK_UNLOCK_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_LUN : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • SD_MAX_DATA_LENGTH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_MAX_VOLT_TRIAL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_memory_card_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_mult_blocks_read() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_mult_blocks_write() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_multiple_blocks_test() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • SD_NOT_CONFIGURED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ADDR_MISALIGNED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ADDR_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_AKE_SEQ_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_BLK_LEN_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CARD_CONTROLLER_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CARD_ECC_DISABLED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CARD_ECC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CID_CSD_OVERWRIETE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CMD_CRC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ERASE_RESET : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ERASE_SEQ_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ERRORBITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_GENERAL_UNKNOWN_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ILLEGAL_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_INVALID_ERASE_PARAM : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_LOCK_UNLOCK_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_STREAM_RD_UNDERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_STREAM_WR_OVERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_WP_ERASE_SKIP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_WR_PROTECT_VIOLATION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_power_off() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_power_on() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SD_R5_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R5_FUNCTION_NUMBER : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R5_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R6_CMD_CRC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R6_GENERAL_UNKNOWN_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R6_ILLEGAL_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_REQ_NOT_APPLICABLE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_REQ_PENDING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_RX_OVERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_DISABLED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_FUNC_BUSY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_FUNC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_UNKNOWN_FUNC : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_single_block_test() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • SD_SINGLE_BUS_SUPPORT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_START_BIT_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_state_get() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_status_send() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SD_STD_CAPACITY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_STREAM_RD_UNDERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_STREAM_WR_OVERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_switch() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SD_SWITCH_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_test_error() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • SD_TRANSFER_DMA_MODE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_TRANSFER_POLLING_MODE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_TX_UNDERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_UNSUPPORTED_FEATURE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_UNSUPPORTED_HW : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_VOLTAGE_WINDOW_MMC : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_VOLTAGE_WINDOW_SD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_wide_bus_operation_config() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SD_WIDE_BUS_SUPPORT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_WP_ERASE_SKIP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_WR_PROTECT_VIOLATION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_write_disk() : diskio.c
  • SDIO1_BASE : at32f403.h
  • SDIO1_IRQHandler() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SDIO1_IRQn : at32f403.h
  • SDIO2 : at32f403_sdio.h
  • SDIO2_BASE : at32f403.h
  • SDIO2_IRQHandler() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SDIO2_IRQn : at32f403.h
  • SDIO2_MUX01 : at32f403_gpio.h
  • SDIO2_MUX10 : at32f403_gpio.h
  • SDIO2_MUX11 : at32f403_gpio.h
  • sdio_block_size_type : at32f403_sdio.h
  • sdio_buffer_counter_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_bus_width_config() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_BUS_WIDTH_D1 : at32f403_sdio.h
  • SDIO_BUS_WIDTH_D4 : at32f403_sdio.h
  • SDIO_BUS_WIDTH_D8 : at32f403_sdio.h
  • sdio_bus_width_type : at32f403_sdio.h
  • sdio_clock_bypass() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_clock_config() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_CLOCK_EDGE_FALLING : at32f403_sdio.h
  • SDIO_CLOCK_EDGE_RISING : at32f403_sdio.h
  • sdio_clock_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_clock_set() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • SDIO_CMD0TIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_CMDCMPL_FLAG : at32f403_sdio.h
  • SDIO_CMDCMPL_INT : at32f403_sdio.h
  • SDIO_CMDFAIL_FLAG : at32f403_sdio.h
  • SDIO_CMDFAIL_INT : at32f403_sdio.h
  • SDIO_CMDRSPCMPL_FLAG : at32f403_sdio.h
  • SDIO_CMDRSPCMPL_INT : at32f403_sdio.h
  • SDIO_CMDTIMEOUT_FLAG : at32f403_sdio.h
  • SDIO_CMDTIMEOUT_INT : at32f403_sdio.h
  • sdio_command_config() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_command_data_send() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sdio_command_init_struct : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sdio_command_response_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_command_state_machine_enable() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_DATA_BLOCK_SIZE_1024B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_128B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_16384B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_16B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_1B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_2048B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_256B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_2B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_32B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_4096B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_4B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_512B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_64B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_8192B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_8B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_TRANSFER : at32f403_sdio.h
  • sdio_data_config() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_counter_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_init_struct : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sdio_data_read() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_state_machine_enable() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_DATA_STREAM_TRANSFER : at32f403_sdio.h
  • SDIO_DATA_TRANSFER_TO_CARD : at32f403_sdio.h
  • SDIO_DATA_TRANSFER_TO_CONTROLLER : at32f403_sdio.h
  • sdio_data_write() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_DATATIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sdio_dma_enable() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_DOCMD_FLAG : at32f403_sdio.h
  • SDIO_DOCMD_INT : at32f403_sdio.h
  • SDIO_DORX_FLAG : at32f403_sdio.h
  • SDIO_DORX_INT : at32f403_sdio.h
  • SDIO_DOTX_FLAG : at32f403_sdio.h
  • SDIO_DOTX_INT : at32f403_sdio.h
  • SDIO_DTBLKCMPL_FLAG : at32f403_sdio.h
  • SDIO_DTBLKCMPL_INT : at32f403_sdio.h
  • SDIO_DTCMP_INT : at32f403_sdio.h
  • SDIO_DTCMPL_FLAG : at32f403_sdio.h
  • SDIO_DTFAIL_FLAG : at32f403_sdio.h
  • SDIO_DTFAIL_INT : at32f403_sdio.h
  • SDIO_DTTIMEOUT_FLAG : at32f403_sdio.h
  • SDIO_DTTIMEOUT_INT : at32f403_sdio.h
  • sdio_edge_phase_type : at32f403_sdio.h
  • SDIO_FIFO_Address : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sdio_flag_clear() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_flag_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_flow_control_enable() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_HIGH_CAPACITY_MMC_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_HIGH_CAPACITY_SD_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_HIGH_SPEED_MULTIMEDIA_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sdio_interrupt_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_interrupt_flag_get() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_INTR_STS_READ_MASK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_INTR_STS_WRITE_MASK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sdio_io_function_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_io_suspend_command_set() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • SDIO_MULTIMEDIA_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_POWER_OFF : at32f403_sdio.h
  • SDIO_POWER_ON : at32f403_sdio.h
  • sdio_power_saving_mode_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_power_set() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_power_state_type : at32f403_sdio.h
  • sdio_power_status_get() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_READ_WAIT_CONTROLLED_BY_CK : at32f403_sdio.h
  • SDIO_READ_WAIT_CONTROLLED_BY_D2 : at32f403_sdio.h
  • sdio_read_wait_mode_set() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_read_wait_mode_type : at32f403_sdio.h
  • sdio_read_wait_start() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_read_wait_stop() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_reponse_type : at32f403_sdio.h
  • sdio_reset() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_response_get() : at32f403_sdio.h, at32f403_sdio.c
  • SDIO_RESPONSE_LONG : at32f403_sdio.h
  • SDIO_RESPONSE_NO : at32f403_sdio.h
  • SDIO_RESPONSE_SHORT : at32f403_sdio.h
  • SDIO_RSP1_INDEX : at32f403_sdio.h
  • SDIO_RSP2_INDEX : at32f403_sdio.h
  • SDIO_RSP3_INDEX : at32f403_sdio.h
  • SDIO_RSP4_INDEX : at32f403_sdio.h
  • sdio_rsp_index_type : at32f403_sdio.h
  • SDIO_RXBUF_FLAG : at32f403_sdio.h
  • SDIO_RXBUF_INT : at32f403_sdio.h
  • SDIO_RXBUFE_FLAG : at32f403_sdio.h
  • SDIO_RXBUFE_INT : at32f403_sdio.h
  • SDIO_RXBUFF_FLAG : at32f403_sdio.h
  • SDIO_RXBUFF_INT : at32f403_sdio.h
  • SDIO_RXBUFH_FLAG : at32f403_sdio.h
  • SDIO_RXBUFH_INT : at32f403_sdio.h
  • SDIO_RXERRO_FLAG : at32f403_sdio.h
  • SDIO_RXERRO_INT : at32f403_sdio.h
  • SDIO_SBITERR_FLAG : at32f403_sdio.h
  • SDIO_SBITERR_INT : at32f403_sdio.h
  • SDIO_SDIO_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_SDIOIF_FLAG : at32f403_sdio.h
  • SDIO_SDIOIF_INT : at32f403_sdio.h
  • SDIO_SECURE_DIGITAL_IO_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_SECURE_DIGITAL_IO_COMBO_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_SEND_IF_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_STATIC_FLAGS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_STD_CAPACITY_SD_CARD_V1_1 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_STD_CAPACITY_SD_CARD_V2_0 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sdio_transfer_direction_type : at32f403_sdio.h
  • sdio_transfer_mode_type : at32f403_sdio.h
  • SDIO_TXBUF_FLAG : at32f403_sdio.h
  • SDIO_TXBUF_INT : at32f403_sdio.h
  • SDIO_TXBUFE_FLAG : at32f403_sdio.h
  • SDIO_TXBUFE_INT : at32f403_sdio.h
  • SDIO_TXBUFF_FLAG : at32f403_sdio.h
  • SDIO_TXBUFF_INT : at32f403_sdio.h
  • SDIO_TXBUFH_FLAG : at32f403_sdio.h
  • SDIO_TXBUFH_INT : at32f403_sdio.h
  • SDIO_TXERRU_FLAG : at32f403_sdio.h
  • SDIO_TXERRU_INT : at32f403_sdio.h
  • SDIO_WAIT_FOR_INT : at32f403_sdio.h
  • SDIO_WAIT_FOR_NO : at32f403_sdio.h
  • SDIO_WAIT_FOR_PEND : at32f403_sdio.h
  • sdio_wait_type : at32f403_sdio.h
  • SDIOx : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sector_read() : operate_spim.c
  • sector_size : composite_vcp_msc/src/msc_diskio.c, msc/src/msc_diskio.c
  • SECTOR_SIZE : project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • SECTOR_SIZE_1K : hid_iap_class.h, composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h
  • SECTOR_SIZE_2K : hid_iap_class.h, composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h
  • SECTOR_SIZE_4K : hid_iap_class.h, composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h
  • SENSE_KEY_ABORTED_COMMAND : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_BLANK_CHECK : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_DATA_PROTECT : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_HARDWARE_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_ILLEGAL_REQUEST : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_MEDIUM_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_MISCOMPARE : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_NO_SENSE : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_NOT_READY : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_RECOVERED_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_UNIT_ATTENTION : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_VENDERO_SPECIFIC : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_VOLUME_OVERFLOW : cdc_msc_class.h, msc_bot_scsi.h
  • serial_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • SET : at32f403.h
  • SET_HOST_CUR_SOURCE_CAP : cf.h
  • SET_LINE_CODING : cdc_msc_class.h, msc_bot_scsi.h, usb_std.h
  • SETUP_LENGTH : project/at_start_f403/examples/usart/smartcard/src/main.c
  • setvar_periodvalue() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • SHIFT : cdc_keyboard_class.c, keyboard_class.c
  • show_card_info() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • show_verification_result() : cf.c
  • sine12bit : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c
  • SLOW : project/at_start_f403/templates/src/main.c
  • SOCKET_COPY_REG : cf.h
  • speed_change() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SPI1 : at32f403_spi.h
  • SPI1_BASE : at32f403.h
  • spi1_buffer_tx : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • SPI1_IRQHandler() : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c
  • SPI1_IRQn : at32f403.h
  • SPI1_MUX_01 : at32f403_gpio.h
  • SPI1_MUX_10 : at32f403_gpio.h
  • spi1_rx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c
  • spi1_tx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • SPI2 : at32f403_spi.h
  • SPI2_BASE : at32f403.h
  • spi2_buffer_rx : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • SPI2_IRQHandler() : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c
  • SPI2_IRQn : at32f403.h
  • spi2_rx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_rx_counter : project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_tx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_tx_buffer_size : project/at_start_f403/examples/usart/synchronous/src/main.c
  • SPI2_TX_BUFFER_SIZE : project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_tx_counter : project/at_start_f403/examples/usart/synchronous/src/main.c
  • SPI3 : at32f403_spi.h
  • SPI3_BASE : at32f403.h
  • SPI3_IRQn : at32f403.h
  • SPI4_BASE : at32f403.h
  • SPI4_IRQn : at32f403.h
  • SPI4_MUX : at32f403_gpio.h
  • spi_byte_read() : spi_flash.h, spi_flash.c
  • spi_byte_write() : spi_flash.h, spi_flash.c
  • spi_bytes_read() : spi_flash.h, spi_flash.c
  • spi_bytes_write() : spi_flash.h, spi_flash.c
  • SPI_CCERR_FLAG : at32f403_spi.h
  • SPI_CLOCK_PHASE_1EDGE : at32f403_spi.h
  • SPI_CLOCK_PHASE_2EDGE : at32f403_spi.h
  • spi_clock_phase_type : at32f403_spi.h
  • SPI_CLOCK_POLARITY_HIGH : at32f403_spi.h
  • SPI_CLOCK_POLARITY_LOW : at32f403_spi.h
  • spi_clock_polarity_type : at32f403_spi.h
  • spi_config() : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • spi_crc_direction_type : at32f403_spi.h
  • spi_crc_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_crc_next_transmit() : at32f403_spi.h, at32f403_spi.c
  • spi_crc_polynomial_get() : at32f403_spi.h, at32f403_spi.c
  • spi_crc_polynomial_set() : at32f403_spi.h, at32f403_spi.c
  • SPI_CRC_RX : at32f403_spi.h
  • SPI_CRC_TX : at32f403_spi.h
  • spi_crc_value_get() : at32f403_spi.h, at32f403_spi.c
  • SPI_CS_HARDWARE_MODE : at32f403_spi.h
  • spi_cs_mode_type : at32f403_spi.h
  • SPI_CS_SOFTWARE_MODE : at32f403_spi.h
  • spi_default_para_init() : at32f403_spi.h, at32f403_spi.c
  • spi_enable() : at32f403_spi.h, at32f403_spi.c
  • SPI_FIRST_BIT_LSB : at32f403_spi.h
  • SPI_FIRST_BIT_MSB : at32f403_spi.h
  • spi_first_bit_type : at32f403_spi.h
  • SPI_FLASH_LUN : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • SPI_FRAME_16BIT : at32f403_spi.h
  • SPI_FRAME_8BIT : at32f403_spi.h
  • spi_frame_bit_num_set() : at32f403_spi.h, at32f403_spi.c
  • spi_frame_bit_num_type : at32f403_spi.h
  • SPI_HALF_DUPLEX_DIRECTION_RX : at32f403_spi.h
  • spi_half_duplex_direction_set() : at32f403_spi.h, at32f403_spi.c
  • SPI_HALF_DUPLEX_DIRECTION_TX : at32f403_spi.h
  • spi_half_duplex_direction_type : at32f403_spi.h
  • spi_hardware_cs_output_enable() : at32f403_spi.h, at32f403_spi.c
  • SPI_I2S_BF_FLAG : at32f403_spi.h
  • spi_i2s_data_receive() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_data_transmit() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_dma_receiver_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_dma_transmitter_enable() : at32f403_spi.h, at32f403_spi.c
  • SPI_I2S_ERROR_INT : at32f403_spi.h
  • spi_i2s_flag_clear() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_flag_get() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_interrupt_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_interrupt_flag_get() : at32f403_spi.h, at32f403_spi.c
  • SPI_I2S_RDBF_FLAG : at32f403_spi.h
  • SPI_I2S_RDBF_INT : at32f403_spi.h
  • spi_i2s_reset() : at32f403_spi.h, at32f403_spi.c
  • SPI_I2S_ROERR_FLAG : at32f403_spi.h
  • SPI_I2S_TDBE_FLAG : at32f403_spi.h
  • SPI_I2S_TDBE_INT : at32f403_spi.h
  • spi_init() : at32f403_spi.h, at32f403_spi.c
  • spi_init_struct : project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c
  • spi_master_slave_mode_type : at32f403_spi.h
  • SPI_MCLK_DIV_1024 : at32f403_spi.h
  • SPI_MCLK_DIV_128 : at32f403_spi.h
  • SPI_MCLK_DIV_16 : at32f403_spi.h
  • SPI_MCLK_DIV_2 : at32f403_spi.h
  • SPI_MCLK_DIV_256 : at32f403_spi.h
  • SPI_MCLK_DIV_32 : at32f403_spi.h
  • SPI_MCLK_DIV_4 : at32f403_spi.h
  • SPI_MCLK_DIV_512 : at32f403_spi.h
  • SPI_MCLK_DIV_64 : at32f403_spi.h
  • SPI_MCLK_DIV_8 : at32f403_spi.h
  • spi_mclk_freq_div_type : at32f403_spi.h
  • SPI_MMERR_FLAG : at32f403_spi.h
  • SPI_MODE_MASTER : at32f403_spi.h
  • SPI_MODE_SLAVE : at32f403_spi.h
  • SPI_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • spi_software_cs_internal_level_set() : at32f403_spi.h, at32f403_spi.c
  • spi_software_cs_level_type : at32f403_spi.h
  • SPI_SWCS_INTERNAL_LEVEL_HIGHT : at32f403_spi.h
  • SPI_SWCS_INTERNAL_LEVEL_LOW : at32f403_spi.h
  • SPI_TRANS_DMA : spi_flash.h
  • spi_transmission_mode_type : at32f403_spi.h
  • SPI_TRANSMIT_FULL_DUPLEX : at32f403_spi.h
  • SPI_TRANSMIT_HALF_DUPLEX_RX : at32f403_spi.h
  • SPI_TRANSMIT_HALF_DUPLEX_TX : at32f403_spi.h
  • SPI_TRANSMIT_SIMPLEX_RX : at32f403_spi.h
  • SPIF_BLOCKERASE : spi_flash.h
  • SPIF_CHIP_SIZE : spi_flash.h
  • SPIF_CHIPERASE : spi_flash.h
  • SPIF_DEVICEID : spi_flash.h
  • SPIF_FASTREADDATA : spi_flash.h
  • SPIF_FASTREADDUAL : spi_flash.h
  • SPIF_JEDECDEVICEID : spi_flash.h
  • SPIF_MANUFACTDEVICEID : spi_flash.h
  • SPIF_PAGE_SIZE : spi_flash.h
  • SPIF_PAGEPROGRAM : spi_flash.h
  • SPIF_POWERDOWN : spi_flash.h
  • SPIF_READDATA : spi_flash.h
  • SPIF_READSTATUSREG1 : spi_flash.h
  • SPIF_READSTATUSREG2 : spi_flash.h
  • SPIF_READSTATUSREG3 : spi_flash.h
  • SPIF_RELEASEPOWERDOWN : spi_flash.h
  • SPIF_SECTOR_SIZE : spi_flash.h
  • SPIF_SECTORERASE : spi_flash.h
  • SPIF_WRITEDISABLE : spi_flash.h
  • SPIF_WRITEENABLE : spi_flash.h
  • SPIF_WRITESTATUSREG1 : spi_flash.h
  • SPIF_WRITESTATUSREG2 : spi_flash.h
  • SPIF_WRITESTATUSREG3 : spi_flash.h
  • spiflash_init() : spi_flash.h, spi_flash.c
  • spiflash_page_write() : spi_flash.h, spi_flash.c
  • spiflash_read() : spi_flash.h, spi_flash.c
  • spiflash_read_id() : spi_flash.h, spi_flash.c
  • spiflash_read_sr1() : spi_flash.h, spi_flash.c
  • spiflash_sector_buf : spi_flash.c
  • spiflash_sector_erase() : spi_flash.h, spi_flash.c
  • spiflash_wait_busy() : spi_flash.h, spi_flash.c
  • spiflash_write() : spi_flash.h, spi_flash.c
  • spiflash_write_enable() : spi_flash.h, spi_flash.c
  • spiflash_write_nocheck() : spi_flash.h, spi_flash.c
  • SPIM_ERASE_TIMEOUT : at32f403_flash.h
  • SPIM_FLASH_BASE : at32f403.h
  • spim_init() : operate_spim.c, project/at_start_f403/examples/flash/run_in_spim/src/main.c
  • spim_operate() : operate_spim.h, operate_spim.c
  • SPIM_PROGRAMMING_TIMEOUT : at32f403_flash.h
  • spim_run() : run_in_spim.h
  • SPIM_SECTOR_SIZE : operate_spim.h
  • SPIM_TEST_ADDR : operate_spim.h
  • SPK_BUFFER_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • spk_dma_buffer : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • SPK_TX_FIFO_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • SRAM_BASE : at32f403.h
  • sram_init() : xmc_sram.h, xmc_sram.c
  • sram_readbuffer() : xmc_sram.h, xmc_sram.c
  • SRAM_SIZE : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h
  • sram_writebuffer() : xmc_sram.h, xmc_sram.c
  • src_buffer : project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c
  • src_const_buffer : project/at_start_f403/examples/dma/flash_to_sram/src/main.c
  • SRESET_BIT : cf.h
  • Start_Sector : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • status : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • STATUS_ERROR : cf.h
  • STATUS_OK : cf.h
  • StatusType : cf.h
  • std : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • step : project/at_start_f403/examples/tmr/6_steps/src/main.c
  • STEP_DELAY_MS : at32f403_board.c
  • stop_flag : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • STREAM_BUFFER_SIZE : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • stream_rbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • stream_tbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • STS_REG_INFO : cf.h
  • student_num : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • sub_tmr_input_sel_type : at32f403_tmr.h
  • SUCCESS : at32f403.h
  • SVC_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • SVCall_IRQn : at32f403.h
  • SWAPBYTE : usb_std.h
  • switch_system_clock() : project/at_start_f403/examples/crm/sysclk_switch/src/main.c
  • swj_dp_config() : project/at_start_f403/examples/gpio/swjtag_remap/src/main.c
  • SWJTAG_MUX_001 : at32f403_gpio.h
  • SWJTAG_MUX_010 : at32f403_gpio.h
  • SWJTAG_MUX_100 : at32f403_gpio.h
  • sys_counter : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • system_clock_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_clock.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_clock.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_clock.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_clock.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_clock.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_clock.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_clock.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_clock.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_clock.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_clock.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_clock.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_clock.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c, project/at_start_f403/examples/can/filter/inc/at32f403_clock.h, project/at_start_f403/examples/can/filter/src/at32f403_clock.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_clock.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_clock.h, project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_clock.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_clock.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_clock.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_clock.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_clock.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_clock.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_clock.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_clock.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_clock.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_clock.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_clock.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_clock.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_clock.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_clock.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_clock.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_clock.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_clock.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_clock.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_clock.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_clock.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_clock.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_clock.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_clock.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_clock.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_clock.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_clock.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_clock.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_clock.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_clock.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_clock.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/irda/inc/at32f403_clock.h, project/at_start_f403/examples/usart/irda/src/at32f403_clock.c, project/at_start_f403/examples/usart/polling/inc/at32f403_clock.h, project/at_start_f403/examples/usart/polling/src/at32f403_clock.c, project/at_start_f403/examples/usart/printf/inc/at32f403_clock.h, project/at_start_f403/examples/usart/printf/src/at32f403_clock.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_clock.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_clock.h, project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_clock.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_clock.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_clock.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_clock.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_clock.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_clock.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c, project/at_start_f403/templates/inc/at32f403_clock.h, project/at_start_f403/templates/src/at32f403_clock.c, utilities/at32f403_freertos_demo/inc/at32f403_clock.h, utilities/at32f403_freertos_demo/src/at32f403_clock.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_clock.h, utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_clock.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_clock.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c
  • system_clock_recover() : project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c
  • system_core_clock : system_at32f403.c, system_at32f403.h
  • system_core_clock_update() : system_at32f403.c, system_at32f403.h
  • SystemCoreClock : system_at32f403.h
  • SystemInit() : system_at32f403.c, system_at32f403.h
  • SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8 : at32f403_misc.h
  • SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV : at32f403_misc.h
  • systick_clock_source_config() : at32f403_misc.h, at32f403_misc.c
  • systick_clock_source_type : at32f403_misc.h
  • systick_configuration() : project/at_start_f403/examples/tmr/6_steps/src/main.c
  • SysTick_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • systick_handler() : project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c
  • SysTick_IRQn : at32f403.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- t -

  • T0_PROTOCOL : project/at_start_f403/examples/usart/smartcard/src/main.c
  • table_week : rtc.c
  • TAMPER_IRQHandler() : project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c
  • TAMPER_IRQn : at32f403.h
  • TaskFileRegIsValid() : cf.c
  • TCLK_HIGH : touch.h
  • TCLK_LOW : touch.h
  • TCS_HIGH : touch.h
  • TCS_LOW : touch.h
  • TDIN_HIGH : touch.h
  • TDIN_LOW : touch.h
  • TDOUT : touch.h
  • TEST_BUFEER_SIZE : project/at_start_f403/examples/flash/flash_write_read/src/main.c
  • TEST_FLASH_ADDRESS_START : project/at_start_f403/examples/flash/flash_write_read/src/main.c
  • TEST_LENGTH_SAMPLES : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • Test_Mode : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • test_result : project/at_start_f403/examples/can/filter/src/main.c
  • testMarks_f32 : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • testOutput : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • TestStatus : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • testUnity_f32 : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • time_cnt : project/at_start_f403/examples/usart/printf/src/main.c
  • time_ira_cnt : bootloader/inc/tmr.h, bootloader/src/tmr.c
  • timer_period : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c
  • tmpCC4 : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c
  • TMR1 : at32f403_tmr.h
  • TMR10 : at32f403_tmr.h
  • TMR10_BASE : at32f403.h
  • TMR10_MUX : at32f403_gpio.h
  • TMR11 : at32f403_tmr.h
  • TMR11_BASE : at32f403.h
  • TMR11_MUX : at32f403_gpio.h
  • TMR12 : at32f403_tmr.h
  • TMR12_BASE : at32f403.h
  • TMR13 : at32f403_tmr.h
  • TMR13_BASE : at32f403.h
  • TMR13_MUX : at32f403_gpio.h
  • TMR14 : at32f403_tmr.h
  • TMR14_BASE : at32f403.h
  • TMR14_MUX : at32f403_gpio.h
  • TMR15 : at32f403_tmr.h
  • TMR15_BASE : at32f403.h
  • TMR15_BRK_IRQn : at32f403.h
  • TMR15_IRQn : at32f403.h
  • TMR15_MUX : at32f403_gpio.h
  • TMR15_OVF_IRQn : at32f403.h
  • TMR15_TRG_HALL_IRQn : at32f403.h
  • TMR1_BASE : at32f403.h
  • TMR1_BRK_TMR9_IRQHandler() : project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c
  • TMR1_BRK_TMR9_IRQn : at32f403.h
  • TMR1_C1DT_ADDRESS : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • TMR1_C2DT_ADDRESS : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • TMR1_CH_IRQn : at32f403.h
  • tmr1_config() : project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/exint/exint_software_trigger/src/main.c
  • TMR1_MUX_01 : at32f403_gpio.h
  • TMR1_MUX_11 : at32f403_gpio.h
  • TMR1_OVF_TMR10_IRQHandler() : project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/exint/exint_software_trigger/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c
  • TMR1_OVF_TMR10_IRQn : at32f403.h
  • TMR1_TRG_HALL_TMR11_IRQHandler() : project/at_start_f403/examples/tmr/6_steps/src/main.c
  • TMR1_TRG_HALL_TMR11_IRQn : at32f403.h
  • TMR2 : at32f403_tmr.h
  • TMR2_BASE : at32f403.h
  • tmr2_config() : project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c
  • TMR2_GLOBAL_IRQHandler() : project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c
  • TMR2_GLOBAL_IRQn : at32f403.h
  • TMR2_MUX_01 : at32f403_gpio.h
  • TMR2_MUX_10 : at32f403_gpio.h
  • TMR2_MUX_11 : at32f403_gpio.h
  • TMR3 : at32f403_tmr.h
  • TMR3_BASE : at32f403.h
  • TMR3_GLOBAL_IRQHandler() : project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, app_led3_toggle/src/tmr.c, app_led4_toggle/src/tmr.c, bootloader/src/tmr.c
  • TMR3_GLOBAL_IRQn : at32f403.h
  • TMR3_MUX_10 : at32f403_gpio.h
  • TMR3_MUX_11 : at32f403_gpio.h
  • tmr3freq : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • TMR4 : at32f403_tmr.h
  • TMR4_BASE : at32f403.h
  • TMR4_GLOBAL_IRQn : at32f403.h
  • TMR4_MUX : at32f403_gpio.h
  • TMR5 : at32f403_tmr.h
  • TMR5_BASE : at32f403.h
  • TMR5_GLOBAL_IRQHandler() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c
  • TMR5_GLOBAL_IRQn : at32f403.h
  • TMR5CH4_MUX : at32f403_gpio.h
  • TMR6 : at32f403_tmr.h
  • TMR6_BASE : at32f403.h
  • TMR6_GLOBAL_IRQn : at32f403.h
  • TMR7 : at32f403_tmr.h
  • TMR7_BASE : at32f403.h
  • TMR7_GLOBAL_IRQn : at32f403.h
  • TMR8 : at32f403_tmr.h
  • TMR8_BASE : at32f403.h
  • TMR8_BRK_TMR12_IRQn : at32f403.h
  • TMR8_CH_IRQn : at32f403.h
  • TMR8_OVF_TMR13_IRQn : at32f403.h
  • TMR8_TRG_HALL_TMR14_IRQn : at32f403.h
  • TMR9 : at32f403_tmr.h
  • TMR9_BASE : at32f403.h
  • TMR9_MUX : at32f403_gpio.h
  • tmr_32_bit_function_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_base_init() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_BRK_ADDRESS : at32f403_tmr.h
  • TMR_BRK_FLAG : at32f403_tmr.h
  • TMR_BRK_INPUT_ACTIVE_HIGH : at32f403_tmr.h
  • TMR_BRK_INPUT_ACTIVE_LOW : at32f403_tmr.h
  • TMR_BRK_INT : at32f403_tmr.h
  • tmr_brk_polarity_type : at32f403_tmr.h
  • TMR_BRK_SWTRIG : at32f403_tmr.h
  • tmr_brkdt_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_brkdt_config_struct : project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • tmr_brkdt_default_para_init() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_C1_DMA_REQUEST : at32f403_tmr.h
  • TMR_C1_FLAG : at32f403_tmr.h
  • TMR_C1_INT : at32f403_tmr.h
  • TMR_C1_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_C1_SWTRIG : at32f403_tmr.h
  • TMR_C1DT_ADDRESS : at32f403_tmr.h
  • TMR_C2_DMA_REQUEST : at32f403_tmr.h
  • TMR_C2_FLAG : at32f403_tmr.h
  • TMR_C2_INT : at32f403_tmr.h
  • TMR_C2_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_C2_SWTRIG : at32f403_tmr.h
  • TMR_C2DT_ADDRESS : at32f403_tmr.h
  • TMR_C3_DMA_REQUEST : at32f403_tmr.h
  • TMR_C3_FLAG : at32f403_tmr.h
  • TMR_C3_INT : at32f403_tmr.h
  • TMR_C3_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_C3_SWTRIG : at32f403_tmr.h
  • TMR_C3DT_ADDRESS : at32f403_tmr.h
  • TMR_C4_DMA_REQUEST : at32f403_tmr.h
  • TMR_C4_FLAG : at32f403_tmr.h
  • TMR_C4_INT : at32f403_tmr.h
  • TMR_C4_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_C4_SWTRIG : at32f403_tmr.h
  • TMR_C4DT_ADDRESS : at32f403_tmr.h
  • TMR_CC_CHANNEL_MAPPED_DIRECT : at32f403_tmr.h
  • TMR_CC_CHANNEL_MAPPED_INDIRECT : at32f403_tmr.h
  • TMR_CC_CHANNEL_MAPPED_STI : at32f403_tmr.h
  • TMR_CCTRL_ADDRESS : at32f403_tmr.h
  • TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR : at32f403_tmr.h
  • TMR_CHANEL1_CONNECTED_C1IRAW : at32f403_tmr.h
  • tmr_channel1_input_connected_type : at32f403_tmr.h
  • tmr_channel1_input_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_buffer_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_dma_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_enable() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_CHANNEL_INPUT_DIV_1 : at32f403_tmr.h
  • TMR_CHANNEL_INPUT_DIV_2 : at32f403_tmr.h
  • TMR_CHANNEL_INPUT_DIV_4 : at32f403_tmr.h
  • TMR_CHANNEL_INPUT_DIV_8 : at32f403_tmr.h
  • tmr_channel_input_divider_type : at32f403_tmr.h
  • tmr_channel_select_type : at32f403_tmr.h
  • tmr_channel_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_CLOCK_DIV1 : at32f403_tmr.h
  • TMR_CLOCK_DIV2 : at32f403_tmr.h
  • TMR_CLOCK_DIV4 : at32f403_tmr.h
  • tmr_clock_division_type : at32f403_tmr.h
  • tmr_clock_source_div_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_CM1_ADDRESS : at32f403_tmr.h
  • TMR_CM2_ADDRESS : at32f403_tmr.h
  • tmr_cnt_dir_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_COUNT_DOWN : at32f403_tmr.h
  • tmr_count_mode_type : at32f403_tmr.h
  • TMR_COUNT_TWO_WAY_1 : at32f403_tmr.h
  • TMR_COUNT_TWO_WAY_2 : at32f403_tmr.h
  • TMR_COUNT_TWO_WAY_3 : at32f403_tmr.h
  • TMR_COUNT_UP : at32f403_tmr.h
  • tmr_counter_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_counter_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_counter_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_CTRL1_ADDRESS : at32f403_tmr.h
  • TMR_CTRL2_ADDRESS : at32f403_tmr.h
  • TMR_CVAL_ADDRESS : at32f403_tmr.h
  • TMR_DIV_ADDRESS : at32f403_tmr.h
  • tmr_div_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_div_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_dma_address_type : at32f403_tmr.h
  • tmr_dma_control_config() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_DMA_REQUEST_BY_CHANNEL : at32f403_tmr.h
  • TMR_DMA_REQUEST_BY_OVERFLOW : at32f403_tmr.h
  • tmr_dma_request_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_dma_request_source_type : at32f403_tmr.h
  • tmr_dma_request_type : at32f403_tmr.h
  • TMR_DMA_TRANSFER_10BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_11BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_12BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_13BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_14BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_15BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_16BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_17BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_18BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_1BYTE : at32f403_tmr.h
  • TMR_DMA_TRANSFER_2BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_3BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_4BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_5BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_6BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_7BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_8BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_9BYTES : at32f403_tmr.h
  • tmr_dma_transfer_length_type : at32f403_tmr.h
  • TMR_DMACTRL_ADDRESS : at32f403_tmr.h
  • TMR_ENCODER_MODE_A : at32f403_tmr.h
  • TMR_ENCODER_MODE_B : at32f403_tmr.h
  • TMR_ENCODER_MODE_C : at32f403_tmr.h
  • tmr_encoder_mode_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_encoder_mode_type : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_1 : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_2 : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_4 : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_8 : at32f403_tmr.h
  • TMR_ES_POLARITY_INVERTED : at32f403_tmr.h
  • TMR_ES_POLARITY_NON_INVERTED : at32f403_tmr.h
  • tmr_event_sw_trigger() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_event_trigger_type : at32f403_tmr.h
  • tmr_external_clock_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_external_clock_mode1_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_external_clock_mode2_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_external_signal_divider_type : at32f403_tmr.h
  • tmr_external_signal_polarity_type : at32f403_tmr.h
  • tmr_flag_clear() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_flag_get() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_FORCE_OUTPUT_HIGH : at32f403_tmr.h
  • TMR_FORCE_OUTPUT_LOW : at32f403_tmr.h
  • tmr_force_output_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_force_output_type : at32f403_tmr.h
  • TMR_HALL_DMA_REQUEST : at32f403_tmr.h
  • TMR_HALL_FLAG : at32f403_tmr.h
  • TMR_HALL_INT : at32f403_tmr.h
  • tmr_hall_select() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_HALL_SWTRIG : at32f403_tmr.h
  • tmr_ic_init_structure : project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • TMR_IDEN_ADDRESS : at32f403_tmr.h
  • tmr_init() : app_led3_toggle/inc/tmr.h, app_led3_toggle/src/tmr.c, app_led4_toggle/inc/tmr.h, app_led4_toggle/src/tmr.c, bootloader/inc/tmr.h, bootloader/src/tmr.c
  • TMR_INPUT_BOTH_EDGE : at32f403_tmr.h
  • tmr_input_channel_divider_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_input_channel_filter_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_input_channel_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_input_config_struct : project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c
  • tmr_input_default_para_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_input_direction_mapped_type : at32f403_tmr.h
  • TMR_INPUT_FALLING_EDGE : at32f403_tmr.h
  • tmr_input_polarity_type : at32f403_tmr.h
  • TMR_INPUT_RISING_EDGE : at32f403_tmr.h
  • tmr_internal_clock_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_interrupt_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_interrupt_flag_get() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_ISTS_ADDRESS : at32f403_tmr.h
  • TMR_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • tmr_oc_init_structure : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • tmr_one_cycle_mode_enable() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_OUTPUT_ACTIVE_HIGH : at32f403_tmr.h
  • TMR_OUTPUT_ACTIVE_LOW : at32f403_tmr.h
  • tmr_output_channel_buffer_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_immediately_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_mode_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_polarity_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_switch_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_OUTPUT_CONTROL_FORCE_HIGH : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_FORCE_LOW : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_HIGH : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_LOW : at32f403_tmr.h
  • tmr_output_control_mode_type : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_OFF : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_PWM_MODE_A : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_PWM_MODE_B : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_SWITCH : at32f403_tmr.h
  • tmr_output_default_para_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_polarity_type : at32f403_tmr.h
  • tmr_output_struct : project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/cascade_synchro/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c
  • TMR_OVERFLOW_DMA_REQUEST : at32f403_tmr.h
  • tmr_overflow_event_disable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_overflow_request_source_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_OVERFLOW_SWTRIG : at32f403_tmr.h
  • TMR_OVF_FLAG : at32f403_tmr.h
  • TMR_OVF_INT : at32f403_tmr.h
  • tmr_period_buffer_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_period_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_period_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_POLARITY_ACTIVE_BOTH : at32f403_tmr.h
  • TMR_POLARITY_ACTIVE_HIGH : at32f403_tmr.h
  • TMR_POLARITY_ACTIVE_LOW : at32f403_tmr.h
  • tmr_polarity_active_type : at32f403_tmr.h
  • TMR_PR_ADDRESS : at32f403_tmr.h
  • tmr_primary_mode_select() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_PRIMARY_SEL_C1ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_C2ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_C3ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_C4ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_COMPARE : at32f403_tmr.h
  • TMR_PRIMARY_SEL_ENABLE : at32f403_tmr.h
  • TMR_PRIMARY_SEL_OVERFLOW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_RESET : at32f403_tmr.h
  • tmr_primary_select_type : at32f403_tmr.h
  • tmr_pwm_input_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_repetition_counter_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_reset() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_RPR_ADDRESS : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_1 : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_1C : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_2 : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_2C : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_3 : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_3C : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_4 : at32f403_tmr.h
  • TMR_STCTRL_ADDRESS : at32f403_tmr.h
  • TMR_SUB_ENCODER_MODE_A : at32f403_tmr.h
  • TMR_SUB_ENCODER_MODE_B : at32f403_tmr.h
  • TMR_SUB_ENCODER_MODE_C : at32f403_tmr.h
  • TMR_SUB_EXTERNAL_CLOCK_MODE_A : at32f403_tmr.h
  • TMR_SUB_HANG_MODE : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_C1DF1 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_C1INC : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_C2DF2 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_EXTIN : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS0 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS1 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS2 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS3 : at32f403_tmr.h
  • TMR_SUB_MODE_DIABLE : at32f403_tmr.h
  • tmr_sub_mode_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_sub_mode_select_type : at32f403_tmr.h
  • TMR_SUB_RESET_MODE : at32f403_tmr.h
  • tmr_sub_sync_mode_set() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_SUB_TRIGGER_MODE : at32f403_tmr.h
  • TMR_SWEVT_ADDRESS : at32f403_tmr.h
  • TMR_TRIGGER_DMA_REQUEST : at32f403_tmr.h
  • TMR_TRIGGER_FLAG : at32f403_tmr.h
  • tmr_trigger_input_select() : at32f403_tmr.h, at32f403_tmr.c
  • TMR_TRIGGER_INT : at32f403_tmr.h
  • TMR_TRIGGER_SWTRIG : at32f403_tmr.h
  • TMR_WP_LEVEL_1 : at32f403_tmr.h
  • TMR_WP_LEVEL_2 : at32f403_tmr.h
  • TMR_WP_LEVEL_3 : at32f403_tmr.h
  • tmr_wp_level_type : at32f403_tmr.h
  • TMR_WP_OFF : at32f403_tmr.h
  • touch_adjust() : touch.h, touch.c
  • touch_dev_struct : touch.h, touch.c
  • touch_pin_init() : touch.h, touch.c
  • touch_read_1byte() : touch.h, touch.c
  • touch_read_ad() : touch.h, touch.c
  • touch_read_x_or_y() : touch.h, touch.c
  • touch_read_xy() : touch.h, touch.c
  • touch_scan() : touch.h, touch.c
  • touch_struct : touch.h, touch.c
  • touch_write_1byte() : touch.h, touch.c
  • TPL_LINK_LOC : cf.h
  • transfer_end : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • transfer_error : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • transfer_status : project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c
  • transfer_status1 : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c
  • transfer_status2 : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c
  • transfer_status3 : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c
  • transfer_status4 : project/at_start_f403/examples/spi/fullduplex_polling/src/main.c
  • Translate_CHSAddr() : cf.c
  • TRUE : cf.h, at32f403.h
  • tx_buf : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c
  • tx_buf1 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • tx_buf2 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • tx_buf3 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • tx_buffer : project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • tx_counter : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • tx_data_fill() : project/at_start_f403/examples/spi/w25q_flash/src/main.c
  • tx_index : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • txbuffer : project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- u -

  • u16 : at32f403.h
  • u32 : at32f403.h
  • u32i : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • u8 : at32f403.h
  • UART4_BASE : at32f403.h
  • UART4_IRQn : at32f403.h
  • UART5_BASE : at32f403.h
  • UART5_IRQn : at32f403.h
  • uart_init() : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c, app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c, bootloader/inc/usart.h, bootloader/src/usart.c
  • uart_print_init() : at32f403_board.c, at32f403_board.h
  • uc16 : at32f403.h
  • uc32 : at32f403.h
  • uc8 : at32f403.h
  • UINT16 : at32f403.h
  • UINT32 : at32f403.h
  • UINT8 : at32f403.h
  • UNC_BIT : cf.h
  • UNLOCKED : cf.h
  • UNUSED : at32f403_def.h
  • UP_MOVE : mouse_class.h
  • UPDATE_CLEAR_FLAG : bootloader/inc/iap.h
  • UPDATE_DONE : bootloader/inc/iap.h
  • UPDATE_ING : bootloader/inc/iap.h
  • UPDATE_PRE : bootloader/inc/iap.h
  • update_status : bootloader/inc/iap.h, bootloader/src/iap.c
  • update_status_type : bootloader/inc/iap.h
  • UPGRADE_DONE : flash_fat16.h
  • UPGRADE_FAILED : flash_fat16.h
  • UPGRADE_JUMP : flash_fat16.h
  • UPGRADE_LARGE : flash_fat16.h
  • UPGRADE_READY : flash_fat16.h
  • upgrade_status_type : flash_fat16.h
  • UPGRADE_SUCCESS : flash_fat16.h
  • UPGRADE_UNKNOWN : flash_fat16.h
  • UPGRAGE_ONGOING : flash_fat16.h
  • UsageFault_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • UsageFault_IRQn : at32f403.h
  • USART1 : at32f403_usart.h
  • USART1_BASE : at32f403.h
  • usart1_config() : project/at_start_f403/examples/pwc/sleep_usart1/src/main.c
  • usart1_index : project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c
  • USART1_IRQHandler() : project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, app_led3_toggle/src/usart.c, app_led4_toggle/src/usart.c, bootloader/src/usart.c
  • USART1_IRQn : at32f403.h
  • USART1_MUX : at32f403_gpio.h
  • USART2 : at32f403_usart.h
  • USART2_BASE : at32f403.h
  • USART2_IRQHandler() : project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/src/main.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • USART2_IRQn : at32f403.h
  • USART2_MUX : at32f403_gpio.h
  • usart2_rx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart2_rx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • usart2_rx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • usart2_tx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • USART2_TX_BUFFER_SIZE : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart2_tx_buffer_size : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • usart2_tx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • usart2_tx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • USART3 : at32f403_usart.h
  • USART3_BASE : at32f403.h
  • USART3_IRQHandler() : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c
  • USART3_IRQn : at32f403.h
  • USART3_MUX_01 : at32f403_gpio.h
  • USART3_MUX_11 : at32f403_gpio.h
  • usart3_rx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart3_rx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c
  • usart3_rx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • usart3_tx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart3_tx_buffer_size : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c
  • USART3_TX_BUFFER_SIZE : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart3_tx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c
  • usart3_tx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • USART_BF_INT : at32f403_usart.h
  • USART_BFF_FLAG : at32f403_usart.h
  • USART_BREAK_10BITS : at32f403_usart.h
  • USART_BREAK_11BITS : at32f403_usart.h
  • usart_break_bit_num_set() : at32f403_usart.h, at32f403_usart.c
  • usart_break_bit_num_type : at32f403_usart.h
  • usart_break_send() : at32f403_usart.h, at32f403_usart.c
  • usart_buffer_size : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_clock_config() : at32f403_usart.h, at32f403_usart.c
  • usart_clock_enable() : at32f403_usart.h, at32f403_usart.c
  • USART_CLOCK_LAST_BIT_NONE : at32f403_usart.h
  • USART_CLOCK_LAST_BIT_OUTPUT : at32f403_usart.h
  • USART_CLOCK_PHASE_1EDGE : at32f403_usart.h
  • USART_CLOCK_PHASE_2EDGE : at32f403_usart.h
  • usart_clock_phase_type : at32f403_usart.h
  • USART_CLOCK_POLARITY_HIGH : at32f403_usart.h
  • USART_CLOCK_POLARITY_LOW : at32f403_usart.h
  • usart_clock_polarity_type : at32f403_usart.h
  • usart_configuration() : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/usart/idle_detection/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/irda/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • USART_CTSCF_FLAG : at32f403_usart.h
  • USART_CTSCF_INT : at32f403_usart.h
  • USART_DATA_8BITS : at32f403_usart.h
  • USART_DATA_9BITS : at32f403_usart.h
  • usart_data_bit_num_type : at32f403_usart.h
  • usart_data_receive() : at32f403_usart.h, at32f403_usart.c
  • usart_data_transmit() : at32f403_usart.h, at32f403_usart.c
  • usart_dma_receiver_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_dma_transmitter_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_enable() : at32f403_usart.h, at32f403_usart.c
  • USART_ERR_INT : at32f403_usart.h
  • USART_FERR_FLAG : at32f403_usart.h
  • usart_flag_clear() : at32f403_usart.h, at32f403_usart.c
  • usart_flag_get() : at32f403_usart.h, at32f403_usart.c
  • usart_gpio_config() : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_group_struct : bootloader/inc/usart.h, bootloader/src/usart.c
  • usart_hardware_flow_control_set() : at32f403_usart.h, at32f403_usart.c
  • usart_hardware_flow_control_type : at32f403_usart.h
  • USART_HARDWARE_FLOW_CTS : at32f403_usart.h
  • USART_HARDWARE_FLOW_NONE : at32f403_usart.h
  • USART_HARDWARE_FLOW_RTS : at32f403_usart.h
  • USART_HARDWARE_FLOW_RTS_CTS : at32f403_usart.h
  • USART_IDLE_INT : at32f403_usart.h
  • USART_IDLEF_FLAG : at32f403_usart.h
  • usart_init() : at32f403_usart.h, at32f403_usart.c
  • usart_interrupt_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_interrupt_flag_get() : at32f403_usart.h, at32f403_usart.c
  • usart_irda_low_power_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_irda_mode_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_irda_smartcard_division_set() : at32f403_usart.h, at32f403_usart.c
  • usart_lbcp_type : at32f403_usart.h
  • usart_lin_mode_enable() : at32f403_usart.h, at32f403_usart.c
  • USART_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • USART_NERR_FLAG : at32f403_usart.h
  • USART_PARITY_EVEN : at32f403_usart.h
  • USART_PARITY_NONE : at32f403_usart.h
  • USART_PARITY_ODD : at32f403_usart.h
  • usart_parity_selection_config() : at32f403_usart.h, at32f403_usart.c
  • usart_parity_selection_type : at32f403_usart.h
  • USART_PERR_FLAG : at32f403_usart.h
  • USART_PERR_INT : at32f403_usart.h
  • USART_RDBF_FLAG : at32f403_usart.h
  • USART_RDBF_INT : at32f403_usart.h
  • USART_REC_LEN : bootloader/inc/usart.h
  • usart_receive_data() : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_receiver_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_receiver_mute_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_reset() : at32f403_usart.h, at32f403_usart.c
  • USART_ROERR_FLAG : at32f403_usart.h
  • usart_rx_buffer : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_rx_data_len : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_send_data() : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_single_line_halfduplex_select() : at32f403_usart.h, at32f403_usart.c
  • usart_smartcard_guard_time_set() : at32f403_usart.h, at32f403_usart.c
  • usart_smartcard_mode_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_smartcard_nack_set() : at32f403_usart.h, at32f403_usart.c
  • usart_spi_configuration() : project/at_start_f403/examples/usart/synchronous/src/main.c
  • USART_STOP_0_5_BIT : at32f403_usart.h
  • USART_STOP_1_5_BIT : at32f403_usart.h
  • USART_STOP_1_BIT : at32f403_usart.h
  • USART_STOP_2_BIT : at32f403_usart.h
  • usart_stop_bit_num_type : at32f403_usart.h
  • USART_TDBE_FLAG : at32f403_usart.h
  • USART_TDBE_INT : at32f403_usart.h
  • USART_TDC_FLAG : at32f403_usart.h
  • USART_TDC_INT : at32f403_usart.h
  • usart_transmitter_enable() : at32f403_usart.h, at32f403_usart.c
  • USART_WAKEUP_BY_IDLE_FRAME : at32f403_usart.h
  • USART_WAKEUP_BY_MATCHING_ID : at32f403_usart.h
  • usart_wakeup_id_set() : at32f403_usart.h, at32f403_usart.c
  • usart_wakeup_mode_set() : at32f403_usart.h, at32f403_usart.c
  • usart_wakeup_mode_type : at32f403_usart.h
  • USB : at32f403_usb.h
  • USB_BE_FLAG : at32f403_usb.h
  • USB_BE_INT : at32f403_usb.h
  • usb_buffer : project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usb_buffer_free() : at32f403_usb.h, at32f403_usb.c
  • usb_buffer_malloc() : at32f403_usb.h, at32f403_usb.c
  • USB_BUFFER_SIZE_EX : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h
  • USB_BUFFER_TABLE_ADDRESS : at32f403_usb.h
  • USB_CLASS_CODE_AUDIO : usb_std.h
  • USB_CLASS_CODE_CCID : usb_std.h
  • USB_CLASS_CODE_CDC : usb_std.h
  • USB_CLASS_CODE_CDCDATA : usb_std.h
  • USB_CLASS_CODE_HID : usb_std.h
  • USB_CLASS_CODE_HUB : usb_std.h
  • USB_CLASS_CODE_MSC : usb_std.h
  • USB_CLASS_CODE_PRINTER : usb_std.h
  • USB_CLASS_CODE_VENDOR : usb_std.h
  • USB_CLASS_CODE_VIDEO : usb_std.h
  • USB_CLEAR_EPT_DOUBLE_BUFFER : at32f403_usb.h
  • USB_CLEAR_EXF : at32f403_usb.h
  • USB_CLEAR_RXDTS : at32f403_usb.h
  • USB_CLEAR_RXTC : at32f403_usb.h
  • USB_CLEAR_TXDTS : at32f403_usb.h
  • USB_CLEAR_TXTC : at32f403_usb.h
  • usb_clk48_s : at32f403_usb.h
  • USB_CLK_HEXT : at32f403_usb.h
  • USB_CLK_HICK : at32f403_usb.h
  • usb_clock48m_select() : project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c
  • USB_CONF_REMOTE_WAKEUP : usb_std.h
  • USB_CONF_SELF_POWERED : usb_std.h
  • USB_CONFIG_STRING : usb_std.h
  • USB_CONN_STATE_ADDRESSED : usb_std.h
  • USB_CONN_STATE_CONFIGURED : usb_std.h
  • USB_CONN_STATE_DEFAULT : usb_std.h
  • USB_CONN_STATE_SUSPENDED : usb_std.h
  • usb_connect() : at32f403_usb.h, at32f403_usb.c
  • usb_core_dev : project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c
  • USB_DBUF0_GET_LEN : at32f403_usb.h
  • USB_DBUF1_GET_LEN : at32f403_usb.h
  • usb_delay_ms() : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h, project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h
  • usb_delay_us() : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h, project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h
  • USB_DESCIPTOR_TYPE_CONFIGURATION : usb_std.h
  • USB_DESCIPTOR_TYPE_DEVICE : usb_std.h
  • USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER : usb_std.h
  • USB_DESCIPTOR_TYPE_ENDPOINT : usb_std.h
  • USB_DESCIPTOR_TYPE_INTERFACE : usb_std.h
  • USB_DESCIPTOR_TYPE_INTERFACE_POWER : usb_std.h
  • USB_DESCIPTOR_TYPE_OTHER_SPEED : usb_std.h
  • USB_DESCIPTOR_TYPE_STRING : usb_std.h
  • usb_dev_init() : at32f403_usb.h, at32f403_usb.c
  • USB_DEVICE_CFG_DESC_LEN : usb_std.h
  • USB_DEVICE_DESC_LEN : usb_std.h
  • USB_DEVICE_EPT_LEN : usb_std.h
  • USB_DEVICE_IF_DESC_LEN : usb_std.h
  • USB_DEVICE_LANGID_STR_DESC_LEN : usb_std.h
  • USB_DEVICE_OTG_DESC_LEN : usb_std.h
  • USB_DEVICE_OTHER_SPEED_DESC_SIZ_LEN : usb_std.h
  • USB_DEVICE_QUALIFIER_DESC_LEN : usb_std.h
  • usb_disconnect() : at32f403_usb.h, at32f403_usb.c
  • USB_ENDP_DESC_TABLE_OFFSET : at32f403_usb.c
  • usb_enter_suspend() : at32f403_usb.h, at32f403_usb.c
  • USB_EPT0 : at32f403_usb.h
  • USB_EPT0_DATA_IN : usb_std.h
  • USB_EPT0_DATA_OUT : usb_std.h
  • USB_EPT0_IDLE : usb_std.h
  • USB_EPT0_SETUP : usb_std.h
  • USB_EPT0_STALL : usb_std.h
  • USB_EPT0_STATUS_IN : usb_std.h
  • USB_EPT0_STATUS_OUT : usb_std.h
  • USB_EPT1 : at32f403_usb.h
  • USB_EPT2 : at32f403_usb.h
  • USB_EPT3 : at32f403_usb.h
  • USB_EPT4 : at32f403_usb.h
  • USB_EPT5 : at32f403_usb.h
  • USB_EPT6 : at32f403_usb.h
  • USB_EPT7 : at32f403_usb.h
  • USB_EPT_AUTO_MALLOC_BUFFER : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h, project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h
  • USB_EPT_BIT_MASK : at32f403_usb.h
  • USB_EPT_BULK : at32f403_usb.h
  • usb_ept_close() : at32f403_usb.h, at32f403_usb.c
  • USB_EPT_CONTROL : at32f403_usb.h
  • USB_EPT_DESC_BULK : usb_std.h
  • USB_EPT_DESC_CONTROL : usb_std.h
  • USB_EPT_DESC_DATA_EPT : usb_std.h
  • USB_EPT_DESC_FD_EPT : usb_std.h
  • USB_EPT_DESC_FDDATA_EPT : usb_std.h
  • USB_EPT_DESC_INTERRUPT : usb_std.h
  • USB_EPT_DESC_ISO : usb_std.h
  • USB_EPT_DESC_NSYNC : usb_std.h
  • USB_EPT_INT : at32f403_usb.h
  • USB_EPT_ISO : at32f403_usb.h
  • USB_EPT_NUM_FLAG : at32f403_usb.h
  • usb_ept_number_type : at32f403_usb.h
  • usb_ept_open() : at32f403_usb.h, at32f403_usb.c
  • usb_ept_stall() : at32f403_usb.h, at32f403_usb.c
  • USB_EPTADDR : at32f403_usb.h
  • USB_ERROR : usb_std.h
  • USB_ETP_DESC_ADAPTIVE : usb_std.h
  • USB_ETP_DESC_ASYNC : usb_std.h
  • USB_ETP_DESC_SYNC : usb_std.h
  • USB_EXF : at32f403_usb.h
  • usb_exit_suspend() : at32f403_usb.h, at32f403_usb.c
  • USB_FAIL : usb_std.h
  • USB_FEATURE_EPT_HALT : usb_std.h
  • USB_FEATURE_REMOTE_WAKEUP : usb_std.h
  • USB_FEATURE_TEST_MODE : usb_std.h
  • usb_flag_clear() : at32f403_usb.h, at32f403_usb.c
  • usb_flag_get() : at32f403_usb.h, at32f403_usb.c
  • USB_FLASH_ADDR_OFFSET : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • USB_FREE_DB_USER_BUFFER : at32f403_usb.h
  • USB_GET_RX_LEN : at32f403_usb.h
  • USB_GET_TX_LEN : at32f403_usb.h
  • usb_hid_buf_process() : audio_hid_class.c, custom_hid_class.c
  • usb_hid_keyboard_send_char() : keyboard_class.c, keyboard_class.h
  • usb_hid_mouse_send() : mouse_class.c, mouse_class.h
  • usb_iap_class_send_report() : hid_iap_class.c, hid_iap_class.h
  • USB_INOUT_FLAG : at32f403_usb.h
  • USB_INTERFACE_ASSOCIATION_TYPE : cdc_msc_desc.c
  • USB_INTERFACE_STRING : usb_std.h
  • usb_interrupt_enable() : at32f403_usb.h, at32f403_usb.c
  • usb_interrupt_flag_get() : at32f403_usb.h, at32f403_usb.c
  • usb_keyboard_class_send_report() : keyboard_class.c, keyboard_class.h
  • USB_LANGID_STRING : usb_std.h
  • usb_low_power_wakeup_config() : project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c
  • USB_LOW_POWER_WAKUP : project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h
  • USB_LSOF_FLAG : at32f403_usb.h
  • USB_LSOF_INT : at32f403_usb.h
  • USB_MAX_EP0_SIZE : usb_std.h
  • USB_MFC_STRING : usb_std.h
  • USB_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • usb_mouse_class_send_report() : mouse_class.c, mouse_class.h
  • USB_NOT_SUPPORT : usb_std.h
  • USB_OK : usb_std.h
  • USB_OUT_EPT_DOUBLE_BUF0 : at32f403_usb.h
  • USB_PACKET_BUFFER_ADDRESS : at32f403_usb.h
  • USB_PACKET_BUFFER_ADDRESS_EX : at32f403_usb.h
  • usb_printer_get_rxdata() : printer_class.c, printer_class.h
  • usb_printer_send_data() : printer_class.c, printer_class.h
  • USB_PRODUCT_STRING : usb_std.h
  • usb_read_packet() : at32f403_usb.h, at32f403_usb.c
  • usb_reg_type : at32f403_usb.h
  • usb_remote_wkup_clear() : at32f403_usb.h, at32f403_usb.c
  • usb_remote_wkup_set() : at32f403_usb.h, at32f403_usb.c
  • USB_REQ_DIR_DTH : usb_std.h
  • USB_REQ_DIR_HTD : usb_std.h
  • USB_REQ_RECIPIENT_DEVICE : usb_std.h
  • USB_REQ_RECIPIENT_ENDPOINT : usb_std.h
  • USB_REQ_RECIPIENT_INTERFACE : usb_std.h
  • USB_REQ_RECIPIENT_MASK : usb_std.h
  • USB_REQ_RECIPIENT_OTHER : usb_std.h
  • USB_REQ_TYPE_CLASS : usb_std.h
  • USB_REQ_TYPE_RESERVED : usb_std.h
  • USB_REQ_TYPE_STANDARD : usb_std.h
  • USB_REQ_TYPE_VENDOR : usb_std.h
  • usb_reset() : project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c
  • USB_RST_FLAG : at32f403_usb.h
  • USB_RST_INT : at32f403_usb.h
  • USB_RX_DISABLE : at32f403_usb.h
  • USB_RX_MASK : at32f403_usb.h
  • USB_RX_NAK : at32f403_usb.h
  • USB_RX_STALL : at32f403_usb.h
  • USB_RX_VALID : at32f403_usb.h
  • USB_RXDTS : at32f403_usb.h
  • USB_RXDTS0 : at32f403_usb.h
  • USB_RXDTS1 : at32f403_usb.h
  • USB_RXSTS : at32f403_usb.h
  • USB_RXTC : at32f403_usb.h
  • USB_SERIAL_STRING : usb_std.h
  • usb_set_address() : at32f403_usb.h, at32f403_usb.c
  • USB_SET_DOUBLE_BUFF0_ADDRESS : at32f403_usb.h
  • USB_SET_DOUBLE_BUFF1_ADDRESS : at32f403_usb.h
  • USB_SET_EPT_ADDRESS : at32f403_usb.h
  • USB_SET_EPT_DOUBLE_BUF0_LEN : at32f403_usb.h
  • USB_SET_EPT_DOUBLE_BUF1_LEN : at32f403_usb.h
  • USB_SET_EPT_DOUBLE_BUFFER : at32f403_usb.h
  • USB_SET_EXF : at32f403_usb.h
  • USB_SET_RX_ADDRESS : at32f403_usb.h
  • USB_SET_RXLEN : at32f403_usb.h
  • USB_SET_RXLEN_REG : at32f403_usb.h
  • USB_SET_RXSTS : at32f403_usb.h
  • USB_SET_TRANS_TYPE : at32f403_usb.h
  • USB_SET_TX_ADDRESS : at32f403_usb.h
  • USB_SET_TXLEN : at32f403_usb.h
  • USB_SET_TXSTS : at32f403_usb.h
  • USB_SETUPTC : at32f403_usb.h
  • USB_SOF_FLAG : at32f403_usb.h
  • USB_SOF_INT : at32f403_usb.h
  • USB_SP_FLAG : at32f403_usb.h
  • USB_SP_INT : at32f403_usb.h
  • USB_STD_REQ_CLEAR_FEATURE : usb_std.h
  • USB_STD_REQ_GET_CONFIGURATION : usb_std.h
  • USB_STD_REQ_GET_DESCRIPTOR : usb_std.h
  • USB_STD_REQ_GET_INTERFACE : usb_std.h
  • USB_STD_REQ_GET_STATUS : usb_std.h
  • USB_STD_REQ_SET_ADDRESS : usb_std.h
  • USB_STD_REQ_SET_CONFIGURATION : usb_std.h
  • USB_STD_REQ_SET_DESCRIPTOR : usb_std.h
  • USB_STD_REQ_SET_FEATURE : usb_std.h
  • USB_STD_REQ_SET_INTERFACE : usb_std.h
  • USB_STD_REQ_SYNCH_FRAME : usb_std.h
  • usb_sts_type : usb_std.h
  • USB_TC_FLAG : at32f403_usb.h
  • USB_TC_INT : at32f403_usb.h
  • USB_TOGGLE_RXDTS : at32f403_usb.h
  • USB_TOGGLE_TXDTS : at32f403_usb.h
  • USB_TRANS_TYPE : at32f403_usb.h
  • USB_TX_DISABLE : at32f403_usb.h
  • USB_TX_MASK : at32f403_usb.h
  • USB_TX_NAK : at32f403_usb.h
  • USB_TX_STALL : at32f403_usb.h
  • USB_TX_VALID : at32f403_usb.h
  • USB_TXDTS : at32f403_usb.h
  • USB_TXDTS0 : at32f403_usb.h
  • USB_TXDTS1 : at32f403_usb.h
  • USB_TXSTS : at32f403_usb.h
  • USB_TXTC : at32f403_usb.h
  • USB_UCFOR_FLAG : at32f403_usb.h
  • USB_UCFOR_INT : at32f403_usb.h
  • usb_usart_config() : cdc_class.c, cdc_msc_class.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usb_usbbufs_enable() : at32f403_usb.h, at32f403_usb.c
  • usb_vcp_cmd_process() : cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c
  • usb_vcp_get_rxdata() : cdc_class.c, cdc_class.h, cdc_msc_class.c, cdc_msc_class.h
  • usb_vcp_send_data() : cdc_class.c, cdc_class.h, cdc_msc_class.c, cdc_msc_class.h
  • usb_vcpkybrd_class_send_report() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • usb_vcpkybrd_keyboard_send_char() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • usb_vcpkybrd_vcp_get_rxdata() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • usb_vcpkybrd_vcp_send_data() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • USB_VIRTUAL_COMPORT : project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • USB_WAIT : usb_std.h
  • USB_WK_FLAG : at32f403_usb.h
  • USB_WK_INT : at32f403_usb.h
  • usb_write_packet() : at32f403_usb.h, at32f403_usb.c
  • USBD_AUDIO_CONFIG_DESC_SIZE : audio_desc.h
  • USBD_AUDIO_DESC_CONFIGURATION_STRING : audio_desc.h
  • USBD_AUDIO_DESC_INTERFACE_STRING : audio_desc.h
  • USBD_AUDIO_DESC_MANUFACTURER_STRING : audio_desc.h
  • USBD_AUDIO_DESC_PRODUCT_STRING : audio_desc.h
  • USBD_AUDIO_FEEDBACK_EPT : audio_class.h
  • USBD_AUDIO_MIC_IN_EPT : audio_class.h
  • USBD_AUDIO_PRODUCT_ID : audio_desc.h
  • USBD_AUDIO_SIZ_STRING_LANGID : audio_desc.h
  • USBD_AUDIO_SIZ_STRING_SERIAL : audio_desc.h
  • USBD_AUDIO_SPK_OUT_EPT : audio_class.h
  • USBD_AUDIO_VENDOR_ID : audio_desc.h
  • USBD_AUHID_AUDIO_FEEDBACK_EPT : audio_hid_class.h
  • USBD_AUHID_AUDIO_MIC_IN_EPT : audio_hid_class.h
  • USBD_AUHID_AUDIO_SPK_OUT_EPT : audio_hid_class.h
  • USBD_AUHID_CONFIG_DESC_SIZE : audio_hid_desc.h
  • USBD_AUHID_DESC_CONFIGURATION_STRING : audio_hid_desc.h
  • USBD_AUHID_DESC_INTERFACE_STRING : audio_hid_desc.h
  • USBD_AUHID_DESC_MANUFACTURER_STRING : audio_hid_desc.h
  • USBD_AUHID_DESC_PRODUCT_STRING : audio_hid_desc.h
  • USBD_AUHID_HID_DESC_SIZE : audio_hid_desc.h
  • USBD_AUHID_HID_IN_EPT : audio_hid_class.h
  • USBD_AUHID_HID_OUT_EPT : audio_hid_class.h
  • USBD_AUHID_HID_SIZ_REPORT_DESC : audio_hid_desc.h
  • USBD_AUHID_IN_MAXPACKET_SIZE : audio_hid_class.h
  • USBD_AUHID_OUT_MAXPACKET_SIZE : audio_hid_class.h
  • USBD_AUHID_PRODUCT_ID : audio_hid_desc.h
  • USBD_AUHID_SIZ_STRING_LANGID : audio_hid_desc.h
  • USBD_AUHID_SIZ_STRING_SERIAL : audio_hid_desc.h
  • USBD_AUHID_VENDOR_ID : audio_hid_desc.h
  • USBD_CDC_BULK_IN_EPT : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_BULK_OUT_EPT : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_CMD_MAXPACKET_SIZE : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_CONFIG_DESC_SIZE : cdc_desc.h
  • USBD_CDC_CS_ENDPOINT : usb_std.h
  • USBD_CDC_CS_INTERFACE : usb_std.h
  • USBD_CDC_DESC_CONFIGURATION_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_DESC_INTERFACE_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_DESC_MANUFACTURER_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_DESC_PRODUCT_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_IN_MAXPACKET_SIZE : cdc_class.h
  • USBD_CDC_INT_EPT : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_MSC_CONFIG_DESC_SIZE : cdc_msc_desc.h
  • USBD_CDC_MSC_IN_MAXPACKET_SIZE : cdc_msc_class.h
  • USBD_CDC_MSC_OUT_MAXPACKET_SIZE : cdc_msc_class.h
  • USBD_CDC_MSC_PRODUCT_ID : cdc_msc_desc.h
  • USBD_CDC_MSC_VENDOR_ID : cdc_msc_desc.h
  • USBD_CDC_OUT_MAXPACKET_SIZE : cdc_class.h
  • USBD_CDC_PRODUCT_ID : cdc_desc.h
  • USBD_CDC_SIZ_STRING_LANGID : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_SIZ_STRING_SERIAL : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_SUBTYPE_ACM : usb_std.h
  • USBD_CDC_SUBTYPE_CMF : usb_std.h
  • USBD_CDC_SUBTYPE_HEADER : usb_std.h
  • USBD_CDC_SUBTYPE_UFD : usb_std.h
  • USBD_CDC_VENDOR_ID : cdc_desc.h
  • usbd_clear_feature() : usbd_sdr.c
  • usbd_clear_stall() : usbd_core.h, usbd_core.c
  • usbd_conn_state : usb_std.h
  • usbd_connect() : usbd_core.h, usbd_core.c
  • usbd_connect_state_get() : usbd_core.h, usbd_core.c
  • usbd_core_in_handler() : usbd_core.h, usbd_core.c
  • usbd_core_init() : usbd_core.h, usbd_core.c
  • usbd_core_out_handler() : usbd_core.h, usbd_core.c
  • usbd_core_setup_handler() : usbd_core.h, usbd_core.c
  • usbd_ctrl_recv() : usbd_core.h, usbd_core.c
  • usbd_ctrl_recv_status() : usbd_core.h, usbd_core.c
  • usbd_ctrl_send() : usbd_core.h, usbd_core.c
  • usbd_ctrl_send_status() : usbd_core.h, usbd_core.c
  • usbd_ctrl_unsupport() : usbd_core.h, usbd_core.c
  • USBD_CUSHID_CONFIG_DESC_SIZE : custom_hid_desc.h
  • USBD_CUSHID_DESC_CONFIGURATION_STRING : custom_hid_desc.h
  • USBD_CUSHID_DESC_INTERFACE_STRING : custom_hid_desc.h
  • USBD_CUSHID_DESC_MANUFACTURER_STRING : custom_hid_desc.h
  • USBD_CUSHID_DESC_PRODUCT_STRING : custom_hid_desc.h
  • USBD_CUSHID_PRODUCT_ID : custom_hid_desc.h
  • USBD_CUSHID_SIZ_REPORT_DESC : custom_hid_desc.h
  • USBD_CUSHID_SIZ_STRING_LANGID : custom_hid_desc.h
  • USBD_CUSHID_SIZ_STRING_SERIAL : custom_hid_desc.h
  • USBD_CUSHID_VENDOR_ID : custom_hid_desc.h
  • USBD_CUSTOM_HID_IN_EPT : custom_hid_class.h
  • USBD_CUSTOM_HID_OUT_EPT : custom_hid_class.h
  • USBD_CUSTOM_IN_MAXPACKET_SIZE : custom_hid_class.h
  • USBD_CUSTOM_OUT_MAXPACKET_SIZE : custom_hid_class.h
  • usbd_device_request() : usbd_sdr.h, usbd_sdr.c
  • usbd_disconnect() : usbd_core.h, usbd_core.c
  • usbd_endpoint_request() : usbd_sdr.h, usbd_sdr.c
  • usbd_enter_suspend() : usbd_core.h, usbd_core.c
  • usbd_ept_buf_auto_define() : usbd_core.h, usbd_core.c
  • usbd_ept_buf_custom_define() : usbd_core.h, usbd_core.c
  • usbd_ept_close() : usbd_core.h, usbd_core.c
  • usbd_ept_dbuffer_enable() : usbd_core.h, usbd_core.c
  • usbd_ept_defaut_init() : usbd_core.h, usbd_core.c
  • usbd_ept_loop_handler() : usbd_int.h, usbd_int.c
  • usbd_ept_open() : usbd_core.h, usbd_core.c
  • usbd_ept_recv() : usbd_core.h, usbd_core.c
  • usbd_ept_send() : usbd_core.h, usbd_core.c
  • usbd_eptn_handler() : usbd_int.h, usbd_int.c
  • USBD_ERR_EVENT : usbd_core.h
  • usbd_event_type : usbd_core.h
  • usbd_get_configuration() : usbd_sdr.c
  • usbd_get_descriptor() : usbd_sdr.c
  • usbd_get_recv_len() : usbd_core.h, usbd_core.c
  • usbd_get_status() : usbd_sdr.c
  • usbd_hid_iap_in_complete() : hid_iap_class.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • usbd_hid_iap_process() : hid_iap_class.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • USBD_HIDIAP_CONFIG_DESC_SIZE : hid_iap_desc.h
  • USBD_HIDIAP_DESC_CONFIGURATION_STRING : hid_iap_desc.h
  • USBD_HIDIAP_DESC_INTERFACE_STRING : hid_iap_desc.h
  • USBD_HIDIAP_DESC_MANUFACTURER_STRING : hid_iap_desc.h
  • USBD_HIDIAP_DESC_PRODUCT_STRING : hid_iap_desc.h
  • USBD_HIDIAP_IN_EPT : hid_iap_class.h
  • USBD_HIDIAP_IN_MAXPACKET_SIZE : hid_iap_class.h
  • USBD_HIDIAP_OUT_EPT : hid_iap_class.h
  • USBD_HIDIAP_OUT_MAXPACKET_SIZE : hid_iap_class.h
  • USBD_HIDIAP_PRODUCT_ID : hid_iap_desc.h
  • USBD_HIDIAP_SIZ_REPORT_DESC : hid_iap_desc.h
  • USBD_HIDIAP_SIZ_STRING_LANGID : hid_iap_desc.h
  • USBD_HIDIAP_SIZ_STRING_SERIAL : hid_iap_desc.h
  • USBD_HIDIAP_VENDOR_ID : hid_iap_desc.h
  • USBD_IN_MAXPACKET_SIZE : msc_class.h
  • usbd_int_to_unicode() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • usbd_interface_request() : usbd_sdr.h, usbd_sdr.c
  • usbd_irq_handler() : usbd_int.h, usbd_int.c
  • USBD_KEYBOARD_CONFIG_DESC_SIZE : keyboard_desc.h
  • USBD_KEYBOARD_DESC_CONFIGURATION_STRING : keyboard_desc.h
  • USBD_KEYBOARD_DESC_INTERFACE_STRING : keyboard_desc.h
  • USBD_KEYBOARD_DESC_MANUFACTURER_STRING : keyboard_desc.h
  • USBD_KEYBOARD_DESC_PRODUCT_STRING : keyboard_desc.h
  • USBD_KEYBOARD_IN_EPT : keyboard_class.h
  • USBD_KEYBOARD_IN_MAXPACKET_SIZE : keyboard_class.h
  • USBD_KEYBOARD_OUT_MAXPACKET_SIZE : keyboard_class.h
  • USBD_KEYBOARD_PRODUCT_ID : keyboard_desc.h
  • USBD_KEYBOARD_SIZ_REPORT_DESC : keyboard_desc.h
  • USBD_KEYBOARD_SIZ_STRING_LANGID : keyboard_desc.h
  • USBD_KEYBOARD_SIZ_STRING_SERIAL : keyboard_desc.h
  • USBD_KEYBOARD_VENDOR_ID : keyboard_desc.h
  • USBD_MOUSE_CONFIG_DESC_SIZE : mouse_desc.h
  • USBD_MOUSE_DESC_CONFIGURATION_STRING : mouse_desc.h
  • USBD_MOUSE_DESC_INTERFACE_STRING : mouse_desc.h
  • USBD_MOUSE_DESC_MANUFACTURER_STRING : mouse_desc.h
  • USBD_MOUSE_DESC_PRODUCT_STRING : mouse_desc.h
  • USBD_MOUSE_IN_EPT : mouse_class.h
  • USBD_MOUSE_IN_MAXPACKET_SIZE : mouse_class.h
  • USBD_MOUSE_PRODUCT_ID : mouse_desc.h
  • USBD_MOUSE_SIZ_REPORT_DESC : mouse_desc.h
  • USBD_MOUSE_SIZ_STRING_LANGID : mouse_desc.h
  • USBD_MOUSE_SIZ_STRING_SERIAL : mouse_desc.h
  • USBD_MOUSE_VENDOR_ID : mouse_desc.h
  • USBD_MSC_BULK_IN_EPT : cdc_msc_class.h, msc_class.h
  • USBD_MSC_BULK_OUT_EPT : cdc_msc_class.h, msc_class.h
  • USBD_MSC_CONFIG_DESC_SIZE : msc_desc.h
  • USBD_MSC_DESC_CONFIGURATION_STRING : msc_desc.h
  • USBD_MSC_DESC_INTERFACE_STRING : msc_desc.h
  • USBD_MSC_DESC_MANUFACTURER_STRING : msc_desc.h
  • USBD_MSC_DESC_PRODUCT_STRING : msc_desc.h
  • USBD_MSC_PRODUCT_ID : msc_desc.h
  • USBD_MSC_SIZ_STRING_LANGID : msc_desc.h
  • USBD_MSC_SIZ_STRING_SERIAL : msc_desc.h
  • USBD_MSC_VENDOR_ID : msc_desc.h
  • USBD_NOP_EVENT : usbd_core.h
  • USBD_OUT_MAXPACKET_SIZE : msc_class.h
  • USBD_PRINTER_BULK_IN_EPT : printer_class.h
  • USBD_PRINTER_BULK_OUT_EPT : printer_class.h
  • USBD_PRINTER_CONFIG_DESC_SIZE : printer_desc.h
  • USBD_PRINTER_DESC_CONFIGURATION_STRING : printer_desc.h
  • USBD_PRINTER_DESC_INTERFACE_STRING : printer_desc.h
  • USBD_PRINTER_DESC_MANUFACTURER_STRING : printer_desc.h
  • USBD_PRINTER_DESC_PRODUCT_STRING : printer_desc.h
  • USBD_PRINTER_IN_MAXPACKET_SIZE : printer_class.h
  • USBD_PRINTER_OUT_MAXPACKET_SIZE : printer_class.h
  • USBD_PRINTER_PRODUCT_ID : printer_desc.h
  • USBD_PRINTER_SIZ_STRING_LANGID : printer_desc.h
  • USBD_PRINTER_SIZ_STRING_SERIAL : printer_desc.h
  • USBD_PRINTER_VENDOR_ID : printer_desc.h
  • usbd_remote_wakeup() : usbd_core.h, usbd_core.c
  • USBD_RESET_EVENT : usbd_core.h
  • usbd_reset_handler() : usbd_int.h, usbd_int.c
  • usbd_set_address() : usbd_sdr.c
  • usbd_set_configuration() : usbd_sdr.c
  • usbd_set_device_addr() : usbd_core.h, usbd_core.c
  • usbd_set_feature() : usbd_sdr.c
  • usbd_set_stall() : usbd_core.h, usbd_core.c
  • usbd_setup_request_parse() : usbd_sdr.h, usbd_sdr.c
  • usbd_sof_handler() : usbd_int.h, usbd_int.c
  • USBD_SUSPEND_EVENT : usbd_core.h
  • usbd_suspend_handler() : usbd_int.h, usbd_int.c
  • usbd_unicode_convert() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • USBD_VCPKYBRD_CDC_BULK_IN_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CDC_BULK_OUT_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CDC_INT_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CMD_MAXPACKET_SIZE : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CONFIG_DESC_SIZE : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_CONFIGURATION_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_INTERFACE_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_MANUFACTURER_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_PRODUCT_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_HID_IN_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_HID_SIZ_REPORT_DESC : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_IN_MAXPACKET_SIZE : cdc_keyboard_class.h
  • USBD_VCPKYBRD_OUT_MAXPACKET_SIZE : cdc_keyboard_class.h
  • USBD_VCPKYBRD_PRODUCT_ID : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_SIZ_STRING_LANGID : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_SIZ_STRING_SERIAL : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_VENDOR_ID : cdc_keyboard_desc.h
  • USBD_WAKEUP_EVENT : usbd_core.h
  • usbd_wakeup_handler() : usbd_int.h, usbd_int.c
  • USBFS_BASE : at32f403.h
  • USBFS_H_CAN1_TX_IRQn : at32f403.h
  • USBFS_L_CAN1_RX0_IRQHandler() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c, project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c
  • USBFS_L_CAN1_RX0_IRQn : at32f403.h
  • USBFSWakeUp_IRQn : at32f403.h
  • USD : at32f403_flash.h
  • USD_BASE : at32f403.h
  • USD_DEPSLP_NO_RST : at32f403_flash.h
  • USD_DEPSLP_RST : at32f403_flash.h
  • USD_STDBY_NO_RST : at32f403_flash.h
  • USD_STDBY_RST : at32f403_flash.h
  • USD_WDT_ATO_DISABLE : at32f403_flash.h
  • USD_WDT_ATO_ENABLE : at32f403_flash.h
  • USE_STATIC_INIT : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • USER_BUTTON : at32f403_board.h
  • USER_BUTTON_CRM_CLK : at32f403_board.h
  • USER_BUTTON_PIN : at32f403_board.h
  • USER_BUTTON_PORT : at32f403_board.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- v -

  • Vaild_Init_Drive_Para() : cf.c
  • var : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • variables : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • variables_addr : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • variables_bit_val : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • VARIABLES_GET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • VARIABLES_RESET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • VARIABLES_SET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • vcp_keyboard_struct : cdc_keyboard_class.c
  • VCPKYBRD_BCD_NUM : cdc_keyboard_desc.h
  • VCPKYBRD_CDC_DATA_INTERFACE : cdc_keyboard_desc.h
  • VCPKYBRD_CDC_INTERFACE : cdc_keyboard_desc.h
  • VCPKYBRD_HID_BINTERVAL_TIME : cdc_keyboard_desc.h
  • VCPKYBRD_KEYBOARD_INTERFACE : cdc_keyboard_desc.h
  • VCPMSC_CDC_DATA_INTERFACE : cdc_msc_desc.h
  • VCPMSC_CDC_INTERFACE : cdc_msc_desc.h
  • VCPMSC_MSC_INTERFACE : cdc_msc_desc.h
  • VECT_TAB_OFFSET : system_at32f403.c
  • verification_result : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • vmor_flag_index : project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • vp_desc : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • vPortSVCHandler : FreeRTOSConfig.h
  • vs16 : at32f403.h
  • vs32 : at32f403.h
  • vs8 : at32f403.h
  • vsc16 : at32f403.h
  • vsc32 : at32f403.h
  • vsc8 : at32f403.h
  • vu16 : at32f403.h
  • vu32 : at32f403.h
  • vu8 : at32f403.h
  • vuc16 : at32f403.h
  • vuc32 : at32f403.h
  • vuc8 : at32f403.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- w -

  • W25Q128 : spi_flash.h
  • W25Q16 : spi_flash.h
  • W25Q32 : spi_flash.h
  • W25Q64 : spi_flash.h
  • W25Q80 : spi_flash.h
  • wait_stbl() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c, project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c, project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c, project/at_start_f403/examples/can/filter/src/at32f403_clock.c, project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c, project/at_start_f403/examples/crm/clock_failure_detection/src/main.c, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c, project/at_start_f403/examples/crm/sysclk_switch/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c, project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c, project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c, project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c, project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c, project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c, project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c, project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c, project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/irda/src/at32f403_clock.c, project/at_start_f403/examples/usart/polling/src/at32f403_clock.c, project/at_start_f403/examples/usart/printf/src/at32f403_clock.c, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c, project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c, project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c, project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c, project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c, project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c, project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c, project/at_start_f403/templates/src/at32f403_clock.c, utilities/at32f403_freertos_demo/src/at32f403_clock.c, utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c
  • WDT : at32f403_wdt.h
  • WDT_BASE : at32f403.h
  • WDT_CLK_DIV_128 : at32f403_wdt.h
  • WDT_CLK_DIV_16 : at32f403_wdt.h
  • WDT_CLK_DIV_256 : at32f403_wdt.h
  • WDT_CLK_DIV_32 : at32f403_wdt.h
  • WDT_CLK_DIV_4 : at32f403_wdt.h
  • WDT_CLK_DIV_64 : at32f403_wdt.h
  • WDT_CLK_DIV_8 : at32f403_wdt.h
  • WDT_CMD_ENABLE : at32f403_wdt.h
  • WDT_CMD_LOCK : at32f403_wdt.h
  • WDT_CMD_RELOAD : at32f403_wdt.h
  • WDT_CMD_UNLOCK : at32f403_wdt.h
  • wdt_cmd_value_type : at32f403_wdt.h
  • wdt_counter_reload() : at32f403_wdt.h, at32f403_wdt.c
  • WDT_DIVF_UPDATE_FLAG : at32f403_wdt.h
  • wdt_divider_set() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_division_type : at32f403_wdt.h
  • wdt_enable() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_flag_get() : at32f403_wdt.h, at32f403_wdt.c
  • WDT_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • wdt_register_write_enable() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_reload_value_set() : at32f403_wdt.h, at32f403_wdt.c
  • WDT_RLDF_UPDATE_FLAG : at32f403_wdt.h
  • weekday_table : project/at_start_f403/examples/rtc/calendar/src/main.c
  • WHITE : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • WM8988_I2C_ADDR_CSB_HIGH : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_I2C_ADDR_CSB_LOW : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R0_LEFT_INPUT_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R10_LEFT_DAC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R11_RIGHT_DAC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R12_BASS_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R13_TREBLE_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R14_ : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R15_RESET : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R16_3D_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R17_ALC1 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R18_ALC2 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R19_ALC3 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R1_RIGHT_INPUT_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R20_NOISE_GATE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R21_LEFT_ADC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R22_RIGHT_ADC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R23_ADDITIONAL_1_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R24_ADDITIONAL_2_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R25_PWR_1_MGMT : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R26_PWR_2_MGMT : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R27_ADDITIONAL_3_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R2_LOUT1_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R31_ADC_INPUT_MODE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R32_ADC_L_SIGNAL_PATH : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R33_ADC_R_SIGNAL_PATH : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R34_LEFT_OUT_MIX_1 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R35_LEFT_OUT_MIX_2 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R36_RIGHT_OUT_MIX_1 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R37_RIGHT_OUT_MIX_2 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R38_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R39_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R3_ROUT1_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R40_LOUT2_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R41_ROUT2_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R42_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R43_LOW_POWER_PALYBACK : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R4_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R5_ADC_DAC_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R6_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R7_AUDIO_INTERFACE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R8_SAMPLE_RATE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R9_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_REG_BITW16 : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • WM8988_REG_FREQ16K : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • WM8988_REG_FREQ48K : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • work : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • write_buffer : operate_spim.c
  • WRITE_READ_ADDR : project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • write_read_addr : project/at_start_f403/examples/xmc/nor/src/main.c
  • write_read_addr_struct : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • Write_Sector() : cf.c
  • Write_Transfer : cf.h
  • writereadstatus : project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • WWDT : at32f403_wwdt.h
  • WWDT_BASE : at32f403.h
  • wwdt_counter_set() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_divider_set() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_division_type : at32f403_wwdt.h
  • WWDT_EN_BIT : at32f403_wwdt.h
  • wwdt_enable() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_flag_clear() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_flag_get() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_interrupt_enable() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_interrupt_flag_get() : at32f403_wwdt.h, at32f403_wwdt.c
  • WWDT_IRQn : at32f403.h
  • WWDT_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • WWDT_PCLK1_DIV_16384 : at32f403_wwdt.h
  • WWDT_PCLK1_DIV_32768 : at32f403_wwdt.h
  • WWDT_PCLK1_DIV_4096 : at32f403_wwdt.h
  • WWDT_PCLK1_DIV_8192 : at32f403_wwdt.h
  • wwdt_reset() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_window_counter_set() : at32f403_wwdt.h, at32f403_wwdt.c


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- x -

  • XMC_ACCESS_MODE_A : at32f403_xmc.h
  • XMC_ACCESS_MODE_B : at32f403_xmc.h
  • XMC_ACCESS_MODE_C : at32f403_xmc.h
  • XMC_ACCESS_MODE_D : at32f403_xmc.h
  • xmc_access_mode_type : at32f403_xmc.h
  • XMC_ASYN_WAIT_DISABLE : at32f403_xmc.h
  • XMC_ASYN_WAIT_ENABLE : at32f403_xmc.h
  • xmc_asyn_wait_type : at32f403_xmc.h
  • XMC_BANK1 : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM1 : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM2 : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM3 : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM4 : at32f403_xmc.h
  • XMC_BANK1_REG_BASE : at32f403.h
  • XMC_BANK1E_H_BASE : at32f403.h
  • XMC_BANK1E_REG_BASE : at32f403.h
  • XMC_BANK2 : at32f403_xmc.h
  • XMC_BANK2_NAND : at32f403_xmc.h
  • XMC_BANK2_REG_BASE : at32f403.h
  • XMC_BANK3 : at32f403_xmc.h
  • XMC_BANK3_NAND : at32f403_xmc.h
  • XMC_BANK3_REG_BASE : at32f403.h
  • XMC_BANK4 : at32f403_xmc.h
  • XMC_BANK4_ : cf.h
  • XMC_BANK4_PCCARD : at32f403_xmc.h
  • XMC_BANK4_REG_BASE : at32f403.h
  • XMC_Bank_NAND : xmc_ecc.h, xmc_nand.h
  • XMC_BASE : cf.h
  • XMC_BKxCTRL_DEV_PCCARD : cf.h
  • xmc_burst_access_mode_type : at32f403_xmc.h
  • XMC_BURST_MODE_DISABLE : at32f403_xmc.h
  • XMC_BURST_MODE_ENABLE : at32f403_xmc.h
  • XMC_BUSTYPE_16_BITS : at32f403_xmc.h
  • XMC_BUSTYPE_8_BITS : at32f403_xmc.h
  • xmc_class_bank_type : at32f403_xmc.h
  • XMC_DATA_ADDR_MUX_DISABLE : at32f403_xmc.h
  • XMC_DATA_ADDR_MUX_ENABLE : at32f403_xmc.h
  • xmc_data_addr_mux_type : at32f403_xmc.h
  • xmc_data_width_type : at32f403_xmc.h
  • XMC_DEVICE_NOR : at32f403_xmc.h
  • XMC_DEVICE_PSRAM : at32f403_xmc.h
  • XMC_DEVICE_SRAM : at32f403_xmc.h
  • xmc_ecc_enable_type : at32f403_xmc.h
  • xmc_ecc_get() : at32f403_xmc.h, at32f403_xmc.c
  • XMC_ECC_OPERATION_DISABLE : at32f403_xmc.h
  • XMC_ECC_OPERATION_ENABLE : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_1024_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_2048_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_256_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_4096_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_512_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_8192_BYTES : at32f403_xmc.h
  • xmc_ecc_pagesize_type : at32f403_xmc.h
  • XMC_Enable_16bit_Feature() : cf.c, cf.h
  • XMC_Enable_Wait_Feature() : cf.c, cf.h
  • xmc_ext_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_extended_mode_type : at32f403_xmc.h
  • XMC_FALLINGEDGE_FLAG : at32f403_xmc.h
  • XMC_FEMPT_FLAG : at32f403_xmc.h
  • xmc_flag_clear() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_flag_status_get() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_init() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • XMC_INT_FALLING_EDGE : at32f403_xmc.h
  • XMC_INT_LEVEL : at32f403_xmc.h
  • XMC_INT_RISING_EDGE : at32f403_xmc.h
  • xmc_interrupt_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_interrupt_flag_status_get() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_interrupt_flag_type : at32f403_xmc.h
  • xmc_interrupt_sources_type : at32f403_xmc.h
  • XMC_IRQHandler() : cf.c
  • XMC_IRQn : at32f403.h
  • XMC_LCD_COMMAND : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • XMC_LCD_DATA : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • XMC_LEVEL_FLAG : at32f403_xmc.h
  • xmc_memory_type : at32f403_xmc.h
  • XMC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • XMC_NADV_MUX : at32f403_gpio.h
  • xmc_nand_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_ecc_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_pccard_wait_type : at32f403_xmc.h
  • xmc_nand_reset() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_timing_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_reset() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_subbank_type : at32f403_xmc.h
  • xmc_nor_sram_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_norsram_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_norsram_timing_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_init() : at32f403_xmc.h, at32f403_xmc.c
  • XMC_PCCARD_InitAttributeSpaceTiming() : cf.c, cf.h
  • XMC_PCCARD_InitCommonSpaceTiming() : cf.c, cf.h
  • XMC_PCCARD_InitCtrl() : cf.c, cf.h
  • XMC_PCCARD_InitIOSpaceTiming() : cf.c, cf.h
  • xmc_pccard_reset() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_timing_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • XMC_REG_BASE : at32f403.h
  • XMC_RISINGEDGE_FLAG : at32f403_xmc.h
  • XMC_WAIT_OPERATION_DISABLE : at32f403_xmc.h
  • XMC_WAIT_OPERATION_ENABLE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_DISABLE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_ENABLE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_LEVEL_HIGH : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_LEVEL_LOW : at32f403_xmc.h
  • xmc_wait_signal_polarity_type : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_SYN_BEFORE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_SYN_DURING : at32f403_xmc.h
  • xmc_wait_signal_type : at32f403_xmc.h
  • xmc_wait_timing_type : at32f403_xmc.h
  • xmc_wrap_mode_type : at32f403_xmc.h
  • XMC_WRAPPED_MODE_DISABLE : at32f403_xmc.h
  • XMC_WRAPPED_MODE_ENABLE : at32f403_xmc.h
  • XMC_WRITE_BURST_SYN_DISABLE : at32f403_xmc.h
  • XMC_WRITE_BURST_SYN_ENABLE : at32f403_xmc.h
  • xmc_write_burst_type : at32f403_xmc.h
  • XMC_WRITE_OPERATION_DISABLE : at32f403_xmc.h
  • XMC_WRITE_OPERATION_ENABLE : at32f403_xmc.h
  • xmc_write_operation_type : at32f403_xmc.h
  • XMC_WRITE_TIMING_DISABLE : at32f403_xmc.h
  • XMC_WRITE_TIMING_ENABLE : at32f403_xmc.h
  • xPortPendSVHandler : FreeRTOSConfig.h
  • xPortSysTickHandler : FreeRTOSConfig.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- y -

  • YELLOW : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h


AT32F403 Firmwary Library: Globals

Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- z -

  • ZOOM : project/at_start_f403/examples/cortex_m4/fpu/src/main.c


AT32F403 Firmwary Library: Globals

- _ -

  • __align() : diskio.c
  • __attribute__() : project/at_start_f403/examples/xmc/pc_card/src/main.c


AT32F403 Firmwary Library: Globals

- a -

  • ADC1_2_IRQHandler() : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c
  • adc_base_config() : at32f403_adc.h, at32f403_adc.c
  • adc_base_default_para_init() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_init() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_init_status_get() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_start() : at32f403_adc.h, at32f403_adc.c
  • adc_calibration_status_get() : at32f403_adc.h, at32f403_adc.c
  • adc_combine_mode_select() : at32f403_adc.h, at32f403_adc.c
  • adc_combine_ordinary_conversion_data_get() : at32f403_adc.h, at32f403_adc.c
  • adc_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • adc_dma_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_flag_clear() : at32f403_adc.h, at32f403_adc.c
  • adc_flag_get() : at32f403_adc.h, at32f403_adc.c
  • adc_interrupt_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_interrupt_flag_get() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_channel_set() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_conversion_data_get() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_conversion_trigger_set() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_part_count_set() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_part_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_software_trigger_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_ordinary_software_trigger_status_get() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_auto_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_channel_length_set() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_channel_set() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_conversion_data_get() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_conversion_trigger_set() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_offset_value_set() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_part_mode_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_software_trigger_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_preempt_software_trigger_status_get() : at32f403_adc.h, at32f403_adc.c
  • adc_reset() : at32f403_adc.h, at32f403_adc.c
  • adc_tempersensor_vintrv_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_voltage_monitor_enable() : at32f403_adc.h, at32f403_adc.c
  • adc_voltage_monitor_single_channel_select() : at32f403_adc.h, at32f403_adc.c
  • adc_voltage_monitor_threshold_value_set() : at32f403_adc.h, at32f403_adc.c
  • alarm_init() : project/at_start_f403/examples/rtc/calendar/src/main.c
  • app_load() : bootloader/inc/iap.h, bootloader/src/iap.c
  • app_loop() : app_led3_toggle/inc/hid_iap_user.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/inc/hid_iap_user.h, app_led4_toggle/src/hid_iap_user.c
  • app_update_handle() : bootloader/src/iap.c
  • at32_board_init() : at32f403_board.c, at32f403_board.h
  • at32_button_init() : at32f403_board.c, at32f403_board.h
  • at32_button_press() : at32f403_board.c, at32f403_board.h
  • at32_button_state() : at32f403_board.c, at32f403_board.h
  • at32_led_init() : at32f403_board.c, at32f403_board.h
  • at32_led_off() : at32f403_board.c, at32f403_board.h
  • at32_led_on() : at32f403_board.c, at32f403_board.h
  • at32_led_toggle() : at32f403_board.c, at32f403_board.h
  • audio_codec_init() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_loop() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_mic_alt_setting() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_mic_get_data() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_modify_freq() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_mic_freq() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_mic_mute() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_mic_volume() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_spk_freq() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_spk_mute() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_set_spk_volume() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_spk_alt_setting() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_spk_feedback() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_codec_spk_fifo_write() : audio/inc/audio_codec.h, audio/src/audio_codec.c, composite_audio_hid/inc/audio_codec.h, composite_audio_hid/src/audio_codec.c
  • audio_get_interface() : audio_class.c, audio_hid_class.c
  • audio_hid_class_send_report() : audio_hid_class.c, audio_hid_class.h
  • audio_req_get_cur() : audio_class.c, audio_hid_class.c
  • audio_req_get_max() : audio_class.c, audio_hid_class.c
  • audio_req_get_min() : audio_class.c, audio_hid_class.c
  • audio_req_get_res() : audio_class.c, audio_hid_class.c
  • audio_req_set_cur() : audio_class.c, audio_hid_class.c
  • audio_set_interface() : audio_class.c, audio_hid_class.c


AT32F403 Firmwary Library: Globals

- b -

  • back_err() : app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c, bootloader/inc/iap.h, bootloader/src/iap.c
  • back_ok() : app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c, bootloader/inc/iap.h, bootloader/src/iap.c
  • bot_cbw_decode() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_allow_medium_removal() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_capacity() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_check_address() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_clear_feature() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_cmd_process() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_datain_handler() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_dataout_handler() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_format_capacity() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_init() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_inquiry() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_mode_sense10() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_mode_sense6() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_read10() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_request_sense() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_reset() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_send_csw() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_send_data() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_sense_code() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_stall() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_start_stop() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_test_unit() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_verify() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bot_scsi_write10() : cdc_msc_class.h, composite_cdc_msc/msc_bot_scsi.c, msc_bot_scsi.h
  • bpr_data_read() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_data_write() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_flag_clear() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_flag_get() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_interrupt_enable() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_interrupt_flag_get() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_reg_check() : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • bpr_reg_judge() : project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • bpr_reg_write() : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • bpr_reset() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_rtc_clock_calibration_value_set() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_rtc_output_select() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_tamper_pin_active_level_set() : at32f403_bpr.h, at32f403_bpr.c
  • bpr_tamper_pin_enable() : at32f403_bpr.h, at32f403_bpr.c
  • buffer_compare() : project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/flash/flash_write_read/src/main.c, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • buffer_compare_24bits() : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c
  • Buffercmp() : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • BusFault_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • button_exint_init() : project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/templates/src/main.c
  • button_isr() : project/at_start_f403/templates/src/main.c


AT32F403 Firmwary Library: Globals

- c -

  • CAN1_SE_IRQHandler() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • can_base_init() : at32f403_can.h, at32f403_can.c
  • can_baudrate_default_para_init() : at32f403_can.h, at32f403_can.c
  • can_baudrate_set() : at32f403_can.h, at32f403_can.c
  • can_configuration() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • can_debug_transmission_prohibit() : at32f403_can.h, at32f403_can.c
  • can_default_para_init() : at32f403_can.h, at32f403_can.c
  • can_doze_mode_enter() : at32f403_can.h, at32f403_can.c
  • can_doze_mode_exit() : at32f403_can.h, at32f403_can.c
  • can_error_type_record_get() : at32f403_can.h, at32f403_can.c
  • can_filter_default_para_init() : at32f403_can.h, at32f403_can.c
  • can_filter_init() : at32f403_can.h, at32f403_can.c
  • can_flag_clear() : at32f403_can.h, at32f403_can.c
  • can_flag_get() : at32f403_can.h, at32f403_can.c
  • can_gpio_config() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • can_interrupt_enable() : at32f403_can.h, at32f403_can.c
  • can_interrupt_flag_get() : at32f403_can.h, at32f403_can.c
  • can_message_receive() : at32f403_can.h, at32f403_can.c
  • can_message_transmit() : at32f403_can.h, at32f403_can.c
  • can_operating_mode_set() : at32f403_can.h, at32f403_can.c
  • can_receive_error_counter_get() : at32f403_can.h, at32f403_can.c
  • can_receive_fifo_release() : at32f403_can.h, at32f403_can.c
  • can_receive_message_pending_get() : at32f403_can.h, at32f403_can.c
  • can_reset() : at32f403_can.h, at32f403_can.c
  • can_transmit_cancel() : at32f403_can.h, at32f403_can.c
  • can_transmit_data() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c
  • can_transmit_error_counter_get() : at32f403_can.h, at32f403_can.c
  • can_transmit_status_get() : at32f403_can.h, at32f403_can.c
  • can_ttc_mode_enable() : at32f403_can.h, at32f403_can.c
  • cdc_class_setup_handler() : cdc_keyboard_class.c, cdc_msc_class.c
  • cdc_struct_init() : cdc_class.c, cdc_msc_class.c
  • CF_SendCommand() : cf.c
  • check_card_programming() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • class_audio_setup_handler() : audio_hid_class.c
  • class_clear_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_ept0_rx_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_ept0_tx_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_event_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_hid_setup_handler() : audio_hid_class.c
  • class_in_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_init_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_out_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_setup_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • class_sof_handler() : audio_class.c, audio_hid_class.c, cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c, custom_hid_class.c, hid_iap_class.c, keyboard_class.c, mouse_class.c, msc_class.c, printer_class.c
  • clkout_config() : project/at_start_f403/examples/crm/clock_failure_detection/src/main.c, project/at_start_f403/examples/crm/sysclk_switch/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c
  • clock_failure_detection_handler() : project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/src/main.c
  • codec_i2s_init() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • codec_i2s_reset() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • command_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_handle() : bootloader/inc/iap.h, bootloader/src/iap.c
  • command_rsp1_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp2_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp3_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp4_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp5_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp6_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • command_rsp7_error() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • convert_from_bytes_to_power_of_two() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • copy_buff() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • crc_block_calculate() : at32f403_crc.h, at32f403_crc.c
  • crc_cal() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • crc_common_data_get() : at32f403_crc.h, at32f403_crc.c
  • crc_common_data_set() : at32f403_crc.h, at32f403_crc.c
  • crc_data_get() : at32f403_crc.h, at32f403_crc.c
  • crc_data_reset() : at32f403_crc.h, at32f403_crc.c
  • crc_init_data_set() : at32f403_crc.h, at32f403_crc.c
  • crc_one_word_calculate() : at32f403_crc.h, at32f403_crc.c
  • crc_poly_size_get() : at32f403_crc.h, at32f403_crc.c
  • crc_poly_size_set() : at32f403_crc.h, at32f403_crc.c
  • crc_poly_value_get() : at32f403_crc.h, at32f403_crc.c
  • crc_poly_value_set() : at32f403_crc.h, at32f403_crc.c
  • crc_reverse_input_data_set() : at32f403_crc.h, at32f403_crc.c
  • crc_reverse_output_data_set() : at32f403_crc.h, at32f403_crc.c
  • crm_adc_clock_div_set() : at32f403_crm.h, at32f403_crm.c
  • crm_ahb_div_set() : at32f403_crm.h, at32f403_crm.c
  • crm_apb1_div_set() : at32f403_crm.h, at32f403_crm.c
  • crm_apb2_div_set() : at32f403_crm.h, at32f403_crm.c
  • crm_battery_powered_domain_reset() : at32f403_crm.h, at32f403_crm.c
  • crm_clock_failure_detection_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_clock_out_set() : at32f403_crm.h, at32f403_crm.c
  • crm_clock_source_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_clocks_freq_get() : at32f403_crm.h, at32f403_crm.c
  • crm_configuration() : project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • crm_flag_clear() : at32f403_crm.h, at32f403_crm.c
  • crm_flag_get() : at32f403_crm.h, at32f403_crm.c
  • crm_hext_bypass() : at32f403_crm.h, at32f403_crm.c
  • crm_hext_stable_wait() : at32f403_crm.h, at32f403_crm.c
  • crm_hick_clock_calibration_set() : at32f403_crm.h, at32f403_crm.c
  • crm_hick_clock_trimming_set() : at32f403_crm.h, at32f403_crm.c
  • crm_interrupt_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_interrupt_flag_get() : at32f403_crm.h, at32f403_crm.c
  • crm_lext_bypass() : at32f403_crm.h, at32f403_crm.c
  • crm_periph_clock_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_periph_reset() : at32f403_crm.h, at32f403_crm.c
  • crm_periph_sleep_mode_clock_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_pll_config() : at32f403_crm.h, at32f403_crm.c
  • crm_reset() : at32f403_crm.h, at32f403_crm.c
  • crm_rtc_clock_enable() : at32f403_crm.h, at32f403_crm.c
  • crm_rtc_clock_select() : at32f403_crm.h, at32f403_crm.c
  • crm_sysclk_switch() : at32f403_crm.h, at32f403_crm.c
  • crm_sysclk_switch_status_get() : at32f403_crm.h, at32f403_crm.c
  • crm_usb_clock_div_set() : at32f403_crm.h, at32f403_crm.c
  • custom_hid_class_send_report() : custom_hid_class.c, custom_hid_class.h


AT32F403 Firmwary Library: Globals

- d -

  • dac_1_data_set() : at32f403_dac.h, at32f403_dac.c
  • dac_2_data_set() : at32f403_dac.h, at32f403_dac.c
  • dac_data_output_get() : at32f403_dac.h, at32f403_dac.c
  • dac_dma_enable() : at32f403_dac.h, at32f403_dac.c
  • dac_dual_data_set() : at32f403_dac.h, at32f403_dac.c
  • dac_dual_software_trigger_generate() : at32f403_dac.h, at32f403_dac.c
  • dac_enable() : at32f403_dac.h, at32f403_dac.c
  • dac_mask_amplitude_select() : at32f403_dac.h, at32f403_dac.c
  • dac_output_buffer_enable() : at32f403_dac.h, at32f403_dac.c
  • dac_reset() : at32f403_dac.h, at32f403_dac.c
  • dac_software_trigger_generate() : at32f403_dac.h, at32f403_dac.c
  • dac_trigger_enable() : at32f403_dac.h, at32f403_dac.c
  • dac_trigger_select() : at32f403_dac.h, at32f403_dac.c
  • dac_wave_generate() : at32f403_dac.h, at32f403_dac.c
  • data_take() : bootloader/src/iap.c
  • debug_device_id_get() : at32f403_debug.h, at32f403_debug.c
  • debug_periph_mode_set() : at32f403_debug.h, at32f403_debug.c
  • DebugMon_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • delay() : project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c
  • delay_init() : at32f403_board.c, at32f403_board.h
  • delay_ms() : at32f403_board.c, at32f403_board.h
  • delay_sec() : at32f403_board.c, at32f403_board.h
  • delay_us() : at32f403_board.c, at32f403_board.h
  • disk_initialize() : diskio.c
  • disk_ioctl() : diskio.c
  • disk_read() : diskio.c
  • disk_status() : diskio.c
  • disk_write() : diskio.c
  • DMA1_Channel1_IRQHandler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c
  • DMA1_Channel2_IRQHandler() : project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c
  • DMA1_Channel3_IRQHandler() : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • DMA1_Channel4_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • DMA1_Channel5_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • DMA1_Channel6_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c
  • DMA1_Channel7_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c
  • DMA2_Channel4_5_IRQHandler() : project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c
  • dma_channel_enable() : at32f403_dma.h, at32f403_dma.c
  • dma_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • dma_configuration() : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • dma_data_number_get() : at32f403_dma.h, at32f403_dma.c
  • dma_data_number_set() : at32f403_dma.h, at32f403_dma.c
  • dma_default_para_init() : at32f403_dma.h, at32f403_dma.c
  • dma_flag_clear() : at32f403_dma.h, at32f403_dma.c
  • dma_flag_get() : at32f403_dma.h, at32f403_dma.c
  • dma_init() : at32f403_dma.h, at32f403_dma.c
  • dma_interrupt_enable() : at32f403_dma.h, at32f403_dma.c
  • dma_reset() : at32f403_dma.h, at32f403_dma.c


AT32F403 Firmwary Library: Globals

- e -

  • Enable_Wait_Feature() : cf.c
  • error_handler() : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • EXINT0_IRQHandler() : project/at_start_f403/examples/exint/exint_config/src/main.c, project/at_start_f403/templates/src/main.c
  • EXINT4_IRQHandler() : project/at_start_f403/examples/exint/exint_software_trigger/src/main.c
  • EXINT9_5_IRQHandler() : project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c
  • exint_config() : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c
  • exint_default_para_init() : at32f403_exint.h, at32f403_exint.c
  • exint_event_enable() : at32f403_exint.h, at32f403_exint.c
  • exint_flag_clear() : at32f403_exint.h, at32f403_exint.c
  • exint_flag_get() : at32f403_exint.h, at32f403_exint.c
  • exint_init() : at32f403_exint.h, at32f403_exint.c
  • exint_interrupt_enable() : at32f403_exint.h, at32f403_exint.c
  • exint_interrupt_flag_get() : at32f403_exint.h, at32f403_exint.c
  • exint_line0_config() : project/at_start_f403/examples/exint/exint_config/src/main.c
  • exint_line4_config() : project/at_start_f403/examples/exint/exint_software_trigger/src/main.c
  • exint_reset() : at32f403_exint.h, at32f403_exint.c
  • exint_software_interrupt_event_generate() : at32f403_exint.h, at32f403_exint.c


AT32F403 Firmwary Library: Globals

- f -

  • fat16_memory_cmp() : flash_fat16.c
  • fat16_memory_copy() : flash_fat16.c
  • fat16_memory_memset() : flash_fat16.c
  • fatfs_test() : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • fill_buffer() : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c, xmc_nor.h, xmc_nor.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • Fill_Buffer() : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • flash_2kb_write() : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c
  • flash_bank1_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_bank1_lock() : at32f403_flash.h, at32f403_flash.c
  • flash_bank1_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_bank1_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • flash_bank1_unlock() : at32f403_flash.h, at32f403_flash.c
  • flash_bank2_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_bank2_lock() : at32f403_flash.h, at32f403_flash.c
  • flash_bank2_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_bank2_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • flash_bank2_unlock() : at32f403_flash.h, at32f403_flash.c
  • flash_byte_program() : at32f403_flash.h, at32f403_flash.c
  • flash_crc_check() : flash_fat16.c
  • flash_epp_set() : at32f403_flash.h, at32f403_flash.c
  • flash_epp_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_fap_enable() : at32f403_flash.h, at32f403_flash.c
  • flash_fap_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_fat16_addr_offset() : flash_fat16.c
  • flash_fat16_boot_dir_write() : flash_fat16.c
  • flash_fat16_clear_upgrade_flag() : flash_fat16.c
  • flash_fat16_get_upgrade_flag() : flash_fat16.h, flash_fat16.c
  • flash_fat16_init() : flash_fat16.h, flash_fat16.c
  • flash_fat16_loop_status() : flash_fat16.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c
  • flash_fat16_read() : flash_fat16.h, flash_fat16.c
  • flash_fat16_sector_write() : flash_fat16.c
  • flash_fat16_set_name() : flash_fat16.h, flash_fat16.c
  • flash_fat16_set_upgrade_flag() : flash_fat16.c
  • flash_fat16_write() : flash_fat16.h, flash_fat16.c
  • flash_flag_clear() : at32f403_flash.h, at32f403_flash.c
  • flash_flag_get() : at32f403_flash.h, at32f403_flash.c
  • flash_halfword_program() : at32f403_flash.h, at32f403_flash.c
  • flash_internal_all_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_interrupt_enable() : at32f403_flash.h, at32f403_flash.c
  • flash_lock() : at32f403_flash.h, at32f403_flash.c
  • flash_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • flash_read() : project/at_start_f403/examples/flash/flash_write_read/inc/flash.h, project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • flash_read_data() : flash_fat16.c
  • flash_sector_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_all_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_dummy_read() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_encryption_range_set() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_lock() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_mass_program() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_model_select() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_operation_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_operation_wait_for() : at32f403_flash.h, at32f403_flash.c
  • flash_spim_unlock() : at32f403_flash.h, at32f403_flash.c
  • flash_ssb_set() : at32f403_flash.h, at32f403_flash.c
  • flash_ssb_status_get() : at32f403_flash.h, at32f403_flash.c
  • flash_unlock() : at32f403_flash.h, at32f403_flash.c
  • flash_upgrade_flag_read() : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c
  • flash_user_system_data_erase() : at32f403_flash.h, at32f403_flash.c
  • flash_user_system_data_program() : at32f403_flash.h, at32f403_flash.c
  • flash_word_program() : at32f403_flash.h, at32f403_flash.c
  • flash_write() : project/at_start_f403/examples/flash/flash_write_read/inc/flash.h, project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • flash_write_data() : flash_fat16.c
  • flash_write_nocheck() : project/at_start_f403/examples/flash/flash_write_read/inc/flash.h, project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • fputc() : at32f403_board.c


AT32F403 Firmwary Library: Globals

- g -

  • generate_julia_fpu() : julia_fpu.h, julia_fpu.c
  • get_device_config_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_configuration() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_descriptor() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_interface_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_lang_id() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_manufacturer_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_other_speed() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_product_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_qualifier() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_device_serial_string() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_inquiry() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • get_serial_num() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • get_uid_for_seed() : random.c
  • getvar_operationcomplete() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • gpio_bits_reset() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_bits_set() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_bits_write() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c, project/at_start_f403/examples/gpio/io_toggle/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • gpio_configuration() : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • gpio_default_para_init() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_event_output_config() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_event_output_enable() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_exint_line_config() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_init() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_input_data_bit_read() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_input_data_read() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_iomux_reset() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_output_data_bit_read() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_output_data_read() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_pin_remap_config() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_pin_wp_config() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_pins_toggle() : project/at_start_f403/examples/gpio/swjtag_remap/src/main.c
  • gpio_port_write() : at32f403_gpio.h, at32f403_gpio.c
  • gpio_reset() : at32f403_gpio.h, at32f403_gpio.c


AT32F403 Firmwary Library: Globals

- h -

  • HardFault_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c


AT32F403 Firmwary Library: Globals

- i -

  • I2C1_ERR_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c
  • I2C1_EVT_IRQHandler() : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c
  • I2C2_ERR_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2C2_EVT_IRQHandler() : project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • i2c_7bit_address_send() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_ack_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_arp_mode_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_clock_stretch_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_config() : i2c_application.c, i2c_application.h
  • i2c_data_receive() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_data_send() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_dma_config() : i2c_application.c
  • i2c_dma_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_dma_end_transfer_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_dma_rx_irq_handler() : i2c_application.c, i2c_application.h
  • i2c_dma_tx_irq_handler() : i2c_application.c, i2c_application.h
  • i2c_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_err_irq_handler() : i2c_application.c, i2c_application.h
  • i2c_evt_irq_handler() : i2c_application.c, i2c_application.h
  • i2c_fast_mode_duty_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_flag_clear() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_flag_get() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_general_call_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_init() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_interrupt_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_interrupt_flag_get() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_lowlevel_init() : i2c_application.c, i2c_application.h, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • i2c_master_read_addr() : i2c_application.c
  • i2c_master_receive() : i2c_application.c, i2c_application.h
  • i2c_master_receive_ack_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_master_receive_dma() : i2c_application.c, i2c_application.h
  • i2c_master_receive_int() : i2c_application.c, i2c_application.h
  • i2c_master_rx_isr_int() : i2c_application.c
  • i2c_master_transmit() : i2c_application.c, i2c_application.h
  • i2c_master_transmit_dma() : i2c_application.c, i2c_application.h
  • i2c_master_transmit_int() : i2c_application.c, i2c_application.h
  • i2c_master_tx_isr_dma() : i2c_application.c
  • i2c_master_tx_isr_int() : i2c_application.c
  • i2c_master_write_addr() : i2c_application.c
  • i2c_memory_address_send() : i2c_application.c
  • i2c_memory_read() : i2c_application.c, i2c_application.h
  • i2c_memory_read_dma() : i2c_application.c, i2c_application.h
  • i2c_memory_read_int() : i2c_application.c, i2c_application.h
  • i2c_memory_write() : i2c_application.c, i2c_application.h
  • i2c_memory_write_dma() : i2c_application.c, i2c_application.h
  • i2c_memory_write_int() : i2c_application.c, i2c_application.h
  • i2c_own_address1_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_own_address2_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_own_address2_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_pec_calculate_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_pec_position_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_pec_transmit_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_pec_value_get() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_reset() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_slave_receive() : i2c_application.c, i2c_application.h
  • i2c_slave_receive_dma() : i2c_application.c, i2c_application.h
  • i2c_slave_receive_int() : i2c_application.c, i2c_application.h
  • i2c_slave_rx_isr_int() : i2c_application.c
  • i2c_slave_transmit() : i2c_application.c, i2c_application.h
  • i2c_slave_transmit_dma() : i2c_application.c, i2c_application.h
  • i2c_slave_transmit_int() : i2c_application.c, i2c_application.h
  • i2c_slave_tx_isr_int() : i2c_application.c
  • i2c_slave_tx_rx_isr_dma() : i2c_application.c
  • i2c_smbus_alert_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_smbus_enable() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_smbus_mode_set() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_software_reset() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_start_generate() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_stop_generate() : at32f403_i2c.h, at32f403_i2c.c
  • i2c_wait_end() : i2c_application.c, i2c_application.h
  • i2c_wait_flag() : i2c_application.c, i2c_application.h
  • i2s_config() : project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • i2s_default_para_init() : at32f403_spi.h, at32f403_spi.c
  • i2s_enable() : at32f403_spi.h, at32f403_spi.c
  • i2s_init() : at32f403_spi.h, at32f403_spi.c
  • iap_address() : bootloader/src/hid_iap_user.c
  • iap_clear_upgrade_flag() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_command_handle() : app_led3_toggle/inc/iap.h, app_led3_toggle/src/iap.c, app_led4_toggle/inc/iap.h, app_led4_toggle/src/iap.c
  • iap_crc() : bootloader/src/hid_iap_user.c
  • iap_data_write() : bootloader/src/hid_iap_user.c
  • iap_erase_sector() : bootloader/src/hid_iap_user.c
  • iap_finish() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_get() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_get_upgrade_flag() : app_led3_toggle/inc/hid_iap_user.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/inc/hid_iap_user.h, app_led4_toggle/src/hid_iap_user.c, bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c
  • iap_idle() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_init() : app_led3_toggle/inc/iap.h, app_led3_toggle/src/iap.c, app_led4_toggle/inc/iap.h, app_led4_toggle/src/iap.c, app_led3_toggle/inc/hid_iap_user.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/inc/hid_iap_user.h, app_led4_toggle/src/hid_iap_user.c, bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c
  • iap_jump() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_loop() : bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c
  • iap_respond() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_set_upgrade_flag() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_start() : app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • iap_upgrade_app_handle() : bootloader/inc/iap.h, bootloader/src/iap.c
  • incrementvar_operationcomplete() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • is_leap_year() : rtc.c


AT32F403 Firmwary Library: Globals

- j -

  • jump_to_app() : project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, bootloader/inc/hid_iap_user.h, bootloader/src/hid_iap_user.c


AT32F403 Firmwary Library: Globals

- k -

  • keyboard_class_setup_handler() : cdc_keyboard_class.c
  • keyboard_send_string() : project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c


AT32F403 Firmwary Library: Globals

- l -

  • lcd_clear() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_display_number() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c
  • lcd_draw_point() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_init() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_rd_data() : lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_set_block() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_wr_command() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_wr_data() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • lcd_write_one_point() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • led2_task_function() : utilities/at32f403_freertos_demo/src/main.c
  • led3_task_function() : utilities/at32f403_freertos_demo/src/main.c


AT32F403 Firmwary Library: Globals

- m -

  • main() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c, project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c, project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c, project/at_start_f403/examples/cortex_m4/bit_band/src/main.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c, project/at_start_f403/examples/cortex_m4/fpu/src/main.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c, project/at_start_f403/examples/crc/calculation/src/main.c, project/at_start_f403/examples/crm/clock_failure_detection/src/main.c, project/at_start_f403/examples/crm/sysclk_switch/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c, project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/exint/exint_config/src/main.c, project/at_start_f403/examples/exint/exint_software_trigger/src/main.c, project/at_start_f403/examples/flash/fap_enable/src/main.c, project/at_start_f403/examples/flash/flash_write_read/src/main.c, project/at_start_f403/examples/flash/operate_spim/src/main.c, project/at_start_f403/examples/flash/run_in_spim/src/main.c, project/at_start_f403/examples/gpio/io_toggle/src/main.c, project/at_start_f403/examples/gpio/led_toggle/src/main.c, project/at_start_f403/examples/gpio/swjtag_remap/src/main.c, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c, project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c, project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c, project/at_start_f403/examples/pwc/sleep_usart1/src/main.c, project/at_start_f403/examples/pwc/standby_rtc/src/main.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c, project/at_start_f403/examples/rtc/calendar/src/main.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/cascade_synchro/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c, project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/usart/idle_detection/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/irda/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/printf/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/rs485/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c, project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, project/at_start_f403/examples/wdt/wdt_reset/src/main.c, project/at_start_f403/examples/wdt/wdt_standby/src/main.c, project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c, project/at_start_f403/examples/xmc/lcd_8bit/src/main.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/pc_card/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/templates/src/main.c, utilities/at32f403_freertos_demo/src/main.c, utilities/at32f403_gen_random_number_demo/src/main.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c
  • mclk_tmr1_init() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • MemManage_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • memset16_buffer() : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • mmc_stream_read() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • mmc_stream_test() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • mmc_stream_write() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • mmc_switch() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • msc_class_setup_handler() : cdc_msc_class.c
  • msc_disk_capacity() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • msc_disk_read() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • msc_disk_write() : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • MYDMA_Config() : cf.c


AT32F403 Firmwary Library: Globals

- n -

  • nand_address_increment() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_ecc_correction() : project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • nand_erase_block() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_get_status() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_init() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_read_id() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_read_small_page() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_read_spare_area() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_read_status() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_reset() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_write_small_page() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • nand_write_spare_area() : xmc_ecc.h, xmc_ecc.c, xmc_nand.h, xmc_nand.c
  • NMI_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • nor_eraseblock() : xmc_nor.h, xmc_nor.c
  • nor_erasechip() : xmc_nor.h, xmc_nor.c
  • nor_getstatus() : xmc_nor.h, xmc_nor.c
  • nor_init() : xmc_nor.h, xmc_nor.c
  • nor_programbuffer() : xmc_nor.h, xmc_nor.c
  • nor_readbuffer() : xmc_nor.h, xmc_nor.c
  • nor_readhalfword() : xmc_nor.h, xmc_nor.c
  • nor_readid() : xmc_nor.h, xmc_nor.c
  • nor_reset() : xmc_nor.h, xmc_nor.c
  • nor_returntoreadmode() : xmc_nor.h, xmc_nor.c
  • nor_writebuffer() : xmc_nor.h, xmc_nor.c
  • nor_writehalfword() : xmc_nor.h, xmc_nor.c
  • nvic_configuration() : project/at_start_f403/examples/rtc/lick_calibration/src/main.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c
  • nvic_irq_disable() : at32f403_misc.h, at32f403_misc.c
  • nvic_irq_enable() : at32f403_misc.h, at32f403_misc.c
  • nvic_lowpower_mode_config() : at32f403_misc.h, at32f403_misc.c
  • nvic_priority_group_config() : at32f403_misc.h, at32f403_misc.c
  • nvic_system_reset() : at32f403_misc.h, at32f403_misc.c
  • nvic_vector_table_set() : at32f403_misc.h, at32f403_misc.c


AT32F403 Firmwary Library: Globals

- p -

  • PCCARD_Check_Power_Mode() : cf.c
  • PCCARD_DeInit() : cf.c
  • PCCARD_Diagnostic() : cf.c
  • PCCARD_Erase_Sector() : cf.c
  • PCCARD_Format_Track() : cf.c
  • PCCARD_GetState() : cf.c
  • PCCARD_Identify() : cf.c
  • PCCARD_Idle() : cf.c
  • PCCARD_Idle_Immediate() : cf.c
  • PCCARD_Init() : cf.c
  • PCCARD_Init_Drive_Para() : cf.c
  • PCCARD_IRQHandler() : cf.c
  • PCCARD_ITCallback() : cf.h
  • PCCARD_Read_Buffer() : cf.c
  • PCCARD_Read_ERROR_REG() : cf.c
  • PCCARD_Read_ID() : cf.c
  • PCCARD_Read_Long_Sector() : cf.c
  • PCCARD_Read_Multiple() : cf.c
  • PCCARD_Read_Sector() : cf.c
  • PCCARD_Read_STATUS_REG() : cf.c
  • PCCARD_Read_Verify_Sector() : cf.c
  • PCCARD_Recalibrate() : cf.c
  • PCCARD_Reset() : cf.c
  • PCCARD_Reuqest_Sense() : cf.c
  • PCCARD_Seek() : cf.c
  • PCCARD_Set_Features() : cf.c
  • PCCARD_Set_Multiple_Mode() : cf.c
  • PCCARD_Set_Sleep_Mode() : cf.c
  • PCCARD_Standby() : cf.c
  • PCCARD_Standby_Immediate() : cf.c
  • PCCARD_Translate_Sector() : cf.c
  • PCCARD_Write_Buffer() : cf.c
  • PCCARD_Write_Long_Sector() : cf.c
  • PCCARD_Write_Multiple() : cf.c
  • PCCARD_Write_Multiple_WO_ERASE() : cf.c
  • PCCARD_Write_Sector() : cf.c
  • PCCARD_Write_Sector_WO_ERASE() : cf.c
  • PCCARD_Write_Verify() : cf.c
  • PendSV_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • psram_init() : xmc_psram.h, xmc_psram.c
  • psram_readbuffer() : xmc_psram.h, xmc_psram.c
  • psram_writebuffer() : xmc_psram.h, xmc_psram.c
  • pvm_exint_config() : project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c
  • PVM_IRQHandler() : project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c
  • pwc_battery_powered_domain_access() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_deep_sleep_mode_enter() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_flag_clear() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_flag_get() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_power_voltage_monitor_enable() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_pvm_level_select() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_reset() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_sleep_mode_enter() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_standby_mode_enter() : at32f403_pwc.h, at32f403_pwc.c
  • pwc_wakeup_pin_enable() : at32f403_pwc.h, at32f403_pwc.c


AT32F403 Firmwary Library: Globals

- r -

  • randnum_test() : random.h, random.c
  • Read_Sector() : cf.c
  • ReadCFCardCISInformation() : cf.c
  • result_error() : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • rs485_config() : project/at_start_f403/examples/usart/rs485/src/main.c
  • rs485_send_data() : project/at_start_f403/examples/usart/rs485/src/main.c
  • rtc_alarm_clock_set() : rtc.h, rtc.c
  • rtc_alarm_config() : project/at_start_f403/examples/pwc/standby_rtc/src/main.c
  • rtc_alarm_set() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_config() : project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c, project/at_start_f403/examples/pwc/standby_rtc/src/main.c
  • rtc_configuration() : project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • rtc_counter_get() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_counter_set() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_divider_get() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_divider_set() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_flag_clear() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_flag_get() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_init() : rtc.h, rtc.c
  • rtc_interrupt_enable() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_interrupt_flag_get() : at32f403_rtc.h, at32f403_rtc.c
  • RTC_IRQHandler() : project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c
  • rtc_time_get() : rtc.h, rtc.c
  • rtc_time_set() : rtc.h, rtc.c
  • rtc_wait_config_finish() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_wait_update_finish() : at32f403_rtc.h, at32f403_rtc.c
  • rtc_week_get() : rtc.c
  • RTCAlarm_IRQHandler() : project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c


AT32F403 Firmwary Library: Globals

- s -

  • sc_response_decode() : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_USART_IRQHandler() : project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c
  • sclk_192m_hick_config() : project/at_start_f403/examples/crm/clock_failure_detection/src/main.c
  • sclk_64m_hick_config() : project/at_start_f403/examples/crm/sysclk_switch/src/main.c
  • sclk_96m_hext_config() : project/at_start_f403/examples/crm/sysclk_switch/src/main.c
  • scr_find() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sd_block_read() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_block_write() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_blocks_erase() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_bus_wide_enable() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sd_card_info_get() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_card_init() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_deselect_select() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_device_mode_set() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_dma_config() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_init() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_irq_service() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_mult_blocks_read() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_mult_blocks_write() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_multiple_blocks_test() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • sd_power_off() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_power_on() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_single_block_test() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • sd_state_get() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_status_send() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_switch() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sd_test_error() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • sd_wide_bus_operation_config() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sd_write_disk() : diskio.c
  • SDIO1_IRQHandler() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SDIO2_IRQHandler() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sdio_buffer_counter_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_bus_width_config() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_clock_bypass() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_clock_config() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_clock_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_clock_set() : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sdio_command_config() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_command_data_send() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sdio_command_response_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_command_state_machine_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_config() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_counter_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_read() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_state_machine_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_data_write() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_dma_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_flag_clear() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_flag_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_flow_control_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_interrupt_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_interrupt_flag_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_io_function_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_io_suspend_command_set() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_power_saving_mode_enable() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_power_set() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_power_status_get() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_read_wait_mode_set() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_read_wait_start() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_read_wait_stop() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_reset() : at32f403_sdio.h, at32f403_sdio.c
  • sdio_response_get() : at32f403_sdio.h, at32f403_sdio.c
  • sector_read() : operate_spim.c
  • setvar_periodvalue() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • show_card_info() : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • show_verification_result() : cf.c
  • speed_change() : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • SPI1_IRQHandler() : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c
  • SPI2_IRQHandler() : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c
  • spi_byte_read() : spi_flash.h, spi_flash.c
  • spi_byte_write() : spi_flash.h, spi_flash.c
  • spi_bytes_read() : spi_flash.h, spi_flash.c
  • spi_bytes_write() : spi_flash.h, spi_flash.c
  • spi_config() : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • spi_crc_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_crc_next_transmit() : at32f403_spi.h, at32f403_spi.c
  • spi_crc_polynomial_get() : at32f403_spi.h, at32f403_spi.c
  • spi_crc_polynomial_set() : at32f403_spi.h, at32f403_spi.c
  • spi_crc_value_get() : at32f403_spi.h, at32f403_spi.c
  • spi_default_para_init() : at32f403_spi.h, at32f403_spi.c
  • spi_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_frame_bit_num_set() : at32f403_spi.h, at32f403_spi.c
  • spi_half_duplex_direction_set() : at32f403_spi.h, at32f403_spi.c
  • spi_hardware_cs_output_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_data_receive() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_data_transmit() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_dma_receiver_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_dma_transmitter_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_flag_clear() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_flag_get() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_interrupt_enable() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_interrupt_flag_get() : at32f403_spi.h, at32f403_spi.c
  • spi_i2s_reset() : at32f403_spi.h, at32f403_spi.c
  • spi_init() : at32f403_spi.h, at32f403_spi.c
  • spi_software_cs_internal_level_set() : at32f403_spi.h, at32f403_spi.c
  • spiflash_init() : spi_flash.h, spi_flash.c
  • spiflash_page_write() : spi_flash.h, spi_flash.c
  • spiflash_read() : spi_flash.h, spi_flash.c
  • spiflash_read_id() : spi_flash.h, spi_flash.c
  • spiflash_read_sr1() : spi_flash.h, spi_flash.c
  • spiflash_sector_erase() : spi_flash.h, spi_flash.c
  • spiflash_wait_busy() : spi_flash.h, spi_flash.c
  • spiflash_write() : spi_flash.h, spi_flash.c
  • spiflash_write_enable() : spi_flash.h, spi_flash.c
  • spiflash_write_nocheck() : spi_flash.h, spi_flash.c
  • spim_init() : operate_spim.c, project/at_start_f403/examples/flash/run_in_spim/src/main.c
  • spim_operate() : operate_spim.h, operate_spim.c
  • spim_run() : run_in_spim.h
  • sram_init() : xmc_sram.h, xmc_sram.c
  • sram_readbuffer() : xmc_sram.h, xmc_sram.c
  • sram_writebuffer() : xmc_sram.h, xmc_sram.c
  • SVC_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • switch_system_clock() : project/at_start_f403/examples/crm/sysclk_switch/src/main.c
  • swj_dp_config() : project/at_start_f403/examples/gpio/swjtag_remap/src/main.c
  • system_clock_config() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_clock.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_clock.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_clock.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_clock.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_clock.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_clock.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_clock.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_clock.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_clock.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_clock.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_clock.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_clock.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c, project/at_start_f403/examples/can/filter/inc/at32f403_clock.h, project/at_start_f403/examples/can/filter/src/at32f403_clock.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_clock.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_clock.h, project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_clock.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_clock.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_clock.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_clock.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_clock.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_clock.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_clock.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_clock.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_clock.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_clock.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_clock.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_clock.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_clock.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_clock.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_clock.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_clock.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_clock.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_clock.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_clock.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_clock.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_clock.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_clock.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_clock.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_clock.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_clock.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_clock.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_clock.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_clock.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_clock.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_clock.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_clock.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_clock.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_clock.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_clock.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/irda/inc/at32f403_clock.h, project/at_start_f403/examples/usart/irda/src/at32f403_clock.c, project/at_start_f403/examples/usart/polling/inc/at32f403_clock.h, project/at_start_f403/examples/usart/polling/src/at32f403_clock.c, project/at_start_f403/examples/usart/printf/inc/at32f403_clock.h, project/at_start_f403/examples/usart/printf/src/at32f403_clock.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_clock.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_clock.h, project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_clock.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_clock.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_clock.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_clock.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_clock.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_clock.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_clock.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_clock.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_clock.h, project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c, project/at_start_f403/templates/inc/at32f403_clock.h, project/at_start_f403/templates/src/at32f403_clock.c, utilities/at32f403_freertos_demo/inc/at32f403_clock.h, utilities/at32f403_freertos_demo/src/at32f403_clock.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_clock.h, utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_clock.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_clock.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c
  • system_clock_recover() : project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c
  • system_core_clock_update() : system_at32f403.c, system_at32f403.h
  • SystemInit() : system_at32f403.c, system_at32f403.h
  • systick_clock_source_config() : at32f403_misc.h, at32f403_misc.c
  • systick_configuration() : project/at_start_f403/examples/tmr/6_steps/src/main.c
  • SysTick_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • systick_handler() : project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c


AT32F403 Firmwary Library: Globals

- t -

  • TAMPER_IRQHandler() : project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c
  • TaskFileRegIsValid() : cf.c
  • TMR1_BRK_TMR9_IRQHandler() : project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c
  • tmr1_config() : project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/exint/exint_software_trigger/src/main.c
  • TMR1_OVF_TMR10_IRQHandler() : project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/exint/exint_software_trigger/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c
  • TMR1_TRG_HALL_TMR11_IRQHandler() : project/at_start_f403/examples/tmr/6_steps/src/main.c
  • tmr2_config() : project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c
  • TMR2_GLOBAL_IRQHandler() : project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c
  • TMR3_GLOBAL_IRQHandler() : project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, app_led3_toggle/src/tmr.c, app_led4_toggle/src/tmr.c, bootloader/src/tmr.c
  • TMR5_GLOBAL_IRQHandler() : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c
  • tmr_32_bit_function_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_base_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_brkdt_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_brkdt_default_para_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel1_input_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_buffer_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_dma_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_channel_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_clock_source_div_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_cnt_dir_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_counter_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_counter_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_counter_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_div_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_div_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_dma_control_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_dma_request_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_encoder_mode_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_event_sw_trigger() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_external_clock_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_external_clock_mode1_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_external_clock_mode2_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_flag_clear() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_flag_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_force_output_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_hall_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_init() : app_led3_toggle/inc/tmr.h, app_led3_toggle/src/tmr.c, app_led4_toggle/inc/tmr.h, app_led4_toggle/src/tmr.c, bootloader/inc/tmr.h, bootloader/src/tmr.c
  • tmr_input_channel_divider_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_input_channel_filter_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_input_channel_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_input_default_para_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_internal_clock_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_interrupt_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_interrupt_flag_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_one_cycle_mode_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_buffer_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_immediately_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_mode_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_polarity_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_channel_switch_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_default_para_init() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_output_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_overflow_event_disable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_overflow_request_source_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_period_buffer_enable() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_period_value_get() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_period_value_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_primary_mode_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_pwm_input_config() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_repetition_counter_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_reset() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_sub_mode_select() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_sub_sync_mode_set() : at32f403_tmr.h, at32f403_tmr.c
  • tmr_trigger_input_select() : at32f403_tmr.h, at32f403_tmr.c
  • touch_adjust() : touch.h, touch.c
  • touch_pin_init() : touch.h, touch.c
  • touch_read_1byte() : touch.h, touch.c
  • touch_read_ad() : touch.h, touch.c
  • touch_read_x_or_y() : touch.h, touch.c
  • touch_read_xy() : touch.h, touch.c
  • touch_scan() : touch.h, touch.c
  • touch_write_1byte() : touch.h, touch.c
  • Translate_CHSAddr() : cf.c
  • tx_data_fill() : project/at_start_f403/examples/spi/w25q_flash/src/main.c


AT32F403 Firmwary Library: Globals

- u -

  • uart_init() : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c, app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c, bootloader/inc/usart.h, bootloader/src/usart.c
  • uart_print_init() : at32f403_board.c, at32f403_board.h
  • UsageFault_Handler() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c, project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h, project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c, project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c, project/at_start_f403/examples/can/filter/inc/at32f403_int.h, project/at_start_f403/examples/can/filter/src/at32f403_int.c, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h, project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c, project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h, project/at_start_f403/examples/crc/calculation/src/at32f403_int.c, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c, project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h, project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h, project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c, project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h, project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h, project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h, project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h, project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h, project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h, project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h, project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/irda/inc/at32f403_int.h, project/at_start_f403/examples/usart/irda/src/at32f403_int.c, project/at_start_f403/examples/usart/polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/polling/src/at32f403_int.c, project/at_start_f403/examples/usart/printf/inc/at32f403_int.h, project/at_start_f403/examples/usart/printf/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h, project/at_start_f403/examples/usart/rs485/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h, project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h, project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c, project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c, project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c, project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c, project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h, project/at_start_f403/examples/xmc/nor/src/at32f403_int.c, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h, project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c, project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h, project/at_start_f403/examples/xmc/psram/src/at32f403_int.c, project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h, project/at_start_f403/templates/inc/at32f403_int.h, project/at_start_f403/templates/src/at32f403_int.c, utilities/at32f403_freertos_demo/inc/at32f403_int.h, utilities/at32f403_freertos_demo/src/at32f403_int.c, utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h, utilities/at32f403_gen_random_number_demo/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
  • usart1_config() : project/at_start_f403/examples/pwc/sleep_usart1/src/main.c
  • USART1_IRQHandler() : project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c, app_led3_toggle/src/usart.c, app_led4_toggle/src/usart.c, bootloader/src/usart.c
  • USART2_IRQHandler() : project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/rs485/src/main.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • USART3_IRQHandler() : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c
  • usart_break_bit_num_set() : at32f403_usart.h, at32f403_usart.c
  • usart_break_send() : at32f403_usart.h, at32f403_usart.c
  • usart_clock_config() : at32f403_usart.h, at32f403_usart.c
  • usart_clock_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_configuration() : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/usart/idle_detection/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/irda/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart_data_receive() : at32f403_usart.h, at32f403_usart.c
  • usart_data_transmit() : at32f403_usart.h, at32f403_usart.c
  • usart_dma_receiver_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_dma_transmitter_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_flag_clear() : at32f403_usart.h, at32f403_usart.c
  • usart_flag_get() : at32f403_usart.h, at32f403_usart.c
  • usart_gpio_config() : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_hardware_flow_control_set() : at32f403_usart.h, at32f403_usart.c
  • usart_init() : at32f403_usart.h, at32f403_usart.c
  • usart_interrupt_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_interrupt_flag_get() : at32f403_usart.h, at32f403_usart.c
  • usart_irda_low_power_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_irda_mode_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_irda_smartcard_division_set() : at32f403_usart.h, at32f403_usart.c
  • usart_lin_mode_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_parity_selection_config() : at32f403_usart.h, at32f403_usart.c
  • usart_receive_data() : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_receiver_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_receiver_mute_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_reset() : at32f403_usart.h, at32f403_usart.c
  • usart_send_data() : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_single_line_halfduplex_select() : at32f403_usart.h, at32f403_usart.c
  • usart_smartcard_guard_time_set() : at32f403_usart.h, at32f403_usart.c
  • usart_smartcard_mode_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_smartcard_nack_set() : at32f403_usart.h, at32f403_usart.c
  • usart_spi_configuration() : project/at_start_f403/examples/usart/synchronous/src/main.c
  • usart_transmitter_enable() : at32f403_usart.h, at32f403_usart.c
  • usart_wakeup_id_set() : at32f403_usart.h, at32f403_usart.c
  • usart_wakeup_mode_set() : at32f403_usart.h, at32f403_usart.c
  • usb_buffer_free() : at32f403_usb.h, at32f403_usb.c
  • usb_buffer_malloc() : at32f403_usb.h, at32f403_usb.c
  • usb_clock48m_select() : project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c
  • usb_connect() : at32f403_usb.h, at32f403_usb.c
  • usb_delay_ms() : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h, project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h
  • usb_delay_us() : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h, project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h
  • usb_dev_init() : at32f403_usb.h, at32f403_usb.c
  • usb_disconnect() : at32f403_usb.h, at32f403_usb.c
  • usb_enter_suspend() : at32f403_usb.h, at32f403_usb.c
  • usb_ept_close() : at32f403_usb.h, at32f403_usb.c
  • usb_ept_open() : at32f403_usb.h, at32f403_usb.c
  • usb_ept_stall() : at32f403_usb.h, at32f403_usb.c
  • usb_exit_suspend() : at32f403_usb.h, at32f403_usb.c
  • usb_flag_clear() : at32f403_usb.h, at32f403_usb.c
  • usb_flag_get() : at32f403_usb.h, at32f403_usb.c
  • usb_hid_buf_process() : audio_hid_class.c, custom_hid_class.c
  • usb_hid_keyboard_send_char() : keyboard_class.c, keyboard_class.h
  • usb_hid_mouse_send() : mouse_class.c, mouse_class.h
  • usb_iap_class_send_report() : hid_iap_class.c, hid_iap_class.h
  • usb_interrupt_enable() : at32f403_usb.h, at32f403_usb.c
  • usb_interrupt_flag_get() : at32f403_usb.h, at32f403_usb.c
  • usb_keyboard_class_send_report() : keyboard_class.c, keyboard_class.h
  • usb_low_power_wakeup_config() : project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c
  • usb_mouse_class_send_report() : mouse_class.c, mouse_class.h
  • usb_printer_get_rxdata() : printer_class.c, printer_class.h
  • usb_printer_send_data() : printer_class.c, printer_class.h
  • usb_read_packet() : at32f403_usb.h, at32f403_usb.c
  • usb_remote_wkup_clear() : at32f403_usb.h, at32f403_usb.c
  • usb_remote_wkup_set() : at32f403_usb.h, at32f403_usb.c
  • usb_reset() : project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c
  • usb_set_address() : at32f403_usb.h, at32f403_usb.c
  • usb_usart_config() : cdc_class.c, cdc_msc_class.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usb_usbbufs_enable() : at32f403_usb.h, at32f403_usb.c
  • usb_vcp_cmd_process() : cdc_class.c, cdc_keyboard_class.c, cdc_msc_class.c
  • usb_vcp_get_rxdata() : cdc_class.c, cdc_class.h, cdc_msc_class.c, cdc_msc_class.h
  • usb_vcp_send_data() : cdc_class.c, cdc_class.h, cdc_msc_class.c, cdc_msc_class.h
  • usb_vcpkybrd_class_send_report() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • usb_vcpkybrd_keyboard_send_char() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • usb_vcpkybrd_vcp_get_rxdata() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • usb_vcpkybrd_vcp_send_data() : cdc_keyboard_class.c, cdc_keyboard_class.h
  • usb_write_packet() : at32f403_usb.h, at32f403_usb.c
  • usbd_clear_feature() : usbd_sdr.c
  • usbd_clear_stall() : usbd_core.h, usbd_core.c
  • usbd_connect() : usbd_core.h, usbd_core.c
  • usbd_connect_state_get() : usbd_core.h, usbd_core.c
  • usbd_core_in_handler() : usbd_core.h, usbd_core.c
  • usbd_core_init() : usbd_core.h, usbd_core.c
  • usbd_core_out_handler() : usbd_core.h, usbd_core.c
  • usbd_core_setup_handler() : usbd_core.h, usbd_core.c
  • usbd_ctrl_recv() : usbd_core.h, usbd_core.c
  • usbd_ctrl_recv_status() : usbd_core.h, usbd_core.c
  • usbd_ctrl_send() : usbd_core.h, usbd_core.c
  • usbd_ctrl_send_status() : usbd_core.h, usbd_core.c
  • usbd_ctrl_unsupport() : usbd_core.h, usbd_core.c
  • usbd_device_request() : usbd_sdr.h, usbd_sdr.c
  • usbd_disconnect() : usbd_core.h, usbd_core.c
  • usbd_endpoint_request() : usbd_sdr.h, usbd_sdr.c
  • usbd_enter_suspend() : usbd_core.h, usbd_core.c
  • usbd_ept_buf_auto_define() : usbd_core.h, usbd_core.c
  • usbd_ept_buf_custom_define() : usbd_core.h, usbd_core.c
  • usbd_ept_close() : usbd_core.h, usbd_core.c
  • usbd_ept_dbuffer_enable() : usbd_core.h, usbd_core.c
  • usbd_ept_defaut_init() : usbd_core.h, usbd_core.c
  • usbd_ept_loop_handler() : usbd_int.h, usbd_int.c
  • usbd_ept_open() : usbd_core.h, usbd_core.c
  • usbd_ept_recv() : usbd_core.h, usbd_core.c
  • usbd_ept_send() : usbd_core.h, usbd_core.c
  • usbd_eptn_handler() : usbd_int.h, usbd_int.c
  • usbd_get_configuration() : usbd_sdr.c
  • usbd_get_descriptor() : usbd_sdr.c
  • usbd_get_recv_len() : usbd_core.h, usbd_core.c
  • usbd_get_status() : usbd_sdr.c
  • usbd_hid_iap_in_complete() : hid_iap_class.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • usbd_hid_iap_process() : hid_iap_class.h, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • usbd_int_to_unicode() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • usbd_interface_request() : usbd_sdr.h, usbd_sdr.c
  • usbd_irq_handler() : usbd_int.h, usbd_int.c
  • usbd_remote_wakeup() : usbd_core.h, usbd_core.c
  • usbd_reset_handler() : usbd_int.h, usbd_int.c
  • usbd_set_address() : usbd_sdr.c
  • usbd_set_configuration() : usbd_sdr.c
  • usbd_set_device_addr() : usbd_core.h, usbd_core.c
  • usbd_set_feature() : usbd_sdr.c
  • usbd_set_stall() : usbd_core.h, usbd_core.c
  • usbd_setup_request_parse() : usbd_sdr.h, usbd_sdr.c
  • usbd_sof_handler() : usbd_int.h, usbd_int.c
  • usbd_suspend_handler() : usbd_int.h, usbd_int.c
  • usbd_unicode_convert() : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • usbd_wakeup_handler() : usbd_int.h, usbd_int.c
  • USBFS_L_CAN1_RX0_IRQHandler() : project/at_start_f403/examples/can/communication_mode/src/main.c, project/at_start_f403/examples/can/filter/src/main.c, project/at_start_f403/examples/can/loopback_mode/src/main.c, project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c


AT32F403 Firmwary Library: Globals

- v -

  • Vaild_Init_Drive_Para() : cf.c


AT32F403 Firmwary Library: Globals

- w -

  • wait_stbl() : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c, project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c, project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c, project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c, project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c, project/at_start_f403/examples/can/filter/src/at32f403_clock.c, project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c, project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c, project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c, project/at_start_f403/examples/crm/clock_failure_detection/src/main.c, project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c, project/at_start_f403/examples/crm/sysclk_switch/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c, project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c, project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c, project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c, project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c, project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c, project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c, project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c, project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c, project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c, project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c, project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c, project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c, project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c, project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c, project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c, project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c, project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c, project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c, project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c, project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c, project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c, project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c, project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c, project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c, project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c, project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c, project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c, project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/irda/src/at32f403_clock.c, project/at_start_f403/examples/usart/polling/src/at32f403_clock.c, project/at_start_f403/examples/usart/printf/src/at32f403_clock.c, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c, project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c, project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c, project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c, project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c, project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c, project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c, project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c, project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c, project/at_start_f403/templates/src/at32f403_clock.c, utilities/at32f403_freertos_demo/src/at32f403_clock.c, utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c
  • wdt_counter_reload() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_divider_set() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_enable() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_flag_get() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_register_write_enable() : at32f403_wdt.h, at32f403_wdt.c
  • wdt_reload_value_set() : at32f403_wdt.h, at32f403_wdt.c
  • Write_Sector() : cf.c
  • wwdt_counter_set() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_divider_set() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_enable() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_flag_clear() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_flag_get() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_interrupt_enable() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_interrupt_flag_get() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_reset() : at32f403_wwdt.h, at32f403_wwdt.c
  • wwdt_window_counter_set() : at32f403_wwdt.h, at32f403_wwdt.c


AT32F403 Firmwary Library: Globals

- x -

  • xmc_ecc_get() : at32f403_xmc.h, at32f403_xmc.c
  • XMC_Enable_16bit_Feature() : cf.c, cf.h
  • XMC_Enable_Wait_Feature() : cf.c, cf.h
  • xmc_ext_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_flag_clear() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_flag_status_get() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_init() : lcd_8bit/inc/xmc_lcd.h, lcd_8bit/src/xmc_lcd.c, lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • xmc_interrupt_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_interrupt_flag_status_get() : at32f403_xmc.h, at32f403_xmc.c
  • XMC_IRQHandler() : cf.c
  • xmc_nand_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_ecc_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_reset() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nand_timing_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_reset() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_nor_sram_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_norsram_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_norsram_timing_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_default_para_init() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_enable() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_init() : at32f403_xmc.h, at32f403_xmc.c
  • XMC_PCCARD_InitAttributeSpaceTiming() : cf.c, cf.h
  • XMC_PCCARD_InitCommonSpaceTiming() : cf.c, cf.h
  • XMC_PCCARD_InitCtrl() : cf.c, cf.h
  • XMC_PCCARD_InitIOSpaceTiming() : cf.c, cf.h
  • xmc_pccard_reset() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_timing_config() : at32f403_xmc.h, at32f403_xmc.c
  • xmc_pccard_timing_default_para_init() : at32f403_xmc.h, at32f403_xmc.c


AT32F403 Firmwary Library: Globals

- _ -

  • _asciimap : cdc_keyboard_class.c, keyboard_class.c


AT32F403 Firmwary Library: Globals

- a -

  • adc1_ordinary_value : project/at_start_f403/examples/adc/current_vref_value_check/src/main.c, project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • adc1_ordinary_valuetab : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c, project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • adc1_preempt_valuetab : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c
  • adc3_ordinary_valuetab : project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c
  • ALIGNED_TAIL : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, composite_cdc_msc/msc_bot_scsi.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc/msc_bot_scsi.c, msc_desc.c, printer_class.c, printer_desc.c
  • atr_decode_status : project/at_start_f403/examples/usart/smartcard/src/main.c
  • audio_class_handler : audio_class.c, audio_class.h
  • audio_codec : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • audio_desc_handler : audio_desc.c, audio_desc.h
  • audio_hid_class_handler : audio_hid_class.c, audio_hid_class.h
  • audio_hid_desc_handler : audio_hid_desc.c, audio_hid_desc.h
  • audio_hid_struct : audio_hid_class.c
  • audio_struct : audio_class.c


AT32F403 Firmwary Library: Globals

- b -

  • bpr_addr_tab : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • buffer : project/at_start_f403/examples/cortex_m4/fpu/src/main.c
  • buffer_cc1 : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • buffer_cc2 : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • buffer_read : project/at_start_f403/examples/flash/flash_write_read/src/main.c
  • buffer_write : project/at_start_f403/examples/flash/flash_write_read/src/main.c


AT32F403 Firmwary Library: Globals

- c -

  • calendar : rtc.h, rtc.c
  • capture : project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c
  • capturenumber : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • card_inserted : project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c, project/at_start_f403/examples/usart/smartcard/src/main.c
  • card_protocol : project/at_start_f403/examples/usart/smartcard/src/main.c
  • card_type : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • ccr1_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • ccr2_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • ccr3_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • ccr4_val : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • cdc_class_handler : cdc_class.c, cdc_class.h
  • cdc_desc_handler : cdc_desc.c, cdc_desc.h
  • cdc_keyboard_class_handler : cdc_keyboard_class.c, cdc_keyboard_class.h
  • cdc_keyboard_desc_handler : cdc_keyboard_desc.c, cdc_keyboard_desc.h
  • cdc_msc_class_handler : cdc_msc_class.c, cdc_msc_class.h
  • cdc_msc_desc_handler : cdc_msc_desc.c, cdc_msc_desc.h
  • cdc_msc_struct : cdc_msc_class.c
  • cdc_struct : cdc_class.c
  • channel1_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • channel2_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • channel3_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • channel4_pulse : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c
  • cid_table : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • cmd_addr_cnt : bootloader/src/iap.c
  • cmd_ctr_step : bootloader/inc/iap.h, bootloader/src/iap.c
  • cmd_data_cnt : bootloader/src/iap.c
  • cmd_data_group_struct : bootloader/src/iap.c
  • cmd_data_group_type_struct : bootloader/inc/iap.h
  • cmd_data_step : bootloader/inc/iap.h, bootloader/src/iap.c
  • cmd_rdx : touch.c
  • cmd_rdy : touch.c
  • config_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • counter : project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c
  • crc1_value : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c
  • crc2_value : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c
  • crc_value : project/at_start_f403/examples/crc/calculation/src/main.c
  • crm_clocks : project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • crm_clocks_freq_struct : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c, project/at_start_f403/examples/debug/tmr1/src/main.c, project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c, project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/timer_base/src/main.c, project/at_start_f403/examples/xmc/lcd_8bit/src/main.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • csd_table : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • custom_hid_class_handler : custom_hid_class.c, custom_hid_class.h
  • custom_hid_desc_handler : custom_hid_desc.c, custom_hid_desc.h
  • custom_hid_struct : custom_hid_class.c


AT32F403 Firmwary Library: Globals

- d -

  • data_buffer : project/at_start_f403/examples/crc/calculation/src/main.c
  • data_count : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c
  • data_counter_end : project/at_start_f403/examples/dma/flash_to_sram/src/main.c
  • device_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • device_mode : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • DMA1_MEM_LEN : cf.c
  • dma1_trans_complete_flag : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c, project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c
  • dma2_trans_complete_flag : project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c
  • dma_init_struct : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c
  • dma_init_structure : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • DMA_InitStructure : cf.c
  • dma_trans_complete_flag : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c, project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c
  • dst_buffer : project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/usart/smartcard/src/main.c
  • dualsine12bit : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c
  • dualsquare12bit : project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c
  • duty_cycle : project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • duty_result : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c


AT32F403 Firmwary Library: Globals

- e -

  • ecc_value_read : xmc_ecc.h, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • ecc_value_write : xmc_ecc.h, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • ecc_value_write_last : project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • escalator8bit : project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c


AT32F403 Firmwary Library: Globals

- f -

  • fac_ms : at32f403_board.c
  • fac_us : at32f403_board.c
  • fat16_file_name : flash_fat16.c
  • fat16_root_dir_sector : flash_fat16.c
  • fat16_sector : flash_fat16.c
  • fat16_table_sector0 : flash_fat16.c
  • file : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • file_match : flash_fat16.c
  • file_write_nr : flash_fat16.c
  • flash_buf : project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • flash_iap : flash_fat16.h, flash_fat16.c
  • freq_result : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • frequency : project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • fs : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c


AT32F403 Firmwary Library: Globals

- g -

  • g_audio_hid_usb_desc : audio_hid_desc.h
  • g_custom_hid_usb_desc : custom_hid_desc.h
  • g_file_attr : flash_fat16.c
  • g_hidiap_usb_desc : hid_iap_desc.h
  • g_keyboard_usb_desc : keyboard_desc.h
  • g_mouse_usb_desc : mouse_desc.h
  • g_speed : project/at_start_f403/templates/src/main.c
  • g_usb_offset_addr : at32f403_usb.c
  • g_usb_packet_address : at32f403_usb.h, at32f403_usb.c
  • g_usbd_audio_hid_report : audio_hid_desc.h
  • g_usbd_custom_hid_report : custom_hid_desc.h
  • g_usbd_hidiap_report : hid_iap_desc.h
  • g_usbd_keyboard_report : keyboard_desc.h
  • g_usbd_mouse_report : mouse_desc.h
  • g_usbd_vcpkybrd_hid_report : cdc_keyboard_desc.h
  • g_vcpkybrd_hid_usb_desc : cdc_keyboard_desc.h
  • get_data_from_usart_flag : bootloader/inc/tmr.h, bootloader/src/tmr.c
  • gimage_0 : picture.h
  • gimage_3 : picture.h
  • gimage_5 : picture.h
  • gimage_8 : picture.h
  • gimage_9 : picture.h
  • gpio_init_struct : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c, project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c, project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c, project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c, project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/cascade_synchro/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c


AT32F403 Firmwary Library: Globals

- h -

  • hi2cx : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • hid_iap_class_handler : hid_iap_class.c, hid_iap_class.h
  • hid_iap_desc_handler : hid_iap_desc.c, hid_iap_desc.h
  • hw_usart_read_index : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • hw_usart_rx_index : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c


AT32F403 Firmwary Library: Globals

- i -

  • i2s1_buffer_tx : project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • i2s2_buffer_rx : project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • iap_flag : app_led3_toggle/inc/usart.h, app_led3_toggle/src/usart.c, app_led4_toggle/inc/usart.h, app_led4_toggle/src/usart.c
  • iap_info : hid_iap_class.c, hid_iap_class.h
  • ic2value : project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c
  • ic3readvalue1 : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • ic3readvalue2 : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • idx : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c
  • index_cnt : project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c


AT32F403 Firmwary Library: Globals

- j -

  • j : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • jump_to_app : bootloader/src/iap.c


AT32F403 Firmwary Library: Globals

- k -

  • keyboard_class_handler : keyboard_class.c, keyboard_class.h
  • keyboard_desc_handler : keyboard_desc.c, keyboard_desc.h
  • keyboard_struct : keyboard_class.c


AT32F403 Firmwary Library: Globals

- l -

  • langid_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • lcd_dev_struct : lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • LCD_ID : lcd_touch_16bit/inc/xmc_lcd.h
  • lcd_struct : lcd_touch_16bit/inc/xmc_lcd.h, lcd_touch_16bit/src/xmc_lcd.c
  • led2_handler : utilities/at32f403_freertos_demo/src/main.c
  • led3_handler : utilities/at32f403_freertos_demo/src/main.c
  • led_gpio_crm_clk : at32f403_board.c
  • led_gpio_pin : at32f403_board.c
  • led_gpio_port : at32f403_board.c
  • lickfreq : project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • linecoding : cdc_class.c, cdc_msc_class.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • linecoding_vcpkybrd : cdc_keyboard_class.c


AT32F403 Firmwary Library: Globals

- m -

  • max_marks : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • mblock_rbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • mblock_tbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • mean : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • mic_dma_buffer : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • min_marks : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • mon_table : rtc.c
  • mouse_class_handler : mouse_class.c, mouse_class.h
  • mouse_desc_handler : mouse_desc.c, mouse_desc.h
  • mouse_struct : mouse_class.c
  • msc_class_handler : msc_class.c, msc_class.h
  • msc_desc_handler : msc_desc.c, msc_desc.h
  • msc_flash_size : composite_vcp_msc/src/msc_diskio.c, msc/src/msc_diskio.c
  • msc_struct : msc_class.c


AT32F403 Firmwary Library: Globals

- n -

  • nand_id_struct : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • nor_id : project/at_start_f403/examples/xmc/nor/src/main.c
  • number : project/at_start_f403/examples/xmc/nor/src/main.c
  • numStudents : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • numSubjects : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c


AT32F403 Firmwary Library: Globals

- o -

  • operationcomplete : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • orig_default_head : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • orig_default_Sector : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • ov_cnt : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c


AT32F403 Firmwary Library: Globals

- p -

  • page_number : project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • pagenumber : project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • PCCARD_PATT4_Timing : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PCCARD_PIO4_Timing : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PCCARD_PMEM4_Timing : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • pccardHandle : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • periodvalue : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c, project/at_start_f403/examples/rtc/lick_calibration/src/main.c
  • pftarget : project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, app_led3_toggle/src/hid_iap_user.c, app_led4_toggle/src/hid_iap_user.c, bootloader/src/hid_iap_user.c
  • point_color : project/at_start_f403/examples/xmc/lcd_8bit/src/main.c, project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c
  • preempt_conversion_count : project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c
  • preempt_trigger_count : project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c, project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c
  • prescaler_value : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c
  • press_mouse : project/at_start_f403/examples/usb_device/mouse/src/main.c
  • printer_class_handler : printer_class.c, printer_class.h
  • printer_desc_handler : printer_desc.c, printer_desc.h
  • printer_struct : printer_class.c


AT32F403 Firmwary Library: Globals

- r -

  • rca : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • read_buffer : operate_spim.c
  • reg_addr_data : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • report_buf : project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c
  • rs485_buffer_rx : project/at_start_f403/examples/usart/rs485/src/main.c
  • rs485_buffer_rx_cnt : project/at_start_f403/examples/usart/rs485/src/main.c
  • rx_buf : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c
  • rx_buf1 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • rx_buf2 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • rx_buf3 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • rx_buffer : project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • rx_counter : project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • rx_index : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c
  • rxbuffer : project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c


AT32F403 Firmwary Library: Globals

- s -

  • sblock_rbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • sblock_tbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • sc_a2r_struct : project/at_start_f403/examples/usart/smartcard/src/main.c
  • sc_baud_rate : project/at_start_f403/examples/usart/smartcard/src/main.c
  • sc_clock_freq : project/at_start_f403/examples/usart/smartcard/src/main.c
  • scsi_inquiry : composite_vcp_msc/src/msc_diskio.c, msc/src/msc_diskio.c, virtual_msc_iap/src/msc_diskio.c
  • sd_card_info : sd_mmc_card/inc/at32_sdio.h, sd_mmc_card/src/at32_sdio.c, sdio_fatfs/inc/at32_sdio.h, sdio_fatfs/src/at32_sdio.c
  • sdio_command_init_struct : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sdio_data_init_struct : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • sector_size : composite_vcp_msc/src/msc_diskio.c, msc/src/msc_diskio.c
  • serial_descriptor : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c
  • sine12bit : project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c
  • spi1_buffer_tx : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • spi1_rx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c
  • spi1_tx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • spi2_buffer_rx : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
  • spi2_rx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_rx_counter : project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_tx_buffer : project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_tx_buffer_size : project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi2_tx_counter : project/at_start_f403/examples/usart/synchronous/src/main.c
  • spi_init_struct : project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c
  • spiflash_sector_buf : spi_flash.c
  • spk_dma_buffer : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • src_buffer : project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c
  • src_const_buffer : project/at_start_f403/examples/dma/flash_to_sram/src/main.c
  • status : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • std : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • step : project/at_start_f403/examples/tmr/6_steps/src/main.c
  • stop_flag : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • stream_rbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • stream_tbuffer : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • student_num : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • sys_counter : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • system_core_clock : system_at32f403.c, system_at32f403.h


AT32F403 Firmwary Library: Globals

- t -

  • table_week : rtc.c
  • Test_Mode : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • test_result : project/at_start_f403/examples/can/filter/src/main.c
  • testMarks_f32 : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • testOutput : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • testUnity_f32 : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • time_cnt : project/at_start_f403/examples/usart/printf/src/main.c
  • time_ira_cnt : bootloader/inc/tmr.h, bootloader/src/tmr.c
  • timer_period : project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c
  • tmpCC4 : project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c
  • tmr3freq : project/at_start_f403/examples/tmr/input_capture/src/main.c
  • tmr_brkdt_config_struct : project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c
  • tmr_ic_init_structure : project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/pwm_input/src/main.c, project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • tmr_input_config_struct : project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c, project/at_start_f403/examples/tmr/input_capture/src/main.c
  • tmr_oc_init_structure : project/at_start_f403/examples/tmr/oc_high/src/main.c, project/at_start_f403/examples/tmr/oc_low/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c, project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c, project/at_start_f403/examples/tmr/one_cycle/src/main.c, project/at_start_f403/examples/tmr/parallel_synchro/src/main.c, project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c, project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c, project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c, project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
  • tmr_output_struct : project/at_start_f403/examples/tmr/6_steps/src/main.c, project/at_start_f403/examples/tmr/7_pwm_output/src/main.c, project/at_start_f403/examples/tmr/cascade_synchro/src/main.c, project/at_start_f403/examples/tmr/complementary_signals/src/main.c, project/at_start_f403/examples/tmr/dma/src/main.c, project/at_start_f403/examples/tmr/dma_burst/src/main.c, project/at_start_f403/examples/tmr/external_clock/src/main.c, project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c, project/at_start_f403/examples/tmr/hang_mode/src/main.c
  • touch_dev_struct : touch.h, touch.c
  • touch_struct : touch.h, touch.c
  • transfer_end : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • transfer_error : sd_mmc_card/src/at32_sdio.c, sdio_fatfs/src/at32_sdio.c
  • transfer_status : project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c
  • transfer_status1 : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c
  • transfer_status2 : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c
  • transfer_status3 : project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c
  • transfer_status4 : project/at_start_f403/examples/spi/fullduplex_polling/src/main.c
  • tx_buf : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c
  • tx_buf1 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • tx_buf2 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • tx_buf3 : project/at_start_f403/examples/i2c/eeprom/src/main.c
  • tx_buffer : project/at_start_f403/examples/spi/w25q_flash/src/main.c, project/at_start_f403/examples/xmc/nand/ecc/src/main.c
  • tx_counter : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • tx_index : project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
  • txbuffer : project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c


AT32F403 Firmwary Library: Globals

- u -

  • u32i : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • update_status : bootloader/inc/iap.h, bootloader/src/iap.c
  • usart1_index : project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c
  • usart2_rx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart2_rx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • usart2_rx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • usart2_tx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart2_tx_buffer_size : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • usart2_tx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c
  • usart2_tx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • usart3_rx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart3_rx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c
  • usart3_rx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • usart3_tx_buffer : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • usart3_tx_buffer_size : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c
  • usart3_tx_counter : project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c
  • usart3_tx_dma_status : project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
  • usart_group_struct : bootloader/inc/usart.h, bootloader/src/usart.c
  • usart_rx_buffer : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usart_rx_data_len : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usb_buffer : project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • usb_core_dev : project/at_start_f403/examples/usb_device/audio/src/main.c, project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c, project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c, project/at_start_f403/examples/usb_device/custom_hid/src/main.c, project/at_start_f403/examples/usb_device/keyboard/src/main.c, project/at_start_f403/examples/usb_device/mouse/src/main.c, project/at_start_f403/examples/usb_device/msc/src/main.c, project/at_start_f403/examples/usb_device/printer/src/main.c, project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c, project/at_start_f403/examples/usb_device/virtual_comport/src/main.c, project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c, utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c


AT32F403 Firmwary Library: Globals

- v -

  • var : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • variables : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • variables_addr : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • variables_bit_val : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • vcp_keyboard_struct : cdc_keyboard_class.c
  • verification_result : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • vmor_flag_index : project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c, project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
  • vp_desc : audio_desc.c, audio_hid_desc.c, cdc_desc.c, cdc_keyboard_desc.c, cdc_msc_desc.c, custom_hid_desc.c, hid_iap_desc.c, keyboard_desc.c, mouse_desc.c, msc_desc.c, printer_desc.c


AT32F403 Firmwary Library: Globals

- w -

  • weekday_table : project/at_start_f403/examples/rtc/calendar/src/main.c
  • work : project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
  • write_buffer : operate_spim.c
  • write_read_addr_struct : project/at_start_f403/examples/xmc/nand/ecc/src/main.c, project/at_start_f403/examples/xmc/nand/nand/src/main.c
  • writereadstatus : project/at_start_f403/examples/xmc/nand/nand/src/main.c, project/at_start_f403/examples/xmc/nor/src/main.c, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c


AT32F403 Firmwary Library: Globals

- b -

  • BOOL : cf.h

- i -

  • iapfun : bootloader/inc/iap.h
  • INT16 : at32f403.h
  • INT32 : at32f403.h
  • INT8 : at32f403.h
  • IRQn_Type : at32f403.h

- s -

  • s16 : at32f403.h
  • s32 : at32f403.h
  • s8 : at32f403.h
  • sc16 : at32f403.h
  • sc32 : at32f403.h
  • sc8 : at32f403.h

- u -

  • u16 : at32f403.h
  • u32 : at32f403.h
  • u8 : at32f403.h
  • uc16 : at32f403.h
  • uc32 : at32f403.h
  • uc8 : at32f403.h
  • UINT16 : at32f403.h
  • UINT32 : at32f403.h
  • UINT8 : at32f403.h
  • usb_reg_type : at32f403_usb.h

- v -

  • vs16 : at32f403.h
  • vs32 : at32f403.h
  • vs8 : at32f403.h
  • vsc16 : at32f403.h
  • vsc32 : at32f403.h
  • vsc8 : at32f403.h
  • vu16 : at32f403.h
  • vu32 : at32f403.h
  • vu8 : at32f403.h
  • vuc16 : at32f403.h
  • vuc32 : at32f403.h
  • vuc8 : at32f403.h


AT32F403 Firmwary Library: Globals

- a -

  • adc_channel_select_type : at32f403_adc.h
  • adc_combine_mode_type : at32f403_adc.h
  • adc_data_align_type : at32f403_adc.h
  • adc_ordinary_trig_select_type : at32f403_adc.h
  • adc_preempt_channel_type : at32f403_adc.h
  • adc_preempt_trig_select_type : at32f403_adc.h
  • adc_sampletime_select_type : at32f403_adc.h
  • adc_voltage_monitoring_type : at32f403_adc.h


AT32F403 Firmwary Library: Globals

- b -

  • bpr_data_type : at32f403_bpr.h
  • bpr_rtc_output_type : at32f403_bpr.h
  • bpr_tamper_pin_active_level_type : at32f403_bpr.h
  • button_type : at32f403_board.h


AT32F403 Firmwary Library: Globals

- c -

  • can_bts1_type : at32f403_can.h
  • can_bts2_type : at32f403_can.h
  • can_enter_doze_status_type : at32f403_can.h
  • can_error_record_type : at32f403_can.h
  • can_filter_bit_width_type : at32f403_can.h
  • can_filter_fifo_type : at32f403_can.h
  • can_filter_mode_type : at32f403_can.h
  • can_identifier_type : at32f403_can.h
  • can_mode_type : at32f403_can.h
  • can_msg_discarding_rule_type : at32f403_can.h
  • can_msg_sending_rule_type : at32f403_can.h
  • can_operating_mode_type : at32f403_can.h
  • can_quit_doze_status_type : at32f403_can.h
  • can_rsaw_type : at32f403_can.h
  • can_rx_fifo_num_type : at32f403_can.h
  • can_trans_frame_type : at32f403_can.h
  • can_transmit_status_type : at32f403_can.h
  • can_tx_mailbox_num_type : at32f403_can.h
  • cmd_ctr_step_type : bootloader/inc/iap.h
  • cmd_data_step_type : bootloader/inc/iap.h
  • confirm_state : at32f403.h
  • crc_poly_size_type : at32f403_crc.h
  • crc_reverse_input_type : at32f403_crc.h
  • crc_reverse_output_type : at32f403_crc.h
  • crm_adc_div_type : at32f403_crm.h
  • crm_ahb_div_type : at32f403_crm.h
  • crm_apb1_div_type : at32f403_crm.h
  • crm_apb2_div_type : at32f403_crm.h
  • crm_clkout_select_type : at32f403_crm.h
  • crm_clock_source_type : at32f403_crm.h
  • crm_periph_clock_sleepmd_type : at32f403_crm.h
  • crm_periph_clock_type : at32f403_crm.h
  • crm_periph_reset_type : at32f403_crm.h
  • crm_pll_clock_source_type : at32f403_crm.h
  • crm_pll_mult_type : at32f403_crm.h
  • crm_pll_output_range_type : at32f403_crm.h
  • crm_rtc_clock_type : at32f403_crm.h
  • crm_sclk_type : at32f403_crm.h
  • crm_usb_clock_source_type : at32f403_crm.h
  • crm_usb_div_type : at32f403_crm.h
  • crm_usb_int_map_type : at32f403_crm.h


AT32F403 Firmwary Library: Globals

- d -

  • dac1_aligned_data_type : at32f403_dac.h
  • dac2_aligned_data_type : at32f403_dac.h
  • dac_dual_data_type : at32f403_dac.h
  • dac_mask_amplitude_type : at32f403_dac.h
  • dac_select_type : at32f403_dac.h
  • dac_trigger_type : at32f403_dac.h
  • dac_wave_type : at32f403_dac.h
  • data_trans_dir : at32f403_usb.h
  • dma_dir_type : at32f403_dma.h
  • dma_memory_data_size_type : at32f403_dma.h
  • dma_memory_inc_type : at32f403_dma.h
  • dma_peripheral_data_size_type : at32f403_dma.h
  • dma_peripheral_inc_type : at32f403_dma.h
  • dma_priority_level_type : at32f403_dma.h


AT32F403 Firmwary Library: Globals

- e -

  • ept_inout_type : at32f403_usb.h
  • ept_trans_type : at32f403_usb.h
  • error_status : at32f403.h
  • exint_line_mode_type : at32f403_exint.h
  • exint_polarity_config_type : at32f403_exint.h


AT32F403 Firmwary Library: Globals

- f -

  • flag_status : at32f403.h
  • flash_spim_model_type : at32f403_flash.h
  • flash_status_type : at32f403_flash.h


AT32F403 Firmwary Library: Globals

- g -

  • gpio_drive_type : at32f403_gpio.h
  • gpio_mode_type : at32f403_gpio.h
  • gpio_output_type : at32f403_gpio.h
  • gpio_pins_source_type : at32f403_gpio.h
  • gpio_port_source_type : at32f403_gpio.h
  • gpio_pull_type : at32f403_gpio.h


AT32F403 Firmwary Library: Globals

- i -

  • i2c_address_mode_type : at32f403_i2c.h
  • i2c_direction_type : at32f403_i2c.h
  • i2c_fsmode_duty_cycle_type : at32f403_i2c.h
  • i2c_master_ack_type : at32f403_i2c.h
  • i2c_mem_address_width_type : i2c_application.h
  • i2c_mode_type : i2c_application.h
  • i2c_pec_position_type : at32f403_i2c.h
  • i2c_smbus_alert_set_type : at32f403_i2c.h
  • i2c_smbus_mode_set_type : at32f403_i2c.h
  • i2c_status_type : i2c_application.h
  • i2s_audio_protocol_type : at32f403_spi.h
  • i2s_audio_sampling_freq_type : at32f403_spi.h
  • i2s_clock_polarity_type : at32f403_spi.h
  • i2s_data_channel_format_type : at32f403_spi.h
  • i2s_operation_mode_type : at32f403_spi.h
  • iap_machine_state_type : hid_iap_class.h
  • iap_result_type : hid_iap_class.h
  • IRQn : at32f403.h


AT32F403 Firmwary Library: Globals

- l -

  • led_type : at32f403_board.h
  • LockType : cf.h


AT32F403 Firmwary Library: Globals

- n -

  • nor_status : xmc_nor.h
  • nvic_lowpower_mode_type : at32f403_misc.h
  • nvic_priority_group_type : at32f403_misc.h


AT32F403 Firmwary Library: Globals

- p -

  • PCCARD_StateType : cf.h
  • printer_req_type : printer_class.h
  • pwc_deep_sleep_enter_type : at32f403_pwc.h
  • pwc_pvm_voltage_type : at32f403_pwc.h
  • pwc_sleep_enter_type : at32f403_pwc.h


AT32F403 Firmwary Library: Globals

- s -

  • sd_card_state_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_data_transfer_mode_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_error_status_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sd_memory_card_type : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • sdio_block_size_type : at32f403_sdio.h
  • sdio_bus_width_type : at32f403_sdio.h
  • sdio_edge_phase_type : at32f403_sdio.h
  • sdio_power_state_type : at32f403_sdio.h
  • sdio_read_wait_mode_type : at32f403_sdio.h
  • sdio_reponse_type : at32f403_sdio.h
  • sdio_rsp_index_type : at32f403_sdio.h
  • sdio_transfer_direction_type : at32f403_sdio.h
  • sdio_transfer_mode_type : at32f403_sdio.h
  • sdio_wait_type : at32f403_sdio.h
  • spi_clock_phase_type : at32f403_spi.h
  • spi_clock_polarity_type : at32f403_spi.h
  • spi_crc_direction_type : at32f403_spi.h
  • spi_cs_mode_type : at32f403_spi.h
  • spi_first_bit_type : at32f403_spi.h
  • spi_frame_bit_num_type : at32f403_spi.h
  • spi_half_duplex_direction_type : at32f403_spi.h
  • spi_master_slave_mode_type : at32f403_spi.h
  • spi_mclk_freq_div_type : at32f403_spi.h
  • spi_software_cs_level_type : at32f403_spi.h
  • spi_transmission_mode_type : at32f403_spi.h
  • StatusType : cf.h
  • sub_tmr_input_sel_type : at32f403_tmr.h
  • systick_clock_source_type : at32f403_misc.h


AT32F403 Firmwary Library: Globals

- t -

  • TestStatus : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • tmr_brk_polarity_type : at32f403_tmr.h
  • tmr_channel1_input_connected_type : at32f403_tmr.h
  • tmr_channel_input_divider_type : at32f403_tmr.h
  • tmr_channel_select_type : at32f403_tmr.h
  • tmr_clock_division_type : at32f403_tmr.h
  • tmr_count_mode_type : at32f403_tmr.h
  • tmr_dma_address_type : at32f403_tmr.h
  • tmr_dma_request_source_type : at32f403_tmr.h
  • tmr_dma_request_type : at32f403_tmr.h
  • tmr_dma_transfer_length_type : at32f403_tmr.h
  • tmr_encoder_mode_type : at32f403_tmr.h
  • tmr_event_trigger_type : at32f403_tmr.h
  • tmr_external_signal_divider_type : at32f403_tmr.h
  • tmr_external_signal_polarity_type : at32f403_tmr.h
  • tmr_force_output_type : at32f403_tmr.h
  • tmr_input_direction_mapped_type : at32f403_tmr.h
  • tmr_input_polarity_type : at32f403_tmr.h
  • tmr_output_control_mode_type : at32f403_tmr.h
  • tmr_output_polarity_type : at32f403_tmr.h
  • tmr_polarity_active_type : at32f403_tmr.h
  • tmr_primary_select_type : at32f403_tmr.h
  • tmr_sub_mode_select_type : at32f403_tmr.h
  • tmr_wp_level_type : at32f403_tmr.h


AT32F403 Firmwary Library: Globals

- u -

  • update_status_type : bootloader/inc/iap.h
  • upgrade_status_type : flash_fat16.h
  • usart_break_bit_num_type : at32f403_usart.h
  • usart_clock_phase_type : at32f403_usart.h
  • usart_clock_polarity_type : at32f403_usart.h
  • usart_data_bit_num_type : at32f403_usart.h
  • usart_hardware_flow_control_type : at32f403_usart.h
  • usart_lbcp_type : at32f403_usart.h
  • usart_parity_selection_type : at32f403_usart.h
  • usart_stop_bit_num_type : at32f403_usart.h
  • usart_wakeup_mode_type : at32f403_usart.h
  • usb_clk48_s : at32f403_usb.h
  • usb_ept_number_type : at32f403_usb.h
  • usb_sts_type : usb_std.h
  • usbd_conn_state : usb_std.h
  • usbd_event_type : usbd_core.h


AT32F403 Firmwary Library: Globals

- w -

  • wdt_cmd_value_type : at32f403_wdt.h
  • wdt_division_type : at32f403_wdt.h
  • wwdt_division_type : at32f403_wwdt.h


AT32F403 Firmwary Library: Globals

- x -

  • xmc_access_mode_type : at32f403_xmc.h
  • xmc_asyn_wait_type : at32f403_xmc.h
  • xmc_burst_access_mode_type : at32f403_xmc.h
  • xmc_class_bank_type : at32f403_xmc.h
  • xmc_data_addr_mux_type : at32f403_xmc.h
  • xmc_data_width_type : at32f403_xmc.h
  • xmc_ecc_enable_type : at32f403_xmc.h
  • xmc_ecc_pagesize_type : at32f403_xmc.h
  • xmc_extended_mode_type : at32f403_xmc.h
  • xmc_interrupt_flag_type : at32f403_xmc.h
  • xmc_interrupt_sources_type : at32f403_xmc.h
  • xmc_memory_type : at32f403_xmc.h
  • xmc_nand_pccard_wait_type : at32f403_xmc.h
  • xmc_nor_sram_subbank_type : at32f403_xmc.h
  • xmc_wait_signal_polarity_type : at32f403_xmc.h
  • xmc_wait_signal_type : at32f403_xmc.h
  • xmc_wait_timing_type : at32f403_xmc.h
  • xmc_wrap_mode_type : at32f403_xmc.h
  • xmc_write_burst_type : at32f403_xmc.h
  • xmc_write_operation_type : at32f403_xmc.h


AT32F403 Firmwary Library: Globals

- a -

  • ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_SOFTWARE : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1CH2 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1CH3 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR2CH2 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR3TRGOUT : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR4CH4 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR8CH1 : at32f403_adc.h
  • ADC12_ORDINARY_TRIG_TMR8CH2 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_SOFTWARE : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR1CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR2CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR2TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR3CH4 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR4TRGOUT : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR8CH1 : at32f403_adc.h
  • ADC12_PREEMPT_TRIG_TMR8TRGOUT : at32f403_adc.h
  • ADC1_2_IRQn : at32f403.h
  • ADC3_IRQn : at32f403.h
  • ADC3_ORDINARY_TRIG_SOFTWARE : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR1CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR2CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR3CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR5CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR5CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR8CH1 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR8CH3 : at32f403_adc.h
  • ADC3_ORDINARY_TRIG_TMR8TRGOUT : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_SOFTWARE : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH1 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH2 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH3 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR15TRGOUT : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1CH1 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1CH2 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR1TRGOUT : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR4CH3 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR5CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR5TRGOUT : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR8CH2 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR8CH4 : at32f403_adc.h
  • ADC3_PREEMPT_TRIG_TMR8TRGOUT : at32f403_adc.h
  • ADC_CHANNEL_0 : at32f403_adc.h
  • ADC_CHANNEL_1 : at32f403_adc.h
  • ADC_CHANNEL_10 : at32f403_adc.h
  • ADC_CHANNEL_11 : at32f403_adc.h
  • ADC_CHANNEL_12 : at32f403_adc.h
  • ADC_CHANNEL_13 : at32f403_adc.h
  • ADC_CHANNEL_14 : at32f403_adc.h
  • ADC_CHANNEL_15 : at32f403_adc.h
  • ADC_CHANNEL_16 : at32f403_adc.h
  • ADC_CHANNEL_17 : at32f403_adc.h
  • ADC_CHANNEL_2 : at32f403_adc.h
  • ADC_CHANNEL_3 : at32f403_adc.h
  • ADC_CHANNEL_4 : at32f403_adc.h
  • ADC_CHANNEL_5 : at32f403_adc.h
  • ADC_CHANNEL_6 : at32f403_adc.h
  • ADC_CHANNEL_7 : at32f403_adc.h
  • ADC_CHANNEL_8 : at32f403_adc.h
  • ADC_CHANNEL_9 : at32f403_adc.h
  • ADC_INDEPENDENT_MODE : at32f403_adc.h
  • ADC_LEFT_ALIGNMENT : at32f403_adc.h
  • ADC_ORDINARY_LONGSHIFT_ONLY_MODE : at32f403_adc.h
  • ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE : at32f403_adc.h
  • ADC_ORDINARY_SHORTSHIFT_ONLY_MODE : at32f403_adc.h
  • ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE : at32f403_adc.h
  • ADC_ORDINARY_SMLT_ONLY_MODE : at32f403_adc.h
  • ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE : at32f403_adc.h
  • ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE : at32f403_adc.h
  • ADC_PREEMPT_CHANNEL_1 : at32f403_adc.h
  • ADC_PREEMPT_CHANNEL_2 : at32f403_adc.h
  • ADC_PREEMPT_CHANNEL_3 : at32f403_adc.h
  • ADC_PREEMPT_CHANNEL_4 : at32f403_adc.h
  • ADC_PREEMPT_INTERLTRIG_ONLY_MODE : at32f403_adc.h
  • ADC_PREEMPT_SMLT_ONLY_MODE : at32f403_adc.h
  • ADC_RIGHT_ALIGNMENT : at32f403_adc.h
  • ADC_SAMPLETIME_13_5 : at32f403_adc.h
  • ADC_SAMPLETIME_1_5 : at32f403_adc.h
  • ADC_SAMPLETIME_239_5 : at32f403_adc.h
  • ADC_SAMPLETIME_28_5 : at32f403_adc.h
  • ADC_SAMPLETIME_41_5 : at32f403_adc.h
  • ADC_SAMPLETIME_55_5 : at32f403_adc.h
  • ADC_SAMPLETIME_71_5 : at32f403_adc.h
  • ADC_SAMPLETIME_7_5 : at32f403_adc.h
  • ADC_VMONITOR_ALL_ORDINARY : at32f403_adc.h
  • ADC_VMONITOR_ALL_ORDINARY_PREEMPT : at32f403_adc.h
  • ADC_VMONITOR_ALL_PREEMPT : at32f403_adc.h
  • ADC_VMONITOR_NONE : at32f403_adc.h
  • ADC_VMONITOR_SINGLE_ORDINARY : at32f403_adc.h
  • ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT : at32f403_adc.h
  • ADC_VMONITOR_SINGLE_PREEMPT : at32f403_adc.h


AT32F403 Firmwary Library: Globals

- b -

  • BPR_DATA1 : at32f403_bpr.h
  • BPR_DATA10 : at32f403_bpr.h
  • BPR_DATA11 : at32f403_bpr.h
  • BPR_DATA12 : at32f403_bpr.h
  • BPR_DATA13 : at32f403_bpr.h
  • BPR_DATA14 : at32f403_bpr.h
  • BPR_DATA15 : at32f403_bpr.h
  • BPR_DATA16 : at32f403_bpr.h
  • BPR_DATA17 : at32f403_bpr.h
  • BPR_DATA18 : at32f403_bpr.h
  • BPR_DATA19 : at32f403_bpr.h
  • BPR_DATA2 : at32f403_bpr.h
  • BPR_DATA20 : at32f403_bpr.h
  • BPR_DATA21 : at32f403_bpr.h
  • BPR_DATA22 : at32f403_bpr.h
  • BPR_DATA23 : at32f403_bpr.h
  • BPR_DATA24 : at32f403_bpr.h
  • BPR_DATA25 : at32f403_bpr.h
  • BPR_DATA26 : at32f403_bpr.h
  • BPR_DATA27 : at32f403_bpr.h
  • BPR_DATA28 : at32f403_bpr.h
  • BPR_DATA29 : at32f403_bpr.h
  • BPR_DATA3 : at32f403_bpr.h
  • BPR_DATA30 : at32f403_bpr.h
  • BPR_DATA31 : at32f403_bpr.h
  • BPR_DATA32 : at32f403_bpr.h
  • BPR_DATA33 : at32f403_bpr.h
  • BPR_DATA34 : at32f403_bpr.h
  • BPR_DATA35 : at32f403_bpr.h
  • BPR_DATA36 : at32f403_bpr.h
  • BPR_DATA37 : at32f403_bpr.h
  • BPR_DATA38 : at32f403_bpr.h
  • BPR_DATA39 : at32f403_bpr.h
  • BPR_DATA4 : at32f403_bpr.h
  • BPR_DATA40 : at32f403_bpr.h
  • BPR_DATA41 : at32f403_bpr.h
  • BPR_DATA42 : at32f403_bpr.h
  • BPR_DATA5 : at32f403_bpr.h
  • BPR_DATA6 : at32f403_bpr.h
  • BPR_DATA7 : at32f403_bpr.h
  • BPR_DATA8 : at32f403_bpr.h
  • BPR_DATA9 : at32f403_bpr.h
  • BPR_RTC_OUTPUT_ALARM : at32f403_bpr.h
  • BPR_RTC_OUTPUT_CLOCK_CAL_AFTER : at32f403_bpr.h
  • BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE : at32f403_bpr.h
  • BPR_RTC_OUTPUT_NONE : at32f403_bpr.h
  • BPR_RTC_OUTPUT_SECOND : at32f403_bpr.h
  • BPR_TAMPER_PIN_ACTIVE_HIGH : at32f403_bpr.h
  • BPR_TAMPER_PIN_ACTIVE_LOW : at32f403_bpr.h
  • BusFault_IRQn : at32f403.h


AT32F403 Firmwary Library: Globals

- c -

  • CAN1_RX1_IRQn : at32f403.h
  • CAN1_SE_IRQn : at32f403.h
  • CAN_BTS1_10TQ : at32f403_can.h
  • CAN_BTS1_11TQ : at32f403_can.h
  • CAN_BTS1_12TQ : at32f403_can.h
  • CAN_BTS1_13TQ : at32f403_can.h
  • CAN_BTS1_14TQ : at32f403_can.h
  • CAN_BTS1_15TQ : at32f403_can.h
  • CAN_BTS1_16TQ : at32f403_can.h
  • CAN_BTS1_1TQ : at32f403_can.h
  • CAN_BTS1_2TQ : at32f403_can.h
  • CAN_BTS1_3TQ : at32f403_can.h
  • CAN_BTS1_4TQ : at32f403_can.h
  • CAN_BTS1_5TQ : at32f403_can.h
  • CAN_BTS1_6TQ : at32f403_can.h
  • CAN_BTS1_7TQ : at32f403_can.h
  • CAN_BTS1_8TQ : at32f403_can.h
  • CAN_BTS1_9TQ : at32f403_can.h
  • CAN_BTS2_1TQ : at32f403_can.h
  • CAN_BTS2_2TQ : at32f403_can.h
  • CAN_BTS2_3TQ : at32f403_can.h
  • CAN_BTS2_4TQ : at32f403_can.h
  • CAN_BTS2_5TQ : at32f403_can.h
  • CAN_BTS2_6TQ : at32f403_can.h
  • CAN_BTS2_7TQ : at32f403_can.h
  • CAN_BTS2_8TQ : at32f403_can.h
  • CAN_DISCARDING_FIRST_RECEIVED : at32f403_can.h
  • CAN_DISCARDING_LAST_RECEIVED : at32f403_can.h
  • CAN_ENTER_DOZE_FAILED : at32f403_can.h
  • CAN_ENTER_DOZE_SUCCESSFUL : at32f403_can.h
  • CAN_ERRORRECORD_ACKERR : at32f403_can.h
  • CAN_ERRORRECORD_BITDOMINANTERR : at32f403_can.h
  • CAN_ERRORRECORD_BITRECESSIVEERR : at32f403_can.h
  • CAN_ERRORRECORD_CRCERR : at32f403_can.h
  • CAN_ERRORRECORD_FORMERR : at32f403_can.h
  • CAN_ERRORRECORD_NOERR : at32f403_can.h
  • CAN_ERRORRECORD_SOFTWARESETERR : at32f403_can.h
  • CAN_ERRORRECORD_STUFFERR : at32f403_can.h
  • CAN_FILTER_16BIT : at32f403_can.h
  • CAN_FILTER_32BIT : at32f403_can.h
  • CAN_FILTER_FIFO0 : at32f403_can.h
  • CAN_FILTER_FIFO1 : at32f403_can.h
  • CAN_FILTER_MODE_ID_LIST : at32f403_can.h
  • CAN_FILTER_MODE_ID_MASK : at32f403_can.h
  • CAN_ID_EXTENDED : at32f403_can.h
  • CAN_ID_STANDARD : at32f403_can.h
  • CAN_MODE_COMMUNICATE : at32f403_can.h
  • CAN_MODE_LISTENONLY : at32f403_can.h
  • CAN_MODE_LISTENONLY_LOOPBACK : at32f403_can.h
  • CAN_MODE_LOOPBACK : at32f403_can.h
  • CAN_OPERATINGMODE_COMMUNICATE : at32f403_can.h
  • CAN_OPERATINGMODE_DOZE : at32f403_can.h
  • CAN_OPERATINGMODE_FREEZE : at32f403_can.h
  • CAN_QUIT_DOZE_FAILED : at32f403_can.h
  • CAN_QUIT_DOZE_SUCCESSFUL : at32f403_can.h
  • CAN_RSAW_1TQ : at32f403_can.h
  • CAN_RSAW_2TQ : at32f403_can.h
  • CAN_RSAW_3TQ : at32f403_can.h
  • CAN_RSAW_4TQ : at32f403_can.h
  • CAN_RX_FIFO0 : at32f403_can.h
  • CAN_RX_FIFO1 : at32f403_can.h
  • CAN_SENDING_BY_ID : at32f403_can.h
  • CAN_SENDING_BY_REQUEST : at32f403_can.h
  • CAN_TFT_DATA : at32f403_can.h
  • CAN_TFT_REMOTE : at32f403_can.h
  • CAN_TX_MAILBOX0 : at32f403_can.h
  • CAN_TX_MAILBOX1 : at32f403_can.h
  • CAN_TX_MAILBOX2 : at32f403_can.h
  • CAN_TX_STATUS_FAILED : at32f403_can.h
  • CAN_TX_STATUS_NO_EMPTY : at32f403_can.h
  • CAN_TX_STATUS_PENDING : at32f403_can.h
  • CAN_TX_STATUS_SUCCESSFUL : at32f403_can.h
  • CMD_CTR_APP : bootloader/inc/iap.h
  • CMD_CTR_DONE : bootloader/inc/iap.h
  • CMD_CTR_ERR : bootloader/inc/iap.h
  • CMD_CTR_IDLE : bootloader/inc/iap.h
  • CMD_CTR_INIT : bootloader/inc/iap.h
  • CMD_DATA_ADDR : bootloader/inc/iap.h
  • CMD_DATA_BUF : bootloader/inc/iap.h
  • CMD_DATA_CHACK : bootloader/inc/iap.h
  • CMD_DATA_DONE : bootloader/inc/iap.h
  • CMD_DATA_ERR : bootloader/inc/iap.h
  • CMD_DATA_IDLE : bootloader/inc/iap.h
  • CRC_POLY_SIZE_16B : at32f403_crc.h
  • CRC_POLY_SIZE_32B : at32f403_crc.h
  • CRC_POLY_SIZE_7B : at32f403_crc.h
  • CRC_POLY_SIZE_8B : at32f403_crc.h
  • CRC_REVERSE_INPUT_BY_BYTE : at32f403_crc.h
  • CRC_REVERSE_INPUT_BY_HALFWORD : at32f403_crc.h
  • CRC_REVERSE_INPUT_BY_WORD : at32f403_crc.h
  • CRC_REVERSE_INPUT_NO_AFFECTE : at32f403_crc.h
  • CRC_REVERSE_OUTPUT_DATA : at32f403_crc.h
  • CRC_REVERSE_OUTPUT_NO_AFFECTE : at32f403_crc.h
  • CRM_ADC1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_ADC1_PERIPH_RESET : at32f403_crm.h
  • CRM_ADC2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_ADC2_PERIPH_RESET : at32f403_crm.h
  • CRM_ADC3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_ADC3_PERIPH_RESET : at32f403_crm.h
  • CRM_ADC_DIV_12 : at32f403_crm.h
  • CRM_ADC_DIV_16 : at32f403_crm.h
  • CRM_ADC_DIV_2 : at32f403_crm.h
  • CRM_ADC_DIV_4 : at32f403_crm.h
  • CRM_ADC_DIV_6 : at32f403_crm.h
  • CRM_ADC_DIV_8 : at32f403_crm.h
  • CRM_AHB_DIV_1 : at32f403_crm.h
  • CRM_AHB_DIV_128 : at32f403_crm.h
  • CRM_AHB_DIV_16 : at32f403_crm.h
  • CRM_AHB_DIV_2 : at32f403_crm.h
  • CRM_AHB_DIV_256 : at32f403_crm.h
  • CRM_AHB_DIV_4 : at32f403_crm.h
  • CRM_AHB_DIV_512 : at32f403_crm.h
  • CRM_AHB_DIV_64 : at32f403_crm.h
  • CRM_AHB_DIV_8 : at32f403_crm.h
  • CRM_APB1_DIV_1 : at32f403_crm.h
  • CRM_APB1_DIV_16 : at32f403_crm.h
  • CRM_APB1_DIV_2 : at32f403_crm.h
  • CRM_APB1_DIV_4 : at32f403_crm.h
  • CRM_APB1_DIV_8 : at32f403_crm.h
  • CRM_APB2_DIV_1 : at32f403_crm.h
  • CRM_APB2_DIV_16 : at32f403_crm.h
  • CRM_APB2_DIV_2 : at32f403_crm.h
  • CRM_APB2_DIV_4 : at32f403_crm.h
  • CRM_APB2_DIV_8 : at32f403_crm.h
  • CRM_BPR_PERIPH_CLOCK : at32f403_crm.h
  • CRM_BPR_PERIPH_RESET : at32f403_crm.h
  • CRM_CAN1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_CAN1_PERIPH_RESET : at32f403_crm.h
  • CRM_CLKOUT_ADC : at32f403_crm.h
  • CRM_CLKOUT_HEXT : at32f403_crm.h
  • CRM_CLKOUT_HICK : at32f403_crm.h
  • CRM_CLKOUT_LEXT : at32f403_crm.h
  • CRM_CLKOUT_LICK : at32f403_crm.h
  • CRM_CLKOUT_NOCLK : at32f403_crm.h
  • CRM_CLKOUT_PLL_DIV_2 : at32f403_crm.h
  • CRM_CLKOUT_PLL_DIV_4 : at32f403_crm.h
  • CRM_CLKOUT_SCLK : at32f403_crm.h
  • CRM_CLKOUT_USB : at32f403_crm.h
  • CRM_CLOCK_SOURCE_HEXT : at32f403_crm.h
  • CRM_CLOCK_SOURCE_HICK : at32f403_crm.h
  • CRM_CLOCK_SOURCE_LEXT : at32f403_crm.h
  • CRM_CLOCK_SOURCE_LICK : at32f403_crm.h
  • CRM_CLOCK_SOURCE_PLL : at32f403_crm.h
  • CRM_CRC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_DAC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_DAC_PERIPH_RESET : at32f403_crm.h
  • CRM_DMA1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_DMA2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_EXINT_PERIPH_RESET : at32f403_crm.h
  • CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE : at32f403_crm.h
  • CRM_GPIOA_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOA_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOB_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOB_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOC_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOD_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOD_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOE_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOE_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOF_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOF_PERIPH_RESET : at32f403_crm.h
  • CRM_GPIOG_PERIPH_CLOCK : at32f403_crm.h
  • CRM_GPIOG_PERIPH_RESET : at32f403_crm.h
  • CRM_I2C1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_I2C1_PERIPH_RESET : at32f403_crm.h
  • CRM_I2C2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_I2C2_PERIPH_RESET : at32f403_crm.h
  • CRM_I2C3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_I2C3_PERIPH_RESET : at32f403_crm.h
  • CRM_IOMUX_PERIPH_CLOCK : at32f403_crm.h
  • CRM_IOMUX_PERIPH_RESET : at32f403_crm.h
  • CRM_IRQn : at32f403.h
  • CRM_PLL_MULT_10 : at32f403_crm.h
  • CRM_PLL_MULT_11 : at32f403_crm.h
  • CRM_PLL_MULT_12 : at32f403_crm.h
  • CRM_PLL_MULT_13 : at32f403_crm.h
  • CRM_PLL_MULT_14 : at32f403_crm.h
  • CRM_PLL_MULT_15 : at32f403_crm.h
  • CRM_PLL_MULT_16 : at32f403_crm.h
  • CRM_PLL_MULT_17 : at32f403_crm.h
  • CRM_PLL_MULT_18 : at32f403_crm.h
  • CRM_PLL_MULT_19 : at32f403_crm.h
  • CRM_PLL_MULT_2 : at32f403_crm.h
  • CRM_PLL_MULT_20 : at32f403_crm.h
  • CRM_PLL_MULT_21 : at32f403_crm.h
  • CRM_PLL_MULT_22 : at32f403_crm.h
  • CRM_PLL_MULT_23 : at32f403_crm.h
  • CRM_PLL_MULT_24 : at32f403_crm.h
  • CRM_PLL_MULT_25 : at32f403_crm.h
  • CRM_PLL_MULT_26 : at32f403_crm.h
  • CRM_PLL_MULT_27 : at32f403_crm.h
  • CRM_PLL_MULT_28 : at32f403_crm.h
  • CRM_PLL_MULT_29 : at32f403_crm.h
  • CRM_PLL_MULT_3 : at32f403_crm.h
  • CRM_PLL_MULT_30 : at32f403_crm.h
  • CRM_PLL_MULT_31 : at32f403_crm.h
  • CRM_PLL_MULT_32 : at32f403_crm.h
  • CRM_PLL_MULT_33 : at32f403_crm.h
  • CRM_PLL_MULT_34 : at32f403_crm.h
  • CRM_PLL_MULT_35 : at32f403_crm.h
  • CRM_PLL_MULT_36 : at32f403_crm.h
  • CRM_PLL_MULT_37 : at32f403_crm.h
  • CRM_PLL_MULT_38 : at32f403_crm.h
  • CRM_PLL_MULT_39 : at32f403_crm.h
  • CRM_PLL_MULT_4 : at32f403_crm.h
  • CRM_PLL_MULT_40 : at32f403_crm.h
  • CRM_PLL_MULT_41 : at32f403_crm.h
  • CRM_PLL_MULT_42 : at32f403_crm.h
  • CRM_PLL_MULT_43 : at32f403_crm.h
  • CRM_PLL_MULT_44 : at32f403_crm.h
  • CRM_PLL_MULT_45 : at32f403_crm.h
  • CRM_PLL_MULT_46 : at32f403_crm.h
  • CRM_PLL_MULT_47 : at32f403_crm.h
  • CRM_PLL_MULT_48 : at32f403_crm.h
  • CRM_PLL_MULT_49 : at32f403_crm.h
  • CRM_PLL_MULT_5 : at32f403_crm.h
  • CRM_PLL_MULT_50 : at32f403_crm.h
  • CRM_PLL_MULT_51 : at32f403_crm.h
  • CRM_PLL_MULT_52 : at32f403_crm.h
  • CRM_PLL_MULT_53 : at32f403_crm.h
  • CRM_PLL_MULT_54 : at32f403_crm.h
  • CRM_PLL_MULT_55 : at32f403_crm.h
  • CRM_PLL_MULT_56 : at32f403_crm.h
  • CRM_PLL_MULT_57 : at32f403_crm.h
  • CRM_PLL_MULT_58 : at32f403_crm.h
  • CRM_PLL_MULT_59 : at32f403_crm.h
  • CRM_PLL_MULT_6 : at32f403_crm.h
  • CRM_PLL_MULT_60 : at32f403_crm.h
  • CRM_PLL_MULT_61 : at32f403_crm.h
  • CRM_PLL_MULT_62 : at32f403_crm.h
  • CRM_PLL_MULT_63 : at32f403_crm.h
  • CRM_PLL_MULT_64 : at32f403_crm.h
  • CRM_PLL_MULT_7 : at32f403_crm.h
  • CRM_PLL_MULT_8 : at32f403_crm.h
  • CRM_PLL_MULT_9 : at32f403_crm.h
  • CRM_PLL_OUTPUT_RANGE_GT72MHZ : at32f403_crm.h
  • CRM_PLL_OUTPUT_RANGE_LE72MHZ : at32f403_crm.h
  • CRM_PLL_SOURCE_HEXT : at32f403_crm.h
  • CRM_PLL_SOURCE_HEXT_DIV : at32f403_crm.h
  • CRM_PLL_SOURCE_HICK : at32f403_crm.h
  • CRM_PWC_PERIPH_CLOCK : at32f403_crm.h
  • CRM_PWC_PERIPH_RESET : at32f403_crm.h
  • CRM_RTC_CLOCK_HEXT_DIV : at32f403_crm.h
  • CRM_RTC_CLOCK_LEXT : at32f403_crm.h
  • CRM_RTC_CLOCK_LICK : at32f403_crm.h
  • CRM_RTC_CLOCK_NOCLK : at32f403_crm.h
  • CRM_SCLK_HEXT : at32f403_crm.h
  • CRM_SCLK_HICK : at32f403_crm.h
  • CRM_SCLK_PLL : at32f403_crm.h
  • CRM_SDIO1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SDIO2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI1_PERIPH_RESET : at32f403_crm.h
  • CRM_SPI2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI2_PERIPH_RESET : at32f403_crm.h
  • CRM_SPI3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI3_PERIPH_RESET : at32f403_crm.h
  • CRM_SPI4_PERIPH_CLOCK : at32f403_crm.h
  • CRM_SPI4_PERIPH_RESET : at32f403_crm.h
  • CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE : at32f403_crm.h
  • CRM_TMR10_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR10_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR11_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR11_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR12_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR12_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR13_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR13_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR14_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR14_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR15_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR15_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR1_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR2_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR3_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR4_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR4_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR5_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR5_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR6_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR6_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR7_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR7_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR8_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR8_PERIPH_RESET : at32f403_crm.h
  • CRM_TMR9_PERIPH_CLOCK : at32f403_crm.h
  • CRM_TMR9_PERIPH_RESET : at32f403_crm.h
  • CRM_UART4_PERIPH_CLOCK : at32f403_crm.h
  • CRM_UART4_PERIPH_RESET : at32f403_crm.h
  • CRM_UART5_PERIPH_CLOCK : at32f403_crm.h
  • CRM_UART5_PERIPH_RESET : at32f403_crm.h
  • CRM_USART1_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USART1_PERIPH_RESET : at32f403_crm.h
  • CRM_USART2_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USART2_PERIPH_RESET : at32f403_crm.h
  • CRM_USART3_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USART3_PERIPH_RESET : at32f403_crm.h
  • CRM_USB_CLOCK_SOURCE_HICK : at32f403_crm.h
  • CRM_USB_CLOCK_SOURCE_PLL : at32f403_crm.h
  • CRM_USB_DIV_1 : at32f403_crm.h
  • CRM_USB_DIV_1_5 : at32f403_crm.h
  • CRM_USB_DIV_2 : at32f403_crm.h
  • CRM_USB_DIV_2_5 : at32f403_crm.h
  • CRM_USB_DIV_3 : at32f403_crm.h
  • CRM_USB_DIV_3_5 : at32f403_crm.h
  • CRM_USB_DIV_4 : at32f403_crm.h
  • CRM_USB_INT19_INT20 : at32f403_crm.h
  • CRM_USB_INT73_INT74 : at32f403_crm.h
  • CRM_USB_PERIPH_CLOCK : at32f403_crm.h
  • CRM_USB_PERIPH_RESET : at32f403_crm.h
  • CRM_WWDT_PERIPH_CLOCK : at32f403_crm.h
  • CRM_WWDT_PERIPH_RESET : at32f403_crm.h
  • CRM_XMC_PERIPH_CLOCK : at32f403_crm.h


AT32F403 Firmwary Library: Globals

- d -

  • DAC1_12BIT_LEFT : at32f403_dac.h
  • DAC1_12BIT_RIGHT : at32f403_dac.h
  • DAC1_8BIT_RIGHT : at32f403_dac.h
  • DAC1_SELECT : at32f403_dac.h
  • DAC2_12BIT_LEFT : at32f403_dac.h
  • DAC2_12BIT_RIGHT : at32f403_dac.h
  • DAC2_8BIT_RIGHT : at32f403_dac.h
  • DAC2_SELECT : at32f403_dac.h
  • DAC_DUAL_12BIT_LEFT : at32f403_dac.h
  • DAC_DUAL_12BIT_RIGHT : at32f403_dac.h
  • DAC_DUAL_8BIT_RIGHT : at32f403_dac.h
  • DAC_EXTERNAL_INTERRUPT_LINE_9 : at32f403_dac.h
  • DAC_LSFR_BIT0_AMPLITUDE_1 : at32f403_dac.h
  • DAC_LSFR_BIT10_AMPLITUDE_3 : at32f403_dac.h
  • DAC_LSFR_BIT20_AMPLITUDE_7 : at32f403_dac.h
  • DAC_LSFR_BIT30_AMPLITUDE_15 : at32f403_dac.h
  • DAC_LSFR_BIT40_AMPLITUDE_31 : at32f403_dac.h
  • DAC_LSFR_BIT50_AMPLITUDE_63 : at32f403_dac.h
  • DAC_LSFR_BIT60_AMPLITUDE_127 : at32f403_dac.h
  • DAC_LSFR_BIT70_AMPLITUDE_255 : at32f403_dac.h
  • DAC_LSFR_BIT80_AMPLITUDE_511 : at32f403_dac.h
  • DAC_LSFR_BIT90_AMPLITUDE_1023 : at32f403_dac.h
  • DAC_LSFR_BITA0_AMPLITUDE_2047 : at32f403_dac.h
  • DAC_LSFR_BITB0_AMPLITUDE_4095 : at32f403_dac.h
  • DAC_SOFTWARE_TRIGGER : at32f403_dac.h
  • DAC_TMR2_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR4_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR5_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR6_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR7_TRGOUT_EVENT : at32f403_dac.h
  • DAC_TMR8_TRGOUT_EVENT : at32f403_dac.h
  • DAC_WAVE_GENERATE_NOISE : at32f403_dac.h
  • DAC_WAVE_GENERATE_NONE : at32f403_dac.h
  • DAC_WAVE_GENERATE_TRIANGLE : at32f403_dac.h
  • DATA_TRANS_IN : at32f403_usb.h
  • DATA_TRANS_OUT : at32f403_usb.h
  • DebugMonitor_IRQn : at32f403.h
  • DMA1_Channel1_IRQn : at32f403.h
  • DMA1_Channel2_IRQn : at32f403.h
  • DMA1_Channel3_IRQn : at32f403.h
  • DMA1_Channel4_IRQn : at32f403.h
  • DMA1_Channel5_IRQn : at32f403.h
  • DMA1_Channel6_IRQn : at32f403.h
  • DMA1_Channel7_IRQn : at32f403.h
  • DMA2_Channel1_IRQn : at32f403.h
  • DMA2_Channel2_IRQn : at32f403.h
  • DMA2_Channel3_IRQn : at32f403.h
  • DMA2_Channel4_5_IRQn : at32f403.h
  • DMA_DIR_MEMORY_TO_MEMORY : at32f403_dma.h
  • DMA_DIR_MEMORY_TO_PERIPHERAL : at32f403_dma.h
  • DMA_DIR_PERIPHERAL_TO_MEMORY : at32f403_dma.h
  • DMA_MEMORY_DATA_WIDTH_BYTE : at32f403_dma.h
  • DMA_MEMORY_DATA_WIDTH_HALFWORD : at32f403_dma.h
  • DMA_MEMORY_DATA_WIDTH_WORD : at32f403_dma.h
  • DMA_MEMORY_INC_DISABLE : at32f403_dma.h
  • DMA_MEMORY_INC_ENABLE : at32f403_dma.h
  • DMA_PERIPHERAL_DATA_WIDTH_BYTE : at32f403_dma.h
  • DMA_PERIPHERAL_DATA_WIDTH_HALFWORD : at32f403_dma.h
  • DMA_PERIPHERAL_DATA_WIDTH_WORD : at32f403_dma.h
  • DMA_PERIPHERAL_INC_DISABLE : at32f403_dma.h
  • DMA_PERIPHERAL_INC_ENABLE : at32f403_dma.h
  • DMA_PRIORITY_HIGH : at32f403_dma.h
  • DMA_PRIORITY_LOW : at32f403_dma.h
  • DMA_PRIORITY_MEDIUM : at32f403_dma.h
  • DMA_PRIORITY_VERY_HIGH : at32f403_dma.h


AT32F403 Firmwary Library: Globals

- e -

  • EPT_BULK_TYPE : at32f403_usb.h
  • EPT_CONTROL_TYPE : at32f403_usb.h
  • EPT_IN : at32f403_usb.h
  • EPT_INT_TYPE : at32f403_usb.h
  • EPT_ISO_TYPE : at32f403_usb.h
  • EPT_OUT : at32f403_usb.h
  • ERROR : at32f403.h
  • EXINT0_IRQn : at32f403.h
  • EXINT15_10_IRQn : at32f403.h
  • EXINT1_IRQn : at32f403.h
  • EXINT2_IRQn : at32f403.h
  • EXINT3_IRQn : at32f403.h
  • EXINT4_IRQn : at32f403.h
  • EXINT9_5_IRQn : at32f403.h
  • EXINT_LINE_EVENT : at32f403_exint.h
  • EXINT_LINE_INTERRUPUT : at32f403_exint.h
  • EXINT_TRIGGER_BOTH_EDGE : at32f403_exint.h
  • EXINT_TRIGGER_FALLING_EDGE : at32f403_exint.h
  • EXINT_TRIGGER_RISING_EDGE : at32f403_exint.h


AT32F403 Firmwary Library: Globals

- f -

  • FAILED : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • FALSE : at32f403.h
  • FLASH_EPP_ERROR : at32f403_flash.h
  • FLASH_IRQn : at32f403.h
  • FLASH_OPERATE_BUSY : at32f403_flash.h
  • FLASH_OPERATE_DONE : at32f403_flash.h
  • FLASH_OPERATE_TIMEOUT : at32f403_flash.h
  • FLASH_PROGRAM_ERROR : at32f403_flash.h
  • FLASH_SPIM_MODEL1 : at32f403_flash.h
  • FLASH_SPIM_MODEL2 : at32f403_flash.h


AT32F403 Firmwary Library: Globals

- g -

  • GPIO_DRIVE_STRENGTH_MAXIMUM : at32f403_gpio.h
  • GPIO_DRIVE_STRENGTH_MODERATE : at32f403_gpio.h
  • GPIO_DRIVE_STRENGTH_STRONGER : at32f403_gpio.h
  • GPIO_MODE_ANALOG : at32f403_gpio.h
  • GPIO_MODE_INPUT : at32f403_gpio.h
  • GPIO_MODE_MUX : at32f403_gpio.h
  • GPIO_MODE_OUTPUT : at32f403_gpio.h
  • GPIO_OUTPUT_OPEN_DRAIN : at32f403_gpio.h
  • GPIO_OUTPUT_PUSH_PULL : at32f403_gpio.h
  • GPIO_PINS_SOURCE0 : at32f403_gpio.h
  • GPIO_PINS_SOURCE1 : at32f403_gpio.h
  • GPIO_PINS_SOURCE10 : at32f403_gpio.h
  • GPIO_PINS_SOURCE11 : at32f403_gpio.h
  • GPIO_PINS_SOURCE12 : at32f403_gpio.h
  • GPIO_PINS_SOURCE13 : at32f403_gpio.h
  • GPIO_PINS_SOURCE14 : at32f403_gpio.h
  • GPIO_PINS_SOURCE15 : at32f403_gpio.h
  • GPIO_PINS_SOURCE2 : at32f403_gpio.h
  • GPIO_PINS_SOURCE3 : at32f403_gpio.h
  • GPIO_PINS_SOURCE4 : at32f403_gpio.h
  • GPIO_PINS_SOURCE5 : at32f403_gpio.h
  • GPIO_PINS_SOURCE6 : at32f403_gpio.h
  • GPIO_PINS_SOURCE7 : at32f403_gpio.h
  • GPIO_PINS_SOURCE8 : at32f403_gpio.h
  • GPIO_PINS_SOURCE9 : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOA : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOB : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOC : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOD : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOE : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOF : at32f403_gpio.h
  • GPIO_PORT_SOURCE_GPIOG : at32f403_gpio.h
  • GPIO_PULL_DOWN : at32f403_gpio.h
  • GPIO_PULL_NONE : at32f403_gpio.h
  • GPIO_PULL_UP : at32f403_gpio.h


AT32F403 Firmwary Library: Globals

- h -

  • HardFault_IRQn : at32f403.h


AT32F403 Firmwary Library: Globals

- i -

  • I2C1_ERR_IRQn : at32f403.h
  • I2C1_EVT_IRQn : at32f403.h
  • I2C2_ERR_IRQn : at32f403.h
  • I2C2_EVT_IRQn : at32f403.h
  • I2C3_ERR_IRQn : at32f403.h
  • I2C3_EVT_IRQn : at32f403.h
  • I2C_ADDRESS_MODE_10BIT : at32f403_i2c.h
  • I2C_ADDRESS_MODE_7BIT : at32f403_i2c.h
  • I2C_DIRECTION_RECEIVE : at32f403_i2c.h
  • I2C_DIRECTION_TRANSMIT : at32f403_i2c.h
  • I2C_DMA_MA_RX : i2c_application.h
  • I2C_DMA_MA_TX : i2c_application.h
  • I2C_DMA_SLA_RX : i2c_application.h
  • I2C_DMA_SLA_TX : i2c_application.h
  • I2C_ERR_ACKFAIL : i2c_application.h
  • I2C_ERR_ADDR : i2c_application.h
  • I2C_ERR_ADDR10 : i2c_application.h
  • I2C_ERR_INTERRUPT : i2c_application.h
  • I2C_ERR_START : i2c_application.h
  • I2C_ERR_STEP_1 : i2c_application.h
  • I2C_ERR_STEP_10 : i2c_application.h
  • I2C_ERR_STEP_11 : i2c_application.h
  • I2C_ERR_STEP_12 : i2c_application.h
  • I2C_ERR_STEP_2 : i2c_application.h
  • I2C_ERR_STEP_3 : i2c_application.h
  • I2C_ERR_STEP_4 : i2c_application.h
  • I2C_ERR_STEP_5 : i2c_application.h
  • I2C_ERR_STEP_6 : i2c_application.h
  • I2C_ERR_STEP_7 : i2c_application.h
  • I2C_ERR_STEP_8 : i2c_application.h
  • I2C_ERR_STEP_9 : i2c_application.h
  • I2C_ERR_STOP : i2c_application.h
  • I2C_ERR_TIMEOUT : i2c_application.h
  • I2C_FSMODE_DUTY_16_9 : at32f403_i2c.h
  • I2C_FSMODE_DUTY_2_1 : at32f403_i2c.h
  • I2C_INT_MA_RX : i2c_application.h
  • I2C_INT_MA_TX : i2c_application.h
  • I2C_INT_SLA_RX : i2c_application.h
  • I2C_INT_SLA_TX : i2c_application.h
  • I2C_MASTER_ACK_CURRENT : at32f403_i2c.h
  • I2C_MASTER_ACK_NEXT : at32f403_i2c.h
  • I2C_MEM_ADDR_WIDIH_16 : i2c_application.h
  • I2C_MEM_ADDR_WIDIH_8 : i2c_application.h
  • I2C_OK : i2c_application.h
  • I2C_PEC_POSITION_CURRENT : at32f403_i2c.h
  • I2C_PEC_POSITION_NEXT : at32f403_i2c.h
  • I2C_SMBUS_ALERT_HIGH : at32f403_i2c.h
  • I2C_SMBUS_ALERT_LOW : at32f403_i2c.h
  • I2C_SMBUS_MODE_DEVICE : at32f403_i2c.h
  • I2C_SMBUS_MODE_HOST : at32f403_i2c.h
  • I2S_AUDIO_FREQUENCY_11_025K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_16K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_192K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_22_05K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_32K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_44_1K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_48K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_8K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_96K : at32f403_spi.h
  • I2S_AUDIO_FREQUENCY_DEFAULT : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_LSB : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_MSB : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_PCM_LONG : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_PCM_SHORT : at32f403_spi.h
  • I2S_AUDIO_PROTOCOL_PHILLIPS : at32f403_spi.h
  • I2S_CLOCK_POLARITY_HIGH : at32f403_spi.h
  • I2S_CLOCK_POLARITY_LOW : at32f403_spi.h
  • I2S_DATA_16BIT_CHANNEL_16BIT : at32f403_spi.h
  • I2S_DATA_16BIT_CHANNEL_32BIT : at32f403_spi.h
  • I2S_DATA_24BIT_CHANNEL_32BIT : at32f403_spi.h
  • I2S_DATA_32BIT_CHANNEL_32BIT : at32f403_spi.h
  • I2S_MODE_MASTER_RX : at32f403_spi.h
  • I2S_MODE_MASTER_TX : at32f403_spi.h
  • I2S_MODE_SLAVE_RX : at32f403_spi.h
  • I2S_MODE_SLAVE_TX : at32f403_spi.h
  • IAP_FAILED : hid_iap_class.h
  • IAP_STS_ADDR : hid_iap_class.h
  • IAP_STS_CRC : hid_iap_class.h
  • IAP_STS_DATA : hid_iap_class.h
  • IAP_STS_FINISH : hid_iap_class.h
  • IAP_STS_IDLE : hid_iap_class.h
  • IAP_STS_JMP : hid_iap_class.h
  • IAP_STS_JMP_WAIT : hid_iap_class.h
  • IAP_STS_START : hid_iap_class.h
  • IAP_SUCCESS : hid_iap_class.h
  • IAP_WAIT : hid_iap_class.h


AT32F403 Firmwary Library: Globals

- l -

  • LED2 : at32f403_board.h
  • LED3 : at32f403_board.h
  • LED4 : at32f403_board.h
  • LOCKED : cf.h


AT32F403 Firmwary Library: Globals

- m -

  • MemoryManagement_IRQn : at32f403.h


AT32F403 Firmwary Library: Globals

- n -

  • NO_BUTTON : at32f403_board.h
  • NonMaskableInt_IRQn : at32f403.h
  • NOR_ERROR : xmc_nor.h
  • NOR_ONGOING : xmc_nor.h
  • NOR_SUCCESS : xmc_nor.h
  • NOR_TIMEOUT : xmc_nor.h
  • NVIC_LP_SEVONPEND : at32f403_misc.h
  • NVIC_LP_SLEEPDEEP : at32f403_misc.h
  • NVIC_LP_SLEEPONEXIT : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_0 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_1 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_2 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_3 : at32f403_misc.h
  • NVIC_PRIORITY_GROUP_4 : at32f403_misc.h


AT32F403 Firmwary Library: Globals

- p -

  • PASSED : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • PCCARD_STATE_BUSY : cf.h
  • PCCARD_STATE_ERROR : cf.h
  • PCCARD_STATE_READY : cf.h
  • PCCARD_STATE_RESET : cf.h
  • PendSV_IRQn : at32f403.h
  • PRINTER_REQ_GET_DEVICE_ID : printer_class.h
  • PRINTER_REQ_GET_PORT_STATUS : printer_class.h
  • PRINTER_REQ_GET_SOFT_RESET : printer_class.h
  • PVM_IRQn : at32f403.h
  • PWC_DEEP_SLEEP_ENTER_WFE : at32f403_pwc.h
  • PWC_DEEP_SLEEP_ENTER_WFI : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V3 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V4 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V5 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V6 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V7 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V8 : at32f403_pwc.h
  • PWC_PVM_VOLTAGE_2V9 : at32f403_pwc.h
  • PWC_SLEEP_ENTER_WFE : at32f403_pwc.h
  • PWC_SLEEP_ENTER_WFI : at32f403_pwc.h


AT32F403 Firmwary Library: Globals

- r -

  • RESET : at32f403.h
  • Reset_IRQn : at32f403.h
  • RTC_IRQn : at32f403.h
  • RTCAlarm_IRQn : at32f403.h


AT32F403 Firmwary Library: Globals

- s -

  • SD_ADDR_MISALIGNED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ADDR_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_AKE_SEQ_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_BLK_LEN_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_CONTROLLER_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_DISCONNECTED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_ECC_DISABLED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_ECC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_IDENTIFICATION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_PROGRAMMING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_READY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_RECEIVING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_SENDING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_STANDBY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_TRANSFER : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CID_CSD_OVERWRITE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_CRC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_FAIL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_RSP_TIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_DATA_FAIL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_DATA_TIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ERASE_RESET : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ERASE_SEQ_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_GENERAL_UNKNOWN_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ILLEGAL_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_INTERNAL_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_INVALID_ERASE_PARAM : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_INVALID_PARAMETER : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_INVALID_VOLTRANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_LOCK_UNLOCK_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_NOT_CONFIGURED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_REQ_NOT_APPLICABLE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_REQ_PENDING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_RX_OVERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_DISABLED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_FUNC_BUSY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_FUNC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SDIO_UNKNOWN_FUNC : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_START_BIT_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_STREAM_RD_UNDERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_STREAM_WR_OVERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SWITCH_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_TRANSFER_DMA_MODE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_TRANSFER_POLLING_MODE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_TX_UNDERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_UNSUPPORTED_FEATURE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_UNSUPPORTED_HW : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_WP_ERASE_SKIP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_WR_PROTECT_VIOLATION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO1_IRQn : at32f403.h
  • SDIO2_IRQn : at32f403.h
  • SDIO_BUS_WIDTH_D1 : at32f403_sdio.h
  • SDIO_BUS_WIDTH_D4 : at32f403_sdio.h
  • SDIO_BUS_WIDTH_D8 : at32f403_sdio.h
  • SDIO_CLOCK_EDGE_FALLING : at32f403_sdio.h
  • SDIO_CLOCK_EDGE_RISING : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_1024B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_128B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_16384B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_16B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_1B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_2048B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_256B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_2B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_32B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_4096B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_4B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_512B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_64B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_8192B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_SIZE_8B : at32f403_sdio.h
  • SDIO_DATA_BLOCK_TRANSFER : at32f403_sdio.h
  • SDIO_DATA_STREAM_TRANSFER : at32f403_sdio.h
  • SDIO_DATA_TRANSFER_TO_CARD : at32f403_sdio.h
  • SDIO_DATA_TRANSFER_TO_CONTROLLER : at32f403_sdio.h
  • SDIO_HIGH_CAPACITY_MMC_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_HIGH_CAPACITY_SD_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_HIGH_SPEED_MULTIMEDIA_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_MULTIMEDIA_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_POWER_OFF : at32f403_sdio.h
  • SDIO_POWER_ON : at32f403_sdio.h
  • SDIO_READ_WAIT_CONTROLLED_BY_CK : at32f403_sdio.h
  • SDIO_READ_WAIT_CONTROLLED_BY_D2 : at32f403_sdio.h
  • SDIO_RESPONSE_LONG : at32f403_sdio.h
  • SDIO_RESPONSE_NO : at32f403_sdio.h
  • SDIO_RESPONSE_SHORT : at32f403_sdio.h
  • SDIO_RSP1_INDEX : at32f403_sdio.h
  • SDIO_RSP2_INDEX : at32f403_sdio.h
  • SDIO_RSP3_INDEX : at32f403_sdio.h
  • SDIO_RSP4_INDEX : at32f403_sdio.h
  • SDIO_SDIO_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_SECURE_DIGITAL_IO_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_SECURE_DIGITAL_IO_COMBO_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_STD_CAPACITY_SD_CARD_V1_1 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_STD_CAPACITY_SD_CARD_V2_0 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_WAIT_FOR_INT : at32f403_sdio.h
  • SDIO_WAIT_FOR_NO : at32f403_sdio.h
  • SDIO_WAIT_FOR_PEND : at32f403_sdio.h
  • SET : at32f403.h
  • SPI1_IRQn : at32f403.h
  • SPI2_IRQn : at32f403.h
  • SPI3_IRQn : at32f403.h
  • SPI4_IRQn : at32f403.h
  • SPI_CLOCK_PHASE_1EDGE : at32f403_spi.h
  • SPI_CLOCK_PHASE_2EDGE : at32f403_spi.h
  • SPI_CLOCK_POLARITY_HIGH : at32f403_spi.h
  • SPI_CLOCK_POLARITY_LOW : at32f403_spi.h
  • SPI_CRC_RX : at32f403_spi.h
  • SPI_CRC_TX : at32f403_spi.h
  • SPI_CS_HARDWARE_MODE : at32f403_spi.h
  • SPI_CS_SOFTWARE_MODE : at32f403_spi.h
  • SPI_FIRST_BIT_LSB : at32f403_spi.h
  • SPI_FIRST_BIT_MSB : at32f403_spi.h
  • SPI_FRAME_16BIT : at32f403_spi.h
  • SPI_FRAME_8BIT : at32f403_spi.h
  • SPI_HALF_DUPLEX_DIRECTION_RX : at32f403_spi.h
  • SPI_HALF_DUPLEX_DIRECTION_TX : at32f403_spi.h
  • SPI_MCLK_DIV_1024 : at32f403_spi.h
  • SPI_MCLK_DIV_128 : at32f403_spi.h
  • SPI_MCLK_DIV_16 : at32f403_spi.h
  • SPI_MCLK_DIV_2 : at32f403_spi.h
  • SPI_MCLK_DIV_256 : at32f403_spi.h
  • SPI_MCLK_DIV_32 : at32f403_spi.h
  • SPI_MCLK_DIV_4 : at32f403_spi.h
  • SPI_MCLK_DIV_512 : at32f403_spi.h
  • SPI_MCLK_DIV_64 : at32f403_spi.h
  • SPI_MCLK_DIV_8 : at32f403_spi.h
  • SPI_MODE_MASTER : at32f403_spi.h
  • SPI_MODE_SLAVE : at32f403_spi.h
  • SPI_SWCS_INTERNAL_LEVEL_HIGHT : at32f403_spi.h
  • SPI_SWCS_INTERNAL_LEVEL_LOW : at32f403_spi.h
  • SPI_TRANSMIT_FULL_DUPLEX : at32f403_spi.h
  • SPI_TRANSMIT_HALF_DUPLEX_RX : at32f403_spi.h
  • SPI_TRANSMIT_HALF_DUPLEX_TX : at32f403_spi.h
  • SPI_TRANSMIT_SIMPLEX_RX : at32f403_spi.h
  • STATUS_ERROR : cf.h
  • STATUS_OK : cf.h
  • SUCCESS : at32f403.h
  • SVCall_IRQn : at32f403.h
  • SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8 : at32f403_misc.h
  • SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV : at32f403_misc.h
  • SysTick_IRQn : at32f403.h


AT32F403 Firmwary Library: Globals

- t -

  • TAMPER_IRQn : at32f403.h
  • TMR15_BRK_IRQn : at32f403.h
  • TMR15_IRQn : at32f403.h
  • TMR15_OVF_IRQn : at32f403.h
  • TMR15_TRG_HALL_IRQn : at32f403.h
  • TMR1_BRK_TMR9_IRQn : at32f403.h
  • TMR1_CH_IRQn : at32f403.h
  • TMR1_OVF_TMR10_IRQn : at32f403.h
  • TMR1_TRG_HALL_TMR11_IRQn : at32f403.h
  • TMR2_GLOBAL_IRQn : at32f403.h
  • TMR3_GLOBAL_IRQn : at32f403.h
  • TMR4_GLOBAL_IRQn : at32f403.h
  • TMR5_GLOBAL_IRQn : at32f403.h
  • TMR6_GLOBAL_IRQn : at32f403.h
  • TMR7_GLOBAL_IRQn : at32f403.h
  • TMR8_BRK_TMR12_IRQn : at32f403.h
  • TMR8_CH_IRQn : at32f403.h
  • TMR8_OVF_TMR13_IRQn : at32f403.h
  • TMR8_TRG_HALL_TMR14_IRQn : at32f403.h
  • TMR_BRK_ADDRESS : at32f403_tmr.h
  • TMR_BRK_INPUT_ACTIVE_HIGH : at32f403_tmr.h
  • TMR_BRK_INPUT_ACTIVE_LOW : at32f403_tmr.h
  • TMR_BRK_SWTRIG : at32f403_tmr.h
  • TMR_C1_DMA_REQUEST : at32f403_tmr.h
  • TMR_C1_SWTRIG : at32f403_tmr.h
  • TMR_C1DT_ADDRESS : at32f403_tmr.h
  • TMR_C2_DMA_REQUEST : at32f403_tmr.h
  • TMR_C2_SWTRIG : at32f403_tmr.h
  • TMR_C2DT_ADDRESS : at32f403_tmr.h
  • TMR_C3_DMA_REQUEST : at32f403_tmr.h
  • TMR_C3_SWTRIG : at32f403_tmr.h
  • TMR_C3DT_ADDRESS : at32f403_tmr.h
  • TMR_C4_DMA_REQUEST : at32f403_tmr.h
  • TMR_C4_SWTRIG : at32f403_tmr.h
  • TMR_C4DT_ADDRESS : at32f403_tmr.h
  • TMR_CC_CHANNEL_MAPPED_DIRECT : at32f403_tmr.h
  • TMR_CC_CHANNEL_MAPPED_INDIRECT : at32f403_tmr.h
  • TMR_CC_CHANNEL_MAPPED_STI : at32f403_tmr.h
  • TMR_CCTRL_ADDRESS : at32f403_tmr.h
  • TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR : at32f403_tmr.h
  • TMR_CHANEL1_CONNECTED_C1IRAW : at32f403_tmr.h
  • TMR_CHANNEL_INPUT_DIV_1 : at32f403_tmr.h
  • TMR_CHANNEL_INPUT_DIV_2 : at32f403_tmr.h
  • TMR_CHANNEL_INPUT_DIV_4 : at32f403_tmr.h
  • TMR_CHANNEL_INPUT_DIV_8 : at32f403_tmr.h
  • TMR_CLOCK_DIV1 : at32f403_tmr.h
  • TMR_CLOCK_DIV2 : at32f403_tmr.h
  • TMR_CLOCK_DIV4 : at32f403_tmr.h
  • TMR_CM1_ADDRESS : at32f403_tmr.h
  • TMR_CM2_ADDRESS : at32f403_tmr.h
  • TMR_COUNT_DOWN : at32f403_tmr.h
  • TMR_COUNT_TWO_WAY_1 : at32f403_tmr.h
  • TMR_COUNT_TWO_WAY_2 : at32f403_tmr.h
  • TMR_COUNT_TWO_WAY_3 : at32f403_tmr.h
  • TMR_COUNT_UP : at32f403_tmr.h
  • TMR_CTRL1_ADDRESS : at32f403_tmr.h
  • TMR_CTRL2_ADDRESS : at32f403_tmr.h
  • TMR_CVAL_ADDRESS : at32f403_tmr.h
  • TMR_DIV_ADDRESS : at32f403_tmr.h
  • TMR_DMA_REQUEST_BY_CHANNEL : at32f403_tmr.h
  • TMR_DMA_REQUEST_BY_OVERFLOW : at32f403_tmr.h
  • TMR_DMA_TRANSFER_10BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_11BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_12BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_13BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_14BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_15BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_16BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_17BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_18BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_1BYTE : at32f403_tmr.h
  • TMR_DMA_TRANSFER_2BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_3BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_4BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_5BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_6BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_7BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_8BYTES : at32f403_tmr.h
  • TMR_DMA_TRANSFER_9BYTES : at32f403_tmr.h
  • TMR_DMACTRL_ADDRESS : at32f403_tmr.h
  • TMR_ENCODER_MODE_A : at32f403_tmr.h
  • TMR_ENCODER_MODE_B : at32f403_tmr.h
  • TMR_ENCODER_MODE_C : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_1 : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_2 : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_4 : at32f403_tmr.h
  • TMR_ES_FREQUENCY_DIV_8 : at32f403_tmr.h
  • TMR_ES_POLARITY_INVERTED : at32f403_tmr.h
  • TMR_ES_POLARITY_NON_INVERTED : at32f403_tmr.h
  • TMR_FORCE_OUTPUT_HIGH : at32f403_tmr.h
  • TMR_FORCE_OUTPUT_LOW : at32f403_tmr.h
  • TMR_HALL_DMA_REQUEST : at32f403_tmr.h
  • TMR_HALL_SWTRIG : at32f403_tmr.h
  • TMR_IDEN_ADDRESS : at32f403_tmr.h
  • TMR_INPUT_BOTH_EDGE : at32f403_tmr.h
  • TMR_INPUT_FALLING_EDGE : at32f403_tmr.h
  • TMR_INPUT_RISING_EDGE : at32f403_tmr.h
  • TMR_ISTS_ADDRESS : at32f403_tmr.h
  • TMR_OUTPUT_ACTIVE_HIGH : at32f403_tmr.h
  • TMR_OUTPUT_ACTIVE_LOW : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_FORCE_HIGH : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_FORCE_LOW : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_HIGH : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_LOW : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_OFF : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_PWM_MODE_A : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_PWM_MODE_B : at32f403_tmr.h
  • TMR_OUTPUT_CONTROL_SWITCH : at32f403_tmr.h
  • TMR_OVERFLOW_DMA_REQUEST : at32f403_tmr.h
  • TMR_OVERFLOW_SWTRIG : at32f403_tmr.h
  • TMR_POLARITY_ACTIVE_BOTH : at32f403_tmr.h
  • TMR_POLARITY_ACTIVE_HIGH : at32f403_tmr.h
  • TMR_POLARITY_ACTIVE_LOW : at32f403_tmr.h
  • TMR_PR_ADDRESS : at32f403_tmr.h
  • TMR_PRIMARY_SEL_C1ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_C2ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_C3ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_C4ORAW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_COMPARE : at32f403_tmr.h
  • TMR_PRIMARY_SEL_ENABLE : at32f403_tmr.h
  • TMR_PRIMARY_SEL_OVERFLOW : at32f403_tmr.h
  • TMR_PRIMARY_SEL_RESET : at32f403_tmr.h
  • TMR_RPR_ADDRESS : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_1 : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_1C : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_2 : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_2C : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_3 : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_3C : at32f403_tmr.h
  • TMR_SELECT_CHANNEL_4 : at32f403_tmr.h
  • TMR_STCTRL_ADDRESS : at32f403_tmr.h
  • TMR_SUB_ENCODER_MODE_A : at32f403_tmr.h
  • TMR_SUB_ENCODER_MODE_B : at32f403_tmr.h
  • TMR_SUB_ENCODER_MODE_C : at32f403_tmr.h
  • TMR_SUB_EXTERNAL_CLOCK_MODE_A : at32f403_tmr.h
  • TMR_SUB_HANG_MODE : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_C1DF1 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_C1INC : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_C2DF2 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_EXTIN : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS0 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS1 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS2 : at32f403_tmr.h
  • TMR_SUB_INPUT_SEL_IS3 : at32f403_tmr.h
  • TMR_SUB_MODE_DIABLE : at32f403_tmr.h
  • TMR_SUB_RESET_MODE : at32f403_tmr.h
  • TMR_SUB_TRIGGER_MODE : at32f403_tmr.h
  • TMR_SWEVT_ADDRESS : at32f403_tmr.h
  • TMR_TRIGGER_DMA_REQUEST : at32f403_tmr.h
  • TMR_TRIGGER_SWTRIG : at32f403_tmr.h
  • TMR_WP_LEVEL_1 : at32f403_tmr.h
  • TMR_WP_LEVEL_2 : at32f403_tmr.h
  • TMR_WP_LEVEL_3 : at32f403_tmr.h
  • TMR_WP_OFF : at32f403_tmr.h
  • TRUE : at32f403.h


AT32F403 Firmwary Library: Globals

- u -

  • UART4_IRQn : at32f403.h
  • UART5_IRQn : at32f403.h
  • UNLOCKED : cf.h
  • UPDATE_CLEAR_FLAG : bootloader/inc/iap.h
  • UPDATE_DONE : bootloader/inc/iap.h
  • UPDATE_ING : bootloader/inc/iap.h
  • UPDATE_PRE : bootloader/inc/iap.h
  • UPGRADE_DONE : flash_fat16.h
  • UPGRADE_FAILED : flash_fat16.h
  • UPGRADE_JUMP : flash_fat16.h
  • UPGRADE_LARGE : flash_fat16.h
  • UPGRADE_READY : flash_fat16.h
  • UPGRADE_SUCCESS : flash_fat16.h
  • UPGRADE_UNKNOWN : flash_fat16.h
  • UPGRAGE_ONGOING : flash_fat16.h
  • UsageFault_IRQn : at32f403.h
  • USART1_IRQn : at32f403.h
  • USART2_IRQn : at32f403.h
  • USART3_IRQn : at32f403.h
  • USART_BREAK_10BITS : at32f403_usart.h
  • USART_BREAK_11BITS : at32f403_usart.h
  • USART_CLOCK_LAST_BIT_NONE : at32f403_usart.h
  • USART_CLOCK_LAST_BIT_OUTPUT : at32f403_usart.h
  • USART_CLOCK_PHASE_1EDGE : at32f403_usart.h
  • USART_CLOCK_PHASE_2EDGE : at32f403_usart.h
  • USART_CLOCK_POLARITY_HIGH : at32f403_usart.h
  • USART_CLOCK_POLARITY_LOW : at32f403_usart.h
  • USART_DATA_8BITS : at32f403_usart.h
  • USART_DATA_9BITS : at32f403_usart.h
  • USART_HARDWARE_FLOW_CTS : at32f403_usart.h
  • USART_HARDWARE_FLOW_NONE : at32f403_usart.h
  • USART_HARDWARE_FLOW_RTS : at32f403_usart.h
  • USART_HARDWARE_FLOW_RTS_CTS : at32f403_usart.h
  • USART_PARITY_EVEN : at32f403_usart.h
  • USART_PARITY_NONE : at32f403_usart.h
  • USART_PARITY_ODD : at32f403_usart.h
  • USART_STOP_0_5_BIT : at32f403_usart.h
  • USART_STOP_1_5_BIT : at32f403_usart.h
  • USART_STOP_1_BIT : at32f403_usart.h
  • USART_STOP_2_BIT : at32f403_usart.h
  • USART_WAKEUP_BY_IDLE_FRAME : at32f403_usart.h
  • USART_WAKEUP_BY_MATCHING_ID : at32f403_usart.h
  • USB_CLK_HEXT : at32f403_usb.h
  • USB_CLK_HICK : at32f403_usb.h
  • USB_CONN_STATE_ADDRESSED : usb_std.h
  • USB_CONN_STATE_CONFIGURED : usb_std.h
  • USB_CONN_STATE_DEFAULT : usb_std.h
  • USB_CONN_STATE_SUSPENDED : usb_std.h
  • USB_EPT0 : at32f403_usb.h
  • USB_EPT1 : at32f403_usb.h
  • USB_EPT2 : at32f403_usb.h
  • USB_EPT3 : at32f403_usb.h
  • USB_EPT4 : at32f403_usb.h
  • USB_EPT5 : at32f403_usb.h
  • USB_EPT6 : at32f403_usb.h
  • USB_EPT7 : at32f403_usb.h
  • USB_ERROR : usb_std.h
  • USB_FAIL : usb_std.h
  • USB_NOT_SUPPORT : usb_std.h
  • USB_OK : usb_std.h
  • USB_WAIT : usb_std.h
  • USBD_ERR_EVENT : usbd_core.h
  • USBD_NOP_EVENT : usbd_core.h
  • USBD_RESET_EVENT : usbd_core.h
  • USBD_SUSPEND_EVENT : usbd_core.h
  • USBD_WAKEUP_EVENT : usbd_core.h
  • USBFS_H_CAN1_TX_IRQn : at32f403.h
  • USBFS_L_CAN1_RX0_IRQn : at32f403.h
  • USBFSWakeUp_IRQn : at32f403.h
  • USER_BUTTON : at32f403_board.h


AT32F403 Firmwary Library: Globals

- w -

  • WDT_CLK_DIV_128 : at32f403_wdt.h
  • WDT_CLK_DIV_16 : at32f403_wdt.h
  • WDT_CLK_DIV_256 : at32f403_wdt.h
  • WDT_CLK_DIV_32 : at32f403_wdt.h
  • WDT_CLK_DIV_4 : at32f403_wdt.h
  • WDT_CLK_DIV_64 : at32f403_wdt.h
  • WDT_CLK_DIV_8 : at32f403_wdt.h
  • WDT_CMD_ENABLE : at32f403_wdt.h
  • WDT_CMD_LOCK : at32f403_wdt.h
  • WDT_CMD_RELOAD : at32f403_wdt.h
  • WDT_CMD_UNLOCK : at32f403_wdt.h
  • WWDT_IRQn : at32f403.h
  • WWDT_PCLK1_DIV_16384 : at32f403_wwdt.h
  • WWDT_PCLK1_DIV_32768 : at32f403_wwdt.h
  • WWDT_PCLK1_DIV_4096 : at32f403_wwdt.h
  • WWDT_PCLK1_DIV_8192 : at32f403_wwdt.h


AT32F403 Firmwary Library: Globals

- x -

  • XMC_ACCESS_MODE_A : at32f403_xmc.h
  • XMC_ACCESS_MODE_B : at32f403_xmc.h
  • XMC_ACCESS_MODE_C : at32f403_xmc.h
  • XMC_ACCESS_MODE_D : at32f403_xmc.h
  • XMC_ASYN_WAIT_DISABLE : at32f403_xmc.h
  • XMC_ASYN_WAIT_ENABLE : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM1 : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM2 : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM3 : at32f403_xmc.h
  • XMC_BANK1_NOR_SRAM4 : at32f403_xmc.h
  • XMC_BANK2_NAND : at32f403_xmc.h
  • XMC_BANK3_NAND : at32f403_xmc.h
  • XMC_BANK4_PCCARD : at32f403_xmc.h
  • XMC_BURST_MODE_DISABLE : at32f403_xmc.h
  • XMC_BURST_MODE_ENABLE : at32f403_xmc.h
  • XMC_BUSTYPE_16_BITS : at32f403_xmc.h
  • XMC_BUSTYPE_8_BITS : at32f403_xmc.h
  • XMC_DATA_ADDR_MUX_DISABLE : at32f403_xmc.h
  • XMC_DATA_ADDR_MUX_ENABLE : at32f403_xmc.h
  • XMC_DEVICE_NOR : at32f403_xmc.h
  • XMC_DEVICE_PSRAM : at32f403_xmc.h
  • XMC_DEVICE_SRAM : at32f403_xmc.h
  • XMC_ECC_OPERATION_DISABLE : at32f403_xmc.h
  • XMC_ECC_OPERATION_ENABLE : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_1024_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_2048_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_256_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_4096_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_512_BYTES : at32f403_xmc.h
  • XMC_ECC_PAGESIZE_8192_BYTES : at32f403_xmc.h
  • XMC_FALLINGEDGE_FLAG : at32f403_xmc.h
  • XMC_FEMPT_FLAG : at32f403_xmc.h
  • XMC_INT_FALLING_EDGE : at32f403_xmc.h
  • XMC_INT_LEVEL : at32f403_xmc.h
  • XMC_INT_RISING_EDGE : at32f403_xmc.h
  • XMC_IRQn : at32f403.h
  • XMC_LEVEL_FLAG : at32f403_xmc.h
  • XMC_RISINGEDGE_FLAG : at32f403_xmc.h
  • XMC_WAIT_OPERATION_DISABLE : at32f403_xmc.h
  • XMC_WAIT_OPERATION_ENABLE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_DISABLE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_ENABLE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_LEVEL_HIGH : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_LEVEL_LOW : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_SYN_BEFORE : at32f403_xmc.h
  • XMC_WAIT_SIGNAL_SYN_DURING : at32f403_xmc.h
  • XMC_WRAPPED_MODE_DISABLE : at32f403_xmc.h
  • XMC_WRAPPED_MODE_ENABLE : at32f403_xmc.h
  • XMC_WRITE_BURST_SYN_DISABLE : at32f403_xmc.h
  • XMC_WRITE_BURST_SYN_ENABLE : at32f403_xmc.h
  • XMC_WRITE_OPERATION_DISABLE : at32f403_xmc.h
  • XMC_WRITE_OPERATION_ENABLE : at32f403_xmc.h
  • XMC_WRITE_TIMING_DISABLE : at32f403_xmc.h
  • XMC_WRITE_TIMING_ENABLE : at32f403_xmc.h


AT32F403 Firmwary Library: Globals

- _ -

  • __AT32F403_LIBRARY_VERSION : at32f403.h
  • __AT32F403_LIBRARY_VERSION_MAJOR : at32f403.h
  • __AT32F403_LIBRARY_VERSION_MIDDLE : at32f403.h
  • __AT32F403_LIBRARY_VERSION_MINOR : at32f403.h
  • __AT32F403_LIBRARY_VERSION_RC : at32f403.h
  • __CM4_REV : at32f403.h
  • __FPU_PRESENT : at32f403.h
  • __MPU_PRESENT : at32f403.h
  • __NVIC_PRIO_BITS : at32f403.h
  • __PCCARD_Reset_HANDLE_STATE : cf.h
  • __Vendor_SysTickConfig : at32f403.h
  • __XMC_PCCARD_CLEAR_FLAG : cf.h
  • __XMC_PCCARD_GET_FLAG : cf.h


AT32F403 Firmwary Library: Globals

- a -

  • ABRT_BIT : cf.h
  • ADC1 : at32f403_adc.h
  • ADC1_BASE : at32f403.h
  • ADC1_ETO_MUX : at32f403_gpio.h
  • ADC1_ETP_MUX : at32f403_gpio.h
  • ADC2 : at32f403_adc.h
  • ADC2_BASE : at32f403.h
  • ADC2_ETO_MUX : at32f403_gpio.h
  • ADC2_ETP_MUX : at32f403_gpio.h
  • ADC3 : at32f403_adc.h
  • ADC3_BASE : at32f403.h
  • ADC_CCE_FLAG : at32f403_adc.h
  • ADC_CCE_INT : at32f403_adc.h
  • ADC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • ADC_OCCS_FLAG : at32f403_adc.h
  • ADC_PCCE_FLAG : at32f403_adc.h
  • ADC_PCCE_INT : at32f403_adc.h
  • ADC_PCCS_FLAG : at32f403_adc.h
  • ADC_TEMP_BASE : project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • ADC_TEMP_SLOPE : project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • ADC_VMOR_FLAG : at32f403_adc.h
  • ADC_VMOR_INT : at32f403_adc.h
  • ADC_VREF : project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
  • addr_1st_cycle : xmc_ecc.h, xmc_nand.h
  • addr_2nd_cycle : xmc_ecc.h, xmc_nand.h
  • addr_3rd_cycle : xmc_ecc.h, xmc_nand.h
  • addr_4th_cycle : xmc_ecc.h, xmc_nand.h
  • ADDR_AREA : xmc_ecc.h, xmc_nand.h
  • ADDR_SHIFT : xmc_nor.c
  • ADDRESS_OUT_OF_RANGE : cdc_msc_class.h, msc_bot_scsi.h
  • AHBPERIPH_BASE : at32f403.h
  • AIRCR_VECTKEY_MASK : at32f403_misc.c
  • AMNF_BIT : cf.h
  • APB1PERIPH_BASE : at32f403.h
  • APB2PERIPH_BASE : at32f403.h
  • APP_START_ADDR : app_led3_toggle/inc/iap.h, app_led4_toggle/inc/iap.h, bootloader/inc/iap.h
  • APPLY_4BYTE_DATA_RW_LONG_CMD : cf.h
  • AT32_AUDIO_FREQ_16K : audio_desc.h, audio_hid_desc.h
  • AT32_AUDIO_FREQ_48K : audio_desc.h, audio_hid_desc.h
  • ATA_CARD_HEAD : cf.h
  • ATA_CHECK_POWER_MODE_CMD : cf.h
  • ATA_COMMON_DATA_AREA : cf.h
  • ATA_CYLINDER_HIGH : cf.h
  • ATA_CYLINDER_LOW : cf.h
  • ATA_DATA : cf.h
  • ATA_ERASE_SECTOR_CMD : cf.h
  • ATA_ERROR_REG : cf.h
  • ATA_EXECUTE_DRIVE_DIAG_CMD : cf.h
  • ATA_FEATURE_REG : cf.h
  • ATA_FORMAT_TRACK_CMD : cf.h
  • ATA_IDENTIFY_DRIVE_CMD : cf.h
  • ATA_IDLE_CMD : cf.h
  • ATA_IDLE_IMMEDIATE_CMD : cf.h
  • ATA_INIT_DRIVE_PARA_CMD : cf.h
  • ATA_READ_BUFFER_CMD : cf.h
  • ATA_READ_LONG_SECTOR_CMD : cf.h
  • ATA_READ_MULTIPLE_CMD : cf.h
  • ATA_READ_SECTOR_CMD : cf.h
  • ATA_READ_VERIFY_SECTOR_CMD : cf.h
  • ATA_RECALIBRATE_CMD : cf.h
  • ATA_REQUEST_SENSE_CMD : cf.h
  • ATA_SECTOR_COUNT : cf.h
  • ATA_SECTOR_NUMBER : cf.h
  • ATA_SECURITY_DISABLE_PASSWORD_CMD : cf.h
  • ATA_SECURITY_ERASE_UNIT_CMD : cf.h
  • ATA_SECURITY_EREASE_PREPARE_CMD : cf.h
  • ATA_SECURITY_FREEZE_LOCK_CMD : cf.h
  • ATA_SECURITY_SET_PASSWORD_CMD : cf.h
  • ATA_SECURITY_UNLOCK_CMD : cf.h
  • ATA_SEEK_CMD : cf.h
  • ATA_SET_FEATURE_CMD : cf.h
  • ATA_SET_MULTIPLE_MODE_CMD : cf.h
  • ATA_SET_SLEEP_MODE_CMD : cf.h
  • ATA_STANDBY_CMD : cf.h
  • ATA_STANDBY_IMMEDIATE_CMD : cf.h
  • ATA_STATUS_CMD : cf.h
  • ATA_STATUS_CMD_ALTERNATE : cf.h
  • ATA_TRANSLATE_SECTOR_CMD : cf.h
  • ATA_WEAR_LEVEL_CMD : cf.h
  • ATA_WRITE_BUFFER_CMD : cf.h
  • ATA_WRITE_LONG_SECTOR_CMD : cf.h
  • ATA_WRITE_MULTIPLE_CMD : cf.h
  • ATA_WRITE_MULTIPLE_WO_ERASE_CMD : cf.h
  • ATA_WRITE_SECTOR_CMD : cf.h
  • ATA_WRITE_SECTOR_WO_ERASE_CMD : cf.h
  • ATA_WRITE_VERIFY_CMD : cf.h
  • ATTRIBUTE_MEM_BASE : cf.h
  • ATTRIBUTE_MEM_CONFIG_BASE : cf.h
  • AUDIO_AC_DESCRIPTOR_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_EXTENSION_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_FEATURE_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_HEADER : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_INPUT_TERMINAL : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_MIXER_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_OUTPUT_TERMINAL : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_PROCESSING_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AC_SELECTOR_UNIT : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_DESCRIPTOR_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_FORMAT_SPECIFIC : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_FORMAT_TYPE : audio_desc.h, audio_hid_desc.h
  • AUDIO_AS_GENERAL : audio_desc.h, audio_hid_desc.h
  • AUDIO_BCD_NUM : audio_desc.h
  • AUDIO_BINTERVAL_TIME : audio_desc.h
  • AUDIO_BITW_16 : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_CS_CONFIGURATION : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_DEVICE : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_ENDPOINT : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_INTERFACE : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_STRING : audio_desc.h, audio_hid_desc.h
  • AUDIO_CS_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_DEFAULT_BITW : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_DEFAULT_FREQ : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_DESCRIPTOR_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_DESCRIPTOR_TYPE : audio_class.h, audio_hid_class.h
  • AUDIO_FEATURE_UNIT_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_FEEDBACK_MAXPACKET_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_FORMAT_TYPE_I : audio_desc.h, audio_hid_desc.h
  • AUDIO_FREQ_16K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_FREQ_48K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_FREQ_SET_CONTROL : audio_class.h, audio_hid_class.h
  • AUDIO_FU_BASS_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_CONTROL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_MID_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_MUTE_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_TREBLE_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_FU_VOLUME_CONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_INPUT_TERMINAL_MICROPHONE : audio_desc.h, audio_hid_desc.h
  • AUDIO_INPUT_TERMINAL_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_INPUT_TERMINAL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_INTERFACE_LEN : audio_desc.h, audio_hid_desc.h
  • AUDIO_INTERFACE_NUM : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_BITW : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_CHANEL_NUM : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_MIC_CHR : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_DEFAULT_BITW : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_MIC_FEATURE_UNIT_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_FREQ_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_IN_MAXPACKET_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_MIC_INPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_INTERFACE : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_INTERFACE_NUMBER : audio_desc.h, audio_hid_desc.h
  • AUDIO_MIC_OUTPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_MUTE_CONTROL : audio_class.h, audio_hid_class.h
  • AUDIO_OUTPUT_TERMINAL_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_OUTPUT_TERMINAL_SPEAKER : audio_desc.h, audio_hid_desc.h
  • AUDIO_OUTPUT_TERMINAL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_PROTOCOL_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_REMAIN_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_REQ_CONTROL_ENDPOINT : audio_class.h, audio_hid_class.h
  • AUDIO_REQ_CONTROL_INTERFACE : audio_class.h, audio_hid_class.h
  • AUDIO_REQ_CONTROL_MASK : audio_class.h, audio_hid_class.h
  • AUDIO_REQ_GET_CUR : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_GET_MAX : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_GET_MEM : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_GET_MIN : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_GET_RES : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_GET_STAT : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_CUR : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_MAX : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_MEM : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_MIN : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQ_SET_RES : audio_desc.h, audio_hid_desc.h
  • AUDIO_REQUEST_CODE_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_BITW : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_CHANEL_NUM : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SPK_CHR : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_DEFAULT_BITW : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SPK_FEATURE_UNIT_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_FREQ_SIZE : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_INPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_INTERFACE : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_INTERFACE_NUMBER : audio_desc.h, audio_hid_desc.h
  • AUDIO_SPK_OUT_MAXPACKET_SIZE : audio_class.h, audio_hid_class.h
  • AUDIO_SPK_OUTPUT_TERMINAL_ID : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUBCLASS_AUDIOCONTROL : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUBCLASS_AUDIOSTREAMING : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUBCLASS_MIDISTREMING : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUBCLASS_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_SUPPORT_FEEDBACK : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_FREQ : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_FREQ_16K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_FREQ_48K : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_MAX_FREQ : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_MIC : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_SUPPORT_SPK : audio/audio_conf.h, audio_hid/audio_conf.h
  • AUDIO_TERMINAL_TYPE_STREAMING : audio_desc.h, audio_hid_desc.h
  • AUDIO_TERMINAL_TYPE_UNDEFINED : audio_desc.h, audio_hid_desc.h
  • AUDIO_TERMINAL_TYPE_VENDOR : audio_desc.h, audio_hid_desc.h
  • AUDIO_VOLUME_CONTROL : audio_class.h, audio_hid_class.h
  • AUHID_BCD_NUM : audio_hid_desc.h
  • AUHID_HID_BCD_NUM : audio_hid_desc.h
  • AUHID_HID_BINTERVAL_TIME : audio_hid_desc.h


AT32F403 Firmwary Library: Globals

- b -

  • BANK1_NOR2_ADDR : xmc_nor.c
  • Bank1_SRAM1_ADDR : xmc_psram.c, xmc_sram.c
  • Bank2_NAND_ADDR : xmc_ecc.h, xmc_nand.h
  • Bank_NAND_ADDR : xmc_ecc.h, xmc_nand.h
  • BBK_BIT : cf.h
  • BK4TMGIO_CLEAR_MASK : cf.h
  • BKxTMGATT_CLEAR_MASK : cf.h
  • BKxTMGMEM_CLEAR_MASK : cf.h
  • BLACK : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BLK2 : at32f403_usb.h
  • BLK32 : at32f403_usb.h
  • BLOCK_SIZE : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • BLOCKERASE_TIMEOUT : xmc_nor.c
  • BLOCKS_NUMBER : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • BLUE : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BPR : at32f403_bpr.h
  • BPR_BASE : at32f403.h
  • BPR_DR_NUMBER : project/at_start_f403/examples/bpr/bpr_data/src/main.c, project/at_start_f403/examples/bpr/tamper/src/main.c
  • BPR_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • BPR_TAMPER_EVENT_FLAG : at32f403_bpr.h
  • BPR_TAMPER_INTERRUPT_FLAG : at32f403_bpr.h
  • BRED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BROWN : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BRRED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • BUF_SIZE : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, project/at_start_f403/examples/spi/w25q_flash/src/main.c
  • BUFFER_SIZE : project/at_start_f403/examples/crc/calculation/src/main.c, project/at_start_f403/examples/dma/data_to_gpio/src/main.c, project/at_start_f403/examples/dma/flash_to_sram/src/main.c, project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c, project/at_start_f403/examples/spi/fullduplex_polling/src/main.c, project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c, project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c, project/at_start_f403/examples/usart/hw_flow_control/src/main.c, project/at_start_f403/examples/usart/receiver_mute/src/main.c, xmc_ecc.h, xmc_nand.h, project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • buffer_size : project/at_start_f403/examples/xmc/nor/src/main.c
  • BUFFERSIZE : project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c
  • BUSY_BIT : cf.h
  • BUTTON_RELEASE : mouse_class.h


AT32F403 Firmwary Library: Globals

- c -

  • CAN1 : at32f403_can.h
  • CAN1_BASE : at32f403.h
  • CAN_BOF_FLAG : at32f403_can.h
  • CAN_BOIEN_INT : at32f403_can.h
  • CAN_EAF_FLAG : at32f403_can.h
  • CAN_EAIEN_INT : at32f403_can.h
  • CAN_EDZC_FLAG : at32f403_can.h
  • CAN_EDZIEN_INT : at32f403_can.h
  • CAN_EOIEN_INT : at32f403_can.h
  • CAN_EOIF_FLAG : at32f403_can.h
  • CAN_EPF_FLAG : at32f403_can.h
  • CAN_EPIEN_INT : at32f403_can.h
  • CAN_ETR_FLAG : at32f403_can.h
  • CAN_ETRIEN_INT : at32f403_can.h
  • CAN_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • CAN_MSTS_EDZIF_VAL : at32f403_can.h
  • CAN_MSTS_EOIF_VAL : at32f403_can.h
  • CAN_MSTS_QDZIF_VAL : at32f403_can.h
  • CAN_MUX_10 : at32f403_gpio.h
  • CAN_MUX_11 : at32f403_gpio.h
  • CAN_QDZIEN_INT : at32f403_can.h
  • CAN_QDZIF_FLAG : at32f403_can.h
  • CAN_RF0_RF0FF_VAL : at32f403_can.h
  • CAN_RF0_RF0OF_VAL : at32f403_can.h
  • CAN_RF0_RF0R_VAL : at32f403_can.h
  • CAN_RF0FF_FLAG : at32f403_can.h
  • CAN_RF0FIEN_INT : at32f403_can.h
  • CAN_RF0MIEN_INT : at32f403_can.h
  • CAN_RF0MN_FLAG : at32f403_can.h
  • CAN_RF0OF_FLAG : at32f403_can.h
  • CAN_RF0OIEN_INT : at32f403_can.h
  • CAN_RF1_RF1FF_VAL : at32f403_can.h
  • CAN_RF1_RF1OF_VAL : at32f403_can.h
  • CAN_RF1_RF1R_VAL : at32f403_can.h
  • CAN_RF1FF_FLAG : at32f403_can.h
  • CAN_RF1FIEN_INT : at32f403_can.h
  • CAN_RF1MIEN_INT : at32f403_can.h
  • CAN_RF1MN_FLAG : at32f403_can.h
  • CAN_RF1OF_FLAG : at32f403_can.h
  • CAN_RF1OIEN_INT : at32f403_can.h
  • CAN_TCIEN_INT : at32f403_can.h
  • CAN_TM0TCF_FLAG : at32f403_can.h
  • CAN_TM1TCF_FLAG : at32f403_can.h
  • CAN_TM2TCF_FLAG : at32f403_can.h
  • CAN_TMEF_FLAG : at32f403_can.h
  • CAN_TSTS_TM0CT_VAL : at32f403_can.h
  • CAN_TSTS_TM0TCF_VAL : at32f403_can.h
  • CAN_TSTS_TM1CT_VAL : at32f403_can.h
  • CAN_TSTS_TM1TCF_VAL : at32f403_can.h
  • CAN_TSTS_TM2CT_VAL : at32f403_can.h
  • CAN_TSTS_TM2TCF_VAL : at32f403_can.h
  • CARD_CONFIG_STATUS_REG : cf.h
  • CBW_BMCBWFLAGS_DIR_IN : cdc_msc_class.h, msc_bot_scsi.h
  • CBW_BMCBWFLAGS_DIR_OUT : cdc_msc_class.h, msc_bot_scsi.h
  • CBW_CMD_LENGTH : cdc_msc_class.h, msc_bot_scsi.h
  • CBW_DCBWSIGNATURE : cdc_msc_class.h, msc_bot_scsi.h
  • CDC_BCD_NUM : cdc_desc.h, cdc_msc_desc.h
  • CDC_HID_BINTERVAL_TIME : cdc_desc.h, cdc_msc_desc.h
  • CF_ATTRIBUTE_SPACE_ADDRESS : cf.h
  • CF_BUSY : cf.h
  • CF_COMMON_SPACE_ADDRESS : cf.h
  • CF_DEVICE_ADDRESS : cf.h
  • CF_IO_16_MODE : cf.h
  • CF_IO_PRICH_MODE : cf.h
  • CF_IO_SECCH_MODE : cf.h
  • CF_IO_SPACE_ADDRESS : cf.h
  • CF_IO_SPACE_PRIMARY_ADDR : cf.h
  • CF_MEM_MAP_MODE : cf.h
  • CF_print : cf.h
  • CF_PROGR : cf.h
  • CF_READY : cf.h
  • CF_SECTOR_SIZE : cf.h
  • CF_TIMEOUT_ERROR : cf.h
  • CHIPERASE_TIMEOUT : xmc_nor.c
  • CISTPL_CFTABLE_ENTRY : cf.h
  • CISTPL_CONFIG : cf.h
  • CISTPL_DEVICE : cf.h
  • CISTPL_DEVICE_OC : cf.h
  • CISTPL_END : cf.h
  • CISTPL_FUNCE : cf.h
  • CISTPL_FUNCID : cf.h
  • CISTPL_JEDEC_C : cf.h
  • CISTPL_MANFID : cf.h
  • CISTPL_NO_LINK : cf.h
  • CISTPL_VERS_1 : cf.h
  • CMD_AREA : xmc_ecc.h, xmc_nand.h
  • COL_ADDRESS : xmc_ecc.h, xmc_nand.h
  • CONF0_BIT : cf.h
  • CONF1_BIT : cf.h
  • CONF2_BIT : cf.h
  • CONF3_BIT : cf.h
  • CONF4_BIT : cf.h
  • CONF5_BIT : cf.h
  • CONFIG_OPTION_REG : cf.h
  • configASSERT : FreeRTOSConfig.h
  • configCPU_CLOCK_HZ : FreeRTOSConfig.h
  • configIDLE_SHOULD_YIELD : FreeRTOSConfig.h
  • configKERNEL_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configLIBRARY_LOWEST_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configMAX_CO_ROUTINE_PRIORITIES : FreeRTOSConfig.h
  • configMAX_PRIORITIES : FreeRTOSConfig.h
  • configMAX_SYSCALL_INTERRUPT_PRIORITY : FreeRTOSConfig.h
  • configMAX_TASK_NAME_LEN : FreeRTOSConfig.h
  • configMINIMAL_STACK_SIZE : FreeRTOSConfig.h
  • configPRIO_BITS : FreeRTOSConfig.h
  • configSUPPORT_DYNAMIC_ALLOCATION : FreeRTOSConfig.h
  • configTICK_RATE_HZ : FreeRTOSConfig.h
  • configTOTAL_HEAP_SIZE : FreeRTOSConfig.h
  • configUSE_16_BIT_TICKS : FreeRTOSConfig.h
  • configUSE_CO_ROUTINES : FreeRTOSConfig.h
  • configUSE_IDLE_HOOK : FreeRTOSConfig.h
  • configUSE_PREEMPTION : FreeRTOSConfig.h
  • configUSE_TICK_HOOK : FreeRTOSConfig.h
  • CONVERT_ENDIAN : hid_iap_class.h
  • CORR_BIT : cf.h
  • COUNTOF : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • CRC : at32f403_crc.h
  • CRC_BASE : at32f403.h
  • CRC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • CRM : at32f403_crm.h
  • CRM_ALL_RESET_FLAG : at32f403_crm.h
  • CRM_BASE : at32f403.h
  • CRM_CLOCK_FAILURE_INT : at32f403_crm.h
  • CRM_CLOCK_FAILURE_INT_FLAG : at32f403_crm.h
  • CRM_HEXT_READY_INT_FLAG : at32f403_crm.h
  • CRM_HEXT_STABLE_FLAG : at32f403_crm.h
  • CRM_HEXT_STABLE_INT : at32f403_crm.h
  • CRM_HICK_READY_INT_FLAG : at32f403_crm.h
  • CRM_HICK_STABLE_FLAG : at32f403_crm.h
  • CRM_HICK_STABLE_INT : at32f403_crm.h
  • CRM_LEXT_READY_INT_FLAG : at32f403_crm.h
  • CRM_LEXT_STABLE_FLAG : at32f403_crm.h
  • CRM_LEXT_STABLE_INT : at32f403_crm.h
  • CRM_LICK_READY_INT_FLAG : at32f403_crm.h
  • CRM_LICK_STABLE_FLAG : at32f403_crm.h
  • CRM_LICK_STABLE_INT : at32f403_crm.h
  • CRM_LOWPOWER_RESET_FLAG : at32f403_crm.h
  • CRM_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • CRM_NRST_RESET_FLAG : at32f403_crm.h
  • CRM_PLL_READY_INT_FLAG : at32f403_crm.h
  • CRM_PLL_STABLE_FLAG : at32f403_crm.h
  • CRM_PLL_STABLE_INT : at32f403_crm.h
  • CRM_POR_RESET_FLAG : at32f403_crm.h
  • CRM_REG : at32f403_crm.h
  • CRM_REG_BIT : at32f403_crm.h
  • CRM_SW_RESET_FLAG : at32f403_crm.h
  • CRM_WDT_RESET_FLAG : at32f403_crm.h
  • CRM_WWDT_RESET_FLAG : at32f403_crm.h
  • CSW_BCSWSTATUS_FAILED : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_BCSWSTATUS_PASS : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_BCSWSTATUS_PHASE_ERR : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_CMD_LENGTH : cdc_msc_class.h, msc_bot_scsi.h
  • CSW_DCSWSIGNATURE : cdc_msc_class.h, msc_bot_scsi.h
  • CUSHID_BCD_NUM : custom_hid_desc.h
  • CUSHID_BINTERVAL_TIME : custom_hid_desc.h
  • CYAN : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h


AT32F403 Firmwary Library: Globals

- d -

  • DAC : at32f403_dac.h
  • DAC1_D1DMAUDRF : at32f403_dac.h
  • DAC2_D2DMAUDRF : at32f403_dac.h
  • DAC_BASE : at32f403.h
  • DAC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • DATA1_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA2_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA3_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA4_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • DATA_AREA : xmc_ecc.h, xmc_nand.h
  • DEBUG_BASE : at32f403.h
  • DEBUG_CAN1_PAUSE : at32f403_debug.h
  • DEBUG_DEEPSLEEP : at32f403_debug.h
  • DEBUG_I2C1_SMBUS_TIMEOUT : at32f403_debug.h
  • DEBUG_I2C2_SMBUS_TIMEOUT : at32f403_debug.h
  • DEBUG_I2C3_SMBUS_TIMEOUT : at32f403_debug.h
  • DEBUG_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • DEBUG_SLEEP : at32f403_debug.h
  • DEBUG_STANDBY : at32f403_debug.h
  • DEBUG_TMR10_PAUSE : at32f403_debug.h
  • DEBUG_TMR11_PAUSE : at32f403_debug.h
  • DEBUG_TMR12_PAUSE : at32f403_debug.h
  • DEBUG_TMR13_PAUSE : at32f403_debug.h
  • DEBUG_TMR14_PAUSE : at32f403_debug.h
  • DEBUG_TMR15_PAUSE : at32f403_debug.h
  • DEBUG_TMR1_PAUSE : at32f403_debug.h
  • DEBUG_TMR2_PAUSE : at32f403_debug.h
  • DEBUG_TMR3_PAUSE : at32f403_debug.h
  • DEBUG_TMR4_PAUSE : at32f403_debug.h
  • DEBUG_TMR5_PAUSE : at32f403_debug.h
  • DEBUG_TMR6_PAUSE : at32f403_debug.h
  • DEBUG_TMR7_PAUSE : at32f403_debug.h
  • DEBUG_TMR8_PAUSE : at32f403_debug.h
  • DEBUG_TMR9_PAUSE : at32f403_debug.h
  • DEBUG_WDT_PAUSE : at32f403_debug.h
  • DEBUG_WWDT_PAUSE : at32f403_debug.h
  • DEBUGMCU : at32f403_debug.h
  • DELAY : project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c, project/at_start_f403/templates/src/main.c
  • DEV_MMC : diskio.c
  • DEV_RAM : diskio.c
  • DEV_USB : diskio.c
  • DEVICE_ID_ADDR1 : random.c
  • DISABLE_8BIT_MODE : cf.h
  • DISABLE_POR : cf.h
  • DISABLE_PWR_LV1 : cf.h
  • DISABLE_READ_LOOK_AHEAD : cf.h
  • DMA1 : at32f403_dma.h
  • DMA1_BASE : at32f403.h
  • DMA1_CHANNEL1 : at32f403_dma.h
  • DMA1_CHANNEL1_BASE : at32f403.h
  • DMA1_CHANNEL2 : at32f403_dma.h
  • DMA1_CHANNEL2_BASE : at32f403.h
  • DMA1_CHANNEL3 : at32f403_dma.h
  • DMA1_CHANNEL3_BASE : at32f403.h
  • DMA1_CHANNEL4 : at32f403_dma.h
  • DMA1_CHANNEL4_BASE : at32f403.h
  • DMA1_CHANNEL5 : at32f403_dma.h
  • DMA1_CHANNEL5_BASE : at32f403.h
  • DMA1_CHANNEL6 : at32f403_dma.h
  • DMA1_CHANNEL6_BASE : at32f403.h
  • DMA1_CHANNEL7 : at32f403_dma.h
  • DMA1_CHANNEL7_BASE : at32f403.h
  • DMA1_DTERR1_FLAG : at32f403_dma.h
  • DMA1_DTERR2_FLAG : at32f403_dma.h
  • DMA1_DTERR3_FLAG : at32f403_dma.h
  • DMA1_DTERR4_FLAG : at32f403_dma.h
  • DMA1_DTERR5_FLAG : at32f403_dma.h
  • DMA1_DTERR6_FLAG : at32f403_dma.h
  • DMA1_DTERR7_FLAG : at32f403_dma.h
  • DMA1_FDT1_FLAG : at32f403_dma.h
  • DMA1_FDT2_FLAG : at32f403_dma.h
  • DMA1_FDT3_FLAG : at32f403_dma.h
  • DMA1_FDT4_FLAG : at32f403_dma.h
  • DMA1_FDT5_FLAG : at32f403_dma.h
  • DMA1_FDT6_FLAG : at32f403_dma.h
  • DMA1_FDT7_FLAG : at32f403_dma.h
  • DMA1_GL1_FLAG : at32f403_dma.h
  • DMA1_GL2_FLAG : at32f403_dma.h
  • DMA1_GL3_FLAG : at32f403_dma.h
  • DMA1_GL4_FLAG : at32f403_dma.h
  • DMA1_GL5_FLAG : at32f403_dma.h
  • DMA1_GL6_FLAG : at32f403_dma.h
  • DMA1_GL7_FLAG : at32f403_dma.h
  • DMA1_HDT1_FLAG : at32f403_dma.h
  • DMA1_HDT2_FLAG : at32f403_dma.h
  • DMA1_HDT3_FLAG : at32f403_dma.h
  • DMA1_HDT4_FLAG : at32f403_dma.h
  • DMA1_HDT5_FLAG : at32f403_dma.h
  • DMA1_HDT6_FLAG : at32f403_dma.h
  • DMA1_HDT7_FLAG : at32f403_dma.h
  • DMA2 : at32f403_dma.h
  • DMA2_BASE : at32f403.h
  • DMA2_CHANNEL1 : at32f403_dma.h
  • DMA2_CHANNEL1_BASE : at32f403.h
  • DMA2_CHANNEL2 : at32f403_dma.h
  • DMA2_CHANNEL2_BASE : at32f403.h
  • DMA2_CHANNEL3 : at32f403_dma.h
  • DMA2_CHANNEL3_BASE : at32f403.h
  • DMA2_CHANNEL4 : at32f403_dma.h
  • DMA2_CHANNEL4_BASE : at32f403.h
  • DMA2_CHANNEL5 : at32f403_dma.h
  • DMA2_CHANNEL5_BASE : at32f403.h
  • DMA2_CHANNEL6_BASE : at32f403.h
  • DMA2_CHANNEL7_BASE : at32f403.h
  • DMA2_DTERR1_FLAG : at32f403_dma.h
  • DMA2_DTERR2_FLAG : at32f403_dma.h
  • DMA2_DTERR3_FLAG : at32f403_dma.h
  • DMA2_DTERR4_FLAG : at32f403_dma.h
  • DMA2_DTERR5_FLAG : at32f403_dma.h
  • DMA2_FDT1_FLAG : at32f403_dma.h
  • DMA2_FDT2_FLAG : at32f403_dma.h
  • DMA2_FDT3_FLAG : at32f403_dma.h
  • DMA2_FDT4_FLAG : at32f403_dma.h
  • DMA2_FDT5_FLAG : at32f403_dma.h
  • DMA2_GL1_FLAG : at32f403_dma.h
  • DMA2_GL2_FLAG : at32f403_dma.h
  • DMA2_GL3_FLAG : at32f403_dma.h
  • DMA2_GL4_FLAG : at32f403_dma.h
  • DMA2_GL5_FLAG : at32f403_dma.h
  • DMA2_HDT1_FLAG : at32f403_dma.h
  • DMA2_HDT2_FLAG : at32f403_dma.h
  • DMA2_HDT3_FLAG : at32f403_dma.h
  • DMA2_HDT4_FLAG : at32f403_dma.h
  • DMA2_HDT5_FLAG : at32f403_dma.h
  • DMA_BUFFER_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • DMA_DTERR_INT : at32f403_dma.h
  • DMA_FDT_INT : at32f403_dma.h
  • DMA_GET_HT_FLAG : i2c_application.c
  • DMA_GET_TC_FLAG : i2c_application.c
  • DMA_GET_TERR_FLAG : i2c_application.c
  • DMA_HDT_INT : at32f403_dma.h
  • DMA_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • DOWN_MOVE : mouse_class.h
  • DRQ_BIT : cf.h
  • DSC_BIT : cf.h
  • DWF_BIT : cf.h
  • DYMMY_BYTE : project/at_start_f403/examples/usart/synchronous/src/main.c
  • DZC_TIMEOUT : at32f403_can.h


AT32F403 Firmwary Library: Globals

- e -

  • Enable_16_bit_Transfer : cf.h
  • Enable_8_bit_Transfer : cf.h
  • ENABLE_8BIT_MODE : cf.h
  • ENABLE_POR : cf.h
  • ENABLE_PWR_LV1 : cf.h
  • ENABLE_RTC_ASSEED : random.h
  • EPT0_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT0_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT1_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT1_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT2_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT2_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT3_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT3_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT4_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT4_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT5_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT5_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT6_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT6_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT7_RX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • EPT7_TX_ADDR : project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • ERASE_TIMEOUT : at32f403_flash.h
  • ERR_BIT : cf.h
  • ERR_REG_INFO : cf.h
  • ERROR_ID_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • EXINT : at32f403_exint.h
  • EXINT_BASE : at32f403.h
  • EXINT_LINE_0 : at32f403_exint.h
  • EXINT_LINE_1 : at32f403_exint.h
  • EXINT_LINE_10 : at32f403_exint.h
  • EXINT_LINE_11 : at32f403_exint.h
  • EXINT_LINE_12 : at32f403_exint.h
  • EXINT_LINE_13 : at32f403_exint.h
  • EXINT_LINE_14 : at32f403_exint.h
  • EXINT_LINE_15 : at32f403_exint.h
  • EXINT_LINE_16 : at32f403_exint.h
  • EXINT_LINE_17 : at32f403_exint.h
  • EXINT_LINE_18 : at32f403_exint.h
  • EXINT_LINE_19 : at32f403_exint.h
  • EXINT_LINE_2 : at32f403_exint.h
  • EXINT_LINE_3 : at32f403_exint.h
  • EXINT_LINE_4 : at32f403_exint.h
  • EXINT_LINE_5 : at32f403_exint.h
  • EXINT_LINE_6 : at32f403_exint.h
  • EXINT_LINE_7 : at32f403_exint.h
  • EXINT_LINE_8 : at32f403_exint.h
  • EXINT_LINE_9 : at32f403_exint.h
  • EXINT_LINE_NONE : at32f403_exint.h
  • EXINT_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • EXT_CSD_BUS_WIDTH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Clear_byte : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_CMD_SET_CPSECURE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_CMD_SET_NORMAL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_CMD_SET_SECURE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Command_set : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_HS_TIMING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Set_bit : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_CSD_Write_byte : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • EXT_SPIM_EN_MUX : at32f403_gpio.h


AT32F403 Firmwary Library: Globals

- f -

  • FALSE : cf.h
  • FAP_RELIEVE_KEY : at32f403_flash.h
  • FAST : project/at_start_f403/templates/src/main.c
  • FAT16_BYTE_PER_SIZE : flash_fat16.h
  • FAT16_DIR_SIZE : flash_fat16.h
  • FAT16_FILENAME_SIZE : flash_fat16.h
  • FAT16_SECTOR_SIZE : flash_fat16.h, flash_fat16.c
  • FAT16_TABLE_SIZE : flash_fat16.h
  • FEEDBACK_REFRESH_TIME : audio_class.h, audio_hid_class.h
  • FF_CODE_PAGE : ffconf.h
  • FF_FS_EXFAT : ffconf.h
  • FF_FS_LOCK : ffconf.h
  • FF_FS_MINIMIZE : ffconf.h
  • FF_FS_NOFSINFO : ffconf.h
  • FF_FS_NORTC : ffconf.h
  • FF_FS_READONLY : ffconf.h
  • FF_FS_REENTRANT : ffconf.h
  • FF_FS_RPATH : ffconf.h
  • FF_FS_TIMEOUT : ffconf.h
  • FF_FS_TINY : ffconf.h
  • FF_LBA64 : ffconf.h
  • FF_LFN_BUF : ffconf.h
  • FF_LFN_UNICODE : ffconf.h
  • FF_MAX_LFN : ffconf.h
  • FF_MAX_SS : ffconf.h
  • FF_MIN_GPT : ffconf.h
  • FF_MIN_SS : ffconf.h
  • FF_MULTI_PARTITION : ffconf.h
  • FF_NORTC_MDAY : ffconf.h
  • FF_NORTC_MON : ffconf.h
  • FF_NORTC_YEAR : ffconf.h
  • FF_PRINT_FLOAT : ffconf.h
  • FF_PRINT_LLI : ffconf.h
  • FF_SFN_BUF : ffconf.h
  • FF_STR_VOLUME_ID : ffconf.h
  • FF_STRF_ENCODE : ffconf.h
  • FF_SYNC_t : ffconf.h
  • FF_USE_CHMOD : ffconf.h
  • FF_USE_EXPAND : ffconf.h
  • FF_USE_FASTSEEK : ffconf.h
  • FF_USE_FIND : ffconf.h
  • FF_USE_FORWARD : ffconf.h
  • FF_USE_LABEL : ffconf.h
  • FF_USE_LFN : ffconf.h
  • FF_USE_MKFS : ffconf.h
  • FF_USE_STRFUNC : ffconf.h
  • FF_USE_TRIM : ffconf.h
  • FF_VOLUME_STRS : ffconf.h
  • FF_VOLUMES : ffconf.h
  • FFCONF_DEF : ffconf.h
  • FILE_SUFFIX1_LEN : flash_fat16.h
  • FILE_SUFFIX1_NAME : flash_fat16.h
  • FILE_SUFFIX2_LEN : flash_fat16.h
  • FILE_SUFFIX2_NAME : flash_fat16.h
  • FILTER_EXT_ID1 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_EXT_ID2 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_EXT_ID3 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_STD_ID1 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_STD_ID2 : project/at_start_f403/examples/can/filter/src/main.c
  • FILTER_STD_ID3 : project/at_start_f403/examples/can/filter/src/main.c
  • FLASH : at32f403_flash.h
  • FLASH_APP_ADDRESS : app_led3_toggle/inc/hid_iap_user.h, app_led4_toggle/inc/hid_iap_user.h, bootloader/inc/hid_iap_user.h
  • FLASH_APP_START_ADDR : flash_fat16.h
  • FLASH_BANK1_END_ADDR : at32f403_flash.h
  • FLASH_BANK1_EPPERR_FLAG : at32f403_flash.h
  • FLASH_BANK1_ERR_INT : at32f403_flash.h
  • FLASH_BANK1_OBF_FLAG : at32f403_flash.h
  • FLASH_BANK1_ODF_FLAG : at32f403_flash.h
  • FLASH_BANK1_ODF_INT : at32f403_flash.h
  • FLASH_BANK1_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_BANK1_START_ADDR : at32f403_flash.h
  • FLASH_BANK2_END_ADDR : at32f403_flash.h
  • FLASH_BANK2_EPPERR_FLAG : at32f403_flash.h
  • FLASH_BANK2_ERR_INT : at32f403_flash.h
  • FLASH_BANK2_OBF_FLAG : at32f403_flash.h
  • FLASH_BANK2_ODF_FLAG : at32f403_flash.h
  • FLASH_BANK2_ODF_INT : at32f403_flash.h
  • FLASH_BANK2_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_BANK2_START_ADDR : at32f403_flash.h
  • FLASH_BASE : at32f403.h
  • FLASH_BOOT_FROM_BANK1 : at32f403_flash.h
  • FLASH_BOOT_FROM_BANK2 : at32f403_flash.h
  • FLASH_CS_HIGH : spi_flash.h
  • FLASH_CS_LOW : spi_flash.h
  • FLASH_EPPERR_FLAG : at32f403_flash.h
  • FLASH_ERR_INT : at32f403_flash.h
  • FLASH_FAT16_1_ADDR : flash_fat16.h
  • FLASH_FAT16_2_ADDR : flash_fat16.h
  • FLASH_FAT16_BOOT_SECTOR_ADDR : flash_fat16.h
  • FLASH_FAT16_FILE_START_ADDR : flash_fat16.h
  • FLASH_FAT16_ROOT_ADDR : flash_fat16.h
  • FLASH_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • FLASH_OBF_FLAG : at32f403_flash.h
  • FLASH_ODF_FLAG : at32f403_flash.h
  • FLASH_ODF_INT : at32f403_flash.h
  • FLASH_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_REG_BASE : at32f403.h
  • FLASH_SECTOR_1K_ALLGNED : flash_fat16.h
  • FLASH_SECTOR_1K_SIZE : flash_fat16.h
  • FLASH_SECTOR_2K_ALLGNED : flash_fat16.h
  • FLASH_SECTOR_2K_SIZE : flash_fat16.h
  • FLASH_SECTOR_4K_ALLGNED : flash_fat16.h
  • FLASH_SECTOR_4K_SIZE : flash_fat16.h
  • FLASH_SIZE : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h
  • FLASH_SIZE_REG : hid_iap_class.h
  • FLASH_SPI_DUMMY_BYTE : spi_flash.h
  • FLASH_SPIM_EPPERR_FLAG : at32f403_flash.h
  • FLASH_SPIM_ERR_INT : at32f403_flash.h
  • FLASH_SPIM_OBF_FLAG : at32f403_flash.h
  • FLASH_SPIM_ODF_FLAG : at32f403_flash.h
  • FLASH_SPIM_ODF_INT : at32f403_flash.h
  • FLASH_SPIM_PRGMERR_FLAG : at32f403_flash.h
  • FLASH_SPIM_START_ADDR : at32f403_flash.h
  • FLASH_TEST_ADDR : project/at_start_f403/examples/spi/w25q_flash/src/main.c
  • FLASH_UNLOCK_KEY1 : at32f403_flash.h
  • FLASH_UNLOCK_KEY2 : at32f403_flash.h
  • FLASH_USDERR_FLAG : at32f403_flash.h
  • FZC_TIMEOUT : at32f403_can.h


AT32F403 Firmwary Library: Globals

- g -

  • GBLUE : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • GET_LINE_CODING : cdc_msc_class.h, msc_bot_scsi.h, usb_std.h
  • GET_RX_LEN_ADDR : at32f403_usb.h
  • GET_TX_LEN_ADDR : at32f403_usb.h
  • GPIO_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • GPIO_PINS_0 : at32f403_gpio.h
  • GPIO_PINS_1 : at32f403_gpio.h
  • GPIO_PINS_10 : at32f403_gpio.h
  • GPIO_PINS_11 : at32f403_gpio.h
  • GPIO_PINS_12 : at32f403_gpio.h
  • GPIO_PINS_13 : at32f403_gpio.h
  • GPIO_PINS_14 : at32f403_gpio.h
  • GPIO_PINS_15 : at32f403_gpio.h
  • GPIO_PINS_2 : at32f403_gpio.h
  • GPIO_PINS_3 : at32f403_gpio.h
  • GPIO_PINS_4 : at32f403_gpio.h
  • GPIO_PINS_5 : at32f403_gpio.h
  • GPIO_PINS_6 : at32f403_gpio.h
  • GPIO_PINS_7 : at32f403_gpio.h
  • GPIO_PINS_8 : at32f403_gpio.h
  • GPIO_PINS_9 : at32f403_gpio.h
  • GPIO_PINS_ALL : at32f403_gpio.h
  • GPIOA : at32f403_gpio.h
  • GPIOA_BASE : at32f403.h
  • GPIOB : at32f403_gpio.h
  • GPIOB_BASE : at32f403.h
  • GPIOC : at32f403_gpio.h
  • GPIOC_BASE : at32f403.h
  • GPIOD : at32f403_gpio.h
  • GPIOD_BASE : at32f403.h
  • GPIOE : at32f403_gpio.h
  • GPIOE_BASE : at32f403.h
  • GPIOF : at32f403_gpio.h
  • GPIOF_BASE : at32f403.h
  • GPIOG : at32f403_gpio.h
  • GPIOG_BASE : at32f403.h
  • GRAY : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • GRED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • GREEN : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h


AT32F403 Firmwary Library: Globals

- h -

  • HBYTE : usb_std.h
  • HEXT_STABLE_DELAY : system_at32f403.h
  • HEXT_STARTUP_TIMEOUT : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • HEXT_VALUE : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • HICK_VALUE : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • HID_CLASS_DESC_HID : audio_hid_desc.h, usb_std.h
  • HID_CLASS_DESC_PHYSICAL : audio_hid_desc.h, usb_std.h
  • HID_CLASS_DESC_REPORT : audio_hid_desc.h, usb_std.h
  • HID_DESCRIPTOR_TYPE : usb_std.h
  • HID_IAP_BUFFER_LEN : hid_iap_class.h
  • HID_INTERFACE_NUMBER : audio_hid_desc.h
  • HID_REPORT_DESC : usb_std.h
  • HID_REPORT_ID_1 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_2 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_3 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_4 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_5 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REPORT_ID_6 : audio_hid_desc.h, custom_hid_desc.h
  • HID_REQ_GET_IDLE : usb_std.h
  • HID_REQ_GET_PROTOCOL : usb_std.h
  • HID_REQ_GET_REPORT : usb_std.h
  • HID_REQ_SET_IDLE : usb_std.h
  • HID_REQ_SET_PROTOCOL : usb_std.h
  • HID_REQ_SET_REPORT : usb_std.h
  • HIDIAP_BCD_NUM : hid_iap_desc.h
  • HIDIAP_BINTERVAL_TIME : hid_iap_desc.h
  • HIST_LENGTH : project/at_start_f403/examples/usart/smartcard/src/main.c


AT32F403 Firmwary Library: Globals

- i -

  • I2C1 : at32f403_i2c.h
  • I2C1_BASE : at32f403.h
  • I2C1_MUX : at32f403_gpio.h
  • I2C2 : at32f403_i2c.h
  • I2C2_BASE : at32f403.h
  • I2C3 : at32f403_i2c.h
  • I2C3_BASE : at32f403.h
  • I2C3_MUX : at32f403_gpio.h
  • I2C_ACKFAIL_FLAG : at32f403_i2c.h
  • I2C_ADDR2_FLAG : at32f403_i2c.h
  • I2C_ADDR7F_FLAG : at32f403_i2c.h
  • I2C_ADDRHF_FLAG : at32f403_i2c.h
  • I2C_ALERTF_FLAG : at32f403_i2c.h
  • I2C_ARLOST_FLAG : at32f403_i2c.h
  • I2C_BUSERR_FLAG : at32f403_i2c.h
  • I2C_BUSYF_FLAG : at32f403_i2c.h
  • I2C_DATA_INT : at32f403_i2c.h
  • I2C_DEVADDRF_FLAG : at32f403_i2c.h
  • I2C_DIRF_FLAG : at32f403_i2c.h
  • I2C_END : i2c_application.c
  • I2C_ERR_INT : at32f403_i2c.h
  • I2C_EVENT_CHECK_ACKFAIL : i2c_application.h
  • I2C_EVENT_CHECK_NONE : i2c_application.h
  • I2C_EVENT_CHECK_STOP : i2c_application.h
  • I2C_EVT_INT : at32f403_i2c.h
  • I2C_GCADDRF_FLAG : at32f403_i2c.h
  • I2C_HOSTADDRF_FLAG : at32f403_i2c.h
  • I2C_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • I2C_OUF_FLAG : at32f403_i2c.h
  • I2C_PECERR_FLAG : at32f403_i2c.h
  • I2C_RDBF_FLAG : at32f403_i2c.h
  • I2C_START : i2c_application.c
  • I2C_STARTF_FLAG : at32f403_i2c.h
  • I2C_STOPF_FLAG : at32f403_i2c.h
  • I2C_TDBE_FLAG : at32f403_i2c.h
  • I2C_TDC_FLAG : at32f403_i2c.h
  • I2C_TIMEOUT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2C_TMOUT_FLAG : at32f403_i2c.h
  • I2C_TRMODE_FLAG : at32f403_i2c.h
  • I2Cx_ADDRESS : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_DMA_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_RX_CHANNEL : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_RX_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_DMA_RX_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_TX_CHANNEL : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_DMA_TX_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_DMA_TX_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_ERR_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_ERR_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_EVT_IRQHandler : project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c, project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c, project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
  • I2Cx_EVT_IRQn : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c
  • I2Cx_PORT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SCL_GPIO_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SCL_GPIO_PORT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SCL_PIN : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SDA_GPIO_CLK : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SDA_GPIO_PORT : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SDA_PIN : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2Cx_SPEED : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c, project/at_start_f403/examples/i2c/eeprom/src/main.c, audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • I2S1_CK_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_DT_ADDRESS : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_GPIO : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_GPIO_CRM_CLK : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_SD_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S1_WS_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_CK_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_DT_ADDRESS : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_GPIO : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_GPIO_CRM_CLK : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_SD_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S2_WS_PIN : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • I2S_ACS_FLAG : at32f403_spi.h
  • I2S_TUERR_FLAG : at32f403_spi.h
  • IAP_ACK : hid_iap_class.h
  • IAP_CMD_ADDR : hid_iap_class.h
  • IAP_CMD_CRC : hid_iap_class.h
  • IAP_CMD_DATA : hid_iap_class.h
  • IAP_CMD_FINISH : hid_iap_class.h
  • IAP_CMD_GET : hid_iap_class.h
  • IAP_CMD_IDLE : hid_iap_class.h
  • IAP_CMD_JMP : hid_iap_class.h
  • IAP_CMD_START : hid_iap_class.h
  • IAP_FAILED : flash_fat16.h
  • IAP_NACK : hid_iap_class.h
  • IAP_REV_FLAG_5A : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • IAP_REV_FLAG_DONE : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • IAP_REV_FLAG_ERROR : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • IAP_REV_FLAG_NO : app_led3_toggle/inc/usart.h, app_led4_toggle/inc/usart.h
  • IAP_SUCCESS : flash_fat16.h
  • IAP_UPGRADE_COMPLETE_FLAG : hid_iap_class.h, flash_fat16.h
  • IAP_UPGRADE_FLAG : app_led3_toggle/inc/iap.h, app_led4_toggle/inc/iap.h, bootloader/inc/iap.h
  • IAP_UPGRADE_FLAG_ADDR : app_led3_toggle/inc/iap.h, app_led4_toggle/inc/iap.h, bootloader/inc/iap.h
  • IDNF_BIT : cf.h
  • IMG_CONSTANT : julia_fpu.h
  • INCLUDE_uxTaskPriorityGet : FreeRTOSConfig.h
  • INCLUDE_vTaskCleanUpResources : FreeRTOSConfig.h
  • INCLUDE_vTaskDelay : FreeRTOSConfig.h
  • INCLUDE_vTaskDelayUntil : FreeRTOSConfig.h
  • INCLUDE_vTaskDelete : FreeRTOSConfig.h
  • INCLUDE_vTaskPrioritySet : FreeRTOSConfig.h
  • INCLUDE_vTaskSuspend : FreeRTOSConfig.h
  • INCLUDE_xTaskGetCurrentTaskHandle : FreeRTOSConfig.h
  • INTERNAL_FLASH_LUN : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • INVAILD_OFFSET_ADDR : flash_fat16.h
  • INVALID_COMMAND : cdc_msc_class.h, msc_bot_scsi.h
  • INVALID_FIELD_IN_PARAMETER_LIST : cdc_msc_class.h, msc_bot_scsi.h
  • INVALID_FIELED_IN_COMMAND : cdc_msc_class.h, msc_bot_scsi.h
  • IOMUX : at32f403_gpio.h
  • IOMUX_BASE : at32f403.h
  • IOMUX_MAKE_VALUE : at32f403_gpio.h
  • ITERATION : julia_fpu.h


AT32F403 Firmwary Library: Globals

- k -

  • KB_TO_B : hid_iap_class.h
  • KEYBOARD_BCD_NUM : keyboard_desc.h
  • KEYBOARD_BINTERVAL_TIME : keyboard_desc.h


AT32F403 Firmwary Library: Globals

- l -

  • LBYTE : usb_std.h
  • LCD_BL_HIGH : lcd_touch_16bit/inc/xmc_lcd.h
  • LCD_BL_LOW : lcd_touch_16bit/inc/xmc_lcd.h
  • LCD_RESET_HIGH : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • LCD_RESET_LOW : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • LED_NUM : at32f403_board.h
  • LEFT_BUTTON : mouse_class.h
  • LEFT_MOVE : mouse_class.h
  • LEVLREQ_BIT : cf.h
  • LEXT_VALUE : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • LOST_VAL : touch.c


AT32F403 Firmwary Library: Globals

- m -

  • MAGENTA : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • MAKE_VALUE : at32f403.h
  • MASTER_BOARD : project/at_start_f403/examples/i2c/communication_dma/src/main.c, project/at_start_f403/examples/i2c/communication_int/src/main.c, project/at_start_f403/examples/i2c/communication_poll/src/main.c
  • MATCH_ID_VAL : project/at_start_f403/examples/usart/receiver_mute/src/main.c
  • MAX : usb_std.h
  • MAX_CIS_LEN : cf.h
  • MCU_ID1 : audio_desc.h, audio_hid_desc.h, cdc_desc.h, cdc_keyboard_desc.h, cdc_msc_desc.h, custom_hid_desc.h, hid_iap_desc.h, keyboard_desc.h, mouse_desc.h, msc_desc.h, printer_desc.h
  • MCU_ID2 : audio_desc.h, audio_hid_desc.h, cdc_desc.h, cdc_keyboard_desc.h, cdc_msc_desc.h, custom_hid_desc.h, hid_iap_desc.h, keyboard_desc.h, mouse_desc.h, msc_desc.h, printer_desc.h
  • MCU_ID3 : audio_desc.h, audio_hid_desc.h, cdc_desc.h, cdc_keyboard_desc.h, cdc_msc_desc.h, custom_hid_desc.h, hid_iap_desc.h, keyboard_desc.h, mouse_desc.h, msc_desc.h, printer_desc.h
  • MEDIUM_HAVE_CHANGED : cdc_msc_class.h, msc_bot_scsi.h
  • MEDIUM_NOT_PRESENT : cdc_msc_class.h, msc_bot_scsi.h
  • MIC_BUFFER_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • MIN : usb_std.h
  • MISC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • MMC_SWITCH_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • MOUSE_BCD_NUM : mouse_desc.h
  • MOUSE_BINTERVAL_TIME : mouse_desc.h
  • MOVE_STEP : mouse_class.h
  • MS_TICK : project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c
  • MSC_BCD_NUM : msc_desc.h
  • MSC_BOT_STATE_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_BOT_STATE_IDLE : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_BOT_STATE_RECOVERY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_ALLOW_MEDIUM_REMOVAL : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_FORMAT_UNIT : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_INQUIRY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_MODE_SENSE10 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_MODE_SENSE6 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_10 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_12 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_CAPACITY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_READ_FORMAT_CAPACITY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_REQUEST_SENSE : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_START_STOP : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_TEST_UNIT : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_VERIFY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_WRITE_10 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_WRITE_12 : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_CMD_WRITE_VERIFY : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_MAX_DATA_BUF_LEN : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_REQ_BO_RESET : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_REQ_GET_MAX_LUN : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_CMD : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_DATA_IN : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_DATA_OUT : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_FAILED : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_IDLE : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_LAST_DATA : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_SEND_DATA : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_STATE_MACHINE_STATUS : cdc_msc_class.h, msc_bot_scsi.h
  • MSC_SUPPORT_MAX_LUN : cdc_msc_class.h, msc_bot_scsi.h
  • MULTI_BUFFER_SIZE : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c


AT32F403 Firmwary Library: Globals

- n -

  • NAND_BUSY : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_A : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_B : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_C : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_AREA_TRUE1 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_ERASE0 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_ERASE1 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_LOCK_STATUS : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_READID : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_RESET : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_STATUS : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_WRITE0 : xmc_ecc.h, xmc_nand.h
  • NAND_CMD_WRITE_TRUE1 : xmc_ecc.h, xmc_nand.h
  • NAND_ERROR : xmc_ecc.h, xmc_nand.h
  • NAND_INVALID_ADDRESS : xmc_ecc.h, xmc_nand.h
  • NAND_READY : xmc_ecc.h, xmc_nand.h
  • NAND_TIMEOUT_ERROR : xmc_ecc.h, xmc_nand.h
  • NAND_VALID_ADDRESS : xmc_ecc.h, xmc_nand.h
  • NOP : cf.h
  • NOR_WRITE : xmc_nor.c
  • NULL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • NUMSTUDENTS : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • NUMSUBJECTS : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • NVIC_VECTTAB_FLASH : at32f403_misc.h
  • NVIC_VECTTAB_RAM : at32f403_misc.h


AT32F403 Firmwary Library: Globals

- o -

  • OPERATION_TIMEOUT : at32f403_flash.h


AT32F403 Firmwary Library: Globals

- p -

  • PARAMETER_LIST_LENGTH_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • PCCARD_25_SECTORS_SIZES : cf.h
  • PCCARD_ATTRIBUTE_SPACE_ADDRESS : cf.h
  • PCCARD_BUSY : cf.h
  • PCCARD_COMMON_SPACE_ADDRESS : cf.h
  • PCCARD_DEVICE_ADDRESS : cf.h
  • PCCARD_IO_SPACE_ADDRESS : cf.h
  • PCCARD_IO_SPACE_PRIMARY_ADDR : cf.h
  • PCCARD_IO_SPACE_SECONDARY_ADDR : cf.h
  • PCCARD_LONG_SECTOR_SIZE : cf.h
  • PCCARD_PROGR : cf.h
  • PCCARD_READY : cf.h
  • PCCARD_SECTOR_SIZE : cf.h
  • PCCARD_STATUS_OK : cf.c
  • PCCARD_STATUS_WRITE_OK : cf.c
  • PCCARD_TIMEOUT_ERROR : cf.h
  • PCCARD_TIMEOUT_READ_ID : cf.c
  • PCCARD_TIMEOUT_SECTOR : cf.c
  • PCCARD_TIMEOUT_STATUS : cf.c
  • PD01_MUX : at32f403_gpio.h
  • PEN_HIGH : touch.h
  • PERIPH_BASE : at32f403.h
  • PERIPH_REG : at32f403.h
  • PERIPH_REG_BIT : at32f403.h
  • PERIPHERAL_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • PERIPHERAL_BITBAND_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • PERIPHERAL_RESET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • PERIPHERAL_SET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • PIN_REPLACE_REG : cf.h
  • PLL_STABLE_DELAY : system_at32f403.h
  • PRINT_UART : at32f403_board.h
  • PRINT_UART_CRM_CLK : at32f403_board.h
  • PRINT_UART_TX_GPIO : at32f403_board.h
  • PRINT_UART_TX_GPIO_CRM_CLK : at32f403_board.h
  • PRINT_UART_TX_PIN : at32f403_board.h
  • PRINTER_BCD_NUM : printer_desc.h
  • PRINTER_DEVICE_ID_LEN : printer_class.h
  • PRINTER_PROTOCOL_1284_4 : printer_desc.h
  • PRINTER_PROTOCOL_BI_DIRECTIONAL : printer_desc.h
  • PRINTER_PROTOCOL_UNIDIRECTIONAL : printer_desc.h
  • PRINTER_PROTOCOL_VENDOR_SPECIFIC : printer_desc.h
  • PROGRAM_TIMEOUT : xmc_nor.c
  • PROGRAMMING_TIMEOUT : at32f403_flash.h
  • PRT_CMD_INFO : cf.h
  • PRT_ERR_INFO : cf.h
  • PRT_INIT_INFO : cf.h
  • PUTCHAR_PROTOTYPE : at32f403_board.c
  • PWC : at32f403_pwc.h
  • PWC_BASE : at32f403.h
  • PWC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • PWC_PVM_OUTPUT_FLAG : at32f403_pwc.h
  • PWC_STANDBY_FLAG : at32f403_pwc.h
  • PWC_WAKEUP_FLAG : at32f403_pwc.h
  • PWC_WAKEUP_PIN_1 : at32f403_pwc.h


AT32F403 Firmwary Library: Globals

- r -

  • RAM_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • RAM_BITBAND_BASE : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • RDY_BIT : cf.h
  • READ_TIMES : touch.c
  • Read_Transfer : cf.h
  • REAL_CONSTANT : julia_fpu.h
  • RED : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • REG16 : at32f403.h
  • REG32 : at32f403.h
  • REG8 : at32f403.h
  • REQ_SENSE_STANDARD_DATA_LEN : cdc_msc_class.h, msc_bot_scsi.h
  • RIGHT_BUTTON : mouse_class.h
  • RIGHT_MOVE : mouse_class.h
  • ROW_ADDRESS : xmc_ecc.h, xmc_nand.h
  • RS485_BAUDRATE : project/at_start_f403/examples/usart/rs485/src/main.c
  • RS485_BUFFER_SIZE : project/at_start_f403/examples/usart/rs485/src/main.c
  • RTC : at32f403_rtc.h
  • RTC_BASE : at32f403.h
  • RTC_CFGF_FLAG : at32f403_rtc.h
  • RTC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • RTC_OVF_FLAG : at32f403_rtc.h
  • RTC_OVF_INT : at32f403_rtc.h
  • RTC_TA_FLAG : at32f403_rtc.h
  • RTC_TA_INT : at32f403_rtc.h
  • RTC_TS_FLAG : at32f403_rtc.h
  • RTC_TS_INT : at32f403_rtc.h
  • RTC_UPDF_FLAG : at32f403_rtc.h


AT32F403 Firmwary Library: Globals

- s -

  • SAMPLE_FREQ : audio_desc.h, audio_hid_desc.h
  • SAMPLING_NUM : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • SC_3_5V_CLK : smartcard_config.h
  • SC_3_5V_PIN : smartcard_config.h
  • SC_3_5V_PORT : smartcard_config.h
  • SC_CMDVCC_CLK : smartcard_config.h
  • SC_CMDVCC_PIN : smartcard_config.h
  • SC_CMDVCC_PORT : smartcard_config.h
  • SC_F_DIV_D : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_OFF_CLK : smartcard_config.h
  • SC_OFF_EXINT : smartcard_config.h
  • SC_OFF_EXINT_IRQ : smartcard_config.h
  • SC_OFF_PIN : smartcard_config.h
  • SC_OFF_PINSOURCE : smartcard_config.h
  • SC_OFF_PORT : smartcard_config.h
  • SC_OFF_PORTSOURCE : smartcard_config.h
  • SC_RECEIVE_TIMEOUT : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_RESET_CLK : smartcard_config.h
  • SC_RESET_PIN : smartcard_config.h
  • SC_RESET_PORT : smartcard_config.h
  • SC_USART : smartcard_config.h
  • SC_USART_CLK : smartcard_config.h
  • SC_USART_CLK_PIN : smartcard_config.h
  • SC_USART_CLK_PORT : smartcard_config.h
  • SC_USART_DIV_VAL : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SC_USART_GPIO_CLK : smartcard_config.h
  • SC_USART_IRQHandler : smartcard_config.h
  • SC_USART_IRQn : smartcard_config.h
  • SC_USART_TX_PIN : smartcard_config.h
  • SC_USART_TX_PORT : smartcard_config.h
  • SCREEN_X_SIZE : project/at_start_f403/examples/cortex_m4/fpu/src/main.c
  • SCREEN_Y_SIZE : project/at_start_f403/examples/cortex_m4/fpu/src/main.c
  • SCSI_INQUIRY_DATA_LENGTH : cdc_msc_class.h, msc_bot_scsi.h
  • SD_0TO7BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_16TO23BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_24TO31BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_8TO15BITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_ALLZERO : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_LOCKED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_PROGRAMMING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CARD_RECEIVING : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CCCC_ERASE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CCCC_LOCK_UNLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CCCC_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CHECK_PATTERN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ALL_SEND_CID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_APP_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_APP_SD_SET_BUSWIDTH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_CLR_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ERASE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ERASE_GRP_END : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_ERASE_GRP_START : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_FAST_IO : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GEN_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GO_IDLE_STATE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GO_INACTIVE_STATE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_GO_IRQ_STATE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_BUSTEST_READ : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_BUSTEST_WRITE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_SEND_EXT_CSD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_HS_SWITCH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_LOCK_UNLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_NO_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_PROG_CID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_PROG_CSD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_READ_DAT_UNTIL_STOP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_READ_MULT_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_READ_SINGLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_CHANGE_SECURE_AREA : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_CER_RES1 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_CER_RN2 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_MID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_GET_MKB : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_OP_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_ERASE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_WRITE_MKB : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SEND_SCR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SET_CER_RES2 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SET_CER_RN1 : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_SET_CLR_CARD_DETECT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_APP_STAUS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_ERASE_GRP_END : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SD_ERASE_GRP_START : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SDIO_RW_DIRECT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SDIO_RW_EXTENDED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SDIO_SEN_OP_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEL_DESEL_CARD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_CID : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_CSD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_OP_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_STATUS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SEND_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_BLOCK_COUNT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_BLOCKLEN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_DSR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_REL_ADDR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_SET_WRITE_PROT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_STOP_TRANSMISSION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_WRITE_DAT_UNTIL_STOP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_WRITE_MULT_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_CMD_WRITE_SINGLE_BLOCK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_DATATIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_HALFFIFO : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_HALFFIFOBYTES : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_HIGH_CAPACITY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_LUN : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • SD_MAX_DATA_LENGTH : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_MAX_VOLT_TRIAL : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ADDR_MISALIGNED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ADDR_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_AKE_SEQ_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_BLK_LEN_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CARD_CONTROLLER_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CARD_ECC_DISABLED : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CARD_ECC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CID_CSD_OVERWRIETE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_CMD_CRC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ERASE_RESET : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ERASE_SEQ_ERR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ERRORBITS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_GENERAL_UNKNOWN_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_ILLEGAL_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_INVALID_ERASE_PARAM : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_LOCK_UNLOCK_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_STREAM_RD_UNDERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_STREAM_WR_OVERRUN : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_WP_ERASE_SKIP : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_OCR_WR_PROTECT_VIOLATION : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R5_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R5_FUNCTION_NUMBER : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R5_OUT_OF_RANGE : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R6_CMD_CRC_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R6_GENERAL_UNKNOWN_ERROR : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_R6_ILLEGAL_CMD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_SINGLE_BUS_SUPPORT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_STD_CAPACITY : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_VOLTAGE_WINDOW_MMC : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_VOLTAGE_WINDOW_SD : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SD_WIDE_BUS_SUPPORT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO1_BASE : at32f403.h
  • SDIO2 : at32f403_sdio.h
  • SDIO2_BASE : at32f403.h
  • SDIO2_MUX01 : at32f403_gpio.h
  • SDIO2_MUX10 : at32f403_gpio.h
  • SDIO2_MUX11 : at32f403_gpio.h
  • SDIO_CMD0TIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_CMDCMPL_FLAG : at32f403_sdio.h
  • SDIO_CMDCMPL_INT : at32f403_sdio.h
  • SDIO_CMDFAIL_FLAG : at32f403_sdio.h
  • SDIO_CMDFAIL_INT : at32f403_sdio.h
  • SDIO_CMDRSPCMPL_FLAG : at32f403_sdio.h
  • SDIO_CMDRSPCMPL_INT : at32f403_sdio.h
  • SDIO_CMDTIMEOUT_FLAG : at32f403_sdio.h
  • SDIO_CMDTIMEOUT_INT : at32f403_sdio.h
  • SDIO_DATATIMEOUT : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_DOCMD_FLAG : at32f403_sdio.h
  • SDIO_DOCMD_INT : at32f403_sdio.h
  • SDIO_DORX_FLAG : at32f403_sdio.h
  • SDIO_DORX_INT : at32f403_sdio.h
  • SDIO_DOTX_FLAG : at32f403_sdio.h
  • SDIO_DOTX_INT : at32f403_sdio.h
  • SDIO_DTBLKCMPL_FLAG : at32f403_sdio.h
  • SDIO_DTBLKCMPL_INT : at32f403_sdio.h
  • SDIO_DTCMP_INT : at32f403_sdio.h
  • SDIO_DTCMPL_FLAG : at32f403_sdio.h
  • SDIO_DTFAIL_FLAG : at32f403_sdio.h
  • SDIO_DTFAIL_INT : at32f403_sdio.h
  • SDIO_DTTIMEOUT_FLAG : at32f403_sdio.h
  • SDIO_DTTIMEOUT_INT : at32f403_sdio.h
  • SDIO_FIFO_Address : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_INTR_STS_READ_MASK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_INTR_STS_WRITE_MASK : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • SDIO_RXBUF_FLAG : at32f403_sdio.h
  • SDIO_RXBUF_INT : at32f403_sdio.h
  • SDIO_RXBUFE_FLAG : at32f403_sdio.h
  • SDIO_RXBUFE_INT : at32f403_sdio.h
  • SDIO_RXBUFF_FLAG : at32f403_sdio.h
  • SDIO_RXBUFF_INT : at32f403_sdio.h
  • SDIO_RXBUFH_FLAG : at32f403_sdio.h
  • SDIO_RXBUFH_INT : at32f403_sdio.h
  • SDIO_RXERRO_FLAG : at32f403_sdio.h
  • SDIO_RXERRO_INT : at32f403_sdio.h
  • SDIO_SBITERR_FLAG : at32f403_sdio.h
  • SDIO_SBITERR_INT : at32f403_sdio.h
  • SDIO_SDIOIF_FLAG : at32f403_sdio.h
  • SDIO_SDIOIF_INT : at32f403_sdio.h
  • SDIO_SEND_IF_COND : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_STATIC_FLAGS : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SDIO_TXBUF_FLAG : at32f403_sdio.h
  • SDIO_TXBUF_INT : at32f403_sdio.h
  • SDIO_TXBUFE_FLAG : at32f403_sdio.h
  • SDIO_TXBUFE_INT : at32f403_sdio.h
  • SDIO_TXBUFF_FLAG : at32f403_sdio.h
  • SDIO_TXBUFF_INT : at32f403_sdio.h
  • SDIO_TXBUFH_FLAG : at32f403_sdio.h
  • SDIO_TXBUFH_INT : at32f403_sdio.h
  • SDIO_TXERRU_FLAG : at32f403_sdio.h
  • SDIO_TXERRU_INT : at32f403_sdio.h
  • SDIOx : sd_mmc_card/inc/at32_sdio.h, sdio_fatfs/inc/at32_sdio.h
  • SECTOR_SIZE : project/at_start_f403/examples/flash/flash_write_read/src/flash.c
  • SECTOR_SIZE_1K : hid_iap_class.h, composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h
  • SECTOR_SIZE_2K : hid_iap_class.h, composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h
  • SECTOR_SIZE_4K : hid_iap_class.h, composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h
  • SENSE_KEY_ABORTED_COMMAND : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_BLANK_CHECK : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_DATA_PROTECT : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_HARDWARE_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_ILLEGAL_REQUEST : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_MEDIUM_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_MISCOMPARE : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_NO_SENSE : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_NOT_READY : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_RECOVERED_ERROR : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_UNIT_ATTENTION : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_VENDERO_SPECIFIC : cdc_msc_class.h, msc_bot_scsi.h
  • SENSE_KEY_VOLUME_OVERFLOW : cdc_msc_class.h, msc_bot_scsi.h
  • SET_HOST_CUR_SOURCE_CAP : cf.h
  • SET_LINE_CODING : cdc_msc_class.h, msc_bot_scsi.h, usb_std.h
  • SETUP_LENGTH : project/at_start_f403/examples/usart/smartcard/src/main.c
  • SHIFT : cdc_keyboard_class.c, keyboard_class.c
  • SLOW : project/at_start_f403/templates/src/main.c
  • SOCKET_COPY_REG : cf.h
  • SPI1 : at32f403_spi.h
  • SPI1_BASE : at32f403.h
  • SPI1_MUX_01 : at32f403_gpio.h
  • SPI1_MUX_10 : at32f403_gpio.h
  • SPI2 : at32f403_spi.h
  • SPI2_BASE : at32f403.h
  • SPI2_TX_BUFFER_SIZE : project/at_start_f403/examples/usart/synchronous/src/main.c
  • SPI3 : at32f403_spi.h
  • SPI3_BASE : at32f403.h
  • SPI4_BASE : at32f403.h
  • SPI4_MUX : at32f403_gpio.h
  • SPI_CCERR_FLAG : at32f403_spi.h
  • SPI_FLASH_LUN : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • SPI_I2S_BF_FLAG : at32f403_spi.h
  • SPI_I2S_ERROR_INT : at32f403_spi.h
  • SPI_I2S_RDBF_FLAG : at32f403_spi.h
  • SPI_I2S_RDBF_INT : at32f403_spi.h
  • SPI_I2S_ROERR_FLAG : at32f403_spi.h
  • SPI_I2S_TDBE_FLAG : at32f403_spi.h
  • SPI_I2S_TDBE_INT : at32f403_spi.h
  • SPI_MMERR_FLAG : at32f403_spi.h
  • SPI_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • SPI_TRANS_DMA : spi_flash.h
  • SPIF_BLOCKERASE : spi_flash.h
  • SPIF_CHIP_SIZE : spi_flash.h
  • SPIF_CHIPERASE : spi_flash.h
  • SPIF_DEVICEID : spi_flash.h
  • SPIF_FASTREADDATA : spi_flash.h
  • SPIF_FASTREADDUAL : spi_flash.h
  • SPIF_JEDECDEVICEID : spi_flash.h
  • SPIF_MANUFACTDEVICEID : spi_flash.h
  • SPIF_PAGE_SIZE : spi_flash.h
  • SPIF_PAGEPROGRAM : spi_flash.h
  • SPIF_POWERDOWN : spi_flash.h
  • SPIF_READDATA : spi_flash.h
  • SPIF_READSTATUSREG1 : spi_flash.h
  • SPIF_READSTATUSREG2 : spi_flash.h
  • SPIF_READSTATUSREG3 : spi_flash.h
  • SPIF_RELEASEPOWERDOWN : spi_flash.h
  • SPIF_SECTOR_SIZE : spi_flash.h
  • SPIF_SECTORERASE : spi_flash.h
  • SPIF_WRITEDISABLE : spi_flash.h
  • SPIF_WRITEENABLE : spi_flash.h
  • SPIF_WRITESTATUSREG1 : spi_flash.h
  • SPIF_WRITESTATUSREG2 : spi_flash.h
  • SPIF_WRITESTATUSREG3 : spi_flash.h
  • SPIM_ERASE_TIMEOUT : at32f403_flash.h
  • SPIM_FLASH_BASE : at32f403.h
  • SPIM_PROGRAMMING_TIMEOUT : at32f403_flash.h
  • SPIM_SECTOR_SIZE : operate_spim.h
  • SPIM_TEST_ADDR : operate_spim.h
  • SPK_BUFFER_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • SPK_TX_FIFO_SIZE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • SRAM_BASE : at32f403.h
  • SRAM_SIZE : utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h
  • SRESET_BIT : cf.h
  • Start_Sector : project/at_start_f403/examples/xmc/pc_card/src/main.c
  • STEP_DELAY_MS : at32f403_board.c
  • STREAM_BUFFER_SIZE : project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
  • STS_REG_INFO : cf.h
  • SWAPBYTE : usb_std.h
  • SWJTAG_MUX_001 : at32f403_gpio.h
  • SWJTAG_MUX_010 : at32f403_gpio.h
  • SWJTAG_MUX_100 : at32f403_gpio.h
  • SystemCoreClock : system_at32f403.h


AT32F403 Firmwary Library: Globals

- t -

  • T0_PROTOCOL : project/at_start_f403/examples/usart/smartcard/src/main.c
  • TCLK_HIGH : touch.h
  • TCLK_LOW : touch.h
  • TCS_HIGH : touch.h
  • TCS_LOW : touch.h
  • TDIN_HIGH : touch.h
  • TDIN_LOW : touch.h
  • TDOUT : touch.h
  • TEST_BUFEER_SIZE : project/at_start_f403/examples/flash/flash_write_read/src/main.c
  • TEST_FLASH_ADDRESS_START : project/at_start_f403/examples/flash/flash_write_read/src/main.c
  • TEST_LENGTH_SAMPLES : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • TMR1 : at32f403_tmr.h
  • TMR10 : at32f403_tmr.h
  • TMR10_BASE : at32f403.h
  • TMR10_MUX : at32f403_gpio.h
  • TMR11 : at32f403_tmr.h
  • TMR11_BASE : at32f403.h
  • TMR11_MUX : at32f403_gpio.h
  • TMR12 : at32f403_tmr.h
  • TMR12_BASE : at32f403.h
  • TMR13 : at32f403_tmr.h
  • TMR13_BASE : at32f403.h
  • TMR13_MUX : at32f403_gpio.h
  • TMR14 : at32f403_tmr.h
  • TMR14_BASE : at32f403.h
  • TMR14_MUX : at32f403_gpio.h
  • TMR15 : at32f403_tmr.h
  • TMR15_BASE : at32f403.h
  • TMR15_MUX : at32f403_gpio.h
  • TMR1_BASE : at32f403.h
  • TMR1_C1DT_ADDRESS : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • TMR1_C2DT_ADDRESS : project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
  • TMR1_MUX_01 : at32f403_gpio.h
  • TMR1_MUX_11 : at32f403_gpio.h
  • TMR2 : at32f403_tmr.h
  • TMR2_BASE : at32f403.h
  • TMR2_MUX_01 : at32f403_gpio.h
  • TMR2_MUX_10 : at32f403_gpio.h
  • TMR2_MUX_11 : at32f403_gpio.h
  • TMR3 : at32f403_tmr.h
  • TMR3_BASE : at32f403.h
  • TMR3_MUX_10 : at32f403_gpio.h
  • TMR3_MUX_11 : at32f403_gpio.h
  • TMR4 : at32f403_tmr.h
  • TMR4_BASE : at32f403.h
  • TMR4_MUX : at32f403_gpio.h
  • TMR5 : at32f403_tmr.h
  • TMR5_BASE : at32f403.h
  • TMR5CH4_MUX : at32f403_gpio.h
  • TMR6 : at32f403_tmr.h
  • TMR6_BASE : at32f403.h
  • TMR7 : at32f403_tmr.h
  • TMR7_BASE : at32f403.h
  • TMR8 : at32f403_tmr.h
  • TMR8_BASE : at32f403.h
  • TMR9 : at32f403_tmr.h
  • TMR9_BASE : at32f403.h
  • TMR9_MUX : at32f403_gpio.h
  • TMR_BRK_FLAG : at32f403_tmr.h
  • TMR_BRK_INT : at32f403_tmr.h
  • TMR_C1_FLAG : at32f403_tmr.h
  • TMR_C1_INT : at32f403_tmr.h
  • TMR_C1_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_C2_FLAG : at32f403_tmr.h
  • TMR_C2_INT : at32f403_tmr.h
  • TMR_C2_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_C3_FLAG : at32f403_tmr.h
  • TMR_C3_INT : at32f403_tmr.h
  • TMR_C3_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_C4_FLAG : at32f403_tmr.h
  • TMR_C4_INT : at32f403_tmr.h
  • TMR_C4_RECAPTURE_FLAG : at32f403_tmr.h
  • TMR_HALL_FLAG : at32f403_tmr.h
  • TMR_HALL_INT : at32f403_tmr.h
  • TMR_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • TMR_OVF_FLAG : at32f403_tmr.h
  • TMR_OVF_INT : at32f403_tmr.h
  • TMR_TRIGGER_FLAG : at32f403_tmr.h
  • TMR_TRIGGER_INT : at32f403_tmr.h
  • TPL_LINK_LOC : cf.h
  • TRUE : cf.h


AT32F403 Firmwary Library: Globals

- u -

  • UART4_BASE : at32f403.h
  • UART5_BASE : at32f403.h
  • UNC_BIT : cf.h
  • UNUSED : at32f403_def.h
  • UP_MOVE : mouse_class.h
  • USART1 : at32f403_usart.h
  • USART1_BASE : at32f403.h
  • USART1_MUX : at32f403_gpio.h
  • USART2 : at32f403_usart.h
  • USART2_BASE : at32f403.h
  • USART2_MUX : at32f403_gpio.h
  • USART2_TX_BUFFER_SIZE : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/synchronous/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • USART3 : at32f403_usart.h
  • USART3_BASE : at32f403.h
  • USART3_MUX_01 : at32f403_gpio.h
  • USART3_MUX_11 : at32f403_gpio.h
  • USART3_TX_BUFFER_SIZE : project/at_start_f403/examples/usart/half_duplex/src/main.c, project/at_start_f403/examples/usart/interrupt/src/main.c, project/at_start_f403/examples/usart/polling/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c, project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
  • USART_BF_INT : at32f403_usart.h
  • USART_BFF_FLAG : at32f403_usart.h
  • usart_buffer_size : project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
  • USART_CTSCF_FLAG : at32f403_usart.h
  • USART_CTSCF_INT : at32f403_usart.h
  • USART_ERR_INT : at32f403_usart.h
  • USART_FERR_FLAG : at32f403_usart.h
  • USART_IDLE_INT : at32f403_usart.h
  • USART_IDLEF_FLAG : at32f403_usart.h
  • USART_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • USART_NERR_FLAG : at32f403_usart.h
  • USART_PERR_FLAG : at32f403_usart.h
  • USART_PERR_INT : at32f403_usart.h
  • USART_RDBF_FLAG : at32f403_usart.h
  • USART_RDBF_INT : at32f403_usart.h
  • USART_REC_LEN : bootloader/inc/usart.h
  • USART_ROERR_FLAG : at32f403_usart.h
  • USART_TDBE_FLAG : at32f403_usart.h
  • USART_TDBE_INT : at32f403_usart.h
  • USART_TDC_FLAG : at32f403_usart.h
  • USART_TDC_INT : at32f403_usart.h
  • USB : at32f403_usb.h
  • USB_BE_FLAG : at32f403_usb.h
  • USB_BE_INT : at32f403_usb.h
  • USB_BUFFER_SIZE_EX : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h
  • USB_BUFFER_TABLE_ADDRESS : at32f403_usb.h
  • USB_CLASS_CODE_AUDIO : usb_std.h
  • USB_CLASS_CODE_CCID : usb_std.h
  • USB_CLASS_CODE_CDC : usb_std.h
  • USB_CLASS_CODE_CDCDATA : usb_std.h
  • USB_CLASS_CODE_HID : usb_std.h
  • USB_CLASS_CODE_HUB : usb_std.h
  • USB_CLASS_CODE_MSC : usb_std.h
  • USB_CLASS_CODE_PRINTER : usb_std.h
  • USB_CLASS_CODE_VENDOR : usb_std.h
  • USB_CLASS_CODE_VIDEO : usb_std.h
  • USB_CLEAR_EPT_DOUBLE_BUFFER : at32f403_usb.h
  • USB_CLEAR_EXF : at32f403_usb.h
  • USB_CLEAR_RXDTS : at32f403_usb.h
  • USB_CLEAR_RXTC : at32f403_usb.h
  • USB_CLEAR_TXDTS : at32f403_usb.h
  • USB_CLEAR_TXTC : at32f403_usb.h
  • USB_CONF_REMOTE_WAKEUP : usb_std.h
  • USB_CONF_SELF_POWERED : usb_std.h
  • USB_CONFIG_STRING : usb_std.h
  • USB_DBUF0_GET_LEN : at32f403_usb.h
  • USB_DBUF1_GET_LEN : at32f403_usb.h
  • USB_DESCIPTOR_TYPE_CONFIGURATION : usb_std.h
  • USB_DESCIPTOR_TYPE_DEVICE : usb_std.h
  • USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER : usb_std.h
  • USB_DESCIPTOR_TYPE_ENDPOINT : usb_std.h
  • USB_DESCIPTOR_TYPE_INTERFACE : usb_std.h
  • USB_DESCIPTOR_TYPE_INTERFACE_POWER : usb_std.h
  • USB_DESCIPTOR_TYPE_OTHER_SPEED : usb_std.h
  • USB_DESCIPTOR_TYPE_STRING : usb_std.h
  • USB_DEVICE_CFG_DESC_LEN : usb_std.h
  • USB_DEVICE_DESC_LEN : usb_std.h
  • USB_DEVICE_EPT_LEN : usb_std.h
  • USB_DEVICE_IF_DESC_LEN : usb_std.h
  • USB_DEVICE_LANGID_STR_DESC_LEN : usb_std.h
  • USB_DEVICE_OTG_DESC_LEN : usb_std.h
  • USB_DEVICE_OTHER_SPEED_DESC_SIZ_LEN : usb_std.h
  • USB_DEVICE_QUALIFIER_DESC_LEN : usb_std.h
  • USB_ENDP_DESC_TABLE_OFFSET : at32f403_usb.c
  • USB_EPT0_DATA_IN : usb_std.h
  • USB_EPT0_DATA_OUT : usb_std.h
  • USB_EPT0_IDLE : usb_std.h
  • USB_EPT0_SETUP : usb_std.h
  • USB_EPT0_STALL : usb_std.h
  • USB_EPT0_STATUS_IN : usb_std.h
  • USB_EPT0_STATUS_OUT : usb_std.h
  • USB_EPT_AUTO_MALLOC_BUFFER : project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h, project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h, project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h
  • USB_EPT_BIT_MASK : at32f403_usb.h
  • USB_EPT_BULK : at32f403_usb.h
  • USB_EPT_CONTROL : at32f403_usb.h
  • USB_EPT_DESC_BULK : usb_std.h
  • USB_EPT_DESC_CONTROL : usb_std.h
  • USB_EPT_DESC_DATA_EPT : usb_std.h
  • USB_EPT_DESC_FD_EPT : usb_std.h
  • USB_EPT_DESC_FDDATA_EPT : usb_std.h
  • USB_EPT_DESC_INTERRUPT : usb_std.h
  • USB_EPT_DESC_ISO : usb_std.h
  • USB_EPT_DESC_NSYNC : usb_std.h
  • USB_EPT_INT : at32f403_usb.h
  • USB_EPT_ISO : at32f403_usb.h
  • USB_EPT_NUM_FLAG : at32f403_usb.h
  • USB_EPTADDR : at32f403_usb.h
  • USB_ETP_DESC_ADAPTIVE : usb_std.h
  • USB_ETP_DESC_ASYNC : usb_std.h
  • USB_ETP_DESC_SYNC : usb_std.h
  • USB_EXF : at32f403_usb.h
  • USB_FEATURE_EPT_HALT : usb_std.h
  • USB_FEATURE_REMOTE_WAKEUP : usb_std.h
  • USB_FEATURE_TEST_MODE : usb_std.h
  • USB_FLASH_ADDR_OFFSET : composite_vcp_msc/inc/msc_diskio.h, msc/inc/msc_diskio.h, virtual_msc_iap/inc/msc_diskio.h
  • USB_FREE_DB_USER_BUFFER : at32f403_usb.h
  • USB_GET_RX_LEN : at32f403_usb.h
  • USB_GET_TX_LEN : at32f403_usb.h
  • USB_INOUT_FLAG : at32f403_usb.h
  • USB_INTERFACE_ASSOCIATION_TYPE : cdc_msc_desc.c
  • USB_INTERFACE_STRING : usb_std.h
  • USB_LANGID_STRING : usb_std.h
  • USB_LOW_POWER_WAKUP : project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h
  • USB_LSOF_FLAG : at32f403_usb.h
  • USB_LSOF_INT : at32f403_usb.h
  • USB_MAX_EP0_SIZE : usb_std.h
  • USB_MFC_STRING : usb_std.h
  • USB_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • USB_OUT_EPT_DOUBLE_BUF0 : at32f403_usb.h
  • USB_PACKET_BUFFER_ADDRESS : at32f403_usb.h
  • USB_PACKET_BUFFER_ADDRESS_EX : at32f403_usb.h
  • USB_PRODUCT_STRING : usb_std.h
  • USB_REQ_DIR_DTH : usb_std.h
  • USB_REQ_DIR_HTD : usb_std.h
  • USB_REQ_RECIPIENT_DEVICE : usb_std.h
  • USB_REQ_RECIPIENT_ENDPOINT : usb_std.h
  • USB_REQ_RECIPIENT_INTERFACE : usb_std.h
  • USB_REQ_RECIPIENT_MASK : usb_std.h
  • USB_REQ_RECIPIENT_OTHER : usb_std.h
  • USB_REQ_TYPE_CLASS : usb_std.h
  • USB_REQ_TYPE_RESERVED : usb_std.h
  • USB_REQ_TYPE_STANDARD : usb_std.h
  • USB_REQ_TYPE_VENDOR : usb_std.h
  • USB_RST_FLAG : at32f403_usb.h
  • USB_RST_INT : at32f403_usb.h
  • USB_RX_DISABLE : at32f403_usb.h
  • USB_RX_MASK : at32f403_usb.h
  • USB_RX_NAK : at32f403_usb.h
  • USB_RX_STALL : at32f403_usb.h
  • USB_RX_VALID : at32f403_usb.h
  • USB_RXDTS : at32f403_usb.h
  • USB_RXDTS0 : at32f403_usb.h
  • USB_RXDTS1 : at32f403_usb.h
  • USB_RXSTS : at32f403_usb.h
  • USB_RXTC : at32f403_usb.h
  • USB_SERIAL_STRING : usb_std.h
  • USB_SET_DOUBLE_BUFF0_ADDRESS : at32f403_usb.h
  • USB_SET_DOUBLE_BUFF1_ADDRESS : at32f403_usb.h
  • USB_SET_EPT_ADDRESS : at32f403_usb.h
  • USB_SET_EPT_DOUBLE_BUF0_LEN : at32f403_usb.h
  • USB_SET_EPT_DOUBLE_BUF1_LEN : at32f403_usb.h
  • USB_SET_EPT_DOUBLE_BUFFER : at32f403_usb.h
  • USB_SET_EXF : at32f403_usb.h
  • USB_SET_RX_ADDRESS : at32f403_usb.h
  • USB_SET_RXLEN : at32f403_usb.h
  • USB_SET_RXLEN_REG : at32f403_usb.h
  • USB_SET_RXSTS : at32f403_usb.h
  • USB_SET_TRANS_TYPE : at32f403_usb.h
  • USB_SET_TX_ADDRESS : at32f403_usb.h
  • USB_SET_TXLEN : at32f403_usb.h
  • USB_SET_TXSTS : at32f403_usb.h
  • USB_SETUPTC : at32f403_usb.h
  • USB_SOF_FLAG : at32f403_usb.h
  • USB_SOF_INT : at32f403_usb.h
  • USB_SP_FLAG : at32f403_usb.h
  • USB_SP_INT : at32f403_usb.h
  • USB_STD_REQ_CLEAR_FEATURE : usb_std.h
  • USB_STD_REQ_GET_CONFIGURATION : usb_std.h
  • USB_STD_REQ_GET_DESCRIPTOR : usb_std.h
  • USB_STD_REQ_GET_INTERFACE : usb_std.h
  • USB_STD_REQ_GET_STATUS : usb_std.h
  • USB_STD_REQ_SET_ADDRESS : usb_std.h
  • USB_STD_REQ_SET_CONFIGURATION : usb_std.h
  • USB_STD_REQ_SET_DESCRIPTOR : usb_std.h
  • USB_STD_REQ_SET_FEATURE : usb_std.h
  • USB_STD_REQ_SET_INTERFACE : usb_std.h
  • USB_STD_REQ_SYNCH_FRAME : usb_std.h
  • USB_TC_FLAG : at32f403_usb.h
  • USB_TC_INT : at32f403_usb.h
  • USB_TOGGLE_RXDTS : at32f403_usb.h
  • USB_TOGGLE_TXDTS : at32f403_usb.h
  • USB_TRANS_TYPE : at32f403_usb.h
  • USB_TX_DISABLE : at32f403_usb.h
  • USB_TX_MASK : at32f403_usb.h
  • USB_TX_NAK : at32f403_usb.h
  • USB_TX_STALL : at32f403_usb.h
  • USB_TX_VALID : at32f403_usb.h
  • USB_TXDTS : at32f403_usb.h
  • USB_TXDTS0 : at32f403_usb.h
  • USB_TXDTS1 : at32f403_usb.h
  • USB_TXSTS : at32f403_usb.h
  • USB_TXTC : at32f403_usb.h
  • USB_UCFOR_FLAG : at32f403_usb.h
  • USB_UCFOR_INT : at32f403_usb.h
  • USB_VIRTUAL_COMPORT : project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
  • USB_WK_FLAG : at32f403_usb.h
  • USB_WK_INT : at32f403_usb.h
  • USBD_AUDIO_CONFIG_DESC_SIZE : audio_desc.h
  • USBD_AUDIO_DESC_CONFIGURATION_STRING : audio_desc.h
  • USBD_AUDIO_DESC_INTERFACE_STRING : audio_desc.h
  • USBD_AUDIO_DESC_MANUFACTURER_STRING : audio_desc.h
  • USBD_AUDIO_DESC_PRODUCT_STRING : audio_desc.h
  • USBD_AUDIO_FEEDBACK_EPT : audio_class.h
  • USBD_AUDIO_MIC_IN_EPT : audio_class.h
  • USBD_AUDIO_PRODUCT_ID : audio_desc.h
  • USBD_AUDIO_SIZ_STRING_LANGID : audio_desc.h
  • USBD_AUDIO_SIZ_STRING_SERIAL : audio_desc.h
  • USBD_AUDIO_SPK_OUT_EPT : audio_class.h
  • USBD_AUDIO_VENDOR_ID : audio_desc.h
  • USBD_AUHID_AUDIO_FEEDBACK_EPT : audio_hid_class.h
  • USBD_AUHID_AUDIO_MIC_IN_EPT : audio_hid_class.h
  • USBD_AUHID_AUDIO_SPK_OUT_EPT : audio_hid_class.h
  • USBD_AUHID_CONFIG_DESC_SIZE : audio_hid_desc.h
  • USBD_AUHID_DESC_CONFIGURATION_STRING : audio_hid_desc.h
  • USBD_AUHID_DESC_INTERFACE_STRING : audio_hid_desc.h
  • USBD_AUHID_DESC_MANUFACTURER_STRING : audio_hid_desc.h
  • USBD_AUHID_DESC_PRODUCT_STRING : audio_hid_desc.h
  • USBD_AUHID_HID_DESC_SIZE : audio_hid_desc.h
  • USBD_AUHID_HID_IN_EPT : audio_hid_class.h
  • USBD_AUHID_HID_OUT_EPT : audio_hid_class.h
  • USBD_AUHID_HID_SIZ_REPORT_DESC : audio_hid_desc.h
  • USBD_AUHID_IN_MAXPACKET_SIZE : audio_hid_class.h
  • USBD_AUHID_OUT_MAXPACKET_SIZE : audio_hid_class.h
  • USBD_AUHID_PRODUCT_ID : audio_hid_desc.h
  • USBD_AUHID_SIZ_STRING_LANGID : audio_hid_desc.h
  • USBD_AUHID_SIZ_STRING_SERIAL : audio_hid_desc.h
  • USBD_AUHID_VENDOR_ID : audio_hid_desc.h
  • USBD_CDC_BULK_IN_EPT : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_BULK_OUT_EPT : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_CMD_MAXPACKET_SIZE : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_CONFIG_DESC_SIZE : cdc_desc.h
  • USBD_CDC_CS_ENDPOINT : usb_std.h
  • USBD_CDC_CS_INTERFACE : usb_std.h
  • USBD_CDC_DESC_CONFIGURATION_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_DESC_INTERFACE_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_DESC_MANUFACTURER_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_DESC_PRODUCT_STRING : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_IN_MAXPACKET_SIZE : cdc_class.h
  • USBD_CDC_INT_EPT : cdc_class.h, cdc_msc_class.h
  • USBD_CDC_MSC_CONFIG_DESC_SIZE : cdc_msc_desc.h
  • USBD_CDC_MSC_IN_MAXPACKET_SIZE : cdc_msc_class.h
  • USBD_CDC_MSC_OUT_MAXPACKET_SIZE : cdc_msc_class.h
  • USBD_CDC_MSC_PRODUCT_ID : cdc_msc_desc.h
  • USBD_CDC_MSC_VENDOR_ID : cdc_msc_desc.h
  • USBD_CDC_OUT_MAXPACKET_SIZE : cdc_class.h
  • USBD_CDC_PRODUCT_ID : cdc_desc.h
  • USBD_CDC_SIZ_STRING_LANGID : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_SIZ_STRING_SERIAL : cdc_desc.h, cdc_msc_desc.h
  • USBD_CDC_SUBTYPE_ACM : usb_std.h
  • USBD_CDC_SUBTYPE_CMF : usb_std.h
  • USBD_CDC_SUBTYPE_HEADER : usb_std.h
  • USBD_CDC_SUBTYPE_UFD : usb_std.h
  • USBD_CDC_VENDOR_ID : cdc_desc.h
  • USBD_CUSHID_CONFIG_DESC_SIZE : custom_hid_desc.h
  • USBD_CUSHID_DESC_CONFIGURATION_STRING : custom_hid_desc.h
  • USBD_CUSHID_DESC_INTERFACE_STRING : custom_hid_desc.h
  • USBD_CUSHID_DESC_MANUFACTURER_STRING : custom_hid_desc.h
  • USBD_CUSHID_DESC_PRODUCT_STRING : custom_hid_desc.h
  • USBD_CUSHID_PRODUCT_ID : custom_hid_desc.h
  • USBD_CUSHID_SIZ_REPORT_DESC : custom_hid_desc.h
  • USBD_CUSHID_SIZ_STRING_LANGID : custom_hid_desc.h
  • USBD_CUSHID_SIZ_STRING_SERIAL : custom_hid_desc.h
  • USBD_CUSHID_VENDOR_ID : custom_hid_desc.h
  • USBD_CUSTOM_HID_IN_EPT : custom_hid_class.h
  • USBD_CUSTOM_HID_OUT_EPT : custom_hid_class.h
  • USBD_CUSTOM_IN_MAXPACKET_SIZE : custom_hid_class.h
  • USBD_CUSTOM_OUT_MAXPACKET_SIZE : custom_hid_class.h
  • USBD_HIDIAP_CONFIG_DESC_SIZE : hid_iap_desc.h
  • USBD_HIDIAP_DESC_CONFIGURATION_STRING : hid_iap_desc.h
  • USBD_HIDIAP_DESC_INTERFACE_STRING : hid_iap_desc.h
  • USBD_HIDIAP_DESC_MANUFACTURER_STRING : hid_iap_desc.h
  • USBD_HIDIAP_DESC_PRODUCT_STRING : hid_iap_desc.h
  • USBD_HIDIAP_IN_EPT : hid_iap_class.h
  • USBD_HIDIAP_IN_MAXPACKET_SIZE : hid_iap_class.h
  • USBD_HIDIAP_OUT_EPT : hid_iap_class.h
  • USBD_HIDIAP_OUT_MAXPACKET_SIZE : hid_iap_class.h
  • USBD_HIDIAP_PRODUCT_ID : hid_iap_desc.h
  • USBD_HIDIAP_SIZ_REPORT_DESC : hid_iap_desc.h
  • USBD_HIDIAP_SIZ_STRING_LANGID : hid_iap_desc.h
  • USBD_HIDIAP_SIZ_STRING_SERIAL : hid_iap_desc.h
  • USBD_HIDIAP_VENDOR_ID : hid_iap_desc.h
  • USBD_IN_MAXPACKET_SIZE : msc_class.h
  • USBD_KEYBOARD_CONFIG_DESC_SIZE : keyboard_desc.h
  • USBD_KEYBOARD_DESC_CONFIGURATION_STRING : keyboard_desc.h
  • USBD_KEYBOARD_DESC_INTERFACE_STRING : keyboard_desc.h
  • USBD_KEYBOARD_DESC_MANUFACTURER_STRING : keyboard_desc.h
  • USBD_KEYBOARD_DESC_PRODUCT_STRING : keyboard_desc.h
  • USBD_KEYBOARD_IN_EPT : keyboard_class.h
  • USBD_KEYBOARD_IN_MAXPACKET_SIZE : keyboard_class.h
  • USBD_KEYBOARD_OUT_MAXPACKET_SIZE : keyboard_class.h
  • USBD_KEYBOARD_PRODUCT_ID : keyboard_desc.h
  • USBD_KEYBOARD_SIZ_REPORT_DESC : keyboard_desc.h
  • USBD_KEYBOARD_SIZ_STRING_LANGID : keyboard_desc.h
  • USBD_KEYBOARD_SIZ_STRING_SERIAL : keyboard_desc.h
  • USBD_KEYBOARD_VENDOR_ID : keyboard_desc.h
  • USBD_MOUSE_CONFIG_DESC_SIZE : mouse_desc.h
  • USBD_MOUSE_DESC_CONFIGURATION_STRING : mouse_desc.h
  • USBD_MOUSE_DESC_INTERFACE_STRING : mouse_desc.h
  • USBD_MOUSE_DESC_MANUFACTURER_STRING : mouse_desc.h
  • USBD_MOUSE_DESC_PRODUCT_STRING : mouse_desc.h
  • USBD_MOUSE_IN_EPT : mouse_class.h
  • USBD_MOUSE_IN_MAXPACKET_SIZE : mouse_class.h
  • USBD_MOUSE_PRODUCT_ID : mouse_desc.h
  • USBD_MOUSE_SIZ_REPORT_DESC : mouse_desc.h
  • USBD_MOUSE_SIZ_STRING_LANGID : mouse_desc.h
  • USBD_MOUSE_SIZ_STRING_SERIAL : mouse_desc.h
  • USBD_MOUSE_VENDOR_ID : mouse_desc.h
  • USBD_MSC_BULK_IN_EPT : cdc_msc_class.h, msc_class.h
  • USBD_MSC_BULK_OUT_EPT : cdc_msc_class.h, msc_class.h
  • USBD_MSC_CONFIG_DESC_SIZE : msc_desc.h
  • USBD_MSC_DESC_CONFIGURATION_STRING : msc_desc.h
  • USBD_MSC_DESC_INTERFACE_STRING : msc_desc.h
  • USBD_MSC_DESC_MANUFACTURER_STRING : msc_desc.h
  • USBD_MSC_DESC_PRODUCT_STRING : msc_desc.h
  • USBD_MSC_PRODUCT_ID : msc_desc.h
  • USBD_MSC_SIZ_STRING_LANGID : msc_desc.h
  • USBD_MSC_SIZ_STRING_SERIAL : msc_desc.h
  • USBD_MSC_VENDOR_ID : msc_desc.h
  • USBD_OUT_MAXPACKET_SIZE : msc_class.h
  • USBD_PRINTER_BULK_IN_EPT : printer_class.h
  • USBD_PRINTER_BULK_OUT_EPT : printer_class.h
  • USBD_PRINTER_CONFIG_DESC_SIZE : printer_desc.h
  • USBD_PRINTER_DESC_CONFIGURATION_STRING : printer_desc.h
  • USBD_PRINTER_DESC_INTERFACE_STRING : printer_desc.h
  • USBD_PRINTER_DESC_MANUFACTURER_STRING : printer_desc.h
  • USBD_PRINTER_DESC_PRODUCT_STRING : printer_desc.h
  • USBD_PRINTER_IN_MAXPACKET_SIZE : printer_class.h
  • USBD_PRINTER_OUT_MAXPACKET_SIZE : printer_class.h
  • USBD_PRINTER_PRODUCT_ID : printer_desc.h
  • USBD_PRINTER_SIZ_STRING_LANGID : printer_desc.h
  • USBD_PRINTER_SIZ_STRING_SERIAL : printer_desc.h
  • USBD_PRINTER_VENDOR_ID : printer_desc.h
  • USBD_VCPKYBRD_CDC_BULK_IN_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CDC_BULK_OUT_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CDC_INT_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CMD_MAXPACKET_SIZE : cdc_keyboard_class.h
  • USBD_VCPKYBRD_CONFIG_DESC_SIZE : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_CONFIGURATION_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_INTERFACE_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_MANUFACTURER_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_DESC_PRODUCT_STRING : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_HID_IN_EPT : cdc_keyboard_class.h
  • USBD_VCPKYBRD_HID_SIZ_REPORT_DESC : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_IN_MAXPACKET_SIZE : cdc_keyboard_class.h
  • USBD_VCPKYBRD_OUT_MAXPACKET_SIZE : cdc_keyboard_class.h
  • USBD_VCPKYBRD_PRODUCT_ID : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_SIZ_STRING_LANGID : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_SIZ_STRING_SERIAL : cdc_keyboard_desc.h
  • USBD_VCPKYBRD_VENDOR_ID : cdc_keyboard_desc.h
  • USBFS_BASE : at32f403.h
  • USD : at32f403_flash.h
  • USD_BASE : at32f403.h
  • USD_DEPSLP_NO_RST : at32f403_flash.h
  • USD_DEPSLP_RST : at32f403_flash.h
  • USD_STDBY_NO_RST : at32f403_flash.h
  • USD_STDBY_RST : at32f403_flash.h
  • USD_WDT_ATO_DISABLE : at32f403_flash.h
  • USD_WDT_ATO_ENABLE : at32f403_flash.h
  • USE_STATIC_INIT : project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
  • USER_BUTTON_CRM_CLK : at32f403_board.h
  • USER_BUTTON_PIN : at32f403_board.h
  • USER_BUTTON_PORT : at32f403_board.h


AT32F403 Firmwary Library: Globals

- v -

  • VARIABLES_GET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • VARIABLES_RESET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • VARIABLES_SET_BIT : project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
  • VCPKYBRD_BCD_NUM : cdc_keyboard_desc.h
  • VCPKYBRD_CDC_DATA_INTERFACE : cdc_keyboard_desc.h
  • VCPKYBRD_CDC_INTERFACE : cdc_keyboard_desc.h
  • VCPKYBRD_HID_BINTERVAL_TIME : cdc_keyboard_desc.h
  • VCPKYBRD_KEYBOARD_INTERFACE : cdc_keyboard_desc.h
  • VCPMSC_CDC_DATA_INTERFACE : cdc_msc_desc.h
  • VCPMSC_CDC_INTERFACE : cdc_msc_desc.h
  • VCPMSC_MSC_INTERFACE : cdc_msc_desc.h
  • VECT_TAB_OFFSET : system_at32f403.c
  • vPortSVCHandler : FreeRTOSConfig.h


AT32F403 Firmwary Library: Globals

- w -

  • W25Q128 : spi_flash.h
  • W25Q16 : spi_flash.h
  • W25Q32 : spi_flash.h
  • W25Q64 : spi_flash.h
  • W25Q80 : spi_flash.h
  • WDT : at32f403_wdt.h
  • WDT_BASE : at32f403.h
  • WDT_DIVF_UPDATE_FLAG : at32f403_wdt.h
  • WDT_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • WDT_RLDF_UPDATE_FLAG : at32f403_wdt.h
  • WHITE : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • WM8988_I2C_ADDR_CSB_HIGH : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_I2C_ADDR_CSB_LOW : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R0_LEFT_INPUT_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R10_LEFT_DAC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R11_RIGHT_DAC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R12_BASS_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R13_TREBLE_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R14_ : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R15_RESET : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R16_3D_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R17_ALC1 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R18_ALC2 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R19_ALC3 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R1_RIGHT_INPUT_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R20_NOISE_GATE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R21_LEFT_ADC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R22_RIGHT_ADC_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R23_ADDITIONAL_1_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R24_ADDITIONAL_2_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R25_PWR_1_MGMT : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R26_PWR_2_MGMT : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R27_ADDITIONAL_3_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R2_LOUT1_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R31_ADC_INPUT_MODE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R32_ADC_L_SIGNAL_PATH : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R33_ADC_R_SIGNAL_PATH : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R34_LEFT_OUT_MIX_1 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R35_LEFT_OUT_MIX_2 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R36_RIGHT_OUT_MIX_1 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R37_RIGHT_OUT_MIX_2 : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R38_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R39_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R3_ROUT1_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R40_LOUT2_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R41_ROUT2_VOLUME : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R42_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R43_LOW_POWER_PALYBACK : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R4_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R5_ADC_DAC_CONTROL : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R6_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R7_AUDIO_INTERFACE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R8_SAMPLE_RATE : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_R9_RESERVED : audio/inc/audio_codec.h, composite_audio_hid/inc/audio_codec.h
  • WM8988_REG_BITW16 : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • WM8988_REG_FREQ16K : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • WM8988_REG_FREQ48K : audio/src/audio_codec.c, composite_audio_hid/src/audio_codec.c
  • WRITE_READ_ADDR : project/at_start_f403/examples/xmc/psram/src/main.c, project/at_start_f403/examples/xmc/sram/src/main.c
  • write_read_addr : project/at_start_f403/examples/xmc/nor/src/main.c
  • Write_Transfer : cf.h
  • WWDT : at32f403_wwdt.h
  • WWDT_BASE : at32f403.h
  • WWDT_EN_BIT : at32f403_wwdt.h
  • WWDT_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h


AT32F403 Firmwary Library: Globals

- x -

  • XMC_BANK1 : at32f403_xmc.h
  • XMC_BANK1_REG_BASE : at32f403.h
  • XMC_BANK1E_H_BASE : at32f403.h
  • XMC_BANK1E_REG_BASE : at32f403.h
  • XMC_BANK2 : at32f403_xmc.h
  • XMC_BANK2_REG_BASE : at32f403.h
  • XMC_BANK3 : at32f403_xmc.h
  • XMC_BANK3_REG_BASE : at32f403.h
  • XMC_BANK4 : at32f403_xmc.h
  • XMC_BANK4_ : cf.h
  • XMC_BANK4_REG_BASE : at32f403.h
  • XMC_Bank_NAND : xmc_ecc.h, xmc_nand.h
  • XMC_BASE : cf.h
  • XMC_BKxCTRL_DEV_PCCARD : cf.h
  • XMC_LCD_COMMAND : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • XMC_LCD_DATA : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h
  • XMC_MODULE_ENABLED : project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h, project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h, project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h, project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h, project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h, project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h, project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h, project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h, project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h, project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h, project/at_start_f403/examples/can/filter/inc/at32f403_conf.h, project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h, project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h, project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h, project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h, project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h, project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h, project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h, project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h, project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h, project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h, project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h, project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h, project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h, project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h, project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h, project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h, project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h, project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h, project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h, project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h, project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h, project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h, project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h, project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h, project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h, project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h, project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h, project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h, project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h, project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h, project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h, project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h, project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h, project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h, project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h, project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h, project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h, project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h, project/at_start_f403/templates/inc/at32f403_conf.h, utilities/at32f403_freertos_demo/inc/at32f403_conf.h, utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h, utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
  • XMC_NADV_MUX : at32f403_gpio.h
  • XMC_REG_BASE : at32f403.h
  • xPortPendSVHandler : FreeRTOSConfig.h
  • xPortSysTickHandler : FreeRTOSConfig.h


AT32F403 Firmwary Library: Globals

- y -

  • YELLOW : lcd_8bit/inc/xmc_lcd.h, lcd_touch_16bit/inc/xmc_lcd.h


AT32F403 Firmwary Library: Globals

- z -

  • ZOOM : project/at_start_f403/examples/cortex_m4/fpu/src/main.c


AT32F403 Firmwary Library: FreeRTOSConfig.h Source File

  • utilities
  • at32f403_freertos_demo
  • inc
FreeRTOSConfig.h
Go to the documentation of this file.
1/*
2 FreeRTOS V10.4.3 - Copyright (C) 2020 Real Time Engineers Ltd.
3 All rights reserved
4
5 VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
6
7 This file is part of the FreeRTOS distribution.
8
9 FreeRTOS is free software; you can redistribute it and/or modify it under
10 the terms of the GNU General Public License (version 2) as published by the
11 Free Software Foundation >>>> AND MODIFIED BY <<<< the FreeRTOS exception.
12
13 ***************************************************************************
14 >>! NOTE: The modification to the GPL is included to allow you to !<<
15 >>! distribute a combined work that includes FreeRTOS without being !<<
16 >>! obliged to provide the source code for proprietary components !<<
17 >>! outside of the FreeRTOS kernel. !<<
18 ***************************************************************************
19
20 FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
21 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
22 FOR A PARTICULAR PURPOSE. Full license text is available on the following
23 link: http://www.freertos.org/a00114.html
24
25 ***************************************************************************
26 * *
27 * FreeRTOS provides completely free yet professionally developed, *
28 * robust, strictly quality controlled, supported, and cross *
29 * platform software that is more than just the market leader, it *
30 * is the industry's de facto standard. *
31 * *
32 * Help yourself get started quickly while simultaneously helping *
33 * to support the FreeRTOS project by purchasing a FreeRTOS *
34 * tutorial book, reference manual, or both: *
35 * http://www.FreeRTOS.org/Documentation *
36 * *
37 ***************************************************************************
38
39 http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
40 the FAQ page "My application does not run, what could be wrong?". Have you
41 defined configASSERT()?
42
43 http://www.FreeRTOS.org/support - In return for receiving this top quality
44 embedded software for free we request you assist our global community by
45 participating in the support forum.
46
47 http://www.FreeRTOS.org/training - Investing in training allows your team to
48 be as productive as possible as early as possible. Now you can receive
49 FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
50 Ltd, and the world's leading authority on the world's leading RTOS.
51
52 http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
53 including FreeRTOS+Trace - an indispensable productivity tool, a DOS
54 compatible FAT file system, and our tiny thread aware UDP/IP stack.
55
56 http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
57 Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
58
59 http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
60 Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
61 licenses offer ticketed support, indemnification and commercial middleware.
62
63 http://www.SafeRTOS.com - High Integrity Systems also provide a safety
64 engineered and independently SIL3 certified version for use in safety and
65 mission critical applications that require provable dependability.
66
67 1 tab == 4 spaces!
68 * Copyright notice & Disclaimer
69 *
70 * The software Board Support Package (BSP) that is made available to
71 * download from Artery official website is the copyrighted work of Artery.
72 * Artery authorizes customers to use, copy, and distribute the BSP
73 * software and its related documentation for the purpose of design and
74 * development in conjunction with Artery microcontrollers. Use of the
75 * software is governed by this copyright notice and the following disclaimer.
76 *
77 * THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES,
78 * GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS,
79 * TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR
80 * STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS,
81 * INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY,
82 * FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
83 *
84 **************************************************************************
85*/
86
87#ifndef FREERTOS_CONFIG_H
88#define FREERTOS_CONFIG_H
89
90#ifdef __cplusplus
91 extern "C" {
92#endif
93
94#if defined(__ICCARM__) || defined(__CC_ARM) || defined(__GNUC__)
95 #include <stdint.h>
96 #include "system_at32f403.h"
97#endif
98
99
100
101/*-----------------------------------------------------------
102 * Application specific definitions.
103 *
104 * These definitions should be adjusted for your particular hardware and
105 * application requirements.
106 *
107 * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
108 * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
109 *
110 * See http://www.freertos.org/a00110.html.
111 *----------------------------------------------------------*/
112#define configUSE_PREEMPTION 1
113#define configUSE_IDLE_HOOK 0
114#define configUSE_TICK_HOOK 0
115#define configCPU_CLOCK_HZ ( ( unsigned long ) system_core_clock )
116#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )
117#define configMAX_PRIORITIES ( 5 )
118#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 128 )
119#define configSUPPORT_DYNAMIC_ALLOCATION 1
120#define configTOTAL_HEAP_SIZE ( ( size_t ) ( 8 * 1024 ) )
121#define configMAX_TASK_NAME_LEN ( 16 )
122#define configUSE_16_BIT_TICKS 0
123#define configIDLE_SHOULD_YIELD 1
124
125
126/* Co-routine definitions. */
127#define configUSE_CO_ROUTINES 0
128#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
129
130/* Set the following definitions to 1 to include the API function, or zero
131to exclude the API function. */
132
133#define INCLUDE_vTaskPrioritySet 1
134#define INCLUDE_uxTaskPriorityGet 1
135#define INCLUDE_vTaskDelete 1
136#define INCLUDE_vTaskCleanUpResources 0
137#define INCLUDE_vTaskSuspend 1
138#define INCLUDE_vTaskDelayUntil 1
139#define INCLUDE_vTaskDelay 1
140#define INCLUDE_xTaskGetCurrentTaskHandle 1
141/* Cortex-M specific definitions. */
142#ifdef __NVIC_PRIO_BITS
143 /* __BVIC_PRIO_BITS will be specified when CMSIS is being used. */
144 #define configPRIO_BITS __NVIC_PRIO_BITS
145#else
146 #define configPRIO_BITS 4 /* 15 priority levels */
147#endif
148
149/* The lowest interrupt priority that can be used in a call to a "set priority"
150function. */
151#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 0x0f
152
153/* The highest interrupt priority that can be used by any interrupt service
154routine that makes calls to interrupt safe FreeRTOS API functions. DO NOT CALL
155INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER
156PRIORITY THAN THIS! (higher priorities are lower numeric values. */
157#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 0x01
158
159/* Interrupt priorities used by the kernel port layer itself. These are generic
160to all Cortex-M ports, and do not rely on any particular library functions. */
161#define configKERNEL_INTERRUPT_PRIORITY ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
162/* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!!
163See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
164#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
165
166/* Normal assert() semantics without relying on the provision of an assert.h
167header file. */
168#define configASSERT( x ) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }
169
170/* Definitions that map the FreeRTOS port interrupt handlers to their CMSIS
171standard names. */
172#define vPortSVCHandler SVC_Handler
173#define xPortPendSVHandler PendSV_Handler
174#define xPortSysTickHandler SysTick_Handler
175
176#ifdef __cplusplus
177 }
178#endif
179
180#endif /* FREERTOS_CONFIG_H */
181
system_at32f403.h
cmsis cortex-m4 system header file.


AT32F403 Firmwary Library: hid_iap_user.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
app_led3_toggle/inc/hid_iap_user.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __HID_IAP_USER_H
27#define __HID_IAP_USER_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "hid_iap_class.h"
34
47#define FLASH_APP_ADDRESS 0x08005000
48
57void iap_init(void);
58 iap_result_type iap_get_upgrade_flag(void);
59void app_loop(void);
60
73#ifdef __cplusplus
74}
75#endif
76
77#endif
78
iap_result_type
iap_result_type
Definition: hid_iap_class.h:84
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
iap_get_upgrade_flag
iap_result_type iap_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: app_led3_toggle/src/hid_iap_user.c:77
app_loop
void app_loop(void)
iap loop
Definition: app_led3_toggle/src/hid_iap_user.c:251
hid_iap_class.h
usb hid iap header file


AT32F403 Firmwary Library: iap.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
app_led3_toggle/inc/iap.h
Go to the documentation of this file.
1
25#ifndef __IAP_H__
26#define __IAP_H__
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46/* app starting address */
47#define APP_START_ADDR 0x08004000
48
49/* the previous sector of app starting address is iap upgrade flag */
50#define IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
51
52/* when app received cmd 0x5aa5 from pc-tool, will set up the flag,
53indicates that an app upgrade will follow, see iap application note for more details */
54#define IAP_UPGRADE_FLAG 0x41544B38
55
64void iap_command_handle(void);
65void iap_init(void);
66
79#ifdef __cplusplus
80}
81#endif
82
83#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
iap_command_handle
void iap_command_handle(void)
iap command handle handle.
Definition: app_led3_toggle/src/iap.c:42


AT32F403 Firmwary Library: tmr.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
app_led3_toggle/inc/tmr.h
Go to the documentation of this file.
1
25#ifndef __TMR_H
26#define __TMR_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46void tmr_init(void);
47
60#ifdef __cplusplus
61}
62#endif
63
64#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led3_toggle/src/tmr.c:42


AT32F403 Firmwary Library: usart.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
app_led3_toggle/inc/usart.h
Go to the documentation of this file.
1
25#ifndef __USART_H
26#define __USART_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
34extern uint8_t iap_flag;
35
48#define IAP_REV_FLAG_NO 0
49#define IAP_REV_FLAG_5A 1
50#define IAP_REV_FLAG_DONE 2
51#define IAP_REV_FLAG_ERROR 3
52
61void uart_init(uint32_t baudrate);
62void back_ok(void);
63void back_err(void);
64
77#ifdef __cplusplus
78}
79#endif
80
81#endif
82
83
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
iap_flag
uint8_t iap_flag
Definition: app_led3_toggle/src/usart.c:36
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
back_err
void back_err(void)
command response error.
Definition: app_led3_toggle/src/usart.c:118
back_ok
void back_ok(void)
command response ok.
Definition: app_led3_toggle/src/usart.c:105


AT32F403 Firmwary Library: hid_iap_user.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
app_led3_toggle/src/hid_iap_user.c
Go to the documentation of this file.
1
25#include "hid_iap_user.h"
26#include "hid_iap_class.h"
27#include "string.h"
28
37void (*pftarget)(void);
38void iap_clear_upgrade_flag(void);
39void iap_set_upgrade_flag(void);
40uint32_t crc_cal(uint32_t addr, uint16_t nk);
41
42void iap_idle(void);
43void iap_start(void);
44void iap_finish(void);
45void iap_jump(void);
46void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result);
47
53void iap_clear_upgrade_flag(void)
54{
55 flash_unlock();
56 flash_sector_erase(iap_info.flag_address);
57 flash_lock();
58}
59
65void iap_set_upgrade_flag(void)
66{
67 flash_unlock();
68 flash_word_program(iap_info.flag_address, IAP_UPGRADE_COMPLETE_FLAG);
69 flash_lock();
70}
71
77 iap_result_type iap_get_upgrade_flag(void)
78{
79 uint32_t flag_address = iap_info.flag_address;
80 if(*((uint32_t *)flag_address) == IAP_UPGRADE_COMPLETE_FLAG)
81 {
82 return IAP_SUCCESS;
83 }
84 else
85 {
86 return IAP_FAILED;
87 }
88}
89
95void iap_init(void)
96{
97 iap_info.flash_size = KB_TO_B(FLASH_SIZE_REG());
98 if(iap_info.flash_size < KB_TO_B(256))
99 {
100 iap_info.sector_size = SECTOR_SIZE_1K;
101 }
102 else
103 {
104 iap_info.sector_size = SECTOR_SIZE_2K;
105 }
106
107 iap_info.flash_start_address = FLASH_BASE;
108 iap_info.flash_end_address = iap_info.flash_start_address + iap_info.flash_size;
109
110 iap_info.app_address = FLASH_APP_ADDRESS;
111 iap_info.flag_address = iap_info.app_address - iap_info.sector_size;
112
113 iap_info.fifo_length = 0;
114 iap_info.iap_address = 0;
115}
116
122void iap_idle(void)
123{
124 iap_info.state = IAP_STS_JMP_WAIT;
125 iap_init();
126 iap_respond(iap_info.iap_tx, IAP_CMD_IDLE, IAP_ACK);
127}
128
134void iap_start(void)
135{
136 iap_info.state = IAP_STS_START;
137 iap_init();
138 iap_respond(iap_info.iap_tx, IAP_CMD_START, IAP_ACK);
139}
140
141/*
142 * @brief iap jump
143 * @param none
144 * @retval none
145 */
146void iap_jump()
147{
148 iap_info.state = IAP_STS_JMP_WAIT;
149 iap_respond(iap_info.iap_tx, IAP_CMD_JMP, IAP_ACK);
150}
151
152/*
153 * @brief iap get
154 * @param none
155 * @retval none
156 */
157void iap_get()
158{
159 iap_respond(iap_info.iap_tx, IAP_CMD_GET, IAP_ACK);
160 iap_info.iap_tx[4] = (uint8_t)((iap_info.app_address >> 24) & 0xFF);
161 iap_info.iap_tx[5] = (uint8_t)((iap_info.app_address >> 16) & 0xFF);
162 iap_info.iap_tx[6] = (uint8_t)((iap_info.app_address >> 8) & 0xFF);
163 iap_info.iap_tx[7] = (uint8_t)((iap_info.app_address) & 0xFF);
164}
165
166
167
168/*
169 * @brief iap respond
170 * @param res_buf: data buffer pointer.
171 * @param iap_cmd: iap command
172 * @param result: iap result
173 * @retval the result of the address parse
174 */
175void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
176{
177 res_buf[0] = (uint8_t)((iap_cmd >> 8) & 0xFF);
178 res_buf[1] = (uint8_t)((iap_cmd) & 0xFF);
179 res_buf[2] = (uint8_t)((result >> 8) & 0xFF);
180 res_buf[3] = (uint8_t)((result) & 0xFF);
181
182 iap_info.respond_flag = 1;
183}
184
192 iap_result_type usbd_hid_iap_process(void *udev, uint8_t *pdata, uint16_t len)
193{
194 iap_result_type status = IAP_SUCCESS;
195 uint16_t iap_cmd;
196
197 if(len < 2)
198 {
199 return IAP_FAILED;
200 }
201
202 iap_info.respond_flag = 0;
203
204 iap_cmd = (pdata[0] << 8) | pdata[1];
205
206 switch(iap_cmd)
207 {
208 case IAP_CMD_IDLE:
209 iap_idle();
210 break;
211 case IAP_CMD_START:
212 iap_start();
213 break;
214 case IAP_CMD_JMP:
215 iap_jump();
216 break;
217 case IAP_CMD_GET:
218 iap_get();
219 break;
220 default:
221 status = IAP_FAILED;
222 break;
223 }
224
225 if(iap_info.respond_flag)
226 {
227 usb_iap_class_send_report(udev, iap_info.iap_tx, 64);
228 }
229
230 return status;
231}
232
238void usbd_hid_iap_in_complete(void *udev)
239{
240 if(iap_info.state == IAP_STS_JMP_WAIT)
241 {
242 iap_info.state = IAP_STS_JMP;
243 }
244}
245
251void app_loop(void)
252{
253 if(iap_info.state == IAP_STS_JMP)
254 {
255 iap_clear_upgrade_flag();
256 nvic_system_reset();
257 }
258}
259
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
nvic_system_reset
void nvic_system_reset(void)
system reset
Definition: at32f403_misc.c:50
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
IAP_CMD_IDLE
#define IAP_CMD_IDLE
iap command
Definition: hid_iap_class.h:66
IAP_CMD_GET
#define IAP_CMD_GET
Definition: hid_iap_class.h:73
SECTOR_SIZE_1K
#define SECTOR_SIZE_1K
Definition: hid_iap_class.h:59
iap_result_type
iap_result_type
Definition: hid_iap_class.h:84
IAP_ACK
#define IAP_ACK
Definition: hid_iap_class.h:80
SECTOR_SIZE_2K
#define SECTOR_SIZE_2K
Definition: hid_iap_class.h:60
IAP_UPGRADE_COMPLETE_FLAG
#define IAP_UPGRADE_COMPLETE_FLAG
Definition: hid_iap_class.h:76
FLASH_SIZE_REG
#define FLASH_SIZE_REG()
Definition: hid_iap_class.h:56
IAP_CMD_START
#define IAP_CMD_START
Definition: hid_iap_class.h:67
IAP_CMD_JMP
#define IAP_CMD_JMP
Definition: hid_iap_class.h:72
KB_TO_B
#define KB_TO_B(kb)
Definition: hid_iap_class.h:57
IAP_FAILED
@ IAP_FAILED
Definition: hid_iap_class.h:87
IAP_SUCCESS
@ IAP_SUCCESS
Definition: hid_iap_class.h:85
IAP_STS_START
@ IAP_STS_START
Definition: hid_iap_class.h:93
IAP_STS_JMP
@ IAP_STS_JMP
Definition: hid_iap_class.h:99
IAP_STS_JMP_WAIT
@ IAP_STS_JMP_WAIT
Definition: hid_iap_class.h:98
iap_info
iap_info_type iap_info
Definition: hid_iap_class.c:52
usb_iap_class_send_report
usb_sts_type usb_iap_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: hid_iap_class.c:319
iap_set_upgrade_flag
void iap_set_upgrade_flag(void)
set iap upgrade complete flag
Definition: app_led3_toggle/src/hid_iap_user.c:65
iap_idle
void iap_idle(void)
iap idle function
Definition: app_led3_toggle/src/hid_iap_user.c:122
iap_respond
void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
Definition: app_led3_toggle/src/hid_iap_user.c:175
iap_init
void iap_init(void)
iap init
Definition: app_led3_toggle/src/hid_iap_user.c:95
usbd_hid_iap_process
iap_result_type usbd_hid_iap_process(void *udev, uint8_t *pdata, uint16_t len)
usb device iap function
Definition: app_led3_toggle/src/hid_iap_user.c:192
crc_cal
uint32_t crc_cal(uint32_t addr, uint16_t nk)
crc cal
Definition: bootloader/src/hid_iap_user.c:153
iap_get_upgrade_flag
iap_result_type iap_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: app_led3_toggle/src/hid_iap_user.c:77
iap_finish
void iap_finish(void)
Definition: bootloader/src/hid_iap_user.c:313
iap_start
void iap_start(void)
iap start function
Definition: app_led3_toggle/src/hid_iap_user.c:134
pftarget
void(* pftarget)(void)
Definition: app_led3_toggle/src/hid_iap_user.c:37
iap_clear_upgrade_flag
void iap_clear_upgrade_flag(void)
clear iap upgrade flag
Definition: app_led3_toggle/src/hid_iap_user.c:53
iap_get
void iap_get()
Definition: app_led3_toggle/src/hid_iap_user.c:157
app_loop
void app_loop(void)
iap loop
Definition: app_led3_toggle/src/hid_iap_user.c:251
iap_jump
void iap_jump(void)
Definition: app_led3_toggle/src/hid_iap_user.c:146
usbd_hid_iap_in_complete
void usbd_hid_iap_in_complete(void *udev)
usb device in transfer complete function
Definition: app_led3_toggle/src/hid_iap_user.c:238
FLASH_APP_ADDRESS
#define FLASH_APP_ADDRESS
Definition: app_led3_toggle/inc/hid_iap_user.h:47
hid_iap_class.h
usb hid iap header file
iap_info_type::respond_flag
uint32_t respond_flag
Definition: hid_iap_class.h:122
iap_info_type::flag_address
uint32_t flag_address
Definition: hid_iap_class.h:114
iap_info_type::sector_size
uint32_t sector_size
Definition: hid_iap_class.h:119
iap_info_type::iap_address
uint32_t iap_address
Definition: hid_iap_class.h:113
iap_info_type::flash_start_address
uint32_t flash_start_address
Definition: hid_iap_class.h:116
iap_info_type::flash_end_address
uint32_t flash_end_address
Definition: hid_iap_class.h:117
iap_info_type::fifo_length
uint32_t fifo_length
Definition: hid_iap_class.h:109
iap_info_type::flash_size
uint32_t flash_size
Definition: hid_iap_class.h:120
iap_info_type::iap_tx
uint8_t iap_tx[0x40]
Definition: hid_iap_class.h:107
iap_info_type::app_address
uint32_t app_address
Definition: hid_iap_class.h:112
iap_info_type::state
iap_machine_state_type state
Definition: hid_iap_class.h:131


AT32F403 Firmwary Library: iap.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
app_led3_toggle/src/iap.c
Go to the documentation of this file.
1
25#include "iap.h"
26#include "usart.h"
27#include "tmr.h"
28
42void iap_command_handle(void)
43{
44 if(iap_flag==IAP_REV_FLAG_DONE)
45 {
46 flash_unlock();
47 flash_sector_erase(IAP_UPGRADE_FLAG_ADDR);
48 flash_word_program(IAP_UPGRADE_FLAG_ADDR, IAP_UPGRADE_FLAG);
49 flash_lock();
50 nvic_system_reset();
51 }
52}
53
59void iap_init(void)
60{
61 if((*(uint32_t*)IAP_UPGRADE_FLAG_ADDR) == IAP_UPGRADE_FLAG)
62 {
63 flash_unlock();
64 flash_sector_erase(IAP_UPGRADE_FLAG_ADDR);
65 flash_lock();
66 }
67}
68
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
nvic_system_reset
void nvic_system_reset(void)
system reset
Definition: at32f403_misc.c:50
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
iap_command_handle
void iap_command_handle(void)
iap command handle handle.
Definition: app_led3_toggle/src/iap.c:42
iap_flag
uint8_t iap_flag
Definition: app_led3_toggle/src/usart.c:36
IAP_UPGRADE_FLAG_ADDR
#define IAP_UPGRADE_FLAG_ADDR
Definition: app_led3_toggle/inc/iap.h:50
IAP_REV_FLAG_DONE
#define IAP_REV_FLAG_DONE
Definition: app_led3_toggle/inc/usart.h:50
IAP_UPGRADE_FLAG
#define IAP_UPGRADE_FLAG
Definition: app_led3_toggle/inc/iap.h:54


AT32F403 Firmwary Library: tmr.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
app_led3_toggle/src/tmr.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "tmr.h"
27#include "iap.h"
28
42void tmr_init(void)
43{
44 crm_clocks_freq_type crm_clocks_freq_struct = {0};
45
46 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
47
48 /* enable the tmr3 global interrupt */
49 nvic_irq_enable(TMR3_GLOBAL_IRQn, 1, 0);
50
51 /* get system clock */
52 crm_clocks_freq_get(&crm_clocks_freq_struct);
53
54 /* time base configuration */
55 tmr_base_init(TMR3, 10000, crm_clocks_freq_struct.ahb_freq / 10000);
56 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
57
58 /* overflow interrupt enable */
59 tmr_interrupt_enable(TMR3, TMR_OVF_INT, TRUE);
60
61 /* enable tmr */
62 tmr_counter_enable(TMR3, TRUE);
63}
64
70void TMR3_GLOBAL_IRQHandler(void)
71{
72 if(tmr_flag_get(TMR3, TMR_OVF_FLAG) == SET)
73 {
74 tmr_flag_clear(TMR3, TMR_OVF_FLAG);
75 at32_led_toggle(LED3);
76 }
77}
78
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
LED3
@ LED3
Definition: at32f403_board.h:62
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_OVF_FLAG
#define TMR_OVF_FLAG
Definition: at32f403_tmr.h:50
TMR_OVF_INT
#define TMR_OVF_INT
Definition: at32f403_tmr.h:72
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
TMR3_GLOBAL_IRQHandler
void TMR3_GLOBAL_IRQHandler(void)
tmr3 global interrupt handler.
Definition: app_led3_toggle/src/tmr.c:70
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led3_toggle/src/tmr.c:42
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::ahb_freq
uint32_t ahb_freq
Definition: at32f403_crm.h:452


AT32F403 Firmwary Library: usart.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
app_led3_toggle/src/usart.c
Go to the documentation of this file.
1
25#include "usart.h"
26#include "tmr.h"
27
36uint8_t iap_flag = IAP_REV_FLAG_NO;
37
43void uart_init(uint32_t baudrate)
44{
45 gpio_init_type gpio_init_struct;
46 /* enable the usart and it's io clock */
47 crm_periph_clock_enable(CRM_USART1_PERIPH_CLOCK, TRUE);
48 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
49
50 /* set default parameter */
51 gpio_default_para_init(&gpio_init_struct);
52
53 /* configure the usart1_tx pa9 */
54 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
55 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
56 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
57 gpio_init_struct.gpio_pins = GPIO_PINS_9;
58 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
59 gpio_init(GPIOA, &gpio_init_struct);
60
61 /* configure the usart1_rx pa10 */
62 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
63 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
64 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
65 gpio_init_struct.gpio_pins = GPIO_PINS_10;
66 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
67 gpio_init(GPIOA, &gpio_init_struct);
68
69 /*configure usart nvic interrupt */
70 nvic_irq_enable(USART1_IRQn, 0, 0);
71
72 /*configure usart param*/
73 usart_init(USART1, baudrate, USART_DATA_8BITS, USART_STOP_1_BIT);
74 usart_transmitter_enable(USART1, TRUE);
75 usart_receiver_enable(USART1, TRUE);
76 usart_interrupt_enable(USART1, USART_RDBF_INT, TRUE);
77 usart_enable(USART1, TRUE);
78}
79
85void USART1_IRQHandler(void)
86{
87 uint16_t reval;
88 if(usart_flag_get(USART1, USART_RDBF_FLAG) != RESET)
89 {
90 reval = usart_data_receive(USART1);
91 if((reval == 0x5A) && (iap_flag == IAP_REV_FLAG_NO))
92 iap_flag = IAP_REV_FLAG_5A;
93 else if((reval == 0xA5) && (iap_flag == IAP_REV_FLAG_5A))
94 iap_flag = IAP_REV_FLAG_DONE;
95 else
96 iap_flag = IAP_REV_FLAG_NO;
97 }
98}
99
105void back_ok(void)
106{
107 usart_data_transmit(USART1, 0xCC);
108 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
109 usart_data_transmit(USART1, 0xDD);
110 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
111}
112
118void back_err(void)
119{
120 usart_data_transmit(USART1, 0xEE);
121 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
122 usart_data_transmit(USART1, 0xFF);
123 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
124}
125
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART1_PERIPH_CLOCK
@ CRM_USART1_PERIPH_CLOCK
Definition: at32f403_crm.h:122
USART1_IRQn
@ USART1_IRQn
Definition: at32f403.h:216
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_TDC_FLAG
#define USART_TDC_FLAG
Definition: at32f403_usart.h:56
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART1_IRQHandler
void USART1_IRQHandler(void)
usart1 interrupt handler.
Definition: app_led3_toggle/src/usart.c:85
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
iap_flag
uint8_t iap_flag
Definition: app_led3_toggle/src/usart.c:36
back_err
void back_err(void)
command response error.
Definition: app_led3_toggle/src/usart.c:118
back_ok
void back_ok(void)
command response ok.
Definition: app_led3_toggle/src/usart.c:105
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART1
#define USART1
Definition: at32f403_usart.h:317
IAP_REV_FLAG_DONE
#define IAP_REV_FLAG_DONE
Definition: app_led3_toggle/inc/usart.h:50
IAP_REV_FLAG_NO
#define IAP_REV_FLAG_NO
Definition: app_led3_toggle/inc/usart.h:48
IAP_REV_FLAG_5A
#define IAP_REV_FLAG_5A
Definition: app_led3_toggle/inc/usart.h:49
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219


AT32F403 Firmwary Library: hid_iap_user.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
app_led4_toggle/inc/hid_iap_user.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __HID_IAP_USER_H
27#define __HID_IAP_USER_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "hid_iap_class.h"
34
47#define FLASH_APP_ADDRESS 0x08005000
48
57void iap_init(void);
58 iap_result_type iap_get_upgrade_flag(void);
59void app_loop(void);
60
73#ifdef __cplusplus
74}
75#endif
76
77#endif
78
iap_result_type
iap_result_type
Definition: hid_iap_class.h:84
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
iap_get_upgrade_flag
iap_result_type iap_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: app_led3_toggle/src/hid_iap_user.c:77
app_loop
void app_loop(void)
iap loop
Definition: app_led3_toggle/src/hid_iap_user.c:251
hid_iap_class.h
usb hid iap header file


AT32F403 Firmwary Library: iap.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
app_led4_toggle/inc/iap.h
Go to the documentation of this file.
1
25#ifndef __IAP_H__
26#define __IAP_H__
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46/* app starting address */
47#define APP_START_ADDR 0x08004000
48
49/* the previous sector of app starting address is iap upgrade flag */
50#define IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
51
52/* when app received cmd 0x5aa5 from pc-tool, will set up the flag,
53indicates that an app upgrade will follow, see iap application note for more details */
54#define IAP_UPGRADE_FLAG 0x41544B38
55
64void iap_command_handle(void);
65void iap_init(void);
66
79#ifdef __cplusplus
80}
81#endif
82
83#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
iap_command_handle
void iap_command_handle(void)
iap command handle handle.
Definition: app_led3_toggle/src/iap.c:42


AT32F403 Firmwary Library: tmr.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
app_led4_toggle/inc/tmr.h
Go to the documentation of this file.
1
25#ifndef __TMR_H
26#define __TMR_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46void tmr_init(void);
47
60#ifdef __cplusplus
61}
62#endif
63
64#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led3_toggle/src/tmr.c:42


AT32F403 Firmwary Library: usart.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
app_led4_toggle/inc/usart.h
Go to the documentation of this file.
1
25#ifndef __USART_H
26#define __USART_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
34extern uint8_t iap_flag;
35
48#define IAP_REV_FLAG_NO 0
49#define IAP_REV_FLAG_5A 1
50#define IAP_REV_FLAG_DONE 2
51#define IAP_REV_FLAG_ERROR 3
52
61void uart_init(uint32_t baudrate);
62void back_ok(void);
63void back_err(void);
64
77#ifdef __cplusplus
78}
79#endif
80
81#endif
82
83
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
iap_flag
uint8_t iap_flag
Definition: app_led3_toggle/src/usart.c:36
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
back_err
void back_err(void)
command response error.
Definition: app_led3_toggle/src/usart.c:118
back_ok
void back_ok(void)
command response ok.
Definition: app_led3_toggle/src/usart.c:105


AT32F403 Firmwary Library: hid_iap_user.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
app_led4_toggle/src/hid_iap_user.c
Go to the documentation of this file.
1
25#include "hid_iap_user.h"
26#include "hid_iap_class.h"
27#include "string.h"
28
37void (*pftarget)(void);
38void iap_clear_upgrade_flag(void);
39void iap_set_upgrade_flag(void);
40uint32_t crc_cal(uint32_t addr, uint16_t nk);
41
42void iap_idle(void);
43void iap_start(void);
44void iap_finish(void);
45void iap_jump(void);
46void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result);
47
53void iap_clear_upgrade_flag(void)
54{
55 flash_unlock();
56 flash_sector_erase(iap_info.flag_address);
57 flash_lock();
58}
59
65void iap_set_upgrade_flag(void)
66{
67 flash_unlock();
68 flash_word_program(iap_info.flag_address, IAP_UPGRADE_COMPLETE_FLAG);
69 flash_lock();
70}
71
77 iap_result_type iap_get_upgrade_flag(void)
78{
79 uint32_t flag_address = iap_info.flag_address;
80 if(*((uint32_t *)flag_address) == IAP_UPGRADE_COMPLETE_FLAG)
81 {
82 return IAP_SUCCESS;
83 }
84 else
85 {
86 return IAP_FAILED;
87 }
88}
89
95void iap_init(void)
96{
97 iap_info.flash_size = KB_TO_B(FLASH_SIZE_REG());
98 if(iap_info.flash_size < KB_TO_B(256))
99 {
100 iap_info.sector_size = SECTOR_SIZE_1K;
101 }
102 else
103 {
104 iap_info.sector_size = SECTOR_SIZE_2K;
105 }
106
107 iap_info.flash_start_address = FLASH_BASE;
108 iap_info.flash_end_address = iap_info.flash_start_address + iap_info.flash_size;
109
110 iap_info.app_address = FLASH_APP_ADDRESS;
111 iap_info.flag_address = iap_info.app_address - iap_info.sector_size;
112
113 iap_info.fifo_length = 0;
114 iap_info.iap_address = 0;
115}
116
122void iap_idle(void)
123{
124 iap_info.state = IAP_STS_JMP_WAIT;
125 iap_init();
126 iap_respond(iap_info.iap_tx, IAP_CMD_IDLE, IAP_ACK);
127}
128
134void iap_start(void)
135{
136 iap_info.state = IAP_STS_START;
137 iap_init();
138 iap_respond(iap_info.iap_tx, IAP_CMD_START, IAP_ACK);
139}
140
141/*
142 * @brief iap jump
143 * @param none
144 * @retval none
145 */
146void iap_jump()
147{
148 iap_info.state = IAP_STS_JMP_WAIT;
149 iap_respond(iap_info.iap_tx, IAP_CMD_JMP, IAP_ACK);
150}
151
152/*
153 * @brief iap get
154 * @param none
155 * @retval none
156 */
157void iap_get()
158{
159 iap_respond(iap_info.iap_tx, IAP_CMD_GET, IAP_ACK);
160 iap_info.iap_tx[4] = (uint8_t)((iap_info.app_address >> 24) & 0xFF);
161 iap_info.iap_tx[5] = (uint8_t)((iap_info.app_address >> 16) & 0xFF);
162 iap_info.iap_tx[6] = (uint8_t)((iap_info.app_address >> 8) & 0xFF);
163 iap_info.iap_tx[7] = (uint8_t)((iap_info.app_address) & 0xFF);
164}
165
166
167
168/*
169 * @brief iap respond
170 * @param res_buf: data buffer pointer.
171 * @param iap_cmd: iap command
172 * @param result: iap result
173 * @retval the result of the address parse
174 */
175void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
176{
177 res_buf[0] = (uint8_t)((iap_cmd >> 8) & 0xFF);
178 res_buf[1] = (uint8_t)((iap_cmd) & 0xFF);
179 res_buf[2] = (uint8_t)((result >> 8) & 0xFF);
180 res_buf[3] = (uint8_t)((result) & 0xFF);
181
182 iap_info.respond_flag = 1;
183}
184
192 iap_result_type usbd_hid_iap_process(void *udev, uint8_t *pdata, uint16_t len)
193{
194 iap_result_type status = IAP_SUCCESS;
195 uint16_t iap_cmd;
196
197 if(len < 2)
198 {
199 return IAP_FAILED;
200 }
201
202 iap_info.respond_flag = 0;
203
204 iap_cmd = (pdata[0] << 8) | pdata[1];
205
206 switch(iap_cmd)
207 {
208 case IAP_CMD_IDLE:
209 iap_idle();
210 break;
211 case IAP_CMD_START:
212 iap_start();
213 break;
214 case IAP_CMD_JMP:
215 iap_jump();
216 break;
217 case IAP_CMD_GET:
218 iap_get();
219 break;
220 default:
221 status = IAP_FAILED;
222 break;
223 }
224
225 if(iap_info.respond_flag)
226 {
227 usb_iap_class_send_report(udev, iap_info.iap_tx, 64);
228 }
229
230 return status;
231}
232
238void usbd_hid_iap_in_complete(void *udev)
239{
240 if(iap_info.state == IAP_STS_JMP_WAIT)
241 {
242 iap_info.state = IAP_STS_JMP;
243 }
244}
245
251void app_loop(void)
252{
253 if(iap_info.state == IAP_STS_JMP)
254 {
255 iap_clear_upgrade_flag();
256 nvic_system_reset();
257 }
258}
259
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
nvic_system_reset
void nvic_system_reset(void)
system reset
Definition: at32f403_misc.c:50
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
IAP_CMD_IDLE
#define IAP_CMD_IDLE
iap command
Definition: hid_iap_class.h:66
IAP_CMD_GET
#define IAP_CMD_GET
Definition: hid_iap_class.h:73
SECTOR_SIZE_1K
#define SECTOR_SIZE_1K
Definition: hid_iap_class.h:59
iap_result_type
iap_result_type
Definition: hid_iap_class.h:84
IAP_ACK
#define IAP_ACK
Definition: hid_iap_class.h:80
SECTOR_SIZE_2K
#define SECTOR_SIZE_2K
Definition: hid_iap_class.h:60
IAP_UPGRADE_COMPLETE_FLAG
#define IAP_UPGRADE_COMPLETE_FLAG
Definition: hid_iap_class.h:76
FLASH_SIZE_REG
#define FLASH_SIZE_REG()
Definition: hid_iap_class.h:56
IAP_CMD_START
#define IAP_CMD_START
Definition: hid_iap_class.h:67
IAP_CMD_JMP
#define IAP_CMD_JMP
Definition: hid_iap_class.h:72
KB_TO_B
#define KB_TO_B(kb)
Definition: hid_iap_class.h:57
IAP_FAILED
@ IAP_FAILED
Definition: hid_iap_class.h:87
IAP_SUCCESS
@ IAP_SUCCESS
Definition: hid_iap_class.h:85
IAP_STS_START
@ IAP_STS_START
Definition: hid_iap_class.h:93
IAP_STS_JMP
@ IAP_STS_JMP
Definition: hid_iap_class.h:99
IAP_STS_JMP_WAIT
@ IAP_STS_JMP_WAIT
Definition: hid_iap_class.h:98
iap_info
iap_info_type iap_info
Definition: hid_iap_class.c:52
usb_iap_class_send_report
usb_sts_type usb_iap_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: hid_iap_class.c:319
iap_set_upgrade_flag
void iap_set_upgrade_flag(void)
set iap upgrade complete flag
Definition: app_led4_toggle/src/hid_iap_user.c:65
iap_idle
void iap_idle(void)
iap idle function
Definition: app_led4_toggle/src/hid_iap_user.c:122
iap_respond
void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
Definition: app_led4_toggle/src/hid_iap_user.c:175
iap_init
void iap_init(void)
iap init
Definition: app_led4_toggle/src/hid_iap_user.c:95
usbd_hid_iap_process
iap_result_type usbd_hid_iap_process(void *udev, uint8_t *pdata, uint16_t len)
usb device iap function
Definition: app_led4_toggle/src/hid_iap_user.c:192
crc_cal
uint32_t crc_cal(uint32_t addr, uint16_t nk)
crc cal
Definition: bootloader/src/hid_iap_user.c:153
iap_get_upgrade_flag
iap_result_type iap_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: app_led4_toggle/src/hid_iap_user.c:77
iap_finish
void iap_finish(void)
Definition: bootloader/src/hid_iap_user.c:313
iap_start
void iap_start(void)
iap start function
Definition: app_led4_toggle/src/hid_iap_user.c:134
pftarget
void(* pftarget)(void)
Definition: app_led4_toggle/src/hid_iap_user.c:37
iap_clear_upgrade_flag
void iap_clear_upgrade_flag(void)
clear iap upgrade flag
Definition: app_led4_toggle/src/hid_iap_user.c:53
iap_get
void iap_get()
Definition: app_led4_toggle/src/hid_iap_user.c:157
app_loop
void app_loop(void)
iap loop
Definition: app_led4_toggle/src/hid_iap_user.c:251
iap_jump
void iap_jump(void)
Definition: app_led4_toggle/src/hid_iap_user.c:146
usbd_hid_iap_in_complete
void usbd_hid_iap_in_complete(void *udev)
usb device in transfer complete function
Definition: app_led4_toggle/src/hid_iap_user.c:238
FLASH_APP_ADDRESS
#define FLASH_APP_ADDRESS
Definition: app_led3_toggle/inc/hid_iap_user.h:47
hid_iap_class.h
usb hid iap header file
iap_info_type::respond_flag
uint32_t respond_flag
Definition: hid_iap_class.h:122
iap_info_type::flag_address
uint32_t flag_address
Definition: hid_iap_class.h:114
iap_info_type::sector_size
uint32_t sector_size
Definition: hid_iap_class.h:119
iap_info_type::iap_address
uint32_t iap_address
Definition: hid_iap_class.h:113
iap_info_type::flash_start_address
uint32_t flash_start_address
Definition: hid_iap_class.h:116
iap_info_type::flash_end_address
uint32_t flash_end_address
Definition: hid_iap_class.h:117
iap_info_type::fifo_length
uint32_t fifo_length
Definition: hid_iap_class.h:109
iap_info_type::flash_size
uint32_t flash_size
Definition: hid_iap_class.h:120
iap_info_type::iap_tx
uint8_t iap_tx[0x40]
Definition: hid_iap_class.h:107
iap_info_type::app_address
uint32_t app_address
Definition: hid_iap_class.h:112
iap_info_type::state
iap_machine_state_type state
Definition: hid_iap_class.h:131


AT32F403 Firmwary Library: iap.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
app_led4_toggle/src/iap.c
Go to the documentation of this file.
1
25#include "iap.h"
26#include "usart.h"
27#include "tmr.h"
28
42void iap_command_handle(void)
43{
44 if(iap_flag==IAP_REV_FLAG_DONE)
45 {
46 flash_unlock();
47 flash_sector_erase(IAP_UPGRADE_FLAG_ADDR);
48 flash_word_program(IAP_UPGRADE_FLAG_ADDR, IAP_UPGRADE_FLAG);
49 flash_lock();
50 nvic_system_reset();
51 }
52}
53
59void iap_init(void)
60{
61 if((*(uint32_t*)IAP_UPGRADE_FLAG_ADDR) == IAP_UPGRADE_FLAG)
62 {
63 flash_unlock();
64 flash_sector_erase(IAP_UPGRADE_FLAG_ADDR);
65 flash_lock();
66 }
67}
68
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
nvic_system_reset
void nvic_system_reset(void)
system reset
Definition: at32f403_misc.c:50
iap_flag
uint8_t iap_flag
Definition: app_led3_toggle/src/usart.c:36
iap_init
void iap_init(void)
iap init.
Definition: app_led4_toggle/src/iap.c:59
iap_command_handle
void iap_command_handle(void)
iap command handle handle.
Definition: app_led4_toggle/src/iap.c:42
IAP_UPGRADE_FLAG_ADDR
#define IAP_UPGRADE_FLAG_ADDR
Definition: app_led3_toggle/inc/iap.h:50
IAP_REV_FLAG_DONE
#define IAP_REV_FLAG_DONE
Definition: app_led3_toggle/inc/usart.h:50
IAP_UPGRADE_FLAG
#define IAP_UPGRADE_FLAG
Definition: app_led3_toggle/inc/iap.h:54


AT32F403 Firmwary Library: tmr.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
app_led4_toggle/src/tmr.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "tmr.h"
27#include "iap.h"
28
42void tmr_init(void)
43{
44 crm_clocks_freq_type crm_clocks_freq_struct = {0};
45
46 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
47
48 /* enable the tmr3 global interrupt */
49 nvic_irq_enable(TMR3_GLOBAL_IRQn, 1, 0);
50
51 /* get system clock */
52 crm_clocks_freq_get(&crm_clocks_freq_struct);
53
54 /* time base configuration */
55 tmr_base_init(TMR3, 10000, crm_clocks_freq_struct.ahb_freq / 10000);
56 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
57
58 /* overflow interrupt enable */
59 tmr_interrupt_enable(TMR3, TMR_OVF_INT, TRUE);
60
61 /* enable tmr */
62 tmr_counter_enable(TMR3, TRUE);
63}
64
70void TMR3_GLOBAL_IRQHandler(void)
71{
72 if(tmr_flag_get(TMR3, TMR_OVF_FLAG) == SET)
73 {
74 tmr_flag_clear(TMR3, TMR_OVF_FLAG);
75 at32_led_toggle(LED4);
76 }
77}
78
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_OVF_FLAG
#define TMR_OVF_FLAG
Definition: at32f403_tmr.h:50
TMR_OVF_INT
#define TMR_OVF_INT
Definition: at32f403_tmr.h:72
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
TMR3_GLOBAL_IRQHandler
void TMR3_GLOBAL_IRQHandler(void)
tmr3 global interrupt handler.
Definition: app_led4_toggle/src/tmr.c:70
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led4_toggle/src/tmr.c:42
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::ahb_freq
uint32_t ahb_freq
Definition: at32f403_crm.h:452


AT32F403 Firmwary Library: usart.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
app_led4_toggle/src/usart.c
Go to the documentation of this file.
1
25#include "usart.h"
26#include "tmr.h"
27
36uint8_t iap_flag = IAP_REV_FLAG_NO;
37
43void uart_init(uint32_t baudrate)
44{
45 gpio_init_type gpio_init_struct;
46 /* enable the usart and it's io clock */
47 crm_periph_clock_enable(CRM_USART1_PERIPH_CLOCK, TRUE);
48 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
49
50 /* set default parameter */
51 gpio_default_para_init(&gpio_init_struct);
52
53 /* configure the usart1_tx pa9 */
54 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
55 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
56 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
57 gpio_init_struct.gpio_pins = GPIO_PINS_9;
58 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
59 gpio_init(GPIOA, &gpio_init_struct);
60
61 /* configure the usart1_rx pa10 */
62 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
63 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
64 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
65 gpio_init_struct.gpio_pins = GPIO_PINS_10;
66 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
67 gpio_init(GPIOA, &gpio_init_struct);
68
69 /*configure usart nvic interrupt */
70 nvic_irq_enable(USART1_IRQn, 0, 0);
71
72 /*configure usart param*/
73 usart_init(USART1, baudrate, USART_DATA_8BITS, USART_STOP_1_BIT);
74 usart_transmitter_enable(USART1, TRUE);
75 usart_receiver_enable(USART1, TRUE);
76 usart_interrupt_enable(USART1, USART_RDBF_INT, TRUE);
77 usart_enable(USART1, TRUE);
78}
79
85void USART1_IRQHandler(void)
86{
87 uint16_t reval;
88 if(usart_flag_get(USART1, USART_RDBF_FLAG) != RESET)
89 {
90 reval = usart_data_receive(USART1);
91 if((reval == 0x5A) && (iap_flag == IAP_REV_FLAG_NO))
92 iap_flag = IAP_REV_FLAG_5A;
93 else if((reval == 0xA5) && (iap_flag == IAP_REV_FLAG_5A))
94 iap_flag = IAP_REV_FLAG_DONE;
95 else
96 iap_flag = IAP_REV_FLAG_NO;
97 }
98}
99
105void back_ok(void)
106{
107 usart_data_transmit(USART1, 0xCC);
108 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
109 usart_data_transmit(USART1, 0xDD);
110 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
111}
112
118void back_err(void)
119{
120 usart_data_transmit(USART1, 0xEE);
121 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
122 usart_data_transmit(USART1, 0xFF);
123 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
124}
125
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART1_PERIPH_CLOCK
@ CRM_USART1_PERIPH_CLOCK
Definition: at32f403_crm.h:122
USART1_IRQn
@ USART1_IRQn
Definition: at32f403.h:216
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_TDC_FLAG
#define USART_TDC_FLAG
Definition: at32f403_usart.h:56
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART1_IRQHandler
void USART1_IRQHandler(void)
usart1 interrupt handler.
Definition: app_led4_toggle/src/usart.c:85
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led4_toggle/src/usart.c:43
iap_flag
uint8_t iap_flag
Definition: app_led4_toggle/src/usart.c:36
back_err
void back_err(void)
command response error.
Definition: app_led4_toggle/src/usart.c:118
back_ok
void back_ok(void)
command response ok.
Definition: app_led4_toggle/src/usart.c:105
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART1
#define USART1
Definition: at32f403_usart.h:317
IAP_REV_FLAG_DONE
#define IAP_REV_FLAG_DONE
Definition: app_led3_toggle/inc/usart.h:50
IAP_REV_FLAG_NO
#define IAP_REV_FLAG_NO
Definition: app_led3_toggle/inc/usart.h:48
IAP_REV_FLAG_5A
#define IAP_REV_FLAG_5A
Definition: app_led3_toggle/inc/usart.h:49
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219


AT32F403 Firmwary Library: at32f403.h Source File

  • libraries
  • cmsis
  • cm4
  • device_support
at32f403.h
Go to the documentation of this file.
1
25#ifndef __AT32F403_H
26#define __AT32F403_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#if defined (__CC_ARM)
33 #pragma anon_unions
34#endif
35
53#if !defined (AT32F403CCT6) && !defined (AT32F403CET6) && !defined (AT32F403CGT6) && \
54 !defined (AT32F403RCT6) && !defined (AT32F403RET6) && !defined (AT32F403RGT6) && \
55 !defined (AT32F403VCT6) && !defined (AT32F403VET6) && !defined (AT32F403VGT6) && \
56 !defined (AT32F403ZCT6) && !defined (AT32F403ZET6) && !defined (AT32F403ZGT6) && \
57 !defined (AT32F403CCU6) && !defined (AT32F403CEU6) && !defined (AT32F403CGU6)
58
59 #error "Please select first the target device used in your application (in at32f403.h file)"
60#endif
61
62#if defined (AT32F403CCT6) || defined (AT32F403CET6) || defined (AT32F403CGT6) || \
63 defined (AT32F403RCT6) || defined (AT32F403RET6) || defined (AT32F403RGT6) || \
64 defined (AT32F403VCT6) || defined (AT32F403VET6) || defined (AT32F403VGT6) || \
65 defined (AT32F403ZCT6) || defined (AT32F403ZET6) || defined (AT32F403ZGT6) || \
66 defined (AT32F403CCU6) || defined (AT32F403CEU6) || defined (AT32F403CGU6)
67
68 #define AT32F403xx
69#endif
70
74#if defined (AT32F403ZCT6) || defined (AT32F403ZET6) || defined (AT32F403ZGT6)
75
76 #define AT32F403Zx
77#endif
78
79#if defined (AT32F403VCT6) || defined (AT32F403VET6) || defined (AT32F403VGT6)
80
81 #define AT32F403Vx
82#endif
83
84#if defined (AT32F403RCT6) || defined (AT32F403RET6) || defined (AT32F403RGT6)
85
86 #define AT32F403Rx
87#endif
88
89#if defined (AT32F403CCT6) || defined (AT32F403CET6) || defined (AT32F403CGT6) || \
90 defined (AT32F403CCU6) || defined (AT32F403CEU6) || defined (AT32F403CGU6)
91
92 #define AT32F403Cx
93#endif
94
98#if defined (AT32F403CCT6) || defined (AT32F403RCT6) || defined (AT32F403VCT6) || \
99 defined (AT32F403ZCT6) || defined (AT32F403CCU6)
100
101 #define AT32F403xC
102#endif
103
104#if defined (AT32F403CET6) || defined (AT32F403RET6) || defined (AT32F403VET6) || \
105 defined (AT32F403ZET6) || defined (AT32F403CEU6)
106
107 #define AT32F403xE
108#endif
109
110#if defined (AT32F403CGT6) || defined (AT32F403RGT6) || defined (AT32F403VGT6) || \
111 defined (AT32F403ZGT6) || defined (AT32F403CGU6)
112
113 #define AT32F403xG
114#endif
115
116#ifndef USE_STDPERIPH_DRIVER
122 #ifdef _RTE_
123 #include "RTE_Components.h"
124 #ifdef RTE_DEVICE_STDPERIPH_FRAMEWORK
125 #define USE_STDPERIPH_DRIVER
126 #endif
127 #endif
128#endif
129
133#define __AT32F403_LIBRARY_VERSION_MAJOR (0x02)
134#define __AT32F403_LIBRARY_VERSION_MIDDLE (0x00)
135#define __AT32F403_LIBRARY_VERSION_MINOR (0x08)
136#define __AT32F403_LIBRARY_VERSION_RC (0x00)
137#define __AT32F403_LIBRARY_VERSION ((__AT32F403_LIBRARY_VERSION_MAJOR << 24) | \
138 (__AT32F403_LIBRARY_VERSION_MIDDLE << 16) | \
139 (__AT32F403_LIBRARY_VERSION_MINOR << 8) | \
140 (__AT32F403_LIBRARY_VERSION_RC))
141
153#define __CM4_REV 0x0001U
154#define __MPU_PRESENT 1
155#define __NVIC_PRIO_BITS 4
156#define __Vendor_SysTickConfig 0
157#define __FPU_PRESENT 1U
163typedef enum IRQn
164{
165 /****** cortex-m4 processor exceptions numbers ***************************************************/
166 Reset_IRQn = -15,
167 NonMaskableInt_IRQn = -14,
168 HardFault_IRQn = -13,
169 MemoryManagement_IRQn = -12,
170 BusFault_IRQn = -11,
171 UsageFault_IRQn = -10,
172 SVCall_IRQn = -5,
173 DebugMonitor_IRQn = -4,
174 PendSV_IRQn = -2,
175 SysTick_IRQn = -1,
177 /****** at32 specific interrupt numbers *********************************************************/
178 WWDT_IRQn = 0,
179 PVM_IRQn = 1,
180 TAMPER_IRQn = 2,
181 RTC_IRQn = 3,
182 FLASH_IRQn = 4,
183 CRM_IRQn = 5,
184 EXINT0_IRQn = 6,
185 EXINT1_IRQn = 7,
186 EXINT2_IRQn = 8,
187 EXINT3_IRQn = 9,
188 EXINT4_IRQn = 10,
189 DMA1_Channel1_IRQn = 11,
190 DMA1_Channel2_IRQn = 12,
191 DMA1_Channel3_IRQn = 13,
192 DMA1_Channel4_IRQn = 14,
193 DMA1_Channel5_IRQn = 15,
194 DMA1_Channel6_IRQn = 16,
195 DMA1_Channel7_IRQn = 17,
197 ADC1_2_IRQn = 18,
198 USBFS_H_CAN1_TX_IRQn = 19,
199 USBFS_L_CAN1_RX0_IRQn = 20,
200 CAN1_RX1_IRQn = 21,
201 CAN1_SE_IRQn = 22,
202 EXINT9_5_IRQn = 23,
203 TMR1_BRK_TMR9_IRQn = 24,
204 TMR1_OVF_TMR10_IRQn = 25,
205 TMR1_TRG_HALL_TMR11_IRQn = 26,
206 TMR1_CH_IRQn = 27,
207 TMR2_GLOBAL_IRQn = 28,
208 TMR3_GLOBAL_IRQn = 29,
209 TMR4_GLOBAL_IRQn = 30,
210 I2C1_EVT_IRQn = 31,
211 I2C1_ERR_IRQn = 32,
212 I2C2_EVT_IRQn = 33,
213 I2C2_ERR_IRQn = 34,
214 SPI1_IRQn = 35,
215 SPI2_IRQn = 36,
216 USART1_IRQn = 37,
217 USART2_IRQn = 38,
218 USART3_IRQn = 39,
219 EXINT15_10_IRQn = 40,
220 RTCAlarm_IRQn = 41,
221 USBFSWakeUp_IRQn = 42,
222 TMR8_BRK_TMR12_IRQn = 43,
223 TMR8_OVF_TMR13_IRQn = 44,
224 TMR8_TRG_HALL_TMR14_IRQn = 45,
225 TMR8_CH_IRQn = 46,
226 ADC3_IRQn = 47,
227 XMC_IRQn = 48,
228 SDIO1_IRQn = 49,
229 TMR5_GLOBAL_IRQn = 50,
230 SPI3_IRQn = 51,
231 UART4_IRQn = 52,
232 UART5_IRQn = 53,
233 TMR6_GLOBAL_IRQn = 54,
234 TMR7_GLOBAL_IRQn = 55,
235 DMA2_Channel1_IRQn = 56,
236 DMA2_Channel2_IRQn = 57,
237 DMA2_Channel3_IRQn = 58,
238 DMA2_Channel4_5_IRQn = 59,
239 SDIO2_IRQn = 60,
240 I2C3_EVT_IRQn = 61,
241 I2C3_ERR_IRQn = 62,
242 SPI4_IRQn = 63,
243 TMR15_BRK_IRQn = 68,
244 TMR15_OVF_IRQn = 69,
245 TMR15_TRG_HALL_IRQn = 70,
246 TMR15_IRQn = 71,
248} IRQn_Type;
249
254#include "core_cm4.h"
255#include "system_at32f403.h"
256#include <stdint.h>
257
262typedef int32_t INT32;
263typedef int16_t INT16;
264typedef int8_t INT8;
265typedef uint32_t UINT32;
266typedef uint16_t UINT16;
267typedef uint8_t UINT8;
268
269typedef int32_t s32;
270typedef int16_t s16;
271typedef int8_t s8;
272
273typedef const int32_t sc32;
274typedef const int16_t sc16;
275typedef const int8_t sc8;
277typedef __IO int32_t vs32;
278typedef __IO int16_t vs16;
279typedef __IO int8_t vs8;
280
281typedef __I int32_t vsc32;
282typedef __I int16_t vsc16;
283typedef __I int8_t vsc8;
285typedef uint32_t u32;
286typedef uint16_t u16;
287typedef uint8_t u8;
288
289typedef const uint32_t uc32;
290typedef const uint16_t uc16;
291typedef const uint8_t uc8;
293typedef __IO uint32_t vu32;
294typedef __IO uint16_t vu16;
295typedef __IO uint8_t vu8;
296
297typedef __I uint32_t vuc32;
298typedef __I uint16_t vuc16;
299typedef __I uint8_t vuc8;
304typedef enum {RESET = 0, SET = !RESET} flag_status;
305
309typedef enum {FALSE = 0, TRUE = !FALSE} confirm_state;
310
314typedef enum {ERROR = 0, SUCCESS = !ERROR} error_status;
315
324#define REG8(addr) *(volatile uint8_t *)(addr)
325#define REG16(addr) *(volatile uint16_t *)(addr)
326#define REG32(addr) *(volatile uint32_t *)(addr)
327
328#define MAKE_VALUE(reg_offset, bit_num) (uint32_t)(((reg_offset) << 16) | (bit_num & 0x1F))
329
330#define PERIPH_REG(periph_base, value) REG32((periph_base + (value >> 16)))
331#define PERIPH_REG_BIT(value) (0x1U << (value & 0x1F))
332
341#define FLASH_BASE ((uint32_t)0x08000000)
342#define SPIM_FLASH_BASE ((uint32_t)0x08400000)
343#define USD_BASE ((uint32_t)0x1FFFF800)
344#define SRAM_BASE ((uint32_t)0x20000000)
345#define PERIPH_BASE ((uint32_t)0x40000000)
346#define XMC_REG_BASE ((uint32_t)0xA0000000)
347#define DEBUG_BASE ((uint32_t)0xE0042000)
348
349#define APB1PERIPH_BASE (PERIPH_BASE + 0x00000)
350#define APB2PERIPH_BASE (PERIPH_BASE + 0x10000)
351#define AHBPERIPH_BASE (PERIPH_BASE + 0x20000)
352
353/* apb1 bus base address */
354#define TMR2_BASE (APB1PERIPH_BASE + 0x0000)
355#define TMR3_BASE (APB1PERIPH_BASE + 0x0400)
356#define TMR4_BASE (APB1PERIPH_BASE + 0x0800)
357#define TMR5_BASE (APB1PERIPH_BASE + 0x0C00)
358#define TMR6_BASE (APB1PERIPH_BASE + 0x1000)
359#define TMR7_BASE (APB1PERIPH_BASE + 0x1400)
360#define TMR12_BASE (APB1PERIPH_BASE + 0x1800)
361#define TMR13_BASE (APB1PERIPH_BASE + 0x1C00)
362#define TMR14_BASE (APB1PERIPH_BASE + 0x2000)
363#define RTC_BASE (APB1PERIPH_BASE + 0x2800)
364#define WWDT_BASE (APB1PERIPH_BASE + 0x2C00)
365#define WDT_BASE (APB1PERIPH_BASE + 0x3000)
366#define SPI2_BASE (APB1PERIPH_BASE + 0x3800)
367#define SPI3_BASE (APB1PERIPH_BASE + 0x3C00)
368#define SPI4_BASE (APB1PERIPH_BASE + 0x4000)
369#define USART2_BASE (APB1PERIPH_BASE + 0x4400)
370#define USART3_BASE (APB1PERIPH_BASE + 0x4800)
371#define UART4_BASE (APB1PERIPH_BASE + 0x4C00)
372#define UART5_BASE (APB1PERIPH_BASE + 0x5000)
373#define I2C1_BASE (APB1PERIPH_BASE + 0x5400)
374#define I2C2_BASE (APB1PERIPH_BASE + 0x5800)
375#define USBFS_BASE (APB1PERIPH_BASE + 0x5C00)
376#define CAN1_BASE (APB1PERIPH_BASE + 0x6400)
377#define I2C3_BASE (APB1PERIPH_BASE + 0x6800)
378#define BPR_BASE (APB1PERIPH_BASE + 0x6C00)
379#define PWC_BASE (APB1PERIPH_BASE + 0x7000)
380#define DAC_BASE (APB1PERIPH_BASE + 0x7400)
381/* apb2 bus base address */
382#define IOMUX_BASE (APB2PERIPH_BASE + 0x0000)
383#define EXINT_BASE (APB2PERIPH_BASE + 0x0400)
384#define GPIOA_BASE (APB2PERIPH_BASE + 0x0800)
385#define GPIOB_BASE (APB2PERIPH_BASE + 0x0C00)
386#define GPIOC_BASE (APB2PERIPH_BASE + 0x1000)
387#define GPIOD_BASE (APB2PERIPH_BASE + 0x1400)
388#define GPIOE_BASE (APB2PERIPH_BASE + 0x1800)
389#define GPIOF_BASE (APB2PERIPH_BASE + 0x1C00)
390#define GPIOG_BASE (APB2PERIPH_BASE + 0x2000)
391#define ADC1_BASE (APB2PERIPH_BASE + 0x2400)
392#define ADC2_BASE (APB2PERIPH_BASE + 0x2800)
393#define TMR1_BASE (APB2PERIPH_BASE + 0x2C00)
394#define SPI1_BASE (APB2PERIPH_BASE + 0x3000)
395#define TMR8_BASE (APB2PERIPH_BASE + 0x3400)
396#define USART1_BASE (APB2PERIPH_BASE + 0x3800)
397#define ADC3_BASE (APB2PERIPH_BASE + 0x3C00)
398#define TMR15_BASE (APB2PERIPH_BASE + 0x4000)
399#define TMR9_BASE (APB2PERIPH_BASE + 0x4C00)
400#define TMR10_BASE (APB2PERIPH_BASE + 0x5000)
401#define TMR11_BASE (APB2PERIPH_BASE + 0x5400)
402#define SDIO1_BASE (APB2PERIPH_BASE + 0x8000)
403/* ahb bus base address */
404#define DMA1_BASE (AHBPERIPH_BASE + 0x0000)
405#define DMA1_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0008)
406#define DMA1_CHANNEL2_BASE (AHBPERIPH_BASE + 0x001C)
407#define DMA1_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0030)
408#define DMA1_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0044)
409#define DMA1_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0058)
410#define DMA1_CHANNEL6_BASE (AHBPERIPH_BASE + 0x006C)
411#define DMA1_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0080)
412#define DMA2_BASE (AHBPERIPH_BASE + 0x0400)
413#define DMA2_CHANNEL1_BASE (AHBPERIPH_BASE + 0x0408)
414#define DMA2_CHANNEL2_BASE (AHBPERIPH_BASE + 0x041C)
415#define DMA2_CHANNEL3_BASE (AHBPERIPH_BASE + 0x0430)
416#define DMA2_CHANNEL4_BASE (AHBPERIPH_BASE + 0x0444)
417#define DMA2_CHANNEL5_BASE (AHBPERIPH_BASE + 0x0458)
418#define DMA2_CHANNEL6_BASE (AHBPERIPH_BASE + 0x046C)
419#define DMA2_CHANNEL7_BASE (AHBPERIPH_BASE + 0x0480)
420#define CRM_BASE (AHBPERIPH_BASE + 0x1000)
421#define FLASH_REG_BASE (AHBPERIPH_BASE + 0x2000)
422#define CRC_BASE (AHBPERIPH_BASE + 0x3000)
423#define SDIO2_BASE (AHBPERIPH_BASE + 0x3400)
424#define XMC_BANK1_REG_BASE (XMC_REG_BASE + 0x0000)
425#define XMC_BANK1E_REG_BASE (XMC_REG_BASE + 0x0104)
426#define XMC_BANK1E_H_BASE (XMC_REG_BASE + 0x0220)
427#define XMC_BANK2_REG_BASE (XMC_REG_BASE + 0x0060)
428#define XMC_BANK3_REG_BASE (XMC_REG_BASE + 0x0080)
429#define XMC_BANK4_REG_BASE (XMC_REG_BASE + 0x00A0)
430
443#include "at32f403_def.h"
444#include "at32f403_conf.h"
445
446#ifdef __cplusplus
447}
448#endif
449
450#endif
at32f403_def.h
at32f403 macros header file
IRQn_Type
enum IRQn IRQn_Type
at32f403 interrupt number definition, according to the selected device in Library_configuration_secti...
IRQn
IRQn
at32f403 interrupt number definition, according to the selected device in Library_configuration_secti...
Definition: at32f403.h:164
PendSV_IRQn
@ PendSV_IRQn
Definition: at32f403.h:174
TMR15_BRK_IRQn
@ TMR15_BRK_IRQn
Definition: at32f403.h:243
TMR1_BRK_TMR9_IRQn
@ TMR1_BRK_TMR9_IRQn
Definition: at32f403.h:203
TMR6_GLOBAL_IRQn
@ TMR6_GLOBAL_IRQn
Definition: at32f403.h:233
ADC1_2_IRQn
@ ADC1_2_IRQn
Definition: at32f403.h:197
DMA1_Channel2_IRQn
@ DMA1_Channel2_IRQn
Definition: at32f403.h:190
TMR8_TRG_HALL_TMR14_IRQn
@ TMR8_TRG_HALL_TMR14_IRQn
Definition: at32f403.h:224
TMR1_OVF_TMR10_IRQn
@ TMR1_OVF_TMR10_IRQn
Definition: at32f403.h:204
XMC_IRQn
@ XMC_IRQn
Definition: at32f403.h:227
TAMPER_IRQn
@ TAMPER_IRQn
Definition: at32f403.h:180
TMR8_CH_IRQn
@ TMR8_CH_IRQn
Definition: at32f403.h:225
MemoryManagement_IRQn
@ MemoryManagement_IRQn
Definition: at32f403.h:169
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
DMA1_Channel3_IRQn
@ DMA1_Channel3_IRQn
Definition: at32f403.h:191
SDIO2_IRQn
@ SDIO2_IRQn
Definition: at32f403.h:239
TMR8_OVF_TMR13_IRQn
@ TMR8_OVF_TMR13_IRQn
Definition: at32f403.h:223
USART2_IRQn
@ USART2_IRQn
Definition: at32f403.h:217
I2C3_ERR_IRQn
@ I2C3_ERR_IRQn
Definition: at32f403.h:241
I2C1_ERR_IRQn
@ I2C1_ERR_IRQn
Definition: at32f403.h:211
SVCall_IRQn
@ SVCall_IRQn
Definition: at32f403.h:172
SPI3_IRQn
@ SPI3_IRQn
Definition: at32f403.h:230
I2C1_EVT_IRQn
@ I2C1_EVT_IRQn
Definition: at32f403.h:210
SPI2_IRQn
@ SPI2_IRQn
Definition: at32f403.h:215
Reset_IRQn
@ Reset_IRQn
Definition: at32f403.h:166
ADC3_IRQn
@ ADC3_IRQn
Definition: at32f403.h:226
TMR8_BRK_TMR12_IRQn
@ TMR8_BRK_TMR12_IRQn
Definition: at32f403.h:222
RTCAlarm_IRQn
@ RTCAlarm_IRQn
Definition: at32f403.h:220
DMA1_Channel7_IRQn
@ DMA1_Channel7_IRQn
Definition: at32f403.h:195
UsageFault_IRQn
@ UsageFault_IRQn
Definition: at32f403.h:171
SysTick_IRQn
@ SysTick_IRQn
Definition: at32f403.h:175
EXINT9_5_IRQn
@ EXINT9_5_IRQn
Definition: at32f403.h:202
EXINT1_IRQn
@ EXINT1_IRQn
Definition: at32f403.h:185
BusFault_IRQn
@ BusFault_IRQn
Definition: at32f403.h:170
WWDT_IRQn
@ WWDT_IRQn
Definition: at32f403.h:178
TMR4_GLOBAL_IRQn
@ TMR4_GLOBAL_IRQn
Definition: at32f403.h:209
USBFSWakeUp_IRQn
@ USBFSWakeUp_IRQn
Definition: at32f403.h:221
DebugMonitor_IRQn
@ DebugMonitor_IRQn
Definition: at32f403.h:173
EXINT0_IRQn
@ EXINT0_IRQn
Definition: at32f403.h:184
TMR15_OVF_IRQn
@ TMR15_OVF_IRQn
Definition: at32f403.h:244
FLASH_IRQn
@ FLASH_IRQn
Definition: at32f403.h:182
CRM_IRQn
@ CRM_IRQn
Definition: at32f403.h:183
PVM_IRQn
@ PVM_IRQn
Definition: at32f403.h:179
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
SDIO1_IRQn
@ SDIO1_IRQn
Definition: at32f403.h:228
TMR5_GLOBAL_IRQn
@ TMR5_GLOBAL_IRQn
Definition: at32f403.h:229
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
EXINT3_IRQn
@ EXINT3_IRQn
Definition: at32f403.h:187
SPI4_IRQn
@ SPI4_IRQn
Definition: at32f403.h:242
DMA1_Channel6_IRQn
@ DMA1_Channel6_IRQn
Definition: at32f403.h:194
SPI1_IRQn
@ SPI1_IRQn
Definition: at32f403.h:214
HardFault_IRQn
@ HardFault_IRQn
Definition: at32f403.h:168
TMR7_GLOBAL_IRQn
@ TMR7_GLOBAL_IRQn
Definition: at32f403.h:234
USBFS_H_CAN1_TX_IRQn
@ USBFS_H_CAN1_TX_IRQn
Definition: at32f403.h:198
EXINT15_10_IRQn
@ EXINT15_10_IRQn
Definition: at32f403.h:219
DMA2_Channel1_IRQn
@ DMA2_Channel1_IRQn
Definition: at32f403.h:235
DMA1_Channel5_IRQn
@ DMA1_Channel5_IRQn
Definition: at32f403.h:193
UART5_IRQn
@ UART5_IRQn
Definition: at32f403.h:232
DMA2_Channel2_IRQn
@ DMA2_Channel2_IRQn
Definition: at32f403.h:236
TMR15_IRQn
@ TMR15_IRQn
Definition: at32f403.h:246
TMR1_TRG_HALL_TMR11_IRQn
@ TMR1_TRG_HALL_TMR11_IRQn
Definition: at32f403.h:205
TMR1_CH_IRQn
@ TMR1_CH_IRQn
Definition: at32f403.h:206
EXINT4_IRQn
@ EXINT4_IRQn
Definition: at32f403.h:188
I2C2_ERR_IRQn
@ I2C2_ERR_IRQn
Definition: at32f403.h:213
USART1_IRQn
@ USART1_IRQn
Definition: at32f403.h:216
DMA2_Channel3_IRQn
@ DMA2_Channel3_IRQn
Definition: at32f403.h:237
RTC_IRQn
@ RTC_IRQn
Definition: at32f403.h:181
DMA2_Channel4_5_IRQn
@ DMA2_Channel4_5_IRQn
Definition: at32f403.h:238
CAN1_SE_IRQn
@ CAN1_SE_IRQn
Definition: at32f403.h:201
NonMaskableInt_IRQn
@ NonMaskableInt_IRQn
Definition: at32f403.h:167
UART4_IRQn
@ UART4_IRQn
Definition: at32f403.h:231
DMA1_Channel4_IRQn
@ DMA1_Channel4_IRQn
Definition: at32f403.h:192
EXINT2_IRQn
@ EXINT2_IRQn
Definition: at32f403.h:186
I2C2_EVT_IRQn
@ I2C2_EVT_IRQn
Definition: at32f403.h:212
TMR15_TRG_HALL_IRQn
@ TMR15_TRG_HALL_IRQn
Definition: at32f403.h:245
CAN1_RX1_IRQn
@ CAN1_RX1_IRQn
Definition: at32f403.h:200
TMR2_GLOBAL_IRQn
@ TMR2_GLOBAL_IRQn
Definition: at32f403.h:207
USART3_IRQn
@ USART3_IRQn
Definition: at32f403.h:218
I2C3_EVT_IRQn
@ I2C3_EVT_IRQn
Definition: at32f403.h:240
vu32
__IO uint32_t vu32
Definition: at32f403.h:293
INT8
int8_t INT8
Definition: at32f403.h:264
vs16
__IO int16_t vs16
Definition: at32f403.h:278
error_status
error_status
error status
Definition: at32f403.h:314
INT32
int32_t INT32
Definition: at32f403.h:262
vuc32
__I uint32_t vuc32
Definition: at32f403.h:297
sc8
const int8_t sc8
Definition: at32f403.h:275
vsc16
__I int16_t vsc16
Definition: at32f403.h:282
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
vsc8
__I int8_t vsc8
Definition: at32f403.h:283
vs32
__IO int32_t vs32
Definition: at32f403.h:277
vu8
__IO uint8_t vu8
Definition: at32f403.h:295
uc32
const uint32_t uc32
Definition: at32f403.h:289
sc16
const int16_t sc16
Definition: at32f403.h:274
vuc16
__I uint16_t vuc16
Definition: at32f403.h:298
flag_status
flag_status
flag status
Definition: at32f403.h:304
u8
uint8_t u8
Definition: at32f403.h:287
vu16
__IO uint16_t vu16
Definition: at32f403.h:294
s8
int8_t s8
Definition: at32f403.h:271
vs8
__IO int8_t vs8
Definition: at32f403.h:279
s16
int16_t s16
Definition: at32f403.h:270
vuc8
__I uint8_t vuc8
Definition: at32f403.h:299
uc16
const uint16_t uc16
Definition: at32f403.h:290
uc8
const uint8_t uc8
Definition: at32f403.h:291
INT16
int16_t INT16
Definition: at32f403.h:263
UINT16
uint16_t UINT16
Definition: at32f403.h:266
u16
uint16_t u16
Definition: at32f403.h:286
sc32
const int32_t sc32
Definition: at32f403.h:273
UINT32
uint32_t UINT32
Definition: at32f403.h:265
s32
int32_t s32
Definition: at32f403.h:269
vsc32
__I int32_t vsc32
Definition: at32f403.h:281
UINT8
uint8_t UINT8
Definition: at32f403.h:267
u32
uint32_t u32
Definition: at32f403.h:285
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
system_at32f403.h
cmsis cortex-m4 system header file.
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_adc.c Source File

  • libraries
  • drivers
  • src
at32f403_adc.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef ADC_MODULE_ENABLED
37
49void adc_reset(adc_type *adc_x)
50{
51 if(adc_x == ADC1)
52 {
53 crm_periph_reset(CRM_ADC1_PERIPH_RESET, TRUE);
54 crm_periph_reset(CRM_ADC1_PERIPH_RESET, FALSE);
55 }
56 else if(adc_x == ADC2)
57 {
58 crm_periph_reset(CRM_ADC2_PERIPH_RESET, TRUE);
59 crm_periph_reset(CRM_ADC2_PERIPH_RESET, FALSE);
60 }
61 else if(adc_x == ADC3)
62 {
63 crm_periph_reset(CRM_ADC3_PERIPH_RESET, TRUE);
64 crm_periph_reset(CRM_ADC3_PERIPH_RESET, FALSE);
65 }
66}
67
78void adc_enable(adc_type *adc_x, confirm_state new_state)
79{
80 adc_x->ctrl2_bit.adcen = new_state;
81}
82
100void adc_combine_mode_select(adc_combine_mode_type combine_mode)
101{
102 ADC1->ctrl1_bit.mssel = combine_mode;
103}
104
120void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
121{
122 adc_base_struct->sequence_mode = FALSE;
123 adc_base_struct->repeat_mode = FALSE;
124 adc_base_struct->data_align = ADC_RIGHT_ALIGNMENT;
125 adc_base_struct->ordinary_channel_length = 1;
126}
127
146void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
147{
148 adc_x->ctrl1_bit.sqen = adc_base_struct->sequence_mode;
149 adc_x->ctrl2_bit.rpen = adc_base_struct->repeat_mode;
150 adc_x->ctrl2_bit.dtalign = adc_base_struct->data_align;
151 adc_x->osq1_bit.oclen = adc_base_struct->ordinary_channel_length - 1;
152}
153
164void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
165{
166 adc_x->ctrl2_bit.ocdmaen = new_state;
167}
168
183void adc_interrupt_enable(adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
184{
185 if(new_state == TRUE)
186 {
187 adc_x->ctrl1 |= adc_int;
188 }
189 else if(new_state == FALSE)
190 {
191 adc_x->ctrl1 &= ~adc_int;
192 }
193}
194
202void adc_calibration_init(adc_type *adc_x)
203{
204 adc_x->ctrl2_bit.adcalinit = TRUE;
205}
206
214 flag_status adc_calibration_init_status_get(adc_type *adc_x)
215{
216 if(adc_x->ctrl2_bit.adcalinit)
217 {
218 return SET;
219 }
220 else
221 {
222 return RESET;
223 }
224}
225
233void adc_calibration_start(adc_type *adc_x)
234{
235 adc_x->ctrl2_bit.adcal = TRUE;
236}
237
245 flag_status adc_calibration_status_get(adc_type *adc_x)
246{
247 if(adc_x->ctrl2_bit.adcal)
248 {
249 return SET;
250 }
251 else
252 {
253 return RESET;
254 }
255}
256
273void adc_voltage_monitor_enable(adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
274{
275 adc_x->ctrl1_bit.ocvmen = FALSE;
276 adc_x->ctrl1_bit.pcvmen = FALSE;
277 adc_x->ctrl1_bit.vmsgen = FALSE;
278 adc_x->ctrl1 |= adc_voltage_monitoring;
279}
280
294void adc_voltage_monitor_threshold_value_set(adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
295{
296 adc_x->vmhb_bit.vmhb = adc_high_threshold;
297 adc_x->vmlb_bit.vmlb = adc_low_threshold;
298}
299
314void adc_voltage_monitor_single_channel_select(adc_type *adc_x, adc_channel_select_type adc_channel)
315{
316 adc_x->ctrl1_bit.vmcsel = adc_channel;
317}
318
346void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
347{
348 uint32_t tmp_reg;
349 if(adc_channel < ADC_CHANNEL_10)
350 {
351 tmp_reg = adc_x->spt2;
352 tmp_reg &= ~(0x07 << 3 * adc_channel);
353 tmp_reg |= adc_sampletime << 3 * adc_channel;
354 adc_x->spt2 = tmp_reg;
355 }
356 else
357 {
358 tmp_reg = adc_x->spt1;
359 tmp_reg &= ~(0x07 << 3 * (adc_channel - ADC_CHANNEL_10));
360 tmp_reg |= adc_sampletime << 3 * (adc_channel - ADC_CHANNEL_10);
361 adc_x->spt1 = tmp_reg;
362 }
363
364 if(adc_sequence >= 13)
365 {
366 tmp_reg = adc_x->osq1;
367 tmp_reg &= ~(0x01F << 5 * (adc_sequence - 13));
368 tmp_reg |= adc_channel << 5 * (adc_sequence - 13);
369 adc_x->osq1 = tmp_reg;
370 }
371 else if(adc_sequence >= 7)
372 {
373 tmp_reg = adc_x->osq2;
374 tmp_reg &= ~(0x01F << 5 * (adc_sequence - 7));
375 tmp_reg |= adc_channel << 5 * (adc_sequence - 7);
376 adc_x->osq2 = tmp_reg;
377 }
378 else
379 {
380 tmp_reg = adc_x->osq3;
381 tmp_reg &= ~(0x01F << 5 * (adc_sequence - 1));
382 tmp_reg |= adc_channel << 5 * (adc_sequence - 1);
383 adc_x->osq3 = tmp_reg;
384 }
385}
386
397void adc_preempt_channel_length_set(adc_type *adc_x, uint8_t adc_channel_lenght)
398{
399 adc_x->psq_bit.pclen = adc_channel_lenght - 1;
400}
401
429void adc_preempt_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
430{
431 uint32_t tmp_reg;
432 uint8_t sequence_index;
433 if(adc_channel < ADC_CHANNEL_10)
434 {
435 tmp_reg = adc_x->spt2;
436 tmp_reg &= ~(0x07 << 3 * adc_channel);
437 tmp_reg |= adc_sampletime << 3 * adc_channel;
438 adc_x->spt2 = tmp_reg;
439 }
440 else
441 {
442 tmp_reg = adc_x->spt1;
443 tmp_reg &= ~(0x07 << 3 * (adc_channel - ADC_CHANNEL_10));
444 tmp_reg |= adc_sampletime << 3 * (adc_channel - ADC_CHANNEL_10);
445 adc_x->spt1 = tmp_reg;
446 }
447
448 sequence_index = adc_sequence + 3 - adc_x->psq_bit.pclen;
449 switch(sequence_index)
450 {
451 case 1:
452 adc_x->psq_bit.psn1 = adc_channel;
453 break;
454 case 2:
455 adc_x->psq_bit.psn2 = adc_channel;
456 break;
457 case 3:
458 adc_x->psq_bit.psn3 = adc_channel;
459 break;
460 case 4:
461 adc_x->psq_bit.psn4 = adc_channel;
462 break;
463 default:
464 break;
465 }
466}
467
490void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
491{
492 if(adc_ordinary_trig > 7)
493 {
494 adc_x->ctrl2_bit.octesel_h = 1;
495 adc_x->ctrl2_bit.octesel_l = adc_ordinary_trig & 0x7;
496 }
497 else
498 {
499 adc_x->ctrl2_bit.octesel_h = 0;
500 adc_x->ctrl2_bit.octesel_l = adc_ordinary_trig & 0x7;
501 }
502 adc_x->ctrl2_bit.octen = new_state;
503}
504
527void adc_preempt_conversion_trigger_set(adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
528{
529 if(adc_preempt_trig > 7)
530 {
531 adc_x->ctrl2_bit.pctesel_h = 1;
532 adc_x->ctrl2_bit.pctesel_l = adc_preempt_trig & 0x7;
533 }
534 else
535 {
536 adc_x->ctrl2_bit.pctesel_h = 0;
537 adc_x->ctrl2_bit.pctesel_l = adc_preempt_trig & 0x7;
538 }
539 adc_x->ctrl2_bit.pcten = new_state;
540}
541
542
559void adc_preempt_offset_value_set(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value)
560{
561 switch(adc_preempt_channel)
562 {
563 case ADC_PREEMPT_CHANNEL_1:
564 adc_x->pcdto1_bit.pcdto1 = adc_offset_value;
565 break;
566 case ADC_PREEMPT_CHANNEL_2:
567 adc_x->pcdto2_bit.pcdto2 = adc_offset_value;
568 break;
569 case ADC_PREEMPT_CHANNEL_3:
570 adc_x->pcdto3_bit.pcdto3 = adc_offset_value;
571 break;
572 case ADC_PREEMPT_CHANNEL_4:
573 adc_x->pcdto4_bit.pcdto4 = adc_offset_value;
574 break;
575 default:
576 break;
577 }
578}
579
590void adc_ordinary_part_count_set(adc_type *adc_x, uint8_t adc_channel_count)
591{
592
593 adc_x->ctrl1_bit.ocpcnt = adc_channel_count - 1;
594}
595
605void adc_ordinary_part_mode_enable(adc_type *adc_x, confirm_state new_state)
606{
607 adc_x->ctrl1_bit.ocpen = new_state;
608}
609
619void adc_preempt_part_mode_enable(adc_type *adc_x, confirm_state new_state)
620{
621 adc_x->ctrl1_bit.pcpen = new_state;
622}
623
633void adc_preempt_auto_mode_enable(adc_type *adc_x, confirm_state new_state)
634{
635 adc_x->ctrl1_bit.pcautoen = new_state;
636}
637
645void adc_tempersensor_vintrv_enable(confirm_state new_state)
646{
647 ADC1->ctrl2_bit.itsrven = new_state;
648}
649
659void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
660{
661 adc_x->ctrl2_bit.ocswtrg = new_state;
662}
663
671 flag_status adc_ordinary_software_trigger_status_get(adc_type *adc_x)
672{
673 if(adc_x->ctrl2_bit.ocswtrg)
674 {
675 return SET;
676 }
677 else
678 {
679 return RESET;
680 }
681}
682
692void adc_preempt_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
693{
694 adc_x->ctrl2_bit.pcswtrg = new_state;
695}
696
704 flag_status adc_preempt_software_trigger_status_get(adc_type *adc_x)
705{
706 if(adc_x->ctrl2_bit.pcswtrg)
707 {
708 return SET;
709 }
710 else
711 {
712 return RESET;
713 }
714}
715
723uint16_t adc_ordinary_conversion_data_get(adc_type *adc_x)
724{
725 return (uint16_t)(adc_x->odt_bit.odt);
726}
727
732uint32_t adc_combine_ordinary_conversion_data_get(void)
733{
734 return (uint32_t)(ADC1->odt);
735}
736
750uint16_t adc_preempt_conversion_data_get(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
751{
752 uint16_t preempt_conv_data_index = 0;
753 switch(adc_preempt_channel)
754 {
755 case ADC_PREEMPT_CHANNEL_1:
756 preempt_conv_data_index = (uint16_t)(adc_x->pdt1_bit.pdt1);
757 break;
758 case ADC_PREEMPT_CHANNEL_2:
759 preempt_conv_data_index = (uint16_t)(adc_x->pdt2_bit.pdt2);
760 break;
761 case ADC_PREEMPT_CHANNEL_3:
762 preempt_conv_data_index = (uint16_t)(adc_x->pdt3_bit.pdt3);
763 break;
764 case ADC_PREEMPT_CHANNEL_4:
765 preempt_conv_data_index = (uint16_t)(adc_x->pdt4_bit.pdt4);
766 break;
767 default:
768 break;
769 }
770 return preempt_conv_data_index;
771}
772
787 flag_status adc_flag_get(adc_type *adc_x, uint8_t adc_flag)
788{
789 flag_status status = RESET;
790
791 if((adc_x->sts & adc_flag) == RESET)
792 {
793 status = RESET;
794 }
795 else
796 {
797 status = SET;
798 }
799 return status;
800}
801
814 flag_status adc_interrupt_flag_get(adc_type *adc_x, uint8_t adc_flag)
815{
816 flag_status status = RESET;
817 switch(adc_flag)
818 {
819 case ADC_VMOR_FLAG:
820 if(adc_x->sts_bit.vmor && adc_x->ctrl1_bit.vmorien)
821 {
822 status = SET;
823 }
824 break;
825 case ADC_CCE_FLAG:
826 if(adc_x->sts_bit.cce && adc_x->ctrl1_bit.cceien)
827 {
828 status = SET;
829 }
830 break;
831 case ADC_PCCE_FLAG:
832 if(adc_x->sts_bit.pcce && adc_x->ctrl1_bit.pcceien)
833 {
834 status = SET;
835 }
836 break;
837 default:
838 break;
839 }
840 return status;
841}
842
857void adc_flag_clear(adc_type *adc_x, uint32_t adc_flag)
858{
859 adc_x->sts = ~adc_flag;
860}
861
866#endif
867
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
adc_voltage_monitoring_type
adc_voltage_monitoring_type
adc voltage_monitoring type
Definition: at32f403_adc.h:240
adc_channel_select_type
adc_channel_select_type
adc channel select type
Definition: at32f403_adc.h:107
adc_sampletime_select_type
adc_sampletime_select_type
adc sampletime select type
Definition: at32f403_adc.h:132
adc_preempt_trig_select_type
adc_preempt_trig_select_type
adc preempt group trigger event select type
Definition: at32f403_adc.h:188
adc_combine_mode_type
adc_combine_mode_type
adc combine mode type(these options are reserved in adc2 and adc3)
Definition: at32f403_adc.h:81
adc_ordinary_trig_select_type
adc_ordinary_trig_select_type
adc ordinary group trigger event select type
Definition: at32f403_adc.h:147
adc_preempt_channel_type
adc_preempt_channel_type
adc preempt channel type
Definition: at32f403_adc.h:229
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_10
@ ADC_CHANNEL_10
Definition: at32f403_adc.h:118
ADC_PREEMPT_CHANNEL_3
@ ADC_PREEMPT_CHANNEL_3
Definition: at32f403_adc.h:232
ADC_PREEMPT_CHANNEL_4
@ ADC_PREEMPT_CHANNEL_4
Definition: at32f403_adc.h:233
ADC_PREEMPT_CHANNEL_2
@ ADC_PREEMPT_CHANNEL_2
Definition: at32f403_adc.h:231
ADC_PREEMPT_CHANNEL_1
@ ADC_PREEMPT_CHANNEL_1
Definition: at32f403_adc.h:230
ADC_PCCE_FLAG
#define ADC_PCCE_FLAG
Definition: at32f403_adc.h:65
ADC_VMOR_FLAG
#define ADC_VMOR_FLAG
Definition: at32f403_adc.h:63
ADC_CCE_FLAG
#define ADC_CCE_FLAG
Definition: at32f403_adc.h:64
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_voltage_monitor_enable
void adc_voltage_monitor_enable(adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified ...
Definition: at32f403_adc.c:273
adc_voltage_monitor_single_channel_select
void adc_voltage_monitor_single_channel_select(adc_type *adc_x, adc_channel_select_type adc_channel)
select the voltage monitoring's channel of the specified adc peripheral.
Definition: at32f403_adc.c:314
adc_ordinary_conversion_data_get
uint16_t adc_ordinary_conversion_data_get(adc_type *adc_x)
return the last conversion data for ordinary channel of the specified adc peripheral.
Definition: at32f403_adc.c:723
adc_preempt_offset_value_set
void adc_preempt_offset_value_set(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value)
set preempt channel's conversion value offset of the specified adc peripheral.
Definition: at32f403_adc.c:559
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_ordinary_software_trigger_status_get
flag_status adc_ordinary_software_trigger_status_get(adc_type *adc_x)
get ordinary software start conversion status of the specified adc peripheral.
Definition: at32f403_adc.c:671
adc_preempt_auto_mode_enable
void adc_preempt_auto_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable automatic preempt group conversion of the specified adc peripheral.
Definition: at32f403_adc.c:633
adc_tempersensor_vintrv_enable
void adc_tempersensor_vintrv_enable(confirm_state new_state)
enable or disable the temperature sensor and vintrv channel.
Definition: at32f403_adc.c:645
adc_preempt_software_trigger_status_get
flag_status adc_preempt_software_trigger_status_get(adc_type *adc_x)
get preempt software start conversion status of the specified adc peripheral.
Definition: at32f403_adc.c:704
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_ordinary_part_count_set
void adc_ordinary_part_count_set(adc_type *adc_x, uint8_t adc_channel_count)
set partitioned mode channel count of the specified adc peripheral.
Definition: at32f403_adc.c:590
adc_preempt_conversion_data_get
uint16_t adc_preempt_conversion_data_get(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral.
Definition: at32f403_adc.c:750
adc_flag_clear
void adc_flag_clear(adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral.
Definition: at32f403_adc.c:857
adc_interrupt_enable
void adc_interrupt_enable(adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts.
Definition: at32f403_adc.c:183
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_interrupt_flag_get
flag_status adc_interrupt_flag_get(adc_type *adc_x, uint8_t adc_flag)
get interrupt flag of the specified adc peripheral.
Definition: at32f403_adc.c:814
adc_voltage_monitor_threshold_value_set
void adc_voltage_monitor_threshold_value_set(adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
set voltage monitoring's high and low thresholds value of the specified adc peripheral.
Definition: at32f403_adc.c:294
adc_preempt_part_mode_enable
void adc_preempt_part_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on preempt channel of the specified adc peripheral.
Definition: at32f403_adc.c:619
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_preempt_conversion_trigger_set
void adc_preempt_conversion_trigger_set(adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specif...
Definition: at32f403_adc.c:527
adc_combine_ordinary_conversion_data_get
uint32_t adc_combine_ordinary_conversion_data_get(void)
return the last conversion data for ordinary channel of combine adc(adc1 and adc2).
Definition: at32f403_adc.c:732
adc_flag_get
flag_status adc_flag_get(adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral.
Definition: at32f403_adc.c:787
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_preempt_channel_set
void adc_preempt_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc ...
Definition: at32f403_adc.c:429
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_ordinary_part_mode_enable
void adc_ordinary_part_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on ordinary channel of the specified adc peripheral.
Definition: at32f403_adc.c:605
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_preempt_channel_length_set
void adc_preempt_channel_length_set(adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral.
Definition: at32f403_adc.c:397
adc_reset
void adc_reset(adc_type *adc_x)
deinitialize the adc peripheral registers to their default reset values.
Definition: at32f403_adc.c:49
adc_preempt_software_trigger_enable
void adc_preempt_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable preempt software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:692
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC1
#define ADC1
Definition: at32f403_adc.h:601
ADC2
#define ADC2
Definition: at32f403_adc.h:602
ADC3
#define ADC3
Definition: at32f403_adc.h:603
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
CRM_ADC2_PERIPH_RESET
@ CRM_ADC2_PERIPH_RESET
Definition: at32f403_crm.h:173
CRM_ADC3_PERIPH_RESET
@ CRM_ADC3_PERIPH_RESET
Definition: at32f403_crm.h:178
CRM_ADC1_PERIPH_RESET
@ CRM_ADC1_PERIPH_RESET
Definition: at32f403_crm.h:172
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
adc_type
type define adc register all
Definition: at32f403_adc.h:265
adc_type::pcce
__IO uint32_t pcce
Definition: at32f403_adc.h:277
adc_type::dtalign
__IO uint32_t dtalign
Definition: at32f403_adc.h:325
adc_type::osq2
__IO uint32_t osq2
Definition: at32f403_adc.h:482
adc_type::pdt3_bit
struct adc_type::@34::@57 pdt3_bit
adc_type::ocdmaen
__IO uint32_t ocdmaen
Definition: at32f403_adc.h:323
adc_type::ocswtrg
__IO uint32_t ocswtrg
Definition: at32f403_adc.h:332
adc_type::rpen
__IO uint32_t rpen
Definition: at32f403_adc.h:319
adc_type::sqen
__IO uint32_t sqen
Definition: at32f403_adc.h:296
adc_type::pcdto1_bit
struct adc_type::@10::@45 pcdto1_bit
adc_type::pctesel_h
__IO uint32_t pctesel_h
Definition: at32f403_adc.h:334
adc_type::pdt4
__IO uint32_t pdt4
Definition: at32f403_adc.h:574
adc_type::pclen
__IO uint32_t pclen
Definition: at32f403_adc.h:525
adc_type::vmcsel
__IO uint32_t vmcsel
Definition: at32f403_adc.h:292
adc_type::odt
__IO uint32_t odt
Definition: at32f403_adc.h:587
adc_type::pcvmen
__IO uint32_t pcvmen
Definition: at32f403_adc.h:304
adc_type::ctrl2_bit
struct adc_type::@4::@42 ctrl2_bit
adc_type::pdt4_bit
struct adc_type::@36::@58 pdt4_bit
adc_type::pcdto2_bit
struct adc_type::@12::@46 pcdto2_bit
adc_type::pcdto4
__IO uint32_t pcdto4
Definition: at32f403_adc.h:426
adc_type::pdt1
__IO uint32_t pdt1
Definition: at32f403_adc.h:535
adc_type::psq_bit
struct adc_type::@28::@54 psq_bit
adc_type::pcdto2
__IO uint32_t pcdto2
Definition: at32f403_adc.h:400
adc_type::pcpen
__IO uint32_t pcpen
Definition: at32f403_adc.h:300
adc_type::vmsgen
__IO uint32_t vmsgen
Definition: at32f403_adc.h:297
adc_type::pdt2_bit
struct adc_type::@32::@56 pdt2_bit
adc_type::pcceien
__IO uint32_t pcceien
Definition: at32f403_adc.h:295
adc_type::octen
__IO uint32_t octen
Definition: at32f403_adc.h:330
adc_type::vmorien
__IO uint32_t vmorien
Definition: at32f403_adc.h:294
adc_type::vmlb_bit
struct adc_type::@20::@50 vmlb_bit
adc_type::ocvmen
__IO uint32_t ocvmen
Definition: at32f403_adc.h:305
adc_type::oclen
__IO uint32_t oclen
Definition: at32f403_adc.h:472
adc_type::pcdto1
__IO uint32_t pcdto1
Definition: at32f403_adc.h:387
adc_type::spt1
__IO uint32_t spt1
Definition: at32f403_adc.h:345
adc_type::psn4
__IO uint32_t psn4
Definition: at32f403_adc.h:524
adc_type::adcal
__IO uint32_t adcal
Definition: at32f403_adc.h:320
adc_type::octesel_l
__IO uint32_t octesel_l
Definition: at32f403_adc.h:329
adc_type::cceien
__IO uint32_t cceien
Definition: at32f403_adc.h:293
adc_type::odt_bit
struct adc_type::@38::@59 odt_bit
adc_type::sts_bit
struct adc_type::@0::@40 sts_bit
adc_type::pctesel_l
__IO uint32_t pctesel_l
Definition: at32f403_adc.h:326
adc_type::octesel_h
__IO uint32_t octesel_h
Definition: at32f403_adc.h:335
adc_type::psn3
__IO uint32_t psn3
Definition: at32f403_adc.h:523
adc_type::spt2
__IO uint32_t spt2
Definition: at32f403_adc.h:365
adc_type::adcen
__IO uint32_t adcen
Definition: at32f403_adc.h:318
adc_type::vmhb
__IO uint32_t vmhb
Definition: at32f403_adc.h:439
adc_type::ocpen
__IO uint32_t ocpen
Definition: at32f403_adc.h:299
adc_type::pcdto4_bit
struct adc_type::@16::@48 pcdto4_bit
adc_type::pdt1_bit
struct adc_type::@30::@55 pdt1_bit
adc_type::adcalinit
__IO uint32_t adcalinit
Definition: at32f403_adc.h:321
adc_type::pdt3
__IO uint32_t pdt3
Definition: at32f403_adc.h:561
adc_type::ctrl1_bit
struct adc_type::@2::@41 ctrl1_bit
adc_type::psn1
__IO uint32_t psn1
Definition: at32f403_adc.h:521
adc_type::vmhb_bit
struct adc_type::@18::@49 vmhb_bit
adc_type::ctrl1
__IO uint32_t ctrl1
Definition: at32f403_adc.h:289
adc_type::sts
__IO uint32_t sts
Definition: at32f403_adc.h:272
adc_type::cce
__IO uint32_t cce
Definition: at32f403_adc.h:276
adc_type::osq1
__IO uint32_t osq1
Definition: at32f403_adc.h:465
adc_type::pcdto3_bit
struct adc_type::@14::@47 pcdto3_bit
adc_type::psn2
__IO uint32_t psn2
Definition: at32f403_adc.h:522
adc_type::vmor
__IO uint32_t vmor
Definition: at32f403_adc.h:275
adc_type::vmlb
__IO uint32_t vmlb
Definition: at32f403_adc.h:452
adc_type::pdt2
__IO uint32_t pdt2
Definition: at32f403_adc.h:548
adc_type::ocpcnt
__IO uint32_t ocpcnt
Definition: at32f403_adc.h:301
adc_type::osq3
__IO uint32_t osq3
Definition: at32f403_adc.h:500
adc_type::pcautoen
__IO uint32_t pcautoen
Definition: at32f403_adc.h:298
adc_type::pcdto3
__IO uint32_t pcdto3
Definition: at32f403_adc.h:413
adc_type::pcten
__IO uint32_t pcten
Definition: at32f403_adc.h:327
adc_type::pcswtrg
__IO uint32_t pcswtrg
Definition: at32f403_adc.h:331
adc_type::osq1_bit
struct adc_type::@22::@51 osq1_bit
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_adc.h Source File

  • libraries
  • drivers
  • inc
at32f403_adc.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_ADC_H
27#define __AT32F403_ADC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define ADC_CCE_INT ((uint32_t)0x00000020)
51#define ADC_VMOR_INT ((uint32_t)0x00000040)
52#define ADC_PCCE_INT ((uint32_t)0x00000080)
63#define ADC_VMOR_FLAG ((uint8_t)0x01)
64#define ADC_CCE_FLAG ((uint8_t)0x02)
65#define ADC_PCCE_FLAG ((uint8_t)0x04)
66#define ADC_PCCS_FLAG ((uint8_t)0x08)
67#define ADC_OCCS_FLAG ((uint8_t)0x10)
80typedef enum
81{
82 ADC_INDEPENDENT_MODE = 0x00,
83 ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE = 0x01,
84 ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE = 0x02,
85 ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE = 0x03,
86 ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE = 0x04,
87 ADC_PREEMPT_SMLT_ONLY_MODE = 0x05,
88 ADC_ORDINARY_SMLT_ONLY_MODE = 0x06,
89 ADC_ORDINARY_SHORTSHIFT_ONLY_MODE = 0x07,
90 ADC_ORDINARY_LONGSHIFT_ONLY_MODE = 0x08,
91 ADC_PREEMPT_INTERLTRIG_ONLY_MODE = 0x09
92} adc_combine_mode_type;
93
97typedef enum
98{
99 ADC_RIGHT_ALIGNMENT = 0x00,
100 ADC_LEFT_ALIGNMENT = 0x01
101} adc_data_align_type;
102
106typedef enum
107{
108 ADC_CHANNEL_0 = 0x00,
109 ADC_CHANNEL_1 = 0x01,
110 ADC_CHANNEL_2 = 0x02,
111 ADC_CHANNEL_3 = 0x03,
112 ADC_CHANNEL_4 = 0x04,
113 ADC_CHANNEL_5 = 0x05,
114 ADC_CHANNEL_6 = 0x06,
115 ADC_CHANNEL_7 = 0x07,
116 ADC_CHANNEL_8 = 0x08,
117 ADC_CHANNEL_9 = 0x09,
118 ADC_CHANNEL_10 = 0x0A,
119 ADC_CHANNEL_11 = 0x0B,
120 ADC_CHANNEL_12 = 0x0C,
121 ADC_CHANNEL_13 = 0x0D,
122 ADC_CHANNEL_14 = 0x0E,
123 ADC_CHANNEL_15 = 0x0F,
124 ADC_CHANNEL_16 = 0x10,
125 ADC_CHANNEL_17 = 0x11
126} adc_channel_select_type;
127
131typedef enum
132{
133 ADC_SAMPLETIME_1_5 = 0x00,
134 ADC_SAMPLETIME_7_5 = 0x01,
135 ADC_SAMPLETIME_13_5 = 0x02,
136 ADC_SAMPLETIME_28_5 = 0x03,
137 ADC_SAMPLETIME_41_5 = 0x04,
138 ADC_SAMPLETIME_55_5 = 0x05,
139 ADC_SAMPLETIME_71_5 = 0x06,
140 ADC_SAMPLETIME_239_5 = 0x07
141} adc_sampletime_select_type;
142
146typedef enum
147{
148 /*adc1 and adc2 ordinary trigger event*/
149 ADC12_ORDINARY_TRIG_TMR1CH1 = 0x00,
150 ADC12_ORDINARY_TRIG_TMR1CH2 = 0x01,
151 ADC12_ORDINARY_TRIG_TMR1CH3 = 0x02,
152 ADC12_ORDINARY_TRIG_TMR2CH2 = 0x03,
153 ADC12_ORDINARY_TRIG_TMR3TRGOUT = 0x04,
154 ADC12_ORDINARY_TRIG_TMR4CH4 = 0x05,
155 ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT = 0x06,
156 ADC12_ORDINARY_TRIG_SOFTWARE = 0x07,
157 ADC12_ORDINARY_TRIG_TMR15CH1 = 0x08,
158 ADC12_ORDINARY_TRIG_TMR15CH2 = 0x09,
159 ADC12_ORDINARY_TRIG_TMR15CH3 = 0x0A,
160 ADC12_ORDINARY_TRIG_TMR15CH4 = 0x0B,
161 ADC12_ORDINARY_TRIG_TMR15TRGOUT = 0x0C,
162 ADC12_ORDINARY_TRIG_TMR1TRGOUT = 0x0D,
163 ADC12_ORDINARY_TRIG_TMR8CH1 = 0x0E,
164 ADC12_ORDINARY_TRIG_TMR8CH2 = 0x0F,
165 /*adc3 ordinary trigger event*/
166 ADC3_ORDINARY_TRIG_TMR3CH1 = 0x00,
167 ADC3_ORDINARY_TRIG_TMR2CH3 = 0x01,
168 ADC3_ORDINARY_TRIG_TMR1CH3 = 0x02,
169 ADC3_ORDINARY_TRIG_TMR8CH1 = 0x03,
170 ADC3_ORDINARY_TRIG_TMR8TRGOUT = 0x04,
171 ADC3_ORDINARY_TRIG_TMR5CH1 = 0x05,
172 ADC3_ORDINARY_TRIG_TMR5CH3 = 0x06,
173 ADC3_ORDINARY_TRIG_SOFTWARE = 0x07,
174 ADC3_ORDINARY_TRIG_TMR15CH1 = 0x08,
175 ADC3_ORDINARY_TRIG_TMR15CH2 = 0x09,
176 ADC3_ORDINARY_TRIG_TMR15CH3 = 0x0A,
177 ADC3_ORDINARY_TRIG_TMR15CH4 = 0x0B,
178 ADC3_ORDINARY_TRIG_TMR15TRGOUT = 0x0C,
179 ADC3_ORDINARY_TRIG_TMR1TRGOUT = 0x0D,
180 ADC3_ORDINARY_TRIG_TMR1CH1 = 0x0E,
181 ADC3_ORDINARY_TRIG_TMR8CH3 = 0x0F
182} adc_ordinary_trig_select_type;
183
187typedef enum
188{
189 /*adc1 and adc2 preempt trigger event*/
190 ADC12_PREEMPT_TRIG_TMR1TRGOUT = 0x00,
191 ADC12_PREEMPT_TRIG_TMR1CH4 = 0x01,
192 ADC12_PREEMPT_TRIG_TMR2TRGOUT = 0x02,
193 ADC12_PREEMPT_TRIG_TMR2CH1 = 0x03,
194 ADC12_PREEMPT_TRIG_TMR3CH4 = 0x04,
195 ADC12_PREEMPT_TRIG_TMR4TRGOUT = 0x05,
196 ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4 = 0x06,
197 ADC12_PREEMPT_TRIG_SOFTWARE = 0x07,
198 ADC12_PREEMPT_TRIG_TMR15CH1 = 0x08,
199 ADC12_PREEMPT_TRIG_TMR15CH2 = 0x09,
200 ADC12_PREEMPT_TRIG_TMR15CH3 = 0x0A,
201 ADC12_PREEMPT_TRIG_TMR15CH4 = 0x0B,
202 ADC12_PREEMPT_TRIG_TMR15TRGOUT = 0x0C,
203 ADC12_PREEMPT_TRIG_TMR1CH1 = 0x0D,
204 ADC12_PREEMPT_TRIG_TMR8CH1 = 0x0E,
205 ADC12_PREEMPT_TRIG_TMR8TRGOUT = 0x0F,
206 /*adc3 preempt trigger event*/
207 ADC3_PREEMPT_TRIG_TMR1TRGOUT = 0x00,
208 ADC3_PREEMPT_TRIG_TMR1CH4 = 0x01,
209 ADC3_PREEMPT_TRIG_TMR4CH3 = 0x02,
210 ADC3_PREEMPT_TRIG_TMR8CH2 = 0x03,
211 ADC3_PREEMPT_TRIG_TMR8CH4 = 0x04,
212 ADC3_PREEMPT_TRIG_TMR5TRGOUT = 0x05,
213 ADC3_PREEMPT_TRIG_TMR5CH4 = 0x06,
214 ADC3_PREEMPT_TRIG_SOFTWARE = 0x07,
215 ADC3_PREEMPT_TRIG_TMR15CH1 = 0x08,
216 ADC3_PREEMPT_TRIG_TMR15CH2 = 0x09,
217 ADC3_PREEMPT_TRIG_TMR15CH3 = 0x0A,
218 ADC3_PREEMPT_TRIG_TMR15CH4 = 0x0B,
219 ADC3_PREEMPT_TRIG_TMR15TRGOUT = 0x0C,
220 ADC3_PREEMPT_TRIG_TMR1CH1 = 0x0D,
221 ADC3_PREEMPT_TRIG_TMR1CH2 = 0x0E,
222 ADC3_PREEMPT_TRIG_TMR8TRGOUT = 0x0F
223} adc_preempt_trig_select_type;
224
228typedef enum
229{
230 ADC_PREEMPT_CHANNEL_1 = 0x00,
231 ADC_PREEMPT_CHANNEL_2 = 0x01,
232 ADC_PREEMPT_CHANNEL_3 = 0x02,
233 ADC_PREEMPT_CHANNEL_4 = 0x03
234} adc_preempt_channel_type;
235
239typedef enum
240{
241 ADC_VMONITOR_SINGLE_ORDINARY = 0x00800200,
242 ADC_VMONITOR_SINGLE_PREEMPT = 0x00400200,
243 ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT = 0x00C00200,
244 ADC_VMONITOR_ALL_ORDINARY = 0x00800000,
245 ADC_VMONITOR_ALL_PREEMPT = 0x00400000,
246 ADC_VMONITOR_ALL_ORDINARY_PREEMPT = 0x00C00000,
247 ADC_VMONITOR_NONE = 0x00000000
248} adc_voltage_monitoring_type;
249
253typedef struct
254{
255 confirm_state sequence_mode;
256 confirm_state repeat_mode;
257 adc_data_align_type data_align;
258 uint8_t ordinary_channel_length;
259} adc_base_config_type;
260
264typedef struct
265{
266
270 union
271 {
272 __IO uint32_t sts;
273 struct
274 {
275 __IO uint32_t vmor : 1; /* [0] */
276 __IO uint32_t cce : 1; /* [1] */
277 __IO uint32_t pcce : 1; /* [2] */
278 __IO uint32_t pccs : 1; /* [3] */
279 __IO uint32_t occs : 1; /* [4] */
280 __IO uint32_t reserved1 : 27;/* [31:5] */
281 } sts_bit;
282 };
283
287 union
288 {
289 __IO uint32_t ctrl1;
290 struct
291 {
292 __IO uint32_t vmcsel : 5; /* [4:0] */
293 __IO uint32_t cceien : 1; /* [5] */
294 __IO uint32_t vmorien : 1; /* [6] */
295 __IO uint32_t pcceien : 1; /* [7] */
296 __IO uint32_t sqen : 1; /* [8] */
297 __IO uint32_t vmsgen : 1; /* [9] */
298 __IO uint32_t pcautoen : 1; /* [10] */
299 __IO uint32_t ocpen : 1; /* [11] */
300 __IO uint32_t pcpen : 1; /* [12] */
301 __IO uint32_t ocpcnt : 3; /* [15:13] */
302 __IO uint32_t mssel : 4; /* [19:16] */
303 __IO uint32_t reserved1 : 2; /* [21:20] */
304 __IO uint32_t pcvmen : 1; /* [22] */
305 __IO uint32_t ocvmen : 1; /* [23] */
306 __IO uint32_t reserved2 : 8; /* [31:24] */
307 } ctrl1_bit;
308 };
309
313 union
314 {
315 __IO uint32_t ctrl2;
316 struct
317 {
318 __IO uint32_t adcen : 1; /* [0] */
319 __IO uint32_t rpen : 1; /* [1] */
320 __IO uint32_t adcal : 1; /* [2] */
321 __IO uint32_t adcalinit : 1; /* [3] */
322 __IO uint32_t reserved1 : 4; /* [7:4] */
323 __IO uint32_t ocdmaen : 1; /* [8] */
324 __IO uint32_t reserved2 : 2; /* [10:9] */
325 __IO uint32_t dtalign : 1; /* [11] */
326 __IO uint32_t pctesel_l : 3; /* [14:12] */
327 __IO uint32_t pcten : 1; /* [15] */
328 __IO uint32_t reserved3 : 1; /* [16] */
329 __IO uint32_t octesel_l : 3; /* [19:17] */
330 __IO uint32_t octen : 1; /* [20] */
331 __IO uint32_t pcswtrg : 1; /* [21] */
332 __IO uint32_t ocswtrg : 1; /* [22] */
333 __IO uint32_t itsrven : 1; /* [23] */
334 __IO uint32_t pctesel_h : 1; /* [24] */
335 __IO uint32_t octesel_h : 1; /* [25] */
336 __IO uint32_t reserved4 : 6; /* [31:26] */
337 } ctrl2_bit;
338 };
339
343 union
344 {
345 __IO uint32_t spt1;
346 struct
347 {
348 __IO uint32_t cspt10 : 3; /* [2:0] */
349 __IO uint32_t cspt11 : 3; /* [5:3] */
350 __IO uint32_t cspt12 : 3; /* [8:6] */
351 __IO uint32_t cspt13 : 3; /* [11:9] */
352 __IO uint32_t cspt14 : 3; /* [14:12] */
353 __IO uint32_t cspt15 : 3; /* [17:15] */
354 __IO uint32_t cspt16 : 3; /* [20:18] */
355 __IO uint32_t cspt17 : 3; /* [23:21] */
356 __IO uint32_t reserved1 : 8;/* [31:24] */
357 } spt1_bit;
358 };
359
363 union
364 {
365 __IO uint32_t spt2;
366 struct
367 {
368 __IO uint32_t cspt0 : 3;/* [2:0] */
369 __IO uint32_t cspt1 : 3;/* [5:3] */
370 __IO uint32_t cspt2 : 3;/* [8:6] */
371 __IO uint32_t cspt3 : 3;/* [11:9] */
372 __IO uint32_t cspt4 : 3;/* [14:12] */
373 __IO uint32_t cspt5 : 3;/* [17:15] */
374 __IO uint32_t cspt6 : 3;/* [20:18] */
375 __IO uint32_t cspt7 : 3;/* [23:21] */
376 __IO uint32_t cspt8 : 3;/* [26:24] */
377 __IO uint32_t cspt9 : 3;/* [29:27] */
378 __IO uint32_t reserved1 : 2;/* [31:30] */
379 } spt2_bit;
380 };
381
385 union
386 {
387 __IO uint32_t pcdto1;
388 struct
389 {
390 __IO uint32_t pcdto1 : 12; /* [11:0] */
391 __IO uint32_t reserved1 : 20; /* [31:12] */
392 } pcdto1_bit;
393 };
394
398 union
399 {
400 __IO uint32_t pcdto2;
401 struct
402 {
403 __IO uint32_t pcdto2 : 12; /* [11:0] */
404 __IO uint32_t reserved1 : 20; /* [31:12] */
405 } pcdto2_bit;
406 };
407
411 union
412 {
413 __IO uint32_t pcdto3;
414 struct
415 {
416 __IO uint32_t pcdto3 : 12; /* [11:0] */
417 __IO uint32_t reserved1 : 20; /* [31:12] */
418 } pcdto3_bit;
419 };
420
424 union
425 {
426 __IO uint32_t pcdto4;
427 struct
428 {
429 __IO uint32_t pcdto4 : 12; /* [11:0] */
430 __IO uint32_t reserved1 : 20; /* [31:12] */
431 } pcdto4_bit;
432 };
433
437 union
438 {
439 __IO uint32_t vmhb;
440 struct
441 {
442 __IO uint32_t vmhb : 12; /* [11:0] */
443 __IO uint32_t reserved1 : 20; /* [31:12] */
444 } vmhb_bit;
445 };
446
450 union
451 {
452 __IO uint32_t vmlb;
453 struct
454 {
455 __IO uint32_t vmlb : 12; /* [11:0] */
456 __IO uint32_t reserved1 : 20; /* [31:12] */
457 } vmlb_bit;
458 };
459
463 union
464 {
465 __IO uint32_t osq1;
466 struct
467 {
468 __IO uint32_t osn13 : 5; /* [4:0] */
469 __IO uint32_t osn14 : 5; /* [9:5] */
470 __IO uint32_t osn15 : 5; /* [14:10] */
471 __IO uint32_t osn16 : 5; /* [19:15] */
472 __IO uint32_t oclen : 4; /* [23:20] */
473 __IO uint32_t reserved1 : 8; /* [31:24] */
474 } osq1_bit;
475 };
476
480 union
481 {
482 __IO uint32_t osq2;
483 struct
484 {
485 __IO uint32_t osn7 : 5; /* [4:0] */
486 __IO uint32_t osn8 : 5; /* [9:5] */
487 __IO uint32_t osn9 : 5; /* [14:10] */
488 __IO uint32_t osn10 : 5; /* [19:15] */
489 __IO uint32_t osn11 : 5; /* [24:20] */
490 __IO uint32_t osn12 : 5; /* [29:25] */
491 __IO uint32_t reserved1 : 2; /* [31:30] */
492 } osq2_bit;
493 };
494
498 union
499 {
500 __IO uint32_t osq3;
501 struct
502 {
503 __IO uint32_t osn1 : 5; /* [4:0] */
504 __IO uint32_t osn2 : 5; /* [9:5] */
505 __IO uint32_t osn3 : 5; /* [14:10] */
506 __IO uint32_t osn4 : 5; /* [19:15] */
507 __IO uint32_t osn5 : 5; /* [24:20] */
508 __IO uint32_t osn6 : 5; /* [29:25] */
509 __IO uint32_t reserved1 : 2; /* [31:30] */
510 } osq3_bit;
511 };
512
516 union
517 {
518 __IO uint32_t psq;
519 struct
520 {
521 __IO uint32_t psn1 : 5; /* [4:0] */
522 __IO uint32_t psn2 : 5; /* [9:5] */
523 __IO uint32_t psn3 : 5; /* [14:10] */
524 __IO uint32_t psn4 : 5; /* [19:15] */
525 __IO uint32_t pclen : 2; /* [21:20] */
526 __IO uint32_t reserved1 : 10;/* [31:22] */
527 } psq_bit;
528 };
529
533 union
534 {
535 __IO uint32_t pdt1;
536 struct
537 {
538 __IO uint32_t pdt1 : 16; /* [15:0] */
539 __IO uint32_t reserved1 : 16; /* [31:16] */
540 } pdt1_bit;
541 };
542
546 union
547 {
548 __IO uint32_t pdt2;
549 struct
550 {
551 __IO uint32_t pdt2 : 16; /* [15:0] */
552 __IO uint32_t reserved1 : 16; /* [31:16] */
553 } pdt2_bit;
554 };
555
559 union
560 {
561 __IO uint32_t pdt3;
562 struct
563 {
564 __IO uint32_t pdt3 : 16; /* [15:0] */
565 __IO uint32_t reserved1 : 16; /* [31:16] */
566 } pdt3_bit;
567 };
568
572 union
573 {
574 __IO uint32_t pdt4;
575 struct
576 {
577 __IO uint32_t pdt4 : 16; /* [15:0] */
578 __IO uint32_t reserved1 : 16; /* [31:16] */
579 } pdt4_bit;
580 };
581
585 union
586 {
587 __IO uint32_t odt;
588 struct
589 {
590 __IO uint32_t odt : 16; /* [15:0] */
591 __IO uint32_t adc2odt : 16; /* [31:16] */
592 } odt_bit;
593 };
594
595} adc_type;
596
601#define ADC1 ((adc_type *) ADC1_BASE)
602#define ADC2 ((adc_type *) ADC2_BASE)
603#define ADC3 ((adc_type *) ADC3_BASE)
604
609void adc_reset(adc_type *adc_x);
610void adc_enable(adc_type *adc_x, confirm_state new_state);
611void adc_combine_mode_select(adc_combine_mode_type combine_mode);
612void adc_base_default_para_init(adc_base_config_type *adc_base_struct);
613void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct);
614void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state);
615void adc_interrupt_enable(adc_type *adc_x, uint32_t adc_int, confirm_state new_state);
616void adc_calibration_init(adc_type *adc_x);
617 flag_status adc_calibration_init_status_get(adc_type *adc_x);
618void adc_calibration_start(adc_type *adc_x);
619 flag_status adc_calibration_status_get(adc_type *adc_x);
620void adc_voltage_monitor_enable(adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring);
621void adc_voltage_monitor_threshold_value_set(adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold);
622void adc_voltage_monitor_single_channel_select(adc_type *adc_x, adc_channel_select_type adc_channel);
623void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime);
624void adc_preempt_channel_length_set(adc_type *adc_x, uint8_t adc_channel_lenght);
625void adc_preempt_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime);
626void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state);
627void adc_preempt_conversion_trigger_set(adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state);
628void adc_preempt_offset_value_set(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value);
629void adc_ordinary_part_count_set(adc_type *adc_x, uint8_t adc_channel_count);
630void adc_ordinary_part_mode_enable(adc_type *adc_x, confirm_state new_state);
631void adc_preempt_part_mode_enable(adc_type *adc_x, confirm_state new_state);
632void adc_preempt_auto_mode_enable(adc_type *adc_x, confirm_state new_state);
633void adc_tempersensor_vintrv_enable(confirm_state new_state);
634void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state);
635 flag_status adc_ordinary_software_trigger_status_get(adc_type *adc_x);
636void adc_preempt_software_trigger_enable(adc_type *adc_x, confirm_state new_state);
637 flag_status adc_preempt_software_trigger_status_get(adc_type *adc_x);
638uint16_t adc_ordinary_conversion_data_get(adc_type *adc_x);
639uint32_t adc_combine_ordinary_conversion_data_get(void);
640uint16_t adc_preempt_conversion_data_get(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel);
641 flag_status adc_flag_get(adc_type *adc_x, uint8_t adc_flag);
642 flag_status adc_interrupt_flag_get(adc_type *adc_x, uint8_t adc_flag);
643void adc_flag_clear(adc_type *adc_x, uint32_t adc_flag);
644
657#ifdef __cplusplus
658}
659#endif
660
661#endif
at32f403.h
at32f403 header file
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_voltage_monitor_enable
void adc_voltage_monitor_enable(adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified ...
Definition: at32f403_adc.c:273
adc_voltage_monitor_single_channel_select
void adc_voltage_monitor_single_channel_select(adc_type *adc_x, adc_channel_select_type adc_channel)
select the voltage monitoring's channel of the specified adc peripheral.
Definition: at32f403_adc.c:314
adc_ordinary_conversion_data_get
uint16_t adc_ordinary_conversion_data_get(adc_type *adc_x)
return the last conversion data for ordinary channel of the specified adc peripheral.
Definition: at32f403_adc.c:723
adc_preempt_offset_value_set
void adc_preempt_offset_value_set(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel, uint16_t adc_offset_value)
set preempt channel's conversion value offset of the specified adc peripheral.
Definition: at32f403_adc.c:559
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_ordinary_software_trigger_status_get
flag_status adc_ordinary_software_trigger_status_get(adc_type *adc_x)
get ordinary software start conversion status of the specified adc peripheral.
Definition: at32f403_adc.c:671
adc_preempt_auto_mode_enable
void adc_preempt_auto_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable automatic preempt group conversion of the specified adc peripheral.
Definition: at32f403_adc.c:633
adc_tempersensor_vintrv_enable
void adc_tempersensor_vintrv_enable(confirm_state new_state)
enable or disable the temperature sensor and vintrv channel.
Definition: at32f403_adc.c:645
adc_preempt_software_trigger_status_get
flag_status adc_preempt_software_trigger_status_get(adc_type *adc_x)
get preempt software start conversion status of the specified adc peripheral.
Definition: at32f403_adc.c:704
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_ordinary_part_count_set
void adc_ordinary_part_count_set(adc_type *adc_x, uint8_t adc_channel_count)
set partitioned mode channel count of the specified adc peripheral.
Definition: at32f403_adc.c:590
adc_preempt_conversion_data_get
uint16_t adc_preempt_conversion_data_get(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral.
Definition: at32f403_adc.c:750
adc_flag_clear
void adc_flag_clear(adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral.
Definition: at32f403_adc.c:857
adc_interrupt_enable
void adc_interrupt_enable(adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts.
Definition: at32f403_adc.c:183
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_interrupt_flag_get
flag_status adc_interrupt_flag_get(adc_type *adc_x, uint8_t adc_flag)
get interrupt flag of the specified adc peripheral.
Definition: at32f403_adc.c:814
adc_voltage_monitor_threshold_value_set
void adc_voltage_monitor_threshold_value_set(adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
set voltage monitoring's high and low thresholds value of the specified adc peripheral.
Definition: at32f403_adc.c:294
adc_preempt_part_mode_enable
void adc_preempt_part_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on preempt channel of the specified adc peripheral.
Definition: at32f403_adc.c:619
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_preempt_conversion_trigger_set
void adc_preempt_conversion_trigger_set(adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specif...
Definition: at32f403_adc.c:527
adc_combine_ordinary_conversion_data_get
uint32_t adc_combine_ordinary_conversion_data_get(void)
return the last conversion data for ordinary channel of combine adc(adc1 and adc2).
Definition: at32f403_adc.c:732
adc_flag_get
flag_status adc_flag_get(adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral.
Definition: at32f403_adc.c:787
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_preempt_channel_set
void adc_preempt_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc ...
Definition: at32f403_adc.c:429
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_ordinary_part_mode_enable
void adc_ordinary_part_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on ordinary channel of the specified adc peripheral.
Definition: at32f403_adc.c:605
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_preempt_channel_length_set
void adc_preempt_channel_length_set(adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral.
Definition: at32f403_adc.c:397
adc_reset
void adc_reset(adc_type *adc_x)
deinitialize the adc peripheral registers to their default reset values.
Definition: at32f403_adc.c:49
adc_preempt_software_trigger_enable
void adc_preempt_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable preempt software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:692
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
adc_voltage_monitoring_type
adc_voltage_monitoring_type
adc voltage_monitoring type
Definition: at32f403_adc.h:240
adc_data_align_type
adc_data_align_type
adc data align type
Definition: at32f403_adc.h:98
adc_channel_select_type
adc_channel_select_type
adc channel select type
Definition: at32f403_adc.h:107
adc_sampletime_select_type
adc_sampletime_select_type
adc sampletime select type
Definition: at32f403_adc.h:132
adc_preempt_trig_select_type
adc_preempt_trig_select_type
adc preempt group trigger event select type
Definition: at32f403_adc.h:188
adc_combine_mode_type
adc_combine_mode_type
adc combine mode type(these options are reserved in adc2 and adc3)
Definition: at32f403_adc.h:81
adc_ordinary_trig_select_type
adc_ordinary_trig_select_type
adc ordinary group trigger event select type
Definition: at32f403_adc.h:147
adc_preempt_channel_type
adc_preempt_channel_type
adc preempt channel type
Definition: at32f403_adc.h:229
ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT
@ ADC_VMONITOR_SINGLE_ORDINARY_PREEMPT
Definition: at32f403_adc.h:243
ADC_VMONITOR_SINGLE_ORDINARY
@ ADC_VMONITOR_SINGLE_ORDINARY
Definition: at32f403_adc.h:241
ADC_VMONITOR_ALL_ORDINARY
@ ADC_VMONITOR_ALL_ORDINARY
Definition: at32f403_adc.h:244
ADC_VMONITOR_ALL_PREEMPT
@ ADC_VMONITOR_ALL_PREEMPT
Definition: at32f403_adc.h:245
ADC_VMONITOR_ALL_ORDINARY_PREEMPT
@ ADC_VMONITOR_ALL_ORDINARY_PREEMPT
Definition: at32f403_adc.h:246
ADC_VMONITOR_NONE
@ ADC_VMONITOR_NONE
Definition: at32f403_adc.h:247
ADC_VMONITOR_SINGLE_PREEMPT
@ ADC_VMONITOR_SINGLE_PREEMPT
Definition: at32f403_adc.h:242
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_LEFT_ALIGNMENT
@ ADC_LEFT_ALIGNMENT
Definition: at32f403_adc.h:100
ADC_CHANNEL_9
@ ADC_CHANNEL_9
Definition: at32f403_adc.h:117
ADC_CHANNEL_1
@ ADC_CHANNEL_1
Definition: at32f403_adc.h:109
ADC_CHANNEL_17
@ ADC_CHANNEL_17
Definition: at32f403_adc.h:125
ADC_CHANNEL_8
@ ADC_CHANNEL_8
Definition: at32f403_adc.h:116
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_12
@ ADC_CHANNEL_12
Definition: at32f403_adc.h:120
ADC_CHANNEL_16
@ ADC_CHANNEL_16
Definition: at32f403_adc.h:124
ADC_CHANNEL_0
@ ADC_CHANNEL_0
Definition: at32f403_adc.h:108
ADC_CHANNEL_3
@ ADC_CHANNEL_3
Definition: at32f403_adc.h:111
ADC_CHANNEL_14
@ ADC_CHANNEL_14
Definition: at32f403_adc.h:122
ADC_CHANNEL_10
@ ADC_CHANNEL_10
Definition: at32f403_adc.h:118
ADC_CHANNEL_13
@ ADC_CHANNEL_13
Definition: at32f403_adc.h:121
ADC_CHANNEL_2
@ ADC_CHANNEL_2
Definition: at32f403_adc.h:110
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_7
@ ADC_CHANNEL_7
Definition: at32f403_adc.h:115
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_CHANNEL_11
@ ADC_CHANNEL_11
Definition: at32f403_adc.h:119
ADC_CHANNEL_15
@ ADC_CHANNEL_15
Definition: at32f403_adc.h:123
ADC_SAMPLETIME_41_5
@ ADC_SAMPLETIME_41_5
Definition: at32f403_adc.h:137
ADC_SAMPLETIME_55_5
@ ADC_SAMPLETIME_55_5
Definition: at32f403_adc.h:138
ADC_SAMPLETIME_71_5
@ ADC_SAMPLETIME_71_5
Definition: at32f403_adc.h:139
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_SAMPLETIME_1_5
@ ADC_SAMPLETIME_1_5
Definition: at32f403_adc.h:133
ADC_SAMPLETIME_28_5
@ ADC_SAMPLETIME_28_5
Definition: at32f403_adc.h:136
ADC_SAMPLETIME_13_5
@ ADC_SAMPLETIME_13_5
Definition: at32f403_adc.h:135
ADC_SAMPLETIME_7_5
@ ADC_SAMPLETIME_7_5
Definition: at32f403_adc.h:134
ADC12_PREEMPT_TRIG_TMR8CH1
@ ADC12_PREEMPT_TRIG_TMR8CH1
Definition: at32f403_adc.h:204
ADC3_PREEMPT_TRIG_TMR1CH2
@ ADC3_PREEMPT_TRIG_TMR1CH2
Definition: at32f403_adc.h:221
ADC12_PREEMPT_TRIG_TMR4TRGOUT
@ ADC12_PREEMPT_TRIG_TMR4TRGOUT
Definition: at32f403_adc.h:195
ADC12_PREEMPT_TRIG_TMR2TRGOUT
@ ADC12_PREEMPT_TRIG_TMR2TRGOUT
Definition: at32f403_adc.h:192
ADC3_PREEMPT_TRIG_TMR1CH4
@ ADC3_PREEMPT_TRIG_TMR1CH4
Definition: at32f403_adc.h:208
ADC12_PREEMPT_TRIG_TMR15CH4
@ ADC12_PREEMPT_TRIG_TMR15CH4
Definition: at32f403_adc.h:201
ADC12_PREEMPT_TRIG_TMR1CH1
@ ADC12_PREEMPT_TRIG_TMR1CH1
Definition: at32f403_adc.h:203
ADC12_PREEMPT_TRIG_TMR15TRGOUT
@ ADC12_PREEMPT_TRIG_TMR15TRGOUT
Definition: at32f403_adc.h:202
ADC3_PREEMPT_TRIG_TMR8CH4
@ ADC3_PREEMPT_TRIG_TMR8CH4
Definition: at32f403_adc.h:211
ADC12_PREEMPT_TRIG_TMR1CH4
@ ADC12_PREEMPT_TRIG_TMR1CH4
Definition: at32f403_adc.h:191
ADC12_PREEMPT_TRIG_TMR1TRGOUT
@ ADC12_PREEMPT_TRIG_TMR1TRGOUT
Definition: at32f403_adc.h:190
ADC3_PREEMPT_TRIG_TMR15CH4
@ ADC3_PREEMPT_TRIG_TMR15CH4
Definition: at32f403_adc.h:218
ADC3_PREEMPT_TRIG_TMR8TRGOUT
@ ADC3_PREEMPT_TRIG_TMR8TRGOUT
Definition: at32f403_adc.h:222
ADC12_PREEMPT_TRIG_TMR3CH4
@ ADC12_PREEMPT_TRIG_TMR3CH4
Definition: at32f403_adc.h:194
ADC3_PREEMPT_TRIG_TMR1TRGOUT
@ ADC3_PREEMPT_TRIG_TMR1TRGOUT
Definition: at32f403_adc.h:207
ADC12_PREEMPT_TRIG_SOFTWARE
@ ADC12_PREEMPT_TRIG_SOFTWARE
Definition: at32f403_adc.h:197
ADC3_PREEMPT_TRIG_TMR15CH1
@ ADC3_PREEMPT_TRIG_TMR15CH1
Definition: at32f403_adc.h:215
ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4
@ ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4
Definition: at32f403_adc.h:196
ADC3_PREEMPT_TRIG_TMR4CH3
@ ADC3_PREEMPT_TRIG_TMR4CH3
Definition: at32f403_adc.h:209
ADC12_PREEMPT_TRIG_TMR8TRGOUT
@ ADC12_PREEMPT_TRIG_TMR8TRGOUT
Definition: at32f403_adc.h:205
ADC3_PREEMPT_TRIG_TMR5CH4
@ ADC3_PREEMPT_TRIG_TMR5CH4
Definition: at32f403_adc.h:213
ADC3_PREEMPT_TRIG_SOFTWARE
@ ADC3_PREEMPT_TRIG_SOFTWARE
Definition: at32f403_adc.h:214
ADC12_PREEMPT_TRIG_TMR2CH1
@ ADC12_PREEMPT_TRIG_TMR2CH1
Definition: at32f403_adc.h:193
ADC3_PREEMPT_TRIG_TMR1CH1
@ ADC3_PREEMPT_TRIG_TMR1CH1
Definition: at32f403_adc.h:220
ADC3_PREEMPT_TRIG_TMR15CH2
@ ADC3_PREEMPT_TRIG_TMR15CH2
Definition: at32f403_adc.h:216
ADC12_PREEMPT_TRIG_TMR15CH2
@ ADC12_PREEMPT_TRIG_TMR15CH2
Definition: at32f403_adc.h:199
ADC12_PREEMPT_TRIG_TMR15CH1
@ ADC12_PREEMPT_TRIG_TMR15CH1
Definition: at32f403_adc.h:198
ADC3_PREEMPT_TRIG_TMR8CH2
@ ADC3_PREEMPT_TRIG_TMR8CH2
Definition: at32f403_adc.h:210
ADC12_PREEMPT_TRIG_TMR15CH3
@ ADC12_PREEMPT_TRIG_TMR15CH3
Definition: at32f403_adc.h:200
ADC3_PREEMPT_TRIG_TMR15CH3
@ ADC3_PREEMPT_TRIG_TMR15CH3
Definition: at32f403_adc.h:217
ADC3_PREEMPT_TRIG_TMR5TRGOUT
@ ADC3_PREEMPT_TRIG_TMR5TRGOUT
Definition: at32f403_adc.h:212
ADC3_PREEMPT_TRIG_TMR15TRGOUT
@ ADC3_PREEMPT_TRIG_TMR15TRGOUT
Definition: at32f403_adc.h:219
ADC_PREEMPT_SMLT_ONLY_MODE
@ ADC_PREEMPT_SMLT_ONLY_MODE
Definition: at32f403_adc.h:87
ADC_PREEMPT_INTERLTRIG_ONLY_MODE
@ ADC_PREEMPT_INTERLTRIG_ONLY_MODE
Definition: at32f403_adc.h:91
ADC_ORDINARY_LONGSHIFT_ONLY_MODE
@ ADC_ORDINARY_LONGSHIFT_ONLY_MODE
Definition: at32f403_adc.h:90
ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE
@ ADC_ORDINARY_SHORTSHIFT_PREEMPT_SMLT_MODE
Definition: at32f403_adc.h:85
ADC_ORDINARY_SMLT_ONLY_MODE
@ ADC_ORDINARY_SMLT_ONLY_MODE
Definition: at32f403_adc.h:88
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC_ORDINARY_SHORTSHIFT_ONLY_MODE
@ ADC_ORDINARY_SHORTSHIFT_ONLY_MODE
Definition: at32f403_adc.h:89
ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE
@ ADC_ORDINARY_SMLT_PREEMPT_INTERLTRIG_MODE
Definition: at32f403_adc.h:84
ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE
@ ADC_ORDINARY_LONGSHIFT_PREEMPT_SMLT_MODE
Definition: at32f403_adc.h:86
ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE
@ ADC_ORDINARY_SMLT_PREEMPT_SMLT_MODE
Definition: at32f403_adc.h:83
ADC12_ORDINARY_TRIG_TMR2CH2
@ ADC12_ORDINARY_TRIG_TMR2CH2
Definition: at32f403_adc.h:152
ADC12_ORDINARY_TRIG_TMR15CH4
@ ADC12_ORDINARY_TRIG_TMR15CH4
Definition: at32f403_adc.h:160
ADC3_ORDINARY_TRIG_TMR15CH4
@ ADC3_ORDINARY_TRIG_TMR15CH4
Definition: at32f403_adc.h:177
ADC12_ORDINARY_TRIG_TMR1TRGOUT
@ ADC12_ORDINARY_TRIG_TMR1TRGOUT
Definition: at32f403_adc.h:162
ADC3_ORDINARY_TRIG_TMR5CH1
@ ADC3_ORDINARY_TRIG_TMR5CH1
Definition: at32f403_adc.h:171
ADC12_ORDINARY_TRIG_TMR1CH2
@ ADC12_ORDINARY_TRIG_TMR1CH2
Definition: at32f403_adc.h:150
ADC3_ORDINARY_TRIG_TMR8CH3
@ ADC3_ORDINARY_TRIG_TMR8CH3
Definition: at32f403_adc.h:181
ADC3_ORDINARY_TRIG_TMR1TRGOUT
@ ADC3_ORDINARY_TRIG_TMR1TRGOUT
Definition: at32f403_adc.h:179
ADC12_ORDINARY_TRIG_TMR1CH1
@ ADC12_ORDINARY_TRIG_TMR1CH1
Definition: at32f403_adc.h:149
ADC12_ORDINARY_TRIG_TMR15CH2
@ ADC12_ORDINARY_TRIG_TMR15CH2
Definition: at32f403_adc.h:158
ADC12_ORDINARY_TRIG_TMR8CH2
@ ADC12_ORDINARY_TRIG_TMR8CH2
Definition: at32f403_adc.h:164
ADC12_ORDINARY_TRIG_TMR4CH4
@ ADC12_ORDINARY_TRIG_TMR4CH4
Definition: at32f403_adc.h:154
ADC12_ORDINARY_TRIG_TMR15CH3
@ ADC12_ORDINARY_TRIG_TMR15CH3
Definition: at32f403_adc.h:159
ADC12_ORDINARY_TRIG_TMR1CH3
@ ADC12_ORDINARY_TRIG_TMR1CH3
Definition: at32f403_adc.h:151
ADC3_ORDINARY_TRIG_TMR1CH1
@ ADC3_ORDINARY_TRIG_TMR1CH1
Definition: at32f403_adc.h:180
ADC3_ORDINARY_TRIG_TMR15CH3
@ ADC3_ORDINARY_TRIG_TMR15CH3
Definition: at32f403_adc.h:176
ADC3_ORDINARY_TRIG_TMR1CH3
@ ADC3_ORDINARY_TRIG_TMR1CH3
Definition: at32f403_adc.h:168
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC3_ORDINARY_TRIG_TMR3CH1
@ ADC3_ORDINARY_TRIG_TMR3CH1
Definition: at32f403_adc.h:166
ADC3_ORDINARY_TRIG_TMR2CH3
@ ADC3_ORDINARY_TRIG_TMR2CH3
Definition: at32f403_adc.h:167
ADC3_ORDINARY_TRIG_TMR5CH3
@ ADC3_ORDINARY_TRIG_TMR5CH3
Definition: at32f403_adc.h:172
ADC3_ORDINARY_TRIG_TMR15CH1
@ ADC3_ORDINARY_TRIG_TMR15CH1
Definition: at32f403_adc.h:174
ADC12_ORDINARY_TRIG_TMR15TRGOUT
@ ADC12_ORDINARY_TRIG_TMR15TRGOUT
Definition: at32f403_adc.h:161
ADC3_ORDINARY_TRIG_TMR8TRGOUT
@ ADC3_ORDINARY_TRIG_TMR8TRGOUT
Definition: at32f403_adc.h:170
ADC3_ORDINARY_TRIG_TMR15CH2
@ ADC3_ORDINARY_TRIG_TMR15CH2
Definition: at32f403_adc.h:175
ADC12_ORDINARY_TRIG_TMR15CH1
@ ADC12_ORDINARY_TRIG_TMR15CH1
Definition: at32f403_adc.h:157
ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT
@ ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT
Definition: at32f403_adc.h:155
ADC12_ORDINARY_TRIG_TMR3TRGOUT
@ ADC12_ORDINARY_TRIG_TMR3TRGOUT
Definition: at32f403_adc.h:153
ADC3_ORDINARY_TRIG_SOFTWARE
@ ADC3_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:173
ADC3_ORDINARY_TRIG_TMR15TRGOUT
@ ADC3_ORDINARY_TRIG_TMR15TRGOUT
Definition: at32f403_adc.h:178
ADC3_ORDINARY_TRIG_TMR8CH1
@ ADC3_ORDINARY_TRIG_TMR8CH1
Definition: at32f403_adc.h:169
ADC12_ORDINARY_TRIG_TMR8CH1
@ ADC12_ORDINARY_TRIG_TMR8CH1
Definition: at32f403_adc.h:163
ADC_PREEMPT_CHANNEL_3
@ ADC_PREEMPT_CHANNEL_3
Definition: at32f403_adc.h:232
ADC_PREEMPT_CHANNEL_4
@ ADC_PREEMPT_CHANNEL_4
Definition: at32f403_adc.h:233
ADC_PREEMPT_CHANNEL_2
@ ADC_PREEMPT_CHANNEL_2
Definition: at32f403_adc.h:231
ADC_PREEMPT_CHANNEL_1
@ ADC_PREEMPT_CHANNEL_1
Definition: at32f403_adc.h:230
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
adc_type
type define adc register all
Definition: at32f403_adc.h:265
adc_type::cspt1
__IO uint32_t cspt1
Definition: at32f403_adc.h:369
adc_type::pcce
__IO uint32_t pcce
Definition: at32f403_adc.h:277
adc_type::adc2odt
__IO uint32_t adc2odt
Definition: at32f403_adc.h:591
adc_type::dtalign
__IO uint32_t dtalign
Definition: at32f403_adc.h:325
adc_type::osq2
__IO uint32_t osq2
Definition: at32f403_adc.h:482
adc_type::ocdmaen
__IO uint32_t ocdmaen
Definition: at32f403_adc.h:323
adc_type::ocswtrg
__IO uint32_t ocswtrg
Definition: at32f403_adc.h:332
adc_type::osn14
__IO uint32_t osn14
Definition: at32f403_adc.h:469
adc_type::rpen
__IO uint32_t rpen
Definition: at32f403_adc.h:319
adc_type::sqen
__IO uint32_t sqen
Definition: at32f403_adc.h:296
adc_type::pctesel_h
__IO uint32_t pctesel_h
Definition: at32f403_adc.h:334
adc_type::pdt4
__IO uint32_t pdt4
Definition: at32f403_adc.h:574
adc_type::cspt15
__IO uint32_t cspt15
Definition: at32f403_adc.h:353
adc_type::pclen
__IO uint32_t pclen
Definition: at32f403_adc.h:525
adc_type::vmcsel
__IO uint32_t vmcsel
Definition: at32f403_adc.h:292
adc_type::cspt7
__IO uint32_t cspt7
Definition: at32f403_adc.h:375
adc_type::odt
__IO uint32_t odt
Definition: at32f403_adc.h:587
adc_type::pcvmen
__IO uint32_t pcvmen
Definition: at32f403_adc.h:304
adc_type::osn1
__IO uint32_t osn1
Definition: at32f403_adc.h:503
adc_type::pcdto4
__IO uint32_t pcdto4
Definition: at32f403_adc.h:426
adc_type::pdt1
__IO uint32_t pdt1
Definition: at32f403_adc.h:535
adc_type::pcdto2
__IO uint32_t pcdto2
Definition: at32f403_adc.h:400
adc_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_adc.h:328
adc_type::cspt6
__IO uint32_t cspt6
Definition: at32f403_adc.h:374
adc_type::osn6
__IO uint32_t osn6
Definition: at32f403_adc.h:508
adc_type::osn8
__IO uint32_t osn8
Definition: at32f403_adc.h:486
adc_type::pcpen
__IO uint32_t pcpen
Definition: at32f403_adc.h:300
adc_type::osn16
__IO uint32_t osn16
Definition: at32f403_adc.h:471
adc_type::cspt13
__IO uint32_t cspt13
Definition: at32f403_adc.h:351
adc_type::vmsgen
__IO uint32_t vmsgen
Definition: at32f403_adc.h:297
adc_type::psq
__IO uint32_t psq
Definition: at32f403_adc.h:518
adc_type::osn3
__IO uint32_t osn3
Definition: at32f403_adc.h:505
adc_type::pcceien
__IO uint32_t pcceien
Definition: at32f403_adc.h:295
adc_type::octen
__IO uint32_t octen
Definition: at32f403_adc.h:330
adc_type::vmorien
__IO uint32_t vmorien
Definition: at32f403_adc.h:294
adc_type::ocvmen
__IO uint32_t ocvmen
Definition: at32f403_adc.h:305
adc_type::oclen
__IO uint32_t oclen
Definition: at32f403_adc.h:472
adc_type::pcdto1
__IO uint32_t pcdto1
Definition: at32f403_adc.h:387
adc_type::mssel
__IO uint32_t mssel
Definition: at32f403_adc.h:302
adc_type::occs
__IO uint32_t occs
Definition: at32f403_adc.h:279
adc_type::osn9
__IO uint32_t osn9
Definition: at32f403_adc.h:487
adc_type::cspt5
__IO uint32_t cspt5
Definition: at32f403_adc.h:373
adc_type::spt1
__IO uint32_t spt1
Definition: at32f403_adc.h:345
adc_type::psn4
__IO uint32_t psn4
Definition: at32f403_adc.h:524
adc_type::cspt12
__IO uint32_t cspt12
Definition: at32f403_adc.h:350
adc_type::adcal
__IO uint32_t adcal
Definition: at32f403_adc.h:320
adc_type::cspt14
__IO uint32_t cspt14
Definition: at32f403_adc.h:352
adc_type::octesel_l
__IO uint32_t octesel_l
Definition: at32f403_adc.h:329
adc_type::cceien
__IO uint32_t cceien
Definition: at32f403_adc.h:293
adc_type::pctesel_l
__IO uint32_t pctesel_l
Definition: at32f403_adc.h:326
adc_type::octesel_h
__IO uint32_t octesel_h
Definition: at32f403_adc.h:335
adc_type::psn3
__IO uint32_t psn3
Definition: at32f403_adc.h:523
adc_type::itsrven
__IO uint32_t itsrven
Definition: at32f403_adc.h:333
adc_type::spt2
__IO uint32_t spt2
Definition: at32f403_adc.h:365
adc_type::osn4
__IO uint32_t osn4
Definition: at32f403_adc.h:506
adc_type::adcen
__IO uint32_t adcen
Definition: at32f403_adc.h:318
adc_type::vmhb
__IO uint32_t vmhb
Definition: at32f403_adc.h:439
adc_type::ocpen
__IO uint32_t ocpen
Definition: at32f403_adc.h:299
adc_type::cspt9
__IO uint32_t cspt9
Definition: at32f403_adc.h:377
adc_type::adcalinit
__IO uint32_t adcalinit
Definition: at32f403_adc.h:321
adc_type::pdt3
__IO uint32_t pdt3
Definition: at32f403_adc.h:561
adc_type::psn1
__IO uint32_t psn1
Definition: at32f403_adc.h:521
adc_type::reserved4
__IO uint32_t reserved4
Definition: at32f403_adc.h:336
adc_type::cspt10
__IO uint32_t cspt10
Definition: at32f403_adc.h:348
adc_type::osn10
__IO uint32_t osn10
Definition: at32f403_adc.h:488
adc_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_adc.h:306
adc_type::osn12
__IO uint32_t osn12
Definition: at32f403_adc.h:490
adc_type::ctrl1
__IO uint32_t ctrl1
Definition: at32f403_adc.h:289
adc_type::sts
__IO uint32_t sts
Definition: at32f403_adc.h:272
adc_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_adc.h:315
adc_type::cspt0
__IO uint32_t cspt0
Definition: at32f403_adc.h:368
adc_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_adc.h:280
adc_type::cce
__IO uint32_t cce
Definition: at32f403_adc.h:276
adc_type::osq1
__IO uint32_t osq1
Definition: at32f403_adc.h:465
adc_type::cspt16
__IO uint32_t cspt16
Definition: at32f403_adc.h:354
adc_type::psn2
__IO uint32_t psn2
Definition: at32f403_adc.h:522
adc_type::osn2
__IO uint32_t osn2
Definition: at32f403_adc.h:504
adc_type::vmor
__IO uint32_t vmor
Definition: at32f403_adc.h:275
adc_type::osn15
__IO uint32_t osn15
Definition: at32f403_adc.h:470
adc_type::osn11
__IO uint32_t osn11
Definition: at32f403_adc.h:489
adc_type::vmlb
__IO uint32_t vmlb
Definition: at32f403_adc.h:452
adc_type::osn5
__IO uint32_t osn5
Definition: at32f403_adc.h:507
adc_type::pdt2
__IO uint32_t pdt2
Definition: at32f403_adc.h:548
adc_type::cspt4
__IO uint32_t cspt4
Definition: at32f403_adc.h:372
adc_type::ocpcnt
__IO uint32_t ocpcnt
Definition: at32f403_adc.h:301
adc_type::osq3
__IO uint32_t osq3
Definition: at32f403_adc.h:500
adc_type::pcautoen
__IO uint32_t pcautoen
Definition: at32f403_adc.h:298
adc_type::cspt2
__IO uint32_t cspt2
Definition: at32f403_adc.h:370
adc_type::cspt17
__IO uint32_t cspt17
Definition: at32f403_adc.h:355
adc_type::cspt11
__IO uint32_t cspt11
Definition: at32f403_adc.h:349
adc_type::pcdto3
__IO uint32_t pcdto3
Definition: at32f403_adc.h:413
adc_type::cspt8
__IO uint32_t cspt8
Definition: at32f403_adc.h:376
adc_type::osn7
__IO uint32_t osn7
Definition: at32f403_adc.h:485
adc_type::pcten
__IO uint32_t pcten
Definition: at32f403_adc.h:327
adc_type::pcswtrg
__IO uint32_t pcswtrg
Definition: at32f403_adc.h:331
adc_type::osn13
__IO uint32_t osn13
Definition: at32f403_adc.h:468
adc_type::cspt3
__IO uint32_t cspt3
Definition: at32f403_adc.h:371
adc_type::pccs
__IO uint32_t pccs
Definition: at32f403_adc.h:278


AT32F403 Firmwary Library: at32f403_board.c Source File

  • at32f403_board
at32f403_board.c
Go to the documentation of this file.
1
26#include "at32f403_board.h"
27
37/* delay macros */
38#define STEP_DELAY_MS 50
39
40/* at-start led resouce array */
41 gpio_type *led_gpio_port[LED_NUM] = {LED2_GPIO, LED3_GPIO, LED4_GPIO};
42uint16_t led_gpio_pin[LED_NUM] = {LED2_PIN, LED3_PIN, LED4_PIN};
43 crm_periph_clock_type led_gpio_crm_clk[LED_NUM] = {LED2_GPIO_CRM_CLK, LED3_GPIO_CRM_CLK, LED4_GPIO_CRM_CLK};
44
45/* delay variable */
46static __IO uint32_t fac_us;
47static __IO uint32_t fac_ms;
48
49/* support printf function, usemicrolib is unnecessary */
50#if (__ARMCC_VERSION > 6000000)
51 __asm (".global __use_no_semihosting\n\t");
52 void _sys_exit(int x)
53 {
54 x = x;
55 }
56 /* __use_no_semihosting was requested, but _ttywrch was */
57 void _ttywrch(int ch)
58 {
59 ch = ch;
60 }
61 FILE __stdout;
62#else
63 #ifdef __CC_ARM
64 #pragma import(__use_no_semihosting)
65 struct __FILE
66 {
67 int handle;
68 };
69 FILE __stdout;
70 void _sys_exit(int x)
71 {
72 x = x;
73 }
74 /* __use_no_semihosting was requested, but _ttywrch was */
75 void _ttywrch(int ch)
76 {
77 ch = ch;
78 }
79 #endif
80#endif
81
82#if defined (__GNUC__) && !defined (__clang__)
83 #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
84#else
85 #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
86#endif
87
93 PUTCHAR_PROTOTYPE
94{
95 while(usart_flag_get(PRINT_UART, USART_TDBE_FLAG) == RESET);
96 usart_data_transmit(PRINT_UART, (uint16_t)ch);
97 while(usart_flag_get(PRINT_UART, USART_TDC_FLAG) == RESET);
98 return ch;
99}
100
101#if (defined (__GNUC__) && !defined (__clang__)) || (defined (__ICCARM__))
102#if defined (__GNUC__) && !defined (__clang__)
103int _write(int fd, char *pbuffer, int size)
104#elif defined ( __ICCARM__ )
105#pragma module_name = "?__write"
106int __write(int fd, char *pbuffer, int size)
107#endif
108{
109 for(int i = 0; i < size; i ++)
110 {
111 while(usart_flag_get(PRINT_UART, USART_TDBE_FLAG) == RESET);
112 usart_data_transmit(PRINT_UART, (uint16_t)(*pbuffer++));
113 while(usart_flag_get(PRINT_UART, USART_TDC_FLAG) == RESET);
114 }
115
116 return size;
117}
118#endif
119
125void uart_print_init(uint32_t baudrate)
126{
127 gpio_init_type gpio_init_struct;
128
129#if defined (__GNUC__) && !defined (__clang__)
130 setvbuf(stdout, NULL, _IONBF, 0);
131#endif
132
133 /* enable the uart and gpio clock */
134 crm_periph_clock_enable(PRINT_UART_CRM_CLK, TRUE);
135 crm_periph_clock_enable(PRINT_UART_TX_GPIO_CRM_CLK, TRUE);
136
137 gpio_default_para_init(&gpio_init_struct);
138
139 /* configure the uart tx pin */
140 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
141 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
142 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
143 gpio_init_struct.gpio_pins = PRINT_UART_TX_PIN;
144 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
145 gpio_init(PRINT_UART_TX_GPIO, &gpio_init_struct);
146
147 /* configure uart param */
148 usart_init(PRINT_UART, baudrate, USART_DATA_8BITS, USART_STOP_1_BIT);
149 usart_transmitter_enable(PRINT_UART, TRUE);
150 usart_enable(PRINT_UART, TRUE);
151}
152
158void at32_board_init()
159{
160 /* initialize delay function */
161 delay_init();
162
163 /* configure led in at_start_board */
164 at32_led_init(LED2);
165 at32_led_init(LED3);
166 at32_led_init(LED4);
167 at32_led_off(LED2);
168 at32_led_off(LED3);
169 at32_led_off(LED4);
170
171 /* configure button in at_start board */
172 at32_button_init();
173}
174
180void at32_button_init(void)
181{
182 gpio_init_type gpio_init_struct;
183
184 /* enable the button clock */
185 crm_periph_clock_enable(USER_BUTTON_CRM_CLK, TRUE);
186
187 /* set default parameter */
188 gpio_default_para_init(&gpio_init_struct);
189
190 /* configure button pin as input with pull-up/pull-down */
191 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
192 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
193 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
194 gpio_init_struct.gpio_pins = USER_BUTTON_PIN;
195 gpio_init_struct.gpio_pull = GPIO_PULL_DOWN;
196 gpio_init(USER_BUTTON_PORT, &gpio_init_struct);
197}
198
204uint8_t at32_button_state(void)
205{
206 return gpio_input_data_bit_read(USER_BUTTON_PORT, USER_BUTTON_PIN);
207}
208
214 button_type at32_button_press()
215{
216 static uint8_t pressed = 1;
217 /* get button state in at_start board */
218 if((pressed == 1) && (at32_button_state() != RESET))
219 {
220 /* debounce */
221 pressed = 0;
222 delay_ms(10);
223 if(at32_button_state() != RESET)
224 return USER_BUTTON;
225 }
226 else if(at32_button_state() == RESET)
227 {
228 pressed = 1;
229 }
230 return NO_BUTTON;
231}
232
238void at32_led_init(led_type led)
239{
240 gpio_init_type gpio_init_struct;
241
242 /* enable the led clock */
243 crm_periph_clock_enable(led_gpio_crm_clk[led], TRUE);
244
245 /* set default parameter */
246 gpio_default_para_init(&gpio_init_struct);
247
248 /* configure the led gpio */
249 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
250 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
251 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
252 gpio_init_struct.gpio_pins = led_gpio_pin[led];
253 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
254 gpio_init(led_gpio_port[led], &gpio_init_struct);
255}
256
266void at32_led_on(led_type led)
267{
268 if(led > (LED_NUM - 1))
269 return;
270 if(led_gpio_pin[led])
271 led_gpio_port[led]->clr = led_gpio_pin[led];
272}
273
283void at32_led_off(led_type led)
284{
285 if(led > (LED_NUM - 1))
286 return;
287 if(led_gpio_pin[led])
288 led_gpio_port[led]->scr = led_gpio_pin[led];
289}
290
300void at32_led_toggle(led_type led)
301{
302 if(led > (LED_NUM - 1))
303 return;
304 if(led_gpio_pin[led])
305 led_gpio_port[led]->odt ^= led_gpio_pin[led];
306}
307
313void delay_init()
314{
315 /* configure systick */
316 systick_clock_source_config(SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV);
317 fac_us = system_core_clock / (1000000U);
318 fac_ms = fac_us * (1000U);
319}
320
326void delay_us(uint32_t nus)
327{
328 uint32_t temp = 0;
329 SysTick->LOAD = (uint32_t)(nus * fac_us);
330 SysTick->VAL = 0x00;
331 SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk ;
332 do
333 {
334 temp = SysTick->CTRL;
335 }while((temp & 0x01) && !(temp & (1 << 16)));
336
337 SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk;
338 SysTick->VAL = 0x00;
339}
340
346void delay_ms(uint16_t nms)
347{
348 uint32_t temp = 0;
349 while(nms)
350 {
351 if(nms > STEP_DELAY_MS)
352 {
353 SysTick->LOAD = (uint32_t)(STEP_DELAY_MS * fac_ms);
354 nms -= STEP_DELAY_MS;
355 }
356 else
357 {
358 SysTick->LOAD = (uint32_t)(nms * fac_ms);
359 nms = 0;
360 }
361 SysTick->VAL = 0x00;
362 SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk;
363 do
364 {
365 temp = SysTick->CTRL;
366 }while((temp & 0x01) && !(temp & (1 << 16)));
367
368 SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk;
369 SysTick->VAL = 0x00;
370 }
371}
372
378void delay_sec(uint16_t sec)
379{
380 uint16_t index;
381 for(index = 0; index < sec; index++)
382 {
383 delay_ms(500);
384 delay_ms(500);
385 }
386}
387
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
USER_BUTTON_PORT
#define USER_BUTTON_PORT
Definition: at32f403_board.h:97
PRINT_UART_CRM_CLK
#define PRINT_UART_CRM_CLK
Definition: at32f403_board.h:84
USER_BUTTON_PIN
#define USER_BUTTON_PIN
Definition: at32f403_board.h:96
PRINT_UART_TX_PIN
#define PRINT_UART_TX_PIN
Definition: at32f403_board.h:85
LED_NUM
#define LED_NUM
Definition: at32f403_board.h:66
led_type
led_type
Definition: at32f403_board.h:60
PRINT_UART
#define PRINT_UART
Definition: at32f403_board.h:83
PRINT_UART_TX_GPIO
#define PRINT_UART_TX_GPIO
Definition: at32f403_board.h:86
USER_BUTTON_CRM_CLK
#define USER_BUTTON_CRM_CLK
Definition: at32f403_board.h:98
PRINT_UART_TX_GPIO_CRM_CLK
#define PRINT_UART_TX_GPIO_CRM_CLK
Definition: at32f403_board.h:87
button_type
button_type
Definition: at32f403_board.h:91
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
NO_BUTTON
@ NO_BUTTON
Definition: at32f403_board.h:93
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
led_gpio_port
gpio_type * led_gpio_port[3]
Definition: at32f403_board.c:41
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
fac_ms
static __IO uint32_t fac_ms
Definition: at32f403_board.c:47
led_gpio_pin
uint16_t led_gpio_pin[3]
Definition: at32f403_board.c:42
at32_led_init
void at32_led_init(led_type led)
configure led gpio
Definition: at32f403_board.c:238
delay_init
void delay_init()
initialize delay function
Definition: at32f403_board.c:313
at32_button_state
uint8_t at32_button_state(void)
returns the selected button state
Definition: at32f403_board.c:204
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
STEP_DELAY_MS
#define STEP_DELAY_MS
Definition: at32f403_board.c:38
led_gpio_crm_clk
crm_periph_clock_type led_gpio_crm_clk[3]
Definition: at32f403_board.c:43
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
PUTCHAR_PROTOTYPE
#define PUTCHAR_PROTOTYPE
Definition: at32f403_board.c:85
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
at32_button_init
void at32_button_init(void)
configure button gpio
Definition: at32f403_board.c:180
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
fac_us
static __IO uint32_t fac_us
Definition: at32f403_board.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_periph_clock_type
crm_periph_clock_type
crm periph clock
Definition: at32f403_crm.h:100
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
systick_clock_source_config
void systick_clock_source_config(systick_clock_source_type source)
config systick clock source
Definition: at32f403_misc.c:145
SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
@ SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
Definition: at32f403_misc.h:88
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_TDC_FLAG
#define USART_TDC_FLAG
Definition: at32f403_usart.h:56
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
gpio_type
type define gpio register all
Definition: at32f403_gpio.h:230
gpio_type::scr
__IO uint32_t scr
Definition: at32f403_gpio.h:346
gpio_type::odt
__IO uint32_t odt
Definition: at32f403_gpio.h:318
gpio_type::clr
__IO uint32_t clr
Definition: at32f403_gpio.h:389


AT32F403 Firmwary Library: at32f403_board.h Source File

  • at32f403_board
at32f403_board.h
Go to the documentation of this file.
1
26#ifndef __AT32F403_BOARD_H
27#define __AT32F403_BOARD_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "stdio.h"
34#include "at32f403.h"
35
54#if !defined (AT_START_F403_V1)
55#error "please select first the board at-start device used in your application (in at32f403_board.h file)"
56#endif
57
58/******************** define led ********************/
59typedef enum
60{
61 LED2 = 0,
62 LED3 = 1,
63 LED4 = 2
64} led_type;
65
66#define LED_NUM 3
67
68#if defined (AT_START_F403_V1)
69#define LED2_PIN GPIO_PINS_13
70#define LED2_GPIO GPIOD
71#define LED2_GPIO_CRM_CLK CRM_GPIOD_PERIPH_CLOCK
72
73#define LED3_PIN GPIO_PINS_14
74#define LED3_GPIO GPIOD
75#define LED3_GPIO_CRM_CLK CRM_GPIOD_PERIPH_CLOCK
76
77#define LED4_PIN GPIO_PINS_15
78#define LED4_GPIO GPIOD
79#define LED4_GPIO_CRM_CLK CRM_GPIOD_PERIPH_CLOCK
80#endif
81
82/**************** define print uart ******************/
83#define PRINT_UART USART1
84#define PRINT_UART_CRM_CLK CRM_USART1_PERIPH_CLOCK
85#define PRINT_UART_TX_PIN GPIO_PINS_9
86#define PRINT_UART_TX_GPIO GPIOA
87#define PRINT_UART_TX_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
88
89/******************* define button *******************/
90typedef enum
91{
92 USER_BUTTON = 0,
93 NO_BUTTON = 1
94} button_type;
95
96#define USER_BUTTON_PIN GPIO_PINS_0
97#define USER_BUTTON_PORT GPIOA
98#define USER_BUTTON_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
99
108/******************** functions ********************/
109void at32_board_init(void);
110
111/* led operation function */
112void at32_led_init(led_type led);
113void at32_led_on(led_type led);
114void at32_led_off(led_type led);
115void at32_led_toggle(led_type led);
116
117/* button operation function */
118void at32_button_init(void);
119 button_type at32_button_press(void);
120uint8_t at32_button_state(void);
121
122/* delay function */
123void delay_init(void);
124void delay_us(uint32_t nus);
125void delay_ms(uint16_t nms);
126void delay_sec(uint16_t sec);
127
128/* printf uart init function */
129void uart_print_init(uint32_t baudrate);
130
143#ifdef __cplusplus
144}
145#endif
146
147#endif
148
at32f403.h
at32f403 header file
at32_board_init
void at32_board_init(void)
board initialize interface init led and button
Definition: at32f403_board.c:158
at32_led_init
void at32_led_init(led_type led)
configure led gpio
Definition: at32f403_board.c:238
at32_button_state
uint8_t at32_button_state(void)
returns the selected button state
Definition: at32f403_board.c:204
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_button_press
button_type at32_button_press(void)
returns which button have press down
Definition: at32f403_board.c:214
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
at32_button_init
void at32_button_init(void)
configure button gpio
Definition: at32f403_board.c:180
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
delay_init
void delay_init(void)
initialize delay function
Definition: at32f403_board.c:313
led_type
led_type
Definition: at32f403_board.h:60
button_type
button_type
Definition: at32f403_board.h:91
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
NO_BUTTON
@ NO_BUTTON
Definition: at32f403_board.h:93
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92


AT32F403 Firmwary Library: at32f403_bpr.c Source File

  • libraries
  • drivers
  • src
at32f403_bpr.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef BPR_MODULE_ENABLED
37
47void bpr_reset(void)
48{
49 crm_battery_powered_domain_reset(TRUE);
50 crm_battery_powered_domain_reset(FALSE);
51}
52
61 flag_status bpr_flag_get(uint32_t flag)
62{
63 if(flag == BPR_TAMPER_INTERRUPT_FLAG)
64 {
65 return (flag_status)(BPR->ctrlsts_bit.tpif);
66 }
67 else
68 {
69 return (flag_status)(BPR->ctrlsts_bit.tpef);
70 }
71}
72
81 flag_status bpr_interrupt_flag_get(uint32_t flag)
82{
83 if(flag == BPR_TAMPER_INTERRUPT_FLAG)
84 {
85 return (flag_status)(BPR->ctrlsts_bit.tpif && BPR->ctrlsts_bit.tpien);
86 }
87 else
88 {
89 return (flag_status)(BPR->ctrlsts_bit.tpef && BPR->ctrlsts_bit.tpien);
90 }
91}
92
101void bpr_flag_clear(uint32_t flag)
102{
103 if(flag == BPR_TAMPER_INTERRUPT_FLAG)
104 {
105 BPR->ctrlsts_bit.tpifclr = TRUE;
106 }
107 else
108 {
109 BPR->ctrlsts_bit.tpefclr = TRUE;
110 }
111}
112
118void bpr_interrupt_enable(confirm_state new_state)
119{
120 BPR->ctrlsts_bit.tpien = new_state;
121}
122
134uint16_t bpr_data_read(bpr_data_type bpr_data)
135{
136 return (*(__IO uint16_t *)(BPR_BASE + bpr_data));
137}
138
151void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value)
152{
153 (*(__IO uint32_t *)(BPR_BASE + bpr_data)) = data_value;
154}
155
167void bpr_rtc_output_select(bpr_rtc_output_type output_source)
168{
169 /* clear cco,asoe,asos,ccos,togen bits */
170 BPR->rtccal &= (uint32_t)~0x0F80;
171
172 /* set output_source value */
173 BPR->rtccal |= output_source;
174}
175
181void bpr_rtc_clock_calibration_value_set(uint8_t calibration_value)
182{
183 /* set rtc clock calibration value */
184 BPR->rtccal_bit.calval= calibration_value;
185}
186
192void bpr_tamper_pin_enable(confirm_state new_state)
193{
194 BPR->ctrl_bit.tpen = new_state;
195}
196
205void bpr_tamper_pin_active_level_set(bpr_tamper_pin_active_level_type active_level)
206{
207 BPR->ctrl_bit.tpp = active_level;
208}
209
214#endif
215
bpr_data_type
bpr_data_type
battery powered register data type
Definition: at32f403_bpr.h:65
bpr_tamper_pin_active_level_type
bpr_tamper_pin_active_level_type
tamper pin active level type
Definition: at32f403_bpr.h:126
bpr_rtc_output_type
bpr_rtc_output_type
bpr rtc output type
Definition: at32f403_bpr.h:114
BPR_TAMPER_INTERRUPT_FLAG
#define BPR_TAMPER_INTERRUPT_FLAG
Definition: at32f403_bpr.h:50
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
bpr_rtc_clock_calibration_value_set
void bpr_rtc_clock_calibration_value_set(uint8_t calibration_value)
set rtc clock calibration value
Definition: at32f403_bpr.c:181
bpr_tamper_pin_enable
void bpr_tamper_pin_enable(confirm_state new_state)
enable or disable bpr tamper pin
Definition: at32f403_bpr.c:192
bpr_interrupt_enable
void bpr_interrupt_enable(confirm_state new_state)
enable or disable bpr tamper interrupt
Definition: at32f403_bpr.c:118
bpr_interrupt_flag_get
flag_status bpr_interrupt_flag_get(uint32_t flag)
bpr interrupt flag get
Definition: at32f403_bpr.c:81
bpr_rtc_output_select
void bpr_rtc_output_select(bpr_rtc_output_type output_source)
select bpr rtc output
Definition: at32f403_bpr.c:167
bpr_tamper_pin_active_level_set
void bpr_tamper_pin_active_level_set(bpr_tamper_pin_active_level_type active_level)
set bpr tamper pin active level
Definition: at32f403_bpr.c:205
bpr_data_read
uint16_t bpr_data_read(bpr_data_type bpr_data)
read bpr bpr data
Definition: at32f403_bpr.c:134
bpr_flag_clear
void bpr_flag_clear(uint32_t flag)
clear bpr tamper flag
Definition: at32f403_bpr.c:101
bpr_data_write
void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value)
write bpr data
Definition: at32f403_bpr.c:151
bpr_flag_get
flag_status bpr_flag_get(uint32_t flag)
bpr event flag get, for tamper event flag
Definition: at32f403_bpr.c:61
BPR
#define BPR
Definition: at32f403_bpr.h:752
crm_battery_powered_domain_reset
void crm_battery_powered_domain_reset(confirm_state new_state)
battery powered domain software reset
Definition: at32f403_crm.c:565
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
BPR_BASE
#define BPR_BASE
Definition: at32f403.h:378
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_bpr.h Source File

  • libraries
  • drivers
  • inc
at32f403_bpr.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_BPR_H
27#define __AT32F403_BPR_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define BPR_TAMPER_INTERRUPT_FLAG ((uint32_t)0x00000001)
51#define BPR_TAMPER_EVENT_FLAG ((uint32_t)0x00000002)
64typedef enum
65{
66 BPR_DATA1 = 0x04,
67 BPR_DATA2 = 0x08,
68 BPR_DATA3 = 0x0C,
69 BPR_DATA4 = 0x10,
70 BPR_DATA5 = 0x14,
71 BPR_DATA6 = 0x18,
72 BPR_DATA7 = 0x1C,
73 BPR_DATA8 = 0x20,
74 BPR_DATA9 = 0x24,
75 BPR_DATA10 = 0x28,
76 BPR_DATA11 = 0x40,
77 BPR_DATA12 = 0x44,
78 BPR_DATA13 = 0x48,
79 BPR_DATA14 = 0x4C,
80 BPR_DATA15 = 0x50,
81 BPR_DATA16 = 0x54,
82 BPR_DATA17 = 0x58,
83 BPR_DATA18 = 0x5C,
84 BPR_DATA19 = 0x60,
85 BPR_DATA20 = 0x64,
86 BPR_DATA21 = 0x68,
87 BPR_DATA22 = 0x6C,
88 BPR_DATA23 = 0x70,
89 BPR_DATA24 = 0x74,
90 BPR_DATA25 = 0x78,
91 BPR_DATA26 = 0x7C,
92 BPR_DATA27 = 0x80,
93 BPR_DATA28 = 0x84,
94 BPR_DATA29 = 0x88,
95 BPR_DATA30 = 0x8C,
96 BPR_DATA31 = 0x90,
97 BPR_DATA32 = 0x94,
98 BPR_DATA33 = 0x98,
99 BPR_DATA34 = 0x9C,
100 BPR_DATA35 = 0xA0,
101 BPR_DATA36 = 0xA4,
102 BPR_DATA37 = 0xA8,
103 BPR_DATA38 = 0xAC,
104 BPR_DATA39 = 0xB0,
105 BPR_DATA40 = 0xB4,
106 BPR_DATA41 = 0xB8,
107 BPR_DATA42 = 0xBC
108} bpr_data_type;
109
113typedef enum
114{
115 BPR_RTC_OUTPUT_NONE = 0x000,
116 BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE = 0x080,
117 BPR_RTC_OUTPUT_ALARM = 0x100,
118 BPR_RTC_OUTPUT_SECOND = 0x300,
119 BPR_RTC_OUTPUT_CLOCK_CAL_AFTER = 0x480,
120} bpr_rtc_output_type;
121
125typedef enum
126{
127 BPR_TAMPER_PIN_ACTIVE_HIGH = 0x00,
128 BPR_TAMPER_PIN_ACTIVE_LOW = 0x01
129} bpr_tamper_pin_active_level_type;
130
134typedef struct
135{
139 __IO uint32_t reserved1;
140
144 union
145 {
146 __IO uint32_t dt1;
147 struct
148 {
149 __IO uint32_t dt : 16;/* [15:0] */
150 __IO uint32_t reserved1 : 16;/* [31:15] */
151 } dt1_bit;
152 };
153
157 union
158 {
159 __IO uint32_t dt2;
160 struct
161 {
162 __IO uint32_t dt : 16;/* [15:0] */
163 __IO uint32_t reserved1 : 16;/* [31:15] */
164 } dt2_bit;
165 };
166
170 union
171 {
172 __IO uint32_t dt3;
173 struct
174 {
175 __IO uint32_t dt : 16;/* [15:0] */
176 __IO uint32_t reserved1 : 16;/* [31:15] */
177 } dt3_bit;
178 };
179
183 union
184 {
185 __IO uint32_t dt4;
186 struct
187 {
188 __IO uint32_t dt : 16;/* [15:0] */
189 __IO uint32_t reserved1 : 16;/* [31:15] */
190 } dt4_bit;
191 };
192
196 union
197 {
198 __IO uint32_t dt5;
199 struct
200 {
201 __IO uint32_t dt : 16;/* [15:0] */
202 __IO uint32_t reserved1 : 16;/* [31:15] */
203 } dt5_bit;
204 };
205
209 union
210 {
211 __IO uint32_t dt6;
212 struct
213 {
214 __IO uint32_t dt : 16;/* [15:0] */
215 __IO uint32_t reserved1 : 16;/* [31:15] */
216 } dt6_bit;
217 };
218
222 union
223 {
224 __IO uint32_t dt7;
225 struct
226 {
227 __IO uint32_t dt : 16;/* [15:0] */
228 __IO uint32_t reserved1 : 16;/* [31:15] */
229 } dt7_bit;
230 };
231
235 union
236 {
237 __IO uint32_t dt8;
238 struct
239 {
240 __IO uint32_t dt : 16;/* [15:0] */
241 __IO uint32_t reserved1 : 16;/* [31:15] */
242 } dt8_bit;
243 };
244
248 union
249 {
250 __IO uint32_t dt9;
251 struct
252 {
253 __IO uint32_t dt : 16;/* [15:0] */
254 __IO uint32_t reserved1 : 16;/* [31:15] */
255 } dt9_bit;
256 };
257
261 union
262 {
263 __IO uint32_t dt10;
264 struct
265 {
266 __IO uint32_t dt : 16;/* [15:0] */
267 __IO uint32_t reserved1 : 16;/* [31:15] */
268 } dt10_bit;
269 };
270
274 union
275 {
276 __IO uint32_t rtccal;
277 struct
278 {
279 __IO uint32_t calval : 7; /* [6:0] */
280 __IO uint32_t calout : 1; /* [7] */
281 __IO uint32_t outen : 1; /* [8] */
282 __IO uint32_t outsel : 1; /* [9] */
283 __IO uint32_t ccos : 1; /* [10] */
284 __IO uint32_t outm : 1; /* [11] */
285 __IO uint32_t reserved1 : 20;/* [31:12] */
286 } rtccal_bit;
287 };
288
292 union
293 {
294 __IO uint32_t ctrl;
295 struct
296 {
297 __IO uint32_t tpen : 1; /* [0] */
298 __IO uint32_t tpp : 1; /* [1] */
299 __IO uint32_t reserved1 : 30;/* [31:2] */
300 } ctrl_bit;
301 };
302
306 union
307 {
308 __IO uint32_t ctrlsts;
309 struct
310 {
311 __IO uint32_t tpefclr : 1;/* [0] */
312 __IO uint32_t tpifclr : 1;/* [1] */
313 __IO uint32_t tpien : 1;/* [2] */
314 __IO uint32_t reserved1 : 5;/* [7:3] */
315 __IO uint32_t tpef : 1;/* [8] */
316 __IO uint32_t tpif : 1;/* [9] */
317 __IO uint32_t reserved2 : 22;/* [31:10] */
318 } ctrlsts_bit;
319 };
320
324 __IO uint32_t reserved2;
325
329 __IO uint32_t reserved3;
330
334 union
335 {
336 __IO uint32_t dt11;
337 struct
338 {
339 __IO uint32_t dt : 16;/* [15:0] */
340 __IO uint32_t reserved1 : 16;/* [31:15] */
341 } dt11_bit;
342 };
343
347 union
348 {
349 __IO uint32_t dt12;
350 struct
351 {
352 __IO uint32_t dt : 16;/* [15:0] */
353 __IO uint32_t reserved1 : 16;/* [31:15] */
354 } dt12_bit;
355 };
356
360 union
361 {
362 __IO uint32_t dt13;
363 struct
364 {
365 __IO uint32_t dt : 16;/* [15:0] */
366 __IO uint32_t reserved1 : 16;/* [31:15] */
367 } dt13_bit;
368 };
369
373 union
374 {
375 __IO uint32_t dt14;
376 struct
377 {
378 __IO uint32_t dt : 16;/* [15:0] */
379 __IO uint32_t reserved1 : 16;/* [31:15] */
380 } dt14_bit;
381 };
382
386 union
387 {
388 __IO uint32_t dt15;
389 struct
390 {
391 __IO uint32_t dt : 16;/* [15:0] */
392 __IO uint32_t reserved1 : 16;/* [31:15] */
393 } dt15_bit;
394 };
395
399 union
400 {
401 __IO uint32_t dt16;
402 struct
403 {
404 __IO uint32_t dt : 16;/* [15:0] */
405 __IO uint32_t reserved1 : 16;/* [31:15] */
406 } dt16_bit;
407 };
408
412 union
413 {
414 __IO uint32_t dt17;
415 struct
416 {
417 __IO uint32_t dt : 16;/* [15:0] */
418 __IO uint32_t reserved1 : 16;/* [31:15] */
419 } dt17_bit;
420 };
421
425 union
426 {
427 __IO uint32_t dt18;
428 struct
429 {
430 __IO uint32_t dt : 16;/* [15:0] */
431 __IO uint32_t reserved1 : 16;/* [31:15] */
432 } dt18_bit;
433 };
434
438 union
439 {
440 __IO uint32_t dt19;
441 struct
442 {
443 __IO uint32_t dt : 16;/* [15:0] */
444 __IO uint32_t reserved1 : 16;/* [31:15] */
445 } dt19_bit;
446 };
447
451 union
452 {
453 __IO uint32_t dt20;
454 struct
455 {
456 __IO uint32_t dt : 16;/* [15:0] */
457 __IO uint32_t reserved1 : 16;/* [31:15] */
458 } dt20_bit;
459 };
460
464 union
465 {
466 __IO uint32_t dt21;
467 struct
468 {
469 __IO uint32_t dt : 16;/* [15:0] */
470 __IO uint32_t reserved1 : 16;/* [31:15] */
471 } dt21_bit;
472 };
473
477 union
478 {
479 __IO uint32_t dt22;
480 struct
481 {
482 __IO uint32_t dt : 16;/* [15:0] */
483 __IO uint32_t reserved1 : 16;/* [31:15] */
484 } dt22_bit;
485 };
486
490 union
491 {
492 __IO uint32_t dt23;
493 struct
494 {
495 __IO uint32_t dt : 16;/* [15:0] */
496 __IO uint32_t reserved1 : 16;/* [31:15] */
497 } dt23_bit;
498 };
499
503 union
504 {
505 __IO uint32_t dt24;
506 struct
507 {
508 __IO uint32_t dt : 16;/* [15:0] */
509 __IO uint32_t reserved1 : 16;/* [31:15] */
510 } dt24_bit;
511 };
512
516 union
517 {
518 __IO uint32_t dt25;
519 struct
520 {
521 __IO uint32_t dt : 16;/* [15:0] */
522 __IO uint32_t reserved1 : 16;/* [31:15] */
523 } dt25_bit;
524 };
525
529 union
530 {
531 __IO uint32_t dt26;
532 struct
533 {
534 __IO uint32_t dt : 16;/* [15:0] */
535 __IO uint32_t reserved1 : 16;/* [31:15] */
536 } dt26_bit;
537 };
538
542 union
543 {
544 __IO uint32_t dt27;
545 struct
546 {
547 __IO uint32_t dt : 16;/* [15:0] */
548 __IO uint32_t reserved1 : 16;/* [31:15] */
549 } dt27_bit;
550 };
551
555 union
556 {
557 __IO uint32_t dt28;
558 struct
559 {
560 __IO uint32_t dt : 16;/* [15:0] */
561 __IO uint32_t reserved1 : 16;/* [31:15] */
562 } dt28_bit;
563 };
564
568 union
569 {
570 __IO uint32_t dt29;
571 struct
572 {
573 __IO uint32_t dt : 16;/* [15:0] */
574 __IO uint32_t reserved1 : 16;/* [31:15] */
575 } dt29_bit;
576 };
577
581 union
582 {
583 __IO uint32_t dt30;
584 struct
585 {
586 __IO uint32_t dt : 16;/* [15:0] */
587 __IO uint32_t reserved1 : 16;/* [31:15] */
588 } dt30_bit;
589 };
590
594 union
595 {
596 __IO uint32_t dt31;
597 struct
598 {
599 __IO uint32_t dt : 16;/* [15:0] */
600 __IO uint32_t reserved1 : 16;/* [31:15] */
601 } dt31_bit;
602 };
603
607 union
608 {
609 __IO uint32_t dt32;
610 struct
611 {
612 __IO uint32_t dt : 16;/* [15:0] */
613 __IO uint32_t reserved1 : 16;/* [31:15] */
614 } dt32_bit;
615 };
616
620 union
621 {
622 __IO uint32_t dt33;
623 struct
624 {
625 __IO uint32_t dt : 16;/* [15:0] */
626 __IO uint32_t reserved1 : 16;/* [31:15] */
627 } dt33_bit;
628 };
629
633 union
634 {
635 __IO uint32_t dt34;
636 struct
637 {
638 __IO uint32_t dt : 16;/* [15:0] */
639 __IO uint32_t reserved1 : 16;/* [31:15] */
640 } dt34_bit;
641 };
642
646 union
647 {
648 __IO uint32_t dt35;
649 struct
650 {
651 __IO uint32_t dt : 16;/* [15:0] */
652 __IO uint32_t reserved1 : 16;/* [31:15] */
653 } dt35_bit;
654 };
655
659 union
660 {
661 __IO uint32_t dt36;
662 struct
663 {
664 __IO uint32_t dt : 16;/* [15:0] */
665 __IO uint32_t reserved1 : 16;/* [31:15] */
666 } dt36_bit;
667 };
668
672 union
673 {
674 __IO uint32_t dt37;
675 struct
676 {
677 __IO uint32_t dt : 16;/* [15:0] */
678 __IO uint32_t reserved1 : 16;/* [31:15] */
679 } dt37_bit;
680 };
681
685 union
686 {
687 __IO uint32_t dt38;
688 struct
689 {
690 __IO uint32_t dt : 16;/* [15:0] */
691 __IO uint32_t reserved1 : 16;/* [31:15] */
692 } dt38_bit;
693 };
694
698 union
699 {
700 __IO uint32_t dt39;
701 struct
702 {
703 __IO uint32_t dt : 16;/* [15:0] */
704 __IO uint32_t reserved1 : 16;/* [31:15] */
705 } dt39_bit;
706 };
707
711 union
712 {
713 __IO uint32_t dt40;
714 struct
715 {
716 __IO uint32_t dt : 16;/* [15:0] */
717 __IO uint32_t reserved1 : 16;/* [31:15] */
718 } dt40_bit;
719 };
720
724 union
725 {
726 __IO uint32_t dt41;
727 struct
728 {
729 __IO uint32_t dt : 16;/* [15:0] */
730 __IO uint32_t reserved1 : 16;/* [31:15] */
731 } dt41_bit;
732 };
733
737 union
738 {
739 __IO uint32_t dt42;
740 struct
741 {
742 __IO uint32_t dt : 16;/* [15:0] */
743 __IO uint32_t reserved1 : 16;/* [31:15] */
744 } dt42_bit;
745 };
746} bpr_type;
747
752#define BPR ((bpr_type *) BPR_BASE)
753
758void bpr_reset(void);
759 flag_status bpr_flag_get(uint32_t flag);
760 flag_status bpr_interrupt_flag_get(uint32_t flag);
761void bpr_flag_clear(uint32_t flag);
762void bpr_interrupt_enable(confirm_state new_state);
763uint16_t bpr_data_read(bpr_data_type bpr_data);
764void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value);
765void bpr_rtc_output_select(bpr_rtc_output_type output_source);
766void bpr_rtc_clock_calibration_value_set(uint8_t calibration_value);
767void bpr_tamper_pin_enable(confirm_state new_state);
768void bpr_tamper_pin_active_level_set(bpr_tamper_pin_active_level_type active_level);
769
782#ifdef __cplusplus
783}
784#endif
785
786#endif
at32f403.h
at32f403 header file
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
bpr_rtc_clock_calibration_value_set
void bpr_rtc_clock_calibration_value_set(uint8_t calibration_value)
set rtc clock calibration value
Definition: at32f403_bpr.c:181
bpr_tamper_pin_enable
void bpr_tamper_pin_enable(confirm_state new_state)
enable or disable bpr tamper pin
Definition: at32f403_bpr.c:192
bpr_interrupt_enable
void bpr_interrupt_enable(confirm_state new_state)
enable or disable bpr tamper interrupt
Definition: at32f403_bpr.c:118
bpr_interrupt_flag_get
flag_status bpr_interrupt_flag_get(uint32_t flag)
bpr interrupt flag get
Definition: at32f403_bpr.c:81
bpr_rtc_output_select
void bpr_rtc_output_select(bpr_rtc_output_type output_source)
select bpr rtc output
Definition: at32f403_bpr.c:167
bpr_tamper_pin_active_level_set
void bpr_tamper_pin_active_level_set(bpr_tamper_pin_active_level_type active_level)
set bpr tamper pin active level
Definition: at32f403_bpr.c:205
bpr_data_read
uint16_t bpr_data_read(bpr_data_type bpr_data)
read bpr bpr data
Definition: at32f403_bpr.c:134
bpr_flag_clear
void bpr_flag_clear(uint32_t flag)
clear bpr tamper flag
Definition: at32f403_bpr.c:101
bpr_data_write
void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value)
write bpr data
Definition: at32f403_bpr.c:151
bpr_flag_get
flag_status bpr_flag_get(uint32_t flag)
bpr event flag get, for tamper event flag
Definition: at32f403_bpr.c:61
bpr_data_type
bpr_data_type
battery powered register data type
Definition: at32f403_bpr.h:65
bpr_tamper_pin_active_level_type
bpr_tamper_pin_active_level_type
tamper pin active level type
Definition: at32f403_bpr.h:126
bpr_rtc_output_type
bpr_rtc_output_type
bpr rtc output type
Definition: at32f403_bpr.h:114
BPR_DATA26
@ BPR_DATA26
Definition: at32f403_bpr.h:91
BPR_DATA28
@ BPR_DATA28
Definition: at32f403_bpr.h:93
BPR_DATA31
@ BPR_DATA31
Definition: at32f403_bpr.h:96
BPR_DATA8
@ BPR_DATA8
Definition: at32f403_bpr.h:73
BPR_DATA25
@ BPR_DATA25
Definition: at32f403_bpr.h:90
BPR_DATA39
@ BPR_DATA39
Definition: at32f403_bpr.h:104
BPR_DATA7
@ BPR_DATA7
Definition: at32f403_bpr.h:72
BPR_DATA12
@ BPR_DATA12
Definition: at32f403_bpr.h:77
BPR_DATA29
@ BPR_DATA29
Definition: at32f403_bpr.h:94
BPR_DATA19
@ BPR_DATA19
Definition: at32f403_bpr.h:84
BPR_DATA1
@ BPR_DATA1
Definition: at32f403_bpr.h:66
BPR_DATA36
@ BPR_DATA36
Definition: at32f403_bpr.h:101
BPR_DATA9
@ BPR_DATA9
Definition: at32f403_bpr.h:74
BPR_DATA10
@ BPR_DATA10
Definition: at32f403_bpr.h:75
BPR_DATA27
@ BPR_DATA27
Definition: at32f403_bpr.h:92
BPR_DATA20
@ BPR_DATA20
Definition: at32f403_bpr.h:85
BPR_DATA38
@ BPR_DATA38
Definition: at32f403_bpr.h:103
BPR_DATA37
@ BPR_DATA37
Definition: at32f403_bpr.h:102
BPR_DATA41
@ BPR_DATA41
Definition: at32f403_bpr.h:106
BPR_DATA13
@ BPR_DATA13
Definition: at32f403_bpr.h:78
BPR_DATA4
@ BPR_DATA4
Definition: at32f403_bpr.h:69
BPR_DATA32
@ BPR_DATA32
Definition: at32f403_bpr.h:97
BPR_DATA16
@ BPR_DATA16
Definition: at32f403_bpr.h:81
BPR_DATA11
@ BPR_DATA11
Definition: at32f403_bpr.h:76
BPR_DATA24
@ BPR_DATA24
Definition: at32f403_bpr.h:89
BPR_DATA23
@ BPR_DATA23
Definition: at32f403_bpr.h:88
BPR_DATA5
@ BPR_DATA5
Definition: at32f403_bpr.h:70
BPR_DATA18
@ BPR_DATA18
Definition: at32f403_bpr.h:83
BPR_DATA17
@ BPR_DATA17
Definition: at32f403_bpr.h:82
BPR_DATA42
@ BPR_DATA42
Definition: at32f403_bpr.h:107
BPR_DATA21
@ BPR_DATA21
Definition: at32f403_bpr.h:86
BPR_DATA33
@ BPR_DATA33
Definition: at32f403_bpr.h:98
BPR_DATA40
@ BPR_DATA40
Definition: at32f403_bpr.h:105
BPR_DATA30
@ BPR_DATA30
Definition: at32f403_bpr.h:95
BPR_DATA2
@ BPR_DATA2
Definition: at32f403_bpr.h:67
BPR_DATA14
@ BPR_DATA14
Definition: at32f403_bpr.h:79
BPR_DATA15
@ BPR_DATA15
Definition: at32f403_bpr.h:80
BPR_DATA3
@ BPR_DATA3
Definition: at32f403_bpr.h:68
BPR_DATA22
@ BPR_DATA22
Definition: at32f403_bpr.h:87
BPR_DATA34
@ BPR_DATA34
Definition: at32f403_bpr.h:99
BPR_DATA35
@ BPR_DATA35
Definition: at32f403_bpr.h:100
BPR_DATA6
@ BPR_DATA6
Definition: at32f403_bpr.h:71
BPR_TAMPER_PIN_ACTIVE_LOW
@ BPR_TAMPER_PIN_ACTIVE_LOW
Definition: at32f403_bpr.h:128
BPR_TAMPER_PIN_ACTIVE_HIGH
@ BPR_TAMPER_PIN_ACTIVE_HIGH
Definition: at32f403_bpr.h:127
BPR_RTC_OUTPUT_NONE
@ BPR_RTC_OUTPUT_NONE
Definition: at32f403_bpr.h:115
BPR_RTC_OUTPUT_ALARM
@ BPR_RTC_OUTPUT_ALARM
Definition: at32f403_bpr.h:117
BPR_RTC_OUTPUT_CLOCK_CAL_AFTER
@ BPR_RTC_OUTPUT_CLOCK_CAL_AFTER
Definition: at32f403_bpr.h:119
BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE
@ BPR_RTC_OUTPUT_CLOCK_CAL_BEFORE
Definition: at32f403_bpr.h:116
BPR_RTC_OUTPUT_SECOND
@ BPR_RTC_OUTPUT_SECOND
Definition: at32f403_bpr.h:118
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
bpr_type
type define bpr register all
Definition: at32f403_bpr.h:135
bpr_type::dt14
__IO uint32_t dt14
Definition: at32f403_bpr.h:375
bpr_type::dt32
__IO uint32_t dt32
Definition: at32f403_bpr.h:609
bpr_type::dt22
__IO uint32_t dt22
Definition: at32f403_bpr.h:479
bpr_type::reserved2
__IO uint32_t reserved2
reserved, offset:0x38
Definition: at32f403_bpr.h:317
bpr_type::dt17
__IO uint32_t dt17
Definition: at32f403_bpr.h:414
bpr_type::dt24
__IO uint32_t dt24
Definition: at32f403_bpr.h:505
bpr_type::outen
__IO uint32_t outen
Definition: at32f403_bpr.h:281
bpr_type::ccos
__IO uint32_t ccos
Definition: at32f403_bpr.h:283
bpr_type::dt11
__IO uint32_t dt11
Definition: at32f403_bpr.h:336
bpr_type::dt35
__IO uint32_t dt35
Definition: at32f403_bpr.h:648
bpr_type::dt30
__IO uint32_t dt30
Definition: at32f403_bpr.h:583
bpr_type::tpp
__IO uint32_t tpp
Definition: at32f403_bpr.h:298
bpr_type::dt19
__IO uint32_t dt19
Definition: at32f403_bpr.h:440
bpr_type::tpif
__IO uint32_t tpif
Definition: at32f403_bpr.h:316
bpr_type::dt38
__IO uint32_t dt38
Definition: at32f403_bpr.h:687
bpr_type::tpifclr
__IO uint32_t tpifclr
Definition: at32f403_bpr.h:312
bpr_type::dt8
__IO uint32_t dt8
Definition: at32f403_bpr.h:237
bpr_type::tpien
__IO uint32_t tpien
Definition: at32f403_bpr.h:313
bpr_type::dt25
__IO uint32_t dt25
Definition: at32f403_bpr.h:518
bpr_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_bpr.h:294
bpr_type::dt16
__IO uint32_t dt16
Definition: at32f403_bpr.h:401
bpr_type::dt31
__IO uint32_t dt31
Definition: at32f403_bpr.h:596
bpr_type::dt
__IO uint32_t dt
Definition: at32f403_bpr.h:149
bpr_type::dt37
__IO uint32_t dt37
Definition: at32f403_bpr.h:674
bpr_type::dt39
__IO uint32_t dt39
Definition: at32f403_bpr.h:700
bpr_type::dt34
__IO uint32_t dt34
Definition: at32f403_bpr.h:635
bpr_type::dt20
__IO uint32_t dt20
Definition: at32f403_bpr.h:453
bpr_type::dt1
__IO uint32_t dt1
Definition: at32f403_bpr.h:146
bpr_type::reserved3
__IO uint32_t reserved3
reserved, offset:0x3C
Definition: at32f403_bpr.h:329
bpr_type::tpefclr
__IO uint32_t tpefclr
Definition: at32f403_bpr.h:311
bpr_type::calout
__IO uint32_t calout
Definition: at32f403_bpr.h:280
bpr_type::calval
__IO uint32_t calval
Definition: at32f403_bpr.h:279
bpr_type::dt7
__IO uint32_t dt7
Definition: at32f403_bpr.h:224
bpr_type::dt3
__IO uint32_t dt3
Definition: at32f403_bpr.h:172
bpr_type::dt29
__IO uint32_t dt29
Definition: at32f403_bpr.h:570
bpr_type::dt6
__IO uint32_t dt6
Definition: at32f403_bpr.h:211
bpr_type::dt33
__IO uint32_t dt33
Definition: at32f403_bpr.h:622
bpr_type::dt18
__IO uint32_t dt18
Definition: at32f403_bpr.h:427
bpr_type::dt4
__IO uint32_t dt4
Definition: at32f403_bpr.h:185
bpr_type::dt13
__IO uint32_t dt13
Definition: at32f403_bpr.h:362
bpr_type::tpef
__IO uint32_t tpef
Definition: at32f403_bpr.h:315
bpr_type::dt42
__IO uint32_t dt42
Definition: at32f403_bpr.h:739
bpr_type::dt36
__IO uint32_t dt36
Definition: at32f403_bpr.h:661
bpr_type::ctrlsts
__IO uint32_t ctrlsts
Definition: at32f403_bpr.h:308
bpr_type::dt12
__IO uint32_t dt12
Definition: at32f403_bpr.h:349
bpr_type::dt28
__IO uint32_t dt28
Definition: at32f403_bpr.h:557
bpr_type::dt9
__IO uint32_t dt9
Definition: at32f403_bpr.h:250
bpr_type::outsel
__IO uint32_t outsel
Definition: at32f403_bpr.h:282
bpr_type::dt15
__IO uint32_t dt15
Definition: at32f403_bpr.h:388
bpr_type::dt21
__IO uint32_t dt21
Definition: at32f403_bpr.h:466
bpr_type::dt26
__IO uint32_t dt26
Definition: at32f403_bpr.h:531
bpr_type::dt10
__IO uint32_t dt10
Definition: at32f403_bpr.h:263
bpr_type::dt2
__IO uint32_t dt2
Definition: at32f403_bpr.h:159
bpr_type::outm
__IO uint32_t outm
Definition: at32f403_bpr.h:284
bpr_type::dt40
__IO uint32_t dt40
Definition: at32f403_bpr.h:713
bpr_type::reserved1
__IO uint32_t reserved1
reserved, offset:0x00
Definition: at32f403_bpr.h:139
bpr_type::dt5
__IO uint32_t dt5
Definition: at32f403_bpr.h:198
bpr_type::tpen
__IO uint32_t tpen
Definition: at32f403_bpr.h:297
bpr_type::dt27
__IO uint32_t dt27
Definition: at32f403_bpr.h:544
bpr_type::rtccal
__IO uint32_t rtccal
Definition: at32f403_bpr.h:276
bpr_type::dt23
__IO uint32_t dt23
Definition: at32f403_bpr.h:492
bpr_type::dt41
__IO uint32_t dt41
Definition: at32f403_bpr.h:726


AT32F403 Firmwary Library: at32f403_can.c Source File

  • libraries
  • drivers
  • src
at32f403_can.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef CAN_MODULE_ENABLED
37
49void can_reset(can_type* can_x)
50{
51 if(can_x == CAN1)
52 {
53 crm_periph_reset(CRM_CAN1_PERIPH_RESET, TRUE);
54 crm_periph_reset(CRM_CAN1_PERIPH_RESET, FALSE);
55 }
56}
57
63void can_baudrate_default_para_init(can_baudrate_type* can_baudrate_struct)
64{
65 /* reset can baudrate structure parameters values */
66
67 /* baud rate division */
68 can_baudrate_struct->baudrate_div = 1;
69
70 /* resynchronization adjust width */
71 can_baudrate_struct->rsaw_size = CAN_RSAW_2TQ;
72
73 /* bit time segment 1 */
74 can_baudrate_struct->bts1_size = CAN_BTS1_4TQ;
75
76 /* bit time segment 2 */
77 can_baudrate_struct->bts2_size = CAN_BTS2_3TQ;
78}
79
92 error_status can_baudrate_set(can_type* can_x, can_baudrate_type* can_baudrate_struct)
93{
94 error_status status_index = ERROR;
95 uint32_t wait_ack_index = 0x00000000;
96 /* exit from doze mode */
97 can_x->mctrl_bit.dzen = FALSE;
98
99 /* request freeze mode */
100 can_x->mctrl_bit.fzen = TRUE;
101
102 /* wait the acknowledge */
103 while((!can_x->msts_bit.fzc) && (wait_ack_index != FZC_TIMEOUT))
104 {
105 wait_ack_index++;
106 }
107
108 /* check acknowledge */
109 if(can_x->msts_bit.fzc)
110 {
111 can_x->btmg_bit.brdiv = can_baudrate_struct->baudrate_div - 1;
112 can_x->btmg_bit.rsaw = can_baudrate_struct->rsaw_size;
113 can_x->btmg_bit.bts1 = can_baudrate_struct->bts1_size;
114 can_x->btmg_bit.bts2 = can_baudrate_struct->bts2_size;
115
116 /* request leave freeze mode */
117 can_x->mctrl_bit.fzen = FALSE;
118
119 /* wait the acknowledge */
120 wait_ack_index = 0;
121 while((can_x->msts_bit.fzc) && (wait_ack_index != FZC_TIMEOUT))
122 {
123 wait_ack_index++;
124 }
125
126 /* check acknowledged */
127 if(can_x->msts_bit.fzc)
128 {
129 status_index = ERROR;
130 }
131 else
132 {
133 status_index = SUCCESS ;
134 }
135 }
136 else
137 {
138 status_index = ERROR;
139 }
140
141 /* return the status of baudrate set */
142 return status_index;
143}
144
150void can_default_para_init(can_base_type* can_base_struct)
151{
152 /* reset can init structure parameters values */
153
154 /* initialize the time triggered communication mode */
155 can_base_struct->ttc_enable = FALSE;
156
157 /* initialize the automatic exit bus-off management */
158 can_base_struct->aebo_enable = FALSE;
159
160 /* initialize the automatic exit doze mode */
161 can_base_struct->aed_enable = FALSE;
162
163 /* initialize the prohibit retransmission when sending fails */
164 can_base_struct->prsf_enable = FALSE;
165
166 /* initialize the message discarding rule select when overflow */
167 can_base_struct->mdrsel_selection = CAN_DISCARDING_FIRST_RECEIVED;
168
169 /* initialize the multiple message sending sequence rule */
170 can_base_struct->mmssr_selection = CAN_SENDING_BY_ID;
171
172 /* initialize the can_mode */
173 can_base_struct->mode_selection = CAN_MODE_COMMUNICATE;
174}
175
187 error_status can_base_init(can_type* can_x, can_base_type* can_base_struct)
188{
189 error_status init_status_index = ERROR;
190 uint32_t wait_ack_index = 0x00000000;
191 /* exit from doze mode */
192 can_x->mctrl_bit.dzen = FALSE;
193
194 /* request freeze mode */
195 can_x->mctrl_bit.fzen = TRUE;
196
197 /* wait the acknowledge */
198 while((!can_x->msts_bit.fzc) && (wait_ack_index != FZC_TIMEOUT))
199 {
200 wait_ack_index++;
201 }
202
203 /* check acknowledge */
204 if(can_x->msts_bit.fzc)
205 {
206 /* set the time triggered communication mode */
207 can_x->mctrl_bit.ttcen = can_base_struct->ttc_enable;
208
209 /* set the automatic exit bus-off management */
210 can_x->mctrl_bit.aeboen = can_base_struct->aebo_enable;
211
212 /* set the automatic automatic exit doze mode */
213 can_x->mctrl_bit.aeden = can_base_struct->aed_enable;
214
215 /* set the prohibit retransmission when sending fails */
216 can_x->mctrl_bit.prsfen = can_base_struct->prsf_enable;
217
218 /* set the message discarding rule select when overflow */
219 can_x->mctrl_bit.mdrsel = can_base_struct->mdrsel_selection;
220
221 /* set the multiple message sending sequence rule */
222 can_x->mctrl_bit.mmssr = can_base_struct->mmssr_selection;
223
224 /* set the test mode */
225 can_x->btmg_bit.lben = can_base_struct->mode_selection & 0x01;
226 can_x->btmg_bit.loen = (can_base_struct->mode_selection >> 1) & 0x01;
227
228 /* request leave freeze mode */
229 can_x->mctrl_bit.fzen = FALSE;
230
231 /* wait the acknowledge */
232 wait_ack_index = 0;
233 while((can_x->msts_bit.fzc) && (wait_ack_index != FZC_TIMEOUT))
234 {
235 wait_ack_index++;
236 }
237
238 /* check acknowledged */
239 if(can_x->msts_bit.fzc)
240 {
241 init_status_index = ERROR;
242 }
243 else
244 {
245 init_status_index = SUCCESS ;
246 }
247 }
248 else
249 {
250 init_status_index = ERROR;
251 }
252
253 /* return the status of initialization */
254 return init_status_index;
255}
256
262void can_filter_default_para_init(can_filter_init_type* can_filter_init_struct)
263{
264 /* reset can filter init structure parameters values */
265
266 /* initialize the filter activate state */
267 can_filter_init_struct->filter_activate_enable = FALSE;
268
269 /* filter mode */
270 can_filter_init_struct->filter_mode = CAN_FILTER_MODE_ID_MASK;
271
272 /* filter relation fifo select */
273 can_filter_init_struct->filter_fifo = CAN_FILTER_FIFO0;
274
275 /* filter number select */
276 can_filter_init_struct->filter_number = 0;
277
278 /* initialize the filter bit width */
279 can_filter_init_struct->filter_bit = CAN_FILTER_16BIT;
280
281 /* initialize the filters filter data bit */
282 can_filter_init_struct->filter_id_high = 0;
283 can_filter_init_struct->filter_id_low = 0;
284 can_filter_init_struct->filter_mask_high = 0;
285 can_filter_init_struct->filter_mask_low = 0;
286}
287
297void can_filter_init(can_type* can_x, can_filter_init_type* can_filter_init_struct)
298{
299 uint32_t filter_number_bit_pos = 0;
300 filter_number_bit_pos = ((uint32_t)1) << can_filter_init_struct->filter_number;
301 /* set the filter turn into configuration condition */
302 can_x->fctrl_bit.fcs = TRUE;
303
304 /* filter activate disable */
305 can_x->facfg &= ~(uint32_t)filter_number_bit_pos;
306
307 /* filter bit width */
308 switch(can_filter_init_struct->filter_bit)
309 {
310 case CAN_FILTER_16BIT:
311 can_x->fbwcfg &= ~(uint32_t)filter_number_bit_pos;
312 /* first 16-bit identifier and first 16-bit mask or first 16-bit identifier and second 16-bit identifier */
313 can_x->ffb[can_filter_init_struct->filter_number].ffdb1 = ((0x0000FFFF & (uint32_t)can_filter_init_struct->filter_mask_low) << 16);
314 can_x->ffb[can_filter_init_struct->filter_number].ffdb1 |= (0x0000FFFF & (uint32_t)can_filter_init_struct->filter_id_low);
315
316 /* second 16-bit identifier and second 16-bit mask or third 16-bit identifier and fourth 16-bit identifier */
317 can_x->ffb[can_filter_init_struct->filter_number].ffdb2 = ((0x0000FFFF & (uint32_t)can_filter_init_struct->filter_mask_high) << 16);
318 can_x->ffb[can_filter_init_struct->filter_number].ffdb2 |= (0x0000FFFF & (uint32_t)can_filter_init_struct->filter_id_high);
319 break;
320 case CAN_FILTER_32BIT:
321 can_x->fbwcfg |= filter_number_bit_pos;
322 /* 32-bit identifier or first 32-bit identifier */
323 can_x->ffb[can_filter_init_struct->filter_number].ffdb1 = ((0x0000FFFF & (uint32_t)can_filter_init_struct->filter_id_high) << 16);
324 can_x->ffb[can_filter_init_struct->filter_number].ffdb1 |= (0x0000FFFF & (uint32_t)can_filter_init_struct->filter_id_low);
325
326 /* 32-bit mask or second 32-bit identifier */
327 can_x->ffb[can_filter_init_struct->filter_number].ffdb2 = ((0x0000FFFF & (uint32_t)can_filter_init_struct->filter_mask_high) << 16);
328 can_x->ffb[can_filter_init_struct->filter_number].ffdb2 |= (0x0000FFFF & (uint32_t)can_filter_init_struct->filter_mask_low);
329 break;
330 default:
331 break;
332 }
333
334 /* filter mode */
335 switch(can_filter_init_struct->filter_mode)
336 {
337 case CAN_FILTER_MODE_ID_MASK:
338 can_x->fmcfg &= ~(uint32_t)filter_number_bit_pos;
339 break;
340 case CAN_FILTER_MODE_ID_LIST:
341 can_x->fmcfg |= (uint32_t)filter_number_bit_pos;
342 break;
343 default:
344 break;
345 }
346
347 /* filter relation fifo select */
348 switch(can_filter_init_struct->filter_fifo)
349 {
350 case CAN_FILTER_FIFO0:
351 can_x->frf &= ~(uint32_t)filter_number_bit_pos;
352 break;
353 case CAN_FILTER_FIFO1:
354 can_x->frf |= (uint32_t)filter_number_bit_pos;
355 break;
356 default:
357 break;
358 }
359
360 /* filter activate enable */
361 switch(can_filter_init_struct->filter_activate_enable)
362 {
363 case TRUE:
364 can_x->facfg |= (uint32_t)filter_number_bit_pos;
365 break;
366 case FALSE:
367 can_x->facfg &= ~(uint32_t)filter_number_bit_pos;
368 break;
369 default:
370 break;
371 }
372
373 /* set the filter turn into working condition */
374 can_x->fctrl_bit.fcs = FALSE;
375}
376
386void can_debug_transmission_prohibit(can_type* can_x, confirm_state new_state)
387{
388 can_x->mctrl_bit.ptd = new_state;
389}
390
407void can_ttc_mode_enable(can_type* can_x, confirm_state new_state)
408{
409 /* config the ttc mode new_state */
410 can_x->mctrl_bit.ttcen = new_state;
411
412 /* config tmtsten bits new_state */
413 can_x->tx_mailbox[0].tmc_bit.tmtsten = new_state;
414 can_x->tx_mailbox[1].tmc_bit.tmtsten = new_state;
415 can_x->tx_mailbox[2].tmc_bit.tmtsten = new_state;
416}
417
431uint8_t can_message_transmit(can_type* can_x, can_tx_message_type* tx_message_struct)
432{
433 uint8_t transmit_mailbox = CAN_TX_STATUS_NO_EMPTY;
434
435 /* select one empty transmit mailbox */
436 if(can_x->tsts_bit.tm0ef)
437 {
438 transmit_mailbox = CAN_TX_MAILBOX0;
439 }
440 else if(can_x->tsts_bit.tm1ef)
441 {
442 transmit_mailbox = CAN_TX_MAILBOX1;
443 }
444 else if(can_x->tsts_bit.tm2ef)
445 {
446 transmit_mailbox = CAN_TX_MAILBOX2;
447 }
448 else
449 {
450 transmit_mailbox = CAN_TX_STATUS_NO_EMPTY;
451 }
452
453 if(transmit_mailbox != CAN_TX_STATUS_NO_EMPTY)
454 {
455 /* set up the id */
456 can_x->tx_mailbox[transmit_mailbox].tmi &= 0x00000001;
457 can_x->tx_mailbox[transmit_mailbox].tmi_bit.tmidsel = tx_message_struct->id_type;
458 switch(tx_message_struct->id_type)
459 {
460 case CAN_ID_STANDARD:
461 can_x->tx_mailbox[transmit_mailbox].tmi_bit.tmsid = tx_message_struct->standard_id;
462 break;
463 case CAN_ID_EXTENDED:
464 can_x->tx_mailbox[transmit_mailbox].tmi |= (tx_message_struct->extended_id << 3);
465 break;
466 default:
467 break;
468 }
469 can_x->tx_mailbox[transmit_mailbox].tmi_bit.tmfrsel = tx_message_struct->frame_type;
470 /* set up the dlc */
471 can_x->tx_mailbox[transmit_mailbox].tmc_bit.tmdtbl = (tx_message_struct->dlc & ((uint8_t)0x0F));
472
473 /* set up the data field */
474 can_x->tx_mailbox[transmit_mailbox].tmdtl = (((uint32_t)tx_message_struct->data[3] << 24) |
475 ((uint32_t)tx_message_struct->data[2] << 16) |
476 ((uint32_t)tx_message_struct->data[1] << 8) |
477 ((uint32_t)tx_message_struct->data[0]));
478 can_x->tx_mailbox[transmit_mailbox].tmdth = (((uint32_t)tx_message_struct->data[7] << 24) |
479 ((uint32_t)tx_message_struct->data[6] << 16) |
480 ((uint32_t)tx_message_struct->data[5] << 8) |
481 ((uint32_t)tx_message_struct->data[4]));
482
483 /* request transmission */
484 can_x->tx_mailbox[transmit_mailbox].tmi_bit.tmsr = TRUE;
485 }
486 return transmit_mailbox;
487}
488
505 can_transmit_status_type can_transmit_status_get(can_type* can_x, can_tx_mailbox_num_type transmit_mailbox)
506{
507 can_transmit_status_type state_index = CAN_TX_STATUS_FAILED;
508 switch(transmit_mailbox)
509 {
510 case CAN_TX_MAILBOX0:
511 if(can_x->tsts_bit.tm0tcf != RESET)
512 {
513 if(can_x->tsts_bit.tm0tsf != RESET)
514 {
515 state_index = CAN_TX_STATUS_SUCCESSFUL;
516 }
517 else
518 {
519 state_index = CAN_TX_STATUS_FAILED;
520 }
521 }
522 else
523 {
524 state_index = CAN_TX_STATUS_PENDING;
525 }
526 break;
527 case CAN_TX_MAILBOX1:
528 if(can_x->tsts_bit.tm1tcf != RESET)
529 {
530 if(can_x->tsts_bit.tm1tsf != RESET)
531 {
532 state_index = CAN_TX_STATUS_SUCCESSFUL;
533 }
534 else
535 {
536 state_index = CAN_TX_STATUS_FAILED;
537 }
538 }
539 else
540 {
541 state_index = CAN_TX_STATUS_PENDING;
542 }
543 break;
544 case CAN_TX_MAILBOX2:
545 if(can_x->tsts_bit.tm2tcf != RESET)
546 {
547 if(can_x->tsts_bit.tm2tsf != RESET)
548 {
549 state_index = CAN_TX_STATUS_SUCCESSFUL;
550 }
551 else
552 {
553 state_index = CAN_TX_STATUS_FAILED;
554 }
555 }
556 else
557 {
558 state_index = CAN_TX_STATUS_PENDING;
559 }
560 break;
561 default:
562 state_index = CAN_TX_STATUS_FAILED;
563 break;
564 }
565 return state_index;
566}
567
580void can_transmit_cancel(can_type* can_x, can_tx_mailbox_num_type transmit_mailbox)
581{
582 switch (transmit_mailbox)
583 {
584 case CAN_TX_MAILBOX0:
585 can_x->tsts = CAN_TSTS_TM0CT_VAL;
586 break;
587 case CAN_TX_MAILBOX1:
588 can_x->tsts = CAN_TSTS_TM1CT_VAL;
589 break;
590 case CAN_TX_MAILBOX2:
591 can_x->tsts = CAN_TSTS_TM2CT_VAL;
592 break;
593 default:
594 break;
595 }
596}
597
610void can_message_receive(can_type* can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type* rx_message_struct)
611{
612 /* get the id type */
613 rx_message_struct->id_type = (can_identifier_type)can_x->fifo_mailbox[fifo_number].rfi_bit.rfidi;
614 switch (rx_message_struct->id_type)
615 {
616 case CAN_ID_STANDARD:
617 rx_message_struct->standard_id = can_x->fifo_mailbox[fifo_number].rfi_bit.rfsid;
618 break;
619 case CAN_ID_EXTENDED:
620 rx_message_struct->extended_id = 0x1FFFFFFF & (can_x->fifo_mailbox[fifo_number].rfi >> 3);
621 break;
622 default:
623 break;
624 }
625 rx_message_struct->frame_type = (can_trans_frame_type)can_x->fifo_mailbox[fifo_number].rfi_bit.rffri;
626 /* get the dlc */
627 rx_message_struct->dlc = can_x->fifo_mailbox[fifo_number].rfc_bit.rfdtl;
628
629 /* get the filter match number */
630 rx_message_struct->filter_index = can_x->fifo_mailbox[fifo_number].rfc_bit.rffmn;
631
632 /* get the data field */
633 rx_message_struct->data[0] = can_x->fifo_mailbox[fifo_number].rfdtl_bit.rfdt0;
634 rx_message_struct->data[1] = can_x->fifo_mailbox[fifo_number].rfdtl_bit.rfdt1;
635 rx_message_struct->data[2] = can_x->fifo_mailbox[fifo_number].rfdtl_bit.rfdt2;
636 rx_message_struct->data[3] = can_x->fifo_mailbox[fifo_number].rfdtl_bit.rfdt3;
637 rx_message_struct->data[4] = can_x->fifo_mailbox[fifo_number].rfdth_bit.rfdt4;
638 rx_message_struct->data[5] = can_x->fifo_mailbox[fifo_number].rfdth_bit.rfdt5;
639 rx_message_struct->data[6] = can_x->fifo_mailbox[fifo_number].rfdth_bit.rfdt6;
640 rx_message_struct->data[7] = can_x->fifo_mailbox[fifo_number].rfdth_bit.rfdt7;
641
642 /* release the fifo */
643 can_receive_fifo_release(can_x, fifo_number);
644}
645
657void can_receive_fifo_release(can_type* can_x, can_rx_fifo_num_type fifo_number)
658{
659 switch (fifo_number)
660 {
661 case CAN_RX_FIFO0:
662 can_x->rf0 = CAN_RF0_RF0R_VAL;
663 break;
664 case CAN_RX_FIFO1:
665 can_x->rf1 = CAN_RF1_RF1R_VAL;
666 break;
667 default:
668 break;
669 }
670}
671
683uint8_t can_receive_message_pending_get(can_type* can_x, can_rx_fifo_num_type fifo_number)
684{
685 uint8_t message_pending = 0;
686 switch (fifo_number)
687 {
688 case CAN_RX_FIFO0:
689 message_pending = can_x->rf0_bit.rf0mn;
690 break;
691 case CAN_RX_FIFO1:
692 message_pending = can_x->rf1_bit.rf1mn;
693 break;
694 default:
695 break;
696 }
697 return message_pending;
698}
699
714 error_status can_operating_mode_set(can_type* can_x, can_operating_mode_type can_operating_mode)
715{
716 error_status status = ERROR;
717 uint32_t time_out_index = FZC_TIMEOUT;
718
719 if (can_operating_mode == CAN_OPERATINGMODE_FREEZE)
720 {
721 /* request enter freeze mode */
722 can_x->mctrl_bit.dzen = FALSE;
723 can_x->mctrl_bit.fzen = TRUE;
724
725 while(((can_x->msts_bit.dzc) || (!can_x->msts_bit.fzc)) && (time_out_index != 0))
726 {
727 time_out_index--;
728 }
729 if((can_x->msts_bit.dzc) || (!can_x->msts_bit.fzc))
730 {
731 status = ERROR;
732 }
733 else
734 {
735 status = SUCCESS;
736 }
737 }
738 else if(can_operating_mode == CAN_OPERATINGMODE_DOZE)
739 {
740 /* request enter doze mode */
741 can_x->mctrl_bit.dzen = TRUE;
742 can_x->mctrl_bit.fzen = FALSE;
743
744 while(((!can_x->msts_bit.dzc) || (can_x->msts_bit.fzc)) && (time_out_index != 0))
745 {
746 time_out_index--;
747 }
748 if((!can_x->msts_bit.dzc) || (can_x->msts_bit.fzc))
749 {
750 status = ERROR;
751 }
752 else
753 {
754 status = SUCCESS;
755 }
756 }
757 else if(can_operating_mode == CAN_OPERATINGMODE_COMMUNICATE)
758 {
759 /* request enter normal mode */
760 can_x->mctrl_bit.dzen = FALSE;
761 can_x->mctrl_bit.fzen = FALSE;
762
763 while(((can_x->msts_bit.dzc) || (can_x->msts_bit.fzc)) && (time_out_index != 0))
764 {
765 time_out_index--;
766 }
767 if((can_x->msts_bit.dzc) || (can_x->msts_bit.fzc))
768 {
769 status = ERROR;
770 }
771 else
772 {
773 status = SUCCESS;
774 }
775 }
776 else
777 {
778 status = ERROR;
779 }
780 return status;
781}
782
792 can_enter_doze_status_type can_doze_mode_enter(can_type* can_x)
793{
794 can_enter_doze_status_type status = CAN_ENTER_DOZE_FAILED;
795 uint32_t time_out_index = FZC_TIMEOUT;
796 can_x->mctrl_bit.fzen = FALSE;
797 can_x->mctrl_bit.dzen = TRUE;
798 while(((!can_x->msts_bit.dzc) || (can_x->msts_bit.fzc)) && (time_out_index != 0))
799 {
800 time_out_index--;
801 }
802 if((!can_x->msts_bit.dzc) || (can_x->msts_bit.fzc))
803 {
804 status = CAN_ENTER_DOZE_FAILED;
805 }
806 else
807 {
808 status = CAN_ENTER_DOZE_SUCCESSFUL;
809 }
810 return status;
811}
812
822 can_quit_doze_status_type can_doze_mode_exit(can_type* can_x)
823{
824 can_quit_doze_status_type status = CAN_QUIT_DOZE_FAILED;
825 uint32_t time_out_index = DZC_TIMEOUT;
826 can_x->mctrl_bit.dzen = FALSE;
827 while((can_x->msts_bit.dzc) && (time_out_index != 0))
828 {
829 time_out_index--;
830 }
831 if(!can_x->msts_bit.dzc)
832 {
833 status = CAN_QUIT_DOZE_SUCCESSFUL;
834 }
835 return status;
836}
837
854 can_error_record_type can_error_type_record_get(can_type* can_x)
855{
856 can_error_record_type error_code = CAN_ERRORRECORD_NOERR;
857
858 error_code = (can_error_record_type)can_x->ests_bit.etr;
859 return error_code;
860}
861
869uint8_t can_receive_error_counter_get(can_type* can_x)
870{
871 uint8_t counter = 0;
872 counter = can_x->ests_bit.rec;
873 return counter;
874}
875
883uint8_t can_transmit_error_counter_get(can_type* can_x)
884{
885 uint8_t counter = 0;
886 counter = can_x->ests_bit.tec;
887 return counter;
888}
889
915void can_interrupt_enable(can_type* can_x, uint32_t can_int, confirm_state new_state)
916{
917 if (new_state != FALSE)
918 {
919 can_x->inten |= can_int;
920 }
921 else
922 {
923 can_x->inten &= ~can_int;
924 }
925}
926
955 flag_status can_interrupt_flag_get(can_type* can_x, uint32_t can_flag)
956{
957 flag_status bit_status = RESET;
958 flag_status int_status = RESET;
959
960 switch(can_flag)
961 {
962 case CAN_EAF_FLAG:
963 int_status = (flag_status)(can_x->inten_bit.eoien && can_x->inten_bit.eaien);
964 break;
965 case CAN_EPF_FLAG:
966 int_status = (flag_status)(can_x->inten_bit.eoien && can_x->inten_bit.epien);
967 break;
968 case CAN_BOF_FLAG:
969 int_status = (flag_status)(can_x->inten_bit.eoien && can_x->inten_bit.boien);
970 break;
971 case CAN_ETR_FLAG:
972 int_status = (flag_status)(can_x->inten_bit.eoien && can_x->inten_bit.etrien);
973 break;
974 case CAN_EOIF_FLAG:
975 int_status = (flag_status)can_x->inten_bit.eoien;
976 break;
977 case CAN_TM0TCF_FLAG:
978 case CAN_TM1TCF_FLAG:
979 case CAN_TM2TCF_FLAG:
980 int_status = (flag_status)can_x->inten_bit.tcien;
981 break;
982 case CAN_RF0MN_FLAG:
983 int_status = (flag_status)can_x->inten_bit.rf0mien;
984 break;
985 case CAN_RF0FF_FLAG:
986 int_status = (flag_status)can_x->inten_bit.rf0fien;
987 break;
988 case CAN_RF0OF_FLAG:
989 int_status = (flag_status)can_x->inten_bit.rf0oien;
990 break;
991 case CAN_RF1MN_FLAG:
992 int_status = (flag_status)can_x->inten_bit.rf1mien;
993 break;
994 case CAN_RF1FF_FLAG:
995 int_status = (flag_status)can_x->inten_bit.rf1fien;
996 break;
997 case CAN_RF1OF_FLAG:
998 int_status = (flag_status)can_x->inten_bit.rf1oien;
999 break;
1000 case CAN_QDZIF_FLAG:
1001 int_status = (flag_status)can_x->inten_bit.qdzien;
1002 break;
1003 case CAN_EDZC_FLAG:
1004 int_status = (flag_status)can_x->inten_bit.edzien;
1005 break;
1006 case CAN_TMEF_FLAG:
1007 int_status = (flag_status)can_x->inten_bit.tcien;
1008 break;
1009 default:
1010 int_status = RESET;
1011 break;
1012 }
1013
1014 if(int_status != SET)
1015 {
1016 return RESET;
1017 }
1018 bit_status = can_flag_get(can_x, can_flag);
1019
1020 return bit_status;
1021}
1022
1051 flag_status can_flag_get(can_type* can_x, uint32_t can_flag)
1052{
1053 flag_status bit_status = RESET;
1054 switch(can_flag)
1055 {
1056 case CAN_EAF_FLAG:
1057 bit_status = (flag_status)can_x->ests_bit.eaf;
1058 break;
1059 case CAN_EPF_FLAG:
1060 bit_status = (flag_status)can_x->ests_bit.epf;
1061 break;
1062 case CAN_BOF_FLAG:
1063 bit_status = (flag_status)can_x->ests_bit.bof;
1064 break;
1065 case CAN_ETR_FLAG:
1066 if(can_x->ests_bit.etr != 0)
1067 {
1068 bit_status = SET;
1069 }
1070 else
1071 {
1072 bit_status = RESET;
1073 }
1074 break;
1075 case CAN_EOIF_FLAG:
1076 bit_status = (flag_status)can_x->msts_bit.eoif;
1077 break;
1078 case CAN_TM0TCF_FLAG:
1079 bit_status = (flag_status)can_x->tsts_bit.tm0tcf;
1080 break;
1081 case CAN_TM1TCF_FLAG:
1082 bit_status = (flag_status)can_x->tsts_bit.tm1tcf;
1083 break;
1084 case CAN_TM2TCF_FLAG:
1085 bit_status = (flag_status)can_x->tsts_bit.tm2tcf;
1086 break;
1087 case CAN_RF0MN_FLAG:
1088 if(can_x->rf0_bit.rf0mn != 0)
1089 {
1090 bit_status = SET;
1091 }
1092 else
1093 {
1094 bit_status = RESET;
1095 }
1096 break;
1097 case CAN_RF0FF_FLAG:
1098 bit_status = (flag_status)can_x->rf0_bit.rf0ff;
1099 break;
1100 case CAN_RF0OF_FLAG:
1101 bit_status = (flag_status)can_x->rf0_bit.rf0of;
1102 break;
1103 case CAN_RF1MN_FLAG:
1104 if(can_x->rf1_bit.rf1mn != 0)
1105 {
1106 bit_status = SET;
1107 }
1108 else
1109 {
1110 bit_status = RESET;
1111 }
1112 break;
1113 case CAN_RF1FF_FLAG:
1114 bit_status = (flag_status)can_x->rf1_bit.rf1ff;
1115 break;
1116 case CAN_RF1OF_FLAG:
1117 bit_status = (flag_status)can_x->rf1_bit.rf1of;
1118 break;
1119 case CAN_QDZIF_FLAG:
1120 bit_status = (flag_status)can_x->msts_bit.qdzif;
1121 break;
1122 case CAN_EDZC_FLAG:
1123 if((can_x->msts_bit.dzc != RESET) ||(can_x->msts_bit.edzif != RESET))
1124 {
1125 bit_status = SET;
1126 }
1127 else
1128 {
1129 bit_status = RESET;
1130 }
1131 break;
1132 case CAN_TMEF_FLAG:
1133 if((can_x->tsts_bit.tm0ef != RESET) || (can_x->tsts_bit.tm1ef != RESET) || (can_x->tsts_bit.tm2ef != RESET))
1134 {
1135 bit_status = SET;
1136 }
1137 else
1138 {
1139 bit_status = RESET;
1140 }
1141 break;
1142 default:
1143 bit_status = RESET;
1144 break;
1145 }
1146 return bit_status;
1147}
1148
1174void can_flag_clear(can_type* can_x, uint32_t can_flag)
1175{
1176 switch(can_flag)
1177 {
1178 case CAN_EAF_FLAG:
1179 case CAN_EPF_FLAG:
1180 case CAN_BOF_FLAG:
1181 case CAN_EOIF_FLAG:
1182 can_x->msts = CAN_MSTS_EOIF_VAL;
1183 break;
1184 case CAN_ETR_FLAG:
1185 can_x->msts = CAN_MSTS_EOIF_VAL;
1186 can_x->ests = 0;
1187 break;
1188 case CAN_TM0TCF_FLAG:
1189 can_x->tsts = CAN_TSTS_TM0TCF_VAL;
1190 break;
1191 case CAN_TM1TCF_FLAG:
1192 can_x->tsts = CAN_TSTS_TM1TCF_VAL;
1193 break;
1194 case CAN_TM2TCF_FLAG:
1195 can_x->tsts = CAN_TSTS_TM2TCF_VAL;
1196 break;
1197 case CAN_RF0FF_FLAG:
1198 can_x->rf0 = CAN_RF0_RF0FF_VAL;
1199 break;
1200 case CAN_RF0OF_FLAG:
1201 can_x->rf0 = CAN_RF0_RF0OF_VAL;
1202 break;
1203 case CAN_RF1FF_FLAG:
1204 can_x->rf1 = CAN_RF1_RF1FF_VAL;
1205 break;
1206 case CAN_RF1OF_FLAG:
1207 can_x->rf1 = CAN_RF1_RF1OF_VAL;
1208 break;
1209 case CAN_QDZIF_FLAG:
1210 can_x->msts = CAN_MSTS_QDZIF_VAL;
1211 break;
1212 case CAN_EDZC_FLAG:
1213 can_x->msts = CAN_MSTS_EDZIF_VAL;
1214 break;
1215 case CAN_TMEF_FLAG:
1216 can_x->tsts = CAN_TSTS_TM0TCF_VAL | CAN_TSTS_TM1TCF_VAL | CAN_TSTS_TM2TCF_VAL;
1217 break;
1218 default:
1219 break;
1220 }
1221}
1222
1227#endif
1228
counter
uint16_t counter
Definition: project/at_start_f403/examples/debug/tmr1/src/main.c:38
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
can_transmit_status_type
can_transmit_status_type
can transmit status
Definition: at32f403_can.h:269
can_quit_doze_status_type
can_quit_doze_status_type
can quit doze mode status
Definition: at32f403_can.h:289
can_trans_frame_type
can_trans_frame_type
can transmission frame type
Definition: at32f403_can.h:241
can_error_record_type
can_error_record_type
can error type record
Definition: at32f403_can.h:316
can_operating_mode_type
can_operating_mode_type
can operating mode
Definition: at32f403_can.h:173
can_tx_mailbox_num_type
can_tx_mailbox_num_type
can tx mailboxes
Definition: at32f403_can.h:250
can_enter_doze_status_type
can_enter_doze_status_type
can enter doze mode status
Definition: at32f403_can.h:280
can_rx_fifo_num_type
can_rx_fifo_num_type
can receive fifo
Definition: at32f403_can.h:260
can_identifier_type
can_identifier_type
can identifier type
Definition: at32f403_can.h:232
CAN_FILTER_FIFO0
@ CAN_FILTER_FIFO0
Definition: at32f403_can.h:136
CAN_FILTER_FIFO1
@ CAN_FILTER_FIFO1
Definition: at32f403_can.h:137
CAN_TX_STATUS_SUCCESSFUL
@ CAN_TX_STATUS_SUCCESSFUL
Definition: at32f403_can.h:271
CAN_TX_STATUS_PENDING
@ CAN_TX_STATUS_PENDING
Definition: at32f403_can.h:272
CAN_TX_STATUS_NO_EMPTY
@ CAN_TX_STATUS_NO_EMPTY
Definition: at32f403_can.h:273
CAN_TX_STATUS_FAILED
@ CAN_TX_STATUS_FAILED
Definition: at32f403_can.h:270
CAN_DISCARDING_FIRST_RECEIVED
@ CAN_DISCARDING_FIRST_RECEIVED
Definition: at32f403_can.h:299
CAN_BTS2_3TQ
@ CAN_BTS2_3TQ
Definition: at32f403_can.h:220
CAN_QUIT_DOZE_FAILED
@ CAN_QUIT_DOZE_FAILED
Definition: at32f403_can.h:290
CAN_QUIT_DOZE_SUCCESSFUL
@ CAN_QUIT_DOZE_SUCCESSFUL
Definition: at32f403_can.h:291
CAN_BTS1_4TQ
@ CAN_BTS1_4TQ
Definition: at32f403_can.h:198
CAN_ERRORRECORD_NOERR
@ CAN_ERRORRECORD_NOERR
Definition: at32f403_can.h:317
CAN_FILTER_MODE_ID_LIST
@ CAN_FILTER_MODE_ID_LIST
Definition: at32f403_can.h:146
CAN_FILTER_MODE_ID_MASK
@ CAN_FILTER_MODE_ID_MASK
Definition: at32f403_can.h:145
CAN_OPERATINGMODE_FREEZE
@ CAN_OPERATINGMODE_FREEZE
Definition: at32f403_can.h:174
CAN_OPERATINGMODE_COMMUNICATE
@ CAN_OPERATINGMODE_COMMUNICATE
Definition: at32f403_can.h:176
CAN_OPERATINGMODE_DOZE
@ CAN_OPERATINGMODE_DOZE
Definition: at32f403_can.h:175
CAN_SENDING_BY_ID
@ CAN_SENDING_BY_ID
Definition: at32f403_can.h:308
CAN_TX_MAILBOX2
@ CAN_TX_MAILBOX2
Definition: at32f403_can.h:253
CAN_TX_MAILBOX0
@ CAN_TX_MAILBOX0
Definition: at32f403_can.h:251
CAN_TX_MAILBOX1
@ CAN_TX_MAILBOX1
Definition: at32f403_can.h:252
CAN_FILTER_16BIT
@ CAN_FILTER_16BIT
Definition: at32f403_can.h:154
CAN_FILTER_32BIT
@ CAN_FILTER_32BIT
Definition: at32f403_can.h:155
CAN_ENTER_DOZE_FAILED
@ CAN_ENTER_DOZE_FAILED
Definition: at32f403_can.h:281
CAN_ENTER_DOZE_SUCCESSFUL
@ CAN_ENTER_DOZE_SUCCESSFUL
Definition: at32f403_can.h:282
CAN_RX_FIFO0
@ CAN_RX_FIFO0
Definition: at32f403_can.h:261
CAN_RX_FIFO1
@ CAN_RX_FIFO1
Definition: at32f403_can.h:262
CAN_ID_STANDARD
@ CAN_ID_STANDARD
Definition: at32f403_can.h:233
CAN_ID_EXTENDED
@ CAN_ID_EXTENDED
Definition: at32f403_can.h:234
CAN_MODE_COMMUNICATE
@ CAN_MODE_COMMUNICATE
Definition: at32f403_can.h:163
CAN_RSAW_2TQ
@ CAN_RSAW_2TQ
Definition: at32f403_can.h:185
CAN_EDZC_FLAG
#define CAN_EDZC_FLAG
Definition: at32f403_can.h:77
CAN_TM1TCF_FLAG
#define CAN_TM1TCF_FLAG
Definition: at32f403_can.h:68
CAN_QDZIF_FLAG
#define CAN_QDZIF_FLAG
Definition: at32f403_can.h:76
CAN_TM0TCF_FLAG
#define CAN_TM0TCF_FLAG
Definition: at32f403_can.h:67
CAN_RF1FF_FLAG
#define CAN_RF1FF_FLAG
Definition: at32f403_can.h:74
CAN_RF0FF_FLAG
#define CAN_RF0FF_FLAG
Definition: at32f403_can.h:71
CAN_RF1MN_FLAG
#define CAN_RF1MN_FLAG
Definition: at32f403_can.h:73
CAN_EPF_FLAG
#define CAN_EPF_FLAG
Definition: at32f403_can.h:63
CAN_RF1OF_FLAG
#define CAN_RF1OF_FLAG
Definition: at32f403_can.h:75
CAN_EAF_FLAG
#define CAN_EAF_FLAG
Definition: at32f403_can.h:62
CAN_RF0MN_FLAG
#define CAN_RF0MN_FLAG
Definition: at32f403_can.h:70
CAN_TM2TCF_FLAG
#define CAN_TM2TCF_FLAG
Definition: at32f403_can.h:69
CAN_ETR_FLAG
#define CAN_ETR_FLAG
Definition: at32f403_can.h:65
CAN_RF0OF_FLAG
#define CAN_RF0OF_FLAG
Definition: at32f403_can.h:72
CAN_EOIF_FLAG
#define CAN_EOIF_FLAG
Definition: at32f403_can.h:66
CAN_TMEF_FLAG
#define CAN_TMEF_FLAG
Definition: at32f403_can.h:78
CAN_BOF_FLAG
#define CAN_BOF_FLAG
Definition: at32f403_can.h:64
can_base_init
error_status can_base_init(can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct.
Definition: at32f403_can.c:187
can_reset
void can_reset(can_type *can_x)
deinitialize the can peripheral registers to their default reset values.
Definition: at32f403_can.c:49
can_interrupt_flag_get
flag_status can_interrupt_flag_get(can_type *can_x, uint32_t can_flag)
get interrupt flag of the specified can peripheral.
Definition: at32f403_can.c:955
can_transmit_error_counter_get
uint8_t can_transmit_error_counter_get(can_type *can_x)
return the transmit error counter of the specified can peripheral.
Definition: at32f403_can.c:883
can_transmit_status_get
can_transmit_status_type can_transmit_status_get(can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral.
Definition: at32f403_can.c:505
can_ttc_mode_enable
void can_ttc_mode_enable(can_type *can_x, confirm_state new_state)
enable or disable time trigger operation communication mode of the specified can peripheral.
Definition: at32f403_can.c:407
can_filter_default_para_init
void can_filter_default_para_init(can_filter_init_type *can_filter_init_struct)
fill each can_filter_init_struct member with its default value.
Definition: at32f403_can.c:262
can_receive_fifo_release
void can_receive_fifo_release(can_type *can_x, can_rx_fifo_num_type fifo_number)
release the specified fifo of the specified can peripheral.
Definition: at32f403_can.c:657
can_receive_error_counter_get
uint8_t can_receive_error_counter_get(can_type *can_x)
return the receive error counter (rec) of the specified can peripheral.
Definition: at32f403_can.c:869
can_operating_mode_set
error_status can_operating_mode_set(can_type *can_x, can_operating_mode_type can_operating_mode)
set the operation mode of the specified can peripheral.
Definition: at32f403_can.c:714
can_baudrate_default_para_init
void can_baudrate_default_para_init(can_baudrate_type *can_baudrate_struct)
fill each can_baudrate_struct member with its default value.
Definition: at32f403_can.c:63
can_transmit_cancel
void can_transmit_cancel(can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
cancel a transmit request of the specified can peripheral.
Definition: at32f403_can.c:580
can_receive_message_pending_get
uint8_t can_receive_message_pending_get(can_type *can_x, can_rx_fifo_num_type fifo_number)
return the number of pending messages of the specified can peripheral.
Definition: at32f403_can.c:683
can_message_transmit
uint8_t can_message_transmit(can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral.
Definition: at32f403_can.c:431
can_message_receive
void can_message_receive(can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral.
Definition: at32f403_can.c:610
can_interrupt_enable
void can_interrupt_enable(can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral.
Definition: at32f403_can.c:915
can_flag_get
flag_status can_flag_get(can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral.
Definition: at32f403_can.c:1051
can_flag_clear
void can_flag_clear(can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral.
Definition: at32f403_can.c:1174
can_baudrate_set
error_status can_baudrate_set(can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral
Definition: at32f403_can.c:92
can_debug_transmission_prohibit
void can_debug_transmission_prohibit(can_type *can_x, confirm_state new_state)
enable or disable the debug transmission prohibit of the specified can peripheral.
Definition: at32f403_can.c:386
can_error_type_record_get
can_error_record_type can_error_type_record_get(can_type *can_x)
return the error type record (etr) of the specified can peripheral.
Definition: at32f403_can.c:854
can_filter_init
void can_filter_init(can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct.
Definition: at32f403_can.c:297
can_default_para_init
void can_default_para_init(can_base_type *can_base_struct)
fill each can_init_struct member with its default value.
Definition: at32f403_can.c:150
can_doze_mode_exit
can_quit_doze_status_type can_doze_mode_exit(can_type *can_x)
exit the doze mode of the specified can peripheral.
Definition: at32f403_can.c:822
can_doze_mode_enter
can_enter_doze_status_type can_doze_mode_enter(can_type *can_x)
enter the low power mode of the specified can peripheral.
Definition: at32f403_can.c:792
DZC_TIMEOUT
#define DZC_TIMEOUT
Definition: at32f403_can.h:51
FZC_TIMEOUT
#define FZC_TIMEOUT
Definition: at32f403_can.h:50
CAN_RF1_RF1FF_VAL
#define CAN_RF1_RF1FF_VAL
Definition: at32f403_can.h:123
CAN_RF0_RF0FF_VAL
#define CAN_RF0_RF0FF_VAL
Definition: at32f403_can.h:120
CAN_TSTS_TM0TCF_VAL
#define CAN_TSTS_TM0TCF_VAL
Definition: at32f403_can.h:114
CAN_TSTS_TM2CT_VAL
#define CAN_TSTS_TM2CT_VAL
Definition: at32f403_can.h:119
CAN_RF1_RF1R_VAL
#define CAN_RF1_RF1R_VAL
Definition: at32f403_can.h:125
CAN1
#define CAN1
Definition: at32f403_can.h:936
CAN_MSTS_EOIF_VAL
#define CAN_MSTS_EOIF_VAL
can flag clear operation macro definition val
Definition: at32f403_can.h:111
CAN_MSTS_QDZIF_VAL
#define CAN_MSTS_QDZIF_VAL
Definition: at32f403_can.h:112
CAN_TSTS_TM2TCF_VAL
#define CAN_TSTS_TM2TCF_VAL
Definition: at32f403_can.h:116
CAN_RF0_RF0OF_VAL
#define CAN_RF0_RF0OF_VAL
Definition: at32f403_can.h:121
CAN_RF0_RF0R_VAL
#define CAN_RF0_RF0R_VAL
Definition: at32f403_can.h:122
CAN_RF1_RF1OF_VAL
#define CAN_RF1_RF1OF_VAL
Definition: at32f403_can.h:124
CAN_TSTS_TM1TCF_VAL
#define CAN_TSTS_TM1TCF_VAL
Definition: at32f403_can.h:115
CAN_TSTS_TM0CT_VAL
#define CAN_TSTS_TM0CT_VAL
Definition: at32f403_can.h:117
CAN_TSTS_TM1CT_VAL
#define CAN_TSTS_TM1CT_VAL
Definition: at32f403_can.h:118
CAN_MSTS_EDZIF_VAL
#define CAN_MSTS_EDZIF_VAL
Definition: at32f403_can.h:113
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
CRM_CAN1_PERIPH_RESET
@ CRM_CAN1_PERIPH_RESET
Definition: at32f403_crm.h:204
error_status
error_status
error status
Definition: at32f403.h:314
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
can_base_type
can init structure definition
Definition: at32f403_can.h:331
can_base_type::prsf_enable
confirm_state prsf_enable
Definition: at32f403_can.h:340
can_base_type::mdrsel_selection
can_msg_discarding_rule_type mdrsel_selection
Definition: at32f403_can.h:342
can_base_type::aed_enable
confirm_state aed_enable
Definition: at32f403_can.h:338
can_base_type::mmssr_selection
can_msg_sending_rule_type mmssr_selection
Definition: at32f403_can.h:344
can_base_type::ttc_enable
confirm_state ttc_enable
Definition: at32f403_can.h:334
can_base_type::mode_selection
can_mode_type mode_selection
Definition: at32f403_can.h:332
can_base_type::aebo_enable
confirm_state aebo_enable
Definition: at32f403_can.h:336
can_baudrate_type
can baudrate structure definition
Definition: at32f403_can.h:352
can_baudrate_type::baudrate_div
uint16_t baudrate_div
Definition: at32f403_can.h:353
can_baudrate_type::rsaw_size
can_rsaw_type rsaw_size
Definition: at32f403_can.h:355
can_baudrate_type::bts2_size
can_bts2_type bts2_size
Definition: at32f403_can.h:359
can_baudrate_type::bts1_size
can_bts1_type bts1_size
Definition: at32f403_can.h:357
can_fifo_mailbox_type::rfdt4
__IO uint32_t rfdt4
Definition: at32f403_can.h:564
can_fifo_mailbox_type::rfi
__IO uint32_t rfi
Definition: at32f403_can.h:515
can_fifo_mailbox_type::rfdt0
__IO uint32_t rfdt0
Definition: at32f403_can.h:549
can_fifo_mailbox_type::rfsid
__IO uint32_t rfsid
Definition: at32f403_can.h:522
can_fifo_mailbox_type::rfdt2
__IO uint32_t rfdt2
Definition: at32f403_can.h:551
can_fifo_mailbox_type::rfdtl
__IO uint32_t rfdtl
Definition: at32f403_can.h:534
can_fifo_mailbox_type::rfidi
__IO uint32_t rfidi
Definition: at32f403_can.h:520
can_fifo_mailbox_type::rfdt1
__IO uint32_t rfdt1
Definition: at32f403_can.h:550
can_fifo_mailbox_type::rfi_bit
struct can_fifo_mailbox_type::@207::@215 rfi_bit
can_fifo_mailbox_type::rfdth_bit
struct can_fifo_mailbox_type::@213::@218 rfdth_bit
can_fifo_mailbox_type::rfdt6
__IO uint32_t rfdt6
Definition: at32f403_can.h:566
can_fifo_mailbox_type::rfc_bit
struct can_fifo_mailbox_type::@209::@216 rfc_bit
can_fifo_mailbox_type::rffri
__IO uint32_t rffri
Definition: at32f403_can.h:519
can_fifo_mailbox_type::rfdt3
__IO uint32_t rfdt3
Definition: at32f403_can.h:552
can_fifo_mailbox_type::rfdt5
__IO uint32_t rfdt5
Definition: at32f403_can.h:565
can_fifo_mailbox_type::rfdt7
__IO uint32_t rfdt7
Definition: at32f403_can.h:567
can_fifo_mailbox_type::rffmn
__IO uint32_t rffmn
Definition: at32f403_can.h:536
can_fifo_mailbox_type::rfdtl_bit
struct can_fifo_mailbox_type::@211::@217 rfdtl_bit
can_filter_init_type
can filter init structure definition
Definition: at32f403_can.h:367
can_filter_init_type::filter_mask_low
uint16_t filter_mask_low
Definition: at32f403_can.h:387
can_filter_init_type::filter_number
uint8_t filter_number
Definition: at32f403_can.h:374
can_filter_init_type::filter_fifo
can_filter_fifo_type filter_fifo
Definition: at32f403_can.h:372
can_filter_init_type::filter_bit
can_filter_bit_width_type filter_bit
Definition: at32f403_can.h:376
can_filter_init_type::filter_mode
can_filter_mode_type filter_mode
Definition: at32f403_can.h:370
can_filter_init_type::filter_activate_enable
confirm_state filter_activate_enable
Definition: at32f403_can.h:368
can_filter_init_type::filter_mask_high
uint16_t filter_mask_high
Definition: at32f403_can.h:384
can_filter_init_type::filter_id_high
uint16_t filter_id_high
Definition: at32f403_can.h:378
can_filter_init_type::filter_id_low
uint16_t filter_id_low
Definition: at32f403_can.h:381
can_filter_register_type::ffdb1
__IO uint32_t ffdb1
Definition: at32f403_can.h:577
can_filter_register_type::ffdb2
__IO uint32_t ffdb2
Definition: at32f403_can.h:578
can_rx_message_type
can rx message structure definition
Definition: at32f403_can.h:417
can_rx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:418
can_rx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:424
can_rx_message_type::frame_type
can_trans_frame_type frame_type
Definition: at32f403_can.h:426
can_rx_message_type::data
uint8_t data[8]
Definition: at32f403_can.h:431
can_rx_message_type::dlc
uint8_t dlc
Definition: at32f403_can.h:428
can_rx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:421
can_rx_message_type::filter_index
uint8_t filter_index
Definition: at32f403_can.h:433
can_tx_mailbox_type::tmtsten
__IO uint32_t tmtsten
Definition: at32f403_can.h:468
can_tx_mailbox_type::tmi
__IO uint32_t tmi
Definition: at32f403_can.h:447
can_tx_mailbox_type::tmsr
__IO uint32_t tmsr
Definition: at32f403_can.h:450
can_tx_mailbox_type::tmdtl
__IO uint32_t tmdtl
Definition: at32f403_can.h:479
can_tx_mailbox_type::tmdtbl
__IO uint32_t tmdtbl
Definition: at32f403_can.h:466
can_tx_mailbox_type::tmi_bit
struct can_tx_mailbox_type::@195::@203 tmi_bit
can_tx_mailbox_type::tmfrsel
__IO uint32_t tmfrsel
Definition: at32f403_can.h:451
can_tx_mailbox_type::tmsid
__IO uint32_t tmsid
Definition: at32f403_can.h:454
can_tx_mailbox_type::tmdth
__IO uint32_t tmdth
Definition: at32f403_can.h:494
can_tx_mailbox_type::tmidsel
__IO uint32_t tmidsel
Definition: at32f403_can.h:452
can_tx_mailbox_type::tmc_bit
struct can_tx_mailbox_type::@197::@204 tmc_bit
can_tx_message_type
can tx message structure definition
Definition: at32f403_can.h:395
can_tx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:399
can_tx_message_type::frame_type
can_trans_frame_type frame_type
Definition: at32f403_can.h:404
can_tx_message_type::data
uint8_t data[8]
Definition: at32f403_can.h:409
can_tx_message_type::dlc
uint8_t dlc
Definition: at32f403_can.h:406
can_tx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:402
can_tx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:396
can_type
type define can register all
Definition: at32f403_can.h:585
can_type::rf0of
__IO uint32_t rf0of
Definition: at32f403_can.h:679
can_type::tm2ef
__IO uint32_t tm2ef
Definition: at32f403_can.h:661
can_type::etrien
__IO uint32_t etrien
Definition: at32f403_can.h:721
can_type::boien
__IO uint32_t boien
Definition: at32f403_can.h:720
can_type::mctrl_bit
struct can_type::@219::@245 mctrl_bit
can_type::eoien
__IO uint32_t eoien
Definition: at32f403_can.h:723
can_type::eaf
__IO uint32_t eaf
Definition: at32f403_can.h:738
can_type::rf1
__IO uint32_t rf1
Definition: at32f403_can.h:690
can_type::tm0tsf
__IO uint32_t tm0tsf
Definition: at32f403_can.h:641
can_type::aeden
__IO uint32_t aeden
Definition: at32f403_can.h:600
can_type::dzc
__IO uint32_t dzc
Definition: at32f403_can.h:619
can_type::msts_bit
struct can_type::@221::@246 msts_bit
can_type::tm0tcf
__IO uint32_t tm0tcf
Definition: at32f403_can.h:640
can_type::eaien
__IO uint32_t eaien
Definition: at32f403_can.h:718
can_type::btmg_bit
struct can_type::@233::@252 btmg_bit
can_type::tsts_bit
struct can_type::@223::@247 tsts_bit
can_type::edzif
__IO uint32_t edzif
Definition: at32f403_can.h:622
can_type::mdrsel
__IO uint32_t mdrsel
Definition: at32f403_can.h:598
can_type::rf0fien
__IO uint32_t rf0fien
Definition: at32f403_can.h:712
can_type::rf1ff
__IO uint32_t rf1ff
Definition: at32f403_can.h:695
can_type::bof
__IO uint32_t bof
Definition: at32f403_can.h:740
can_type::tec
__IO uint32_t tec
Definition: at32f403_can.h:744
can_type::rf1_bit
struct can_type::@227::@249 rf1_bit
can_type::ttcen
__IO uint32_t ttcen
Definition: at32f403_can.h:602
can_type::tx_mailbox
can_tx_mailbox_type tx_mailbox[3]
can controller area network tx mailbox register, offset:0x180~0x1AC
Definition: at32f403_can.h:777
can_type::tm1tcf
__IO uint32_t tm1tcf
Definition: at32f403_can.h:646
can_type::lben
__IO uint32_t lben
Definition: at32f403_can.h:764
can_type::ptd
__IO uint32_t ptd
Definition: at32f403_can.h:605
can_type::fzc
__IO uint32_t fzc
Definition: at32f403_can.h:618
can_type::epien
__IO uint32_t epien
Definition: at32f403_can.h:719
can_type::rf1oien
__IO uint32_t rf1oien
Definition: at32f403_can.h:716
can_type::rf0oien
__IO uint32_t rf0oien
Definition: at32f403_can.h:713
can_type::ffb
can_filter_register_type ffb[14]
can ffb register, offset:0x240~0x2AC
Definition: at32f403_can.h:929
can_type::tm0ef
__IO uint32_t tm0ef
Definition: at32f403_can.h:659
can_type::bts2
__IO uint32_t bts2
Definition: at32f403_can.h:760
can_type::loen
__IO uint32_t loen
Definition: at32f403_can.h:765
can_type::ests
__IO uint32_t ests
Definition: at32f403_can.h:735
can_type::frf
__IO uint32_t frf
Definition: at32f403_can.h:869
can_type::fctrl_bit
struct can_type::@235::@253 fctrl_bit
can_type::qdzien
__IO uint32_t qdzien
Definition: at32f403_can.h:724
can_type::rsaw
__IO uint32_t rsaw
Definition: at32f403_can.h:762
can_type::rf0
__IO uint32_t rf0
Definition: at32f403_can.h:673
can_type::rf1mien
__IO uint32_t rf1mien
Definition: at32f403_can.h:714
can_type::ests_bit
struct can_type::@231::@251 ests_bit
can_type::rf0mien
__IO uint32_t rf0mien
Definition: at32f403_can.h:711
can_type::rf1mn
__IO uint32_t rf1mn
Definition: at32f403_can.h:693
can_type::edzien
__IO uint32_t edzien
Definition: at32f403_can.h:725
can_type::prsfen
__IO uint32_t prsfen
Definition: at32f403_can.h:599
can_type::facfg
__IO uint32_t facfg
Definition: at32f403_can.h:900
can_type::tm1ef
__IO uint32_t tm1ef
Definition: at32f403_can.h:660
can_type::aeboen
__IO uint32_t aeboen
Definition: at32f403_can.h:601
can_type::eoif
__IO uint32_t eoif
Definition: at32f403_can.h:620
can_type::tm2tcf
__IO uint32_t tm2tcf
Definition: at32f403_can.h:652
can_type::brdiv
__IO uint32_t brdiv
Definition: at32f403_can.h:757
can_type::epf
__IO uint32_t epf
Definition: at32f403_can.h:739
can_type::dzen
__IO uint32_t dzen
Definition: at32f403_can.h:596
can_type::etr
__IO uint32_t etr
Definition: at32f403_can.h:742
can_type::fifo_mailbox
can_fifo_mailbox_type fifo_mailbox[2]
can controller area network fifo mailbox register, offset:0x1B0~0x1CC
Definition: at32f403_can.h:782
can_type::tsts
__IO uint32_t tsts
Definition: at32f403_can.h:637
can_type::fbwcfg
__IO uint32_t fbwcfg
Definition: at32f403_can.h:838
can_type::qdzif
__IO uint32_t qdzif
Definition: at32f403_can.h:621
can_type::tcien
__IO uint32_t tcien
Definition: at32f403_can.h:710
can_type::rf0mn
__IO uint32_t rf0mn
Definition: at32f403_can.h:676
can_type::rf0ff
__IO uint32_t rf0ff
Definition: at32f403_can.h:678
can_type::fcs
__IO uint32_t fcs
Definition: at32f403_can.h:797
can_type::msts
__IO uint32_t msts
Definition: at32f403_can.h:615
can_type::rec
__IO uint32_t rec
Definition: at32f403_can.h:745
can_type::bts1
__IO uint32_t bts1
Definition: at32f403_can.h:759
can_type::tm2tsf
__IO uint32_t tm2tsf
Definition: at32f403_can.h:653
can_type::rf1fien
__IO uint32_t rf1fien
Definition: at32f403_can.h:715
can_type::rf1of
__IO uint32_t rf1of
Definition: at32f403_can.h:696
can_type::fzen
__IO uint32_t fzen
Definition: at32f403_can.h:595
can_type::mmssr
__IO uint32_t mmssr
Definition: at32f403_can.h:597
can_type::inten_bit
struct can_type::@229::@250 inten_bit
can_type::rf0_bit
struct can_type::@225::@248 rf0_bit
can_type::inten
__IO uint32_t inten
Definition: at32f403_can.h:707
can_type::fmcfg
__IO uint32_t fmcfg
Definition: at32f403_can.h:807
can_type::tm1tsf
__IO uint32_t tm1tsf
Definition: at32f403_can.h:647
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_can.h Source File

  • libraries
  • drivers
  • inc
at32f403_can.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CAN_H
27#define __AT32F403_CAN_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define FZC_TIMEOUT ((uint32_t)0x0000FFFF)
51#define DZC_TIMEOUT ((uint32_t)0x0000FFFF)
62#define CAN_EAF_FLAG ((uint32_t)0x01)
63#define CAN_EPF_FLAG ((uint32_t)0x02)
64#define CAN_BOF_FLAG ((uint32_t)0x03)
65#define CAN_ETR_FLAG ((uint32_t)0x04)
66#define CAN_EOIF_FLAG ((uint32_t)0x05)
67#define CAN_TM0TCF_FLAG ((uint32_t)0x06)
68#define CAN_TM1TCF_FLAG ((uint32_t)0x07)
69#define CAN_TM2TCF_FLAG ((uint32_t)0x08)
70#define CAN_RF0MN_FLAG ((uint32_t)0x09)
71#define CAN_RF0FF_FLAG ((uint32_t)0x0A)
72#define CAN_RF0OF_FLAG ((uint32_t)0x0B)
73#define CAN_RF1MN_FLAG ((uint32_t)0x0C)
74#define CAN_RF1FF_FLAG ((uint32_t)0x0D)
75#define CAN_RF1OF_FLAG ((uint32_t)0x0E)
76#define CAN_QDZIF_FLAG ((uint32_t)0x0F)
77#define CAN_EDZC_FLAG ((uint32_t)0x10)
78#define CAN_TMEF_FLAG ((uint32_t)0x11)
89#define CAN_TCIEN_INT ((uint32_t)0x00000001)
90#define CAN_RF0MIEN_INT ((uint32_t)0x00000002)
91#define CAN_RF0FIEN_INT ((uint32_t)0x00000004)
92#define CAN_RF0OIEN_INT ((uint32_t)0x00000008)
93#define CAN_RF1MIEN_INT ((uint32_t)0x00000010)
94#define CAN_RF1FIEN_INT ((uint32_t)0x00000020)
95#define CAN_RF1OIEN_INT ((uint32_t)0x00000040)
96#define CAN_EAIEN_INT ((uint32_t)0x00000100)
97#define CAN_EPIEN_INT ((uint32_t)0x00000200)
98#define CAN_BOIEN_INT ((uint32_t)0x00000400)
99#define CAN_ETRIEN_INT ((uint32_t)0x00000800)
100#define CAN_EOIEN_INT ((uint32_t)0x00008000)
101#define CAN_QDZIEN_INT ((uint32_t)0x00010000)
102#define CAN_EDZIEN_INT ((uint32_t)0x00020000)
111#define CAN_MSTS_EOIF_VAL ((uint32_t)0x00000004)
112#define CAN_MSTS_QDZIF_VAL ((uint32_t)0x00000008)
113#define CAN_MSTS_EDZIF_VAL ((uint32_t)0x00000010)
114#define CAN_TSTS_TM0TCF_VAL ((uint32_t)0x00000001)
115#define CAN_TSTS_TM1TCF_VAL ((uint32_t)0x00000100)
116#define CAN_TSTS_TM2TCF_VAL ((uint32_t)0x00010000)
117#define CAN_TSTS_TM0CT_VAL ((uint32_t)0x00000080)
118#define CAN_TSTS_TM1CT_VAL ((uint32_t)0x00008000)
119#define CAN_TSTS_TM2CT_VAL ((uint32_t)0x00800000)
120#define CAN_RF0_RF0FF_VAL ((uint32_t)0x00000008)
121#define CAN_RF0_RF0OF_VAL ((uint32_t)0x00000010)
122#define CAN_RF0_RF0R_VAL ((uint32_t)0x00000020)
123#define CAN_RF1_RF1FF_VAL ((uint32_t)0x00000008)
124#define CAN_RF1_RF1OF_VAL ((uint32_t)0x00000010)
125#define CAN_RF1_RF1R_VAL ((uint32_t)0x00000020)
134typedef enum
135{
136 CAN_FILTER_FIFO0 = 0x00,
137 CAN_FILTER_FIFO1 = 0x01
138} can_filter_fifo_type;
139
143typedef enum
144{
145 CAN_FILTER_MODE_ID_MASK = 0x00,
146 CAN_FILTER_MODE_ID_LIST = 0x01
147} can_filter_mode_type;
148
152typedef enum
153{
154 CAN_FILTER_16BIT = 0x00,
155 CAN_FILTER_32BIT = 0x01
156} can_filter_bit_width_type;
157
161typedef enum
162{
163 CAN_MODE_COMMUNICATE = 0x00,
164 CAN_MODE_LOOPBACK = 0x01,
165 CAN_MODE_LISTENONLY = 0x02,
166 CAN_MODE_LISTENONLY_LOOPBACK = 0x03
167} can_mode_type;
168
172typedef enum
173{
174 CAN_OPERATINGMODE_FREEZE = 0x00,
175 CAN_OPERATINGMODE_DOZE = 0x01,
176 CAN_OPERATINGMODE_COMMUNICATE = 0x02
177} can_operating_mode_type;
178
182typedef enum
183{
184 CAN_RSAW_1TQ = 0x00,
185 CAN_RSAW_2TQ = 0x01,
186 CAN_RSAW_3TQ = 0x02,
187 CAN_RSAW_4TQ = 0x03
188} can_rsaw_type;
189
193typedef enum
194{
195 CAN_BTS1_1TQ = 0x00,
196 CAN_BTS1_2TQ = 0x01,
197 CAN_BTS1_3TQ = 0x02,
198 CAN_BTS1_4TQ = 0x03,
199 CAN_BTS1_5TQ = 0x04,
200 CAN_BTS1_6TQ = 0x05,
201 CAN_BTS1_7TQ = 0x06,
202 CAN_BTS1_8TQ = 0x07,
203 CAN_BTS1_9TQ = 0x08,
204 CAN_BTS1_10TQ = 0x09,
205 CAN_BTS1_11TQ = 0x0A,
206 CAN_BTS1_12TQ = 0x0B,
207 CAN_BTS1_13TQ = 0x0C,
208 CAN_BTS1_14TQ = 0x0D,
209 CAN_BTS1_15TQ = 0x0E,
210 CAN_BTS1_16TQ = 0x0F
211} can_bts1_type;
212
216typedef enum
217{
218 CAN_BTS2_1TQ = 0x00,
219 CAN_BTS2_2TQ = 0x01,
220 CAN_BTS2_3TQ = 0x02,
221 CAN_BTS2_4TQ = 0x03,
222 CAN_BTS2_5TQ = 0x04,
223 CAN_BTS2_6TQ = 0x05,
224 CAN_BTS2_7TQ = 0x06,
225 CAN_BTS2_8TQ = 0x07
226} can_bts2_type;
227
231typedef enum
232{
233 CAN_ID_STANDARD = 0x00,
234 CAN_ID_EXTENDED = 0x01
235} can_identifier_type;
236
240typedef enum
241{
242 CAN_TFT_DATA = 0x00,
243 CAN_TFT_REMOTE = 0x01
244} can_trans_frame_type;
245
249typedef enum
250{
251 CAN_TX_MAILBOX0 = 0x00,
252 CAN_TX_MAILBOX1 = 0x01,
253 CAN_TX_MAILBOX2 = 0x02
254} can_tx_mailbox_num_type;
255
259typedef enum
260{
261 CAN_RX_FIFO0 = 0x00,
262 CAN_RX_FIFO1 = 0x01
263} can_rx_fifo_num_type;
264
268typedef enum
269{
270 CAN_TX_STATUS_FAILED = 0x00,
271 CAN_TX_STATUS_SUCCESSFUL = 0x01,
272 CAN_TX_STATUS_PENDING = 0x02,
273 CAN_TX_STATUS_NO_EMPTY = 0x04
274} can_transmit_status_type;
275
279typedef enum
280{
281 CAN_ENTER_DOZE_FAILED = 0x00,
282 CAN_ENTER_DOZE_SUCCESSFUL = 0x01
283} can_enter_doze_status_type;
284
288typedef enum
289{
290 CAN_QUIT_DOZE_FAILED = 0x00,
291 CAN_QUIT_DOZE_SUCCESSFUL = 0x01
292} can_quit_doze_status_type;
293
297typedef enum
298{
299 CAN_DISCARDING_FIRST_RECEIVED = 0x00,
300 CAN_DISCARDING_LAST_RECEIVED = 0x01
301} can_msg_discarding_rule_type;
302
306typedef enum
307{
308 CAN_SENDING_BY_ID = 0x00,
309 CAN_SENDING_BY_REQUEST = 0x01
310} can_msg_sending_rule_type;
311
315typedef enum
316{
317 CAN_ERRORRECORD_NOERR = 0x00,
318 CAN_ERRORRECORD_STUFFERR = 0x01,
319 CAN_ERRORRECORD_FORMERR = 0x02,
320 CAN_ERRORRECORD_ACKERR = 0x03,
321 CAN_ERRORRECORD_BITRECESSIVEERR = 0x04,
322 CAN_ERRORRECORD_BITDOMINANTERR = 0x05,
323 CAN_ERRORRECORD_CRCERR = 0x06,
324 CAN_ERRORRECORD_SOFTWARESETERR = 0x07
325} can_error_record_type;
326
330typedef struct
331{
332 can_mode_type mode_selection;
334 confirm_state ttc_enable;
336 confirm_state aebo_enable;
338 confirm_state aed_enable;
340 confirm_state prsf_enable;
342 can_msg_discarding_rule_type mdrsel_selection;
344 can_msg_sending_rule_type mmssr_selection;
346} can_base_type;
347
351typedef struct
352{
353 uint16_t baudrate_div;
355 can_rsaw_type rsaw_size;
357 can_bts1_type bts1_size;
359 can_bts2_type bts2_size;
361} can_baudrate_type;
362
366typedef struct
367{
368 confirm_state filter_activate_enable;
370 can_filter_mode_type filter_mode;
372 can_filter_fifo_type filter_fifo;
374 uint8_t filter_number;
376 can_filter_bit_width_type filter_bit;
378 uint16_t filter_id_high;
381 uint16_t filter_id_low;
384 uint16_t filter_mask_high;
387 uint16_t filter_mask_low;
389} can_filter_init_type;
390
394typedef struct
395{
396 uint32_t standard_id;
399 uint32_t extended_id;
402 can_identifier_type id_type;
404 can_trans_frame_type frame_type;
406 uint8_t dlc;
409 uint8_t data[8];
411} can_tx_message_type;
412
416typedef struct
417{
418 uint32_t standard_id;
421 uint32_t extended_id;
424 can_identifier_type id_type;
426 can_trans_frame_type frame_type;
428 uint8_t dlc;
431 uint8_t data[8];
433 uint8_t filter_index;
435} can_rx_message_type;
436
440typedef struct
441{
445 union
446 {
447 __IO uint32_t tmi;
448 struct
449 {
450 __IO uint32_t tmsr : 1; /* [0] */
451 __IO uint32_t tmfrsel : 1; /* [1] */
452 __IO uint32_t tmidsel : 1; /* [2] */
453 __IO uint32_t tmeid : 18;/* [20:3] */
454 __IO uint32_t tmsid : 11;/* [31:21] */
455 } tmi_bit;
456 };
457
461 union
462 {
463 __IO uint32_t tmc;
464 struct
465 {
466 __IO uint32_t tmdtbl : 4; /* [3:0] */
467 __IO uint32_t reserved1 : 4; /* [7:4] */
468 __IO uint32_t tmtsten : 1; /* [8] */
469 __IO uint32_t reserved2 : 7; /* [15:9] */
470 __IO uint32_t tmts : 16;/* [31:16] */
471 } tmc_bit;
472 };
473
477 union
478 {
479 __IO uint32_t tmdtl;
480 struct
481 {
482 __IO uint32_t tmdt0 : 8; /* [7:0] */
483 __IO uint32_t tmdt1 : 8; /* [15:8] */
484 __IO uint32_t tmdt2 : 8; /* [23:16] */
485 __IO uint32_t tmdt3 : 8; /* [31:24] */
486 } tmdtl_bit;
487 };
488
492 union
493 {
494 __IO uint32_t tmdth;
495 struct
496 {
497 __IO uint32_t tmdt4 : 8; /* [7:0] */
498 __IO uint32_t tmdt5 : 8; /* [15:8] */
499 __IO uint32_t tmdt6 : 8; /* [23:16] */
500 __IO uint32_t tmdt7 : 8; /* [31:24] */
501 } tmdth_bit;
502 };
503} can_tx_mailbox_type;
504
508typedef struct
509{
513 union
514 {
515 __IO uint32_t rfi;
516 struct
517 {
518 __IO uint32_t reserved1 : 1; /* [0] */
519 __IO uint32_t rffri : 1; /* [1] */
520 __IO uint32_t rfidi : 1; /* [2] */
521 __IO uint32_t rfeid : 18;/* [20:3] */
522 __IO uint32_t rfsid : 11;/* [31:21] */
523 } rfi_bit;
524 };
525
529 union
530 {
531 __IO uint32_t rfc;
532 struct
533 {
534 __IO uint32_t rfdtl : 4; /* [3:0] */
535 __IO uint32_t reserved1 : 4; /* [7:4] */
536 __IO uint32_t rffmn : 8; /* [15:8] */
537 __IO uint32_t rfts : 16;/* [31:16] */
538 } rfc_bit;
539 };
540
544 union
545 {
546 __IO uint32_t rfdtl;
547 struct
548 {
549 __IO uint32_t rfdt0 : 8; /* [7:0] */
550 __IO uint32_t rfdt1 : 8; /* [15:8] */
551 __IO uint32_t rfdt2 : 8; /* [23:16] */
552 __IO uint32_t rfdt3 : 8; /* [31:24] */
553 } rfdtl_bit;
554 };
555
559 union
560 {
561 __IO uint32_t rfdth;
562 struct
563 {
564 __IO uint32_t rfdt4 : 8; /* [7:0] */
565 __IO uint32_t rfdt5 : 8; /* [15:8] */
566 __IO uint32_t rfdt6 : 8; /* [23:16] */
567 __IO uint32_t rfdt7 : 8; /* [31:24] */
568 } rfdth_bit;
569 };
570} can_fifo_mailbox_type;
571
575typedef struct
576{
577 __IO uint32_t ffdb1;
578 __IO uint32_t ffdb2;
579} can_filter_register_type;
580
584typedef struct
585{
586
590 union
591 {
592 __IO uint32_t mctrl;
593 struct
594 {
595 __IO uint32_t fzen : 1; /* [0] */
596 __IO uint32_t dzen : 1; /* [1] */
597 __IO uint32_t mmssr : 1; /* [2] */
598 __IO uint32_t mdrsel : 1; /* [3] */
599 __IO uint32_t prsfen : 1; /* [4] */
600 __IO uint32_t aeden : 1; /* [5] */
601 __IO uint32_t aeboen : 1; /* [6] */
602 __IO uint32_t ttcen : 1; /* [7] */
603 __IO uint32_t reserved1 : 7; /* [14:8] */
604 __IO uint32_t sprst : 1; /* [15] */
605 __IO uint32_t ptd : 1; /* [16] */
606 __IO uint32_t reserved2 : 15;/*[31:17] */
607 } mctrl_bit;
608 };
609
613 union
614 {
615 __IO uint32_t msts;
616 struct
617 {
618 __IO uint32_t fzc : 1; /* [0] */
619 __IO uint32_t dzc : 1; /* [1] */
620 __IO uint32_t eoif : 1; /* [2] */
621 __IO uint32_t qdzif : 1; /* [3] */
622 __IO uint32_t edzif : 1; /* [4] */
623 __IO uint32_t reserved1 : 3; /* [7:5] */
624 __IO uint32_t cuss : 1; /* [8] */
625 __IO uint32_t curs : 1; /* [9] */
626 __IO uint32_t lsamprx : 1; /* [10] */
627 __IO uint32_t realrx : 1; /* [11] */
628 __IO uint32_t reserved2 : 20;/*[31:12] */
629 } msts_bit;
630 };
631
635 union
636 {
637 __IO uint32_t tsts;
638 struct
639 {
640 __IO uint32_t tm0tcf : 1; /* [0] */
641 __IO uint32_t tm0tsf : 1; /* [1] */
642 __IO uint32_t tm0alf : 1; /* [2] */
643 __IO uint32_t tm0tef : 1; /* [3] */
644 __IO uint32_t reserved1 : 3; /* [6:4] */
645 __IO uint32_t tm0ct : 1; /* [7] */
646 __IO uint32_t tm1tcf : 1; /* [8] */
647 __IO uint32_t tm1tsf : 1; /* [9] */
648 __IO uint32_t tm1alf : 1; /* [10] */
649 __IO uint32_t tm1tef : 1; /* [11] */
650 __IO uint32_t reserved2 : 3; /* [14:12] */
651 __IO uint32_t tm1ct : 1; /* [15] */
652 __IO uint32_t tm2tcf : 1; /* [16] */
653 __IO uint32_t tm2tsf : 1; /* [17] */
654 __IO uint32_t tm2alf : 1; /* [18] */
655 __IO uint32_t tm2tef : 1; /* [19] */
656 __IO uint32_t reserved3 : 3; /* [22:20] */
657 __IO uint32_t tm2ct : 1; /* [23] */
658 __IO uint32_t tmnr : 2; /* [25:24] */
659 __IO uint32_t tm0ef : 1; /* [26] */
660 __IO uint32_t tm1ef : 1; /* [27] */
661 __IO uint32_t tm2ef : 1; /* [28] */
662 __IO uint32_t tm0lpf : 1; /* [29] */
663 __IO uint32_t tm1lpf : 1; /* [30] */
664 __IO uint32_t tm2lpf : 1; /* [31] */
665 } tsts_bit;
666 };
667
671 union
672 {
673 __IO uint32_t rf0;
674 struct
675 {
676 __IO uint32_t rf0mn : 2; /* [1:0] */
677 __IO uint32_t reserved1 : 1; /* [2] */
678 __IO uint32_t rf0ff : 1; /* [3] */
679 __IO uint32_t rf0of : 1; /* [4] */
680 __IO uint32_t rf0r : 1; /* [5] */
681 __IO uint32_t reserved2 : 26;/* [31:6] */
682 } rf0_bit;
683 };
684
688 union
689 {
690 __IO uint32_t rf1;
691 struct
692 {
693 __IO uint32_t rf1mn : 2; /* [1:0] */
694 __IO uint32_t reserved1 : 1; /* [2] */
695 __IO uint32_t rf1ff : 1; /* [3] */
696 __IO uint32_t rf1of : 1; /* [4] */
697 __IO uint32_t rf1r : 1; /* [5] */
698 __IO uint32_t reserved2 : 26;/* [31:6] */
699 } rf1_bit;
700 };
701
705 union
706 {
707 __IO uint32_t inten;
708 struct
709 {
710 __IO uint32_t tcien : 1; /* [0] */
711 __IO uint32_t rf0mien : 1; /* [1] */
712 __IO uint32_t rf0fien : 1; /* [2] */
713 __IO uint32_t rf0oien : 1; /* [3] */
714 __IO uint32_t rf1mien : 1; /* [4] */
715 __IO uint32_t rf1fien : 1; /* [5] */
716 __IO uint32_t rf1oien : 1; /* [6] */
717 __IO uint32_t reserved1 : 1; /* [7] */
718 __IO uint32_t eaien : 1; /* [8] */
719 __IO uint32_t epien : 1; /* [9] */
720 __IO uint32_t boien : 1; /* [10] */
721 __IO uint32_t etrien : 1; /* [11] */
722 __IO uint32_t reserved2 : 3; /* [14:12] */
723 __IO uint32_t eoien : 1; /* [15] */
724 __IO uint32_t qdzien : 1; /* [16] */
725 __IO uint32_t edzien : 1; /* [17] */
726 __IO uint32_t reserved3 : 14;/* [31:18] */
727 } inten_bit;
728 };
729
733 union
734 {
735 __IO uint32_t ests;
736 struct
737 {
738 __IO uint32_t eaf : 1; /* [0] */
739 __IO uint32_t epf : 1; /* [1] */
740 __IO uint32_t bof : 1; /* [2] */
741 __IO uint32_t reserved1 : 1; /* [3] */
742 __IO uint32_t etr : 3; /* [6:4] */
743 __IO uint32_t reserved2 : 9; /* [15:7] */
744 __IO uint32_t tec : 8; /* [23:16] */
745 __IO uint32_t rec : 8; /* [31:24] */
746 } ests_bit;
747 };
748
752 union
753 {
754 __IO uint32_t btmg;
755 struct
756 {
757 __IO uint32_t brdiv : 12;/* [11:0] */
758 __IO uint32_t reserved1 : 4; /* [15:12] */
759 __IO uint32_t bts1 : 4; /* [19:16] */
760 __IO uint32_t bts2 : 3; /* [22:20] */
761 __IO uint32_t reserved2 : 1; /* [23] */
762 __IO uint32_t rsaw : 2; /* [25:24] */
763 __IO uint32_t reserved3 : 4; /* [29:26] */
764 __IO uint32_t lben : 1; /* [30] */
765 __IO uint32_t loen : 1; /* [31] */
766 } btmg_bit;
767 };
768
772 __IO uint32_t reserved1[88];
773
777 can_tx_mailbox_type tx_mailbox[3];
778
782 can_fifo_mailbox_type fifo_mailbox[2];
783
787 __IO uint32_t reserved2[12];
788
792 union
793 {
794 __IO uint32_t fctrl;
795 struct
796 {
797 __IO uint32_t fcs : 1; /* [0] */
798 __IO uint32_t reserved1 : 31;/* [31:1] */
799 } fctrl_bit;
800 };
801
805 union
806 {
807 __IO uint32_t fmcfg;
808 struct
809 {
810 __IO uint32_t fmsel0 : 1; /* [0] */
811 __IO uint32_t fmsel1 : 1; /* [1] */
812 __IO uint32_t fmsel2 : 1; /* [2] */
813 __IO uint32_t fmsel3 : 1; /* [3] */
814 __IO uint32_t fmsel4 : 1; /* [4] */
815 __IO uint32_t fmsel5 : 1; /* [5] */
816 __IO uint32_t fmsel6 : 1; /* [6] */
817 __IO uint32_t fmsel7 : 1; /* [7] */
818 __IO uint32_t fmsel8 : 1; /* [8] */
819 __IO uint32_t fmsel9 : 1; /* [9] */
820 __IO uint32_t fmsel10 : 1; /* [10] */
821 __IO uint32_t fmsel11 : 1; /* [11] */
822 __IO uint32_t fmsel12 : 1; /* [12] */
823 __IO uint32_t fmsel13 : 1; /* [13] */
824 __IO uint32_t reserved1 : 18;/* [31:14] */
825 } fmcfg_bit;
826 };
827
831 __IO uint32_t reserved3;
832
836 union
837 {
838 __IO uint32_t fbwcfg;
839 struct
840 {
841 __IO uint32_t fbwsel0 : 1; /* [0] */
842 __IO uint32_t fbwsel1 : 1; /* [1] */
843 __IO uint32_t fbwsel2 : 1; /* [2] */
844 __IO uint32_t fbwsel3 : 1; /* [3] */
845 __IO uint32_t fbwsel4 : 1; /* [4] */
846 __IO uint32_t fbwsel5 : 1; /* [5] */
847 __IO uint32_t fbwsel6 : 1; /* [6] */
848 __IO uint32_t fbwsel7 : 1; /* [7] */
849 __IO uint32_t fbwsel8 : 1; /* [8] */
850 __IO uint32_t fbwsel9 : 1; /* [9] */
851 __IO uint32_t fbwsel10 : 1; /* [10] */
852 __IO uint32_t fbwsel11 : 1; /* [11] */
853 __IO uint32_t fbwsel12 : 1; /* [12] */
854 __IO uint32_t fbwsel13 : 1; /* [13] */
855 __IO uint32_t reserved1 : 18;/* [31:14] */
856 } fbwcfg_bit;
857 };
858
862 __IO uint32_t reserved4;
863
867 union
868 {
869 __IO uint32_t frf;
870 struct
871 {
872 __IO uint32_t frfsel0 : 1; /* [0] */
873 __IO uint32_t frfsel1 : 1; /* [1] */
874 __IO uint32_t frfsel2 : 1; /* [2] */
875 __IO uint32_t frfsel3 : 1; /* [3] */
876 __IO uint32_t frfsel4 : 1; /* [4] */
877 __IO uint32_t frfsel5 : 1; /* [5] */
878 __IO uint32_t frfsel6 : 1; /* [6] */
879 __IO uint32_t frfsel7 : 1; /* [7] */
880 __IO uint32_t frfsel8 : 1; /* [8] */
881 __IO uint32_t frfsel9 : 1; /* [9] */
882 __IO uint32_t frfsel10 : 1; /* [10] */
883 __IO uint32_t frfsel11 : 1; /* [11] */
884 __IO uint32_t frfsel12 : 1; /* [12] */
885 __IO uint32_t frfsel13 : 1; /* [13] */
886 __IO uint32_t reserved1 : 18;/* [31:14] */
887 } frf_bit;
888 };
889
893 __IO uint32_t reserved5;
894
898 union
899 {
900 __IO uint32_t facfg;
901 struct
902 {
903 __IO uint32_t faen0 : 1; /* [0] */
904 __IO uint32_t faen1 : 1; /* [1] */
905 __IO uint32_t faen2 : 1; /* [2] */
906 __IO uint32_t faen3 : 1; /* [3] */
907 __IO uint32_t faen4 : 1; /* [4] */
908 __IO uint32_t faen5 : 1; /* [5] */
909 __IO uint32_t faen6 : 1; /* [6] */
910 __IO uint32_t faen7 : 1; /* [7] */
911 __IO uint32_t faen8 : 1; /* [8] */
912 __IO uint32_t faen9 : 1; /* [9] */
913 __IO uint32_t faen10 : 1; /* [10] */
914 __IO uint32_t faen11 : 1; /* [11] */
915 __IO uint32_t faen12 : 1; /* [12] */
916 __IO uint32_t faen13 : 1; /* [13] */
917 __IO uint32_t reserved1 : 18;/* [31:14] */
918 } facfg_bit;
919 };
920
924 __IO uint32_t reserved6[8];
925
929 can_filter_register_type ffb[14];
930} can_type;
931
936#define CAN1 ((can_type *) CAN1_BASE)
937
942void can_reset(can_type* can_x);
943void can_baudrate_default_para_init(can_baudrate_type* can_baudrate_struct);
944 error_status can_baudrate_set(can_type* can_x, can_baudrate_type* can_baudrate_struct);
945void can_default_para_init(can_base_type* can_base_struct);
946 error_status can_base_init(can_type* can_x, can_base_type* can_base_struct);
947void can_filter_default_para_init(can_filter_init_type* can_filter_init_struct);
948void can_filter_init(can_type* can_x, can_filter_init_type* can_filter_init_struct);
949void can_debug_transmission_prohibit(can_type* can_x, confirm_state new_state);
950void can_ttc_mode_enable(can_type* can_x, confirm_state new_state);
951uint8_t can_message_transmit(can_type* can_x, can_tx_message_type* tx_message_struct);
952 can_transmit_status_type can_transmit_status_get(can_type* can_x, can_tx_mailbox_num_type transmit_mailbox);
953void can_transmit_cancel(can_type* can_x, can_tx_mailbox_num_type transmit_mailbox);
954void can_message_receive(can_type* can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type* rx_message_struct);
955void can_receive_fifo_release(can_type* can_x, can_rx_fifo_num_type fifo_number);
956uint8_t can_receive_message_pending_get(can_type* can_x, can_rx_fifo_num_type fifo_number);
957 error_status can_operating_mode_set(can_type* can_x, can_operating_mode_type can_operating_mode);
958 can_enter_doze_status_type can_doze_mode_enter(can_type* can_x);
959 can_quit_doze_status_type can_doze_mode_exit(can_type* can_x);
960 can_error_record_type can_error_type_record_get(can_type* can_x);
961uint8_t can_receive_error_counter_get(can_type* can_x);
962uint8_t can_transmit_error_counter_get(can_type* can_x);
963void can_interrupt_enable(can_type* can_x, uint32_t can_int, confirm_state new_state);
964 flag_status can_interrupt_flag_get(can_type* can_x, uint32_t can_flag);
965 flag_status can_flag_get(can_type* can_x, uint32_t can_flag);
966void can_flag_clear(can_type* can_x, uint32_t can_flag);
967
980#ifdef __cplusplus
981}
982#endif
983
984#endif
at32f403.h
at32f403 header file
can_base_init
error_status can_base_init(can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct.
Definition: at32f403_can.c:187
can_reset
void can_reset(can_type *can_x)
deinitialize the can peripheral registers to their default reset values.
Definition: at32f403_can.c:49
can_interrupt_flag_get
flag_status can_interrupt_flag_get(can_type *can_x, uint32_t can_flag)
get interrupt flag of the specified can peripheral.
Definition: at32f403_can.c:955
can_transmit_error_counter_get
uint8_t can_transmit_error_counter_get(can_type *can_x)
return the transmit error counter of the specified can peripheral.
Definition: at32f403_can.c:883
can_transmit_status_get
can_transmit_status_type can_transmit_status_get(can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral.
Definition: at32f403_can.c:505
can_ttc_mode_enable
void can_ttc_mode_enable(can_type *can_x, confirm_state new_state)
enable or disable time trigger operation communication mode of the specified can peripheral.
Definition: at32f403_can.c:407
can_filter_default_para_init
void can_filter_default_para_init(can_filter_init_type *can_filter_init_struct)
fill each can_filter_init_struct member with its default value.
Definition: at32f403_can.c:262
can_receive_fifo_release
void can_receive_fifo_release(can_type *can_x, can_rx_fifo_num_type fifo_number)
release the specified fifo of the specified can peripheral.
Definition: at32f403_can.c:657
can_receive_error_counter_get
uint8_t can_receive_error_counter_get(can_type *can_x)
return the receive error counter (rec) of the specified can peripheral.
Definition: at32f403_can.c:869
can_operating_mode_set
error_status can_operating_mode_set(can_type *can_x, can_operating_mode_type can_operating_mode)
set the operation mode of the specified can peripheral.
Definition: at32f403_can.c:714
can_baudrate_default_para_init
void can_baudrate_default_para_init(can_baudrate_type *can_baudrate_struct)
fill each can_baudrate_struct member with its default value.
Definition: at32f403_can.c:63
can_transmit_cancel
void can_transmit_cancel(can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
cancel a transmit request of the specified can peripheral.
Definition: at32f403_can.c:580
can_receive_message_pending_get
uint8_t can_receive_message_pending_get(can_type *can_x, can_rx_fifo_num_type fifo_number)
return the number of pending messages of the specified can peripheral.
Definition: at32f403_can.c:683
can_message_transmit
uint8_t can_message_transmit(can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral.
Definition: at32f403_can.c:431
can_message_receive
void can_message_receive(can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral.
Definition: at32f403_can.c:610
can_interrupt_enable
void can_interrupt_enable(can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral.
Definition: at32f403_can.c:915
can_flag_get
flag_status can_flag_get(can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral.
Definition: at32f403_can.c:1051
can_flag_clear
void can_flag_clear(can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral.
Definition: at32f403_can.c:1174
can_baudrate_set
error_status can_baudrate_set(can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral
Definition: at32f403_can.c:92
can_debug_transmission_prohibit
void can_debug_transmission_prohibit(can_type *can_x, confirm_state new_state)
enable or disable the debug transmission prohibit of the specified can peripheral.
Definition: at32f403_can.c:386
can_error_type_record_get
can_error_record_type can_error_type_record_get(can_type *can_x)
return the error type record (etr) of the specified can peripheral.
Definition: at32f403_can.c:854
can_filter_init
void can_filter_init(can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct.
Definition: at32f403_can.c:297
can_default_para_init
void can_default_para_init(can_base_type *can_base_struct)
fill each can_init_struct member with its default value.
Definition: at32f403_can.c:150
can_doze_mode_exit
can_quit_doze_status_type can_doze_mode_exit(can_type *can_x)
exit the doze mode of the specified can peripheral.
Definition: at32f403_can.c:822
can_doze_mode_enter
can_enter_doze_status_type can_doze_mode_enter(can_type *can_x)
enter the low power mode of the specified can peripheral.
Definition: at32f403_can.c:792
can_filter_fifo_type
can_filter_fifo_type
can filter fifo
Definition: at32f403_can.h:135
can_transmit_status_type
can_transmit_status_type
can transmit status
Definition: at32f403_can.h:269
can_msg_discarding_rule_type
can_msg_discarding_rule_type
can message discarding rule select when overflow
Definition: at32f403_can.h:298
can_bts2_type
can_bts2_type
can bit time segment 2
Definition: at32f403_can.h:217
can_quit_doze_status_type
can_quit_doze_status_type
can quit doze mode status
Definition: at32f403_can.h:289
can_trans_frame_type
can_trans_frame_type
can transmission frame type
Definition: at32f403_can.h:241
can_bts1_type
can_bts1_type
can bit time segment 1
Definition: at32f403_can.h:194
can_error_record_type
can_error_record_type
can error type record
Definition: at32f403_can.h:316
can_filter_mode_type
can_filter_mode_type
can filter mode
Definition: at32f403_can.h:144
can_operating_mode_type
can_operating_mode_type
can operating mode
Definition: at32f403_can.h:173
can_msg_sending_rule_type
can_msg_sending_rule_type
can multiple message sending sequence rule
Definition: at32f403_can.h:307
can_tx_mailbox_num_type
can_tx_mailbox_num_type
can tx mailboxes
Definition: at32f403_can.h:250
can_filter_bit_width_type
can_filter_bit_width_type
can filter bit width select
Definition: at32f403_can.h:153
can_enter_doze_status_type
can_enter_doze_status_type
can enter doze mode status
Definition: at32f403_can.h:280
can_rx_fifo_num_type
can_rx_fifo_num_type
can receive fifo
Definition: at32f403_can.h:260
can_identifier_type
can_identifier_type
can identifier type
Definition: at32f403_can.h:232
can_mode_type
can_mode_type
can mode
Definition: at32f403_can.h:162
can_rsaw_type
can_rsaw_type
can resynchronization adjust width
Definition: at32f403_can.h:183
CAN_FILTER_FIFO0
@ CAN_FILTER_FIFO0
Definition: at32f403_can.h:136
CAN_FILTER_FIFO1
@ CAN_FILTER_FIFO1
Definition: at32f403_can.h:137
CAN_TX_STATUS_SUCCESSFUL
@ CAN_TX_STATUS_SUCCESSFUL
Definition: at32f403_can.h:271
CAN_TX_STATUS_PENDING
@ CAN_TX_STATUS_PENDING
Definition: at32f403_can.h:272
CAN_TX_STATUS_NO_EMPTY
@ CAN_TX_STATUS_NO_EMPTY
Definition: at32f403_can.h:273
CAN_TX_STATUS_FAILED
@ CAN_TX_STATUS_FAILED
Definition: at32f403_can.h:270
CAN_DISCARDING_FIRST_RECEIVED
@ CAN_DISCARDING_FIRST_RECEIVED
Definition: at32f403_can.h:299
CAN_DISCARDING_LAST_RECEIVED
@ CAN_DISCARDING_LAST_RECEIVED
Definition: at32f403_can.h:300
CAN_BTS2_4TQ
@ CAN_BTS2_4TQ
Definition: at32f403_can.h:221
CAN_BTS2_2TQ
@ CAN_BTS2_2TQ
Definition: at32f403_can.h:219
CAN_BTS2_5TQ
@ CAN_BTS2_5TQ
Definition: at32f403_can.h:222
CAN_BTS2_6TQ
@ CAN_BTS2_6TQ
Definition: at32f403_can.h:223
CAN_BTS2_7TQ
@ CAN_BTS2_7TQ
Definition: at32f403_can.h:224
CAN_BTS2_8TQ
@ CAN_BTS2_8TQ
Definition: at32f403_can.h:225
CAN_BTS2_3TQ
@ CAN_BTS2_3TQ
Definition: at32f403_can.h:220
CAN_BTS2_1TQ
@ CAN_BTS2_1TQ
Definition: at32f403_can.h:218
CAN_QUIT_DOZE_FAILED
@ CAN_QUIT_DOZE_FAILED
Definition: at32f403_can.h:290
CAN_QUIT_DOZE_SUCCESSFUL
@ CAN_QUIT_DOZE_SUCCESSFUL
Definition: at32f403_can.h:291
CAN_TFT_REMOTE
@ CAN_TFT_REMOTE
Definition: at32f403_can.h:243
CAN_TFT_DATA
@ CAN_TFT_DATA
Definition: at32f403_can.h:242
CAN_BTS1_7TQ
@ CAN_BTS1_7TQ
Definition: at32f403_can.h:201
CAN_BTS1_1TQ
@ CAN_BTS1_1TQ
Definition: at32f403_can.h:195
CAN_BTS1_14TQ
@ CAN_BTS1_14TQ
Definition: at32f403_can.h:208
CAN_BTS1_4TQ
@ CAN_BTS1_4TQ
Definition: at32f403_can.h:198
CAN_BTS1_15TQ
@ CAN_BTS1_15TQ
Definition: at32f403_can.h:209
CAN_BTS1_11TQ
@ CAN_BTS1_11TQ
Definition: at32f403_can.h:205
CAN_BTS1_10TQ
@ CAN_BTS1_10TQ
Definition: at32f403_can.h:204
CAN_BTS1_16TQ
@ CAN_BTS1_16TQ
Definition: at32f403_can.h:210
CAN_BTS1_8TQ
@ CAN_BTS1_8TQ
Definition: at32f403_can.h:202
CAN_BTS1_3TQ
@ CAN_BTS1_3TQ
Definition: at32f403_can.h:197
CAN_BTS1_12TQ
@ CAN_BTS1_12TQ
Definition: at32f403_can.h:206
CAN_BTS1_9TQ
@ CAN_BTS1_9TQ
Definition: at32f403_can.h:203
CAN_BTS1_5TQ
@ CAN_BTS1_5TQ
Definition: at32f403_can.h:199
CAN_BTS1_6TQ
@ CAN_BTS1_6TQ
Definition: at32f403_can.h:200
CAN_BTS1_2TQ
@ CAN_BTS1_2TQ
Definition: at32f403_can.h:196
CAN_BTS1_13TQ
@ CAN_BTS1_13TQ
Definition: at32f403_can.h:207
CAN_ERRORRECORD_CRCERR
@ CAN_ERRORRECORD_CRCERR
Definition: at32f403_can.h:323
CAN_ERRORRECORD_FORMERR
@ CAN_ERRORRECORD_FORMERR
Definition: at32f403_can.h:319
CAN_ERRORRECORD_BITDOMINANTERR
@ CAN_ERRORRECORD_BITDOMINANTERR
Definition: at32f403_can.h:322
CAN_ERRORRECORD_BITRECESSIVEERR
@ CAN_ERRORRECORD_BITRECESSIVEERR
Definition: at32f403_can.h:321
CAN_ERRORRECORD_NOERR
@ CAN_ERRORRECORD_NOERR
Definition: at32f403_can.h:317
CAN_ERRORRECORD_STUFFERR
@ CAN_ERRORRECORD_STUFFERR
Definition: at32f403_can.h:318
CAN_ERRORRECORD_SOFTWARESETERR
@ CAN_ERRORRECORD_SOFTWARESETERR
Definition: at32f403_can.h:324
CAN_ERRORRECORD_ACKERR
@ CAN_ERRORRECORD_ACKERR
Definition: at32f403_can.h:320
CAN_FILTER_MODE_ID_LIST
@ CAN_FILTER_MODE_ID_LIST
Definition: at32f403_can.h:146
CAN_FILTER_MODE_ID_MASK
@ CAN_FILTER_MODE_ID_MASK
Definition: at32f403_can.h:145
CAN_OPERATINGMODE_FREEZE
@ CAN_OPERATINGMODE_FREEZE
Definition: at32f403_can.h:174
CAN_OPERATINGMODE_COMMUNICATE
@ CAN_OPERATINGMODE_COMMUNICATE
Definition: at32f403_can.h:176
CAN_OPERATINGMODE_DOZE
@ CAN_OPERATINGMODE_DOZE
Definition: at32f403_can.h:175
CAN_SENDING_BY_ID
@ CAN_SENDING_BY_ID
Definition: at32f403_can.h:308
CAN_SENDING_BY_REQUEST
@ CAN_SENDING_BY_REQUEST
Definition: at32f403_can.h:309
CAN_TX_MAILBOX2
@ CAN_TX_MAILBOX2
Definition: at32f403_can.h:253
CAN_TX_MAILBOX0
@ CAN_TX_MAILBOX0
Definition: at32f403_can.h:251
CAN_TX_MAILBOX1
@ CAN_TX_MAILBOX1
Definition: at32f403_can.h:252
CAN_FILTER_16BIT
@ CAN_FILTER_16BIT
Definition: at32f403_can.h:154
CAN_FILTER_32BIT
@ CAN_FILTER_32BIT
Definition: at32f403_can.h:155
CAN_ENTER_DOZE_FAILED
@ CAN_ENTER_DOZE_FAILED
Definition: at32f403_can.h:281
CAN_ENTER_DOZE_SUCCESSFUL
@ CAN_ENTER_DOZE_SUCCESSFUL
Definition: at32f403_can.h:282
CAN_RX_FIFO0
@ CAN_RX_FIFO0
Definition: at32f403_can.h:261
CAN_RX_FIFO1
@ CAN_RX_FIFO1
Definition: at32f403_can.h:262
CAN_ID_STANDARD
@ CAN_ID_STANDARD
Definition: at32f403_can.h:233
CAN_ID_EXTENDED
@ CAN_ID_EXTENDED
Definition: at32f403_can.h:234
CAN_MODE_COMMUNICATE
@ CAN_MODE_COMMUNICATE
Definition: at32f403_can.h:163
CAN_MODE_LISTENONLY
@ CAN_MODE_LISTENONLY
Definition: at32f403_can.h:165
CAN_MODE_LISTENONLY_LOOPBACK
@ CAN_MODE_LISTENONLY_LOOPBACK
Definition: at32f403_can.h:166
CAN_MODE_LOOPBACK
@ CAN_MODE_LOOPBACK
Definition: at32f403_can.h:164
CAN_RSAW_1TQ
@ CAN_RSAW_1TQ
Definition: at32f403_can.h:184
CAN_RSAW_4TQ
@ CAN_RSAW_4TQ
Definition: at32f403_can.h:187
CAN_RSAW_3TQ
@ CAN_RSAW_3TQ
Definition: at32f403_can.h:186
CAN_RSAW_2TQ
@ CAN_RSAW_2TQ
Definition: at32f403_can.h:185
error_status
error_status
error status
Definition: at32f403.h:314
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
can_base_type
can init structure definition
Definition: at32f403_can.h:331
can_base_type::prsf_enable
confirm_state prsf_enable
Definition: at32f403_can.h:340
can_base_type::mdrsel_selection
can_msg_discarding_rule_type mdrsel_selection
Definition: at32f403_can.h:342
can_base_type::aed_enable
confirm_state aed_enable
Definition: at32f403_can.h:338
can_base_type::mmssr_selection
can_msg_sending_rule_type mmssr_selection
Definition: at32f403_can.h:344
can_base_type::ttc_enable
confirm_state ttc_enable
Definition: at32f403_can.h:334
can_base_type::mode_selection
can_mode_type mode_selection
Definition: at32f403_can.h:332
can_base_type::aebo_enable
confirm_state aebo_enable
Definition: at32f403_can.h:336
can_baudrate_type
can baudrate structure definition
Definition: at32f403_can.h:352
can_baudrate_type::baudrate_div
uint16_t baudrate_div
Definition: at32f403_can.h:353
can_baudrate_type::rsaw_size
can_rsaw_type rsaw_size
Definition: at32f403_can.h:355
can_baudrate_type::bts2_size
can_bts2_type bts2_size
Definition: at32f403_can.h:359
can_baudrate_type::bts1_size
can_bts1_type bts1_size
Definition: at32f403_can.h:357
can_fifo_mailbox_type
can controller area network fifo mailbox
Definition: at32f403_can.h:509
can_fifo_mailbox_type::rfdt4
__IO uint32_t rfdt4
Definition: at32f403_can.h:564
can_fifo_mailbox_type::rfi
__IO uint32_t rfi
Definition: at32f403_can.h:515
can_fifo_mailbox_type::rfdt0
__IO uint32_t rfdt0
Definition: at32f403_can.h:549
can_fifo_mailbox_type::rfsid
__IO uint32_t rfsid
Definition: at32f403_can.h:522
can_fifo_mailbox_type::rfdt2
__IO uint32_t rfdt2
Definition: at32f403_can.h:551
can_fifo_mailbox_type::rfdth
__IO uint32_t rfdth
Definition: at32f403_can.h:561
can_fifo_mailbox_type::rfdtl
__IO uint32_t rfdtl
Definition: at32f403_can.h:534
can_fifo_mailbox_type::rfidi
__IO uint32_t rfidi
Definition: at32f403_can.h:520
can_fifo_mailbox_type::rfdt1
__IO uint32_t rfdt1
Definition: at32f403_can.h:550
can_fifo_mailbox_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_can.h:518
can_fifo_mailbox_type::rfdt6
__IO uint32_t rfdt6
Definition: at32f403_can.h:566
can_fifo_mailbox_type::rffri
__IO uint32_t rffri
Definition: at32f403_can.h:519
can_fifo_mailbox_type::rfc
__IO uint32_t rfc
Definition: at32f403_can.h:531
can_fifo_mailbox_type::rfdt3
__IO uint32_t rfdt3
Definition: at32f403_can.h:552
can_fifo_mailbox_type::rfdt5
__IO uint32_t rfdt5
Definition: at32f403_can.h:565
can_fifo_mailbox_type::rfdt7
__IO uint32_t rfdt7
Definition: at32f403_can.h:567
can_fifo_mailbox_type::rfts
__IO uint32_t rfts
Definition: at32f403_can.h:537
can_fifo_mailbox_type::rffmn
__IO uint32_t rffmn
Definition: at32f403_can.h:536
can_fifo_mailbox_type::rfeid
__IO uint32_t rfeid
Definition: at32f403_can.h:521
can_filter_init_type
can filter init structure definition
Definition: at32f403_can.h:367
can_filter_init_type::filter_mask_low
uint16_t filter_mask_low
Definition: at32f403_can.h:387
can_filter_init_type::filter_number
uint8_t filter_number
Definition: at32f403_can.h:374
can_filter_init_type::filter_fifo
can_filter_fifo_type filter_fifo
Definition: at32f403_can.h:372
can_filter_init_type::filter_bit
can_filter_bit_width_type filter_bit
Definition: at32f403_can.h:376
can_filter_init_type::filter_mode
can_filter_mode_type filter_mode
Definition: at32f403_can.h:370
can_filter_init_type::filter_activate_enable
confirm_state filter_activate_enable
Definition: at32f403_can.h:368
can_filter_init_type::filter_mask_high
uint16_t filter_mask_high
Definition: at32f403_can.h:384
can_filter_init_type::filter_id_high
uint16_t filter_id_high
Definition: at32f403_can.h:378
can_filter_init_type::filter_id_low
uint16_t filter_id_low
Definition: at32f403_can.h:381
can_filter_register_type
can controller area network filter bit register
Definition: at32f403_can.h:576
can_filter_register_type::ffdb1
__IO uint32_t ffdb1
Definition: at32f403_can.h:577
can_filter_register_type::ffdb2
__IO uint32_t ffdb2
Definition: at32f403_can.h:578
can_rx_message_type
can rx message structure definition
Definition: at32f403_can.h:417
can_rx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:418
can_rx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:424
can_rx_message_type::frame_type
can_trans_frame_type frame_type
Definition: at32f403_can.h:426
can_rx_message_type::dlc
uint8_t dlc
Definition: at32f403_can.h:428
can_rx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:421
can_rx_message_type::filter_index
uint8_t filter_index
Definition: at32f403_can.h:433
can_tx_mailbox_type
can controller area network tx mailbox
Definition: at32f403_can.h:441
can_tx_mailbox_type::tmdt5
__IO uint32_t tmdt5
Definition: at32f403_can.h:498
can_tx_mailbox_type::tmtsten
__IO uint32_t tmtsten
Definition: at32f403_can.h:468
can_tx_mailbox_type::tmi
__IO uint32_t tmi
Definition: at32f403_can.h:447
can_tx_mailbox_type::tmc
__IO uint32_t tmc
Definition: at32f403_can.h:463
can_tx_mailbox_type::tmts
__IO uint32_t tmts
Definition: at32f403_can.h:470
can_tx_mailbox_type::tmdt0
__IO uint32_t tmdt0
Definition: at32f403_can.h:482
can_tx_mailbox_type::tmsr
__IO uint32_t tmsr
Definition: at32f403_can.h:450
can_tx_mailbox_type::tmdtl
__IO uint32_t tmdtl
Definition: at32f403_can.h:479
can_tx_mailbox_type::tmdt2
__IO uint32_t tmdt2
Definition: at32f403_can.h:484
can_tx_mailbox_type::tmdtbl
__IO uint32_t tmdtbl
Definition: at32f403_can.h:466
can_tx_mailbox_type::tmdt3
__IO uint32_t tmdt3
Definition: at32f403_can.h:485
can_tx_mailbox_type::tmdt1
__IO uint32_t tmdt1
Definition: at32f403_can.h:483
can_tx_mailbox_type::tmdt4
__IO uint32_t tmdt4
Definition: at32f403_can.h:497
can_tx_mailbox_type::tmfrsel
__IO uint32_t tmfrsel
Definition: at32f403_can.h:451
can_tx_mailbox_type::tmsid
__IO uint32_t tmsid
Definition: at32f403_can.h:454
can_tx_mailbox_type::tmdt6
__IO uint32_t tmdt6
Definition: at32f403_can.h:499
can_tx_mailbox_type::tmdth
__IO uint32_t tmdth
Definition: at32f403_can.h:494
can_tx_mailbox_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_can.h:467
can_tx_mailbox_type::tmidsel
__IO uint32_t tmidsel
Definition: at32f403_can.h:452
can_tx_mailbox_type::tmdt7
__IO uint32_t tmdt7
Definition: at32f403_can.h:500
can_tx_mailbox_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_can.h:469
can_tx_mailbox_type::tmeid
__IO uint32_t tmeid
Definition: at32f403_can.h:453
can_tx_message_type
can tx message structure definition
Definition: at32f403_can.h:395
can_tx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:399
can_tx_message_type::frame_type
can_trans_frame_type frame_type
Definition: at32f403_can.h:404
can_tx_message_type::dlc
uint8_t dlc
Definition: at32f403_can.h:406
can_tx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:402
can_tx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:396
can_type
type define can register all
Definition: at32f403_can.h:585
can_type::tmnr
__IO uint32_t tmnr
Definition: at32f403_can.h:658
can_type::fbwsel10
__IO uint32_t fbwsel10
Definition: at32f403_can.h:851
can_type::rf0of
__IO uint32_t rf0of
Definition: at32f403_can.h:679
can_type::tm1alf
__IO uint32_t tm1alf
Definition: at32f403_can.h:648
can_type::tm2lpf
__IO uint32_t tm2lpf
Definition: at32f403_can.h:664
can_type::fmsel13
__IO uint32_t fmsel13
Definition: at32f403_can.h:823
can_type::tm2ef
__IO uint32_t tm2ef
Definition: at32f403_can.h:661
can_type::tm2ct
__IO uint32_t tm2ct
Definition: at32f403_can.h:657
can_type::frfsel1
__IO uint32_t frfsel1
Definition: at32f403_can.h:873
can_type::frfsel12
__IO uint32_t frfsel12
Definition: at32f403_can.h:884
can_type::fmsel4
__IO uint32_t fmsel4
Definition: at32f403_can.h:814
can_type::etrien
__IO uint32_t etrien
Definition: at32f403_can.h:721
can_type::tm1tef
__IO uint32_t tm1tef
Definition: at32f403_can.h:649
can_type::fbwsel8
__IO uint32_t fbwsel8
Definition: at32f403_can.h:849
can_type::boien
__IO uint32_t boien
Definition: at32f403_can.h:720
can_type::eoien
__IO uint32_t eoien
Definition: at32f403_can.h:723
can_type::fctrl
__IO uint32_t fctrl
Definition: at32f403_can.h:794
can_type::frfsel4
__IO uint32_t frfsel4
Definition: at32f403_can.h:876
can_type::tm0ct
__IO uint32_t tm0ct
Definition: at32f403_can.h:645
can_type::eaf
__IO uint32_t eaf
Definition: at32f403_can.h:738
can_type::rf1
__IO uint32_t rf1
Definition: at32f403_can.h:690
can_type::tm0tsf
__IO uint32_t tm0tsf
Definition: at32f403_can.h:641
can_type::tm0lpf
__IO uint32_t tm0lpf
Definition: at32f403_can.h:662
can_type::frfsel2
__IO uint32_t frfsel2
Definition: at32f403_can.h:874
can_type::aeden
__IO uint32_t aeden
Definition: at32f403_can.h:600
can_type::dzc
__IO uint32_t dzc
Definition: at32f403_can.h:619
can_type::fmsel0
__IO uint32_t fmsel0
Definition: at32f403_can.h:810
can_type::faen4
__IO uint32_t faen4
Definition: at32f403_can.h:907
can_type::tm0tcf
__IO uint32_t tm0tcf
Definition: at32f403_can.h:640
can_type::fmsel12
__IO uint32_t fmsel12
Definition: at32f403_can.h:822
can_type::eaien
__IO uint32_t eaien
Definition: at32f403_can.h:718
can_type::fbwsel4
__IO uint32_t fbwsel4
Definition: at32f403_can.h:845
can_type::fbwsel9
__IO uint32_t fbwsel9
Definition: at32f403_can.h:850
can_type::reserved5
__IO uint32_t reserved5
can reserved register, offset:0x218
Definition: at32f403_can.h:893
can_type::edzif
__IO uint32_t edzif
Definition: at32f403_can.h:622
can_type::frfsel11
__IO uint32_t frfsel11
Definition: at32f403_can.h:883
can_type::fmsel9
__IO uint32_t fmsel9
Definition: at32f403_can.h:819
can_type::frfsel10
__IO uint32_t frfsel10
Definition: at32f403_can.h:882
can_type::mctrl
__IO uint32_t mctrl
Definition: at32f403_can.h:592
can_type::frfsel13
__IO uint32_t frfsel13
Definition: at32f403_can.h:885
can_type::faen7
__IO uint32_t faen7
Definition: at32f403_can.h:910
can_type::faen6
__IO uint32_t faen6
Definition: at32f403_can.h:909
can_type::mdrsel
__IO uint32_t mdrsel
Definition: at32f403_can.h:598
can_type::faen8
__IO uint32_t faen8
Definition: at32f403_can.h:911
can_type::rf0fien
__IO uint32_t rf0fien
Definition: at32f403_can.h:712
can_type::rf1ff
__IO uint32_t rf1ff
Definition: at32f403_can.h:695
can_type::cuss
__IO uint32_t cuss
Definition: at32f403_can.h:624
can_type::bof
__IO uint32_t bof
Definition: at32f403_can.h:740
can_type::faen10
__IO uint32_t faen10
Definition: at32f403_can.h:913
can_type::tec
__IO uint32_t tec
Definition: at32f403_can.h:744
can_type::btmg
__IO uint32_t btmg
Definition: at32f403_can.h:754
can_type::fbwsel0
__IO uint32_t fbwsel0
Definition: at32f403_can.h:841
can_type::sprst
__IO uint32_t sprst
Definition: at32f403_can.h:604
can_type::ttcen
__IO uint32_t ttcen
Definition: at32f403_can.h:602
can_type::tm1tcf
__IO uint32_t tm1tcf
Definition: at32f403_can.h:646
can_type::lben
__IO uint32_t lben
Definition: at32f403_can.h:764
can_type::ptd
__IO uint32_t ptd
Definition: at32f403_can.h:605
can_type::fzc
__IO uint32_t fzc
Definition: at32f403_can.h:618
can_type::epien
__IO uint32_t epien
Definition: at32f403_can.h:719
can_type::fbwsel11
__IO uint32_t fbwsel11
Definition: at32f403_can.h:852
can_type::faen3
__IO uint32_t faen3
Definition: at32f403_can.h:906
can_type::rf1oien
__IO uint32_t rf1oien
Definition: at32f403_can.h:716
can_type::rf0oien
__IO uint32_t rf0oien
Definition: at32f403_can.h:713
can_type::tm0ef
__IO uint32_t tm0ef
Definition: at32f403_can.h:659
can_type::fbwsel1
__IO uint32_t fbwsel1
Definition: at32f403_can.h:842
can_type::frfsel8
__IO uint32_t frfsel8
Definition: at32f403_can.h:880
can_type::fbwsel6
__IO uint32_t fbwsel6
Definition: at32f403_can.h:847
can_type::bts2
__IO uint32_t bts2
Definition: at32f403_can.h:760
can_type::loen
__IO uint32_t loen
Definition: at32f403_can.h:765
can_type::fbwsel7
__IO uint32_t fbwsel7
Definition: at32f403_can.h:848
can_type::fmsel3
__IO uint32_t fmsel3
Definition: at32f403_can.h:813
can_type::ests
__IO uint32_t ests
Definition: at32f403_can.h:735
can_type::frfsel9
__IO uint32_t frfsel9
Definition: at32f403_can.h:881
can_type::frf
__IO uint32_t frf
Definition: at32f403_can.h:869
can_type::reserved4
__IO uint32_t reserved4
can reserved register, offset:0x210
Definition: at32f403_can.h:862
can_type::qdzien
__IO uint32_t qdzien
Definition: at32f403_can.h:724
can_type::fbwsel13
__IO uint32_t fbwsel13
Definition: at32f403_can.h:854
can_type::reserved3
__IO uint32_t reserved3
can reserved register, offset:0x208
Definition: at32f403_can.h:656
can_type::rsaw
__IO uint32_t rsaw
Definition: at32f403_can.h:762
can_type::rf0r
__IO uint32_t rf0r
Definition: at32f403_can.h:680
can_type::rf0
__IO uint32_t rf0
Definition: at32f403_can.h:673
can_type::rf1mien
__IO uint32_t rf1mien
Definition: at32f403_can.h:714
can_type::fmsel1
__IO uint32_t fmsel1
Definition: at32f403_can.h:811
can_type::frfsel6
__IO uint32_t frfsel6
Definition: at32f403_can.h:878
can_type::tm1ct
__IO uint32_t tm1ct
Definition: at32f403_can.h:651
can_type::rf0mien
__IO uint32_t rf0mien
Definition: at32f403_can.h:711
can_type::rf1mn
__IO uint32_t rf1mn
Definition: at32f403_can.h:693
can_type::edzien
__IO uint32_t edzien
Definition: at32f403_can.h:725
can_type::reserved1
__IO uint32_t reserved1
can reserved register, offset:0x20~0x17C
Definition: at32f403_can.h:603
can_type::prsfen
__IO uint32_t prsfen
Definition: at32f403_can.h:599
can_type::facfg
__IO uint32_t facfg
Definition: at32f403_can.h:900
can_type::fmsel11
__IO uint32_t fmsel11
Definition: at32f403_can.h:821
can_type::tm1ef
__IO uint32_t tm1ef
Definition: at32f403_can.h:660
can_type::realrx
__IO uint32_t realrx
Definition: at32f403_can.h:627
can_type::aeboen
__IO uint32_t aeboen
Definition: at32f403_can.h:601
can_type::eoif
__IO uint32_t eoif
Definition: at32f403_can.h:620
can_type::tm2tcf
__IO uint32_t tm2tcf
Definition: at32f403_can.h:652
can_type::faen11
__IO uint32_t faen11
Definition: at32f403_can.h:914
can_type::faen1
__IO uint32_t faen1
Definition: at32f403_can.h:904
can_type::brdiv
__IO uint32_t brdiv
Definition: at32f403_can.h:757
can_type::fmsel2
__IO uint32_t fmsel2
Definition: at32f403_can.h:812
can_type::fbwsel3
__IO uint32_t fbwsel3
Definition: at32f403_can.h:844
can_type::frfsel7
__IO uint32_t frfsel7
Definition: at32f403_can.h:879
can_type::epf
__IO uint32_t epf
Definition: at32f403_can.h:739
can_type::faen0
__IO uint32_t faen0
Definition: at32f403_can.h:903
can_type::dzen
__IO uint32_t dzen
Definition: at32f403_can.h:596
can_type::tm2alf
__IO uint32_t tm2alf
Definition: at32f403_can.h:654
can_type::faen2
__IO uint32_t faen2
Definition: at32f403_can.h:905
can_type::fmsel10
__IO uint32_t fmsel10
Definition: at32f403_can.h:820
can_type::etr
__IO uint32_t etr
Definition: at32f403_can.h:742
can_type::tsts
__IO uint32_t tsts
Definition: at32f403_can.h:637
can_type::fbwsel5
__IO uint32_t fbwsel5
Definition: at32f403_can.h:846
can_type::fbwcfg
__IO uint32_t fbwcfg
Definition: at32f403_can.h:838
can_type::qdzif
__IO uint32_t qdzif
Definition: at32f403_can.h:621
can_type::tcien
__IO uint32_t tcien
Definition: at32f403_can.h:710
can_type::fbwsel2
__IO uint32_t fbwsel2
Definition: at32f403_can.h:843
can_type::fmsel8
__IO uint32_t fmsel8
Definition: at32f403_can.h:818
can_type::rf0mn
__IO uint32_t rf0mn
Definition: at32f403_can.h:676
can_type::fmsel5
__IO uint32_t fmsel5
Definition: at32f403_can.h:815
can_type::rf0ff
__IO uint32_t rf0ff
Definition: at32f403_can.h:678
can_type::frfsel0
__IO uint32_t frfsel0
Definition: at32f403_can.h:872
can_type::reserved2
__IO uint32_t reserved2
can reserved register, offset:0x1D0~0x1FC
Definition: at32f403_can.h:606
can_type::fcs
__IO uint32_t fcs
Definition: at32f403_can.h:797
can_type::msts
__IO uint32_t msts
Definition: at32f403_can.h:615
can_type::lsamprx
__IO uint32_t lsamprx
Definition: at32f403_can.h:626
can_type::faen13
__IO uint32_t faen13
Definition: at32f403_can.h:916
can_type::tm0alf
__IO uint32_t tm0alf
Definition: at32f403_can.h:642
can_type::rec
__IO uint32_t rec
Definition: at32f403_can.h:745
can_type::bts1
__IO uint32_t bts1
Definition: at32f403_can.h:759
can_type::fmsel7
__IO uint32_t fmsel7
Definition: at32f403_can.h:817
can_type::rf1r
__IO uint32_t rf1r
Definition: at32f403_can.h:697
can_type::tm1lpf
__IO uint32_t tm1lpf
Definition: at32f403_can.h:663
can_type::tm2tsf
__IO uint32_t tm2tsf
Definition: at32f403_can.h:653
can_type::frfsel5
__IO uint32_t frfsel5
Definition: at32f403_can.h:877
can_type::faen9
__IO uint32_t faen9
Definition: at32f403_can.h:912
can_type::fmsel6
__IO uint32_t fmsel6
Definition: at32f403_can.h:816
can_type::rf1fien
__IO uint32_t rf1fien
Definition: at32f403_can.h:715
can_type::faen5
__IO uint32_t faen5
Definition: at32f403_can.h:908
can_type::rf1of
__IO uint32_t rf1of
Definition: at32f403_can.h:696
can_type::fbwsel12
__IO uint32_t fbwsel12
Definition: at32f403_can.h:853
can_type::tm0tef
__IO uint32_t tm0tef
Definition: at32f403_can.h:643
can_type::fzen
__IO uint32_t fzen
Definition: at32f403_can.h:595
can_type::mmssr
__IO uint32_t mmssr
Definition: at32f403_can.h:597
can_type::faen12
__IO uint32_t faen12
Definition: at32f403_can.h:915
can_type::frfsel3
__IO uint32_t frfsel3
Definition: at32f403_can.h:875
can_type::tm2tef
__IO uint32_t tm2tef
Definition: at32f403_can.h:655
can_type::inten
__IO uint32_t inten
Definition: at32f403_can.h:707
can_type::fmcfg
__IO uint32_t fmcfg
Definition: at32f403_can.h:807
can_type::tm1tsf
__IO uint32_t tm1tsf
Definition: at32f403_can.h:647
can_type::curs
__IO uint32_t curs
Definition: at32f403_can.h:625


AT32F403 Firmwary Library: at32f403_crc.c Source File

  • libraries
  • drivers
  • src
at32f403_crc.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef CRC_MODULE_ENABLED
37
47void crc_data_reset(void)
48{
49 /* reset crc generator */
50 CRC->ctrl_bit.rst = 0x1;
51}
52
58uint32_t crc_one_word_calculate(uint32_t data)
59{
60 CRC->dt = data;
61 return (CRC->dt);
62}
63
70uint32_t crc_block_calculate(uint32_t *pbuffer, uint32_t length)
71{
72 uint32_t index = 0;
73
74 for(index = 0; index < length; index++)
75 {
76 CRC->dt = pbuffer[index];
77 }
78
79 return (CRC->dt);
80}
81
87uint32_t crc_data_get(void)
88{
89 return (CRC->dt);
90}
91
97void crc_common_data_set(uint8_t cdt_value)
98{
99 CRC->cdt_bit.cdt = cdt_value;
100}
101
107uint8_t crc_common_data_get(void)
108{
109 return (CRC->cdt_bit.cdt);
110}
111
117void crc_init_data_set(uint32_t value)
118{
119 CRC->idt = value;
120}
121
132void crc_reverse_input_data_set(crc_reverse_input_type value)
133{
134 CRC->ctrl_bit.revid = value;
135}
136
145void crc_reverse_output_data_set(crc_reverse_output_type value)
146{
147 CRC->ctrl_bit.revod = value;
148}
149
156void crc_poly_value_set(uint32_t value)
157{
158 CRC->poly = value;
159}
160
166uint32_t crc_poly_value_get(void)
167{
168 return (CRC->poly);
169}
170
181void crc_poly_size_set(crc_poly_size_type size)
182{
183 CRC->ctrl_bit.poly_size = size;
184}
185
191 crc_poly_size_type crc_poly_size_get(void)
192{
193 return (crc_poly_size_type)(CRC->ctrl_bit.poly_size);
194}
195
200#endif
201
crc_reverse_output_type
crc_reverse_output_type
crc reverse output data
Definition: at32f403_crc.h:64
crc_reverse_input_type
crc_reverse_input_type
crc reverse input data
Definition: at32f403_crc.h:53
crc_poly_size_type
crc_poly_size_type
crc polynomial size
Definition: at32f403_crc.h:73
crc_poly_value_get
uint32_t crc_poly_value_get(void)
return crc polynomial value
Definition: at32f403_crc.c:166
crc_reverse_input_data_set
void crc_reverse_input_data_set(crc_reverse_input_type value)
control the reversal of the bit order in the input data
Definition: at32f403_crc.c:132
crc_poly_size_set
void crc_poly_size_set(crc_poly_size_type size)
config crc polynomial data size
Definition: at32f403_crc.c:181
crc_poly_value_set
void crc_poly_value_set(uint32_t value)
config crc polynomial value
Definition: at32f403_crc.c:156
crc_block_calculate
uint32_t crc_block_calculate(uint32_t *pbuffer, uint32_t length)
compute the 32-bit crc of a given buffer of data word(32-bit).
Definition: at32f403_crc.c:70
crc_init_data_set
void crc_init_data_set(uint32_t value)
set the 32-bit initial data of crc
Definition: at32f403_crc.c:117
crc_common_data_set
void crc_common_data_set(uint8_t cdt_value)
store a 8-bit data in the common data register.
Definition: at32f403_crc.c:97
crc_data_reset
void crc_data_reset(void)
reset the crc data register.
Definition: at32f403_crc.c:47
crc_data_get
uint32_t crc_data_get(void)
return the current crc value.
Definition: at32f403_crc.c:87
crc_one_word_calculate
uint32_t crc_one_word_calculate(uint32_t data)
compute the 32-bit crc of a given data word(32-bit).
Definition: at32f403_crc.c:58
crc_poly_size_get
crc_poly_size_type crc_poly_size_get(void)
return crc polynomial data size
Definition: at32f403_crc.c:191
crc_reverse_output_data_set
void crc_reverse_output_data_set(crc_reverse_output_type value)
control the reversal of the bit order in the output data
Definition: at32f403_crc.c:145
crc_common_data_get
uint8_t crc_common_data_get(void)
return the 8-bit data stored in the common data register
Definition: at32f403_crc.c:107
CRC
#define CRC
Definition: at32f403_crc.h:162
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_crc.h Source File

  • libraries
  • drivers
  • inc
at32f403_crc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CRC_H
27#define __AT32F403_CRC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
52typedef enum
53{
54 CRC_REVERSE_INPUT_NO_AFFECTE = 0x00,
55 CRC_REVERSE_INPUT_BY_BYTE = 0x01,
56 CRC_REVERSE_INPUT_BY_HALFWORD = 0x02,
57 CRC_REVERSE_INPUT_BY_WORD = 0x03
58} crc_reverse_input_type;
59
63typedef enum
64{
65 CRC_REVERSE_OUTPUT_NO_AFFECTE = 0x00,
66 CRC_REVERSE_OUTPUT_DATA = 0x01
67} crc_reverse_output_type;
68
72typedef enum
73{
74 CRC_POLY_SIZE_32B = 0x00,
75 CRC_POLY_SIZE_16B = 0x01,
76 CRC_POLY_SIZE_8B = 0x02,
77 CRC_POLY_SIZE_7B = 0x03
78} crc_poly_size_type;
79
83typedef struct
84{
88 union
89 {
90 __IO uint32_t dt;
91 struct
92 {
93 __IO uint32_t dt : 32; /* [31:0] */
94 } dt_bit;
95 };
96
100 union
101 {
102 __IO uint32_t cdt;
103 struct
104 {
105 __IO uint32_t cdt : 8 ; /* [7:0] */
106 __IO uint32_t reserved1 : 24 ;/* [31:8] */
107 } cdt_bit;
108 };
109
113 union
114 {
115 __IO uint32_t ctrl;
116 struct
117 {
118 __IO uint32_t rst : 1 ; /* [0] */
119 __IO uint32_t reserved1 : 2 ; /* [2:1] */
120 __IO uint32_t poly_size : 2 ; /* [4:3] */
121 __IO uint32_t revid : 2 ; /* [6:5] */
122 __IO uint32_t revod : 1 ; /* [7] */
123 __IO uint32_t reserved2 : 24 ;/* [31:8] */
124 } ctrl_bit;
125 };
126
130 __IO uint32_t reserved1;
131
135 union
136 {
137 __IO uint32_t idt;
138 struct
139 {
140 __IO uint32_t idt : 32; /* [31:0] */
141 } idt_bit;
142 };
143
147 union
148 {
149 __IO uint32_t poly;
150 struct
151 {
152 __IO uint32_t poly : 32; /* [31:0] */
153 } poly_bit;
154 };
155
156} crc_type;
157
162#define CRC ((crc_type *) CRC_BASE)
163
168void crc_data_reset(void);
169uint32_t crc_one_word_calculate(uint32_t data);
170uint32_t crc_block_calculate(uint32_t *pbuffer, uint32_t length);
171uint32_t crc_data_get(void);
172void crc_common_data_set(uint8_t cdt_value);
173uint8_t crc_common_data_get(void);
174void crc_init_data_set(uint32_t value);
175void crc_reverse_input_data_set(crc_reverse_input_type value);
176void crc_reverse_output_data_set(crc_reverse_output_type value);
177void crc_poly_value_set(uint32_t value);
178uint32_t crc_poly_value_get(void);
179void crc_poly_size_set(crc_poly_size_type size);
180 crc_poly_size_type crc_poly_size_get(void);
181
194#ifdef __cplusplus
195}
196#endif
197
198#endif
at32f403.h
at32f403 header file
crc_poly_value_get
uint32_t crc_poly_value_get(void)
return crc polynomial value
Definition: at32f403_crc.c:166
crc_reverse_input_data_set
void crc_reverse_input_data_set(crc_reverse_input_type value)
control the reversal of the bit order in the input data
Definition: at32f403_crc.c:132
crc_poly_size_set
void crc_poly_size_set(crc_poly_size_type size)
config crc polynomial data size
Definition: at32f403_crc.c:181
crc_poly_value_set
void crc_poly_value_set(uint32_t value)
config crc polynomial value
Definition: at32f403_crc.c:156
crc_block_calculate
uint32_t crc_block_calculate(uint32_t *pbuffer, uint32_t length)
compute the 32-bit crc of a given buffer of data word(32-bit).
Definition: at32f403_crc.c:70
crc_init_data_set
void crc_init_data_set(uint32_t value)
set the 32-bit initial data of crc
Definition: at32f403_crc.c:117
crc_common_data_set
void crc_common_data_set(uint8_t cdt_value)
store a 8-bit data in the common data register.
Definition: at32f403_crc.c:97
crc_data_reset
void crc_data_reset(void)
reset the crc data register.
Definition: at32f403_crc.c:47
crc_data_get
uint32_t crc_data_get(void)
return the current crc value.
Definition: at32f403_crc.c:87
crc_one_word_calculate
uint32_t crc_one_word_calculate(uint32_t data)
compute the 32-bit crc of a given data word(32-bit).
Definition: at32f403_crc.c:58
crc_poly_size_get
crc_poly_size_type crc_poly_size_get(void)
return crc polynomial data size
Definition: at32f403_crc.c:191
crc_reverse_output_data_set
void crc_reverse_output_data_set(crc_reverse_output_type value)
control the reversal of the bit order in the output data
Definition: at32f403_crc.c:145
crc_common_data_get
uint8_t crc_common_data_get(void)
return the 8-bit data stored in the common data register
Definition: at32f403_crc.c:107
crc_reverse_output_type
crc_reverse_output_type
crc reverse output data
Definition: at32f403_crc.h:64
crc_reverse_input_type
crc_reverse_input_type
crc reverse input data
Definition: at32f403_crc.h:53
crc_poly_size_type
crc_poly_size_type
crc polynomial size
Definition: at32f403_crc.h:73
CRC_REVERSE_OUTPUT_DATA
@ CRC_REVERSE_OUTPUT_DATA
Definition: at32f403_crc.h:66
CRC_REVERSE_OUTPUT_NO_AFFECTE
@ CRC_REVERSE_OUTPUT_NO_AFFECTE
Definition: at32f403_crc.h:65
CRC_REVERSE_INPUT_BY_HALFWORD
@ CRC_REVERSE_INPUT_BY_HALFWORD
Definition: at32f403_crc.h:56
CRC_REVERSE_INPUT_BY_WORD
@ CRC_REVERSE_INPUT_BY_WORD
Definition: at32f403_crc.h:57
CRC_REVERSE_INPUT_BY_BYTE
@ CRC_REVERSE_INPUT_BY_BYTE
Definition: at32f403_crc.h:55
CRC_REVERSE_INPUT_NO_AFFECTE
@ CRC_REVERSE_INPUT_NO_AFFECTE
Definition: at32f403_crc.h:54
CRC_POLY_SIZE_8B
@ CRC_POLY_SIZE_8B
Definition: at32f403_crc.h:76
CRC_POLY_SIZE_32B
@ CRC_POLY_SIZE_32B
Definition: at32f403_crc.h:74
CRC_POLY_SIZE_7B
@ CRC_POLY_SIZE_7B
Definition: at32f403_crc.h:77
CRC_POLY_SIZE_16B
@ CRC_POLY_SIZE_16B
Definition: at32f403_crc.h:75
crc_type
type define crc register all
Definition: at32f403_crc.h:84
crc_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_crc.h:115
crc_type::cdt
__IO uint32_t cdt
Definition: at32f403_crc.h:102
crc_type::poly
__IO uint32_t poly
Definition: at32f403_crc.h:149
crc_type::dt
__IO uint32_t dt
Definition: at32f403_crc.h:90
crc_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_crc.h:123
crc_type::rst
__IO uint32_t rst
Definition: at32f403_crc.h:118
crc_type::revod
__IO uint32_t revod
Definition: at32f403_crc.h:122
crc_type::idt
__IO uint32_t idt
Definition: at32f403_crc.h:137
crc_type::poly_size
__IO uint32_t poly_size
Definition: at32f403_crc.h:120
crc_type::reserved1
__IO uint32_t reserved1
crm reserved1 register, offset:0x0C
Definition: at32f403_crc.h:106
crc_type::revid
__IO uint32_t revid
Definition: at32f403_crc.h:121


AT32F403 Firmwary Library: at32f403_crm.c Source File

  • libraries
  • drivers
  • src
at32f403_crm.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef CRM_MODULE_ENABLED
37
47void crm_reset(void)
48{
49 /* reset the crm clock configuration to the default reset state(for debug purpose) */
50 /* set hicken bit */
51 CRM->ctrl_bit.hicken = TRUE;
52
53 /* wait hick stable */
54 while(CRM->ctrl_bit.hickstbl != SET);
55
56 /* switch system clock(high to low) in smooth going */
57 CRM->cfg_bit.ahbdiv = CRM_AHB_DIV_512;
58
59 /* hick used as system clock */
60 CRM->cfg_bit.sclksel = CRM_SCLK_HICK;
61
62 /* wait sclk switch status */
63 while(CRM->cfg_bit.sclksts != CRM_SCLK_HICK);
64
65 /* reset hexten, hextbyps, cfden and pllen bits */
66 CRM->ctrl &= ~(0x010D0000U);
67
68 /* reset cfg register, include sclk switch, ahbdiv, apb1div, apb2div, adcdiv,
69 clkout pllrcs, pllhextdiv, pllmult, usbdiv and pllrange bits */
70 CRM->cfg = 0;
71
72 /* reset clkout[3], usbbufs, hickdiv, clkoutdiv */
73 CRM->misc1 = 0;
74
75 /* disable all interrupts enable and clear pending bits */
76 CRM->clkint = 0x009F0000;
77}
78
84void crm_lext_bypass(confirm_state new_state)
85{
86 CRM->bpdc_bit.lextbyps = new_state;
87}
88
94void crm_hext_bypass(confirm_state new_state)
95{
96 CRM->ctrl_bit.hextbyps = new_state;
97}
98
123 flag_status crm_flag_get(uint32_t flag)
124{
125 flag_status status = RESET;
126 if((CRM_REG(flag) & CRM_REG_BIT(flag)) != CRM_REG_BIT(flag))
127 {
128 status = RESET;
129 }
130 else
131 {
132 status = SET;
133 }
134 return status;
135}
136
149 flag_status crm_interrupt_flag_get(uint32_t flag)
150{
151 flag_status status = RESET;
152 switch(flag)
153 {
154 case CRM_LICK_READY_INT_FLAG:
155 if(CRM->clkint_bit.lickstblf && CRM->clkint_bit.lickstblien)
156 {
157 status = SET;
158 }
159 break;
160 case CRM_LEXT_READY_INT_FLAG:
161 if(CRM->clkint_bit.lextstblf && CRM->clkint_bit.lextstblien)
162 {
163 status = SET;
164 }
165 break;
166 case CRM_HICK_READY_INT_FLAG:
167 if(CRM->clkint_bit.hickstblf && CRM->clkint_bit.hickstblien)
168 {
169 status = SET;
170 }
171 break;
172 case CRM_HEXT_READY_INT_FLAG:
173 if(CRM->clkint_bit.hextstblf && CRM->clkint_bit.hextstblien)
174 {
175 status = SET;
176 }
177 break;
178 case CRM_PLL_READY_INT_FLAG:
179 if(CRM->clkint_bit.pllstblf && CRM->clkint_bit.pllstblien)
180 {
181 status = SET;
182 }
183 break;
184 case CRM_CLOCK_FAILURE_INT_FLAG:
185 if(CRM->clkint_bit.cfdf && CRM->ctrl_bit.cfden)
186 {
187 status = SET;
188 }
189 break;
190 }
191
192 return status;
193}
194
200 error_status crm_hext_stable_wait(void)
201{
202 uint32_t stable_cnt = 0;
203 error_status status = ERROR;
204
205 while((crm_flag_get(CRM_HEXT_STABLE_FLAG) != SET) && (stable_cnt < HEXT_STARTUP_TIMEOUT))
206 {
207 stable_cnt ++;
208 }
209
210 if(crm_flag_get(CRM_HEXT_STABLE_FLAG) != SET)
211 {
212 status = ERROR;
213 }
214 else
215 {
216 status = SUCCESS;
217 }
218
219 return status;
220}
221
227void crm_hick_clock_trimming_set(uint8_t trim_value)
228{
229 CRM->ctrl_bit.hicktrim = trim_value;
230}
231
237void crm_hick_clock_calibration_set(uint8_t cali_value)
238{
239 /* enable write hick calibration */
240 CRM->misc1_bit.hickcal_key = 0x5A;
241
242 /* write hick calibration value */
243 CRM->ctrl_bit.hickcal = cali_value;
244
245 /* disable write hick calibration */
246 CRM->misc1_bit.hickcal_key = 0x0;
247}
248
270void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
271{
272 /* enable periph clock */
273 if(TRUE == new_state)
274 {
275 CRM_REG(value) |= CRM_REG_BIT(value);
276 }
277 /* disable periph clock */
278 else
279 {
280 CRM_REG(value) &= ~(CRM_REG_BIT(value));
281 }
282}
283
303void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
304{
305 /* enable periph reset */
306 if(new_state == TRUE)
307 {
308 CRM_REG(value) |= (CRM_REG_BIT(value));
309 }
310 /* disable periph reset */
311 else
312 {
313 CRM_REG(value) &= ~(CRM_REG_BIT(value));
314 }
315}
316
326void crm_periph_sleep_mode_clock_enable(crm_periph_clock_sleepmd_type value, confirm_state new_state)
327{
328 /* enable periph clock in sleep mode */
329 if(new_state == TRUE)
330 {
331 CRM_REG(value) |= (CRM_REG_BIT(value));
332 }
333 /* disable perph clock in sleep mode */
334 else
335 {
336 CRM_REG(value) &= ~(CRM_REG_BIT(value));
337 }
338
339}
340
353void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
354{
355 switch(source)
356 {
357 case CRM_CLOCK_SOURCE_HICK:
358 CRM->ctrl_bit.hicken = new_state;
359 break;
360 case CRM_CLOCK_SOURCE_HEXT:
361 CRM->ctrl_bit.hexten = new_state;
362 break;
363 case CRM_CLOCK_SOURCE_PLL:
364 CRM->ctrl_bit.pllen = new_state;
365 break;
366 case CRM_CLOCK_SOURCE_LEXT:
367 CRM->bpdc_bit.lexten = new_state;
368 break;
369 case CRM_CLOCK_SOURCE_LICK:
370 CRM->ctrlsts_bit.licken = new_state;
371 break;
372 default:
373 break;
374 }
375}
376
398void crm_flag_clear(uint32_t flag)
399{
400 switch(flag)
401 {
402 case CRM_NRST_RESET_FLAG:
403 case CRM_POR_RESET_FLAG:
404 case CRM_SW_RESET_FLAG:
405 case CRM_WDT_RESET_FLAG:
406 case CRM_WWDT_RESET_FLAG:
407 case CRM_LOWPOWER_RESET_FLAG:
408 case CRM_ALL_RESET_FLAG:
409 CRM->ctrlsts_bit.rstfc = TRUE;
410 while(CRM->ctrlsts_bit.rstfc == TRUE);
411 break;
412 case CRM_LICK_READY_INT_FLAG:
413 CRM->clkint_bit.lickstblfc = TRUE;
414 break;
415 case CRM_LEXT_READY_INT_FLAG:
416 CRM->clkint_bit.lextstblfc = TRUE;
417 break;
418 case CRM_HICK_READY_INT_FLAG:
419 CRM->clkint_bit.hickstblfc = TRUE;
420 break;
421 case CRM_HEXT_READY_INT_FLAG:
422 CRM->clkint_bit.hextstblfc = TRUE;
423 break;
424 case CRM_PLL_READY_INT_FLAG:
425 CRM->clkint_bit.pllstblfc = TRUE;
426 break;
427 case CRM_CLOCK_FAILURE_INT_FLAG:
428 CRM->clkint_bit.cfdfc = TRUE;
429 break;
430 default:
431 break;
432 }
433}
434
444void crm_rtc_clock_select(crm_rtc_clock_type value)
445{
446 CRM->bpdc_bit.rtcsel = value;
447}
448
454void crm_rtc_clock_enable(confirm_state new_state)
455{
456 CRM->bpdc_bit.rtcen = new_state;
457}
458
474void crm_ahb_div_set(crm_ahb_div_type value)
475{
476 CRM->cfg_bit.ahbdiv = value;
477}
478
491void crm_apb1_div_set(crm_apb1_div_type value)
492{
493 CRM->cfg_bit.apb1div = value;
494}
495
508void crm_apb2_div_set(crm_apb2_div_type value)
509{
510 CRM->cfg_bit.apb2div = value;
511}
512
525void crm_adc_clock_div_set(crm_adc_div_type div_value)
526{
527 CRM->cfg_bit.adcdiv_l = div_value & 0x03;
528 CRM->cfg_bit.adcdiv_h = (div_value >> 2) & 0x01;
529}
530
544void crm_usb_clock_div_set(crm_usb_div_type div_value)
545{
546 CRM->cfg_bit.usbdiv_l = div_value & 0x03;
547 CRM->cfg_bit.usbdiv_h = (div_value >> 2) & 0x01;
548}
549
555void crm_clock_failure_detection_enable(confirm_state new_state)
556{
557 CRM->ctrl_bit.cfden = new_state;
558}
559
565void crm_battery_powered_domain_reset(confirm_state new_state)
566{
567 CRM->bpdc_bit.bpdrst = new_state;
568}
569
584void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
585{
586 /* config pll clock source */
587 if(clock_source == CRM_PLL_SOURCE_HICK)
588 {
589 CRM->cfg_bit.pllrcs = FALSE;
590 }
591 else
592 {
593 CRM->cfg_bit.pllrcs = TRUE;
594 if(CRM_PLL_SOURCE_HEXT == clock_source)
595 {
596 CRM->cfg_bit.pllhextdiv = FALSE;
597 }
598 else
599 {
600 CRM->cfg_bit.pllhextdiv = TRUE;
601 }
602 }
603
604 /* config pll multiplication factor */
605 CRM->cfg_bit.pllmult_l = (mult_value & 0x0F);
606 CRM->cfg_bit.pllmult_h = ((mult_value & 0x30) >> 4);
607
608 /* config pll output range */
609 CRM->cfg_bit.pllrange = pll_range;
610}
611
621void crm_sysclk_switch(crm_sclk_type value)
622{
623 CRM->cfg_bit.sclksel = value;
624}
625
635 crm_sclk_type crm_sysclk_switch_status_get(void)
636{
637 return (crm_sclk_type)CRM->cfg_bit.sclksts;
638}
639
646void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
647{
648 uint32_t pll_mult = 0, pll_mult_h = 0, pll_clock_source = 0, temp = 0, div_value = 0;
649 crm_sclk_type sclk_source;
650
651 static const uint8_t sclk_ahb_div_table[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9};
652 static const uint8_t ahb_apb1_div_table[8] = {0, 0, 0, 0, 1, 2, 3, 4};
653 static const uint8_t ahb_apb2_div_table[8] = {0, 0, 0, 0, 1, 2, 3, 4};
654 static const uint8_t adc_div_table[8] = {2, 4, 6, 8, 2, 12, 8, 16};
655
656 /* get sclk source */
657 sclk_source = crm_sysclk_switch_status_get();
658
659 switch(sclk_source)
660 {
661 case CRM_SCLK_HICK:
662 clocks_struct->sclk_freq = HICK_VALUE;
663 break;
664 case CRM_SCLK_HEXT:
665 clocks_struct->sclk_freq = HEXT_VALUE;
666 break;
667 case CRM_SCLK_PLL:
668 pll_clock_source = CRM->cfg_bit.pllrcs;
669 /* get multiplication factor */
670 pll_mult = CRM->cfg_bit.pllmult_l;
671 pll_mult_h = CRM->cfg_bit.pllmult_h;
672
673 /* process high bits */
674 if((pll_mult_h != 0U) || (pll_mult == 15U))
675 {
676 pll_mult += ((16U * pll_mult_h) + 1U);
677 }
678 else
679 {
680 pll_mult += 2U;
681 }
682
683 if (pll_clock_source == 0x00)
684 {
685 /* hick divided by 2 selected as pll clock entry */
686 clocks_struct->sclk_freq = (HICK_VALUE >> 1) * pll_mult;
687 }
688 else
689 {
690 /* hext selected as pll clock entry */
691 if (CRM->cfg_bit.pllhextdiv != RESET)
692 {
693 /* hext clock divided by 2 */
694 clocks_struct->sclk_freq = (HEXT_VALUE / 2) * pll_mult;
695 }
696 else
697 {
698 clocks_struct->sclk_freq = HEXT_VALUE * pll_mult;
699 }
700 }
701 break;
702 default:
703 clocks_struct->sclk_freq = HICK_VALUE;
704 break;
705 }
706
707 /* compute sclk, ahbclk, abp1clk apb2clk and adcclk frequencies */
708 /* get ahb division */
709 temp = CRM->cfg_bit.ahbdiv;
710 div_value = sclk_ahb_div_table[temp];
711 /* ahbclk frequency */
712 clocks_struct->ahb_freq = clocks_struct->sclk_freq >> div_value;
713
714 /* get apb1 division */
715 temp = CRM->cfg_bit.apb1div;
716 div_value = ahb_apb1_div_table[temp];
717 /* apb1clk frequency */
718 clocks_struct->apb1_freq = clocks_struct->ahb_freq >> div_value;
719
720 /* get apb2 division */
721 temp = CRM->cfg_bit.apb2div;
722 div_value = ahb_apb2_div_table[temp];
723 /* apb2clk frequency */
724 clocks_struct->apb2_freq = clocks_struct->ahb_freq >> div_value;
725
726 /* get adc division */
727 temp = CRM->cfg_bit.adcdiv_h;
728 temp = ((temp << 2) | (CRM->cfg_bit.adcdiv_l));
729 div_value = adc_div_table[temp];
730 /* adcclk clock frequency */
731 clocks_struct->adc_freq = clocks_struct->apb2_freq / div_value;
732}
733
750void crm_clock_out_set(crm_clkout_select_type clkout)
751{
752 CRM->cfg_bit.clkout_sel = clkout & 0x7;
753 CRM->misc1_bit.clkout_sel = (clkout >> 3) & 0x1;
754}
755
768void crm_interrupt_enable(uint32_t crm_int, confirm_state new_state)
769{
770 if(new_state == TRUE)
771 CRM->clkint |= crm_int;
772 else
773 CRM->clkint &= ~crm_int;
774}
775
780#endif
781
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
crm_periph_clock_type
crm_periph_clock_type
crm periph clock
Definition: at32f403_crm.h:100
crm_apb1_div_type
crm_apb1_div_type
crm apb1 division
Definition: at32f403_crm.h:343
crm_clock_source_type
crm_clock_source_type
crm clock source
Definition: at32f403_crm.h:315
crm_usb_div_type
crm_usb_div_type
crm usb division
Definition: at32f403_crm.h:380
crm_periph_clock_sleepmd_type
crm_periph_clock_sleepmd_type
crm periph clock in sleep mode
Definition: at32f403_crm.h:216
crm_pll_clock_source_type
crm_pll_clock_source_type
crm pll clock source
Definition: at32f403_crm.h:296
crm_pll_mult_type
crm_pll_mult_type
crm pll mult_x
Definition: at32f403_crm.h:226
crm_ahb_div_type
crm_ahb_div_type
crm ahb division
Definition: at32f403_crm.h:327
crm_rtc_clock_type
crm_rtc_clock_type
crm rtc clock
Definition: at32f403_crm.h:394
crm_adc_div_type
crm_adc_div_type
crm adc division
Definition: at32f403_crm.h:367
crm_clkout_select_type
crm_clkout_select_type
crm clkout select
Definition: at32f403_crm.h:415
crm_sclk_type
crm_sclk_type
crm sclk select
Definition: at32f403_crm.h:405
crm_periph_reset_type
crm_periph_reset_type
crm periph reset
Definition: at32f403_crm.h:161
crm_apb2_div_type
crm_apb2_div_type
crm apb2 division
Definition: at32f403_crm.h:355
crm_pll_output_range_type
crm_pll_output_range_type
crm pll clock output range
Definition: at32f403_crm.h:306
CRM_CLOCK_SOURCE_HICK
@ CRM_CLOCK_SOURCE_HICK
Definition: at32f403_crm.h:316
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_LEXT
@ CRM_CLOCK_SOURCE_LEXT
Definition: at32f403_crm.h:319
CRM_CLOCK_SOURCE_LICK
@ CRM_CLOCK_SOURCE_LICK
Definition: at32f403_crm.h:320
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT
@ CRM_PLL_SOURCE_HEXT
Definition: at32f403_crm.h:298
CRM_PLL_SOURCE_HICK
@ CRM_PLL_SOURCE_HICK
Definition: at32f403_crm.h:297
CRM_AHB_DIV_512
@ CRM_AHB_DIV_512
Definition: at32f403_crm.h:336
CRM_SCLK_HICK
@ CRM_SCLK_HICK
Definition: at32f403_crm.h:406
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_SCLK_HEXT
@ CRM_SCLK_HEXT
Definition: at32f403_crm.h:407
CRM_PLL_READY_INT_FLAG
#define CRM_PLL_READY_INT_FLAG
Definition: at32f403_crm.h:69
CRM_HEXT_READY_INT_FLAG
#define CRM_HEXT_READY_INT_FLAG
Definition: at32f403_crm.h:68
CRM_LOWPOWER_RESET_FLAG
#define CRM_LOWPOWER_RESET_FLAG
Definition: at32f403_crm.h:64
CRM_CLOCK_FAILURE_INT_FLAG
#define CRM_CLOCK_FAILURE_INT_FLAG
Definition: at32f403_crm.h:70
CRM_HICK_READY_INT_FLAG
#define CRM_HICK_READY_INT_FLAG
Definition: at32f403_crm.h:67
CRM_LEXT_READY_INT_FLAG
#define CRM_LEXT_READY_INT_FLAG
Definition: at32f403_crm.h:66
CRM_POR_RESET_FLAG
#define CRM_POR_RESET_FLAG
Definition: at32f403_crm.h:60
CRM_HEXT_STABLE_FLAG
#define CRM_HEXT_STABLE_FLAG
Definition: at32f403_crm.h:54
CRM_SW_RESET_FLAG
#define CRM_SW_RESET_FLAG
Definition: at32f403_crm.h:61
CRM_NRST_RESET_FLAG
#define CRM_NRST_RESET_FLAG
Definition: at32f403_crm.h:59
CRM_WWDT_RESET_FLAG
#define CRM_WWDT_RESET_FLAG
Definition: at32f403_crm.h:63
CRM_LICK_READY_INT_FLAG
#define CRM_LICK_READY_INT_FLAG
Definition: at32f403_crm.h:65
CRM_ALL_RESET_FLAG
#define CRM_ALL_RESET_FLAG
Definition: at32f403_crm.h:58
CRM_WDT_RESET_FLAG
#define CRM_WDT_RESET_FLAG
Definition: at32f403_crm.h:62
crm_periph_sleep_mode_clock_enable
void crm_periph_sleep_mode_clock_enable(crm_periph_clock_sleepmd_type value, confirm_state new_state)
enable or disable the peripheral clock in sleep mode
Definition: at32f403_crm.c:326
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hick_clock_calibration_set
void crm_hick_clock_calibration_set(uint8_t cali_value)
set the crm calibration value
Definition: at32f403_crm.c:237
crm_rtc_clock_select
void crm_rtc_clock_select(crm_rtc_clock_type value)
select rtc clock
Definition: at32f403_crm.c:444
crm_rtc_clock_enable
void crm_rtc_clock_enable(confirm_state new_state)
enable or disable rtc
Definition: at32f403_crm.c:454
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_interrupt_enable
void crm_interrupt_enable(uint32_t crm_int, confirm_state new_state)
config crm interrupt
Definition: at32f403_crm.c:768
crm_flag_clear
void crm_flag_clear(uint32_t flag)
clear the crm reset flags
Definition: at32f403_crm.c:398
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_lext_bypass
void crm_lext_bypass(confirm_state new_state)
enable or disable crm low speed external crystal bypass
Definition: at32f403_crm.c:84
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_interrupt_flag_get
flag_status crm_interrupt_flag_get(uint32_t flag)
get crm interrupt flag status
Definition: at32f403_crm.c:149
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_clock_out_set
void crm_clock_out_set(crm_clkout_select_type clkout)
set crm clkout
Definition: at32f403_crm.c:750
crm_clock_failure_detection_enable
void crm_clock_failure_detection_enable(confirm_state new_state)
enable or disable clock failure detection
Definition: at32f403_crm.c:555
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_hick_clock_trimming_set
void crm_hick_clock_trimming_set(uint8_t trim_value)
set the hick trimming value
Definition: at32f403_crm.c:227
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
crm_battery_powered_domain_reset
void crm_battery_powered_domain_reset(confirm_state new_state)
battery powered domain software reset
Definition: at32f403_crm.c:565
crm_hext_bypass
void crm_hext_bypass(confirm_state new_state)
enable or disable crm high speed external crystal bypass
Definition: at32f403_crm.c:94
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_REG_BIT
#define CRM_REG_BIT(value)
Definition: at32f403_crm.h:46
CRM
#define CRM
Definition: at32f403_crm.h:785
CRM_REG
#define CRM_REG(value)
Definition: at32f403_crm.h:45
error_status
error_status
error status
Definition: at32f403.h:314
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
HEXT_VALUE
#define HEXT_VALUE
in the following line adjust the value of high speed external crystal (hext) used in your application
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h:42
HICK_VALUE
#define HICK_VALUE
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h:50
HEXT_STARTUP_TIMEOUT
#define HEXT_STARTUP_TIMEOUT
in the following line adjust the high speed external crystal (hext) startup timeout value
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h:49
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::adc_freq
uint32_t adc_freq
Definition: at32f403_crm.h:455
crm_clocks_freq_type::apb1_freq
uint32_t apb1_freq
Definition: at32f403_crm.h:454
crm_clocks_freq_type::apb2_freq
uint32_t apb2_freq
Definition: at32f403_crm.h:453
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
crm_clocks_freq_type::ahb_freq
uint32_t ahb_freq
Definition: at32f403_crm.h:452
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_crm.h Source File

  • libraries
  • drivers
  • inc
at32f403_crm.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CRM_H
27#define __AT32F403_CRM_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
45#define CRM_REG(value) PERIPH_REG(CRM_BASE, value)
46#define CRM_REG_BIT(value) PERIPH_REG_BIT(value)
47
53#define CRM_HICK_STABLE_FLAG MAKE_VALUE(0x00, 1)
54#define CRM_HEXT_STABLE_FLAG MAKE_VALUE(0x00, 17)
55#define CRM_PLL_STABLE_FLAG MAKE_VALUE(0x00, 25)
56#define CRM_LEXT_STABLE_FLAG MAKE_VALUE(0x20, 1)
57#define CRM_LICK_STABLE_FLAG MAKE_VALUE(0x24, 1)
58#define CRM_ALL_RESET_FLAG MAKE_VALUE(0x24, 24)
59#define CRM_NRST_RESET_FLAG MAKE_VALUE(0x24, 26)
60#define CRM_POR_RESET_FLAG MAKE_VALUE(0x24, 27)
61#define CRM_SW_RESET_FLAG MAKE_VALUE(0x24, 28)
62#define CRM_WDT_RESET_FLAG MAKE_VALUE(0x24, 29)
63#define CRM_WWDT_RESET_FLAG MAKE_VALUE(0x24, 30)
64#define CRM_LOWPOWER_RESET_FLAG MAKE_VALUE(0x24, 31)
65#define CRM_LICK_READY_INT_FLAG MAKE_VALUE(0x08, 0)
66#define CRM_LEXT_READY_INT_FLAG MAKE_VALUE(0x08, 1)
67#define CRM_HICK_READY_INT_FLAG MAKE_VALUE(0x08, 2)
68#define CRM_HEXT_READY_INT_FLAG MAKE_VALUE(0x08, 3)
69#define CRM_PLL_READY_INT_FLAG MAKE_VALUE(0x08, 4)
70#define CRM_CLOCK_FAILURE_INT_FLAG MAKE_VALUE(0x08, 7)
81#define CRM_LICK_STABLE_INT ((uint32_t)0x00000100)
82#define CRM_LEXT_STABLE_INT ((uint32_t)0x00000200)
83#define CRM_HICK_STABLE_INT ((uint32_t)0x00000400)
84#define CRM_HEXT_STABLE_INT ((uint32_t)0x00000800)
85#define CRM_PLL_STABLE_INT ((uint32_t)0x00001000)
86#define CRM_CLOCK_FAILURE_INT ((uint32_t)0x00800000)
99typedef enum
100{
101 /* ahb periph */
102 CRM_DMA1_PERIPH_CLOCK = MAKE_VALUE(0x14, 0),
103 CRM_DMA2_PERIPH_CLOCK = MAKE_VALUE(0x14, 1),
104 CRM_CRC_PERIPH_CLOCK = MAKE_VALUE(0x14, 6),
105 CRM_XMC_PERIPH_CLOCK = MAKE_VALUE(0x14, 8),
106 CRM_SDIO1_PERIPH_CLOCK = MAKE_VALUE(0x14, 10),
107 CRM_SDIO2_PERIPH_CLOCK = MAKE_VALUE(0x14, 11),
108 /* apb2 periph */
109 CRM_IOMUX_PERIPH_CLOCK = MAKE_VALUE(0x18, 0),
110 CRM_GPIOA_PERIPH_CLOCK = MAKE_VALUE(0x18, 2),
111 CRM_GPIOB_PERIPH_CLOCK = MAKE_VALUE(0x18, 3),
112 CRM_GPIOC_PERIPH_CLOCK = MAKE_VALUE(0x18, 4),
113 CRM_GPIOD_PERIPH_CLOCK = MAKE_VALUE(0x18, 5),
114 CRM_GPIOE_PERIPH_CLOCK = MAKE_VALUE(0x18, 6),
115 CRM_GPIOF_PERIPH_CLOCK = MAKE_VALUE(0x18, 7),
116 CRM_GPIOG_PERIPH_CLOCK = MAKE_VALUE(0x18, 8),
117 CRM_ADC1_PERIPH_CLOCK = MAKE_VALUE(0x18, 9),
118 CRM_ADC2_PERIPH_CLOCK = MAKE_VALUE(0x18, 10),
119 CRM_TMR1_PERIPH_CLOCK = MAKE_VALUE(0x18, 11),
120 CRM_SPI1_PERIPH_CLOCK = MAKE_VALUE(0x18, 12),
121 CRM_TMR8_PERIPH_CLOCK = MAKE_VALUE(0x18, 13),
122 CRM_USART1_PERIPH_CLOCK = MAKE_VALUE(0x18, 14),
123 CRM_ADC3_PERIPH_CLOCK = MAKE_VALUE(0x18, 15),
124 CRM_TMR15_PERIPH_CLOCK = MAKE_VALUE(0x18, 16),
125 CRM_TMR9_PERIPH_CLOCK = MAKE_VALUE(0x18, 19),
126 CRM_TMR10_PERIPH_CLOCK = MAKE_VALUE(0x18, 20),
127 CRM_TMR11_PERIPH_CLOCK = MAKE_VALUE(0x18, 21),
128 /* apb1 periph */
129 CRM_TMR2_PERIPH_CLOCK = MAKE_VALUE(0x1C, 0),
130 CRM_TMR3_PERIPH_CLOCK = MAKE_VALUE(0x1C, 1),
131 CRM_TMR4_PERIPH_CLOCK = MAKE_VALUE(0x1C, 2),
132 CRM_TMR5_PERIPH_CLOCK = MAKE_VALUE(0x1C, 3),
133 CRM_TMR6_PERIPH_CLOCK = MAKE_VALUE(0x1C, 4),
134 CRM_TMR7_PERIPH_CLOCK = MAKE_VALUE(0x1C, 5),
135 CRM_TMR12_PERIPH_CLOCK = MAKE_VALUE(0x1C, 6),
136 CRM_TMR13_PERIPH_CLOCK = MAKE_VALUE(0x1C, 7),
137 CRM_TMR14_PERIPH_CLOCK = MAKE_VALUE(0x1C, 8),
138 CRM_WWDT_PERIPH_CLOCK = MAKE_VALUE(0x1C, 11),
139 CRM_SPI2_PERIPH_CLOCK = MAKE_VALUE(0x1C, 14),
140 CRM_SPI3_PERIPH_CLOCK = MAKE_VALUE(0x1C, 15),
141 CRM_SPI4_PERIPH_CLOCK = MAKE_VALUE(0x1C, 16),
142 CRM_USART2_PERIPH_CLOCK = MAKE_VALUE(0x1C, 17),
143 CRM_USART3_PERIPH_CLOCK = MAKE_VALUE(0x1C, 18),
144 CRM_UART4_PERIPH_CLOCK = MAKE_VALUE(0x1C, 19),
145 CRM_UART5_PERIPH_CLOCK = MAKE_VALUE(0x1C, 20),
146 CRM_I2C1_PERIPH_CLOCK = MAKE_VALUE(0x1C, 21),
147 CRM_I2C2_PERIPH_CLOCK = MAKE_VALUE(0x1C, 22),
148 CRM_USB_PERIPH_CLOCK = MAKE_VALUE(0x1C, 23),
149 CRM_CAN1_PERIPH_CLOCK = MAKE_VALUE(0x1C, 25),
150 CRM_I2C3_PERIPH_CLOCK = MAKE_VALUE(0x1C, 26),
151 CRM_BPR_PERIPH_CLOCK = MAKE_VALUE(0x1C, 27),
152 CRM_PWC_PERIPH_CLOCK = MAKE_VALUE(0x1C, 28),
153 CRM_DAC_PERIPH_CLOCK = MAKE_VALUE(0x1C, 29)
155} crm_periph_clock_type;
156
160typedef enum
161{
162 /* apb2 periph */
163 CRM_IOMUX_PERIPH_RESET = MAKE_VALUE(0x0C, 0),
164 CRM_EXINT_PERIPH_RESET = MAKE_VALUE(0x0C, 1),
165 CRM_GPIOA_PERIPH_RESET = MAKE_VALUE(0x0C, 2),
166 CRM_GPIOB_PERIPH_RESET = MAKE_VALUE(0x0C, 3),
167 CRM_GPIOC_PERIPH_RESET = MAKE_VALUE(0x0C, 4),
168 CRM_GPIOD_PERIPH_RESET = MAKE_VALUE(0x0C, 5),
169 CRM_GPIOE_PERIPH_RESET = MAKE_VALUE(0x0C, 6),
170 CRM_GPIOF_PERIPH_RESET = MAKE_VALUE(0x0C, 7),
171 CRM_GPIOG_PERIPH_RESET = MAKE_VALUE(0x0C, 8),
172 CRM_ADC1_PERIPH_RESET = MAKE_VALUE(0x0C, 9),
173 CRM_ADC2_PERIPH_RESET = MAKE_VALUE(0x0C, 10),
174 CRM_TMR1_PERIPH_RESET = MAKE_VALUE(0x0C, 11),
175 CRM_SPI1_PERIPH_RESET = MAKE_VALUE(0x0C, 12),
176 CRM_TMR8_PERIPH_RESET = MAKE_VALUE(0x0C, 13),
177 CRM_USART1_PERIPH_RESET = MAKE_VALUE(0x0C, 14),
178 CRM_ADC3_PERIPH_RESET = MAKE_VALUE(0x0C, 15),
179 CRM_TMR15_PERIPH_RESET = MAKE_VALUE(0x0C, 16),
180 CRM_TMR9_PERIPH_RESET = MAKE_VALUE(0x0C, 19),
181 CRM_TMR10_PERIPH_RESET = MAKE_VALUE(0x0C, 20),
182 CRM_TMR11_PERIPH_RESET = MAKE_VALUE(0x0C, 21),
183 /* apb1 periph */
184 CRM_TMR2_PERIPH_RESET = MAKE_VALUE(0x10, 0),
185 CRM_TMR3_PERIPH_RESET = MAKE_VALUE(0x10, 1),
186 CRM_TMR4_PERIPH_RESET = MAKE_VALUE(0x10, 2),
187 CRM_TMR5_PERIPH_RESET = MAKE_VALUE(0x10, 3),
188 CRM_TMR6_PERIPH_RESET = MAKE_VALUE(0x10, 4),
189 CRM_TMR7_PERIPH_RESET = MAKE_VALUE(0x10, 5),
190 CRM_TMR12_PERIPH_RESET = MAKE_VALUE(0x10, 6),
191 CRM_TMR13_PERIPH_RESET = MAKE_VALUE(0x10, 7),
192 CRM_TMR14_PERIPH_RESET = MAKE_VALUE(0x10, 8),
193 CRM_WWDT_PERIPH_RESET = MAKE_VALUE(0x10, 11),
194 CRM_SPI2_PERIPH_RESET = MAKE_VALUE(0x10, 14),
195 CRM_SPI3_PERIPH_RESET = MAKE_VALUE(0x10, 15),
196 CRM_SPI4_PERIPH_RESET = MAKE_VALUE(0x10, 16),
197 CRM_USART2_PERIPH_RESET = MAKE_VALUE(0x10, 17),
198 CRM_USART3_PERIPH_RESET = MAKE_VALUE(0x10, 18),
199 CRM_UART4_PERIPH_RESET = MAKE_VALUE(0x10, 19),
200 CRM_UART5_PERIPH_RESET = MAKE_VALUE(0x10, 20),
201 CRM_I2C1_PERIPH_RESET = MAKE_VALUE(0x10, 21),
202 CRM_I2C2_PERIPH_RESET = MAKE_VALUE(0x10, 22),
203 CRM_USB_PERIPH_RESET = MAKE_VALUE(0x10, 23),
204 CRM_CAN1_PERIPH_RESET = MAKE_VALUE(0x10, 25),
205 CRM_I2C3_PERIPH_RESET = MAKE_VALUE(0x10, 26),
206 CRM_BPR_PERIPH_RESET = MAKE_VALUE(0x10, 27),
207 CRM_PWC_PERIPH_RESET = MAKE_VALUE(0x10, 28),
208 CRM_DAC_PERIPH_RESET = MAKE_VALUE(0x10, 29)
210} crm_periph_reset_type;
211
215typedef enum
216{
217 /* ahb periph */
218 CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE = MAKE_VALUE(0x14, 2),
219 CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE = MAKE_VALUE(0x14, 4)
220} crm_periph_clock_sleepmd_type;
221
225typedef enum
226{
227 CRM_PLL_MULT_2 = 0,
228 CRM_PLL_MULT_3 = 1,
229 CRM_PLL_MULT_4 = 2,
230 CRM_PLL_MULT_5 = 3,
231 CRM_PLL_MULT_6 = 4,
232 CRM_PLL_MULT_7 = 5,
233 CRM_PLL_MULT_8 = 6,
234 CRM_PLL_MULT_9 = 7,
235 CRM_PLL_MULT_10 = 8,
236 CRM_PLL_MULT_11 = 9,
237 CRM_PLL_MULT_12 = 10,
238 CRM_PLL_MULT_13 = 11,
239 CRM_PLL_MULT_14 = 12,
240 CRM_PLL_MULT_15 = 13,
241 CRM_PLL_MULT_16 = 15,
242 CRM_PLL_MULT_17 = 16,
243 CRM_PLL_MULT_18 = 17,
244 CRM_PLL_MULT_19 = 18,
245 CRM_PLL_MULT_20 = 19,
246 CRM_PLL_MULT_21 = 20,
247 CRM_PLL_MULT_22 = 21,
248 CRM_PLL_MULT_23 = 22,
249 CRM_PLL_MULT_24 = 23,
250 CRM_PLL_MULT_25 = 24,
251 CRM_PLL_MULT_26 = 25,
252 CRM_PLL_MULT_27 = 26,
253 CRM_PLL_MULT_28 = 27,
254 CRM_PLL_MULT_29 = 28,
255 CRM_PLL_MULT_30 = 29,
256 CRM_PLL_MULT_31 = 30,
257 CRM_PLL_MULT_32 = 31,
258 CRM_PLL_MULT_33 = 32,
259 CRM_PLL_MULT_34 = 33,
260 CRM_PLL_MULT_35 = 34,
261 CRM_PLL_MULT_36 = 35,
262 CRM_PLL_MULT_37 = 36,
263 CRM_PLL_MULT_38 = 37,
264 CRM_PLL_MULT_39 = 38,
265 CRM_PLL_MULT_40 = 39,
266 CRM_PLL_MULT_41 = 40,
267 CRM_PLL_MULT_42 = 41,
268 CRM_PLL_MULT_43 = 42,
269 CRM_PLL_MULT_44 = 43,
270 CRM_PLL_MULT_45 = 44,
271 CRM_PLL_MULT_46 = 45,
272 CRM_PLL_MULT_47 = 46,
273 CRM_PLL_MULT_48 = 47,
274 CRM_PLL_MULT_49 = 48,
275 CRM_PLL_MULT_50 = 49,
276 CRM_PLL_MULT_51 = 50,
277 CRM_PLL_MULT_52 = 51,
278 CRM_PLL_MULT_53 = 52,
279 CRM_PLL_MULT_54 = 53,
280 CRM_PLL_MULT_55 = 54,
281 CRM_PLL_MULT_56 = 55,
282 CRM_PLL_MULT_57 = 56,
283 CRM_PLL_MULT_58 = 57,
284 CRM_PLL_MULT_59 = 58,
285 CRM_PLL_MULT_60 = 59,
286 CRM_PLL_MULT_61 = 60,
287 CRM_PLL_MULT_62 = 61,
288 CRM_PLL_MULT_63 = 62,
289 CRM_PLL_MULT_64 = 63
290} crm_pll_mult_type;
291
295typedef enum
296{
297 CRM_PLL_SOURCE_HICK = 0x00,
298 CRM_PLL_SOURCE_HEXT = 0x01,
299 CRM_PLL_SOURCE_HEXT_DIV = 0x02
300} crm_pll_clock_source_type;
301
305typedef enum
306{
307 CRM_PLL_OUTPUT_RANGE_LE72MHZ = 0x00,
308 CRM_PLL_OUTPUT_RANGE_GT72MHZ = 0x01
309} crm_pll_output_range_type;
310
314typedef enum
315{
316 CRM_CLOCK_SOURCE_HICK = 0x00,
317 CRM_CLOCK_SOURCE_HEXT = 0x01,
318 CRM_CLOCK_SOURCE_PLL = 0x02,
319 CRM_CLOCK_SOURCE_LEXT = 0x03,
320 CRM_CLOCK_SOURCE_LICK = 0x04
321} crm_clock_source_type;
322
326typedef enum
327{
328 CRM_AHB_DIV_1 = 0x00,
329 CRM_AHB_DIV_2 = 0x08,
330 CRM_AHB_DIV_4 = 0x09,
331 CRM_AHB_DIV_8 = 0x0A,
332 CRM_AHB_DIV_16 = 0x0B,
333 CRM_AHB_DIV_64 = 0x0C,
334 CRM_AHB_DIV_128 = 0x0D,
335 CRM_AHB_DIV_256 = 0x0E,
336 CRM_AHB_DIV_512 = 0x0F
337} crm_ahb_div_type;
338
342typedef enum
343{
344 CRM_APB1_DIV_1 = 0x00,
345 CRM_APB1_DIV_2 = 0x04,
346 CRM_APB1_DIV_4 = 0x05,
347 CRM_APB1_DIV_8 = 0x06,
348 CRM_APB1_DIV_16 = 0x07
349} crm_apb1_div_type;
350
354typedef enum
355{
356 CRM_APB2_DIV_1 = 0x00,
357 CRM_APB2_DIV_2 = 0x04,
358 CRM_APB2_DIV_4 = 0x05,
359 CRM_APB2_DIV_8 = 0x06,
360 CRM_APB2_DIV_16 = 0x07
361} crm_apb2_div_type;
362
366typedef enum
367{
368 CRM_ADC_DIV_2 = 0x00,
369 CRM_ADC_DIV_4 = 0x01,
370 CRM_ADC_DIV_6 = 0x02,
371 CRM_ADC_DIV_8 = 0x03,
372 CRM_ADC_DIV_12 = 0x05,
373 CRM_ADC_DIV_16 = 0x07
374} crm_adc_div_type;
375
379typedef enum
380{
381 CRM_USB_DIV_1_5 = 0x00,
382 CRM_USB_DIV_1 = 0x01,
383 CRM_USB_DIV_2_5 = 0x02,
384 CRM_USB_DIV_2 = 0x03,
385 CRM_USB_DIV_3_5 = 0x04,
386 CRM_USB_DIV_3 = 0x05,
387 CRM_USB_DIV_4 = 0x06
388} crm_usb_div_type;
389
393typedef enum
394{
395 CRM_RTC_CLOCK_NOCLK = 0x00,
396 CRM_RTC_CLOCK_LEXT = 0x01,
397 CRM_RTC_CLOCK_LICK = 0x02,
398 CRM_RTC_CLOCK_HEXT_DIV = 0x03
399} crm_rtc_clock_type;
400
404typedef enum
405{
406 CRM_SCLK_HICK = 0x00,
407 CRM_SCLK_HEXT = 0x01,
408 CRM_SCLK_PLL = 0x02
409} crm_sclk_type;
410
414typedef enum
415{
416 CRM_CLKOUT_NOCLK = 0x00,
417 CRM_CLKOUT_LICK = 0x02,
418 CRM_CLKOUT_LEXT = 0x03,
419 CRM_CLKOUT_SCLK = 0x04,
420 CRM_CLKOUT_HICK = 0x05,
421 CRM_CLKOUT_HEXT = 0x06,
422 CRM_CLKOUT_PLL_DIV_2 = 0x07,
423 CRM_CLKOUT_PLL_DIV_4 = 0x0C,
424 CRM_CLKOUT_USB = 0x0D,
425 CRM_CLKOUT_ADC = 0x0E
426} crm_clkout_select_type;
427
431typedef enum
432{
433 CRM_USB_INT19_INT20 = 0x00,
434 CRM_USB_INT73_INT74 = 0x01
435} crm_usb_int_map_type;
436
440typedef enum
441{
442 CRM_USB_CLOCK_SOURCE_PLL = 0x00,
443 CRM_USB_CLOCK_SOURCE_HICK = 0x01
444} crm_usb_clock_source_type;
445
449typedef struct
450{
451 uint32_t sclk_freq;
452 uint32_t ahb_freq;
453 uint32_t apb2_freq;
454 uint32_t apb1_freq;
455 uint32_t adc_freq;
456} crm_clocks_freq_type;
457
461typedef struct
462{
466 union
467 {
468 __IO uint32_t ctrl;
469 struct
470 {
471 __IO uint32_t hicken : 1; /* [0] */
472 __IO uint32_t hickstbl : 1; /* [1] */
473 __IO uint32_t reserved1 : 1; /* [2] */
474 __IO uint32_t hicktrim : 5; /* [7:3] */
475 __IO uint32_t hickcal : 8; /* [15:8] */
476 __IO uint32_t hexten : 1; /* [16] */
477 __IO uint32_t hextstbl : 1; /* [17] */
478 __IO uint32_t hextbyps : 1; /* [18] */
479 __IO uint32_t cfden : 1; /* [19] */
480 __IO uint32_t reserved2 : 4; /* [23:20] */
481 __IO uint32_t pllen : 1; /* [24] */
482 __IO uint32_t pllstbl : 1; /* [25] */
483 __IO uint32_t reserved3 : 6; /* [31:26] */
484 } ctrl_bit;
485 };
486
490 union
491 {
492 __IO uint32_t cfg;
493 struct
494 {
495 __IO uint32_t sclksel : 2; /* [1:0] */
496 __IO uint32_t sclksts : 2; /* [3:2] */
497 __IO uint32_t ahbdiv : 4; /* [7:4] */
498 __IO uint32_t apb1div : 3; /* [10:8] */
499 __IO uint32_t apb2div : 3; /* [13:11] */
500 __IO uint32_t adcdiv_l : 2; /* [15:14] */
501 __IO uint32_t pllrcs : 1; /* [16] */
502 __IO uint32_t pllhextdiv : 1; /* [17] */
503 __IO uint32_t pllmult_l : 4; /* [21:18] */
504 __IO uint32_t usbdiv_l : 2; /* [23:22] */
505 __IO uint32_t clkout_sel : 3; /* [26:24] */
506 __IO uint32_t usbdiv_h : 1; /* [27] */
507 __IO uint32_t adcdiv_h : 1; /* [28] */
508 __IO uint32_t pllmult_h : 2; /* [30:29] */
509 __IO uint32_t pllrange : 1; /* [31] */
510 } cfg_bit;
511 };
512
516 union
517 {
518 __IO uint32_t clkint;
519 struct
520 {
521 __IO uint32_t lickstblf : 1; /* [0] */
522 __IO uint32_t lextstblf : 1; /* [1] */
523 __IO uint32_t hickstblf : 1; /* [2] */
524 __IO uint32_t hextstblf : 1; /* [3] */
525 __IO uint32_t pllstblf : 1; /* [4] */
526 __IO uint32_t reserved1 : 2; /* [6:5] */
527 __IO uint32_t cfdf : 1; /* [7] */
528 __IO uint32_t lickstblien : 1; /* [8] */
529 __IO uint32_t lextstblien : 1; /* [9] */
530 __IO uint32_t hickstblien : 1; /* [10] */
531 __IO uint32_t hextstblien : 1; /* [11] */
532 __IO uint32_t pllstblien : 1; /* [12] */
533 __IO uint32_t reserved2 : 3; /* [15:13] */
534 __IO uint32_t lickstblfc : 1; /* [16] */
535 __IO uint32_t lextstblfc : 1; /* [17] */
536 __IO uint32_t hickstblfc : 1; /* [18] */
537 __IO uint32_t hextstblfc : 1; /* [19] */
538 __IO uint32_t pllstblfc : 1; /* [20] */
539 __IO uint32_t reserved3 : 2; /* [22:21] */
540 __IO uint32_t cfdfc : 1; /* [23] */
541 __IO uint32_t reserved4 : 8; /* [31:24] */
542 } clkint_bit;
543 };
544
548 union
549 {
550 __IO uint32_t apb2rst;
551 struct
552 {
553 __IO uint32_t iomuxrst : 1; /* [0] */
554 __IO uint32_t exintrst : 1; /* [1] */
555 __IO uint32_t gpioarst : 1; /* [2] */
556 __IO uint32_t gpiobrst : 1; /* [3] */
557 __IO uint32_t gpiocrst : 1; /* [4] */
558 __IO uint32_t gpiodrst : 1; /* [5] */
559 __IO uint32_t gpioerst : 1; /* [6] */
560 __IO uint32_t gpiofrst : 1; /* [7] */
561 __IO uint32_t gpiogrst : 1; /* [8] */
562 __IO uint32_t adc1rst : 1; /* [9] */
563 __IO uint32_t adc2rst : 1; /* [10] */
564 __IO uint32_t tmr1rst : 1; /* [11] */
565 __IO uint32_t spi1rst : 1; /* [12] */
566 __IO uint32_t tmr8rst : 1; /* [13] */
567 __IO uint32_t usart1rst : 1; /* [14] */
568 __IO uint32_t adc3rst : 1; /* [15] */
569 __IO uint32_t tmr15rst : 1; /* [16] */
570 __IO uint32_t reserved2 : 2; /* [18:17] */
571 __IO uint32_t tmr9rst : 1; /* [19] */
572 __IO uint32_t tmr10rst : 1; /* [20] */
573 __IO uint32_t tmr11rst : 1; /* [21] */
574 __IO uint32_t reserved3 : 10;/* [31:22] */
575 } apb2rst_bit;
576 };
577
581 union
582 {
583 __IO uint32_t apb1rst;
584 struct
585 {
586 __IO uint32_t tmr2rst : 1; /* [0] */
587 __IO uint32_t tmr3rst : 1; /* [1] */
588 __IO uint32_t tmr4rst : 1; /* [2] */
589 __IO uint32_t tmr5rst : 1; /* [3] */
590 __IO uint32_t tmr6rst : 1; /* [4] */
591 __IO uint32_t tmr7rst : 1; /* [5] */
592 __IO uint32_t tmr12rst : 1; /* [6] */
593 __IO uint32_t tmr13rst : 1; /* [7] */
594 __IO uint32_t tmr14rst : 1; /* [8] */
595 __IO uint32_t reserved1 : 2; /* [10:9] */
596 __IO uint32_t wwdtrst : 1; /* [11] */
597 __IO uint32_t reserved2 : 2; /* [13:12] */
598 __IO uint32_t spi2rst : 1; /* [14] */
599 __IO uint32_t spi3rst : 1; /* [15] */
600 __IO uint32_t spi4rst : 1; /* [16] */
601 __IO uint32_t usart2rst : 1; /* [17] */
602 __IO uint32_t usart3rst : 1; /* [18] */
603 __IO uint32_t uart4rst : 1; /* [19] */
604 __IO uint32_t uart5rst : 1; /* [20] */
605 __IO uint32_t i2c1rst : 1; /* [21] */
606 __IO uint32_t i2c2rst : 1; /* [22] */
607 __IO uint32_t usbrst : 1; /* [23] */
608 __IO uint32_t reserved3 : 1; /* [24] */
609 __IO uint32_t can1rst : 1; /* [25] */
610 __IO uint32_t i2c3rst : 1; /* [26] */
611 __IO uint32_t bprrst : 1; /* [27] */
612 __IO uint32_t pwcrst : 1; /* [28] */
613 __IO uint32_t dacrst : 1; /* [29] */
614 __IO uint32_t reserved4 : 2; /* [31:30] */
615 } apb1rst_bit;
616 };
617
621 union
622 {
623 __IO uint32_t ahben;
624 struct
625 {
626 __IO uint32_t dma1en : 1; /* [0] */
627 __IO uint32_t dma2en : 1; /* [1] */
628 __IO uint32_t sramen : 1; /* [2] */
629 __IO uint32_t reserved1 : 1; /* [3] */
630 __IO uint32_t flashen : 1; /* [4] */
631 __IO uint32_t reserved2 : 1; /* [5] */
632 __IO uint32_t crcen : 1; /* [6] */
633 __IO uint32_t reserved3 : 1; /* [7] */
634 __IO uint32_t xmcen : 1; /* [8] */
635 __IO uint32_t reserved4 : 1; /* [9] */
636 __IO uint32_t sdio1en : 1; /* [10] */
637 __IO uint32_t sdio2en : 1; /* [11] */
638 __IO uint32_t reserved5 : 20;/* [31:12] */
639 } ahben_bit;
640 };
641
645 union
646 {
647 __IO uint32_t apb2en;
648 struct
649 {
650 __IO uint32_t iomuxen : 1; /* [0] */
651 __IO uint32_t reserved1 : 1; /* [1] */
652 __IO uint32_t gpioaen : 1; /* [2] */
653 __IO uint32_t gpioben : 1; /* [3] */
654 __IO uint32_t gpiocen : 1; /* [4] */
655 __IO uint32_t gpioden : 1; /* [5] */
656 __IO uint32_t gpioeen : 1; /* [6] */
657 __IO uint32_t gpiofen : 1; /* [7] */
658 __IO uint32_t gpiogen : 1; /* [8] */
659 __IO uint32_t adc1en : 1; /* [9] */
660 __IO uint32_t adc2en : 1; /* [10] */
661 __IO uint32_t tmr1en : 1; /* [11] */
662 __IO uint32_t spi1en : 1; /* [12] */
663 __IO uint32_t tmr8en : 1; /* [13] */
664 __IO uint32_t usart1en : 1; /* [14] */
665 __IO uint32_t adc3en : 1; /* [15] */
666 __IO uint32_t tmr15en : 1; /* [16] */
667 __IO uint32_t reserved3 : 2; /* [18:17] */
668 __IO uint32_t tmr9en : 1; /* [19] */
669 __IO uint32_t tmr10en : 1; /* [20] */
670 __IO uint32_t tmr11en : 1; /* [21] */
671 __IO uint32_t reserved4 : 10;/* [31:22] */
672 } apb2en_bit;
673 };
674
678 union
679 {
680 __IO uint32_t apb1en;
681 struct
682 {
683 __IO uint32_t tmr2en : 1; /* [0] */
684 __IO uint32_t tmr3en : 1; /* [1] */
685 __IO uint32_t tmr4en : 1; /* [2] */
686 __IO uint32_t tmr5en : 1; /* [3] */
687 __IO uint32_t tmr6en : 1; /* [4] */
688 __IO uint32_t tmr7en : 1; /* [5] */
689 __IO uint32_t tmr12en : 1; /* [6] */
690 __IO uint32_t tmr13en : 1; /* [7] */
691 __IO uint32_t tmr14en : 1; /* [8] */
692 __IO uint32_t reserved1 : 2; /* [10:9] */
693 __IO uint32_t wwdten : 1; /* [11] */
694 __IO uint32_t reserved2 : 2; /* [13:12] */
695 __IO uint32_t spi2en : 1; /* [14] */
696 __IO uint32_t spi3en : 1; /* [15] */
697 __IO uint32_t spi4en : 1; /* [16] */
698 __IO uint32_t usart2en : 1; /* [17] */
699 __IO uint32_t usart3en : 1; /* [18] */
700 __IO uint32_t uart4en : 1; /* [19] */
701 __IO uint32_t uart5en : 1; /* [20] */
702 __IO uint32_t i2c1en : 1; /* [21] */
703 __IO uint32_t i2c2en : 1; /* [22] */
704 __IO uint32_t usben : 1; /* [23] */
705 __IO uint32_t reserved3 : 1; /* [24] */
706 __IO uint32_t can1en : 1; /* [25] */
707 __IO uint32_t i2c3en : 1; /* [26] */
708 __IO uint32_t bpren : 1; /* [27] */
709 __IO uint32_t pwcen : 1; /* [28] */
710 __IO uint32_t dacen : 1; /* [29] */
711 __IO uint32_t reserved4 : 2; /* [31:30] */
712 } apb1en_bit;
713 };
714
718 union
719 {
720 __IO uint32_t bpdc;
721 struct
722 {
723 __IO uint32_t lexten : 1; /* [0] */
724 __IO uint32_t lextstbl : 1; /* [1] */
725 __IO uint32_t lextbyps : 1; /* [2] */
726 __IO uint32_t reserved1 : 5; /* [7:3] */
727 __IO uint32_t rtcsel : 2; /* [9:8] */
728 __IO uint32_t reserved2 : 5; /* [14:10] */
729 __IO uint32_t rtcen : 1; /* [15] */
730 __IO uint32_t bpdrst : 1; /* [16] */
731 __IO uint32_t reserved3 : 15;/* [31:17] */
732 } bpdc_bit;
733 };
734
738 union
739 {
740 __IO uint32_t ctrlsts;
741 struct
742 {
743 __IO uint32_t licken : 1; /* [0] */
744 __IO uint32_t lickstbl : 1; /* [1] */
745 __IO uint32_t reserved1 : 22;/* [23:2] */
746 __IO uint32_t rstfc : 1; /* [24] */
747 __IO uint32_t reserved2 : 1; /* [25] */
748 __IO uint32_t nrstf : 1; /* [26] */
749 __IO uint32_t porrstf : 1; /* [27] */
750 __IO uint32_t swrstf : 1; /* [28] */
751 __IO uint32_t wdtrstf : 1; /* [29] */
752 __IO uint32_t wwdtrstf : 1; /* [30] */
753 __IO uint32_t lprstf : 1; /* [31] */
754 } ctrlsts_bit;
755 };
756
760 __IO uint32_t reserved1[2];
761
765 union
766 {
767 __IO uint32_t misc1;
768 struct
769 {
770 __IO uint32_t hickcal_key : 8; /* [7:0] */
771 __IO uint32_t reserved1 : 8; /* [15:8] */
772 __IO uint32_t clkout_sel : 1; /* [16] */
773 __IO uint32_t reserved2 : 7; /* [23:17] */
774 __IO uint32_t usbbufs : 1; /* [24] */
775 __IO uint32_t reserved3 : 7; /* [27:25] */
776 } misc1_bit;
777 };
778
779} crm_type;
780
785#define CRM ((crm_type *) CRM_BASE)
786
791void crm_reset(void);
792void crm_lext_bypass(confirm_state new_state);
793void crm_hext_bypass(confirm_state new_state);
794 flag_status crm_flag_get(uint32_t flag);
795 flag_status crm_interrupt_flag_get(uint32_t flag);
796 error_status crm_hext_stable_wait(void);
797void crm_hick_clock_trimming_set(uint8_t trim_value);
798void crm_hick_clock_calibration_set(uint8_t cali_value);
799void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state);
800void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state);
801void crm_periph_sleep_mode_clock_enable(crm_periph_clock_sleepmd_type value, confirm_state new_state);
802void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state);
803void crm_flag_clear(uint32_t flag);
804void crm_rtc_clock_select(crm_rtc_clock_type value);
805void crm_rtc_clock_enable(confirm_state new_state);
806void crm_ahb_div_set(crm_ahb_div_type value);
807void crm_apb1_div_set(crm_apb1_div_type value);
808void crm_apb2_div_set(crm_apb2_div_type value);
809void crm_adc_clock_div_set(crm_adc_div_type div_value);
810void crm_usb_clock_div_set(crm_usb_div_type div_value);
811void crm_clock_failure_detection_enable(confirm_state new_state);
812void crm_battery_powered_domain_reset(confirm_state new_state);
813void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range);
814void crm_sysclk_switch(crm_sclk_type value);
815 crm_sclk_type crm_sysclk_switch_status_get(void);
816void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct);
817void crm_clock_out_set(crm_clkout_select_type clkout);
818void crm_interrupt_enable(uint32_t crm_int, confirm_state new_state);
819
832#ifdef __cplusplus
833}
834#endif
835
836#endif
at32f403.h
at32f403 header file
crm_periph_sleep_mode_clock_enable
void crm_periph_sleep_mode_clock_enable(crm_periph_clock_sleepmd_type value, confirm_state new_state)
enable or disable the peripheral clock in sleep mode
Definition: at32f403_crm.c:326
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hick_clock_calibration_set
void crm_hick_clock_calibration_set(uint8_t cali_value)
set the crm calibration value
Definition: at32f403_crm.c:237
crm_rtc_clock_select
void crm_rtc_clock_select(crm_rtc_clock_type value)
select rtc clock
Definition: at32f403_crm.c:444
crm_rtc_clock_enable
void crm_rtc_clock_enable(confirm_state new_state)
enable or disable rtc
Definition: at32f403_crm.c:454
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_interrupt_enable
void crm_interrupt_enable(uint32_t crm_int, confirm_state new_state)
config crm interrupt
Definition: at32f403_crm.c:768
crm_flag_clear
void crm_flag_clear(uint32_t flag)
clear the crm reset flags
Definition: at32f403_crm.c:398
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_lext_bypass
void crm_lext_bypass(confirm_state new_state)
enable or disable crm low speed external crystal bypass
Definition: at32f403_crm.c:84
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_interrupt_flag_get
flag_status crm_interrupt_flag_get(uint32_t flag)
get crm interrupt flag status
Definition: at32f403_crm.c:149
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_clock_out_set
void crm_clock_out_set(crm_clkout_select_type clkout)
set crm clkout
Definition: at32f403_crm.c:750
crm_clock_failure_detection_enable
void crm_clock_failure_detection_enable(confirm_state new_state)
enable or disable clock failure detection
Definition: at32f403_crm.c:555
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_hick_clock_trimming_set
void crm_hick_clock_trimming_set(uint8_t trim_value)
set the hick trimming value
Definition: at32f403_crm.c:227
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
crm_battery_powered_domain_reset
void crm_battery_powered_domain_reset(confirm_state new_state)
battery powered domain software reset
Definition: at32f403_crm.c:565
crm_hext_bypass
void crm_hext_bypass(confirm_state new_state)
enable or disable crm high speed external crystal bypass
Definition: at32f403_crm.c:94
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
crm_periph_clock_type
crm_periph_clock_type
crm periph clock
Definition: at32f403_crm.h:100
crm_apb1_div_type
crm_apb1_div_type
crm apb1 division
Definition: at32f403_crm.h:343
crm_clock_source_type
crm_clock_source_type
crm clock source
Definition: at32f403_crm.h:315
crm_usb_div_type
crm_usb_div_type
crm usb division
Definition: at32f403_crm.h:380
crm_usb_clock_source_type
crm_usb_clock_source_type
crm usb 48 mhz clock source select
Definition: at32f403_crm.h:441
crm_periph_clock_sleepmd_type
crm_periph_clock_sleepmd_type
crm periph clock in sleep mode
Definition: at32f403_crm.h:216
crm_pll_clock_source_type
crm_pll_clock_source_type
crm pll clock source
Definition: at32f403_crm.h:296
crm_pll_mult_type
crm_pll_mult_type
crm pll mult_x
Definition: at32f403_crm.h:226
crm_ahb_div_type
crm_ahb_div_type
crm ahb division
Definition: at32f403_crm.h:327
crm_rtc_clock_type
crm_rtc_clock_type
crm rtc clock
Definition: at32f403_crm.h:394
crm_adc_div_type
crm_adc_div_type
crm adc division
Definition: at32f403_crm.h:367
crm_usb_int_map_type
crm_usb_int_map_type
crm usbdev interrupt remap
Definition: at32f403_crm.h:432
crm_clkout_select_type
crm_clkout_select_type
crm clkout select
Definition: at32f403_crm.h:415
crm_sclk_type
crm_sclk_type
crm sclk select
Definition: at32f403_crm.h:405
crm_periph_reset_type
crm_periph_reset_type
crm periph reset
Definition: at32f403_crm.h:161
crm_apb2_div_type
crm_apb2_div_type
crm apb2 division
Definition: at32f403_crm.h:355
crm_pll_output_range_type
crm_pll_output_range_type
crm pll clock output range
Definition: at32f403_crm.h:306
CRM_SDIO1_PERIPH_CLOCK
@ CRM_SDIO1_PERIPH_CLOCK
Definition: at32f403_crm.h:106
CRM_TMR10_PERIPH_CLOCK
@ CRM_TMR10_PERIPH_CLOCK
Definition: at32f403_crm.h:126
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_TMR6_PERIPH_CLOCK
@ CRM_TMR6_PERIPH_CLOCK
Definition: at32f403_crm.h:133
CRM_DAC_PERIPH_CLOCK
@ CRM_DAC_PERIPH_CLOCK
Definition: at32f403_crm.h:153
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOF_PERIPH_CLOCK
@ CRM_GPIOF_PERIPH_CLOCK
Definition: at32f403_crm.h:115
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_UART5_PERIPH_CLOCK
@ CRM_UART5_PERIPH_CLOCK
Definition: at32f403_crm.h:145
CRM_TMR14_PERIPH_CLOCK
@ CRM_TMR14_PERIPH_CLOCK
Definition: at32f403_crm.h:137
CRM_SPI4_PERIPH_CLOCK
@ CRM_SPI4_PERIPH_CLOCK
Definition: at32f403_crm.h:141
CRM_TMR13_PERIPH_CLOCK
@ CRM_TMR13_PERIPH_CLOCK
Definition: at32f403_crm.h:136
CRM_SPI3_PERIPH_CLOCK
@ CRM_SPI3_PERIPH_CLOCK
Definition: at32f403_crm.h:140
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
CRM_TMR9_PERIPH_CLOCK
@ CRM_TMR9_PERIPH_CLOCK
Definition: at32f403_crm.h:125
CRM_USART3_PERIPH_CLOCK
@ CRM_USART3_PERIPH_CLOCK
Definition: at32f403_crm.h:143
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_I2C1_PERIPH_CLOCK
@ CRM_I2C1_PERIPH_CLOCK
Definition: at32f403_crm.h:146
CRM_TMR4_PERIPH_CLOCK
@ CRM_TMR4_PERIPH_CLOCK
Definition: at32f403_crm.h:131
CRM_TMR12_PERIPH_CLOCK
@ CRM_TMR12_PERIPH_CLOCK
Definition: at32f403_crm.h:135
CRM_GPIOG_PERIPH_CLOCK
@ CRM_GPIOG_PERIPH_CLOCK
Definition: at32f403_crm.h:116
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_CRC_PERIPH_CLOCK
@ CRM_CRC_PERIPH_CLOCK
Definition: at32f403_crm.h:104
CRM_SDIO2_PERIPH_CLOCK
@ CRM_SDIO2_PERIPH_CLOCK
Definition: at32f403_crm.h:107
CRM_I2C3_PERIPH_CLOCK
@ CRM_I2C3_PERIPH_CLOCK
Definition: at32f403_crm.h:150
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_TMR8_PERIPH_CLOCK
@ CRM_TMR8_PERIPH_CLOCK
Definition: at32f403_crm.h:121
CRM_TMR7_PERIPH_CLOCK
@ CRM_TMR7_PERIPH_CLOCK
Definition: at32f403_crm.h:134
CRM_USART1_PERIPH_CLOCK
@ CRM_USART1_PERIPH_CLOCK
Definition: at32f403_crm.h:122
CRM_ADC3_PERIPH_CLOCK
@ CRM_ADC3_PERIPH_CLOCK
Definition: at32f403_crm.h:123
CRM_UART4_PERIPH_CLOCK
@ CRM_UART4_PERIPH_CLOCK
Definition: at32f403_crm.h:144
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_CAN1_PERIPH_CLOCK
@ CRM_CAN1_PERIPH_CLOCK
Definition: at32f403_crm.h:149
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_I2C2_PERIPH_CLOCK
@ CRM_I2C2_PERIPH_CLOCK
Definition: at32f403_crm.h:147
CRM_DMA2_PERIPH_CLOCK
@ CRM_DMA2_PERIPH_CLOCK
Definition: at32f403_crm.h:103
CRM_TMR5_PERIPH_CLOCK
@ CRM_TMR5_PERIPH_CLOCK
Definition: at32f403_crm.h:132
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
CRM_TMR11_PERIPH_CLOCK
@ CRM_TMR11_PERIPH_CLOCK
Definition: at32f403_crm.h:127
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
CRM_WWDT_PERIPH_CLOCK
@ CRM_WWDT_PERIPH_CLOCK
Definition: at32f403_crm.h:138
CRM_TMR15_PERIPH_CLOCK
@ CRM_TMR15_PERIPH_CLOCK
Definition: at32f403_crm.h:124
CRM_ADC2_PERIPH_CLOCK
@ CRM_ADC2_PERIPH_CLOCK
Definition: at32f403_crm.h:118
CRM_APB1_DIV_8
@ CRM_APB1_DIV_8
Definition: at32f403_crm.h:347
CRM_APB1_DIV_4
@ CRM_APB1_DIV_4
Definition: at32f403_crm.h:346
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_APB1_DIV_16
@ CRM_APB1_DIV_16
Definition: at32f403_crm.h:348
CRM_APB1_DIV_1
@ CRM_APB1_DIV_1
Definition: at32f403_crm.h:344
CRM_CLOCK_SOURCE_HICK
@ CRM_CLOCK_SOURCE_HICK
Definition: at32f403_crm.h:316
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_LEXT
@ CRM_CLOCK_SOURCE_LEXT
Definition: at32f403_crm.h:319
CRM_CLOCK_SOURCE_LICK
@ CRM_CLOCK_SOURCE_LICK
Definition: at32f403_crm.h:320
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
CRM_USB_CLOCK_SOURCE_HICK
@ CRM_USB_CLOCK_SOURCE_HICK
Definition: at32f403_crm.h:443
CRM_USB_CLOCK_SOURCE_PLL
@ CRM_USB_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:442
CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE
@ CRM_FLASH_PERIPH_CLOCK_SLEEP_MODE
Definition: at32f403_crm.h:219
CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE
@ CRM_SRAM_PERIPH_CLOCK_SLEEP_MODE
Definition: at32f403_crm.h:218
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_SOURCE_HEXT
@ CRM_PLL_SOURCE_HEXT
Definition: at32f403_crm.h:298
CRM_PLL_SOURCE_HICK
@ CRM_PLL_SOURCE_HICK
Definition: at32f403_crm.h:297
CRM_PLL_MULT_17
@ CRM_PLL_MULT_17
Definition: at32f403_crm.h:242
CRM_PLL_MULT_24
@ CRM_PLL_MULT_24
Definition: at32f403_crm.h:249
CRM_PLL_MULT_53
@ CRM_PLL_MULT_53
Definition: at32f403_crm.h:278
CRM_PLL_MULT_61
@ CRM_PLL_MULT_61
Definition: at32f403_crm.h:286
CRM_PLL_MULT_27
@ CRM_PLL_MULT_27
Definition: at32f403_crm.h:252
CRM_PLL_MULT_50
@ CRM_PLL_MULT_50
Definition: at32f403_crm.h:275
CRM_PLL_MULT_41
@ CRM_PLL_MULT_41
Definition: at32f403_crm.h:266
CRM_PLL_MULT_56
@ CRM_PLL_MULT_56
Definition: at32f403_crm.h:281
CRM_PLL_MULT_11
@ CRM_PLL_MULT_11
Definition: at32f403_crm.h:236
CRM_PLL_MULT_37
@ CRM_PLL_MULT_37
Definition: at32f403_crm.h:262
CRM_PLL_MULT_63
@ CRM_PLL_MULT_63
Definition: at32f403_crm.h:288
CRM_PLL_MULT_18
@ CRM_PLL_MULT_18
Definition: at32f403_crm.h:243
CRM_PLL_MULT_9
@ CRM_PLL_MULT_9
Definition: at32f403_crm.h:234
CRM_PLL_MULT_4
@ CRM_PLL_MULT_4
Definition: at32f403_crm.h:229
CRM_PLL_MULT_35
@ CRM_PLL_MULT_35
Definition: at32f403_crm.h:260
CRM_PLL_MULT_14
@ CRM_PLL_MULT_14
Definition: at32f403_crm.h:239
CRM_PLL_MULT_28
@ CRM_PLL_MULT_28
Definition: at32f403_crm.h:253
CRM_PLL_MULT_62
@ CRM_PLL_MULT_62
Definition: at32f403_crm.h:287
CRM_PLL_MULT_20
@ CRM_PLL_MULT_20
Definition: at32f403_crm.h:245
CRM_PLL_MULT_47
@ CRM_PLL_MULT_47
Definition: at32f403_crm.h:272
CRM_PLL_MULT_32
@ CRM_PLL_MULT_32
Definition: at32f403_crm.h:257
CRM_PLL_MULT_58
@ CRM_PLL_MULT_58
Definition: at32f403_crm.h:283
CRM_PLL_MULT_10
@ CRM_PLL_MULT_10
Definition: at32f403_crm.h:235
CRM_PLL_MULT_44
@ CRM_PLL_MULT_44
Definition: at32f403_crm.h:269
CRM_PLL_MULT_5
@ CRM_PLL_MULT_5
Definition: at32f403_crm.h:230
CRM_PLL_MULT_34
@ CRM_PLL_MULT_34
Definition: at32f403_crm.h:259
CRM_PLL_MULT_15
@ CRM_PLL_MULT_15
Definition: at32f403_crm.h:240
CRM_PLL_MULT_39
@ CRM_PLL_MULT_39
Definition: at32f403_crm.h:264
CRM_PLL_MULT_13
@ CRM_PLL_MULT_13
Definition: at32f403_crm.h:238
CRM_PLL_MULT_45
@ CRM_PLL_MULT_45
Definition: at32f403_crm.h:270
CRM_PLL_MULT_12
@ CRM_PLL_MULT_12
Definition: at32f403_crm.h:237
CRM_PLL_MULT_33
@ CRM_PLL_MULT_33
Definition: at32f403_crm.h:258
CRM_PLL_MULT_64
@ CRM_PLL_MULT_64
Definition: at32f403_crm.h:289
CRM_PLL_MULT_31
@ CRM_PLL_MULT_31
Definition: at32f403_crm.h:256
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_PLL_MULT_19
@ CRM_PLL_MULT_19
Definition: at32f403_crm.h:244
CRM_PLL_MULT_29
@ CRM_PLL_MULT_29
Definition: at32f403_crm.h:254
CRM_PLL_MULT_49
@ CRM_PLL_MULT_49
Definition: at32f403_crm.h:274
CRM_PLL_MULT_3
@ CRM_PLL_MULT_3
Definition: at32f403_crm.h:228
CRM_PLL_MULT_36
@ CRM_PLL_MULT_36
Definition: at32f403_crm.h:261
CRM_PLL_MULT_21
@ CRM_PLL_MULT_21
Definition: at32f403_crm.h:246
CRM_PLL_MULT_40
@ CRM_PLL_MULT_40
Definition: at32f403_crm.h:265
CRM_PLL_MULT_46
@ CRM_PLL_MULT_46
Definition: at32f403_crm.h:271
CRM_PLL_MULT_59
@ CRM_PLL_MULT_59
Definition: at32f403_crm.h:284
CRM_PLL_MULT_2
@ CRM_PLL_MULT_2
Definition: at32f403_crm.h:227
CRM_PLL_MULT_54
@ CRM_PLL_MULT_54
Definition: at32f403_crm.h:279
CRM_PLL_MULT_7
@ CRM_PLL_MULT_7
Definition: at32f403_crm.h:232
CRM_PLL_MULT_25
@ CRM_PLL_MULT_25
Definition: at32f403_crm.h:250
CRM_PLL_MULT_22
@ CRM_PLL_MULT_22
Definition: at32f403_crm.h:247
CRM_PLL_MULT_51
@ CRM_PLL_MULT_51
Definition: at32f403_crm.h:276
CRM_PLL_MULT_57
@ CRM_PLL_MULT_57
Definition: at32f403_crm.h:282
CRM_PLL_MULT_43
@ CRM_PLL_MULT_43
Definition: at32f403_crm.h:268
CRM_PLL_MULT_55
@ CRM_PLL_MULT_55
Definition: at32f403_crm.h:280
CRM_PLL_MULT_42
@ CRM_PLL_MULT_42
Definition: at32f403_crm.h:267
CRM_PLL_MULT_23
@ CRM_PLL_MULT_23
Definition: at32f403_crm.h:248
CRM_PLL_MULT_38
@ CRM_PLL_MULT_38
Definition: at32f403_crm.h:263
CRM_PLL_MULT_16
@ CRM_PLL_MULT_16
Definition: at32f403_crm.h:241
CRM_PLL_MULT_30
@ CRM_PLL_MULT_30
Definition: at32f403_crm.h:255
CRM_PLL_MULT_52
@ CRM_PLL_MULT_52
Definition: at32f403_crm.h:277
CRM_PLL_MULT_6
@ CRM_PLL_MULT_6
Definition: at32f403_crm.h:231
CRM_PLL_MULT_26
@ CRM_PLL_MULT_26
Definition: at32f403_crm.h:251
CRM_PLL_MULT_8
@ CRM_PLL_MULT_8
Definition: at32f403_crm.h:233
CRM_PLL_MULT_60
@ CRM_PLL_MULT_60
Definition: at32f403_crm.h:285
CRM_AHB_DIV_4
@ CRM_AHB_DIV_4
Definition: at32f403_crm.h:330
CRM_AHB_DIV_16
@ CRM_AHB_DIV_16
Definition: at32f403_crm.h:332
CRM_AHB_DIV_64
@ CRM_AHB_DIV_64
Definition: at32f403_crm.h:333
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_512
@ CRM_AHB_DIV_512
Definition: at32f403_crm.h:336
CRM_AHB_DIV_128
@ CRM_AHB_DIV_128
Definition: at32f403_crm.h:334
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_256
@ CRM_AHB_DIV_256
Definition: at32f403_crm.h:335
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_RTC_CLOCK_HEXT_DIV
@ CRM_RTC_CLOCK_HEXT_DIV
Definition: at32f403_crm.h:398
CRM_RTC_CLOCK_LICK
@ CRM_RTC_CLOCK_LICK
Definition: at32f403_crm.h:397
CRM_RTC_CLOCK_LEXT
@ CRM_RTC_CLOCK_LEXT
Definition: at32f403_crm.h:396
CRM_RTC_CLOCK_NOCLK
@ CRM_RTC_CLOCK_NOCLK
Definition: at32f403_crm.h:395
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
CRM_ADC_DIV_16
@ CRM_ADC_DIV_16
Definition: at32f403_crm.h:373
CRM_ADC_DIV_4
@ CRM_ADC_DIV_4
Definition: at32f403_crm.h:369
CRM_ADC_DIV_12
@ CRM_ADC_DIV_12
Definition: at32f403_crm.h:372
CRM_ADC_DIV_2
@ CRM_ADC_DIV_2
Definition: at32f403_crm.h:368
CRM_ADC_DIV_8
@ CRM_ADC_DIV_8
Definition: at32f403_crm.h:371
CRM_USB_INT73_INT74
@ CRM_USB_INT73_INT74
Definition: at32f403_crm.h:434
CRM_USB_INT19_INT20
@ CRM_USB_INT19_INT20
Definition: at32f403_crm.h:433
CRM_CLKOUT_NOCLK
@ CRM_CLKOUT_NOCLK
Definition: at32f403_crm.h:416
CRM_CLKOUT_HICK
@ CRM_CLKOUT_HICK
Definition: at32f403_crm.h:420
CRM_CLKOUT_USB
@ CRM_CLKOUT_USB
Definition: at32f403_crm.h:424
CRM_CLKOUT_LICK
@ CRM_CLKOUT_LICK
Definition: at32f403_crm.h:417
CRM_CLKOUT_PLL_DIV_2
@ CRM_CLKOUT_PLL_DIV_2
Definition: at32f403_crm.h:422
CRM_CLKOUT_ADC
@ CRM_CLKOUT_ADC
Definition: at32f403_crm.h:425
CRM_CLKOUT_LEXT
@ CRM_CLKOUT_LEXT
Definition: at32f403_crm.h:418
CRM_CLKOUT_SCLK
@ CRM_CLKOUT_SCLK
Definition: at32f403_crm.h:419
CRM_CLKOUT_PLL_DIV_4
@ CRM_CLKOUT_PLL_DIV_4
Definition: at32f403_crm.h:423
CRM_CLKOUT_HEXT
@ CRM_CLKOUT_HEXT
Definition: at32f403_crm.h:421
CRM_SCLK_HICK
@ CRM_SCLK_HICK
Definition: at32f403_crm.h:406
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_SCLK_HEXT
@ CRM_SCLK_HEXT
Definition: at32f403_crm.h:407
CRM_DAC_PERIPH_RESET
@ CRM_DAC_PERIPH_RESET
Definition: at32f403_crm.h:208
CRM_TMR2_PERIPH_RESET
@ CRM_TMR2_PERIPH_RESET
Definition: at32f403_crm.h:184
CRM_TMR4_PERIPH_RESET
@ CRM_TMR4_PERIPH_RESET
Definition: at32f403_crm.h:186
CRM_SPI1_PERIPH_RESET
@ CRM_SPI1_PERIPH_RESET
Definition: at32f403_crm.h:175
CRM_SPI3_PERIPH_RESET
@ CRM_SPI3_PERIPH_RESET
Definition: at32f403_crm.h:195
CRM_I2C3_PERIPH_RESET
@ CRM_I2C3_PERIPH_RESET
Definition: at32f403_crm.h:205
CRM_TMR10_PERIPH_RESET
@ CRM_TMR10_PERIPH_RESET
Definition: at32f403_crm.h:181
CRM_TMR13_PERIPH_RESET
@ CRM_TMR13_PERIPH_RESET
Definition: at32f403_crm.h:191
CRM_I2C2_PERIPH_RESET
@ CRM_I2C2_PERIPH_RESET
Definition: at32f403_crm.h:202
CRM_UART4_PERIPH_RESET
@ CRM_UART4_PERIPH_RESET
Definition: at32f403_crm.h:199
CRM_BPR_PERIPH_RESET
@ CRM_BPR_PERIPH_RESET
Definition: at32f403_crm.h:206
CRM_TMR14_PERIPH_RESET
@ CRM_TMR14_PERIPH_RESET
Definition: at32f403_crm.h:192
CRM_ADC2_PERIPH_RESET
@ CRM_ADC2_PERIPH_RESET
Definition: at32f403_crm.h:173
CRM_TMR15_PERIPH_RESET
@ CRM_TMR15_PERIPH_RESET
Definition: at32f403_crm.h:179
CRM_USART1_PERIPH_RESET
@ CRM_USART1_PERIPH_RESET
Definition: at32f403_crm.h:177
CRM_IOMUX_PERIPH_RESET
@ CRM_IOMUX_PERIPH_RESET
Definition: at32f403_crm.h:163
CRM_GPIOE_PERIPH_RESET
@ CRM_GPIOE_PERIPH_RESET
Definition: at32f403_crm.h:169
CRM_CAN1_PERIPH_RESET
@ CRM_CAN1_PERIPH_RESET
Definition: at32f403_crm.h:204
CRM_TMR5_PERIPH_RESET
@ CRM_TMR5_PERIPH_RESET
Definition: at32f403_crm.h:187
CRM_TMR9_PERIPH_RESET
@ CRM_TMR9_PERIPH_RESET
Definition: at32f403_crm.h:180
CRM_GPIOF_PERIPH_RESET
@ CRM_GPIOF_PERIPH_RESET
Definition: at32f403_crm.h:170
CRM_TMR1_PERIPH_RESET
@ CRM_TMR1_PERIPH_RESET
Definition: at32f403_crm.h:174
CRM_GPIOD_PERIPH_RESET
@ CRM_GPIOD_PERIPH_RESET
Definition: at32f403_crm.h:168
CRM_USART2_PERIPH_RESET
@ CRM_USART2_PERIPH_RESET
Definition: at32f403_crm.h:197
CRM_GPIOC_PERIPH_RESET
@ CRM_GPIOC_PERIPH_RESET
Definition: at32f403_crm.h:167
CRM_SPI4_PERIPH_RESET
@ CRM_SPI4_PERIPH_RESET
Definition: at32f403_crm.h:196
CRM_ADC3_PERIPH_RESET
@ CRM_ADC3_PERIPH_RESET
Definition: at32f403_crm.h:178
CRM_GPIOG_PERIPH_RESET
@ CRM_GPIOG_PERIPH_RESET
Definition: at32f403_crm.h:171
CRM_TMR8_PERIPH_RESET
@ CRM_TMR8_PERIPH_RESET
Definition: at32f403_crm.h:176
CRM_WWDT_PERIPH_RESET
@ CRM_WWDT_PERIPH_RESET
Definition: at32f403_crm.h:193
CRM_UART5_PERIPH_RESET
@ CRM_UART5_PERIPH_RESET
Definition: at32f403_crm.h:200
CRM_ADC1_PERIPH_RESET
@ CRM_ADC1_PERIPH_RESET
Definition: at32f403_crm.h:172
CRM_EXINT_PERIPH_RESET
@ CRM_EXINT_PERIPH_RESET
Definition: at32f403_crm.h:164
CRM_TMR3_PERIPH_RESET
@ CRM_TMR3_PERIPH_RESET
Definition: at32f403_crm.h:185
CRM_USB_PERIPH_RESET
@ CRM_USB_PERIPH_RESET
Definition: at32f403_crm.h:203
CRM_TMR7_PERIPH_RESET
@ CRM_TMR7_PERIPH_RESET
Definition: at32f403_crm.h:189
CRM_SPI2_PERIPH_RESET
@ CRM_SPI2_PERIPH_RESET
Definition: at32f403_crm.h:194
CRM_TMR12_PERIPH_RESET
@ CRM_TMR12_PERIPH_RESET
Definition: at32f403_crm.h:190
CRM_PWC_PERIPH_RESET
@ CRM_PWC_PERIPH_RESET
Definition: at32f403_crm.h:207
CRM_GPIOA_PERIPH_RESET
@ CRM_GPIOA_PERIPH_RESET
Definition: at32f403_crm.h:165
CRM_TMR11_PERIPH_RESET
@ CRM_TMR11_PERIPH_RESET
Definition: at32f403_crm.h:182
CRM_USART3_PERIPH_RESET
@ CRM_USART3_PERIPH_RESET
Definition: at32f403_crm.h:198
CRM_GPIOB_PERIPH_RESET
@ CRM_GPIOB_PERIPH_RESET
Definition: at32f403_crm.h:166
CRM_I2C1_PERIPH_RESET
@ CRM_I2C1_PERIPH_RESET
Definition: at32f403_crm.h:201
CRM_TMR6_PERIPH_RESET
@ CRM_TMR6_PERIPH_RESET
Definition: at32f403_crm.h:188
CRM_APB2_DIV_4
@ CRM_APB2_DIV_4
Definition: at32f403_crm.h:358
CRM_APB2_DIV_1
@ CRM_APB2_DIV_1
Definition: at32f403_crm.h:356
CRM_APB2_DIV_16
@ CRM_APB2_DIV_16
Definition: at32f403_crm.h:360
CRM_APB2_DIV_8
@ CRM_APB2_DIV_8
Definition: at32f403_crm.h:359
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_LE72MHZ
@ CRM_PLL_OUTPUT_RANGE_LE72MHZ
Definition: at32f403_crm.h:307
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
MAKE_VALUE
#define MAKE_VALUE(reg_offset, bit_num)
Definition: at32f403.h:328
error_status
error_status
error status
Definition: at32f403.h:314
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::adc_freq
uint32_t adc_freq
Definition: at32f403_crm.h:455
crm_clocks_freq_type::apb1_freq
uint32_t apb1_freq
Definition: at32f403_crm.h:454
crm_clocks_freq_type::apb2_freq
uint32_t apb2_freq
Definition: at32f403_crm.h:453
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
crm_clocks_freq_type::ahb_freq
uint32_t ahb_freq
Definition: at32f403_crm.h:452
crm_type
type define crm register all
Definition: at32f403_crm.h:462
crm_type::misc1
__IO uint32_t misc1
Definition: at32f403_crm.h:767
crm_type::lickstblien
__IO uint32_t lickstblien
Definition: at32f403_crm.h:528
crm_type::uart4en
__IO uint32_t uart4en
Definition: at32f403_crm.h:700
crm_type::usart1en
__IO uint32_t usart1en
Definition: at32f403_crm.h:664
crm_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_crm.h:468
crm_type::adc2en
__IO uint32_t adc2en
Definition: at32f403_crm.h:660
crm_type::apb2en
__IO uint32_t apb2en
Definition: at32f403_crm.h:647
crm_type::i2c3en
__IO uint32_t i2c3en
Definition: at32f403_crm.h:707
crm_type::tmr14en
__IO uint32_t tmr14en
Definition: at32f403_crm.h:691
crm_type::apb1rst
__IO uint32_t apb1rst
Definition: at32f403_crm.h:583
crm_type::uart4rst
__IO uint32_t uart4rst
Definition: at32f403_crm.h:603
crm_type::adc3en
__IO uint32_t adc3en
Definition: at32f403_crm.h:665
crm_type::tmr11rst
__IO uint32_t tmr11rst
Definition: at32f403_crm.h:573
crm_type::gpioeen
__IO uint32_t gpioeen
Definition: at32f403_crm.h:656
crm_type::i2c2rst
__IO uint32_t i2c2rst
Definition: at32f403_crm.h:606
crm_type::apb2rst
__IO uint32_t apb2rst
Definition: at32f403_crm.h:550
crm_type::adc1rst
__IO uint32_t adc1rst
Definition: at32f403_crm.h:562
crm_type::adcdiv_h
__IO uint32_t adcdiv_h
Definition: at32f403_crm.h:507
crm_type::cfdf
__IO uint32_t cfdf
Definition: at32f403_crm.h:527
crm_type::gpioerst
__IO uint32_t gpioerst
Definition: at32f403_crm.h:559
crm_type::pllmult_l
__IO uint32_t pllmult_l
Definition: at32f403_crm.h:503
crm_type::reserved5
__IO uint32_t reserved5
Definition: at32f403_crm.h:638
crm_type::tmr3en
__IO uint32_t tmr3en
Definition: at32f403_crm.h:684
crm_type::usart2rst
__IO uint32_t usart2rst
Definition: at32f403_crm.h:601
crm_type::tmr3rst
__IO uint32_t tmr3rst
Definition: at32f403_crm.h:587
crm_type::spi3en
__IO uint32_t spi3en
Definition: at32f403_crm.h:696
crm_type::i2c3rst
__IO uint32_t i2c3rst
Definition: at32f403_crm.h:610
crm_type::tmr13en
__IO uint32_t tmr13en
Definition: at32f403_crm.h:690
crm_type::hexten
__IO uint32_t hexten
Definition: at32f403_crm.h:476
crm_type::tmr7rst
__IO uint32_t tmr7rst
Definition: at32f403_crm.h:591
crm_type::gpiocrst
__IO uint32_t gpiocrst
Definition: at32f403_crm.h:557
crm_type::spi3rst
__IO uint32_t spi3rst
Definition: at32f403_crm.h:599
crm_type::bpdc
__IO uint32_t bpdc
Definition: at32f403_crm.h:720
crm_type::dma1en
__IO uint32_t dma1en
Definition: at32f403_crm.h:626
crm_type::tmr4en
__IO uint32_t tmr4en
Definition: at32f403_crm.h:685
crm_type::usbrst
__IO uint32_t usbrst
Definition: at32f403_crm.h:607
crm_type::tmr1en
__IO uint32_t tmr1en
Definition: at32f403_crm.h:661
crm_type::hickcal_key
__IO uint32_t hickcal_key
Definition: at32f403_crm.h:770
crm_type::pllstblfc
__IO uint32_t pllstblfc
Definition: at32f403_crm.h:538
crm_type::rtcsel
__IO uint32_t rtcsel
Definition: at32f403_crm.h:727
crm_type::uart5en
__IO uint32_t uart5en
Definition: at32f403_crm.h:701
crm_type::pllhextdiv
__IO uint32_t pllhextdiv
Definition: at32f403_crm.h:502
crm_type::tmr6rst
__IO uint32_t tmr6rst
Definition: at32f403_crm.h:590
crm_type::lprstf
__IO uint32_t lprstf
Definition: at32f403_crm.h:753
crm_type::uart5rst
__IO uint32_t uart5rst
Definition: at32f403_crm.h:604
crm_type::hickcal
__IO uint32_t hickcal
Definition: at32f403_crm.h:475
crm_type::sclksel
__IO uint32_t sclksel
Definition: at32f403_crm.h:495
crm_type::gpioben
__IO uint32_t gpioben
Definition: at32f403_crm.h:653
crm_type::tmr11en
__IO uint32_t tmr11en
Definition: at32f403_crm.h:670
crm_type::gpioden
__IO uint32_t gpioden
Definition: at32f403_crm.h:655
crm_type::lextstblfc
__IO uint32_t lextstblfc
Definition: at32f403_crm.h:535
crm_type::reserved1
__IO uint32_t reserved1
crm reserved1 register, offset:0x28~0x2C
Definition: at32f403_crm.h:473
crm_type::usbbufs
__IO uint32_t usbbufs
Definition: at32f403_crm.h:774
crm_type::tmr8en
__IO uint32_t tmr8en
Definition: at32f403_crm.h:663
crm_type::gpiofen
__IO uint32_t gpiofen
Definition: at32f403_crm.h:657
crm_type::dacen
__IO uint32_t dacen
Definition: at32f403_crm.h:710
crm_type::hextbyps
__IO uint32_t hextbyps
Definition: at32f403_crm.h:478
crm_type::tmr7en
__IO uint32_t tmr7en
Definition: at32f403_crm.h:688
crm_type::wdtrstf
__IO uint32_t wdtrstf
Definition: at32f403_crm.h:751
crm_type::bpdrst
__IO uint32_t bpdrst
Definition: at32f403_crm.h:730
crm_type::tmr10en
__IO uint32_t tmr10en
Definition: at32f403_crm.h:669
crm_type::gpiogen
__IO uint32_t gpiogen
Definition: at32f403_crm.h:658
crm_type::usart2en
__IO uint32_t usart2en
Definition: at32f403_crm.h:698
crm_type::lickstbl
__IO uint32_t lickstbl
Definition: at32f403_crm.h:744
crm_type::tmr9rst
__IO uint32_t tmr9rst
Definition: at32f403_crm.h:571
crm_type::tmr8rst
__IO uint32_t tmr8rst
Definition: at32f403_crm.h:566
crm_type::nrstf
__IO uint32_t nrstf
Definition: at32f403_crm.h:748
crm_type::sramen
__IO uint32_t sramen
Definition: at32f403_crm.h:628
crm_type::lickstblfc
__IO uint32_t lickstblfc
Definition: at32f403_crm.h:534
crm_type::tmr12en
__IO uint32_t tmr12en
Definition: at32f403_crm.h:689
crm_type::swrstf
__IO uint32_t swrstf
Definition: at32f403_crm.h:750
crm_type::cfdfc
__IO uint32_t cfdfc
Definition: at32f403_crm.h:540
crm_type::tmr12rst
__IO uint32_t tmr12rst
Definition: at32f403_crm.h:592
crm_type::tmr15rst
__IO uint32_t tmr15rst
Definition: at32f403_crm.h:569
crm_type::gpioarst
__IO uint32_t gpioarst
Definition: at32f403_crm.h:555
crm_type::apb1en
__IO uint32_t apb1en
Definition: at32f403_crm.h:680
crm_type::tmr10rst
__IO uint32_t tmr10rst
Definition: at32f403_crm.h:572
crm_type::rstfc
__IO uint32_t rstfc
Definition: at32f403_crm.h:746
crm_type::tmr1rst
__IO uint32_t tmr1rst
Definition: at32f403_crm.h:564
crm_type::tmr5en
__IO uint32_t tmr5en
Definition: at32f403_crm.h:686
crm_type::hextstbl
__IO uint32_t hextstbl
Definition: at32f403_crm.h:477
crm_type::usart1rst
__IO uint32_t usart1rst
Definition: at32f403_crm.h:567
crm_type::tmr13rst
__IO uint32_t tmr13rst
Definition: at32f403_crm.h:593
crm_type::gpioaen
__IO uint32_t gpioaen
Definition: at32f403_crm.h:652
crm_type::spi2rst
__IO uint32_t spi2rst
Definition: at32f403_crm.h:598
crm_type::spi1rst
__IO uint32_t spi1rst
Definition: at32f403_crm.h:565
crm_type::cfg
__IO uint32_t cfg
Definition: at32f403_crm.h:492
crm_type::dacrst
__IO uint32_t dacrst
Definition: at32f403_crm.h:613
crm_type::i2c1rst
__IO uint32_t i2c1rst
Definition: at32f403_crm.h:605
crm_type::licken
__IO uint32_t licken
Definition: at32f403_crm.h:743
crm_type::pllrcs
__IO uint32_t pllrcs
Definition: at32f403_crm.h:501
crm_type::tmr9en
__IO uint32_t tmr9en
Definition: at32f403_crm.h:668
crm_type::hickstblfc
__IO uint32_t hickstblfc
Definition: at32f403_crm.h:536
crm_type::gpiofrst
__IO uint32_t gpiofrst
Definition: at32f403_crm.h:560
crm_type::tmr6en
__IO uint32_t tmr6en
Definition: at32f403_crm.h:687
crm_type::hickstblien
__IO uint32_t hickstblien
Definition: at32f403_crm.h:530
crm_type::tmr15en
__IO uint32_t tmr15en
Definition: at32f403_crm.h:666
crm_type::pllstblf
__IO uint32_t pllstblf
Definition: at32f403_crm.h:525
crm_type::hicktrim
__IO uint32_t hicktrim
Definition: at32f403_crm.h:474
crm_type::sdio1en
__IO uint32_t sdio1en
Definition: at32f403_crm.h:636
crm_type::ahben
__IO uint32_t ahben
Definition: at32f403_crm.h:623
crm_type::pllmult_h
__IO uint32_t pllmult_h
Definition: at32f403_crm.h:508
crm_type::wwdten
__IO uint32_t wwdten
Definition: at32f403_crm.h:693
crm_type::flashen
__IO uint32_t flashen
Definition: at32f403_crm.h:630
crm_type::xmcen
__IO uint32_t xmcen
Definition: at32f403_crm.h:634
crm_type::usart3rst
__IO uint32_t usart3rst
Definition: at32f403_crm.h:602
crm_type::gpiocen
__IO uint32_t gpiocen
Definition: at32f403_crm.h:654
crm_type::iomuxen
__IO uint32_t iomuxen
Definition: at32f403_crm.h:650
crm_type::usben
__IO uint32_t usben
Definition: at32f403_crm.h:704
crm_type::usbdiv_h
__IO uint32_t usbdiv_h
Definition: at32f403_crm.h:506
crm_type::spi4rst
__IO uint32_t spi4rst
Definition: at32f403_crm.h:600
crm_type::lextstblf
__IO uint32_t lextstblf
Definition: at32f403_crm.h:522
crm_type::rtcen
__IO uint32_t rtcen
Definition: at32f403_crm.h:729
crm_type::pwcrst
__IO uint32_t pwcrst
Definition: at32f403_crm.h:612
crm_type::apb2div
__IO uint32_t apb2div
Definition: at32f403_crm.h:499
crm_type::wwdtrst
__IO uint32_t wwdtrst
Definition: at32f403_crm.h:596
crm_type::usart3en
__IO uint32_t usart3en
Definition: at32f403_crm.h:699
crm_type::tmr2rst
__IO uint32_t tmr2rst
Definition: at32f403_crm.h:586
crm_type::adc1en
__IO uint32_t adc1en
Definition: at32f403_crm.h:659
crm_type::pllstbl
__IO uint32_t pllstbl
Definition: at32f403_crm.h:482
crm_type::pllstblien
__IO uint32_t pllstblien
Definition: at32f403_crm.h:532
crm_type::can1rst
__IO uint32_t can1rst
Definition: at32f403_crm.h:609
crm_type::can1en
__IO uint32_t can1en
Definition: at32f403_crm.h:706
crm_type::adc2rst
__IO uint32_t adc2rst
Definition: at32f403_crm.h:563
crm_type::exintrst
__IO uint32_t exintrst
Definition: at32f403_crm.h:554
crm_type::lextbyps
__IO uint32_t lextbyps
Definition: at32f403_crm.h:725
crm_type::lextstbl
__IO uint32_t lextstbl
Definition: at32f403_crm.h:724
crm_type::tmr14rst
__IO uint32_t tmr14rst
Definition: at32f403_crm.h:594
crm_type::usbdiv_l
__IO uint32_t usbdiv_l
Definition: at32f403_crm.h:504
crm_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_crm.h:483
crm_type::crcen
__IO uint32_t crcen
Definition: at32f403_crm.h:632
crm_type::tmr2en
__IO uint32_t tmr2en
Definition: at32f403_crm.h:683
crm_type::adc3rst
__IO uint32_t adc3rst
Definition: at32f403_crm.h:568
crm_type::sclksts
__IO uint32_t sclksts
Definition: at32f403_crm.h:496
crm_type::i2c1en
__IO uint32_t i2c1en
Definition: at32f403_crm.h:702
crm_type::hextstblien
__IO uint32_t hextstblien
Definition: at32f403_crm.h:531
crm_type::gpiodrst
__IO uint32_t gpiodrst
Definition: at32f403_crm.h:558
crm_type::ctrlsts
__IO uint32_t ctrlsts
Definition: at32f403_crm.h:740
crm_type::gpiogrst
__IO uint32_t gpiogrst
Definition: at32f403_crm.h:561
crm_type::bpren
__IO uint32_t bpren
Definition: at32f403_crm.h:708
crm_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_crm.h:480
crm_type::reserved4
__IO uint32_t reserved4
Definition: at32f403_crm.h:541
crm_type::wwdtrstf
__IO uint32_t wwdtrstf
Definition: at32f403_crm.h:752
crm_type::porrstf
__IO uint32_t porrstf
Definition: at32f403_crm.h:749
crm_type::spi4en
__IO uint32_t spi4en
Definition: at32f403_crm.h:697
crm_type::pllrange
__IO uint32_t pllrange
Definition: at32f403_crm.h:509
crm_type::hextstblfc
__IO uint32_t hextstblfc
Definition: at32f403_crm.h:537
crm_type::sdio2en
__IO uint32_t sdio2en
Definition: at32f403_crm.h:637
crm_type::tmr4rst
__IO uint32_t tmr4rst
Definition: at32f403_crm.h:588
crm_type::bprrst
__IO uint32_t bprrst
Definition: at32f403_crm.h:611
crm_type::iomuxrst
__IO uint32_t iomuxrst
Definition: at32f403_crm.h:553
crm_type::cfden
__IO uint32_t cfden
Definition: at32f403_crm.h:479
crm_type::adcdiv_l
__IO uint32_t adcdiv_l
Definition: at32f403_crm.h:500
crm_type::apb1div
__IO uint32_t apb1div
Definition: at32f403_crm.h:498
crm_type::pwcen
__IO uint32_t pwcen
Definition: at32f403_crm.h:709
crm_type::lextstblien
__IO uint32_t lextstblien
Definition: at32f403_crm.h:529
crm_type::lickstblf
__IO uint32_t lickstblf
Definition: at32f403_crm.h:521
crm_type::clkout_sel
__IO uint32_t clkout_sel
Definition: at32f403_crm.h:505
crm_type::hicken
__IO uint32_t hicken
Definition: at32f403_crm.h:471
crm_type::lexten
__IO uint32_t lexten
Definition: at32f403_crm.h:723
crm_type::hickstbl
__IO uint32_t hickstbl
Definition: at32f403_crm.h:472
crm_type::i2c2en
__IO uint32_t i2c2en
Definition: at32f403_crm.h:703
crm_type::spi1en
__IO uint32_t spi1en
Definition: at32f403_crm.h:662
crm_type::dma2en
__IO uint32_t dma2en
Definition: at32f403_crm.h:627
crm_type::hextstblf
__IO uint32_t hextstblf
Definition: at32f403_crm.h:524
crm_type::spi2en
__IO uint32_t spi2en
Definition: at32f403_crm.h:695
crm_type::gpiobrst
__IO uint32_t gpiobrst
Definition: at32f403_crm.h:556
crm_type::pllen
__IO uint32_t pllen
Definition: at32f403_crm.h:481
crm_type::tmr5rst
__IO uint32_t tmr5rst
Definition: at32f403_crm.h:589
crm_type::hickstblf
__IO uint32_t hickstblf
Definition: at32f403_crm.h:523
crm_type::clkint
__IO uint32_t clkint
Definition: at32f403_crm.h:518
crm_type::ahbdiv
__IO uint32_t ahbdiv
Definition: at32f403_crm.h:497


AT32F403 Firmwary Library: at32f403_dac.c Source File

  • libraries
  • drivers
  • src
at32f403_dac.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef DAC_MODULE_ENABLED
37
47void dac_reset(void)
48{
49 crm_periph_reset(CRM_DAC_PERIPH_RESET, TRUE);
50 crm_periph_reset(CRM_DAC_PERIPH_RESET, FALSE);
51}
52
62void dac_enable(dac_select_type dac_select, confirm_state new_state)
63{
64 switch(dac_select)
65 {
66 case DAC1_SELECT:
67 DAC->ctrl_bit.d1en = new_state;
68 break;
69 case DAC2_SELECT:
70 DAC->ctrl_bit.d2en = new_state;
71 break;
72 default:
73 break;
74 }
75}
76
86void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
87{
88 new_state = (confirm_state)!new_state;
89 switch(dac_select)
90 {
91 case DAC1_SELECT:
92 DAC->ctrl_bit.d1obdis = new_state;
93 break;
94 case DAC2_SELECT:
95 DAC->ctrl_bit.d2obdis = new_state;
96 break;
97 default:
98 break;
99 }
100}
101
111void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
112{
113 switch(dac_select)
114 {
115 case DAC1_SELECT:
116 DAC->ctrl_bit.d1trgen = new_state;
117 break;
118 case DAC2_SELECT:
119 DAC->ctrl_bit.d2trgen = new_state;
120 break;
121 default:
122 break;
123 }
124}
125
144void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
145{
146 switch(dac_select)
147 {
148 case DAC1_SELECT:
149 DAC->ctrl_bit.d1trgsel = dac_trigger_source;
150 break;
151 case DAC2_SELECT:
152 DAC->ctrl_bit.d2trgsel = dac_trigger_source;
153 break;
154 default:
155 break;
156 }
157}
158
167void dac_software_trigger_generate(dac_select_type dac_select)
168{
169 switch(dac_select)
170 {
171 case DAC1_SELECT:
172 DAC->swtrg_bit.d1swtrg = TRUE;
173 break;
174 case DAC2_SELECT:
175 DAC->swtrg_bit.d2swtrg = TRUE;
176 break;
177 default:
178 break;
179 }
180}
181
187void dac_dual_software_trigger_generate(void)
188{
189 DAC->swtrg |= 0x03;
190}
191
205void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
206{
207 switch(dac_select)
208 {
209 case DAC1_SELECT:
210 DAC->ctrl_bit.d1nm = dac_wave;
211 break;
212 case DAC2_SELECT:
213 DAC->ctrl_bit.d2nm = dac_wave;
214 break;
215 default:
216 break;
217 }
218}
219
242void dac_mask_amplitude_select(dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
243{
244 switch(dac_select)
245 {
246 case DAC1_SELECT:
247 DAC->ctrl_bit.d1nbsel = dac_mask_amplitude;
248 break;
249 case DAC2_SELECT:
250 DAC->ctrl_bit.d2nbsel = dac_mask_amplitude;
251 break;
252 default:
253 break;
254 }
255}
256
266void dac_dma_enable(dac_select_type dac_select, confirm_state new_state)
267{
268 switch(dac_select)
269 {
270 case DAC1_SELECT:
271 DAC->ctrl_bit.d1dmaen = new_state;
272 break;
273 case DAC2_SELECT:
274 DAC->ctrl_bit.d2dmaen = new_state;
275 break;
276 default:
277 break;
278 }
279}
280
289uint16_t dac_data_output_get(dac_select_type dac_select)
290{
291 uint16_t data_output =0 ;
292 switch(dac_select)
293 {
294 case DAC1_SELECT:
295 data_output = DAC->d1odt_bit.d1odt;
296 break;
297 case DAC2_SELECT:
298 data_output = DAC->d2odt_bit.d2odt;
299 break;
300 default:
301 break;
302 }
303 return data_output;
304}
305
316void dac_1_data_set(dac1_aligned_data_type dac1_aligned, uint16_t dac1_data)
317{
318 *(__IO uint32_t *) dac1_aligned = dac1_data;
319}
320
331void dac_2_data_set(dac2_aligned_data_type dac2_aligned, uint16_t dac2_data)
332{
333 *(__IO uint32_t *) dac2_aligned = dac2_data;
334}
335
347void dac_dual_data_set(dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
348{
349 switch(dac_dual)
350 {
351 case DAC_DUAL_12BIT_RIGHT:
352 *(__IO uint32_t *) dac_dual = (uint32_t)(data1 | (data2 << 16));
353 break;
354 case DAC_DUAL_12BIT_LEFT:
355 *(__IO uint32_t *) dac_dual = (uint32_t)(data1 | (data2 << 16));
356 break;
357 case DAC_DUAL_8BIT_RIGHT:
358 *(__IO uint32_t *) dac_dual = (uint32_t)(data1 | (data2 << 8));
359 break;
360 default:
361 break;
362 }
363}
364
365
370#endif
371
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
CRM_DAC_PERIPH_RESET
@ CRM_DAC_PERIPH_RESET
Definition: at32f403_crm.h:208
dac_select_type
dac_select_type
dac select type
Definition: at32f403_dac.h:56
dac1_aligned_data_type
dac1_aligned_data_type
dac1 aligned data type
Definition: at32f403_dac.h:109
dac2_aligned_data_type
dac2_aligned_data_type
dac2 aligned data type
Definition: at32f403_dac.h:119
dac_wave_type
dac_wave_type
dac wave type
Definition: at32f403_dac.h:80
dac_mask_amplitude_type
dac_mask_amplitude_type
dac mask amplitude type
Definition: at32f403_dac.h:90
dac_trigger_type
dac_trigger_type
dac trigger type
Definition: at32f403_dac.h:65
dac_dual_data_type
dac_dual_data_type
dac dual data type
Definition: at32f403_dac.h:129
DAC2_SELECT
@ DAC2_SELECT
Definition: at32f403_dac.h:58
DAC1_SELECT
@ DAC1_SELECT
Definition: at32f403_dac.h:57
DAC_DUAL_12BIT_LEFT
@ DAC_DUAL_12BIT_LEFT
Definition: at32f403_dac.h:131
DAC_DUAL_8BIT_RIGHT
@ DAC_DUAL_8BIT_RIGHT
Definition: at32f403_dac.h:132
DAC_DUAL_12BIT_RIGHT
@ DAC_DUAL_12BIT_RIGHT
Definition: at32f403_dac.h:130
dac_data_output_get
uint16_t dac_data_output_get(dac_select_type dac_select)
get dac data output
Definition: at32f403_dac.c:289
dac_output_buffer_enable
void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer
Definition: at32f403_dac.c:86
dac_reset
void dac_reset(void)
dac reset
Definition: at32f403_dac.c:47
dac_dma_enable
void dac_dma_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma
Definition: at32f403_dac.c:266
dac_1_data_set
void dac_1_data_set(dac1_aligned_data_type dac1_aligned, uint16_t dac1_data)
set dac1 data
Definition: at32f403_dac.c:316
dac_wave_generate
void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave
Definition: at32f403_dac.c:205
dac_software_trigger_generate
void dac_software_trigger_generate(dac_select_type dac_select)
generate dac software trigger
Definition: at32f403_dac.c:167
dac_mask_amplitude_select
void dac_mask_amplitude_select(dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude
Definition: at32f403_dac.c:242
dac_trigger_select
void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger
Definition: at32f403_dac.c:144
dac_enable
void dac_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac
Definition: at32f403_dac.c:62
dac_dual_data_set
void dac_dual_data_set(dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
set dac dual data
Definition: at32f403_dac.c:347
dac_trigger_enable
void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger
Definition: at32f403_dac.c:111
dac_dual_software_trigger_generate
void dac_dual_software_trigger_generate(void)
generate dac dual software trigger synchronously
Definition: at32f403_dac.c:187
dac_2_data_set
void dac_2_data_set(dac2_aligned_data_type dac2_aligned, uint16_t dac2_data)
set dac2 data
Definition: at32f403_dac.c:331
DAC
#define DAC
Definition: at32f403_dac.h:335
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_dac.h Source File

  • libraries
  • drivers
  • inc
at32f403_dac.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_DAC_H
27#define __AT32F403_DAC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
45#define DAC1_D1DMAUDRF ((uint32_t)(0x00002000))
46#define DAC2_D2DMAUDRF ((uint32_t)(0x20000000))
47
55typedef enum
56{
57 DAC1_SELECT = 0x01,
58 DAC2_SELECT = 0x02
59} dac_select_type;
60
64typedef enum
65{
66 DAC_TMR6_TRGOUT_EVENT = 0x00,
67 DAC_TMR8_TRGOUT_EVENT = 0x01,
68 DAC_TMR7_TRGOUT_EVENT = 0x02,
69 DAC_TMR5_TRGOUT_EVENT = 0x03,
70 DAC_TMR2_TRGOUT_EVENT = 0x04,
71 DAC_TMR4_TRGOUT_EVENT = 0x05,
72 DAC_EXTERNAL_INTERRUPT_LINE_9 = 0x06,
73 DAC_SOFTWARE_TRIGGER = 0x07
74} dac_trigger_type;
75
79typedef enum
80{
81 DAC_WAVE_GENERATE_NONE = 0x00,
82 DAC_WAVE_GENERATE_NOISE = 0x01,
83 DAC_WAVE_GENERATE_TRIANGLE = 0x02
84} dac_wave_type;
85
89typedef enum
90{
91 DAC_LSFR_BIT0_AMPLITUDE_1 = 0x00,
92 DAC_LSFR_BIT10_AMPLITUDE_3 = 0x01,
93 DAC_LSFR_BIT20_AMPLITUDE_7 = 0x02,
94 DAC_LSFR_BIT30_AMPLITUDE_15 = 0x03,
95 DAC_LSFR_BIT40_AMPLITUDE_31 = 0x04,
96 DAC_LSFR_BIT50_AMPLITUDE_63 = 0x05,
97 DAC_LSFR_BIT60_AMPLITUDE_127 = 0x06,
98 DAC_LSFR_BIT70_AMPLITUDE_255 = 0x07,
99 DAC_LSFR_BIT80_AMPLITUDE_511 = 0x08,
100 DAC_LSFR_BIT90_AMPLITUDE_1023 = 0x09,
101 DAC_LSFR_BITA0_AMPLITUDE_2047 = 0x0A,
102 DAC_LSFR_BITB0_AMPLITUDE_4095 = 0x0B
103} dac_mask_amplitude_type;
104
108typedef enum
109{
110 DAC1_12BIT_RIGHT = 0x40007408,
111 DAC1_12BIT_LEFT = 0x4000740C,
112 DAC1_8BIT_RIGHT = 0x40007410
113} dac1_aligned_data_type;
114
118typedef enum
119{
120 DAC2_12BIT_RIGHT = 0x40007414,
121 DAC2_12BIT_LEFT = 0x40007418,
122 DAC2_8BIT_RIGHT = 0x4000741C
123} dac2_aligned_data_type;
124
128typedef enum
129{
130 DAC_DUAL_12BIT_RIGHT = 0x40007420,
131 DAC_DUAL_12BIT_LEFT = 0x40007424,
132 DAC_DUAL_8BIT_RIGHT = 0x40007428
133} dac_dual_data_type;
134
138typedef struct
139{
140
144 union
145 {
146 __IO uint32_t ctrl;
147 struct
148 {
149 __IO uint32_t d1en : 1; /* [0] */
150 __IO uint32_t d1obdis : 1; /* [1] */
151 __IO uint32_t d1trgen : 1; /* [2] */
152 __IO uint32_t d1trgsel : 3; /* [5:3] */
153 __IO uint32_t d1nm : 2; /* [7:6] */
154 __IO uint32_t d1nbsel : 4; /* [11:8] */
155 __IO uint32_t d1dmaen : 1; /* [12] */
156 __IO uint32_t reserved1 : 3; /* [15:13] */
157 __IO uint32_t d2en : 1; /* [16] */
158 __IO uint32_t d2obdis : 1; /* [17] */
159 __IO uint32_t d2trgen : 1; /* [18] */
160 __IO uint32_t d2trgsel : 3; /* [21:19] */
161 __IO uint32_t d2nm : 2; /* [23:22] */
162 __IO uint32_t d2nbsel : 4; /* [27:24] */
163 __IO uint32_t d2dmaen : 1; /* [28] */
164 __IO uint32_t reserved2 : 3; /* [31:29] */
165 } ctrl_bit;
166 };
167
171 union
172 {
173 __IO uint32_t swtrg;
174 struct
175 {
176 __IO uint32_t d1swtrg : 1; /* [0] */
177 __IO uint32_t d2swtrg : 1; /* [1] */
178 __IO uint32_t reserved1 : 30;/* [31:2] */
179 } swtrg_bit;
180 };
181
185 union
186 {
187 __IO uint32_t d1dth12r;
188 struct
189 {
190 __IO uint32_t d1dt12r : 12;/* [11:0] */
191 __IO uint32_t reserved1 : 20;/* [31:2] */
192 } d1dth12r_bit;
193 };
194
198 union
199 {
200 __IO uint32_t d1dth12l;
201 struct
202 {
203 __IO uint32_t d1dt12l : 12;/* [11:0] */
204 __IO uint32_t reserved1 : 20;/* [31:2] */
205 } d1dth12l_bit;
206 };
207
211 union
212 {
213 __IO uint32_t d1dth8r;
214 struct
215 {
216 __IO uint32_t d1dt8r : 8; /* [7:0] */
217 __IO uint32_t reserved1 : 24;/* [31:8] */
218 } d1dth8r_bit;
219 };
220
224 union
225 {
226 __IO uint32_t d2dth12r;
227 struct
228 {
229 __IO uint32_t d2dt12r : 12;/* [11:0] */
230 __IO uint32_t reserved1 : 20;/* [31:2] */
231 } d2dth12r_bit;
232 };
233
237 union
238 {
239 __IO uint32_t d2dth12l;
240 struct
241 {
242 __IO uint32_t d2dt12l : 12;/* [11:0] */
243 __IO uint32_t reserved1 : 20;/* [31:2] */
244 } d2dth12l_bit;
245 };
246
250 union
251 {
252 __IO uint32_t d2dth8r;
253 struct
254 {
255 __IO uint32_t d2dt8r : 8; /* [7:0] */
256 __IO uint32_t reserved1 : 24;/* [31:8] */
257 } d2dth8r_bit;
258 };
259
263 union
264 {
265 __IO uint32_t ddth12r;
266 struct
267 {
268 __IO uint32_t dd1dt12r : 12;/* [11:0] */
269 __IO uint32_t reserved1 : 4; /* [15:12] */
270 __IO uint32_t dd2dt12r : 12;/* [27:16] */
271 __IO uint32_t reserved2 : 4; /* [31:28] */
272 } ddth12r_bit;
273 };
274
278 union
279 {
280 __IO uint32_t ddth12l;
281 struct
282 {
283 __IO uint32_t reserved1 : 4; /* [3:0] */
284 __IO uint32_t dd1dt12l : 12;/* [15:4] */
285 __IO uint32_t reserved2 : 4; /* [19:16] */
286 __IO uint32_t dd2dt12l : 12;/* [31:20] */
287 } ddth12l_bit;
288 };
289
293 union
294 {
295 __IO uint32_t ddth8r;
296 struct
297 {
298 __IO uint32_t dd1dt8r : 8; /* [7:0] */
299 __IO uint32_t dd2dt8r : 8; /* [15:8] */
300 __IO uint32_t reserved1 : 16;/* [31:16] */
301 } ddth8r_bit;
302 };
303
307 union
308 {
309 __IO uint32_t d1odt;
310 struct
311 {
312 __IO uint32_t d1odt : 12;/* [11:0] */
313 __IO uint32_t reserved1 : 20;/* [31:12] */
314 } d1odt_bit;
315 };
316
320 union
321 {
322 __IO uint32_t d2odt;
323 struct
324 {
325 __IO uint32_t d2odt : 12;/* [11:0] */
326 __IO uint32_t reserved1 : 20;/* [31:12] */
327 } d2odt_bit;
328 };
329} dac_type;
330
335#define DAC ((dac_type *) DAC_BASE)
336
341void dac_reset(void);
342void dac_enable(dac_select_type dac_select, confirm_state new_state);
343void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state);
344void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state);
345void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source);
346void dac_software_trigger_generate(dac_select_type dac_select);
347void dac_dual_software_trigger_generate(void);
348void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave);
349void dac_mask_amplitude_select(dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude);
350void dac_dma_enable(dac_select_type dac_select, confirm_state new_state);
351uint16_t dac_data_output_get(dac_select_type dac_select);
352void dac_1_data_set(dac1_aligned_data_type dac1_aligned, uint16_t dac1_data);
353void dac_2_data_set(dac2_aligned_data_type dac2_aligned, uint16_t dac2_data);
354void dac_dual_data_set(dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2);
355
368#ifdef __cplusplus
369}
370#endif
371
372#endif
at32f403.h
at32f403 header file
dac_data_output_get
uint16_t dac_data_output_get(dac_select_type dac_select)
get dac data output
Definition: at32f403_dac.c:289
dac_output_buffer_enable
void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer
Definition: at32f403_dac.c:86
dac_reset
void dac_reset(void)
dac reset
Definition: at32f403_dac.c:47
dac_dma_enable
void dac_dma_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma
Definition: at32f403_dac.c:266
dac_1_data_set
void dac_1_data_set(dac1_aligned_data_type dac1_aligned, uint16_t dac1_data)
set dac1 data
Definition: at32f403_dac.c:316
dac_wave_generate
void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave
Definition: at32f403_dac.c:205
dac_software_trigger_generate
void dac_software_trigger_generate(dac_select_type dac_select)
generate dac software trigger
Definition: at32f403_dac.c:167
dac_mask_amplitude_select
void dac_mask_amplitude_select(dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude
Definition: at32f403_dac.c:242
dac_trigger_select
void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger
Definition: at32f403_dac.c:144
dac_enable
void dac_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac
Definition: at32f403_dac.c:62
dac_dual_data_set
void dac_dual_data_set(dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
set dac dual data
Definition: at32f403_dac.c:347
dac_trigger_enable
void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger
Definition: at32f403_dac.c:111
dac_dual_software_trigger_generate
void dac_dual_software_trigger_generate(void)
generate dac dual software trigger synchronously
Definition: at32f403_dac.c:187
dac_2_data_set
void dac_2_data_set(dac2_aligned_data_type dac2_aligned, uint16_t dac2_data)
set dac2 data
Definition: at32f403_dac.c:331
dac_select_type
dac_select_type
dac select type
Definition: at32f403_dac.h:56
dac1_aligned_data_type
dac1_aligned_data_type
dac1 aligned data type
Definition: at32f403_dac.h:109
dac2_aligned_data_type
dac2_aligned_data_type
dac2 aligned data type
Definition: at32f403_dac.h:119
dac_wave_type
dac_wave_type
dac wave type
Definition: at32f403_dac.h:80
dac_mask_amplitude_type
dac_mask_amplitude_type
dac mask amplitude type
Definition: at32f403_dac.h:90
dac_trigger_type
dac_trigger_type
dac trigger type
Definition: at32f403_dac.h:65
dac_dual_data_type
dac_dual_data_type
dac dual data type
Definition: at32f403_dac.h:129
DAC2_SELECT
@ DAC2_SELECT
Definition: at32f403_dac.h:58
DAC1_SELECT
@ DAC1_SELECT
Definition: at32f403_dac.h:57
DAC1_12BIT_RIGHT
@ DAC1_12BIT_RIGHT
Definition: at32f403_dac.h:110
DAC1_8BIT_RIGHT
@ DAC1_8BIT_RIGHT
Definition: at32f403_dac.h:112
DAC1_12BIT_LEFT
@ DAC1_12BIT_LEFT
Definition: at32f403_dac.h:111
DAC2_8BIT_RIGHT
@ DAC2_8BIT_RIGHT
Definition: at32f403_dac.h:122
DAC2_12BIT_RIGHT
@ DAC2_12BIT_RIGHT
Definition: at32f403_dac.h:120
DAC2_12BIT_LEFT
@ DAC2_12BIT_LEFT
Definition: at32f403_dac.h:121
DAC_WAVE_GENERATE_TRIANGLE
@ DAC_WAVE_GENERATE_TRIANGLE
Definition: at32f403_dac.h:83
DAC_WAVE_GENERATE_NOISE
@ DAC_WAVE_GENERATE_NOISE
Definition: at32f403_dac.h:82
DAC_WAVE_GENERATE_NONE
@ DAC_WAVE_GENERATE_NONE
Definition: at32f403_dac.h:81
DAC_LSFR_BIT10_AMPLITUDE_3
@ DAC_LSFR_BIT10_AMPLITUDE_3
Definition: at32f403_dac.h:92
DAC_LSFR_BIT90_AMPLITUDE_1023
@ DAC_LSFR_BIT90_AMPLITUDE_1023
Definition: at32f403_dac.h:100
DAC_LSFR_BIT80_AMPLITUDE_511
@ DAC_LSFR_BIT80_AMPLITUDE_511
Definition: at32f403_dac.h:99
DAC_LSFR_BIT70_AMPLITUDE_255
@ DAC_LSFR_BIT70_AMPLITUDE_255
Definition: at32f403_dac.h:98
DAC_LSFR_BIT20_AMPLITUDE_7
@ DAC_LSFR_BIT20_AMPLITUDE_7
Definition: at32f403_dac.h:93
DAC_LSFR_BITB0_AMPLITUDE_4095
@ DAC_LSFR_BITB0_AMPLITUDE_4095
Definition: at32f403_dac.h:102
DAC_LSFR_BIT40_AMPLITUDE_31
@ DAC_LSFR_BIT40_AMPLITUDE_31
Definition: at32f403_dac.h:95
DAC_LSFR_BIT60_AMPLITUDE_127
@ DAC_LSFR_BIT60_AMPLITUDE_127
Definition: at32f403_dac.h:97
DAC_LSFR_BIT50_AMPLITUDE_63
@ DAC_LSFR_BIT50_AMPLITUDE_63
Definition: at32f403_dac.h:96
DAC_LSFR_BITA0_AMPLITUDE_2047
@ DAC_LSFR_BITA0_AMPLITUDE_2047
Definition: at32f403_dac.h:101
DAC_LSFR_BIT30_AMPLITUDE_15
@ DAC_LSFR_BIT30_AMPLITUDE_15
Definition: at32f403_dac.h:94
DAC_LSFR_BIT0_AMPLITUDE_1
@ DAC_LSFR_BIT0_AMPLITUDE_1
Definition: at32f403_dac.h:91
DAC_TMR4_TRGOUT_EVENT
@ DAC_TMR4_TRGOUT_EVENT
Definition: at32f403_dac.h:71
DAC_TMR2_TRGOUT_EVENT
@ DAC_TMR2_TRGOUT_EVENT
Definition: at32f403_dac.h:70
DAC_TMR7_TRGOUT_EVENT
@ DAC_TMR7_TRGOUT_EVENT
Definition: at32f403_dac.h:68
DAC_TMR5_TRGOUT_EVENT
@ DAC_TMR5_TRGOUT_EVENT
Definition: at32f403_dac.h:69
DAC_EXTERNAL_INTERRUPT_LINE_9
@ DAC_EXTERNAL_INTERRUPT_LINE_9
Definition: at32f403_dac.h:72
DAC_TMR8_TRGOUT_EVENT
@ DAC_TMR8_TRGOUT_EVENT
Definition: at32f403_dac.h:67
DAC_TMR6_TRGOUT_EVENT
@ DAC_TMR6_TRGOUT_EVENT
Definition: at32f403_dac.h:66
DAC_SOFTWARE_TRIGGER
@ DAC_SOFTWARE_TRIGGER
Definition: at32f403_dac.h:73
DAC_DUAL_12BIT_LEFT
@ DAC_DUAL_12BIT_LEFT
Definition: at32f403_dac.h:131
DAC_DUAL_8BIT_RIGHT
@ DAC_DUAL_8BIT_RIGHT
Definition: at32f403_dac.h:132
DAC_DUAL_12BIT_RIGHT
@ DAC_DUAL_12BIT_RIGHT
Definition: at32f403_dac.h:130
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
dac_type
type define dac register all
Definition: at32f403_dac.h:139
dac_type::d1obdis
__IO uint32_t d1obdis
Definition: at32f403_dac.h:150
dac_type::d2dth8r
__IO uint32_t d2dth8r
Definition: at32f403_dac.h:252
dac_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_dac.h:146
dac_type::dd2dt8r
__IO uint32_t dd2dt8r
Definition: at32f403_dac.h:299
dac_type::dd2dt12l
__IO uint32_t dd2dt12l
Definition: at32f403_dac.h:286
dac_type::d2dt12l
__IO uint32_t d2dt12l
Definition: at32f403_dac.h:242
dac_type::ddth12l
__IO uint32_t ddth12l
Definition: at32f403_dac.h:280
dac_type::d2odt
__IO uint32_t d2odt
Definition: at32f403_dac.h:322
dac_type::d2dth12r
__IO uint32_t d2dth12r
Definition: at32f403_dac.h:226
dac_type::d1dth12r
__IO uint32_t d1dth12r
Definition: at32f403_dac.h:187
dac_type::d2swtrg
__IO uint32_t d2swtrg
Definition: at32f403_dac.h:177
dac_type::ddth8r
__IO uint32_t ddth8r
Definition: at32f403_dac.h:295
dac_type::d2trgsel
__IO uint32_t d2trgsel
Definition: at32f403_dac.h:160
dac_type::dd1dt12l
__IO uint32_t dd1dt12l
Definition: at32f403_dac.h:284
dac_type::d1nm
__IO uint32_t d1nm
Definition: at32f403_dac.h:153
dac_type::d1dt12l
__IO uint32_t d1dt12l
Definition: at32f403_dac.h:203
dac_type::d2dt12r
__IO uint32_t d2dt12r
Definition: at32f403_dac.h:229
dac_type::d2dth12l
__IO uint32_t d2dth12l
Definition: at32f403_dac.h:239
dac_type::dd1dt8r
__IO uint32_t dd1dt8r
Definition: at32f403_dac.h:298
dac_type::d2en
__IO uint32_t d2en
Definition: at32f403_dac.h:157
dac_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_dac.h:156
dac_type::d1trgsel
__IO uint32_t d1trgsel
Definition: at32f403_dac.h:152
dac_type::d1dth8r
__IO uint32_t d1dth8r
Definition: at32f403_dac.h:213
dac_type::swtrg
__IO uint32_t swtrg
Definition: at32f403_dac.h:173
dac_type::d2nbsel
__IO uint32_t d2nbsel
Definition: at32f403_dac.h:162
dac_type::d1dth12l
__IO uint32_t d1dth12l
Definition: at32f403_dac.h:200
dac_type::d2dt8r
__IO uint32_t d2dt8r
Definition: at32f403_dac.h:255
dac_type::d2trgen
__IO uint32_t d2trgen
Definition: at32f403_dac.h:159
dac_type::d2nm
__IO uint32_t d2nm
Definition: at32f403_dac.h:161
dac_type::d1trgen
__IO uint32_t d1trgen
Definition: at32f403_dac.h:151
dac_type::d1dt12r
__IO uint32_t d1dt12r
Definition: at32f403_dac.h:190
dac_type::d1dt8r
__IO uint32_t d1dt8r
Definition: at32f403_dac.h:216
dac_type::d1swtrg
__IO uint32_t d1swtrg
Definition: at32f403_dac.h:176
dac_type::dd2dt12r
__IO uint32_t dd2dt12r
Definition: at32f403_dac.h:270
dac_type::d1dmaen
__IO uint32_t d1dmaen
Definition: at32f403_dac.h:155
dac_type::d2obdis
__IO uint32_t d2obdis
Definition: at32f403_dac.h:158
dac_type::d1odt
__IO uint32_t d1odt
Definition: at32f403_dac.h:309
dac_type::d2dmaen
__IO uint32_t d2dmaen
Definition: at32f403_dac.h:163
dac_type::d1nbsel
__IO uint32_t d1nbsel
Definition: at32f403_dac.h:154
dac_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_dac.h:164
dac_type::ddth12r
__IO uint32_t ddth12r
Definition: at32f403_dac.h:265
dac_type::d1en
__IO uint32_t d1en
Definition: at32f403_dac.h:149
dac_type::dd1dt12r
__IO uint32_t dd1dt12r
Definition: at32f403_dac.h:268


AT32F403 Firmwary Library: at32f403_debug.c Source File

  • libraries
  • drivers
  • src
at32f403_debug.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef DEBUG_MODULE_ENABLED
37
47uint32_t debug_device_id_get(void)
48{
49 return DEBUGMCU->pid;
50}
51
71void debug_periph_mode_set(uint32_t periph_debug_mode, confirm_state new_state)
72{
73 if(new_state != FALSE)
74 {
75 DEBUGMCU->ctrl |= periph_debug_mode;
76 }
77 else
78 {
79 DEBUGMCU->ctrl &= ~periph_debug_mode;
80 }
81}
82
87#endif
88
debug_periph_mode_set
void debug_periph_mode_set(uint32_t periph_debug_mode, confirm_state new_state)
set periph debug mode
Definition: at32f403_debug.c:71
debug_device_id_get
uint32_t debug_device_id_get(void)
get debug device id
Definition: at32f403_debug.c:47
DEBUGMCU
#define DEBUGMCU
Definition: at32f403_debug.h:145
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
FALSE
@ FALSE
Definition: at32f403.h:309
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_debug.h Source File

  • libraries
  • drivers
  • inc
at32f403_debug.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_DEBUG_H
27#define __AT32F403_DEBUG_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
49#define DEBUG_SLEEP 0x00000001
50#define DEBUG_DEEPSLEEP 0x00000002
51#define DEBUG_STANDBY 0x00000004
52#define DEBUG_WDT_PAUSE 0x00000100
53#define DEBUG_WWDT_PAUSE 0x00000200
54#define DEBUG_TMR1_PAUSE 0x00000400
55#define DEBUG_TMR2_PAUSE 0x00000800
56#define DEBUG_TMR3_PAUSE 0x00001000
57#define DEBUG_TMR4_PAUSE 0x00002000
58#define DEBUG_TMR5_PAUSE 0x00040000
59#define DEBUG_TMR6_PAUSE 0x00080000
60#define DEBUG_TMR7_PAUSE 0x00100000
61#define DEBUG_TMR8_PAUSE 0x00020000
62#define DEBUG_TMR9_PAUSE 0x10000000
63#define DEBUG_TMR10_PAUSE 0x20000000
64#define DEBUG_TMR11_PAUSE 0x40000000
65#define DEBUG_TMR12_PAUSE 0x02000000
66#define DEBUG_TMR13_PAUSE 0x04000000
67#define DEBUG_TMR14_PAUSE 0x08000000
68#define DEBUG_TMR15_PAUSE 0x00400000
69#define DEBUG_I2C1_SMBUS_TIMEOUT 0x00008000
70#define DEBUG_I2C2_SMBUS_TIMEOUT 0x00010000
71#define DEBUG_I2C3_SMBUS_TIMEOUT 0x80000000
72#define DEBUG_CAN1_PAUSE 0x00004000
85typedef struct
86{
90 union
91 {
92 __IO uint32_t pid;
93 struct
94 {
95 __IO uint32_t pid : 32;/* [31:0] */
96 } idcode_bit;
97 };
98
102 union
103 {
104 __IO uint32_t ctrl;
105 struct
106 {
107 __IO uint32_t sleep_debug : 1;/* [0] */
108 __IO uint32_t deepsleep_debug : 1;/* [1] */
109 __IO uint32_t standby_debug : 1;/* [2] */
110 __IO uint32_t reserved1 : 2;/* [4:3] */
111 __IO uint32_t trace_ioen : 1;/* [5] */
112 __IO uint32_t trace_mode : 2;/* [7:6] */
113 __IO uint32_t wdt_pause : 1;/* [8] */
114 __IO uint32_t wwdt_pause : 1;/* [9] */
115 __IO uint32_t tmr1_pause : 1;/* [10] */
116 __IO uint32_t tmr2_pause : 1;/* [11] */
117 __IO uint32_t tmr3_pause : 1;/* [12] */
118 __IO uint32_t tmr4_pause : 1;/* [13] */
119 __IO uint32_t can1_pause : 1;/* [14] */
120 __IO uint32_t i2c1_smbus_timeout : 1;/* [15] */
121 __IO uint32_t i2c2_smbus_timeout : 1;/* [16] */
122 __IO uint32_t tim8_pause : 1;/* [17] */
123 __IO uint32_t tmr5_pause : 1;/* [18] */
124 __IO uint32_t tmr6_pause : 1;/* [19] */
125 __IO uint32_t tmr7_pause : 1;/* [20] */
126 __IO uint32_t reserved2 : 1;/* [21] */
127 __IO uint32_t tmr15_pause : 1;/* [22] */
128 __IO uint32_t reserved3 : 2;/* [24:23] */
129 __IO uint32_t tmr12_pause : 1;/* [25] */
130 __IO uint32_t tmr13_pause : 1;/* [26] */
131 __IO uint32_t tmr14_pause : 1;/* [27] */
132 __IO uint32_t tmr9_pause : 1;/* [28] */
133 __IO uint32_t tmr10_pause : 1;/* [29] */
134 __IO uint32_t tmr11_pause : 1;/* [30] */
135 __IO uint32_t i2c3_smbus_timeout : 1;/* [31] */
136 } ctrl_bit;
137 };
138
139} debug_type;
140
145#define DEBUGMCU ((debug_type *) DEBUG_BASE)
146
151uint32_t debug_device_id_get(void);
152void debug_periph_mode_set(uint32_t periph_debug_mode, confirm_state new_state);
153
166#ifdef __cplusplus
167}
168#endif
169
170#endif
at32f403.h
at32f403 header file
debug_periph_mode_set
void debug_periph_mode_set(uint32_t periph_debug_mode, confirm_state new_state)
set periph debug mode
Definition: at32f403_debug.c:71
debug_device_id_get
uint32_t debug_device_id_get(void)
get debug device id
Definition: at32f403_debug.c:47
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
debug_type
type define debug register all
Definition: at32f403_debug.h:86
debug_type::tmr11_pause
__IO uint32_t tmr11_pause
Definition: at32f403_debug.h:134
debug_type::i2c2_smbus_timeout
__IO uint32_t i2c2_smbus_timeout
Definition: at32f403_debug.h:121
debug_type::tmr12_pause
__IO uint32_t tmr12_pause
Definition: at32f403_debug.h:129
debug_type::pid
__IO uint32_t pid
Definition: at32f403_debug.h:92
debug_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_debug.h:126
debug_type::sleep_debug
__IO uint32_t sleep_debug
Definition: at32f403_debug.h:107
debug_type::trace_ioen
__IO uint32_t trace_ioen
Definition: at32f403_debug.h:111
debug_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_debug.h:104
debug_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_debug.h:128
debug_type::tmr9_pause
__IO uint32_t tmr9_pause
Definition: at32f403_debug.h:132
debug_type::tmr13_pause
__IO uint32_t tmr13_pause
Definition: at32f403_debug.h:130
debug_type::tmr2_pause
__IO uint32_t tmr2_pause
Definition: at32f403_debug.h:116
debug_type::wdt_pause
__IO uint32_t wdt_pause
Definition: at32f403_debug.h:113
debug_type::deepsleep_debug
__IO uint32_t deepsleep_debug
Definition: at32f403_debug.h:108
debug_type::tmr1_pause
__IO uint32_t tmr1_pause
Definition: at32f403_debug.h:115
debug_type::i2c1_smbus_timeout
__IO uint32_t i2c1_smbus_timeout
Definition: at32f403_debug.h:120
debug_type::tmr14_pause
__IO uint32_t tmr14_pause
Definition: at32f403_debug.h:131
debug_type::trace_mode
__IO uint32_t trace_mode
Definition: at32f403_debug.h:112
debug_type::standby_debug
__IO uint32_t standby_debug
Definition: at32f403_debug.h:109
debug_type::tmr10_pause
__IO uint32_t tmr10_pause
Definition: at32f403_debug.h:133
debug_type::wwdt_pause
__IO uint32_t wwdt_pause
Definition: at32f403_debug.h:114
debug_type::can1_pause
__IO uint32_t can1_pause
Definition: at32f403_debug.h:119
debug_type::tmr6_pause
__IO uint32_t tmr6_pause
Definition: at32f403_debug.h:124
debug_type::tmr4_pause
__IO uint32_t tmr4_pause
Definition: at32f403_debug.h:118
debug_type::tmr5_pause
__IO uint32_t tmr5_pause
Definition: at32f403_debug.h:123
debug_type::i2c3_smbus_timeout
__IO uint32_t i2c3_smbus_timeout
Definition: at32f403_debug.h:135
debug_type::tmr3_pause
__IO uint32_t tmr3_pause
Definition: at32f403_debug.h:117
debug_type::tmr15_pause
__IO uint32_t tmr15_pause
Definition: at32f403_debug.h:127
debug_type::tim8_pause
__IO uint32_t tim8_pause
Definition: at32f403_debug.h:122
debug_type::tmr7_pause
__IO uint32_t tmr7_pause
Definition: at32f403_debug.h:125
debug_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_debug.h:110


AT32F403 Firmwary Library: at32f403_def.h Source File

  • libraries
  • drivers
  • inc
at32f403_def.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_DEF_H
27#define __AT32F403_DEF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* gnu compiler */
34#if defined (__GNUC__)
35 #ifndef ALIGNED_HEAD
36 #define ALIGNED_HEAD
37 #endif
38 #ifndef ALIGNED_TAIL
39 #define ALIGNED_TAIL __attribute__ ((aligned (4)))
40 #endif
41#endif
42
43/* arm compiler */
44#if defined (__CC_ARM)
45 #ifndef ALIGNED_HEAD
46 #define ALIGNED_HEAD __align(4)
47 #endif
48 #ifndef ALIGNED_TAIL
49 #define ALIGNED_TAIL
50 #endif
51#endif
52
53/* iar compiler */
54#if defined (__ICCARM__)
55 #ifndef ALIGNED_HEAD
56 #define ALIGNED_HEAD
57 #endif
58 #ifndef ALIGNED_TAIL
59 #define ALIGNED_TAIL
60 #endif
61#endif
62
63#define UNUSED(x) (void)x /* to avoid gcc/g++ warnings */
64
65#ifdef __cplusplus
66}
67#endif
68
69#endif


AT32F403 Firmwary Library: at32f403_dma.c Source File

  • libraries
  • drivers
  • src
at32f403_dma.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef DMA_MODULE_ENABLED
37
60void dma_reset(dma_channel_type* dmax_channely)
61{
62 uint32_t temp = 0;
63 dmax_channely->ctrl_bit.chen = FALSE;
64 dmax_channely->ctrl = 0;
65 dmax_channely->dtcnt = 0;
66 dmax_channely->paddr = 0;
67 dmax_channely->maddr = 0;
68
69 temp = (uint32_t)dmax_channely;
70
71 if((temp & 0x4ff) < 0x408)
72 {
73 /* dma1 channel */
74 DMA1->clr |= (uint32_t)(0x0f << ((((temp & 0xff) - 0x08) / 0x14) * 4));
75 }
76 else if((temp & 0x4ff) < 0x488)
77 {
78 /* dma2 channel */
79 DMA2->clr |= (uint32_t)(0x0f << ((((temp & 0xff) - 0x08) / 0x14) * 4));
80 }
81}
82
103void dma_data_number_set(dma_channel_type* dmax_channely, uint16_t data_number)
104{
105 dmax_channely->dtcnt = data_number;
106}
107
126uint16_t dma_data_number_get(dma_channel_type* dmax_channely)
127{
128 return (uint16_t)dmax_channely->dtcnt;
129}
130
155void dma_interrupt_enable(dma_channel_type* dmax_channely, uint32_t dma_int, confirm_state new_state)
156{
157 if (new_state != FALSE)
158 {
159 dmax_channely->ctrl |= dma_int;
160 }
161 else
162 {
163 dmax_channely->ctrl &= ~dma_int;
164 }
165}
166
186void dma_channel_enable(dma_channel_type* dmax_channely, confirm_state new_state)
187{
188 dmax_channely->ctrl_bit.chen = new_state;
189}
190
209 flag_status dma_flag_get(uint32_t dmax_flag)
210{
211 flag_status status = RESET;
212 uint32_t temp = 0;
213
214 if(dmax_flag > 0x10000000)
215 {
216 temp = DMA2->sts;
217 }
218 else
219 {
220 temp = DMA1->sts;
221 }
222
223 if ((temp & dmax_flag) != (uint16_t)RESET)
224 {
225 status = SET;
226 }
227 else
228 {
229 status = RESET;
230 }
231
232 return status;
233}
234
253void dma_flag_clear(uint32_t dmax_flag)
254{
255 if(dmax_flag > 0x10000000)
256 {
257 DMA2->clr = (uint32_t)(dmax_flag & 0x0FFFFFFF);
258 }
259 else
260 {
261 DMA1->clr = dmax_flag;
262 }
263}
264
271void dma_default_para_init(dma_init_type* dma_init_struct)
272{
273 dma_init_struct->peripheral_base_addr = 0x0;
274 dma_init_struct->memory_base_addr = 0x0;
275 dma_init_struct->direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
276 dma_init_struct->buffer_size = 0x0;
277 dma_init_struct->peripheral_inc_enable = FALSE;
278 dma_init_struct->memory_inc_enable = FALSE;
279 dma_init_struct->peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
280 dma_init_struct->memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
281 dma_init_struct->loop_mode_enable = FALSE;
282 dma_init_struct->priority = DMA_PRIORITY_LOW;
283}
284
304void dma_init(dma_channel_type* dmax_channely, dma_init_type* dma_init_struct)
305{
306 /* clear ctrl register dtd bit and m2m bit */
307 dmax_channely->ctrl &= 0xbfef;
308 dmax_channely->ctrl |= dma_init_struct->direction;
309
310 dmax_channely->ctrl_bit.chpl = dma_init_struct->priority;
311 dmax_channely->ctrl_bit.mwidth = dma_init_struct->memory_data_width;
312 dmax_channely->ctrl_bit.pwidth = dma_init_struct->peripheral_data_width;
313 dmax_channely->ctrl_bit.mincm = dma_init_struct->memory_inc_enable;
314 dmax_channely->ctrl_bit.pincm = dma_init_struct->peripheral_inc_enable;
315 dmax_channely->ctrl_bit.lm = dma_init_struct->loop_mode_enable;
316 dmax_channely->dtcnt = dma_init_struct->buffer_size;
317 dmax_channely->paddr = dma_init_struct->peripheral_base_addr;
318 dmax_channely->maddr = dma_init_struct->memory_base_addr;
319}
320
325#endif
326
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_LOW
@ DMA_PRIORITY_LOW
Definition: at32f403_dma.h:174
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_data_number_get
uint16_t dma_data_number_get(dma_channel_type *dmax_channely)
get number of data from dtcnt register
Definition: at32f403_dma.c:126
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
dma_data_number_set
void dma_data_number_set(dma_channel_type *dmax_channely, uint16_t data_number)
set the number of data to be transferred
Definition: at32f403_dma.c:103
DMA2
#define DMA2
Definition: at32f403_dma.h:363
DMA1
#define DMA1
Definition: at32f403_dma.h:354
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
dma_channel_type
type define dma channel register all
Definition: at32f403_dma.h:287
dma_channel_type::dtcnt
__IO uint32_t dtcnt
Definition: at32f403_dma.h:317
dma_channel_type::pwidth
__IO uint32_t pwidth
Definition: at32f403_dma.h:304
dma_channel_type::paddr
__IO uint32_t paddr
Definition: at32f403_dma.h:330
dma_channel_type::mincm
__IO uint32_t mincm
Definition: at32f403_dma.h:303
dma_channel_type::chen
__IO uint32_t chen
Definition: at32f403_dma.h:296
dma_channel_type::lm
__IO uint32_t lm
Definition: at32f403_dma.h:301
dma_channel_type::mwidth
__IO uint32_t mwidth
Definition: at32f403_dma.h:305
dma_channel_type::ctrl_bit
struct dma_channel_type::@357::@365 ctrl_bit
dma_channel_type::maddr
__IO uint32_t maddr
Definition: at32f403_dma.h:342
dma_channel_type::pincm
__IO uint32_t pincm
Definition: at32f403_dma.h:302
dma_channel_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_dma.h:293
dma_channel_type::chpl
__IO uint32_t chpl
Definition: at32f403_dma.h:306
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_dma.h Source File

  • libraries
  • drivers
  • inc
at32f403_dma.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_DMA_H
27#define __AT32F403_DMA_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define DMA_FDT_INT ((uint32_t)0x00000002)
51#define DMA_HDT_INT ((uint32_t)0x00000004)
52#define DMA_DTERR_INT ((uint32_t)0x00000008)
63#define DMA1_GL1_FLAG ((uint32_t)0x00000001)
64#define DMA1_FDT1_FLAG ((uint32_t)0x00000002)
65#define DMA1_HDT1_FLAG ((uint32_t)0x00000004)
66#define DMA1_DTERR1_FLAG ((uint32_t)0x00000008)
67#define DMA1_GL2_FLAG ((uint32_t)0x00000010)
68#define DMA1_FDT2_FLAG ((uint32_t)0x00000020)
69#define DMA1_HDT2_FLAG ((uint32_t)0x00000040)
70#define DMA1_DTERR2_FLAG ((uint32_t)0x00000080)
71#define DMA1_GL3_FLAG ((uint32_t)0x00000100)
72#define DMA1_FDT3_FLAG ((uint32_t)0x00000200)
73#define DMA1_HDT3_FLAG ((uint32_t)0x00000400)
74#define DMA1_DTERR3_FLAG ((uint32_t)0x00000800)
75#define DMA1_GL4_FLAG ((uint32_t)0x00001000)
76#define DMA1_FDT4_FLAG ((uint32_t)0x00002000)
77#define DMA1_HDT4_FLAG ((uint32_t)0x00004000)
78#define DMA1_DTERR4_FLAG ((uint32_t)0x00008000)
79#define DMA1_GL5_FLAG ((uint32_t)0x00010000)
80#define DMA1_FDT5_FLAG ((uint32_t)0x00020000)
81#define DMA1_HDT5_FLAG ((uint32_t)0x00040000)
82#define DMA1_DTERR5_FLAG ((uint32_t)0x00080000)
83#define DMA1_GL6_FLAG ((uint32_t)0x00100000)
84#define DMA1_FDT6_FLAG ((uint32_t)0x00200000)
85#define DMA1_HDT6_FLAG ((uint32_t)0x00400000)
86#define DMA1_DTERR6_FLAG ((uint32_t)0x00800000)
87#define DMA1_GL7_FLAG ((uint32_t)0x01000000)
88#define DMA1_FDT7_FLAG ((uint32_t)0x02000000)
89#define DMA1_HDT7_FLAG ((uint32_t)0x04000000)
90#define DMA1_DTERR7_FLAG ((uint32_t)0x08000000)
92#define DMA2_GL1_FLAG ((uint32_t)0x10000001)
93#define DMA2_FDT1_FLAG ((uint32_t)0x10000002)
94#define DMA2_HDT1_FLAG ((uint32_t)0x10000004)
95#define DMA2_DTERR1_FLAG ((uint32_t)0x10000008)
96#define DMA2_GL2_FLAG ((uint32_t)0x10000010)
97#define DMA2_FDT2_FLAG ((uint32_t)0x10000020)
98#define DMA2_HDT2_FLAG ((uint32_t)0x10000040)
99#define DMA2_DTERR2_FLAG ((uint32_t)0x10000080)
100#define DMA2_GL3_FLAG ((uint32_t)0x10000100)
101#define DMA2_FDT3_FLAG ((uint32_t)0x10000200)
102#define DMA2_HDT3_FLAG ((uint32_t)0x10000400)
103#define DMA2_DTERR3_FLAG ((uint32_t)0x10000800)
104#define DMA2_GL4_FLAG ((uint32_t)0x10001000)
105#define DMA2_FDT4_FLAG ((uint32_t)0x10002000)
106#define DMA2_HDT4_FLAG ((uint32_t)0x10004000)
107#define DMA2_DTERR4_FLAG ((uint32_t)0x10008000)
108#define DMA2_GL5_FLAG ((uint32_t)0x10010000)
109#define DMA2_FDT5_FLAG ((uint32_t)0x10020000)
110#define DMA2_HDT5_FLAG ((uint32_t)0x10040000)
111#define DMA2_DTERR5_FLAG ((uint32_t)0x10080000)
124typedef enum
125{
126 DMA_DIR_PERIPHERAL_TO_MEMORY = 0x0000,
127 DMA_DIR_MEMORY_TO_PERIPHERAL = 0x0010,
128 DMA_DIR_MEMORY_TO_MEMORY = 0x4000
129} dma_dir_type;
130
134typedef enum
135{
136 DMA_PERIPHERAL_INC_DISABLE = 0x00,
137 DMA_PERIPHERAL_INC_ENABLE = 0x01
138} dma_peripheral_inc_type;
139
143typedef enum
144{
145 DMA_MEMORY_INC_DISABLE = 0x00,
146 DMA_MEMORY_INC_ENABLE = 0x01
147} dma_memory_inc_type;
148
152typedef enum
153{
154 DMA_PERIPHERAL_DATA_WIDTH_BYTE = 0x00,
155 DMA_PERIPHERAL_DATA_WIDTH_HALFWORD = 0x01,
156 DMA_PERIPHERAL_DATA_WIDTH_WORD = 0x02
157} dma_peripheral_data_size_type;
158
162typedef enum
163{
164 DMA_MEMORY_DATA_WIDTH_BYTE = 0x00,
165 DMA_MEMORY_DATA_WIDTH_HALFWORD = 0x01,
166 DMA_MEMORY_DATA_WIDTH_WORD = 0x02
167} dma_memory_data_size_type;
168
172typedef enum
173{
174 DMA_PRIORITY_LOW = 0x00,
175 DMA_PRIORITY_MEDIUM = 0x01,
176 DMA_PRIORITY_HIGH = 0x02,
177 DMA_PRIORITY_VERY_HIGH = 0x03
178} dma_priority_level_type;
179
183typedef struct
184{
185 uint32_t peripheral_base_addr;
186 uint32_t memory_base_addr;
187 dma_dir_type direction;
188 uint16_t buffer_size;
189 confirm_state peripheral_inc_enable;
190 confirm_state memory_inc_enable;
191 dma_peripheral_data_size_type peripheral_data_width;
192 dma_memory_data_size_type memory_data_width;
193 confirm_state loop_mode_enable;
194 dma_priority_level_type priority;
195} dma_init_type;
196
200typedef struct
201{
205 union
206 {
207 __IO uint32_t sts;
208 struct
209 {
210 __IO uint32_t gf1 : 1; /* [0] */
211 __IO uint32_t fdtf1 : 1; /* [1] */
212 __IO uint32_t hdtf1 : 1; /* [2] */
213 __IO uint32_t dterrf1 : 1; /* [3] */
214 __IO uint32_t gf2 : 1; /* [4] */
215 __IO uint32_t fdtf2 : 1; /* [5] */
216 __IO uint32_t hdtf2 : 1; /* [6] */
217 __IO uint32_t dterrf2 : 1; /* [7] */
218 __IO uint32_t gf3 : 1; /* [8] */
219 __IO uint32_t fdtf3 : 1; /* [9] */
220 __IO uint32_t hdtf3 : 1; /* [10] */
221 __IO uint32_t dterrf3 : 1; /* [11] */
222 __IO uint32_t gf4 : 1; /* [12] */
223 __IO uint32_t fdtf4 : 1; /* [13] */
224 __IO uint32_t hdtf4 : 1; /* [14] */
225 __IO uint32_t dterrf4 : 1; /* [15] */
226 __IO uint32_t gf5 : 1; /* [16] */
227 __IO uint32_t fdtf5 : 1; /* [17] */
228 __IO uint32_t hdtf5 : 1; /* [18] */
229 __IO uint32_t dterrf5 : 1; /* [19] */
230 __IO uint32_t gf6 : 1; /* [20] */
231 __IO uint32_t fdtf6 : 1; /* [21] */
232 __IO uint32_t hdtf6 : 1; /* [22] */
233 __IO uint32_t dterrf6 : 1; /* [23] */
234 __IO uint32_t gf7 : 1; /* [24] */
235 __IO uint32_t fdtf7 : 1; /* [25] */
236 __IO uint32_t hdtf7 : 1; /* [26] */
237 __IO uint32_t dterrf7 : 1; /* [27] */
238 __IO uint32_t reserved1 : 4; /* [31:28] */
239 } sts_bit;
240 };
241
245 union
246 {
247 __IO uint32_t clr;
248 struct
249 {
250 __IO uint32_t gfc1 : 1; /* [0] */
251 __IO uint32_t fdtfc1 : 1; /* [1] */
252 __IO uint32_t hdtfc1 : 1; /* [2] */
253 __IO uint32_t dterrfc1 : 1; /* [3] */
254 __IO uint32_t gfc2 : 1; /* [4] */
255 __IO uint32_t fdtfc2 : 1; /* [5] */
256 __IO uint32_t hdtfc2 : 1; /* [6] */
257 __IO uint32_t dterrfc2 : 1; /* [7] */
258 __IO uint32_t gfc3 : 1; /* [8] */
259 __IO uint32_t fdtfc3 : 1; /* [9] */
260 __IO uint32_t hdtfc3 : 1; /* [10] */
261 __IO uint32_t dterrfc3 : 1; /* [11] */
262 __IO uint32_t gfc4 : 1; /* [12] */
263 __IO uint32_t fdtfc4 : 1; /* [13] */
264 __IO uint32_t hdtfc4 : 1; /* [14] */
265 __IO uint32_t dterrfc4 : 1; /* [15] */
266 __IO uint32_t gfc5 : 1; /* [16] */
267 __IO uint32_t fdtfc5 : 1; /* [17] */
268 __IO uint32_t hdtfc5 : 1; /* [18] */
269 __IO uint32_t dterrfc5 : 1; /* [19] */
270 __IO uint32_t gfc6 : 1; /* [20] */
271 __IO uint32_t fdtfc6 : 1; /* [21] */
272 __IO uint32_t hdtfc6 : 1; /* [22] */
273 __IO uint32_t dterrfc6 : 1; /* [23] */
274 __IO uint32_t gfc7 : 1; /* [24] */
275 __IO uint32_t fdtfc7 : 1; /* [25] */
276 __IO uint32_t hdtfc7 : 1; /* [26] */
277 __IO uint32_t dterrfc7 : 1; /* [27] */
278 __IO uint32_t reserved1 : 4; /* [31:28] */
279 } clr_bit;
280 };
281} dma_type;
282
286typedef struct
287{
291 union
292 {
293 __IO uint32_t ctrl;
294 struct
295 {
296 __IO uint32_t chen : 1; /* [0] */
297 __IO uint32_t fdtien : 1; /* [1] */
298 __IO uint32_t hdtien : 1; /* [2] */
299 __IO uint32_t dterrien : 1; /* [3] */
300 __IO uint32_t dtd : 1; /* [4] */
301 __IO uint32_t lm : 1; /* [5] */
302 __IO uint32_t pincm : 1; /* [6] */
303 __IO uint32_t mincm : 1; /* [7] */
304 __IO uint32_t pwidth : 2; /* [9:8] */
305 __IO uint32_t mwidth : 2; /* [11:10] */
306 __IO uint32_t chpl : 2; /* [13:12] */
307 __IO uint32_t m2m : 1; /* [14] */
308 __IO uint32_t reserved1 : 17;/* [31:15] */
309 } ctrl_bit;
310 };
311
315 union
316 {
317 __IO uint32_t dtcnt;
318 struct
319 {
320 __IO uint32_t cnt : 16;/* [15:0] */
321 __IO uint32_t reserved1 : 16;/* [31:16] */
322 } dtcnt_bit;
323 };
324
328 union
329 {
330 __IO uint32_t paddr;
331 struct
332 {
333 __IO uint32_t paddr : 32;/* [31:0] */
334 } paddr_bit;
335 };
336
340 union
341 {
342 __IO uint32_t maddr;
343 struct
344 {
345 __IO uint32_t maddr : 32;/* [31:0] */
346 } maddr_bit;
347 };
348} dma_channel_type;
349
354#define DMA1 ((dma_type *) DMA1_BASE)
355#define DMA1_CHANNEL1 ((dma_channel_type *) DMA1_CHANNEL1_BASE)
356#define DMA1_CHANNEL2 ((dma_channel_type *) DMA1_CHANNEL2_BASE)
357#define DMA1_CHANNEL3 ((dma_channel_type *) DMA1_CHANNEL3_BASE)
358#define DMA1_CHANNEL4 ((dma_channel_type *) DMA1_CHANNEL4_BASE)
359#define DMA1_CHANNEL5 ((dma_channel_type *) DMA1_CHANNEL5_BASE)
360#define DMA1_CHANNEL6 ((dma_channel_type *) DMA1_CHANNEL6_BASE)
361#define DMA1_CHANNEL7 ((dma_channel_type *) DMA1_CHANNEL7_BASE)
362
363#define DMA2 ((dma_type *) DMA2_BASE)
364#define DMA2_CHANNEL1 ((dma_channel_type *) DMA2_CHANNEL1_BASE)
365#define DMA2_CHANNEL2 ((dma_channel_type *) DMA2_CHANNEL2_BASE)
366#define DMA2_CHANNEL3 ((dma_channel_type *) DMA2_CHANNEL3_BASE)
367#define DMA2_CHANNEL4 ((dma_channel_type *) DMA2_CHANNEL4_BASE)
368#define DMA2_CHANNEL5 ((dma_channel_type *) DMA2_CHANNEL5_BASE)
369
374void dma_reset(dma_channel_type* dmax_channely);
375void dma_data_number_set(dma_channel_type* dmax_channely, uint16_t data_number);
376uint16_t dma_data_number_get(dma_channel_type* dmax_channely);
377void dma_interrupt_enable(dma_channel_type* dmax_channely, uint32_t dma_int, confirm_state new_state);
378void dma_channel_enable(dma_channel_type* dmax_channely, confirm_state new_state);
379 flag_status dma_flag_get(uint32_t dmax_flag);
380void dma_flag_clear(uint32_t dmax_flag);
381void dma_default_para_init(dma_init_type* dma_init_struct);
382void dma_init(dma_channel_type* dmax_channely, dma_init_type* dma_init_struct);
383
396#ifdef __cplusplus
397}
398#endif
399
400#endif
at32f403.h
at32f403 header file
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_data_number_get
uint16_t dma_data_number_get(dma_channel_type *dmax_channely)
get number of data from dtcnt register
Definition: at32f403_dma.c:126
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
dma_data_number_set
void dma_data_number_set(dma_channel_type *dmax_channely, uint16_t data_number)
set the number of data to be transferred
Definition: at32f403_dma.c:103
dma_peripheral_inc_type
dma_peripheral_inc_type
dma peripheral incremented type
Definition: at32f403_dma.h:135
dma_peripheral_data_size_type
dma_peripheral_data_size_type
dma peripheral data size type
Definition: at32f403_dma.h:153
dma_dir_type
dma_dir_type
dma direction type
Definition: at32f403_dma.h:125
dma_memory_data_size_type
dma_memory_data_size_type
dma memory data size type
Definition: at32f403_dma.h:163
dma_priority_level_type
dma_priority_level_type
dma priority level type
Definition: at32f403_dma.h:173
dma_memory_inc_type
dma_memory_inc_type
dma memory incremented type
Definition: at32f403_dma.h:144
DMA_PERIPHERAL_INC_DISABLE
@ DMA_PERIPHERAL_INC_DISABLE
Definition: at32f403_dma.h:136
DMA_PERIPHERAL_INC_ENABLE
@ DMA_PERIPHERAL_INC_ENABLE
Definition: at32f403_dma.h:137
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_MEMORY_TO_MEMORY
@ DMA_DIR_MEMORY_TO_MEMORY
Definition: at32f403_dma.h:128
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA_PRIORITY_VERY_HIGH
@ DMA_PRIORITY_VERY_HIGH
Definition: at32f403_dma.h:177
DMA_PRIORITY_LOW
@ DMA_PRIORITY_LOW
Definition: at32f403_dma.h:174
DMA_MEMORY_INC_ENABLE
@ DMA_MEMORY_INC_ENABLE
Definition: at32f403_dma.h:146
DMA_MEMORY_INC_DISABLE
@ DMA_MEMORY_INC_DISABLE
Definition: at32f403_dma.h:145
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
dma_channel_type
type define dma channel register all
Definition: at32f403_dma.h:287
dma_channel_type::dtcnt
__IO uint32_t dtcnt
Definition: at32f403_dma.h:317
dma_channel_type::cnt
__IO uint32_t cnt
Definition: at32f403_dma.h:320
dma_channel_type::pwidth
__IO uint32_t pwidth
Definition: at32f403_dma.h:304
dma_channel_type::paddr
__IO uint32_t paddr
Definition: at32f403_dma.h:330
dma_channel_type::mincm
__IO uint32_t mincm
Definition: at32f403_dma.h:303
dma_channel_type::dterrien
__IO uint32_t dterrien
Definition: at32f403_dma.h:299
dma_channel_type::chen
__IO uint32_t chen
Definition: at32f403_dma.h:296
dma_channel_type::lm
__IO uint32_t lm
Definition: at32f403_dma.h:301
dma_channel_type::mwidth
__IO uint32_t mwidth
Definition: at32f403_dma.h:305
dma_channel_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_dma.h:308
dma_channel_type::dtd
__IO uint32_t dtd
Definition: at32f403_dma.h:300
dma_channel_type::maddr
__IO uint32_t maddr
Definition: at32f403_dma.h:342
dma_channel_type::hdtien
__IO uint32_t hdtien
Definition: at32f403_dma.h:298
dma_channel_type::m2m
__IO uint32_t m2m
Definition: at32f403_dma.h:307
dma_channel_type::pincm
__IO uint32_t pincm
Definition: at32f403_dma.h:302
dma_channel_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_dma.h:293
dma_channel_type::fdtien
__IO uint32_t fdtien
Definition: at32f403_dma.h:297
dma_channel_type::chpl
__IO uint32_t chpl
Definition: at32f403_dma.h:306
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
dma_type
type define dma register
Definition: at32f403_dma.h:201
dma_type::gfc3
__IO uint32_t gfc3
Definition: at32f403_dma.h:258
dma_type::dterrfc1
__IO uint32_t dterrfc1
Definition: at32f403_dma.h:253
dma_type::gfc2
__IO uint32_t gfc2
Definition: at32f403_dma.h:254
dma_type::hdtfc3
__IO uint32_t hdtfc3
Definition: at32f403_dma.h:260
dma_type::fdtfc2
__IO uint32_t fdtfc2
Definition: at32f403_dma.h:255
dma_type::hdtf7
__IO uint32_t hdtf7
Definition: at32f403_dma.h:236
dma_type::gfc1
__IO uint32_t gfc1
Definition: at32f403_dma.h:250
dma_type::gf4
__IO uint32_t gf4
Definition: at32f403_dma.h:222
dma_type::hdtf2
__IO uint32_t hdtf2
Definition: at32f403_dma.h:216
dma_type::hdtf3
__IO uint32_t hdtf3
Definition: at32f403_dma.h:220
dma_type::fdtf7
__IO uint32_t fdtf7
Definition: at32f403_dma.h:235
dma_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_dma.h:238
dma_type::dterrfc2
__IO uint32_t dterrfc2
Definition: at32f403_dma.h:257
dma_type::dterrf4
__IO uint32_t dterrf4
Definition: at32f403_dma.h:225
dma_type::gf7
__IO uint32_t gf7
Definition: at32f403_dma.h:234
dma_type::fdtfc4
__IO uint32_t fdtfc4
Definition: at32f403_dma.h:263
dma_type::gf2
__IO uint32_t gf2
Definition: at32f403_dma.h:214
dma_type::hdtfc6
__IO uint32_t hdtfc6
Definition: at32f403_dma.h:272
dma_type::dterrf5
__IO uint32_t dterrf5
Definition: at32f403_dma.h:229
dma_type::hdtf5
__IO uint32_t hdtf5
Definition: at32f403_dma.h:228
dma_type::fdtfc5
__IO uint32_t fdtfc5
Definition: at32f403_dma.h:267
dma_type::fdtfc1
__IO uint32_t fdtfc1
Definition: at32f403_dma.h:251
dma_type::hdtf4
__IO uint32_t hdtf4
Definition: at32f403_dma.h:224
dma_type::fdtf1
__IO uint32_t fdtf1
Definition: at32f403_dma.h:211
dma_type::gfc6
__IO uint32_t gfc6
Definition: at32f403_dma.h:270
dma_type::dterrf6
__IO uint32_t dterrf6
Definition: at32f403_dma.h:233
dma_type::fdtf4
__IO uint32_t fdtf4
Definition: at32f403_dma.h:223
dma_type::dterrf2
__IO uint32_t dterrf2
Definition: at32f403_dma.h:217
dma_type::gfc4
__IO uint32_t gfc4
Definition: at32f403_dma.h:262
dma_type::dterrfc3
__IO uint32_t dterrfc3
Definition: at32f403_dma.h:261
dma_type::dterrf1
__IO uint32_t dterrf1
Definition: at32f403_dma.h:213
dma_type::hdtfc1
__IO uint32_t hdtfc1
Definition: at32f403_dma.h:252
dma_type::sts
__IO uint32_t sts
Definition: at32f403_dma.h:207
dma_type::dterrf3
__IO uint32_t dterrf3
Definition: at32f403_dma.h:221
dma_type::fdtf5
__IO uint32_t fdtf5
Definition: at32f403_dma.h:227
dma_type::clr
__IO uint32_t clr
Definition: at32f403_dma.h:247
dma_type::fdtfc7
__IO uint32_t fdtfc7
Definition: at32f403_dma.h:275
dma_type::fdtf2
__IO uint32_t fdtf2
Definition: at32f403_dma.h:215
dma_type::gf1
__IO uint32_t gf1
Definition: at32f403_dma.h:210
dma_type::fdtf3
__IO uint32_t fdtf3
Definition: at32f403_dma.h:219
dma_type::hdtfc5
__IO uint32_t hdtfc5
Definition: at32f403_dma.h:268
dma_type::gf3
__IO uint32_t gf3
Definition: at32f403_dma.h:218
dma_type::dterrfc6
__IO uint32_t dterrfc6
Definition: at32f403_dma.h:273
dma_type::fdtfc3
__IO uint32_t fdtfc3
Definition: at32f403_dma.h:259
dma_type::hdtfc2
__IO uint32_t hdtfc2
Definition: at32f403_dma.h:256
dma_type::fdtfc6
__IO uint32_t fdtfc6
Definition: at32f403_dma.h:271
dma_type::dterrfc7
__IO uint32_t dterrfc7
Definition: at32f403_dma.h:277
dma_type::gf6
__IO uint32_t gf6
Definition: at32f403_dma.h:230
dma_type::fdtf6
__IO uint32_t fdtf6
Definition: at32f403_dma.h:231
dma_type::gfc5
__IO uint32_t gfc5
Definition: at32f403_dma.h:266
dma_type::hdtfc7
__IO uint32_t hdtfc7
Definition: at32f403_dma.h:276
dma_type::dterrfc5
__IO uint32_t dterrfc5
Definition: at32f403_dma.h:269
dma_type::gfc7
__IO uint32_t gfc7
Definition: at32f403_dma.h:274
dma_type::hdtf1
__IO uint32_t hdtf1
Definition: at32f403_dma.h:212
dma_type::dterrf7
__IO uint32_t dterrf7
Definition: at32f403_dma.h:237
dma_type::dterrfc4
__IO uint32_t dterrfc4
Definition: at32f403_dma.h:265
dma_type::gf5
__IO uint32_t gf5
Definition: at32f403_dma.h:226
dma_type::hdtfc4
__IO uint32_t hdtfc4
Definition: at32f403_dma.h:264
dma_type::hdtf6
__IO uint32_t hdtf6
Definition: at32f403_dma.h:232


AT32F403 Firmwary Library: at32f403_exint.c Source File

  • libraries
  • drivers
  • src
at32f403_exint.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef EXINT_MODULE_ENABLED
37
47void exint_reset(void)
48{
49 EXINT->inten = 0x00000000;
50 EXINT->polcfg1 = 0x00000000;
51 EXINT->polcfg2 = 0x00000000;
52 EXINT->evten = 0x00000000;
53 EXINT->intsts = 0x000FFFFF;
54}
55
62void exint_default_para_init(exint_init_type *exint_struct)
63{
64 exint_struct->line_enable = FALSE;
65 exint_struct->line_select = EXINT_LINE_NONE;
66 exint_struct->line_polarity = EXINT_TRIGGER_FALLING_EDGE;
67 exint_struct->line_mode = EXINT_LINE_EVENT;
68}
69
76void exint_init(exint_init_type *exint_struct)
77{
78 uint32_t line_index = 0;
79 line_index = exint_struct->line_select;
80
81 EXINT->inten &= ~line_index;
82 EXINT->evten &= ~line_index;
83
84 if(exint_struct->line_enable != FALSE)
85 {
86 if(exint_struct->line_mode == EXINT_LINE_INTERRUPUT)
87 {
88 EXINT->inten |= line_index;
89 }
90 else
91 {
92 EXINT->evten |= line_index;
93 }
94
95 EXINT->polcfg1 &= ~line_index;
96 EXINT->polcfg2 &= ~line_index;
97 if(exint_struct->line_polarity == EXINT_TRIGGER_RISING_EDGE)
98 {
99 EXINT->polcfg1 |= line_index;
100 }
101 else if(exint_struct->line_polarity == EXINT_TRIGGER_FALLING_EDGE)
102 {
103 EXINT->polcfg2 |= line_index;
104 }
105 else
106 {
107 EXINT->polcfg1 |= line_index;
108 EXINT->polcfg2 |= line_index;
109 }
110 }
111}
112
124void exint_flag_clear(uint32_t exint_line)
125{
126 EXINT->intsts = exint_line;
127}
128
140 flag_status exint_flag_get(uint32_t exint_line)
141{
142 flag_status status = RESET;
143 uint32_t exint_flag =0;
144 exint_flag = EXINT->intsts & exint_line;
145 if((exint_flag != (uint16_t)RESET))
146 {
147 status = SET;
148 }
149 else
150 {
151 status = RESET;
152 }
153 return status;
154}
155
167 flag_status exint_interrupt_flag_get(uint32_t exint_line)
168{
169 flag_status status = RESET;
170 uint32_t exint_flag =0;
171 exint_flag = EXINT->intsts & exint_line & EXINT->inten;
172 if((exint_flag != (uint16_t)RESET))
173 {
174 status = SET;
175 }
176 else
177 {
178 status = RESET;
179 }
180 return status;
181}
182
194void exint_software_interrupt_event_generate(uint32_t exint_line)
195{
196 EXINT->swtrg |= exint_line;
197}
198
212void exint_interrupt_enable(uint32_t exint_line, confirm_state new_state)
213{
214 if(new_state == TRUE)
215 {
216 EXINT->inten |= exint_line;
217 }
218 else
219 {
220 EXINT->inten &= ~exint_line;
221 }
222}
223
237void exint_event_enable(uint32_t exint_line, confirm_state new_state)
238{
239 if(new_state == TRUE)
240 {
241 EXINT->evten |= exint_line;
242 }
243 else
244 {
245 EXINT->evten &= ~exint_line;
246 }
247}
248
253#endif
254
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
EXINT_LINE_EVENT
@ EXINT_LINE_EVENT
Definition: at32f403_exint.h:85
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_TRIGGER_FALLING_EDGE
@ EXINT_TRIGGER_FALLING_EDGE
Definition: at32f403_exint.h:94
EXINT_LINE_NONE
#define EXINT_LINE_NONE
Definition: at32f403_exint.h:49
exint_flag_get
flag_status exint_flag_get(uint32_t exint_line)
get exint flag
Definition: at32f403_exint.c:140
exint_interrupt_enable
void exint_interrupt_enable(uint32_t exint_line, confirm_state new_state)
enable or disable exint interrupt
Definition: at32f403_exint.c:212
exint_event_enable
void exint_event_enable(uint32_t exint_line, confirm_state new_state)
enable or disable exint event
Definition: at32f403_exint.c:237
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_reset
void exint_reset(void)
exint reset
Definition: at32f403_exint.c:47
exint_software_interrupt_event_generate
void exint_software_interrupt_event_generate(uint32_t exint_line)
generate exint software interrupt event
Definition: at32f403_exint.c:194
exint_interrupt_flag_get
flag_status exint_interrupt_flag_get(uint32_t exint_line)
get exint interrupt flag
Definition: at32f403_exint.c:167
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT
#define EXINT
Definition: at32f403_exint.h:198
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_exint.h Source File

  • libraries
  • drivers
  • inc
at32f403_exint.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_EXINT_H
27#define __AT32F403_EXINT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
49#define EXINT_LINE_NONE ((uint32_t)0x000000)
50#define EXINT_LINE_0 ((uint32_t)0x000001)
51#define EXINT_LINE_1 ((uint32_t)0x000002)
52#define EXINT_LINE_2 ((uint32_t)0x000004)
53#define EXINT_LINE_3 ((uint32_t)0x000008)
54#define EXINT_LINE_4 ((uint32_t)0x000010)
55#define EXINT_LINE_5 ((uint32_t)0x000020)
56#define EXINT_LINE_6 ((uint32_t)0x000040)
57#define EXINT_LINE_7 ((uint32_t)0x000080)
58#define EXINT_LINE_8 ((uint32_t)0x000100)
59#define EXINT_LINE_9 ((uint32_t)0x000200)
60#define EXINT_LINE_10 ((uint32_t)0x000400)
61#define EXINT_LINE_11 ((uint32_t)0x000800)
62#define EXINT_LINE_12 ((uint32_t)0x001000)
63#define EXINT_LINE_13 ((uint32_t)0x002000)
64#define EXINT_LINE_14 ((uint32_t)0x004000)
65#define EXINT_LINE_15 ((uint32_t)0x008000)
66#define EXINT_LINE_16 ((uint32_t)0x010000)
67#define EXINT_LINE_17 ((uint32_t)0x020000)
68#define EXINT_LINE_18 ((uint32_t)0x040000)
69#define EXINT_LINE_19 ((uint32_t)0x080000)
82typedef enum
83{
84 EXINT_LINE_INTERRUPUT = 0x00,
85 EXINT_LINE_EVENT = 0x01
86} exint_line_mode_type;
87
91typedef enum
92{
93 EXINT_TRIGGER_RISING_EDGE = 0x00,
94 EXINT_TRIGGER_FALLING_EDGE = 0x01,
95 EXINT_TRIGGER_BOTH_EDGE = 0x02
96} exint_polarity_config_type;
97
101typedef struct
102{
103 exint_line_mode_type line_mode;
104 uint32_t line_select;
105 exint_polarity_config_type line_polarity;
106 confirm_state line_enable;
107} exint_init_type;
108
112typedef struct
113{
114
118 union
119 {
120 __IO uint32_t inten;
121 struct
122 {
123 __IO uint32_t intenx : 20;/* [19:0] */
124 __IO uint32_t reserved1 : 12;/* [31:20] */
125 } inten_bit;
126 };
127
131 union
132 {
133 __IO uint32_t evten;
134 struct
135 {
136 __IO uint32_t evtenx : 20;/* [19:0] */
137 __IO uint32_t reserved1 : 12;/* [31:20] */
138 } evten_bit;
139 };
140
144 union
145 {
146 __IO uint32_t polcfg1;
147 struct
148 {
149 __IO uint32_t rpx : 20;/* [19:0] */
150 __IO uint32_t reserved1 : 12;/* [31:20] */
151 } polcfg1_bit;
152 };
153
157 union
158 {
159 __IO uint32_t polcfg2;
160 struct
161 {
162 __IO uint32_t fpx : 20;/* [19:0] */
163 __IO uint32_t reserved1 : 12;/* [31:20] */
164 } polcfg2_bit;
165 };
166
170 union
171 {
172 __IO uint32_t swtrg;
173 struct
174 {
175 __IO uint32_t swtx : 20;/* [19:0] */
176 __IO uint32_t reserved1 : 12;/* [31:20] */
177 } swtrg_bit;
178 };
179
183 union
184 {
185 __IO uint32_t intsts;
186 struct
187 {
188 __IO uint32_t linex : 20;/* [19:0] */
189 __IO uint32_t reserved1 : 12;/* [31:20] */
190 } intsts_bit;
191 };
192} exint_type;
193
198#define EXINT ((exint_type *) EXINT_BASE)
199
204void exint_reset(void);
205void exint_default_para_init(exint_init_type *exint_struct);
206void exint_init(exint_init_type *exint_struct);
207void exint_flag_clear(uint32_t exint_line);
208 flag_status exint_flag_get(uint32_t exint_line);
209 flag_status exint_interrupt_flag_get(uint32_t exint_line);
210void exint_software_interrupt_event_generate(uint32_t exint_line);
211void exint_interrupt_enable(uint32_t exint_line, confirm_state new_state);
212void exint_event_enable(uint32_t exint_line, confirm_state new_state);
213
226#ifdef __cplusplus
227}
228#endif
229
230#endif
at32f403.h
at32f403 header file
exint_flag_get
flag_status exint_flag_get(uint32_t exint_line)
get exint flag
Definition: at32f403_exint.c:140
exint_interrupt_enable
void exint_interrupt_enable(uint32_t exint_line, confirm_state new_state)
enable or disable exint interrupt
Definition: at32f403_exint.c:212
exint_event_enable
void exint_event_enable(uint32_t exint_line, confirm_state new_state)
enable or disable exint event
Definition: at32f403_exint.c:237
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_reset
void exint_reset(void)
exint reset
Definition: at32f403_exint.c:47
exint_software_interrupt_event_generate
void exint_software_interrupt_event_generate(uint32_t exint_line)
generate exint software interrupt event
Definition: at32f403_exint.c:194
exint_interrupt_flag_get
flag_status exint_interrupt_flag_get(uint32_t exint_line)
get exint interrupt flag
Definition: at32f403_exint.c:167
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
exint_line_mode_type
exint_line_mode_type
exint line mode type
Definition: at32f403_exint.h:83
exint_polarity_config_type
exint_polarity_config_type
exint polarity configuration type
Definition: at32f403_exint.h:92
EXINT_LINE_EVENT
@ EXINT_LINE_EVENT
Definition: at32f403_exint.h:85
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_TRIGGER_FALLING_EDGE
@ EXINT_TRIGGER_FALLING_EDGE
Definition: at32f403_exint.h:94
EXINT_TRIGGER_BOTH_EDGE
@ EXINT_TRIGGER_BOTH_EDGE
Definition: at32f403_exint.h:95
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
exint_type
type define exint register all
Definition: at32f403_exint.h:113
exint_type::polcfg1
__IO uint32_t polcfg1
Definition: at32f403_exint.h:146
exint_type::intsts
__IO uint32_t intsts
Definition: at32f403_exint.h:185
exint_type::polcfg2
__IO uint32_t polcfg2
Definition: at32f403_exint.h:159
exint_type::fpx
__IO uint32_t fpx
Definition: at32f403_exint.h:162
exint_type::intenx
__IO uint32_t intenx
Definition: at32f403_exint.h:123
exint_type::rpx
__IO uint32_t rpx
Definition: at32f403_exint.h:149
exint_type::evtenx
__IO uint32_t evtenx
Definition: at32f403_exint.h:136
exint_type::linex
__IO uint32_t linex
Definition: at32f403_exint.h:188
exint_type::inten
__IO uint32_t inten
Definition: at32f403_exint.h:120
exint_type::evten
__IO uint32_t evten
Definition: at32f403_exint.h:133
exint_type::swtx
__IO uint32_t swtx
Definition: at32f403_exint.h:175
exint_type::swtrg
__IO uint32_t swtrg
Definition: at32f403_exint.h:172
exint_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_exint.h:124


AT32F403 Firmwary Library: at32f403_flash.c Source File

  • libraries
  • drivers
  • src
at32f403_flash.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef FLASH_MODULE_ENABLED
37
65 flag_status flash_flag_get(uint32_t flash_flag)
66{
67 flag_status status = RESET;
68 uint32_t flag_position;
69 flag_position = flash_flag & 0x70000000;
70 flash_flag &= 0x8FFFFFFF;
71 switch(flag_position)
72 {
73 case 0x00000000:
74 if(FLASH->sts & flash_flag)
75 status = SET;
76 break;
77 case 0x10000000:
78 if(FLASH->sts2 & flash_flag)
79 status = SET;
80 break;
81 case 0x20000000:
82 if(FLASH->sts3 & flash_flag)
83 status = SET;
84 break;
85 case 0x40000000:
86 if(FLASH->usd & flash_flag)
87 status = SET;
88 break;
89 default:
90 break;
91 }
92 /* return the new state of flash_flag (SET or RESET) */
93 return status;
94}
95
114void flash_flag_clear(uint32_t flash_flag)
115{
116 uint32_t flag_position;
117 flag_position = flash_flag & 0x70000000;
118 flash_flag &= 0x8FFFFFFF;
119 switch(flag_position)
120 {
121 case 0x00000000:
122 FLASH->sts = flash_flag;
123 break;
124 case 0x10000000:
125 FLASH->sts2 = flash_flag;
126 break;
127 case 0x20000000:
128 FLASH->sts3 = flash_flag;
129 break;
130 default:
131 break;
132 }
133}
134
141 flash_status_type flash_operation_status_get(void)
142{
143 flash_status_type flash_status = FLASH_OPERATE_DONE;
144 if(FLASH->sts_bit.obf != RESET)
145 {
146 flash_status = FLASH_OPERATE_BUSY;
147 }
148 else if(FLASH->sts_bit.prgmerr != RESET)
149 {
150 flash_status = FLASH_PROGRAM_ERROR;
151 }
152 else if(FLASH->sts_bit.epperr != RESET)
153 {
154 flash_status = FLASH_EPP_ERROR;
155 }
156 else
157 {
158 flash_status = FLASH_OPERATE_DONE;
159 }
160 /* return the flash status */
161 return flash_status;
162}
163
170 flash_status_type flash_bank1_operation_status_get(void)
171{
172 flash_status_type flash_status = FLASH_OPERATE_DONE;
173 if(FLASH->sts_bit.obf != RESET)
174 {
175 flash_status = FLASH_OPERATE_BUSY;
176 }
177 else if(FLASH->sts_bit.prgmerr != RESET)
178 {
179 flash_status = FLASH_PROGRAM_ERROR;
180 }
181 else if(FLASH->sts_bit.epperr != RESET)
182 {
183 flash_status = FLASH_EPP_ERROR;
184 }
185 else
186 {
187 flash_status = FLASH_OPERATE_DONE;
188 }
189 /* return the flash status */
190 return flash_status;
191}
192
199 flash_status_type flash_bank2_operation_status_get(void)
200{
201 flash_status_type flash_status = FLASH_OPERATE_DONE;
202 if(FLASH->sts2_bit.obf != RESET)
203 {
204 flash_status = FLASH_OPERATE_BUSY;
205 }
206 else if(FLASH->sts2_bit.prgmerr != RESET)
207 {
208 flash_status = FLASH_PROGRAM_ERROR;
209 }
210 else if(FLASH->sts2_bit.epperr != RESET)
211 {
212 flash_status = FLASH_EPP_ERROR;
213 }
214 else
215 {
216 flash_status = FLASH_OPERATE_DONE;
217 }
218 /* return the flash status */
219 return flash_status;
220}
221
228 flash_status_type flash_spim_operation_status_get(void)
229{
230 flash_status_type flash_status = FLASH_OPERATE_DONE;
231 if(FLASH->sts3_bit.obf != RESET)
232 {
233 flash_status = FLASH_OPERATE_BUSY;
234 }
235 else if(FLASH->sts3_bit.prgmerr != RESET)
236 {
237 flash_status = FLASH_PROGRAM_ERROR;
238 }
239 else if(FLASH->sts3_bit.epperr != RESET)
240 {
241 flash_status = FLASH_EPP_ERROR;
242 }
243 else
244 {
245 flash_status = FLASH_OPERATE_DONE;
246 }
247 /* return the flash status */
248 return flash_status;
249}
250
257 flash_status_type flash_operation_wait_for(uint32_t time_out)
258{
259 flash_status_type status = FLASH_OPERATE_DONE;
260 /* check for the flash status */
261 status = flash_operation_status_get();
262
263 while((status == FLASH_OPERATE_BUSY) && (time_out != 0x00))
264 {
265 status = flash_operation_status_get();
266 time_out--;
267 }
268 if(time_out == 0x00)
269 {
270 status = FLASH_OPERATE_TIMEOUT;
271 }
272 /* return the status */
273 return status;
274}
275
282 flash_status_type flash_bank1_operation_wait_for(uint32_t time_out)
283{
284 flash_status_type status = FLASH_OPERATE_DONE;
285 /* check for the flash status */
286 status = flash_bank1_operation_status_get();
287
288 while((status == FLASH_OPERATE_BUSY) && (time_out != 0x00))
289 {
290 status = flash_bank1_operation_status_get();
291 time_out--;
292 }
293 if(time_out == 0x00)
294 {
295 status = FLASH_OPERATE_TIMEOUT;
296 }
297 /* return the operation status */
298 return status;
299}
300
307 flash_status_type flash_bank2_operation_wait_for(uint32_t time_out)
308{
309 flash_status_type status = FLASH_OPERATE_DONE;
310 /* check for the flash status */
311 status = flash_bank2_operation_status_get();
312
313 while((status == FLASH_OPERATE_BUSY) && (time_out != 0x00))
314 {
315 status = flash_bank2_operation_status_get();
316 time_out--;
317 }
318 if(time_out == 0x00)
319 {
320 status = FLASH_OPERATE_TIMEOUT;
321 }
322 /* return the operation status */
323 return status;
324}
325
332 flash_status_type flash_spim_operation_wait_for(uint32_t time_out)
333{
334 flash_status_type status = FLASH_OPERATE_DONE;
335 /* check for the flash status */
336 status = flash_spim_operation_status_get();
337
338 while((status == FLASH_OPERATE_BUSY) && (time_out != 0x00))
339 {
340 status = flash_spim_operation_status_get();
341 time_out--;
342 }
343 if(time_out == 0x00)
344 {
345 status = FLASH_OPERATE_TIMEOUT;
346 }
347 /* return the operation status */
348 return status;
349}
350
356void flash_unlock(void)
357{
358 FLASH->unlock = FLASH_UNLOCK_KEY1;
359 FLASH->unlock = FLASH_UNLOCK_KEY2;
360 FLASH->unlock2 = FLASH_UNLOCK_KEY1;
361 FLASH->unlock2 = FLASH_UNLOCK_KEY2;
362}
363
369void flash_bank1_unlock(void)
370{
371 FLASH->unlock = FLASH_UNLOCK_KEY1;
372 FLASH->unlock = FLASH_UNLOCK_KEY2;
373}
374
380void flash_bank2_unlock(void)
381{
382 FLASH->unlock2 = FLASH_UNLOCK_KEY1;
383 FLASH->unlock2 = FLASH_UNLOCK_KEY2;
384}
385
391void flash_spim_unlock(void)
392{
393 FLASH->unlock3 = FLASH_UNLOCK_KEY1;
394 FLASH->unlock3 = FLASH_UNLOCK_KEY2;
395}
396
402void flash_lock(void)
403{
404 FLASH->ctrl_bit.oplk = TRUE;
405 FLASH->ctrl2_bit.oplk = TRUE;
406}
407
413void flash_bank1_lock(void)
414{
415 FLASH->ctrl_bit.oplk = TRUE;
416}
417
423void flash_bank2_lock(void)
424{
425 FLASH->ctrl2_bit.oplk = TRUE;
426}
427
433void flash_spim_lock(void)
434{
435 FLASH->ctrl3_bit.oplk = TRUE;
436}
437
444 flash_status_type flash_sector_erase(uint32_t sector_address)
445{
446 flash_status_type status = FLASH_OPERATE_DONE;
447 if((sector_address >= FLASH_BANK1_START_ADDR) && (sector_address <= FLASH_BANK1_END_ADDR))
448 {
449 FLASH->ctrl_bit.secers = TRUE;
450 FLASH->addr = sector_address;
451 FLASH->ctrl_bit.erstr = TRUE;
452
453 /* wait for operation to be completed */
454 status = flash_bank1_operation_wait_for(ERASE_TIMEOUT);
455
456 /* disable the secers bit */
457 FLASH->ctrl_bit.secers = FALSE;
458 }
459 else if((sector_address >= FLASH_BANK2_START_ADDR) && (sector_address <= FLASH_BANK2_END_ADDR))
460 {
461 FLASH->ctrl2_bit.secers = TRUE;
462 FLASH->addr2 = sector_address;
463 FLASH->ctrl2_bit.erstr = TRUE;
464
465 /* wait for operation to be completed */
466 status = flash_bank2_operation_wait_for(ERASE_TIMEOUT);
467
468 /* disable the secers bit */
469 FLASH->ctrl2_bit.secers = FALSE;
470 }
471 /* spim : external flash */
472 else if(sector_address >= FLASH_SPIM_START_ADDR)
473 {
474 FLASH->ctrl3_bit.secers = TRUE;
475 FLASH->addr3 = sector_address;
476 FLASH->ctrl3_bit.erstr = TRUE;
477
478 /* wait for operation to be completed */
479 status = flash_spim_operation_wait_for(SPIM_ERASE_TIMEOUT);
480
481 /* disable the secers bit */
482 FLASH->ctrl3_bit.secers = FALSE;
483
484 /* dummy read */
485 flash_spim_dummy_read();
486 }
487
488 /* return the erase status */
489 return status;
490}
491
498 flash_status_type flash_internal_all_erase(void)
499{
500 flash_status_type status = FLASH_OPERATE_DONE;
501
502 FLASH->ctrl_bit.bankers = TRUE;
503 FLASH->ctrl_bit.erstr = TRUE;
504
505 /* wait for operation to be completed */
506 status = flash_bank1_operation_wait_for(ERASE_TIMEOUT);
507
508 /* disable the bankers bit */
509 FLASH->ctrl_bit.bankers = FALSE;
510
511 if(status == FLASH_OPERATE_DONE)
512 {
513 /* if the previous operation is completed, continue to erase bank2 */
514 FLASH->ctrl2_bit.bankers = TRUE;
515 FLASH->ctrl2_bit.erstr = TRUE;
516
517 /* wait for operation to be completed */
518 status = flash_bank2_operation_wait_for(ERASE_TIMEOUT);
519
520 /* disable the bankers bit */
521 FLASH->ctrl2_bit.bankers = FALSE;
522 }
523 /* return the erase status */
524 return status;
525}
526
533 flash_status_type flash_bank1_erase(void)
534{
535 flash_status_type status = FLASH_OPERATE_DONE;
536
537 FLASH->ctrl_bit.bankers = TRUE;
538 FLASH->ctrl_bit.erstr = TRUE;
539
540 /* wait for operation to be completed */
541 status = flash_bank1_operation_wait_for(ERASE_TIMEOUT);
542
543 /* disable the bankers bit */
544 FLASH->ctrl_bit.bankers = FALSE;
545
546 /* return the erase status */
547 return status;
548}
549
556 flash_status_type flash_bank2_erase(void)
557{
558 flash_status_type status = FLASH_OPERATE_DONE;
559
560 FLASH->ctrl2_bit.bankers = TRUE;
561 FLASH->ctrl2_bit.erstr = TRUE;
562
563 /* wait for operation to be completed */
564 status = flash_bank2_operation_wait_for(ERASE_TIMEOUT);
565
566 /* disable the bankers bit */
567 FLASH->ctrl2_bit.bankers = FALSE;
568
569 /* return the erase status */
570 return status;
571}
572
579 flash_status_type flash_spim_all_erase(void)
580{
581 flash_status_type status = FLASH_OPERATE_DONE;
582
583 FLASH->ctrl3_bit.chpers = TRUE;
584 FLASH->ctrl3_bit.erstr = TRUE;
585
586 /* wait for operation to be completed */
587 status = flash_spim_operation_wait_for(SPIM_ERASE_TIMEOUT);
588
589 /* disable the chpers bit */
590 FLASH->ctrl3_bit.chpers = FALSE;
591
592 /* dummy read */
593 flash_spim_dummy_read();
594
595 /* return the erase status */
596 return status;
597}
598
606 flash_status_type flash_user_system_data_erase(void)
607{
608 flash_status_type status = FLASH_OPERATE_DONE;
609 uint16_t fap_val = FAP_RELIEVE_KEY;
610
611 /* get the flash access protection status */
612 if(flash_fap_status_get() != RESET)
613 {
614 fap_val = 0x0000;
615 }
616
617 /* unlock the user system data */
618 FLASH->usd_unlock = FLASH_UNLOCK_KEY1;
619 FLASH->usd_unlock = FLASH_UNLOCK_KEY2;
620 while(FLASH->ctrl_bit.usdulks==RESET);
621
622 /* erase the user system data */
623 FLASH->ctrl_bit.usders = TRUE;
624 FLASH->ctrl_bit.erstr = TRUE;
625
626 /* wait for operation to be completed */
627 status = flash_operation_wait_for(ERASE_TIMEOUT);
628
629 /* disable the usders bit */
630 FLASH->ctrl_bit.usders = FALSE;
631
632 if((status == FLASH_OPERATE_DONE) && (fap_val == FAP_RELIEVE_KEY))
633 {
634 /* enable the user system data programming operation */
635 FLASH->ctrl_bit.usdprgm = TRUE;
636
637 /* restore the last flash access protection value */
638 USD->fap = (uint16_t)fap_val;
639
640 /* wait for operation to be completed */
641 status = flash_operation_wait_for(PROGRAMMING_TIMEOUT);
642
643 /*disable the usdprgm bit */
644 FLASH->ctrl_bit.usdprgm = FALSE;
645 }
646
647 /* return the erase status */
648 return status;
649}
650
658 flash_status_type flash_word_program(uint32_t address, uint32_t data)
659{
660 flash_status_type status = FLASH_OPERATE_DONE;
661 if((address >= FLASH_BANK1_START_ADDR) && (address <= FLASH_BANK1_END_ADDR))
662 {
663 FLASH->ctrl_bit.fprgm = TRUE;
664 *(__IO uint32_t*)address = data;
665 /* wait for operation to be completed */
666 status = flash_bank1_operation_wait_for(PROGRAMMING_TIMEOUT);
667
668 /* disable the fprgm bit */
669 FLASH->ctrl_bit.fprgm = FALSE;
670 }
671 else if((address >= FLASH_BANK2_START_ADDR) && (address <= FLASH_BANK2_END_ADDR))
672 {
673 FLASH->ctrl2_bit.fprgm = TRUE;
674 *(__IO uint32_t*)address = data;
675 /* wait for operation to be completed */
676 status = flash_bank2_operation_wait_for(PROGRAMMING_TIMEOUT);
677
678 /* disable the fprgm bit */
679 FLASH->ctrl2_bit.fprgm = FALSE;
680 }
681 /* spim : external flash */
682 else if(address >= FLASH_SPIM_START_ADDR)
683 {
684 FLASH->ctrl3_bit.fprgm = TRUE;
685 *(__IO uint32_t*)address = data;
686 /* wait for operation to be completed */
687 status = flash_spim_operation_wait_for(SPIM_PROGRAMMING_TIMEOUT);
688
689 /* disable the fprgm bit */
690 FLASH->ctrl3_bit.fprgm = FALSE;
691
692 /* dummy read */
693 flash_spim_dummy_read();
694 }
695
696 /* return the program status */
697 return status;
698}
699
707 flash_status_type flash_halfword_program(uint32_t address, uint16_t data)
708{
709 flash_status_type status = FLASH_OPERATE_DONE;
710 if((address >= FLASH_BANK1_START_ADDR) && (address <= FLASH_BANK1_END_ADDR))
711 {
712 FLASH->ctrl_bit.fprgm = TRUE;
713 *(__IO uint16_t*)address = data;
714 /* wait for operation to be completed */
715 status = flash_bank1_operation_wait_for(PROGRAMMING_TIMEOUT);
716
717 /* disable the fprgm bit */
718 FLASH->ctrl_bit.fprgm = FALSE;
719 }
720 else if((address >= FLASH_BANK2_START_ADDR) && (address <= FLASH_BANK2_END_ADDR))
721 {
722 FLASH->ctrl2_bit.fprgm = TRUE;
723 *(__IO uint16_t*)address = data;
724 /* wait for operation to be completed */
725 status = flash_bank2_operation_wait_for(PROGRAMMING_TIMEOUT);
726
727 /* disable the fprgm bit */
728 FLASH->ctrl2_bit.fprgm = FALSE;
729 }
730 /* spim : external flash */
731 else if(address >= FLASH_SPIM_START_ADDR)
732 {
733 FLASH->ctrl3_bit.fprgm = TRUE;
734 *(__IO uint16_t*)address = data;
735 /* wait for operation to be completed */
736 status = flash_spim_operation_wait_for(SPIM_PROGRAMMING_TIMEOUT);
737
738 /* disable the fprgm bit */
739 FLASH->ctrl3_bit.fprgm = FALSE;
740
741 /* dummy read */
742 flash_spim_dummy_read();
743 }
744
745 /* return the program status */
746 return status;
747}
748
757 flash_status_type flash_byte_program(uint32_t address, uint8_t data)
758{
759 flash_status_type status = FLASH_OPERATE_DONE;
760 if((address >= FLASH_BANK1_START_ADDR) && (address <= FLASH_BANK1_END_ADDR))
761 {
762 FLASH->ctrl_bit.fprgm = TRUE;
763 *(__IO uint8_t*)address = data;
764 /* wait for operation to be completed */
765 status = flash_bank1_operation_wait_for(PROGRAMMING_TIMEOUT);
766
767 /* disable the fprgm bit */
768 FLASH->ctrl_bit.fprgm = FALSE;
769 }
770 else if((address >= FLASH_BANK2_START_ADDR) && (address <= FLASH_BANK2_END_ADDR))
771 {
772 FLASH->ctrl2_bit.fprgm = TRUE;
773 *(__IO uint8_t*)address = data;
774 /* wait for operation to be completed */
775 status = flash_bank2_operation_wait_for(PROGRAMMING_TIMEOUT);
776
777 /* disable the fprgm bit */
778 FLASH->ctrl2_bit.fprgm = FALSE;
779 }
780 /* return the program status */
781 return status;
782}
783
791 flash_status_type flash_user_system_data_program(uint32_t address, uint8_t data)
792{
793 flash_status_type status = FLASH_OPERATE_DONE;
794
795 /* unlock the user system data */
796 FLASH->usd_unlock = FLASH_UNLOCK_KEY1;
797 FLASH->usd_unlock = FLASH_UNLOCK_KEY2;
798 while(FLASH->ctrl_bit.usdulks==RESET);
799
800 /* enable the user system data programming operation */
801 FLASH->ctrl_bit.usdprgm = TRUE;
802 *(__IO uint16_t*)address = data;
803
804 /* wait for operation to be completed */
805 status = flash_operation_wait_for(PROGRAMMING_TIMEOUT);
806
807 /* disable the usdprgm bit */
808 FLASH->ctrl_bit.usdprgm = FALSE;
809
810 /* return the user system data program status */
811 return status;
812}
813
823 flash_status_type flash_epp_set(uint32_t *sector_bits)
824{
825 uint16_t epp_data[4] = {0xFFFF,0xFFFF,0xFFFF,0xFFFF};
826 flash_status_type status = FLASH_OPERATE_DONE;
827 sector_bits[0] = (uint32_t)(~sector_bits[0]);
828 epp_data[0] = (uint16_t)((sector_bits[0] >> 0) & 0xFF);
829 epp_data[1] = (uint16_t)((sector_bits[0] >> 8) & 0xFF);
830 epp_data[2] = (uint16_t)((sector_bits[0] >> 16) & 0xFF);
831 epp_data[3] = (uint16_t)((sector_bits[0] >> 24) & 0xFF);
832
833 /* unlock the user system data */
834 FLASH->usd_unlock = FLASH_UNLOCK_KEY1;
835 FLASH->usd_unlock = FLASH_UNLOCK_KEY2;
836 while(FLASH->ctrl_bit.usdulks==RESET);
837
838 FLASH->ctrl_bit.usdprgm = TRUE;
839 USD->epp0 = epp_data[0];
840 /* wait for operation to be completed */
841 status = flash_operation_wait_for(PROGRAMMING_TIMEOUT);
842
843 if(status == FLASH_OPERATE_DONE)
844 {
845 USD->epp1 = epp_data[1];
846 /* wait for operation to be completed */
847 status = flash_operation_wait_for(PROGRAMMING_TIMEOUT);
848 }
849 if(status == FLASH_OPERATE_DONE)
850 {
851 USD->epp2 = epp_data[2];
852 /* wait for operation to be completed */
853 status = flash_operation_wait_for(PROGRAMMING_TIMEOUT);
854 }
855 if(status == FLASH_OPERATE_DONE)
856 {
857 USD->epp3 = epp_data[3];
858 /* wait for operation to be completed */
859 status = flash_operation_wait_for(PROGRAMMING_TIMEOUT);
860 }
861 /* disable the usdprgm bit */
862 FLASH->ctrl_bit.usdprgm = FALSE;
863
864 /* return the erase/program protection operation status */
865 return status;
866}
867
873void flash_epp_status_get(uint32_t *sector_bits)
874{
875 /* return the flash erase/program protection register value */
876 sector_bits[0] = (uint32_t)(FLASH->epps);
877}
878
888 flash_status_type flash_fap_enable(confirm_state new_state)
889{
890 flash_status_type status = FLASH_OPERATE_DONE;
891
892 /* unlock the user system data */
893 FLASH->usd_unlock = FLASH_UNLOCK_KEY1;
894 FLASH->usd_unlock = FLASH_UNLOCK_KEY2;
895 while(FLASH->ctrl_bit.usdulks==RESET);
896
897 FLASH->ctrl_bit.usders = TRUE;
898 FLASH->ctrl_bit.erstr = TRUE;
899 /* wait for operation to be completed */
900 status = flash_operation_wait_for(ERASE_TIMEOUT);
901
902 /* disable the usders bit */
903 FLASH->ctrl_bit.usders = FALSE;
904
905 if(status == FLASH_OPERATE_DONE)
906 {
907 if(new_state == FALSE)
908 {
909 /* enable the user system data programming operation */
910 FLASH->ctrl_bit.usdprgm = TRUE;
911 USD->fap = FAP_RELIEVE_KEY;
912
913 /* wait for operation to be completed */
914 status = flash_operation_wait_for(ERASE_TIMEOUT);
915
916 /* disable the usdprgm bit */
917 FLASH->ctrl_bit.usdprgm = FALSE;
918 }
919 }
920
921 /* return the flash access protection operation status */
922 return status;
923}
924
930 flag_status flash_fap_status_get(void)
931{
932 return (flag_status)FLASH->usd_bit.fap;
933}
934
958 flash_status_type flash_ssb_set(uint8_t usd_ssb)
959{
960 flash_status_type status = FLASH_OPERATE_DONE;
961
962 /* unlock the user system data */
963 FLASH->usd_unlock = FLASH_UNLOCK_KEY1;
964 FLASH->usd_unlock = FLASH_UNLOCK_KEY2;
965 while(FLASH->ctrl_bit.usdulks==RESET);
966
967 /* enable the user system data programming operation */
968 FLASH->ctrl_bit.usdprgm = TRUE;
969
970 USD->ssb = usd_ssb;
971 /* wait for operation to be completed */
972 status = flash_operation_wait_for(PROGRAMMING_TIMEOUT);
973
974 /* disable the usdprgm bit */
975 FLASH->ctrl_bit.usdprgm = FALSE;
976
977 /* return the user system data program status */
978 return status;
979}
980
987uint8_t flash_ssb_status_get(void)
988{
989 /* return the system setting byte status */
990 return (uint8_t)(FLASH->usd >> 2);
991}
992
1009void flash_interrupt_enable(uint32_t flash_int, confirm_state new_state)
1010{
1011 if(flash_int & FLASH_BANK1_ERR_INT)
1012 FLASH->ctrl_bit.errie = new_state;
1013 if(flash_int & FLASH_BANK1_ODF_INT)
1014 FLASH->ctrl_bit.odfie = new_state;
1015 if(flash_int & FLASH_BANK2_ERR_INT)
1016 FLASH->ctrl2_bit.errie = new_state;
1017 if(flash_int & FLASH_BANK2_ODF_INT)
1018 FLASH->ctrl2_bit.odfie = new_state;
1019 if(flash_int & FLASH_SPIM_ERR_INT)
1020 FLASH->ctrl3_bit.errie = new_state;
1021 if(flash_int & FLASH_SPIM_ODF_INT)
1022 FLASH->ctrl3_bit.odfie = new_state;
1023}
1024
1030void flash_spim_model_select(flash_spim_model_type mode)
1031{
1032 FLASH->select = mode;
1033
1034 /* dummy read */
1035 flash_spim_dummy_read();
1036}
1037
1045void flash_spim_encryption_range_set(uint32_t decode_address)
1046{
1047 FLASH->da = decode_address;
1048}
1049
1055void flash_spim_dummy_read(void)
1056{
1057 UNUSED(*(__IO uint32_t*)FLASH_SPIM_START_ADDR);
1058 UNUSED(*(__IO uint32_t*)(FLASH_SPIM_START_ADDR + 0x1000));
1059 UNUSED(*(__IO uint32_t*)(FLASH_SPIM_START_ADDR + 0x2000));
1060}
1061
1070 flash_status_type flash_spim_mass_program(uint32_t address, uint8_t *buf, uint32_t cnt)
1071{
1072 flash_status_type status = FLASH_OPERATE_DONE;
1073 uint32_t index, temp_offset;
1074 if(address >= FLASH_SPIM_START_ADDR)
1075 {
1076 temp_offset = cnt % 4;
1077 if((temp_offset != 0) && (temp_offset != 2))
1078 return status;
1079
1080 FLASH->ctrl3_bit.fprgm = TRUE;
1081 for(index = 0; index < cnt / 4; index++)
1082 {
1083 *(__IO uint32_t*)(address + index * 4) = *(uint32_t*)(buf + index * 4);
1084 /* wait for operation to be completed */
1085 status = flash_spim_operation_wait_for(SPIM_PROGRAMMING_TIMEOUT);
1086 if(status != FLASH_OPERATE_DONE)
1087 return status;
1088 }
1089 if(temp_offset == 2)
1090 {
1091 *(__IO uint16_t*)(address + index * 4) = *(uint16_t*)(buf + index * 4);
1092 /* wait for operation to be completed */
1093 status = flash_spim_operation_wait_for(SPIM_PROGRAMMING_TIMEOUT);
1094 }
1095 /* disable the fprgm bit */
1096 FLASH->ctrl3_bit.fprgm = FALSE;
1097
1098 /* dummy read */
1099 flash_spim_dummy_read();
1100 }
1101
1102 /* return the program status */
1103 return status;
1104}
1105
1110#endif
1111
UNUSED
#define UNUSED(x)
Definition: at32f403_def.h:63
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
FLASH_BANK2_END_ADDR
#define FLASH_BANK2_END_ADDR
Definition: at32f403_flash.h:67
FLASH_SPIM_START_ADDR
#define FLASH_SPIM_START_ADDR
Definition: at32f403_flash.h:68
FLASH_BANK2_START_ADDR
#define FLASH_BANK2_START_ADDR
Definition: at32f403_flash.h:66
FLASH_BANK1_END_ADDR
#define FLASH_BANK1_END_ADDR
Definition: at32f403_flash.h:65
FLASH_BANK1_START_ADDR
#define FLASH_BANK1_START_ADDR
Definition: at32f403_flash.h:64
flash_spim_model_type
flash_spim_model_type
flash spim model type
Definition: at32f403_flash.h:175
flash_status_type
flash_status_type
flash status type
Definition: at32f403_flash.h:163
FLASH_OPERATE_BUSY
@ FLASH_OPERATE_BUSY
Definition: at32f403_flash.h:164
FLASH_OPERATE_DONE
@ FLASH_OPERATE_DONE
Definition: at32f403_flash.h:167
FLASH_OPERATE_TIMEOUT
@ FLASH_OPERATE_TIMEOUT
Definition: at32f403_flash.h:168
FLASH_PROGRAM_ERROR
@ FLASH_PROGRAM_ERROR
Definition: at32f403_flash.h:165
FLASH_EPP_ERROR
@ FLASH_EPP_ERROR
Definition: at32f403_flash.h:166
FLASH_BANK1_ERR_INT
#define FLASH_BANK1_ERR_INT
Definition: at32f403_flash.h:108
FLASH_BANK1_ODF_INT
#define FLASH_BANK1_ODF_INT
Definition: at32f403_flash.h:109
FLASH_BANK2_ERR_INT
#define FLASH_BANK2_ERR_INT
Definition: at32f403_flash.h:110
FLASH_SPIM_ERR_INT
#define FLASH_SPIM_ERR_INT
Definition: at32f403_flash.h:112
FLASH_BANK2_ODF_INT
#define FLASH_BANK2_ODF_INT
Definition: at32f403_flash.h:111
FLASH_SPIM_ODF_INT
#define FLASH_SPIM_ODF_INT
Definition: at32f403_flash.h:113
flash_bank1_operation_status_get
flash_status_type flash_bank1_operation_status_get(void)
return the flash bank1 operation status.
Definition: at32f403_flash.c:170
flash_bank1_lock
void flash_bank1_lock(void)
lock the flash bank1 controller.
Definition: at32f403_flash.c:413
flash_fap_status_get
flag_status flash_fap_status_get(void)
check the flash access protection status.
Definition: at32f403_flash.c:930
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_bank1_erase
flash_status_type flash_bank1_erase(void)
erase flash bank1 sectors.
Definition: at32f403_flash.c:533
flash_halfword_program
flash_status_type flash_halfword_program(uint32_t address, uint16_t data)
program a halfword at a specified address.
Definition: at32f403_flash.c:707
flash_bank2_operation_status_get
flash_status_type flash_bank2_operation_status_get(void)
return the flash bank2 operation status.
Definition: at32f403_flash.c:199
flash_user_system_data_program
flash_status_type flash_user_system_data_program(uint32_t address, uint8_t data)
program a halfword at a specified user system data address.
Definition: at32f403_flash.c:791
flash_spim_lock
void flash_spim_lock(void)
lock the flash spim controller.
Definition: at32f403_flash.c:433
flash_byte_program
flash_status_type flash_byte_program(uint32_t address, uint8_t data)
program a byte at a specified address.
Definition: at32f403_flash.c:757
flash_spim_dummy_read
void flash_spim_dummy_read(void)
operate the flash spim dummy read.
Definition: at32f403_flash.c:1055
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_spim_unlock
void flash_spim_unlock(void)
unlock the flash spim controller.
Definition: at32f403_flash.c:391
flash_spim_mass_program
flash_status_type flash_spim_mass_program(uint32_t address, uint8_t *buf, uint32_t cnt)
mass program for flash spim.
Definition: at32f403_flash.c:1070
flash_operation_status_get
flash_status_type flash_operation_status_get(void)
return the flash operation status.
Definition: at32f403_flash.c:141
flash_epp_set
flash_status_type flash_epp_set(uint32_t *sector_bits)
config erase/program protection for the desired sectors.
Definition: at32f403_flash.c:823
flash_bank2_unlock
void flash_bank2_unlock(void)
unlock the flash bank2 controller.
Definition: at32f403_flash.c:380
flash_spim_model_select
void flash_spim_model_select(flash_spim_model_type mode)
select spim supports extended spi flash chip model.
Definition: at32f403_flash.c:1030
flash_ssb_set
flash_status_type flash_ssb_set(uint8_t usd_ssb)
program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt.
Definition: at32f403_flash.c:958
flash_bank2_erase
flash_status_type flash_bank2_erase(void)
erase flash bank2 sectors.
Definition: at32f403_flash.c:556
flash_spim_operation_wait_for
flash_status_type flash_spim_operation_wait_for(uint32_t time_out)
wait for flash spim operation complete or timeout.
Definition: at32f403_flash.c:332
flash_interrupt_enable
void flash_interrupt_enable(uint32_t flash_int, confirm_state new_state)
enable or disable the specified flash interrupts.
Definition: at32f403_flash.c:1009
flash_fap_enable
flash_status_type flash_fap_enable(confirm_state new_state)
enable or disable the flash access protection.
Definition: at32f403_flash.c:888
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_bank2_operation_wait_for
flash_status_type flash_bank2_operation_wait_for(uint32_t time_out)
wait for flash bank2 operation complete or timeout.
Definition: at32f403_flash.c:307
flash_bank1_unlock
void flash_bank1_unlock(void)
unlock the flash bank1 controller.
Definition: at32f403_flash.c:369
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
flash_spim_encryption_range_set
void flash_spim_encryption_range_set(uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value,...
Definition: at32f403_flash.c:1045
flash_flag_get
flag_status flash_flag_get(uint32_t flash_flag)
check whether the specified flash flag is set or not.
Definition: at32f403_flash.c:65
flash_spim_operation_status_get
flash_status_type flash_spim_operation_status_get(void)
return the flash spim operation status.
Definition: at32f403_flash.c:228
flash_user_system_data_erase
flash_status_type flash_user_system_data_erase(void)
erase the flash user system data.
Definition: at32f403_flash.c:606
flash_internal_all_erase
flash_status_type flash_internal_all_erase(void)
erase flash all internal sectors.
Definition: at32f403_flash.c:498
flash_operation_wait_for
flash_status_type flash_operation_wait_for(uint32_t time_out)
wait for flash operation complete or timeout.
Definition: at32f403_flash.c:257
flash_bank1_operation_wait_for
flash_status_type flash_bank1_operation_wait_for(uint32_t time_out)
wait for flash bank1 operation complete or timeout.
Definition: at32f403_flash.c:282
flash_ssb_status_get
uint8_t flash_ssb_status_get(void)
return the flash system setting byte status.
Definition: at32f403_flash.c:987
flash_epp_status_get
void flash_epp_status_get(uint32_t *sector_bits)
return the flash erase/program protection status.
Definition: at32f403_flash.c:873
flash_flag_clear
void flash_flag_clear(uint32_t flash_flag)
clear the flash flag.
Definition: at32f403_flash.c:114
flash_spim_all_erase
flash_status_type flash_spim_all_erase(void)
erase flash spim sectors.
Definition: at32f403_flash.c:579
flash_bank2_lock
void flash_bank2_lock(void)
lock the flash bank2 controller.
Definition: at32f403_flash.c:423
PROGRAMMING_TIMEOUT
#define PROGRAMMING_TIMEOUT
Definition: at32f403_flash.h:146
SPIM_ERASE_TIMEOUT
#define SPIM_ERASE_TIMEOUT
Definition: at32f403_flash.h:147
ERASE_TIMEOUT
#define ERASE_TIMEOUT
Definition: at32f403_flash.h:145
SPIM_PROGRAMMING_TIMEOUT
#define SPIM_PROGRAMMING_TIMEOUT
Definition: at32f403_flash.h:148
FAP_RELIEVE_KEY
#define FAP_RELIEVE_KEY
Definition: at32f403_flash.h:53
FLASH_UNLOCK_KEY2
#define FLASH_UNLOCK_KEY2
Definition: at32f403_flash.h:52
FLASH_UNLOCK_KEY1
#define FLASH_UNLOCK_KEY1
Definition: at32f403_flash.h:51
USD
#define USD
Definition: at32f403_flash.h:512
FLASH
#define FLASH
Definition: at32f403_flash.h:511
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_flash.h Source File

  • libraries
  • drivers
  • inc
at32f403_flash.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_FLASH_H
27#define __AT32F403_FLASH_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
37
51#define FLASH_UNLOCK_KEY1 ((uint32_t)0x45670123)
52#define FLASH_UNLOCK_KEY2 ((uint32_t)0xCDEF89AB)
53#define FAP_RELIEVE_KEY ((uint16_t)0x00A5)
64#define FLASH_BANK1_START_ADDR ((uint32_t)0x08000000)
65#define FLASH_BANK1_END_ADDR ((uint32_t)0x0807FFFF)
66#define FLASH_BANK2_START_ADDR ((uint32_t)0x08080000)
67#define FLASH_BANK2_END_ADDR ((uint32_t)0x080FFFFF)
68#define FLASH_SPIM_START_ADDR ((uint32_t)0x08400000)
79#define FLASH_OBF_FLAG FLASH_BANK1_OBF_FLAG
80#define FLASH_ODF_FLAG FLASH_BANK1_ODF_FLAG
81#define FLASH_PRGMERR_FLAG FLASH_BANK1_PRGMERR_FLAG
82#define FLASH_EPPERR_FLAG FLASH_BANK1_EPPERR_FLAG
83#define FLASH_BANK1_OBF_FLAG ((uint32_t)0x00000001)
84#define FLASH_BANK1_ODF_FLAG ((uint32_t)0x00000020)
85#define FLASH_BANK1_PRGMERR_FLAG ((uint32_t)0x00000004)
86#define FLASH_BANK1_EPPERR_FLAG ((uint32_t)0x00000010)
87#define FLASH_BANK2_OBF_FLAG ((uint32_t)0x10000001)
88#define FLASH_BANK2_ODF_FLAG ((uint32_t)0x10000020)
89#define FLASH_BANK2_PRGMERR_FLAG ((uint32_t)0x10000004)
90#define FLASH_BANK2_EPPERR_FLAG ((uint32_t)0x10000010)
91#define FLASH_SPIM_OBF_FLAG ((uint32_t)0x20000001)
92#define FLASH_SPIM_ODF_FLAG ((uint32_t)0x20000020)
93#define FLASH_SPIM_PRGMERR_FLAG ((uint32_t)0x20000004)
94#define FLASH_SPIM_EPPERR_FLAG ((uint32_t)0x20000010)
95#define FLASH_USDERR_FLAG ((uint32_t)0x40000001)
106#define FLASH_ERR_INT FLASH_BANK1_ERR_INT
107#define FLASH_ODF_INT FLASH_BANK1_ODF_INT
108#define FLASH_BANK1_ERR_INT ((uint32_t)0x00000001)
109#define FLASH_BANK1_ODF_INT ((uint32_t)0x00000002)
110#define FLASH_BANK2_ERR_INT ((uint32_t)0x00000004)
111#define FLASH_BANK2_ODF_INT ((uint32_t)0x00000008)
112#define FLASH_SPIM_ERR_INT ((uint32_t)0x00000010)
113#define FLASH_SPIM_ODF_INT ((uint32_t)0x00000020)
124#define USD_WDT_ATO_DISABLE ((uint16_t)0x0001)
125#define USD_WDT_ATO_ENABLE ((uint16_t)0x0000)
127#define USD_DEPSLP_NO_RST ((uint16_t)0x0002)
128#define USD_DEPSLP_RST ((uint16_t)0x0000)
130#define USD_STDBY_NO_RST ((uint16_t)0x0004)
131#define USD_STDBY_RST ((uint16_t)0x0000)
133#define FLASH_BOOT_FROM_BANK1 ((uint16_t)0x0008)
134#define FLASH_BOOT_FROM_BANK2 ((uint16_t)0x0000)
145#define ERASE_TIMEOUT ((uint32_t)0x40000000)
146#define PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)
147#define SPIM_ERASE_TIMEOUT ((uint32_t)0xFFFFFFFF)
148#define SPIM_PROGRAMMING_TIMEOUT ((uint32_t)0x00100000)
149#define OPERATION_TIMEOUT ((uint32_t)0x10000000)
162typedef enum
163{
164 FLASH_OPERATE_BUSY = 0x00,
165 FLASH_PROGRAM_ERROR = 0x01,
166 FLASH_EPP_ERROR = 0x02,
167 FLASH_OPERATE_DONE = 0x03,
168 FLASH_OPERATE_TIMEOUT = 0x04
169} flash_status_type;
170
174typedef enum
175{
176 FLASH_SPIM_MODEL1 = 0x01,
177 FLASH_SPIM_MODEL2 = 0x02,
178} flash_spim_model_type;
179
183typedef struct
184{
188 union
189 {
190 __IO uint32_t psr;
191 struct
192 {
193 __IO uint32_t reserved1 : 32; /* [31:0] */
194 } psr_bit;
195 };
196
200 union
201 {
202 __IO uint32_t unlock;
203 struct
204 {
205 __IO uint32_t ukval : 32;/* [31:0] */
206 } unlock_bit;
207 };
208
212 union
213 {
214 __IO uint32_t usd_unlock;
215 struct
216 {
217 __IO uint32_t usd_ukval : 32;/* [31:0] */
218 } usd_unlock_bit;
219 };
220
224 union
225 {
226 __IO uint32_t sts;
227 struct
228 {
229 __IO uint32_t obf : 1; /* [0] */
230 __IO uint32_t reserved1 : 1; /* [1] */
231 __IO uint32_t prgmerr : 1; /* [2] */
232 __IO uint32_t reserved2 : 1; /* [3] */
233 __IO uint32_t epperr : 1; /* [4] */
234 __IO uint32_t odf : 1; /* [5] */
235 __IO uint32_t reserved3 : 26;/* [31:6] */
236 } sts_bit;
237 };
238
242 union
243 {
244 __IO uint32_t ctrl;
245 struct
246 {
247 __IO uint32_t fprgm : 1; /* [0] */
248 __IO uint32_t secers : 1; /* [1] */
249 __IO uint32_t bankers : 1; /* [2] */
250 __IO uint32_t reserved1 : 1; /* [3] */
251 __IO uint32_t usdprgm : 1; /* [4] */
252 __IO uint32_t usders : 1; /* [5] */
253 __IO uint32_t erstr : 1; /* [6] */
254 __IO uint32_t oplk : 1; /* [7] */
255 __IO uint32_t reserved2 : 1; /* [8] */
256 __IO uint32_t usdulks : 1; /* [9] */
257 __IO uint32_t errie : 1; /* [10] */
258 __IO uint32_t reserved3 : 1; /* [11] */
259 __IO uint32_t odfie : 1; /* [12] */
260 __IO uint32_t reserved4 : 19;/* [31:13] */
261 } ctrl_bit;
262 };
263
267 union
268 {
269 __IO uint32_t addr;
270 struct
271 {
272 __IO uint32_t fa : 32;/* [31:0] */
273 } addr_bit;
274 };
275
279 __IO uint32_t reserved1;
280
284 union
285 {
286 __IO uint32_t usd;
287 struct
288 {
289 __IO uint32_t usderr : 1; /* [0] */
290 __IO uint32_t fap : 1; /* [1] */
291 __IO uint32_t wdt_ato_en : 1; /* [2] */
292 __IO uint32_t depslp_rst : 1; /* [3] */
293 __IO uint32_t stdby_rst : 1; /* [4] */
294 __IO uint32_t btopt : 1; /* [5] */
295 __IO uint32_t reserved1 : 4; /* [9:6] */
296 __IO uint32_t user_d0 : 8; /* [17:10] */
297 __IO uint32_t user_d1 : 8; /* [25:18] */
298 __IO uint32_t reserved2 : 6; /* [31:26] */
299 } usd_bit;
300 };
301
305 union
306 {
307 __IO uint32_t epps;
308 struct
309 {
310 __IO uint32_t epps : 32;/* [31:0] */
311 } epps_bit;
312 };
313
317 __IO uint32_t reserved2[8];
318
322 union
323 {
324 __IO uint32_t unlock2;
325 struct
326 {
327 __IO uint32_t ukval : 32;/* [31:0] */
328 } unlock2_bit;
329 };
330
334 __IO uint32_t reserved3;
335
339 union
340 {
341 __IO uint32_t sts2;
342 struct
343 {
344 __IO uint32_t obf : 1; /* [0] */
345 __IO uint32_t reserved1 : 1; /* [1] */
346 __IO uint32_t prgmerr : 1; /* [2] */
347 __IO uint32_t reserved2 : 1; /* [3] */
348 __IO uint32_t epperr : 1; /* [4] */
349 __IO uint32_t odf : 1; /* [5] */
350 __IO uint32_t reserved3 : 26;/* [31:6] */
351 } sts2_bit;
352 };
353
357 union
358 {
359 __IO uint32_t ctrl2;
360 struct
361 {
362 __IO uint32_t fprgm : 1; /* [0] */
363 __IO uint32_t secers : 1; /* [1] */
364 __IO uint32_t bankers : 1; /* [2] */
365 __IO uint32_t reserved1 : 3; /* [5:3] */
366 __IO uint32_t erstr : 1; /* [6] */
367 __IO uint32_t oplk : 1; /* [7] */
368 __IO uint32_t reserved2 : 2; /* [9:8] */
369 __IO uint32_t errie : 1; /* [10] */
370 __IO uint32_t reserved3 : 1; /* [11] */
371 __IO uint32_t odfie : 1; /* [12] */
372 __IO uint32_t reserved4 : 19;/* [31:13] */
373 } ctrl2_bit;
374 };
375
379 union
380 {
381 __IO uint32_t addr2;
382 struct
383 {
384 __IO uint32_t fa : 32;/* [31:0] */
385 } addr2_bit;
386 };
387
391 __IO uint32_t reserved4[11];
392
396 union
397 {
398 __IO uint32_t unlock3;
399 struct
400 {
401 __IO uint32_t ukval : 32;/* [31:0] */
402 } unlock3_bit;
403 };
404
408 union
409 {
410 __IO uint32_t select;
411 struct
412 {
413 __IO uint32_t select : 32;/* [31:0] */
414 } select_bit;
415 };
416
420 union
421 {
422 __IO uint32_t sts3;
423 struct
424 {
425 __IO uint32_t obf : 1; /* [0] */
426 __IO uint32_t reserved1 : 1; /* [1] */
427 __IO uint32_t prgmerr : 1; /* [2] */
428 __IO uint32_t reserved2 : 1; /* [3] */
429 __IO uint32_t epperr : 1; /* [4] */
430 __IO uint32_t odf : 1; /* [5] */
431 __IO uint32_t reserved3 : 26;/* [31:6] */
432 } sts3_bit;
433 };
434
438 union
439 {
440 __IO uint32_t ctrl3;
441 struct
442 {
443 __IO uint32_t fprgm : 1; /* [0] */
444 __IO uint32_t secers : 1; /* [1] */
445 __IO uint32_t chpers : 1; /* [2] */
446 __IO uint32_t reserved1 : 3; /* [5:3] */
447 __IO uint32_t erstr : 1; /* [6] */
448 __IO uint32_t oplk : 1; /* [7] */
449 __IO uint32_t reserved2 : 2; /* [9:8] */
450 __IO uint32_t errie : 1; /* [10] */
451 __IO uint32_t reserved3 : 1; /* [11] */
452 __IO uint32_t odfie : 1; /* [12] */
453 __IO uint32_t reserved4 : 19;/* [31:13] */
454 } ctrl3_bit;
455 };
456
460 union
461 {
462 __IO uint32_t addr3;
463 struct
464 {
465 __IO uint32_t fa : 32;/* [31:0] */
466 } addr3_bit;
467 };
468
472 union
473 {
474 __IO uint32_t da;
475 struct
476 {
477 __IO uint32_t fda : 32;/* [31:0] */
478 } da_bit;
479 };
480
481} flash_type;
482
486typedef struct
487{
488 __IO uint16_t fap;
489 __IO uint16_t ssb;
490 __IO uint16_t data0;
491 __IO uint16_t data1;
492 __IO uint16_t epp0;
493 __IO uint16_t epp1;
494 __IO uint16_t epp2;
495 __IO uint16_t epp3;
496 __IO uint16_t eopb0;
497 __IO uint16_t reserved;
498 __IO uint16_t data2;
499 __IO uint16_t data3;
500 __IO uint16_t data4;
501 __IO uint16_t data5;
502 __IO uint16_t data6;
503 __IO uint16_t data7;
504 __IO uint16_t ext_flash_key[8];
505} usd_type;
506
511#define FLASH ((flash_type *) FLASH_REG_BASE)
512#define USD ((usd_type *) USD_BASE)
513
518 flag_status flash_flag_get(uint32_t flash_flag);
519void flash_flag_clear(uint32_t flash_flag);
520 flash_status_type flash_operation_status_get(void);
521 flash_status_type flash_bank1_operation_status_get(void);
522 flash_status_type flash_bank2_operation_status_get(void);
523 flash_status_type flash_spim_operation_status_get(void);
524 flash_status_type flash_operation_wait_for(uint32_t time_out);
525 flash_status_type flash_bank1_operation_wait_for(uint32_t time_out);
526 flash_status_type flash_bank2_operation_wait_for(uint32_t time_out);
527 flash_status_type flash_spim_operation_wait_for(uint32_t time_out);
528void flash_unlock(void);
529void flash_bank1_unlock(void);
530void flash_bank2_unlock(void);
531void flash_spim_unlock(void);
532void flash_lock(void);
533void flash_bank1_lock(void);
534void flash_bank2_lock(void);
535void flash_spim_lock(void);
536 flash_status_type flash_sector_erase(uint32_t sector_address);
537 flash_status_type flash_internal_all_erase(void);
538 flash_status_type flash_bank1_erase(void);
539 flash_status_type flash_bank2_erase(void);
540 flash_status_type flash_spim_all_erase(void);
541 flash_status_type flash_user_system_data_erase(void);
542 flash_status_type flash_word_program(uint32_t address, uint32_t data);
543 flash_status_type flash_halfword_program(uint32_t address, uint16_t data);
544 flash_status_type flash_byte_program(uint32_t address, uint8_t data);
545 flash_status_type flash_user_system_data_program(uint32_t address, uint8_t data);
546 flash_status_type flash_epp_set(uint32_t *sector_bits);
547void flash_epp_status_get(uint32_t *sector_bits);
548 flash_status_type flash_fap_enable(confirm_state new_state);
549 flag_status flash_fap_status_get(void);
550 flash_status_type flash_ssb_set(uint8_t usd_ssb);
551uint8_t flash_ssb_status_get(void);
552void flash_interrupt_enable(uint32_t flash_int, confirm_state new_state);
553void flash_spim_model_select(flash_spim_model_type mode);
554void flash_spim_encryption_range_set(uint32_t decode_address);
555void flash_spim_dummy_read(void);
556 flash_status_type flash_spim_mass_program(uint32_t address, uint8_t *buf, uint32_t cnt);
557
570#ifdef __cplusplus
571}
572#endif
573
574#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
flash_bank1_operation_status_get
flash_status_type flash_bank1_operation_status_get(void)
return the flash bank1 operation status.
Definition: at32f403_flash.c:170
flash_bank1_lock
void flash_bank1_lock(void)
lock the flash bank1 controller.
Definition: at32f403_flash.c:413
flash_fap_status_get
flag_status flash_fap_status_get(void)
check the flash access protection status.
Definition: at32f403_flash.c:930
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_bank1_erase
flash_status_type flash_bank1_erase(void)
erase flash bank1 sectors.
Definition: at32f403_flash.c:533
flash_halfword_program
flash_status_type flash_halfword_program(uint32_t address, uint16_t data)
program a halfword at a specified address.
Definition: at32f403_flash.c:707
flash_bank2_operation_status_get
flash_status_type flash_bank2_operation_status_get(void)
return the flash bank2 operation status.
Definition: at32f403_flash.c:199
flash_user_system_data_program
flash_status_type flash_user_system_data_program(uint32_t address, uint8_t data)
program a halfword at a specified user system data address.
Definition: at32f403_flash.c:791
flash_spim_lock
void flash_spim_lock(void)
lock the flash spim controller.
Definition: at32f403_flash.c:433
flash_byte_program
flash_status_type flash_byte_program(uint32_t address, uint8_t data)
program a byte at a specified address.
Definition: at32f403_flash.c:757
flash_spim_dummy_read
void flash_spim_dummy_read(void)
operate the flash spim dummy read.
Definition: at32f403_flash.c:1055
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_spim_unlock
void flash_spim_unlock(void)
unlock the flash spim controller.
Definition: at32f403_flash.c:391
flash_spim_mass_program
flash_status_type flash_spim_mass_program(uint32_t address, uint8_t *buf, uint32_t cnt)
mass program for flash spim.
Definition: at32f403_flash.c:1070
flash_operation_status_get
flash_status_type flash_operation_status_get(void)
return the flash operation status.
Definition: at32f403_flash.c:141
flash_epp_set
flash_status_type flash_epp_set(uint32_t *sector_bits)
config erase/program protection for the desired sectors.
Definition: at32f403_flash.c:823
flash_bank2_unlock
void flash_bank2_unlock(void)
unlock the flash bank2 controller.
Definition: at32f403_flash.c:380
flash_spim_model_select
void flash_spim_model_select(flash_spim_model_type mode)
select spim supports extended spi flash chip model.
Definition: at32f403_flash.c:1030
flash_ssb_set
flash_status_type flash_ssb_set(uint8_t usd_ssb)
program the flash system setting byte in usd: wdt_ato_en / depslp_rst / stdby_rst / btopt.
Definition: at32f403_flash.c:958
flash_bank2_erase
flash_status_type flash_bank2_erase(void)
erase flash bank2 sectors.
Definition: at32f403_flash.c:556
flash_spim_operation_wait_for
flash_status_type flash_spim_operation_wait_for(uint32_t time_out)
wait for flash spim operation complete or timeout.
Definition: at32f403_flash.c:332
flash_interrupt_enable
void flash_interrupt_enable(uint32_t flash_int, confirm_state new_state)
enable or disable the specified flash interrupts.
Definition: at32f403_flash.c:1009
flash_fap_enable
flash_status_type flash_fap_enable(confirm_state new_state)
enable or disable the flash access protection.
Definition: at32f403_flash.c:888
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_bank2_operation_wait_for
flash_status_type flash_bank2_operation_wait_for(uint32_t time_out)
wait for flash bank2 operation complete or timeout.
Definition: at32f403_flash.c:307
flash_bank1_unlock
void flash_bank1_unlock(void)
unlock the flash bank1 controller.
Definition: at32f403_flash.c:369
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
flash_spim_encryption_range_set
void flash_spim_encryption_range_set(uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value,...
Definition: at32f403_flash.c:1045
flash_flag_get
flag_status flash_flag_get(uint32_t flash_flag)
check whether the specified flash flag is set or not.
Definition: at32f403_flash.c:65
flash_spim_operation_status_get
flash_status_type flash_spim_operation_status_get(void)
return the flash spim operation status.
Definition: at32f403_flash.c:228
flash_user_system_data_erase
flash_status_type flash_user_system_data_erase(void)
erase the flash user system data.
Definition: at32f403_flash.c:606
flash_internal_all_erase
flash_status_type flash_internal_all_erase(void)
erase flash all internal sectors.
Definition: at32f403_flash.c:498
flash_operation_wait_for
flash_status_type flash_operation_wait_for(uint32_t time_out)
wait for flash operation complete or timeout.
Definition: at32f403_flash.c:257
flash_bank1_operation_wait_for
flash_status_type flash_bank1_operation_wait_for(uint32_t time_out)
wait for flash bank1 operation complete or timeout.
Definition: at32f403_flash.c:282
flash_ssb_status_get
uint8_t flash_ssb_status_get(void)
return the flash system setting byte status.
Definition: at32f403_flash.c:987
flash_epp_status_get
void flash_epp_status_get(uint32_t *sector_bits)
return the flash erase/program protection status.
Definition: at32f403_flash.c:873
flash_flag_clear
void flash_flag_clear(uint32_t flash_flag)
clear the flash flag.
Definition: at32f403_flash.c:114
flash_spim_all_erase
flash_status_type flash_spim_all_erase(void)
erase flash spim sectors.
Definition: at32f403_flash.c:579
flash_bank2_lock
void flash_bank2_lock(void)
lock the flash bank2 controller.
Definition: at32f403_flash.c:423
flash_spim_model_type
flash_spim_model_type
flash spim model type
Definition: at32f403_flash.h:175
flash_status_type
flash_status_type
flash status type
Definition: at32f403_flash.h:163
FLASH_SPIM_MODEL1
@ FLASH_SPIM_MODEL1
Definition: at32f403_flash.h:176
FLASH_SPIM_MODEL2
@ FLASH_SPIM_MODEL2
Definition: at32f403_flash.h:177
FLASH_OPERATE_BUSY
@ FLASH_OPERATE_BUSY
Definition: at32f403_flash.h:164
FLASH_OPERATE_DONE
@ FLASH_OPERATE_DONE
Definition: at32f403_flash.h:167
FLASH_OPERATE_TIMEOUT
@ FLASH_OPERATE_TIMEOUT
Definition: at32f403_flash.h:168
FLASH_PROGRAM_ERROR
@ FLASH_PROGRAM_ERROR
Definition: at32f403_flash.h:165
FLASH_EPP_ERROR
@ FLASH_EPP_ERROR
Definition: at32f403_flash.h:166
flash_type
type define flash register all
Definition: at32f403_flash.h:184
flash_type::secers
__IO uint32_t secers
Definition: at32f403_flash.h:248
flash_type::unlock
__IO uint32_t unlock
Definition: at32f403_flash.h:202
flash_type::reserved2
__IO uint32_t reserved2
flash reserved2 register, offset:0x40~0x24
Definition: at32f403_flash.h:232
flash_type::psr
__IO uint32_t psr
Definition: at32f403_flash.h:190
flash_type::user_d0
__IO uint32_t user_d0
Definition: at32f403_flash.h:296
flash_type::unlock3
__IO uint32_t unlock3
Definition: at32f403_flash.h:398
flash_type::ukval
__IO uint32_t ukval
Definition: at32f403_flash.h:205
flash_type::bankers
__IO uint32_t bankers
Definition: at32f403_flash.h:249
flash_type::usd_ukval
__IO uint32_t usd_ukval
Definition: at32f403_flash.h:217
flash_type::select
__IO uint32_t select
Definition: at32f403_flash.h:410
flash_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_flash.h:244
flash_type::stdby_rst
__IO uint32_t stdby_rst
Definition: at32f403_flash.h:293
flash_type::epps
__IO uint32_t epps
Definition: at32f403_flash.h:307
flash_type::fprgm
__IO uint32_t fprgm
Definition: at32f403_flash.h:247
flash_type::reserved1
__IO uint32_t reserved1
flash reserved1 register, offset:0x18
Definition: at32f403_flash.h:193
flash_type::erstr
__IO uint32_t erstr
Definition: at32f403_flash.h:253
flash_type::usderr
__IO uint32_t usderr
Definition: at32f403_flash.h:289
flash_type::usdulks
__IO uint32_t usdulks
Definition: at32f403_flash.h:256
flash_type::epperr
__IO uint32_t epperr
Definition: at32f403_flash.h:233
flash_type::ctrl3
__IO uint32_t ctrl3
Definition: at32f403_flash.h:440
flash_type::odfie
__IO uint32_t odfie
Definition: at32f403_flash.h:259
flash_type::fda
__IO uint32_t fda
Definition: at32f403_flash.h:477
flash_type::da
__IO uint32_t da
Definition: at32f403_flash.h:474
flash_type::btopt
__IO uint32_t btopt
Definition: at32f403_flash.h:294
flash_type::fa
__IO uint32_t fa
Definition: at32f403_flash.h:272
flash_type::prgmerr
__IO uint32_t prgmerr
Definition: at32f403_flash.h:231
flash_type::unlock2
__IO uint32_t unlock2
Definition: at32f403_flash.h:324
flash_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_flash.h:359
flash_type::errie
__IO uint32_t errie
Definition: at32f403_flash.h:257
flash_type::user_d1
__IO uint32_t user_d1
Definition: at32f403_flash.h:297
flash_type::chpers
__IO uint32_t chpers
Definition: at32f403_flash.h:445
flash_type::addr2
__IO uint32_t addr2
Definition: at32f403_flash.h:381
flash_type::usd
__IO uint32_t usd
Definition: at32f403_flash.h:286
flash_type::depslp_rst
__IO uint32_t depslp_rst
Definition: at32f403_flash.h:292
flash_type::usd_unlock
__IO uint32_t usd_unlock
Definition: at32f403_flash.h:214
flash_type::wdt_ato_en
__IO uint32_t wdt_ato_en
Definition: at32f403_flash.h:291
flash_type::usdprgm
__IO uint32_t usdprgm
Definition: at32f403_flash.h:251
flash_type::sts2
__IO uint32_t sts2
Definition: at32f403_flash.h:341
flash_type::sts3
__IO uint32_t sts3
Definition: at32f403_flash.h:422
flash_type::usders
__IO uint32_t usders
Definition: at32f403_flash.h:252
flash_type::oplk
__IO uint32_t oplk
Definition: at32f403_flash.h:254
flash_type::addr
__IO uint32_t addr
Definition: at32f403_flash.h:269
flash_type::reserved4
__IO uint32_t reserved4
flash reserved4 register, offset:0x80~0x58
Definition: at32f403_flash.h:260
flash_type::odf
__IO uint32_t odf
Definition: at32f403_flash.h:234
flash_type::addr3
__IO uint32_t addr3
Definition: at32f403_flash.h:462
flash_type::fap
__IO uint32_t fap
Definition: at32f403_flash.h:290
flash_type::sts
__IO uint32_t sts
Definition: at32f403_flash.h:226
flash_type::reserved3
__IO uint32_t reserved3
flash reserved3 register, offset:0x48
Definition: at32f403_flash.h:235
flash_type::obf
__IO uint32_t obf
Definition: at32f403_flash.h:229
usd_type
user system data
Definition: at32f403_flash.h:487
usd_type::eopb0
__IO uint16_t eopb0
Definition: at32f403_flash.h:496
usd_type::epp2
__IO uint16_t epp2
Definition: at32f403_flash.h:494
usd_type::data7
__IO uint16_t data7
Definition: at32f403_flash.h:503
usd_type::reserved
__IO uint16_t reserved
Definition: at32f403_flash.h:497
usd_type::epp0
__IO uint16_t epp0
Definition: at32f403_flash.h:492
usd_type::data3
__IO uint16_t data3
Definition: at32f403_flash.h:499
usd_type::epp3
__IO uint16_t epp3
Definition: at32f403_flash.h:495
usd_type::data6
__IO uint16_t data6
Definition: at32f403_flash.h:502
usd_type::data2
__IO uint16_t data2
Definition: at32f403_flash.h:498
usd_type::data1
__IO uint16_t data1
Definition: at32f403_flash.h:491
usd_type::ssb
__IO uint16_t ssb
Definition: at32f403_flash.h:489
usd_type::fap
__IO uint16_t fap
Definition: at32f403_flash.h:488
usd_type::epp1
__IO uint16_t epp1
Definition: at32f403_flash.h:493
usd_type::data0
__IO uint16_t data0
Definition: at32f403_flash.h:490
usd_type::data4
__IO uint16_t data4
Definition: at32f403_flash.h:500
usd_type::data5
__IO uint16_t data5
Definition: at32f403_flash.h:501


AT32F403 Firmwary Library: at32f403_gpio.c Source File

  • libraries
  • drivers
  • src
at32f403_gpio.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef GPIO_MODULE_ENABLED
37
49void gpio_reset(gpio_type *gpio_x)
50{
51 if(gpio_x == GPIOA)
52 {
53 crm_periph_reset(CRM_GPIOA_PERIPH_RESET, TRUE);
54 crm_periph_reset(CRM_GPIOA_PERIPH_RESET, FALSE);
55 }
56 else if(gpio_x == GPIOB)
57 {
58 crm_periph_reset(CRM_GPIOB_PERIPH_RESET, TRUE);
59 crm_periph_reset(CRM_GPIOB_PERIPH_RESET, FALSE);
60 }
61 else if(gpio_x == GPIOC)
62 {
63 crm_periph_reset(CRM_GPIOC_PERIPH_RESET, TRUE);
64 crm_periph_reset(CRM_GPIOC_PERIPH_RESET, FALSE);
65 }
66 else if(gpio_x == GPIOD)
67 {
68 crm_periph_reset(CRM_GPIOD_PERIPH_RESET, TRUE);
69 crm_periph_reset(CRM_GPIOD_PERIPH_RESET, FALSE);
70 }
71 else if(gpio_x == GPIOE)
72 {
73 crm_periph_reset(CRM_GPIOE_PERIPH_RESET, TRUE);
74 crm_periph_reset(CRM_GPIOE_PERIPH_RESET, FALSE);
75 }
76 else if(gpio_x == GPIOF)
77 {
78 crm_periph_reset(CRM_GPIOF_PERIPH_RESET, TRUE);
79 crm_periph_reset(CRM_GPIOF_PERIPH_RESET, FALSE);
80 }
81 else if(gpio_x == GPIOG)
82 {
83 crm_periph_reset(CRM_GPIOG_PERIPH_RESET, TRUE);
84 crm_periph_reset(CRM_GPIOG_PERIPH_RESET, FALSE);
85 }
86}
87
94void gpio_iomux_reset(void)
95{
96 crm_periph_reset(CRM_IOMUX_PERIPH_RESET, TRUE);
97 crm_periph_reset(CRM_IOMUX_PERIPH_RESET, FALSE);
98}
99
108void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
109{
110 uint32_t temp;
111 uint16_t pinx_value, pin_index;
112
113 pin_index = (uint16_t)gpio_init_struct->gpio_pins;
114
115 /* pinx_value indecate pin grounp bit[3:0] from modey[1:0] confy[1:0] */
116
117 /* pin input analog config */
118 if(gpio_init_struct->gpio_mode == GPIO_MODE_ANALOG)
119 {
120 pinx_value = 0x00;
121 }
122 /* pin input config */
123 else if(gpio_init_struct->gpio_mode == GPIO_MODE_INPUT)
124 {
125 pinx_value = gpio_init_struct->gpio_pull & 0x0F;
126
127 if(gpio_init_struct->gpio_pull == GPIO_PULL_UP)
128 {
129 gpio_x->scr = pin_index;
130 }
131 else if(gpio_init_struct->gpio_pull == GPIO_PULL_DOWN)
132 {
133 gpio_x->clr = pin_index;
134 }
135 }
136 else
137 {
138 pinx_value = (gpio_init_struct->gpio_mode & 0x08) | (gpio_init_struct->gpio_out_type & 0x04) | \
139 (gpio_init_struct->gpio_drive_strength & 0x03);
140 }
141
142 /* pin 0~7 config */
143 if(((uint32_t)pin_index & ((uint32_t)0x00FF)) != 0x00)
144 {
145 for(temp = 0; temp < 0x08; temp++)
146 {
147 if((1 << temp) & pin_index)
148 {
149 gpio_x->cfglr &= (uint32_t)~(0x0F << (temp * 4));
150 gpio_x->cfglr |= (uint32_t)(pinx_value << (temp * 4));
151 }
152 }
153 }
154
155 /* pin 8~15 config */
156 if(pin_index > 0x00ff)
157 {
158 pin_index = pin_index >> 8;
159
160 for(temp = 0; temp < 0x8; temp++)
161 {
162 if((1 << temp) & pin_index)
163 {
164 gpio_x->cfghr &= (uint32_t)~(0xf << (temp * 4));
165 gpio_x->cfghr |= (uint32_t)(pinx_value << (temp * 4));
166 }
167 }
168 }
169}
170
176void gpio_default_para_init(gpio_init_type *gpio_init_struct)
177{
178 /* reset gpio init structure parameters values */
179 gpio_init_struct->gpio_pins = GPIO_PINS_ALL;
180 gpio_init_struct->gpio_mode = GPIO_MODE_INPUT;
181 gpio_init_struct->gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
182 gpio_init_struct->gpio_pull = GPIO_PULL_NONE;
183 gpio_init_struct->gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
184}
185
211 flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
212{
213 flag_status status = RESET;
214
215 if(pins != (pins & gpio_x->idt))
216 {
217 status = RESET;
218 }
219 else
220 {
221 status = SET;
222 }
223
224 return status;
225}
226
234uint16_t gpio_input_data_read(gpio_type *gpio_x)
235{
236 return ((uint16_t)(gpio_x->idt));
237}
238
264 flag_status gpio_output_data_bit_read(gpio_type *gpio_x, uint16_t pins)
265{
266 flag_status status = RESET;
267
268 if((gpio_x->odt & pins) != RESET)
269 {
270 status = SET;
271 }
272 else
273 {
274 status = RESET;
275 }
276
277 return status;
278}
279
287uint16_t gpio_output_data_read(gpio_type *gpio_x)
288{
289 return ((uint16_t)(gpio_x->odt));
290}
291
318void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
319{
320 gpio_x->scr = pins;
321}
322
349void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
350{
351 gpio_x->clr = pins;
352}
353
381void gpio_bits_write(gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
382{
383 if(bit_state != FALSE)
384 {
385 gpio_x->scr = pins;
386 }
387 else
388 {
389 gpio_x->clr = pins;
390 }
391}
392
401void gpio_port_write(gpio_type *gpio_x, uint16_t port_value)
402{
403 gpio_x->odt = port_value;
404}
405
432void gpio_pin_wp_config(gpio_type *gpio_x, uint16_t pins)
433{
434 uint32_t temp = 0x00010000;
435
436 temp |= pins;
437 /* set wpen bit */
438 gpio_x->wpr = temp;
439 /* reset wpen bit */
440 gpio_x->wpr = pins;
441 /* set wpen bit */
442 gpio_x->wpr = temp;
443 /* read wpen bit*/
444 temp = gpio_x->wpr;
445 /* read wpen bit*/
446 temp = gpio_x->wpr;
447}
448
479void gpio_event_output_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
480{
481 uint32_t tmpreg = 0x00;
482
483 tmpreg = IOMUX->evtout;
484
485 /* clear the port[6:4] and pin[3:0] bits */
486 tmpreg &= 0x80;
487 tmpreg |= (uint32_t)gpio_port_source << 0x04;
488 tmpreg |= gpio_pin_source;
489 IOMUX->evtout = tmpreg;
490}
491
498void gpio_event_output_enable(confirm_state new_state)
499{
500 IOMUX->evtout_bit.evoen = new_state;
501}
502
521void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
522{
523 uint32_t reg_addr, remap_mask;
524 uint8_t bit_offset, bit_num, bit_val;
525
526 /* get register address, bit offset, bit number and remap value */
527 reg_addr = IOMUX_BASE + (gpio_remap >> 24);
528 bit_offset = (gpio_remap >> 16) & 0xFF;
529 bit_num = (gpio_remap >> 8) & 0xFF;
530 bit_val = gpio_remap & 0xFF;
531
532 /* get remap mask value */
533 remap_mask = 0xFFFFFFFF << (32 - bit_num - bit_offset);
534 remap_mask = remap_mask >> (32 - bit_num - bit_offset);
535 remap_mask = remap_mask >> bit_offset;
536 remap_mask = remap_mask << bit_offset;
537
538 /* clear remap value */
539 if((gpio_remap == SPI1_MUX_01) || (gpio_remap == SPI1_MUX_10))
540 {
541 IOMUX->remap_bit.spi1_mux_h = FALSE;
542 IOMUX->remap_bit.spi1_mux_l = FALSE;
543 }
544 else
545 {
546 *(uint32_t*)reg_addr &= ~remap_mask;
547 }
548
549 if(new_state != FALSE)
550 {
551 /* set remap value */
552 *(uint32_t*)reg_addr |= (uint32_t)(bit_val << bit_offset);
553 }
554}
555
587void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
588{
589 uint32_t tmp = 0x00;
590 tmp = ((uint32_t)0x0F) << (0x04 * (gpio_pin_source & (uint8_t)0x03));
591
592 switch (gpio_pin_source >> 0x02)
593 {
594 case 0:
595 IOMUX->exintc1 &= ~tmp;
596 IOMUX->exintc1 |= (((uint32_t)gpio_port_source) << (0x04 * (gpio_pin_source & (uint8_t)0x03)));
597 break;
598 case 1:
599 IOMUX->exintc2 &= ~tmp;
600 IOMUX->exintc2 |= (((uint32_t)gpio_port_source) << (0x04 * (gpio_pin_source & (uint8_t)0x03)));
601 break;
602 case 2:
603 IOMUX->exintc3 &= ~tmp;
604 IOMUX->exintc3 |= (((uint32_t)gpio_port_source) << (0x04 * (gpio_pin_source & (uint8_t)0x03)));
605 break;
606 case 3:
607 IOMUX->exintc4 &= ~tmp;
608 IOMUX->exintc4 |= (((uint32_t)gpio_port_source) << (0x04 * (gpio_pin_source & (uint8_t)0x03)));
609 break;
610 default:
611 break;
612 }
613}
614
619#endif
620
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
CRM_IOMUX_PERIPH_RESET
@ CRM_IOMUX_PERIPH_RESET
Definition: at32f403_crm.h:163
CRM_GPIOE_PERIPH_RESET
@ CRM_GPIOE_PERIPH_RESET
Definition: at32f403_crm.h:169
CRM_GPIOF_PERIPH_RESET
@ CRM_GPIOF_PERIPH_RESET
Definition: at32f403_crm.h:170
CRM_GPIOD_PERIPH_RESET
@ CRM_GPIOD_PERIPH_RESET
Definition: at32f403_crm.h:168
CRM_GPIOC_PERIPH_RESET
@ CRM_GPIOC_PERIPH_RESET
Definition: at32f403_crm.h:167
CRM_GPIOG_PERIPH_RESET
@ CRM_GPIOG_PERIPH_RESET
Definition: at32f403_crm.h:171
CRM_GPIOA_PERIPH_RESET
@ CRM_GPIOA_PERIPH_RESET
Definition: at32f403_crm.h:165
CRM_GPIOB_PERIPH_RESET
@ CRM_GPIOB_PERIPH_RESET
Definition: at32f403_crm.h:166
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
gpio_pins_source_type
gpio_pins_source_type
gpio pins source type
Definition: at32f403_gpio.h:181
gpio_port_source_type
gpio_port_source_type
gpio port source type
Definition: at32f403_gpio.h:204
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_ALL
#define GPIO_PINS_ALL
Definition: at32f403_gpio.h:65
gpio_iomux_reset
void gpio_iomux_reset(void)
reset the mux functions (remap, event control and exint configuration) registers to their default val...
Definition: at32f403_gpio.c:94
gpio_output_data_read
uint16_t gpio_output_data_read(gpio_type *gpio_x)
read the specified gpio ouput data port.
Definition: at32f403_gpio.c:287
gpio_event_output_config
void gpio_event_output_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as event output.
Definition: at32f403_gpio.c:479
gpio_output_data_bit_read
flag_status gpio_output_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified output port pin.
Definition: at32f403_gpio.c:264
gpio_bits_write
void gpio_bits_write(gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
set or clear the selected data port bit.
Definition: at32f403_gpio.c:381
gpio_event_output_enable
void gpio_event_output_enable(confirm_state new_state)
enable or disable the event output.
Definition: at32f403_gpio.c:498
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
gpio_input_data_read
uint16_t gpio_input_data_read(gpio_type *gpio_x)
read the specified gpio input data port.
Definition: at32f403_gpio.c:234
gpio_pin_wp_config
void gpio_pin_wp_config(gpio_type *gpio_x, uint16_t pins)
write protect gpio pins configuration registers.
Definition: at32f403_gpio.c:432
gpio_port_write
void gpio_port_write(gpio_type *gpio_x, uint16_t port_value)
write data to the specified gpio data port.
Definition: at32f403_gpio.c:401
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
gpio_reset
void gpio_reset(gpio_type *gpio_x)
reset the gpio register
Definition: at32f403_gpio.c:49
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIOG
#define GPIOG
Definition: at32f403_gpio.h:600
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOF
#define GPIOF
Definition: at32f403_gpio.h:599
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
IOMUX
#define IOMUX
Definition: at32f403_gpio.h:601
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
SPI1_MUX_01
#define SPI1_MUX_01
Definition: at32f403_gpio.h:79
SPI1_MUX_10
#define SPI1_MUX_10
Definition: at32f403_gpio.h:80
IOMUX_BASE
#define IOMUX_BASE
Definition: at32f403.h:382
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
gpio_type
type define gpio register all
Definition: at32f403_gpio.h:230
gpio_type::scr
__IO uint32_t scr
Definition: at32f403_gpio.h:346
gpio_type::odt
__IO uint32_t odt
Definition: at32f403_gpio.h:318
gpio_type::clr
__IO uint32_t clr
Definition: at32f403_gpio.h:389
gpio_type::cfghr
__IO uint32_t cfghr
Definition: at32f403_gpio.h:263
gpio_type::cfglr
__IO uint32_t cfglr
Definition: at32f403_gpio.h:236
gpio_type::idt
__IO uint32_t idt
Definition: at32f403_gpio.h:290
gpio_type::wpr
__IO uint32_t wpr
Definition: at32f403_gpio.h:417
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_gpio.h Source File

  • libraries
  • drivers
  • inc
at32f403_gpio.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_GPIO_H
27#define __AT32F403_GPIO_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
49#define GPIO_PINS_0 0x0001
50#define GPIO_PINS_1 0x0002
51#define GPIO_PINS_2 0x0004
52#define GPIO_PINS_3 0x0008
53#define GPIO_PINS_4 0x0010
54#define GPIO_PINS_5 0x0020
55#define GPIO_PINS_6 0x0040
56#define GPIO_PINS_7 0x0080
57#define GPIO_PINS_8 0x0100
58#define GPIO_PINS_9 0x0200
59#define GPIO_PINS_10 0x0400
60#define GPIO_PINS_11 0x0800
61#define GPIO_PINS_12 0x1000
62#define GPIO_PINS_13 0x2000
63#define GPIO_PINS_14 0x4000
64#define GPIO_PINS_15 0x8000
65#define GPIO_PINS_ALL 0xFFFF
71#define IOMUX_MAKE_VALUE(reg_offset, bit_addr ,bit_num, bit_val) \
72 (uint32_t)(((reg_offset) << 24) | ((bit_addr) << 16) | ((bit_num) << 8) | (bit_val))
73
79#define SPI1_MUX_01 IOMUX_MAKE_VALUE(0x04, 0, 1, 0x01)
80#define SPI1_MUX_10 IOMUX_MAKE_VALUE(0x04, 31, 1, 0x01)
81#define I2C1_MUX IOMUX_MAKE_VALUE(0x04, 1, 1, 0x01)
82#define USART1_MUX IOMUX_MAKE_VALUE(0x04, 2, 1, 0x01)
83#define USART2_MUX IOMUX_MAKE_VALUE(0x04, 3, 1, 0x01)
84#define USART3_MUX_01 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x01)
85#define USART3_MUX_11 IOMUX_MAKE_VALUE(0x04, 4, 2, 0x03)
86#define TMR1_MUX_01 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x01)
87#define TMR1_MUX_11 IOMUX_MAKE_VALUE(0x04, 6, 2, 0x03)
88#define TMR2_MUX_01 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x01)
89#define TMR2_MUX_10 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x02)
90#define TMR2_MUX_11 IOMUX_MAKE_VALUE(0x04, 8, 2, 0x03)
91#define TMR3_MUX_10 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x02)
92#define TMR3_MUX_11 IOMUX_MAKE_VALUE(0x04, 10, 2, 0x03)
93#define TMR4_MUX IOMUX_MAKE_VALUE(0x04, 12, 1, 0x01)
94#define CAN_MUX_10 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x02)
95#define CAN_MUX_11 IOMUX_MAKE_VALUE(0x04, 13, 2, 0x03)
96#define PD01_MUX IOMUX_MAKE_VALUE(0x04, 15, 1, 0x01)
97#define TMR5CH4_MUX IOMUX_MAKE_VALUE(0x04, 16, 1, 0x01)
98#define ADC1_ETP_MUX IOMUX_MAKE_VALUE(0x04, 17, 1, 0x01)
99#define ADC1_ETO_MUX IOMUX_MAKE_VALUE(0x04, 18, 1, 0x01)
100#define ADC2_ETP_MUX IOMUX_MAKE_VALUE(0x04, 19, 1, 0x01)
101#define ADC2_ETO_MUX IOMUX_MAKE_VALUE(0x04, 20, 1, 0x01)
102#define SWJTAG_MUX_001 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x01)
103#define SWJTAG_MUX_010 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x02)
104#define SWJTAG_MUX_100 IOMUX_MAKE_VALUE(0x04, 24, 3, 0x04)
115#define TMR15_MUX IOMUX_MAKE_VALUE(0x1C, 0, 1, 0x01)
116#define TMR9_MUX IOMUX_MAKE_VALUE(0x1C, 5, 1, 0x01)
117#define TMR10_MUX IOMUX_MAKE_VALUE(0x1C, 6, 1, 0x01)
118#define TMR11_MUX IOMUX_MAKE_VALUE(0x1C, 7, 1, 0x01)
119#define TMR13_MUX IOMUX_MAKE_VALUE(0x1C, 8, 1, 0x01)
120#define TMR14_MUX IOMUX_MAKE_VALUE(0x1C, 9, 1, 0x01)
121#define XMC_NADV_MUX IOMUX_MAKE_VALUE(0x1C, 10, 1, 0x01)
122#define SPI4_MUX IOMUX_MAKE_VALUE(0x1C, 17, 1, 0x01)
123#define I2C3_MUX IOMUX_MAKE_VALUE(0x1C, 18, 1, 0x01)
124#define SDIO2_MUX01 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x01)
125#define SDIO2_MUX10 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x02)
126#define SDIO2_MUX11 IOMUX_MAKE_VALUE(0x1C, 19, 2, 0x03)
127#define EXT_SPIM_EN_MUX IOMUX_MAKE_VALUE(0x1C, 21, 1, 0x01)
140typedef enum
141{
142 GPIO_MODE_INPUT = 0x00,
143 GPIO_MODE_OUTPUT = 0x10,
144 GPIO_MODE_MUX = 0x08,
145 GPIO_MODE_ANALOG = 0x03
146} gpio_mode_type;
147
151typedef enum
152{
153 GPIO_DRIVE_STRENGTH_STRONGER = 0x01,
154 GPIO_DRIVE_STRENGTH_MODERATE = 0x02,
155 GPIO_DRIVE_STRENGTH_MAXIMUM = 0x03
156} gpio_drive_type;
157
161typedef enum
162{
163 GPIO_OUTPUT_PUSH_PULL = 0x00,
164 GPIO_OUTPUT_OPEN_DRAIN = 0x04
165} gpio_output_type;
166
170typedef enum
171{
172 GPIO_PULL_NONE = 0x0004,
173 GPIO_PULL_UP = 0x0018,
174 GPIO_PULL_DOWN = 0x0028
175} gpio_pull_type;
176
180typedef enum
181{
182 GPIO_PINS_SOURCE0 = 0x00,
183 GPIO_PINS_SOURCE1 = 0x01,
184 GPIO_PINS_SOURCE2 = 0x02,
185 GPIO_PINS_SOURCE3 = 0x03,
186 GPIO_PINS_SOURCE4 = 0x04,
187 GPIO_PINS_SOURCE5 = 0x05,
188 GPIO_PINS_SOURCE6 = 0x06,
189 GPIO_PINS_SOURCE7 = 0x07,
190 GPIO_PINS_SOURCE8 = 0x08,
191 GPIO_PINS_SOURCE9 = 0x09,
192 GPIO_PINS_SOURCE10 = 0x0A,
193 GPIO_PINS_SOURCE11 = 0x0B,
194 GPIO_PINS_SOURCE12 = 0x0C,
195 GPIO_PINS_SOURCE13 = 0x0D,
196 GPIO_PINS_SOURCE14 = 0x0E,
197 GPIO_PINS_SOURCE15 = 0x0F
198} gpio_pins_source_type;
199
203typedef enum
204{
205 GPIO_PORT_SOURCE_GPIOA = 0x00,
206 GPIO_PORT_SOURCE_GPIOB = 0x01,
207 GPIO_PORT_SOURCE_GPIOC = 0x02,
208 GPIO_PORT_SOURCE_GPIOD = 0x03,
209 GPIO_PORT_SOURCE_GPIOE = 0x04,
210 GPIO_PORT_SOURCE_GPIOF = 0x05,
211 GPIO_PORT_SOURCE_GPIOG = 0x06,
212} gpio_port_source_type;
213
217typedef struct
218{
219 uint32_t gpio_pins;
220 gpio_output_type gpio_out_type;
221 gpio_pull_type gpio_pull;
222 gpio_mode_type gpio_mode;
223 gpio_drive_type gpio_drive_strength;
224} gpio_init_type;
225
229typedef struct
230{
234 union
235 {
236 __IO uint32_t cfglr;
237 struct
238 {
239 __IO uint32_t iomc0 : 2; /* [1:0] */
240 __IO uint32_t iofc0 : 2; /* [3:2] */
241 __IO uint32_t iomc1 : 2; /* [5:4] */
242 __IO uint32_t iofc1 : 2; /* [7:6] */
243 __IO uint32_t iomc2 : 2; /* [9:8] */
244 __IO uint32_t iofc2 : 2; /* [11:10] */
245 __IO uint32_t iomc3 : 2; /* [13:12] */
246 __IO uint32_t iofc3 : 2; /* [15:14] */
247 __IO uint32_t iomc4 : 2; /* [17:16] */
248 __IO uint32_t iofc4 : 2; /* [19:18] */
249 __IO uint32_t iomc5 : 2; /* [21:20] */
250 __IO uint32_t iofc5 : 2; /* [23:22] */
251 __IO uint32_t iomc6 : 2; /* [25:24] */
252 __IO uint32_t iofc6 : 2; /* [27:26] */
253 __IO uint32_t iomc7 : 2; /* [29:28] */
254 __IO uint32_t iofc7 : 2; /* [31:30] */
255 } cfglr_bit;
256 };
257
261 union
262 {
263 __IO uint32_t cfghr;
264 struct
265 {
266 __IO uint32_t iomc8 : 2; /* [1:0] */
267 __IO uint32_t iofc8 : 2; /* [3:2] */
268 __IO uint32_t iomc9 : 2; /* [5:4] */
269 __IO uint32_t iofc9 : 2; /* [7:6] */
270 __IO uint32_t iomc10 : 2; /* [9:8] */
271 __IO uint32_t iofc10 : 2; /* [11:10] */
272 __IO uint32_t iomc11 : 2; /* [13:12] */
273 __IO uint32_t iofc11 : 2; /* [15:14] */
274 __IO uint32_t iomc12 : 2; /* [17:16] */
275 __IO uint32_t iofc12 : 2; /* [19:18] */
276 __IO uint32_t iomc13 : 2; /* [21:20] */
277 __IO uint32_t iofc13 : 2; /* [23:22] */
278 __IO uint32_t iomc14 : 2; /* [25:24] */
279 __IO uint32_t iofc14 : 2; /* [27:26] */
280 __IO uint32_t iomc15 : 2; /* [29:28] */
281 __IO uint32_t iofc15 : 2; /* [31:30] */
282 } cfghr_bit;
283 };
284
288 union
289 {
290 __IO uint32_t idt;
291 struct
292 {
293 __IO uint32_t idt0 : 1; /* [0] */
294 __IO uint32_t idt1 : 1; /* [1] */
295 __IO uint32_t idt2 : 1; /* [2] */
296 __IO uint32_t idt3 : 1; /* [3] */
297 __IO uint32_t idt4 : 1; /* [4] */
298 __IO uint32_t idt5 : 1; /* [5] */
299 __IO uint32_t idt6 : 1; /* [6] */
300 __IO uint32_t idt7 : 1; /* [7] */
301 __IO uint32_t idt8 : 1; /* [8] */
302 __IO uint32_t idt9 : 1; /* [9] */
303 __IO uint32_t idt10 : 1; /* [10] */
304 __IO uint32_t idt11 : 1; /* [11] */
305 __IO uint32_t idt12 : 1; /* [12] */
306 __IO uint32_t idt13 : 1; /* [13] */
307 __IO uint32_t idt14 : 1; /* [14] */
308 __IO uint32_t idt15 : 1; /* [15] */
309 __IO uint32_t reserved1 : 16;/* [31:16] */
310 } idt_bit;
311 };
312
316 union
317 {
318 __IO uint32_t odt;
319 struct
320 {
321 __IO uint32_t odt0 : 1; /* [0] */
322 __IO uint32_t odt1 : 1; /* [1] */
323 __IO uint32_t odt2 : 1; /* [2] */
324 __IO uint32_t odt3 : 1; /* [3] */
325 __IO uint32_t odt4 : 1; /* [4] */
326 __IO uint32_t odt5 : 1; /* [5] */
327 __IO uint32_t odt6 : 1; /* [6] */
328 __IO uint32_t odt7 : 1; /* [7] */
329 __IO uint32_t odt8 : 1; /* [8] */
330 __IO uint32_t odt9 : 1; /* [9] */
331 __IO uint32_t odt10 : 1; /* [10] */
332 __IO uint32_t odt11 : 1; /* [11] */
333 __IO uint32_t odt12 : 1; /* [12] */
334 __IO uint32_t odt13 : 1; /* [13] */
335 __IO uint32_t odt14 : 1; /* [14] */
336 __IO uint32_t odt15 : 1; /* [15] */
337 __IO uint32_t reserved1 : 16;/* [31:16] */
338 } odt_bit;
339 };
340
344 union
345 {
346 __IO uint32_t scr;
347 struct
348 {
349 __IO uint32_t iosb0 : 1; /* [0] */
350 __IO uint32_t iosb1 : 1; /* [1] */
351 __IO uint32_t iosb2 : 1; /* [2] */
352 __IO uint32_t iosb3 : 1; /* [3] */
353 __IO uint32_t iosb4 : 1; /* [4] */
354 __IO uint32_t iosb5 : 1; /* [5] */
355 __IO uint32_t iosb6 : 1; /* [6] */
356 __IO uint32_t iosb7 : 1; /* [7] */
357 __IO uint32_t iosb8 : 1; /* [8] */
358 __IO uint32_t iosb9 : 1; /* [9] */
359 __IO uint32_t iosb10 : 1; /* [10] */
360 __IO uint32_t iosb11 : 1; /* [11] */
361 __IO uint32_t iosb12 : 1; /* [12] */
362 __IO uint32_t iosb13 : 1; /* [13] */
363 __IO uint32_t iosb14 : 1; /* [14] */
364 __IO uint32_t iosb15 : 1; /* [15] */
365 __IO uint32_t iocb0 : 1; /* [16] */
366 __IO uint32_t iocb1 : 1; /* [17] */
367 __IO uint32_t iocb2 : 1; /* [18] */
368 __IO uint32_t iocb3 : 1; /* [19] */
369 __IO uint32_t iocb4 : 1; /* [20] */
370 __IO uint32_t iocb5 : 1; /* [21] */
371 __IO uint32_t iocb6 : 1; /* [22] */
372 __IO uint32_t iocb7 : 1; /* [23] */
373 __IO uint32_t iocb8 : 1; /* [24] */
374 __IO uint32_t iocb9 : 1; /* [25] */
375 __IO uint32_t iocb10 : 1; /* [26] */
376 __IO uint32_t iocb11 : 1; /* [27] */
377 __IO uint32_t iocb12 : 1; /* [28] */
378 __IO uint32_t iocb13 : 1; /* [29] */
379 __IO uint32_t iocb14 : 1; /* [30] */
380 __IO uint32_t iocb15 : 1; /* [31] */
381 } scr_bit;
382 };
383
387 union
388 {
389 __IO uint32_t clr;
390 struct
391 {
392 __IO uint32_t iocb0 : 1; /* [0] */
393 __IO uint32_t iocb1 : 1; /* [1] */
394 __IO uint32_t iocb2 : 1; /* [2] */
395 __IO uint32_t iocb3 : 1; /* [3] */
396 __IO uint32_t iocb4 : 1; /* [4] */
397 __IO uint32_t iocb5 : 1; /* [5] */
398 __IO uint32_t iocb6 : 1; /* [6] */
399 __IO uint32_t iocb7 : 1; /* [7] */
400 __IO uint32_t iocb8 : 1; /* [8] */
401 __IO uint32_t iocb9 : 1; /* [9] */
402 __IO uint32_t iocb10 : 1; /* [10] */
403 __IO uint32_t iocb11 : 1; /* [11] */
404 __IO uint32_t iocb12 : 1; /* [12] */
405 __IO uint32_t iocb13 : 1; /* [13] */
406 __IO uint32_t iocb14 : 1; /* [14] */
407 __IO uint32_t iocb15 : 1; /* [15] */
408 __IO uint32_t reserved1 : 16;/* [31:16] */
409 } clr_bit;
410 };
411
415 union
416 {
417 __IO uint32_t wpr;
418 struct
419 {
420 __IO uint32_t wpen0 : 1; /* [0] */
421 __IO uint32_t wpen1 : 1; /* [1] */
422 __IO uint32_t wpen2 : 1; /* [2] */
423 __IO uint32_t wpen3 : 1; /* [3] */
424 __IO uint32_t wpen4 : 1; /* [4] */
425 __IO uint32_t wpen5 : 1; /* [5] */
426 __IO uint32_t wpen6 : 1; /* [6] */
427 __IO uint32_t wpen7 : 1; /* [7] */
428 __IO uint32_t wpen8 : 1; /* [8] */
429 __IO uint32_t wpen9 : 1; /* [9] */
430 __IO uint32_t wpen10 : 1; /* [10] */
431 __IO uint32_t wpen11 : 1; /* [11] */
432 __IO uint32_t wpen12 : 1; /* [12] */
433 __IO uint32_t wpen13 : 1; /* [13] */
434 __IO uint32_t wpen14 : 1; /* [14] */
435 __IO uint32_t wpen15 : 1; /* [15] */
436 __IO uint32_t wpseq : 1; /* [16] */
437 __IO uint32_t reserved1 : 15;/* [31:17] */
438 } wpr_bit;
439 };
440
441} gpio_type;
442
446typedef struct
447{
451 union
452 {
453 __IO uint32_t evtout;
454 struct
455 {
456 __IO uint32_t selpin : 4; /* [3:0] */
457 __IO uint32_t selport : 3; /* [6:4] */
458 __IO uint32_t evoen : 1; /* [7] */
459 __IO uint32_t reserved1 : 24;/* [31:8] */
460 } evtout_bit;
461 };
462
466 union
467 {
468 __IO uint32_t remap;
469 struct
470 {
471 __IO uint32_t spi1_mux_l : 1; /* [0] */
472 __IO uint32_t i2c1_mux : 1; /* [1] */
473 __IO uint32_t usart1_mux : 1; /* [2] */
474 __IO uint32_t usart2_mux : 1; /* [3] */
475 __IO uint32_t usart3_mux : 2; /* [5:4] */
476 __IO uint32_t tmr1_mux : 2; /* [7:6] */
477 __IO uint32_t tmr2_mux : 2; /* [9:8] */
478 __IO uint32_t tmr3_mux : 2; /* [11:10] */
479 __IO uint32_t tmr4_mux : 1; /* [12] */
480 __IO uint32_t can_mux : 2; /* [14:13] */
481 __IO uint32_t pd01_mux : 1; /* [15] */
482 __IO uint32_t tmr5ch4_mux : 1; /* [16] */
483 __IO uint32_t adc1_extrgpre_mux : 1; /* [17] */
484 __IO uint32_t adc1_extrgord_mux : 1; /* [18] */
485 __IO uint32_t adc2_extrgpre_mux : 1; /* [19] */
486 __IO uint32_t adc2_extrgord_mux : 1; /* [20] */
487 __IO uint32_t reserved1 : 3; /* [23:21] */
488 __IO uint32_t swjtag_mux : 3; /* [26:24] */
489 __IO uint32_t reserved2 : 4; /* [30:27] */
490 __IO uint32_t spi1_mux_h : 1; /* [31] */
491 } remap_bit;
492 };
493
497 union
498 {
499 __IO uint32_t exintc1;
500 struct
501 {
502 __IO uint32_t exint0 : 4; /* [3:0] */
503 __IO uint32_t exint1 : 4; /* [7:4] */
504 __IO uint32_t exint2 : 4; /* [11:8] */
505 __IO uint32_t exint3 : 4; /* [15:12] */
506 __IO uint32_t reserved1 : 16;/* [31:16] */
507 } exintc1_bit;
508 };
509
513 union
514 {
515 __IO uint32_t exintc2;
516 struct
517 {
518 __IO uint32_t exint4 : 4; /* [3:0] */
519 __IO uint32_t exint5 : 4; /* [7:4] */
520 __IO uint32_t exint6 : 4; /* [11:8] */
521 __IO uint32_t exint7 : 4; /* [15:12] */
522 __IO uint32_t reserved1 : 16;/* [31:16] */
523 } exintc2_bit;
524 };
525
529 union
530 {
531 __IO uint32_t exintc3;
532 struct
533 {
534 __IO uint32_t exint8 : 4; /* [3:0] */
535 __IO uint32_t exint9 : 4; /* [7:4] */
536 __IO uint32_t exint10 : 4; /* [11:8] */
537 __IO uint32_t exint11 : 4; /* [15:12] */
538 __IO uint32_t reserved1 : 16;/* [31:16] */
539 } exintc3_bit;
540 };
541
545 union
546 {
547 __IO uint32_t exintc4;
548 struct
549 {
550 __IO uint32_t exint12 : 4; /* [3:0] */
551 __IO uint32_t exint13 : 4; /* [7:4] */
552 __IO uint32_t exint14 : 4; /* [11:8] */
553 __IO uint32_t exint15 : 4; /* [15:12] */
554 __IO uint32_t reserved1 : 16;/* [31:16] */
555 } exintc4_bit;
556 };
557
561 __IO uint32_t reserved1;
562
566 union
567 {
568 __IO uint32_t remap2;
569 struct
570 {
571 __IO uint32_t tmr15_mux : 1; /* [0] */
572 __IO uint32_t reserved1 : 4; /* [4:1] */
573 __IO uint32_t tmr9_mux : 1; /* [5] */
574 __IO uint32_t tmr10_mux : 1; /* [6] */
575 __IO uint32_t tmr11_mux : 1; /* [7] */
576 __IO uint32_t tmr13_mux : 1; /* [8] */
577 __IO uint32_t tmr14_mux : 1; /* [9] */
578 __IO uint32_t xmc_nadv_mux : 1; /* [10] */
579 __IO uint32_t reserved2 : 6; /* [16:11] */
580 __IO uint32_t spi4_mux : 1; /* [17] */
581 __IO uint32_t i2c3_mux : 1; /* [18] */
582 __IO uint32_t sdio2_mux : 2; /* [20:19] */
583 __IO uint32_t ext_spim_en_mux : 1; /* [21] */
584 __IO uint32_t reserved3 : 10;/* [31:22] */
585 } remap2_bit;
586 };
587
588} iomux_type;
589
594#define GPIOA ((gpio_type *) GPIOA_BASE)
595#define GPIOB ((gpio_type *) GPIOB_BASE)
596#define GPIOC ((gpio_type *) GPIOC_BASE)
597#define GPIOD ((gpio_type *) GPIOD_BASE)
598#define GPIOE ((gpio_type *) GPIOE_BASE)
599#define GPIOF ((gpio_type *) GPIOF_BASE)
600#define GPIOG ((gpio_type *) GPIOG_BASE)
601#define IOMUX ((iomux_type *) IOMUX_BASE)
602
607void gpio_reset(gpio_type *gpio_x);
608void gpio_iomux_reset(void);
609void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct);
610void gpio_default_para_init(gpio_init_type *gpio_init_struct);
611 flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins);
612uint16_t gpio_input_data_read(gpio_type *gpio_x);
613 flag_status gpio_output_data_bit_read(gpio_type *gpio_x, uint16_t pins);
614uint16_t gpio_output_data_read(gpio_type *gpio_x);
615void gpio_bits_set(gpio_type *gpio_x, uint16_t pins);
616void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins);
617void gpio_bits_write(gpio_type *gpio_x, uint16_t pins, confirm_state bit_state);
618void gpio_port_write(gpio_type *gpio_x, uint16_t port_value);
619void gpio_pin_wp_config(gpio_type *gpio_x, uint16_t pins);
620void gpio_event_output_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source);
621void gpio_event_output_enable(confirm_state new_state);
622void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state);
623void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source);
624
637#ifdef __cplusplus
638}
639#endif
640
641#endif
at32f403.h
at32f403 header file
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
gpio_iomux_reset
void gpio_iomux_reset(void)
reset the mux functions (remap, event control and exint configuration) registers to their default val...
Definition: at32f403_gpio.c:94
gpio_output_data_read
uint16_t gpio_output_data_read(gpio_type *gpio_x)
read the specified gpio ouput data port.
Definition: at32f403_gpio.c:287
gpio_event_output_config
void gpio_event_output_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as event output.
Definition: at32f403_gpio.c:479
gpio_output_data_bit_read
flag_status gpio_output_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified output port pin.
Definition: at32f403_gpio.c:264
gpio_bits_write
void gpio_bits_write(gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
set or clear the selected data port bit.
Definition: at32f403_gpio.c:381
gpio_event_output_enable
void gpio_event_output_enable(confirm_state new_state)
enable or disable the event output.
Definition: at32f403_gpio.c:498
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
gpio_input_data_read
uint16_t gpio_input_data_read(gpio_type *gpio_x)
read the specified gpio input data port.
Definition: at32f403_gpio.c:234
gpio_pin_wp_config
void gpio_pin_wp_config(gpio_type *gpio_x, uint16_t pins)
write protect gpio pins configuration registers.
Definition: at32f403_gpio.c:432
gpio_port_write
void gpio_port_write(gpio_type *gpio_x, uint16_t port_value)
write data to the specified gpio data port.
Definition: at32f403_gpio.c:401
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
gpio_reset
void gpio_reset(gpio_type *gpio_x)
reset the gpio register
Definition: at32f403_gpio.c:49
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
gpio_mode_type
gpio_mode_type
gpio mode select
Definition: at32f403_gpio.h:141
gpio_drive_type
gpio_drive_type
gpio output drive strength select
Definition: at32f403_gpio.h:152
gpio_pins_source_type
gpio_pins_source_type
gpio pins source type
Definition: at32f403_gpio.h:181
gpio_port_source_type
gpio_port_source_type
gpio port source type
Definition: at32f403_gpio.h:204
gpio_pull_type
gpio_pull_type
gpio pull type
Definition: at32f403_gpio.h:171
gpio_output_type
gpio_output_type
gpio output type
Definition: at32f403_gpio.h:162
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_MAXIMUM
@ GPIO_DRIVE_STRENGTH_MAXIMUM
Definition: at32f403_gpio.h:155
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PINS_SOURCE3
@ GPIO_PINS_SOURCE3
Definition: at32f403_gpio.h:185
GPIO_PINS_SOURCE1
@ GPIO_PINS_SOURCE1
Definition: at32f403_gpio.h:183
GPIO_PINS_SOURCE7
@ GPIO_PINS_SOURCE7
Definition: at32f403_gpio.h:189
GPIO_PINS_SOURCE12
@ GPIO_PINS_SOURCE12
Definition: at32f403_gpio.h:194
GPIO_PINS_SOURCE13
@ GPIO_PINS_SOURCE13
Definition: at32f403_gpio.h:195
GPIO_PINS_SOURCE6
@ GPIO_PINS_SOURCE6
Definition: at32f403_gpio.h:188
GPIO_PINS_SOURCE0
@ GPIO_PINS_SOURCE0
Definition: at32f403_gpio.h:182
GPIO_PINS_SOURCE2
@ GPIO_PINS_SOURCE2
Definition: at32f403_gpio.h:184
GPIO_PINS_SOURCE10
@ GPIO_PINS_SOURCE10
Definition: at32f403_gpio.h:192
GPIO_PINS_SOURCE9
@ GPIO_PINS_SOURCE9
Definition: at32f403_gpio.h:191
GPIO_PINS_SOURCE4
@ GPIO_PINS_SOURCE4
Definition: at32f403_gpio.h:186
GPIO_PINS_SOURCE11
@ GPIO_PINS_SOURCE11
Definition: at32f403_gpio.h:193
GPIO_PINS_SOURCE15
@ GPIO_PINS_SOURCE15
Definition: at32f403_gpio.h:197
GPIO_PINS_SOURCE14
@ GPIO_PINS_SOURCE14
Definition: at32f403_gpio.h:196
GPIO_PINS_SOURCE5
@ GPIO_PINS_SOURCE5
Definition: at32f403_gpio.h:187
GPIO_PINS_SOURCE8
@ GPIO_PINS_SOURCE8
Definition: at32f403_gpio.h:190
GPIO_PORT_SOURCE_GPIOF
@ GPIO_PORT_SOURCE_GPIOF
Definition: at32f403_gpio.h:210
GPIO_PORT_SOURCE_GPIOG
@ GPIO_PORT_SOURCE_GPIOG
Definition: at32f403_gpio.h:211
GPIO_PORT_SOURCE_GPIOA
@ GPIO_PORT_SOURCE_GPIOA
Definition: at32f403_gpio.h:205
GPIO_PORT_SOURCE_GPIOE
@ GPIO_PORT_SOURCE_GPIOE
Definition: at32f403_gpio.h:209
GPIO_PORT_SOURCE_GPIOB
@ GPIO_PORT_SOURCE_GPIOB
Definition: at32f403_gpio.h:206
GPIO_PORT_SOURCE_GPIOD
@ GPIO_PORT_SOURCE_GPIOD
Definition: at32f403_gpio.h:208
GPIO_PORT_SOURCE_GPIOC
@ GPIO_PORT_SOURCE_GPIOC
Definition: at32f403_gpio.h:207
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
gpio_type
type define gpio register all
Definition: at32f403_gpio.h:230
gpio_type::iocb9
__IO uint32_t iocb9
Definition: at32f403_gpio.h:374
gpio_type::idt4
__IO uint32_t idt4
Definition: at32f403_gpio.h:297
gpio_type::iocb4
__IO uint32_t iocb4
Definition: at32f403_gpio.h:369
gpio_type::iocb6
__IO uint32_t iocb6
Definition: at32f403_gpio.h:371
gpio_type::iomc13
__IO uint32_t iomc13
Definition: at32f403_gpio.h:276
gpio_type::odt11
__IO uint32_t odt11
Definition: at32f403_gpio.h:332
gpio_type::iocb7
__IO uint32_t iocb7
Definition: at32f403_gpio.h:372
gpio_type::idt3
__IO uint32_t idt3
Definition: at32f403_gpio.h:296
gpio_type::idt7
__IO uint32_t idt7
Definition: at32f403_gpio.h:300
gpio_type::iosb12
__IO uint32_t iosb12
Definition: at32f403_gpio.h:361
gpio_type::iomc5
__IO uint32_t iomc5
Definition: at32f403_gpio.h:249
gpio_type::iofc13
__IO uint32_t iofc13
Definition: at32f403_gpio.h:277
gpio_type::iosb4
__IO uint32_t iosb4
Definition: at32f403_gpio.h:353
gpio_type::idt1
__IO uint32_t idt1
Definition: at32f403_gpio.h:294
gpio_type::idt14
__IO uint32_t idt14
Definition: at32f403_gpio.h:307
gpio_type::idt6
__IO uint32_t idt6
Definition: at32f403_gpio.h:299
gpio_type::iofc2
__IO uint32_t iofc2
Definition: at32f403_gpio.h:244
gpio_type::scr
__IO uint32_t scr
Definition: at32f403_gpio.h:346
gpio_type::odt6
__IO uint32_t odt6
Definition: at32f403_gpio.h:327
gpio_type::odt
__IO uint32_t odt
Definition: at32f403_gpio.h:318
gpio_type::wpen0
__IO uint32_t wpen0
Definition: at32f403_gpio.h:420
gpio_type::wpen9
__IO uint32_t wpen9
Definition: at32f403_gpio.h:429
gpio_type::iomc0
__IO uint32_t iomc0
Definition: at32f403_gpio.h:239
gpio_type::odt5
__IO uint32_t odt5
Definition: at32f403_gpio.h:326
gpio_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_gpio.h:309
gpio_type::odt2
__IO uint32_t odt2
Definition: at32f403_gpio.h:323
gpio_type::iosb7
__IO uint32_t iosb7
Definition: at32f403_gpio.h:356
gpio_type::iocb15
__IO uint32_t iocb15
Definition: at32f403_gpio.h:380
gpio_type::idt12
__IO uint32_t idt12
Definition: at32f403_gpio.h:305
gpio_type::idt9
__IO uint32_t idt9
Definition: at32f403_gpio.h:302
gpio_type::iofc5
__IO uint32_t iofc5
Definition: at32f403_gpio.h:250
gpio_type::odt14
__IO uint32_t odt14
Definition: at32f403_gpio.h:335
gpio_type::iomc6
__IO uint32_t iomc6
Definition: at32f403_gpio.h:251
gpio_type::wpen14
__IO uint32_t wpen14
Definition: at32f403_gpio.h:434
gpio_type::idt8
__IO uint32_t idt8
Definition: at32f403_gpio.h:301
gpio_type::clr
__IO uint32_t clr
Definition: at32f403_gpio.h:389
gpio_type::iosb9
__IO uint32_t iosb9
Definition: at32f403_gpio.h:358
gpio_type::iomc2
__IO uint32_t iomc2
Definition: at32f403_gpio.h:243
gpio_type::iocb14
__IO uint32_t iocb14
Definition: at32f403_gpio.h:379
gpio_type::iofc3
__IO uint32_t iofc3
Definition: at32f403_gpio.h:246
gpio_type::iosb2
__IO uint32_t iosb2
Definition: at32f403_gpio.h:351
gpio_type::wpen8
__IO uint32_t wpen8
Definition: at32f403_gpio.h:428
gpio_type::wpen1
__IO uint32_t wpen1
Definition: at32f403_gpio.h:421
gpio_type::iocb13
__IO uint32_t iocb13
Definition: at32f403_gpio.h:378
gpio_type::wpen13
__IO uint32_t wpen13
Definition: at32f403_gpio.h:433
gpio_type::iofc14
__IO uint32_t iofc14
Definition: at32f403_gpio.h:279
gpio_type::odt15
__IO uint32_t odt15
Definition: at32f403_gpio.h:336
gpio_type::iocb12
__IO uint32_t iocb12
Definition: at32f403_gpio.h:377
gpio_type::iocb3
__IO uint32_t iocb3
Definition: at32f403_gpio.h:368
gpio_type::iosb13
__IO uint32_t iosb13
Definition: at32f403_gpio.h:362
gpio_type::odt3
__IO uint32_t odt3
Definition: at32f403_gpio.h:324
gpio_type::odt9
__IO uint32_t odt9
Definition: at32f403_gpio.h:330
gpio_type::iofc11
__IO uint32_t iofc11
Definition: at32f403_gpio.h:273
gpio_type::idt5
__IO uint32_t idt5
Definition: at32f403_gpio.h:298
gpio_type::iosb5
__IO uint32_t iosb5
Definition: at32f403_gpio.h:354
gpio_type::iosb14
__IO uint32_t iosb14
Definition: at32f403_gpio.h:363
gpio_type::iosb1
__IO uint32_t iosb1
Definition: at32f403_gpio.h:350
gpio_type::iofc6
__IO uint32_t iofc6
Definition: at32f403_gpio.h:252
gpio_type::odt12
__IO uint32_t odt12
Definition: at32f403_gpio.h:333
gpio_type::wpen15
__IO uint32_t wpen15
Definition: at32f403_gpio.h:435
gpio_type::iomc8
__IO uint32_t iomc8
Definition: at32f403_gpio.h:266
gpio_type::wpseq
__IO uint32_t wpseq
Definition: at32f403_gpio.h:436
gpio_type::idt10
__IO uint32_t idt10
Definition: at32f403_gpio.h:303
gpio_type::wpen12
__IO uint32_t wpen12
Definition: at32f403_gpio.h:432
gpio_type::iofc10
__IO uint32_t iofc10
Definition: at32f403_gpio.h:271
gpio_type::iomc9
__IO uint32_t iomc9
Definition: at32f403_gpio.h:268
gpio_type::iocb8
__IO uint32_t iocb8
Definition: at32f403_gpio.h:373
gpio_type::iosb6
__IO uint32_t iosb6
Definition: at32f403_gpio.h:355
gpio_type::iocb1
__IO uint32_t iocb1
Definition: at32f403_gpio.h:366
gpio_type::iocb2
__IO uint32_t iocb2
Definition: at32f403_gpio.h:367
gpio_type::wpen2
__IO uint32_t wpen2
Definition: at32f403_gpio.h:422
gpio_type::iofc12
__IO uint32_t iofc12
Definition: at32f403_gpio.h:275
gpio_type::iomc7
__IO uint32_t iomc7
Definition: at32f403_gpio.h:253
gpio_type::idt13
__IO uint32_t idt13
Definition: at32f403_gpio.h:306
gpio_type::odt13
__IO uint32_t odt13
Definition: at32f403_gpio.h:334
gpio_type::iocb5
__IO uint32_t iocb5
Definition: at32f403_gpio.h:370
gpio_type::odt7
__IO uint32_t odt7
Definition: at32f403_gpio.h:328
gpio_type::odt4
__IO uint32_t odt4
Definition: at32f403_gpio.h:325
gpio_type::iosb0
__IO uint32_t iosb0
Definition: at32f403_gpio.h:349
gpio_type::wpen6
__IO uint32_t wpen6
Definition: at32f403_gpio.h:426
gpio_type::cfghr
__IO uint32_t cfghr
Definition: at32f403_gpio.h:263
gpio_type::iofc0
__IO uint32_t iofc0
Definition: at32f403_gpio.h:240
gpio_type::wpen11
__IO uint32_t wpen11
Definition: at32f403_gpio.h:431
gpio_type::wpen4
__IO uint32_t wpen4
Definition: at32f403_gpio.h:424
gpio_type::wpen5
__IO uint32_t wpen5
Definition: at32f403_gpio.h:425
gpio_type::idt11
__IO uint32_t idt11
Definition: at32f403_gpio.h:304
gpio_type::idt2
__IO uint32_t idt2
Definition: at32f403_gpio.h:295
gpio_type::odt1
__IO uint32_t odt1
Definition: at32f403_gpio.h:322
gpio_type::cfglr
__IO uint32_t cfglr
Definition: at32f403_gpio.h:236
gpio_type::wpen7
__IO uint32_t wpen7
Definition: at32f403_gpio.h:427
gpio_type::iomc11
__IO uint32_t iomc11
Definition: at32f403_gpio.h:272
gpio_type::iocb10
__IO uint32_t iocb10
Definition: at32f403_gpio.h:375
gpio_type::iofc9
__IO uint32_t iofc9
Definition: at32f403_gpio.h:269
gpio_type::iomc15
__IO uint32_t iomc15
Definition: at32f403_gpio.h:280
gpio_type::iomc14
__IO uint32_t iomc14
Definition: at32f403_gpio.h:278
gpio_type::iofc8
__IO uint32_t iofc8
Definition: at32f403_gpio.h:267
gpio_type::iomc12
__IO uint32_t iomc12
Definition: at32f403_gpio.h:274
gpio_type::iosb15
__IO uint32_t iosb15
Definition: at32f403_gpio.h:364
gpio_type::odt10
__IO uint32_t odt10
Definition: at32f403_gpio.h:331
gpio_type::iofc7
__IO uint32_t iofc7
Definition: at32f403_gpio.h:254
gpio_type::iosb3
__IO uint32_t iosb3
Definition: at32f403_gpio.h:352
gpio_type::odt0
__IO uint32_t odt0
Definition: at32f403_gpio.h:321
gpio_type::wpen3
__IO uint32_t wpen3
Definition: at32f403_gpio.h:423
gpio_type::idt15
__IO uint32_t idt15
Definition: at32f403_gpio.h:308
gpio_type::idt
__IO uint32_t idt
Definition: at32f403_gpio.h:290
gpio_type::odt8
__IO uint32_t odt8
Definition: at32f403_gpio.h:329
gpio_type::iofc15
__IO uint32_t iofc15
Definition: at32f403_gpio.h:281
gpio_type::iofc1
__IO uint32_t iofc1
Definition: at32f403_gpio.h:242
gpio_type::idt0
__IO uint32_t idt0
Definition: at32f403_gpio.h:293
gpio_type::wpr
__IO uint32_t wpr
Definition: at32f403_gpio.h:417
gpio_type::iomc3
__IO uint32_t iomc3
Definition: at32f403_gpio.h:245
gpio_type::iocb0
__IO uint32_t iocb0
Definition: at32f403_gpio.h:365
gpio_type::iosb8
__IO uint32_t iosb8
Definition: at32f403_gpio.h:357
gpio_type::iosb11
__IO uint32_t iosb11
Definition: at32f403_gpio.h:360
gpio_type::iomc4
__IO uint32_t iomc4
Definition: at32f403_gpio.h:247
gpio_type::iomc10
__IO uint32_t iomc10
Definition: at32f403_gpio.h:270
gpio_type::iomc1
__IO uint32_t iomc1
Definition: at32f403_gpio.h:241
gpio_type::iofc4
__IO uint32_t iofc4
Definition: at32f403_gpio.h:248
gpio_type::wpen10
__IO uint32_t wpen10
Definition: at32f403_gpio.h:430
gpio_type::iosb10
__IO uint32_t iosb10
Definition: at32f403_gpio.h:359
gpio_type::iocb11
__IO uint32_t iocb11
Definition: at32f403_gpio.h:376
iomux_type
type define iomux register all
Definition: at32f403_gpio.h:447
iomux_type::tmr10_mux
__IO uint32_t tmr10_mux
Definition: at32f403_gpio.h:574
iomux_type::exint1
__IO uint32_t exint1
Definition: at32f403_gpio.h:503
iomux_type::remap
__IO uint32_t remap
Definition: at32f403_gpio.h:468
iomux_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_gpio.h:584
iomux_type::tmr4_mux
__IO uint32_t tmr4_mux
Definition: at32f403_gpio.h:479
iomux_type::usart2_mux
__IO uint32_t usart2_mux
Definition: at32f403_gpio.h:474
iomux_type::i2c3_mux
__IO uint32_t i2c3_mux
Definition: at32f403_gpio.h:581
iomux_type::exint9
__IO uint32_t exint9
Definition: at32f403_gpio.h:535
iomux_type::remap2
__IO uint32_t remap2
Definition: at32f403_gpio.h:568
iomux_type::xmc_nadv_mux
__IO uint32_t xmc_nadv_mux
Definition: at32f403_gpio.h:578
iomux_type::exint15
__IO uint32_t exint15
Definition: at32f403_gpio.h:553
iomux_type::tmr14_mux
__IO uint32_t tmr14_mux
Definition: at32f403_gpio.h:577
iomux_type::exint13
__IO uint32_t exint13
Definition: at32f403_gpio.h:551
iomux_type::swjtag_mux
__IO uint32_t swjtag_mux
Definition: at32f403_gpio.h:488
iomux_type::tmr13_mux
__IO uint32_t tmr13_mux
Definition: at32f403_gpio.h:576
iomux_type::ext_spim_en_mux
__IO uint32_t ext_spim_en_mux
Definition: at32f403_gpio.h:583
iomux_type::exint10
__IO uint32_t exint10
Definition: at32f403_gpio.h:536
iomux_type::tmr3_mux
__IO uint32_t tmr3_mux
Definition: at32f403_gpio.h:478
iomux_type::adc2_extrgpre_mux
__IO uint32_t adc2_extrgpre_mux
Definition: at32f403_gpio.h:485
iomux_type::tmr11_mux
__IO uint32_t tmr11_mux
Definition: at32f403_gpio.h:575
iomux_type::reserved1
__IO uint32_t reserved1
iomux reserved1 register, offset:0x18
Definition: at32f403_gpio.h:459
iomux_type::i2c1_mux
__IO uint32_t i2c1_mux
Definition: at32f403_gpio.h:472
iomux_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_gpio.h:489
iomux_type::exint12
__IO uint32_t exint12
Definition: at32f403_gpio.h:550
iomux_type::pd01_mux
__IO uint32_t pd01_mux
Definition: at32f403_gpio.h:481
iomux_type::exint11
__IO uint32_t exint11
Definition: at32f403_gpio.h:537
iomux_type::adc1_extrgpre_mux
__IO uint32_t adc1_extrgpre_mux
Definition: at32f403_gpio.h:483
iomux_type::exint7
__IO uint32_t exint7
Definition: at32f403_gpio.h:521
iomux_type::exint6
__IO uint32_t exint6
Definition: at32f403_gpio.h:520
iomux_type::evoen
__IO uint32_t evoen
Definition: at32f403_gpio.h:458
iomux_type::adc2_extrgord_mux
__IO uint32_t adc2_extrgord_mux
Definition: at32f403_gpio.h:486
iomux_type::exint3
__IO uint32_t exint3
Definition: at32f403_gpio.h:505
iomux_type::spi4_mux
__IO uint32_t spi4_mux
Definition: at32f403_gpio.h:580
iomux_type::tmr1_mux
__IO uint32_t tmr1_mux
Definition: at32f403_gpio.h:476
iomux_type::selpin
__IO uint32_t selpin
Definition: at32f403_gpio.h:456
iomux_type::tmr2_mux
__IO uint32_t tmr2_mux
Definition: at32f403_gpio.h:477
iomux_type::exint4
__IO uint32_t exint4
Definition: at32f403_gpio.h:518
iomux_type::spi1_mux_h
__IO uint32_t spi1_mux_h
Definition: at32f403_gpio.h:490
iomux_type::exint8
__IO uint32_t exint8
Definition: at32f403_gpio.h:534
iomux_type::exintc4
__IO uint32_t exintc4
Definition: at32f403_gpio.h:547
iomux_type::exint2
__IO uint32_t exint2
Definition: at32f403_gpio.h:504
iomux_type::exint5
__IO uint32_t exint5
Definition: at32f403_gpio.h:519
iomux_type::selport
__IO uint32_t selport
Definition: at32f403_gpio.h:457
iomux_type::exint0
__IO uint32_t exint0
Definition: at32f403_gpio.h:502
iomux_type::exint14
__IO uint32_t exint14
Definition: at32f403_gpio.h:552
iomux_type::spi1_mux_l
__IO uint32_t spi1_mux_l
Definition: at32f403_gpio.h:471
iomux_type::usart1_mux
__IO uint32_t usart1_mux
Definition: at32f403_gpio.h:473
iomux_type::exintc3
__IO uint32_t exintc3
Definition: at32f403_gpio.h:531
iomux_type::can_mux
__IO uint32_t can_mux
Definition: at32f403_gpio.h:480
iomux_type::usart3_mux
__IO uint32_t usart3_mux
Definition: at32f403_gpio.h:475
iomux_type::tmr5ch4_mux
__IO uint32_t tmr5ch4_mux
Definition: at32f403_gpio.h:482
iomux_type::evtout
__IO uint32_t evtout
Definition: at32f403_gpio.h:453
iomux_type::adc1_extrgord_mux
__IO uint32_t adc1_extrgord_mux
Definition: at32f403_gpio.h:484
iomux_type::tmr9_mux
__IO uint32_t tmr9_mux
Definition: at32f403_gpio.h:573
iomux_type::exintc2
__IO uint32_t exintc2
Definition: at32f403_gpio.h:515
iomux_type::sdio2_mux
__IO uint32_t sdio2_mux
Definition: at32f403_gpio.h:582
iomux_type::tmr15_mux
__IO uint32_t tmr15_mux
Definition: at32f403_gpio.h:571
iomux_type::exintc1
__IO uint32_t exintc1
Definition: at32f403_gpio.h:499


AT32F403 Firmwary Library: at32f403_i2c.c Source File

  • libraries
  • drivers
  • src
at32f403_i2c.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef I2C_MODULE_ENABLED
37
49void i2c_reset(i2c_type *i2c_x)
50{
51 if(i2c_x == I2C1)
52 {
53 crm_periph_reset(CRM_I2C1_PERIPH_RESET, TRUE);
54 crm_periph_reset(CRM_I2C1_PERIPH_RESET, FALSE);
55 }
56 else if(i2c_x == I2C2)
57 {
58 crm_periph_reset(CRM_I2C2_PERIPH_RESET, TRUE);
59 crm_periph_reset(CRM_I2C2_PERIPH_RESET, FALSE);
60 }
61 else if(i2c_x == I2C3)
62 {
63 crm_periph_reset(CRM_I2C3_PERIPH_RESET, TRUE);
64 crm_periph_reset(CRM_I2C3_PERIPH_RESET, FALSE);
65 }
66}
67
76void i2c_software_reset(i2c_type *i2c_x, confirm_state new_state)
77{
78 i2c_x->ctrl1_bit.reset = new_state;
79}
80
93void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
94{
95 uint32_t apb_freq = 0;
96 uint16_t freq_mhz = 0, temp = 0;
97
98 crm_clocks_freq_type clocks;
99
100 /* disable i2c peripherals */
101 i2c_x->ctrl1_bit.i2cen = FALSE;
102
103 /* get system clock */
104 crm_clocks_freq_get(&clocks);
105
106 if((i2c_x == I2C1) || (i2c_x == I2C2))
107 {
108 apb_freq = clocks.apb1_freq;
109 }
110 else if(i2c_x == I2C3)
111 {
112 apb_freq = clocks.apb2_freq;
113 }
114
115 freq_mhz = (apb_freq / 1000000);
116
117 /* set i2c input clock frequency */
118 i2c_x->ctrl2_bit.clkfreq = freq_mhz;
119
120 /* standard mode */
121 if(speed <= 100000)
122 {
123 temp = (uint16_t)(apb_freq / (speed << 1));
124
125 if (temp < 0x04)
126 {
127 temp = 0x04;
128 }
129
130 /* set scl clock */
131 i2c_x->clkctrl_bit.speed = temp;
132
133 /* disable fast mode */
134 i2c_x->clkctrl_bit.speedmode = FALSE;
135
136 /* set the maximum rise time */
137 if((freq_mhz + 1) > 0x3F)
138 {
139 i2c_x->tmrise_bit.risetime = 0x3F;
140 }
141 else
142 {
143 i2c_x->tmrise_bit.risetime = (freq_mhz + 1);
144 }
145 }
146 /* fast mode */
147 else
148 {
149 if (duty == I2C_FSMODE_DUTY_2_1)
150 {
151 temp = (uint16_t)(apb_freq / (speed * 3));
152
153 /* the ratio of high level to low level is 1:2 */
154 i2c_x->clkctrl_bit.dutymode = I2C_FSMODE_DUTY_2_1;
155 }
156 else
157 {
158 temp = (uint16_t)(apb_freq / (speed * 25));
159
160 /* the ratio of high level to low level is 9:16 */
161 i2c_x->clkctrl_bit.dutymode = I2C_FSMODE_DUTY_16_9;
162 }
163
164 if (temp == 0)
165 {
166 temp = 0x0001;
167 }
168
169 /* set scl clock*/
170 i2c_x->clkctrl_bit.speed = temp;
171
172 /* set the mode to fast mode */
173 i2c_x->clkctrl_bit.speedmode = TRUE;
174
175 /* set the maximum rise time */
176 i2c_x->tmrise_bit.risetime = (uint16_t)(((freq_mhz * (uint16_t)300) / (uint16_t)1000) + (uint16_t)1);
177 }
178}
179
192void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
193{
194 /* set address mode */
195 i2c_x->oaddr1_bit.addr1mode = mode;
196
197 /* set own address1 */
198 i2c_x->oaddr1_bit.addr1 = address;
199}
200
209void i2c_own_address2_set(i2c_type *i2c_x, uint8_t address)
210{
211 i2c_x->oaddr2_bit.addr2 = (address >> 1);
212}
213
222void i2c_own_address2_enable(i2c_type *i2c_x, confirm_state new_state)
223{
224 i2c_x->oaddr2_bit.addr2en = new_state;
225}
226
235void i2c_smbus_enable(i2c_type *i2c_x, confirm_state new_state)
236{
237 i2c_x->ctrl1_bit.permode = new_state;
238}
239
248void i2c_enable(i2c_type *i2c_x, confirm_state new_state)
249{
250 i2c_x->ctrl1_bit.i2cen = new_state;
251}
252
264void i2c_fast_mode_duty_set(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty)
265{
266 i2c_x->clkctrl_bit.dutymode = duty;
267}
268
277void i2c_clock_stretch_enable(i2c_type *i2c_x, confirm_state new_state)
278{
279 i2c_x->ctrl1_bit.stretch = !new_state;
280}
281
290void i2c_ack_enable(i2c_type *i2c_x, confirm_state new_state)
291{
292 i2c_x->ctrl1_bit.acken = new_state;
293}
294
306void i2c_master_receive_ack_set(i2c_type *i2c_x, i2c_master_ack_type pos)
307{
308 i2c_x->ctrl1_bit.mackctrl = pos;
309}
310
322void i2c_pec_position_set(i2c_type *i2c_x, i2c_pec_position_type pos)
323{
324 i2c_x->ctrl1_bit.mackctrl = pos;
325}
326
335void i2c_general_call_enable(i2c_type *i2c_x, confirm_state new_state)
336{
337 i2c_x->ctrl1_bit.gcaen = new_state;
338}
339
348void i2c_arp_mode_enable(i2c_type *i2c_x, confirm_state new_state)
349{
350 i2c_x->ctrl1_bit.arpen = new_state;
351}
352
364void i2c_smbus_mode_set(i2c_type *i2c_x, i2c_smbus_mode_set_type mode)
365{
366 i2c_x->ctrl1_bit.smbmode = mode;
367}
368
380void i2c_smbus_alert_set(i2c_type *i2c_x, i2c_smbus_alert_set_type level)
381{
382 i2c_x->ctrl1_bit.smbalert = level;
383}
384
393void i2c_pec_transmit_enable(i2c_type *i2c_x, confirm_state new_state)
394{
395 i2c_x->ctrl1_bit.pecten = new_state;
396}
397
406void i2c_pec_calculate_enable(i2c_type *i2c_x, confirm_state new_state)
407{
408 i2c_x->ctrl1_bit.pecen = new_state;
409}
410
418uint8_t i2c_pec_value_get(i2c_type *i2c_x)
419{
420 return i2c_x->sts2_bit.pecval;
421}
422
431void i2c_dma_end_transfer_set(i2c_type *i2c_x, confirm_state new_state)
432{
433 i2c_x->ctrl2_bit.dmaend = new_state;
434}
435
444void i2c_dma_enable(i2c_type *i2c_x, confirm_state new_state)
445{
446 i2c_x->ctrl2_bit.dmaen = new_state;
447}
448
462void i2c_interrupt_enable(i2c_type *i2c_x, uint16_t source, confirm_state new_state)
463{
464 if (new_state != FALSE)
465 {
466 i2c_x->ctrl2 |= source;
467 }
468 else
469 {
470 i2c_x->ctrl2 &= (uint16_t)~source;
471 }
472}
473
481void i2c_start_generate(i2c_type *i2c_x)
482{
483 i2c_x->ctrl1_bit.genstart = TRUE;
484}
485
493void i2c_stop_generate(i2c_type *i2c_x)
494{
495 i2c_x->ctrl1_bit.genstop = TRUE;
496}
497
510void i2c_7bit_address_send(i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
511{
512 if(direction == I2C_DIRECTION_TRANSMIT)
513 {
514 i2c_x->dt = address & 0xFE;
515 }
516 else
517 {
518 i2c_x->dt = address | 0x01;
519 }
520}
521
530void i2c_data_send(i2c_type *i2c_x, uint8_t data)
531{
532 i2c_x->dt = data;
533}
534
542uint8_t i2c_data_receive(i2c_type *i2c_x)
543{
544 return (uint8_t)i2c_x->dt;
545}
546
577 flag_status i2c_flag_get(i2c_type *i2c_x, uint32_t flag)
578{
579 __IO uint32_t reg = 0, value = 0;
580
581 reg = flag >> 28;
582
583 flag &= (uint32_t)0x00FFFFFF;
584
585 if(reg == 0)
586 {
587 value = i2c_x->sts1;
588 }
589 else
590 {
591 flag = (uint32_t)(flag >> 16);
592
593 value = i2c_x->sts2;
594 }
595
596 if((value & flag) != (uint32_t)RESET)
597 {
598 return SET;
599 }
600 else
601 {
602 return RESET;
603 }
604}
605
629 flag_status i2c_interrupt_flag_get(i2c_type *i2c_x, uint32_t flag)
630{
631 __IO uint32_t reg = 0, value = 0, iten = 0;
632
633 switch(flag)
634 {
635 case I2C_STARTF_FLAG:
636 case I2C_ADDR7F_FLAG:
637 case I2C_TDC_FLAG:
638 case I2C_ADDRHF_FLAG:
639 case I2C_STOPF_FLAG:
640 iten = i2c_x->ctrl2_bit.evtien;
641 break;
642 case I2C_RDBF_FLAG:
643 case I2C_TDBE_FLAG:
644 iten = i2c_x->ctrl2_bit.dataien & i2c_x->ctrl2_bit.evtien;
645 break;
646 case I2C_BUSERR_FLAG:
647 case I2C_ARLOST_FLAG:
648 case I2C_ACKFAIL_FLAG:
649 case I2C_OUF_FLAG:
650 case I2C_PECERR_FLAG:
651 case I2C_TMOUT_FLAG:
652 case I2C_ALERTF_FLAG:
653 iten = i2c_x->ctrl2_bit.errien;
654 break;
655
656 default:
657 break;
658 }
659
660 reg = flag >> 28;
661
662 flag &= (uint32_t)0x00FFFFFF;
663
664 if(reg == 0)
665 {
666 value = i2c_x->sts1;
667 }
668 else
669 {
670 flag = (uint32_t)(flag >> 16);
671
672 value = i2c_x->sts2;
673 }
674
675 if(((value & flag) != (uint32_t)RESET) && (iten))
676 {
677 return SET;
678 }
679 else
680 {
681 return RESET;
682 }
683}
684
703void i2c_flag_clear(i2c_type *i2c_x, uint32_t flag)
704{
705 i2c_x->sts1 = (uint16_t)~(flag & (uint32_t)0x0000DF00);
706
707 if(i2c_x->sts1 & I2C_ADDR7F_FLAG)
708 {
709 UNUSED(i2c_x->sts2);
710 }
711
712 if(i2c_x->sts1 & I2C_STOPF_FLAG)
713 {
714 i2c_x->ctrl1_bit.i2cen = TRUE;
715 }
716}
717
722#endif
723
UNUSED
#define UNUSED(x)
Definition: at32f403_def.h:63
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_I2C3_PERIPH_RESET
@ CRM_I2C3_PERIPH_RESET
Definition: at32f403_crm.h:205
CRM_I2C2_PERIPH_RESET
@ CRM_I2C2_PERIPH_RESET
Definition: at32f403_crm.h:202
CRM_I2C1_PERIPH_RESET
@ CRM_I2C1_PERIPH_RESET
Definition: at32f403_crm.h:201
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
i2c_fsmode_duty_cycle_type
i2c_fsmode_duty_cycle_type
i2c fast mode duty cycle
Definition: at32f403_i2c.h:145
i2c_smbus_mode_set_type
i2c_smbus_mode_set_type
i2c smbus mode set
Definition: at32f403_i2c.h:135
i2c_direction_type
i2c_direction_type
i2c address direction
Definition: at32f403_i2c.h:163
i2c_master_ack_type
i2c_master_ack_type
i2c master receiving mode acknowledge control
Definition: at32f403_i2c.h:107
i2c_address_mode_type
i2c_address_mode_type
i2c address mode
Definition: at32f403_i2c.h:154
i2c_smbus_alert_set_type
i2c_smbus_alert_set_type
i2c smbus alert pin set
Definition: at32f403_i2c.h:126
i2c_pec_position_type
i2c_pec_position_type
i2c pec position set
Definition: at32f403_i2c.h:116
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_FSMODE_DUTY_16_9
@ I2C_FSMODE_DUTY_16_9
Definition: at32f403_i2c.h:147
I2C_DIRECTION_TRANSMIT
@ I2C_DIRECTION_TRANSMIT
Definition: at32f403_i2c.h:164
i2c_pec_position_set
void i2c_pec_position_set(i2c_type *i2c_x, i2c_pec_position_type pos)
pec position set.
Definition: at32f403_i2c.c:322
i2c_pec_transmit_enable
void i2c_pec_transmit_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable pec transfer.
Definition: at32f403_i2c.c:393
i2c_arp_mode_enable
void i2c_arp_mode_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable arp mode.
Definition: at32f403_i2c.c:348
i2c_data_receive
uint8_t i2c_data_receive(i2c_type *i2c_x)
receive a byte through the i2c periph.
Definition: at32f403_i2c.c:542
i2c_reset
void i2c_reset(i2c_type *i2c_x)
reset the i2c register
Definition: at32f403_i2c.c:49
i2c_smbus_alert_set
void i2c_smbus_alert_set(i2c_type *i2c_x, i2c_smbus_alert_set_type level)
drive the smbus alert pin high or low.
Definition: at32f403_i2c.c:380
i2c_interrupt_flag_get
flag_status i2c_interrupt_flag_get(i2c_type *i2c_x, uint32_t flag)
get interrupt flag status
Definition: at32f403_i2c.c:629
i2c_smbus_enable
void i2c_smbus_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable the smbus mode
Definition: at32f403_i2c.c:235
i2c_pec_value_get
uint8_t i2c_pec_value_get(i2c_type *i2c_x)
get pec value.
Definition: at32f403_i2c.c:418
i2c_software_reset
void i2c_software_reset(i2c_type *i2c_x, confirm_state new_state)
software reset.
Definition: at32f403_i2c.c:76
i2c_general_call_enable
void i2c_general_call_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable general call.
Definition: at32f403_i2c.c:335
i2c_ack_enable
void i2c_ack_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable acknowledge.
Definition: at32f403_i2c.c:290
i2c_own_address2_set
void i2c_own_address2_set(i2c_type *i2c_x, uint8_t address)
config own address2.
Definition: at32f403_i2c.c:209
i2c_7bit_address_send
void i2c_7bit_address_send(i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
transmit the slave address.
Definition: at32f403_i2c.c:510
i2c_dma_end_transfer_set
void i2c_dma_end_transfer_set(i2c_type *i2c_x, confirm_state new_state)
enable or disable if the next dma transfer will be the last one.
Definition: at32f403_i2c.c:431
i2c_own_address2_enable
void i2c_own_address2_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable own address2.
Definition: at32f403_i2c.c:222
i2c_pec_calculate_enable
void i2c_pec_calculate_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable pec calcultetion.
Definition: at32f403_i2c.c:406
i2c_stop_generate
void i2c_stop_generate(i2c_type *i2c_x)
generate stop condition.
Definition: at32f403_i2c.c:493
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_enable
void i2c_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable i2c periph
Definition: at32f403_i2c.c:248
i2c_fast_mode_duty_set
void i2c_fast_mode_duty_set(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty)
config fast mode duty cycle
Definition: at32f403_i2c.c:264
i2c_flag_get
flag_status i2c_flag_get(i2c_type *i2c_x, uint32_t flag)
get flag status
Definition: at32f403_i2c.c:577
i2c_smbus_mode_set
void i2c_smbus_mode_set(i2c_type *i2c_x, i2c_smbus_mode_set_type mode)
config smbus host or device.
Definition: at32f403_i2c.c:364
i2c_interrupt_enable
void i2c_interrupt_enable(i2c_type *i2c_x, uint16_t source, confirm_state new_state)
enable or disable interrupt
Definition: at32f403_i2c.c:462
i2c_flag_clear
void i2c_flag_clear(i2c_type *i2c_x, uint32_t flag)
clear flag status
Definition: at32f403_i2c.c:703
i2c_dma_enable
void i2c_dma_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable dma requests.
Definition: at32f403_i2c.c:444
i2c_data_send
void i2c_data_send(i2c_type *i2c_x, uint8_t data)
send a byte through the i2c periph.
Definition: at32f403_i2c.c:530
i2c_clock_stretch_enable
void i2c_clock_stretch_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable clock stretch.
Definition: at32f403_i2c.c:277
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
i2c_master_receive_ack_set
void i2c_master_receive_ack_set(i2c_type *i2c_x, i2c_master_ack_type pos)
master receiving mode acknowledge control.
Definition: at32f403_i2c.c:306
i2c_start_generate
void i2c_start_generate(i2c_type *i2c_x)
generate start condition.
Definition: at32f403_i2c.c:481
I2C_STARTF_FLAG
#define I2C_STARTF_FLAG
Definition: at32f403_i2c.h:50
I2C_TMOUT_FLAG
#define I2C_TMOUT_FLAG
Definition: at32f403_i2c.h:62
I2C_ADDR7F_FLAG
#define I2C_ADDR7F_FLAG
Definition: at32f403_i2c.h:51
I2C_ALERTF_FLAG
#define I2C_ALERTF_FLAG
Definition: at32f403_i2c.h:63
I2C_BUSERR_FLAG
#define I2C_BUSERR_FLAG
Definition: at32f403_i2c.h:57
I2C_ACKFAIL_FLAG
#define I2C_ACKFAIL_FLAG
Definition: at32f403_i2c.h:59
I2C_OUF_FLAG
#define I2C_OUF_FLAG
Definition: at32f403_i2c.h:60
I2C_ARLOST_FLAG
#define I2C_ARLOST_FLAG
Definition: at32f403_i2c.h:58
I2C_STOPF_FLAG
#define I2C_STOPF_FLAG
Definition: at32f403_i2c.h:54
I2C_TDC_FLAG
#define I2C_TDC_FLAG
Definition: at32f403_i2c.h:52
I2C_ADDRHF_FLAG
#define I2C_ADDRHF_FLAG
Definition: at32f403_i2c.h:53
I2C_TDBE_FLAG
#define I2C_TDBE_FLAG
Definition: at32f403_i2c.h:56
I2C_RDBF_FLAG
#define I2C_RDBF_FLAG
Definition: at32f403_i2c.h:55
I2C_PECERR_FLAG
#define I2C_PECERR_FLAG
Definition: at32f403_i2c.h:61
I2C3
#define I2C3
Definition: at32f403_i2c.h:347
I2C1
#define I2C1
Definition: at32f403_i2c.h:345
I2C2
#define I2C2
Definition: at32f403_i2c.h:346
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::apb1_freq
uint32_t apb1_freq
Definition: at32f403_crm.h:454
crm_clocks_freq_type::apb2_freq
uint32_t apb2_freq
Definition: at32f403_crm.h:453
i2c_type
type define i2c register all
Definition: at32f403_i2c.h:172
i2c_type::smbalert
__IO uint32_t smbalert
Definition: at32f403_i2c.h:194
i2c_type::dmaend
__IO uint32_t dmaend
Definition: at32f403_i2c.h:214
i2c_type::genstop
__IO uint32_t genstop
Definition: at32f403_i2c.h:190
i2c_type::addr2en
__IO uint32_t addr2en
Definition: at32f403_i2c.h:242
i2c_type::dmaen
__IO uint32_t dmaen
Definition: at32f403_i2c.h:213
i2c_type::gcaen
__IO uint32_t gcaen
Definition: at32f403_i2c.h:187
i2c_type::oaddr2_bit
struct i2c_type::@489::@504 oaddr2_bit
i2c_type::clkfreq
__IO uint32_t clkfreq
Definition: at32f403_i2c.h:209
i2c_type::addr2
__IO uint32_t addr2
Definition: at32f403_i2c.h:243
i2c_type::sts1
__IO uint32_t sts1
Definition: at32f403_i2c.h:266
i2c_type::risetime
__IO uint32_t risetime
Definition: at32f403_i2c.h:334
i2c_type::permode
__IO uint32_t permode
Definition: at32f403_i2c.h:182
i2c_type::genstart
__IO uint32_t genstart
Definition: at32f403_i2c.h:189
i2c_type::speedmode
__IO uint32_t speedmode
Definition: at32f403_i2c.h:321
i2c_type::pecten
__IO uint32_t pecten
Definition: at32f403_i2c.h:193
i2c_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_i2c.h:206
i2c_type::speed
__IO uint32_t speed
Definition: at32f403_i2c.h:318
i2c_type::ctrl2_bit
struct i2c_type::@485::@502 ctrl2_bit
i2c_type::clkctrl_bit
struct i2c_type::@497::@508 clkctrl_bit
i2c_type::ctrl1_bit
struct i2c_type::@483::@501 ctrl1_bit
i2c_type::stretch
__IO uint32_t stretch
Definition: at32f403_i2c.h:188
i2c_type::dutymode
__IO uint32_t dutymode
Definition: at32f403_i2c.h:320
i2c_type::sts2_bit
struct i2c_type::@495::@507 sts2_bit
i2c_type::arpen
__IO uint32_t arpen
Definition: at32f403_i2c.h:185
i2c_type::dataien
__IO uint32_t dataien
Definition: at32f403_i2c.h:212
i2c_type::tmrise_bit
struct i2c_type::@499::@509 tmrise_bit
i2c_type::addr1mode
__IO uint32_t addr1mode
Definition: at32f403_i2c.h:229
i2c_type::reset
__IO uint32_t reset
Definition: at32f403_i2c.h:196
i2c_type::pecval
__IO uint32_t pecval
Definition: at32f403_i2c.h:305
i2c_type::dt
__IO uint32_t dt
Definition: at32f403_i2c.h:253
i2c_type::acken
__IO uint32_t acken
Definition: at32f403_i2c.h:191
i2c_type::i2cen
__IO uint32_t i2cen
Definition: at32f403_i2c.h:181
i2c_type::errien
__IO uint32_t errien
Definition: at32f403_i2c.h:210
i2c_type::addr1
__IO uint32_t addr1
Definition: at32f403_i2c.h:227
i2c_type::sts2
__IO uint32_t sts2
Definition: at32f403_i2c.h:294
i2c_type::evtien
__IO uint32_t evtien
Definition: at32f403_i2c.h:211
i2c_type::mackctrl
__IO uint32_t mackctrl
Definition: at32f403_i2c.h:192
i2c_type::pecen
__IO uint32_t pecen
Definition: at32f403_i2c.h:186
i2c_type::smbmode
__IO uint32_t smbmode
Definition: at32f403_i2c.h:184
i2c_type::oaddr1_bit
struct i2c_type::@487::@503 oaddr1_bit
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_i2c.h Source File

  • libraries
  • drivers
  • inc
at32f403_i2c.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_I2C_H
27#define __AT32F403_I2C_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define I2C_STARTF_FLAG ((uint32_t)0x00000001)
51#define I2C_ADDR7F_FLAG ((uint32_t)0x00000002)
52#define I2C_TDC_FLAG ((uint32_t)0x00000004)
53#define I2C_ADDRHF_FLAG ((uint32_t)0x00000008)
54#define I2C_STOPF_FLAG ((uint32_t)0x00000010)
55#define I2C_RDBF_FLAG ((uint32_t)0x00000040)
56#define I2C_TDBE_FLAG ((uint32_t)0x00000080)
57#define I2C_BUSERR_FLAG ((uint32_t)0x00000100)
58#define I2C_ARLOST_FLAG ((uint32_t)0x00000200)
59#define I2C_ACKFAIL_FLAG ((uint32_t)0x00000400)
60#define I2C_OUF_FLAG ((uint32_t)0x00000800)
61#define I2C_PECERR_FLAG ((uint32_t)0x00001000)
62#define I2C_TMOUT_FLAG ((uint32_t)0x00004000)
63#define I2C_ALERTF_FLAG ((uint32_t)0x00008000)
74#define I2C_TRMODE_FLAG ((uint32_t)0x10010000)
75#define I2C_BUSYF_FLAG ((uint32_t)0x10020000)
76#define I2C_DIRF_FLAG ((uint32_t)0x10040000)
77#define I2C_GCADDRF_FLAG ((uint32_t)0x10100000)
78#define I2C_DEVADDRF_FLAG ((uint32_t)0x10200000)
79#define I2C_HOSTADDRF_FLAG ((uint32_t)0x10400000)
80#define I2C_ADDR2_FLAG ((uint32_t)0x10800000)
91#define I2C_DATA_INT ((uint16_t)0x0400)
92#define I2C_EVT_INT ((uint16_t)0x0200)
93#define I2C_ERR_INT ((uint16_t)0x0100)
106typedef enum
107{
108 I2C_MASTER_ACK_CURRENT = 0x00,
109 I2C_MASTER_ACK_NEXT = 0x01
110} i2c_master_ack_type;
111
115typedef enum
116{
117 I2C_PEC_POSITION_CURRENT = 0x00,
118 I2C_PEC_POSITION_NEXT = 0x01
119} i2c_pec_position_type;
120
121
125typedef enum
126{
127 I2C_SMBUS_ALERT_HIGH = 0x00,
128 I2C_SMBUS_ALERT_LOW = 0x01
129} i2c_smbus_alert_set_type;
130
134typedef enum
135{
136 I2C_SMBUS_MODE_DEVICE = 0x00,
137 I2C_SMBUS_MODE_HOST = 0x01
138} i2c_smbus_mode_set_type;
139
140
144typedef enum
145{
146 I2C_FSMODE_DUTY_2_1 = 0x00,
147 I2C_FSMODE_DUTY_16_9 = 0x01
148} i2c_fsmode_duty_cycle_type;
149
153typedef enum
154{
155 I2C_ADDRESS_MODE_7BIT = 0x00,
156 I2C_ADDRESS_MODE_10BIT = 0x01
157} i2c_address_mode_type;
158
162typedef enum
163{
164 I2C_DIRECTION_TRANSMIT = 0x00,
165 I2C_DIRECTION_RECEIVE = 0x01
166} i2c_direction_type;
167
171typedef struct
172{
176 union
177 {
178 __IO uint32_t ctrl1;
179 struct
180 {
181 __IO uint32_t i2cen : 1; /* [0] */
182 __IO uint32_t permode : 1; /* [1] */
183 __IO uint32_t reserved1 : 1; /* [2] */
184 __IO uint32_t smbmode : 1; /* [3] */
185 __IO uint32_t arpen : 1; /* [4] */
186 __IO uint32_t pecen : 1; /* [5] */
187 __IO uint32_t gcaen : 1; /* [6] */
188 __IO uint32_t stretch : 1; /* [7] */
189 __IO uint32_t genstart : 1; /* [8] */
190 __IO uint32_t genstop : 1; /* [9] */
191 __IO uint32_t acken : 1; /* [10] */
192 __IO uint32_t mackctrl : 1; /* [11] */
193 __IO uint32_t pecten : 1; /* [12] */
194 __IO uint32_t smbalert : 1; /* [13] */
195 __IO uint32_t reserved2 : 1; /* [14] */
196 __IO uint32_t reset : 1; /* [15] */
197 __IO uint32_t reserved3 : 16;/* [31:16] */
198 } ctrl1_bit;
199 };
200
204 union
205 {
206 __IO uint32_t ctrl2;
207 struct
208 {
209 __IO uint32_t clkfreq : 8; /* [7:0] */
210 __IO uint32_t errien : 1; /* [8] */
211 __IO uint32_t evtien : 1; /* [9] */
212 __IO uint32_t dataien : 1; /* [10] */
213 __IO uint32_t dmaen : 1; /* [11] */
214 __IO uint32_t dmaend : 1; /* [12] */
215 __IO uint32_t reserved1 : 19;/* [31:13] */
216 } ctrl2_bit;
217 };
218
222 union
223 {
224 __IO uint32_t oaddr1;
225 struct
226 {
227 __IO uint32_t addr1 : 10;/* [9:0] */
228 __IO uint32_t reserved1 : 5; /* [14:10] */
229 __IO uint32_t addr1mode : 1; /* [15] */
230 __IO uint32_t reserved2 : 16;/* [31:16] */
231 } oaddr1_bit;
232 };
233
237 union
238 {
239 __IO uint32_t oaddr2;
240 struct
241 {
242 __IO uint32_t addr2en : 1; /* [0] */
243 __IO uint32_t addr2 : 7; /* [7:1] */
244 __IO uint32_t reserved1 : 24;/* [31:8] */
245 } oaddr2_bit;
246 };
247
251 union
252 {
253 __IO uint32_t dt;
254 struct
255 {
256 __IO uint32_t dt : 8; /* [7:0] */
257 __IO uint32_t reserved1 : 24;/* [31:8] */
258 } dt_bit;
259 };
260
264 union
265 {
266 __IO uint32_t sts1;
267 struct
268 {
269 __IO uint32_t startf : 1; /* [0] */
270 __IO uint32_t addr7f : 1; /* [1] */
271 __IO uint32_t tdc : 1; /* [2] */
272 __IO uint32_t addrhf : 1; /* [3] */
273 __IO uint32_t stopf : 1; /* [4] */
274 __IO uint32_t reserved1 : 1; /* [5] */
275 __IO uint32_t rdbf : 1; /* [6] */
276 __IO uint32_t tdbe : 1; /* [7] */
277 __IO uint32_t buserr : 1; /* [8] */
278 __IO uint32_t arlost : 1; /* [9] */
279 __IO uint32_t ackfail : 1; /* [10] */
280 __IO uint32_t ouf : 1; /* [11] */
281 __IO uint32_t pecerr : 1; /* [12] */
282 __IO uint32_t reserved2 : 1; /* [13] */
283 __IO uint32_t tmout : 1; /* [14] */
284 __IO uint32_t alertf : 1; /* [15] */
285 __IO uint32_t reserved3 : 16; /* [31:16] */
286 } sts1_bit;
287 };
288
292 union
293 {
294 __IO uint32_t sts2;
295 struct
296 {
297 __IO uint32_t trmode : 1; /* [0] */
298 __IO uint32_t busyf : 1; /* [1] */
299 __IO uint32_t dirf : 1; /* [2] */
300 __IO uint32_t reserved1 : 1; /* [3] */
301 __IO uint32_t gcaddrf : 1; /* [4] */
302 __IO uint32_t devaddrf : 1; /* [5] */
303 __IO uint32_t hostaddrf : 1; /* [6] */
304 __IO uint32_t addr2 : 1; /* [7] */
305 __IO uint32_t pecval : 8; /* [15:8] */
306 __IO uint32_t reserved2 : 16;/* [31:16] */
307 } sts2_bit;
308 };
309
313 union
314 {
315 __IO uint32_t clkctrl;
316 struct
317 {
318 __IO uint32_t speed : 12;/* [11:0] */
319 __IO uint32_t reserved1 : 2; /* [13:12] */
320 __IO uint32_t dutymode : 1; /* [14] */
321 __IO uint32_t speedmode : 1; /* [15] */
322 __IO uint32_t reserved2 : 16;/* [31:16] */
323 } clkctrl_bit;
324 };
325
329 union
330 {
331 __IO uint32_t tmrise;
332 struct
333 {
334 __IO uint32_t risetime : 6; /* [5:0] */
335 __IO uint32_t reserved1 : 26;/* [31:6] */
336 } tmrise_bit;
337 };
338
339} i2c_type;
340
345#define I2C1 ((i2c_type *) I2C1_BASE)
346#define I2C2 ((i2c_type *) I2C2_BASE)
347#define I2C3 ((i2c_type *) I2C3_BASE)
348
353void i2c_reset(i2c_type *i2c_x);
354void i2c_software_reset(i2c_type *i2c_x, confirm_state new_state);
355void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed);
356void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address);
357void i2c_own_address2_set(i2c_type *i2c_x, uint8_t address);
358void i2c_own_address2_enable(i2c_type *i2c_x, confirm_state new_state);
359void i2c_smbus_enable(i2c_type *i2c_x, confirm_state new_state);
360void i2c_enable(i2c_type *i2c_x, confirm_state new_state);
361void i2c_fast_mode_duty_set(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty);
362void i2c_clock_stretch_enable(i2c_type *i2c_x, confirm_state new_state);
363void i2c_ack_enable(i2c_type *i2c_x, confirm_state new_state);
364void i2c_master_receive_ack_set(i2c_type *i2c_x, i2c_master_ack_type pos);
365void i2c_pec_position_set(i2c_type *i2c_x, i2c_pec_position_type pos);
366void i2c_general_call_enable(i2c_type *i2c_x, confirm_state new_state);
367void i2c_arp_mode_enable(i2c_type *i2c_x, confirm_state new_state);
368void i2c_smbus_mode_set(i2c_type *i2c_x, i2c_smbus_mode_set_type mode);
369void i2c_smbus_alert_set(i2c_type *i2c_x, i2c_smbus_alert_set_type level);
370void i2c_pec_transmit_enable(i2c_type *i2c_x, confirm_state new_state);
371void i2c_pec_calculate_enable(i2c_type *i2c_x, confirm_state new_state);
372uint8_t i2c_pec_value_get(i2c_type *i2c_x);
373void i2c_dma_end_transfer_set(i2c_type *i2c_x, confirm_state new_state);
374void i2c_dma_enable(i2c_type *i2c_x, confirm_state new_state);
375void i2c_interrupt_enable(i2c_type *i2c_x, uint16_t source, confirm_state new_state);
376void i2c_start_generate(i2c_type *i2c_x);
377void i2c_stop_generate(i2c_type *i2c_x);
378void i2c_7bit_address_send(i2c_type *i2c_x, uint8_t address, i2c_direction_type direction);
379void i2c_data_send(i2c_type *i2c_x, uint8_t data);
380uint8_t i2c_data_receive(i2c_type *i2c_x);
381 flag_status i2c_flag_get(i2c_type *i2c_x, uint32_t flag);
382 flag_status i2c_interrupt_flag_get(i2c_type *i2c_x, uint32_t flag);
383void i2c_flag_clear(i2c_type *i2c_x, uint32_t flag);
384
397#ifdef __cplusplus
398}
399#endif
400
401#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
i2c_pec_position_set
void i2c_pec_position_set(i2c_type *i2c_x, i2c_pec_position_type pos)
pec position set.
Definition: at32f403_i2c.c:322
i2c_pec_transmit_enable
void i2c_pec_transmit_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable pec transfer.
Definition: at32f403_i2c.c:393
i2c_arp_mode_enable
void i2c_arp_mode_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable arp mode.
Definition: at32f403_i2c.c:348
i2c_data_receive
uint8_t i2c_data_receive(i2c_type *i2c_x)
receive a byte through the i2c periph.
Definition: at32f403_i2c.c:542
i2c_reset
void i2c_reset(i2c_type *i2c_x)
reset the i2c register
Definition: at32f403_i2c.c:49
i2c_smbus_alert_set
void i2c_smbus_alert_set(i2c_type *i2c_x, i2c_smbus_alert_set_type level)
drive the smbus alert pin high or low.
Definition: at32f403_i2c.c:380
i2c_interrupt_flag_get
flag_status i2c_interrupt_flag_get(i2c_type *i2c_x, uint32_t flag)
get interrupt flag status
Definition: at32f403_i2c.c:629
i2c_smbus_enable
void i2c_smbus_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable the smbus mode
Definition: at32f403_i2c.c:235
i2c_pec_value_get
uint8_t i2c_pec_value_get(i2c_type *i2c_x)
get pec value.
Definition: at32f403_i2c.c:418
i2c_software_reset
void i2c_software_reset(i2c_type *i2c_x, confirm_state new_state)
software reset.
Definition: at32f403_i2c.c:76
i2c_general_call_enable
void i2c_general_call_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable general call.
Definition: at32f403_i2c.c:335
i2c_ack_enable
void i2c_ack_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable acknowledge.
Definition: at32f403_i2c.c:290
i2c_own_address2_set
void i2c_own_address2_set(i2c_type *i2c_x, uint8_t address)
config own address2.
Definition: at32f403_i2c.c:209
i2c_7bit_address_send
void i2c_7bit_address_send(i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
transmit the slave address.
Definition: at32f403_i2c.c:510
i2c_dma_end_transfer_set
void i2c_dma_end_transfer_set(i2c_type *i2c_x, confirm_state new_state)
enable or disable if the next dma transfer will be the last one.
Definition: at32f403_i2c.c:431
i2c_own_address2_enable
void i2c_own_address2_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable own address2.
Definition: at32f403_i2c.c:222
i2c_pec_calculate_enable
void i2c_pec_calculate_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable pec calcultetion.
Definition: at32f403_i2c.c:406
i2c_stop_generate
void i2c_stop_generate(i2c_type *i2c_x)
generate stop condition.
Definition: at32f403_i2c.c:493
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_enable
void i2c_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable i2c periph
Definition: at32f403_i2c.c:248
i2c_fast_mode_duty_set
void i2c_fast_mode_duty_set(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty)
config fast mode duty cycle
Definition: at32f403_i2c.c:264
i2c_flag_get
flag_status i2c_flag_get(i2c_type *i2c_x, uint32_t flag)
get flag status
Definition: at32f403_i2c.c:577
i2c_smbus_mode_set
void i2c_smbus_mode_set(i2c_type *i2c_x, i2c_smbus_mode_set_type mode)
config smbus host or device.
Definition: at32f403_i2c.c:364
i2c_interrupt_enable
void i2c_interrupt_enable(i2c_type *i2c_x, uint16_t source, confirm_state new_state)
enable or disable interrupt
Definition: at32f403_i2c.c:462
i2c_flag_clear
void i2c_flag_clear(i2c_type *i2c_x, uint32_t flag)
clear flag status
Definition: at32f403_i2c.c:703
i2c_dma_enable
void i2c_dma_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable dma requests.
Definition: at32f403_i2c.c:444
i2c_data_send
void i2c_data_send(i2c_type *i2c_x, uint8_t data)
send a byte through the i2c periph.
Definition: at32f403_i2c.c:530
i2c_clock_stretch_enable
void i2c_clock_stretch_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable clock stretch.
Definition: at32f403_i2c.c:277
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
i2c_master_receive_ack_set
void i2c_master_receive_ack_set(i2c_type *i2c_x, i2c_master_ack_type pos)
master receiving mode acknowledge control.
Definition: at32f403_i2c.c:306
i2c_start_generate
void i2c_start_generate(i2c_type *i2c_x)
generate start condition.
Definition: at32f403_i2c.c:481
i2c_fsmode_duty_cycle_type
i2c_fsmode_duty_cycle_type
i2c fast mode duty cycle
Definition: at32f403_i2c.h:145
i2c_smbus_mode_set_type
i2c_smbus_mode_set_type
i2c smbus mode set
Definition: at32f403_i2c.h:135
i2c_direction_type
i2c_direction_type
i2c address direction
Definition: at32f403_i2c.h:163
i2c_master_ack_type
i2c_master_ack_type
i2c master receiving mode acknowledge control
Definition: at32f403_i2c.h:107
i2c_address_mode_type
i2c_address_mode_type
i2c address mode
Definition: at32f403_i2c.h:154
i2c_smbus_alert_set_type
i2c_smbus_alert_set_type
i2c smbus alert pin set
Definition: at32f403_i2c.h:126
i2c_pec_position_type
i2c_pec_position_type
i2c pec position set
Definition: at32f403_i2c.h:116
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_FSMODE_DUTY_16_9
@ I2C_FSMODE_DUTY_16_9
Definition: at32f403_i2c.h:147
I2C_SMBUS_MODE_HOST
@ I2C_SMBUS_MODE_HOST
Definition: at32f403_i2c.h:137
I2C_SMBUS_MODE_DEVICE
@ I2C_SMBUS_MODE_DEVICE
Definition: at32f403_i2c.h:136
I2C_DIRECTION_RECEIVE
@ I2C_DIRECTION_RECEIVE
Definition: at32f403_i2c.h:165
I2C_DIRECTION_TRANSMIT
@ I2C_DIRECTION_TRANSMIT
Definition: at32f403_i2c.h:164
I2C_MASTER_ACK_CURRENT
@ I2C_MASTER_ACK_CURRENT
Definition: at32f403_i2c.h:108
I2C_MASTER_ACK_NEXT
@ I2C_MASTER_ACK_NEXT
Definition: at32f403_i2c.h:109
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
I2C_ADDRESS_MODE_10BIT
@ I2C_ADDRESS_MODE_10BIT
Definition: at32f403_i2c.h:156
I2C_SMBUS_ALERT_HIGH
@ I2C_SMBUS_ALERT_HIGH
Definition: at32f403_i2c.h:127
I2C_SMBUS_ALERT_LOW
@ I2C_SMBUS_ALERT_LOW
Definition: at32f403_i2c.h:128
I2C_PEC_POSITION_NEXT
@ I2C_PEC_POSITION_NEXT
Definition: at32f403_i2c.h:118
I2C_PEC_POSITION_CURRENT
@ I2C_PEC_POSITION_CURRENT
Definition: at32f403_i2c.h:117
i2c_type
type define i2c register all
Definition: at32f403_i2c.h:172
i2c_type::smbalert
__IO uint32_t smbalert
Definition: at32f403_i2c.h:194
i2c_type::dmaend
__IO uint32_t dmaend
Definition: at32f403_i2c.h:214
i2c_type::genstop
__IO uint32_t genstop
Definition: at32f403_i2c.h:190
i2c_type::tmrise
__IO uint32_t tmrise
Definition: at32f403_i2c.h:331
i2c_type::tdc
__IO uint32_t tdc
Definition: at32f403_i2c.h:271
i2c_type::addr2en
__IO uint32_t addr2en
Definition: at32f403_i2c.h:242
i2c_type::pecerr
__IO uint32_t pecerr
Definition: at32f403_i2c.h:281
i2c_type::dmaen
__IO uint32_t dmaen
Definition: at32f403_i2c.h:213
i2c_type::gcaen
__IO uint32_t gcaen
Definition: at32f403_i2c.h:187
i2c_type::clkfreq
__IO uint32_t clkfreq
Definition: at32f403_i2c.h:209
i2c_type::addr2
__IO uint32_t addr2
Definition: at32f403_i2c.h:243
i2c_type::buserr
__IO uint32_t buserr
Definition: at32f403_i2c.h:277
i2c_type::tmout
__IO uint32_t tmout
Definition: at32f403_i2c.h:283
i2c_type::stopf
__IO uint32_t stopf
Definition: at32f403_i2c.h:273
i2c_type::sts1
__IO uint32_t sts1
Definition: at32f403_i2c.h:266
i2c_type::risetime
__IO uint32_t risetime
Definition: at32f403_i2c.h:334
i2c_type::hostaddrf
__IO uint32_t hostaddrf
Definition: at32f403_i2c.h:303
i2c_type::dirf
__IO uint32_t dirf
Definition: at32f403_i2c.h:299
i2c_type::permode
__IO uint32_t permode
Definition: at32f403_i2c.h:182
i2c_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_i2c.h:183
i2c_type::genstart
__IO uint32_t genstart
Definition: at32f403_i2c.h:189
i2c_type::speedmode
__IO uint32_t speedmode
Definition: at32f403_i2c.h:321
i2c_type::pecten
__IO uint32_t pecten
Definition: at32f403_i2c.h:193
i2c_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_i2c.h:206
i2c_type::speed
__IO uint32_t speed
Definition: at32f403_i2c.h:318
i2c_type::trmode
__IO uint32_t trmode
Definition: at32f403_i2c.h:297
i2c_type::ouf
__IO uint32_t ouf
Definition: at32f403_i2c.h:280
i2c_type::arlost
__IO uint32_t arlost
Definition: at32f403_i2c.h:278
i2c_type::stretch
__IO uint32_t stretch
Definition: at32f403_i2c.h:188
i2c_type::dutymode
__IO uint32_t dutymode
Definition: at32f403_i2c.h:320
i2c_type::arpen
__IO uint32_t arpen
Definition: at32f403_i2c.h:185
i2c_type::dataien
__IO uint32_t dataien
Definition: at32f403_i2c.h:212
i2c_type::startf
__IO uint32_t startf
Definition: at32f403_i2c.h:269
i2c_type::addr1mode
__IO uint32_t addr1mode
Definition: at32f403_i2c.h:229
i2c_type::tdbe
__IO uint32_t tdbe
Definition: at32f403_i2c.h:276
i2c_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_i2c.h:195
i2c_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_i2c.h:197
i2c_type::reset
__IO uint32_t reset
Definition: at32f403_i2c.h:196
i2c_type::pecval
__IO uint32_t pecval
Definition: at32f403_i2c.h:305
i2c_type::addrhf
__IO uint32_t addrhf
Definition: at32f403_i2c.h:272
i2c_type::addr7f
__IO uint32_t addr7f
Definition: at32f403_i2c.h:270
i2c_type::dt
__IO uint32_t dt
Definition: at32f403_i2c.h:253
i2c_type::ctrl1
__IO uint32_t ctrl1
Definition: at32f403_i2c.h:178
i2c_type::ackfail
__IO uint32_t ackfail
Definition: at32f403_i2c.h:279
i2c_type::acken
__IO uint32_t acken
Definition: at32f403_i2c.h:191
i2c_type::i2cen
__IO uint32_t i2cen
Definition: at32f403_i2c.h:181
i2c_type::rdbf
__IO uint32_t rdbf
Definition: at32f403_i2c.h:275
i2c_type::busyf
__IO uint32_t busyf
Definition: at32f403_i2c.h:298
i2c_type::oaddr1
__IO uint32_t oaddr1
Definition: at32f403_i2c.h:224
i2c_type::errien
__IO uint32_t errien
Definition: at32f403_i2c.h:210
i2c_type::addr1
__IO uint32_t addr1
Definition: at32f403_i2c.h:227
i2c_type::sts2
__IO uint32_t sts2
Definition: at32f403_i2c.h:294
i2c_type::evtien
__IO uint32_t evtien
Definition: at32f403_i2c.h:211
i2c_type::clkctrl
__IO uint32_t clkctrl
Definition: at32f403_i2c.h:315
i2c_type::mackctrl
__IO uint32_t mackctrl
Definition: at32f403_i2c.h:192
i2c_type::oaddr2
__IO uint32_t oaddr2
Definition: at32f403_i2c.h:239
i2c_type::pecen
__IO uint32_t pecen
Definition: at32f403_i2c.h:186
i2c_type::gcaddrf
__IO uint32_t gcaddrf
Definition: at32f403_i2c.h:301
i2c_type::smbmode
__IO uint32_t smbmode
Definition: at32f403_i2c.h:184
i2c_type::devaddrf
__IO uint32_t devaddrf
Definition: at32f403_i2c.h:302
i2c_type::alertf
__IO uint32_t alertf
Definition: at32f403_i2c.h:284


AT32F403 Firmwary Library: at32f403_misc.c Source File

  • libraries
  • drivers
  • src
at32f403_misc.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_conf.h"
27
37#ifdef MISC_MODULE_ENABLED
38
43#define AIRCR_VECTKEY_MASK ((uint32_t)0x05FA0000)
44
50void nvic_system_reset(void)
51{
52 NVIC_SystemReset();
53}
54
62void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
63{
64 uint32_t temp_priority = 0;
65
66 /* encode priority */
67 temp_priority = NVIC_EncodePriority(NVIC_GetPriorityGrouping(), preempt_priority, sub_priority);
68 /* set priority */
69 NVIC_SetPriority(irqn, temp_priority);
70 /* enable irqn */
71 NVIC_EnableIRQ(irqn);
72}
73
79void nvic_irq_disable(IRQn_Type irqn)
80{
81 NVIC_DisableIRQ(irqn);
82}
83
95void nvic_priority_group_config(nvic_priority_group_type priority_group)
96{
97 /* set the prigroup[10:8] bits according to nvic_prioritygroup value */
98 NVIC_SetPriorityGrouping(priority_group);
99}
100
110void nvic_vector_table_set(uint32_t base, uint32_t offset)
111{
112 SCB->VTOR = base | (offset & (uint32_t)0x1FFFFF80);
113}
114
125void nvic_lowpower_mode_config(nvic_lowpower_mode_type lp_mode, confirm_state new_state)
126{
127 if(new_state != FALSE)
128 {
129 SCB->SCR |= lp_mode;
130 }
131 else
132 {
133 SCB->SCR &= (uint32_t)(~(uint32_t)lp_mode);
134 }
135}
136
145void systick_clock_source_config(systick_clock_source_type source)
146{
147 if(source == SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV)
148 {
149 SysTick->CTRL |= SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV;
150 }
151 else
152 {
153 SysTick->CTRL &= ~(uint32_t)SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV;
154 }
155}
156
161#endif
162
IRQn_Type
enum IRQn IRQn_Type
at32f403 interrupt number definition, according to the selected device in Library_configuration_secti...
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
FALSE
@ FALSE
Definition: at32f403.h:309
nvic_lowpower_mode_type
nvic_lowpower_mode_type
nvic low power mode
Definition: at32f403_misc.h:76
nvic_priority_group_type
nvic_priority_group_type
nvic interrupt priority group
Definition: at32f403_misc.h:64
systick_clock_source_type
systick_clock_source_type
systick clock source
Definition: at32f403_misc.h:86
SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
@ SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
Definition: at32f403_misc.h:88
nvic_lowpower_mode_config
void nvic_lowpower_mode_config(nvic_lowpower_mode_type lp_mode, confirm_state new_state)
config nvic lowpower mode
Definition: at32f403_misc.c:125
nvic_system_reset
void nvic_system_reset(void)
system reset
Definition: at32f403_misc.c:50
nvic_vector_table_set
void nvic_vector_table_set(uint32_t base, uint32_t offset)
set the vector table location and offset.
Definition: at32f403_misc.c:110
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_irq_disable
void nvic_irq_disable(IRQn_Type irqn)
disable nvic irq number
Definition: at32f403_misc.c:79
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
systick_clock_source_config
void systick_clock_source_config(systick_clock_source_type source)
config systick clock source
Definition: at32f403_misc.c:145
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_misc.h Source File

  • libraries
  • drivers
  • inc
at32f403_misc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_MISC_H
27#define __AT32F403_MISC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
49#define NVIC_VECTTAB_RAM ((uint32_t)0x20000000)
50#define NVIC_VECTTAB_FLASH ((uint32_t)0x08000000)
63typedef enum
64{
65 NVIC_PRIORITY_GROUP_0 = ((uint32_t)0x7),
66 NVIC_PRIORITY_GROUP_1 = ((uint32_t)0x6),
67 NVIC_PRIORITY_GROUP_2 = ((uint32_t)0x5),
68 NVIC_PRIORITY_GROUP_3 = ((uint32_t)0x4),
69 NVIC_PRIORITY_GROUP_4 = ((uint32_t)0x3)
70} nvic_priority_group_type;
71
75typedef enum
76{
77 NVIC_LP_SLEEPONEXIT = 0x02,
78 NVIC_LP_SLEEPDEEP = 0x04,
79 NVIC_LP_SEVONPEND = 0x10
80} nvic_lowpower_mode_type;
81
85typedef enum
86{
87 SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8 = ((uint32_t)0x00000000),
88 SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV = ((uint32_t)0x00000004)
89} systick_clock_source_type;
90
99void nvic_system_reset(void);
100void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority);
101void nvic_irq_disable(IRQn_Type irqn);
102void nvic_priority_group_config(nvic_priority_group_type priority_group);
103void nvic_vector_table_set(uint32_t base, uint32_t offset);
104void nvic_lowpower_mode_config(nvic_lowpower_mode_type lp_mode, confirm_state new_state);
105void systick_clock_source_config(systick_clock_source_type source);
106
119#ifdef __cplusplus
120}
121#endif
122
123#endif
at32f403.h
at32f403 header file
IRQn_Type
enum IRQn IRQn_Type
at32f403 interrupt number definition, according to the selected device in Library_configuration_secti...
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
nvic_lowpower_mode_config
void nvic_lowpower_mode_config(nvic_lowpower_mode_type lp_mode, confirm_state new_state)
config nvic lowpower mode
Definition: at32f403_misc.c:125
nvic_system_reset
void nvic_system_reset(void)
system reset
Definition: at32f403_misc.c:50
nvic_vector_table_set
void nvic_vector_table_set(uint32_t base, uint32_t offset)
set the vector table location and offset.
Definition: at32f403_misc.c:110
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_irq_disable
void nvic_irq_disable(IRQn_Type irqn)
disable nvic irq number
Definition: at32f403_misc.c:79
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
systick_clock_source_config
void systick_clock_source_config(systick_clock_source_type source)
config systick clock source
Definition: at32f403_misc.c:145
nvic_lowpower_mode_type
nvic_lowpower_mode_type
nvic low power mode
Definition: at32f403_misc.h:76
nvic_priority_group_type
nvic_priority_group_type
nvic interrupt priority group
Definition: at32f403_misc.h:64
systick_clock_source_type
systick_clock_source_type
systick clock source
Definition: at32f403_misc.h:86
NVIC_LP_SEVONPEND
@ NVIC_LP_SEVONPEND
Definition: at32f403_misc.h:79
NVIC_LP_SLEEPONEXIT
@ NVIC_LP_SLEEPONEXIT
Definition: at32f403_misc.h:77
NVIC_LP_SLEEPDEEP
@ NVIC_LP_SLEEPDEEP
Definition: at32f403_misc.h:78
NVIC_PRIORITY_GROUP_1
@ NVIC_PRIORITY_GROUP_1
Definition: at32f403_misc.h:66
NVIC_PRIORITY_GROUP_3
@ NVIC_PRIORITY_GROUP_3
Definition: at32f403_misc.h:68
NVIC_PRIORITY_GROUP_2
@ NVIC_PRIORITY_GROUP_2
Definition: at32f403_misc.h:67
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
NVIC_PRIORITY_GROUP_0
@ NVIC_PRIORITY_GROUP_0
Definition: at32f403_misc.h:65
SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8
@ SYSTICK_CLOCK_SOURCE_AHBCLK_DIV8
Definition: at32f403_misc.h:87
SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
@ SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
Definition: at32f403_misc.h:88


AT32F403 Firmwary Library: at32f403_pwc.c Source File

  • libraries
  • drivers
  • src
at32f403_pwc.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef PWC_MODULE_ENABLED
37
47void pwc_reset(void)
48{
49 crm_periph_reset(CRM_PWC_PERIPH_RESET, TRUE);
50 crm_periph_reset(CRM_PWC_PERIPH_RESET, FALSE);
51}
52
59void pwc_battery_powered_domain_access(confirm_state new_state)
60{
61 PWC->ctrl_bit.bpwen = new_state;
62}
63
77void pwc_pvm_level_select(pwc_pvm_voltage_type pvm_voltage)
78{
79 PWC->ctrl_bit.pvmsel = pvm_voltage;
80}
81
88void pwc_power_voltage_monitor_enable(confirm_state new_state)
89{
90 PWC->ctrl_bit.pvmen = new_state;
91}
92
104void pwc_wakeup_pin_enable(uint32_t pin_num, confirm_state new_state)
105{
106 if(new_state == TRUE)
107 {
108 PWC->ctrlsts |= pin_num;
109 }
110 else
111 {
112 PWC->ctrlsts &= ~pin_num;
113 }
114}
115
125void pwc_flag_clear(uint32_t pwc_flag)
126{
127 if(pwc_flag & PWC_STANDBY_FLAG)
128 PWC->ctrl_bit.clsef = TRUE;
129 if(pwc_flag & PWC_WAKEUP_FLAG)
130 PWC->ctrl_bit.clswef = TRUE;
131}
132
142 flag_status pwc_flag_get(uint32_t pwc_flag)
143{
144 flag_status status = RESET;
145 if ((PWC->ctrlsts & pwc_flag) == RESET)
146 {
147 status = RESET;
148 }
149 else
150 {
151 status = SET;
152 }
153 return status;
154}
155
164void pwc_sleep_mode_enter(pwc_sleep_enter_type pwc_sleep_enter)
165{
166 SCB->SCR &= (uint32_t)~0x4;
167 if(pwc_sleep_enter == PWC_SLEEP_ENTER_WFE)
168 {
169 __SEV();
170 __WFE();
171 __WFE();
172 }
173 else if(pwc_sleep_enter == PWC_SLEEP_ENTER_WFI)
174 {
175 __WFI();
176 }
177}
178
187void pwc_deep_sleep_mode_enter(pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
188{
189 SCB->SCR |= 0x04;
190 if(pwc_deep_sleep_enter == PWC_DEEP_SLEEP_ENTER_WFE)
191 {
192 __SEV();
193 __WFE();
194 __WFE();
195 }
196 else if(pwc_deep_sleep_enter == PWC_DEEP_SLEEP_ENTER_WFI)
197 {
198 __WFI();
199 }
200 SCB->SCR &= (uint32_t)~0x4;
201}
202
208void pwc_standby_mode_enter(void)
209{
210 PWC->ctrl_bit.clswef = TRUE;
211 PWC->ctrl_bit.lpsel = TRUE;
212 SCB->SCR |= 0x04;
213#if defined (__CC_ARM)
214 __force_stores();
215#endif
216 while(1)
217 {
218 __WFI();
219 }
220}
221
226#endif
227
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
CRM_PWC_PERIPH_RESET
@ CRM_PWC_PERIPH_RESET
Definition: at32f403_crm.h:207
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
pwc_pvm_voltage_type
pwc_pvm_voltage_type
pwc pvm voltage type
Definition: at32f403_pwc.h:71
pwc_deep_sleep_enter_type
pwc_deep_sleep_enter_type
pwc deep sleep enter type
Definition: at32f403_pwc.h:94
pwc_sleep_enter_type
pwc_sleep_enter_type
pwc sleep enter type
Definition: at32f403_pwc.h:85
PWC_DEEP_SLEEP_ENTER_WFI
@ PWC_DEEP_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:95
PWC_DEEP_SLEEP_ENTER_WFE
@ PWC_DEEP_SLEEP_ENTER_WFE
Definition: at32f403_pwc.h:96
PWC_SLEEP_ENTER_WFI
@ PWC_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:86
PWC_SLEEP_ENTER_WFE
@ PWC_SLEEP_ENTER_WFE
Definition: at32f403_pwc.h:87
PWC_STANDBY_FLAG
#define PWC_STANDBY_FLAG
Definition: at32f403_pwc.h:51
PWC_WAKEUP_FLAG
#define PWC_WAKEUP_FLAG
Definition: at32f403_pwc.h:50
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
pwc_standby_mode_enter
void pwc_standby_mode_enter(void)
enter pwc standby mode
Definition: at32f403_pwc.c:208
pwc_power_voltage_monitor_enable
void pwc_power_voltage_monitor_enable(confirm_state new_state)
enable or disable pwc power voltage monitor (pvm)
Definition: at32f403_pwc.c:88
pwc_sleep_mode_enter
void pwc_sleep_mode_enter(pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode
Definition: at32f403_pwc.c:164
pwc_deep_sleep_mode_enter
void pwc_deep_sleep_mode_enter(pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode
Definition: at32f403_pwc.c:187
pwc_flag_get
flag_status pwc_flag_get(uint32_t pwc_flag)
get flag of pwc
Definition: at32f403_pwc.c:142
pwc_flag_clear
void pwc_flag_clear(uint32_t pwc_flag)
clear flag of pwc
Definition: at32f403_pwc.c:125
pwc_pvm_level_select
void pwc_pvm_level_select(pwc_pvm_voltage_type pvm_voltage)
select the voltage threshold detected by the power voltage detector.
Definition: at32f403_pwc.c:77
pwc_reset
void pwc_reset(void)
deinitialize the pwc peripheral registers to their default reset values.
Definition: at32f403_pwc.c:47
pwc_wakeup_pin_enable
void pwc_wakeup_pin_enable(uint32_t pin_num, confirm_state new_state)
enable or disable pwc standby wakeup pin
Definition: at32f403_pwc.c:104
PWC
#define PWC
Definition: at32f403_pwc.h:146
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_pwc.h Source File

  • libraries
  • drivers
  • inc
at32f403_pwc.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_PWC_H
27#define __AT32F403_PWC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define PWC_WAKEUP_FLAG ((uint32_t)0x00000001)
51#define PWC_STANDBY_FLAG ((uint32_t)0x00000002)
52#define PWC_PVM_OUTPUT_FLAG ((uint32_t)0x00000004)
61#define PWC_WAKEUP_PIN_1 ((uint32_t)0x00000100)
70typedef enum
71{
72 PWC_PVM_VOLTAGE_2V3 = 0x01,
73 PWC_PVM_VOLTAGE_2V4 = 0x02,
74 PWC_PVM_VOLTAGE_2V5 = 0x03,
75 PWC_PVM_VOLTAGE_2V6 = 0x04,
76 PWC_PVM_VOLTAGE_2V7 = 0x05,
77 PWC_PVM_VOLTAGE_2V8 = 0x06,
78 PWC_PVM_VOLTAGE_2V9 = 0x07
79} pwc_pvm_voltage_type;
80
84typedef enum
85{
86 PWC_SLEEP_ENTER_WFI = 0x00,
87 PWC_SLEEP_ENTER_WFE = 0x01
88} pwc_sleep_enter_type;
89
93typedef enum
94{
95 PWC_DEEP_SLEEP_ENTER_WFI = 0x00,
96 PWC_DEEP_SLEEP_ENTER_WFE = 0x01
97} pwc_deep_sleep_enter_type;
98
102typedef struct
103{
107 union
108 {
109 __IO uint32_t ctrl;
110 struct
111 {
112 __IO uint32_t reserved1 : 1; /* [0] */
113 __IO uint32_t lpsel : 1; /* [1] */
114 __IO uint32_t clswef : 1; /* [2] */
115 __IO uint32_t clsef : 1; /* [3] */
116 __IO uint32_t pvmen : 1; /* [4] */
117 __IO uint32_t pvmsel : 3; /* [7:5] */
118 __IO uint32_t bpwen : 1; /* [8] */
119 __IO uint32_t reserved2 : 23;/* [31:9] */
120 } ctrl_bit;
121 };
122
126 union
127 {
128 __IO uint32_t ctrlsts;
129 struct
130 {
131 __IO uint32_t swef : 1; /* [0] */
132 __IO uint32_t sef : 1; /* [1] */
133 __IO uint32_t pvmof : 1; /* [2] */
134 __IO uint32_t reserved1 : 5; /* [7:3] */
135 __IO uint32_t swpen : 1; /* [8] */
136 __IO uint32_t reserved2 : 23;/* [31:9] */
137 } ctrlsts_bit;
138 };
139
140} pwc_type;
141
146#define PWC ((pwc_type *) PWC_BASE)
147
152void pwc_reset(void);
153void pwc_battery_powered_domain_access(confirm_state new_state);
154void pwc_pvm_level_select(pwc_pvm_voltage_type pvm_voltage);
155void pwc_power_voltage_monitor_enable(confirm_state new_state);
156void pwc_wakeup_pin_enable(uint32_t pin_num, confirm_state new_state);
157void pwc_flag_clear(uint32_t pwc_flag);
158 flag_status pwc_flag_get(uint32_t pwc_flag);
159void pwc_sleep_mode_enter(pwc_sleep_enter_type pwc_sleep_enter);
160void pwc_deep_sleep_mode_enter(pwc_deep_sleep_enter_type pwc_deep_sleep_enter);
161void pwc_standby_mode_enter(void);
162
175#ifdef __cplusplus
176}
177#endif
178
179#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
pwc_standby_mode_enter
void pwc_standby_mode_enter(void)
enter pwc standby mode
Definition: at32f403_pwc.c:208
pwc_power_voltage_monitor_enable
void pwc_power_voltage_monitor_enable(confirm_state new_state)
enable or disable pwc power voltage monitor (pvm)
Definition: at32f403_pwc.c:88
pwc_sleep_mode_enter
void pwc_sleep_mode_enter(pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode
Definition: at32f403_pwc.c:164
pwc_deep_sleep_mode_enter
void pwc_deep_sleep_mode_enter(pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode
Definition: at32f403_pwc.c:187
pwc_flag_get
flag_status pwc_flag_get(uint32_t pwc_flag)
get flag of pwc
Definition: at32f403_pwc.c:142
pwc_flag_clear
void pwc_flag_clear(uint32_t pwc_flag)
clear flag of pwc
Definition: at32f403_pwc.c:125
pwc_pvm_level_select
void pwc_pvm_level_select(pwc_pvm_voltage_type pvm_voltage)
select the voltage threshold detected by the power voltage detector.
Definition: at32f403_pwc.c:77
pwc_reset
void pwc_reset(void)
deinitialize the pwc peripheral registers to their default reset values.
Definition: at32f403_pwc.c:47
pwc_wakeup_pin_enable
void pwc_wakeup_pin_enable(uint32_t pin_num, confirm_state new_state)
enable or disable pwc standby wakeup pin
Definition: at32f403_pwc.c:104
pwc_pvm_voltage_type
pwc_pvm_voltage_type
pwc pvm voltage type
Definition: at32f403_pwc.h:71
pwc_deep_sleep_enter_type
pwc_deep_sleep_enter_type
pwc deep sleep enter type
Definition: at32f403_pwc.h:94
pwc_sleep_enter_type
pwc_sleep_enter_type
pwc sleep enter type
Definition: at32f403_pwc.h:85
PWC_PVM_VOLTAGE_2V7
@ PWC_PVM_VOLTAGE_2V7
Definition: at32f403_pwc.h:76
PWC_PVM_VOLTAGE_2V3
@ PWC_PVM_VOLTAGE_2V3
Definition: at32f403_pwc.h:72
PWC_PVM_VOLTAGE_2V8
@ PWC_PVM_VOLTAGE_2V8
Definition: at32f403_pwc.h:77
PWC_PVM_VOLTAGE_2V4
@ PWC_PVM_VOLTAGE_2V4
Definition: at32f403_pwc.h:73
PWC_PVM_VOLTAGE_2V5
@ PWC_PVM_VOLTAGE_2V5
Definition: at32f403_pwc.h:74
PWC_PVM_VOLTAGE_2V6
@ PWC_PVM_VOLTAGE_2V6
Definition: at32f403_pwc.h:75
PWC_PVM_VOLTAGE_2V9
@ PWC_PVM_VOLTAGE_2V9
Definition: at32f403_pwc.h:78
PWC_DEEP_SLEEP_ENTER_WFI
@ PWC_DEEP_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:95
PWC_DEEP_SLEEP_ENTER_WFE
@ PWC_DEEP_SLEEP_ENTER_WFE
Definition: at32f403_pwc.h:96
PWC_SLEEP_ENTER_WFI
@ PWC_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:86
PWC_SLEEP_ENTER_WFE
@ PWC_SLEEP_ENTER_WFE
Definition: at32f403_pwc.h:87
pwc_type
type define pwc register all
Definition: at32f403_pwc.h:103
pwc_type::bpwen
__IO uint32_t bpwen
Definition: at32f403_pwc.h:118
pwc_type::clswef
__IO uint32_t clswef
Definition: at32f403_pwc.h:114
pwc_type::pvmof
__IO uint32_t pvmof
Definition: at32f403_pwc.h:133
pwc_type::lpsel
__IO uint32_t lpsel
Definition: at32f403_pwc.h:113
pwc_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_pwc.h:112
pwc_type::pvmen
__IO uint32_t pvmen
Definition: at32f403_pwc.h:116
pwc_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_pwc.h:109
pwc_type::swef
__IO uint32_t swef
Definition: at32f403_pwc.h:131
pwc_type::clsef
__IO uint32_t clsef
Definition: at32f403_pwc.h:115
pwc_type::ctrlsts
__IO uint32_t ctrlsts
Definition: at32f403_pwc.h:128
pwc_type::sef
__IO uint32_t sef
Definition: at32f403_pwc.h:132
pwc_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_pwc.h:119
pwc_type::swpen
__IO uint32_t swpen
Definition: at32f403_pwc.h:135
pwc_type::pvmsel
__IO uint32_t pvmsel
Definition: at32f403_pwc.h:117


AT32F403 Firmwary Library: at32f403_rtc.c Source File

  • libraries
  • drivers
  • src
at32f403_rtc.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef RTC_MODULE_ENABLED
37
47void rtc_counter_set(uint32_t counter_value)
48{
49 /* enter rtc config mode */
50 RTC->ctrll = 0x003F;
51
52 /* set rtc counter */
53 RTC->cnth_bit.cnt = (uint16_t)(counter_value >> 16);
54 RTC->cntl_bit.cnt = (uint16_t)(counter_value & 0x0000FFFF);
55
56 /* exit rtc config mode */
57 RTC->ctrll = 0x000F;
58}
59
65uint32_t rtc_counter_get(void)
66{
67 uint32_t cnt = 0;
68
69 cnt = RTC->cnth;
70 cnt = (cnt << 16) | RTC->cntl;
71
72 return cnt;
73}
74
80void rtc_divider_set(uint32_t div_value)
81{
82 /* enter rtc config mode */
83 RTC->ctrll = 0x003F;
84
85 /* set rtc divider */
86 RTC->divh_bit.div = (uint16_t)(div_value >> 16);
87 RTC->divl_bit.div = (uint16_t)(div_value & 0x0000FFFF);
88
89 /* exit rtc config mode */
90 RTC->ctrll = 0x000F;
91}
92
98uint32_t rtc_divider_get(void)
99{
100 uint32_t div = 0;
101
102 div = RTC->divcnth;
103 div = (div << 16) | RTC->divcntl;
104
105 return div;
106}
107
113void rtc_alarm_set(uint32_t alarm_value)
114{
115 /* enter rtc config mode */
116 RTC->ctrll = 0x003F;
117
118 /* set rtc alarm value */
119 RTC->tah_bit.ta = (uint16_t)(alarm_value >> 16);
120 RTC->tal_bit.ta = (uint16_t)(alarm_value & 0x0000FFFF);
121
122 /* exit rtc config mode */
123 RTC->ctrll = 0x000F;
124}
125
136void rtc_interrupt_enable(uint16_t source, confirm_state new_state)
137{
138 if(new_state == FALSE)
139 {
140 RTC->ctrlh &= ~source;
141 }
142 else
143 {
144 RTC->ctrlh |= source;
145 }
146}
147
159 flag_status rtc_flag_get(uint16_t flag)
160{
161 flag_status status = RESET;
162
163 if ((RTC->ctrll & flag) != (uint16_t)RESET)
164 {
165 status = SET;
166 }
167 else
168 {
169 status = RESET;
170 }
171
172 return status;
173}
174
184 flag_status rtc_interrupt_flag_get(uint16_t flag)
185{
186 flag_status status = RESET;
187
188 if (((RTC->ctrll & flag) != (uint16_t)RESET) && ((RTC->ctrlh & flag) != (uint16_t)RESET))
189 {
190 status = SET;
191 }
192 else
193 {
194 status = RESET;
195 }
196
197 return status;
198}
199
210void rtc_flag_clear(uint16_t flag)
211{
212 RTC->ctrll = ~(flag | 0x10) | (RTC->ctrll_bit.cfgen << 4);
213}
214
220void rtc_wait_config_finish(void)
221{
222 while (RTC->ctrll_bit.cfgf == 0);
223}
224
230void rtc_wait_update_finish(void)
231{
232 while (RTC->ctrll_bit.updf == 0);
233}
234
239#endif
240
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
rtc_interrupt_flag_get
flag_status rtc_interrupt_flag_get(uint16_t flag)
rtc interrupt flag get
Definition: at32f403_rtc.c:184
rtc_alarm_set
void rtc_alarm_set(uint32_t alarm_value)
rtc alarm value set
Definition: at32f403_rtc.c:113
rtc_divider_get
uint32_t rtc_divider_get(void)
rtc divider get
Definition: at32f403_rtc.c:98
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_counter_get
uint32_t rtc_counter_get(void)
rtc counter get
Definition: at32f403_rtc.c:65
rtc_wait_update_finish
void rtc_wait_update_finish(void)
rtc wait update finish
Definition: at32f403_rtc.c:230
rtc_interrupt_enable
void rtc_interrupt_enable(uint16_t source, confirm_state new_state)
rtc interrupt enable
Definition: at32f403_rtc.c:136
rtc_counter_set
void rtc_counter_set(uint32_t counter_value)
rtc counter set
Definition: at32f403_rtc.c:47
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
rtc_divider_set
void rtc_divider_set(uint32_t div_value)
rtc divider set
Definition: at32f403_rtc.c:80
RTC
#define RTC
Definition: at32f403_rtc.h:226
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_rtc.h Source File

  • libraries
  • drivers
  • inc
at32f403_rtc.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_RTC_H
27#define __AT32F403_RTC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define RTC_TS_INT ((uint16_t)0x0001)
51#define RTC_TA_INT ((uint16_t)0x0002)
52#define RTC_OVF_INT ((uint16_t)0x0004)
63#define RTC_TS_FLAG ((uint16_t)0x0001)
64#define RTC_TA_FLAG ((uint16_t)0x0002)
65#define RTC_OVF_FLAG ((uint16_t)0x0004)
66#define RTC_UPDF_FLAG ((uint16_t)0x0008)
67#define RTC_CFGF_FLAG ((uint16_t)0x0020)
80typedef struct
81{
82
86 union
87 {
88 __IO uint32_t ctrlh;
89 struct
90 {
91 __IO uint32_t tsien : 1; /* [0] */
92 __IO uint32_t taien : 1; /* [1] */
93 __IO uint32_t ovfien : 1; /* [2] */
94 __IO uint32_t reserved1 : 29;/* [31:3] */
95 } ctrlh_bit;
96 };
97
101 union
102 {
103 __IO uint32_t ctrll;
104 struct
105 {
106 __IO uint32_t tsf : 1; /* [0] */
107 __IO uint32_t taf : 1; /* [1] */
108 __IO uint32_t ovff : 1; /* [2] */
109 __IO uint32_t updf : 1; /* [3] */
110 __IO uint32_t cfgen : 1; /* [4] */
111 __IO uint32_t cfgf : 1; /* [5] */
112 __IO uint32_t reserved1 : 26;/* [31:6] */
113 } ctrll_bit;
114 };
115
119 union
120 {
121 __IO uint32_t divh;
122 struct
123 {
124 __IO uint32_t div : 4; /* [3:0] */
125 __IO uint32_t reserved1 : 28;/* [31:4] */
126 } divh_bit;
127 };
128
132 union
133 {
134 __IO uint32_t divl;
135 struct
136 {
137 __IO uint32_t div : 16;/* [15:0] */
138 __IO uint32_t reserved1 : 16;/* [31:15] */
139 } divl_bit;
140 };
141
145 union
146 {
147 __IO uint32_t divcnth;
148 struct
149 {
150 __IO uint32_t divcnt : 4; /* [3:0] */
151 __IO uint32_t reserved1 : 28;/* [31:15] */
152 } divcnth_bit;
153 };
154
158 union
159 {
160 __IO uint32_t divcntl;
161 struct
162 {
163 __IO uint32_t divcnt : 16;/* [15:0] */
164 __IO uint32_t reserved1 : 16;/* [31:15] */
165 } divcntl_bit;
166 };
167
171 union
172 {
173 __IO uint32_t cnth;
174 struct
175 {
176 __IO uint32_t cnt : 16;/* [15:0] */
177 __IO uint32_t reserved1 : 16;/* [31:15] */
178 } cnth_bit;
179 };
180
184 union
185 {
186 __IO uint32_t cntl;
187 struct
188 {
189 __IO uint32_t cnt : 16;/* [15:0] */
190 __IO uint32_t reserved1 : 16;/* [31:15] */
191 } cntl_bit;
192 };
193
197 union
198 {
199 __IO uint32_t tah;
200 struct
201 {
202 __IO uint32_t ta : 16;/* [15:0] */
203 __IO uint32_t reserved1 : 16;/* [31:15] */
204 } tah_bit;
205 };
206
210 union
211 {
212 __IO uint32_t tal;
213 struct
214 {
215 __IO uint32_t ta : 16;/* [15:0] */
216 __IO uint32_t reserved1 : 16;/* [31:15] */
217 } tal_bit;
218 };
219
220} rtc_type;
221
226#define RTC ((rtc_type *) RTC_BASE)
227
232void rtc_counter_set(uint32_t counter_value);
233uint32_t rtc_counter_get(void);
234void rtc_divider_set(uint32_t div_value);
235uint32_t rtc_divider_get(void);
236void rtc_alarm_set(uint32_t alarm_value);
237void rtc_interrupt_enable(uint16_t source, confirm_state new_state);
238 flag_status rtc_flag_get(uint16_t flag);
239 flag_status rtc_interrupt_flag_get(uint16_t flag);
240void rtc_flag_clear(uint16_t flag);
241void rtc_wait_config_finish(void);
242void rtc_wait_update_finish(void);
243
256#ifdef __cplusplus
257}
258#endif
259
260#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
rtc_interrupt_flag_get
flag_status rtc_interrupt_flag_get(uint16_t flag)
rtc interrupt flag get
Definition: at32f403_rtc.c:184
rtc_alarm_set
void rtc_alarm_set(uint32_t alarm_value)
rtc alarm value set
Definition: at32f403_rtc.c:113
rtc_divider_get
uint32_t rtc_divider_get(void)
rtc divider get
Definition: at32f403_rtc.c:98
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_counter_get
uint32_t rtc_counter_get(void)
rtc counter get
Definition: at32f403_rtc.c:65
rtc_wait_update_finish
void rtc_wait_update_finish(void)
rtc wait update finish
Definition: at32f403_rtc.c:230
rtc_interrupt_enable
void rtc_interrupt_enable(uint16_t source, confirm_state new_state)
rtc interrupt enable
Definition: at32f403_rtc.c:136
rtc_counter_set
void rtc_counter_set(uint32_t counter_value)
rtc counter set
Definition: at32f403_rtc.c:47
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
rtc_divider_set
void rtc_divider_set(uint32_t div_value)
rtc divider set
Definition: at32f403_rtc.c:80
rtc_type
type define rtc register all
Definition: at32f403_rtc.h:81
rtc_type::div
__IO uint32_t div
Definition: at32f403_rtc.h:124
rtc_type::cntl
__IO uint32_t cntl
Definition: at32f403_rtc.h:186
rtc_type::tsien
__IO uint32_t tsien
Definition: at32f403_rtc.h:91
rtc_type::ovff
__IO uint32_t ovff
Definition: at32f403_rtc.h:108
rtc_type::cfgf
__IO uint32_t cfgf
Definition: at32f403_rtc.h:111
rtc_type::ovfien
__IO uint32_t ovfien
Definition: at32f403_rtc.h:93
rtc_type::divl
__IO uint32_t divl
Definition: at32f403_rtc.h:134
rtc_type::cnt
__IO uint32_t cnt
Definition: at32f403_rtc.h:176
rtc_type::taf
__IO uint32_t taf
Definition: at32f403_rtc.h:107
rtc_type::divcnth
__IO uint32_t divcnth
Definition: at32f403_rtc.h:147
rtc_type::ta
__IO uint32_t ta
Definition: at32f403_rtc.h:202
rtc_type::cfgen
__IO uint32_t cfgen
Definition: at32f403_rtc.h:110
rtc_type::cnth
__IO uint32_t cnth
Definition: at32f403_rtc.h:173
rtc_type::ctrll
__IO uint32_t ctrll
Definition: at32f403_rtc.h:103
rtc_type::updf
__IO uint32_t updf
Definition: at32f403_rtc.h:109
rtc_type::tsf
__IO uint32_t tsf
Definition: at32f403_rtc.h:106
rtc_type::divh
__IO uint32_t divh
Definition: at32f403_rtc.h:121
rtc_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_rtc.h:94
rtc_type::tal
__IO uint32_t tal
Definition: at32f403_rtc.h:212
rtc_type::divcnt
__IO uint32_t divcnt
Definition: at32f403_rtc.h:150
rtc_type::divcntl
__IO uint32_t divcntl
Definition: at32f403_rtc.h:160
rtc_type::taien
__IO uint32_t taien
Definition: at32f403_rtc.h:92
rtc_type::tah
__IO uint32_t tah
Definition: at32f403_rtc.h:199
rtc_type::ctrlh
__IO uint32_t ctrlh
Definition: at32f403_rtc.h:88


AT32F403 Firmwary Library: at32f403_sdio.c Source File

  • libraries
  • drivers
  • src
at32f403_sdio.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef SDIO_MODULE_ENABLED
37
49void sdio_reset(sdio_type *sdio_x)
50{
51 sdio_x->pwrctrl = 0x0;
52 sdio_x->clkctrl = 0x0;
53 sdio_x->argu = 0x0;
54 sdio_x->cmdctrl = 0x0;
55 sdio_x->dttmr = 0x0;
56 sdio_x->dtlen = 0x0;
57 sdio_x->dtctrl = 0x0;
58 sdio_x->inten = 0x0;
59 sdio_x->intclr = 0x004007FF;
60}
61
73void sdio_power_set(sdio_type *sdio_x, sdio_power_state_type power_state)
74{
75 sdio_x->pwrctrl_bit.ps = power_state;
76}
77
85 sdio_power_state_type sdio_power_status_get(sdio_type *sdio_x)
86{
87 return (sdio_power_state_type)(sdio_x->pwrctrl_bit.ps);
88}
89
102void sdio_clock_config(sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
103{
104 /* config clock edge */
105 sdio_x->clkctrl_bit.clkegs = clk_edg;
106
107 /* config clock divide [7:0] */
108 sdio_x->clkctrl_bit.clkdiv_l = (clk_div & 0xFF);
109
110 /* config clock divide [9:8] */
111 sdio_x->clkctrl_bit.clkdiv_h = ((clk_div & 0x300) >> 8);
112}
113
126void sdio_bus_width_config(sdio_type *sdio_x, sdio_bus_width_type width)
127{
128 sdio_x->clkctrl_bit.busws = width;
129}
130
139void sdio_clock_bypass(sdio_type *sdio_x, confirm_state new_state)
140{
141 sdio_x->clkctrl_bit.bypsen = new_state;
142}
143
153void sdio_power_saving_mode_enable(sdio_type *sdio_x, confirm_state new_state)
154{
155 sdio_x->clkctrl_bit.pwrsven = new_state;
156}
157
166void sdio_flow_control_enable(sdio_type *sdio_x, confirm_state new_state)
167{
168 sdio_x->clkctrl_bit.hfcen = new_state;
169}
170
179void sdio_clock_enable(sdio_type *sdio_x, confirm_state new_state)
180{
181 sdio_x->clkctrl_bit.clkoen = new_state;
182}
183
192void sdio_dma_enable(sdio_type *sdio_x, confirm_state new_state)
193{
194 sdio_x->dtctrl_bit.dmaen = new_state;
195}
196
230void sdio_interrupt_enable(sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
231{
232 /* enable interrupt */
233 if(TRUE == new_state)
234 {
235 sdio_x->inten |= int_opt;
236 }
237 /* disable interrupt */
238 else
239 {
240 sdio_x->inten &= ~(int_opt);
241 }
242}
243
276 flag_status sdio_interrupt_flag_get(sdio_type *sdio_x, uint32_t flag)
277{
278 flag_status status = RESET;
279
280 if((sdio_x->inten & flag) && (sdio_x->sts & flag))
281 {
282 status = SET;
283 }
284
285 return status;
286}
287
320 flag_status sdio_flag_get(sdio_type *sdio_x, uint32_t flag)
321{
322 flag_status status = RESET;
323
324 if((sdio_x->sts & flag) == flag)
325 {
326 status = SET;
327 }
328 else
329 {
330 status = RESET;
331 }
332
333 return status;
334}
335
357void sdio_flag_clear(sdio_type *sdio_x, uint32_t flag)
358{
359 sdio_x->intclr = flag;
360}
361
371void sdio_command_config(sdio_type *sdio_x, sdio_command_struct_type *command_struct)
372{
373 /* disable command path state machine */
374 sdio_x->cmdctrl_bit.ccsmen = FALSE;
375
376 /* config command argument */
377 sdio_x->argu = command_struct->argument;
378
379 /* config command register */
380 sdio_x->cmdctrl_bit.cmdidx = command_struct->cmd_index;
381 sdio_x->cmdctrl_bit.rspwt = command_struct->rsp_type;
382 sdio_x->cmdctrl_bit.intwt = (command_struct->wait_type & 0x1); /* [1:0] -> [0] */
383 sdio_x->cmdctrl_bit.pndwt = (command_struct->wait_type & 0x2)>>1; /* [1:0] -> [1] */
384}
385
394void sdio_command_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
395{
396 sdio_x->cmdctrl_bit.ccsmen = new_state;
397}
398
407uint8_t sdio_command_response_get(sdio_type *sdio_x)
408{
409 return sdio_x->rspcmd_bit.rspcmd;
410}
411
425uint32_t sdio_response_get(sdio_type *sdio_x, sdio_rsp_index_type reg_index)
426{
427 uint32_t response_value = 0;
428
429 switch(reg_index)
430 {
431 case SDIO_RSP1_INDEX:
432 response_value = sdio_x->rsp1;
433 break;
434 case SDIO_RSP2_INDEX:
435 response_value = sdio_x->rsp2;
436 break;
437 case SDIO_RSP3_INDEX:
438 response_value = sdio_x->rsp3;
439 break;
440 case SDIO_RSP4_INDEX:
441 response_value = sdio_x->rsp4;
442 break;
443 default: break;
444 }
445
446 return response_value;
447}
448
458void sdio_data_config(sdio_type *sdio_x, sdio_data_struct_type *data_struct)
459{
460 /* disable data path state machine */
461 sdio_x->dtctrl_bit.tfren = FALSE;
462
463 /* config data block, transfer mode and transfer direction */
464 sdio_x->dtctrl_bit.blksize = data_struct->block_size;
465 sdio_x->dtctrl_bit.tfrdir = data_struct->transfer_direction;
466 sdio_x->dtctrl_bit.tfrmode = data_struct->transfer_mode;
467
468 /* config data length */
469 sdio_x->dtlen_bit.dtlen = data_struct->data_length;
470
471 /* config data transfer timeout */
472 sdio_x->dttmr_bit.timeout = data_struct->timeout;
473}
474
483void sdio_data_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
484{
485 sdio_x->dtctrl_bit.tfren = new_state;
486}
487
495uint32_t sdio_data_counter_get(sdio_type *sdio_x)
496{
497 return sdio_x->dtcnt;
498}
499
507uint32_t sdio_data_read(sdio_type *sdio_x)
508{
509 return sdio_x->buf;
510}
511
519uint32_t sdio_buffer_counter_get(sdio_type *sdio_x)
520{
521 return sdio_x->bufcnt;
522}
523
532void sdio_data_write(sdio_type *sdio_x, uint32_t data)
533{
534 sdio_x->buf = data;
535}
536
548void sdio_read_wait_mode_set(sdio_type *sdio_x, sdio_read_wait_mode_type mode)
549{
550 sdio_x->dtctrl_bit.rdwtmode = mode;
551}
552
561void sdio_read_wait_start(sdio_type *sdio_x, confirm_state new_state)
562{
563 sdio_x->dtctrl_bit.rdwtstart = new_state;
564}
565
574void sdio_read_wait_stop(sdio_type *sdio_x, confirm_state new_state)
575{
576 sdio_x->dtctrl_bit.rdwtstop = new_state;
577}
578
587void sdio_io_function_enable(sdio_type *sdio_x, confirm_state new_state)
588{
589 sdio_x->dtctrl_bit.ioen = new_state;
590}
591
600void sdio_io_suspend_command_set(sdio_type *sdio_x, confirm_state new_state)
601{
602 sdio_x->cmdctrl_bit.iosusp = new_state;
603}
604
609#endif
610
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
sdio_read_wait_mode_type
sdio_read_wait_mode_type
sdio read wait mode
Definition: at32f403_sdio.h:218
sdio_edge_phase_type
sdio_edge_phase_type
sdio edge phase
Definition: at32f403_sdio.h:128
sdio_power_state_type
sdio_power_state_type
sdio power state
Definition: at32f403_sdio.h:119
sdio_bus_width_type
sdio_bus_width_type
sdio bus width
Definition: at32f403_sdio.h:137
sdio_rsp_index_type
sdio_rsp_index_type
sdio response register index
Definition: at32f403_sdio.h:167
SDIO_RSP3_INDEX
@ SDIO_RSP3_INDEX
Definition: at32f403_sdio.h:170
SDIO_RSP2_INDEX
@ SDIO_RSP2_INDEX
Definition: at32f403_sdio.h:169
SDIO_RSP4_INDEX
@ SDIO_RSP4_INDEX
Definition: at32f403_sdio.h:171
SDIO_RSP1_INDEX
@ SDIO_RSP1_INDEX
Definition: at32f403_sdio.h:168
sdio_command_config
void sdio_command_config(sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command.
Definition: at32f403_sdio.c:371
sdio_data_write
void sdio_data_write(sdio_type *sdio_x, uint32_t data)
write one word data to fifo.
Definition: at32f403_sdio.c:532
sdio_io_suspend_command_set
void sdio_io_suspend_command_set(sdio_type *sdio_x, confirm_state new_state)
enable or disable sd i/o suspend command sending.
Definition: at32f403_sdio.c:600
sdio_data_config
void sdio_data_config(sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data.
Definition: at32f403_sdio.c:458
sdio_data_read
uint32_t sdio_data_read(sdio_type *sdio_x)
read a word data from sdio fifo.
Definition: at32f403_sdio.c:507
sdio_io_function_enable
void sdio_io_function_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable the sd i/o function.
Definition: at32f403_sdio.c:587
sdio_command_state_machine_enable
void sdio_command_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM).
Definition: at32f403_sdio.c:394
sdio_clock_bypass
void sdio_clock_bypass(sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss
Definition: at32f403_sdio.c:139
sdio_flow_control_enable
void sdio_flow_control_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control.
Definition: at32f403_sdio.c:166
sdio_power_set
void sdio_power_set(sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller
Definition: at32f403_sdio.c:73
sdio_clock_config
void sdio_clock_config(sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock
Definition: at32f403_sdio.c:102
sdio_bus_width_config
void sdio_bus_width_config(sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width
Definition: at32f403_sdio.c:126
sdio_read_wait_stop
void sdio_read_wait_stop(sdio_type *sdio_x, confirm_state new_state)
enable or disable to stop sd i/o read wait operation.
Definition: at32f403_sdio.c:574
sdio_interrupt_enable
void sdio_interrupt_enable(sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt.
Definition: at32f403_sdio.c:230
sdio_flag_clear
void sdio_flag_clear(sdio_type *sdio_x, uint32_t flag)
clear sdio flag.
Definition: at32f403_sdio.c:357
sdio_power_status_get
sdio_power_state_type sdio_power_status_get(sdio_type *sdio_x)
get power status.
Definition: at32f403_sdio.c:85
sdio_response_get
uint32_t sdio_response_get(sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command.
Definition: at32f403_sdio.c:425
sdio_data_state_machine_enable
void sdio_data_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM).
Definition: at32f403_sdio.c:483
sdio_power_saving_mode_enable
void sdio_power_saving_mode_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle.
Definition: at32f403_sdio.c:153
sdio_flag_get
flag_status sdio_flag_get(sdio_type *sdio_x, uint32_t flag)
get sdio flag.
Definition: at32f403_sdio.c:320
sdio_dma_enable
void sdio_dma_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable dma.
Definition: at32f403_sdio.c:192
sdio_data_counter_get
uint32_t sdio_data_counter_get(sdio_type *sdio_x)
get the number of remaining data bytes to be transferred.
Definition: at32f403_sdio.c:495
sdio_buffer_counter_get
uint32_t sdio_buffer_counter_get(sdio_type *sdio_x)
get the number of words left to be written to or read from fifo..
Definition: at32f403_sdio.c:519
sdio_read_wait_start
void sdio_read_wait_start(sdio_type *sdio_x, confirm_state new_state)
enable or disable to start sd i/o read wait operation.
Definition: at32f403_sdio.c:561
sdio_reset
void sdio_reset(sdio_type *sdio_x)
reset the sdio register
Definition: at32f403_sdio.c:49
sdio_interrupt_flag_get
flag_status sdio_interrupt_flag_get(sdio_type *sdio_x, uint32_t flag)
get sdio interrupt flag.
Definition: at32f403_sdio.c:276
sdio_read_wait_mode_set
void sdio_read_wait_mode_set(sdio_type *sdio_x, sdio_read_wait_mode_type mode)
set the read wait mode.
Definition: at32f403_sdio.c:548
sdio_clock_enable
void sdio_clock_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output.
Definition: at32f403_sdio.c:179
sdio_command_response_get
uint8_t sdio_command_response_get(sdio_type *sdio_x)
get command index of last command for which response received.
Definition: at32f403_sdio.c:407
sdio_command_struct_type
sdio command structure
Definition: at32f403_sdio.h:227
sdio_command_struct_type::cmd_index
uint8_t cmd_index
Definition: at32f403_sdio.h:229
sdio_command_struct_type::argument
uint32_t argument
Definition: at32f403_sdio.h:228
sdio_command_struct_type::wait_type
sdio_wait_type wait_type
Definition: at32f403_sdio.h:231
sdio_command_struct_type::rsp_type
sdio_reponse_type rsp_type
Definition: at32f403_sdio.h:230
sdio_data_struct_type
sdio data structure
Definition: at32f403_sdio.h:238
sdio_data_struct_type::block_size
sdio_block_size_type block_size
Definition: at32f403_sdio.h:241
sdio_data_struct_type::transfer_direction
sdio_transfer_direction_type transfer_direction
Definition: at32f403_sdio.h:243
sdio_data_struct_type::timeout
uint32_t timeout
Definition: at32f403_sdio.h:239
sdio_data_struct_type::transfer_mode
sdio_transfer_mode_type transfer_mode
Definition: at32f403_sdio.h:242
sdio_data_struct_type::data_length
uint32_t data_length
Definition: at32f403_sdio.h:240
sdio_type
type define sdio register all
Definition: at32f403_sdio.h:250
sdio_type::ps
__IO uint32_t ps
Definition: at32f403_sdio.h:259
sdio_type::dtlen
__IO uint32_t dtlen
Definition: at32f403_sdio.h:392
sdio_type::intclr
__IO uint32_t intclr
Definition: at32f403_sdio.h:474
sdio_type::rdwtstart
__IO uint32_t rdwtstart
Definition: at32f403_sdio.h:413
sdio_type::rdwtstop
__IO uint32_t rdwtstop
Definition: at32f403_sdio.h:414
sdio_type::rspwt
__IO uint32_t rspwt
Definition: at32f403_sdio.h:305
sdio_type::hfcen
__IO uint32_t hfcen
Definition: at32f403_sdio.h:278
sdio_type::tfrmode
__IO uint32_t tfrmode
Definition: at32f403_sdio.h:410
sdio_type::clkegs
__IO uint32_t clkegs
Definition: at32f403_sdio.h:277
sdio_type::dtctrl_bit
struct sdio_type::@568::@593 dtctrl_bit
sdio_type::tfrdir
__IO uint32_t tfrdir
Definition: at32f403_sdio.h:409
sdio_type::tfren
__IO uint32_t tfren
Definition: at32f403_sdio.h:408
sdio_type::dttmr
__IO uint32_t dttmr
Definition: at32f403_sdio.h:380
sdio_type::dtlen_bit
struct sdio_type::@566::@592 dtlen_bit
sdio_type::pwrctrl_bit
struct sdio_type::@546::@582 pwrctrl_bit
sdio_type::inten
__IO uint32_t inten
Definition: at32f403_sdio.h:499
sdio_type::clkctrl_bit
struct sdio_type::@548::@583 clkctrl_bit
sdio_type::pndwt
__IO uint32_t pndwt
Definition: at32f403_sdio.h:307
sdio_type::cmdctrl
__IO uint32_t cmdctrl
Definition: at32f403_sdio.h:301
sdio_type::clkoen
__IO uint32_t clkoen
Definition: at32f403_sdio.h:273
sdio_type::ioen
__IO uint32_t ioen
Definition: at32f403_sdio.h:416
sdio_type::bufcnt
__IO uint32_t bufcnt
Definition: at32f403_sdio.h:539
sdio_type::intwt
__IO uint32_t intwt
Definition: at32f403_sdio.h:306
sdio_type::rsp2
__IO uint32_t rsp2
Definition: at32f403_sdio.h:344
sdio_type::dtctrl
__IO uint32_t dtctrl
Definition: at32f403_sdio.h:405
sdio_type::ccsmen
__IO uint32_t ccsmen
Definition: at32f403_sdio.h:308
sdio_type::pwrsven
__IO uint32_t pwrsven
Definition: at32f403_sdio.h:274
sdio_type::cmdidx
__IO uint32_t cmdidx
Definition: at32f403_sdio.h:304
sdio_type::pwrctrl
__IO uint32_t pwrctrl
Definition: at32f403_sdio.h:256
sdio_type::dmaen
__IO uint32_t dmaen
Definition: at32f403_sdio.h:411
sdio_type::sts
__IO uint32_t sts
Definition: at32f403_sdio.h:439
sdio_type::blksize
__IO uint32_t blksize
Definition: at32f403_sdio.h:412
sdio_type::rdwtmode
__IO uint32_t rdwtmode
Definition: at32f403_sdio.h:415
sdio_type::rsp1
__IO uint32_t rsp1
Definition: at32f403_sdio.h:332
sdio_type::rsp4
__IO uint32_t rsp4
Definition: at32f403_sdio.h:368
sdio_type::bypsen
__IO uint32_t bypsen
Definition: at32f403_sdio.h:275
sdio_type::buf
__IO uint32_t buf
Definition: at32f403_sdio.h:557
sdio_type::clkdiv_l
__IO uint32_t clkdiv_l
Definition: at32f403_sdio.h:272
sdio_type::dttmr_bit
struct sdio_type::@564::@591 dttmr_bit
sdio_type::rspcmd_bit
struct sdio_type::@554::@586 rspcmd_bit
sdio_type::rspcmd
__IO uint32_t rspcmd
Definition: at32f403_sdio.h:319
sdio_type::argu
__IO uint32_t argu
Definition: at32f403_sdio.h:289
sdio_type::timeout
__IO uint32_t timeout
Definition: at32f403_sdio.h:383
sdio_type::busws
__IO uint32_t busws
Definition: at32f403_sdio.h:276
sdio_type::dtcnt
__IO uint32_t dtcnt
Definition: at32f403_sdio.h:426
sdio_type::clkdiv_h
__IO uint32_t clkdiv_h
Definition: at32f403_sdio.h:279
sdio_type::iosusp
__IO uint32_t iosusp
Definition: at32f403_sdio.h:309
sdio_type::clkctrl
__IO uint32_t clkctrl
Definition: at32f403_sdio.h:269
sdio_type::rsp3
__IO uint32_t rsp3
Definition: at32f403_sdio.h:356
sdio_type::cmdctrl_bit
struct sdio_type::@552::@585 cmdctrl_bit
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_sdio.h Source File

  • libraries
  • drivers
  • inc
at32f403_sdio.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_SDIO_H
27#define __AT32F403_SDIO_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define SDIO_CMDFAIL_INT ((uint32_t)0x00000001)
51#define SDIO_DTFAIL_INT ((uint32_t)0x00000002)
52#define SDIO_CMDTIMEOUT_INT ((uint32_t)0x00000004)
53#define SDIO_DTTIMEOUT_INT ((uint32_t)0x00000008)
54#define SDIO_TXERRU_INT ((uint32_t)0x00000010)
55#define SDIO_RXERRO_INT ((uint32_t)0x00000020)
56#define SDIO_CMDRSPCMPL_INT ((uint32_t)0x00000040)
57#define SDIO_CMDCMPL_INT ((uint32_t)0x00000080)
58#define SDIO_DTCMP_INT ((uint32_t)0x00000100)
59#define SDIO_SBITERR_INT ((uint32_t)0x00000200)
60#define SDIO_DTBLKCMPL_INT ((uint32_t)0x00000400)
61#define SDIO_DOCMD_INT ((uint32_t)0x00000800)
62#define SDIO_DOTX_INT ((uint32_t)0x00001000)
63#define SDIO_DORX_INT ((uint32_t)0x00002000)
64#define SDIO_TXBUFH_INT ((uint32_t)0x00004000)
65#define SDIO_RXBUFH_INT ((uint32_t)0x00008000)
66#define SDIO_TXBUFF_INT ((uint32_t)0x00010000)
67#define SDIO_RXBUFF_INT ((uint32_t)0x00020000)
68#define SDIO_TXBUFE_INT ((uint32_t)0x00040000)
69#define SDIO_RXBUFE_INT ((uint32_t)0x00080000)
70#define SDIO_TXBUF_INT ((uint32_t)0x00100000)
71#define SDIO_RXBUF_INT ((uint32_t)0x00200000)
72#define SDIO_SDIOIF_INT ((uint32_t)0x00400000)
83#define SDIO_CMDFAIL_FLAG ((uint32_t)0x00000001)
84#define SDIO_DTFAIL_FLAG ((uint32_t)0x00000002)
85#define SDIO_CMDTIMEOUT_FLAG ((uint32_t)0x00000004)
86#define SDIO_DTTIMEOUT_FLAG ((uint32_t)0x00000008)
87#define SDIO_TXERRU_FLAG ((uint32_t)0x00000010)
88#define SDIO_RXERRO_FLAG ((uint32_t)0x00000020)
89#define SDIO_CMDRSPCMPL_FLAG ((uint32_t)0x00000040)
90#define SDIO_CMDCMPL_FLAG ((uint32_t)0x00000080)
91#define SDIO_DTCMPL_FLAG ((uint32_t)0x00000100)
92#define SDIO_SBITERR_FLAG ((uint32_t)0x00000200)
93#define SDIO_DTBLKCMPL_FLAG ((uint32_t)0x00000400)
94#define SDIO_DOCMD_FLAG ((uint32_t)0x00000800)
95#define SDIO_DOTX_FLAG ((uint32_t)0x00001000)
96#define SDIO_DORX_FLAG ((uint32_t)0x00002000)
97#define SDIO_TXBUFH_FLAG ((uint32_t)0x00004000)
98#define SDIO_RXBUFH_FLAG ((uint32_t)0x00008000)
99#define SDIO_TXBUFF_FLAG ((uint32_t)0x00010000)
100#define SDIO_RXBUFF_FLAG ((uint32_t)0x00020000)
101#define SDIO_TXBUFE_FLAG ((uint32_t)0x00040000)
102#define SDIO_RXBUFE_FLAG ((uint32_t)0x00080000)
103#define SDIO_TXBUF_FLAG ((uint32_t)0x00100000)
104#define SDIO_RXBUF_FLAG ((uint32_t)0x00200000)
105#define SDIO_SDIOIF_FLAG ((uint32_t)0x00400000)
118typedef enum
119{
120 SDIO_POWER_OFF = 0x00,
121 SDIO_POWER_ON = 0x03
122} sdio_power_state_type;
123
127typedef enum
128{
129 SDIO_CLOCK_EDGE_RISING = 0x00,
130 SDIO_CLOCK_EDGE_FALLING = 0x01
131} sdio_edge_phase_type;
132
136typedef enum
137{
138 SDIO_BUS_WIDTH_D1 = 0x00,
139 SDIO_BUS_WIDTH_D4 = 0x01,
140 SDIO_BUS_WIDTH_D8 = 0x02
141} sdio_bus_width_type;
142
146typedef enum
147{
148 SDIO_RESPONSE_NO = 0x00,
149 SDIO_RESPONSE_SHORT = 0x01,
150 SDIO_RESPONSE_LONG = 0x03
151} sdio_reponse_type;
152
156typedef enum
157{
158 SDIO_WAIT_FOR_NO = 0x00,
159 SDIO_WAIT_FOR_INT = 0x01,
160 SDIO_WAIT_FOR_PEND = 0x02
161} sdio_wait_type;
162
166typedef enum
167{
168 SDIO_RSP1_INDEX = 0x00,
169 SDIO_RSP2_INDEX = 0x01,
170 SDIO_RSP3_INDEX = 0x02,
171 SDIO_RSP4_INDEX = 0x03
172} sdio_rsp_index_type;
173
177typedef enum
178{
179 SDIO_DATA_BLOCK_SIZE_1B = 0x00,
180 SDIO_DATA_BLOCK_SIZE_2B = 0x01,
181 SDIO_DATA_BLOCK_SIZE_4B = 0x02,
182 SDIO_DATA_BLOCK_SIZE_8B = 0x03,
183 SDIO_DATA_BLOCK_SIZE_16B = 0x04,
184 SDIO_DATA_BLOCK_SIZE_32B = 0x05,
185 SDIO_DATA_BLOCK_SIZE_64B = 0x06,
186 SDIO_DATA_BLOCK_SIZE_128B = 0x07,
187 SDIO_DATA_BLOCK_SIZE_256B = 0x08,
188 SDIO_DATA_BLOCK_SIZE_512B = 0x09,
189 SDIO_DATA_BLOCK_SIZE_1024B = 0x0A,
190 SDIO_DATA_BLOCK_SIZE_2048B = 0x0B,
191 SDIO_DATA_BLOCK_SIZE_4096B = 0x0C,
192 SDIO_DATA_BLOCK_SIZE_8192B = 0x0D,
193 SDIO_DATA_BLOCK_SIZE_16384B = 0x0E
194} sdio_block_size_type;
195
199typedef enum
200{
201 SDIO_DATA_BLOCK_TRANSFER = 0x00,
202 SDIO_DATA_STREAM_TRANSFER = 0x01
203} sdio_transfer_mode_type;
204
208typedef enum
209{
210 SDIO_DATA_TRANSFER_TO_CARD = 0x00,
211 SDIO_DATA_TRANSFER_TO_CONTROLLER = 0x01
212} sdio_transfer_direction_type;
213
217typedef enum
218{
219 SDIO_READ_WAIT_CONTROLLED_BY_D2 = 0x00,
220 SDIO_READ_WAIT_CONTROLLED_BY_CK = 0x01
221} sdio_read_wait_mode_type;
222
226typedef struct
227{
228 uint32_t argument;
229 uint8_t cmd_index;
230 sdio_reponse_type rsp_type;
231 sdio_wait_type wait_type;
232} sdio_command_struct_type;
233
237typedef struct
238{
239 uint32_t timeout;
240 uint32_t data_length;
241 sdio_block_size_type block_size;
242 sdio_transfer_mode_type transfer_mode;
243 sdio_transfer_direction_type transfer_direction;
244} sdio_data_struct_type;
245
249typedef struct
250{
254 union
255 {
256 __IO uint32_t pwrctrl;
257 struct
258 {
259 __IO uint32_t ps : 2; /* [1:0] */
260 __IO uint32_t reserved1 : 30;/* [31:2] */
261 } pwrctrl_bit;
262 };
263
267 union
268 {
269 __IO uint32_t clkctrl;
270 struct
271 {
272 __IO uint32_t clkdiv_l : 8; /* [7:0] */
273 __IO uint32_t clkoen : 1; /* [8] */
274 __IO uint32_t pwrsven : 1; /* [9] */
275 __IO uint32_t bypsen : 1; /* [10] */
276 __IO uint32_t busws : 2; /* [12:11] */
277 __IO uint32_t clkegs : 1; /* [13] */
278 __IO uint32_t hfcen : 1; /* [14] */
279 __IO uint32_t clkdiv_h : 2; /* [16:15] */
280 __IO uint32_t reserved1 : 15;/* [31:17] */
281 } clkctrl_bit;
282 };
283
287 union
288 {
289 __IO uint32_t argu;
290 struct
291 {
292 __IO uint32_t argu : 32;/* [31:0] */
293 } argu_bit;
294 };
295
299 union
300 {
301 __IO uint32_t cmdctrl;
302 struct
303 {
304 __IO uint32_t cmdidx : 6; /* [5:0] */
305 __IO uint32_t rspwt : 2; /* [7:6] */
306 __IO uint32_t intwt : 1; /* [8] */
307 __IO uint32_t pndwt : 1; /* [9] */
308 __IO uint32_t ccsmen : 1; /* [10] */
309 __IO uint32_t iosusp : 1; /* [11] */
310 __IO uint32_t reserved1 : 20;/* [31:12] */
311 } cmdctrl_bit;
312 };
313
317 union
318 {
319 __IO uint32_t rspcmd;
320 struct
321 {
322 __IO uint32_t rspcmd : 6; /* [5:0] */
323 __IO uint32_t reserved1 : 26;/* [31:6] */
324 } rspcmd_bit;
325 };
326
330 union
331 {
332 __IO uint32_t rsp1;
333 struct
334 {
335 __IO uint32_t cardsts1 : 32;/* [31:0] */
336 } rsp1_bit;
337 };
338
342 union
343 {
344 __IO uint32_t rsp2;
345 struct
346 {
347 __IO uint32_t cardsts2 : 32;/* [31:0] */
348 } rsp2_bit;
349 };
350
354 union
355 {
356 __IO uint32_t rsp3;
357 struct
358 {
359 __IO uint32_t cardsts3 : 32;/* [31:0] */
360 } rsp3_bit;
361 };
362
366 union
367 {
368 __IO uint32_t rsp4;
369 struct
370 {
371 __IO uint32_t cardsts4 : 32;/* [31:0] */
372 } rsp4_bit;
373 };
374
378 union
379 {
380 __IO uint32_t dttmr;
381 struct
382 {
383 __IO uint32_t timeout : 32;/* [31:0] */
384 } dttmr_bit;
385 };
386
390 union
391 {
392 __IO uint32_t dtlen;
393 struct
394 {
395 __IO uint32_t dtlen : 25;/* [24:0] */
396 __IO uint32_t reserved1 : 7; /* [31:25] */
397 } dtlen_bit;
398 };
399
403 union
404 {
405 __IO uint32_t dtctrl;
406 struct
407 {
408 __IO uint32_t tfren : 1; /* [0] */
409 __IO uint32_t tfrdir : 1; /* [1] */
410 __IO uint32_t tfrmode : 1; /* [2] */
411 __IO uint32_t dmaen : 1; /* [3] */
412 __IO uint32_t blksize : 4; /* [7:4] */
413 __IO uint32_t rdwtstart : 1; /* [8] */
414 __IO uint32_t rdwtstop : 1; /* [9] */
415 __IO uint32_t rdwtmode : 1; /* [10] */
416 __IO uint32_t ioen : 1; /* [11] */
417 __IO uint32_t reserved1 : 20;/* [31:12] */
418 } dtctrl_bit;
419 };
420
424 union
425 {
426 __IO uint32_t dtcnt;
427 struct
428 {
429 __IO uint32_t cnt : 25;/* [24:0] */
430 __IO uint32_t reserved1 : 7; /* [31:25] */
431 } dtcnt_bit;
432 };
433
437 union
438 {
439 __IO uint32_t sts;
440 struct
441 {
442 __IO uint32_t cmdfail : 1; /* [0] */
443 __IO uint32_t dtfail : 1; /* [1] */
444 __IO uint32_t cmdtimeout : 1; /* [2] */
445 __IO uint32_t dttimeout : 1; /* [3] */
446 __IO uint32_t txerru : 1; /* [4] */
447 __IO uint32_t rxerro : 1; /* [5] */
448 __IO uint32_t cmdrspcmpl : 1; /* [6] */
449 __IO uint32_t cmdcmpl : 1; /* [7] */
450 __IO uint32_t dtcmpl : 1; /* [8] */
451 __IO uint32_t sbiterr : 1; /* [9] */
452 __IO uint32_t dtblkcmpl : 1; /* [10] */
453 __IO uint32_t docmd : 1; /* [11] */
454 __IO uint32_t dotx : 1; /* [12] */
455 __IO uint32_t dorx : 1; /* [13] */
456 __IO uint32_t txbufh : 1; /* [14] */
457 __IO uint32_t rxbufh : 1; /* [15] */
458 __IO uint32_t txbuff : 1; /* [16] */
459 __IO uint32_t rxbuff : 1; /* [17] */
460 __IO uint32_t txbufe : 1; /* [18] */
461 __IO uint32_t rxbufe : 1; /* [19] */
462 __IO uint32_t txbuf : 1; /* [20] */
463 __IO uint32_t rxbuf : 1; /* [21] */
464 __IO uint32_t ioif : 1; /* [22] */
465 __IO uint32_t reserved1 : 9; /* [31:23] */
466 } sts_bit;
467 };
468
472 union
473 {
474 __IO uint32_t intclr;
475 struct
476 {
477 __IO uint32_t cmdfail : 1; /* [0] */
478 __IO uint32_t dtfail : 1; /* [1] */
479 __IO uint32_t cmdtimeout : 1; /* [2] */
480 __IO uint32_t dttimeout : 1; /* [3] */
481 __IO uint32_t txerru : 1; /* [4] */
482 __IO uint32_t rxerro : 1; /* [5] */
483 __IO uint32_t cmdrspcmpl : 1; /* [6] */
484 __IO uint32_t cmdcmpl : 1; /* [7] */
485 __IO uint32_t dtcmpl : 1; /* [8] */
486 __IO uint32_t sbiterr : 1; /* [9] */
487 __IO uint32_t dtblkcmpl : 1; /* [10] */
488 __IO uint32_t reserved1 : 11;/* [21:11] */
489 __IO uint32_t ioif : 1; /* [22] */
490 __IO uint32_t reserved2 : 9; /* [31:23] */
491 } intclr_bit;
492 };
493
497 union
498 {
499 __IO uint32_t inten;
500 struct
501 {
502 __IO uint32_t cmdfailien : 1; /* [0] */
503 __IO uint32_t dtfailien : 1; /* [1] */
504 __IO uint32_t cmdtimeoutien : 1; /* [2] */
505 __IO uint32_t dttimeoutien : 1; /* [3] */
506 __IO uint32_t txerruien : 1; /* [4] */
507 __IO uint32_t rxerroien : 1; /* [5] */
508 __IO uint32_t cmdrspcmplien : 1; /* [6] */
509 __IO uint32_t cmdcmplien : 1; /* [7] */
510 __IO uint32_t dtcmplien : 1; /* [8] */
511 __IO uint32_t sbiterrien : 1; /* [9] */
512 __IO uint32_t dtblkcmplien : 1; /* [10] */
513 __IO uint32_t docmdien : 1; /* [11] */
514 __IO uint32_t dotxien : 1; /* [12] */
515 __IO uint32_t dorxien : 1; /* [13] */
516 __IO uint32_t txbufhien : 1; /* [14] */
517 __IO uint32_t rxbufhien : 1; /* [15] */
518 __IO uint32_t txbuffien : 1; /* [16] */
519 __IO uint32_t rxbuffien : 1; /* [17] */
520 __IO uint32_t txbufeien : 1; /* [18] */
521 __IO uint32_t rxbufeien : 1; /* [19] */
522 __IO uint32_t txbufien : 1; /* [20] */
523 __IO uint32_t rxbufien : 1; /* [21] */
524 __IO uint32_t ioifien : 1; /* [22] */
525 __IO uint32_t reserved1 : 9; /* [31:23] */
526 } inten_bit;
527 };
528
532 __IO uint32_t reserved1[2];
533
537 union
538 {
539 __IO uint32_t bufcnt;
540 struct
541 {
542 __IO uint32_t cnt : 24;/* [23:0] */
543 __IO uint32_t reserved1 : 8; /* [31:24] */
544 } bufcnt_bit;
545 };
546
550 __IO uint32_t reserved2[13];
551
555 union
556 {
557 __IO uint32_t buf;
558 struct
559 {
560 __IO uint32_t dt : 32;/* [31:0] */
561 } buf_bit;
562 };
563
564} sdio_type;
565
569#if defined (AT32F403Zx) || defined (AT32F403Vx) || defined (AT32F403Rx)
570#define SDIO1 ((sdio_type *) SDIO1_BASE)
571#endif
572#define SDIO2 ((sdio_type *) SDIO2_BASE)
573
578void sdio_reset(sdio_type *sdio_x);
579void sdio_power_set(sdio_type *sdio_x, sdio_power_state_type power_state);
580 sdio_power_state_type sdio_power_status_get(sdio_type *sdio_x);
581void sdio_clock_config(sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg);
582void sdio_bus_width_config(sdio_type *sdio_x, sdio_bus_width_type width);
583void sdio_clock_bypass(sdio_type *sdio_x, confirm_state new_state);
584void sdio_power_saving_mode_enable(sdio_type *sdio_x, confirm_state new_state);
585void sdio_flow_control_enable(sdio_type *sdio_x, confirm_state new_state);
586void sdio_clock_enable(sdio_type *sdio_x, confirm_state new_state);
587void sdio_dma_enable(sdio_type *sdio_x, confirm_state new_state);
588void sdio_interrupt_enable(sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state);
589 flag_status sdio_flag_get(sdio_type *sdio_x, uint32_t flag);
590 flag_status sdio_interrupt_flag_get(sdio_type *sdio_x, uint32_t flag);
591void sdio_flag_clear(sdio_type *sdio_x, uint32_t flag);
592void sdio_command_config(sdio_type *sdio_x, sdio_command_struct_type *command_struct);
593void sdio_command_state_machine_enable(sdio_type *sdio_x, confirm_state new_state);
594uint8_t sdio_command_response_get(sdio_type *sdio_x);
595uint32_t sdio_response_get(sdio_type *sdio_x, sdio_rsp_index_type reg_index);
596void sdio_data_config(sdio_type *sdio_x, sdio_data_struct_type *data_struct);
597void sdio_data_state_machine_enable(sdio_type *sdio_x, confirm_state new_state);
598uint32_t sdio_data_counter_get(sdio_type *sdio_x);
599uint32_t sdio_data_read(sdio_type *sdio_x);
600uint32_t sdio_buffer_counter_get(sdio_type *sdio_x);
601void sdio_data_write(sdio_type *sdio_x, uint32_t data);
602void sdio_read_wait_mode_set(sdio_type *sdio_x, sdio_read_wait_mode_type mode);
603void sdio_read_wait_start(sdio_type *sdio_x, confirm_state new_state);
604void sdio_read_wait_stop(sdio_type *sdio_x, confirm_state new_state);
605void sdio_io_function_enable(sdio_type *sdio_x, confirm_state new_state);
606void sdio_io_suspend_command_set(sdio_type *sdio_x, confirm_state new_state);
607
620#ifdef __cplusplus
621}
622#endif
623
624#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
sdio_command_config
void sdio_command_config(sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command.
Definition: at32f403_sdio.c:371
sdio_data_write
void sdio_data_write(sdio_type *sdio_x, uint32_t data)
write one word data to fifo.
Definition: at32f403_sdio.c:532
sdio_io_suspend_command_set
void sdio_io_suspend_command_set(sdio_type *sdio_x, confirm_state new_state)
enable or disable sd i/o suspend command sending.
Definition: at32f403_sdio.c:600
sdio_data_config
void sdio_data_config(sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data.
Definition: at32f403_sdio.c:458
sdio_data_read
uint32_t sdio_data_read(sdio_type *sdio_x)
read a word data from sdio fifo.
Definition: at32f403_sdio.c:507
sdio_io_function_enable
void sdio_io_function_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable the sd i/o function.
Definition: at32f403_sdio.c:587
sdio_command_state_machine_enable
void sdio_command_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM).
Definition: at32f403_sdio.c:394
sdio_clock_bypass
void sdio_clock_bypass(sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss
Definition: at32f403_sdio.c:139
sdio_flow_control_enable
void sdio_flow_control_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control.
Definition: at32f403_sdio.c:166
sdio_power_set
void sdio_power_set(sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller
Definition: at32f403_sdio.c:73
sdio_clock_config
void sdio_clock_config(sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock
Definition: at32f403_sdio.c:102
sdio_bus_width_config
void sdio_bus_width_config(sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width
Definition: at32f403_sdio.c:126
sdio_read_wait_stop
void sdio_read_wait_stop(sdio_type *sdio_x, confirm_state new_state)
enable or disable to stop sd i/o read wait operation.
Definition: at32f403_sdio.c:574
sdio_interrupt_enable
void sdio_interrupt_enable(sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt.
Definition: at32f403_sdio.c:230
sdio_flag_clear
void sdio_flag_clear(sdio_type *sdio_x, uint32_t flag)
clear sdio flag.
Definition: at32f403_sdio.c:357
sdio_power_status_get
sdio_power_state_type sdio_power_status_get(sdio_type *sdio_x)
get power status.
Definition: at32f403_sdio.c:85
sdio_response_get
uint32_t sdio_response_get(sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command.
Definition: at32f403_sdio.c:425
sdio_data_state_machine_enable
void sdio_data_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM).
Definition: at32f403_sdio.c:483
sdio_power_saving_mode_enable
void sdio_power_saving_mode_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle.
Definition: at32f403_sdio.c:153
sdio_flag_get
flag_status sdio_flag_get(sdio_type *sdio_x, uint32_t flag)
get sdio flag.
Definition: at32f403_sdio.c:320
sdio_dma_enable
void sdio_dma_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable dma.
Definition: at32f403_sdio.c:192
sdio_data_counter_get
uint32_t sdio_data_counter_get(sdio_type *sdio_x)
get the number of remaining data bytes to be transferred.
Definition: at32f403_sdio.c:495
sdio_buffer_counter_get
uint32_t sdio_buffer_counter_get(sdio_type *sdio_x)
get the number of words left to be written to or read from fifo..
Definition: at32f403_sdio.c:519
sdio_read_wait_start
void sdio_read_wait_start(sdio_type *sdio_x, confirm_state new_state)
enable or disable to start sd i/o read wait operation.
Definition: at32f403_sdio.c:561
sdio_reset
void sdio_reset(sdio_type *sdio_x)
reset the sdio register
Definition: at32f403_sdio.c:49
sdio_interrupt_flag_get
flag_status sdio_interrupt_flag_get(sdio_type *sdio_x, uint32_t flag)
get sdio interrupt flag.
Definition: at32f403_sdio.c:276
sdio_read_wait_mode_set
void sdio_read_wait_mode_set(sdio_type *sdio_x, sdio_read_wait_mode_type mode)
set the read wait mode.
Definition: at32f403_sdio.c:548
sdio_clock_enable
void sdio_clock_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output.
Definition: at32f403_sdio.c:179
sdio_command_response_get
uint8_t sdio_command_response_get(sdio_type *sdio_x)
get command index of last command for which response received.
Definition: at32f403_sdio.c:407
sdio_wait_type
sdio_wait_type
sdio wait type
Definition: at32f403_sdio.h:157
sdio_reponse_type
sdio_reponse_type
sdio response type
Definition: at32f403_sdio.h:147
sdio_read_wait_mode_type
sdio_read_wait_mode_type
sdio read wait mode
Definition: at32f403_sdio.h:218
sdio_edge_phase_type
sdio_edge_phase_type
sdio edge phase
Definition: at32f403_sdio.h:128
sdio_transfer_direction_type
sdio_transfer_direction_type
sdio data transfer direction
Definition: at32f403_sdio.h:209
sdio_power_state_type
sdio_power_state_type
sdio power state
Definition: at32f403_sdio.h:119
sdio_transfer_mode_type
sdio_transfer_mode_type
sdio data transfer mode
Definition: at32f403_sdio.h:200
sdio_bus_width_type
sdio_bus_width_type
sdio bus width
Definition: at32f403_sdio.h:137
sdio_rsp_index_type
sdio_rsp_index_type
sdio response register index
Definition: at32f403_sdio.h:167
sdio_block_size_type
sdio_block_size_type
sdio data block size
Definition: at32f403_sdio.h:178
SDIO_WAIT_FOR_NO
@ SDIO_WAIT_FOR_NO
Definition: at32f403_sdio.h:158
SDIO_WAIT_FOR_PEND
@ SDIO_WAIT_FOR_PEND
Definition: at32f403_sdio.h:160
SDIO_WAIT_FOR_INT
@ SDIO_WAIT_FOR_INT
Definition: at32f403_sdio.h:159
SDIO_RESPONSE_LONG
@ SDIO_RESPONSE_LONG
Definition: at32f403_sdio.h:150
SDIO_RESPONSE_SHORT
@ SDIO_RESPONSE_SHORT
Definition: at32f403_sdio.h:149
SDIO_RESPONSE_NO
@ SDIO_RESPONSE_NO
Definition: at32f403_sdio.h:148
SDIO_READ_WAIT_CONTROLLED_BY_CK
@ SDIO_READ_WAIT_CONTROLLED_BY_CK
Definition: at32f403_sdio.h:220
SDIO_READ_WAIT_CONTROLLED_BY_D2
@ SDIO_READ_WAIT_CONTROLLED_BY_D2
Definition: at32f403_sdio.h:219
SDIO_CLOCK_EDGE_FALLING
@ SDIO_CLOCK_EDGE_FALLING
Definition: at32f403_sdio.h:130
SDIO_CLOCK_EDGE_RISING
@ SDIO_CLOCK_EDGE_RISING
Definition: at32f403_sdio.h:129
SDIO_DATA_TRANSFER_TO_CARD
@ SDIO_DATA_TRANSFER_TO_CARD
Definition: at32f403_sdio.h:210
SDIO_DATA_TRANSFER_TO_CONTROLLER
@ SDIO_DATA_TRANSFER_TO_CONTROLLER
Definition: at32f403_sdio.h:211
SDIO_POWER_OFF
@ SDIO_POWER_OFF
Definition: at32f403_sdio.h:120
SDIO_POWER_ON
@ SDIO_POWER_ON
Definition: at32f403_sdio.h:121
SDIO_DATA_BLOCK_TRANSFER
@ SDIO_DATA_BLOCK_TRANSFER
Definition: at32f403_sdio.h:201
SDIO_DATA_STREAM_TRANSFER
@ SDIO_DATA_STREAM_TRANSFER
Definition: at32f403_sdio.h:202
SDIO_BUS_WIDTH_D8
@ SDIO_BUS_WIDTH_D8
Definition: at32f403_sdio.h:140
SDIO_BUS_WIDTH_D1
@ SDIO_BUS_WIDTH_D1
Definition: at32f403_sdio.h:138
SDIO_BUS_WIDTH_D4
@ SDIO_BUS_WIDTH_D4
Definition: at32f403_sdio.h:139
SDIO_RSP3_INDEX
@ SDIO_RSP3_INDEX
Definition: at32f403_sdio.h:170
SDIO_RSP2_INDEX
@ SDIO_RSP2_INDEX
Definition: at32f403_sdio.h:169
SDIO_RSP4_INDEX
@ SDIO_RSP4_INDEX
Definition: at32f403_sdio.h:171
SDIO_RSP1_INDEX
@ SDIO_RSP1_INDEX
Definition: at32f403_sdio.h:168
SDIO_DATA_BLOCK_SIZE_8B
@ SDIO_DATA_BLOCK_SIZE_8B
Definition: at32f403_sdio.h:182
SDIO_DATA_BLOCK_SIZE_128B
@ SDIO_DATA_BLOCK_SIZE_128B
Definition: at32f403_sdio.h:186
SDIO_DATA_BLOCK_SIZE_2048B
@ SDIO_DATA_BLOCK_SIZE_2048B
Definition: at32f403_sdio.h:190
SDIO_DATA_BLOCK_SIZE_4096B
@ SDIO_DATA_BLOCK_SIZE_4096B
Definition: at32f403_sdio.h:191
SDIO_DATA_BLOCK_SIZE_16B
@ SDIO_DATA_BLOCK_SIZE_16B
Definition: at32f403_sdio.h:183
SDIO_DATA_BLOCK_SIZE_1024B
@ SDIO_DATA_BLOCK_SIZE_1024B
Definition: at32f403_sdio.h:189
SDIO_DATA_BLOCK_SIZE_64B
@ SDIO_DATA_BLOCK_SIZE_64B
Definition: at32f403_sdio.h:185
SDIO_DATA_BLOCK_SIZE_32B
@ SDIO_DATA_BLOCK_SIZE_32B
Definition: at32f403_sdio.h:184
SDIO_DATA_BLOCK_SIZE_8192B
@ SDIO_DATA_BLOCK_SIZE_8192B
Definition: at32f403_sdio.h:192
SDIO_DATA_BLOCK_SIZE_1B
@ SDIO_DATA_BLOCK_SIZE_1B
Definition: at32f403_sdio.h:179
SDIO_DATA_BLOCK_SIZE_512B
@ SDIO_DATA_BLOCK_SIZE_512B
Definition: at32f403_sdio.h:188
SDIO_DATA_BLOCK_SIZE_2B
@ SDIO_DATA_BLOCK_SIZE_2B
Definition: at32f403_sdio.h:180
SDIO_DATA_BLOCK_SIZE_256B
@ SDIO_DATA_BLOCK_SIZE_256B
Definition: at32f403_sdio.h:187
SDIO_DATA_BLOCK_SIZE_4B
@ SDIO_DATA_BLOCK_SIZE_4B
Definition: at32f403_sdio.h:181
SDIO_DATA_BLOCK_SIZE_16384B
@ SDIO_DATA_BLOCK_SIZE_16384B
Definition: at32f403_sdio.h:193
sdio_command_struct_type
sdio command structure
Definition: at32f403_sdio.h:227
sdio_command_struct_type::cmd_index
uint8_t cmd_index
Definition: at32f403_sdio.h:229
sdio_command_struct_type::argument
uint32_t argument
Definition: at32f403_sdio.h:228
sdio_command_struct_type::wait_type
sdio_wait_type wait_type
Definition: at32f403_sdio.h:231
sdio_command_struct_type::rsp_type
sdio_reponse_type rsp_type
Definition: at32f403_sdio.h:230
sdio_data_struct_type
sdio data structure
Definition: at32f403_sdio.h:238
sdio_data_struct_type::block_size
sdio_block_size_type block_size
Definition: at32f403_sdio.h:241
sdio_data_struct_type::transfer_direction
sdio_transfer_direction_type transfer_direction
Definition: at32f403_sdio.h:243
sdio_data_struct_type::timeout
uint32_t timeout
Definition: at32f403_sdio.h:239
sdio_data_struct_type::transfer_mode
sdio_transfer_mode_type transfer_mode
Definition: at32f403_sdio.h:242
sdio_data_struct_type::data_length
uint32_t data_length
Definition: at32f403_sdio.h:240
sdio_type
type define sdio register all
Definition: at32f403_sdio.h:250
sdio_type::ps
__IO uint32_t ps
Definition: at32f403_sdio.h:259
sdio_type::dorx
__IO uint32_t dorx
Definition: at32f403_sdio.h:455
sdio_type::sbiterr
__IO uint32_t sbiterr
Definition: at32f403_sdio.h:451
sdio_type::dtlen
__IO uint32_t dtlen
Definition: at32f403_sdio.h:392
sdio_type::intclr
__IO uint32_t intclr
Definition: at32f403_sdio.h:474
sdio_type::rdwtstart
__IO uint32_t rdwtstart
Definition: at32f403_sdio.h:413
sdio_type::rdwtstop
__IO uint32_t rdwtstop
Definition: at32f403_sdio.h:414
sdio_type::rspwt
__IO uint32_t rspwt
Definition: at32f403_sdio.h:305
sdio_type::rxbuf
__IO uint32_t rxbuf
Definition: at32f403_sdio.h:463
sdio_type::hfcen
__IO uint32_t hfcen
Definition: at32f403_sdio.h:278
sdio_type::rxbufeien
__IO uint32_t rxbufeien
Definition: at32f403_sdio.h:521
sdio_type::tfrmode
__IO uint32_t tfrmode
Definition: at32f403_sdio.h:410
sdio_type::cmdtimeout
__IO uint32_t cmdtimeout
Definition: at32f403_sdio.h:444
sdio_type::clkegs
__IO uint32_t clkegs
Definition: at32f403_sdio.h:277
sdio_type::cmdcmplien
__IO uint32_t cmdcmplien
Definition: at32f403_sdio.h:509
sdio_type::cmdcmpl
__IO uint32_t cmdcmpl
Definition: at32f403_sdio.h:449
sdio_type::dtfailien
__IO uint32_t dtfailien
Definition: at32f403_sdio.h:503
sdio_type::rxbufhien
__IO uint32_t rxbufhien
Definition: at32f403_sdio.h:517
sdio_type::tfrdir
__IO uint32_t tfrdir
Definition: at32f403_sdio.h:409
sdio_type::tfren
__IO uint32_t tfren
Definition: at32f403_sdio.h:408
sdio_type::dttmr
__IO uint32_t dttmr
Definition: at32f403_sdio.h:380
sdio_type::reserved1
__IO uint32_t reserved1
sdio reserved1 register, offset:0x40~0x44
Definition: at32f403_sdio.h:260
sdio_type::cnt
__IO uint32_t cnt
Definition: at32f403_sdio.h:429
sdio_type::cardsts4
__IO uint32_t cardsts4
Definition: at32f403_sdio.h:371
sdio_type::cmdfail
__IO uint32_t cmdfail
Definition: at32f403_sdio.h:442
sdio_type::txbufhien
__IO uint32_t txbufhien
Definition: at32f403_sdio.h:516
sdio_type::txbuffien
__IO uint32_t txbuffien
Definition: at32f403_sdio.h:518
sdio_type::rxbufe
__IO uint32_t rxbufe
Definition: at32f403_sdio.h:461
sdio_type::dtblkcmpl
__IO uint32_t dtblkcmpl
Definition: at32f403_sdio.h:452
sdio_type::inten
__IO uint32_t inten
Definition: at32f403_sdio.h:499
sdio_type::dtcmpl
__IO uint32_t dtcmpl
Definition: at32f403_sdio.h:450
sdio_type::docmd
__IO uint32_t docmd
Definition: at32f403_sdio.h:453
sdio_type::pndwt
__IO uint32_t pndwt
Definition: at32f403_sdio.h:307
sdio_type::cmdctrl
__IO uint32_t cmdctrl
Definition: at32f403_sdio.h:301
sdio_type::dtcmplien
__IO uint32_t dtcmplien
Definition: at32f403_sdio.h:510
sdio_type::clkoen
__IO uint32_t clkoen
Definition: at32f403_sdio.h:273
sdio_type::ioen
__IO uint32_t ioen
Definition: at32f403_sdio.h:416
sdio_type::bufcnt
__IO uint32_t bufcnt
Definition: at32f403_sdio.h:539
sdio_type::intwt
__IO uint32_t intwt
Definition: at32f403_sdio.h:306
sdio_type::rsp2
__IO uint32_t rsp2
Definition: at32f403_sdio.h:344
sdio_type::dtctrl
__IO uint32_t dtctrl
Definition: at32f403_sdio.h:405
sdio_type::dtfail
__IO uint32_t dtfail
Definition: at32f403_sdio.h:443
sdio_type::docmdien
__IO uint32_t docmdien
Definition: at32f403_sdio.h:513
sdio_type::dotxien
__IO uint32_t dotxien
Definition: at32f403_sdio.h:514
sdio_type::dotx
__IO uint32_t dotx
Definition: at32f403_sdio.h:454
sdio_type::rxerroien
__IO uint32_t rxerroien
Definition: at32f403_sdio.h:507
sdio_type::ccsmen
__IO uint32_t ccsmen
Definition: at32f403_sdio.h:308
sdio_type::txerruien
__IO uint32_t txerruien
Definition: at32f403_sdio.h:506
sdio_type::dttimeoutien
__IO uint32_t dttimeoutien
Definition: at32f403_sdio.h:505
sdio_type::pwrsven
__IO uint32_t pwrsven
Definition: at32f403_sdio.h:274
sdio_type::cmdidx
__IO uint32_t cmdidx
Definition: at32f403_sdio.h:304
sdio_type::cardsts3
__IO uint32_t cardsts3
Definition: at32f403_sdio.h:359
sdio_type::cardsts1
__IO uint32_t cardsts1
Definition: at32f403_sdio.h:335
sdio_type::pwrctrl
__IO uint32_t pwrctrl
Definition: at32f403_sdio.h:256
sdio_type::ioifien
__IO uint32_t ioifien
Definition: at32f403_sdio.h:524
sdio_type::dmaen
__IO uint32_t dmaen
Definition: at32f403_sdio.h:411
sdio_type::reserved2
__IO uint32_t reserved2
sdio reserved2 register, offset:0x4C~0x7C
Definition: at32f403_sdio.h:490
sdio_type::dtblkcmplien
__IO uint32_t dtblkcmplien
Definition: at32f403_sdio.h:512
sdio_type::rxbuffien
__IO uint32_t rxbuffien
Definition: at32f403_sdio.h:519
sdio_type::txbufh
__IO uint32_t txbufh
Definition: at32f403_sdio.h:456
sdio_type::sts
__IO uint32_t sts
Definition: at32f403_sdio.h:439
sdio_type::blksize
__IO uint32_t blksize
Definition: at32f403_sdio.h:412
sdio_type::cardsts2
__IO uint32_t cardsts2
Definition: at32f403_sdio.h:347
sdio_type::rdwtmode
__IO uint32_t rdwtmode
Definition: at32f403_sdio.h:415
sdio_type::txbufeien
__IO uint32_t txbufeien
Definition: at32f403_sdio.h:520
sdio_type::ioif
__IO uint32_t ioif
Definition: at32f403_sdio.h:464
sdio_type::cmdrspcmplien
__IO uint32_t cmdrspcmplien
Definition: at32f403_sdio.h:508
sdio_type::rxbufien
__IO uint32_t rxbufien
Definition: at32f403_sdio.h:523
sdio_type::dttimeout
__IO uint32_t dttimeout
Definition: at32f403_sdio.h:445
sdio_type::rxbufh
__IO uint32_t rxbufh
Definition: at32f403_sdio.h:457
sdio_type::txbufien
__IO uint32_t txbufien
Definition: at32f403_sdio.h:522
sdio_type::rsp1
__IO uint32_t rsp1
Definition: at32f403_sdio.h:332
sdio_type::rxbuff
__IO uint32_t rxbuff
Definition: at32f403_sdio.h:459
sdio_type::rsp4
__IO uint32_t rsp4
Definition: at32f403_sdio.h:368
sdio_type::bypsen
__IO uint32_t bypsen
Definition: at32f403_sdio.h:275
sdio_type::txbufe
__IO uint32_t txbufe
Definition: at32f403_sdio.h:460
sdio_type::cmdfailien
__IO uint32_t cmdfailien
Definition: at32f403_sdio.h:502
sdio_type::buf
__IO uint32_t buf
Definition: at32f403_sdio.h:557
sdio_type::clkdiv_l
__IO uint32_t clkdiv_l
Definition: at32f403_sdio.h:272
sdio_type::txerru
__IO uint32_t txerru
Definition: at32f403_sdio.h:446
sdio_type::dorxien
__IO uint32_t dorxien
Definition: at32f403_sdio.h:515
sdio_type::dt
__IO uint32_t dt
Definition: at32f403_sdio.h:560
sdio_type::rspcmd
__IO uint32_t rspcmd
Definition: at32f403_sdio.h:319
sdio_type::argu
__IO uint32_t argu
Definition: at32f403_sdio.h:289
sdio_type::timeout
__IO uint32_t timeout
Definition: at32f403_sdio.h:383
sdio_type::cmdtimeoutien
__IO uint32_t cmdtimeoutien
Definition: at32f403_sdio.h:504
sdio_type::busws
__IO uint32_t busws
Definition: at32f403_sdio.h:276
sdio_type::dtcnt
__IO uint32_t dtcnt
Definition: at32f403_sdio.h:426
sdio_type::clkdiv_h
__IO uint32_t clkdiv_h
Definition: at32f403_sdio.h:279
sdio_type::iosusp
__IO uint32_t iosusp
Definition: at32f403_sdio.h:309
sdio_type::txbuff
__IO uint32_t txbuff
Definition: at32f403_sdio.h:458
sdio_type::cmdrspcmpl
__IO uint32_t cmdrspcmpl
Definition: at32f403_sdio.h:448
sdio_type::txbuf
__IO uint32_t txbuf
Definition: at32f403_sdio.h:462
sdio_type::clkctrl
__IO uint32_t clkctrl
Definition: at32f403_sdio.h:269
sdio_type::sbiterrien
__IO uint32_t sbiterrien
Definition: at32f403_sdio.h:511
sdio_type::rsp3
__IO uint32_t rsp3
Definition: at32f403_sdio.h:356
sdio_type::rxerro
__IO uint32_t rxerro
Definition: at32f403_sdio.h:447


AT32F403 Firmwary Library: at32f403_spi.c Source File

  • libraries
  • drivers
  • src
at32f403_spi.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef SPI_MODULE_ENABLED
37
49void spi_i2s_reset(spi_type *spi_x)
50{
51 if(spi_x == SPI1)
52 {
53 crm_periph_reset(CRM_SPI1_PERIPH_RESET, TRUE);
54 crm_periph_reset(CRM_SPI1_PERIPH_RESET, FALSE);
55 }
56 else if(spi_x == SPI2)
57 {
58 crm_periph_reset(CRM_SPI2_PERIPH_RESET, TRUE);
59 crm_periph_reset(CRM_SPI2_PERIPH_RESET, FALSE);
60 }
61 else if(spi_x == SPI3)
62 {
63 crm_periph_reset(CRM_SPI3_PERIPH_RESET, TRUE);
64 crm_periph_reset(CRM_SPI3_PERIPH_RESET, FALSE);
65 }
66#if defined (AT32F403Zx) || defined (AT32F403Vx)
67 else if(spi_x == SPI4)
68 {
69 crm_periph_reset(CRM_SPI4_PERIPH_RESET, TRUE);
70 crm_periph_reset(CRM_SPI4_PERIPH_RESET, FALSE);
71 }
72#endif
73}
74
81void spi_default_para_init(spi_init_type* spi_init_struct)
82{
83 spi_init_struct->transmission_mode = SPI_TRANSMIT_FULL_DUPLEX;
84 spi_init_struct->master_slave_mode = SPI_MODE_SLAVE;
85 spi_init_struct->mclk_freq_division = SPI_MCLK_DIV_2;
86 spi_init_struct->first_bit_transmission = SPI_FIRST_BIT_MSB;
87 spi_init_struct->frame_bit_num = SPI_FRAME_8BIT;
88 spi_init_struct->clock_polarity = SPI_CLOCK_POLARITY_LOW;
89 spi_init_struct->clock_phase = SPI_CLOCK_PHASE_1EDGE;
90 spi_init_struct->cs_mode_selection = SPI_CS_SOFTWARE_MODE;
91}
92
101void spi_init(spi_type* spi_x, spi_init_type* spi_init_struct)
102{
103 spi_x->i2sctrl_bit.i2smsel = FALSE;
104 if(spi_init_struct->transmission_mode == SPI_TRANSMIT_FULL_DUPLEX)
105 {
106 spi_x->ctrl1_bit.slben = FALSE;
107 spi_x->ctrl1_bit.slbtd = FALSE;
108 spi_x->ctrl1_bit.ora = FALSE;
109 }
110 else if(spi_init_struct->transmission_mode == SPI_TRANSMIT_SIMPLEX_RX)
111 {
112 spi_x->ctrl1_bit.slben = FALSE;
113 spi_x->ctrl1_bit.slbtd = FALSE;
114 spi_x->ctrl1_bit.ora = TRUE;
115 }
116 else if(spi_init_struct->transmission_mode == SPI_TRANSMIT_HALF_DUPLEX_RX)
117 {
118 spi_x->ctrl1_bit.slben = TRUE;
119 spi_x->ctrl1_bit.slbtd = FALSE;
120 spi_x->ctrl1_bit.ora = FALSE;
121 }
122 else if(spi_init_struct->transmission_mode == SPI_TRANSMIT_HALF_DUPLEX_TX)
123 {
124 spi_x->ctrl1_bit.slben = TRUE;
125 spi_x->ctrl1_bit.slbtd = TRUE;
126 spi_x->ctrl1_bit.ora = FALSE;
127 }
128
129 spi_x->ctrl1_bit.swcsen = spi_init_struct->cs_mode_selection;
130 if((spi_init_struct->master_slave_mode == SPI_MODE_MASTER) && (spi_init_struct->cs_mode_selection == SPI_CS_SOFTWARE_MODE))
131 {
132 spi_x->ctrl1_bit.swcsil = TRUE;
133 }
134 else
135 {
136 spi_x->ctrl1_bit.swcsil = FALSE;
137 }
138 spi_x->ctrl1_bit.msten = spi_init_struct->master_slave_mode;
139 if(spi_init_struct->mclk_freq_division > SPI_MCLK_DIV_256)
140 {
141 spi_x->ctrl2_bit.mdiv_h = 1;
142 spi_x->ctrl1_bit.mdiv_l = spi_init_struct->mclk_freq_division & 0x7;
143 }
144 else
145 {
146 spi_x->ctrl2_bit.mdiv_h = 0;
147 spi_x->ctrl1_bit.mdiv_l = spi_init_struct->mclk_freq_division;
148 }
149 spi_x->ctrl1_bit.ltf = spi_init_struct->first_bit_transmission;
150 spi_x->ctrl1_bit.fbn = spi_init_struct->frame_bit_num;
151 spi_x->ctrl1_bit.clkpol = spi_init_struct->clock_polarity;
152 spi_x->ctrl1_bit.clkpha = spi_init_struct->clock_phase;
153}
154
162void spi_crc_next_transmit(spi_type* spi_x)
163{
164 spi_x->ctrl1_bit.ntc = TRUE;
165}
166
175void spi_crc_polynomial_set(spi_type* spi_x, uint16_t crc_poly)
176{
177 spi_x->cpoly_bit.cpoly = crc_poly;
178}
179
187uint16_t spi_crc_polynomial_get(spi_type* spi_x)
188{
189 return spi_x->cpoly_bit.cpoly;
190}
191
201void spi_crc_enable(spi_type* spi_x, confirm_state new_state)
202{
203 spi_x->ctrl1_bit.ccen = new_state;
204}
205
216uint16_t spi_crc_value_get(spi_type* spi_x, spi_crc_direction_type crc_direction)
217{
218 if(crc_direction == SPI_CRC_RX)
219 return spi_x->rcrc_bit.rcrc;
220 else
221 return spi_x->tcrc_bit.tcrc;
222}
223
234void spi_hardware_cs_output_enable(spi_type* spi_x, confirm_state new_state)
235{
236 spi_x->ctrl2_bit.hwcsoe = new_state;
237}
238
252void spi_software_cs_internal_level_set(spi_type* spi_x, spi_software_cs_level_type level)
253{
254 spi_x->ctrl1_bit.swcsil = level;
255}
256
267void spi_frame_bit_num_set(spi_type* spi_x, spi_frame_bit_num_type bit_num)
268{
269 spi_x->ctrl1_bit.fbn = bit_num;
270}
271
283void spi_half_duplex_direction_set(spi_type* spi_x, spi_half_duplex_direction_type direction)
284{
285 spi_x->ctrl1_bit.slbtd = direction;
286}
287
297void spi_enable(spi_type* spi_x, confirm_state new_state)
298{
299 spi_x->ctrl1_bit.spien = new_state;
300}
301
308void i2s_default_para_init(i2s_init_type* i2s_init_struct)
309{
310 i2s_init_struct->operation_mode = I2S_MODE_SLAVE_TX;
311 i2s_init_struct->audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
312 i2s_init_struct->audio_sampling_freq = I2S_AUDIO_FREQUENCY_DEFAULT;
313 i2s_init_struct->data_channel_format = I2S_DATA_16BIT_CHANNEL_16BIT;
314 i2s_init_struct->clock_polarity = I2S_CLOCK_POLARITY_LOW;
315 i2s_init_struct->mclk_output_enable = FALSE;
316}
317
326void i2s_init(spi_type* spi_x, i2s_init_type* i2s_init_struct)
327{
328 crm_clocks_freq_type clocks_freq;
329 uint32_t i2s_sclk_index = 0;
330 uint32_t i2sdiv_index = 2, i2sodd_index = 0, frequency_index = 0;
331
332 /* i2s audio frequency config */
333 if(i2s_init_struct->audio_sampling_freq == I2S_AUDIO_FREQUENCY_DEFAULT)
334 {
335 i2sodd_index = 0;
336 i2sdiv_index = 2;
337 }
338 else
339 {
340 crm_clocks_freq_get(&clocks_freq);
341 i2s_sclk_index = clocks_freq.sclk_freq;
342 if((i2s_init_struct->audio_protocol == I2S_AUDIO_PROTOCOL_PCM_SHORT) || (i2s_init_struct->audio_protocol == I2S_AUDIO_PROTOCOL_PCM_LONG))
343 {
344 if(i2s_init_struct->mclk_output_enable == TRUE)
345 {
346 frequency_index = (((i2s_sclk_index / 128) * 10) / i2s_init_struct->audio_sampling_freq) + 5;
347 }
348 else
349 {
350 if(i2s_init_struct->data_channel_format == I2S_DATA_16BIT_CHANNEL_16BIT)
351 frequency_index = (((i2s_sclk_index / 16) * 10) / i2s_init_struct->audio_sampling_freq) + 5;
352 else
353 frequency_index = (((i2s_sclk_index / 32) * 10) / i2s_init_struct->audio_sampling_freq) + 5;
354 }
355 }
356 else
357 {
358 if(i2s_init_struct->mclk_output_enable == TRUE)
359 {
360 frequency_index = (((i2s_sclk_index / 256) * 10) / i2s_init_struct->audio_sampling_freq) + 5;
361 }
362 else
363 {
364 if(i2s_init_struct->data_channel_format == I2S_DATA_16BIT_CHANNEL_16BIT)
365 frequency_index = (((i2s_sclk_index / 32) * 10) / i2s_init_struct->audio_sampling_freq) + 5;
366 else
367 frequency_index = (((i2s_sclk_index / 64) * 10) / i2s_init_struct->audio_sampling_freq) + 5;
368 }
369 }
370 }
371 frequency_index = frequency_index / 10;
372 i2sodd_index = frequency_index & (uint16_t)0x0001;
373 i2sdiv_index = (frequency_index - i2sodd_index) / 2;
374 if((i2sdiv_index < 2) || (i2sdiv_index > 0x03FF))
375 {
376 i2sodd_index = 0;
377 i2sdiv_index = 2;
378 }
379 spi_x->i2sclk_bit.i2sodd = i2sodd_index;
380 if(i2sdiv_index > 0x00FF)
381 {
382 spi_x->i2sclk_bit.i2sdiv_h = (i2sdiv_index >> 8) & 0x0003;
383 spi_x->i2sclk_bit.i2sdiv_l = i2sdiv_index & 0x00FF;
384 }
385 else
386 {
387 spi_x->i2sclk_bit.i2sdiv_h = 0;
388 spi_x->i2sclk_bit.i2sdiv_l = i2sdiv_index;
389 }
390
391 /* i2s audio_protocol set*/
392 if(i2s_init_struct->audio_protocol == I2S_AUDIO_PROTOCOL_PCM_LONG)
393 {
394 spi_x->i2sctrl_bit.pcmfssel = 1;
395 spi_x->i2sctrl_bit.stdsel = 3;
396 }
397 else if(i2s_init_struct->audio_protocol == I2S_AUDIO_PROTOCOL_PCM_SHORT)
398 {
399 spi_x->i2sctrl_bit.pcmfssel = 0;
400 spi_x->i2sctrl_bit.stdsel = 3;
401 }
402 else if(i2s_init_struct->audio_protocol == I2S_AUDIO_PROTOCOL_LSB)
403 {
404 spi_x->i2sctrl_bit.pcmfssel = 0;
405 spi_x->i2sctrl_bit.stdsel = 2;
406 }
407 else if(i2s_init_struct->audio_protocol == I2S_AUDIO_PROTOCOL_MSB)
408 {
409 spi_x->i2sctrl_bit.pcmfssel = 0;
410 spi_x->i2sctrl_bit.stdsel = 1;
411 }
412 else if(i2s_init_struct->audio_protocol == I2S_AUDIO_PROTOCOL_PHILLIPS)
413 {
414 spi_x->i2sctrl_bit.pcmfssel = 0;
415 spi_x->i2sctrl_bit.stdsel = 0;
416 }
417
418 /* i2s data_channel_format set*/
419 if(i2s_init_struct->data_channel_format == I2S_DATA_16BIT_CHANNEL_16BIT)
420 {
421 spi_x->i2sctrl_bit.i2scbn = 0;
422 spi_x->i2sctrl_bit.i2sdbn = 0;
423 }
424 else if(i2s_init_struct->data_channel_format == I2S_DATA_16BIT_CHANNEL_32BIT)
425 {
426 spi_x->i2sctrl_bit.i2scbn = 1;
427 spi_x->i2sctrl_bit.i2sdbn = 0;
428 }
429 else if(i2s_init_struct->data_channel_format == I2S_DATA_24BIT_CHANNEL_32BIT)
430 {
431 spi_x->i2sctrl_bit.i2scbn = 1;
432 spi_x->i2sctrl_bit.i2sdbn = 1;
433 }
434 else if(i2s_init_struct->data_channel_format == I2S_DATA_32BIT_CHANNEL_32BIT)
435 {
436 spi_x->i2sctrl_bit.i2scbn = 1;
437 spi_x->i2sctrl_bit.i2sdbn = 2;
438 }
439
440 spi_x->i2sctrl_bit.i2sclkpol = i2s_init_struct->clock_polarity;
441 spi_x->i2sclk_bit.i2smclkoe = i2s_init_struct->mclk_output_enable;
442 spi_x->i2sctrl_bit.opersel = i2s_init_struct->operation_mode;
443 spi_x->i2sctrl_bit.i2smsel = TRUE;
444}
445
455void i2s_enable(spi_type* spi_x, confirm_state new_state)
456{
457 spi_x->i2sctrl_bit.i2sen = new_state;
458}
459
474void spi_i2s_interrupt_enable(spi_type* spi_x, uint32_t spi_i2s_int, confirm_state new_state)
475{
476 if(new_state != FALSE)
477 {
478 spi_x->ctrl2 |= spi_i2s_int;
479 }
480 else
481 {
482 spi_x->ctrl2 &= ~spi_i2s_int;
483 }
484}
485
495void spi_i2s_dma_transmitter_enable(spi_type* spi_x, confirm_state new_state)
496{
497 spi_x->ctrl2_bit.dmaten = new_state;
498}
499
509void spi_i2s_dma_receiver_enable(spi_type* spi_x, confirm_state new_state)
510{
511 spi_x->ctrl2_bit.dmaren = new_state;
512}
513
524void spi_i2s_data_transmit(spi_type* spi_x, uint16_t tx_data)
525{
526 spi_x->dt = tx_data;
527}
528
536uint16_t spi_i2s_data_receive(spi_type* spi_x)
537{
538 return (uint16_t)spi_x->dt;
539}
540
558 flag_status spi_i2s_flag_get(spi_type* spi_x, uint32_t spi_i2s_flag)
559{
560 flag_status status = RESET;
561 if ((spi_x->sts & spi_i2s_flag) == RESET)
562 {
563 status = RESET;
564 }
565 else
566 {
567 status = SET;
568 }
569 return status;
570}
571
587 flag_status spi_i2s_interrupt_flag_get(spi_type* spi_x, uint32_t spi_i2s_flag)
588{
589 flag_status status = RESET;
590
591 switch(spi_i2s_flag)
592 {
593 case SPI_I2S_RDBF_FLAG:
594 if(spi_x->sts_bit.rdbf && spi_x->ctrl2_bit.rdbfie)
595 {
596 status = SET;
597 }
598 break;
599 case SPI_I2S_TDBE_FLAG:
600 if(spi_x->sts_bit.tdbe && spi_x->ctrl2_bit.tdbeie)
601 {
602 status = SET;
603 }
604 break;
605 case I2S_TUERR_FLAG:
606 if(spi_x->sts_bit.tuerr && spi_x->ctrl2_bit.errie)
607 {
608 status = SET;
609 }
610 break;
611 case SPI_CCERR_FLAG:
612 if(spi_x->sts_bit.ccerr && spi_x->ctrl2_bit.errie)
613 {
614 status = SET;
615 }
616 break;
617 case SPI_MMERR_FLAG:
618 if(spi_x->sts_bit.mmerr && spi_x->ctrl2_bit.errie)
619 {
620 status = SET;
621 }
622 break;
623 case SPI_I2S_ROERR_FLAG:
624 if(spi_x->sts_bit.roerr && spi_x->ctrl2_bit.errie)
625 {
626 status = SET;
627 }
628 break;
629 default:
630 break;
631 };
632 return status;
633}
634
653void spi_i2s_flag_clear(spi_type* spi_x, uint32_t spi_i2s_flag)
654{
655 if(spi_i2s_flag == SPI_CCERR_FLAG)
656 spi_x->sts = ~SPI_CCERR_FLAG;
657 else if(spi_i2s_flag == SPI_I2S_RDBF_FLAG)
658 UNUSED(spi_x->dt);
659 else if(spi_i2s_flag == I2S_TUERR_FLAG)
660 UNUSED(spi_x->sts);
661 else if(spi_i2s_flag == SPI_MMERR_FLAG)
662 {
663 UNUSED(spi_x->sts);
664 spi_x->ctrl1 = spi_x->ctrl1;
665 }
666 else if(spi_i2s_flag == SPI_I2S_ROERR_FLAG)
667 {
668 UNUSED(spi_x->dt);
669 UNUSED(spi_x->sts);
670 }
671}
672
677#endif
678
UNUSED
#define UNUSED(x)
Definition: at32f403_def.h:63
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_SPI1_PERIPH_RESET
@ CRM_SPI1_PERIPH_RESET
Definition: at32f403_crm.h:175
CRM_SPI3_PERIPH_RESET
@ CRM_SPI3_PERIPH_RESET
Definition: at32f403_crm.h:195
CRM_SPI4_PERIPH_RESET
@ CRM_SPI4_PERIPH_RESET
Definition: at32f403_crm.h:196
CRM_SPI2_PERIPH_RESET
@ CRM_SPI2_PERIPH_RESET
Definition: at32f403_crm.h:194
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
I2S_TUERR_FLAG
#define I2S_TUERR_FLAG
Definition: at32f403_spi.h:54
SPI_CCERR_FLAG
#define SPI_CCERR_FLAG
Definition: at32f403_spi.h:55
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
SPI_MMERR_FLAG
#define SPI_MMERR_FLAG
Definition: at32f403_spi.h:56
SPI_I2S_ROERR_FLAG
#define SPI_I2S_ROERR_FLAG
Definition: at32f403_spi.h:57
spi_software_cs_level_type
spi_software_cs_level_type
spi software cs internal level type
Definition: at32f403_spi.h:186
spi_half_duplex_direction_type
spi_half_duplex_direction_type
spi single line bidirectional direction type
Definition: at32f403_spi.h:177
spi_frame_bit_num_type
spi_frame_bit_num_type
spi frame bit num type
Definition: at32f403_spi.h:86
spi_crc_direction_type
spi_crc_direction_type
spi crc direction type
Definition: at32f403_spi.h:168
I2S_CLOCK_POLARITY_LOW
@ I2S_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:247
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
I2S_DATA_16BIT_CHANNEL_16BIT
@ I2S_DATA_16BIT_CHANNEL_16BIT
Definition: at32f403_spi.h:225
I2S_DATA_24BIT_CHANNEL_32BIT
@ I2S_DATA_24BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:227
I2S_DATA_32BIT_CHANNEL_32BIT
@ I2S_DATA_32BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:228
I2S_DATA_16BIT_CHANNEL_32BIT
@ I2S_DATA_16BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:226
SPI_CLOCK_PHASE_1EDGE
@ SPI_CLOCK_PHASE_1EDGE
Definition: at32f403_spi.h:114
I2S_AUDIO_FREQUENCY_DEFAULT
@ I2S_AUDIO_FREQUENCY_DEFAULT
Definition: at32f403_spi.h:208
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_HALF_DUPLEX_RX
@ SPI_TRANSMIT_HALF_DUPLEX_RX
Definition: at32f403_spi.h:160
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_TRANSMIT_HALF_DUPLEX_TX
@ SPI_TRANSMIT_HALF_DUPLEX_TX
Definition: at32f403_spi.h:161
SPI_TRANSMIT_SIMPLEX_RX
@ SPI_TRANSMIT_SIMPLEX_RX
Definition: at32f403_spi.h:159
I2S_AUDIO_PROTOCOL_PCM_LONG
@ I2S_AUDIO_PROTOCOL_PCM_LONG
Definition: at32f403_spi.h:200
I2S_AUDIO_PROTOCOL_LSB
@ I2S_AUDIO_PROTOCOL_LSB
Definition: at32f403_spi.h:198
I2S_AUDIO_PROTOCOL_MSB
@ I2S_AUDIO_PROTOCOL_MSB
Definition: at32f403_spi.h:197
I2S_AUDIO_PROTOCOL_PHILLIPS
@ I2S_AUDIO_PROTOCOL_PHILLIPS
Definition: at32f403_spi.h:196
I2S_AUDIO_PROTOCOL_PCM_SHORT
@ I2S_AUDIO_PROTOCOL_PCM_SHORT
Definition: at32f403_spi.h:199
SPI_MCLK_DIV_2
@ SPI_MCLK_DIV_2
Definition: at32f403_spi.h:132
SPI_MCLK_DIV_256
@ SPI_MCLK_DIV_256
Definition: at32f403_spi.h:139
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI_CRC_RX
@ SPI_CRC_RX
Definition: at32f403_spi.h:169
I2S_MODE_SLAVE_TX
@ I2S_MODE_SLAVE_TX
Definition: at32f403_spi.h:236
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
i2s_init
void i2s_init(spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value.
Definition: at32f403_spi.c:326
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_crc_enable
void spi_crc_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the hardware crc calculation for the spi peripheral.
Definition: at32f403_spi.c:201
spi_i2s_dma_receiver_enable
void spi_i2s_dma_receiver_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode.
Definition: at32f403_spi.c:509
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
i2s_enable
void i2s_enable(spi_type *spi_x, confirm_state new_state)
enable or disable i2s.
Definition: at32f403_spi.c:455
spi_crc_polynomial_get
uint16_t spi_crc_polynomial_get(spi_type *spi_x)
return the crc polynomial register value for the spi peripheral.
Definition: at32f403_spi.c:187
spi_crc_next_transmit
void spi_crc_next_transmit(spi_type *spi_x)
spi next transmit crc for the spi peripheral.
Definition: at32f403_spi.c:162
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_crc_polynomial_set
void spi_crc_polynomial_set(spi_type *spi_x, uint16_t crc_poly)
set the crc polynomial value for the spi peripheral.
Definition: at32f403_spi.c:175
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_crc_value_get
uint16_t spi_crc_value_get(spi_type *spi_x, spi_crc_direction_type crc_direction)
return the transmit or the receive crc value for the spi peripheral.
Definition: at32f403_spi.c:216
spi_i2s_reset
void spi_i2s_reset(spi_type *spi_x)
spi reset by crm reset register
Definition: at32f403_spi.c:49
spi_half_duplex_direction_set
void spi_half_duplex_direction_set(spi_type *spi_x, spi_half_duplex_direction_type direction)
set the data transmission direction in single line bidirectiona half duplex mode of the spi periphera...
Definition: at32f403_spi.c:283
spi_hardware_cs_output_enable
void spi_hardware_cs_output_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the hardware cs output for the spi peripheral.
Definition: at32f403_spi.c:234
spi_i2s_interrupt_flag_get
flag_status spi_i2s_interrupt_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get interrupt flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:587
spi_i2s_flag_clear
void spi_i2s_flag_clear(spi_type *spi_x, uint32_t spi_i2s_flag)
clear flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:653
i2s_default_para_init
void i2s_default_para_init(i2s_init_type *i2s_init_struct)
i2s init config with its default value.
Definition: at32f403_spi.c:308
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
spi_i2s_dma_transmitter_enable
void spi_i2s_dma_transmitter_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode.
Definition: at32f403_spi.c:495
spi_frame_bit_num_set
void spi_frame_bit_num_set(spi_type *spi_x, spi_frame_bit_num_type bit_num)
set the data frame bit num for the spi peripheral.
Definition: at32f403_spi.c:267
spi_software_cs_internal_level_set
void spi_software_cs_internal_level_set(spi_type *spi_x, spi_software_cs_level_type level)
set the software cs internal level for the spi peripheral.
Definition: at32f403_spi.c:252
SPI3
#define SPI3
Definition: at32f403_spi.h:448
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
i2s_init_type
i2s init type
Definition: at32f403_spi.h:270
i2s_init_type::audio_sampling_freq
i2s_audio_sampling_freq_type audio_sampling_freq
Definition: at32f403_spi.h:273
i2s_init_type::data_channel_format
i2s_data_channel_format_type data_channel_format
Definition: at32f403_spi.h:274
i2s_init_type::mclk_output_enable
confirm_state mclk_output_enable
Definition: at32f403_spi.h:276
i2s_init_type::audio_protocol
i2s_audio_protocol_type audio_protocol
Definition: at32f403_spi.h:272
i2s_init_type::operation_mode
i2s_operation_mode_type operation_mode
Definition: at32f403_spi.h:271
i2s_init_type::clock_polarity
i2s_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:275
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
spi_type
type define spi register all
Definition: at32f403_spi.h:283
spi_type::tdbe
__IO uint32_t tdbe
Definition: at32f403_spi.h:340
spi_type::clkpha
__IO uint32_t clkpha
Definition: at32f403_spi.h:293
spi_type::hwcsoe
__IO uint32_t hwcsoe
Definition: at32f403_spi.h:321
spi_type::slben
__IO uint32_t slben
Definition: at32f403_spi.h:306
spi_type::ntc
__IO uint32_t ntc
Definition: at32f403_spi.h:303
spi_type::mdiv_h
__IO uint32_t mdiv_h
Definition: at32f403_spi.h:326
spi_type::rdbfie
__IO uint32_t rdbfie
Definition: at32f403_spi.h:324
spi_type::mmerr
__IO uint32_t mmerr
Definition: at32f403_spi.h:344
spi_type::dmaren
__IO uint32_t dmaren
Definition: at32f403_spi.h:319
spi_type::rcrc_bit
struct spi_type::@610::@623 rcrc_bit
spi_type::tcrc_bit
struct spi_type::@612::@624 tcrc_bit
spi_type::i2sdbn
__IO uint32_t i2sdbn
Definition: at32f403_spi.h:412
spi_type::i2sctrl_bit
struct spi_type::@614::@625 i2sctrl_bit
spi_type::rcrc
__IO uint32_t rcrc
Definition: at32f403_spi.h:382
spi_type::errie
__IO uint32_t errie
Definition: at32f403_spi.h:323
spi_type::i2scbn
__IO uint32_t i2scbn
Definition: at32f403_spi.h:411
spi_type::i2sclkpol
__IO uint32_t i2sclkpol
Definition: at32f403_spi.h:413
spi_type::cpoly
__IO uint32_t cpoly
Definition: at32f403_spi.h:369
spi_type::ctrl1
__IO uint32_t ctrl1
Definition: at32f403_spi.h:290
spi_type::i2sodd
__IO uint32_t i2sodd
Definition: at32f403_spi.h:433
spi_type::swcsil
__IO uint32_t swcsil
Definition: at32f403_spi.h:299
spi_type::tcrc
__IO uint32_t tcrc
Definition: at32f403_spi.h:395
spi_type::i2sclk_bit
struct spi_type::@616::@626 i2sclk_bit
spi_type::i2smclkoe
__IO uint32_t i2smclkoe
Definition: at32f403_spi.h:434
spi_type::ltf
__IO uint32_t ltf
Definition: at32f403_spi.h:298
spi_type::clkpol
__IO uint32_t clkpol
Definition: at32f403_spi.h:294
spi_type::sts_bit
struct spi_type::@604::@620 sts_bit
spi_type::slbtd
__IO uint32_t slbtd
Definition: at32f403_spi.h:305
spi_type::ctrl2_bit
struct spi_type::@602::@619 ctrl2_bit
spi_type::dmaten
__IO uint32_t dmaten
Definition: at32f403_spi.h:320
spi_type::ccen
__IO uint32_t ccen
Definition: at32f403_spi.h:304
spi_type::fbn
__IO uint32_t fbn
Definition: at32f403_spi.h:302
spi_type::dt
__IO uint32_t dt
Definition: at32f403_spi.h:356
spi_type::msten
__IO uint32_t msten
Definition: at32f403_spi.h:295
spi_type::ccerr
__IO uint32_t ccerr
Definition: at32f403_spi.h:343
spi_type::sts
__IO uint32_t sts
Definition: at32f403_spi.h:336
spi_type::ctrl1_bit
struct spi_type::@600::@618 ctrl1_bit
spi_type::i2sdiv_h
__IO uint32_t i2sdiv_h
Definition: at32f403_spi.h:435
spi_type::opersel
__IO uint32_t opersel
Definition: at32f403_spi.h:417
spi_type::i2sdiv_l
__IO uint32_t i2sdiv_l
Definition: at32f403_spi.h:432
spi_type::i2smsel
__IO uint32_t i2smsel
Definition: at32f403_spi.h:419
spi_type::pcmfssel
__IO uint32_t pcmfssel
Definition: at32f403_spi.h:416
spi_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_spi.h:316
spi_type::roerr
__IO uint32_t roerr
Definition: at32f403_spi.h:345
spi_type::stdsel
__IO uint32_t stdsel
Definition: at32f403_spi.h:414
spi_type::rdbf
__IO uint32_t rdbf
Definition: at32f403_spi.h:339
spi_type::tuerr
__IO uint32_t tuerr
Definition: at32f403_spi.h:342
spi_type::mdiv_l
__IO uint32_t mdiv_l
Definition: at32f403_spi.h:296
spi_type::cpoly_bit
struct spi_type::@608::@622 cpoly_bit
spi_type::spien
__IO uint32_t spien
Definition: at32f403_spi.h:297
spi_type::swcsen
__IO uint32_t swcsen
Definition: at32f403_spi.h:300
spi_type::ora
__IO uint32_t ora
Definition: at32f403_spi.h:301
spi_type::i2sen
__IO uint32_t i2sen
Definition: at32f403_spi.h:418
spi_type::tdbeie
__IO uint32_t tdbeie
Definition: at32f403_spi.h:325
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_spi.h Source File

  • libraries
  • drivers
  • inc
at32f403_spi.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_SPI_H
27#define __AT32F403_SPI_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
51#define SPI_I2S_RDBF_FLAG 0x0001
52#define SPI_I2S_TDBE_FLAG 0x0002
53#define I2S_ACS_FLAG 0x0004
54#define I2S_TUERR_FLAG 0x0008
55#define SPI_CCERR_FLAG 0x0010
56#define SPI_MMERR_FLAG 0x0020
57#define SPI_I2S_ROERR_FLAG 0x0040
58#define SPI_I2S_BF_FLAG 0x0080
70#define SPI_I2S_ERROR_INT 0x0020
71#define SPI_I2S_RDBF_INT 0x0040
72#define SPI_I2S_TDBE_INT 0x0080
85typedef enum
86{
87 SPI_FRAME_8BIT = 0x00,
88 SPI_FRAME_16BIT = 0x01
89} spi_frame_bit_num_type;
90
94typedef enum
95{
96 SPI_MODE_SLAVE = 0x00,
97 SPI_MODE_MASTER = 0x01
98} spi_master_slave_mode_type;
99
103typedef enum
104{
105 SPI_CLOCK_POLARITY_LOW = 0x00,
106 SPI_CLOCK_POLARITY_HIGH = 0x01
107} spi_clock_polarity_type;
108
112typedef enum
113{
114 SPI_CLOCK_PHASE_1EDGE = 0x00,
115 SPI_CLOCK_PHASE_2EDGE = 0x01
116} spi_clock_phase_type;
117
121typedef enum
122{
123 SPI_CS_HARDWARE_MODE = 0x00,
124 SPI_CS_SOFTWARE_MODE = 0x01
125} spi_cs_mode_type;
126
130typedef enum
131{
132 SPI_MCLK_DIV_2 = 0x00,
133 SPI_MCLK_DIV_4 = 0x01,
134 SPI_MCLK_DIV_8 = 0x02,
135 SPI_MCLK_DIV_16 = 0x03,
136 SPI_MCLK_DIV_32 = 0x04,
137 SPI_MCLK_DIV_64 = 0x05,
138 SPI_MCLK_DIV_128 = 0x06,
139 SPI_MCLK_DIV_256 = 0x07,
140 SPI_MCLK_DIV_512 = 0x08,
141 SPI_MCLK_DIV_1024 = 0x09
142} spi_mclk_freq_div_type;
143
147typedef enum
148{
149 SPI_FIRST_BIT_MSB = 0x00,
150 SPI_FIRST_BIT_LSB = 0x01
151} spi_first_bit_type;
152
156typedef enum
157{
158 SPI_TRANSMIT_FULL_DUPLEX = 0x00,
159 SPI_TRANSMIT_SIMPLEX_RX = 0x01,
160 SPI_TRANSMIT_HALF_DUPLEX_RX = 0x02,
161 SPI_TRANSMIT_HALF_DUPLEX_TX = 0x03
162} spi_transmission_mode_type;
163
167typedef enum
168{
169 SPI_CRC_RX = 0x0014,
170 SPI_CRC_TX = 0x0018
171} spi_crc_direction_type;
172
176typedef enum
177{
178 SPI_HALF_DUPLEX_DIRECTION_RX = 0x00,
179 SPI_HALF_DUPLEX_DIRECTION_TX = 0x01
180} spi_half_duplex_direction_type;
181
185typedef enum
186{
187 SPI_SWCS_INTERNAL_LEVEL_LOW = 0x00,
188 SPI_SWCS_INTERNAL_LEVEL_HIGHT = 0x01
189} spi_software_cs_level_type;
190
194typedef enum
195{
196 I2S_AUDIO_PROTOCOL_PHILLIPS = 0x00,
197 I2S_AUDIO_PROTOCOL_MSB = 0x01,
198 I2S_AUDIO_PROTOCOL_LSB = 0x02,
199 I2S_AUDIO_PROTOCOL_PCM_SHORT = 0x03,
200 I2S_AUDIO_PROTOCOL_PCM_LONG = 0x04
201} i2s_audio_protocol_type;
202
206typedef enum
207{
208 I2S_AUDIO_FREQUENCY_DEFAULT = 2,
209 I2S_AUDIO_FREQUENCY_8K = 8000,
210 I2S_AUDIO_FREQUENCY_11_025K = 11025,
211 I2S_AUDIO_FREQUENCY_16K = 16000,
212 I2S_AUDIO_FREQUENCY_22_05K = 22050,
213 I2S_AUDIO_FREQUENCY_32K = 32000,
214 I2S_AUDIO_FREQUENCY_44_1K = 44100,
215 I2S_AUDIO_FREQUENCY_48K = 48000,
216 I2S_AUDIO_FREQUENCY_96K = 96000,
217 I2S_AUDIO_FREQUENCY_192K = 192000
218} i2s_audio_sampling_freq_type;
219
223typedef enum
224{
225 I2S_DATA_16BIT_CHANNEL_16BIT = 0x01,
226 I2S_DATA_16BIT_CHANNEL_32BIT = 0x02,
227 I2S_DATA_24BIT_CHANNEL_32BIT = 0x03,
228 I2S_DATA_32BIT_CHANNEL_32BIT = 0x04
229} i2s_data_channel_format_type;
230
234typedef enum
235{
236 I2S_MODE_SLAVE_TX = 0x00,
237 I2S_MODE_SLAVE_RX = 0x01,
238 I2S_MODE_MASTER_TX = 0x02,
239 I2S_MODE_MASTER_RX = 0x03
240} i2s_operation_mode_type;
241
245typedef enum
246{
247 I2S_CLOCK_POLARITY_LOW = 0x00,
248 I2S_CLOCK_POLARITY_HIGH = 0x01
249} i2s_clock_polarity_type;
250
254typedef struct
255{
256 spi_transmission_mode_type transmission_mode;
257 spi_master_slave_mode_type master_slave_mode;
258 spi_mclk_freq_div_type mclk_freq_division;
259 spi_first_bit_type first_bit_transmission;
260 spi_frame_bit_num_type frame_bit_num;
261 spi_clock_polarity_type clock_polarity;
262 spi_clock_phase_type clock_phase;
263 spi_cs_mode_type cs_mode_selection;
264} spi_init_type;
265
269typedef struct
270{
271 i2s_operation_mode_type operation_mode;
272 i2s_audio_protocol_type audio_protocol;
273 i2s_audio_sampling_freq_type audio_sampling_freq;
274 i2s_data_channel_format_type data_channel_format;
275 i2s_clock_polarity_type clock_polarity;
276 confirm_state mclk_output_enable;
277} i2s_init_type;
278
282typedef struct
283{
284
288 union
289 {
290 __IO uint32_t ctrl1;
291 struct
292 {
293 __IO uint32_t clkpha : 1; /* [0] */
294 __IO uint32_t clkpol : 1; /* [1] */
295 __IO uint32_t msten : 1; /* [2] */
296 __IO uint32_t mdiv_l : 3; /* [5:3] */
297 __IO uint32_t spien : 1; /* [6] */
298 __IO uint32_t ltf : 1; /* [7] */
299 __IO uint32_t swcsil : 1; /* [8] */
300 __IO uint32_t swcsen : 1; /* [9] */
301 __IO uint32_t ora : 1; /* [10] */
302 __IO uint32_t fbn : 1; /* [11] */
303 __IO uint32_t ntc : 1; /* [12] */
304 __IO uint32_t ccen : 1; /* [13] */
305 __IO uint32_t slbtd : 1; /* [14] */
306 __IO uint32_t slben : 1; /* [15] */
307 __IO uint32_t reserved1 : 16;/* [31:16] */
308 } ctrl1_bit;
309 };
310
314 union
315 {
316 __IO uint32_t ctrl2;
317 struct
318 {
319 __IO uint32_t dmaren : 1; /* [0] */
320 __IO uint32_t dmaten : 1; /* [1] */
321 __IO uint32_t hwcsoe : 1; /* [2] */
322 __IO uint32_t reserved1 : 2; /* [4:3] */
323 __IO uint32_t errie : 1; /* [5] */
324 __IO uint32_t rdbfie : 1; /* [6] */
325 __IO uint32_t tdbeie : 1; /* [7] */
326 __IO uint32_t mdiv_h : 1; /* [8] */
327 __IO uint32_t reserved2 : 23;/* [31:9] */
328 } ctrl2_bit;
329 };
330
334 union
335 {
336 __IO uint32_t sts;
337 struct
338 {
339 __IO uint32_t rdbf : 1; /* [0] */
340 __IO uint32_t tdbe : 1; /* [1] */
341 __IO uint32_t acs : 1; /* [2] */
342 __IO uint32_t tuerr : 1; /* [3] */
343 __IO uint32_t ccerr : 1; /* [4] */
344 __IO uint32_t mmerr : 1; /* [5] */
345 __IO uint32_t roerr : 1; /* [6] */
346 __IO uint32_t bf : 1; /* [7] */
347 __IO uint32_t reserved1 : 24;/* [31:8] */
348 } sts_bit;
349 };
350
354 union
355 {
356 __IO uint32_t dt;
357 struct
358 {
359 __IO uint32_t dt : 16;/* [15:0] */
360 __IO uint32_t reserved1 : 16;/* [31:16] */
361 } dt_bit;
362 };
363
367 union
368 {
369 __IO uint32_t cpoly;
370 struct
371 {
372 __IO uint32_t cpoly : 16;/* [15:0] */
373 __IO uint32_t reserved1 : 16;/* [31:16] */
374 } cpoly_bit;
375 };
376
380 union
381 {
382 __IO uint32_t rcrc;
383 struct
384 {
385 __IO uint32_t rcrc : 16;/* [15:0] */
386 __IO uint32_t reserved1 : 16;/* [31:16] */
387 } rcrc_bit;
388 };
389
393 union
394 {
395 __IO uint32_t tcrc;
396 struct
397 {
398 __IO uint32_t tcrc : 16;/* [15:0] */
399 __IO uint32_t reserved1 : 16;/* [31:16] */
400 } tcrc_bit;
401 };
402
406 union
407 {
408 __IO uint32_t i2sctrl;
409 struct
410 {
411 __IO uint32_t i2scbn : 1; /* [0] */
412 __IO uint32_t i2sdbn : 2; /* [2:1] */
413 __IO uint32_t i2sclkpol : 1; /* [3] */
414 __IO uint32_t stdsel : 2; /* [5:4] */
415 __IO uint32_t reserved1 : 1; /* [6] */
416 __IO uint32_t pcmfssel : 1; /* [7] */
417 __IO uint32_t opersel : 2; /* [9:8] */
418 __IO uint32_t i2sen : 1; /* [10] */
419 __IO uint32_t i2smsel : 1; /* [11] */
420 __IO uint32_t reserved2 : 20;/* [31:12] */
421 } i2sctrl_bit;
422 };
423
427 union
428 {
429 __IO uint32_t i2sclk;
430 struct
431 {
432 __IO uint32_t i2sdiv_l : 8; /* [7:0] */
433 __IO uint32_t i2sodd : 1; /* [8] */
434 __IO uint32_t i2smclkoe : 1; /* [9] */
435 __IO uint32_t i2sdiv_h : 2; /* [11:10] */
436 __IO uint32_t reserved1 : 20;/* [31:12] */
437 } i2sclk_bit;
438 };
439
440} spi_type;
441
446#define SPI1 ((spi_type *) SPI1_BASE)
447#define SPI2 ((spi_type *) SPI2_BASE)
448#define SPI3 ((spi_type *) SPI3_BASE)
449#if defined (AT32F403Zx) || defined (AT32F403Vx)
450#define SPI4 ((spi_type *) SPI4_BASE)
451#endif
452
457void spi_i2s_reset(spi_type *spi_x);
458void spi_default_para_init(spi_init_type* spi_init_struct);
459void spi_init(spi_type* spi_x, spi_init_type* spi_init_struct);
460void spi_crc_next_transmit(spi_type* spi_x);
461void spi_crc_polynomial_set(spi_type* spi_x, uint16_t crc_poly);
462uint16_t spi_crc_polynomial_get(spi_type* spi_x);
463void spi_crc_enable(spi_type* spi_x, confirm_state new_state);
464uint16_t spi_crc_value_get(spi_type* spi_x, spi_crc_direction_type crc_direction);
465void spi_hardware_cs_output_enable(spi_type* spi_x, confirm_state new_state);
466void spi_software_cs_internal_level_set(spi_type* spi_x, spi_software_cs_level_type level);
467void spi_frame_bit_num_set(spi_type* spi_x, spi_frame_bit_num_type bit_num);
468void spi_half_duplex_direction_set(spi_type* spi_x, spi_half_duplex_direction_type direction);
469void spi_enable(spi_type* spi_x, confirm_state new_state);
470void i2s_default_para_init(i2s_init_type* i2s_init_struct);
471void i2s_init(spi_type* spi_x, i2s_init_type* i2s_init_struct);
472void i2s_enable(spi_type* spi_x, confirm_state new_state);
473void spi_i2s_interrupt_enable(spi_type* spi_x, uint32_t spi_i2s_int, confirm_state new_state);
474void spi_i2s_dma_transmitter_enable(spi_type* spi_x, confirm_state new_state);
475void spi_i2s_dma_receiver_enable(spi_type* spi_x, confirm_state new_state);
476void spi_i2s_data_transmit(spi_type* spi_x, uint16_t tx_data);
477uint16_t spi_i2s_data_receive(spi_type* spi_x);
478 flag_status spi_i2s_flag_get(spi_type* spi_x, uint32_t spi_i2s_flag);
479 flag_status spi_i2s_interrupt_flag_get(spi_type* spi_x, uint32_t spi_i2s_flag);
480void spi_i2s_flag_clear(spi_type* spi_x, uint32_t spi_i2s_flag);
481
494#ifdef __cplusplus
495}
496#endif
497
498#endif
at32f403.h
at32f403 header file
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
i2s_init
void i2s_init(spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value.
Definition: at32f403_spi.c:326
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_crc_enable
void spi_crc_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the hardware crc calculation for the spi peripheral.
Definition: at32f403_spi.c:201
spi_i2s_dma_receiver_enable
void spi_i2s_dma_receiver_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode.
Definition: at32f403_spi.c:509
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
i2s_enable
void i2s_enable(spi_type *spi_x, confirm_state new_state)
enable or disable i2s.
Definition: at32f403_spi.c:455
spi_crc_polynomial_get
uint16_t spi_crc_polynomial_get(spi_type *spi_x)
return the crc polynomial register value for the spi peripheral.
Definition: at32f403_spi.c:187
spi_crc_next_transmit
void spi_crc_next_transmit(spi_type *spi_x)
spi next transmit crc for the spi peripheral.
Definition: at32f403_spi.c:162
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_crc_polynomial_set
void spi_crc_polynomial_set(spi_type *spi_x, uint16_t crc_poly)
set the crc polynomial value for the spi peripheral.
Definition: at32f403_spi.c:175
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_crc_value_get
uint16_t spi_crc_value_get(spi_type *spi_x, spi_crc_direction_type crc_direction)
return the transmit or the receive crc value for the spi peripheral.
Definition: at32f403_spi.c:216
spi_i2s_reset
void spi_i2s_reset(spi_type *spi_x)
spi reset by crm reset register
Definition: at32f403_spi.c:49
spi_half_duplex_direction_set
void spi_half_duplex_direction_set(spi_type *spi_x, spi_half_duplex_direction_type direction)
set the data transmission direction in single line bidirectiona half duplex mode of the spi periphera...
Definition: at32f403_spi.c:283
spi_hardware_cs_output_enable
void spi_hardware_cs_output_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the hardware cs output for the spi peripheral.
Definition: at32f403_spi.c:234
spi_i2s_interrupt_flag_get
flag_status spi_i2s_interrupt_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get interrupt flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:587
spi_i2s_flag_clear
void spi_i2s_flag_clear(spi_type *spi_x, uint32_t spi_i2s_flag)
clear flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:653
i2s_default_para_init
void i2s_default_para_init(i2s_init_type *i2s_init_struct)
i2s init config with its default value.
Definition: at32f403_spi.c:308
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
spi_i2s_dma_transmitter_enable
void spi_i2s_dma_transmitter_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode.
Definition: at32f403_spi.c:495
spi_frame_bit_num_set
void spi_frame_bit_num_set(spi_type *spi_x, spi_frame_bit_num_type bit_num)
set the data frame bit num for the spi peripheral.
Definition: at32f403_spi.c:267
spi_software_cs_internal_level_set
void spi_software_cs_internal_level_set(spi_type *spi_x, spi_software_cs_level_type level)
set the software cs internal level for the spi peripheral.
Definition: at32f403_spi.c:252
i2s_clock_polarity_type
i2s_clock_polarity_type
i2s clock polarity type
Definition: at32f403_spi.h:246
spi_master_slave_mode_type
spi_master_slave_mode_type
spi master/slave mode type
Definition: at32f403_spi.h:95
spi_software_cs_level_type
spi_software_cs_level_type
spi software cs internal level type
Definition: at32f403_spi.h:186
i2s_data_channel_format_type
i2s_data_channel_format_type
i2s data bit num and channel bit num type
Definition: at32f403_spi.h:224
spi_clock_phase_type
spi_clock_phase_type
spi clock phase (clkpha) type
Definition: at32f403_spi.h:113
i2s_audio_sampling_freq_type
i2s_audio_sampling_freq_type
i2s audio frequency type
Definition: at32f403_spi.h:207
spi_cs_mode_type
spi_cs_mode_type
spi cs mode type
Definition: at32f403_spi.h:122
spi_first_bit_type
spi_first_bit_type
spi transmit first bit (lsb/msb) type
Definition: at32f403_spi.h:148
spi_clock_polarity_type
spi_clock_polarity_type
spi clock polarity (clkpol) type
Definition: at32f403_spi.h:104
spi_half_duplex_direction_type
spi_half_duplex_direction_type
spi single line bidirectional direction type
Definition: at32f403_spi.h:177
spi_transmission_mode_type
spi_transmission_mode_type
spi transmission mode type
Definition: at32f403_spi.h:157
i2s_audio_protocol_type
i2s_audio_protocol_type
i2s audio protocol type
Definition: at32f403_spi.h:195
spi_mclk_freq_div_type
spi_mclk_freq_div_type
spi master clock frequency division type
Definition: at32f403_spi.h:131
spi_frame_bit_num_type
spi_frame_bit_num_type
spi frame bit num type
Definition: at32f403_spi.h:86
spi_crc_direction_type
spi_crc_direction_type
spi crc direction type
Definition: at32f403_spi.h:168
i2s_operation_mode_type
i2s_operation_mode_type
i2s operation mode type
Definition: at32f403_spi.h:235
I2S_CLOCK_POLARITY_LOW
@ I2S_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:247
I2S_CLOCK_POLARITY_HIGH
@ I2S_CLOCK_POLARITY_HIGH
Definition: at32f403_spi.h:248
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_SWCS_INTERNAL_LEVEL_LOW
@ SPI_SWCS_INTERNAL_LEVEL_LOW
Definition: at32f403_spi.h:187
SPI_SWCS_INTERNAL_LEVEL_HIGHT
@ SPI_SWCS_INTERNAL_LEVEL_HIGHT
Definition: at32f403_spi.h:188
I2S_DATA_16BIT_CHANNEL_16BIT
@ I2S_DATA_16BIT_CHANNEL_16BIT
Definition: at32f403_spi.h:225
I2S_DATA_24BIT_CHANNEL_32BIT
@ I2S_DATA_24BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:227
I2S_DATA_32BIT_CHANNEL_32BIT
@ I2S_DATA_32BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:228
I2S_DATA_16BIT_CHANNEL_32BIT
@ I2S_DATA_16BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:226
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CLOCK_PHASE_1EDGE
@ SPI_CLOCK_PHASE_1EDGE
Definition: at32f403_spi.h:114
I2S_AUDIO_FREQUENCY_44_1K
@ I2S_AUDIO_FREQUENCY_44_1K
Definition: at32f403_spi.h:214
I2S_AUDIO_FREQUENCY_11_025K
@ I2S_AUDIO_FREQUENCY_11_025K
Definition: at32f403_spi.h:210
I2S_AUDIO_FREQUENCY_48K
@ I2S_AUDIO_FREQUENCY_48K
Definition: at32f403_spi.h:215
I2S_AUDIO_FREQUENCY_DEFAULT
@ I2S_AUDIO_FREQUENCY_DEFAULT
Definition: at32f403_spi.h:208
I2S_AUDIO_FREQUENCY_8K
@ I2S_AUDIO_FREQUENCY_8K
Definition: at32f403_spi.h:209
I2S_AUDIO_FREQUENCY_32K
@ I2S_AUDIO_FREQUENCY_32K
Definition: at32f403_spi.h:213
I2S_AUDIO_FREQUENCY_192K
@ I2S_AUDIO_FREQUENCY_192K
Definition: at32f403_spi.h:217
I2S_AUDIO_FREQUENCY_96K
@ I2S_AUDIO_FREQUENCY_96K
Definition: at32f403_spi.h:216
I2S_AUDIO_FREQUENCY_22_05K
@ I2S_AUDIO_FREQUENCY_22_05K
Definition: at32f403_spi.h:212
I2S_AUDIO_FREQUENCY_16K
@ I2S_AUDIO_FREQUENCY_16K
Definition: at32f403_spi.h:211
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_CS_HARDWARE_MODE
@ SPI_CS_HARDWARE_MODE
Definition: at32f403_spi.h:123
SPI_FIRST_BIT_LSB
@ SPI_FIRST_BIT_LSB
Definition: at32f403_spi.h:150
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_HIGH
@ SPI_CLOCK_POLARITY_HIGH
Definition: at32f403_spi.h:106
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_HALF_DUPLEX_DIRECTION_TX
@ SPI_HALF_DUPLEX_DIRECTION_TX
Definition: at32f403_spi.h:179
SPI_HALF_DUPLEX_DIRECTION_RX
@ SPI_HALF_DUPLEX_DIRECTION_RX
Definition: at32f403_spi.h:178
SPI_TRANSMIT_HALF_DUPLEX_RX
@ SPI_TRANSMIT_HALF_DUPLEX_RX
Definition: at32f403_spi.h:160
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_TRANSMIT_HALF_DUPLEX_TX
@ SPI_TRANSMIT_HALF_DUPLEX_TX
Definition: at32f403_spi.h:161
SPI_TRANSMIT_SIMPLEX_RX
@ SPI_TRANSMIT_SIMPLEX_RX
Definition: at32f403_spi.h:159
I2S_AUDIO_PROTOCOL_PCM_LONG
@ I2S_AUDIO_PROTOCOL_PCM_LONG
Definition: at32f403_spi.h:200
I2S_AUDIO_PROTOCOL_LSB
@ I2S_AUDIO_PROTOCOL_LSB
Definition: at32f403_spi.h:198
I2S_AUDIO_PROTOCOL_MSB
@ I2S_AUDIO_PROTOCOL_MSB
Definition: at32f403_spi.h:197
I2S_AUDIO_PROTOCOL_PHILLIPS
@ I2S_AUDIO_PROTOCOL_PHILLIPS
Definition: at32f403_spi.h:196
I2S_AUDIO_PROTOCOL_PCM_SHORT
@ I2S_AUDIO_PROTOCOL_PCM_SHORT
Definition: at32f403_spi.h:199
SPI_MCLK_DIV_16
@ SPI_MCLK_DIV_16
Definition: at32f403_spi.h:135
SPI_MCLK_DIV_64
@ SPI_MCLK_DIV_64
Definition: at32f403_spi.h:137
SPI_MCLK_DIV_128
@ SPI_MCLK_DIV_128
Definition: at32f403_spi.h:138
SPI_MCLK_DIV_4
@ SPI_MCLK_DIV_4
Definition: at32f403_spi.h:133
SPI_MCLK_DIV_512
@ SPI_MCLK_DIV_512
Definition: at32f403_spi.h:140
SPI_MCLK_DIV_32
@ SPI_MCLK_DIV_32
Definition: at32f403_spi.h:136
SPI_MCLK_DIV_2
@ SPI_MCLK_DIV_2
Definition: at32f403_spi.h:132
SPI_MCLK_DIV_1024
@ SPI_MCLK_DIV_1024
Definition: at32f403_spi.h:141
SPI_MCLK_DIV_256
@ SPI_MCLK_DIV_256
Definition: at32f403_spi.h:139
SPI_MCLK_DIV_8
@ SPI_MCLK_DIV_8
Definition: at32f403_spi.h:134
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI_FRAME_16BIT
@ SPI_FRAME_16BIT
Definition: at32f403_spi.h:88
SPI_CRC_RX
@ SPI_CRC_RX
Definition: at32f403_spi.h:169
SPI_CRC_TX
@ SPI_CRC_TX
Definition: at32f403_spi.h:170
I2S_MODE_MASTER_TX
@ I2S_MODE_MASTER_TX
Definition: at32f403_spi.h:238
I2S_MODE_MASTER_RX
@ I2S_MODE_MASTER_RX
Definition: at32f403_spi.h:239
I2S_MODE_SLAVE_RX
@ I2S_MODE_SLAVE_RX
Definition: at32f403_spi.h:237
I2S_MODE_SLAVE_TX
@ I2S_MODE_SLAVE_TX
Definition: at32f403_spi.h:236
i2s_init_type
i2s init type
Definition: at32f403_spi.h:270
i2s_init_type::audio_sampling_freq
i2s_audio_sampling_freq_type audio_sampling_freq
Definition: at32f403_spi.h:273
i2s_init_type::data_channel_format
i2s_data_channel_format_type data_channel_format
Definition: at32f403_spi.h:274
i2s_init_type::mclk_output_enable
confirm_state mclk_output_enable
Definition: at32f403_spi.h:276
i2s_init_type::audio_protocol
i2s_audio_protocol_type audio_protocol
Definition: at32f403_spi.h:272
i2s_init_type::operation_mode
i2s_operation_mode_type operation_mode
Definition: at32f403_spi.h:271
i2s_init_type::clock_polarity
i2s_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:275
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
spi_type
type define spi register all
Definition: at32f403_spi.h:283
spi_type::tdbe
__IO uint32_t tdbe
Definition: at32f403_spi.h:340
spi_type::clkpha
__IO uint32_t clkpha
Definition: at32f403_spi.h:293
spi_type::hwcsoe
__IO uint32_t hwcsoe
Definition: at32f403_spi.h:321
spi_type::slben
__IO uint32_t slben
Definition: at32f403_spi.h:306
spi_type::ntc
__IO uint32_t ntc
Definition: at32f403_spi.h:303
spi_type::mdiv_h
__IO uint32_t mdiv_h
Definition: at32f403_spi.h:326
spi_type::rdbfie
__IO uint32_t rdbfie
Definition: at32f403_spi.h:324
spi_type::mmerr
__IO uint32_t mmerr
Definition: at32f403_spi.h:344
spi_type::dmaren
__IO uint32_t dmaren
Definition: at32f403_spi.h:319
spi_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_spi.h:327
spi_type::bf
__IO uint32_t bf
Definition: at32f403_spi.h:346
spi_type::i2sdbn
__IO uint32_t i2sdbn
Definition: at32f403_spi.h:412
spi_type::rcrc
__IO uint32_t rcrc
Definition: at32f403_spi.h:382
spi_type::errie
__IO uint32_t errie
Definition: at32f403_spi.h:323
spi_type::i2scbn
__IO uint32_t i2scbn
Definition: at32f403_spi.h:411
spi_type::i2sclkpol
__IO uint32_t i2sclkpol
Definition: at32f403_spi.h:413
spi_type::cpoly
__IO uint32_t cpoly
Definition: at32f403_spi.h:369
spi_type::ctrl1
__IO uint32_t ctrl1
Definition: at32f403_spi.h:290
spi_type::i2sodd
__IO uint32_t i2sodd
Definition: at32f403_spi.h:433
spi_type::swcsil
__IO uint32_t swcsil
Definition: at32f403_spi.h:299
spi_type::i2sclk
__IO uint32_t i2sclk
Definition: at32f403_spi.h:429
spi_type::tcrc
__IO uint32_t tcrc
Definition: at32f403_spi.h:395
spi_type::acs
__IO uint32_t acs
Definition: at32f403_spi.h:341
spi_type::i2smclkoe
__IO uint32_t i2smclkoe
Definition: at32f403_spi.h:434
spi_type::ltf
__IO uint32_t ltf
Definition: at32f403_spi.h:298
spi_type::clkpol
__IO uint32_t clkpol
Definition: at32f403_spi.h:294
spi_type::slbtd
__IO uint32_t slbtd
Definition: at32f403_spi.h:305
spi_type::dmaten
__IO uint32_t dmaten
Definition: at32f403_spi.h:320
spi_type::ccen
__IO uint32_t ccen
Definition: at32f403_spi.h:304
spi_type::fbn
__IO uint32_t fbn
Definition: at32f403_spi.h:302
spi_type::dt
__IO uint32_t dt
Definition: at32f403_spi.h:356
spi_type::msten
__IO uint32_t msten
Definition: at32f403_spi.h:295
spi_type::ccerr
__IO uint32_t ccerr
Definition: at32f403_spi.h:343
spi_type::sts
__IO uint32_t sts
Definition: at32f403_spi.h:336
spi_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_spi.h:307
spi_type::i2sdiv_h
__IO uint32_t i2sdiv_h
Definition: at32f403_spi.h:435
spi_type::opersel
__IO uint32_t opersel
Definition: at32f403_spi.h:417
spi_type::i2sdiv_l
__IO uint32_t i2sdiv_l
Definition: at32f403_spi.h:432
spi_type::i2smsel
__IO uint32_t i2smsel
Definition: at32f403_spi.h:419
spi_type::pcmfssel
__IO uint32_t pcmfssel
Definition: at32f403_spi.h:416
spi_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_spi.h:316
spi_type::roerr
__IO uint32_t roerr
Definition: at32f403_spi.h:345
spi_type::i2sctrl
__IO uint32_t i2sctrl
Definition: at32f403_spi.h:408
spi_type::stdsel
__IO uint32_t stdsel
Definition: at32f403_spi.h:414
spi_type::rdbf
__IO uint32_t rdbf
Definition: at32f403_spi.h:339
spi_type::tuerr
__IO uint32_t tuerr
Definition: at32f403_spi.h:342
spi_type::mdiv_l
__IO uint32_t mdiv_l
Definition: at32f403_spi.h:296
spi_type::spien
__IO uint32_t spien
Definition: at32f403_spi.h:297
spi_type::swcsen
__IO uint32_t swcsen
Definition: at32f403_spi.h:300
spi_type::ora
__IO uint32_t ora
Definition: at32f403_spi.h:301
spi_type::i2sen
__IO uint32_t i2sen
Definition: at32f403_spi.h:418
spi_type::tdbeie
__IO uint32_t tdbeie
Definition: at32f403_spi.h:325


AT32F403 Firmwary Library: at32f403_tmr.c Source File

  • libraries
  • drivers
  • src
at32f403_tmr.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef TMR_MODULE_ENABLED
37
50void tmr_reset(tmr_type *tmr_x)
51{
52 if(tmr_x == TMR1)
53 {
54 crm_periph_reset(CRM_TMR1_PERIPH_RESET, TRUE);
55 crm_periph_reset(CRM_TMR1_PERIPH_RESET, FALSE);
56 }
57 else if(tmr_x == TMR2)
58 {
59 crm_periph_reset(CRM_TMR2_PERIPH_RESET, TRUE);
60 crm_periph_reset(CRM_TMR2_PERIPH_RESET, FALSE);
61 }
62 else if(tmr_x == TMR3)
63 {
64 crm_periph_reset(CRM_TMR3_PERIPH_RESET, TRUE);
65 crm_periph_reset(CRM_TMR3_PERIPH_RESET, FALSE);
66 }
67 else if(tmr_x == TMR4)
68 {
69 crm_periph_reset(CRM_TMR4_PERIPH_RESET, TRUE);
70 crm_periph_reset(CRM_TMR4_PERIPH_RESET, FALSE);
71 }
72 else if(tmr_x == TMR5)
73 {
74 crm_periph_reset(CRM_TMR5_PERIPH_RESET, TRUE);
75 crm_periph_reset(CRM_TMR5_PERIPH_RESET, FALSE);
76 }
77 else if(tmr_x == TMR6)
78 {
79 crm_periph_reset(CRM_TMR6_PERIPH_RESET, TRUE);
80 crm_periph_reset(CRM_TMR6_PERIPH_RESET, FALSE);
81 }
82 else if(tmr_x == TMR7)
83 {
84 crm_periph_reset(CRM_TMR7_PERIPH_RESET, TRUE);
85 crm_periph_reset(CRM_TMR7_PERIPH_RESET, FALSE);
86 }
87 else if(tmr_x == TMR8)
88 {
89 crm_periph_reset(CRM_TMR8_PERIPH_RESET, TRUE);
90 crm_periph_reset(CRM_TMR8_PERIPH_RESET, FALSE);
91 }
92 else if(tmr_x == TMR9)
93 {
94 crm_periph_reset(CRM_TMR9_PERIPH_RESET, TRUE);
95 crm_periph_reset(CRM_TMR9_PERIPH_RESET, FALSE);
96 }
97 else if(tmr_x == TMR10)
98 {
99 crm_periph_reset(CRM_TMR10_PERIPH_RESET, TRUE);
100 crm_periph_reset(CRM_TMR10_PERIPH_RESET, FALSE);
101 }
102 else if(tmr_x == TMR11)
103 {
104 crm_periph_reset(CRM_TMR11_PERIPH_RESET, TRUE);
105 crm_periph_reset(CRM_TMR11_PERIPH_RESET, FALSE);
106 }
107 else if(tmr_x == TMR12)
108 {
109 crm_periph_reset(CRM_TMR12_PERIPH_RESET, TRUE);
110 crm_periph_reset(CRM_TMR12_PERIPH_RESET, FALSE);
111 }
112 else if(tmr_x == TMR13)
113 {
114 crm_periph_reset(CRM_TMR13_PERIPH_RESET, TRUE);
115 crm_periph_reset(CRM_TMR13_PERIPH_RESET, FALSE);
116 }
117 else if(tmr_x == TMR14)
118 {
119 crm_periph_reset(CRM_TMR14_PERIPH_RESET, TRUE);
120 crm_periph_reset(CRM_TMR14_PERIPH_RESET, FALSE);
121 }
122}
123
133void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
134{
135 /* tmr counter enable */
136 tmr_x->ctrl1_bit.tmren = new_state;
137}
138
145void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
146{
147 tmr_output_struct->oc_mode = TMR_OUTPUT_CONTROL_OFF;
148 tmr_output_struct->oc_idle_state = FALSE;
149 tmr_output_struct->occ_idle_state = FALSE;
150 tmr_output_struct->oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
151 tmr_output_struct->occ_polarity = TMR_OUTPUT_ACTIVE_HIGH;
152 tmr_output_struct->oc_output_state = FALSE;
153 tmr_output_struct->occ_output_state = FALSE;
154}
155
162void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
163{
164 tmr_input_struct->input_channel_select = TMR_SELECT_CHANNEL_1;
165 tmr_input_struct->input_polarity_select = TMR_INPUT_RISING_EDGE;
166 tmr_input_struct->input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
167 tmr_input_struct->input_filter_value = 0x0;
168}
169
176void tmr_brkdt_default_para_init(tmr_brkdt_config_type *tmr_brkdt_struct)
177{
178 tmr_brkdt_struct->deadtime = 0x0;
179 tmr_brkdt_struct->brk_polarity = TMR_BRK_INPUT_ACTIVE_LOW;
180 tmr_brkdt_struct->wp_level = TMR_WP_OFF;
181 tmr_brkdt_struct->auto_output_enable = FALSE ;
182 tmr_brkdt_struct->fcsoen_state = FALSE ;
183 tmr_brkdt_struct->fcsodis_state = FALSE ;
184 tmr_brkdt_struct->brk_enable = FALSE ;
185}
186
198void tmr_base_init(tmr_type* tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
199{
200 /* set the pr value */
201 tmr_x->pr = tmr_pr;
202
203 /* set the div value */
204 tmr_x->div = tmr_div;
205
206 /* trigger the overflow event to immediately reload pr value and div value */
207 tmr_x->swevt_bit.ovfswtr = TRUE;
208}
209
223void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
224{
225 /* set tmr clock source division */
226 tmr_x->ctrl1_bit.clkdiv = tmr_clock_div;
227}
228
244void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
245{
246 /* set the cnt direct */
247 tmr_x->ctrl1_bit.cnt_dir = tmr_cnt_dir;
248}
249
258void tmr_repetition_counter_set(tmr_type *tmr_x, uint8_t tmr_rpr_value)
259{
260 /* set the repetition counter value */
261 tmr_x->rpr_bit.rpr = tmr_rpr_value;
262}
263
274void tmr_counter_value_set(tmr_type *tmr_x, uint32_t tmr_cnt_value)
275{
276 /* set the tmr counter value */
277 tmr_x->cval = tmr_cnt_value;
278}
279
288uint32_t tmr_counter_value_get(tmr_type *tmr_x)
289{
290 return tmr_x->cval;
291}
292
302void tmr_div_value_set(tmr_type *tmr_x, uint32_t tmr_div_value)
303{
304 /* set the tmr div value */
305 tmr_x->div = tmr_div_value;
306}
307
316uint32_t tmr_div_value_get(tmr_type *tmr_x)
317{
318 return tmr_x->div;
319}
320
337void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
338 tmr_output_config_type *tmr_output_struct)
339{
340 uint16_t channel_index = 0, channel_c_index = 0, channel = 0, chx_offset, chcx_offset;
341
342 chx_offset = (8 + tmr_channel);
343 chcx_offset = (9 + tmr_channel);
344
345 /* get channel idle state bit position in ctrl2 register */
346 channel_index = (uint16_t)(tmr_output_struct->oc_idle_state << chx_offset);
347
348 /* get channel complementary idle state bit position in ctrl2 register */
349 channel_c_index = (uint16_t)(tmr_output_struct->occ_idle_state << chcx_offset);
350
351 /* set output channel complementary idle state */
352 tmr_x->ctrl2 &= ~(1<<chcx_offset);
353 tmr_x->ctrl2 |= channel_c_index;
354
355 /* set output channel idle state */
356 tmr_x->ctrl2 &= ~(1<<chx_offset);
357 tmr_x->ctrl2 |= channel_index;
358
359 /* set channel output mode */
360 channel = tmr_channel;
361
362 switch(channel)
363 {
364 case TMR_SELECT_CHANNEL_1:
365 tmr_x->cm1_output_bit.c1octrl = tmr_output_struct->oc_mode;
366 break;
367
368 case TMR_SELECT_CHANNEL_2:
369 tmr_x->cm1_output_bit.c2octrl = tmr_output_struct->oc_mode;
370 break;
371
372 case TMR_SELECT_CHANNEL_3:
373 tmr_x->cm2_output_bit.c3octrl = tmr_output_struct->oc_mode;
374 break;
375
376 case TMR_SELECT_CHANNEL_4:
377 tmr_x->cm2_output_bit.c4octrl = tmr_output_struct->oc_mode;
378 break;
379
380 default:
381 break;
382 }
383
384 chx_offset = ((tmr_channel * 2) + 1);
385 chcx_offset = ((tmr_channel * 2) + 3);
386
387 /* get channel polarity bit position in cctrl register */
388 channel_index = (uint16_t)(tmr_output_struct->oc_polarity << chx_offset);
389
390 /* get channel complementary polarity bit position in cctrl register */
391 channel_c_index = (uint16_t)(tmr_output_struct->occ_polarity << chcx_offset);
392
393 /* set output channel complementary polarity */
394 tmr_x->cctrl &= ~(1<<chcx_offset);
395 tmr_x->cctrl |= channel_c_index;
396
397 /* set output channel polarity */
398 tmr_x->cctrl &= ~(1<<chx_offset);
399 tmr_x->cctrl |= channel_index;
400
401 chx_offset = (tmr_channel * 2);
402 chcx_offset = ((tmr_channel * 2) + 2);
403
404 /* get channel enable bit position in cctrl register */
405 channel_index = (uint16_t)(tmr_output_struct->oc_output_state << (tmr_channel * 2));
406
407 /* get channel complementary enable bit position in cctrl register */
408 channel_c_index = (uint16_t)(tmr_output_struct->occ_output_state << ((tmr_channel * 2) + 2));
409
410 /* set output channel complementary enable bit */
411 tmr_x->cctrl &= ~(1<<chcx_offset);
412 tmr_x->cctrl |= channel_c_index;
413
414 /* set output channel enable bit */
415 tmr_x->cctrl &= ~(1<<chx_offset);
416 tmr_x->cctrl |= channel_index;
417}
418
443void tmr_output_channel_mode_select(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
444 tmr_output_control_mode_type oc_mode)
445{
446 uint16_t channel;
447
448 channel = tmr_channel;
449
450 switch(channel)
451 {
452 case TMR_SELECT_CHANNEL_1:
453 tmr_x->cm1_output_bit.c1octrl = oc_mode;
454 break;
455
456 case TMR_SELECT_CHANNEL_2:
457 tmr_x->cm1_output_bit.c2octrl = oc_mode;
458 break;
459
460 case TMR_SELECT_CHANNEL_3:
461 tmr_x->cm2_output_bit.c3octrl = oc_mode;
462 break;
463
464 case TMR_SELECT_CHANNEL_4:
465 tmr_x->cm2_output_bit.c4octrl = oc_mode;
466 break;
467
468 default:
469 break;
470 }
471}
483void tmr_period_value_set(tmr_type *tmr_x, uint32_t tmr_pr_value)
484{
485 /* set tmr period value */
486 tmr_x->pr = tmr_pr_value;
487}
488
499uint32_t tmr_period_value_get(tmr_type *tmr_x)
500{
501 return tmr_x->pr;
502}
503
520void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
521 uint32_t tmr_channel_value)
522{
523 uint16_t channel;
524
525 channel = tmr_channel;
526
527 /* set tmr channel value */
528 switch(channel)
529 {
530 case TMR_SELECT_CHANNEL_1:
531 tmr_x->c1dt = tmr_channel_value;
532 break;
533
534 case TMR_SELECT_CHANNEL_2:
535 tmr_x->c2dt = tmr_channel_value;
536 break;
537
538 case TMR_SELECT_CHANNEL_3:
539 tmr_x->c3dt = tmr_channel_value;
540 break;
541
542 case TMR_SELECT_CHANNEL_4:
543 tmr_x->c4dt = tmr_channel_value;
544 break;
545
546 default:
547 break;
548 }
549}
550
565uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
566{
567 uint32_t cc_value_get = 0;
568 uint16_t channel;
569
570 channel = tmr_channel;
571
572 /* get tmr channel value */
573 switch(channel)
574 {
575 case TMR_SELECT_CHANNEL_1:
576 cc_value_get = tmr_x->c1dt;
577 break;
578
579 case TMR_SELECT_CHANNEL_2:
580 cc_value_get = tmr_x->c2dt;
581 break;
582
583 case TMR_SELECT_CHANNEL_3:
584 cc_value_get = tmr_x->c3dt;
585 break;
586
587 case TMR_SELECT_CHANNEL_4:
588 cc_value_get = tmr_x->c4dt;
589 break;
590
591 default:
592 break;
593 }
594
595 return cc_value_get;
596}
606void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
607{
608 /* tmr period buffer set */
609 tmr_x->ctrl1_bit.prben = new_state;
610}
611
627void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
628 confirm_state new_state)
629{
630 uint16_t channel;
631
632 channel = tmr_channel;
633
634 /* get tmr channel value */
635 switch(channel)
636 {
637 case TMR_SELECT_CHANNEL_1:
638 tmr_x->cm1_output_bit.c1oben = new_state;
639 break;
640
641 case TMR_SELECT_CHANNEL_2:
642 tmr_x->cm1_output_bit.c2oben = new_state;
643 break;
644
645 case TMR_SELECT_CHANNEL_3:
646 tmr_x->cm2_output_bit.c3oben = new_state;
647 break;
648
649 case TMR_SELECT_CHANNEL_4:
650 tmr_x->cm2_output_bit.c4oben = new_state;
651 break;
652
653 default:
654 break;
655 }
656}
657
673void tmr_output_channel_immediately_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
674 confirm_state new_state)
675{
676 uint16_t channel;
677
678 channel = tmr_channel;
679
680 /* get tmr channel value */
681 switch(channel)
682 {
683 case TMR_SELECT_CHANNEL_1:
684 tmr_x->cm1_output_bit.c1oien = new_state;
685 break;
686
687 case TMR_SELECT_CHANNEL_2:
688 tmr_x->cm1_output_bit.c2oien = new_state;
689 break;
690
691 case TMR_SELECT_CHANNEL_3:
692 tmr_x->cm2_output_bit.c3oien = new_state;
693 break;
694
695 case TMR_SELECT_CHANNEL_4:
696 tmr_x->cm2_output_bit.c4oien = new_state;
697 break;
698
699 default:
700 break;
701 }
702}
703
719void tmr_output_channel_switch_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
720 confirm_state new_state)
721{
722 uint16_t channel;
723
724 channel = tmr_channel;
725
726 /* get tmr channel value */
727 switch(channel)
728 {
729 case TMR_SELECT_CHANNEL_1:
730 tmr_x->cm1_output_bit.c1osen = new_state;
731 break;
732
733 case TMR_SELECT_CHANNEL_2:
734 tmr_x->cm1_output_bit.c2osen = new_state;
735 break;
736
737 case TMR_SELECT_CHANNEL_3:
738 tmr_x->cm2_output_bit.c3osen = new_state;
739 break;
740
741 case TMR_SELECT_CHANNEL_4:
742 tmr_x->cm2_output_bit.c4osen = new_state;
743 break;
744
745 default:
746 break;
747 }
748}
749
758void tmr_one_cycle_mode_enable(tmr_type *tmr_x, confirm_state new_state)
759{
760 /* tmr one cycle mode enable */
761 tmr_x->ctrl1_bit.ocmen = new_state;
762}
763
772void tmr_32_bit_function_enable (tmr_type *tmr_x, confirm_state new_state)
773{
774 /* tmr 32 bit function(plus mode) enable,only for TMR2/TMR5 */
775 if((tmr_x == TMR2) || (tmr_x == TMR5))
776 {
777 tmr_x->ctrl1_bit.pmen = new_state;
778 }
779}
780
790void tmr_overflow_request_source_set(tmr_type *tmr_x, confirm_state new_state)
791{
792 tmr_x->ctrl1_bit.ovfs = new_state;
793}
794
804void tmr_overflow_event_disable(tmr_type *tmr_x, confirm_state new_state)
805{
806 tmr_x->ctrl1_bit.ovfen = new_state;
807}
808
825void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct,
826 tmr_channel_input_divider_type divider_factor)
827{
828 uint16_t channel = 0;
829
830 /* get channel selected */
831 channel = input_struct->input_channel_select;
832
833 switch(channel)
834 {
835 case TMR_SELECT_CHANNEL_1:
836 tmr_x->cctrl_bit.c1en = FALSE;
837 tmr_x->cctrl_bit.c1p = (uint32_t)input_struct->input_polarity_select;
838 tmr_x->cctrl_bit.c1cp = (input_struct->input_polarity_select & 0x2) >> 1;
839 tmr_x->cm1_input_bit.c1c = input_struct->input_mapped_select;
840 tmr_x->cm1_input_bit.c1df = input_struct->input_filter_value;
841 tmr_x->cm1_input_bit.c1idiv = divider_factor;
842 tmr_x->cctrl_bit.c1en = TRUE;
843 break;
844
845 case TMR_SELECT_CHANNEL_2:
846 tmr_x->cctrl_bit.c2en = FALSE;
847 tmr_x->cctrl_bit.c2p = (uint32_t)input_struct->input_polarity_select;
848 tmr_x->cctrl_bit.c2cp = (input_struct->input_polarity_select & 0x2) >> 1;
849 tmr_x->cm1_input_bit.c2c = input_struct->input_mapped_select;
850 tmr_x->cm1_input_bit.c2df = input_struct->input_filter_value;
851 tmr_x->cm1_input_bit.c2idiv = divider_factor;
852 tmr_x->cctrl_bit.c2en = TRUE;
853 break;
854
855 case TMR_SELECT_CHANNEL_3:
856 tmr_x->cctrl_bit.c3en = FALSE;
857 tmr_x->cctrl_bit.c3p = (uint32_t)input_struct->input_polarity_select;
858 tmr_x->cctrl_bit.c3cp = (input_struct->input_polarity_select & 0x2) >> 1;
859 tmr_x->cm2_input_bit.c3c = input_struct->input_mapped_select;
860 tmr_x->cm2_input_bit.c3df = input_struct->input_filter_value;
861 tmr_x->cm2_input_bit.c3idiv = divider_factor;
862 tmr_x->cctrl_bit.c3en = TRUE;
863 break;
864
865 case TMR_SELECT_CHANNEL_4:
866 tmr_x->cctrl_bit.c4en = FALSE;
867 tmr_x->cctrl_bit.c4p = (uint32_t)input_struct->input_polarity_select;
868 tmr_x->cm2_input_bit.c4c = input_struct->input_mapped_select;
869 tmr_x->cm2_input_bit.c4df = input_struct->input_filter_value;
870 tmr_x->cm2_input_bit.c4idiv = divider_factor;
871 tmr_x->cctrl_bit.c4en = TRUE;
872 break;
873
874 default:
875 break;
876 }
877}
878
897void tmr_channel_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
898{
899 uint16_t channel;
900
901 channel = tmr_channel;
902
903 switch(channel)
904 {
905 case TMR_SELECT_CHANNEL_1:
906 tmr_x->cctrl_bit.c1en = new_state;
907 break;
908
909 case TMR_SELECT_CHANNEL_1C:
910 tmr_x->cctrl_bit.c1cen = new_state;
911 break;
912
913 case TMR_SELECT_CHANNEL_2:
914 tmr_x->cctrl_bit.c2en = new_state;
915 break;
916
917 case TMR_SELECT_CHANNEL_2C:
918 tmr_x->cctrl_bit.c2cen = new_state;
919 break;
920
921 case TMR_SELECT_CHANNEL_3:
922 tmr_x->cctrl_bit.c3en = new_state;
923 break;
924
925 case TMR_SELECT_CHANNEL_3C:
926 tmr_x->cctrl_bit.c3cen = new_state;
927 break;
928
929 case TMR_SELECT_CHANNEL_4:
930 tmr_x->cctrl_bit.c4en = new_state;
931 break;
932
933 default:
934 break;
935 }
936}
937
953void tmr_input_channel_filter_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
954 uint16_t filter_value)
955{
956 uint16_t channel;
957
958 channel = tmr_channel;
959
960 switch(channel)
961 {
962 case TMR_SELECT_CHANNEL_1:
963 tmr_x->cm1_input_bit.c1df = filter_value;
964 break;
965
966 case TMR_SELECT_CHANNEL_2:
967 tmr_x->cm1_input_bit.c2df = filter_value;
968 break;
969
970 case TMR_SELECT_CHANNEL_3:
971 tmr_x->cm2_input_bit.c3df = filter_value;
972 break;
973
974 case TMR_SELECT_CHANNEL_4:
975 tmr_x->cm2_input_bit.c4df = filter_value;
976 break;
977
978 default:
979 break;
980 }
981}
982
999void tmr_pwm_input_config(tmr_type *tmr_x, tmr_input_config_type *input_struct,
1000 tmr_channel_input_divider_type divider_factor)
1001{
1002 uint16_t channel = 0;
1003
1004 /* get channel selected */
1005 channel = input_struct->input_channel_select;
1006
1007 switch(channel)
1008 {
1009 case TMR_SELECT_CHANNEL_1:
1010 if(input_struct->input_polarity_select == TMR_INPUT_RISING_EDGE)
1011 {
1012 /* set channel polarity */
1013 tmr_x->cctrl_bit.c1p = TMR_INPUT_RISING_EDGE;
1014 tmr_x->cctrl_bit.c2p = TMR_INPUT_FALLING_EDGE;
1015 }
1016 else if(input_struct->input_polarity_select == TMR_INPUT_FALLING_EDGE)
1017 {
1018 /* set channel polarity */
1019 tmr_x->cctrl_bit.c1p = TMR_INPUT_FALLING_EDGE;
1020 tmr_x->cctrl_bit.c2p = TMR_INPUT_RISING_EDGE;
1021 }
1022
1023 if(input_struct->input_mapped_select == TMR_CC_CHANNEL_MAPPED_DIRECT)
1024 {
1025 /* ic1 is mapped on ti1 */
1026 tmr_x->cm1_input_bit.c1c = TMR_CC_CHANNEL_MAPPED_DIRECT;
1027
1028 /* ic1 is mapped on ti2 */
1029 tmr_x->cm1_input_bit.c2c = TMR_CC_CHANNEL_MAPPED_INDIRECT;
1030 }
1031 else if(input_struct->input_mapped_select == TMR_CC_CHANNEL_MAPPED_INDIRECT)
1032 {
1033 /* ic1 is mapped on ti1 */
1034 tmr_x->cm1_input_bit.c1c = TMR_CC_CHANNEL_MAPPED_INDIRECT;
1035
1036 /* ic1 is mapped on ti2 */
1037 tmr_x->cm1_input_bit.c2c = TMR_CC_CHANNEL_MAPPED_DIRECT;
1038 }
1039
1040 /* set input ch1 and ch2 filter value*/
1041 tmr_x->cm1_input_bit.c1df = input_struct->input_filter_value;
1042 tmr_x->cm1_input_bit.c2df = input_struct->input_filter_value;
1043
1044 /*set input ch1 and ch2 divider value*/
1045 tmr_x->cm1_input_bit.c1idiv = divider_factor;
1046 tmr_x->cm1_input_bit.c2idiv = divider_factor;
1047
1048 tmr_x->cctrl_bit.c1en = TRUE;
1049 tmr_x->cctrl_bit.c2en = TRUE;
1050 break;
1051
1052 case TMR_SELECT_CHANNEL_2:
1053 if(input_struct->input_polarity_select == TMR_INPUT_RISING_EDGE)
1054 {
1055 /* set channel polarity */
1056 tmr_x->cctrl_bit.c2p = TMR_INPUT_RISING_EDGE;
1057 tmr_x->cctrl_bit.c1p = TMR_INPUT_FALLING_EDGE;
1058 }
1059 else if(input_struct->input_polarity_select == TMR_INPUT_FALLING_EDGE)
1060 {
1061 /* set channel polarity */
1062 tmr_x->cctrl_bit.c2p = TMR_INPUT_FALLING_EDGE;
1063 tmr_x->cctrl_bit.c1p = TMR_INPUT_RISING_EDGE;
1064 }
1065
1066 if(input_struct->input_mapped_select == TMR_CC_CHANNEL_MAPPED_DIRECT)
1067 {
1068 /* set mapped direct */
1069 tmr_x->cm1_input_bit.c2c = TMR_CC_CHANNEL_MAPPED_DIRECT;
1070 tmr_x->cm1_input_bit.c1c = TMR_CC_CHANNEL_MAPPED_INDIRECT;
1071 }
1072 else if(input_struct->input_mapped_select == TMR_CC_CHANNEL_MAPPED_INDIRECT)
1073 {
1074 /* set mapped direct */
1075 tmr_x->cm1_input_bit.c2c = TMR_CC_CHANNEL_MAPPED_INDIRECT;
1076 tmr_x->cm1_input_bit.c1c = TMR_CC_CHANNEL_MAPPED_DIRECT;
1077 }
1078
1079 /* set input ch1 and ch2 filter value*/
1080 tmr_x->cm1_input_bit.c1df = input_struct->input_filter_value;
1081 tmr_x->cm1_input_bit.c2df = input_struct->input_filter_value;
1082
1083 /*set input ch1 and ch2 divider value*/
1084 tmr_x->cm1_input_bit.c1idiv = divider_factor;
1085 tmr_x->cm1_input_bit.c2idiv = divider_factor;
1086
1087 tmr_x->cctrl_bit.c1en = TRUE;
1088 tmr_x->cctrl_bit.c2en = TRUE;
1089 break;
1090
1091 default:
1092 break;
1093 }
1094}
1095
1107void tmr_channel1_input_select(tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
1108{
1109 tmr_x->ctrl2_bit.c1insel = ch1_connect;
1110}
1111
1132void tmr_input_channel_divider_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
1133 tmr_channel_input_divider_type divider_factor)
1134{
1135 uint16_t channel;
1136
1137 channel = tmr_channel;
1138
1139 switch(channel)
1140 {
1141 case TMR_SELECT_CHANNEL_1:
1142 tmr_x->cm1_input_bit.c1idiv = divider_factor;
1143 break;
1144
1145 case TMR_SELECT_CHANNEL_2:
1146 tmr_x->cm1_input_bit.c2idiv = divider_factor;
1147 break;
1148
1149 case TMR_SELECT_CHANNEL_3:
1150 tmr_x->cm2_input_bit.c3idiv = divider_factor;
1151 break;
1152
1153 case TMR_SELECT_CHANNEL_4:
1154 tmr_x->cm2_input_bit.c4idiv = divider_factor;
1155 break;
1156
1157 default:
1158 break;
1159 }
1160}
1161
1179void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
1180{
1181 tmr_x->ctrl2_bit.ptos = primary_mode;
1182}
1183
1201void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
1202{
1203 tmr_x->stctrl_bit.smsel = sub_mode;
1204}
1205
1217void tmr_channel_dma_select(tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select)
1218{
1219 tmr_x->ctrl2_bit.drs = cc_dma_select;
1220}
1221
1230void tmr_hall_select(tmr_type *tmr_x, confirm_state new_state)
1231{
1232 tmr_x->ctrl2_bit.ccfs = new_state;
1233}
1234
1243void tmr_channel_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
1244{
1245 tmr_x->ctrl2_bit.cbctrl = new_state;
1246}
1247
1265void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
1266{
1267 tmr_x->stctrl_bit.stis = trigger_select;
1268}
1269
1278void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
1279{
1280 tmr_x->stctrl_bit.sts = new_state;
1281}
1282
1301void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
1302{
1303 if(new_state == TRUE)
1304 {
1305 tmr_x->iden |= dma_request;
1306 }
1307 else if(new_state == FALSE)
1308 {
1309 tmr_x->iden &= ~dma_request;
1310 }
1311}
1312
1332void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
1333{
1334 if(new_state == TRUE)
1335 {
1336 tmr_x->iden |= tmr_interrupt;
1337 }
1338 else if(new_state == FALSE)
1339 {
1340 tmr_x->iden &= ~tmr_interrupt;
1341 }
1342}
1343
1362 flag_status tmr_interrupt_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
1363{
1364 flag_status status = RESET;
1365
1366 if((tmr_x->ists & tmr_flag) && (tmr_x->iden & tmr_flag))
1367 {
1368 status = SET;
1369 }
1370 else
1371 {
1372 status = RESET;
1373 }
1374
1375 return status;
1376}
1377
1400 flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
1401{
1402 flag_status status = RESET;
1403
1404 if((tmr_x->ists & tmr_flag) != RESET)
1405 {
1406 status = SET;
1407 }
1408 else
1409 {
1410 status = RESET;
1411 }
1412
1413 return status;
1414}
1415
1438void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
1439{
1440 tmr_x->ists = ~tmr_flag;
1441}
1442
1461void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
1462{
1463 tmr_x->swevt |= tmr_event;
1464}
1465
1474void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
1475{
1476 tmr_x->brk_bit.oen = new_state;
1477}
1478
1486void tmr_internal_clock_set(tmr_type *tmr_x)
1487{
1488 tmr_x->stctrl_bit.smsel = TMR_SUB_MODE_DIABLE;
1489}
1490
1512void tmr_output_channel_polarity_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
1513 tmr_polarity_active_type oc_polarity)
1514{
1515 uint16_t channel;
1516
1517 channel = tmr_channel;
1518
1519 switch(channel)
1520 {
1521 case TMR_SELECT_CHANNEL_1:
1522 tmr_x->cctrl_bit.c1p = (uint32_t)oc_polarity;
1523 break;
1524
1525 case TMR_SELECT_CHANNEL_2:
1526 tmr_x->cctrl_bit.c2p = (uint32_t)oc_polarity;
1527 break;
1528
1529 case TMR_SELECT_CHANNEL_3:
1530 tmr_x->cctrl_bit.c3p = (uint32_t)oc_polarity;
1531 break;
1532
1533 case TMR_SELECT_CHANNEL_4:
1534 tmr_x->cctrl_bit.c4p = (uint32_t)oc_polarity;
1535 break;
1536
1537 case TMR_SELECT_CHANNEL_1C:
1538 tmr_x->cctrl_bit.c1cp = (uint32_t)oc_polarity;
1539 break;
1540
1541 case TMR_SELECT_CHANNEL_2C:
1542 tmr_x->cctrl_bit.c2cp = (uint32_t)oc_polarity;
1543 break;
1544
1545 case TMR_SELECT_CHANNEL_3C:
1546 tmr_x->cctrl_bit.c3cp = (uint32_t)oc_polarity;
1547 break;
1548
1549 default:
1550 break;
1551 }
1552}
1553
1572void tmr_external_clock_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide,
1573 tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
1574{
1575 tmr_x->stctrl_bit.esdiv = es_divide;
1576 tmr_x->stctrl_bit.esp = es_polarity;
1577 tmr_x->stctrl_bit.esf = es_filter;
1578}
1579
1598void tmr_external_clock_mode1_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide,
1599 tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
1600{
1601 tmr_external_clock_config(tmr_x, es_divide, es_polarity, es_filter);
1602 tmr_x->stctrl_bit.smsel = TMR_SUB_EXTERNAL_CLOCK_MODE_A;
1603 tmr_x->stctrl_bit.stis = TMR_SUB_INPUT_SEL_EXTIN;
1604}
1605
1624void tmr_external_clock_mode2_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide,
1625 tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
1626{
1627 tmr_external_clock_config(tmr_x, es_divide, es_polarity, es_filter);
1628 tmr_x->stctrl_bit.ecmben = TRUE;
1629}
1630
1653void tmr_encoder_mode_config(tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type
1654 ic1_polarity, tmr_input_polarity_type ic2_polarity)
1655{
1656 tmr_x->stctrl_bit.smsel = encoder_mode;
1657
1658 /* set ic1 polarity */
1659 tmr_x->cctrl_bit.c1p = (ic1_polarity & 0x1);
1660 tmr_x->cctrl_bit.c1cp = (ic1_polarity >> 1);
1661 /* set ic1 as input channel */
1662 tmr_x->cm1_input_bit.c1c = TMR_CC_CHANNEL_MAPPED_DIRECT;
1663
1664 /* set ic2 polarity */
1665 tmr_x->cctrl_bit.c2p = (ic2_polarity & 0x1);
1666 tmr_x->cctrl_bit.c2cp = (ic2_polarity >> 1);
1667 /* set ic2 as input channel */
1668 tmr_x->cm1_input_bit.c2c = TMR_CC_CHANNEL_MAPPED_DIRECT;
1669}
1670
1689void tmr_force_output_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel,
1690 tmr_force_output_type force_output)
1691{
1692 uint16_t channel;
1693
1694 channel = tmr_channel;
1695
1696 switch(channel)
1697 {
1698 case TMR_SELECT_CHANNEL_1:
1699 tmr_x->cm1_output_bit.c1octrl = force_output;
1700 break;
1701
1702 case TMR_SELECT_CHANNEL_2:
1703 tmr_x->cm1_output_bit.c2octrl = force_output;
1704 break;
1705
1706 case TMR_SELECT_CHANNEL_3:
1707 tmr_x->cm2_output_bit.c3octrl = force_output;
1708 break;
1709
1710 case TMR_SELECT_CHANNEL_4:
1711 tmr_x->cm2_output_bit.c4octrl = force_output;
1712 break;
1713
1714 default:
1715 break;
1716 }
1717}
1718
1755void tmr_dma_control_config(tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length,
1756 tmr_dma_address_type dma_base_address)
1757{
1758 tmr_x->dmactrl_bit.dtb = dma_length;
1759 tmr_x->dmactrl_bit.addr = dma_base_address;
1760}
1761
1771void tmr_brkdt_config(tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
1772{
1773 tmr_x->brk_bit.brken = brkdt_struct->brk_enable;
1774 tmr_x->brk_bit.dtc = brkdt_struct->deadtime;
1775 tmr_x->brk_bit.fcsodis = brkdt_struct->fcsodis_state;
1776 tmr_x->brk_bit.fcsoen = brkdt_struct->fcsoen_state;
1777 tmr_x->brk_bit.brkv = brkdt_struct->brk_polarity;
1778 tmr_x->brk_bit.aoen = brkdt_struct->auto_output_enable;
1779 tmr_x->brk_bit.wpc = brkdt_struct->wp_level;
1780}
1781
1786#endif
1787
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:37
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
CRM_TMR2_PERIPH_RESET
@ CRM_TMR2_PERIPH_RESET
Definition: at32f403_crm.h:184
CRM_TMR4_PERIPH_RESET
@ CRM_TMR4_PERIPH_RESET
Definition: at32f403_crm.h:186
CRM_TMR10_PERIPH_RESET
@ CRM_TMR10_PERIPH_RESET
Definition: at32f403_crm.h:181
CRM_TMR13_PERIPH_RESET
@ CRM_TMR13_PERIPH_RESET
Definition: at32f403_crm.h:191
CRM_TMR14_PERIPH_RESET
@ CRM_TMR14_PERIPH_RESET
Definition: at32f403_crm.h:192
CRM_TMR5_PERIPH_RESET
@ CRM_TMR5_PERIPH_RESET
Definition: at32f403_crm.h:187
CRM_TMR9_PERIPH_RESET
@ CRM_TMR9_PERIPH_RESET
Definition: at32f403_crm.h:180
CRM_TMR1_PERIPH_RESET
@ CRM_TMR1_PERIPH_RESET
Definition: at32f403_crm.h:174
CRM_TMR8_PERIPH_RESET
@ CRM_TMR8_PERIPH_RESET
Definition: at32f403_crm.h:176
CRM_TMR3_PERIPH_RESET
@ CRM_TMR3_PERIPH_RESET
Definition: at32f403_crm.h:185
CRM_TMR7_PERIPH_RESET
@ CRM_TMR7_PERIPH_RESET
Definition: at32f403_crm.h:189
CRM_TMR12_PERIPH_RESET
@ CRM_TMR12_PERIPH_RESET
Definition: at32f403_crm.h:190
CRM_TMR11_PERIPH_RESET
@ CRM_TMR11_PERIPH_RESET
Definition: at32f403_crm.h:182
CRM_TMR6_PERIPH_RESET
@ CRM_TMR6_PERIPH_RESET
Definition: at32f403_crm.h:188
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
tmr_dma_request_type
tmr_dma_request_type
tmr dma request type
Definition: at32f403_tmr.h:266
tmr_external_signal_divider_type
tmr_external_signal_divider_type
tmr external signal divider type
Definition: at32f403_tmr.h:305
tmr_polarity_active_type
tmr_polarity_active_type
tmr polarity active type
Definition: at32f403_tmr.h:295
tmr_count_mode_type
tmr_count_mode_type
tmr counter mode type
Definition: at32f403_tmr.h:103
tmr_input_polarity_type
tmr_input_polarity_type
tmr input channel polarity type
Definition: at32f403_tmr.h:203
tmr_dma_request_source_type
tmr_dma_request_source_type
tmr dma request source select type
Definition: at32f403_tmr.h:257
tmr_channel_select_type
tmr_channel_select_type
tmr channel select type
Definition: at32f403_tmr.h:213
tmr_external_signal_polarity_type
tmr_external_signal_polarity_type
tmr external signal polarity type
Definition: at32f403_tmr.h:316
tmr_dma_address_type
tmr_dma_address_type
tmr dma base address type
Definition: at32f403_tmr.h:350
tmr_channel1_input_connected_type
tmr_channel1_input_connected_type
tmr channel1 input connected type
Definition: at32f403_tmr.h:227
tmr_clock_division_type
tmr_clock_division_type
tmr clock division type
Definition: at32f403_tmr.h:93
tmr_event_trigger_type
tmr_event_trigger_type
tmr event triggered by software type
Definition: at32f403_tmr.h:280
tmr_output_control_mode_type
tmr_output_control_mode_type
tmr output control mode type
Definition: at32f403_tmr.h:170
tmr_dma_transfer_length_type
tmr_dma_transfer_length_type
tmr dma transfer length type
Definition: at32f403_tmr.h:325
sub_tmr_input_sel_type
sub_tmr_input_sel_type
tmr subordinate mode input select type
Definition: at32f403_tmr.h:130
tmr_force_output_type
tmr_force_output_type
tmr force output type
Definition: at32f403_tmr.h:185
tmr_sub_mode_select_type
tmr_sub_mode_select_type
tmr subordinate mode select type
Definition: at32f403_tmr.h:145
tmr_primary_select_type
tmr_primary_select_type
tmr primary mode select type
Definition: at32f403_tmr.h:115
tmr_encoder_mode_type
tmr_encoder_mode_type
tmr encoder mode type
Definition: at32f403_tmr.h:160
tmr_channel_input_divider_type
tmr_channel_input_divider_type
tmr input divider type
Definition: at32f403_tmr.h:246
TMR_INPUT_FALLING_EDGE
@ TMR_INPUT_FALLING_EDGE
Definition: at32f403_tmr.h:205
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_1C
@ TMR_SELECT_CHANNEL_1C
Definition: at32f403_tmr.h:215
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2C
@ TMR_SELECT_CHANNEL_2C
Definition: at32f403_tmr.h:217
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_SELECT_CHANNEL_3C
@ TMR_SELECT_CHANNEL_3C
Definition: at32f403_tmr.h:219
TMR_WP_OFF
@ TMR_WP_OFF
Definition: at32f403_tmr.h:386
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_CC_CHANNEL_MAPPED_INDIRECT
@ TMR_CC_CHANNEL_MAPPED_INDIRECT
Definition: at32f403_tmr.h:238
TMR_BRK_INPUT_ACTIVE_LOW
@ TMR_BRK_INPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:377
TMR_OUTPUT_CONTROL_OFF
@ TMR_OUTPUT_CONTROL_OFF
Definition: at32f403_tmr.h:171
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_SUB_INPUT_SEL_EXTIN
@ TMR_SUB_INPUT_SEL_EXTIN
Definition: at32f403_tmr.h:138
TMR_SUB_EXTERNAL_CLOCK_MODE_A
@ TMR_SUB_EXTERNAL_CLOCK_MODE_A
Definition: at32f403_tmr.h:153
TMR_SUB_MODE_DIABLE
@ TMR_SUB_MODE_DIABLE
Definition: at32f403_tmr.h:146
tmr_dma_control_config
void tmr_dma_control_config(tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, tmr_dma_address_type dma_base_address)
config tmr dma control
Definition: at32f403_tmr.c:1755
tmr_channel_value_get
uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value
Definition: at32f403_tmr.c:565
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_period_value_get
uint32_t tmr_period_value_get(tmr_type *tmr_x)
get tmr period value
Definition: at32f403_tmr.c:499
tmr_channel_buffer_enable
void tmr_channel_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr channel buffer
Definition: at32f403_tmr.c:1243
tmr_overflow_request_source_set
void tmr_overflow_request_source_set(tmr_type *tmr_x, confirm_state new_state)
select tmr the overflow event sources
Definition: at32f403_tmr.c:790
tmr_output_channel_mode_select
void tmr_output_channel_mode_select(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_control_mode_type oc_mode)
select tmr output channel mode
Definition: at32f403_tmr.c:443
tmr_input_channel_divider_set
void tmr_input_channel_divider_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_channel_input_divider_type divider_factor)
set tmr input channel divider
Definition: at32f403_tmr.c:1132
tmr_dma_request_enable
void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request
Definition: at32f403_tmr.c:1301
tmr_external_clock_config
void tmr_external_clock_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock
Definition: at32f403_tmr.c:1572
tmr_repetition_counter_set
void tmr_repetition_counter_set(tmr_type *tmr_x, uint8_t tmr_rpr_value)
set the repetition counter register(rpr) value
Definition: at32f403_tmr.c:258
tmr_period_buffer_enable
void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer
Definition: at32f403_tmr.c:606
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_internal_clock_set
void tmr_internal_clock_set(tmr_type *tmr_x)
set tmr select internal clock
Definition: at32f403_tmr.c:1486
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_brkdt_default_para_init
void tmr_brkdt_default_para_init(tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para
Definition: at32f403_tmr.c:176
tmr_force_output_set
void tmr_force_output_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_force_output_type force_output)
set tmr force output
Definition: at32f403_tmr.c:1689
tmr_interrupt_flag_get
flag_status tmr_interrupt_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr interrupt flag
Definition: at32f403_tmr.c:1362
tmr_counter_value_set
void tmr_counter_value_set(tmr_type *tmr_x, uint32_t tmr_cnt_value)
set tmr counter value
Definition: at32f403_tmr.c:274
tmr_div_value_get
uint32_t tmr_div_value_get(tmr_type *tmr_x)
get tmr div value
Definition: at32f403_tmr.c:316
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_input_channel_filter_set
void tmr_input_channel_filter_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint16_t filter_value)
set tmr input channel filter
Definition: at32f403_tmr.c:953
tmr_period_value_set
void tmr_period_value_set(tmr_type *tmr_x, uint32_t tmr_pr_value)
set tmr period value
Definition: at32f403_tmr.c:483
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_counter_value_get
uint32_t tmr_counter_value_get(tmr_type *tmr_x)
get tmr counter value
Definition: at32f403_tmr.c:288
tmr_brkdt_config
void tmr_brkdt_config(tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time
Definition: at32f403_tmr.c:1771
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_external_clock_mode2_config
void tmr_external_clock_mode2_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode2
Definition: at32f403_tmr.c:1624
tmr_input_default_para_init
void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
init tmr input default para
Definition: at32f403_tmr.c:162
tmr_div_value_set
void tmr_div_value_set(tmr_type *tmr_x, uint32_t tmr_div_value)
set tmr div value
Definition: at32f403_tmr.c:302
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_sub_sync_mode_set
void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode
Definition: at32f403_tmr.c:1278
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_hall_select
void tmr_hall_select(tmr_type *tmr_x, confirm_state new_state)
select tmr hall
Definition: at32f403_tmr.c:1230
tmr_channel1_input_select
void tmr_channel1_input_select(tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
select tmr channel1 input
Definition: at32f403_tmr.c:1107
tmr_32_bit_function_enable
void tmr_32_bit_function_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode)
Definition: at32f403_tmr.c:772
tmr_external_clock_mode1_config
void tmr_external_clock_mode1_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode1
Definition: at32f403_tmr.c:1598
tmr_pwm_input_config
void tmr_pwm_input_config(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input
Definition: at32f403_tmr.c:999
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_output_channel_buffer_enable
void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer
Definition: at32f403_tmr.c:627
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_overflow_event_disable
void tmr_overflow_event_disable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr overflow event generation
Definition: at32f403_tmr.c:804
tmr_channel_dma_select
void tmr_channel_dma_select(tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select)
select tmr channel dma
Definition: at32f403_tmr.c:1217
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_output_channel_immediately_set
void tmr_output_channel_immediately_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel immediately
Definition: at32f403_tmr.c:673
tmr_encoder_mode_config
void tmr_encoder_mode_config(tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type ic1_polarity, tmr_input_polarity_type ic2_polarity)
config tmr encoder mode
Definition: at32f403_tmr.c:1653
tmr_channel_enable
void tmr_channel_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable
Definition: at32f403_tmr.c:897
tmr_output_channel_switch_set
void tmr_output_channel_switch_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel switch
Definition: at32f403_tmr.c:719
tmr_reset
void tmr_reset(tmr_type *tmr_x)
tmr reset by crm reset register
Definition: at32f403_tmr.c:50
tmr_output_channel_polarity_set
void tmr_output_channel_polarity_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_polarity_active_type oc_polarity)
set tmr output channel polarity
Definition: at32f403_tmr.c:1512
tmr_one_cycle_mode_enable
void tmr_one_cycle_mode_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr one cycle mode
Definition: at32f403_tmr.c:758
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR13
#define TMR13
Definition: at32f403_tmr.h:842
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
TMR14
#define TMR14
Definition: at32f403_tmr.h:843
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
TMR10
#define TMR10
Definition: at32f403_tmr.h:839
TMR11
#define TMR11
Definition: at32f403_tmr.h:840
TMR8
#define TMR8
Definition: at32f403_tmr.h:837
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
TMR4
#define TMR4
Definition: at32f403_tmr.h:833
TMR5
#define TMR5
Definition: at32f403_tmr.h:834
TMR6
#define TMR6
Definition: at32f403_tmr.h:835
TMR7
#define TMR7
Definition: at32f403_tmr.h:836
TMR12
#define TMR12
Definition: at32f403_tmr.h:841
TMR9
#define TMR9
Definition: at32f403_tmr.h:838
tmr_brkdt_config_type
tmr brkdt config type
Definition: at32f403_tmr.h:421
tmr_brkdt_config_type::brk_enable
confirm_state brk_enable
Definition: at32f403_tmr.h:428
tmr_brkdt_config_type::deadtime
uint8_t deadtime
Definition: at32f403_tmr.h:422
tmr_brkdt_config_type::auto_output_enable
confirm_state auto_output_enable
Definition: at32f403_tmr.h:425
tmr_brkdt_config_type::wp_level
tmr_wp_level_type wp_level
Definition: at32f403_tmr.h:424
tmr_brkdt_config_type::fcsoen_state
confirm_state fcsoen_state
Definition: at32f403_tmr.h:426
tmr_brkdt_config_type::fcsodis_state
confirm_state fcsodis_state
Definition: at32f403_tmr.h:427
tmr_brkdt_config_type::brk_polarity
tmr_brk_polarity_type brk_polarity
Definition: at32f403_tmr.h:423
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_filter_value
uint8_t input_filter_value
Definition: at32f403_tmr.h:414
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
tmr_type
type define tmr register all
Definition: at32f403_tmr.h:435
tmr_type::c1cen
__IO uint32_t c1cen
Definition: at32f403_tmr.h:663
tmr_type::pmen
__IO uint32_t pmen
Definition: at32f403_tmr.h:451
tmr_type::brken
__IO uint32_t brken
Definition: at32f403_tmr.h:789
tmr_type::c1idiv
__IO uint32_t c1idiv
Definition: at32f403_tmr.h:604
tmr_type::dtc
__IO uint32_t dtc
Definition: at32f403_tmr.h:785
tmr_type::c1en
__IO uint32_t c1en
Definition: at32f403_tmr.h:661
tmr_type::c4df
__IO uint32_t c4df
Definition: at32f403_tmr.h:648
tmr_type::c3octrl
__IO uint32_t c3octrl
Definition: at32f403_tmr.h:628
tmr_type::c2osen
__IO uint32_t c2osen
Definition: at32f403_tmr.h:594
tmr_type::swevt
__IO uint32_t swevt
Definition: at32f403_tmr.h:558
tmr_type::c2en
__IO uint32_t c2en
Definition: at32f403_tmr.h:665
tmr_type::c3df
__IO uint32_t c3df
Definition: at32f403_tmr.h:645
tmr_type::wpc
__IO uint32_t wpc
Definition: at32f403_tmr.h:786
tmr_type::c3oben
__IO uint32_t c3oben
Definition: at32f403_tmr.h:627
tmr_type::cnt_dir
__IO uint32_t cnt_dir
Definition: at32f403_tmr.h:448
tmr_type::c4octrl
__IO uint32_t c4octrl
Definition: at32f403_tmr.h:633
tmr_type::c1insel
__IO uint32_t c1insel
Definition: at32f403_tmr.h:469
tmr_type::dmactrl_bit
struct tmr_type::@663::@687 dmactrl_bit
tmr_type::div
__IO uint32_t div
Definition: at32f403_tmr.h:696
tmr_type::esf
__IO uint32_t esf
Definition: at32f403_tmr.h:493
tmr_type::c1osen
__IO uint32_t c1osen
Definition: at32f403_tmr.h:589
tmr_type::c2cen
__IO uint32_t c2cen
Definition: at32f403_tmr.h:667
tmr_type::cctrl_bit
struct tmr_type::@643::@677 cctrl_bit
tmr_type::drs
__IO uint32_t drs
Definition: at32f403_tmr.h:467
tmr_type::iden
__IO uint32_t iden
Definition: at32f403_tmr.h:506
tmr_type::cm2_output_bit
struct tmr_type::@641::@675 cm2_output_bit
channel mode
tmr_type::c1oben
__IO uint32_t c1oben
Definition: at32f403_tmr.h:587
tmr_type::ists
__IO uint32_t ists
Definition: at32f403_tmr.h:533
tmr_type::c1c
__IO uint32_t c1c
Definition: at32f403_tmr.h:585
tmr_type::cm1_output_bit
struct tmr_type::@639::@673 cm1_output_bit
channel mode
tmr_type::c3cen
__IO uint32_t c3cen
Definition: at32f403_tmr.h:671
tmr_type::ctrl2_bit
struct tmr_type::@629::@668 ctrl2_bit
tmr_type::c4p
__IO uint32_t c4p
Definition: at32f403_tmr.h:674
tmr_type::brkv
__IO uint32_t brkv
Definition: at32f403_tmr.h:790
tmr_type::stis
__IO uint32_t stis
Definition: at32f403_tmr.h:491
tmr_type::ovfswtr
__IO uint32_t ovfswtr
Definition: at32f403_tmr.h:561
tmr_type::c3idiv
__IO uint32_t c3idiv
Definition: at32f403_tmr.h:644
tmr_type::c4osen
__IO uint32_t c4osen
Definition: at32f403_tmr.h:634
tmr_type::c1octrl
__IO uint32_t c1octrl
Definition: at32f403_tmr.h:588
tmr_type::tmren
__IO uint32_t tmren
Definition: at32f403_tmr.h:444
tmr_type::oen
__IO uint32_t oen
Definition: at32f403_tmr.h:792
tmr_type::sts
__IO uint32_t sts
Definition: at32f403_tmr.h:492
tmr_type::c2idiv
__IO uint32_t c2idiv
Definition: at32f403_tmr.h:607
tmr_type::c1p
__IO uint32_t c1p
Definition: at32f403_tmr.h:662
tmr_type::c1oien
__IO uint32_t c1oien
Definition: at32f403_tmr.h:586
tmr_type::pr
__IO uint32_t pr
Definition: at32f403_tmr.h:709
tmr_type::c3oien
__IO uint32_t c3oien
Definition: at32f403_tmr.h:626
tmr_type::ctrl1_bit
struct tmr_type::@627::@667 ctrl1_bit
tmr_type::c1dt
uint32_t c1dt
Definition: at32f403_tmr.h:734
tmr_type::c2oben
__IO uint32_t c2oben
Definition: at32f403_tmr.h:592
tmr_type::c2octrl
__IO uint32_t c2octrl
Definition: at32f403_tmr.h:593
tmr_type::smsel
__IO uint32_t smsel
Definition: at32f403_tmr.h:489
tmr_type::c3p
__IO uint32_t c3p
Definition: at32f403_tmr.h:670
tmr_type::c1cp
__IO uint32_t c1cp
Definition: at32f403_tmr.h:664
tmr_type::c3c
__IO uint32_t c3c
Definition: at32f403_tmr.h:625
tmr_type::clkdiv
__IO uint32_t clkdiv
Definition: at32f403_tmr.h:450
tmr_type::ovfs
__IO uint32_t ovfs
Definition: at32f403_tmr.h:446
tmr_type::cm1_input_bit
struct tmr_type::@639::@674 cm1_input_bit
input capture mode
tmr_type::cbctrl
__IO uint32_t cbctrl
Definition: at32f403_tmr.h:464
tmr_type::dtb
__IO uint32_t dtb
Definition: at32f403_tmr.h:806
tmr_type::prben
__IO uint32_t prben
Definition: at32f403_tmr.h:449
tmr_type::ccfs
__IO uint32_t ccfs
Definition: at32f403_tmr.h:466
tmr_type::ecmben
__IO uint32_t ecmben
Definition: at32f403_tmr.h:495
tmr_type::ovfen
__IO uint32_t ovfen
Definition: at32f403_tmr.h:445
tmr_type::c4en
__IO uint32_t c4en
Definition: at32f403_tmr.h:673
tmr_type::fcsoen
__IO uint32_t fcsoen
Definition: at32f403_tmr.h:788
tmr_type::esdiv
__IO uint32_t esdiv
Definition: at32f403_tmr.h:494
tmr_type::c3en
__IO uint32_t c3en
Definition: at32f403_tmr.h:669
tmr_type::c2p
__IO uint32_t c2p
Definition: at32f403_tmr.h:666
tmr_type::ocmen
__IO uint32_t ocmen
Definition: at32f403_tmr.h:447
tmr_type::swevt_bit
struct tmr_type::@637::@672 swevt_bit
tmr_type::c4oien
__IO uint32_t c4oien
Definition: at32f403_tmr.h:631
tmr_type::c2dt
uint32_t c2dt
Definition: at32f403_tmr.h:746
tmr_type::rpr_bit
struct tmr_type::@651::@681 rpr_bit
tmr_type::addr
__IO uint32_t addr
Definition: at32f403_tmr.h:804
tmr_type::c3cp
__IO uint32_t c3cp
Definition: at32f403_tmr.h:672
tmr_type::c2df
__IO uint32_t c2df
Definition: at32f403_tmr.h:608
tmr_type::c4idiv
__IO uint32_t c4idiv
Definition: at32f403_tmr.h:647
tmr_type::c3osen
__IO uint32_t c3osen
Definition: at32f403_tmr.h:629
tmr_type::rpr
__IO uint32_t rpr
Definition: at32f403_tmr.h:721
tmr_type::c2c
__IO uint32_t c2c
Definition: at32f403_tmr.h:590
tmr_type::c1df
__IO uint32_t c1df
Definition: at32f403_tmr.h:605
tmr_type::c2oien
__IO uint32_t c2oien
Definition: at32f403_tmr.h:591
tmr_type::c4dt
__IO uint32_t c4dt
Definition: at32f403_tmr.h:770
tmr_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_tmr.h:461
tmr_type::c3dt
__IO uint32_t c3dt
Definition: at32f403_tmr.h:758
tmr_type::c2cp
__IO uint32_t c2cp
Definition: at32f403_tmr.h:668
tmr_type::brk_bit
struct tmr_type::@661::@686 brk_bit
tmr_type::cctrl
uint32_t cctrl
Definition: at32f403_tmr.h:658
tmr_type::stctrl_bit
struct tmr_type::@631::@669 stctrl_bit
tmr_type::c4c
__IO uint32_t c4c
Definition: at32f403_tmr.h:630
tmr_type::c4oben
__IO uint32_t c4oben
Definition: at32f403_tmr.h:632
tmr_type::fcsodis
__IO uint32_t fcsodis
Definition: at32f403_tmr.h:787
tmr_type::cval
__IO uint32_t cval
Definition: at32f403_tmr.h:684
tmr_type::esp
__IO uint32_t esp
Definition: at32f403_tmr.h:496
tmr_type::ptos
__IO uint32_t ptos
Definition: at32f403_tmr.h:468
tmr_type::aoen
__IO uint32_t aoen
Definition: at32f403_tmr.h:791
tmr_type::cm2_input_bit
struct tmr_type::@641::@676 cm2_input_bit
input capture mode
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_tmr.h Source File

  • libraries
  • drivers
  • inc
at32f403_tmr.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_TMR_H
27#define __AT32F403_TMR_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define TMR_OVF_FLAG ((uint32_t)0x000001)
51#define TMR_C1_FLAG ((uint32_t)0x000002)
52#define TMR_C2_FLAG ((uint32_t)0x000004)
53#define TMR_C3_FLAG ((uint32_t)0x000008)
54#define TMR_C4_FLAG ((uint32_t)0x000010)
55#define TMR_HALL_FLAG ((uint32_t)0x000020)
56#define TMR_TRIGGER_FLAG ((uint32_t)0x000040)
57#define TMR_BRK_FLAG ((uint32_t)0x000080)
58#define TMR_C1_RECAPTURE_FLAG ((uint32_t)0x000200)
59#define TMR_C2_RECAPTURE_FLAG ((uint32_t)0x000400)
60#define TMR_C3_RECAPTURE_FLAG ((uint32_t)0x000800)
61#define TMR_C4_RECAPTURE_FLAG ((uint32_t)0x001000)
72#define TMR_OVF_INT ((uint32_t)0x000001)
73#define TMR_C1_INT ((uint32_t)0x000002)
74#define TMR_C2_INT ((uint32_t)0x000004)
75#define TMR_C3_INT ((uint32_t)0x000008)
76#define TMR_C4_INT ((uint32_t)0x000010)
77#define TMR_HALL_INT ((uint32_t)0x000020)
78#define TMR_TRIGGER_INT ((uint32_t)0x000040)
79#define TMR_BRK_INT ((uint32_t)0x000080)
92typedef enum
93{
94 TMR_CLOCK_DIV1 = 0x00,
95 TMR_CLOCK_DIV2 = 0x01,
96 TMR_CLOCK_DIV4 = 0x02
97} tmr_clock_division_type;
98
102typedef enum
103{
104 TMR_COUNT_UP = 0x00,
105 TMR_COUNT_DOWN = 0x01,
106 TMR_COUNT_TWO_WAY_1 = 0x02,
107 TMR_COUNT_TWO_WAY_2 = 0x04,
108 TMR_COUNT_TWO_WAY_3 = 0x06
109} tmr_count_mode_type;
110
114typedef enum
115{
116 TMR_PRIMARY_SEL_RESET = 0x00,
117 TMR_PRIMARY_SEL_ENABLE = 0x01,
118 TMR_PRIMARY_SEL_OVERFLOW = 0x02,
119 TMR_PRIMARY_SEL_COMPARE = 0x03,
120 TMR_PRIMARY_SEL_C1ORAW = 0x04,
121 TMR_PRIMARY_SEL_C2ORAW = 0x05,
122 TMR_PRIMARY_SEL_C3ORAW = 0x06,
123 TMR_PRIMARY_SEL_C4ORAW = 0x07
124} tmr_primary_select_type;
125
129typedef enum
130{
131 TMR_SUB_INPUT_SEL_IS0 = 0x00,
132 TMR_SUB_INPUT_SEL_IS1 = 0x01,
133 TMR_SUB_INPUT_SEL_IS2 = 0x02,
134 TMR_SUB_INPUT_SEL_IS3 = 0x03,
135 TMR_SUB_INPUT_SEL_C1INC = 0x04,
136 TMR_SUB_INPUT_SEL_C1DF1 = 0x05,
137 TMR_SUB_INPUT_SEL_C2DF2 = 0x06,
138 TMR_SUB_INPUT_SEL_EXTIN = 0x07
139} sub_tmr_input_sel_type;
140
144typedef enum
145{
146 TMR_SUB_MODE_DIABLE = 0x00,
147 TMR_SUB_ENCODER_MODE_A = 0x01,
148 TMR_SUB_ENCODER_MODE_B = 0x02,
149 TMR_SUB_ENCODER_MODE_C = 0x03,
150 TMR_SUB_RESET_MODE = 0x04,
151 TMR_SUB_HANG_MODE = 0x05,
152 TMR_SUB_TRIGGER_MODE = 0x06,
153 TMR_SUB_EXTERNAL_CLOCK_MODE_A = 0x07
154} tmr_sub_mode_select_type;
155
159typedef enum
160{
161 TMR_ENCODER_MODE_A = TMR_SUB_ENCODER_MODE_A,
162 TMR_ENCODER_MODE_B = TMR_SUB_ENCODER_MODE_B,
163 TMR_ENCODER_MODE_C = TMR_SUB_ENCODER_MODE_C
164} tmr_encoder_mode_type;
165
169typedef enum
170{
171 TMR_OUTPUT_CONTROL_OFF = 0x00,
172 TMR_OUTPUT_CONTROL_HIGH = 0x01,
173 TMR_OUTPUT_CONTROL_LOW = 0x02,
174 TMR_OUTPUT_CONTROL_SWITCH = 0x03,
175 TMR_OUTPUT_CONTROL_FORCE_LOW = 0x04,
176 TMR_OUTPUT_CONTROL_FORCE_HIGH = 0x05,
177 TMR_OUTPUT_CONTROL_PWM_MODE_A = 0x06,
178 TMR_OUTPUT_CONTROL_PWM_MODE_B = 0x07
179} tmr_output_control_mode_type;
180
184typedef enum
185{
186 TMR_FORCE_OUTPUT_HIGH = TMR_OUTPUT_CONTROL_FORCE_HIGH,
187 TMR_FORCE_OUTPUT_LOW = TMR_OUTPUT_CONTROL_FORCE_LOW
188} tmr_force_output_type;
189
193typedef enum
194{
195 TMR_OUTPUT_ACTIVE_HIGH = 0x00,
196 TMR_OUTPUT_ACTIVE_LOW = 0x01
197} tmr_output_polarity_type;
198
202typedef enum
203{
204 TMR_INPUT_RISING_EDGE = 0x00,
205 TMR_INPUT_FALLING_EDGE = 0x01,
206 TMR_INPUT_BOTH_EDGE = 0x03
207} tmr_input_polarity_type;
208
212typedef enum
213{
214 TMR_SELECT_CHANNEL_1 = 0x00,
215 TMR_SELECT_CHANNEL_1C = 0x01,
216 TMR_SELECT_CHANNEL_2 = 0x02,
217 TMR_SELECT_CHANNEL_2C = 0x03,
218 TMR_SELECT_CHANNEL_3 = 0x04,
219 TMR_SELECT_CHANNEL_3C = 0x05,
220 TMR_SELECT_CHANNEL_4 = 0x06
221} tmr_channel_select_type;
222
226typedef enum
227{
228 TMR_CHANEL1_CONNECTED_C1IRAW = 0x00,
229 TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR = 0x01
230} tmr_channel1_input_connected_type;
231
235typedef enum
236{
237 TMR_CC_CHANNEL_MAPPED_DIRECT = 0x01,
238 TMR_CC_CHANNEL_MAPPED_INDIRECT = 0x02,
239 TMR_CC_CHANNEL_MAPPED_STI = 0x03
240} tmr_input_direction_mapped_type;
241
245typedef enum
246{
247 TMR_CHANNEL_INPUT_DIV_1 = 0x00,
248 TMR_CHANNEL_INPUT_DIV_2 = 0x01,
249 TMR_CHANNEL_INPUT_DIV_4 = 0x02,
250 TMR_CHANNEL_INPUT_DIV_8 = 0x03
251} tmr_channel_input_divider_type;
252
256typedef enum
257{
258 TMR_DMA_REQUEST_BY_CHANNEL = 0x00,
259 TMR_DMA_REQUEST_BY_OVERFLOW = 0x01
260} tmr_dma_request_source_type;
261
265typedef enum
266{
267 TMR_OVERFLOW_DMA_REQUEST = 0x00000100,
268 TMR_C1_DMA_REQUEST = 0x00000200,
269 TMR_C2_DMA_REQUEST = 0x00000400,
270 TMR_C3_DMA_REQUEST = 0x00000800,
271 TMR_C4_DMA_REQUEST = 0x00001000,
272 TMR_HALL_DMA_REQUEST = 0x00002000,
273 TMR_TRIGGER_DMA_REQUEST = 0x00004000
274} tmr_dma_request_type;
275
279typedef enum
280{
281 TMR_OVERFLOW_SWTRIG = 0x00000001,
282 TMR_C1_SWTRIG = 0x00000002,
283 TMR_C2_SWTRIG = 0x00000004,
284 TMR_C3_SWTRIG = 0x00000008,
285 TMR_C4_SWTRIG = 0x00000010,
286 TMR_HALL_SWTRIG = 0x00000020,
287 TMR_TRIGGER_SWTRIG = 0x00000040,
288 TMR_BRK_SWTRIG = 0x00000080
289}tmr_event_trigger_type;
290
294typedef enum
295{
296 TMR_POLARITY_ACTIVE_HIGH = 0x00,
297 TMR_POLARITY_ACTIVE_LOW = 0x01,
298 TMR_POLARITY_ACTIVE_BOTH = 0x02
299}tmr_polarity_active_type;
300
304typedef enum
305{
306 TMR_ES_FREQUENCY_DIV_1 = 0x00,
307 TMR_ES_FREQUENCY_DIV_2 = 0x01,
308 TMR_ES_FREQUENCY_DIV_4 = 0x02,
309 TMR_ES_FREQUENCY_DIV_8 = 0x03
310}tmr_external_signal_divider_type;
311
315typedef enum
316{
317 TMR_ES_POLARITY_NON_INVERTED = 0x00,
318 TMR_ES_POLARITY_INVERTED = 0x01
319}tmr_external_signal_polarity_type;
320
324typedef enum
325{
326 TMR_DMA_TRANSFER_1BYTE = 0x00,
327 TMR_DMA_TRANSFER_2BYTES = 0x01,
328 TMR_DMA_TRANSFER_3BYTES = 0x02,
329 TMR_DMA_TRANSFER_4BYTES = 0x03,
330 TMR_DMA_TRANSFER_5BYTES = 0x04,
331 TMR_DMA_TRANSFER_6BYTES = 0x05,
332 TMR_DMA_TRANSFER_7BYTES = 0x06,
333 TMR_DMA_TRANSFER_8BYTES = 0x07,
334 TMR_DMA_TRANSFER_9BYTES = 0x08,
335 TMR_DMA_TRANSFER_10BYTES = 0x09,
336 TMR_DMA_TRANSFER_11BYTES = 0x0A,
337 TMR_DMA_TRANSFER_12BYTES = 0x0B,
338 TMR_DMA_TRANSFER_13BYTES = 0x0C,
339 TMR_DMA_TRANSFER_14BYTES = 0x0D,
340 TMR_DMA_TRANSFER_15BYTES = 0x0E,
341 TMR_DMA_TRANSFER_16BYTES = 0x0F,
342 TMR_DMA_TRANSFER_17BYTES = 0x10,
343 TMR_DMA_TRANSFER_18BYTES = 0x11
344}tmr_dma_transfer_length_type;
345
349typedef enum
350{
351 TMR_CTRL1_ADDRESS = 0x0000,
352 TMR_CTRL2_ADDRESS = 0x0001,
353 TMR_STCTRL_ADDRESS = 0x0002,
354 TMR_IDEN_ADDRESS = 0x0003,
355 TMR_ISTS_ADDRESS = 0x0004,
356 TMR_SWEVT_ADDRESS = 0x0005,
357 TMR_CM1_ADDRESS = 0x0006,
358 TMR_CM2_ADDRESS = 0x0007,
359 TMR_CCTRL_ADDRESS = 0x0008,
360 TMR_CVAL_ADDRESS = 0x0009,
361 TMR_DIV_ADDRESS = 0x000A,
362 TMR_PR_ADDRESS = 0x000B,
363 TMR_RPR_ADDRESS = 0x000C,
364 TMR_C1DT_ADDRESS = 0x000D,
365 TMR_C2DT_ADDRESS = 0x000E,
366 TMR_C3DT_ADDRESS = 0x000F,
367 TMR_C4DT_ADDRESS = 0x0010,
368 TMR_BRK_ADDRESS = 0x0011,
369 TMR_DMACTRL_ADDRESS = 0x0012
370}tmr_dma_address_type;
371
375typedef enum
376{
377 TMR_BRK_INPUT_ACTIVE_LOW = 0x00,
378 TMR_BRK_INPUT_ACTIVE_HIGH = 0x01
379}tmr_brk_polarity_type;
380
384typedef enum
385{
386 TMR_WP_OFF = 0x00,
387 TMR_WP_LEVEL_3 = 0x01,
388 TMR_WP_LEVEL_2 = 0x02,
389 TMR_WP_LEVEL_1 = 0x03
390}tmr_wp_level_type;
391
395typedef struct
396{
397 tmr_output_control_mode_type oc_mode;
398 confirm_state oc_idle_state;
399 confirm_state occ_idle_state;
400 tmr_output_polarity_type oc_polarity;
401 tmr_output_polarity_type occ_polarity;
402 confirm_state oc_output_state;
403 confirm_state occ_output_state;
404} tmr_output_config_type;
405
409typedef struct
410{
411 tmr_channel_select_type input_channel_select;
412 tmr_input_polarity_type input_polarity_select;
413 tmr_input_direction_mapped_type input_mapped_select;
414 uint8_t input_filter_value;
415} tmr_input_config_type;
416
420typedef struct
421{
422 uint8_t deadtime;
423 tmr_brk_polarity_type brk_polarity;
424 tmr_wp_level_type wp_level;
425 confirm_state auto_output_enable;
426 confirm_state fcsoen_state;
427 confirm_state fcsodis_state;
428 confirm_state brk_enable;
429} tmr_brkdt_config_type;
430
434typedef struct
435{
439 union
440 {
441 __IO uint32_t ctrl1;
442 struct
443 {
444 __IO uint32_t tmren : 1; /* [0] */
445 __IO uint32_t ovfen : 1; /* [1] */
446 __IO uint32_t ovfs : 1; /* [2] */
447 __IO uint32_t ocmen : 1; /* [3] */
448 __IO uint32_t cnt_dir : 3; /* [6:4] */
449 __IO uint32_t prben : 1; /* [7] */
450 __IO uint32_t clkdiv : 2; /* [9:8] */
451 __IO uint32_t pmen : 1; /* [10] */
452 __IO uint32_t reserved1 : 21;/* [31:11] */
453 } ctrl1_bit;
454 };
455
459 union
460 {
461 __IO uint32_t ctrl2;
462 struct
463 {
464 __IO uint32_t cbctrl : 1; /* [0] */
465 __IO uint32_t reserved1 : 1; /* [1] */
466 __IO uint32_t ccfs : 1; /* [2] */
467 __IO uint32_t drs : 1; /* [3] */
468 __IO uint32_t ptos : 3; /* [6:4] */
469 __IO uint32_t c1insel : 1; /* [7] */
470 __IO uint32_t c1ios : 1; /* [8] */
471 __IO uint32_t c1cios : 1; /* [9] */
472 __IO uint32_t c2ios : 1; /* [10] */
473 __IO uint32_t c2cios : 1; /* [11] */
474 __IO uint32_t c3ios : 1; /* [12] */
475 __IO uint32_t c3cios : 1; /* [13] */
476 __IO uint32_t c4ios : 1; /* [14] */
477 __IO uint32_t reserved2 : 17;/* [31:15] */
478 } ctrl2_bit;
479 };
480
484 union
485 {
486 __IO uint32_t stctrl;
487 struct
488 {
489 __IO uint32_t smsel : 3; /* [2:0] */
490 __IO uint32_t reserved1 : 1; /* [3] */
491 __IO uint32_t stis : 3; /* [6:4] */
492 __IO uint32_t sts : 1; /* [7] */
493 __IO uint32_t esf : 4; /* [11:8] */
494 __IO uint32_t esdiv : 2; /* [13:12] */
495 __IO uint32_t ecmben : 1; /* [14] */
496 __IO uint32_t esp : 1; /* [15] */
497 __IO uint32_t reserved2 : 16;/* [31:16] */
498 } stctrl_bit;
499 };
500
504 union
505 {
506 __IO uint32_t iden;
507 struct
508 {
509 __IO uint32_t ovfien : 1; /* [0] */
510 __IO uint32_t c1ien : 1; /* [1] */
511 __IO uint32_t c2ien : 1; /* [2] */
512 __IO uint32_t c3ien : 1; /* [3] */
513 __IO uint32_t c4ien : 1; /* [4] */
514 __IO uint32_t hallien : 1; /* [5] */
515 __IO uint32_t tien : 1; /* [6] */
516 __IO uint32_t brkie : 1; /* [7] */
517 __IO uint32_t ovfden : 1; /* [8] */
518 __IO uint32_t c1den : 1; /* [9] */
519 __IO uint32_t c2den : 1; /* [10] */
520 __IO uint32_t c3den : 1; /* [11] */
521 __IO uint32_t c4den : 1; /* [12] */
522 __IO uint32_t hallde : 1; /* [13] */
523 __IO uint32_t tden : 1; /* [14] */
524 __IO uint32_t reserved1 : 17;/* [31:15] */
525 } iden_bit;
526 };
527
531 union
532 {
533 __IO uint32_t ists;
534 struct
535 {
536 __IO uint32_t ovfif : 1; /* [0] */
537 __IO uint32_t c1if : 1; /* [1] */
538 __IO uint32_t c2if : 1; /* [2] */
539 __IO uint32_t c3if : 1; /* [3] */
540 __IO uint32_t c4if : 1; /* [4] */
541 __IO uint32_t hallif : 1; /* [5] */
542 __IO uint32_t trgif : 1; /* [6] */
543 __IO uint32_t brkif : 1; /* [7] */
544 __IO uint32_t reserved1 : 1; /* [8] */
545 __IO uint32_t c1rf : 1; /* [9] */
546 __IO uint32_t c2rf : 1; /* [10] */
547 __IO uint32_t c3rf : 1; /* [11] */
548 __IO uint32_t c4rf : 1; /* [12] */
549 __IO uint32_t reserved2 : 19;/* [31:13] */
550 } ists_bit;
551 };
552
556 union
557 {
558 __IO uint32_t swevt;
559 struct
560 {
561 __IO uint32_t ovfswtr : 1; /* [0] */
562 __IO uint32_t c1swtr : 1; /* [1] */
563 __IO uint32_t c2swtr : 1; /* [2] */
564 __IO uint32_t c3swtr : 1; /* [3] */
565 __IO uint32_t c4swtr : 1; /* [4] */
566 __IO uint32_t hallswtr : 1; /* [5] */
567 __IO uint32_t trgswtr : 1; /* [6] */
568 __IO uint32_t brkswtr : 1; /* [7] */
569 __IO uint32_t reserved : 24;/* [31:8] */
570 } swevt_bit;
571 };
572
576 union
577 {
578 __IO uint32_t cm1;
579
583 struct
584 {
585 __IO uint32_t c1c : 2; /* [1:0] */
586 __IO uint32_t c1oien : 1; /* [2] */
587 __IO uint32_t c1oben : 1; /* [3] */
588 __IO uint32_t c1octrl : 3; /* [6:4] */
589 __IO uint32_t c1osen : 1; /* [7] */
590 __IO uint32_t c2c : 2; /* [9:8] */
591 __IO uint32_t c2oien : 1; /* [10] */
592 __IO uint32_t c2oben : 1; /* [11] */
593 __IO uint32_t c2octrl : 3; /* [14:12] */
594 __IO uint32_t c2osen : 1; /* [15] */
595 __IO uint32_t reserved1 : 16;/* [31:16] */
596 } cm1_output_bit;
597
601 struct
602 {
603 __IO uint32_t c1c : 2; /* [1:0] */
604 __IO uint32_t c1idiv : 2; /* [3:2] */
605 __IO uint32_t c1df : 4; /* [7:4] */
606 __IO uint32_t c2c : 2; /* [9:8] */
607 __IO uint32_t c2idiv : 2; /* [11:10] */
608 __IO uint32_t c2df : 4; /* [15:12] */
609 __IO uint32_t reserved1 : 16;/* [31:16] */
610 } cm1_input_bit;
611 };
612
616 union
617 {
618 __IO uint32_t cm2;
619
623 struct
624 {
625 __IO uint32_t c3c : 2; /* [1:0] */
626 __IO uint32_t c3oien : 1; /* [2] */
627 __IO uint32_t c3oben : 1; /* [3] */
628 __IO uint32_t c3octrl : 3; /* [6:4] */
629 __IO uint32_t c3osen : 1; /* [7] */
630 __IO uint32_t c4c : 2; /* [9:8] */
631 __IO uint32_t c4oien : 1; /* [10] */
632 __IO uint32_t c4oben : 1; /* [11] */
633 __IO uint32_t c4octrl : 3; /* [14:12] */
634 __IO uint32_t c4osen : 1; /* [15] */
635 __IO uint32_t reserved1 : 16;/* [31:16] */
636 } cm2_output_bit;
637
641 struct
642 {
643 __IO uint32_t c3c : 2; /* [1:0] */
644 __IO uint32_t c3idiv : 2; /* [3:2] */
645 __IO uint32_t c3df : 4; /* [7:4] */
646 __IO uint32_t c4c : 2; /* [9:8] */
647 __IO uint32_t c4idiv : 2; /* [11:10] */
648 __IO uint32_t c4df : 4; /* [15:12] */
649 __IO uint32_t reserved1 : 16;/* [31:16] */
650 } cm2_input_bit;
651 };
652
656 union
657 {
658 uint32_t cctrl;
659 struct
660 {
661 __IO uint32_t c1en : 1; /* [0] */
662 __IO uint32_t c1p : 1; /* [1] */
663 __IO uint32_t c1cen : 1; /* [2] */
664 __IO uint32_t c1cp : 1; /* [3] */
665 __IO uint32_t c2en : 1; /* [4] */
666 __IO uint32_t c2p : 1; /* [5] */
667 __IO uint32_t c2cen : 1; /* [6] */
668 __IO uint32_t c2cp : 1; /* [7] */
669 __IO uint32_t c3en : 1; /* [8] */
670 __IO uint32_t c3p : 1; /* [9] */
671 __IO uint32_t c3cen : 1; /* [10] */
672 __IO uint32_t c3cp : 1; /* [11] */
673 __IO uint32_t c4en : 1; /* [12] */
674 __IO uint32_t c4p : 1; /* [13] */
675 __IO uint32_t reserved1 : 18;/* [31:14] */
676 } cctrl_bit;
677 };
678
682 union
683 {
684 __IO uint32_t cval;
685 struct
686 {
687 __IO uint32_t cval : 32;/* [31:0] */
688 } cval_bit;
689 };
690
694 union
695 {
696 __IO uint32_t div;
697 struct
698 {
699 __IO uint32_t div : 16;/* [15:0] */
700 __IO uint32_t reserved1 : 16;/* [31:16] */
701 } div_bit;
702 };
703
707 union
708 {
709 __IO uint32_t pr;
710 struct
711 {
712 __IO uint32_t pr : 32;/* [31:0] */
713 } pr_bit;
714 };
715
719 union
720 {
721 __IO uint32_t rpr;
722 struct
723 {
724 __IO uint32_t rpr : 8; /* [7:0] */
725 __IO uint32_t reserved1 : 24;/* [31:8] */
726 } rpr_bit;
727 };
728
732 union
733 {
734 uint32_t c1dt;
735 struct
736 {
737 __IO uint32_t c1dt : 32;/* [31:0] */
738 } c1dt_bit;
739 };
740
744 union
745 {
746 uint32_t c2dt;
747 struct
748 {
749 __IO uint32_t c2dt : 32;/* [31:0] */
750 } c2dt_bit;
751 };
752
756 union
757 {
758 __IO uint32_t c3dt;
759 struct
760 {
761 __IO uint32_t c3dt : 32;/* [31:0] */
762 } c3dt_bit;
763 };
764
768 union
769 {
770 __IO uint32_t c4dt;
771 struct
772 {
773 __IO uint32_t c4dt : 32;/* [31:0] */
774 } c4dt_bit;
775 };
776
780 union
781 {
782 __IO uint32_t brk;
783 struct
784 {
785 __IO uint32_t dtc : 8; /* [7:0] */
786 __IO uint32_t wpc : 2; /* [9:8] */
787 __IO uint32_t fcsodis : 1; /* [10] */
788 __IO uint32_t fcsoen : 1; /* [11] */
789 __IO uint32_t brken : 1; /* [12] */
790 __IO uint32_t brkv : 1; /* [13] */
791 __IO uint32_t aoen : 1; /* [14] */
792 __IO uint32_t oen : 1; /* [15] */
793 __IO uint32_t reserved1 : 16; /* [31:16] */
794 } brk_bit;
795 };
799 union
800 {
801 __IO uint32_t dmactrl;
802 struct
803 {
804 __IO uint32_t addr : 5; /* [4:0] */
805 __IO uint32_t reserved1 : 3; /* [7:5] */
806 __IO uint32_t dtb : 5; /* [12:8] */
807 __IO uint32_t reserved2 : 19;/* [31:13] */
808 } dmactrl_bit;
809 };
810
814 union
815 {
816 __IO uint32_t dmadt;
817 struct
818 {
819 __IO uint32_t dmadt : 16;/* [15:0] */
820 __IO uint32_t reserved1 : 16;/* [31:16] */
821 } dmadt_bit;
822 };
823
824} tmr_type;
825
830#define TMR1 ((tmr_type *) TMR1_BASE)
831#define TMR2 ((tmr_type *) TMR2_BASE)
832#define TMR3 ((tmr_type *) TMR3_BASE)
833#define TMR4 ((tmr_type *) TMR4_BASE)
834#define TMR5 ((tmr_type *) TMR5_BASE)
835#define TMR6 ((tmr_type *) TMR6_BASE)
836#define TMR7 ((tmr_type *) TMR7_BASE)
837#define TMR8 ((tmr_type *) TMR8_BASE)
838#define TMR9 ((tmr_type *) TMR9_BASE)
839#define TMR10 ((tmr_type *) TMR10_BASE)
840#define TMR11 ((tmr_type *) TMR11_BASE)
841#define TMR12 ((tmr_type *) TMR12_BASE)
842#define TMR13 ((tmr_type *) TMR13_BASE)
843#define TMR14 ((tmr_type *) TMR14_BASE)
844#define TMR15 ((tmr_type *) TMR15_BASE)
845
850void tmr_reset(tmr_type *tmr_x);
851void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state);
852void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct);
853void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct);
854void tmr_brkdt_default_para_init(tmr_brkdt_config_type *tmr_brkdt_struct);
855void tmr_base_init(tmr_type* tmr_x, uint32_t tmr_pr, uint32_t tmr_div);
856void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div);
857void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir);
858void tmr_repetition_counter_set(tmr_type *tmr_x, uint8_t tmr_rpr_value);
859void tmr_counter_value_set(tmr_type *tmr_x, uint32_t tmr_cnt_value);
860uint32_t tmr_counter_value_get(tmr_type *tmr_x);
861void tmr_div_value_set(tmr_type *tmr_x, uint32_t tmr_div_value);
862uint32_t tmr_div_value_get(tmr_type *tmr_x);
863void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
864 tmr_output_config_type *tmr_output_struct);
865void tmr_output_channel_mode_select(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
866 tmr_output_control_mode_type oc_mode);
867void tmr_period_value_set(tmr_type *tmr_x, uint32_t tmr_pr_value);
868uint32_t tmr_period_value_get(tmr_type *tmr_x);
869void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
870 uint32_t tmr_channel_value);
871uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel);
872void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state);
873void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
874 confirm_state new_state);
875void tmr_output_channel_immediately_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
876 confirm_state new_state);
877void tmr_output_channel_switch_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
878 confirm_state new_state);
879void tmr_one_cycle_mode_enable(tmr_type *tmr_x, confirm_state new_state);
880void tmr_32_bit_function_enable (tmr_type *tmr_x, confirm_state new_state);
881void tmr_overflow_request_source_set(tmr_type *tmr_x, confirm_state new_state);
882void tmr_overflow_event_disable(tmr_type *tmr_x, confirm_state new_state);
883void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, \
884 tmr_channel_input_divider_type divider_factor);
885void tmr_channel_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state);
886void tmr_input_channel_filter_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
887 uint16_t filter_value);
888void tmr_pwm_input_config(tmr_type *tmr_x, tmr_input_config_type *input_struct, \
889 tmr_channel_input_divider_type divider_factor);
890void tmr_channel1_input_select(tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect);
891void tmr_input_channel_divider_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
892 tmr_channel_input_divider_type divider_factor);
893void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode);
894void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode);
895void tmr_channel_dma_select(tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select);
896void tmr_hall_select(tmr_type *tmr_x, confirm_state new_state);
897void tmr_channel_buffer_enable(tmr_type *tmr_x, confirm_state new_state);
898void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select);
899void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state);
900void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state);
901void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state);
902 flag_status tmr_interrupt_flag_get(tmr_type *tmr_x, uint32_t tmr_flag);
903 flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag);
904void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag);
905void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event);
906void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state);
907void tmr_internal_clock_set(tmr_type *tmr_x);
908
909void tmr_output_channel_polarity_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
910 tmr_polarity_active_type oc_polarity);
911void tmr_external_clock_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, \
912 tmr_external_signal_polarity_type es_polarity, uint16_t es_filter);
913void tmr_external_clock_mode1_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, \
914 tmr_external_signal_polarity_type es_polarity, uint16_t es_filter);
915void tmr_external_clock_mode2_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, \
916 tmr_external_signal_polarity_type es_polarity, uint16_t es_filter);
917void tmr_encoder_mode_config(tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type \
918 ic1_polarity, tmr_input_polarity_type ic2_polarity);
919void tmr_force_output_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, \
920 tmr_force_output_type force_output);
921void tmr_dma_control_config(tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, \
922 tmr_dma_address_type dma_base_address);
923void tmr_brkdt_config(tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct);
924
937#ifdef __cplusplus
938}
939#endif
940
941#endif
at32f403.h
at32f403 header file
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:37
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
tmr_dma_control_config
void tmr_dma_control_config(tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, tmr_dma_address_type dma_base_address)
config tmr dma control
Definition: at32f403_tmr.c:1755
tmr_channel_value_get
uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value
Definition: at32f403_tmr.c:565
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_period_value_get
uint32_t tmr_period_value_get(tmr_type *tmr_x)
get tmr period value
Definition: at32f403_tmr.c:499
tmr_channel_buffer_enable
void tmr_channel_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr channel buffer
Definition: at32f403_tmr.c:1243
tmr_overflow_request_source_set
void tmr_overflow_request_source_set(tmr_type *tmr_x, confirm_state new_state)
select tmr the overflow event sources
Definition: at32f403_tmr.c:790
tmr_output_channel_mode_select
void tmr_output_channel_mode_select(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_control_mode_type oc_mode)
select tmr output channel mode
Definition: at32f403_tmr.c:443
tmr_input_channel_divider_set
void tmr_input_channel_divider_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_channel_input_divider_type divider_factor)
set tmr input channel divider
Definition: at32f403_tmr.c:1132
tmr_dma_request_enable
void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request
Definition: at32f403_tmr.c:1301
tmr_external_clock_config
void tmr_external_clock_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock
Definition: at32f403_tmr.c:1572
tmr_repetition_counter_set
void tmr_repetition_counter_set(tmr_type *tmr_x, uint8_t tmr_rpr_value)
set the repetition counter register(rpr) value
Definition: at32f403_tmr.c:258
tmr_period_buffer_enable
void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer
Definition: at32f403_tmr.c:606
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_internal_clock_set
void tmr_internal_clock_set(tmr_type *tmr_x)
set tmr select internal clock
Definition: at32f403_tmr.c:1486
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_brkdt_default_para_init
void tmr_brkdt_default_para_init(tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para
Definition: at32f403_tmr.c:176
tmr_force_output_set
void tmr_force_output_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_force_output_type force_output)
set tmr force output
Definition: at32f403_tmr.c:1689
tmr_interrupt_flag_get
flag_status tmr_interrupt_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr interrupt flag
Definition: at32f403_tmr.c:1362
tmr_counter_value_set
void tmr_counter_value_set(tmr_type *tmr_x, uint32_t tmr_cnt_value)
set tmr counter value
Definition: at32f403_tmr.c:274
tmr_div_value_get
uint32_t tmr_div_value_get(tmr_type *tmr_x)
get tmr div value
Definition: at32f403_tmr.c:316
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_input_channel_filter_set
void tmr_input_channel_filter_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint16_t filter_value)
set tmr input channel filter
Definition: at32f403_tmr.c:953
tmr_period_value_set
void tmr_period_value_set(tmr_type *tmr_x, uint32_t tmr_pr_value)
set tmr period value
Definition: at32f403_tmr.c:483
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_counter_value_get
uint32_t tmr_counter_value_get(tmr_type *tmr_x)
get tmr counter value
Definition: at32f403_tmr.c:288
tmr_brkdt_config
void tmr_brkdt_config(tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time
Definition: at32f403_tmr.c:1771
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_external_clock_mode2_config
void tmr_external_clock_mode2_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode2
Definition: at32f403_tmr.c:1624
tmr_input_default_para_init
void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
init tmr input default para
Definition: at32f403_tmr.c:162
tmr_div_value_set
void tmr_div_value_set(tmr_type *tmr_x, uint32_t tmr_div_value)
set tmr div value
Definition: at32f403_tmr.c:302
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_sub_sync_mode_set
void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode
Definition: at32f403_tmr.c:1278
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_hall_select
void tmr_hall_select(tmr_type *tmr_x, confirm_state new_state)
select tmr hall
Definition: at32f403_tmr.c:1230
tmr_channel1_input_select
void tmr_channel1_input_select(tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
select tmr channel1 input
Definition: at32f403_tmr.c:1107
tmr_32_bit_function_enable
void tmr_32_bit_function_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode)
Definition: at32f403_tmr.c:772
tmr_external_clock_mode1_config
void tmr_external_clock_mode1_config(tmr_type *tmr_x, tmr_external_signal_divider_type es_divide, tmr_external_signal_polarity_type es_polarity, uint16_t es_filter)
config tmr external clock mode1
Definition: at32f403_tmr.c:1598
tmr_pwm_input_config
void tmr_pwm_input_config(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input
Definition: at32f403_tmr.c:999
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_output_channel_buffer_enable
void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer
Definition: at32f403_tmr.c:627
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_overflow_event_disable
void tmr_overflow_event_disable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr overflow event generation
Definition: at32f403_tmr.c:804
tmr_channel_dma_select
void tmr_channel_dma_select(tmr_type *tmr_x, tmr_dma_request_source_type cc_dma_select)
select tmr channel dma
Definition: at32f403_tmr.c:1217
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_output_channel_immediately_set
void tmr_output_channel_immediately_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel immediately
Definition: at32f403_tmr.c:673
tmr_encoder_mode_config
void tmr_encoder_mode_config(tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type ic1_polarity, tmr_input_polarity_type ic2_polarity)
config tmr encoder mode
Definition: at32f403_tmr.c:1653
tmr_channel_enable
void tmr_channel_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable
Definition: at32f403_tmr.c:897
tmr_output_channel_switch_set
void tmr_output_channel_switch_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
set tmr output channel switch
Definition: at32f403_tmr.c:719
tmr_reset
void tmr_reset(tmr_type *tmr_x)
tmr reset by crm reset register
Definition: at32f403_tmr.c:50
tmr_output_channel_polarity_set
void tmr_output_channel_polarity_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_polarity_active_type oc_polarity)
set tmr output channel polarity
Definition: at32f403_tmr.c:1512
tmr_one_cycle_mode_enable
void tmr_one_cycle_mode_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr one cycle mode
Definition: at32f403_tmr.c:758
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
tmr_dma_request_type
tmr_dma_request_type
tmr dma request type
Definition: at32f403_tmr.h:266
tmr_external_signal_divider_type
tmr_external_signal_divider_type
tmr external signal divider type
Definition: at32f403_tmr.h:305
tmr_polarity_active_type
tmr_polarity_active_type
tmr polarity active type
Definition: at32f403_tmr.h:295
tmr_count_mode_type
tmr_count_mode_type
tmr counter mode type
Definition: at32f403_tmr.h:103
tmr_input_polarity_type
tmr_input_polarity_type
tmr input channel polarity type
Definition: at32f403_tmr.h:203
tmr_dma_request_source_type
tmr_dma_request_source_type
tmr dma request source select type
Definition: at32f403_tmr.h:257
tmr_channel_select_type
tmr_channel_select_type
tmr channel select type
Definition: at32f403_tmr.h:213
tmr_external_signal_polarity_type
tmr_external_signal_polarity_type
tmr external signal polarity type
Definition: at32f403_tmr.h:316
tmr_dma_address_type
tmr_dma_address_type
tmr dma base address type
Definition: at32f403_tmr.h:350
tmr_wp_level_type
tmr_wp_level_type
tmr write protect level type
Definition: at32f403_tmr.h:385
tmr_channel1_input_connected_type
tmr_channel1_input_connected_type
tmr channel1 input connected type
Definition: at32f403_tmr.h:227
tmr_input_direction_mapped_type
tmr_input_direction_mapped_type
tmr input channel mapped type channel direction
Definition: at32f403_tmr.h:236
tmr_clock_division_type
tmr_clock_division_type
tmr clock division type
Definition: at32f403_tmr.h:93
tmr_event_trigger_type
tmr_event_trigger_type
tmr event triggered by software type
Definition: at32f403_tmr.h:280
tmr_brk_polarity_type
tmr_brk_polarity_type
tmr brk polarity type
Definition: at32f403_tmr.h:376
tmr_output_control_mode_type
tmr_output_control_mode_type
tmr output control mode type
Definition: at32f403_tmr.h:170
tmr_output_polarity_type
tmr_output_polarity_type
tmr output channel polarity type
Definition: at32f403_tmr.h:194
tmr_dma_transfer_length_type
tmr_dma_transfer_length_type
tmr dma transfer length type
Definition: at32f403_tmr.h:325
sub_tmr_input_sel_type
sub_tmr_input_sel_type
tmr subordinate mode input select type
Definition: at32f403_tmr.h:130
tmr_force_output_type
tmr_force_output_type
tmr force output type
Definition: at32f403_tmr.h:185
tmr_sub_mode_select_type
tmr_sub_mode_select_type
tmr subordinate mode select type
Definition: at32f403_tmr.h:145
tmr_primary_select_type
tmr_primary_select_type
tmr primary mode select type
Definition: at32f403_tmr.h:115
tmr_encoder_mode_type
tmr_encoder_mode_type
tmr encoder mode type
Definition: at32f403_tmr.h:160
tmr_channel_input_divider_type
tmr_channel_input_divider_type
tmr input divider type
Definition: at32f403_tmr.h:246
TMR_OVERFLOW_DMA_REQUEST
@ TMR_OVERFLOW_DMA_REQUEST
Definition: at32f403_tmr.h:267
TMR_HALL_DMA_REQUEST
@ TMR_HALL_DMA_REQUEST
Definition: at32f403_tmr.h:272
TMR_C1_DMA_REQUEST
@ TMR_C1_DMA_REQUEST
Definition: at32f403_tmr.h:268
TMR_C2_DMA_REQUEST
@ TMR_C2_DMA_REQUEST
Definition: at32f403_tmr.h:269
TMR_C3_DMA_REQUEST
@ TMR_C3_DMA_REQUEST
Definition: at32f403_tmr.h:270
TMR_TRIGGER_DMA_REQUEST
@ TMR_TRIGGER_DMA_REQUEST
Definition: at32f403_tmr.h:273
TMR_C4_DMA_REQUEST
@ TMR_C4_DMA_REQUEST
Definition: at32f403_tmr.h:271
TMR_ES_FREQUENCY_DIV_1
@ TMR_ES_FREQUENCY_DIV_1
Definition: at32f403_tmr.h:306
TMR_ES_FREQUENCY_DIV_8
@ TMR_ES_FREQUENCY_DIV_8
Definition: at32f403_tmr.h:309
TMR_ES_FREQUENCY_DIV_4
@ TMR_ES_FREQUENCY_DIV_4
Definition: at32f403_tmr.h:308
TMR_ES_FREQUENCY_DIV_2
@ TMR_ES_FREQUENCY_DIV_2
Definition: at32f403_tmr.h:307
TMR_POLARITY_ACTIVE_HIGH
@ TMR_POLARITY_ACTIVE_HIGH
Definition: at32f403_tmr.h:296
TMR_POLARITY_ACTIVE_LOW
@ TMR_POLARITY_ACTIVE_LOW
Definition: at32f403_tmr.h:297
TMR_POLARITY_ACTIVE_BOTH
@ TMR_POLARITY_ACTIVE_BOTH
Definition: at32f403_tmr.h:298
TMR_COUNT_DOWN
@ TMR_COUNT_DOWN
Definition: at32f403_tmr.h:105
TMR_COUNT_TWO_WAY_2
@ TMR_COUNT_TWO_WAY_2
Definition: at32f403_tmr.h:107
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_COUNT_TWO_WAY_3
@ TMR_COUNT_TWO_WAY_3
Definition: at32f403_tmr.h:108
TMR_COUNT_TWO_WAY_1
@ TMR_COUNT_TWO_WAY_1
Definition: at32f403_tmr.h:106
TMR_INPUT_BOTH_EDGE
@ TMR_INPUT_BOTH_EDGE
Definition: at32f403_tmr.h:206
TMR_INPUT_FALLING_EDGE
@ TMR_INPUT_FALLING_EDGE
Definition: at32f403_tmr.h:205
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_DMA_REQUEST_BY_CHANNEL
@ TMR_DMA_REQUEST_BY_CHANNEL
Definition: at32f403_tmr.h:258
TMR_DMA_REQUEST_BY_OVERFLOW
@ TMR_DMA_REQUEST_BY_OVERFLOW
Definition: at32f403_tmr.h:259
TMR_SELECT_CHANNEL_1C
@ TMR_SELECT_CHANNEL_1C
Definition: at32f403_tmr.h:215
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2C
@ TMR_SELECT_CHANNEL_2C
Definition: at32f403_tmr.h:217
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_SELECT_CHANNEL_3C
@ TMR_SELECT_CHANNEL_3C
Definition: at32f403_tmr.h:219
TMR_ES_POLARITY_INVERTED
@ TMR_ES_POLARITY_INVERTED
Definition: at32f403_tmr.h:318
TMR_ES_POLARITY_NON_INVERTED
@ TMR_ES_POLARITY_NON_INVERTED
Definition: at32f403_tmr.h:317
TMR_C2DT_ADDRESS
@ TMR_C2DT_ADDRESS
Definition: at32f403_tmr.h:365
TMR_C1DT_ADDRESS
@ TMR_C1DT_ADDRESS
Definition: at32f403_tmr.h:364
TMR_STCTRL_ADDRESS
@ TMR_STCTRL_ADDRESS
Definition: at32f403_tmr.h:353
TMR_BRK_ADDRESS
@ TMR_BRK_ADDRESS
Definition: at32f403_tmr.h:368
TMR_CTRL2_ADDRESS
@ TMR_CTRL2_ADDRESS
Definition: at32f403_tmr.h:352
TMR_PR_ADDRESS
@ TMR_PR_ADDRESS
Definition: at32f403_tmr.h:362
TMR_CVAL_ADDRESS
@ TMR_CVAL_ADDRESS
Definition: at32f403_tmr.h:360
TMR_CM1_ADDRESS
@ TMR_CM1_ADDRESS
Definition: at32f403_tmr.h:357
TMR_IDEN_ADDRESS
@ TMR_IDEN_ADDRESS
Definition: at32f403_tmr.h:354
TMR_DMACTRL_ADDRESS
@ TMR_DMACTRL_ADDRESS
Definition: at32f403_tmr.h:369
TMR_CCTRL_ADDRESS
@ TMR_CCTRL_ADDRESS
Definition: at32f403_tmr.h:359
TMR_RPR_ADDRESS
@ TMR_RPR_ADDRESS
Definition: at32f403_tmr.h:363
TMR_ISTS_ADDRESS
@ TMR_ISTS_ADDRESS
Definition: at32f403_tmr.h:355
TMR_C4DT_ADDRESS
@ TMR_C4DT_ADDRESS
Definition: at32f403_tmr.h:367
TMR_DIV_ADDRESS
@ TMR_DIV_ADDRESS
Definition: at32f403_tmr.h:361
TMR_SWEVT_ADDRESS
@ TMR_SWEVT_ADDRESS
Definition: at32f403_tmr.h:356
TMR_CM2_ADDRESS
@ TMR_CM2_ADDRESS
Definition: at32f403_tmr.h:358
TMR_C3DT_ADDRESS
@ TMR_C3DT_ADDRESS
Definition: at32f403_tmr.h:366
TMR_CTRL1_ADDRESS
@ TMR_CTRL1_ADDRESS
Definition: at32f403_tmr.h:351
TMR_WP_LEVEL_3
@ TMR_WP_LEVEL_3
Definition: at32f403_tmr.h:387
TMR_WP_LEVEL_2
@ TMR_WP_LEVEL_2
Definition: at32f403_tmr.h:388
TMR_WP_OFF
@ TMR_WP_OFF
Definition: at32f403_tmr.h:386
TMR_WP_LEVEL_1
@ TMR_WP_LEVEL_1
Definition: at32f403_tmr.h:389
TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR
@ TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR
Definition: at32f403_tmr.h:229
TMR_CHANEL1_CONNECTED_C1IRAW
@ TMR_CHANEL1_CONNECTED_C1IRAW
Definition: at32f403_tmr.h:228
TMR_CC_CHANNEL_MAPPED_STI
@ TMR_CC_CHANNEL_MAPPED_STI
Definition: at32f403_tmr.h:239
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_CC_CHANNEL_MAPPED_INDIRECT
@ TMR_CC_CHANNEL_MAPPED_INDIRECT
Definition: at32f403_tmr.h:238
TMR_CLOCK_DIV2
@ TMR_CLOCK_DIV2
Definition: at32f403_tmr.h:95
TMR_CLOCK_DIV4
@ TMR_CLOCK_DIV4
Definition: at32f403_tmr.h:96
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_C1_SWTRIG
@ TMR_C1_SWTRIG
Definition: at32f403_tmr.h:282
TMR_C3_SWTRIG
@ TMR_C3_SWTRIG
Definition: at32f403_tmr.h:284
TMR_C2_SWTRIG
@ TMR_C2_SWTRIG
Definition: at32f403_tmr.h:283
TMR_C4_SWTRIG
@ TMR_C4_SWTRIG
Definition: at32f403_tmr.h:285
TMR_BRK_SWTRIG
@ TMR_BRK_SWTRIG
Definition: at32f403_tmr.h:288
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR_TRIGGER_SWTRIG
@ TMR_TRIGGER_SWTRIG
Definition: at32f403_tmr.h:287
TMR_OVERFLOW_SWTRIG
@ TMR_OVERFLOW_SWTRIG
Definition: at32f403_tmr.h:281
TMR_BRK_INPUT_ACTIVE_HIGH
@ TMR_BRK_INPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:378
TMR_BRK_INPUT_ACTIVE_LOW
@ TMR_BRK_INPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:377
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_CONTROL_FORCE_HIGH
@ TMR_OUTPUT_CONTROL_FORCE_HIGH
Definition: at32f403_tmr.h:176
TMR_OUTPUT_CONTROL_SWITCH
@ TMR_OUTPUT_CONTROL_SWITCH
Definition: at32f403_tmr.h:174
TMR_OUTPUT_CONTROL_OFF
@ TMR_OUTPUT_CONTROL_OFF
Definition: at32f403_tmr.h:171
TMR_OUTPUT_CONTROL_LOW
@ TMR_OUTPUT_CONTROL_LOW
Definition: at32f403_tmr.h:173
TMR_OUTPUT_CONTROL_FORCE_LOW
@ TMR_OUTPUT_CONTROL_FORCE_LOW
Definition: at32f403_tmr.h:175
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_CONTROL_HIGH
@ TMR_OUTPUT_CONTROL_HIGH
Definition: at32f403_tmr.h:172
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR_DMA_TRANSFER_15BYTES
@ TMR_DMA_TRANSFER_15BYTES
Definition: at32f403_tmr.h:340
TMR_DMA_TRANSFER_11BYTES
@ TMR_DMA_TRANSFER_11BYTES
Definition: at32f403_tmr.h:336
TMR_DMA_TRANSFER_13BYTES
@ TMR_DMA_TRANSFER_13BYTES
Definition: at32f403_tmr.h:338
TMR_DMA_TRANSFER_14BYTES
@ TMR_DMA_TRANSFER_14BYTES
Definition: at32f403_tmr.h:339
TMR_DMA_TRANSFER_2BYTES
@ TMR_DMA_TRANSFER_2BYTES
Definition: at32f403_tmr.h:327
TMR_DMA_TRANSFER_18BYTES
@ TMR_DMA_TRANSFER_18BYTES
Definition: at32f403_tmr.h:343
TMR_DMA_TRANSFER_9BYTES
@ TMR_DMA_TRANSFER_9BYTES
Definition: at32f403_tmr.h:334
TMR_DMA_TRANSFER_12BYTES
@ TMR_DMA_TRANSFER_12BYTES
Definition: at32f403_tmr.h:337
TMR_DMA_TRANSFER_7BYTES
@ TMR_DMA_TRANSFER_7BYTES
Definition: at32f403_tmr.h:332
TMR_DMA_TRANSFER_17BYTES
@ TMR_DMA_TRANSFER_17BYTES
Definition: at32f403_tmr.h:342
TMR_DMA_TRANSFER_16BYTES
@ TMR_DMA_TRANSFER_16BYTES
Definition: at32f403_tmr.h:341
TMR_DMA_TRANSFER_5BYTES
@ TMR_DMA_TRANSFER_5BYTES
Definition: at32f403_tmr.h:330
TMR_DMA_TRANSFER_10BYTES
@ TMR_DMA_TRANSFER_10BYTES
Definition: at32f403_tmr.h:335
TMR_DMA_TRANSFER_1BYTE
@ TMR_DMA_TRANSFER_1BYTE
Definition: at32f403_tmr.h:326
TMR_DMA_TRANSFER_6BYTES
@ TMR_DMA_TRANSFER_6BYTES
Definition: at32f403_tmr.h:331
TMR_DMA_TRANSFER_4BYTES
@ TMR_DMA_TRANSFER_4BYTES
Definition: at32f403_tmr.h:329
TMR_DMA_TRANSFER_8BYTES
@ TMR_DMA_TRANSFER_8BYTES
Definition: at32f403_tmr.h:333
TMR_DMA_TRANSFER_3BYTES
@ TMR_DMA_TRANSFER_3BYTES
Definition: at32f403_tmr.h:328
TMR_SUB_INPUT_SEL_IS2
@ TMR_SUB_INPUT_SEL_IS2
Definition: at32f403_tmr.h:133
TMR_SUB_INPUT_SEL_IS0
@ TMR_SUB_INPUT_SEL_IS0
Definition: at32f403_tmr.h:131
TMR_SUB_INPUT_SEL_C2DF2
@ TMR_SUB_INPUT_SEL_C2DF2
Definition: at32f403_tmr.h:137
TMR_SUB_INPUT_SEL_EXTIN
@ TMR_SUB_INPUT_SEL_EXTIN
Definition: at32f403_tmr.h:138
TMR_SUB_INPUT_SEL_IS3
@ TMR_SUB_INPUT_SEL_IS3
Definition: at32f403_tmr.h:134
TMR_SUB_INPUT_SEL_C1DF1
@ TMR_SUB_INPUT_SEL_C1DF1
Definition: at32f403_tmr.h:136
TMR_SUB_INPUT_SEL_C1INC
@ TMR_SUB_INPUT_SEL_C1INC
Definition: at32f403_tmr.h:135
TMR_SUB_INPUT_SEL_IS1
@ TMR_SUB_INPUT_SEL_IS1
Definition: at32f403_tmr.h:132
TMR_FORCE_OUTPUT_HIGH
@ TMR_FORCE_OUTPUT_HIGH
Definition: at32f403_tmr.h:186
TMR_FORCE_OUTPUT_LOW
@ TMR_FORCE_OUTPUT_LOW
Definition: at32f403_tmr.h:187
TMR_SUB_ENCODER_MODE_A
@ TMR_SUB_ENCODER_MODE_A
Definition: at32f403_tmr.h:147
TMR_SUB_EXTERNAL_CLOCK_MODE_A
@ TMR_SUB_EXTERNAL_CLOCK_MODE_A
Definition: at32f403_tmr.h:153
TMR_SUB_ENCODER_MODE_C
@ TMR_SUB_ENCODER_MODE_C
Definition: at32f403_tmr.h:149
TMR_SUB_MODE_DIABLE
@ TMR_SUB_MODE_DIABLE
Definition: at32f403_tmr.h:146
TMR_SUB_RESET_MODE
@ TMR_SUB_RESET_MODE
Definition: at32f403_tmr.h:150
TMR_SUB_ENCODER_MODE_B
@ TMR_SUB_ENCODER_MODE_B
Definition: at32f403_tmr.h:148
TMR_SUB_HANG_MODE
@ TMR_SUB_HANG_MODE
Definition: at32f403_tmr.h:151
TMR_SUB_TRIGGER_MODE
@ TMR_SUB_TRIGGER_MODE
Definition: at32f403_tmr.h:152
TMR_PRIMARY_SEL_RESET
@ TMR_PRIMARY_SEL_RESET
Definition: at32f403_tmr.h:116
TMR_PRIMARY_SEL_C2ORAW
@ TMR_PRIMARY_SEL_C2ORAW
Definition: at32f403_tmr.h:121
TMR_PRIMARY_SEL_C1ORAW
@ TMR_PRIMARY_SEL_C1ORAW
Definition: at32f403_tmr.h:120
TMR_PRIMARY_SEL_C4ORAW
@ TMR_PRIMARY_SEL_C4ORAW
Definition: at32f403_tmr.h:123
TMR_PRIMARY_SEL_COMPARE
@ TMR_PRIMARY_SEL_COMPARE
Definition: at32f403_tmr.h:119
TMR_PRIMARY_SEL_ENABLE
@ TMR_PRIMARY_SEL_ENABLE
Definition: at32f403_tmr.h:117
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR_PRIMARY_SEL_C3ORAW
@ TMR_PRIMARY_SEL_C3ORAW
Definition: at32f403_tmr.h:122
TMR_ENCODER_MODE_C
@ TMR_ENCODER_MODE_C
Definition: at32f403_tmr.h:163
TMR_ENCODER_MODE_A
@ TMR_ENCODER_MODE_A
Definition: at32f403_tmr.h:161
TMR_ENCODER_MODE_B
@ TMR_ENCODER_MODE_B
Definition: at32f403_tmr.h:162
TMR_CHANNEL_INPUT_DIV_4
@ TMR_CHANNEL_INPUT_DIV_4
Definition: at32f403_tmr.h:249
TMR_CHANNEL_INPUT_DIV_2
@ TMR_CHANNEL_INPUT_DIV_2
Definition: at32f403_tmr.h:248
TMR_CHANNEL_INPUT_DIV_8
@ TMR_CHANNEL_INPUT_DIV_8
Definition: at32f403_tmr.h:250
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
tmr_brkdt_config_type
tmr brkdt config type
Definition: at32f403_tmr.h:421
tmr_brkdt_config_type::brk_enable
confirm_state brk_enable
Definition: at32f403_tmr.h:428
tmr_brkdt_config_type::deadtime
uint8_t deadtime
Definition: at32f403_tmr.h:422
tmr_brkdt_config_type::auto_output_enable
confirm_state auto_output_enable
Definition: at32f403_tmr.h:425
tmr_brkdt_config_type::wp_level
tmr_wp_level_type wp_level
Definition: at32f403_tmr.h:424
tmr_brkdt_config_type::fcsoen_state
confirm_state fcsoen_state
Definition: at32f403_tmr.h:426
tmr_brkdt_config_type::fcsodis_state
confirm_state fcsodis_state
Definition: at32f403_tmr.h:427
tmr_brkdt_config_type::brk_polarity
tmr_brk_polarity_type brk_polarity
Definition: at32f403_tmr.h:423
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_filter_value
uint8_t input_filter_value
Definition: at32f403_tmr.h:414
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
tmr_type
type define tmr register all
Definition: at32f403_tmr.h:435
tmr_type::ovfif
__IO uint32_t ovfif
Definition: at32f403_tmr.h:536
tmr_type::c1cen
__IO uint32_t c1cen
Definition: at32f403_tmr.h:663
tmr_type::pmen
__IO uint32_t pmen
Definition: at32f403_tmr.h:451
tmr_type::trgif
__IO uint32_t trgif
Definition: at32f403_tmr.h:542
tmr_type::brken
__IO uint32_t brken
Definition: at32f403_tmr.h:789
tmr_type::c1idiv
__IO uint32_t c1idiv
Definition: at32f403_tmr.h:604
tmr_type::dmactrl
__IO uint32_t dmactrl
Definition: at32f403_tmr.h:801
tmr_type::dtc
__IO uint32_t dtc
Definition: at32f403_tmr.h:785
tmr_type::c1en
__IO uint32_t c1en
Definition: at32f403_tmr.h:661
tmr_type::c4df
__IO uint32_t c4df
Definition: at32f403_tmr.h:648
tmr_type::c3octrl
__IO uint32_t c3octrl
Definition: at32f403_tmr.h:628
tmr_type::brkif
__IO uint32_t brkif
Definition: at32f403_tmr.h:543
tmr_type::c2osen
__IO uint32_t c2osen
Definition: at32f403_tmr.h:594
tmr_type::swevt
__IO uint32_t swevt
Definition: at32f403_tmr.h:558
tmr_type::ovfden
__IO uint32_t ovfden
Definition: at32f403_tmr.h:517
tmr_type::c2en
__IO uint32_t c2en
Definition: at32f403_tmr.h:665
tmr_type::stctrl
__IO uint32_t stctrl
Definition: at32f403_tmr.h:486
tmr_type::c3df
__IO uint32_t c3df
Definition: at32f403_tmr.h:645
tmr_type::wpc
__IO uint32_t wpc
Definition: at32f403_tmr.h:786
tmr_type::c3oben
__IO uint32_t c3oben
Definition: at32f403_tmr.h:627
tmr_type::cnt_dir
__IO uint32_t cnt_dir
Definition: at32f403_tmr.h:448
tmr_type::c2if
__IO uint32_t c2if
Definition: at32f403_tmr.h:538
tmr_type::c3if
__IO uint32_t c3if
Definition: at32f403_tmr.h:539
tmr_type::c4octrl
__IO uint32_t c4octrl
Definition: at32f403_tmr.h:633
tmr_type::hallif
__IO uint32_t hallif
Definition: at32f403_tmr.h:541
tmr_type::c1insel
__IO uint32_t c1insel
Definition: at32f403_tmr.h:469
tmr_type::c2cios
__IO uint32_t c2cios
Definition: at32f403_tmr.h:473
tmr_type::div
__IO uint32_t div
Definition: at32f403_tmr.h:696
tmr_type::hallswtr
__IO uint32_t hallswtr
Definition: at32f403_tmr.h:566
tmr_type::esf
__IO uint32_t esf
Definition: at32f403_tmr.h:493
tmr_type::c1osen
__IO uint32_t c1osen
Definition: at32f403_tmr.h:589
tmr_type::c2cen
__IO uint32_t c2cen
Definition: at32f403_tmr.h:667
tmr_type::c2ien
__IO uint32_t c2ien
Definition: at32f403_tmr.h:511
tmr_type::drs
__IO uint32_t drs
Definition: at32f403_tmr.h:467
tmr_type::iden
__IO uint32_t iden
Definition: at32f403_tmr.h:506
tmr_type::c1oben
__IO uint32_t c1oben
Definition: at32f403_tmr.h:587
tmr_type::ists
__IO uint32_t ists
Definition: at32f403_tmr.h:533
tmr_type::c1c
__IO uint32_t c1c
Definition: at32f403_tmr.h:585
tmr_type::c3cen
__IO uint32_t c3cen
Definition: at32f403_tmr.h:671
tmr_type::c4p
__IO uint32_t c4p
Definition: at32f403_tmr.h:674
tmr_type::brkv
__IO uint32_t brkv
Definition: at32f403_tmr.h:790
tmr_type::brk
__IO uint32_t brk
Definition: at32f403_tmr.h:782
tmr_type::stis
__IO uint32_t stis
Definition: at32f403_tmr.h:491
tmr_type::ovfswtr
__IO uint32_t ovfswtr
Definition: at32f403_tmr.h:561
tmr_type::c3idiv
__IO uint32_t c3idiv
Definition: at32f403_tmr.h:644
tmr_type::c4osen
__IO uint32_t c4osen
Definition: at32f403_tmr.h:634
tmr_type::c1ien
__IO uint32_t c1ien
Definition: at32f403_tmr.h:510
tmr_type::c1octrl
__IO uint32_t c1octrl
Definition: at32f403_tmr.h:588
tmr_type::hallien
__IO uint32_t hallien
Definition: at32f403_tmr.h:514
tmr_type::tmren
__IO uint32_t tmren
Definition: at32f403_tmr.h:444
tmr_type::oen
__IO uint32_t oen
Definition: at32f403_tmr.h:792
tmr_type::sts
__IO uint32_t sts
Definition: at32f403_tmr.h:492
tmr_type::brkie
__IO uint32_t brkie
Definition: at32f403_tmr.h:516
tmr_type::c2idiv
__IO uint32_t c2idiv
Definition: at32f403_tmr.h:607
tmr_type::c1p
__IO uint32_t c1p
Definition: at32f403_tmr.h:662
tmr_type::brkswtr
__IO uint32_t brkswtr
Definition: at32f403_tmr.h:568
tmr_type::c1rf
__IO uint32_t c1rf
Definition: at32f403_tmr.h:545
tmr_type::ovfien
__IO uint32_t ovfien
Definition: at32f403_tmr.h:509
tmr_type::c1oien
__IO uint32_t c1oien
Definition: at32f403_tmr.h:586
tmr_type::pr
__IO uint32_t pr
Definition: at32f403_tmr.h:709
tmr_type::c3oien
__IO uint32_t c3oien
Definition: at32f403_tmr.h:626
tmr_type::c2swtr
__IO uint32_t c2swtr
Definition: at32f403_tmr.h:563
tmr_type::c1dt
uint32_t c1dt
Definition: at32f403_tmr.h:734
tmr_type::c2oben
__IO uint32_t c2oben
Definition: at32f403_tmr.h:592
tmr_type::c1den
__IO uint32_t c1den
Definition: at32f403_tmr.h:518
tmr_type::cm2
__IO uint32_t cm2
Definition: at32f403_tmr.h:618
tmr_type::c2octrl
__IO uint32_t c2octrl
Definition: at32f403_tmr.h:593
tmr_type::smsel
__IO uint32_t smsel
Definition: at32f403_tmr.h:489
tmr_type::c3p
__IO uint32_t c3p
Definition: at32f403_tmr.h:670
tmr_type::c2dt
__IO uint32_t c2dt
Definition: at32f403_tmr.h:749
tmr_type::dmadt
__IO uint32_t dmadt
Definition: at32f403_tmr.h:816
tmr_type::c1if
__IO uint32_t c1if
Definition: at32f403_tmr.h:537
tmr_type::c1cp
__IO uint32_t c1cp
Definition: at32f403_tmr.h:664
tmr_type::c3c
__IO uint32_t c3c
Definition: at32f403_tmr.h:625
tmr_type::c4rf
__IO uint32_t c4rf
Definition: at32f403_tmr.h:548
tmr_type::c3cios
__IO uint32_t c3cios
Definition: at32f403_tmr.h:475
tmr_type::clkdiv
__IO uint32_t clkdiv
Definition: at32f403_tmr.h:450
tmr_type::tden
__IO uint32_t tden
Definition: at32f403_tmr.h:523
tmr_type::ovfs
__IO uint32_t ovfs
Definition: at32f403_tmr.h:446
tmr_type::c1dt
__IO uint32_t c1dt
Definition: at32f403_tmr.h:737
tmr_type::c3swtr
__IO uint32_t c3swtr
Definition: at32f403_tmr.h:564
tmr_type::cbctrl
__IO uint32_t cbctrl
Definition: at32f403_tmr.h:464
tmr_type::dtb
__IO uint32_t dtb
Definition: at32f403_tmr.h:806
tmr_type::c4ios
__IO uint32_t c4ios
Definition: at32f403_tmr.h:476
tmr_type::c4swtr
__IO uint32_t c4swtr
Definition: at32f403_tmr.h:565
tmr_type::prben
__IO uint32_t prben
Definition: at32f403_tmr.h:449
tmr_type::tien
__IO uint32_t tien
Definition: at32f403_tmr.h:515
tmr_type::ccfs
__IO uint32_t ccfs
Definition: at32f403_tmr.h:466
tmr_type::ecmben
__IO uint32_t ecmben
Definition: at32f403_tmr.h:495
tmr_type::ovfen
__IO uint32_t ovfen
Definition: at32f403_tmr.h:445
tmr_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_tmr.h:477
tmr_type::cm1
__IO uint32_t cm1
Definition: at32f403_tmr.h:578
tmr_type::c2den
__IO uint32_t c2den
Definition: at32f403_tmr.h:519
tmr_type::c4en
__IO uint32_t c4en
Definition: at32f403_tmr.h:673
tmr_type::reserved
__IO uint32_t reserved
Definition: at32f403_tmr.h:569
tmr_type::trgswtr
__IO uint32_t trgswtr
Definition: at32f403_tmr.h:567
tmr_type::fcsoen
__IO uint32_t fcsoen
Definition: at32f403_tmr.h:788
tmr_type::esdiv
__IO uint32_t esdiv
Definition: at32f403_tmr.h:494
tmr_type::c3en
__IO uint32_t c3en
Definition: at32f403_tmr.h:669
tmr_type::c2p
__IO uint32_t c2p
Definition: at32f403_tmr.h:666
tmr_type::c3ios
__IO uint32_t c3ios
Definition: at32f403_tmr.h:474
tmr_type::ocmen
__IO uint32_t ocmen
Definition: at32f403_tmr.h:447
tmr_type::hallde
__IO uint32_t hallde
Definition: at32f403_tmr.h:522
tmr_type::c1swtr
__IO uint32_t c1swtr
Definition: at32f403_tmr.h:562
tmr_type::c3rf
__IO uint32_t c3rf
Definition: at32f403_tmr.h:547
tmr_type::c3den
__IO uint32_t c3den
Definition: at32f403_tmr.h:520
tmr_type::c4oien
__IO uint32_t c4oien
Definition: at32f403_tmr.h:631
tmr_type::c2dt
uint32_t c2dt
Definition: at32f403_tmr.h:746
tmr_type::addr
__IO uint32_t addr
Definition: at32f403_tmr.h:804
tmr_type::c3cp
__IO uint32_t c3cp
Definition: at32f403_tmr.h:672
tmr_type::c2df
__IO uint32_t c2df
Definition: at32f403_tmr.h:608
tmr_type::c4idiv
__IO uint32_t c4idiv
Definition: at32f403_tmr.h:647
tmr_type::c2ios
__IO uint32_t c2ios
Definition: at32f403_tmr.h:472
tmr_type::c3osen
__IO uint32_t c3osen
Definition: at32f403_tmr.h:629
tmr_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_tmr.h:452
tmr_type::rpr
__IO uint32_t rpr
Definition: at32f403_tmr.h:721
tmr_type::c2c
__IO uint32_t c2c
Definition: at32f403_tmr.h:590
tmr_type::c1ios
__IO uint32_t c1ios
Definition: at32f403_tmr.h:470
tmr_type::ctrl1
__IO uint32_t ctrl1
Definition: at32f403_tmr.h:441
tmr_type::c4den
__IO uint32_t c4den
Definition: at32f403_tmr.h:521
tmr_type::c1df
__IO uint32_t c1df
Definition: at32f403_tmr.h:605
tmr_type::c2oien
__IO uint32_t c2oien
Definition: at32f403_tmr.h:591
tmr_type::c4dt
__IO uint32_t c4dt
Definition: at32f403_tmr.h:770
tmr_type::c4if
__IO uint32_t c4if
Definition: at32f403_tmr.h:540
tmr_type::c3ien
__IO uint32_t c3ien
Definition: at32f403_tmr.h:512
tmr_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_tmr.h:461
tmr_type::c3dt
__IO uint32_t c3dt
Definition: at32f403_tmr.h:758
tmr_type::c2cp
__IO uint32_t c2cp
Definition: at32f403_tmr.h:668
tmr_type::cctrl
uint32_t cctrl
Definition: at32f403_tmr.h:658
tmr_type::c4c
__IO uint32_t c4c
Definition: at32f403_tmr.h:630
tmr_type::c4oben
__IO uint32_t c4oben
Definition: at32f403_tmr.h:632
tmr_type::fcsodis
__IO uint32_t fcsodis
Definition: at32f403_tmr.h:787
tmr_type::cval
__IO uint32_t cval
Definition: at32f403_tmr.h:684
tmr_type::c4ien
__IO uint32_t c4ien
Definition: at32f403_tmr.h:513
tmr_type::esp
__IO uint32_t esp
Definition: at32f403_tmr.h:496
tmr_type::ptos
__IO uint32_t ptos
Definition: at32f403_tmr.h:468
tmr_type::c1cios
__IO uint32_t c1cios
Definition: at32f403_tmr.h:471
tmr_type::aoen
__IO uint32_t aoen
Definition: at32f403_tmr.h:791
tmr_type::c2rf
__IO uint32_t c2rf
Definition: at32f403_tmr.h:546


AT32F403 Firmwary Library: at32f403_usart.c Source File

  • libraries
  • drivers
  • src
at32f403_usart.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_conf.h"
27
37#ifdef USART_MODULE_ENABLED
38
50void usart_reset(usart_type* usart_x)
51{
52 if(usart_x == USART1)
53 {
54 crm_periph_reset(CRM_USART1_PERIPH_RESET, TRUE);
55 crm_periph_reset(CRM_USART1_PERIPH_RESET, FALSE);
56 }
57 else if(usart_x == USART2)
58 {
59 crm_periph_reset(CRM_USART2_PERIPH_RESET, TRUE);
60 crm_periph_reset(CRM_USART2_PERIPH_RESET, FALSE);
61 }
62 else if(usart_x == USART3)
63 {
64 crm_periph_reset(CRM_USART3_PERIPH_RESET, TRUE);
65 crm_periph_reset(CRM_USART3_PERIPH_RESET, FALSE);
66 }
67#if defined (AT32F403Zx) || defined (AT32F403Vx) || defined (AT32F403Rx)
68 else if(usart_x == UART4)
69 {
70 crm_periph_reset(CRM_UART4_PERIPH_RESET, TRUE);
71 crm_periph_reset(CRM_UART4_PERIPH_RESET, FALSE);
72 }
73 else if(usart_x == UART5)
74 {
75 crm_periph_reset(CRM_UART5_PERIPH_RESET, TRUE);
76 crm_periph_reset(CRM_UART5_PERIPH_RESET, FALSE);
77 }
78#endif
79}
80
102void usart_init(usart_type* usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
103{
104 crm_clocks_freq_type clocks_freq;
105 uint32_t apb_clock, temp_val;
106 crm_clocks_freq_get(&clocks_freq);
107 if(usart_x == USART1)
108 {
109 apb_clock = clocks_freq.apb2_freq;
110 }
111 else
112 {
113 apb_clock = clocks_freq.apb1_freq;
114 }
115 temp_val = (apb_clock * 10 / baud_rate);
116 if((temp_val % 10) < 5)
117 {
118 temp_val = (temp_val / 10);
119 }
120 else
121 {
122 temp_val = (temp_val / 10) + 1;
123 }
124 usart_x->baudr_bit.div = temp_val;
125 usart_x->ctrl1_bit.dbn = data_bit;
126 usart_x->ctrl2_bit.stopbn = stop_bit;
127}
128
141void usart_parity_selection_config(usart_type* usart_x, usart_parity_selection_type parity)
142{
143 if(parity == USART_PARITY_NONE)
144 {
145 usart_x->ctrl1_bit.psel = FALSE;
146 usart_x->ctrl1_bit.pen = FALSE;
147 }
148 else if(parity == USART_PARITY_EVEN)
149 {
150 usart_x->ctrl1_bit.psel = FALSE;
151 usart_x->ctrl1_bit.pen = TRUE;
152 }
153 else if(parity == USART_PARITY_ODD)
154 {
155 usart_x->ctrl1_bit.psel = TRUE;
156 usart_x->ctrl1_bit.pen = TRUE;
157 }
158}
159
169void usart_enable(usart_type* usart_x, confirm_state new_state)
170{
171 usart_x->ctrl1_bit.uen = new_state;
172}
173
182void usart_transmitter_enable(usart_type* usart_x, confirm_state new_state)
183{
184 usart_x->ctrl1_bit.ten = new_state;
185}
186
195void usart_receiver_enable(usart_type* usart_x, confirm_state new_state)
196{
197 usart_x->ctrl1_bit.ren = new_state;
198}
199
220void usart_clock_config(usart_type* usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
221{
222 usart_x->ctrl2_bit.clkpol = clk_pol;
223 usart_x->ctrl2_bit.clkpha = clk_pha;
224 usart_x->ctrl2_bit.lbcp = clk_lb;
225}
226
236void usart_clock_enable(usart_type* usart_x, confirm_state new_state)
237{
238 usart_x->ctrl2_bit.clken = new_state;
239}
240
260void usart_interrupt_enable(usart_type* usart_x, uint32_t usart_int, confirm_state new_state)
261{
262 if(new_state == TRUE)
263 PERIPH_REG((uint32_t)usart_x, usart_int) |= PERIPH_REG_BIT(usart_int);
264 else
265 PERIPH_REG((uint32_t)usart_x, usart_int) &= ~PERIPH_REG_BIT(usart_int);
266}
267
277void usart_dma_transmitter_enable(usart_type* usart_x, confirm_state new_state)
278{
279 usart_x->ctrl3_bit.dmaten = new_state;
280}
281
291void usart_dma_receiver_enable(usart_type* usart_x, confirm_state new_state)
292{
293 usart_x->ctrl3_bit.dmaren = new_state;
294}
295
304void usart_wakeup_id_set(usart_type* usart_x, uint8_t usart_id)
305{
306 usart_x->ctrl2_bit.id = usart_id;
307}
308
320void usart_wakeup_mode_set(usart_type* usart_x, usart_wakeup_mode_type wakeup_mode)
321{
322 usart_x->ctrl1_bit.wum = wakeup_mode;
323}
324
334void usart_receiver_mute_enable(usart_type* usart_x, confirm_state new_state)
335{
336 usart_x->ctrl1_bit.rm = new_state;
337}
338
350void usart_break_bit_num_set(usart_type* usart_x, usart_break_bit_num_type break_bit)
351{
352 usart_x->ctrl2_bit.bfbn = break_bit;
353}
354
364void usart_lin_mode_enable(usart_type* usart_x, confirm_state new_state)
365{
366 usart_x->ctrl2_bit.linen = new_state;
367}
368
377void usart_data_transmit(usart_type* usart_x, uint16_t data)
378{
379 usart_x->dt = (data & 0x01FF);
380}
381
389uint16_t usart_data_receive(usart_type* usart_x)
390{
391 return (uint16_t)(usart_x->dt);
392}
393
401void usart_break_send(usart_type* usart_x)
402{
403 usart_x->ctrl1_bit.sbf = TRUE;
404}
405
415void usart_smartcard_guard_time_set(usart_type* usart_x, uint8_t guard_time_val)
416{
417 usart_x->gdiv_bit.scgt = guard_time_val;
418}
419
429void usart_irda_smartcard_division_set(usart_type* usart_x, uint8_t div_val)
430{
431 usart_x->gdiv_bit.isdiv = div_val;
432}
433
444void usart_smartcard_mode_enable(usart_type* usart_x, confirm_state new_state)
445{
446 usart_x->ctrl3_bit.scmen = new_state;
447}
448
459void usart_smartcard_nack_set(usart_type* usart_x, confirm_state new_state)
460{
461 usart_x->ctrl3_bit.scnacken = new_state;
462}
463
473void usart_single_line_halfduplex_select(usart_type* usart_x, confirm_state new_state)
474{
475 usart_x->ctrl3_bit.slben = new_state;
476}
477
487void usart_irda_mode_enable(usart_type* usart_x, confirm_state new_state)
488{
489 usart_x->ctrl3_bit.irdaen = new_state;
490}
491
501void usart_irda_low_power_enable(usart_type* usart_x, confirm_state new_state)
502{
503 usart_x->ctrl3_bit.irdalp = new_state;
504}
505
519void usart_hardware_flow_control_set(usart_type* usart_x,usart_hardware_flow_control_type flow_state)
520{
521 if(flow_state == USART_HARDWARE_FLOW_NONE)
522 {
523 usart_x->ctrl3_bit.rtsen = FALSE;
524 usart_x->ctrl3_bit.ctsen = FALSE;
525 }
526 else if(flow_state == USART_HARDWARE_FLOW_RTS)
527 {
528 usart_x->ctrl3_bit.rtsen = TRUE;
529 usart_x->ctrl3_bit.ctsen = FALSE;
530 }
531 else if(flow_state == USART_HARDWARE_FLOW_CTS)
532 {
533 usart_x->ctrl3_bit.rtsen = FALSE;
534 usart_x->ctrl3_bit.ctsen = TRUE;
535 }
536 else if(flow_state == USART_HARDWARE_FLOW_RTS_CTS)
537 {
538 usart_x->ctrl3_bit.rtsen = TRUE;
539 usart_x->ctrl3_bit.ctsen = TRUE;
540 }
541}
542
562 flag_status usart_flag_get(usart_type* usart_x, uint32_t flag)
563{
564 if(usart_x->sts & flag)
565 {
566 return SET;
567 }
568 else
569 {
570 return RESET;
571 }
572}
573
593 flag_status usart_interrupt_flag_get(usart_type* usart_x, uint32_t flag)
594{
595 flag_status int_status = RESET;
596
597 switch(flag)
598 {
599 case USART_CTSCF_FLAG:
600 int_status = (flag_status)usart_x->ctrl3_bit.ctscfien;
601 break;
602 case USART_BFF_FLAG:
603 int_status = (flag_status)usart_x->ctrl2_bit.bfien;
604 break;
605 case USART_TDBE_FLAG:
606 int_status = (flag_status)usart_x->ctrl1_bit.tdbeien;
607 break;
608 case USART_TDC_FLAG:
609 int_status = (flag_status)usart_x->ctrl1_bit.tdcien;
610 break;
611 case USART_RDBF_FLAG:
612 int_status = (flag_status)usart_x->ctrl1_bit.rdbfien;
613 break;
614 case USART_ROERR_FLAG:
615 int_status = (flag_status)(usart_x->ctrl1_bit.rdbfien || usart_x->ctrl3_bit.errien);
616 break;
617 case USART_IDLEF_FLAG:
618 int_status = (flag_status)usart_x->ctrl1_bit.idleien;
619 break;
620 case USART_NERR_FLAG:
621 case USART_FERR_FLAG:
622 int_status = (flag_status)usart_x->ctrl3_bit.errien;
623 break;
624 case USART_PERR_FLAG:
625 int_status = (flag_status)usart_x->ctrl1_bit.perrien;
626 break;
627 default:
628 int_status = RESET;
629 break;
630 }
631
632 if(int_status != SET)
633 {
634 return RESET;
635 }
636
637 if(usart_x->sts & flag)
638 {
639 return SET;
640 }
641 else
642 {
643 return RESET;
644 }
645}
646
673void usart_flag_clear(usart_type* usart_x, uint32_t flag)
674{
675 if(flag & (USART_PERR_FLAG | USART_FERR_FLAG | USART_NERR_FLAG | USART_ROERR_FLAG | USART_IDLEF_FLAG))
676 {
677 UNUSED(usart_x->sts);
678 UNUSED(usart_x->dt);
679 }
680 else
681 {
682 usart_x->sts = ~flag;
683 }
684}
685
690#endif
691
UNUSED
#define UNUSED(x)
Definition: at32f403_def.h:63
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_UART4_PERIPH_RESET
@ CRM_UART4_PERIPH_RESET
Definition: at32f403_crm.h:199
CRM_USART1_PERIPH_RESET
@ CRM_USART1_PERIPH_RESET
Definition: at32f403_crm.h:177
CRM_USART2_PERIPH_RESET
@ CRM_USART2_PERIPH_RESET
Definition: at32f403_crm.h:197
CRM_UART5_PERIPH_RESET
@ CRM_UART5_PERIPH_RESET
Definition: at32f403_crm.h:200
CRM_USART3_PERIPH_RESET
@ CRM_USART3_PERIPH_RESET
Definition: at32f403_crm.h:198
PERIPH_REG
#define PERIPH_REG(periph_base, value)
Definition: at32f403.h:330
PERIPH_REG_BIT
#define PERIPH_REG_BIT(value)
Definition: at32f403.h:331
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
usart_break_bit_num_type
usart_break_bit_num_type
usart break frame bit num type
Definition: at32f403_usart.h:119
usart_clock_polarity_type
usart_clock_polarity_type
usart polarity of the clock type
Definition: at32f403_usart.h:137
usart_hardware_flow_control_type
usart_hardware_flow_control_type
usart hardware flow control type
Definition: at32f403_usart.h:166
usart_stop_bit_num_type
usart_stop_bit_num_type
usart stop bit num type
Definition: at32f403_usart.h:155
usart_data_bit_num_type
usart_data_bit_num_type
usart data bit num type
Definition: at32f403_usart.h:110
usart_parity_selection_type
usart_parity_selection_type
usart parity selection type
Definition: at32f403_usart.h:91
usart_lbcp_type
usart_lbcp_type
usart last bit clock pulse type
Definition: at32f403_usart.h:146
usart_wakeup_mode_type
usart_wakeup_mode_type
usart wakeup mode type
Definition: at32f403_usart.h:101
usart_clock_phase_type
usart_clock_phase_type
usart phase of the clock type
Definition: at32f403_usart.h:128
USART_HARDWARE_FLOW_CTS
@ USART_HARDWARE_FLOW_CTS
Definition: at32f403_usart.h:169
USART_HARDWARE_FLOW_RTS
@ USART_HARDWARE_FLOW_RTS
Definition: at32f403_usart.h:168
USART_HARDWARE_FLOW_NONE
@ USART_HARDWARE_FLOW_NONE
Definition: at32f403_usart.h:167
USART_HARDWARE_FLOW_RTS_CTS
@ USART_HARDWARE_FLOW_RTS_CTS
Definition: at32f403_usart.h:170
USART_PARITY_ODD
@ USART_PARITY_ODD
Definition: at32f403_usart.h:94
USART_PARITY_EVEN
@ USART_PARITY_EVEN
Definition: at32f403_usart.h:93
USART_PARITY_NONE
@ USART_PARITY_NONE
Definition: at32f403_usart.h:92
USART_CTSCF_FLAG
#define USART_CTSCF_FLAG
Definition: at32f403_usart.h:59
USART_NERR_FLAG
#define USART_NERR_FLAG
Definition: at32f403_usart.h:52
USART_FERR_FLAG
#define USART_FERR_FLAG
Definition: at32f403_usart.h:51
USART_IDLEF_FLAG
#define USART_IDLEF_FLAG
Definition: at32f403_usart.h:54
USART_ROERR_FLAG
#define USART_ROERR_FLAG
Definition: at32f403_usart.h:53
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_TDC_FLAG
#define USART_TDC_FLAG
Definition: at32f403_usart.h:56
USART_PERR_FLAG
#define USART_PERR_FLAG
Definition: at32f403_usart.h:50
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART_BFF_FLAG
#define USART_BFF_FLAG
Definition: at32f403_usart.h:58
usart_clock_enable
void usart_clock_enable(usart_type *usart_x, confirm_state new_state)
usart enable the ck pin.
Definition: at32f403_usart.c:236
usart_smartcard_nack_set
void usart_smartcard_nack_set(usart_type *usart_x, confirm_state new_state)
enable or disable nack transmission in smartcard mode.
Definition: at32f403_usart.c:459
usart_clock_config
void usart_clock_config(usart_type *usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
usart clock config.
Definition: at32f403_usart.c:220
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_parity_selection_config
void usart_parity_selection_config(usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config.
Definition: at32f403_usart.c:141
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_wakeup_id_set
void usart_wakeup_id_set(usart_type *usart_x, uint8_t usart_id)
set the wakeup id of the usart.
Definition: at32f403_usart.c:304
usart_reset
void usart_reset(usart_type *usart_x)
deinitialize the usart peripheral registers to their default reset values.
Definition: at32f403_usart.c:50
usart_lin_mode_enable
void usart_lin_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart lin mode.
Definition: at32f403_usart.c:364
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_dma_receiver_enable
void usart_dma_receiver_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface.
Definition: at32f403_usart.c:291
usart_irda_low_power_enable
void usart_irda_low_power_enable(usart_type *usart_x, confirm_state new_state)
configure the usart's irda low power.
Definition: at32f403_usart.c:501
usart_break_send
void usart_break_send(usart_type *usart_x)
transmit break characters.
Definition: at32f403_usart.c:401
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_irda_smartcard_division_set
void usart_irda_smartcard_division_set(usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division.
Definition: at32f403_usart.c:429
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_smartcard_guard_time_set
void usart_smartcard_guard_time_set(usart_type *usart_x, uint8_t guard_time_val)
config the specified usart smartcard guard time.
Definition: at32f403_usart.c:415
usart_flag_clear
void usart_flag_clear(usart_type *usart_x, uint32_t flag)
clear the usart's pending flags.
Definition: at32f403_usart.c:673
usart_wakeup_mode_set
void usart_wakeup_mode_set(usart_type *usart_x, usart_wakeup_mode_type wakeup_mode)
select the usart wakeup method in multi-processor communication.
Definition: at32f403_usart.c:320
usart_irda_mode_enable
void usart_irda_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's irda interface.
Definition: at32f403_usart.c:487
usart_break_bit_num_set
void usart_break_bit_num_set(usart_type *usart_x, usart_break_bit_num_type break_bit)
set the usart break frame bit num.
Definition: at32f403_usart.c:350
usart_hardware_flow_control_set
void usart_hardware_flow_control_set(usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control.
Definition: at32f403_usart.c:519
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
usart_single_line_halfduplex_select
void usart_single_line_halfduplex_select(usart_type *usart_x, confirm_state new_state)
enable or disable the usart single line bidirectional half-duplex communication.
Definition: at32f403_usart.c:473
usart_dma_transmitter_enable
void usart_dma_transmitter_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface.
Definition: at32f403_usart.c:277
usart_interrupt_flag_get
flag_status usart_interrupt_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart interrupt flag is set or not.
Definition: at32f403_usart.c:593
usart_smartcard_mode_enable
void usart_smartcard_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart smart card mode.
Definition: at32f403_usart.c:444
usart_receiver_mute_enable
void usart_receiver_mute_enable(usart_type *usart_x, confirm_state new_state)
config the usart in mute mode in multi-processor communication.
Definition: at32f403_usart.c:334
USART3
#define USART3
Definition: at32f403_usart.h:319
USART1
#define USART1
Definition: at32f403_usart.h:317
USART2
#define USART2
Definition: at32f403_usart.h:318
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::apb1_freq
uint32_t apb1_freq
Definition: at32f403_crm.h:454
crm_clocks_freq_type::apb2_freq
uint32_t apb2_freq
Definition: at32f403_crm.h:453
usart_type
type define usart register all
Definition: at32f403_usart.h:177
usart_type::scmen
__IO uint32_t scmen
Definition: at32f403_usart.h:288
usart_type::tdcien
__IO uint32_t tdcien
Definition: at32f403_usart.h:240
usart_type::scgt
__IO uint32_t scgt
Definition: at32f403_usart.h:307
usart_type::clken
__IO uint32_t clken
Definition: at32f403_usart.h:268
usart_type::linen
__IO uint32_t linen
Definition: at32f403_usart.h:270
usart_type::psel
__IO uint32_t psel
Definition: at32f403_usart.h:243
usart_type::rdbfien
__IO uint32_t rdbfien
Definition: at32f403_usart.h:239
usart_type::sbf
__IO uint32_t sbf
Definition: at32f403_usart.h:234
usart_type::slben
__IO uint32_t slben
Definition: at32f403_usart.h:286
usart_type::tdbeien
__IO uint32_t tdbeien
Definition: at32f403_usart.h:241
usart_type::isdiv
__IO uint32_t isdiv
Definition: at32f403_usart.h:306
usart_type::ctrl2_bit
struct usart_type::@697::@707 ctrl2_bit
usart_type::id
__IO uint32_t id
Definition: at32f403_usart.h:260
usart_type::wum
__IO uint32_t wum
Definition: at32f403_usart.h:245
usart_type::pen
__IO uint32_t pen
Definition: at32f403_usart.h:244
usart_type::scnacken
__IO uint32_t scnacken
Definition: at32f403_usart.h:287
usart_type::ctscfien
__IO uint32_t ctscfien
Definition: at32f403_usart.h:293
usart_type::ctrl1_bit
struct usart_type::@695::@706 ctrl1_bit
usart_type::ctsen
__IO uint32_t ctsen
Definition: at32f403_usart.h:292
usart_type::uen
__IO uint32_t uen
Definition: at32f403_usart.h:247
usart_type::dbn
__IO uint32_t dbn
Definition: at32f403_usart.h:246
usart_type::rm
__IO uint32_t rm
Definition: at32f403_usart.h:235
usart_type::clkpha
__IO uint32_t clkpha
Definition: at32f403_usart.h:266
usart_type::clkpol
__IO uint32_t clkpol
Definition: at32f403_usart.h:267
usart_type::rtsen
__IO uint32_t rtsen
Definition: at32f403_usart.h:291
usart_type::ctrl3_bit
struct usart_type::@699::@708 ctrl3_bit
usart_type::dmaren
__IO uint32_t dmaren
Definition: at32f403_usart.h:289
usart_type::lbcp
__IO uint32_t lbcp
Definition: at32f403_usart.h:265
usart_type::dmaten
__IO uint32_t dmaten
Definition: at32f403_usart.h:290
usart_type::sts
__IO uint32_t sts
Definition: at32f403_usart.h:183
usart_type::ren
__IO uint32_t ren
Definition: at32f403_usart.h:236
usart_type::errien
__IO uint32_t errien
Definition: at32f403_usart.h:283
usart_type::irdaen
__IO uint32_t irdaen
Definition: at32f403_usart.h:284
usart_type::ten
__IO uint32_t ten
Definition: at32f403_usart.h:237
usart_type::div
__IO uint32_t div
Definition: at32f403_usart.h:221
usart_type::baudr_bit
struct usart_type::@693::@705 baudr_bit
usart_type::stopbn
__IO uint32_t stopbn
Definition: at32f403_usart.h:269
usart_type::irdalp
__IO uint32_t irdalp
Definition: at32f403_usart.h:285
usart_type::dt
__IO uint32_t dt
Definition: at32f403_usart.h:205
usart_type::perrien
__IO uint32_t perrien
Definition: at32f403_usart.h:242
usart_type::gdiv_bit
struct usart_type::@701::@709 gdiv_bit
usart_type::bfien
__IO uint32_t bfien
Definition: at32f403_usart.h:263
usart_type::bfbn
__IO uint32_t bfbn
Definition: at32f403_usart.h:262
usart_type::idleien
__IO uint32_t idleien
Definition: at32f403_usart.h:238
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_usart.h Source File

  • libraries
  • drivers
  • inc
at32f403_usart.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_USART_H
27#define __AT32F403_USART_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define USART_PERR_FLAG ((uint32_t)0x00000001)
51#define USART_FERR_FLAG ((uint32_t)0x00000002)
52#define USART_NERR_FLAG ((uint32_t)0x00000004)
53#define USART_ROERR_FLAG ((uint32_t)0x00000008)
54#define USART_IDLEF_FLAG ((uint32_t)0x00000010)
55#define USART_RDBF_FLAG ((uint32_t)0x00000020)
56#define USART_TDC_FLAG ((uint32_t)0x00000040)
57#define USART_TDBE_FLAG ((uint32_t)0x00000080)
58#define USART_BFF_FLAG ((uint32_t)0x00000100)
59#define USART_CTSCF_FLAG ((uint32_t)0x00000200)
70#define USART_IDLE_INT MAKE_VALUE(0x0C,0x04)
71#define USART_RDBF_INT MAKE_VALUE(0x0C,0x05)
72#define USART_TDC_INT MAKE_VALUE(0x0C,0x06)
73#define USART_TDBE_INT MAKE_VALUE(0x0C,0x07)
74#define USART_PERR_INT MAKE_VALUE(0x0C,0x08)
75#define USART_BF_INT MAKE_VALUE(0x10,0x06)
76#define USART_ERR_INT MAKE_VALUE(0x14,0x00)
77#define USART_CTSCF_INT MAKE_VALUE(0x14,0x0A)
90typedef enum
91{
92 USART_PARITY_NONE = 0x00,
93 USART_PARITY_EVEN = 0x01,
94 USART_PARITY_ODD = 0x02
95} usart_parity_selection_type;
96
100typedef enum
101{
102 USART_WAKEUP_BY_IDLE_FRAME = 0x00,
103 USART_WAKEUP_BY_MATCHING_ID = 0x01
104} usart_wakeup_mode_type;
105
109typedef enum
110{
111 USART_DATA_8BITS = 0x00,
112 USART_DATA_9BITS = 0x01
113} usart_data_bit_num_type;
114
118typedef enum
119{
120 USART_BREAK_10BITS = 0x00,
121 USART_BREAK_11BITS = 0x01
122} usart_break_bit_num_type;
123
127typedef enum
128{
129 USART_CLOCK_PHASE_1EDGE = 0x00,
130 USART_CLOCK_PHASE_2EDGE = 0x01
131} usart_clock_phase_type;
132
136typedef enum
137{
138 USART_CLOCK_POLARITY_LOW = 0x00,
139 USART_CLOCK_POLARITY_HIGH = 0x01
140} usart_clock_polarity_type;
141
145typedef enum
146{
147 USART_CLOCK_LAST_BIT_NONE = 0x00,
148 USART_CLOCK_LAST_BIT_OUTPUT = 0x01
149} usart_lbcp_type;
150
154typedef enum
155{
156 USART_STOP_1_BIT = 0x00,
157 USART_STOP_0_5_BIT = 0x01,
158 USART_STOP_2_BIT = 0x02,
159 USART_STOP_1_5_BIT = 0x03
160} usart_stop_bit_num_type;
161
165typedef enum
166{
167 USART_HARDWARE_FLOW_NONE = 0x00,
168 USART_HARDWARE_FLOW_RTS = 0x01,
169 USART_HARDWARE_FLOW_CTS = 0x02,
170 USART_HARDWARE_FLOW_RTS_CTS = 0x03
171} usart_hardware_flow_control_type;
172
176typedef struct
177{
181 union
182 {
183 __IO uint32_t sts;
184 struct
185 {
186 __IO uint32_t perr : 1; /* [0] */
187 __IO uint32_t ferr : 1; /* [1] */
188 __IO uint32_t nerr : 1; /* [2] */
189 __IO uint32_t roerr : 1; /* [3] */
190 __IO uint32_t idlef : 1; /* [4] */
191 __IO uint32_t rdbf : 1; /* [5] */
192 __IO uint32_t tdc : 1; /* [6] */
193 __IO uint32_t tdbe : 1; /* [7] */
194 __IO uint32_t bff : 1; /* [8] */
195 __IO uint32_t ctscf : 1; /* [9] */
196 __IO uint32_t reserved1 : 22;/* [31:10] */
197 } sts_bit;
198 };
199
203 union
204 {
205 __IO uint32_t dt;
206 struct
207 {
208 __IO uint32_t dt : 9; /* [8:0] */
209 __IO uint32_t reserved1 : 23;/* [31:9] */
210 } dt_bit;
211 };
212
216 union
217 {
218 __IO uint32_t baudr;
219 struct
220 {
221 __IO uint32_t div : 16;/* [15:0] */
222 __IO uint32_t reserved1 : 16;/* [31:16] */
223 } baudr_bit;
224 };
225
229 union
230 {
231 __IO uint32_t ctrl1;
232 struct
233 {
234 __IO uint32_t sbf : 1; /* [0] */
235 __IO uint32_t rm : 1; /* [1] */
236 __IO uint32_t ren : 1; /* [2] */
237 __IO uint32_t ten : 1; /* [3] */
238 __IO uint32_t idleien : 1; /* [4] */
239 __IO uint32_t rdbfien : 1; /* [5] */
240 __IO uint32_t tdcien : 1; /* [6] */
241 __IO uint32_t tdbeien : 1; /* [7] */
242 __IO uint32_t perrien : 1; /* [8] */
243 __IO uint32_t psel : 1; /* [9] */
244 __IO uint32_t pen : 1; /* [10] */
245 __IO uint32_t wum : 1; /* [11] */
246 __IO uint32_t dbn : 1; /* [12] */
247 __IO uint32_t uen : 1; /* [13] */
248 __IO uint32_t reserved1 : 18;/* [31:14] */
249 } ctrl1_bit;
250 };
251
255 union
256 {
257 __IO uint32_t ctrl2;
258 struct
259 {
260 __IO uint32_t id : 4; /* [3:0] */
261 __IO uint32_t reserved1 : 1; /* [4] */
262 __IO uint32_t bfbn : 1; /* [5] */
263 __IO uint32_t bfien : 1; /* [6] */
264 __IO uint32_t reserved2 : 1; /* [7] */
265 __IO uint32_t lbcp : 1; /* [8] */
266 __IO uint32_t clkpha : 1; /* [9] */
267 __IO uint32_t clkpol : 1; /* [10] */
268 __IO uint32_t clken : 1; /* [11] */
269 __IO uint32_t stopbn : 2; /* [13:12] */
270 __IO uint32_t linen : 1; /* [14] */
271 __IO uint32_t reserved3 : 17;/* [31:15] */
272 } ctrl2_bit;
273 };
274
278 union
279 {
280 __IO uint32_t ctrl3;
281 struct
282 {
283 __IO uint32_t errien : 1; /* [0] */
284 __IO uint32_t irdaen : 1; /* [1] */
285 __IO uint32_t irdalp : 1; /* [2] */
286 __IO uint32_t slben : 1; /* [3] */
287 __IO uint32_t scnacken : 1; /* [4] */
288 __IO uint32_t scmen : 1; /* [5] */
289 __IO uint32_t dmaren : 1; /* [6] */
290 __IO uint32_t dmaten : 1; /* [7] */
291 __IO uint32_t rtsen : 1; /* [8] */
292 __IO uint32_t ctsen : 1; /* [9] */
293 __IO uint32_t ctscfien : 1; /* [10] */
294 __IO uint32_t reserved1 : 21;/* [31:11] */
295 } ctrl3_bit;
296 };
297
301 union
302 {
303 __IO uint32_t gdiv;
304 struct
305 {
306 __IO uint32_t isdiv : 8; /* [7:0] */
307 __IO uint32_t scgt : 8; /* [15:8] */
308 __IO uint32_t reserved1 : 16;/* [31:16] */
309 } gdiv_bit;
310 };
311} usart_type;
312
317#define USART1 ((usart_type *) USART1_BASE)
318#define USART2 ((usart_type *) USART2_BASE)
319#define USART3 ((usart_type *) USART3_BASE)
320#if defined (AT32F403Zx) || defined (AT32F403Vx) || defined (AT32F403Rx)
321#define UART4 ((usart_type *) UART4_BASE)
322#define UART5 ((usart_type *) UART5_BASE)
323#endif
324
329void usart_reset(usart_type* usart_x);
330void usart_init(usart_type* usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit);
331void usart_parity_selection_config(usart_type* usart_x, usart_parity_selection_type parity);
332void usart_enable(usart_type* usart_x, confirm_state new_state);
333void usart_transmitter_enable(usart_type* usart_x, confirm_state new_state);
334void usart_receiver_enable(usart_type* usart_x, confirm_state new_state);
335void usart_clock_config(usart_type* usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb);
336void usart_clock_enable(usart_type* usart_x, confirm_state new_state);
337void usart_interrupt_enable(usart_type* usart_x, uint32_t usart_int, confirm_state new_state);
338void usart_dma_transmitter_enable(usart_type* usart_x, confirm_state new_state);
339void usart_dma_receiver_enable(usart_type* usart_x, confirm_state new_state);
340void usart_wakeup_id_set(usart_type* usart_x, uint8_t usart_id);
341void usart_wakeup_mode_set(usart_type* usart_x, usart_wakeup_mode_type wakeup_mode);
342void usart_receiver_mute_enable(usart_type* usart_x, confirm_state new_state);
343void usart_break_bit_num_set(usart_type* usart_x, usart_break_bit_num_type break_bit);
344void usart_lin_mode_enable(usart_type* usart_x, confirm_state new_state);
345void usart_data_transmit(usart_type* usart_x, uint16_t data);
346uint16_t usart_data_receive(usart_type* usart_x);
347void usart_break_send(usart_type* usart_x);
348void usart_smartcard_guard_time_set(usart_type* usart_x, uint8_t guard_time_val);
349void usart_irda_smartcard_division_set(usart_type* usart_x, uint8_t div_val);
350void usart_smartcard_mode_enable(usart_type* usart_x, confirm_state new_state);
351void usart_smartcard_nack_set(usart_type* usart_x, confirm_state new_state);
352void usart_single_line_halfduplex_select(usart_type* usart_x, confirm_state new_state);
353void usart_irda_mode_enable(usart_type* usart_x, confirm_state new_state);
354void usart_irda_low_power_enable(usart_type* usart_x, confirm_state new_state);
355void usart_hardware_flow_control_set(usart_type* usart_x,usart_hardware_flow_control_type flow_state);
356 flag_status usart_flag_get(usart_type* usart_x, uint32_t flag);
357 flag_status usart_interrupt_flag_get(usart_type* usart_x, uint32_t flag);
358void usart_flag_clear(usart_type* usart_x, uint32_t flag);
359
372#ifdef __cplusplus
373}
374#endif
375
376#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
usart_clock_enable
void usart_clock_enable(usart_type *usart_x, confirm_state new_state)
usart enable the ck pin.
Definition: at32f403_usart.c:236
usart_smartcard_nack_set
void usart_smartcard_nack_set(usart_type *usart_x, confirm_state new_state)
enable or disable nack transmission in smartcard mode.
Definition: at32f403_usart.c:459
usart_clock_config
void usart_clock_config(usart_type *usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
usart clock config.
Definition: at32f403_usart.c:220
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_parity_selection_config
void usart_parity_selection_config(usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config.
Definition: at32f403_usart.c:141
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_wakeup_id_set
void usart_wakeup_id_set(usart_type *usart_x, uint8_t usart_id)
set the wakeup id of the usart.
Definition: at32f403_usart.c:304
usart_reset
void usart_reset(usart_type *usart_x)
deinitialize the usart peripheral registers to their default reset values.
Definition: at32f403_usart.c:50
usart_lin_mode_enable
void usart_lin_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart lin mode.
Definition: at32f403_usart.c:364
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_dma_receiver_enable
void usart_dma_receiver_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface.
Definition: at32f403_usart.c:291
usart_irda_low_power_enable
void usart_irda_low_power_enable(usart_type *usart_x, confirm_state new_state)
configure the usart's irda low power.
Definition: at32f403_usart.c:501
usart_break_send
void usart_break_send(usart_type *usart_x)
transmit break characters.
Definition: at32f403_usart.c:401
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_irda_smartcard_division_set
void usart_irda_smartcard_division_set(usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division.
Definition: at32f403_usart.c:429
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_smartcard_guard_time_set
void usart_smartcard_guard_time_set(usart_type *usart_x, uint8_t guard_time_val)
config the specified usart smartcard guard time.
Definition: at32f403_usart.c:415
usart_flag_clear
void usart_flag_clear(usart_type *usart_x, uint32_t flag)
clear the usart's pending flags.
Definition: at32f403_usart.c:673
usart_wakeup_mode_set
void usart_wakeup_mode_set(usart_type *usart_x, usart_wakeup_mode_type wakeup_mode)
select the usart wakeup method in multi-processor communication.
Definition: at32f403_usart.c:320
usart_irda_mode_enable
void usart_irda_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's irda interface.
Definition: at32f403_usart.c:487
usart_break_bit_num_set
void usart_break_bit_num_set(usart_type *usart_x, usart_break_bit_num_type break_bit)
set the usart break frame bit num.
Definition: at32f403_usart.c:350
usart_hardware_flow_control_set
void usart_hardware_flow_control_set(usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control.
Definition: at32f403_usart.c:519
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
usart_single_line_halfduplex_select
void usart_single_line_halfduplex_select(usart_type *usart_x, confirm_state new_state)
enable or disable the usart single line bidirectional half-duplex communication.
Definition: at32f403_usart.c:473
usart_dma_transmitter_enable
void usart_dma_transmitter_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface.
Definition: at32f403_usart.c:277
usart_interrupt_flag_get
flag_status usart_interrupt_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart interrupt flag is set or not.
Definition: at32f403_usart.c:593
usart_smartcard_mode_enable
void usart_smartcard_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart smart card mode.
Definition: at32f403_usart.c:444
usart_receiver_mute_enable
void usart_receiver_mute_enable(usart_type *usart_x, confirm_state new_state)
config the usart in mute mode in multi-processor communication.
Definition: at32f403_usart.c:334
usart_break_bit_num_type
usart_break_bit_num_type
usart break frame bit num type
Definition: at32f403_usart.h:119
usart_clock_polarity_type
usart_clock_polarity_type
usart polarity of the clock type
Definition: at32f403_usart.h:137
usart_hardware_flow_control_type
usart_hardware_flow_control_type
usart hardware flow control type
Definition: at32f403_usart.h:166
usart_stop_bit_num_type
usart_stop_bit_num_type
usart stop bit num type
Definition: at32f403_usart.h:155
usart_data_bit_num_type
usart_data_bit_num_type
usart data bit num type
Definition: at32f403_usart.h:110
usart_parity_selection_type
usart_parity_selection_type
usart parity selection type
Definition: at32f403_usart.h:91
usart_lbcp_type
usart_lbcp_type
usart last bit clock pulse type
Definition: at32f403_usart.h:146
usart_wakeup_mode_type
usart_wakeup_mode_type
usart wakeup mode type
Definition: at32f403_usart.h:101
usart_clock_phase_type
usart_clock_phase_type
usart phase of the clock type
Definition: at32f403_usart.h:128
USART_BREAK_11BITS
@ USART_BREAK_11BITS
Definition: at32f403_usart.h:121
USART_BREAK_10BITS
@ USART_BREAK_10BITS
Definition: at32f403_usart.h:120
USART_CLOCK_POLARITY_HIGH
@ USART_CLOCK_POLARITY_HIGH
Definition: at32f403_usart.h:139
USART_CLOCK_POLARITY_LOW
@ USART_CLOCK_POLARITY_LOW
Definition: at32f403_usart.h:138
USART_HARDWARE_FLOW_CTS
@ USART_HARDWARE_FLOW_CTS
Definition: at32f403_usart.h:169
USART_HARDWARE_FLOW_RTS
@ USART_HARDWARE_FLOW_RTS
Definition: at32f403_usart.h:168
USART_HARDWARE_FLOW_NONE
@ USART_HARDWARE_FLOW_NONE
Definition: at32f403_usart.h:167
USART_HARDWARE_FLOW_RTS_CTS
@ USART_HARDWARE_FLOW_RTS_CTS
Definition: at32f403_usart.h:170
USART_STOP_1_5_BIT
@ USART_STOP_1_5_BIT
Definition: at32f403_usart.h:159
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_STOP_0_5_BIT
@ USART_STOP_0_5_BIT
Definition: at32f403_usart.h:157
USART_STOP_2_BIT
@ USART_STOP_2_BIT
Definition: at32f403_usart.h:158
USART_DATA_9BITS
@ USART_DATA_9BITS
Definition: at32f403_usart.h:112
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_PARITY_ODD
@ USART_PARITY_ODD
Definition: at32f403_usart.h:94
USART_PARITY_EVEN
@ USART_PARITY_EVEN
Definition: at32f403_usart.h:93
USART_PARITY_NONE
@ USART_PARITY_NONE
Definition: at32f403_usart.h:92
USART_CLOCK_LAST_BIT_OUTPUT
@ USART_CLOCK_LAST_BIT_OUTPUT
Definition: at32f403_usart.h:148
USART_CLOCK_LAST_BIT_NONE
@ USART_CLOCK_LAST_BIT_NONE
Definition: at32f403_usart.h:147
USART_WAKEUP_BY_MATCHING_ID
@ USART_WAKEUP_BY_MATCHING_ID
Definition: at32f403_usart.h:103
USART_WAKEUP_BY_IDLE_FRAME
@ USART_WAKEUP_BY_IDLE_FRAME
Definition: at32f403_usart.h:102
USART_CLOCK_PHASE_1EDGE
@ USART_CLOCK_PHASE_1EDGE
Definition: at32f403_usart.h:129
USART_CLOCK_PHASE_2EDGE
@ USART_CLOCK_PHASE_2EDGE
Definition: at32f403_usart.h:130
usart_type
type define usart register all
Definition: at32f403_usart.h:177
usart_type::scmen
__IO uint32_t scmen
Definition: at32f403_usart.h:288
usart_type::ctrl2
__IO uint32_t ctrl2
Definition: at32f403_usart.h:257
usart_type::tdcien
__IO uint32_t tdcien
Definition: at32f403_usart.h:240
usart_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_usart.h:196
usart_type::ctrl3
__IO uint32_t ctrl3
Definition: at32f403_usart.h:280
usart_type::scgt
__IO uint32_t scgt
Definition: at32f403_usart.h:307
usart_type::clken
__IO uint32_t clken
Definition: at32f403_usart.h:268
usart_type::linen
__IO uint32_t linen
Definition: at32f403_usart.h:270
usart_type::rdbf
__IO uint32_t rdbf
Definition: at32f403_usart.h:191
usart_type::psel
__IO uint32_t psel
Definition: at32f403_usart.h:243
usart_type::rdbfien
__IO uint32_t rdbfien
Definition: at32f403_usart.h:239
usart_type::sbf
__IO uint32_t sbf
Definition: at32f403_usart.h:234
usart_type::slben
__IO uint32_t slben
Definition: at32f403_usart.h:286
usart_type::tdbeien
__IO uint32_t tdbeien
Definition: at32f403_usart.h:241
usart_type::isdiv
__IO uint32_t isdiv
Definition: at32f403_usart.h:306
usart_type::baudr
__IO uint32_t baudr
Definition: at32f403_usart.h:218
usart_type::ferr
__IO uint32_t ferr
Definition: at32f403_usart.h:187
usart_type::id
__IO uint32_t id
Definition: at32f403_usart.h:260
usart_type::wum
__IO uint32_t wum
Definition: at32f403_usart.h:245
usart_type::pen
__IO uint32_t pen
Definition: at32f403_usart.h:244
usart_type::scnacken
__IO uint32_t scnacken
Definition: at32f403_usart.h:287
usart_type::roerr
__IO uint32_t roerr
Definition: at32f403_usart.h:189
usart_type::ctscfien
__IO uint32_t ctscfien
Definition: at32f403_usart.h:293
usart_type::gdiv
__IO uint32_t gdiv
Definition: at32f403_usart.h:303
usart_type::ctrl1
__IO uint32_t ctrl1
Definition: at32f403_usart.h:231
usart_type::ctsen
__IO uint32_t ctsen
Definition: at32f403_usart.h:292
usart_type::uen
__IO uint32_t uen
Definition: at32f403_usart.h:247
usart_type::idlef
__IO uint32_t idlef
Definition: at32f403_usart.h:190
usart_type::dbn
__IO uint32_t dbn
Definition: at32f403_usart.h:246
usart_type::rm
__IO uint32_t rm
Definition: at32f403_usart.h:235
usart_type::tdbe
__IO uint32_t tdbe
Definition: at32f403_usart.h:193
usart_type::clkpha
__IO uint32_t clkpha
Definition: at32f403_usart.h:266
usart_type::clkpol
__IO uint32_t clkpol
Definition: at32f403_usart.h:267
usart_type::perr
__IO uint32_t perr
Definition: at32f403_usart.h:186
usart_type::rtsen
__IO uint32_t rtsen
Definition: at32f403_usart.h:291
usart_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_usart.h:271
usart_type::dmaren
__IO uint32_t dmaren
Definition: at32f403_usart.h:289
usart_type::tdc
__IO uint32_t tdc
Definition: at32f403_usart.h:192
usart_type::lbcp
__IO uint32_t lbcp
Definition: at32f403_usart.h:265
usart_type::dmaten
__IO uint32_t dmaten
Definition: at32f403_usart.h:290
usart_type::sts
__IO uint32_t sts
Definition: at32f403_usart.h:183
usart_type::ren
__IO uint32_t ren
Definition: at32f403_usart.h:236
usart_type::errien
__IO uint32_t errien
Definition: at32f403_usart.h:283
usart_type::bff
__IO uint32_t bff
Definition: at32f403_usart.h:194
usart_type::irdaen
__IO uint32_t irdaen
Definition: at32f403_usart.h:284
usart_type::ten
__IO uint32_t ten
Definition: at32f403_usart.h:237
usart_type::div
__IO uint32_t div
Definition: at32f403_usart.h:221
usart_type::ctscf
__IO uint32_t ctscf
Definition: at32f403_usart.h:195
usart_type::nerr
__IO uint32_t nerr
Definition: at32f403_usart.h:188
usart_type::stopbn
__IO uint32_t stopbn
Definition: at32f403_usart.h:269
usart_type::irdalp
__IO uint32_t irdalp
Definition: at32f403_usart.h:285
usart_type::dt
__IO uint32_t dt
Definition: at32f403_usart.h:205
usart_type::perrien
__IO uint32_t perrien
Definition: at32f403_usart.h:242
usart_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_usart.h:264
usart_type::bfien
__IO uint32_t bfien
Definition: at32f403_usart.h:263
usart_type::bfbn
__IO uint32_t bfbn
Definition: at32f403_usart.h:262
usart_type::idleien
__IO uint32_t idleien
Definition: at32f403_usart.h:238


AT32F403 Firmwary Library: at32f403_usb.c Source File

  • libraries
  • drivers
  • src
at32f403_usb.c
Go to the documentation of this file.
1
34#include "at32f403_conf.h"
35
36
37#ifdef USB_MODULE_ENABLED
38
46#define USB_ENDP_DESC_TABLE_OFFSET 0x40
47uint32_t g_usb_packet_address = USB_PACKET_BUFFER_ADDRESS;
48static uint16_t g_usb_offset_addr = USB_ENDP_DESC_TABLE_OFFSET;
49
56void usb_dev_init(usbd_type *usbx)
57{
58 /* clear usb core reset */
59 usbx->ctrl_bit.csrst = 0;
60
61 /* clear usb interrupt status */
62 usbx->intsts = 0;
63
64 /* set usb packet buffer descirption table address */
65 usbx->buftbl = USB_BUFFER_TABLE_ADDRESS;
66
67 /* enable usb core and set device address to 0 */
68 usbx->devaddr = 0x80;
69
70 usb_interrupt_enable(usbx, USB_SOF_INT | USB_RST_INT | USB_SP_INT | USB_WK_INT | USB_TC_INT, TRUE);
71}
72
79void usb_connect(usbd_type *usbx)
80{
81 /* enable usb phy */
82 usbx->ctrl_bit.disusb = 0;
83}
84
91void usb_disconnect(usbd_type *usbx)
92{
93 /* disable usb phy */
94 usbx->ctrl_bit.disusb = TRUE;
95}
96
97
111void usb_usbbufs_enable(usbd_type *usbx, confirm_state state)
112{
113 if(state == TRUE)
114 {
115 /* enable usbbufs */
116 g_usb_packet_address = USB_PACKET_BUFFER_ADDRESS_EX;
117 CRM->misc1_bit.usbbufs = TRUE;
118 }
119 else
120 {
121 /* disable usbbufs */
122 g_usb_packet_address = USB_PACKET_BUFFER_ADDRESS;
123 CRM->misc1_bit.usbbufs = FALSE;
124 }
125 UNUSED(usbx);
126}
127
135void usb_ept_open(usbd_type *usbx, usb_ept_info *ept_info)
136{
137 uint16_t type = 0;
138
139 /* set endpoint address */
140 USB_SET_EPT_ADDRESS(ept_info->eptn, ept_info->ept_address);
141
142 /* select endpoint transfer type */
143 if(ept_info->trans_type == EPT_CONTROL_TYPE)
144 {
145 type = USB_EPT_CONTROL;
146 }
147 else if(ept_info->trans_type == EPT_BULK_TYPE)
148 {
149 type = USB_EPT_BULK;
150 }
151 else if(ept_info->trans_type == EPT_INT_TYPE)
152 {
153 type = USB_EPT_INT;
154 }
155 else if(ept_info->trans_type == EPT_ISO_TYPE)
156 {
157 type = USB_EPT_ISO;
158 ept_info->is_double_buffer = TRUE;
159 }
160
161 /* configure endpoint transfer type (control, bulk, interrupt, isochronous) */
162 USB_SET_TRANS_TYPE(ept_info->eptn, type);
163
164 /* endpoint is in transfer */
165 if(ept_info->inout == DATA_TRANS_IN)
166 {
167 if(ept_info->is_double_buffer == 0)
168 {
169 /* set in endpoint tx offset address */
170 USB_SET_TX_ADDRESS(ept_info->eptn, ept_info->tx_addr);
171
172 /* clear in endpoint data toggle */
173 USB_CLEAR_TXDTS(ept_info->eptn);
174
175 /* set endpoint transmission status: nak */
176 USB_SET_TXSTS(ept_info->eptn, USB_TX_NAK);
177 }
178 else
179 {
180 /* set double buffer endpoint*/
181 USB_SET_EPT_DOUBLE_BUFFER(ept_info->eptn);
182
183 /* set in endpoint offset address0 and address1 */
184 USB_SET_DOUBLE_BUFF0_ADDRESS(ept_info->eptn, ept_info->tx_addr);
185 USB_SET_DOUBLE_BUFF1_ADDRESS(ept_info->eptn, ept_info->rx_addr);
186
187 /* clear in and out data toggle */
188 USB_CLEAR_TXDTS(ept_info->eptn);
189 USB_CLEAR_RXDTS(ept_info->eptn);
190
191 /* toggle rx data toggle flag */
192 USB_TOGGLE_RXDTS(ept_info->eptn);
193
194 /* set endpoint reception status: disable */
195 USB_SET_RXSTS(ept_info->eptn, USB_RX_DISABLE);
196
197 /* set endpoint transmision status: nak */
198 USB_SET_TXSTS(ept_info->eptn, USB_TX_NAK);
199 }
200 }
201 else
202 {
203 if(ept_info->is_double_buffer == 0)
204 {
205 /* set out endpoint rx offset address */
206 USB_SET_RX_ADDRESS(ept_info->eptn, ept_info->rx_addr);
207
208 /* clear out endpoint data toggle */
209 USB_CLEAR_RXDTS(ept_info->eptn);
210
211 /* set out endpoint max reception buffer size */
212 USB_SET_RXLEN(ept_info->eptn, ept_info->maxpacket);
213
214 /* set endpoint reception status: valid */
215 USB_SET_RXSTS(ept_info->eptn, USB_RX_VALID);
216 }
217 else
218 {
219 /* set double buffer endpoint */
220 USB_SET_EPT_DOUBLE_BUFFER(ept_info->eptn);
221
222 /* set out endpoint offset address0 and address1 */
223 USB_SET_DOUBLE_BUFF0_ADDRESS(ept_info->eptn, ept_info->tx_addr);
224 USB_SET_DOUBLE_BUFF1_ADDRESS(ept_info->eptn, ept_info->rx_addr);
225
226 /* set out endpoint max reception buffer size */
227 USB_SET_EPT_DOUBLE_BUF0_LEN(ept_info->eptn, ept_info->maxpacket, DATA_TRANS_OUT);
228 USB_SET_EPT_DOUBLE_BUF1_LEN(ept_info->eptn, ept_info->maxpacket, DATA_TRANS_OUT);
229
230 /* clear in and out data toggle */
231 USB_CLEAR_TXDTS(ept_info->eptn);
232 USB_CLEAR_RXDTS(ept_info->eptn);
233
234 /* toggle tx data toggle flag */
235 USB_TOGGLE_TXDTS(ept_info->eptn);
236
237 /* set endpoint reception status: valid */
238 USB_SET_RXSTS(ept_info->eptn, USB_RX_VALID);
239
240 /* set endpoint transmision status: disable */
241 USB_SET_TXSTS(ept_info->eptn, USB_TX_DISABLE);
242 }
243 }
244 UNUSED(usbx);
245}
246
247
255void usb_ept_close(usbd_type *usbx, usb_ept_info *ept_info)
256{
257 if(ept_info->is_double_buffer == 0)
258 {
259 if(ept_info->inout == DATA_TRANS_IN)
260 {
261 /*clear tx data toggle */
262 USB_CLEAR_TXDTS(ept_info->eptn);
263
264 /* set tx status: disable */
265 USB_SET_TXSTS(ept_info->eptn, USB_TX_DISABLE);
266 }
267 else
268 {
269 /*clear rx data toggle */
270 USB_CLEAR_RXDTS(ept_info->eptn);
271
272 /* set rx status: disable */
273 USB_SET_RXSTS(ept_info->eptn, USB_RX_DISABLE);
274
275 }
276 }
277 else
278 {
279 /* double buffer */
280
281 /*clear rx and tx data toggle */
282 USB_CLEAR_TXDTS(ept_info->eptn);
283 USB_CLEAR_RXDTS(ept_info->eptn);
284
285 if(ept_info->inout == DATA_TRANS_IN)
286 {
287 /* toggle tx */
288 USB_TOGGLE_TXDTS(ept_info->eptn);
289
290 /* set tx and rx status: disable */
291 USB_SET_TXSTS(ept_info->eptn, USB_TX_DISABLE);
292 USB_SET_RXSTS(ept_info->eptn, USB_RX_DISABLE);
293 }
294 else
295 {
296 /* toggle rx */
297 USB_TOGGLE_RXDTS(ept_info->eptn);
298
299 /* set tx and rx status: disable */
300 USB_SET_TXSTS(ept_info->eptn, USB_TX_DISABLE);
301 USB_SET_RXSTS(ept_info->eptn, USB_RX_DISABLE);
302 }
303 }
304 UNUSED(usbx);
305}
306
314void usb_write_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
315{
316 /* endpoint tx buffer address */
317 __IO uint16_t *d_addr = (__IO uint16_t *)(offset_addr * 2 + g_usb_packet_address);
318
319 uint32_t nhbytes = (nbytes + 1) >> 1;
320 uint32_t n_index;
321 uint16_t *pbuf = (uint16_t *)pusr_buf;
322 for(n_index = 0; n_index < nhbytes; n_index ++)
323 {
324#if defined (__ICCARM__) && (__VER__ < 7000000)
325 *d_addr++ = *(__packed uint16_t *)pbuf;
326#else
327 *d_addr++ = __UNALIGNED_UINT16_READ(pbuf);
328#endif
329 d_addr ++;
330 pbuf ++;
331 }
332}
333
341void usb_read_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
342{
343 __IO uint16_t *s_addr = (__IO uint16_t *)(offset_addr * 2 + g_usb_packet_address);
344 uint32_t nhbytes = (nbytes + 1) >> 1;
345 uint32_t n_index;
346 uint16_t *pbuf = (uint16_t *)pusr_buf;
347 for(n_index = 0; n_index < nhbytes; n_index ++)
348 {
349#if defined (__ICCARM__) && (__VER__ < 7000000)
350 *(__packed uint16_t *)pbuf = *(__IO uint16_t *)s_addr ++;
351#else
352 __UNALIGNED_UINT16_WRITE(pbuf, *(__IO uint16_t *)s_addr ++);
353#endif
354 s_addr ++;
355 pbuf ++;
356 }
357}
358
359
377void usb_interrupt_enable(usbd_type *usbx, uint16_t interrupt, confirm_state new_state)
378{
379 if(new_state == TRUE)
380 {
381 usbx->ctrl |= interrupt;
382 }
383 else
384 {
385 usbx->ctrl &= ~interrupt;
386 }
387}
388
396void usb_set_address(usbd_type *usbx, uint8_t address)
397{
398 usbx->devaddr_bit.addr = address;
399 usbx->devaddr_bit.cen = TRUE;
400}
401
409void usb_ept_stall(usbd_type *usbx, usb_ept_info *ept_info)
410{
411 if(ept_info->inout == DATA_TRANS_IN)
412 {
413 USB_SET_TXSTS(ept_info->eptn, USB_TX_STALL)
414 }
415 else
416 {
417 USB_SET_RXSTS(ept_info->eptn, USB_RX_STALL)
418 }
419 UNUSED(usbx);
420}
421
428void usb_enter_suspend(usbd_type *usbx)
429{
430 usbx->ctrl_bit.ssp = TRUE;
431 usbx->ctrl_bit.lpm = TRUE;
432}
433
440void usb_exit_suspend(usbd_type *usbx)
441{
442 usbx->ctrl_bit.ssp = FALSE;
443 usbx->ctrl_bit.lpm = FALSE;
444}
445
452void usb_remote_wkup_set(usbd_type *usbx)
453{
454 usbx->ctrl_bit.gresume = TRUE;
455}
456
463void usb_remote_wkup_clear(usbd_type *usbx)
464{
465 usbx->ctrl_bit.gresume = FALSE;
466}
467
473uint16_t usb_buffer_malloc(uint16_t maxpacket)
474{
475 uint16_t offset = g_usb_offset_addr;
476 g_usb_offset_addr += maxpacket;
477 return offset;
478}
479
485void usb_buffer_free(void)
486{
487 g_usb_offset_addr = USB_ENDP_DESC_TABLE_OFFSET;
488}
489
506 flag_status usb_flag_get(usbd_type *usbx, uint16_t flag)
507{
508 flag_status status = RESET;
509
510 if((usbx->intsts & flag) == RESET)
511 {
512 status = RESET;
513 }
514 else
515 {
516 status = SET;
517 }
518 return status;
519}
520
536 flag_status usb_interrupt_flag_get(usbd_type *usbx, uint16_t flag)
537{
538 flag_status status = RESET;
539
540 if(flag == USB_TC_FLAG)
541 {
542 if(usbx->intsts & USB_TC_FLAG)
543 status = SET;
544 }
545 else
546 {
547 if((usbx->intsts & flag) && (usbx->ctrl & flag))
548 {
549 status = SET;
550 }
551 }
552 return status;
553}
554
571void usb_flag_clear(usbd_type *usbx, uint16_t flag)
572{
573 usbx->intsts = ~flag;
574}
575
580#endif
581
UNUSED
#define UNUSED(x)
Definition: at32f403_def.h:63
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
CRM
#define CRM
Definition: at32f403_crm.h:785
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
USB_BUFFER_TABLE_ADDRESS
#define USB_BUFFER_TABLE_ADDRESS
Definition: at32f403_usb.h:153
USB_EPT_CONTROL
#define USB_EPT_CONTROL
Definition: at32f403_usb.h:139
USB_EPT_INT
#define USB_EPT_INT
Definition: at32f403_usb.h:141
USB_EPT_BULK
#define USB_EPT_BULK
Definition: at32f403_usb.h:140
USB_EPT_ISO
#define USB_EPT_ISO
Definition: at32f403_usb.h:142
USB_RX_STALL
#define USB_RX_STALL
Definition: at32f403_usb.h:123
USB_RX_DISABLE
#define USB_RX_DISABLE
Definition: at32f403_usb.h:122
USB_TX_NAK
#define USB_TX_NAK
Definition: at32f403_usb.h:116
USB_TX_STALL
#define USB_TX_STALL
Definition: at32f403_usb.h:115
USB_TX_DISABLE
#define USB_TX_DISABLE
Definition: at32f403_usb.h:114
USB_RX_VALID
#define USB_RX_VALID
Definition: at32f403_usb.h:125
DATA_TRANS_OUT
@ DATA_TRANS_OUT
Definition: at32f403_usb.h:221
DATA_TRANS_IN
@ DATA_TRANS_IN
Definition: at32f403_usb.h:222
EPT_ISO_TYPE
@ EPT_ISO_TYPE
Definition: at32f403_usb.h:202
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
EPT_CONTROL_TYPE
@ EPT_CONTROL_TYPE
Definition: at32f403_usb.h:201
EPT_BULK_TYPE
@ EPT_BULK_TYPE
Definition: at32f403_usb.h:203
USB_TC_FLAG
#define USB_TC_FLAG
Definition: at32f403_usb.h:79
USB_SP_INT
#define USB_SP_INT
Definition: at32f403_usb.h:55
USB_TC_INT
#define USB_TC_INT
Definition: at32f403_usb.h:59
USB_RST_INT
#define USB_RST_INT
Definition: at32f403_usb.h:54
USB_WK_INT
#define USB_WK_INT
Definition: at32f403_usb.h:56
USB_SOF_INT
#define USB_SOF_INT
Definition: at32f403_usb.h:53
USB_CLEAR_TXDTS
#define USB_CLEAR_TXDTS(eptn)
clear usb tx/rx toggle
Definition: at32f403_usb.h:417
USB_SET_EPT_DOUBLE_BUF1_LEN
#define USB_SET_EPT_DOUBLE_BUF1_LEN(eptn, len, dir)
double buffer mode set endpoint buf1 length
Definition: at32f403_usb.h:375
USB_SET_RXLEN
#define USB_SET_RXLEN(eptn, len)
Definition: at32f403_usb.h:334
USB_SET_RXSTS
#define USB_SET_RXSTS(ept_num, new_sts)
set usb endpoint rx status
Definition: at32f403_usb.h:262
USB_SET_EPT_DOUBLE_BUFFER
#define USB_SET_EPT_DOUBLE_BUFFER(eptn)
set/clear endpoint double buffer mode
Definition: at32f403_usb.h:484
USB_CLEAR_RXDTS
#define USB_CLEAR_RXDTS(eptn)
Definition: at32f403_usb.h:421
USB_TOGGLE_RXDTS
#define USB_TOGGLE_RXDTS(eptn)
Definition: at32f403_usb.h:410
USB_SET_EPT_ADDRESS
#define USB_SET_EPT_ADDRESS(eptn, address)
set usb device address
Definition: at32f403_usb.h:452
USB_SET_TRANS_TYPE
#define USB_SET_TRANS_TYPE(eptn, type)
set usb endpoint type
Definition: at32f403_usb.h:436
USB_SET_DOUBLE_BUFF1_ADDRESS
#define USB_SET_DOUBLE_BUFF1_ADDRESS(eptn, address)
Definition: at32f403_usb.h:402
USB_SET_TXSTS
#define USB_SET_TXSTS(ept_num, new_sts)
set usb endpoint tx status
Definition: at32f403_usb.h:247
USB_SET_TX_ADDRESS
#define USB_SET_TX_ADDRESS(eptn, address)
set usb endpoint tx/rx fifo address
Definition: at32f403_usb.h:392
USB_TOGGLE_TXDTS
#define USB_TOGGLE_TXDTS(eptn)
set usb tx/rx toggle
Definition: at32f403_usb.h:409
USB_SET_EPT_DOUBLE_BUF0_LEN
#define USB_SET_EPT_DOUBLE_BUF0_LEN(eptn, len, dir)
double buffer mode set endpoint buf0 length
Definition: at32f403_usb.h:357
USB_SET_RX_ADDRESS
#define USB_SET_RX_ADDRESS(eptn, address)
Definition: at32f403_usb.h:393
USB_SET_DOUBLE_BUFF0_ADDRESS
#define USB_SET_DOUBLE_BUFF0_ADDRESS(eptn, address)
set double buffer mode usb endpoint buf0/buf1 fifo address
Definition: at32f403_usb.h:401
USB_PACKET_BUFFER_ADDRESS
#define USB_PACKET_BUFFER_ADDRESS
Definition: at32f403_usb.h:164
USB_PACKET_BUFFER_ADDRESS_EX
#define USB_PACKET_BUFFER_ADDRESS_EX
Definition: at32f403_usb.h:165
usb_flag_get
flag_status usb_flag_get(usbd_type *usbx, uint16_t flag)
get flag of usb.
Definition: at32f403_usb.c:506
usb_exit_suspend
void usb_exit_suspend(usbd_type *usbx)
usb device exit suspend mode
Definition: at32f403_usb.c:440
usb_buffer_free
void usb_buffer_free(void)
free usb endpoint buffer
Definition: at32f403_usb.c:485
usb_flag_clear
void usb_flag_clear(usbd_type *usbx, uint16_t flag)
clear flag of usb.
Definition: at32f403_usb.c:571
usb_write_packet
void usb_write_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
write data from user memory to usb buffer
Definition: at32f403_usb.c:314
usb_read_packet
void usb_read_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
read data from usb buffer to user buffer
Definition: at32f403_usb.c:341
g_usb_packet_address
uint32_t g_usb_packet_address
Definition: at32f403_usb.c:47
usb_disconnect
void usb_disconnect(usbd_type *usbx)
disconnect usb device
Definition: at32f403_usb.c:91
USB_ENDP_DESC_TABLE_OFFSET
#define USB_ENDP_DESC_TABLE_OFFSET
usb packet buffer start address
Definition: at32f403_usb.c:46
usb_interrupt_flag_get
flag_status usb_interrupt_flag_get(usbd_type *usbx, uint16_t flag)
get interrupt flag of usb.
Definition: at32f403_usb.c:536
usb_enter_suspend
void usb_enter_suspend(usbd_type *usbx)
usb device enter suspend mode
Definition: at32f403_usb.c:428
usb_interrupt_enable
void usb_interrupt_enable(usbd_type *usbx, uint16_t interrupt, confirm_state new_state)
usb interrupt enable
Definition: at32f403_usb.c:377
usb_remote_wkup_clear
void usb_remote_wkup_clear(usbd_type *usbx)
usb remote wakeup clear
Definition: at32f403_usb.c:463
usb_usbbufs_enable
void usb_usbbufs_enable(usbd_type *usbx, confirm_state state)
mapping usb packet buffer area two mapping intervals are available for packet buffer area,...
Definition: at32f403_usb.c:111
usb_ept_stall
void usb_ept_stall(usbd_type *usbx, usb_ept_info *ept_info)
set endpoint tx or rx status to stall
Definition: at32f403_usb.c:409
usb_set_address
void usb_set_address(usbd_type *usbx, uint8_t address)
set the host assignment address
Definition: at32f403_usb.c:396
g_usb_offset_addr
static uint16_t g_usb_offset_addr
Definition: at32f403_usb.c:48
usb_buffer_malloc
uint16_t usb_buffer_malloc(uint16_t maxpacket)
usb auto malloc endpoint buffer
Definition: at32f403_usb.c:473
usb_remote_wkup_set
void usb_remote_wkup_set(usbd_type *usbx)
usb remote wakeup set
Definition: at32f403_usb.c:452
usb_connect
void usb_connect(usbd_type *usbx)
connect usb device
Definition: at32f403_usb.c:79
usb_ept_open
void usb_ept_open(usbd_type *usbx, usb_ept_info *ept_info)
open usb endpoint
Definition: at32f403_usb.c:135
usb_dev_init
void usb_dev_init(usbd_type *usbx)
initialize usb peripheral controller register
Definition: at32f403_usb.c:56
usb_ept_close
void usb_ept_close(usbd_type *usbx, usb_ept_info *ept_info)
close usb endpoint
Definition: at32f403_usb.c:255
usb_ept_info
usb endpoint infomation structure definition
Definition: at32f403_usb.h:499
usb_ept_info::ept_address
uint8_t ept_address
Definition: at32f403_usb.h:501
usb_ept_info::inout
uint8_t inout
Definition: at32f403_usb.h:502
usb_ept_info::maxpacket
uint16_t maxpacket
Definition: at32f403_usb.h:507
usb_ept_info::rx_addr
uint16_t rx_addr
Definition: at32f403_usb.h:506
usb_ept_info::is_double_buffer
uint8_t is_double_buffer
Definition: at32f403_usb.h:508
usb_ept_info::tx_addr
uint16_t tx_addr
Definition: at32f403_usb.h:505
usb_ept_info::eptn
uint8_t eptn
Definition: at32f403_usb.h:500
usb_ept_info::trans_type
uint8_t trans_type
Definition: at32f403_usb.h:503
usbd_type
type define usb register all
Definition: at32f403_usb.h:526
usbd_type::devaddr
__IO uint32_t devaddr
Definition: at32f403_usb.h:622
usbd_type::intsts
__IO uint32_t intsts
Definition: at32f403_usb.h:582
usbd_type::ctrl_bit
struct usbd_type::@712::@723 ctrl_bit
usbd_type::devaddr_bit
struct usbd_type::@718::@726 devaddr_bit
usbd_type::cen
__IO uint32_t cen
Definition: at32f403_usb.h:626
usbd_type::buftbl
__IO uint32_t buftbl
Definition: at32f403_usb.h:636
usbd_type::ssp
__IO uint32_t ssp
Definition: at32f403_usb.h:562
usbd_type::csrst
__IO uint32_t csrst
Definition: at32f403_usb.h:559
usbd_type::lpm
__IO uint32_t lpm
Definition: at32f403_usb.h:561
usbd_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_usb.h:556
usbd_type::gresume
__IO uint32_t gresume
Definition: at32f403_usb.h:563
usbd_type::disusb
__IO uint32_t disusb
Definition: at32f403_usb.h:560
usbd_type::addr
__IO uint32_t addr
Definition: at32f403_usb.h:625
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_usb.h Source File

  • libraries
  • drivers
  • inc
at32f403_usb.h
Go to the documentation of this file.
1
33/* define to prevent recursive inclusion -------------------------------------*/
34#ifndef __AT32F403_USB_H
35#define __AT32F403_USB_H
36
37#ifdef __cplusplus
38extern "C" {
39#endif
40
41
42/* includes ------------------------------------------------------------------*/
43#include "at32f403.h"
44
45
46
52#define USB_LSOF_INT ((uint32_t)0x00000100)
53#define USB_SOF_INT ((uint32_t)0x00000200)
54#define USB_RST_INT ((uint32_t)0x00000400)
55#define USB_SP_INT ((uint32_t)0x00000800)
56#define USB_WK_INT ((uint32_t)0x00001000)
57#define USB_BE_INT ((uint32_t)0x00002000)
58#define USB_UCFOR_INT ((uint32_t)0x00004000)
59#define USB_TC_INT ((uint32_t)0x00008000)
70#define USB_EPT_NUM_FLAG ((uint32_t)0x0000000F)
71#define USB_INOUT_FLAG ((uint32_t)0x00000010)
72#define USB_LSOF_FLAG ((uint32_t)0x00000100)
73#define USB_SOF_FLAG ((uint32_t)0x00000200)
74#define USB_RST_FLAG ((uint32_t)0x00000400)
75#define USB_SP_FLAG ((uint32_t)0x00000800)
76#define USB_WK_FLAG ((uint32_t)0x00001000)
77#define USB_BE_FLAG ((uint32_t)0x00002000)
78#define USB_UCFOR_FLAG ((uint32_t)0x00004000)
79#define USB_TC_FLAG ((uint32_t)0x00008000)
90#define USB_EPTADDR ((uint32_t)0x0000000F)
91#define USB_TXSTS ((uint32_t)0x00000030)
92#define USB_TXDTS ((uint32_t)0x00000040)
93#define USB_TXTC ((uint32_t)0x00000080)
94#define USB_EXF ((uint32_t)0x00000100)
95#define USB_TRANS_TYPE ((uint32_t)0x00000600)
96#define USB_SETUPTC ((uint32_t)0x00000800)
97#define USB_RXSTS ((uint32_t)0x00003000)
98#define USB_RXDTS ((uint32_t)0x00004000)
99#define USB_RXTC ((uint32_t)0x00008000)
101#define USB_EPT_BIT_MASK (uint32_t)(USB_TXTC | USB_SETUPTC | USB_EPTADDR | USB_EXF | USB_RXTC | USB_TRANS_TYPE)
102#define USB_TX_MASK (USB_TXSTS | USB_EPT_BIT_MASK)
103#define USB_RX_MASK (USB_RXSTS | USB_EPT_BIT_MASK)
114#define USB_TX_DISABLE ((uint32_t)0x00000000)
115#define USB_TX_STALL ((uint32_t)0x00000010)
116#define USB_TX_NAK ((uint32_t)0x00000020)
117#define USB_TX_VALID ((uint32_t)0x00000030)
119#define USB_TXDTS0 ((uint32_t)0x00000010)
120#define USB_TXDTS1 ((uint32_t)0x00000020)
122#define USB_RX_DISABLE ((uint32_t)0x00000000)
123#define USB_RX_STALL ((uint32_t)0x00001000)
124#define USB_RX_NAK ((uint32_t)0x00002000)
125#define USB_RX_VALID ((uint32_t)0x00003000)
127#define USB_RXDTS0 ((uint32_t)0x00001000)
128#define USB_RXDTS1 ((uint32_t)0x00002000)
139#define USB_EPT_CONTROL ((uint32_t)0x00000200)
140#define USB_EPT_BULK ((uint32_t)0x00000000)
141#define USB_EPT_INT ((uint32_t)0x00000600)
142#define USB_EPT_ISO ((uint32_t)0x00000400)
153#define USB_BUFFER_TABLE_ADDRESS 0x0000
164#define USB_PACKET_BUFFER_ADDRESS 0x40006000
165#define USB_PACKET_BUFFER_ADDRESS_EX 0x40007800
178typedef enum
179{
180 USB_EPT0 = 0x00,
181 USB_EPT1 = 0x01,
182 USB_EPT2 = 0x02,
183 USB_EPT3 = 0x03,
184 USB_EPT4 = 0x04,
185 USB_EPT5 = 0x05,
186 USB_EPT6 = 0x06,
187 USB_EPT7 = 0x07
188} usb_ept_number_type;
189
193#ifndef USB_EPT_MAX_NUM
194#define USB_EPT_MAX_NUM 8
195#endif
199typedef enum
200{
201 EPT_CONTROL_TYPE = 0x00,
202 EPT_ISO_TYPE = 0x01,
203 EPT_BULK_TYPE = 0x02,
204 EPT_INT_TYPE = 0x03
205}ept_trans_type;
206
210typedef enum
211{
212 EPT_IN = 0x00,
213 EPT_OUT = 0x01
214}ept_inout_type;
215
219typedef enum
220{
221 DATA_TRANS_OUT = 0x00,
222 DATA_TRANS_IN = 0x01
223}data_trans_dir;
224
228typedef enum
229{
230 USB_CLK_HICK,
231 USB_CLK_HEXT
232}usb_clk48_s;
247#define USB_SET_TXSTS(ept_num, new_sts) { \
248 register uint16_t epsts = (USB->ept[ept_num]) & USB_TX_MASK; \
249 if((new_sts & USB_TXDTS0) != 0) \
250 epsts ^= USB_TXDTS0; \
251 if((new_sts & USB_TXDTS1) != 0) \
252 epsts ^= USB_TXDTS1; \
253 USB->ept[ept_num] = epsts | USB_RXTC | USB_TXTC; \
254}
255
262#define USB_SET_RXSTS(ept_num, new_sts) { \
263 register uint16_t epsts = (USB->ept[ept_num]) & USB_RX_MASK; \
264 if((new_sts & USB_RXDTS0) != 0) \
265 epsts ^= USB_RXDTS0; \
266 if((new_sts & USB_RXDTS1) != 0) \
267 epsts ^= USB_RXDTS1; \
268 USB->ept[ept_num] = epsts | USB_RXTC | USB_TXTC; \
269}
270
276#define GET_TX_LEN_ADDR(eptn) (uint32_t *)((USB->buftbl + eptn * 8 + 2) * 2 + g_usb_packet_address)
277#define GET_RX_LEN_ADDR(eptn) (uint32_t *)((USB->buftbl + eptn * 8 + 6) * 2 + g_usb_packet_address)
278
284#define USB_GET_TX_LEN(eptn) ((uint16_t)(*GET_TX_LEN_ADDR(eptn)) & 0x3ff)
285#define USB_GET_RX_LEN(eptn) ((uint16_t)(*GET_RX_LEN_ADDR(eptn)) & 0x3ff)
286
292#define USB_DBUF0_GET_LEN(eptn) USB_GET_TX_LEN(eptn)
293#define USB_DBUF1_GET_LEN(eptn) USB_GET_RX_LEN(eptn)
294
301#define BLK32(reg, len, blks) { \
302 blks = (len) >> 5; \
303 if(((len) & 0x1F) == 0) \
304 blks --; \
305 *reg = ((uint16_t)((blks) << 10) | 0x8000); \
306}
307
308#define BLK2(reg, len, blks) { \
309 blks = (len) >> 1; \
310 if(((len) & 0x1) == 0) \
311 blks ++; \
312 *reg = (uint16_t)((blks) << 10); \
313}
314
315#define USB_SET_RXLEN_REG(reg, len) { \
316 uint16_t blks; \
317 if(len > 62) \
318 { \
319 BLK32(reg, len, blks); \
320 } \
321 else \
322 { \
323 BLK2(reg, len, blks); \
324 } \
325}
326
333#define USB_SET_TXLEN(eptn, len) (*(GET_TX_LEN_ADDR(eptn)) = (len))
334#define USB_SET_RXLEN(eptn, len) { \
335 uint32_t *rx_reg = GET_RX_LEN_ADDR(eptn); \
336 USB_SET_RXLEN_REG(rx_reg, (len)); \
337}
338
345#define USB_OUT_EPT_DOUBLE_BUF0(eptn, len) { \
346 uint32_t *rx_reg = GET_TX_LEN_ADDR(eptn); \
347 USB_SET_RXLEN_REG(rx_reg, (len)); \
348}
349
357#define USB_SET_EPT_DOUBLE_BUF0_LEN(eptn, len, dir) { \
358 if(dir == DATA_TRANS_OUT) \
359 { \
360 USB_OUT_EPT_DOUBLE_BUF0(eptn, len); \
361 } \
362 else \
363 { \
364 *(GET_TX_LEN_ADDR(eptn)) = (len); \
365 } \
366}
367
375#define USB_SET_EPT_DOUBLE_BUF1_LEN(eptn, len, dir) { \
376 if(dir == DATA_TRANS_OUT) \
377 { \
378 USB_SET_RXLEN(eptn, len); \
379 } \
380 else \
381 { \
382 *(GET_RX_LEN_ADDR(eptn)) = (len); \
383 } \
384}
385
392#define USB_SET_TX_ADDRESS(eptn, address) (*(uint32_t *)((USB->buftbl + eptn * 8) * 2 + g_usb_packet_address) = address)
393#define USB_SET_RX_ADDRESS(eptn, address) (*(uint32_t *)((USB->buftbl + eptn * 8 + 4) * 2 + g_usb_packet_address) = address)
394
401#define USB_SET_DOUBLE_BUFF0_ADDRESS(eptn, address) (USB_SET_TX_ADDRESS(eptn, address))
402#define USB_SET_DOUBLE_BUFF1_ADDRESS(eptn, address) (USB_SET_RX_ADDRESS(eptn, address))
403
409#define USB_TOGGLE_TXDTS(eptn) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_TXDTS | USB_RXTC | USB_TXTC))
410#define USB_TOGGLE_RXDTS(eptn) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK) | USB_RXDTS | USB_RXTC | USB_TXTC))
411
417#define USB_CLEAR_TXDTS(eptn) { \
418 if(USB->ept_bit[eptn].txdts != 0) \
419 USB_TOGGLE_TXDTS(eptn); \
420}
421#define USB_CLEAR_RXDTS(eptn) { \
422 if(USB->ept_bit[eptn].rxdts != 0) \
423 USB_TOGGLE_RXDTS(eptn); \
424}
425
436#define USB_SET_TRANS_TYPE(eptn, type) (USB->ept[eptn] = (USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_TRANS_TYPE)) | type)
437
443#define USB_SET_EXF(eptn) (USB->ept[eptn] = USB_TXTC | USB_RXTC | ((USB->ept[eptn] | USB_EXF) & USB_EPT_BIT_MASK))
444#define USB_CLEAR_EXF(eptn) (USB->ept[eptn] = USB_TXTC | USB_RXTC | (USB->ept[eptn] & ((~USB_EXF) & USB_EPT_BIT_MASK)))
445
452#define USB_SET_EPT_ADDRESS(eptn, address) (USB->ept[eptn] = ((USB->ept[eptn] & USB_EPT_BIT_MASK & (~USB_EPTADDR)) | address))
453
460#define USB_FREE_DB_USER_BUFFER(eptn, inout) { \
461 if(inout == DATA_TRANS_IN) \
462 { \
463 USB_TOGGLE_RXDTS(eptn); \
464 } \
465 else \
466 { \
467 USB_TOGGLE_TXDTS(eptn); \
468 } \
469}
470
476#define USB_CLEAR_TXTC(eptn) (USB->ept[eptn] &= 0xFF7F & USB_EPT_BIT_MASK)
477#define USB_CLEAR_RXTC(eptn) (USB->ept[eptn] &= 0x7FFF & USB_EPT_BIT_MASK)
478
484#define USB_SET_EPT_DOUBLE_BUFFER(eptn) USB_SET_EXF(eptn)
485#define USB_CLEAR_EPT_DOUBLE_BUFFER(eptn) USB_CLEAR_EXF(eptn)
486
498typedef struct
499{
500 uint8_t eptn;
501 uint8_t ept_address;
502 uint8_t inout;
503 uint8_t trans_type;
505 uint16_t tx_addr;
506 uint16_t rx_addr;
507 uint16_t maxpacket;
508 uint8_t is_double_buffer;
509 uint8_t stall;
510 uint16_t status;
512 /* transmission buffer and count */
513 uint16_t total_len;
514 uint16_t trans_len;
515 uint8_t *trans_buf;
517 uint16_t last_len;
518 uint16_t rem0_len;
519 uint16_t ept0_slen;
520}usb_ept_info;
521
525typedef struct
526{
530 union
531 {
532 __IO uint32_t ept[8];
533 struct
534 {
535 __IO uint32_t eptaddr : 4; /* [3:0] */
536 __IO uint32_t txsts : 2; /* [5:4] */
537 __IO uint32_t txdts : 1; /* [6] */
538 __IO uint32_t txtc : 1; /* [7] */
539 __IO uint32_t exf : 1; /* [8] */
540 __IO uint32_t trans_type : 2; /* [10:9] */
541 __IO uint32_t setuptc : 1; /* [11] */
542 __IO uint32_t rxsts : 2; /* [13:12] */
543 __IO uint32_t rxdts : 1; /* [14] */
544 __IO uint32_t rxtc : 1; /* [15] */
545 __IO uint32_t reserved1 : 16; /* [31:16] */
546 } ept_bit[8];
547 };
548
549 __IO uint32_t reserved1[8];
550
554 union
555 {
556 __IO uint32_t ctrl;
557 struct
558 {
559 __IO uint32_t csrst : 1; /* [0] */
560 __IO uint32_t disusb : 1; /* [1] */
561 __IO uint32_t lpm : 1; /* [2] */
562 __IO uint32_t ssp : 1; /* [3] */
563 __IO uint32_t gresume : 1; /* [4] */
564 __IO uint32_t reserved1 : 3; /* [7:5] */
565 __IO uint32_t lsofien : 1; /* [8] */
566 __IO uint32_t sofien : 1; /* [9] */
567 __IO uint32_t rstien : 1; /* [10] */
568 __IO uint32_t spien : 1; /* [11] */
569 __IO uint32_t wkien : 1; /* [12] */
570 __IO uint32_t beien : 1; /* [13] */
571 __IO uint32_t ucforien : 1; /* [14] */
572 __IO uint32_t tcien : 1; /* [15] */
573 __IO uint32_t reserved2 : 16; /* [31:16] */
574 } ctrl_bit;
575 };
576
580 union
581 {
582 __IO uint32_t intsts;
583 struct
584 {
585 __IO uint32_t ept_num : 4; /* [3:0] */
586 __IO uint32_t inout : 1; /* [4] */
587 __IO uint32_t reserved1 : 3; /* [7:5] */
588 __IO uint32_t lsof : 1; /* [8] */
589 __IO uint32_t sof : 1; /* [9] */
590 __IO uint32_t rst : 1; /* [10] */
591 __IO uint32_t sp : 1; /* [11] */
592 __IO uint32_t wk : 1; /* [12] */
593 __IO uint32_t be : 1; /* [13] */
594 __IO uint32_t ucfor : 1; /* [14] */
595 __IO uint32_t tc : 1; /* [15] */
596 __IO uint32_t reserved2 : 16; /* [31:16] */
597 } intsts_bit;
598 };
599
603 union
604 {
605 __IO uint32_t sofrnum;
606 struct
607 {
608 __IO uint32_t sofnum : 11; /* [10:0] */
609 __IO uint32_t lsofnum : 2; /* [12:11] */
610 __IO uint32_t clck : 1; /* [13] */
611 __IO uint32_t dmsts : 1; /* [14] */
612 __IO uint32_t dpsts : 1; /* [15] */
613 __IO uint32_t reserved1 : 16; /* [31:16] */
614 } sofrnum_bit;
615 };
616
620 union
621 {
622 __IO uint32_t devaddr;
623 struct
624 {
625 __IO uint32_t addr : 7; /* [6:0] */
626 __IO uint32_t cen : 1; /* [7] */
627 __IO uint32_t reserved1 : 24; /* [31:8] */
628 } devaddr_bit;
629 };
630
634 union
635 {
636 __IO uint32_t buftbl;
637 struct
638 {
639 __IO uint32_t reserved1 : 3; /* [2:0] */
640 __IO uint32_t btaddr : 13; /* [15:3] */
641 __IO uint32_t reserved2 : 16; /* [31:16] */
642 } buftbl_bit;
643 };
644
645} usbd_type;
646
651#define USB ((usbd_type *) USBFS_BASE)
652
653typedef usbd_type usb_reg_type;
654extern uint32_t g_usb_packet_address;
655
660void usb_dev_init(usbd_type *usbx);
661void usb_connect(usbd_type *usbx);
662void usb_disconnect(usbd_type *usbx);
663void usb_usbbufs_enable(usbd_type *usbx, confirm_state state);
664void usb_ept_open(usbd_type *usbx, usb_ept_info *ept_info);
665void usb_ept_close(usbd_type *usbx, usb_ept_info *ept_info);
666void usb_write_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes);
667void usb_read_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes);
668void usb_interrupt_enable(usbd_type *usbx, uint16_t interrupt, confirm_state new_state);
669void usb_set_address(usbd_type *usbx, uint8_t address);
670void usb_ept_stall(usbd_type *usbx, usb_ept_info *ept_info);
671void usb_enter_suspend(usbd_type *usbx);
672void usb_exit_suspend(usbd_type *usbx);
673void usb_remote_wkup_set(usbd_type *usbx);
674void usb_remote_wkup_clear(usbd_type *usbx);
675uint16_t usb_buffer_malloc(uint16_t maxpacket);
676void usb_buffer_free(void);
677 flag_status usb_flag_get(usbd_type *usbx, uint16_t flag);
678 flag_status usb_interrupt_flag_get(usbd_type *usbx, uint16_t flag);
679void usb_flag_clear(usbd_type *usbx, uint16_t flag);
680
681
682#ifdef __cplusplus
683}
684#endif
685
686#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
data_trans_dir
data_trans_dir
data transfer direction
Definition: at32f403_usb.h:220
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
ept_inout_type
ept_inout_type
endpoint endpoint direction define
Definition: at32f403_usb.h:211
usb_ept_number_type
usb_ept_number_type
usb endpoint number define
Definition: at32f403_usb.h:179
ept_trans_type
ept_trans_type
usb endpoint max num define
Definition: at32f403_usb.h:200
DATA_TRANS_OUT
@ DATA_TRANS_OUT
Definition: at32f403_usb.h:221
DATA_TRANS_IN
@ DATA_TRANS_IN
Definition: at32f403_usb.h:222
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
USB_CLK_HICK
@ USB_CLK_HICK
Definition: at32f403_usb.h:230
EPT_IN
@ EPT_IN
Definition: at32f403_usb.h:212
EPT_OUT
@ EPT_OUT
Definition: at32f403_usb.h:213
USB_EPT4
@ USB_EPT4
Definition: at32f403_usb.h:184
USB_EPT6
@ USB_EPT6
Definition: at32f403_usb.h:186
USB_EPT5
@ USB_EPT5
Definition: at32f403_usb.h:185
USB_EPT7
@ USB_EPT7
Definition: at32f403_usb.h:187
USB_EPT0
@ USB_EPT0
Definition: at32f403_usb.h:180
USB_EPT2
@ USB_EPT2
Definition: at32f403_usb.h:182
USB_EPT1
@ USB_EPT1
Definition: at32f403_usb.h:181
USB_EPT3
@ USB_EPT3
Definition: at32f403_usb.h:183
EPT_ISO_TYPE
@ EPT_ISO_TYPE
Definition: at32f403_usb.h:202
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
EPT_CONTROL_TYPE
@ EPT_CONTROL_TYPE
Definition: at32f403_usb.h:201
EPT_BULK_TYPE
@ EPT_BULK_TYPE
Definition: at32f403_usb.h:203
usb_flag_get
flag_status usb_flag_get(usbd_type *usbx, uint16_t flag)
get flag of usb.
Definition: at32f403_usb.c:506
usb_exit_suspend
void usb_exit_suspend(usbd_type *usbx)
usb device exit suspend mode
Definition: at32f403_usb.c:440
usb_buffer_free
void usb_buffer_free(void)
free usb endpoint buffer
Definition: at32f403_usb.c:485
usb_flag_clear
void usb_flag_clear(usbd_type *usbx, uint16_t flag)
clear flag of usb.
Definition: at32f403_usb.c:571
usb_write_packet
void usb_write_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
write data from user memory to usb buffer
Definition: at32f403_usb.c:314
usb_read_packet
void usb_read_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
read data from usb buffer to user buffer
Definition: at32f403_usb.c:341
usb_disconnect
void usb_disconnect(usbd_type *usbx)
disconnect usb device
Definition: at32f403_usb.c:91
usb_interrupt_flag_get
flag_status usb_interrupt_flag_get(usbd_type *usbx, uint16_t flag)
get interrupt flag of usb.
Definition: at32f403_usb.c:536
usb_enter_suspend
void usb_enter_suspend(usbd_type *usbx)
usb device enter suspend mode
Definition: at32f403_usb.c:428
usb_interrupt_enable
void usb_interrupt_enable(usbd_type *usbx, uint16_t interrupt, confirm_state new_state)
usb interrupt enable
Definition: at32f403_usb.c:377
usb_remote_wkup_clear
void usb_remote_wkup_clear(usbd_type *usbx)
usb remote wakeup clear
Definition: at32f403_usb.c:463
usb_usbbufs_enable
void usb_usbbufs_enable(usbd_type *usbx, confirm_state state)
mapping usb packet buffer area two mapping intervals are available for packet buffer area,...
Definition: at32f403_usb.c:111
usb_ept_stall
void usb_ept_stall(usbd_type *usbx, usb_ept_info *ept_info)
set endpoint tx or rx status to stall
Definition: at32f403_usb.c:409
usb_set_address
void usb_set_address(usbd_type *usbx, uint8_t address)
set the host assignment address
Definition: at32f403_usb.c:396
usb_buffer_malloc
uint16_t usb_buffer_malloc(uint16_t maxpacket)
usb auto malloc endpoint buffer
Definition: at32f403_usb.c:473
usb_remote_wkup_set
void usb_remote_wkup_set(usbd_type *usbx)
usb remote wakeup set
Definition: at32f403_usb.c:452
usb_connect
void usb_connect(usbd_type *usbx)
connect usb device
Definition: at32f403_usb.c:79
usb_ept_open
void usb_ept_open(usbd_type *usbx, usb_ept_info *ept_info)
open usb endpoint
Definition: at32f403_usb.c:135
usb_dev_init
void usb_dev_init(usbd_type *usbx)
initialize usb peripheral controller register
Definition: at32f403_usb.c:56
usb_ept_close
void usb_ept_close(usbd_type *usbx, usb_ept_info *ept_info)
close usb endpoint
Definition: at32f403_usb.c:255
usb_reg_type
usbd_type usb_reg_type
Definition: at32f403_usb.h:653
g_usb_packet_address
uint32_t g_usb_packet_address
Definition: at32f403_usb.c:47
usb_ept_info
usb endpoint infomation structure definition
Definition: at32f403_usb.h:499
usb_ept_info::total_len
uint16_t total_len
Definition: at32f403_usb.h:513
usb_ept_info::ept_address
uint8_t ept_address
Definition: at32f403_usb.h:501
usb_ept_info::trans_len
uint16_t trans_len
Definition: at32f403_usb.h:514
usb_ept_info::inout
uint8_t inout
Definition: at32f403_usb.h:502
usb_ept_info::maxpacket
uint16_t maxpacket
Definition: at32f403_usb.h:507
usb_ept_info::ept0_slen
uint16_t ept0_slen
Definition: at32f403_usb.h:519
usb_ept_info::rx_addr
uint16_t rx_addr
Definition: at32f403_usb.h:506
usb_ept_info::trans_buf
uint8_t * trans_buf
Definition: at32f403_usb.h:515
usb_ept_info::stall
uint8_t stall
Definition: at32f403_usb.h:509
usb_ept_info::is_double_buffer
uint8_t is_double_buffer
Definition: at32f403_usb.h:508
usb_ept_info::last_len
uint16_t last_len
Definition: at32f403_usb.h:517
usb_ept_info::status
uint16_t status
Definition: at32f403_usb.h:510
usb_ept_info::rem0_len
uint16_t rem0_len
Definition: at32f403_usb.h:518
usb_ept_info::tx_addr
uint16_t tx_addr
Definition: at32f403_usb.h:505
usb_ept_info::eptn
uint8_t eptn
Definition: at32f403_usb.h:500
usb_ept_info::trans_type
uint8_t trans_type
Definition: at32f403_usb.h:503
usbd_type
type define usb register all
Definition: at32f403_usb.h:526
usbd_type::rxtc
__IO uint32_t rxtc
Definition: at32f403_usb.h:544
usbd_type::sofien
__IO uint32_t sofien
Definition: at32f403_usb.h:566
usbd_type::devaddr
__IO uint32_t devaddr
Definition: at32f403_usb.h:622
usbd_type::intsts
__IO uint32_t intsts
Definition: at32f403_usb.h:582
usbd_type::txtc
__IO uint32_t txtc
Definition: at32f403_usb.h:538
usbd_type::lsofien
__IO uint32_t lsofien
Definition: at32f403_usb.h:565
usbd_type::cen
__IO uint32_t cen
Definition: at32f403_usb.h:626
usbd_type::rstien
__IO uint32_t rstien
Definition: at32f403_usb.h:567
usbd_type::sofnum
__IO uint32_t sofnum
Definition: at32f403_usb.h:608
usbd_type::dpsts
__IO uint32_t dpsts
Definition: at32f403_usb.h:612
usbd_type::btaddr
__IO uint32_t btaddr
Definition: at32f403_usb.h:640
usbd_type::be
__IO uint32_t be
Definition: at32f403_usb.h:593
usbd_type::exf
__IO uint32_t exf
Definition: at32f403_usb.h:539
usbd_type::dmsts
__IO uint32_t dmsts
Definition: at32f403_usb.h:611
usbd_type::lsofnum
__IO uint32_t lsofnum
Definition: at32f403_usb.h:609
usbd_type::inout
__IO uint32_t inout
Definition: at32f403_usb.h:586
usbd_type::rxdts
__IO uint32_t rxdts
Definition: at32f403_usb.h:543
usbd_type::rst
__IO uint32_t rst
Definition: at32f403_usb.h:590
usbd_type::txdts
__IO uint32_t txdts
Definition: at32f403_usb.h:537
usbd_type::setuptc
__IO uint32_t setuptc
Definition: at32f403_usb.h:541
usbd_type::buftbl
__IO uint32_t buftbl
Definition: at32f403_usb.h:636
usbd_type::wk
__IO uint32_t wk
Definition: at32f403_usb.h:592
usbd_type::ssp
__IO uint32_t ssp
Definition: at32f403_usb.h:562
usbd_type::wkien
__IO uint32_t wkien
Definition: at32f403_usb.h:569
usbd_type::txsts
__IO uint32_t txsts
Definition: at32f403_usb.h:536
usbd_type::clck
__IO uint32_t clck
Definition: at32f403_usb.h:610
usbd_type::sofrnum
__IO uint32_t sofrnum
Definition: at32f403_usb.h:605
usbd_type::ucfor
__IO uint32_t ucfor
Definition: at32f403_usb.h:594
usbd_type::spien
__IO uint32_t spien
Definition: at32f403_usb.h:568
usbd_type::csrst
__IO uint32_t csrst
Definition: at32f403_usb.h:559
usbd_type::lpm
__IO uint32_t lpm
Definition: at32f403_usb.h:561
usbd_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_usb.h:556
usbd_type::trans_type
__IO uint32_t trans_type
Definition: at32f403_usb.h:540
usbd_type::ucforien
__IO uint32_t ucforien
Definition: at32f403_usb.h:571
usbd_type::gresume
__IO uint32_t gresume
Definition: at32f403_usb.h:563
usbd_type::lsof
__IO uint32_t lsof
Definition: at32f403_usb.h:588
usbd_type::sof
__IO uint32_t sof
Definition: at32f403_usb.h:589
usbd_type::sp
__IO uint32_t sp
Definition: at32f403_usb.h:591
usbd_type::tcien
__IO uint32_t tcien
Definition: at32f403_usb.h:572
usbd_type::disusb
__IO uint32_t disusb
Definition: at32f403_usb.h:560
usbd_type::eptaddr
__IO uint32_t eptaddr
Definition: at32f403_usb.h:535
usbd_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_usb.h:545
usbd_type::tc
__IO uint32_t tc
Definition: at32f403_usb.h:595
usbd_type::addr
__IO uint32_t addr
Definition: at32f403_usb.h:625
usbd_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_usb.h:573
usbd_type::ept_num
__IO uint32_t ept_num
Definition: at32f403_usb.h:585
usbd_type::rxsts
__IO uint32_t rxsts
Definition: at32f403_usb.h:542
usbd_type::beien
__IO uint32_t beien
Definition: at32f403_usb.h:570


AT32F403 Firmwary Library: at32f403_wdt.c Source File

  • libraries
  • drivers
  • src
at32f403_wdt.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef WDT_MODULE_ENABLED
37
47void wdt_enable(void)
48{
49 WDT->cmd = WDT_CMD_ENABLE;
50}
51
57void wdt_counter_reload(void)
58{
59 WDT->cmd = WDT_CMD_RELOAD;
60}
61
67void wdt_reload_value_set(uint16_t reload_value)
68{
69 WDT->rld = reload_value;
70}
71
85void wdt_divider_set(wdt_division_type division)
86{
87 WDT->div_bit.div = division;
88}
89
95void wdt_register_write_enable( confirm_state new_state)
96{
97 if(new_state == FALSE)
98 {
99 WDT->cmd = WDT_CMD_LOCK;
100 }
101 else
102 {
103 WDT->cmd = WDT_CMD_UNLOCK;
104 }
105}
106
115 flag_status wdt_flag_get(uint16_t wdt_flag)
116{
117 flag_status status = RESET;
118
119 if ((WDT->sts & wdt_flag) != (uint16_t)RESET)
120 {
121 status = SET;
122 }
123 else
124 {
125 status = RESET;
126 }
127
128 return status;
129}
130
135#endif
136
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
wdt_division_type
wdt_division_type
wdt division value type
Definition: at32f403_wdt.h:66
WDT_CMD_ENABLE
@ WDT_CMD_ENABLE
Definition: at32f403_wdt.h:83
WDT_CMD_UNLOCK
@ WDT_CMD_UNLOCK
Definition: at32f403_wdt.h:82
WDT_CMD_RELOAD
@ WDT_CMD_RELOAD
Definition: at32f403_wdt.h:84
WDT_CMD_LOCK
@ WDT_CMD_LOCK
Definition: at32f403_wdt.h:81
wdt_register_write_enable
void wdt_register_write_enable(confirm_state new_state)
enable or disable wdt cmd register write
Definition: at32f403_wdt.c:95
wdt_enable
void wdt_enable(void)
wdt enable ,the reload value will be sent to the counter
Definition: at32f403_wdt.c:47
wdt_flag_get
flag_status wdt_flag_get(uint16_t wdt_flag)
get wdt flag
Definition: at32f403_wdt.c:115
wdt_counter_reload
void wdt_counter_reload(void)
reload wdt counter
Definition: at32f403_wdt.c:57
wdt_reload_value_set
void wdt_reload_value_set(uint16_t reload_value)
set wdt counter reload value
Definition: at32f403_wdt.c:67
wdt_divider_set
void wdt_divider_set(wdt_division_type division)
set wdt division divider
Definition: at32f403_wdt.c:85
WDT
#define WDT
Definition: at32f403_wdt.h:152
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_wdt.h Source File

  • libraries
  • drivers
  • inc
at32f403_wdt.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_WDT_H
27#define __AT32F403_WDT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
51#define WDT_DIVF_UPDATE_FLAG ((uint16_t)0x0001)
52#define WDT_RLDF_UPDATE_FLAG ((uint16_t)0x0002)
65typedef enum
66{
67 WDT_CLK_DIV_4 = 0x00,
68 WDT_CLK_DIV_8 = 0x01,
69 WDT_CLK_DIV_16 = 0x02,
70 WDT_CLK_DIV_32 = 0x03,
71 WDT_CLK_DIV_64 = 0x04,
72 WDT_CLK_DIV_128 = 0x05,
73 WDT_CLK_DIV_256 = 0x06
74} wdt_division_type;
75
79typedef enum
80{
81 WDT_CMD_LOCK = 0x0000,
82 WDT_CMD_UNLOCK = 0x5555,
83 WDT_CMD_ENABLE = 0xCCCC,
84 WDT_CMD_RELOAD = 0xAAAA
85} wdt_cmd_value_type;
86
90typedef struct
91{
92
96 union
97 {
98 __IO uint32_t cmd;
99 struct
100 {
101 __IO uint32_t cmd : 16;/* [15:0] */
102 __IO uint32_t reserved1 : 16;/* [31:16] */
103 } cmd_bit;
104 };
105
109 union
110 {
111 __IO uint32_t div;
112 struct
113 {
114 __IO uint32_t div : 3; /* [2:0] */
115 __IO uint32_t reserved1 : 29;/* [31:3] */
116 } div_bit;
117 };
118
122 union
123 {
124 __IO uint32_t rld;
125 struct
126 {
127 __IO uint32_t rld : 12;/* [11:0] */
128 __IO uint32_t reserved1 : 20;/* [31:12] */
129 } rld_bit;
130 };
131
135 union
136 {
137 __IO uint32_t sts;
138 struct
139 {
140 __IO uint32_t divf : 1; /* [0] */
141 __IO uint32_t rldf : 1; /* [1] */
142 __IO uint32_t reserved1 : 30;/* [31:2] */
143 } sts_bit;
144 };
145
146} wdt_type;
147
152#define WDT ((wdt_type *) WDT_BASE)
153
158void wdt_enable(void);
159void wdt_counter_reload(void);
160void wdt_reload_value_set(uint16_t reload_value);
161void wdt_divider_set(wdt_division_type division);
162void wdt_register_write_enable( confirm_state new_state);
163 flag_status wdt_flag_get(uint16_t wdt_flag);
164
177#ifdef __cplusplus
178}
179#endif
180
181#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
wdt_register_write_enable
void wdt_register_write_enable(confirm_state new_state)
enable or disable wdt cmd register write
Definition: at32f403_wdt.c:95
wdt_enable
void wdt_enable(void)
wdt enable ,the reload value will be sent to the counter
Definition: at32f403_wdt.c:47
wdt_flag_get
flag_status wdt_flag_get(uint16_t wdt_flag)
get wdt flag
Definition: at32f403_wdt.c:115
wdt_counter_reload
void wdt_counter_reload(void)
reload wdt counter
Definition: at32f403_wdt.c:57
wdt_reload_value_set
void wdt_reload_value_set(uint16_t reload_value)
set wdt counter reload value
Definition: at32f403_wdt.c:67
wdt_divider_set
void wdt_divider_set(wdt_division_type division)
set wdt division divider
Definition: at32f403_wdt.c:85
wdt_cmd_value_type
wdt_cmd_value_type
wdt cmd value type
Definition: at32f403_wdt.h:80
wdt_division_type
wdt_division_type
wdt division value type
Definition: at32f403_wdt.h:66
WDT_CMD_ENABLE
@ WDT_CMD_ENABLE
Definition: at32f403_wdt.h:83
WDT_CMD_UNLOCK
@ WDT_CMD_UNLOCK
Definition: at32f403_wdt.h:82
WDT_CMD_RELOAD
@ WDT_CMD_RELOAD
Definition: at32f403_wdt.h:84
WDT_CMD_LOCK
@ WDT_CMD_LOCK
Definition: at32f403_wdt.h:81
WDT_CLK_DIV_64
@ WDT_CLK_DIV_64
Definition: at32f403_wdt.h:71
WDT_CLK_DIV_8
@ WDT_CLK_DIV_8
Definition: at32f403_wdt.h:68
WDT_CLK_DIV_256
@ WDT_CLK_DIV_256
Definition: at32f403_wdt.h:73
WDT_CLK_DIV_4
@ WDT_CLK_DIV_4
Definition: at32f403_wdt.h:67
WDT_CLK_DIV_16
@ WDT_CLK_DIV_16
Definition: at32f403_wdt.h:69
WDT_CLK_DIV_32
@ WDT_CLK_DIV_32
Definition: at32f403_wdt.h:70
WDT_CLK_DIV_128
@ WDT_CLK_DIV_128
Definition: at32f403_wdt.h:72
wdt_type
type define wdt register all
Definition: at32f403_wdt.h:91
wdt_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_wdt.h:102
wdt_type::div
__IO uint32_t div
Definition: at32f403_wdt.h:111
wdt_type::divf
__IO uint32_t divf
Definition: at32f403_wdt.h:140
wdt_type::rld
__IO uint32_t rld
Definition: at32f403_wdt.h:124
wdt_type::rldf
__IO uint32_t rldf
Definition: at32f403_wdt.h:141
wdt_type::sts
__IO uint32_t sts
Definition: at32f403_wdt.h:137
wdt_type::cmd
__IO uint32_t cmd
Definition: at32f403_wdt.h:98


AT32F403 Firmwary Library: at32f403_wwdt.c Source File

  • libraries
  • drivers
  • src
at32f403_wwdt.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef WWDT_MODULE_ENABLED
37
46void wwdt_reset(void)
47{
48 crm_periph_reset(CRM_WWDT_PERIPH_RESET, TRUE);
49 crm_periph_reset(CRM_WWDT_PERIPH_RESET, FALSE);
50}
51
62void wwdt_divider_set(wwdt_division_type division)
63{
64 WWDT->cfg_bit.div = division;
65}
66
72void wwdt_flag_clear(void)
73{
74 WWDT->sts = 0;
75}
76
82void wwdt_enable(uint8_t wwdt_cnt)
83{
84 WWDT->ctrl = wwdt_cnt | WWDT_EN_BIT;
85}
86
92void wwdt_interrupt_enable(void)
93{
94 WWDT->cfg_bit.rldien = TRUE;
95}
96
102 flag_status wwdt_flag_get(void)
103{
104 return (flag_status)WWDT->sts_bit.rldf;
105}
106
112 flag_status wwdt_interrupt_flag_get(void)
113{
114 return (flag_status)(WWDT->sts_bit.rldf && WWDT->cfg_bit.rldien);
115}
116
122void wwdt_counter_set(uint8_t wwdt_cnt)
123{
124 WWDT->ctrl_bit.cnt = wwdt_cnt;
125}
126
132void wwdt_window_counter_set(uint8_t window_cnt)
133{
134 WWDT->cfg_bit.win = window_cnt;
135}
136
141#endif
142
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
CRM_WWDT_PERIPH_RESET
@ CRM_WWDT_PERIPH_RESET
Definition: at32f403_crm.h:193
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
WWDT_EN_BIT
#define WWDT_EN_BIT
Definition: at32f403_wwdt.h:50
wwdt_division_type
wwdt_division_type
wwdt division type
Definition: at32f403_wwdt.h:64
wwdt_counter_set
void wwdt_counter_set(uint8_t wwdt_cnt)
wwdt counter value set
Definition: at32f403_wwdt.c:122
wwdt_interrupt_flag_get
flag_status wwdt_interrupt_flag_get(void)
wwdt reload counter interrupt flag get
Definition: at32f403_wwdt.c:112
wwdt_flag_clear
void wwdt_flag_clear(void)
wwdt reload counter interrupt flag clear
Definition: at32f403_wwdt.c:72
wwdt_interrupt_enable
void wwdt_interrupt_enable(void)
wwdt reload counter interrupt enable
Definition: at32f403_wwdt.c:92
wwdt_divider_set
void wwdt_divider_set(wwdt_division_type division)
wwdt division set
Definition: at32f403_wwdt.c:62
wwdt_reset
void wwdt_reset(void)
wwdt reset by crm reset register
Definition: at32f403_wwdt.c:46
wwdt_window_counter_set
void wwdt_window_counter_set(uint8_t window_cnt)
wwdt window counter value set
Definition: at32f403_wwdt.c:132
wwdt_flag_get
flag_status wwdt_flag_get(void)
wwdt reload counter interrupt flag get
Definition: at32f403_wwdt.c:102
wwdt_enable
void wwdt_enable(uint8_t wwdt_cnt)
wwdt enable and the counter value load
Definition: at32f403_wwdt.c:82
WWDT
#define WWDT
Definition: at32f403_wwdt.h:125
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_wwdt.h Source File

  • libraries
  • drivers
  • inc
at32f403_wwdt.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_WWDT_H
27#define __AT32F403_WWDT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
50#define WWDT_EN_BIT ((uint32_t)0x00000080)
63typedef enum
64{
65 WWDT_PCLK1_DIV_4096 = 0x00,
66 WWDT_PCLK1_DIV_8192 = 0x01,
67 WWDT_PCLK1_DIV_16384 = 0x02,
68 WWDT_PCLK1_DIV_32768 = 0x03
69} wwdt_division_type;
70
74typedef struct
75{
76
80 union
81 {
82 __IO uint32_t ctrl;
83 struct
84 {
85 __IO uint32_t cnt : 7; /* [6:0] */
86 __IO uint32_t wwdten : 1; /* [7] */
87 __IO uint32_t reserved1 : 24;/* [31:8] */
88 } ctrl_bit;
89 };
90
94 union
95 {
96 __IO uint32_t cfg;
97 struct
98 {
99 __IO uint32_t win : 7; /* [6:0] */
100 __IO uint32_t div : 2; /* [8:7] */
101 __IO uint32_t rldien : 1; /* [9] */
102 __IO uint32_t reserved1 : 22;/* [31:10] */
103 } cfg_bit;
104 };
105
109 union
110 {
111 __IO uint32_t sts;
112 struct
113 {
114 __IO uint32_t rldf : 1; /* [0] */
115 __IO uint32_t reserved1 : 31;/* [31:1] */
116 } sts_bit;
117 };
118
119} wwdt_type;
120
125#define WWDT ((wwdt_type *) WWDT_BASE)
126
131void wwdt_reset(void);
132void wwdt_divider_set(wwdt_division_type division);
133void wwdt_flag_clear(void);
134void wwdt_enable(uint8_t wwdt_cnt);
135void wwdt_interrupt_enable(void);
136 flag_status wwdt_flag_get(void);
137 flag_status wwdt_interrupt_flag_get(void);
138void wwdt_counter_set(uint8_t wwdt_cnt);
139void wwdt_window_counter_set(uint8_t window_cnt);
140
153#ifdef __cplusplus
154}
155#endif
156
157#endif
at32f403.h
at32f403 header file
flag_status
flag_status
flag status
Definition: at32f403.h:304
wwdt_counter_set
void wwdt_counter_set(uint8_t wwdt_cnt)
wwdt counter value set
Definition: at32f403_wwdt.c:122
wwdt_interrupt_flag_get
flag_status wwdt_interrupt_flag_get(void)
wwdt reload counter interrupt flag get
Definition: at32f403_wwdt.c:112
wwdt_flag_clear
void wwdt_flag_clear(void)
wwdt reload counter interrupt flag clear
Definition: at32f403_wwdt.c:72
wwdt_interrupt_enable
void wwdt_interrupt_enable(void)
wwdt reload counter interrupt enable
Definition: at32f403_wwdt.c:92
wwdt_divider_set
void wwdt_divider_set(wwdt_division_type division)
wwdt division set
Definition: at32f403_wwdt.c:62
wwdt_reset
void wwdt_reset(void)
wwdt reset by crm reset register
Definition: at32f403_wwdt.c:46
wwdt_window_counter_set
void wwdt_window_counter_set(uint8_t window_cnt)
wwdt window counter value set
Definition: at32f403_wwdt.c:132
wwdt_flag_get
flag_status wwdt_flag_get(void)
wwdt reload counter interrupt flag get
Definition: at32f403_wwdt.c:102
wwdt_enable
void wwdt_enable(uint8_t wwdt_cnt)
wwdt enable and the counter value load
Definition: at32f403_wwdt.c:82
wwdt_division_type
wwdt_division_type
wwdt division type
Definition: at32f403_wwdt.h:64
WWDT_PCLK1_DIV_16384
@ WWDT_PCLK1_DIV_16384
Definition: at32f403_wwdt.h:67
WWDT_PCLK1_DIV_8192
@ WWDT_PCLK1_DIV_8192
Definition: at32f403_wwdt.h:66
WWDT_PCLK1_DIV_32768
@ WWDT_PCLK1_DIV_32768
Definition: at32f403_wwdt.h:68
WWDT_PCLK1_DIV_4096
@ WWDT_PCLK1_DIV_4096
Definition: at32f403_wwdt.h:65
wwdt_type
type define wwdt register all
Definition: at32f403_wwdt.h:75
wwdt_type::div
__IO uint32_t div
Definition: at32f403_wwdt.h:100
wwdt_type::win
__IO uint32_t win
Definition: at32f403_wwdt.h:99
wwdt_type::cfg
__IO uint32_t cfg
Definition: at32f403_wwdt.h:96
wwdt_type::cnt
__IO uint32_t cnt
Definition: at32f403_wwdt.h:85
wwdt_type::wwdten
__IO uint32_t wwdten
Definition: at32f403_wwdt.h:86
wwdt_type::sts
__IO uint32_t sts
Definition: at32f403_wwdt.h:111
wwdt_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_wwdt.h:82
wwdt_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_wwdt.h:87
wwdt_type::rldien
__IO uint32_t rldien
Definition: at32f403_wwdt.h:101
wwdt_type::rldf
__IO uint32_t rldf
Definition: at32f403_wwdt.h:114


AT32F403 Firmwary Library: at32f403_xmc.c Source File

  • libraries
  • drivers
  • src
at32f403_xmc.c
Go to the documentation of this file.
1
25#include "at32f403_conf.h"
26
36#ifdef XMC_MODULE_ENABLED
37
50void xmc_nor_sram_reset(xmc_nor_sram_subbank_type xmc_subbank)
51{
52 /* XMC_BANK1_NORSRAM1 */
53 if(xmc_subbank == XMC_BANK1_NOR_SRAM1)
54 {
55 XMC_BANK1->ctrl_tmg_group[xmc_subbank].bk1ctrl = 0x000030DB;
56 }
57 /* XMC_BANK1_NORSRAM2, XMC_BANK1_NORSRAM3 or XMC_BANK1_NORSRAM4 */
58 else
59 {
60 XMC_BANK1->ctrl_tmg_group[xmc_subbank].bk1ctrl = 0x000030D2;
61 }
62 XMC_BANK1->ctrl_tmg_group[xmc_subbank].bk1tmg = 0x0FFFFFFF;
63 XMC_BANK1->tmgwr_group[xmc_subbank].bk1tmgwr = 0x0FFFFFFF;
64}
65
74void xmc_nor_sram_init(xmc_norsram_init_type* xmc_norsram_init_struct)
75{
76 /* bank1 nor/sram control register configuration */
77 XMC_BANK1->ctrl_tmg_group[xmc_norsram_init_struct->subbank].bk1ctrl =
78 (uint32_t)xmc_norsram_init_struct->data_addr_multiplex |
79 xmc_norsram_init_struct->device |
80 xmc_norsram_init_struct->bus_type |
81 xmc_norsram_init_struct->burst_mode_enable |
82 xmc_norsram_init_struct->asynwait_enable |
83 xmc_norsram_init_struct->wait_signal_lv |
84 xmc_norsram_init_struct->wrapped_mode_enable |
85 xmc_norsram_init_struct->wait_signal_config |
86 xmc_norsram_init_struct->write_enable |
87 xmc_norsram_init_struct->wait_signal_enable |
88 xmc_norsram_init_struct->write_timing_enable |
89 xmc_norsram_init_struct->write_burst_syn;
90
91 /* if nor flash device */
92 if(xmc_norsram_init_struct->device == XMC_DEVICE_NOR)
93 {
94 XMC_BANK1->ctrl_tmg_group[xmc_norsram_init_struct->subbank].bk1ctrl_bit.noren = 0x1;
95 }
96}
97
109void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type* xmc_rw_timing_struct,
110 xmc_norsram_timing_init_type* xmc_w_timing_struct)
111{
112 /* bank1 nor/sram timing register configuration */
113 XMC_BANK1->ctrl_tmg_group[xmc_rw_timing_struct->subbank].bk1tmg =
114 (uint32_t)xmc_rw_timing_struct->addr_setup_time |
115 (xmc_rw_timing_struct->addr_hold_time << 4) |
116 (xmc_rw_timing_struct->data_setup_time << 8) |
117 (xmc_rw_timing_struct->bus_latency_time <<16) |
118 (xmc_rw_timing_struct->clk_psc << 20) |
119 (xmc_rw_timing_struct->data_latency_time << 24) |
120 xmc_rw_timing_struct->mode;
121
122 /* bank1 nor/sram timing register for write configuration, if extended mode is used */
123 if(xmc_rw_timing_struct->write_timing_enable == XMC_WRITE_TIMING_ENABLE)
124 {
125 XMC_BANK1->tmgwr_group[xmc_w_timing_struct->subbank].bk1tmgwr =
126 (uint32_t)xmc_w_timing_struct->addr_setup_time |
127 (xmc_w_timing_struct->addr_hold_time << 4) |
128 (xmc_w_timing_struct->data_setup_time << 8) |
129 (xmc_w_timing_struct->bus_latency_time << 16) |
130 (xmc_w_timing_struct->clk_psc << 20) |
131 (xmc_w_timing_struct->data_latency_time << 24) |
132 xmc_w_timing_struct->mode;
133 }
134 else
135 {
136 XMC_BANK1->tmgwr_group[xmc_w_timing_struct->subbank].bk1tmgwr = 0x0FFFFFFF;
137 }
138}
139
146void xmc_norsram_default_para_init(xmc_norsram_init_type* xmc_nor_sram_init_struct)
147{
148 /* reset nor/sram init structure parameters values */
149 xmc_nor_sram_init_struct->subbank = XMC_BANK1_NOR_SRAM1;
150 xmc_nor_sram_init_struct->data_addr_multiplex = XMC_DATA_ADDR_MUX_ENABLE;
151 xmc_nor_sram_init_struct->device = XMC_DEVICE_SRAM;
152 xmc_nor_sram_init_struct->bus_type = XMC_BUSTYPE_8_BITS;
153 xmc_nor_sram_init_struct->burst_mode_enable = XMC_BURST_MODE_DISABLE;
154 xmc_nor_sram_init_struct->asynwait_enable = XMC_ASYN_WAIT_DISABLE;
155 xmc_nor_sram_init_struct->wait_signal_lv = XMC_WAIT_SIGNAL_LEVEL_LOW;
156 xmc_nor_sram_init_struct->wrapped_mode_enable = XMC_WRAPPED_MODE_DISABLE;
157 xmc_nor_sram_init_struct->wait_signal_config = XMC_WAIT_SIGNAL_SYN_BEFORE;
158 xmc_nor_sram_init_struct->write_enable = XMC_WRITE_OPERATION_ENABLE;
159 xmc_nor_sram_init_struct->wait_signal_enable = XMC_WAIT_SIGNAL_ENABLE;
160 xmc_nor_sram_init_struct->write_timing_enable = XMC_WRITE_TIMING_DISABLE;
161 xmc_nor_sram_init_struct->write_burst_syn = XMC_WRITE_BURST_SYN_DISABLE;
162}
163
172void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type* xmc_rw_timing_struct,
173 xmc_norsram_timing_init_type* xmc_w_timing_struct)
174{
175 xmc_rw_timing_struct->subbank = XMC_BANK1_NOR_SRAM1;
176 xmc_rw_timing_struct->write_timing_enable = XMC_WRITE_TIMING_DISABLE;
177 xmc_rw_timing_struct->addr_setup_time = 0xF;
178 xmc_rw_timing_struct->addr_hold_time = 0xF;
179 xmc_rw_timing_struct->data_setup_time = 0xFF;
180 xmc_rw_timing_struct->bus_latency_time = 0xF;
181 xmc_rw_timing_struct->clk_psc = 0xF;
182 xmc_rw_timing_struct->data_latency_time = 0xF;
183 xmc_rw_timing_struct->mode = XMC_ACCESS_MODE_A;
184 xmc_w_timing_struct->subbank = XMC_BANK1_NOR_SRAM1;
185 xmc_w_timing_struct->write_timing_enable = XMC_WRITE_TIMING_DISABLE;
186 xmc_w_timing_struct->addr_setup_time = 0xF;
187 xmc_w_timing_struct->addr_hold_time = 0xF;
188 xmc_w_timing_struct->data_setup_time = 0xFF;
189 xmc_w_timing_struct->bus_latency_time = 0xF;
190 xmc_w_timing_struct->clk_psc = 0xF;
191 xmc_w_timing_struct->data_latency_time = 0xF;
192 xmc_w_timing_struct->mode = XMC_ACCESS_MODE_A;
193}
194
204void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
205{
206 XMC_BANK1->ctrl_tmg_group[xmc_subbank].bk1ctrl_bit.en = new_state;
207}
208
219void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
220{
221 XMC_BANK1->ext_bit[xmc_sub_bank].buslatr2r = r2r_timing;
222 XMC_BANK1->ext_bit[xmc_sub_bank].buslatw2w = w2w_timing;
223}
224
232void xmc_nand_reset(xmc_class_bank_type xmc_bank)
233{
234 /* set the XMC_BANK2_NAND registers to their reset values */
235 if(xmc_bank == XMC_BANK2_NAND)
236 {
237 XMC_BANK2->bk2ctrl = 0x00000018;
238 XMC_BANK2->bk2is = 0x00000040;
239 XMC_BANK2->bk2tmgatt = 0xFCFCFCFC;
240 XMC_BANK2->bk2tmgmem = 0xFCFCFCFC;
241 }
242}
243
252void xmc_nand_init(xmc_nand_init_type* xmc_nand_init_struct)
253{
254 uint32_t tempctrl = 0x0;
255
256 /* Set the tempctrl value according to xmc_nand_init_struct parameters */
257 tempctrl = (uint32_t)xmc_nand_init_struct->wait_enable |
258 xmc_nand_init_struct->bus_type |
259 xmc_nand_init_struct->ecc_enable |
260 xmc_nand_init_struct->ecc_pagesize |
261 (xmc_nand_init_struct->delay_time_cycle << 9) |
262 (xmc_nand_init_struct->delay_time_ar << 13) |
263 0x00000008;
264
265 /* xmc_bank2_nand registers configuration */
266 if(xmc_nand_init_struct->nand_bank == XMC_BANK2_NAND)
267 {
268 XMC_BANK2->bk2ctrl = tempctrl;
269 }
270}
271
283void xmc_nand_timing_config(xmc_nand_pccard_timinginit_type* xmc_regular_spacetiming_struct,
284 xmc_nand_pccard_timinginit_type* xmc_special_spacetiming_struct)
285{
286 uint32_t tempmem = 0x0, tempatt = 0x0;
287
288 /* set the tempmem value according to xmc_nand_init_struct parameters */
289 tempmem = (uint32_t)xmc_regular_spacetiming_struct->mem_setup_time |
290 (xmc_regular_spacetiming_struct->mem_waite_time << 8) |
291 (xmc_regular_spacetiming_struct->mem_hold_time << 16) |
292 (xmc_regular_spacetiming_struct->mem_hiz_time << 24);
293
294 /* set the tempatt value according to xmc_nand_init_struct parameters */
295 tempatt = (uint32_t)xmc_special_spacetiming_struct->mem_setup_time |
296 (xmc_special_spacetiming_struct->mem_waite_time << 8) |
297 (xmc_special_spacetiming_struct->mem_hold_time << 16) |
298 (xmc_special_spacetiming_struct->mem_hiz_time << 24);
299 /* xmc_bank2_nand registers configuration */
300 if(xmc_regular_spacetiming_struct->class_bank == XMC_BANK2_NAND)
301 {
302 XMC_BANK2->bk2tmgatt = tempatt;
303 XMC_BANK2->bk2tmgmem = tempmem;
304 }
305}
306
313void xmc_nand_default_para_init(xmc_nand_init_type* xmc_nand_init_struct)
314{
315 /* reset nand init structure parameters values */
316 xmc_nand_init_struct->nand_bank = XMC_BANK2_NAND;
317 xmc_nand_init_struct->wait_enable = XMC_WAIT_OPERATION_DISABLE;
318 xmc_nand_init_struct->bus_type = XMC_BUSTYPE_8_BITS;
319 xmc_nand_init_struct->ecc_enable = XMC_ECC_OPERATION_DISABLE;
320 xmc_nand_init_struct->ecc_pagesize = XMC_ECC_PAGESIZE_256_BYTES;
321 xmc_nand_init_struct->delay_time_cycle = 0x0;
322 xmc_nand_init_struct->delay_time_ar = 0x0;
323}
324
333void xmc_nand_timing_default_para_init(xmc_nand_pccard_timinginit_type* xmc_regular_spacetiming_struct,
334 xmc_nand_pccard_timinginit_type* xmc_special_spacetiming_struct)
335{
336 xmc_regular_spacetiming_struct->class_bank = XMC_BANK2_NAND;
337 xmc_regular_spacetiming_struct->mem_hold_time = 0xFC;
338 xmc_regular_spacetiming_struct->mem_waite_time = 0xFC;
339 xmc_regular_spacetiming_struct->mem_setup_time = 0xFC;
340 xmc_regular_spacetiming_struct->mem_hiz_time = 0xFC;
341 xmc_special_spacetiming_struct->class_bank = XMC_BANK2_NAND;
342 xmc_special_spacetiming_struct->mem_hold_time = 0xFC;
343 xmc_special_spacetiming_struct->mem_waite_time = 0xFC;
344 xmc_special_spacetiming_struct->mem_setup_time = 0xFC;
345 xmc_special_spacetiming_struct->mem_hiz_time = 0xFC;
346}
347
356void xmc_nand_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
357{
358 /* enable or disable the nand bank2 by setting the en bit in the bk2ctrl register */
359 if(xmc_bank == XMC_BANK2_NAND)
360 {
361 XMC_BANK2->bk2ctrl_bit.en = new_state;
362 }
363}
364
373void xmc_nand_ecc_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
374{
375 /* enable the selected nand bank2 ecc function by setting the eccen bit in the bk2ctrl register */
376 if(xmc_bank == XMC_BANK2_NAND)
377 {
378 XMC_BANK2->bk2ctrl_bit.eccen = new_state;
379 }
380}
381
389uint32_t xmc_ecc_get(xmc_class_bank_type xmc_bank)
390{
391 uint32_t eccvaule = 0x0;
392
393 /* get the bk2ecc register value */
394 if(xmc_bank == XMC_BANK2_NAND)
395 {
396 eccvaule = XMC_BANK2->bk2ecc;
397 }
398
399 /* return the error correction code value */
400 return eccvaule;
401}
402
416void xmc_interrupt_enable(xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state)
417{
418 if(new_state != FALSE)
419 {
420 /* enable the selected xmc_bank2 interrupts */
421 if(xmc_bank == XMC_BANK2_NAND)
422 {
423 XMC_BANK2->bk2is |= xmc_int;
424 }
425 }
426 else
427 {
428 /* disable the selected xmc_bank2 interrupts */
429 if(xmc_bank == XMC_BANK2_NAND)
430 {
431 XMC_BANK2->bk2is &= ~xmc_int;
432 }
433 }
434}
435
449 flag_status xmc_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
450{
451 flag_status status = RESET;
452 uint32_t temp = 0;
453
454 if(xmc_bank == XMC_BANK2_NAND)
455 {
456 temp = XMC_BANK2->bk2is;
457 }
458 /* get the flag status */
459 if((temp & xmc_flag) == RESET)
460 {
461 status = RESET;
462 }
463 else
464 {
465 status = SET;
466 }
467 /* return the flag status */
468 return status;
469}
470
483 flag_status xmc_interrupt_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
484{
485 flag_status status = RESET;
486
487 switch(xmc_flag)
488 {
489 case XMC_RISINGEDGE_FLAG:
490 if(XMC_BANK2->bk2is_bit.reien & XMC_BANK2->bk2is_bit.res)
491 status = SET;
492 break;
493
494 case XMC_LEVEL_FLAG:
495 if(XMC_BANK2->bk2is_bit.feien & XMC_BANK2->bk2is_bit.fes)
496 status = SET;
497 break;
498
499 case XMC_FALLINGEDGE_FLAG:
500 if(XMC_BANK2->bk2is_bit.hlien & XMC_BANK2->bk2is_bit.hls)
501 status = SET;
502 break;
503
504 default:
505 break;
506 }
507
508 /* return the flag status */
509 return status;
510}
511
525void xmc_flag_clear(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
526{
527 __IO uint32_t int_state;
528 if(xmc_bank == XMC_BANK2_NAND)
529 {
530 int_state = XMC_BANK2->bk2is & 0x38; /* keep interrupt state */
531 XMC_BANK2->bk2is = (~(xmc_flag | 0x38) | int_state);
532 }
533}
534
540void xmc_pccard_reset(void)
541{
542 /* Set the XMC_Bank4 registers to their reset values */
543 XMC_BANK4->bk4ctrl = 0x00000018;
544 XMC_BANK4->bk4is = 0x00000000;
545 XMC_BANK4->bk4tmgatt = 0xFCFCFCFC;
546 XMC_BANK4->bk4tmgio = 0xFCFCFCFC;
547 XMC_BANK4->bk4tmgmem = 0xFCFCFCFC;
548}
549
558void xmc_pccard_init(xmc_pccard_init_type* xmc_pccard_init_struct)
559{
560 /* set the bk4ctrl register value according to xmc_pccard_init_struct parameters */
561 XMC_BANK4->bk4ctrl = (uint32_t)xmc_pccard_init_struct->enable_wait |
562 XMC_BUSTYPE_16_BITS |
563 (xmc_pccard_init_struct->delay_time_cr << 9) |
564 (xmc_pccard_init_struct->delay_time_ar << 13);
565}
566
582void xmc_pccard_timing_config(xmc_nand_pccard_timinginit_type* xmc_regular_spacetiming_struct,
583 xmc_nand_pccard_timinginit_type* xmc_special_spacetiming_struct,
584 xmc_nand_pccard_timinginit_type* xmc_iospace_timing_struct)
585{
586 /* set bk4tmgmem register value according to xmc_regular_spacetiming_struct parameters */
587 XMC_BANK4->bk4tmgmem = (uint32_t)xmc_regular_spacetiming_struct->mem_setup_time |
588 (xmc_regular_spacetiming_struct->mem_waite_time << 8) |
589 (xmc_regular_spacetiming_struct->mem_hold_time << 16) |
590 (xmc_regular_spacetiming_struct->mem_hiz_time << 24);
591
592 /* Set bk4tmgatt register value according to xmc_special_spacetiming_struct parameters */
593 XMC_BANK4->bk4tmgatt = (uint32_t)xmc_special_spacetiming_struct->mem_setup_time |
594 (xmc_special_spacetiming_struct->mem_waite_time << 8) |
595 (xmc_special_spacetiming_struct->mem_hold_time << 16) |
596 (xmc_special_spacetiming_struct->mem_hiz_time << 24);
597
598 /* Set bk4tmgio register value according to xmc_iospace_timing_struct parameters */
599 XMC_BANK4->bk4tmgio = (uint32_t)xmc_iospace_timing_struct->mem_setup_time |
600 (xmc_iospace_timing_struct->mem_waite_time << 8) |
601 (xmc_iospace_timing_struct->mem_hold_time << 16) |
602 (xmc_iospace_timing_struct->mem_hiz_time << 24);
603}
610void xmc_pccard_default_para_init(xmc_pccard_init_type* xmc_pccard_init_struct)
611{
612 /* reset pccard init structure parameters values */
613 xmc_pccard_init_struct->enable_wait = XMC_WAIT_OPERATION_DISABLE;
614 xmc_pccard_init_struct->delay_time_ar = 0x0;
615 xmc_pccard_init_struct->delay_time_cr = 0x0;
616
617}
632void xmc_pccard_timing_default_para_init(xmc_nand_pccard_timinginit_type* xmc_regular_spacetiming_struct,
633 xmc_nand_pccard_timinginit_type* xmc_special_spacetiming_struct,
634 xmc_nand_pccard_timinginit_type* xmc_iospace_timing_struct)
635{
636 xmc_regular_spacetiming_struct->class_bank = XMC_BANK4_PCCARD;
637 xmc_regular_spacetiming_struct->mem_hold_time = 0xFC;
638 xmc_regular_spacetiming_struct->mem_waite_time = 0xFC;
639 xmc_regular_spacetiming_struct->mem_setup_time = 0xFC;
640 xmc_regular_spacetiming_struct->mem_hiz_time = 0xFC;
641 xmc_special_spacetiming_struct->class_bank = XMC_BANK4_PCCARD;
642 xmc_special_spacetiming_struct->mem_hold_time = 0xFC;
643 xmc_special_spacetiming_struct->mem_waite_time = 0xFC;
644 xmc_special_spacetiming_struct->mem_setup_time = 0xFC;
645 xmc_special_spacetiming_struct->mem_hiz_time = 0xFC;
646 xmc_iospace_timing_struct->class_bank = XMC_BANK4_PCCARD;
647 xmc_iospace_timing_struct->mem_hold_time = 0xFC;
648 xmc_iospace_timing_struct->mem_waite_time = 0xFC;
649 xmc_iospace_timing_struct->mem_setup_time = 0xFC;
650 xmc_iospace_timing_struct->mem_hiz_time = 0xFC;
651}
657void xmc_pccard_enable(confirm_state new_state)
658{
659 /* enable the pccard bank4 by setting the en bit in the bk4ctrl register */
660 XMC_BANK4->bk4ctrl_bit.en = new_state;
661}
662
667#endif
668
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
xmc_class_bank_type
xmc_class_bank_type
xmc class bank type
Definition: at32f403_xmc.h:154
xmc_interrupt_sources_type
xmc_interrupt_sources_type
xmc interrupt sources type
Definition: at32f403_xmc.h:225
xmc_nor_sram_subbank_type
xmc_nor_sram_subbank_type
xmc nor/sram bank type
Definition: at32f403_xmc.h:143
xmc_interrupt_flag_type
xmc_interrupt_flag_type
xmc interrupt flag type
Definition: at32f403_xmc.h:235
XMC_WAIT_SIGNAL_ENABLE
@ XMC_WAIT_SIGNAL_ENABLE
Definition: at32f403_xmc.h:100
XMC_WAIT_SIGNAL_SYN_BEFORE
@ XMC_WAIT_SIGNAL_SYN_BEFORE
Definition: at32f403_xmc.h:193
XMC_WRITE_OPERATION_ENABLE
@ XMC_WRITE_OPERATION_ENABLE
Definition: at32f403_xmc.h:91
XMC_WRITE_BURST_SYN_DISABLE
@ XMC_WRITE_BURST_SYN_DISABLE
Definition: at32f403_xmc.h:108
XMC_BURST_MODE_DISABLE
@ XMC_BURST_MODE_DISABLE
Definition: at32f403_xmc.h:63
XMC_BANK4_PCCARD
@ XMC_BANK4_PCCARD
Definition: at32f403_xmc.h:157
XMC_BANK2_NAND
@ XMC_BANK2_NAND
Definition: at32f403_xmc.h:155
XMC_DATA_ADDR_MUX_ENABLE
@ XMC_DATA_ADDR_MUX_ENABLE
Definition: at32f403_xmc.h:55
XMC_BUSTYPE_16_BITS
@ XMC_BUSTYPE_16_BITS
Definition: at32f403_xmc.h:176
XMC_BUSTYPE_8_BITS
@ XMC_BUSTYPE_8_BITS
Definition: at32f403_xmc.h:175
XMC_WRITE_TIMING_ENABLE
@ XMC_WRITE_TIMING_ENABLE
Definition: at32f403_xmc.h:118
XMC_WRITE_TIMING_DISABLE
@ XMC_WRITE_TIMING_DISABLE
Definition: at32f403_xmc.h:117
XMC_BANK1_NOR_SRAM1
@ XMC_BANK1_NOR_SRAM1
Definition: at32f403_xmc.h:144
XMC_RISINGEDGE_FLAG
@ XMC_RISINGEDGE_FLAG
Definition: at32f403_xmc.h:236
XMC_FALLINGEDGE_FLAG
@ XMC_FALLINGEDGE_FLAG
Definition: at32f403_xmc.h:238
XMC_LEVEL_FLAG
@ XMC_LEVEL_FLAG
Definition: at32f403_xmc.h:237
XMC_ASYN_WAIT_DISABLE
@ XMC_ASYN_WAIT_DISABLE
Definition: at32f403_xmc.h:72
XMC_WAIT_OPERATION_DISABLE
@ XMC_WAIT_OPERATION_DISABLE
Definition: at32f403_xmc.h:126
XMC_WRAPPED_MODE_DISABLE
@ XMC_WRAPPED_MODE_DISABLE
Definition: at32f403_xmc.h:81
XMC_ECC_PAGESIZE_256_BYTES
@ XMC_ECC_PAGESIZE_256_BYTES
Definition: at32f403_xmc.h:213
XMC_ACCESS_MODE_A
@ XMC_ACCESS_MODE_A
Definition: at32f403_xmc.h:202
XMC_ECC_OPERATION_DISABLE
@ XMC_ECC_OPERATION_DISABLE
Definition: at32f403_xmc.h:135
XMC_WAIT_SIGNAL_LEVEL_LOW
@ XMC_WAIT_SIGNAL_LEVEL_LOW
Definition: at32f403_xmc.h:184
XMC_DEVICE_NOR
@ XMC_DEVICE_NOR
Definition: at32f403_xmc.h:167
XMC_DEVICE_SRAM
@ XMC_DEVICE_SRAM
Definition: at32f403_xmc.h:165
xmc_ecc_get
uint32_t xmc_ecc_get(xmc_class_bank_type xmc_bank)
return the error correction code register value.
Definition: at32f403_xmc.c:389
xmc_pccard_enable
void xmc_pccard_enable(confirm_state new_state)
enable or disable the pccard memory bank.
Definition: at32f403_xmc.c:657
xmc_pccard_timing_config
void xmc_pccard_timing_config(xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_st...
Definition: at32f403_xmc.c:582
xmc_nand_init
void xmc_nand_init(xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:252
xmc_pccard_init
void xmc_pccard_init(xmc_pccard_init_type *xmc_pccard_init_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct.
Definition: at32f403_xmc.c:558
xmc_flag_clear
void xmc_flag_clear(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
clear the xmc's pending flags.
Definition: at32f403_xmc.c:525
xmc_interrupt_enable
void xmc_interrupt_enable(xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state)
enable or disable the specified xmc interrupts.
Definition: at32f403_xmc.c:416
xmc_nor_sram_reset
void xmc_nor_sram_reset(xmc_nor_sram_subbank_type xmc_subbank)
xmc nor or sram registers reset
Definition: at32f403_xmc.c:50
xmc_nand_timing_default_para_init
void xmc_nand_timing_default_para_init(xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default ...
Definition: at32f403_xmc.c:333
xmc_nor_sram_init
void xmc_nor_sram_init(xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.
Definition: at32f403_xmc.c:74
xmc_nand_ecc_enable
void xmc_nand_ecc_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature.
Definition: at32f403_xmc.c:373
xmc_nand_default_para_init
void xmc_nand_default_para_init(xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value.
Definition: at32f403_xmc.c:313
xmc_norsram_timing_default_para_init
void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.
Definition: at32f403_xmc.c:172
xmc_pccard_default_para_init
void xmc_pccard_default_para_init(xmc_pccard_init_type *xmc_pccard_init_struct)
fill each xmc_pccard_init_struct member with its default value.
Definition: at32f403_xmc.c:610
xmc_ext_timing_config
void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase.
Definition: at32f403_xmc.c:219
xmc_pccard_reset
void xmc_pccard_reset(void)
xmc pc card registers reset
Definition: at32f403_xmc.c:540
xmc_nor_sram_timing_config
void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct a...
Definition: at32f403_xmc.c:109
xmc_interrupt_flag_status_get
flag_status xmc_interrupt_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc interrupt flag is set or not.
Definition: at32f403_xmc.c:483
xmc_pccard_timing_default_para_init
void xmc_pccard_timing_default_para_init(xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struc...
Definition: at32f403_xmc.c:632
xmc_nand_enable
void xmc_nand_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank.
Definition: at32f403_xmc.c:356
xmc_nand_reset
void xmc_nand_reset(xmc_class_bank_type xmc_bank)
xmc nand flash registers reset
Definition: at32f403_xmc.c:232
xmc_nand_timing_config
void xmc_nand_timing_config(xmc_nand_pccard_timinginit_type *xmc_regular_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_special_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:283
xmc_norsram_default_para_init
void xmc_norsram_default_para_init(xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value.
Definition: at32f403_xmc.c:146
xmc_nor_sram_enable
void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank.
Definition: at32f403_xmc.c:204
xmc_flag_status_get
flag_status xmc_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc flag is set or not.
Definition: at32f403_xmc.c:449
XMC_BANK1
#define XMC_BANK1
Definition: at32f403_xmc.h:722
XMC_BANK2
#define XMC_BANK2
Definition: at32f403_xmc.h:723
XMC_BANK4
#define XMC_BANK4
Definition: at32f403_xmc.h:725
xmc_nand_init_type
xmc nand init structure definition
Definition: at32f403_xmc.h:296
xmc_nand_init_type::ecc_enable
xmc_ecc_enable_type ecc_enable
Definition: at32f403_xmc.h:300
xmc_nand_init_type::delay_time_cycle
uint32_t delay_time_cycle
Definition: at32f403_xmc.h:302
xmc_nand_init_type::nand_bank
xmc_class_bank_type nand_bank
Definition: at32f403_xmc.h:297
xmc_nand_init_type::wait_enable
xmc_nand_pccard_wait_type wait_enable
Definition: at32f403_xmc.h:298
xmc_nand_init_type::ecc_pagesize
xmc_ecc_pagesize_type ecc_pagesize
Definition: at32f403_xmc.h:301
xmc_nand_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:303
xmc_nand_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:299
xmc_nand_pccard_timinginit_type
nand timing parameters xmc
Definition: at32f403_xmc.h:283
xmc_nand_pccard_timinginit_type::class_bank
xmc_class_bank_type class_bank
Definition: at32f403_xmc.h:284
xmc_nand_pccard_timinginit_type::mem_waite_time
uint32_t mem_waite_time
Definition: at32f403_xmc.h:286
xmc_nand_pccard_timinginit_type::mem_hold_time
uint32_t mem_hold_time
Definition: at32f403_xmc.h:287
xmc_nand_pccard_timinginit_type::mem_hiz_time
uint32_t mem_hiz_time
Definition: at32f403_xmc.h:288
xmc_nand_pccard_timinginit_type::mem_setup_time
uint32_t mem_setup_time
Definition: at32f403_xmc.h:285
xmc_norsram_init_type
xmc nor/sram init structure definition
Definition: at32f403_xmc.h:262
xmc_norsram_init_type::wait_signal_enable
xmc_wait_signal_type wait_signal_enable
Definition: at32f403_xmc.h:273
xmc_norsram_init_type::data_addr_multiplex
xmc_data_addr_mux_type data_addr_multiplex
Definition: at32f403_xmc.h:264
xmc_norsram_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:274
xmc_norsram_init_type::burst_mode_enable
xmc_burst_access_mode_type burst_mode_enable
Definition: at32f403_xmc.h:267
xmc_norsram_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:266
xmc_norsram_init_type::device
xmc_memory_type device
Definition: at32f403_xmc.h:265
xmc_norsram_init_type::wait_signal_lv
xmc_wait_signal_polarity_type wait_signal_lv
Definition: at32f403_xmc.h:269
xmc_norsram_init_type::wrapped_mode_enable
xmc_wrap_mode_type wrapped_mode_enable
Definition: at32f403_xmc.h:270
xmc_norsram_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:263
xmc_norsram_init_type::write_burst_syn
xmc_write_burst_type write_burst_syn
Definition: at32f403_xmc.h:275
xmc_norsram_init_type::asynwait_enable
xmc_asyn_wait_type asynwait_enable
Definition: at32f403_xmc.h:268
xmc_norsram_init_type::wait_signal_config
xmc_wait_timing_type wait_signal_config
Definition: at32f403_xmc.h:271
xmc_norsram_init_type::write_enable
xmc_write_operation_type write_enable
Definition: at32f403_xmc.h:272
xmc_norsram_timing_init_type
nor/sram banks timing parameters
Definition: at32f403_xmc.h:246
xmc_norsram_timing_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:248
xmc_norsram_timing_init_type::data_latency_time
uint32_t data_latency_time
Definition: at32f403_xmc.h:254
xmc_norsram_timing_init_type::addr_hold_time
uint32_t addr_hold_time
Definition: at32f403_xmc.h:250
xmc_norsram_timing_init_type::bus_latency_time
uint32_t bus_latency_time
Definition: at32f403_xmc.h:252
xmc_norsram_timing_init_type::addr_setup_time
uint32_t addr_setup_time
Definition: at32f403_xmc.h:249
xmc_norsram_timing_init_type::mode
xmc_access_mode_type mode
Definition: at32f403_xmc.h:255
xmc_norsram_timing_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:247
xmc_norsram_timing_init_type::clk_psc
uint32_t clk_psc
Definition: at32f403_xmc.h:253
xmc_norsram_timing_init_type::data_setup_time
uint32_t data_setup_time
Definition: at32f403_xmc.h:251
xmc_pccard_init_type
xmc pccard init structure definition
Definition: at32f403_xmc.h:311
xmc_pccard_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:314
xmc_pccard_init_type::enable_wait
xmc_nand_pccard_wait_type enable_wait
Definition: at32f403_xmc.h:312
xmc_pccard_init_type::delay_time_cr
uint32_t delay_time_cr
Definition: at32f403_xmc.h:313
at32f403_conf.h
at32f403 config header file


AT32F403 Firmwary Library: at32f403_xmc.h Source File

  • libraries
  • drivers
  • inc
at32f403_xmc.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_XMC_H
27#define __AT32F403_XMC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* Includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
52typedef enum
53{
54 XMC_DATA_ADDR_MUX_DISABLE = 0x00000000,
55 XMC_DATA_ADDR_MUX_ENABLE = 0x00000002
56} xmc_data_addr_mux_type;
57
61typedef enum
62{
63 XMC_BURST_MODE_DISABLE = 0x00000000,
64 XMC_BURST_MODE_ENABLE = 0x00000100
65} xmc_burst_access_mode_type;
66
70typedef enum
71{
72 XMC_ASYN_WAIT_DISABLE = 0x00000000,
73 XMC_ASYN_WAIT_ENABLE = 0x00008000
74} xmc_asyn_wait_type;
75
79typedef enum
80{
81 XMC_WRAPPED_MODE_DISABLE = 0x00000000,
82 XMC_WRAPPED_MODE_ENABLE = 0x00000400
83} xmc_wrap_mode_type;
84
88typedef enum
89{
90 XMC_WRITE_OPERATION_DISABLE = 0x00000000,
91 XMC_WRITE_OPERATION_ENABLE = 0x00001000
92} xmc_write_operation_type;
93
97typedef enum
98{
99 XMC_WAIT_SIGNAL_DISABLE = 0x00000000,
100 XMC_WAIT_SIGNAL_ENABLE = 0x00002000
101} xmc_wait_signal_type;
102
106typedef enum
107{
108 XMC_WRITE_BURST_SYN_DISABLE = 0x00000000,
109 XMC_WRITE_BURST_SYN_ENABLE = 0x00080000
110} xmc_write_burst_type;
111
115typedef enum
116{
117 XMC_WRITE_TIMING_DISABLE = 0x00000000,
118 XMC_WRITE_TIMING_ENABLE = 0x00004000
119} xmc_extended_mode_type;
120
124typedef enum
125{
126 XMC_WAIT_OPERATION_DISABLE = 0x00000000,
127 XMC_WAIT_OPERATION_ENABLE = 0x00000002
128} xmc_nand_pccard_wait_type;
129
133typedef enum
134{
135 XMC_ECC_OPERATION_DISABLE = 0x00000000,
136 XMC_ECC_OPERATION_ENABLE = 0x00000040
137} xmc_ecc_enable_type;
138
142typedef enum
143{
144 XMC_BANK1_NOR_SRAM1 = 0x00000000,
145 XMC_BANK1_NOR_SRAM2 = 0x00000001,
146 XMC_BANK1_NOR_SRAM3 = 0x00000002,
147 XMC_BANK1_NOR_SRAM4 = 0x00000003
148} xmc_nor_sram_subbank_type;
149
153typedef enum
154{
155 XMC_BANK2_NAND = 0x00000000,
156 XMC_BANK3_NAND = 0x00000001,
157 XMC_BANK4_PCCARD = 0x00000002,
158} xmc_class_bank_type;
159
163typedef enum
164{
165 XMC_DEVICE_SRAM = 0x00000000,
166 XMC_DEVICE_PSRAM = 0x00000004,
167 XMC_DEVICE_NOR = 0x00000008
168} xmc_memory_type;
169
173typedef enum
174{
175 XMC_BUSTYPE_8_BITS = 0x00000000,
176 XMC_BUSTYPE_16_BITS = 0x00000010
177} xmc_data_width_type;
178
182typedef enum
183{
184 XMC_WAIT_SIGNAL_LEVEL_LOW = 0x00000000,
185 XMC_WAIT_SIGNAL_LEVEL_HIGH = 0x00000200
186} xmc_wait_signal_polarity_type;
187
191typedef enum
192{
193 XMC_WAIT_SIGNAL_SYN_BEFORE = 0x00000000,
194 XMC_WAIT_SIGNAL_SYN_DURING = 0x00000800
195} xmc_wait_timing_type;
196
200typedef enum
201{
202 XMC_ACCESS_MODE_A = 0x00000000,
203 XMC_ACCESS_MODE_B = 0x10000000,
204 XMC_ACCESS_MODE_C = 0x20000000,
205 XMC_ACCESS_MODE_D = 0x30000000
206} xmc_access_mode_type;
207
211typedef enum
212{
213 XMC_ECC_PAGESIZE_256_BYTES = 0x00000000,
214 XMC_ECC_PAGESIZE_512_BYTES = 0x00020000,
215 XMC_ECC_PAGESIZE_1024_BYTES = 0x00040000,
216 XMC_ECC_PAGESIZE_2048_BYTES = 0x00060000,
217 XMC_ECC_PAGESIZE_4096_BYTES = 0x00080000,
218 XMC_ECC_PAGESIZE_8192_BYTES = 0x000A0000
219} xmc_ecc_pagesize_type;
220
224typedef enum
225{
226 XMC_INT_RISING_EDGE = 0x00000008,
227 XMC_INT_LEVEL = 0x00000010,
228 XMC_INT_FALLING_EDGE = 0x00000020
229} xmc_interrupt_sources_type;
230
234typedef enum
235{
236 XMC_RISINGEDGE_FLAG = 0x00000001,
237 XMC_LEVEL_FLAG = 0x00000002,
238 XMC_FALLINGEDGE_FLAG = 0x00000004,
239 XMC_FEMPT_FLAG = 0x00000040
240} xmc_interrupt_flag_type;
241
245typedef struct
246{
247 xmc_nor_sram_subbank_type subbank;
248 xmc_extended_mode_type write_timing_enable;
249 uint32_t addr_setup_time;
250 uint32_t addr_hold_time;
251 uint32_t data_setup_time;
252 uint32_t bus_latency_time;
253 uint32_t clk_psc;
254 uint32_t data_latency_time;
255 xmc_access_mode_type mode;
256} xmc_norsram_timing_init_type;
257
261typedef struct
262{
263 xmc_nor_sram_subbank_type subbank;
264 xmc_data_addr_mux_type data_addr_multiplex;
265 xmc_memory_type device;
266 xmc_data_width_type bus_type;
267 xmc_burst_access_mode_type burst_mode_enable;
268 xmc_asyn_wait_type asynwait_enable;
269 xmc_wait_signal_polarity_type wait_signal_lv;
270 xmc_wrap_mode_type wrapped_mode_enable;
271 xmc_wait_timing_type wait_signal_config;
272 xmc_write_operation_type write_enable;
273 xmc_wait_signal_type wait_signal_enable;
274 xmc_extended_mode_type write_timing_enable;
275 xmc_write_burst_type write_burst_syn;
276} xmc_norsram_init_type;
277
282typedef struct
283{
284 xmc_class_bank_type class_bank;
285 uint32_t mem_setup_time;
286 uint32_t mem_waite_time;
287 uint32_t mem_hold_time;
288 uint32_t mem_hiz_time;
289} xmc_nand_pccard_timinginit_type;
290
295typedef struct
296{
297 xmc_class_bank_type nand_bank;
298 xmc_nand_pccard_wait_type wait_enable;
299 xmc_data_width_type bus_type;
300 xmc_ecc_enable_type ecc_enable;
301 xmc_ecc_pagesize_type ecc_pagesize;
302 uint32_t delay_time_cycle;
303 uint32_t delay_time_ar;
304} xmc_nand_init_type;
305
310typedef struct
311{
312 xmc_nand_pccard_wait_type enable_wait;
313 uint32_t delay_time_cr;
314 uint32_t delay_time_ar;
315} xmc_pccard_init_type;
316
317typedef struct
318{
322 union
323 {
324 __IO uint32_t bk1ctrl;
325 struct
326 {
327 __IO uint32_t en : 1; /* [0] */
328 __IO uint32_t admuxen : 1; /* [1] */
329 __IO uint32_t dev : 2; /* [3:2] */
330 __IO uint32_t extmdbw : 2; /* [5:4] */
331 __IO uint32_t noren : 1; /* [6] */
332 __IO uint32_t reserved1 : 1; /* [7] */
333 __IO uint32_t syncben : 1; /* [8] */
334 __IO uint32_t nwpol : 1; /* [9] */
335 __IO uint32_t wrapen : 1; /* [10] */
336 __IO uint32_t nwtcfg : 1; /* [11] */
337 __IO uint32_t wen : 1; /* [12] */
338 __IO uint32_t nwsen : 1; /* [13] */
339 __IO uint32_t rwtd : 1; /* [14] */
340 __IO uint32_t nwasen : 1; /* [15] */
341 __IO uint32_t crpgs : 3; /* [18:16] */
342 __IO uint32_t mwmc : 1; /* [19] */
343 __IO uint32_t reserved2 : 12;/* [31:20] */
344 } bk1ctrl_bit;
345 };
346
350 union
351 {
352 __IO uint32_t bk1tmg;
353 struct
354 {
355 __IO uint32_t addrst : 4; /* [3:0] */
356 __IO uint32_t addrht : 4; /* [7:4] */
357 __IO uint32_t dtst : 8; /* [15:8] */
358 __IO uint32_t buslat : 4; /* [19:16] */
359 __IO uint32_t clkpsc : 4; /* [23:20] */
360 __IO uint32_t dtlat : 4; /* [27:24] */
361 __IO uint32_t asyncm : 2; /* [29:28] */
362 __IO uint32_t reserved1 : 2; /* [31:30] */
363 } bk1tmg_bit;
364 };
365
366} xmc_bank1_ctrl_tmg_reg_type;
367
368typedef struct
369{
373 union
374 {
375 __IO uint32_t bk1tmgwr;
376 struct
377 {
378 __IO uint32_t addrst : 4; /* [3:0] */
379 __IO uint32_t addrht : 4; /* [7:4] */
380 __IO uint32_t dtst : 8; /* [15:8] */
381 __IO uint32_t buslat : 4; /* [19:16] */
382 __IO uint32_t reserved1 : 8; /* [27:20] */
383 __IO uint32_t asyncm : 2; /* [29:28] */
384 __IO uint32_t reserved2 : 2; /* [31:30] */
385 } bk1tmgwr_bit;
386 };
387
391 __IO uint32_t reserved1;
392
393} xmc_bank1_tmgwr_reg_type;
394
398typedef struct
399{
403 xmc_bank1_ctrl_tmg_reg_type ctrl_tmg_group[4];
404
408 __IO uint32_t reserved1[57];
409
413 xmc_bank1_tmgwr_reg_type tmgwr_group[4];
414
418 __IO uint32_t reserved2[63];
419
423 union
424 {
425 __IO uint32_t ext[4];
426 struct
427 {
428 __IO uint32_t buslatw2w : 8; /* [7:0] */
429 __IO uint32_t buslatr2r : 8; /* [15:8] */
430 __IO uint32_t reserved1 : 16;/* [31:16] */
431 } ext_bit[4];
432 };
433
434} xmc_bank1_type;
435
439typedef struct
440{
444 union
445 {
446 __IO uint32_t bk2ctrl;
447 struct
448 {
449 __IO uint32_t reserved1 : 1; /* [0] */
450 __IO uint32_t nwen : 1; /* [1] */
451 __IO uint32_t en : 1; /* [2] */
452 __IO uint32_t dev : 1; /* [3] */
453 __IO uint32_t extmdbw : 2; /* [5:4] */
454 __IO uint32_t eccen : 1; /* [6] */
455 __IO uint32_t reserved2 : 2; /* [8:7] */
456 __IO uint32_t tcr : 4; /* [12:9] */
457 __IO uint32_t tar : 4; /* [16:13] */
458 __IO uint32_t eccpgs : 3; /* [19:17] */
459 __IO uint32_t reserved3 : 12;/* [31:20] */
460 } bk2ctrl_bit;
461 };
462
466 union
467 {
468 __IO uint32_t bk2is;
469 struct
470 {
471 __IO uint32_t res : 1; /* [0] */
472 __IO uint32_t hls : 1; /* [1] */
473 __IO uint32_t fes : 1; /* [2] */
474 __IO uint32_t reien : 1; /* [3] */
475 __IO uint32_t hlien : 1; /* [4] */
476 __IO uint32_t feien : 1; /* [5] */
477 __IO uint32_t fifoe : 1; /* [6] */
478 __IO uint32_t reserved1 : 25;/* [31:7] */
479 } bk2is_bit;
480 };
481
485 union
486 {
487 __IO uint32_t bk2tmgmem;
488 struct
489 {
490 __IO uint32_t cmst : 8; /* [7:0] */
491 __IO uint32_t cmwt : 8; /* [15:8] */
492 __IO uint32_t cmht : 8; /* [23:16] */
493 __IO uint32_t cmdhizt : 8; /* [31:24] */
494 } bk2tmgmem_bit;
495 };
496
500 union
501 {
502 __IO uint32_t bk2tmgatt;
503 struct
504 {
505 __IO uint32_t amst : 8; /* [7:0] */
506 __IO uint32_t amwt : 8; /* [15:8] */
507 __IO uint32_t amht : 8; /* [23:16] */
508 __IO uint32_t amdhizt : 8; /* [31:24] */
509 } bk2tmgatt_bit;
510 };
511
515 __IO uint32_t reserved1;
516
520 union
521 {
522 __IO uint32_t bk2ecc;
523 struct
524 {
525 __IO uint32_t ecc : 32; /* [31:0] */
526 } bk2ecc_bit;
527 };
528
529} xmc_bank2_type;
530
534typedef struct
535{
539 union
540 {
541 __IO uint32_t bk3ctrl;
542 struct
543 {
544 __IO uint32_t reserved1 : 1; /* [0] */
545 __IO uint32_t nwen : 1; /* [1] */
546 __IO uint32_t en : 1; /* [2] */
547 __IO uint32_t dev : 1; /* [3] */
548 __IO uint32_t extmdbw : 2; /* [5:4] */
549 __IO uint32_t eccen : 1; /* [6] */
550 __IO uint32_t reserved2 : 2; /* [8:7] */
551 __IO uint32_t tcr : 4; /* [12:9] */
552 __IO uint32_t tar : 4; /* [16:13] */
553 __IO uint32_t eccpgs : 3; /* [19:17] */
554 __IO uint32_t reserved3 : 12;/* [31:20] */
555 } bk3ctrl_bit;
556 };
557
561 union
562 {
563 __IO uint32_t bk3is;
564 struct
565 {
566 __IO uint32_t res : 1; /* [0] */
567 __IO uint32_t hls : 1; /* [1] */
568 __IO uint32_t fes : 1; /* [2] */
569 __IO uint32_t reien : 1; /* [3] */
570 __IO uint32_t hlien : 1; /* [4] */
571 __IO uint32_t feien : 1; /* [5] */
572 __IO uint32_t fifoe : 1; /* [6] */
573 __IO uint32_t reserved1 : 25;/* [31:7] */
574 } bk3is_bit;
575 };
576
580 union
581 {
582 __IO uint32_t bk3tmgmem;
583 struct
584 {
585 __IO uint32_t cmst : 8; /* [7:0] */
586 __IO uint32_t cmwt : 8; /* [15:8] */
587 __IO uint32_t cmht : 8; /* [23:16] */
588 __IO uint32_t cmdhizt : 8; /* [31:24] */
589 } bk3tmgmem_bit;
590 };
591
595 union
596 {
597 __IO uint32_t bk3tmgatt;
598 struct
599 {
600 __IO uint32_t amst : 8; /* [7:0] */
601 __IO uint32_t amwt : 8; /* [15:8] */
602 __IO uint32_t amht : 8; /* [23:16] */
603 __IO uint32_t amdhizt : 8; /* [31:24] */
604 } bk3tmgatt_bit;
605 };
606
610 __IO uint32_t reserved1;
611
615 union
616 {
617 __IO uint32_t bk3ecc;
618 struct
619 {
620 __IO uint32_t ecc : 32; /* [31:0] */
621 } bk3ecc_bit;
622 };
623} xmc_bank3_type;
624
628typedef struct
629{
630
634 union
635 {
636 __IO uint32_t bk4ctrl;
637 struct
638 {
639 __IO uint32_t reserved1 : 1; /* [0] */
640 __IO uint32_t nwen : 1; /* [1] */
641 __IO uint32_t en : 1; /* [2] */
642 __IO uint32_t dev : 1; /* [3] */
643 __IO uint32_t extmdbw : 2; /* [5:4] */
644 __IO uint32_t eccen : 1; /* [6] */
645 __IO uint32_t reserved2 : 2; /* [8:7] */
646 __IO uint32_t tcr : 4; /* [12:9] */
647 __IO uint32_t tar : 4; /* [16:13] */
648 __IO uint32_t eccpgs : 3; /* [19:17] */
649 __IO uint32_t reserved3 : 12;/* [31:20] */
650 } bk4ctrl_bit;
651 };
652
656 union
657 {
658 __IO uint32_t bk4is;
659 struct
660 {
661 __IO uint32_t res : 1; /* [0] */
662 __IO uint32_t hls : 1; /* [1] */
663 __IO uint32_t fes : 1; /* [2] */
664 __IO uint32_t reien : 1; /* [3] */
665 __IO uint32_t hlien : 1; /* [4] */
666 __IO uint32_t feien : 1; /* [5] */
667 __IO uint32_t fifoe : 1; /* [6] */
668 __IO uint32_t reserved1 : 25;/* [31:7] */
669 } bk4is_bit;
670 };
671
675 union
676 {
677 __IO uint32_t bk4tmgmem;
678 struct
679 {
680 __IO uint32_t cmst : 8; /* [7:0] */
681 __IO uint32_t cmwt : 8; /* [15:8] */
682 __IO uint32_t cmht : 8; /* [23:16] */
683 __IO uint32_t cmdhizt : 8; /* [31:24] */
684 } bk4tmgmem_bit;
685 };
686
690 union
691 {
692 __IO uint32_t bk4tmgatt;
693 struct
694 {
695 __IO uint32_t amst : 8; /* [7:0] */
696 __IO uint32_t amwt : 8; /* [15:8] */
697 __IO uint32_t amht : 8; /* [23:16] */
698 __IO uint32_t amdhizt : 8; /* [31:24] */
699 } bk4tmgatt_bit;
700 };
701
705 union
706 {
707 __IO uint32_t bk4tmgio;
708 struct
709 {
710 __IO uint32_t iost : 8; /* [7:0] */
711 __IO uint32_t iowt : 8; /* [15:8] */
712 __IO uint32_t ioht : 8; /* [23:16] */
713 __IO uint32_t iohizt : 8; /* [31:24] */
714 } bk4tmgio_bit;
715 };
716} xmc_bank4_type;
717
722#define XMC_BANK1 ((xmc_bank1_type *) XMC_BANK1_REG_BASE)
723#define XMC_BANK2 ((xmc_bank2_type *) XMC_BANK2_REG_BASE)
724#define XMC_BANK3 ((xmc_bank3_type *) XMC_BANK3_REG_BASE)
725#define XMC_BANK4 ((xmc_bank4_type *) XMC_BANK4_REG_BASE)
726
731void xmc_nor_sram_reset(xmc_nor_sram_subbank_type xmc_subbank);
732void xmc_nor_sram_init(xmc_norsram_init_type* xmc_norsram_init_struct);
733void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type* xmc_rw_timing_struct,
734 xmc_norsram_timing_init_type* xmc_w_timing_struct);
735void xmc_norsram_default_para_init(xmc_norsram_init_type* xmc_nor_sram_init_struct);
736void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type* xmc_rw_timing_struct,
737 xmc_norsram_timing_init_type* xmc_w_timing_struct);
738void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state);
739void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing);
740void xmc_nand_reset(xmc_class_bank_type xmc_bank);
741void xmc_nand_init(xmc_nand_init_type* xmc_nand_init_struct);
742void xmc_nand_timing_config(xmc_nand_pccard_timinginit_type* xmc_common_spacetiming_struct,
743 xmc_nand_pccard_timinginit_type* xmc_attribute_spacetiming_struct);
744void xmc_nand_default_para_init(xmc_nand_init_type* xmc_nand_init_struct);
745void xmc_nand_timing_default_para_init(xmc_nand_pccard_timinginit_type* xmc_common_spacetiming_struct,
746 xmc_nand_pccard_timinginit_type* xmc_attribute_spacetiming_struct);
747void xmc_nand_enable(xmc_class_bank_type xmc_bank, confirm_state new_state);
748void xmc_nand_ecc_enable(xmc_class_bank_type xmc_bank, confirm_state new_state);
749uint32_t xmc_ecc_get(xmc_class_bank_type xmc_bank);
750void xmc_interrupt_enable(xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state);
751 flag_status xmc_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag);
752 flag_status xmc_interrupt_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag);
753void xmc_flag_clear(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag);
754void xmc_pccard_reset(void);
755void xmc_pccard_init(xmc_pccard_init_type* xmc_pccard_init_struct);
756void xmc_pccard_timing_config(xmc_nand_pccard_timinginit_type* xmc_common_spacetiming_struct,
757 xmc_nand_pccard_timinginit_type* xmc_attribute_spacetiming_struct,
758 xmc_nand_pccard_timinginit_type* xmc_iospace_timing_struct);
759void xmc_pccard_default_para_init(xmc_pccard_init_type* xmc_pccard_init_struct);
760void xmc_pccard_timing_default_para_init(xmc_nand_pccard_timinginit_type* xmc_common_spacetiming_struct,
761 xmc_nand_pccard_timinginit_type* xmc_attribute_spacetiming_struct,
762 xmc_nand_pccard_timinginit_type* xmc_iospace_timing_struct);
763void xmc_pccard_enable(confirm_state new_state);
764
777#ifdef __cplusplus
778}
779#endif
780
781#endif
at32f403.h
at32f403 header file
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
flag_status
flag_status
flag status
Definition: at32f403.h:304
xmc_ecc_get
uint32_t xmc_ecc_get(xmc_class_bank_type xmc_bank)
return the error correction code register value.
Definition: at32f403_xmc.c:389
xmc_pccard_enable
void xmc_pccard_enable(confirm_state new_state)
enable or disable the pccard memory bank.
Definition: at32f403_xmc.c:657
xmc_pccard_timing_default_para_init
void xmc_pccard_timing_default_para_init(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
fill each xmc_common_spacetiming_struct/xmc_attribute_spacetiming_struct and xmc_iospace_timing_struc...
Definition: at32f403_xmc.c:632
xmc_nand_init
void xmc_nand_init(xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:252
xmc_pccard_init
void xmc_pccard_init(xmc_pccard_init_type *xmc_pccard_init_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_pccard_init_struct.
Definition: at32f403_xmc.c:558
xmc_flag_clear
void xmc_flag_clear(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
clear the xmc's pending flags.
Definition: at32f403_xmc.c:525
xmc_nand_timing_default_para_init
void xmc_nand_timing_default_para_init(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default ...
Definition: at32f403_xmc.c:333
xmc_interrupt_enable
void xmc_interrupt_enable(xmc_class_bank_type xmc_bank, xmc_interrupt_sources_type xmc_int, confirm_state new_state)
enable or disable the specified xmc interrupts.
Definition: at32f403_xmc.c:416
xmc_nor_sram_reset
void xmc_nor_sram_reset(xmc_nor_sram_subbank_type xmc_subbank)
xmc nor or sram registers reset
Definition: at32f403_xmc.c:50
xmc_nor_sram_init
void xmc_nor_sram_init(xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.
Definition: at32f403_xmc.c:74
xmc_nand_ecc_enable
void xmc_nand_ecc_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature.
Definition: at32f403_xmc.c:373
xmc_nand_default_para_init
void xmc_nand_default_para_init(xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value.
Definition: at32f403_xmc.c:313
xmc_norsram_timing_default_para_init
void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.
Definition: at32f403_xmc.c:172
xmc_pccard_default_para_init
void xmc_pccard_default_para_init(xmc_pccard_init_type *xmc_pccard_init_struct)
fill each xmc_pccard_init_struct member with its default value.
Definition: at32f403_xmc.c:610
xmc_ext_timing_config
void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase.
Definition: at32f403_xmc.c:219
xmc_pccard_timing_config
void xmc_pccard_timing_config(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_iospace_timing_struct)
initialize the xmc pccard bank according to the specified parameters in the xmc_common_spacetiming_st...
Definition: at32f403_xmc.c:582
xmc_pccard_reset
void xmc_pccard_reset(void)
xmc pc card registers reset
Definition: at32f403_xmc.c:540
xmc_nor_sram_timing_config
void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct a...
Definition: at32f403_xmc.c:109
xmc_nand_timing_config
void xmc_nand_timing_config(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:283
xmc_interrupt_flag_status_get
flag_status xmc_interrupt_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc interrupt flag is set or not.
Definition: at32f403_xmc.c:483
xmc_nand_enable
void xmc_nand_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank.
Definition: at32f403_xmc.c:356
xmc_nand_reset
void xmc_nand_reset(xmc_class_bank_type xmc_bank)
xmc nand flash registers reset
Definition: at32f403_xmc.c:232
xmc_norsram_default_para_init
void xmc_norsram_default_para_init(xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value.
Definition: at32f403_xmc.c:146
xmc_nor_sram_enable
void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank.
Definition: at32f403_xmc.c:204
xmc_flag_status_get
flag_status xmc_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc flag is set or not.
Definition: at32f403_xmc.c:449
xmc_wait_signal_type
xmc_wait_signal_type
xmc wait signal type
Definition: at32f403_xmc.h:98
xmc_wait_timing_type
xmc_wait_timing_type
xmc wait timing type
Definition: at32f403_xmc.h:192
xmc_write_operation_type
xmc_write_operation_type
xmc write operation type
Definition: at32f403_xmc.h:89
xmc_write_burst_type
xmc_write_burst_type
xmc write burst type
Definition: at32f403_xmc.h:107
xmc_burst_access_mode_type
xmc_burst_access_mode_type
xmc burst access mode type
Definition: at32f403_xmc.h:62
xmc_class_bank_type
xmc_class_bank_type
xmc class bank type
Definition: at32f403_xmc.h:154
xmc_data_addr_mux_type
xmc_data_addr_mux_type
xmc data address bus multiplexing type
Definition: at32f403_xmc.h:53
xmc_interrupt_sources_type
xmc_interrupt_sources_type
xmc interrupt sources type
Definition: at32f403_xmc.h:225
xmc_data_width_type
xmc_data_width_type
xmc data width type
Definition: at32f403_xmc.h:174
xmc_extended_mode_type
xmc_extended_mode_type
xmc extended mode type
Definition: at32f403_xmc.h:116
xmc_nor_sram_subbank_type
xmc_nor_sram_subbank_type
xmc nor/sram bank type
Definition: at32f403_xmc.h:143
xmc_interrupt_flag_type
xmc_interrupt_flag_type
xmc interrupt flag type
Definition: at32f403_xmc.h:235
xmc_asyn_wait_type
xmc_asyn_wait_type
xmc asynchronous wait type
Definition: at32f403_xmc.h:71
xmc_nand_pccard_wait_type
xmc_nand_pccard_wait_type
xmc nand wait type
Definition: at32f403_xmc.h:125
xmc_wrap_mode_type
xmc_wrap_mode_type
xmc wrapped mode type
Definition: at32f403_xmc.h:80
xmc_ecc_pagesize_type
xmc_ecc_pagesize_type
xmc ecc page size type
Definition: at32f403_xmc.h:212
xmc_access_mode_type
xmc_access_mode_type
xmc access mode type
Definition: at32f403_xmc.h:201
xmc_ecc_enable_type
xmc_ecc_enable_type
xmc ecc enable type
Definition: at32f403_xmc.h:134
xmc_wait_signal_polarity_type
xmc_wait_signal_polarity_type
xmc wait signal polarity type
Definition: at32f403_xmc.h:183
xmc_memory_type
xmc_memory_type
xmc memory type
Definition: at32f403_xmc.h:164
XMC_WAIT_SIGNAL_DISABLE
@ XMC_WAIT_SIGNAL_DISABLE
Definition: at32f403_xmc.h:99
XMC_WAIT_SIGNAL_ENABLE
@ XMC_WAIT_SIGNAL_ENABLE
Definition: at32f403_xmc.h:100
XMC_WAIT_SIGNAL_SYN_DURING
@ XMC_WAIT_SIGNAL_SYN_DURING
Definition: at32f403_xmc.h:194
XMC_WAIT_SIGNAL_SYN_BEFORE
@ XMC_WAIT_SIGNAL_SYN_BEFORE
Definition: at32f403_xmc.h:193
XMC_WRITE_OPERATION_DISABLE
@ XMC_WRITE_OPERATION_DISABLE
Definition: at32f403_xmc.h:90
XMC_WRITE_OPERATION_ENABLE
@ XMC_WRITE_OPERATION_ENABLE
Definition: at32f403_xmc.h:91
XMC_WRITE_BURST_SYN_ENABLE
@ XMC_WRITE_BURST_SYN_ENABLE
Definition: at32f403_xmc.h:109
XMC_WRITE_BURST_SYN_DISABLE
@ XMC_WRITE_BURST_SYN_DISABLE
Definition: at32f403_xmc.h:108
XMC_BURST_MODE_DISABLE
@ XMC_BURST_MODE_DISABLE
Definition: at32f403_xmc.h:63
XMC_BURST_MODE_ENABLE
@ XMC_BURST_MODE_ENABLE
Definition: at32f403_xmc.h:64
XMC_BANK4_PCCARD
@ XMC_BANK4_PCCARD
Definition: at32f403_xmc.h:157
XMC_BANK3_NAND
@ XMC_BANK3_NAND
Definition: at32f403_xmc.h:156
XMC_BANK2_NAND
@ XMC_BANK2_NAND
Definition: at32f403_xmc.h:155
XMC_DATA_ADDR_MUX_DISABLE
@ XMC_DATA_ADDR_MUX_DISABLE
Definition: at32f403_xmc.h:54
XMC_DATA_ADDR_MUX_ENABLE
@ XMC_DATA_ADDR_MUX_ENABLE
Definition: at32f403_xmc.h:55
XMC_INT_LEVEL
@ XMC_INT_LEVEL
Definition: at32f403_xmc.h:227
XMC_INT_RISING_EDGE
@ XMC_INT_RISING_EDGE
Definition: at32f403_xmc.h:226
XMC_INT_FALLING_EDGE
@ XMC_INT_FALLING_EDGE
Definition: at32f403_xmc.h:228
XMC_BUSTYPE_16_BITS
@ XMC_BUSTYPE_16_BITS
Definition: at32f403_xmc.h:176
XMC_BUSTYPE_8_BITS
@ XMC_BUSTYPE_8_BITS
Definition: at32f403_xmc.h:175
XMC_WRITE_TIMING_ENABLE
@ XMC_WRITE_TIMING_ENABLE
Definition: at32f403_xmc.h:118
XMC_WRITE_TIMING_DISABLE
@ XMC_WRITE_TIMING_DISABLE
Definition: at32f403_xmc.h:117
XMC_BANK1_NOR_SRAM1
@ XMC_BANK1_NOR_SRAM1
Definition: at32f403_xmc.h:144
XMC_BANK1_NOR_SRAM4
@ XMC_BANK1_NOR_SRAM4
Definition: at32f403_xmc.h:147
XMC_BANK1_NOR_SRAM3
@ XMC_BANK1_NOR_SRAM3
Definition: at32f403_xmc.h:146
XMC_BANK1_NOR_SRAM2
@ XMC_BANK1_NOR_SRAM2
Definition: at32f403_xmc.h:145
XMC_RISINGEDGE_FLAG
@ XMC_RISINGEDGE_FLAG
Definition: at32f403_xmc.h:236
XMC_FALLINGEDGE_FLAG
@ XMC_FALLINGEDGE_FLAG
Definition: at32f403_xmc.h:238
XMC_LEVEL_FLAG
@ XMC_LEVEL_FLAG
Definition: at32f403_xmc.h:237
XMC_FEMPT_FLAG
@ XMC_FEMPT_FLAG
Definition: at32f403_xmc.h:239
XMC_ASYN_WAIT_ENABLE
@ XMC_ASYN_WAIT_ENABLE
Definition: at32f403_xmc.h:73
XMC_ASYN_WAIT_DISABLE
@ XMC_ASYN_WAIT_DISABLE
Definition: at32f403_xmc.h:72
XMC_WAIT_OPERATION_DISABLE
@ XMC_WAIT_OPERATION_DISABLE
Definition: at32f403_xmc.h:126
XMC_WAIT_OPERATION_ENABLE
@ XMC_WAIT_OPERATION_ENABLE
Definition: at32f403_xmc.h:127
XMC_WRAPPED_MODE_DISABLE
@ XMC_WRAPPED_MODE_DISABLE
Definition: at32f403_xmc.h:81
XMC_WRAPPED_MODE_ENABLE
@ XMC_WRAPPED_MODE_ENABLE
Definition: at32f403_xmc.h:82
XMC_ECC_PAGESIZE_1024_BYTES
@ XMC_ECC_PAGESIZE_1024_BYTES
Definition: at32f403_xmc.h:215
XMC_ECC_PAGESIZE_8192_BYTES
@ XMC_ECC_PAGESIZE_8192_BYTES
Definition: at32f403_xmc.h:218
XMC_ECC_PAGESIZE_4096_BYTES
@ XMC_ECC_PAGESIZE_4096_BYTES
Definition: at32f403_xmc.h:217
XMC_ECC_PAGESIZE_256_BYTES
@ XMC_ECC_PAGESIZE_256_BYTES
Definition: at32f403_xmc.h:213
XMC_ECC_PAGESIZE_2048_BYTES
@ XMC_ECC_PAGESIZE_2048_BYTES
Definition: at32f403_xmc.h:216
XMC_ECC_PAGESIZE_512_BYTES
@ XMC_ECC_PAGESIZE_512_BYTES
Definition: at32f403_xmc.h:214
XMC_ACCESS_MODE_C
@ XMC_ACCESS_MODE_C
Definition: at32f403_xmc.h:204
XMC_ACCESS_MODE_B
@ XMC_ACCESS_MODE_B
Definition: at32f403_xmc.h:203
XMC_ACCESS_MODE_A
@ XMC_ACCESS_MODE_A
Definition: at32f403_xmc.h:202
XMC_ACCESS_MODE_D
@ XMC_ACCESS_MODE_D
Definition: at32f403_xmc.h:205
XMC_ECC_OPERATION_DISABLE
@ XMC_ECC_OPERATION_DISABLE
Definition: at32f403_xmc.h:135
XMC_ECC_OPERATION_ENABLE
@ XMC_ECC_OPERATION_ENABLE
Definition: at32f403_xmc.h:136
XMC_WAIT_SIGNAL_LEVEL_LOW
@ XMC_WAIT_SIGNAL_LEVEL_LOW
Definition: at32f403_xmc.h:184
XMC_WAIT_SIGNAL_LEVEL_HIGH
@ XMC_WAIT_SIGNAL_LEVEL_HIGH
Definition: at32f403_xmc.h:185
XMC_DEVICE_NOR
@ XMC_DEVICE_NOR
Definition: at32f403_xmc.h:167
XMC_DEVICE_PSRAM
@ XMC_DEVICE_PSRAM
Definition: at32f403_xmc.h:166
XMC_DEVICE_SRAM
@ XMC_DEVICE_SRAM
Definition: at32f403_xmc.h:165
xmc_bank1_ctrl_tmg_reg_type
Definition: at32f403_xmc.h:318
xmc_bank1_ctrl_tmg_reg_type::noren
__IO uint32_t noren
Definition: at32f403_xmc.h:331
xmc_bank1_ctrl_tmg_reg_type::en
__IO uint32_t en
Definition: at32f403_xmc.h:327
xmc_bank1_ctrl_tmg_reg_type::nwtcfg
__IO uint32_t nwtcfg
Definition: at32f403_xmc.h:336
xmc_bank1_ctrl_tmg_reg_type::extmdbw
__IO uint32_t extmdbw
Definition: at32f403_xmc.h:330
xmc_bank1_ctrl_tmg_reg_type::addrht
__IO uint32_t addrht
Definition: at32f403_xmc.h:356
xmc_bank1_ctrl_tmg_reg_type::clkpsc
__IO uint32_t clkpsc
Definition: at32f403_xmc.h:359
xmc_bank1_ctrl_tmg_reg_type::wrapen
__IO uint32_t wrapen
Definition: at32f403_xmc.h:335
xmc_bank1_ctrl_tmg_reg_type::buslat
__IO uint32_t buslat
Definition: at32f403_xmc.h:358
xmc_bank1_ctrl_tmg_reg_type::crpgs
__IO uint32_t crpgs
Definition: at32f403_xmc.h:341
xmc_bank1_ctrl_tmg_reg_type::wen
__IO uint32_t wen
Definition: at32f403_xmc.h:337
xmc_bank1_ctrl_tmg_reg_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_xmc.h:343
xmc_bank1_ctrl_tmg_reg_type::admuxen
__IO uint32_t admuxen
Definition: at32f403_xmc.h:328
xmc_bank1_ctrl_tmg_reg_type::syncben
__IO uint32_t syncben
Definition: at32f403_xmc.h:333
xmc_bank1_ctrl_tmg_reg_type::nwsen
__IO uint32_t nwsen
Definition: at32f403_xmc.h:338
xmc_bank1_ctrl_tmg_reg_type::nwpol
__IO uint32_t nwpol
Definition: at32f403_xmc.h:334
xmc_bank1_ctrl_tmg_reg_type::bk1ctrl
__IO uint32_t bk1ctrl
Definition: at32f403_xmc.h:324
xmc_bank1_ctrl_tmg_reg_type::addrst
__IO uint32_t addrst
Definition: at32f403_xmc.h:355
xmc_bank1_ctrl_tmg_reg_type::rwtd
__IO uint32_t rwtd
Definition: at32f403_xmc.h:339
xmc_bank1_ctrl_tmg_reg_type::nwasen
__IO uint32_t nwasen
Definition: at32f403_xmc.h:340
xmc_bank1_ctrl_tmg_reg_type::dev
__IO uint32_t dev
Definition: at32f403_xmc.h:329
xmc_bank1_ctrl_tmg_reg_type::bk1tmg
__IO uint32_t bk1tmg
Definition: at32f403_xmc.h:352
xmc_bank1_ctrl_tmg_reg_type::asyncm
__IO uint32_t asyncm
Definition: at32f403_xmc.h:361
xmc_bank1_ctrl_tmg_reg_type::dtst
__IO uint32_t dtst
Definition: at32f403_xmc.h:357
xmc_bank1_ctrl_tmg_reg_type::dtlat
__IO uint32_t dtlat
Definition: at32f403_xmc.h:360
xmc_bank1_ctrl_tmg_reg_type::mwmc
__IO uint32_t mwmc
Definition: at32f403_xmc.h:342
xmc_bank1_ctrl_tmg_reg_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_xmc.h:332
xmc_bank1_tmgwr_reg_type
Definition: at32f403_xmc.h:369
xmc_bank1_tmgwr_reg_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_xmc.h:384
xmc_bank1_tmgwr_reg_type::buslat
__IO uint32_t buslat
Definition: at32f403_xmc.h:381
xmc_bank1_tmgwr_reg_type::asyncm
__IO uint32_t asyncm
Definition: at32f403_xmc.h:383
xmc_bank1_tmgwr_reg_type::bk1tmgwr
__IO uint32_t bk1tmgwr
Definition: at32f403_xmc.h:375
xmc_bank1_tmgwr_reg_type::addrst
__IO uint32_t addrst
Definition: at32f403_xmc.h:378
xmc_bank1_tmgwr_reg_type::dtst
__IO uint32_t dtst
Definition: at32f403_xmc.h:380
xmc_bank1_tmgwr_reg_type::reserved1
__IO uint32_t reserved1
xmc bank1 reserved register
Definition: at32f403_xmc.h:382
xmc_bank1_tmgwr_reg_type::addrht
__IO uint32_t addrht
Definition: at32f403_xmc.h:379
xmc_bank1_type
xmc bank1 registers
Definition: at32f403_xmc.h:399
xmc_bank1_type::buslatw2w
__IO uint32_t buslatw2w
Definition: at32f403_xmc.h:428
xmc_bank1_type::buslatr2r
__IO uint32_t buslatr2r
Definition: at32f403_xmc.h:429
xmc_bank2_type
xmc bank2 registers
Definition: at32f403_xmc.h:440
xmc_bank2_type::eccen
__IO uint32_t eccen
Definition: at32f403_xmc.h:454
xmc_bank2_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_xmc.h:459
xmc_bank2_type::cmst
__IO uint32_t cmst
Definition: at32f403_xmc.h:490
xmc_bank2_type::ecc
__IO uint32_t ecc
Definition: at32f403_xmc.h:525
xmc_bank2_type::bk2ctrl
__IO uint32_t bk2ctrl
Definition: at32f403_xmc.h:446
xmc_bank2_type::bk2tmgmem
__IO uint32_t bk2tmgmem
Definition: at32f403_xmc.h:487
xmc_bank2_type::eccpgs
__IO uint32_t eccpgs
Definition: at32f403_xmc.h:458
xmc_bank2_type::fes
__IO uint32_t fes
Definition: at32f403_xmc.h:473
xmc_bank2_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_xmc.h:455
xmc_bank2_type::bk2tmgatt
__IO uint32_t bk2tmgatt
Definition: at32f403_xmc.h:502
xmc_bank2_type::amst
__IO uint32_t amst
Definition: at32f403_xmc.h:505
xmc_bank2_type::res
__IO uint32_t res
Definition: at32f403_xmc.h:471
xmc_bank2_type::tar
__IO uint32_t tar
Definition: at32f403_xmc.h:457
xmc_bank2_type::reien
__IO uint32_t reien
Definition: at32f403_xmc.h:474
xmc_bank2_type::cmwt
__IO uint32_t cmwt
Definition: at32f403_xmc.h:491
xmc_bank2_type::hlien
__IO uint32_t hlien
Definition: at32f403_xmc.h:475
xmc_bank2_type::cmdhizt
__IO uint32_t cmdhizt
Definition: at32f403_xmc.h:493
xmc_bank2_type::nwen
__IO uint32_t nwen
Definition: at32f403_xmc.h:450
xmc_bank2_type::amwt
__IO uint32_t amwt
Definition: at32f403_xmc.h:506
xmc_bank2_type::bk2is
__IO uint32_t bk2is
Definition: at32f403_xmc.h:468
xmc_bank2_type::amht
__IO uint32_t amht
Definition: at32f403_xmc.h:507
xmc_bank2_type::bk2ecc
__IO uint32_t bk2ecc
Definition: at32f403_xmc.h:522
xmc_bank2_type::feien
__IO uint32_t feien
Definition: at32f403_xmc.h:476
xmc_bank2_type::amdhizt
__IO uint32_t amdhizt
Definition: at32f403_xmc.h:508
xmc_bank2_type::fifoe
__IO uint32_t fifoe
Definition: at32f403_xmc.h:477
xmc_bank2_type::en
__IO uint32_t en
Definition: at32f403_xmc.h:451
xmc_bank2_type::hls
__IO uint32_t hls
Definition: at32f403_xmc.h:472
xmc_bank2_type::cmht
__IO uint32_t cmht
Definition: at32f403_xmc.h:492
xmc_bank2_type::reserved1
__IO uint32_t reserved1
xmc reserved register, offset:0x70
Definition: at32f403_xmc.h:449
xmc_bank2_type::extmdbw
__IO uint32_t extmdbw
Definition: at32f403_xmc.h:453
xmc_bank2_type::dev
__IO uint32_t dev
Definition: at32f403_xmc.h:452
xmc_bank2_type::tcr
__IO uint32_t tcr
Definition: at32f403_xmc.h:456
xmc_bank3_type
xmc bank3 registers
Definition: at32f403_xmc.h:535
xmc_bank3_type::tcr
__IO uint32_t tcr
Definition: at32f403_xmc.h:551
xmc_bank3_type::feien
__IO uint32_t feien
Definition: at32f403_xmc.h:571
xmc_bank3_type::bk3ecc
__IO uint32_t bk3ecc
Definition: at32f403_xmc.h:617
xmc_bank3_type::cmwt
__IO uint32_t cmwt
Definition: at32f403_xmc.h:586
xmc_bank3_type::fes
__IO uint32_t fes
Definition: at32f403_xmc.h:568
xmc_bank3_type::bk3tmgatt
__IO uint32_t bk3tmgatt
Definition: at32f403_xmc.h:597
xmc_bank3_type::bk3ctrl
__IO uint32_t bk3ctrl
Definition: at32f403_xmc.h:541
xmc_bank3_type::eccen
__IO uint32_t eccen
Definition: at32f403_xmc.h:549
xmc_bank3_type::hls
__IO uint32_t hls
Definition: at32f403_xmc.h:567
xmc_bank3_type::nwen
__IO uint32_t nwen
Definition: at32f403_xmc.h:545
xmc_bank3_type::ecc
__IO uint32_t ecc
Definition: at32f403_xmc.h:620
xmc_bank3_type::tar
__IO uint32_t tar
Definition: at32f403_xmc.h:552
xmc_bank3_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_xmc.h:550
xmc_bank3_type::bk3tmgmem
__IO uint32_t bk3tmgmem
Definition: at32f403_xmc.h:582
xmc_bank3_type::amwt
__IO uint32_t amwt
Definition: at32f403_xmc.h:601
xmc_bank3_type::hlien
__IO uint32_t hlien
Definition: at32f403_xmc.h:570
xmc_bank3_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_xmc.h:554
xmc_bank3_type::reserved1
__IO uint32_t reserved1
xmc reserved register, offset:0x90
Definition: at32f403_xmc.h:544
xmc_bank3_type::en
__IO uint32_t en
Definition: at32f403_xmc.h:546
xmc_bank3_type::res
__IO uint32_t res
Definition: at32f403_xmc.h:566
xmc_bank3_type::cmdhizt
__IO uint32_t cmdhizt
Definition: at32f403_xmc.h:588
xmc_bank3_type::fifoe
__IO uint32_t fifoe
Definition: at32f403_xmc.h:572
xmc_bank3_type::reien
__IO uint32_t reien
Definition: at32f403_xmc.h:569
xmc_bank3_type::dev
__IO uint32_t dev
Definition: at32f403_xmc.h:547
xmc_bank3_type::cmst
__IO uint32_t cmst
Definition: at32f403_xmc.h:585
xmc_bank3_type::amst
__IO uint32_t amst
Definition: at32f403_xmc.h:600
xmc_bank3_type::amht
__IO uint32_t amht
Definition: at32f403_xmc.h:602
xmc_bank3_type::cmht
__IO uint32_t cmht
Definition: at32f403_xmc.h:587
xmc_bank3_type::amdhizt
__IO uint32_t amdhizt
Definition: at32f403_xmc.h:603
xmc_bank3_type::eccpgs
__IO uint32_t eccpgs
Definition: at32f403_xmc.h:553
xmc_bank3_type::extmdbw
__IO uint32_t extmdbw
Definition: at32f403_xmc.h:548
xmc_bank3_type::bk3is
__IO uint32_t bk3is
Definition: at32f403_xmc.h:563
xmc_bank4_type
xmc bank4 registers
Definition: at32f403_xmc.h:629
xmc_bank4_type::tcr
__IO uint32_t tcr
Definition: at32f403_xmc.h:646
xmc_bank4_type::dev
__IO uint32_t dev
Definition: at32f403_xmc.h:642
xmc_bank4_type::nwen
__IO uint32_t nwen
Definition: at32f403_xmc.h:640
xmc_bank4_type::reien
__IO uint32_t reien
Definition: at32f403_xmc.h:664
xmc_bank4_type::hls
__IO uint32_t hls
Definition: at32f403_xmc.h:662
xmc_bank4_type::feien
__IO uint32_t feien
Definition: at32f403_xmc.h:666
xmc_bank4_type::amht
__IO uint32_t amht
Definition: at32f403_xmc.h:697
xmc_bank4_type::cmht
__IO uint32_t cmht
Definition: at32f403_xmc.h:682
xmc_bank4_type::bk4tmgatt
__IO uint32_t bk4tmgatt
Definition: at32f403_xmc.h:692
xmc_bank4_type::cmst
__IO uint32_t cmst
Definition: at32f403_xmc.h:680
xmc_bank4_type::en
__IO uint32_t en
Definition: at32f403_xmc.h:641
xmc_bank4_type::ioht
__IO uint32_t ioht
Definition: at32f403_xmc.h:712
xmc_bank4_type::bk4tmgio
__IO uint32_t bk4tmgio
Definition: at32f403_xmc.h:707
xmc_bank4_type::iowt
__IO uint32_t iowt
Definition: at32f403_xmc.h:711
xmc_bank4_type::cmdhizt
__IO uint32_t cmdhizt
Definition: at32f403_xmc.h:683
xmc_bank4_type::reserved3
__IO uint32_t reserved3
Definition: at32f403_xmc.h:649
xmc_bank4_type::iost
__IO uint32_t iost
Definition: at32f403_xmc.h:710
xmc_bank4_type::bk4ctrl
__IO uint32_t bk4ctrl
Definition: at32f403_xmc.h:636
xmc_bank4_type::res
__IO uint32_t res
Definition: at32f403_xmc.h:661
xmc_bank4_type::fifoe
__IO uint32_t fifoe
Definition: at32f403_xmc.h:667
xmc_bank4_type::eccen
__IO uint32_t eccen
Definition: at32f403_xmc.h:644
xmc_bank4_type::reserved1
__IO uint32_t reserved1
Definition: at32f403_xmc.h:639
xmc_bank4_type::amwt
__IO uint32_t amwt
Definition: at32f403_xmc.h:696
xmc_bank4_type::reserved2
__IO uint32_t reserved2
Definition: at32f403_xmc.h:645
xmc_bank4_type::tar
__IO uint32_t tar
Definition: at32f403_xmc.h:647
xmc_bank4_type::cmwt
__IO uint32_t cmwt
Definition: at32f403_xmc.h:681
xmc_bank4_type::hlien
__IO uint32_t hlien
Definition: at32f403_xmc.h:665
xmc_bank4_type::amdhizt
__IO uint32_t amdhizt
Definition: at32f403_xmc.h:698
xmc_bank4_type::amst
__IO uint32_t amst
Definition: at32f403_xmc.h:695
xmc_bank4_type::fes
__IO uint32_t fes
Definition: at32f403_xmc.h:663
xmc_bank4_type::bk4is
__IO uint32_t bk4is
Definition: at32f403_xmc.h:658
xmc_bank4_type::iohizt
__IO uint32_t iohizt
Definition: at32f403_xmc.h:713
xmc_bank4_type::extmdbw
__IO uint32_t extmdbw
Definition: at32f403_xmc.h:643
xmc_bank4_type::eccpgs
__IO uint32_t eccpgs
Definition: at32f403_xmc.h:648
xmc_bank4_type::bk4tmgmem
__IO uint32_t bk4tmgmem
Definition: at32f403_xmc.h:677
xmc_nand_init_type
xmc nand init structure definition
Definition: at32f403_xmc.h:296
xmc_nand_init_type::ecc_enable
xmc_ecc_enable_type ecc_enable
Definition: at32f403_xmc.h:300
xmc_nand_init_type::delay_time_cycle
uint32_t delay_time_cycle
Definition: at32f403_xmc.h:302
xmc_nand_init_type::nand_bank
xmc_class_bank_type nand_bank
Definition: at32f403_xmc.h:297
xmc_nand_init_type::wait_enable
xmc_nand_pccard_wait_type wait_enable
Definition: at32f403_xmc.h:298
xmc_nand_init_type::ecc_pagesize
xmc_ecc_pagesize_type ecc_pagesize
Definition: at32f403_xmc.h:301
xmc_nand_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:303
xmc_nand_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:299
xmc_nand_pccard_timinginit_type
nand timing parameters xmc
Definition: at32f403_xmc.h:283
xmc_nand_pccard_timinginit_type::class_bank
xmc_class_bank_type class_bank
Definition: at32f403_xmc.h:284
xmc_nand_pccard_timinginit_type::mem_waite_time
uint32_t mem_waite_time
Definition: at32f403_xmc.h:286
xmc_nand_pccard_timinginit_type::mem_hold_time
uint32_t mem_hold_time
Definition: at32f403_xmc.h:287
xmc_nand_pccard_timinginit_type::mem_hiz_time
uint32_t mem_hiz_time
Definition: at32f403_xmc.h:288
xmc_nand_pccard_timinginit_type::mem_setup_time
uint32_t mem_setup_time
Definition: at32f403_xmc.h:285
xmc_norsram_init_type
xmc nor/sram init structure definition
Definition: at32f403_xmc.h:262
xmc_norsram_init_type::wait_signal_enable
xmc_wait_signal_type wait_signal_enable
Definition: at32f403_xmc.h:273
xmc_norsram_init_type::data_addr_multiplex
xmc_data_addr_mux_type data_addr_multiplex
Definition: at32f403_xmc.h:264
xmc_norsram_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:274
xmc_norsram_init_type::burst_mode_enable
xmc_burst_access_mode_type burst_mode_enable
Definition: at32f403_xmc.h:267
xmc_norsram_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:266
xmc_norsram_init_type::device
xmc_memory_type device
Definition: at32f403_xmc.h:265
xmc_norsram_init_type::wait_signal_lv
xmc_wait_signal_polarity_type wait_signal_lv
Definition: at32f403_xmc.h:269
xmc_norsram_init_type::wrapped_mode_enable
xmc_wrap_mode_type wrapped_mode_enable
Definition: at32f403_xmc.h:270
xmc_norsram_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:263
xmc_norsram_init_type::write_burst_syn
xmc_write_burst_type write_burst_syn
Definition: at32f403_xmc.h:275
xmc_norsram_init_type::asynwait_enable
xmc_asyn_wait_type asynwait_enable
Definition: at32f403_xmc.h:268
xmc_norsram_init_type::wait_signal_config
xmc_wait_timing_type wait_signal_config
Definition: at32f403_xmc.h:271
xmc_norsram_init_type::write_enable
xmc_write_operation_type write_enable
Definition: at32f403_xmc.h:272
xmc_norsram_timing_init_type
nor/sram banks timing parameters
Definition: at32f403_xmc.h:246
xmc_norsram_timing_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:248
xmc_norsram_timing_init_type::data_latency_time
uint32_t data_latency_time
Definition: at32f403_xmc.h:254
xmc_norsram_timing_init_type::addr_hold_time
uint32_t addr_hold_time
Definition: at32f403_xmc.h:250
xmc_norsram_timing_init_type::bus_latency_time
uint32_t bus_latency_time
Definition: at32f403_xmc.h:252
xmc_norsram_timing_init_type::addr_setup_time
uint32_t addr_setup_time
Definition: at32f403_xmc.h:249
xmc_norsram_timing_init_type::mode
xmc_access_mode_type mode
Definition: at32f403_xmc.h:255
xmc_norsram_timing_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:247
xmc_norsram_timing_init_type::clk_psc
uint32_t clk_psc
Definition: at32f403_xmc.h:253
xmc_norsram_timing_init_type::data_setup_time
uint32_t data_setup_time
Definition: at32f403_xmc.h:251
xmc_pccard_init_type
xmc pccard init structure definition
Definition: at32f403_xmc.h:311
xmc_pccard_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:314
xmc_pccard_init_type::enable_wait
xmc_nand_pccard_wait_type enable_wait
Definition: at32f403_xmc.h:312
xmc_pccard_init_type::delay_time_cr
uint32_t delay_time_cr
Definition: at32f403_xmc.h:313


AT32F403 Firmwary Library: audio_conf.h Source File

  • middlewares
  • usbd_class
  • audio
audio/audio_conf.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_CONF_H
27#define __AUDIO_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
45#define AUDIO_SUPPORT_SPK 1
46#define AUDIO_SUPPORT_MIC 1
47#define AUDIO_SUPPORT_FEEDBACK 1
48
49#define AUDIO_SUPPORT_FREQ_16K 1
50#define AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/
51
52
53#define AUDIO_SUPPORT_FREQ (AUDIO_SUPPORT_FREQ_16K + \
54 AUDIO_SUPPORT_FREQ_48K \
55 )
56
57#define AUDIO_FREQ_16K 16000
58#define AUDIO_FREQ_48K 48000 /*usb fifo not support*/
59#define AUDIO_BITW_16 16
60
61#define AUDIO_MIC_CHANEL_NUM 2
62#define AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16
63
64#define AUDIO_SPK_CHANEL_NUM 2
65#define AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16
66
67
68#define AUDIO_SUPPORT_MAX_FREQ 16
69#define AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K
70#define AUDIO_DEFAULT_BITW AUDIO_BITW_16
71
83#ifdef __cplusplus
84}
85#endif
86
87#endif
88
89
90


AT32F403 Firmwary Library: audio_codec.h Source File

  • usb_device
  • audio
  • inc
audio/inc/audio_codec.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_CODEC_H
27#define __AUDIO_CODEC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
42/* includes ------------------------------------------------------------------*/
43#include "at32f403.h"
44
48#define WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/
49#define WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/
50#define WM8988_R2_LOUT1_VOLUME 0x02
51#define WM8988_R3_ROUT1_VOLUME 0x03
52#define WM8988_R4_RESERVED 0x04
53#define WM8988_R5_ADC_DAC_CONTROL 0x05
54#define WM8988_R6_RESERVED 0x06
55#define WM8988_R7_AUDIO_INTERFACE 0x07
56#define WM8988_R8_SAMPLE_RATE 0x08
57#define WM8988_R9_RESERVED 0x09
58#define WM8988_R10_LEFT_DAC_VOLUME 0x0A
59#define WM8988_R11_RIGHT_DAC_VOLUME 0x0B
60#define WM8988_R12_BASS_CONTROL 0x0C
61#define WM8988_R13_TREBLE_CONTROL 0x0D
62#define WM8988_R14_
63#define WM8988_R15_RESET 0x0F
64#define WM8988_R16_3D_CONTROL 0x10
65#define WM8988_R17_ALC1 0x11
66#define WM8988_R18_ALC2 0x12
67#define WM8988_R19_ALC3 0x13
68#define WM8988_R20_NOISE_GATE 0x14
69#define WM8988_R21_LEFT_ADC_VOLUME 0x15
70#define WM8988_R22_RIGHT_ADC_VOLUME 0x16
71#define WM8988_R23_ADDITIONAL_1_CONTROL 0x17
72#define WM8988_R24_ADDITIONAL_2_CONTROL 0x18
73#define WM8988_R25_PWR_1_MGMT 0x19
74#define WM8988_R26_PWR_2_MGMT 0x1A
75#define WM8988_R27_ADDITIONAL_3_CONTROL 0x1B
76
77#define WM8988_R31_ADC_INPUT_MODE 0x1F
78#define WM8988_R32_ADC_L_SIGNAL_PATH 0x20
79#define WM8988_R33_ADC_R_SIGNAL_PATH 0x21
80#define WM8988_R34_LEFT_OUT_MIX_1 0x22
81#define WM8988_R35_LEFT_OUT_MIX_2 0x23
82#define WM8988_R36_RIGHT_OUT_MIX_1 0x24
83#define WM8988_R37_RIGHT_OUT_MIX_2 0x25
84#define WM8988_R38_RESERVED
85#define WM8988_R39_RESERVED
86#define WM8988_R40_LOUT2_VOLUME 0x28
87#define WM8988_R41_ROUT2_VOLUME 0x29
88#define WM8988_R42_RESERVED
89#define WM8988_R43_LOW_POWER_PALYBACK 0x43
90
91#define WM8988_I2C_ADDR_CSB_LOW 0x34
92#define WM8988_I2C_ADDR_CSB_HIGH 0x36
93
101#define I2S1_WS_PIN GPIO_PINS_4
102#define I2S1_CK_PIN GPIO_PINS_5
103#define I2S1_SD_PIN GPIO_PINS_7
104#define I2S1_GPIO GPIOA
105#define I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
106#define I2S1_DT_ADDRESS (&(SPI1->dt))
107
108/*I2S2 Pin*/
109#define I2S2_WS_PIN GPIO_PINS_12
110#define I2S2_CK_PIN GPIO_PINS_13
111#define I2S2_SD_PIN GPIO_PINS_15
112#define I2S2_GPIO GPIOB
113#define I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK
114#define I2S2_DT_ADDRESS (&(SPI2->dt))
115
116#define SPK_TX_FIFO_SIZE (1024 * 4)
117
125#define MIC_BUFFER_SIZE 1024
126#define SPK_BUFFER_SIZE 4096
127#define DMA_BUFFER_SIZE 288
128
129typedef struct
130{
131 uint32_t audio_freq;
132 uint32_t audio_bitw;
133 //spk part
134 uint16_t spk_buffer[SPK_BUFFER_SIZE];
135 uint16_t *spk_roff;
136 uint16_t *spk_woff;
137 uint16_t *spk_rend;
138 uint32_t spk_freq;
139 uint32_t spk_wtotal;
140 uint32_t spk_rtotal;
141 uint16_t spk_threshold;
142 uint16_t spk_calc;
143 uint8_t spk_stage;
144
145 //mic part
146 uint16_t mic_buffer[MIC_BUFFER_SIZE];
147 uint16_t *mic_roff;
148 uint16_t *mic_woff;
149 uint16_t *mic_wend;
150 uint32_t mic_wtotal;
151 uint32_t mic_rtotal;
152 uint32_t mic_delta;
153 uint16_t mic_calc;
154 uint16_t mic_adj_count;
155 uint8_t mic_adj_stage;
156 uint8_t mic_stage;
157
158 uint8_t mic_mute;
159 uint8_t spk_mute;
160
161 uint16_t mic_volume;
162 uint16_t spk_volume;
163
164 uint32_t spk_tx_size;
165 uint32_t mic_rx_size;
166
167 uint32_t spk_enable;
168 uint32_t mic_enable;
169
170}audio_codec_type;
171
172 error_status audio_codec_init(void);
173 error_status audio_codec_loop(void);
174void audio_codec_modify_freq(uint32_t freq);
175
179void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len);
180uint32_t audio_codec_mic_get_data(uint8_t *buffer);
181uint8_t audio_codec_spk_feedback(uint8_t *feedback);
182void audio_codec_spk_alt_setting(uint32_t alt_seting);
183void audio_codec_mic_alt_setting(uint32_t alt_seting);
184void audio_codec_set_mic_mute(uint8_t mute);
185void audio_codec_set_spk_mute(uint8_t mute);
186void audio_codec_set_mic_volume(uint16_t volume);
187void audio_codec_set_spk_volume(uint16_t volume);
188void audio_codec_set_mic_freq(uint32_t freq);
189void audio_codec_set_spk_freq(uint32_t freq);
200#ifdef __cplusplus
201}
202#endif
203
204#endif
205
at32f403.h
at32f403 header file
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
error_status
error_status
error status
Definition: at32f403.h:314
audio_codec_mic_alt_setting
void audio_codec_mic_alt_setting(uint32_t alt_seting)
audio codec microphone alt setting config
Definition: audio/src/audio_codec.c:167
audio_codec_set_spk_volume
void audio_codec_set_spk_volume(uint16_t volume)
audio codec set speaker volume
Definition: audio/src/audio_codec.c:215
audio_codec_set_spk_mute
void audio_codec_set_spk_mute(uint8_t mute)
audio codec set speaker mute
Definition: audio/src/audio_codec.c:193
MIC_BUFFER_SIZE
#define MIC_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:125
audio_codec_set_mic_freq
void audio_codec_set_mic_freq(uint32_t freq)
audio codec set microphone freq
Definition: audio/src/audio_codec.c:119
audio_codec_mic_get_data
uint32_t audio_codec_mic_get_data(uint8_t *buffer)
codec microphone get data
Definition: audio/src/audio_codec.c:280
audio_codec_loop
error_status audio_codec_loop(void)
audio codec loop
Definition: audio/src/audio_codec.c:851
SPK_BUFFER_SIZE
#define SPK_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:126
audio_codec_set_mic_mute
void audio_codec_set_mic_mute(uint8_t mute)
audio codec set microphone mute
Definition: audio/src/audio_codec.c:182
audio_codec_spk_fifo_write
void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
audio codec interface
Definition: audio/src/audio_codec.c:242
audio_codec_spk_feedback
uint8_t audio_codec_spk_feedback(uint8_t *feedback)
codec speaker feedback
Definition: audio/src/audio_codec.c:226
audio_codec_modify_freq
void audio_codec_modify_freq(uint32_t freq)
audio codec modify freq
Definition: audio/src/audio_codec.c:340
audio_codec_set_mic_volume
void audio_codec_set_mic_volume(uint16_t volume)
audio codec set microphone volume
Definition: audio/src/audio_codec.c:204
audio_codec_spk_alt_setting
void audio_codec_spk_alt_setting(uint32_t alt_seting)
audio codec speaker alt setting config
Definition: audio/src/audio_codec.c:152
audio_codec_init
error_status audio_codec_init(void)
audio codec init
Definition: audio/src/audio_codec.c:792
audio_codec_set_spk_freq
void audio_codec_set_spk_freq(uint32_t freq)
audio codec set speaker freq
Definition: audio/src/audio_codec.c:135
audio_codec_type
Definition: audio/inc/audio_codec.h:130
audio_codec_type::spk_mute
uint8_t spk_mute
Definition: audio/inc/audio_codec.h:159
audio_codec_type::spk_threshold
uint16_t spk_threshold
Definition: audio/inc/audio_codec.h:141
audio_codec_type::mic_enable
uint32_t mic_enable
Definition: audio/inc/audio_codec.h:168
audio_codec_type::spk_stage
uint8_t spk_stage
Definition: audio/inc/audio_codec.h:143
audio_codec_type::mic_roff
uint16_t * mic_roff
Definition: audio/inc/audio_codec.h:147
audio_codec_type::mic_volume
uint16_t mic_volume
Definition: audio/inc/audio_codec.h:161
audio_codec_type::spk_roff
uint16_t * spk_roff
Definition: audio/inc/audio_codec.h:135
audio_codec_type::spk_rtotal
uint32_t spk_rtotal
Definition: audio/inc/audio_codec.h:140
audio_codec_type::mic_delta
uint32_t mic_delta
Definition: audio/inc/audio_codec.h:152
audio_codec_type::spk_calc
uint16_t spk_calc
Definition: audio/inc/audio_codec.h:142
audio_codec_type::mic_woff
uint16_t * mic_woff
Definition: audio/inc/audio_codec.h:148
audio_codec_type::mic_stage
uint8_t mic_stage
Definition: audio/inc/audio_codec.h:156
audio_codec_type::mic_adj_count
uint16_t mic_adj_count
Definition: audio/inc/audio_codec.h:154
audio_codec_type::spk_freq
uint32_t spk_freq
Definition: audio/inc/audio_codec.h:138
audio_codec_type::audio_bitw
uint32_t audio_bitw
Definition: audio/inc/audio_codec.h:132
audio_codec_type::mic_wend
uint16_t * mic_wend
Definition: audio/inc/audio_codec.h:149
audio_codec_type::spk_rend
uint16_t * spk_rend
Definition: audio/inc/audio_codec.h:137
audio_codec_type::mic_wtotal
uint32_t mic_wtotal
Definition: audio/inc/audio_codec.h:150
audio_codec_type::spk_enable
uint32_t spk_enable
Definition: audio/inc/audio_codec.h:167
audio_codec_type::mic_rtotal
uint32_t mic_rtotal
Definition: audio/inc/audio_codec.h:151
audio_codec_type::audio_freq
uint32_t audio_freq
Definition: audio/inc/audio_codec.h:131
audio_codec_type::mic_mute
uint8_t mic_mute
Definition: audio/inc/audio_codec.h:158
audio_codec_type::spk_volume
uint16_t spk_volume
Definition: audio/inc/audio_codec.h:162
audio_codec_type::mic_calc
uint16_t mic_calc
Definition: audio/inc/audio_codec.h:153
audio_codec_type::spk_wtotal
uint32_t spk_wtotal
Definition: audio/inc/audio_codec.h:139
audio_codec_type::mic_adj_stage
uint8_t mic_adj_stage
Definition: audio/inc/audio_codec.h:155
audio_codec_type::spk_tx_size
uint32_t spk_tx_size
Definition: audio/inc/audio_codec.h:164
audio_codec_type::mic_rx_size
uint32_t mic_rx_size
Definition: audio/inc/audio_codec.h:165
audio_codec_type::spk_woff
uint16_t * spk_woff
Definition: audio/inc/audio_codec.h:136


AT32F403 Firmwary Library: audio_codec.c Source File

  • usb_device
  • audio
  • src
audio/src/audio_codec.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "audio_codec.h"
27#include "i2c_application.h"
28#include "audio_conf.h"
29#include <string.h>
30
39#define I2C_TIMEOUT 0xFFFFFFFF
40
41#define I2Cx_SPEED 200000
42#define I2Cx_ADDRESS 0x00
43
44#define I2Cx_PORT I2C1
45#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
46
47#define I2Cx_SCL_PIN GPIO_PINS_8
48#define I2Cx_SCL_GPIO_PORT GPIOB
49#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
50
51#define I2Cx_SDA_PIN GPIO_PINS_9
52#define I2Cx_SDA_GPIO_PORT GPIOB
53#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
54
58#define WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)
59#define WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)
60
64#define WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)
65
69uint16_t reg_addr_data[] =
70{
71 (WM8988_R0_LEFT_INPUT_VOLUME << 9) | 0x012F, /*Left Input Channel Volume*/
72 (WM8988_R1_RIGHT_INPUT_VOLUME << 9) | 0x012F, /*Right Input Channel Volume*/
73 (WM8988_R2_LOUT1_VOLUME << 9) | 0x0179, /*Left Output Channel Volume*/
74 (WM8988_R3_ROUT1_VOLUME << 9) | 0x0179, /*Right Output Channel Volume*/
75 (WM8988_R5_ADC_DAC_CONTROL << 9) | 0x0006, /*De-emphasis Control and Digital soft mute*/
76 (WM8988_REG_BITW16),
77 (WM8988_REG_FREQ16K),
78 (WM8988_R10_LEFT_DAC_VOLUME << 9) | 0x01FF, /*Left Digital DAC Volume Control*/
79 (WM8988_R11_RIGHT_DAC_VOLUME << 9) | 0x01FF, /*Right Digital DAC Volume Control*/
80 (WM8988_R12_BASS_CONTROL << 9) | 0x000F, /*Bass Control*/
81 (WM8988_R13_TREBLE_CONTROL << 9) | 0x000F, /*Treble Control*/
82 (WM8988_R16_3D_CONTROL << 9) | 0x0000, /*3D stereo Enhancment*/
83 (WM8988_R21_LEFT_ADC_VOLUME << 9) | 0x01C3, /*Left ADC Digital Volume*/
84 (WM8988_R22_RIGHT_ADC_VOLUME << 9) | 0x01C3, /*Right ADC Digital Volume*/
85 (WM8988_R23_ADDITIONAL_1_CONTROL << 9) | 0x00C2, /*Additional Control 1*/
86 (WM8988_R24_ADDITIONAL_2_CONTROL << 9) | 0x0000, /*Additional Control 2*/
87 (WM8988_R27_ADDITIONAL_3_CONTROL << 9) | 0x0000, /*Additional Control 3*/
88 (WM8988_R31_ADC_INPUT_MODE << 9) | 0x0000, /*ADC input mode*/
89 (WM8988_R32_ADC_L_SIGNAL_PATH << 9) | 0x0000, /*ADC Signal Path Control left*/
90 (WM8988_R33_ADC_R_SIGNAL_PATH << 9) | 0x0000, /*ADC Signal Path Control right*/
91 (WM8988_R34_LEFT_OUT_MIX_1 << 9) | 0x0152, /*Left DAC mixer Control*/
92 (WM8988_R35_LEFT_OUT_MIX_2 << 9) | 0x0050, /*Left DAC mixer Control*/
93 (WM8988_R36_RIGHT_OUT_MIX_1 << 9) | 0x0052, /*Right DAC mixer Control*/
94 (WM8988_R37_RIGHT_OUT_MIX_2 << 9) | 0x0150, /*Right DAC mixer Control*/
95 (WM8988_R40_LOUT2_VOLUME << 9) | 0x01FF, /*Output left channel volume*/
96 (WM8988_R41_ROUT2_VOLUME << 9) | 0x01FF, /*Output left channel volume*/
97 (WM8988_R43_LOW_POWER_PALYBACK << 9) | 0x0008, /*Output left channel volume*/
98 (WM8988_R25_PWR_1_MGMT << 9) | 0x017C, /*Power Management1*/
99 (WM8988_R26_PWR_2_MGMT << 9) | 0x01F8, /*Power Management2*/
100};
101
102 i2c_handle_type hi2cx;
103
104 audio_codec_type audio_codec;
105uint16_t spk_dma_buffer[DMA_BUFFER_SIZE];
106uint16_t mic_dma_buffer[DMA_BUFFER_SIZE];
107
108void memset16_buffer(uint16_t *buffer, uint32_t set, uint32_t len);
109void codec_i2s_reset(void);
110void codec_i2s_init(audio_codec_type *param);
111void mclk_tmr1_init(void);
112void copy_buff(uint16_t *dest, uint16_t *src, uint32_t len);
113
119void audio_codec_set_mic_freq(uint32_t freq)
120{
121 if(audio_codec.audio_freq != freq)
122 {
123 audio_codec.audio_freq = freq;
124 codec_i2s_reset();
125 audio_codec_modify_freq(freq);
126 codec_i2s_init(&audio_codec);
127 }
128}
129
135void audio_codec_set_spk_freq(uint32_t freq)
136{
137 if(audio_codec.audio_freq != freq)
138 {
139 audio_codec.audio_freq = freq;
140 codec_i2s_reset();
141 audio_codec_modify_freq(freq);
142 codec_i2s_init(&audio_codec);
143 }
144}
145
146
152void audio_codec_spk_alt_setting(uint32_t alt_seting)
153{
154 if(alt_seting == 0)
155 {
156 }
157 else
158 {
159 }
160}
161
167void audio_codec_mic_alt_setting(uint32_t alt_seting)
168{
169 if(alt_seting == 0)
170 {
171 }
172 else
173 {
174 }
175}
176
182void audio_codec_set_mic_mute(uint8_t mute)
183{
184 audio_codec.mic_mute = mute;
185}
186
187
193void audio_codec_set_spk_mute(uint8_t mute)
194{
195 audio_codec.spk_mute = mute;
196}
197
198
204void audio_codec_set_mic_volume(uint16_t volume)
205{
206 /* wm8988 adc have 256 steps */
207 audio_codec.mic_volume = volume;
208}
209
215void audio_codec_set_spk_volume(uint16_t volume)
216{
217 /* wm8988 dac have 80 steps */
218 audio_codec.spk_volume = (volume * 0x50) / 0x64 + 0x30 - 1;
219}
220
226uint8_t audio_codec_spk_feedback(uint8_t *feedback)
227{
228 uint32_t feedback_value = (audio_codec.spk_freq);
229 feedback_value = ((feedback_value/1000)<<14)|((feedback_value%1000)<<4);
230 feedback[0] = (uint8_t)(feedback_value);
231 feedback[1] = (uint8_t)(feedback_value >> 8);
232 feedback[2] = (uint8_t)(feedback_value >> 16);
233 return 3;
234}
235
242void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
243{
244 uint16_t ulen = len / 2, i;
245 uint16_t *u16data = (uint16_t *)data;
246
247 switch(audio_codec.spk_stage)
248 {
249 case 0:
250 audio_codec.spk_woff = audio_codec.spk_roff = audio_codec.spk_buffer;
251 audio_codec.spk_wtotal = audio_codec.spk_rtotal = 0;
252 audio_codec.spk_stage = 1;
253 audio_codec.spk_threshold = SPK_BUFFER_SIZE/2;
254 break;
255 case 1:
256 if( audio_codec.spk_wtotal >= SPK_BUFFER_SIZE/2 )
257 {
258 audio_codec.spk_stage = 2;
259 }
260 break;
261 case 2:
262 break;
263 }
264 for( i = 0; i < ulen; ++i )
265 {
266 *audio_codec.spk_woff++ = *u16data++;
267 if( audio_codec.spk_woff >= audio_codec.spk_rend )
268 {
269 audio_codec.spk_woff = audio_codec.spk_buffer;
270 }
271 }
272 audio_codec.spk_wtotal += ulen;
273}
274
280uint32_t audio_codec_mic_get_data(uint8_t *buffer)
281{
282 //copy_buff((uint16_t *)buffer, audio_codec.mic_buffer + audio_codec.mic_hf_status, audio_codec.mic_rx_size);
283 uint16_t len = audio_codec.mic_rx_size << 1;
284 uint16_t i;
285 uint16_t* u16buf = (uint16_t*)buffer;
286 switch(audio_codec.mic_stage)
287 {
288 case 0:
289 audio_codec.mic_stage = 1;
290 memset( buffer, 0, len );
291 return len;
292 case 1:
293 if( audio_codec.mic_wtotal - audio_codec.mic_rtotal >= MIC_BUFFER_SIZE/2 )
294 {
295 audio_codec.mic_stage = 2;
296 }
297 return len;
298 }
299 switch( audio_codec.mic_adj_stage )
300 {
301 case 0:
302 break;
303 case 1:
304 if( audio_codec.mic_adj_count >= 4 ){
305 len += 4;
306 audio_codec.mic_adj_count -= 4;
307 }
308 break;
309 case 2:
310 if( audio_codec.mic_adj_count >= 4 ){
311 len -= 4;
312 audio_codec.mic_adj_count -= 4;
313 }
314 break;
315 }
316
317 for( i = 0; i < len/2; ++i )
318 {
319 *u16buf++ = *audio_codec.mic_roff++;
320 if( audio_codec.mic_roff >= audio_codec.mic_wend )
321 {
322 audio_codec.mic_roff = audio_codec.mic_buffer;
323 }
324 }
325 if( audio_codec.mic_wtotal <= audio_codec.mic_rtotal )
326 { //should not happen
327 while(1);
328 }
329
330 audio_codec.mic_rtotal += len/2;
331 audio_codec.mic_delta += len/2;
332 return len;
333}
334
340void audio_codec_modify_freq(uint32_t freq)
341{
342 uint16_t codec_cmd;
343 uint8_t i2c_cmd[2];
344 if(freq == AUDIO_FREQ_16K)
345 {
346 codec_cmd = WM8988_REG_FREQ16K;
347 }
348 else if(freq == AUDIO_FREQ_48K)
349 {
350 codec_cmd = WM8988_REG_FREQ48K;
351 }
352 i2c_cmd[0] = (uint8_t)(codec_cmd >> 8);
353 i2c_cmd[1] = (uint8_t)codec_cmd & 0xFF;
354 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
355 {
356 while(1);
357 }
358}
359
367void memset16_buffer(uint16_t *buffer, uint32_t set, uint32_t len)
368{
369 uint32_t i_index = 0;
370 for(i_index = 0; i_index < len; i_index ++)
371 {
372 buffer[i_index] = (uint16_t)set;
373 }
374}
375
383void copy_buff(uint16_t *dest, uint16_t *src, uint32_t len)
384{
385 uint16_t i_index;
386 for(i_index = 0; i_index < len; i_index ++)
387 {
388 dest[i_index] = src[i_index];
389 }
390}
391
397void i2c_lowlevel_init(i2c_handle_type* hi2c)
398{
399 gpio_init_type gpio_initstructure;
400
401 if(hi2c->i2cx == I2Cx_PORT)
402 {
403 /* i2c periph clock enable */
404 crm_periph_clock_enable(I2Cx_CLK, TRUE);
405 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
406 gpio_pin_remap_config(I2C1_MUX, TRUE);
407 crm_periph_clock_enable(I2Cx_SCL_GPIO_CLK, TRUE);
408 crm_periph_clock_enable(I2Cx_SDA_GPIO_CLK, TRUE);
409
410 /* gpio configuration */
411 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
412 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
413 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
414 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
415
416 /* configure i2c pins: scl */
417 gpio_initstructure.gpio_pins = I2Cx_SCL_PIN;
418 gpio_init(I2Cx_SCL_GPIO_PORT, &gpio_initstructure);
419
420 /* configure i2c pins: sda */
421 gpio_initstructure.gpio_pins = I2Cx_SDA_PIN;
422 gpio_init(I2Cx_SDA_GPIO_PORT, &gpio_initstructure);
423
424 i2c_init(hi2c->i2cx, I2C_FSMODE_DUTY_2_1, I2Cx_SPEED);
425
426 i2c_own_address1_set(hi2c->i2cx, I2C_ADDRESS_MODE_7BIT, I2Cx_ADDRESS);
427 }
428}
429
435void mclk_tmr1_init(void)
436{
437 gpio_init_type gpio_init_struct;
438 tmr_output_config_type tmr_oc_init_structure;
439 uint16_t prescaler_value = (uint16_t)(system_core_clock / 24000000) - 1;
440
441 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
442 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
443 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
444
445 gpio_default_para_init(&gpio_init_struct);
446
447 gpio_init_struct.gpio_pins = GPIO_PINS_8;
448 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
449 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
450 gpio_init(GPIOA, &gpio_init_struct);
451
452 tmr_base_init(TMR1, 1, prescaler_value);
453 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
454 tmr_clock_source_div_set(TMR1, TMR_CLOCK_DIV1);
455
456 tmr_output_default_para_init(&tmr_oc_init_structure);
457 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
458 tmr_oc_init_structure.oc_idle_state = FALSE;
459 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
460 tmr_oc_init_structure.oc_output_state = TRUE;
461 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
462 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 1);
463 tmr_output_channel_buffer_enable(TMR1, TMR_SELECT_CHANNEL_1, TRUE);
464
465 /* tmr enable counter */
466 tmr_counter_enable(TMR1, TRUE);
467 tmr_output_enable(TMR1, TRUE);
468}
469
470
476void codec_i2s_reset(void)
477{
478 i2s_enable(SPI1, FALSE);
479 i2s_enable(SPI2, FALSE);
480 dma_channel_enable(DMA1_CHANNEL3, FALSE);
481 dma_channel_enable(DMA1_CHANNEL4, FALSE);
482}
483
490void codec_i2s_init(audio_codec_type *param)
491{
492 gpio_init_type gpio_init_struct;
493 dma_init_type dma_init_struct;
494 i2s_init_type i2s_init_struct;
495 i2s_data_channel_format_type format = I2S_DATA_16BIT_CHANNEL_16BIT;
496
497 crm_periph_clock_enable(I2S1_GPIO_CRM_CLK, TRUE);
498 crm_periph_clock_enable(I2S2_GPIO_CRM_CLK, TRUE);
499 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
500 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
501 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
502
503 param->spk_freq = param->audio_freq;
504
505 param->spk_tx_size = (param->audio_freq / 1000) * (param->audio_bitw / 8) * AUDIO_SPK_CHANEL_NUM / 2;
506 param->mic_rx_size = (param->audio_freq / 1000) * (param->audio_bitw / 8) * AUDIO_MIC_CHANEL_NUM / 2;
507
508 memset(param->spk_buffer, 0, SPK_BUFFER_SIZE*sizeof(uint16_t));
509 memset(param->mic_buffer, 0, MIC_BUFFER_SIZE*sizeof(uint16_t));
510
511 param->mic_wend = param->mic_woff = param->mic_roff = param->mic_buffer;
512 param->spk_rend = param->spk_woff = param->spk_roff = param->spk_buffer;
513
514 while(param->mic_wend < param->mic_buffer+MIC_BUFFER_SIZE)
515 {
516 param->mic_wend += param->mic_rx_size;
517 }
518 param->mic_wend -= param->mic_rx_size;
519 while(param->spk_rend < param->spk_buffer+SPK_BUFFER_SIZE)
520 {
521 param->spk_rend += param->spk_tx_size;
522 }
523 param->spk_rend -= param->spk_tx_size;
524 if(param->audio_bitw == 16)
525 {
526 format = I2S_DATA_16BIT_CHANNEL_16BIT;
527 }
528 else
529 {
530 format = I2S_DATA_24BIT_CHANNEL_32BIT;
531 }
532 gpio_default_para_init(&gpio_init_struct);
533
534 /* i2s1 ws pins */
535 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
536 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
537 gpio_init_struct.gpio_pins = I2S1_WS_PIN;
538 gpio_init(I2S1_GPIO, &gpio_init_struct);
539
540 /* i2s1 ck pins */
541 gpio_init_struct.gpio_pull = GPIO_PULL_DOWN;
542 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
543 gpio_init_struct.gpio_pins = I2S1_CK_PIN;
544 gpio_init(I2S1_GPIO, &gpio_init_struct);
545
546 /* i2s1 sd pins slave tx */
547 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
548 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
549 gpio_init_struct.gpio_pins = I2S1_SD_PIN;
550 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
551 gpio_init(I2S1_GPIO, &gpio_init_struct);
552
553 /* i2s2 ws pins */
554 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
555 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
556 gpio_init_struct.gpio_pins = I2S2_WS_PIN;
557 gpio_init(I2S2_GPIO, &gpio_init_struct);
558
559 /* i2s2 ck pins */
560 gpio_init_struct.gpio_pull = GPIO_PULL_DOWN;
561 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
562 gpio_init_struct.gpio_pins = I2S2_CK_PIN;
563 gpio_init(I2S2_GPIO, &gpio_init_struct);
564
565 /* i2s2 sd pins slave rx */
566 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
567 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
568 gpio_init_struct.gpio_pins = I2S2_SD_PIN;
569 gpio_init(I2S2_GPIO, &gpio_init_struct);
570
571 /* dma config */
572 dma_reset(DMA1_CHANNEL3);
573 dma_reset(DMA1_CHANNEL4);
574
575 /* dma1 channel3: speaker i2s1 tx */
576 dma_default_para_init(&dma_init_struct);
577 dma_init_struct.buffer_size = param->spk_tx_size << 1;
578 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
579 dma_init_struct.memory_base_addr = (uint32_t)spk_dma_buffer;
580 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
581 dma_init_struct.memory_inc_enable = TRUE;
582 dma_init_struct.peripheral_base_addr = (uint32_t)I2S1_DT_ADDRESS;
583 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
584 dma_init_struct.peripheral_inc_enable = FALSE;
585 dma_init_struct.priority = DMA_PRIORITY_HIGH;
586 dma_init_struct.loop_mode_enable = TRUE;
587 dma_init(DMA1_CHANNEL3, &dma_init_struct);
588 dma_interrupt_enable(DMA1_CHANNEL3, DMA_FDT_INT, TRUE);
589 dma_interrupt_enable(DMA1_CHANNEL3, DMA_HDT_INT, TRUE);
590 nvic_irq_enable(DMA1_Channel3_IRQn, 1, 0);
591
592 /* dma1 channel4: microphone i2s2 rx */
593 dma_default_para_init(&dma_init_struct);
594 dma_init_struct.buffer_size = param->mic_rx_size << 1;
595 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
596 dma_init_struct.memory_base_addr = (uint32_t)mic_dma_buffer;
597 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
598 dma_init_struct.memory_inc_enable = TRUE;
599 dma_init_struct.peripheral_base_addr = (uint32_t)I2S2_DT_ADDRESS;
600 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
601 dma_init_struct.peripheral_inc_enable = FALSE;
602 dma_init_struct.priority = DMA_PRIORITY_HIGH;
603 dma_init_struct.loop_mode_enable = TRUE;
604 dma_init(DMA1_CHANNEL4, &dma_init_struct);
605 dma_interrupt_enable(DMA1_CHANNEL4, DMA_FDT_INT, TRUE);
606 dma_interrupt_enable(DMA1_CHANNEL4, DMA_HDT_INT, TRUE);
607 nvic_irq_enable(DMA1_Channel4_IRQn, 2, 0);
608
609 /* i2s1 tx init */
610 spi_i2s_reset(SPI1);
611 i2s_default_para_init(&i2s_init_struct);
612 i2s_init_struct.audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
613 i2s_init_struct.data_channel_format = format;
614 i2s_init_struct.mclk_output_enable = FALSE;
615 i2s_init_struct.audio_sampling_freq = (i2s_audio_sampling_freq_type)param->audio_freq;
616 i2s_init_struct.clock_polarity = I2S_CLOCK_POLARITY_LOW;
617 i2s_init_struct.operation_mode = I2S_MODE_MASTER_TX;
618 i2s_init(SPI1, &i2s_init_struct);
619
620 /* i2s2 rx init */
621 spi_i2s_reset(SPI2);
622 i2s_default_para_init(&i2s_init_struct);
623 i2s_init_struct.audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
624 i2s_init_struct.data_channel_format = format;
625 i2s_init_struct.mclk_output_enable = FALSE;
626 i2s_init_struct.audio_sampling_freq = (i2s_audio_sampling_freq_type)param->audio_freq;
627 i2s_init_struct.clock_polarity = I2S_CLOCK_POLARITY_LOW;
628 i2s_init_struct.operation_mode = I2S_MODE_SLAVE_RX;
629 i2s_init(SPI2, &i2s_init_struct);
630
631
632 spi_i2s_dma_transmitter_enable(SPI1, TRUE);
633 spi_i2s_dma_receiver_enable(SPI2, TRUE);
634 i2s_enable(SPI2, TRUE);
635 i2s_enable(SPI1, TRUE);
636
637 dma_channel_enable(DMA1_CHANNEL3, TRUE);
638 dma_channel_enable(DMA1_CHANNEL4, TRUE);
639
640}
641
647void DMA1_Channel3_IRQHandler(void)
648{
649 uint16_t half_size = audio_codec.spk_tx_size;
650 uint16_t *pdst;
651
652 if(dma_flag_get(DMA1_HDT3_FLAG) == SET)
653 {
654 //copy_buff(audio_codec.spk_buffer, audio_codec.spk_tx_fifo + audio_codec.r_pos, half_size);
655 pdst = spk_dma_buffer;
656 dma_flag_clear(DMA1_HDT3_FLAG);
657 }
658 else if(dma_flag_get(DMA1_FDT3_FLAG) == SET)
659 {
660 //copy_buff(&audio_codec.spk_buffer[half_size], audio_codec.spk_tx_fifo + audio_codec.r_pos, half_size);
661 pdst = spk_dma_buffer + half_size;
662 dma_flag_clear(DMA1_FDT3_FLAG);
663 }
664
665 switch( audio_codec.spk_stage )
666 {
667 case 0:
668 case 1:
669 memset( pdst, 0, half_size << 1);
670 break;
671 case 2:
672 if( audio_codec.spk_wtotal >= audio_codec.spk_rtotal + SPK_BUFFER_SIZE )
673 {
674 while(1);//should not happen;
675 }
676 if( audio_codec.spk_rtotal >= audio_codec.spk_wtotal )
677 {
678 audio_codec.spk_stage = 0;
679 audio_codec.spk_woff = audio_codec.spk_roff = audio_codec.spk_buffer;
680 audio_codec.spk_rtotal = audio_codec.spk_wtotal = 0;
681 }
682 else
683 {
684 memcpy( pdst, audio_codec.spk_roff, half_size << 1 );
685 audio_codec.spk_roff += half_size;
686 audio_codec.spk_rtotal += half_size;
687 if( audio_codec.spk_roff >= audio_codec.spk_rend )
688 {
689 audio_codec.spk_roff = audio_codec.spk_buffer;
690 }
691 if( ++audio_codec.spk_calc == 256 )
692 {
693 uint16_t delta = audio_codec.spk_wtotal - audio_codec.spk_rtotal;
694 audio_codec.spk_calc = 0;
695 if( delta < audio_codec.spk_threshold - half_size )
696 {
697 audio_codec.spk_threshold -= half_size;
698 audio_codec.spk_freq += audio_codec.audio_freq/1024;
699 }
700 else if( delta > audio_codec.spk_threshold + half_size )
701 {
702 audio_codec.spk_threshold += half_size;
703 audio_codec.spk_freq -= audio_codec.audio_freq/1024;
704 }
705 if(audio_codec.spk_rtotal > 0x20000000)
706 {
707 audio_codec.spk_rtotal -= 0x10000000;
708 audio_codec.spk_wtotal -= 0x10000000;
709 }
710 }
711 }
712 break;
713 }
714
715}
716
722void DMA1_Channel4_IRQHandler(void)
723{
724 uint16_t *psrc;
725 uint16_t len = audio_codec.mic_rx_size << 1;
726
727 if(dma_flag_get(DMA1_HDT4_FLAG) == SET)
728 {
729 dma_flag_clear(DMA1_HDT4_FLAG);
730 psrc = mic_dma_buffer;
731 }
732 else if(dma_flag_get(DMA1_FDT4_FLAG) == SET)
733 {
734 psrc = mic_dma_buffer + audio_codec.mic_rx_size;
735 dma_flag_clear(DMA1_FDT4_FLAG);
736 }
737 if( audio_codec.mic_stage )
738 {
739 memcpy( audio_codec.mic_woff, psrc, len );
740 audio_codec.mic_woff += len/2;
741 audio_codec.mic_wtotal += len/2;
742 if( audio_codec.mic_woff >= audio_codec.mic_wend )
743 {
744 audio_codec.mic_woff = audio_codec.mic_buffer;
745 }
746 if( audio_codec.mic_stage == 2 )
747 {
748 if( 1024 == ++audio_codec.mic_calc )
749 {
750 uint32_t size_estimate = 1024*audio_codec.mic_rx_size;
751 audio_codec.mic_calc = 0;
752 if( audio_codec.mic_delta > size_estimate )
753 {
754 audio_codec.mic_adj_count = audio_codec.mic_delta - size_estimate;
755 audio_codec.mic_adj_stage = 2;
756 }
757 else if( audio_codec.mic_delta < size_estimate )
758 {
759 audio_codec.mic_adj_count = size_estimate - audio_codec.mic_delta;
760 audio_codec.mic_adj_stage = 1;
761 }
762 else
763 {
764 audio_codec.mic_adj_count = 0;
765 audio_codec.mic_adj_stage = 0;
766 }
767 audio_codec.mic_delta = 0;
768 if( audio_codec.mic_rtotal >= 0x80000000 )
769 {
770 audio_codec.mic_rtotal -= 0x80000000;
771 audio_codec.mic_wtotal -= 0x80000000;
772 }
773 }
774 if( audio_codec.mic_wtotal >= audio_codec.mic_rtotal + MIC_BUFFER_SIZE )
775 {
776 audio_codec.mic_delta = audio_codec.mic_wtotal = audio_codec.mic_rtotal = 0;
777 audio_codec.mic_woff = audio_codec.mic_roff = audio_codec.mic_buffer;
778 audio_codec.mic_stage = 0;
779 audio_codec.mic_adj_stage = 0;
780 audio_codec.mic_adj_count = 0;
781 audio_codec.mic_calc = 0;
782 }
783 }
784 }
785}
786
792 error_status audio_codec_init(void)
793{
794 uint32_t reg_len = sizeof(reg_addr_data) / sizeof(uint16_t);
795 uint32_t i_index = 0;
796 uint8_t i2c_cmd[2];
797
798 if(AUDIO_DEFAULT_FREQ == AUDIO_FREQ_16K)
799 {
800 reg_addr_data[6] = WM8988_REG_FREQ16K;
801 audio_codec.audio_freq = AUDIO_FREQ_16K;
802 }
803 else if(AUDIO_DEFAULT_FREQ == AUDIO_FREQ_48K)
804 {
805 reg_addr_data[6] = WM8988_REG_FREQ48K;
806 audio_codec.audio_freq = AUDIO_FREQ_48K;
807 }
808 else
809 {
810 return ERROR;
811 }
812
813 if(AUDIO_DEFAULT_BITW == AUDIO_BITW_16)
814 {
815 reg_addr_data[5] = WM8988_REG_BITW16;
816 audio_codec.audio_bitw = AUDIO_BITW_16;
817 }
818 else
819 {
820 return ERROR;
821 }
822
823 /* i2c init */
824 hi2cx.i2cx = I2Cx_PORT;
825
826 i2c_config(&hi2cx);
827
828 for(i_index = 0; i_index < reg_len; i_index ++)
829 {
830 i2c_cmd[0] = (uint8_t)(reg_addr_data[i_index] >> 8);
831 i2c_cmd[1] = (uint8_t)reg_addr_data[i_index] & 0xFF;
832 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
833 {
834 return ERROR;
835 }
836 }
837
838 /* timer init */
839 mclk_tmr1_init();
840
841 codec_i2s_init(&audio_codec);
842
843 return SUCCESS;
844}
845
851 error_status audio_codec_loop(void)
852{
853 static uint8_t mic_mute = 0;
854 static uint16_t mic_volume = 0;
855 static uint8_t spk_mute = 0;
856 static uint16_t spk_volume = 0;
857 uint16_t audio_ctrl_l;
858 uint16_t audio_ctrl_r;
859 uint8_t i2c_cmd[2];
860
861 if(mic_mute != audio_codec.mic_mute)
862 {
863 mic_mute = audio_codec.mic_mute;
864 audio_ctrl_l = WM8988_R21_LEFT_ADC_VOLUME << 9 | 0x100;
865 audio_ctrl_r = WM8988_R22_RIGHT_ADC_VOLUME << 9 | 0x100;
866 if(audio_codec.mic_mute == 0)
867 {
868 audio_ctrl_l |= audio_codec.mic_volume;
869 audio_ctrl_r |= audio_codec.mic_volume;
870 }
871 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
872 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
873 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
874 {
875 return ERROR;
876 }
877 i2c_cmd[0] = (uint8_t)(audio_ctrl_r >> 8);
878 i2c_cmd[1] = (uint8_t)audio_ctrl_r & 0xFF;
879 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
880 {
881 return ERROR;
882 }
883 }
884
885 if(mic_volume != audio_codec.mic_volume)
886 {
887 mic_volume = audio_codec.mic_volume;
888 audio_ctrl_l = WM8988_R21_LEFT_ADC_VOLUME << 9 | 0x100;
889 audio_ctrl_r = WM8988_R22_RIGHT_ADC_VOLUME << 9 | 0x100;
890 audio_ctrl_l |= audio_codec.mic_volume;
891 audio_ctrl_r |= audio_codec.mic_volume;
892 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
893 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
894 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
895 {
896 return ERROR;
897 }
898 i2c_cmd[0] = (uint8_t)(audio_ctrl_r >> 8);
899 i2c_cmd[1] = (uint8_t)audio_ctrl_r & 0xFF;
900 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
901 {
902 return ERROR;
903 }
904 }
905
906 if(spk_mute != audio_codec.spk_mute)
907 {
908 spk_mute = audio_codec.spk_mute;
909 audio_ctrl_l = (WM8988_R5_ADC_DAC_CONTROL << 9) | 0x0006 | (audio_codec.spk_mute << 3);
910 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
911 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
912 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
913 {
914 return ERROR;
915 }
916 }
917
918 if(spk_volume != audio_codec.spk_volume)
919 {
920 spk_volume = audio_codec.spk_volume;
921 audio_ctrl_l = WM8988_R2_LOUT1_VOLUME << 9 | 0x100;
922 audio_ctrl_r = WM8988_R3_ROUT1_VOLUME << 9 | 0x100;
923 audio_ctrl_l |= audio_codec.spk_volume;
924 audio_ctrl_r |= audio_codec.spk_volume;
925
926 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
927 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
928
929 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
930 {
931 return ERROR;
932 }
933 i2c_cmd[0] = (uint8_t)(audio_ctrl_r >> 8);
934 i2c_cmd[1] = (uint8_t)audio_ctrl_r & 0xFF;
935 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
936 {
937 return ERROR;
938 }
939 }
940 return SUCCESS;
941}
942
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:42
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:36
reg_addr_data
uint16_t reg_addr_data[]
wm8988 register default value
Definition: audio/src/audio_codec.c:69
audio_codec_mic_alt_setting
void audio_codec_mic_alt_setting(uint32_t alt_seting)
audio codec microphone alt setting config
Definition: audio/src/audio_codec.c:167
codec_i2s_reset
void codec_i2s_reset(void)
audio codec i2s reset
Definition: audio/src/audio_codec.c:476
spk_dma_buffer
uint16_t spk_dma_buffer[DMA_BUFFER_SIZE]
Definition: audio/src/audio_codec.c:105
audio_codec_set_spk_volume
void audio_codec_set_spk_volume(uint16_t volume)
audio codec set speaker volume
Definition: audio/src/audio_codec.c:215
audio_codec_set_spk_mute
void audio_codec_set_spk_mute(uint8_t mute)
audio codec set speaker mute
Definition: audio/src/audio_codec.c:193
WM8988_REG_FREQ48K
#define WM8988_REG_FREQ48K
wm8988 freq
Definition: audio/src/audio_codec.c:58
audio_codec_set_mic_freq
void audio_codec_set_mic_freq(uint32_t freq)
audio codec set microphone freq
Definition: audio/src/audio_codec.c:119
I2Cx_ADDRESS
#define I2Cx_ADDRESS
Definition: audio/src/audio_codec.c:42
I2Cx_CLK
#define I2Cx_CLK
Definition: audio/src/audio_codec.c:45
audio_codec_mic_get_data
uint32_t audio_codec_mic_get_data(uint8_t *buffer)
codec microphone get data
Definition: audio/src/audio_codec.c:280
WM8988_REG_BITW16
#define WM8988_REG_BITW16
wm8988 bit width
Definition: audio/src/audio_codec.c:64
audio_codec_loop
error_status audio_codec_loop(void)
audio codec loop
Definition: audio/src/audio_codec.c:851
codec_i2s_init
void codec_i2s_init(audio_codec_type *param)
audio codec i2s init
Definition: audio/src/audio_codec.c:490
audio_codec_set_mic_mute
void audio_codec_set_mic_mute(uint8_t mute)
audio codec set microphone mute
Definition: audio/src/audio_codec.c:182
audio_codec_spk_fifo_write
void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
codec speaker write fifo
Definition: audio/src/audio_codec.c:242
I2Cx_SDA_PIN
#define I2Cx_SDA_PIN
Definition: audio/src/audio_codec.c:51
I2Cx_SCL_PIN
#define I2Cx_SCL_PIN
Definition: audio/src/audio_codec.c:47
mic_dma_buffer
uint16_t mic_dma_buffer[DMA_BUFFER_SIZE]
Definition: audio/src/audio_codec.c:106
audio_codec_spk_feedback
uint8_t audio_codec_spk_feedback(uint8_t *feedback)
codec speaker feedback
Definition: audio/src/audio_codec.c:226
hi2cx
i2c_handle_type hi2cx
Definition: audio/src/audio_codec.c:102
DMA1_Channel4_IRQHandler
void DMA1_Channel4_IRQHandler(void)
this function handles dma1 channel4 interrupt.
Definition: audio/src/audio_codec.c:722
audio_codec_modify_freq
void audio_codec_modify_freq(uint32_t freq)
audio codec modify freq
Definition: audio/src/audio_codec.c:340
I2Cx_SDA_GPIO_PORT
#define I2Cx_SDA_GPIO_PORT
Definition: audio/src/audio_codec.c:52
audio_codec_set_mic_volume
void audio_codec_set_mic_volume(uint16_t volume)
audio codec set microphone volume
Definition: audio/src/audio_codec.c:204
mclk_tmr1_init
void mclk_tmr1_init(void)
mclk clock conifg
Definition: audio/src/audio_codec.c:435
DMA1_Channel3_IRQHandler
void DMA1_Channel3_IRQHandler(void)
this function handles dma1 channel3 interrupt.
Definition: audio/src/audio_codec.c:647
I2Cx_SDA_GPIO_CLK
#define I2Cx_SDA_GPIO_CLK
Definition: audio/src/audio_codec.c:53
audio_codec
audio_codec_type audio_codec
Definition: audio/src/audio_codec.c:104
audio_codec_spk_alt_setting
void audio_codec_spk_alt_setting(uint32_t alt_seting)
audio codec speaker alt setting config
Definition: audio/src/audio_codec.c:152
i2c_lowlevel_init
void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: audio/src/audio_codec.c:397
I2Cx_SPEED
#define I2Cx_SPEED
Definition: audio/src/audio_codec.c:41
audio_codec_init
error_status audio_codec_init(void)
audio codec init
Definition: audio/src/audio_codec.c:792
WM8988_REG_FREQ16K
#define WM8988_REG_FREQ16K
Definition: audio/src/audio_codec.c:59
copy_buff
void copy_buff(uint16_t *dest, uint16_t *src, uint32_t len)
copy buffer
Definition: audio/src/audio_codec.c:383
memset16_buffer
void memset16_buffer(uint16_t *buffer, uint32_t set, uint32_t len)
buffer memset
Definition: audio/src/audio_codec.c:367
I2Cx_PORT
#define I2Cx_PORT
Definition: audio/src/audio_codec.c:44
audio_codec_set_spk_freq
void audio_codec_set_spk_freq(uint32_t freq)
audio codec set speaker freq
Definition: audio/src/audio_codec.c:135
I2Cx_SCL_GPIO_CLK
#define I2Cx_SCL_GPIO_CLK
Definition: audio/src/audio_codec.c:49
I2Cx_SCL_GPIO_PORT
#define I2Cx_SCL_GPIO_PORT
Definition: audio/src/audio_codec.c:48
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_master_transmit
i2c_status_type i2c_master_transmit(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode.
Definition: i2c_application.c:414
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
DMA1_Channel3_IRQn
@ DMA1_Channel3_IRQn
Definition: at32f403.h:191
DMA1_Channel4_IRQn
@ DMA1_Channel4_IRQn
Definition: at32f403.h:192
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA1_HDT4_FLAG
#define DMA1_HDT4_FLAG
Definition: at32f403_dma.h:77
DMA1_HDT3_FLAG
#define DMA1_HDT3_FLAG
Definition: at32f403_dma.h:73
DMA1_FDT4_FLAG
#define DMA1_FDT4_FLAG
Definition: at32f403_dma.h:76
DMA1_FDT3_FLAG
#define DMA1_FDT3_FLAG
Definition: at32f403_dma.h:72
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA_HDT_INT
#define DMA_HDT_INT
Definition: at32f403_dma.h:51
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL4
#define DMA1_CHANNEL4
Definition: at32f403_dma.h:358
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
I2C1_MUX
#define I2C1_MUX
Definition: at32f403_gpio.h:81
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
i2s_init
void i2s_init(spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value.
Definition: at32f403_spi.c:326
spi_i2s_dma_receiver_enable
void spi_i2s_dma_receiver_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode.
Definition: at32f403_spi.c:509
i2s_enable
void i2s_enable(spi_type *spi_x, confirm_state new_state)
enable or disable i2s.
Definition: at32f403_spi.c:455
spi_i2s_reset
void spi_i2s_reset(spi_type *spi_x)
spi reset by crm reset register
Definition: at32f403_spi.c:49
i2s_default_para_init
void i2s_default_para_init(i2s_init_type *i2s_init_struct)
i2s init config with its default value.
Definition: at32f403_spi.c:308
spi_i2s_dma_transmitter_enable
void spi_i2s_dma_transmitter_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode.
Definition: at32f403_spi.c:495
i2s_data_channel_format_type
i2s_data_channel_format_type
i2s data bit num and channel bit num type
Definition: at32f403_spi.h:224
i2s_audio_sampling_freq_type
i2s_audio_sampling_freq_type
i2s audio frequency type
Definition: at32f403_spi.h:207
I2S_CLOCK_POLARITY_LOW
@ I2S_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:247
I2S_DATA_16BIT_CHANNEL_16BIT
@ I2S_DATA_16BIT_CHANNEL_16BIT
Definition: at32f403_spi.h:225
I2S_DATA_24BIT_CHANNEL_32BIT
@ I2S_DATA_24BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:227
I2S_AUDIO_PROTOCOL_PHILLIPS
@ I2S_AUDIO_PROTOCOL_PHILLIPS
Definition: at32f403_spi.h:196
I2S_MODE_MASTER_TX
@ I2S_MODE_MASTER_TX
Definition: at32f403_spi.h:238
I2S_MODE_SLAVE_RX
@ I2S_MODE_SLAVE_RX
Definition: at32f403_spi.h:237
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_output_channel_buffer_enable
void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer
Definition: at32f403_tmr.c:627
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
MIC_BUFFER_SIZE
#define MIC_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:125
SPK_BUFFER_SIZE
#define SPK_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:126
DMA_BUFFER_SIZE
#define DMA_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:127
I2S2_DT_ADDRESS
#define I2S2_DT_ADDRESS
Definition: audio/inc/audio_codec.h:114
I2S1_SD_PIN
#define I2S1_SD_PIN
Definition: audio/inc/audio_codec.h:103
I2S1_CK_PIN
#define I2S1_CK_PIN
Definition: audio/inc/audio_codec.h:102
I2S2_GPIO
#define I2S2_GPIO
Definition: audio/inc/audio_codec.h:112
I2S2_SD_PIN
#define I2S2_SD_PIN
Definition: audio/inc/audio_codec.h:111
I2S2_WS_PIN
#define I2S2_WS_PIN
Definition: audio/inc/audio_codec.h:109
I2S2_GPIO_CRM_CLK
#define I2S2_GPIO_CRM_CLK
Definition: audio/inc/audio_codec.h:113
I2S1_DT_ADDRESS
#define I2S1_DT_ADDRESS
Definition: audio/inc/audio_codec.h:106
I2S1_GPIO_CRM_CLK
#define I2S1_GPIO_CRM_CLK
Definition: audio/inc/audio_codec.h:105
I2S1_WS_PIN
#define I2S1_WS_PIN
Definition: audio/inc/audio_codec.h:101
I2S1_GPIO
#define I2S1_GPIO
Definition: audio/inc/audio_codec.h:104
I2S2_CK_PIN
#define I2S2_CK_PIN
Definition: audio/inc/audio_codec.h:110
WM8988_R27_ADDITIONAL_3_CONTROL
#define WM8988_R27_ADDITIONAL_3_CONTROL
Definition: audio/inc/audio_codec.h:75
WM8988_I2C_ADDR_CSB_LOW
#define WM8988_I2C_ADDR_CSB_LOW
Definition: audio/inc/audio_codec.h:91
WM8988_R10_LEFT_DAC_VOLUME
#define WM8988_R10_LEFT_DAC_VOLUME
Definition: audio/inc/audio_codec.h:58
WM8988_R1_RIGHT_INPUT_VOLUME
#define WM8988_R1_RIGHT_INPUT_VOLUME
Definition: audio/inc/audio_codec.h:49
WM8988_R3_ROUT1_VOLUME
#define WM8988_R3_ROUT1_VOLUME
Definition: audio/inc/audio_codec.h:51
WM8988_R36_RIGHT_OUT_MIX_1
#define WM8988_R36_RIGHT_OUT_MIX_1
Definition: audio/inc/audio_codec.h:82
WM8988_R21_LEFT_ADC_VOLUME
#define WM8988_R21_LEFT_ADC_VOLUME
Definition: audio/inc/audio_codec.h:69
WM8988_R31_ADC_INPUT_MODE
#define WM8988_R31_ADC_INPUT_MODE
Definition: audio/inc/audio_codec.h:77
WM8988_R13_TREBLE_CONTROL
#define WM8988_R13_TREBLE_CONTROL
Definition: audio/inc/audio_codec.h:61
WM8988_R16_3D_CONTROL
#define WM8988_R16_3D_CONTROL
Definition: audio/inc/audio_codec.h:64
WM8988_R22_RIGHT_ADC_VOLUME
#define WM8988_R22_RIGHT_ADC_VOLUME
Definition: audio/inc/audio_codec.h:70
WM8988_R0_LEFT_INPUT_VOLUME
#define WM8988_R0_LEFT_INPUT_VOLUME
Definition: audio/inc/audio_codec.h:48
WM8988_R23_ADDITIONAL_1_CONTROL
#define WM8988_R23_ADDITIONAL_1_CONTROL
Definition: audio/inc/audio_codec.h:71
WM8988_R35_LEFT_OUT_MIX_2
#define WM8988_R35_LEFT_OUT_MIX_2
Definition: audio/inc/audio_codec.h:81
WM8988_R43_LOW_POWER_PALYBACK
#define WM8988_R43_LOW_POWER_PALYBACK
Definition: audio/inc/audio_codec.h:89
WM8988_R32_ADC_L_SIGNAL_PATH
#define WM8988_R32_ADC_L_SIGNAL_PATH
Definition: audio/inc/audio_codec.h:78
WM8988_R26_PWR_2_MGMT
#define WM8988_R26_PWR_2_MGMT
Definition: audio/inc/audio_codec.h:74
WM8988_R11_RIGHT_DAC_VOLUME
#define WM8988_R11_RIGHT_DAC_VOLUME
Definition: audio/inc/audio_codec.h:59
WM8988_R24_ADDITIONAL_2_CONTROL
#define WM8988_R24_ADDITIONAL_2_CONTROL
Definition: audio/inc/audio_codec.h:72
WM8988_R40_LOUT2_VOLUME
#define WM8988_R40_LOUT2_VOLUME
Definition: audio/inc/audio_codec.h:86
WM8988_R34_LEFT_OUT_MIX_1
#define WM8988_R34_LEFT_OUT_MIX_1
Definition: audio/inc/audio_codec.h:80
WM8988_R5_ADC_DAC_CONTROL
#define WM8988_R5_ADC_DAC_CONTROL
Definition: audio/inc/audio_codec.h:53
WM8988_R25_PWR_1_MGMT
#define WM8988_R25_PWR_1_MGMT
Definition: audio/inc/audio_codec.h:73
WM8988_R41_ROUT2_VOLUME
#define WM8988_R41_ROUT2_VOLUME
Definition: audio/inc/audio_codec.h:87
WM8988_R2_LOUT1_VOLUME
#define WM8988_R2_LOUT1_VOLUME
Definition: audio/inc/audio_codec.h:50
WM8988_R37_RIGHT_OUT_MIX_2
#define WM8988_R37_RIGHT_OUT_MIX_2
Definition: audio/inc/audio_codec.h:83
WM8988_R33_ADC_R_SIGNAL_PATH
#define WM8988_R33_ADC_R_SIGNAL_PATH
Definition: audio/inc/audio_codec.h:79
WM8988_R12_BASS_CONTROL
#define WM8988_R12_BASS_CONTROL
Definition: audio/inc/audio_codec.h:60
AUDIO_BITW_16
#define AUDIO_BITW_16
Definition: audio/audio_conf.h:59
AUDIO_MIC_CHANEL_NUM
#define AUDIO_MIC_CHANEL_NUM
Definition: audio/audio_conf.h:61
AUDIO_DEFAULT_FREQ
#define AUDIO_DEFAULT_FREQ
Definition: audio/audio_conf.h:69
AUDIO_FREQ_16K
#define AUDIO_FREQ_16K
Definition: audio/audio_conf.h:57
AUDIO_SPK_CHANEL_NUM
#define AUDIO_SPK_CHANEL_NUM
Definition: audio/audio_conf.h:64
AUDIO_DEFAULT_BITW
#define AUDIO_DEFAULT_BITW
Definition: audio/audio_conf.h:70
AUDIO_FREQ_48K
#define AUDIO_FREQ_48K
Definition: audio/audio_conf.h:58
i2c_application.h
i2c application libray header file
audio_codec_type
Definition: audio/inc/audio_codec.h:130
audio_codec_type::spk_mute
uint8_t spk_mute
Definition: audio/inc/audio_codec.h:159
audio_codec_type::spk_threshold
uint16_t spk_threshold
Definition: audio/inc/audio_codec.h:141
audio_codec_type::spk_stage
uint8_t spk_stage
Definition: audio/inc/audio_codec.h:143
audio_codec_type::mic_roff
uint16_t * mic_roff
Definition: audio/inc/audio_codec.h:147
audio_codec_type::spk_buffer
uint16_t spk_buffer[4096]
Definition: audio/inc/audio_codec.h:134
audio_codec_type::mic_volume
uint16_t mic_volume
Definition: audio/inc/audio_codec.h:161
audio_codec_type::spk_roff
uint16_t * spk_roff
Definition: audio/inc/audio_codec.h:135
audio_codec_type::spk_rtotal
uint32_t spk_rtotal
Definition: audio/inc/audio_codec.h:140
audio_codec_type::mic_delta
uint32_t mic_delta
Definition: audio/inc/audio_codec.h:152
audio_codec_type::spk_calc
uint16_t spk_calc
Definition: audio/inc/audio_codec.h:142
audio_codec_type::mic_woff
uint16_t * mic_woff
Definition: audio/inc/audio_codec.h:148
audio_codec_type::mic_stage
uint8_t mic_stage
Definition: audio/inc/audio_codec.h:156
audio_codec_type::mic_adj_count
uint16_t mic_adj_count
Definition: audio/inc/audio_codec.h:154
audio_codec_type::spk_freq
uint32_t spk_freq
Definition: audio/inc/audio_codec.h:138
audio_codec_type::audio_bitw
uint32_t audio_bitw
Definition: audio/inc/audio_codec.h:132
audio_codec_type::mic_wend
uint16_t * mic_wend
Definition: audio/inc/audio_codec.h:149
audio_codec_type::spk_rend
uint16_t * spk_rend
Definition: audio/inc/audio_codec.h:137
audio_codec_type::mic_wtotal
uint32_t mic_wtotal
Definition: audio/inc/audio_codec.h:150
audio_codec_type::mic_rtotal
uint32_t mic_rtotal
Definition: audio/inc/audio_codec.h:151
audio_codec_type::audio_freq
uint32_t audio_freq
Definition: audio/inc/audio_codec.h:131
audio_codec_type::mic_mute
uint8_t mic_mute
Definition: audio/inc/audio_codec.h:158
audio_codec_type::spk_volume
uint16_t spk_volume
Definition: audio/inc/audio_codec.h:162
audio_codec_type::mic_calc
uint16_t mic_calc
Definition: audio/inc/audio_codec.h:153
audio_codec_type::spk_wtotal
uint32_t spk_wtotal
Definition: audio/inc/audio_codec.h:139
audio_codec_type::mic_adj_stage
uint8_t mic_adj_stage
Definition: audio/inc/audio_codec.h:155
audio_codec_type::spk_tx_size
uint32_t spk_tx_size
Definition: audio/inc/audio_codec.h:164
audio_codec_type::mic_rx_size
uint32_t mic_rx_size
Definition: audio/inc/audio_codec.h:165
audio_codec_type::spk_woff
uint16_t * spk_woff
Definition: audio/inc/audio_codec.h:136
audio_codec_type::mic_buffer
uint16_t mic_buffer[1024]
Definition: audio/inc/audio_codec.h:146
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
i2s_init_type
i2s init type
Definition: at32f403_spi.h:270
i2s_init_type::audio_sampling_freq
i2s_audio_sampling_freq_type audio_sampling_freq
Definition: at32f403_spi.h:273
i2s_init_type::data_channel_format
i2s_data_channel_format_type data_channel_format
Definition: at32f403_spi.h:274
i2s_init_type::mclk_output_enable
confirm_state mclk_output_enable
Definition: at32f403_spi.h:276
i2s_init_type::audio_protocol
i2s_audio_protocol_type audio_protocol
Definition: at32f403_spi.h:272
i2s_init_type::operation_mode
i2s_operation_mode_type operation_mode
Definition: at32f403_spi.h:271
i2s_init_type::clock_polarity
i2s_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:275
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400


AT32F403 Firmwary Library: audio_class.c Source File

  • middlewares
  • usbd_class
  • audio
audio_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "audio_class.h"
26#include "audio_desc.h"
27#include "audio_codec.h"
28
42static usb_sts_type class_init_handler(void *udev);
43static usb_sts_type class_clear_handler(void *udev);
44static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
45static usb_sts_type class_ept0_tx_handler(void *udev);
46static usb_sts_type class_ept0_rx_handler(void *udev);
47static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
49static usb_sts_type class_sof_handler(void *udev);
50static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
51
52static void audio_req_get_cur(void *udev, usb_setup_type *setup);
53static void audio_req_set_cur(void *udev, usb_setup_type *setup);
54static void audio_req_get_min(void *udev, usb_setup_type *setup);
55static void audio_req_get_max(void *udev, usb_setup_type *setup);
56static void audio_req_get_res(void *udev, usb_setup_type *setup);
57static void audio_get_interface(void *udev, usb_setup_type *setup);
58static void audio_set_interface(void *udev, usb_setup_type *setup);
59
60 usb_audio_type audio_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0};
61
62/* usb device class handler */
63 usbd_class_handler audio_class_handler =
64{
65 class_init_handler,
66 class_clear_handler,
67 class_setup_handler,
68 class_ept0_tx_handler,
69 class_ept0_rx_handler,
70 class_in_handler,
71 class_out_handler,
72 class_sof_handler,
73 class_event_handler,
74 &audio_struct
75};
76
82static usb_sts_type class_init_handler(void *udev)
83{
84 usb_sts_type status = USB_OK;
85 usbd_core_type *pudev = (usbd_core_type *)udev;
86 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
87 /* enable microphone in endpoint double buffer mode */
88 usbd_ept_dbuffer_enable(pudev, USBD_AUDIO_MIC_IN_EPT);
89
90 /* open microphone in endpoint */
91 usbd_ept_open(pudev, USBD_AUDIO_MIC_IN_EPT, EPT_ISO_TYPE, AUDIO_MIC_IN_MAXPACKET_SIZE);
92
93 /* enable speaker out endpoint double buffer mode */
94 usbd_ept_dbuffer_enable(pudev, USBD_AUDIO_SPK_OUT_EPT);
95
96 /* open speaker out endpoint */
97 usbd_ept_open(pudev, USBD_AUDIO_SPK_OUT_EPT, EPT_ISO_TYPE, AUDIO_SPK_OUT_MAXPACKET_SIZE);
98
99 /* enable speaker feedback endpoint double buffer mode */
100 usbd_ept_dbuffer_enable(pudev, USBD_AUDIO_FEEDBACK_EPT);
101
102 /* open speaker feedback endpoint */
103 usbd_ept_open(pudev, USBD_AUDIO_FEEDBACK_EPT, EPT_ISO_TYPE, AUDIO_FEEDBACK_MAXPACKET_SIZE);
104
105 /* start receive speaker out data */
106 usbd_ept_recv(pudev, USBD_AUDIO_SPK_OUT_EPT, paudio->audio_spk_data, AUDIO_SPK_OUT_MAXPACKET_SIZE);
107
108 return status;
109}
110
116static usb_sts_type class_clear_handler(void *udev)
117{
118 usb_sts_type status = USB_OK;
119 usbd_core_type *pudev = (usbd_core_type *)udev;
120
121 /* close in endpoint */
122 usbd_ept_close(pudev, USBD_AUDIO_MIC_IN_EPT);
123
124 /* close in endpoint */
125 usbd_ept_close(pudev, USBD_AUDIO_FEEDBACK_EPT);
126
127 /* close out endpoint */
128 usbd_ept_close(pudev, USBD_AUDIO_SPK_OUT_EPT);
129
130 return status;
131}
132
139static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
140{
141 usb_sts_type status = USB_OK;
142 usbd_core_type *pudev = (usbd_core_type *)udev;
143 uint16_t len;
144
145 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
146 {
147 /* class request */
148 case USB_REQ_TYPE_CLASS:
149 switch(setup->bRequest)
150 {
151 case AUDIO_REQ_GET_CUR:
152 audio_req_get_cur(pudev, setup);
153 break;
154
155 case AUDIO_REQ_SET_CUR:
156 audio_req_set_cur(pudev, setup);
157 break;
158
159 case AUDIO_REQ_GET_MIN:
160 audio_req_get_min(pudev, setup);
161 break;
162
163 case AUDIO_REQ_GET_MAX:
164 audio_req_get_max(pudev, setup);
165 break;
166
167 case AUDIO_REQ_GET_RES:
168 audio_req_get_res(pudev, setup);
169 break;
170
171 default:
172 usbd_ctrl_unsupport(pudev);
173 break;
174 }
175 break;
176 /* standard request */
177 case USB_REQ_TYPE_STANDARD:
178 switch(setup->bRequest)
179 {
180 case USB_STD_REQ_GET_DESCRIPTOR:
181 if((setup->wValue >> 8) == AUDIO_DESCRIPTOR_TYPE)
182 {
183 usbd_desc_t *config = pudev->desc_handler->get_device_configuration();
184 len = MIN(AUDIO_DESCRIPTOR_SIZE, setup->wLength);
185 usbd_ctrl_send(pudev, config->descriptor + 18, len);
186 }
187 else
188 {
189 usbd_ctrl_unsupport(pudev);
190 }
191 break;
192 case USB_STD_REQ_GET_INTERFACE:
193 audio_get_interface(udev, setup);
194 break;
195
196 case USB_STD_REQ_SET_INTERFACE:
197 audio_set_interface(udev, setup);
198 usbd_ctrl_send_status(pudev);
199 break;
200 case USB_STD_REQ_CLEAR_FEATURE:
201 break;
202 case USB_STD_REQ_SET_FEATURE:
203 break;
204 default:
205 usbd_ctrl_unsupport(pudev);
206 break;
207 }
208 break;
209
210 default:
211 usbd_ctrl_unsupport(pudev);
212 break;
213 }
214 return status;
215}
216
222static usb_sts_type class_ept0_tx_handler(void *udev)
223{
224 usb_sts_type status = USB_OK;
225
226 /* ...user code... */
227
228 return status;
229}
230
236static usb_sts_type class_ept0_rx_handler(void *udev)
237{
238 usb_sts_type status = USB_OK;
239 usbd_core_type *pudev = (usbd_core_type *)udev;
240 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
241 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
242 /* ...user code... */
243 if( paudio->audio_cmd == AUDIO_REQ_SET_CUR)
244 {
245 /* class process */
246 switch( paudio->request_no)
247 {
248 case AUDIO_VOLUME_CONTROL:
249 if( paudio->interface == AUDIO_SPK_FEATURE_UNIT_ID)
250 {
251 paudio->spk_volume = (uint16_t)( paudio->g_audio_cur[0] |
252 ( paudio->g_audio_cur[1] << 8));
253 /* set volume */
254 audio_codec_set_spk_volume(paudio->spk_volume*100/paudio->spk_volume_limits[1]);
255 }
256 else
257 {
258 paudio->mic_volume = (uint16_t)(paudio->g_audio_cur[0] |
259 (paudio->g_audio_cur[1] << 8));
260
261 audio_codec_set_mic_volume(paudio->mic_volume*256/paudio->mic_volume_limits[1]);
262 }
263 break;
264 case AUDIO_MUTE_CONTROL:
265 if(paudio->interface == AUDIO_SPK_FEATURE_UNIT_ID)
266 {
267 paudio->spk_mute = paudio->g_audio_cur[0];
268 audio_codec_set_spk_mute(paudio->spk_mute);
269 }
270 else
271 {
272 paudio->mic_mute = paudio->g_audio_cur[0];
273 audio_codec_set_mic_mute(paudio->mic_mute);
274 }
275
276 break;
277 case AUDIO_FREQ_SET_CONTROL:
278 if(paudio->enpd == USBD_AUDIO_MIC_IN_EPT)
279 {
280 paudio->mic_freq = (paudio->g_audio_cur[0] |
281 (paudio->g_audio_cur[1] << 8) |
282 (paudio->g_audio_cur[2] << 16));
283 audio_codec_set_mic_freq(paudio->mic_freq);
284 }
285 else
286 {
287 paudio->spk_freq = (paudio->g_audio_cur[0] |
288 (paudio->g_audio_cur[1] << 8) |
289 (paudio->g_audio_cur[2] << 16));
290 audio_codec_set_spk_freq(paudio->spk_freq);
291 }
292 break;
293 default:
294 break;
295 }
296 }
297
298 return status;
299}
300
307static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
308{
309 usb_sts_type status = USB_OK;
310 usbd_core_type *pudev = (usbd_core_type *)udev;
311 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
312 uint32_t len = 0;
313
314 /* ...user code...
315 trans next packet data
316 */
317 if((ept_num & 0x7F) == (USBD_AUDIO_MIC_IN_EPT & 0x7F))
318 {
319 len = audio_codec_mic_get_data(paudio->audio_mic_data);
320 usbd_ept_send(udev, USBD_AUDIO_MIC_IN_EPT, paudio->audio_mic_data, len);
321 }
322
323 else if((ept_num & 0x7F) == (USBD_AUDIO_FEEDBACK_EPT & 0x7F))
324 {
325 len = audio_codec_spk_feedback(paudio->audio_feed_back);
326 usbd_ept_send(udev, USBD_AUDIO_FEEDBACK_EPT, paudio->audio_feed_back, len);
327 }
328
329 return status;
330}
331
338static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
339{
340 usb_sts_type status = USB_OK;
341 usbd_core_type *pudev = (usbd_core_type *)udev;
342 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
343 uint16_t g_rxlen;
344
345 /* get endpoint receive data length */
346 g_rxlen = usbd_get_recv_len(pudev, ept_num);
347
348 if((ept_num & 0x7F) == (USBD_AUDIO_SPK_OUT_EPT & 0x7F))
349 {
350 /* speaker data*/
351 audio_codec_spk_fifo_write(paudio->audio_spk_data, g_rxlen);
352
353 /* get next data */
354 usbd_ept_recv(pudev, USBD_AUDIO_SPK_OUT_EPT, paudio->audio_spk_data, AUDIO_SPK_OUT_MAXPACKET_SIZE);
355 }
356
357 return status;
358}
359
365static usb_sts_type class_sof_handler(void *udev)
366{
367 usb_sts_type status = USB_OK;
368
369 /* ...user code... */
370
371 return status;
372}
373
380 usb_sts_type class_event_handler(void *udev, usbd_event_type event)
381{
382 usb_sts_type status = USB_OK;
383 usbd_core_type *pudev = (usbd_core_type *)udev;
384 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
385 switch(event)
386 {
387 case USBD_RESET_EVENT:
388
389 /* ...user code... */
390
391 break;
392 case USBD_SUSPEND_EVENT:
393 paudio->spk_alt_setting = 0;
394 audio_codec_spk_alt_setting(paudio->spk_alt_setting);
395 paudio->mic_alt_setting = 0;
396 audio_codec_mic_alt_setting(paudio->spk_alt_setting);
397 /* ...user code... */
398
399 break;
400 case USBD_WAKEUP_EVENT:
401 /* ...user code... */
402
403 break;
404 default:
405 break;
406 }
407 return status;
408}
409
416static void audio_req_get_cur(void *udev, usb_setup_type *setup)
417{
418 usbd_core_type *pudev = (usbd_core_type *)udev;
419 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
420 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
421 {
422 if(HBYTE(setup->wValue) == AUDIO_MUTE_CONTROL)
423 {
424 paudio->g_audio_cur[0] = paudio->spk_mute;
425 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
426 }
427 else
428 {
429 *((uint16_t *)paudio->g_audio_cur) = paudio->spk_volume;
430 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
431 }
432 }
433 else
434 {
435 if(HBYTE(setup->wValue) == AUDIO_MUTE_CONTROL)
436 {
437 paudio->g_audio_cur[0] = paudio->mic_mute;
438 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
439 }
440 else
441 {
442 *((uint16_t *)paudio->g_audio_cur) = paudio->mic_volume;
443 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
444 }
445
446 }
447}
448
455static void audio_req_set_cur(void *udev, usb_setup_type *setup)
456{
457 usbd_core_type *pudev = (usbd_core_type *)udev;
458 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
459 if(setup->wLength > 0)
460 {
461 usbd_ctrl_recv(pudev, paudio->g_audio_cur, setup->wLength);
462
463 paudio->audio_cmd = AUDIO_REQ_SET_CUR;
464 paudio->audio_cmd_len = setup->wLength;
465
466 switch(setup->bmRequestType & AUDIO_REQ_CONTROL_MASK)
467 {
468 case AUDIO_REQ_CONTROL_INTERFACE:
469 paudio->interface = HBYTE(setup->wIndex);
470 if(HBYTE(setup->wValue) == AUDIO_MUTE_CONTROL)
471 {
472 paudio->request_no = AUDIO_MUTE_CONTROL;
473 }
474 else
475 {
476 paudio->request_no = AUDIO_VOLUME_CONTROL;
477 }
478 break;
479 case AUDIO_REQ_CONTROL_ENDPOINT:
480 paudio->enpd = setup->wIndex;
481 paudio->request_no = AUDIO_FREQ_SET_CONTROL;
482 break;
483 default:
484 break;
485 }
486 }
487}
488
495static void audio_req_get_min(void *udev, usb_setup_type *setup)
496{
497 usbd_core_type *pudev = (usbd_core_type *)udev;
498 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
499 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
500 {
501 *((uint16_t *)paudio->g_audio_cur) = paudio->spk_volume_limits[0];
502 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
503 }
504 else
505 {
506 *((uint16_t *)paudio->g_audio_cur) = paudio->mic_volume_limits[0];
507 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
508 }
509}
510
517static void audio_req_get_max(void *udev, usb_setup_type *setup)
518{
519 usbd_core_type *pudev = (usbd_core_type *)udev;
520 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
521 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
522 {
523 *((uint16_t *)paudio->g_audio_cur) = paudio->spk_volume_limits[1];
524 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
525 }
526 else
527 {
528 *((uint16_t *)paudio->g_audio_cur) = paudio->mic_volume_limits[1];
529 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
530 }
531}
532
539static void audio_req_get_res(void *udev, usb_setup_type *setup)
540{
541 usbd_core_type *pudev = (usbd_core_type *)udev;
542 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
543 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
544 {
545 *((uint16_t *)paudio->g_audio_cur) = paudio->spk_volume_limits[2];
546 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
547 }
548 else
549 {
550 *((uint16_t *)paudio->g_audio_cur) = paudio->mic_volume_limits[2];
551 usbd_ctrl_send(pudev, paudio->g_audio_cur, setup->wLength);
552 }
553}
554
561static void audio_set_interface(void *udev, usb_setup_type *setup)
562{
563 uint32_t len;
564 usbd_core_type *pudev = (usbd_core_type *)udev;
565 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
566 if(LBYTE(setup->wIndex) == AUDIO_SPK_INTERFACE_NUMBER)
567 {
568 paudio->spk_alt_setting = setup->wValue;
569 audio_codec_spk_alt_setting(paudio->spk_alt_setting);
570 if(paudio->spk_alt_setting )
571 {
572 int len = audio_codec_spk_feedback(paudio->audio_feed_back);
573 usbd_ept_recv(pudev, USBD_AUDIO_SPK_OUT_EPT, paudio->audio_spk_data, AUDIO_SPK_OUT_MAXPACKET_SIZE);
574 usbd_ept_send(pudev, USBD_AUDIO_FEEDBACK_EPT, paudio->audio_feed_back, len);
575 }
576
577 }
578 else if(LBYTE(setup->wIndex) == AUDIO_MIC_INTERFACE_NUMBER)
579 {
580 paudio->mic_alt_setting = setup->wValue;
581 audio_codec_mic_alt_setting(paudio->mic_alt_setting);
582 if(paudio->mic_alt_setting)
583 {
584 len = audio_codec_mic_get_data(paudio->audio_mic_data);
585 usbd_ept_send(pudev, USBD_AUDIO_MIC_IN_EPT, paudio->audio_mic_data, len);
586 }
587 }
588
589}
590
591
598static void audio_get_interface(void *udev, usb_setup_type *setup)
599{
600 usbd_core_type *pudev = (usbd_core_type *)udev;
601 usb_audio_type *paudio = (usb_audio_type *)pudev->class_handler->pdata;
602 if(LBYTE(setup->wIndex) == AUDIO_SPK_INTERFACE_NUMBER)
603 {
604 usbd_ctrl_send(pudev, (uint8_t *)&paudio->spk_alt_setting, 1);
605 }
606 else if(LBYTE(setup->wIndex) == AUDIO_MIC_INTERFACE_NUMBER)
607 {
608 usbd_ctrl_send(pudev, (uint8_t *)&paudio->mic_alt_setting, 1);
609 }
610
611}
612
613
audio_class.h
usb audio class file
audio_desc.h
usb audio descriptor header file
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
AUDIO_DESCRIPTOR_TYPE
#define AUDIO_DESCRIPTOR_TYPE
audio descriptor type
Definition: audio_class.h:81
AUDIO_MIC_IN_MAXPACKET_SIZE
#define AUDIO_MIC_IN_MAXPACKET_SIZE
Definition: audio_class.h:60
AUDIO_MUTE_CONTROL
#define AUDIO_MUTE_CONTROL
audio set cur type define
Definition: audio_class.h:74
AUDIO_REQ_CONTROL_INTERFACE
#define AUDIO_REQ_CONTROL_INTERFACE
request type define
Definition: audio_class.h:67
AUDIO_SPK_OUT_MAXPACKET_SIZE
#define AUDIO_SPK_OUT_MAXPACKET_SIZE
Definition: audio_class.h:61
AUDIO_VOLUME_CONTROL
#define AUDIO_VOLUME_CONTROL
Definition: audio_class.h:75
AUDIO_FREQ_SET_CONTROL
#define AUDIO_FREQ_SET_CONTROL
Definition: audio_class.h:76
AUDIO_REQ_CONTROL_ENDPOINT
#define AUDIO_REQ_CONTROL_ENDPOINT
Definition: audio_class.h:68
AUDIO_REQ_CONTROL_MASK
#define AUDIO_REQ_CONTROL_MASK
Definition: audio_class.h:69
USBD_AUDIO_SPK_OUT_EPT
#define USBD_AUDIO_SPK_OUT_EPT
Definition: audio_class.h:53
USBD_AUDIO_MIC_IN_EPT
#define USBD_AUDIO_MIC_IN_EPT
endpoint define
Definition: audio_class.h:52
AUDIO_DESCRIPTOR_SIZE
#define AUDIO_DESCRIPTOR_SIZE
Definition: audio_class.h:82
USBD_AUDIO_FEEDBACK_EPT
#define USBD_AUDIO_FEEDBACK_EPT
Definition: audio_class.h:54
AUDIO_FEEDBACK_MAXPACKET_SIZE
#define AUDIO_FEEDBACK_MAXPACKET_SIZE
Definition: audio_class.h:62
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: audio_class.c:365
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: audio_class.c:307
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: audio_class.c:116
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: audio_class.c:139
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: audio_class.c:222
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: audio_class.c:380
audio_class_handler
usbd_class_handler audio_class_handler
Definition: audio_class.c:63
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: audio_class.c:236
audio_req_get_res
static void audio_req_get_res(void *udev, usb_setup_type *setup)
usb audio request get res
Definition: audio_class.c:539
audio_get_interface
static void audio_get_interface(void *udev, usb_setup_type *setup)
usb audio get interface
Definition: audio_class.c:598
audio_req_set_cur
static void audio_req_set_cur(void *udev, usb_setup_type *setup)
usb audio request set cur
Definition: audio_class.c:455
audio_struct
usb_audio_type audio_struct
Definition: audio_class.c:60
audio_req_get_max
static void audio_req_get_max(void *udev, usb_setup_type *setup)
usb audio request get max
Definition: audio_class.c:517
audio_req_get_min
static void audio_req_get_min(void *udev, usb_setup_type *setup)
usb audio request get min
Definition: audio_class.c:495
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: audio_class.c:82
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: audio_class.c:338
audio_req_get_cur
static void audio_req_get_cur(void *udev, usb_setup_type *setup)
usb audio request get cur
Definition: audio_class.c:416
audio_set_interface
static void audio_set_interface(void *udev, usb_setup_type *setup)
usb audio set interface
Definition: audio_class.c:561
AUDIO_REQ_GET_CUR
#define AUDIO_REQ_GET_CUR
Definition: audio_desc.h:111
AUDIO_SPK_INTERFACE_NUMBER
#define AUDIO_SPK_INTERFACE_NUMBER
Definition: audio_desc.h:178
AUDIO_MIC_INTERFACE_NUMBER
#define AUDIO_MIC_INTERFACE_NUMBER
audio interface number
Definition: audio_desc.h:176
AUDIO_REQ_GET_MAX
#define AUDIO_REQ_GET_MAX
Definition: audio_desc.h:115
AUDIO_REQ_GET_MIN
#define AUDIO_REQ_GET_MIN
Definition: audio_desc.h:113
AUDIO_SPK_FEATURE_UNIT_ID
#define AUDIO_SPK_FEATURE_UNIT_ID
Definition: audio_desc.h:170
AUDIO_REQ_GET_RES
#define AUDIO_REQ_GET_RES
Definition: audio_desc.h:117
AUDIO_REQ_SET_CUR
#define AUDIO_REQ_SET_CUR
Definition: audio_desc.h:110
audio_codec_mic_alt_setting
void audio_codec_mic_alt_setting(uint32_t alt_seting)
audio codec microphone alt setting config
Definition: audio/src/audio_codec.c:167
audio_codec_set_spk_volume
void audio_codec_set_spk_volume(uint16_t volume)
audio codec set speaker volume
Definition: audio/src/audio_codec.c:215
audio_codec_set_spk_mute
void audio_codec_set_spk_mute(uint8_t mute)
audio codec set speaker mute
Definition: audio/src/audio_codec.c:193
audio_codec_set_mic_freq
void audio_codec_set_mic_freq(uint32_t freq)
audio codec set microphone freq
Definition: audio/src/audio_codec.c:119
audio_codec_mic_get_data
uint32_t audio_codec_mic_get_data(uint8_t *buffer)
codec microphone get data
Definition: audio/src/audio_codec.c:280
audio_codec_set_mic_mute
void audio_codec_set_mic_mute(uint8_t mute)
audio codec set microphone mute
Definition: audio/src/audio_codec.c:182
audio_codec_spk_fifo_write
void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
audio codec interface
Definition: audio/src/audio_codec.c:242
audio_codec_spk_feedback
uint8_t audio_codec_spk_feedback(uint8_t *feedback)
codec speaker feedback
Definition: audio/src/audio_codec.c:226
audio_codec_set_mic_volume
void audio_codec_set_mic_volume(uint16_t volume)
audio codec set microphone volume
Definition: audio/src/audio_codec.c:204
audio_codec_spk_alt_setting
void audio_codec_spk_alt_setting(uint32_t alt_seting)
audio codec speaker alt setting config
Definition: audio/src/audio_codec.c:152
audio_codec_set_spk_freq
void audio_codec_set_spk_freq(uint32_t freq)
audio codec set speaker freq
Definition: audio/src/audio_codec.c:135
EPT_ISO_TYPE
@ EPT_ISO_TYPE
Definition: at32f403_usb.h:202
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_ept_dbuffer_enable
void usbd_ept_dbuffer_enable(usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer.
Definition: usbd_core.c:404
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ctrl_send_status
void usbd_ctrl_send_status(usbd_core_type *udev)
usb control endpoint send in status
Definition: usbd_core.c:209
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
usb_audio_type
usb audio control struct
Definition: audio_class.h:88
usb_audio_type::mic_alt_setting
uint32_t mic_alt_setting
Definition: audio_class.h:104
usb_audio_type::enpd
uint8_t enpd
Definition: audio_class.h:89
usb_audio_type::mic_freq
uint32_t mic_freq
Definition: audio_class.h:97
usb_audio_type::spk_volume_limits
uint16_t spk_volume_limits[3]
Definition: audio_class.h:98
usb_audio_type::mic_volume_limits
uint16_t mic_volume_limits[3]
Definition: audio_class.h:99
usb_audio_type::interface
uint8_t interface
Definition: audio_class.h:90
usb_audio_type::audio_spk_data
uint8_t audio_spk_data[(16 *2 *(16/8)+40)]
Definition: audio_class.h:106
usb_audio_type::audio_mic_data
uint8_t audio_mic_data[(16 *2 *(16/8)+40)]
Definition: audio_class.h:107
usb_audio_type::audio_cmd_len
uint32_t audio_cmd_len
Definition: audio_class.h:102
usb_audio_type::spk_alt_setting
uint32_t spk_alt_setting
Definition: audio_class.h:103
usb_audio_type::spk_volume
uint16_t spk_volume
Definition: audio_class.h:94
usb_audio_type::mic_volume
uint16_t mic_volume
Definition: audio_class.h:95
usb_audio_type::spk_freq
uint32_t spk_freq
Definition: audio_class.h:96
usb_audio_type::g_audio_cur
uint8_t g_audio_cur[64]
Definition: audio_class.h:105
usb_audio_type::spk_mute
uint8_t spk_mute
Definition: audio_class.h:92
usb_audio_type::request_no
uint8_t request_no
Definition: audio_class.h:91
usb_audio_type::audio_cmd
uint8_t audio_cmd
Definition: audio_class.h:101
usb_audio_type::audio_feed_back
uint8_t audio_feed_back[0x3+1]
Definition: audio_class.h:108
usb_audio_type::mic_mute
uint8_t mic_mute
Definition: audio_class.h:93
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::wIndex
uint16_t wIndex
Definition: usb_std.h:294
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core_type::desc_handler
usbd_desc_handler * desc_handler
Definition: usbd_core.h:112
usbd_desc_handler::get_device_configuration
usbd_desc_t *(* get_device_configuration)(void)
Definition: usbd_core.h:77
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: audio_class.h Source File

  • middlewares
  • usbd_class
  • audio
audio_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_CLASS_H
27#define __AUDIO_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35#include "audio_conf.h"
36
52#define USBD_AUDIO_MIC_IN_EPT 0x81
53#define USBD_AUDIO_SPK_OUT_EPT 0x02
54#define USBD_AUDIO_FEEDBACK_EPT 0x83
55
59#define AUDIO_REMAIN_SIZE 40
60#define AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
61#define AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
62#define AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3
63#define FEEDBACK_REFRESH_TIME 0x8
67#define AUDIO_REQ_CONTROL_INTERFACE 0x01
68#define AUDIO_REQ_CONTROL_ENDPOINT 0x02
69#define AUDIO_REQ_CONTROL_MASK 0x03
70
74#define AUDIO_MUTE_CONTROL 0x01
75#define AUDIO_VOLUME_CONTROL 0x02
76#define AUDIO_FREQ_SET_CONTROL 0x03
77
81#define AUDIO_DESCRIPTOR_TYPE 0x21
82#define AUDIO_DESCRIPTOR_SIZE 0x09
83
87typedef struct
88{
89 uint8_t enpd;
90 uint8_t interface;
91 uint8_t request_no;
92 uint8_t spk_mute;
93 uint8_t mic_mute;
94 uint16_t spk_volume;
95 uint16_t mic_volume;
96 uint32_t spk_freq;
97 uint32_t mic_freq;
98 uint16_t spk_volume_limits[3]; /*[0] is mininum value, [1] is maxnum value, [2] is volume resolution */
99 uint16_t mic_volume_limits[3]; /*[0] is mininum value, [1] is maxnum value, [2] is volume resolution */
100
101 uint8_t audio_cmd;
102 uint32_t audio_cmd_len;
103 uint32_t spk_alt_setting;
104 uint32_t mic_alt_setting;
105 uint8_t g_audio_cur[64];
106 uint8_t audio_spk_data[AUDIO_SPK_OUT_MAXPACKET_SIZE];
107 uint8_t audio_mic_data[AUDIO_MIC_IN_MAXPACKET_SIZE];
108 uint8_t audio_feed_back[AUDIO_FEEDBACK_MAXPACKET_SIZE+1];
109}usb_audio_type;
110
111extern usbd_class_handler audio_class_handler;
112
125#ifdef __cplusplus
126}
127#endif
128
129#endif
130
audio_conf.h
usb audio config
AUDIO_MIC_IN_MAXPACKET_SIZE
#define AUDIO_MIC_IN_MAXPACKET_SIZE
Definition: audio_class.h:60
audio_class_handler
usbd_class_handler audio_class_handler
Definition: audio_class.c:63
AUDIO_SPK_OUT_MAXPACKET_SIZE
#define AUDIO_SPK_OUT_MAXPACKET_SIZE
Definition: audio_class.h:61
AUDIO_FEEDBACK_MAXPACKET_SIZE
#define AUDIO_FEEDBACK_MAXPACKET_SIZE
Definition: audio_class.h:62
usb_audio_type
usb audio control struct
Definition: audio_class.h:88
usb_audio_type::mic_alt_setting
uint32_t mic_alt_setting
Definition: audio_class.h:104
usb_audio_type::enpd
uint8_t enpd
Definition: audio_class.h:89
usb_audio_type::mic_freq
uint32_t mic_freq
Definition: audio_class.h:97
usb_audio_type::interface
uint8_t interface
Definition: audio_class.h:90
usb_audio_type::audio_cmd_len
uint32_t audio_cmd_len
Definition: audio_class.h:102
usb_audio_type::spk_alt_setting
uint32_t spk_alt_setting
Definition: audio_class.h:103
usb_audio_type::spk_volume
uint16_t spk_volume
Definition: audio_class.h:94
usb_audio_type::mic_volume
uint16_t mic_volume
Definition: audio_class.h:95
usb_audio_type::spk_freq
uint32_t spk_freq
Definition: audio_class.h:96
usb_audio_type::spk_mute
uint8_t spk_mute
Definition: audio_class.h:92
usb_audio_type::request_no
uint8_t request_no
Definition: audio_class.h:91
usb_audio_type::audio_cmd
uint8_t audio_cmd
Definition: audio_class.h:101
usb_audio_type::mic_mute
uint8_t mic_mute
Definition: audio_class.h:93
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: audio_desc.c Source File

  • middlewares
  • usbd_class
  • audio
audio_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "audio_desc.h"
28
41static usbd_desc_t *get_device_descriptor(void);
42static usbd_desc_t *get_device_qualifier(void);
43static usbd_desc_t *get_device_configuration(void);
44static usbd_desc_t *get_device_other_speed(void);
45static usbd_desc_t *get_device_lang_id(void);
46static usbd_desc_t *get_device_manufacturer_string(void);
47static usbd_desc_t *get_device_product_string(void);
48static usbd_desc_t *get_device_serial_string(void);
49static usbd_desc_t *get_device_interface_string(void);
50static usbd_desc_t *get_device_config_string(void);
51
52static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
53static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
54static void get_serial_num(void);
55#if defined ( __ICCARM__ ) /* iar compiler */
56 #pragma data_alignment=4
57#endif
58ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
59
63 usbd_desc_handler audio_desc_handler =
64{
65 get_device_descriptor,
66 get_device_qualifier,
67 get_device_configuration,
68 get_device_other_speed,
69 get_device_lang_id,
70 get_device_manufacturer_string,
71 get_device_product_string,
72 get_device_serial_string,
73 get_device_interface_string,
74 get_device_config_string,
75};
76
80#if defined ( __ICCARM__ ) /* iar compiler */
81 #pragma data_alignment=4
82#endif
83ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
84{
85 USB_DEVICE_DESC_LEN, /* bLength */
86 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
87 0x00, /* bcdUSB */
88 0x02,
89 0x00, /* bDeviceClass */
90 0x00, /* bDeviceSubClass */
91 0x00, /* bDeviceProtocol */
92 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
93 LBYTE(USBD_AUDIO_VENDOR_ID), /* idVendor */
94 HBYTE(USBD_AUDIO_VENDOR_ID), /* idVendor */
95 LBYTE(USBD_AUDIO_PRODUCT_ID), /* idProduct */
96 HBYTE(USBD_AUDIO_PRODUCT_ID), /* idProduct */
97 0x00, /* bcdDevice rel. 2.00 */
98 0x02,
99 USB_MFC_STRING, /* Index of manufacturer string */
100 USB_PRODUCT_STRING, /* Index of product string */
101 USB_SERIAL_STRING, /* Index of serial number string */
102 0x01 /* bNumConfigurations */
103};
104
108#if defined ( __ICCARM__ ) /* iar compiler */
109 #pragma data_alignment=4
110#endif
111ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_AUDIO_CONFIG_DESC_SIZE] ALIGNED_TAIL =
112{
113 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
114 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
115 LBYTE(USBD_AUDIO_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
116 HBYTE(USBD_AUDIO_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
117 0x1 + AUDIO_INTERFACE_NUM, /* bNumInterfaces: n interface */
118 0x01, /* bConfigurationValue: configuration value */
119 0x00, /* iConfiguration: index of string descriptor describing
120 the configuration */
121 0xC0, /* bmAttributes: self powered */
122 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
123
124 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
125 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
126 0x00, /* bInterfaceNumber: number of interface */
127 0x00, /* bAlternateSetting: alternate set */
128 0x00, /* bNumEndpoints: number of endpoints */
129 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio class code */
130 AUDIO_SUBCLASS_AUDIOCONTROL, /* bInterfaceSubClass: audio control */
131 AUDIO_PROTOCOL_UNDEFINED, /* bInterfaceProtocol: undefined */
132 0x00, /* iInterface: index of string descriptor */
133
134 0x08+AUDIO_INTERFACE_NUM, /* bLength: size of this descriptor, in bytes 8+n */
135 AUDIO_CS_INTERFACE, /* bDescriptorType: cs interface descriptor type */
136 AUDIO_AC_HEADER, /* bDescriptorSubtype: Header function Descriptor*/
137 LBYTE(AUDIO_BCD_NUM),
138 HBYTE(AUDIO_BCD_NUM), /* bcdCDC: audio device class specification release number */
139 LBYTE(AUDIO_INTERFACE_LEN),
140 HBYTE(AUDIO_INTERFACE_LEN), /* wTotalLength: total number of bytes returned for the class-specific audio control interface */
141 AUDIO_INTERFACE_NUM, /* bInClollection: the number of audio streaming */
142#if (AUDIO_INTERFACE_NUM == 2) /* two interface */
143 0x02,
144 0x01,
145#else
146 0x01,
147#endif
148
149 /* usb microphone config */
150#if (AUDIO_SUPPORT_MIC == 1)
151 AUDIO_INPUT_TERMINAL_SIZE, /* bLength: descriptor size */
152 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
153 AUDIO_AC_INPUT_TERMINAL, /* bDescriptorSubtype: input_terminal type*/
154 AUDIO_MIC_INPUT_TERMINAL_ID, /* bTerminalID: id of this input terminal*/
155 LBYTE(AUDIO_INPUT_TERMINAL_MICROPHONE),
156 HBYTE(AUDIO_INPUT_TERMINAL_MICROPHONE),/* wTerminalType: terminal is microphone */
157 0x00, /* bAssocTerminal: no association */
158 AUDIO_MIC_CHR, /* bNrChannels: two channel */
159#if (AUDIO_MIC_CHR == 2)
160 0x03, /* wChannelConfig: left front and right front */
161#endif
162#if (AUDIO_MIC_CHR == 1)
163 0x00, /* wChannelConfig */
164#endif
165 0x00, /* wChannelConfig */
166 0x00, /* iChannelNames: unused */
167 0x00, /* iTerminal: unused */
168
169 AUDIO_FEATURE_UNIT_SIZE, /* bLength: descriptor size */
170 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
171 AUDIO_AC_FEATURE_UNIT, /* bDescriptorSubtype: feature unit type*/
172 AUDIO_MIC_FEATURE_UNIT_ID, /* bUnitID: id of this feature unit */
173 AUDIO_MIC_INPUT_TERMINAL_ID, /* bSourceID: from input terminal */
174 0x02, /* bControlSize: 2 byte */
175 0x03, /* bmaControls0: mute & volume*/
176 0x00,
177 0x00, /* bmaControls1 */
178 0x00,
179 0x00, /* bmaControls2 */
180 0x00,
181 0x00, /* iFeature: unused */
182
183 AUDIO_OUTPUT_TERMINAL_SIZE, /* bLength: descriptor size */
184 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
185 AUDIO_AC_OUTPUT_TERMINAL, /* bDescriptorSubtype: output_terminal type*/
186 AUDIO_MIC_OUTPUT_TERMINAL_ID, /* bTerminalID: id of this output terminal*/
187 LBYTE(AUDIO_TERMINAL_TYPE_STREAMING),
188 HBYTE(AUDIO_TERMINAL_TYPE_STREAMING), /* wTerminalType: usb streaming */
189 0x00, /* bAssocTerminal: unused */
190 AUDIO_MIC_FEATURE_UNIT_ID, /* bSourceID: from feature unit terminal */
191 0x00, /* iTerminal: unused */
192#endif
193
194#if (AUDIO_SUPPORT_SPK == 1)
195 /* speaker config */
196 AUDIO_INPUT_TERMINAL_SIZE, /* bLength: descriptor size */
197 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
198 AUDIO_AC_INPUT_TERMINAL, /* bDescriptorSubtype: input_terminal type*/
199 AUDIO_SPK_INPUT_TERMINAL_ID, /* bTerminalID: id of this input terminal*/
200 LBYTE(AUDIO_TERMINAL_TYPE_STREAMING), /* wTerminalType: usb streaming */
201 HBYTE(AUDIO_TERMINAL_TYPE_STREAMING), /* wTerminalType: usb streaming */
202 0x00, /* bAssocTerminal: no association */
203 AUDIO_SPK_CHR, /* bNrChannels: two channel */
204#if (AUDIO_SPK_CHR == 2)
205 0x03, /* wChannelConfig: left front and right front */
206#endif
207#if (AUDIO_SPK_CHR == 1)
208 0x00, /* wChannelConfig */
209#endif
210 0x00, /* wChannelConfig */
211 0x00, /* iChannelNames: unused */
212 0x00, /* iTerminal: unused */
213
214 AUDIO_FEATURE_UNIT_SIZE, /* bLength: descriptor size */
215 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
216 AUDIO_AC_FEATURE_UNIT, /* bDescriptorSubtype: feature unit type*/
217 AUDIO_SPK_FEATURE_UNIT_ID, /* bUnitID: id of this feature unit */
218 AUDIO_SPK_INPUT_TERMINAL_ID, /* bSourceID: from input terminal */
219 0x02, /* bControlSize: 2 byte */
220 0x03, /* bmaControls0: mute & volume*/
221 0x00,
222 0x00, /* bmaControls1: 0x0000 */
223 0x00,
224 0x00, /* bmaControls2: 0x0000 */
225 0x00,
226 0x00, /* iFeature: unused */
227
228 AUDIO_OUTPUT_TERMINAL_SIZE, /* bLength: descriptor size */
229 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
230 AUDIO_AC_OUTPUT_TERMINAL, /* bDescriptorSubtype: output_terminal type*/
231 AUDIO_SPK_OUTPUT_TERMINAL_ID, /* bTerminalID: id of this output terminal*/
232 LBYTE(AUDIO_OUTPUT_TERMINAL_SPEAKER), /* wTerminalType: usb speaker */
233 HBYTE(AUDIO_OUTPUT_TERMINAL_SPEAKER), /* wTerminalType: usb speaker */
234 0x00, /* bAssocTerminal: unused */
235 AUDIO_SPK_FEATURE_UNIT_ID, /* bSourceID: from feature unit terminal */
236 0x00, /* iTerminal: unused */
237#endif
238
239#if (AUDIO_SUPPORT_MIC == 1)
240 /* microphone interface */
241 0x09, /* bLength: descriptor size */
242 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
243 AUDIO_MIC_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
244 0x00, /* bAlternateSetting: index of this setting */
245 0x00, /* bNumEndpoints: 0 endpoints */
246 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
247 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
248 0x00, /* bInterfaceProtocol: unused */
249 0x00, /* iInterface: unused */
250
251 0x09, /* bLength: descriptor size */
252 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
253 AUDIO_MIC_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
254 0x01, /* bAlternateSetting: index of this setting */
255 0x01, /* bNumEndpoints: 1 endpoints */
256 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
257 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
258 0x00, /* bInterfaceProtocol: unused */
259 0x00, /* iInterface: unused */
260
261 0x07, /* bLength: configuration descriptor size */
262 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
263 AUDIO_AS_GENERAL, /* bDescriptorSubtype: general sub type*/
264 AUDIO_MIC_OUTPUT_TERMINAL_ID, /* bTerminalLink: unit id of the output terminal */
265 0x01, /* bDelay: interface delay */
266 0x01, /* wFormatTag: pcm format*/
267 0x00, /* wFormatTag: pcm format*/
268
269 0x08 + AUDIO_MIC_FREQ_SIZE * 3, /* bLength: descriptor size */
270 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
271 AUDIO_AS_FORMAT_TYPE, /* bDescriptorSubtype: format subtype */
272 AUDIO_FORMAT_TYPE_I, /* bFormatType: format type 1 */
273 AUDIO_MIC_CHR, /* bNrChannels: channel number */
274 AUDIO_MIC_BITW / 8, /* bSubFrameSize: per audio subframe */
275 AUDIO_MIC_BITW, /* bBitResolution: n bits per sample */
276 AUDIO_MIC_FREQ_SIZE, /* bSamFreqType: n frequency supported */
277#if (AUDIO_SUPPORT_FREQ_16K == 1)
278 SAMPLE_FREQ(AT32_AUDIO_FREQ_16K), /* tSamFreq: 16000hz */
279#endif
280#if (AUDIO_SUPPORT_FREQ_48K == 1)
281 SAMPLE_FREQ(AT32_AUDIO_FREQ_48K), /* tSamFreq: 48000hz */
282#endif
283
284 0x09, /* bLength: size of endpoint descriptor in bytes */
285 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
286 USBD_AUDIO_MIC_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
287 USB_EPT_DESC_ISO | USB_ETP_DESC_ASYNC, /* bmAttributes: endpoint attributes */
288 LBYTE(AUDIO_MIC_IN_MAXPACKET_SIZE),
289 HBYTE(AUDIO_MIC_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
290 AUDIO_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
291 0x00, /* bRefresh: unused */
292 0x00, /* bSynchAddress: unused */
293
294 0x07, /* bLength: size of endpoint descriptor in bytes */
295 AUDIO_CS_ENDPOINT, /* bDescriptorType: cs endpoint descriptor type */
296 0x01, /* bDescriptorSubtype: general subtype */
297 0x01, /* bmAttributes */
298 0x00, /* bLockDelayUnits: unused */
299 0x00, /* wLockDelay: unused */
300 0x00, /* wLockDelay: unused */
301#endif
302
303#if (AUDIO_SUPPORT_SPK == 1)
304 /* speaker interface */
305 0x09, /* bLength: descriptor size */
306 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
307 AUDIO_SPK_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
308 0x00, /* bAlternateSetting: index of this setting */
309 0x00, /* bNumEndpoints: 0 endpoints */
310 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
311 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
312 0x00, /* bInterfaceProtocol: unused */
313 0x00, /* iInterface: unused */
314
315 0x09, /* bLength: descriptor size */
316 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
317 AUDIO_SPK_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
318 0x01, /* bAlternateSetting: index of this setting */
319 0x01 + AUDIO_SUPPORT_FEEDBACK, /* bNumEndpoints: endpoints */
320 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
321 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
322 0x00, /* bInterfaceProtocol: unused */
323 0x00, /* iInterface: unused */
324
325 0x07, /* bLength: configuration descriptor size */
326 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
327 AUDIO_AS_GENERAL, /* bDescriptorSubtype: general sub type*/
328 AUDIO_SPK_INPUT_TERMINAL_ID, /* bTerminalLink: unit id of the input terminal */
329 0x01, /* bDelay: interface delay */
330 0x01, /* wFormatTag: pcm format*/
331 0x00, /* wFormatTag: pcm format*/
332
333 0x08 + AUDIO_SPK_FREQ_SIZE * 3, /* bLength: descriptor size */
334 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
335 AUDIO_AS_FORMAT_TYPE, /* bDescriptorSubtype: format subtype */
336 AUDIO_FORMAT_TYPE_I, /* bFormatType: format type 1 */
337 AUDIO_SPK_CHR, /* bNrChannels: channel number */
338 AUDIO_SPK_BITW / 8, /* bSubFrameSize: per audio subframe */
339 AUDIO_SPK_BITW, /* bBitResolution: n bits per sample */
340 AUDIO_SPK_FREQ_SIZE, /* bSamFreqType: n frequency supported */
341#if (AUDIO_SUPPORT_FREQ_16K == 1)
342 SAMPLE_FREQ(AT32_AUDIO_FREQ_16K), /* tSamFreq: 16000hz */
343#endif
344#if (AUDIO_SUPPORT_FREQ_48K == 1)
345 SAMPLE_FREQ(AT32_AUDIO_FREQ_48K), /* tSamFreq: 48000hz */
346#endif
347
348 0x09, /* bLength: size of endpoint descriptor in bytes */
349 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
350 USBD_AUDIO_SPK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
351 USB_EPT_DESC_ISO | USB_ETP_DESC_ASYNC, /* bmAttributes: endpoint attributes */
352 LBYTE(AUDIO_SPK_OUT_MAXPACKET_SIZE),
353 HBYTE(AUDIO_SPK_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
354 AUDIO_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
355 0x00, /* bRefresh: unused */
356#if (AUDIO_SUPPORT_FEEDBACK == 1)
357 USBD_AUDIO_FEEDBACK_EPT, /* bSynchAddress: feedback endpoint */
358#else
359 0x00, /* bSynchAddress: unused */
360#endif
361
362 0x07, /* bLength: size of endpoint descriptor in bytes */
363 AUDIO_CS_ENDPOINT, /* bDescriptorType: cs endpoint descriptor type */
364 0x01, /* bDescriptorSubtype: general subtype */
365 0x01, /* bmAttributes */
366 0x00, /* bLockDelayUnits: unused */
367 0x00, /* wLockDelay: unused */
368 0x00, /* wLockDelay: unused */
369
370#if (AUDIO_SUPPORT_FEEDBACK == 1)
371 0x09, /* bLength: size of endpoint descriptor in bytes */
372 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
373 USBD_AUDIO_FEEDBACK_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
374 0x11, /* bmAttributes: endpoint attributes */
375 LBYTE(AUDIO_FEEDBACK_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
376 HBYTE(AUDIO_FEEDBACK_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
377 1, /* bInterval: interval for polling endpoint for data transfers */
378 FEEDBACK_REFRESH_TIME, /* bRefresh: this field indicates the rate at which an iso syncronization
379 pipe provides new syncronization feedback data. this rate must be a power of
380 2, therefore only the power is reported back and the range of this field is from
381 1(2ms) to 9(512ms) */
382 0x00 /* bSynchAddress: 0x00*/
383#endif
384
385#endif
386};
387
391#if defined ( __ICCARM__ ) /* iar compiler */
392 #pragma data_alignment=4
393#endif
394ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_AUDIO_SIZ_STRING_LANGID] ALIGNED_TAIL =
395{
396 USBD_AUDIO_SIZ_STRING_LANGID,
397 USB_DESCIPTOR_TYPE_STRING,
398 0x09,
399 0x04,
400};
401
405#if defined ( __ICCARM__ ) /* iar compiler */
406 #pragma data_alignment=4
407#endif
408ALIGNED_HEAD static uint8_t g_string_serial[USBD_AUDIO_SIZ_STRING_SERIAL] ALIGNED_TAIL =
409{
410 USBD_AUDIO_SIZ_STRING_SERIAL,
411 USB_DESCIPTOR_TYPE_STRING,
412};
413
414
415/* device descriptor */
416static usbd_desc_t device_descriptor =
417{
418 USB_DEVICE_DESC_LEN,
419 g_usbd_descriptor
420};
421
422/* config descriptor */
423static usbd_desc_t config_descriptor =
424{
425 USBD_AUDIO_CONFIG_DESC_SIZE,
426 g_usbd_configuration
427};
428
429/* langid descriptor */
430static usbd_desc_t langid_descriptor =
431{
432 USBD_AUDIO_SIZ_STRING_LANGID,
433 g_string_lang_id
434};
435
436/* serial descriptor */
437static usbd_desc_t serial_descriptor =
438{
439 USBD_AUDIO_SIZ_STRING_SERIAL,
440 g_string_serial
441};
442
443static usbd_desc_t vp_desc;
444
451static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
452{
453 uint16_t str_len = 0, id_pos = 2;
454 uint8_t *tmp_str = string;
455
456 while(*tmp_str != '\0')
457 {
458 str_len ++;
459 unicode_buf[id_pos ++] = *tmp_str ++;
460 unicode_buf[id_pos ++] = 0x00;
461 }
462
463 str_len = str_len * 2 + 2;
464 unicode_buf[0] = str_len;
465 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
466
467 return str_len;
468}
469
477static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
478{
479 uint8_t idx = 0;
480
481 for( idx = 0 ; idx < len ; idx ++)
482 {
483 if( ((value >> 28)) < 0xA )
484 {
485 pbuf[2 * idx] = (value >> 28) + '0';
486 }
487 else
488 {
489 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
490 }
491
492 value = value << 4;
493
494 pbuf[2 * idx + 1] = 0;
495 }
496}
497
503static void get_serial_num(void)
504{
505 uint32_t serial0, serial1, serial2;
506
507 serial0 = *(uint32_t*)MCU_ID1;
508 serial1 = *(uint32_t*)MCU_ID2;
509 serial2 = *(uint32_t*)MCU_ID3;
510
511 serial0 += serial2;
512
513 if (serial0 != 0)
514 {
515 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
516 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
517 }
518}
519
525static usbd_desc_t *get_device_descriptor(void)
526{
527 return &device_descriptor;
528}
529
535static usbd_desc_t * get_device_qualifier(void)
536{
537 return NULL;
538}
539
545static usbd_desc_t *get_device_configuration(void)
546{
547 return &config_descriptor;
548}
549
555static usbd_desc_t *get_device_other_speed(void)
556{
557 return NULL;
558}
559
565static usbd_desc_t *get_device_lang_id(void)
566{
567 return &langid_descriptor;
568}
569
570
576static usbd_desc_t *get_device_manufacturer_string(void)
577{
578 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUDIO_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
579 vp_desc.descriptor = g_usbd_desc_buffer;
580 return &vp_desc;
581}
582
588static usbd_desc_t *get_device_product_string(void)
589{
590 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUDIO_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
591 vp_desc.descriptor = g_usbd_desc_buffer;
592 return &vp_desc;
593}
594
600static usbd_desc_t *get_device_serial_string(void)
601{
602 get_serial_num();
603 return &serial_descriptor;
604}
605
611static usbd_desc_t *get_device_interface_string(void)
612{
613 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUDIO_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
614 vp_desc.descriptor = g_usbd_desc_buffer;
615 return &vp_desc;
616}
617
623static usbd_desc_t *get_device_config_string(void)
624{
625 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUDIO_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
626 vp_desc.descriptor = g_usbd_desc_buffer;
627 return &vp_desc;
628}
629
audio_desc.h
usb audio descriptor header file
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
AUDIO_MIC_IN_MAXPACKET_SIZE
#define AUDIO_MIC_IN_MAXPACKET_SIZE
Definition: audio_class.h:60
AUDIO_SPK_OUT_MAXPACKET_SIZE
#define AUDIO_SPK_OUT_MAXPACKET_SIZE
Definition: audio_class.h:61
FEEDBACK_REFRESH_TIME
#define FEEDBACK_REFRESH_TIME
Definition: audio_class.h:63
USBD_AUDIO_SPK_OUT_EPT
#define USBD_AUDIO_SPK_OUT_EPT
Definition: audio_class.h:53
USBD_AUDIO_MIC_IN_EPT
#define USBD_AUDIO_MIC_IN_EPT
endpoint define
Definition: audio_class.h:52
USBD_AUDIO_FEEDBACK_EPT
#define USBD_AUDIO_FEEDBACK_EPT
Definition: audio_class.h:54
AUDIO_FEEDBACK_MAXPACKET_SIZE
#define AUDIO_FEEDBACK_MAXPACKET_SIZE
Definition: audio_class.h:62
AUDIO_MIC_FEATURE_UNIT_ID
#define AUDIO_MIC_FEATURE_UNIT_ID
Definition: audio_desc.h:167
AUDIO_CS_ENDPOINT
#define AUDIO_CS_ENDPOINT
Definition: audio_desc.h:74
AUDIO_AC_HEADER
#define AUDIO_AC_HEADER
Definition: audio_desc.h:89
AUDIO_SUBCLASS_AUDIOCONTROL
#define AUDIO_SUBCLASS_AUDIOCONTROL
Definition: audio_desc.h:66
AUDIO_INPUT_TERMINAL_SIZE
#define AUDIO_INPUT_TERMINAL_SIZE
audio interface descriptor size define
Definition: audio_desc.h:159
AUDIO_TERMINAL_TYPE_STREAMING
#define AUDIO_TERMINAL_TYPE_STREAMING
Definition: audio_desc.h:136
AUDIO_SPK_CHR
#define AUDIO_SPK_CHR
Definition: audio_desc.h:200
USBD_AUDIO_DESC_PRODUCT_STRING
#define USBD_AUDIO_DESC_PRODUCT_STRING
Definition: audio_desc.h:58
AUDIO_SPK_INTERFACE_NUMBER
#define AUDIO_SPK_INTERFACE_NUMBER
Definition: audio_desc.h:178
AUDIO_MIC_OUTPUT_TERMINAL_ID
#define AUDIO_MIC_OUTPUT_TERMINAL_ID
Definition: audio_desc.h:168
AUDIO_MIC_INTERFACE_NUMBER
#define AUDIO_MIC_INTERFACE_NUMBER
audio interface number
Definition: audio_desc.h:176
USBD_AUDIO_PRODUCT_ID
#define USBD_AUDIO_PRODUCT_ID
Definition: audio_desc.h:52
USBD_AUDIO_CONFIG_DESC_SIZE
#define USBD_AUDIO_CONFIG_DESC_SIZE
Definition: audio_desc.h:206
AUDIO_BCD_NUM
#define AUDIO_BCD_NUM
Definition: audio_desc.h:49
SAMPLE_FREQ
#define SAMPLE_FREQ(frq)
Definition: audio_desc.h:211
AUDIO_MIC_FREQ_SIZE
#define AUDIO_MIC_FREQ_SIZE
audio microphone freq and channel config
Definition: audio_desc.h:192
AUDIO_SPK_FREQ_SIZE
#define AUDIO_SPK_FREQ_SIZE
audio speaker freq and channel config
Definition: audio_desc.h:199
AT32_AUDIO_FREQ_48K
#define AT32_AUDIO_FREQ_48K
Definition: audio_desc.h:187
AUDIO_FORMAT_TYPE_I
#define AUDIO_FORMAT_TYPE_I
audio format type 1
Definition: audio_desc.h:146
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
AUDIO_AS_GENERAL
#define AUDIO_AS_GENERAL
Definition: audio_desc.h:102
USBD_AUDIO_DESC_CONFIGURATION_STRING
#define USBD_AUDIO_DESC_CONFIGURATION_STRING
Definition: audio_desc.h:59
USBD_AUDIO_DESC_INTERFACE_STRING
#define USBD_AUDIO_DESC_INTERFACE_STRING
Definition: audio_desc.h:60
AUDIO_INTERFACE_NUM
#define AUDIO_INTERFACE_NUM
audio interface config
Definition: audio_desc.h:151
AUDIO_CS_INTERFACE
#define AUDIO_CS_INTERFACE
audio class-specific descriptor types
Definition: audio_desc.h:73
USBD_AUDIO_SIZ_STRING_SERIAL
#define USBD_AUDIO_SIZ_STRING_SERIAL
Definition: audio_desc.h:55
AUDIO_SPK_FEATURE_UNIT_ID
#define AUDIO_SPK_FEATURE_UNIT_ID
Definition: audio_desc.h:170
USBD_AUDIO_SIZ_STRING_LANGID
#define USBD_AUDIO_SIZ_STRING_LANGID
Definition: audio_desc.h:54
AUDIO_OUTPUT_TERMINAL_SIZE
#define AUDIO_OUTPUT_TERMINAL_SIZE
Definition: audio_desc.h:160
AUDIO_SPK_OUTPUT_TERMINAL_ID
#define AUDIO_SPK_OUTPUT_TERMINAL_ID
Definition: audio_desc.h:171
AUDIO_AC_INPUT_TERMINAL
#define AUDIO_AC_INPUT_TERMINAL
Definition: audio_desc.h:90
AUDIO_MIC_CHR
#define AUDIO_MIC_CHR
Definition: audio_desc.h:193
AUDIO_OUTPUT_TERMINAL_SPEAKER
#define AUDIO_OUTPUT_TERMINAL_SPEAKER
Definition: audio_desc.h:141
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
AT32_AUDIO_FREQ_16K
#define AT32_AUDIO_FREQ_16K
audio support freq
Definition: audio_desc.h:186
AUDIO_AS_FORMAT_TYPE
#define AUDIO_AS_FORMAT_TYPE
Definition: audio_desc.h:103
AUDIO_MIC_INPUT_TERMINAL_ID
#define AUDIO_MIC_INPUT_TERMINAL_ID
audio terminal id define
Definition: audio_desc.h:166
AUDIO_SPK_BITW
#define AUDIO_SPK_BITW
Definition: audio_desc.h:201
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
AUDIO_FEATURE_UNIT_SIZE
#define AUDIO_FEATURE_UNIT_SIZE
Definition: audio_desc.h:161
AUDIO_PROTOCOL_UNDEFINED
#define AUDIO_PROTOCOL_UNDEFINED
audio interface protocol codes
Definition: audio_desc.h:83
AUDIO_MIC_BITW
#define AUDIO_MIC_BITW
Definition: audio_desc.h:194
USBD_AUDIO_VENDOR_ID
#define USBD_AUDIO_VENDOR_ID
Definition: audio_desc.h:51
AUDIO_AC_FEATURE_UNIT
#define AUDIO_AC_FEATURE_UNIT
Definition: audio_desc.h:94
AUDIO_SPK_INPUT_TERMINAL_ID
#define AUDIO_SPK_INPUT_TERMINAL_ID
Definition: audio_desc.h:169
AUDIO_BINTERVAL_TIME
#define AUDIO_BINTERVAL_TIME
Definition: audio_desc.h:203
AUDIO_INTERFACE_LEN
#define AUDIO_INTERFACE_LEN
Definition: audio_desc.h:152
AUDIO_SUBCLASS_AUDIOSTREAMING
#define AUDIO_SUBCLASS_AUDIOSTREAMING
Definition: audio_desc.h:67
USBD_AUDIO_DESC_MANUFACTURER_STRING
#define USBD_AUDIO_DESC_MANUFACTURER_STRING
Definition: audio_desc.h:57
AUDIO_AC_OUTPUT_TERMINAL
#define AUDIO_AC_OUTPUT_TERMINAL
Definition: audio_desc.h:91
AUDIO_INPUT_TERMINAL_MICROPHONE
#define AUDIO_INPUT_TERMINAL_MICROPHONE
Definition: audio_desc.h:139
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: audio_desc.c:437
device_descriptor
static usbd_desc_t device_descriptor
Definition: audio_desc.c:416
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: audio_desc.c:545
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: audio_desc.c:430
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: audio_desc.c:525
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: audio_desc.c:576
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: audio_desc.c:535
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: audio_desc.c:611
vp_desc
static usbd_desc_t vp_desc
Definition: audio_desc.c:443
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: audio_desc.c:555
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: audio_desc.c:58
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: audio_desc.c:588
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: audio_desc.c:623
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: audio_desc.c:451
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: audio_desc.c:565
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: audio_desc.c:503
config_descriptor
static usbd_desc_t config_descriptor
Definition: audio_desc.c:423
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: audio_desc.c:600
audio_desc_handler
usbd_desc_handler audio_desc_handler
device descriptor handler structure
Definition: audio_desc.c:63
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: audio_desc.c:477
AUDIO_SUPPORT_FEEDBACK
#define AUDIO_SUPPORT_FEEDBACK
Definition: audio/audio_conf.h:47
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_EPT_DESC_ISO
#define USB_EPT_DESC_ISO
Definition: usb_std.h:174
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_CLASS_CODE_AUDIO
#define USB_CLASS_CODE_AUDIO
usb class code
Definition: usb_std.h:159
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_ETP_DESC_ASYNC
#define USB_ETP_DESC_ASYNC
Definition: usb_std.h:179
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: audio_desc.h Source File

  • middlewares
  • usbd_class
  • audio
audio_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_DESC_H
27#define __AUDIO_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "audio_class.h"
34#include "usbd_core.h"
35#include "audio_conf.h"
36
49#define AUDIO_BCD_NUM 0x0100
50
51#define USBD_AUDIO_VENDOR_ID 0x2E3C
52#define USBD_AUDIO_PRODUCT_ID 0x5730
53
54#define USBD_AUDIO_SIZ_STRING_LANGID 4
55#define USBD_AUDIO_SIZ_STRING_SERIAL 0x1A
56
57#define USBD_AUDIO_DESC_MANUFACTURER_STRING "Artery"
58#define USBD_AUDIO_DESC_PRODUCT_STRING "AT32 Audio"
59#define USBD_AUDIO_DESC_CONFIGURATION_STRING "Audio Config"
60#define USBD_AUDIO_DESC_INTERFACE_STRING "Audio Interface"
61
65#define AUDIO_SUBCLASS_UNDEFINED 0x00
66#define AUDIO_SUBCLASS_AUDIOCONTROL 0x01
67#define AUDIO_SUBCLASS_AUDIOSTREAMING 0x02
68#define AUDIO_SUBCLASS_MIDISTREMING 0x03
69
73#define AUDIO_CS_INTERFACE 0x24
74#define AUDIO_CS_ENDPOINT 0x25
75#define AUDIO_CS_STRING 0x23
76#define AUDIO_CS_CONFIGURATION 0x22
77#define AUDIO_CS_DEVICE 0x21
78#define AUDIO_CS_UNDEFINED 0x20
79
83#define AUDIO_PROTOCOL_UNDEFINED 0x00
84
88#define AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00
89#define AUDIO_AC_HEADER 0x01
90#define AUDIO_AC_INPUT_TERMINAL 0x02
91#define AUDIO_AC_OUTPUT_TERMINAL 0x03
92#define AUDIO_AC_MIXER_UNIT 0x04
93#define AUDIO_AC_SELECTOR_UNIT 0x05
94#define AUDIO_AC_FEATURE_UNIT 0x06
95#define AUDIO_AC_PROCESSING_UNIT 0x07
96#define AUDIO_AC_EXTENSION_UNIT 0x08
97
101#define AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00
102#define AUDIO_AS_GENERAL 0x01
103#define AUDIO_AS_FORMAT_TYPE 0x02
104#define AUDIO_AS_FORMAT_SPECIFIC 0x03
105
109#define AUDIO_REQUEST_CODE_UNDEFINED 0x00
110#define AUDIO_REQ_SET_CUR 0x01
111#define AUDIO_REQ_GET_CUR 0x81
112#define AUDIO_REQ_SET_MIN 0x02
113#define AUDIO_REQ_GET_MIN 0x82
114#define AUDIO_REQ_SET_MAX 0x03
115#define AUDIO_REQ_GET_MAX 0x83
116#define AUDIO_REQ_SET_RES 0x04
117#define AUDIO_REQ_GET_RES 0x84
118#define AUDIO_REQ_SET_MEM 0x05
119#define AUDIO_REQ_GET_MEM 0x85
120#define AUDIO_REQ_GET_STAT 0xFF
121
125#define AUDIO_FU_CONTROL_UNDEFINED 0x00
126#define AUDIO_FU_MUTE_CONTROL 0x01
127#define AUDIO_FU_VOLUME_CONTROL 0x02
128#define AUDIO_FU_BASS_CONTROL 0x03
129#define AUDIO_FU_MID_CONTROL 0x04
130#define AUDIO_FU_TREBLE_CONTROL 0x05
131
135#define AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100
136#define AUDIO_TERMINAL_TYPE_STREAMING 0x0101
137#define AUDIO_TERMINAL_TYPE_VENDOR 0x01FF
138#define AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200
139#define AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201
140#define AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300
141#define AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301
142
146#define AUDIO_FORMAT_TYPE_I 0x01
147
151#define AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)
152#define AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)
153#define AUDIO_MIC_INTERFACE 0x01
154#define AUDIO_SPK_INTERFACE 0x02
155
159#define AUDIO_INPUT_TERMINAL_SIZE 0x0C
160#define AUDIO_OUTPUT_TERMINAL_SIZE 0x09
161#define AUDIO_FEATURE_UNIT_SIZE 0x0D
162
166#define AUDIO_MIC_INPUT_TERMINAL_ID 0x01
167#define AUDIO_MIC_FEATURE_UNIT_ID 0x02
168#define AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03
169#define AUDIO_SPK_INPUT_TERMINAL_ID 0x04
170#define AUDIO_SPK_FEATURE_UNIT_ID 0x05
171#define AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06
172
176#define AUDIO_MIC_INTERFACE_NUMBER 0x01
177#if (AUDIO_SUPPORT_MIC == 1)
178#define AUDIO_SPK_INTERFACE_NUMBER 0x02
179#else
180#define AUDIO_SPK_INTERFACE_NUMBER 0x01
181#endif
182
186#define AT32_AUDIO_FREQ_16K 16000
187#define AT32_AUDIO_FREQ_48K 48000
188
192#define AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
193#define AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM
194#define AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)
195
199#define AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
200#define AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM
201#define AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)
202
203#define AUDIO_BINTERVAL_TIME 0x01
204
205
206#define USBD_AUDIO_CONFIG_DESC_SIZE ( 0x12 + AUDIO_INTERFACE_LEN + \
207 + (0x31 + AUDIO_SPK_FREQ_SIZE * 3) \
208 + (0x31 + AUDIO_MIC_FREQ_SIZE * 3) \
209 + (9 * AUDIO_SUPPORT_FEEDBACK) \
210 )
211#define SAMPLE_FREQ(frq) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))
212
213#define MCU_ID1 (0x1FFFF7E8)
214#define MCU_ID2 (0x1FFFF7EC)
215#define MCU_ID3 (0x1FFFF7F0)
216
217extern usbd_desc_handler audio_desc_handler;
218
230#ifdef __cplusplus
231}
232#endif
233
234#endif
235
audio_class.h
usb audio class file
audio_conf.h
usb audio config
audio_desc_handler
usbd_desc_handler audio_desc_handler
device descriptor handler structure
Definition: audio_desc.c:63
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: audio_conf.h Source File

  • middlewares
  • usbd_class
  • audio_hid
audio_hid/audio_conf.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_CONF_H
27#define __AUDIO_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
45#define AUDIO_SUPPORT_SPK 1
46#define AUDIO_SUPPORT_MIC 1
47#define AUDIO_SUPPORT_FEEDBACK 1
48
49#define AUDIO_SUPPORT_FREQ_16K 1
50#define AUDIO_SUPPORT_FREQ_48K 0 /*usb fifo not support*/
51
52
53#define AUDIO_SUPPORT_FREQ (AUDIO_SUPPORT_FREQ_16K + \
54 AUDIO_SUPPORT_FREQ_48K \
55 )
56
57#define AUDIO_FREQ_16K 16000
58#define AUDIO_FREQ_48K 48000 /*usb fifo not support*/
59#define AUDIO_BITW_16 16
60
61#define AUDIO_MIC_CHANEL_NUM 2
62#define AUDIO_MIC_DEFAULT_BITW AUDIO_BITW_16
63
64#define AUDIO_SPK_CHANEL_NUM 2
65#define AUDIO_SPK_DEFAULT_BITW AUDIO_BITW_16
66
67
68#define AUDIO_SUPPORT_MAX_FREQ 16
69#define AUDIO_DEFAULT_FREQ AUDIO_FREQ_16K
70#define AUDIO_DEFAULT_BITW AUDIO_BITW_16
71
83#ifdef __cplusplus
84}
85#endif
86
87#endif
88
89
90


AT32F403 Firmwary Library: audio_hid_class.c Source File

  • middlewares
  • usbd_class
  • audio_hid
audio_hid_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "audio_hid_class.h"
26#include "audio_hid_desc.h"
27#include "audio_codec.h"
28
42static usb_sts_type class_init_handler(void *udev);
43static usb_sts_type class_clear_handler(void *udev);
44static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
45static usb_sts_type class_ept0_tx_handler(void *udev);
46static usb_sts_type class_ept0_rx_handler(void *udev);
47static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
49static usb_sts_type class_sof_handler(void *udev);
50static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
51
52static void audio_req_get_cur(void *udev, usb_setup_type *setup);
53static void audio_req_set_cur(void *udev, usb_setup_type *setup);
54static void audio_req_get_min(void *udev, usb_setup_type *setup);
55static void audio_req_get_max(void *udev, usb_setup_type *setup);
56static void audio_req_get_res(void *udev, usb_setup_type *setup);
57static void audio_get_interface(void *udev, usb_setup_type *setup);
58static void audio_set_interface(void *udev, usb_setup_type *setup);
59static void usb_hid_buf_process(void *udev, uint8_t *report, uint16_t len);
60 usb_audio_hid_type audio_hid_struct = {0, 0, 0, 0, 0, 0x1400, 0, 0, 0, {0x0000, 0x1400, 0x33}, {0x0000, 0x1400, 0x33}, 0, 0};
61
62 usbd_class_handler audio_hid_class_handler =
63{
64 class_init_handler,
65 class_clear_handler,
66 class_setup_handler,
67 class_ept0_tx_handler,
68 class_ept0_rx_handler,
69 class_in_handler,
70 class_out_handler,
71 class_sof_handler,
72 class_event_handler,
73 &audio_hid_struct
74};
75
81static usb_sts_type class_init_handler(void *udev)
82{
83 usb_sts_type status = USB_OK;
84 usbd_core_type *pudev = (usbd_core_type *)udev;
85 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
86 /* enable microphone in endpoint double buffer mode */
87 usbd_ept_dbuffer_enable(pudev, USBD_AUHID_AUDIO_MIC_IN_EPT);
88
89 /* open microphone in endpoint */
90 usbd_ept_open(pudev, USBD_AUHID_AUDIO_MIC_IN_EPT, EPT_ISO_TYPE, AUDIO_MIC_IN_MAXPACKET_SIZE);
91
92 /* enable speaker out endpoint double buffer mode */
93 usbd_ept_dbuffer_enable(pudev, USBD_AUHID_AUDIO_SPK_OUT_EPT);
94
95 /* open speaker out endpoint */
96 usbd_ept_open(pudev, USBD_AUHID_AUDIO_SPK_OUT_EPT, EPT_ISO_TYPE, AUDIO_SPK_OUT_MAXPACKET_SIZE);
97#if AUDIO_SUPPORT_FEEDBACK
98 /* enable speaker feedback endpoint double buffer mode */
99 usbd_ept_dbuffer_enable(pudev, USBD_AUHID_AUDIO_FEEDBACK_EPT);
100
101 /* open speaker feedback endpoint */
102 usbd_ept_open(pudev, USBD_AUHID_AUDIO_FEEDBACK_EPT, EPT_ISO_TYPE, AUDIO_FEEDBACK_MAXPACKET_SIZE);
103#endif
104 /* start receive speaker out data */
105 usbd_ept_recv(pudev, USBD_AUHID_AUDIO_SPK_OUT_EPT, paudio_hid->audio_spk_data, AUDIO_SPK_OUT_MAXPACKET_SIZE);
106
107 /*open hid endpoint */
108
109 /* open custom hid in endpoint */
110 usbd_ept_open(pudev, USBD_AUHID_HID_IN_EPT, EPT_INT_TYPE, USBD_AUHID_IN_MAXPACKET_SIZE);
111
112 /* open custom hid out endpoint */
113 usbd_ept_open(pudev, USBD_AUHID_HID_OUT_EPT, EPT_INT_TYPE, USBD_AUHID_OUT_MAXPACKET_SIZE);
114
115 /* set out endpoint to receive status */
116 usbd_ept_recv(pudev, USBD_AUHID_HID_OUT_EPT, paudio_hid->g_rxhid_buff, USBD_AUHID_OUT_MAXPACKET_SIZE);
117
118 return status;
119}
120
126static usb_sts_type class_clear_handler(void *udev)
127{
128 usb_sts_type status = USB_OK;
129 usbd_core_type *pudev = (usbd_core_type *)udev;
130
131 /* close in endpoint */
132 usbd_ept_close(pudev, USBD_AUHID_AUDIO_MIC_IN_EPT);
133
134#if AUDIO_SUPPORT_FEEDBACK
135 /* close in endpoint */
136 usbd_ept_close(pudev, USBD_AUHID_AUDIO_FEEDBACK_EPT);
137#endif
138
139 /* close out endpoint */
140 usbd_ept_close(pudev, USBD_AUHID_AUDIO_SPK_OUT_EPT);
141
142 /* close custom hid in endpoint */
143 usbd_ept_close(pudev, USBD_AUHID_HID_IN_EPT);
144
145 /* close custom hid out endpoint */
146 usbd_ept_close(pudev, USBD_AUHID_HID_OUT_EPT);
147
148 return status;
149}
150
157 usb_sts_type class_audio_setup_handler(void *udev, usb_setup_type *setup)
158{
159 usb_sts_type status = USB_OK;
160 usbd_core_type *pudev = (usbd_core_type *)udev;
161 uint16_t len;
162
163 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
164 {
165 /* class request */
166 case USB_REQ_TYPE_CLASS:
167 switch(setup->bRequest)
168 {
169 case AUDIO_REQ_GET_CUR:
170 audio_req_get_cur(pudev, setup);
171 break;
172
173 case AUDIO_REQ_SET_CUR:
174 audio_req_set_cur(pudev, setup);
175 break;
176
177 case AUDIO_REQ_GET_MIN:
178 audio_req_get_min(pudev, setup);
179 break;
180
181 case AUDIO_REQ_GET_MAX:
182 audio_req_get_max(pudev, setup);
183 break;
184
185 case AUDIO_REQ_GET_RES:
186 audio_req_get_res(pudev, setup);
187 break;
188
189 default:
190 usbd_ctrl_unsupport(pudev);
191 break;
192 }
193 break;
194 /* standard request */
195 case USB_REQ_TYPE_STANDARD:
196 switch(setup->bRequest)
197 {
198 case USB_STD_REQ_GET_DESCRIPTOR:
199 if((setup->wValue >> 8) == AUDIO_DESCRIPTOR_TYPE)
200 {
201 usbd_desc_t *config = pudev->desc_handler->get_device_configuration();
202 len = MIN(AUDIO_DESCRIPTOR_SIZE, setup->wLength);
203 usbd_ctrl_send(pudev, config->descriptor + 18, len);
204 }
205 else
206 {
207 usbd_ctrl_unsupport(pudev);
208 }
209 break;
210 case USB_STD_REQ_GET_INTERFACE:
211 audio_get_interface(udev, setup);
212 break;
213
214 case USB_STD_REQ_SET_INTERFACE:
215 audio_set_interface(udev, setup);
216 usbd_ctrl_send_status(pudev);
217 break;
218
219 case USB_STD_REQ_CLEAR_FEATURE:
220 break;
221 case USB_STD_REQ_SET_FEATURE:
222 break;
223 default:
224 usbd_ctrl_unsupport(pudev);
225 break;
226 }
227 break;
228
229 default:
230 usbd_ctrl_unsupport(pudev);
231 break;
232 }
233 return status;
234
235}
236
243 usb_sts_type class_hid_setup_handler(void *udev, usb_setup_type *setup)
244{
245 usb_sts_type status = USB_OK;
246 usbd_core_type *pudev = (usbd_core_type *)udev;
247 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
248 uint16_t len;
249 uint8_t *buf;
250
251 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
252 {
253 /* class request */
254 case USB_REQ_TYPE_CLASS:
255 switch(setup->bRequest)
256 {
257 case HID_REQ_SET_PROTOCOL:
258 paudio_hid->hid_protocol = (uint8_t)setup->wValue;
259 break;
260 case HID_REQ_GET_PROTOCOL:
261 usbd_ctrl_send(pudev, (uint8_t *)&paudio_hid->hid_protocol, 1);
262 break;
263 case HID_REQ_SET_IDLE:
264 paudio_hid->hid_set_idle = (uint8_t)(setup->wValue >> 8);
265 break;
266 case HID_REQ_GET_IDLE:
267 usbd_ctrl_send(pudev, (uint8_t *)&paudio_hid->hid_set_idle, 1);
268 break;
269 case HID_REQ_SET_REPORT:
270 paudio_hid->hid_state = HID_REQ_SET_REPORT;
271 usbd_ctrl_recv(pudev, paudio_hid->hid_set_report, setup->wLength);
272 break;
273 default:
274 usbd_ctrl_unsupport(pudev);
275 break;
276 }
277 break;
278 /* standard request */
279 case USB_REQ_TYPE_STANDARD:
280 switch(setup->bRequest)
281 {
282 case USB_STD_REQ_GET_DESCRIPTOR:
283 if(setup->wValue >> 8 == HID_REPORT_DESC)
284 {
285 len = MIN(USBD_AUHID_HID_SIZ_REPORT_DESC, setup->wLength);
286 buf = (uint8_t *)g_usbd_audio_hid_report;
287 }
288 else if(setup->wValue >> 8 == HID_DESCRIPTOR_TYPE)
289 {
290 len = MIN(9, setup->wLength);
291 buf = (uint8_t *)g_audio_hid_usb_desc;
292 }
293 usbd_ctrl_send(pudev, (uint8_t *)buf, len);
294 break;
295 case USB_STD_REQ_GET_INTERFACE:
296 usbd_ctrl_send(pudev, (uint8_t *)&paudio_hid->alt_setting, 1);
297 break;
298 case USB_STD_REQ_SET_INTERFACE:
299 paudio_hid->alt_setting = setup->wValue;
300 break;
301 case USB_STD_REQ_CLEAR_FEATURE:
302 break;
303 case USB_STD_REQ_SET_FEATURE:
304 break;
305 default:
306 usbd_ctrl_unsupport(pudev);
307 break;
308 }
309 break;
310 default:
311 usbd_ctrl_unsupport(pudev);
312 break;
313 }
314 return status;
315}
322 usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
323{
324 usb_sts_type status = USB_OK;
325 usbd_core_type *pudev = (usbd_core_type *)udev;
326 switch(setup->bmRequestType & USB_REQ_RECIPIENT_MASK)
327 {
328 case USB_REQ_RECIPIENT_INTERFACE:
329 if(setup->wIndex == HID_INTERFACE_NUMBER)
330 {
331 class_hid_setup_handler(udev, setup);
332 }
333 else
334 {
335 class_audio_setup_handler(pudev, setup);
336 }
337 break;
338 case USB_REQ_RECIPIENT_ENDPOINT:
339 class_audio_setup_handler(pudev, setup);
340 break;
341
342 }
343 return status;
344
345
346}
347
353 usb_sts_type class_ept0_tx_handler(void *udev)
354{
355 usb_sts_type status = USB_OK;
356
357 /* ...user code... */
358
359 return status;
360}
361
367static usb_sts_type class_ept0_rx_handler(void *udev)
368{
369 usb_sts_type status = USB_OK;
370 usbd_core_type *pudev = (usbd_core_type *)udev;
371 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
372 usb_setup_type *setup = &pudev->setup;
373 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
374
375 /* ...user code... */
376 if(setup->wIndex == HID_INTERFACE_NUMBER)
377 {
378 if( paudio_hid->hid_state == HID_REQ_SET_REPORT)
379 {
380 /* hid buffer process */
381 usb_hid_buf_process(udev, paudio_hid->hid_set_report, recv_len);
382 paudio_hid->hid_state = 0;
383 }
384 }
385 else
386 {
387 /* ...user code... */
388 if( paudio_hid->audio_cmd == AUDIO_REQ_SET_CUR)
389 {
390 /* class process */
391 switch(paudio_hid->request_no)
392 {
393 case AUDIO_VOLUME_CONTROL:
394 if(paudio_hid->interface == AUDIO_SPK_FEATURE_UNIT_ID)
395 {
396 paudio_hid->spk_volume = (uint16_t)(paudio_hid->g_audio_cur[0] |
397 (paudio_hid->g_audio_cur[1] << 8));
398 /* set volume */
399 audio_codec_set_spk_volume(paudio_hid->spk_volume*100/paudio_hid->spk_volume_limits[1]);
400 }
401 else
402 {
403 paudio_hid->mic_volume = (uint16_t)(paudio_hid->g_audio_cur[0] |
404 (paudio_hid->g_audio_cur[1] << 8));
405
406 audio_codec_set_mic_volume(paudio_hid->mic_volume*256/paudio_hid->mic_volume_limits[1]);
407 }
408 break;
409 case AUDIO_MUTE_CONTROL:
410 if(paudio_hid->interface == AUDIO_SPK_FEATURE_UNIT_ID)
411 {
412 paudio_hid->spk_mute = paudio_hid->g_audio_cur[0];
413 audio_codec_set_spk_mute(paudio_hid->spk_mute);
414 }
415 else
416 {
417 paudio_hid->mic_mute = paudio_hid->g_audio_cur[0];
418 audio_codec_set_mic_mute(paudio_hid->mic_mute);
419 }
420
421 break;
422 case AUDIO_FREQ_SET_CONTROL:
423 if(paudio_hid->enpd == USBD_AUHID_AUDIO_MIC_IN_EPT)
424 {
425 paudio_hid->mic_freq = (paudio_hid->g_audio_cur[0] |
426 (paudio_hid->g_audio_cur[1] << 8) |
427 (paudio_hid->g_audio_cur[2] << 16));
428 audio_codec_set_mic_freq(paudio_hid->mic_freq);
429 }
430 else
431 {
432 paudio_hid->spk_freq = (paudio_hid->g_audio_cur[0] |
433 (paudio_hid->g_audio_cur[1] << 8) |
434 (paudio_hid->g_audio_cur[2] << 16));
435 audio_codec_set_spk_freq(paudio_hid->spk_freq);
436 }
437 break;
438 default:
439 break;
440 }
441 }
442 }
443
444 return status;
445}
446
453 usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
454{
455 usb_sts_type status = USB_OK;
456 usbd_core_type *pudev = (usbd_core_type *)udev;
457 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
458 uint32_t len = 0;
459
460 /* ...user code...
461 trans next packet data
462 */
463 if((ept_num & 0x7F) == (USBD_AUHID_AUDIO_MIC_IN_EPT & 0x7F))
464 {
465 len = audio_codec_mic_get_data(paudio_hid->audio_mic_data);
466 usbd_ept_send(udev, USBD_AUHID_AUDIO_MIC_IN_EPT, paudio_hid->audio_mic_data, len);
467 }
468#if AUDIO_SUPPORT_FEEDBACK
469 else if((ept_num & 0x7F) == (USBD_AUHID_AUDIO_FEEDBACK_EPT & 0x7F))
470 {
471 len = audio_codec_spk_feedback(paudio_hid->audio_feed_back);
472 usbd_ept_send(udev, USBD_AUHID_AUDIO_FEEDBACK_EPT, paudio_hid->audio_feed_back, len);
473 }
474#endif
475 else if((ept_num & 0x7F) == (USBD_AUHID_HID_IN_EPT & 0x7F))
476 {
477
478 }
479
480 return status;
481}
482
489static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
490{
491 usb_sts_type status = USB_OK;
492 usbd_core_type *pudev = (usbd_core_type *)udev;
493 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
494 uint16_t g_rxlen;
495
496 /* get endpoint receive data length */
497 g_rxlen = usbd_get_recv_len(pudev, ept_num);
498
499 if((ept_num & 0x7F) == (USBD_AUHID_AUDIO_SPK_OUT_EPT & 0x7F))
500 {
501 /* speaker data*/
502 audio_codec_spk_fifo_write(paudio_hid->audio_spk_data, g_rxlen);
503
504 /* get next data */
505 usbd_ept_recv(pudev, USBD_AUHID_AUDIO_SPK_OUT_EPT, paudio_hid->audio_spk_data, AUDIO_SPK_OUT_MAXPACKET_SIZE);
506 }
507 else if((ept_num & 0x7F) == (USBD_AUHID_HID_OUT_EPT & 0x7F))
508 {
509 /* hid buffer process */
510 usb_hid_buf_process(udev, paudio_hid->g_rxhid_buff, g_rxlen);
511
512 /* start receive next packet */
513 usbd_ept_recv(pudev, USBD_AUHID_HID_OUT_EPT, paudio_hid->g_rxhid_buff, USBD_AUHID_OUT_MAXPACKET_SIZE);
514 }
515 return status;
516}
517
523static usb_sts_type class_sof_handler(void *udev)
524{
525 usb_sts_type status = USB_OK;
526
527 /* ...user code... */
528
529 return status;
530}
531
538static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
539{
540 usb_sts_type status = USB_OK;
541 usbd_core_type *pudev = (usbd_core_type *)udev;
542 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
543 switch(event)
544 {
545 case USBD_RESET_EVENT:
546
547 /* ...user code... */
548
549 break;
550 case USBD_SUSPEND_EVENT:
551 paudio_hid->spk_alt_setting = 0;
552 audio_codec_spk_alt_setting(paudio_hid->spk_alt_setting);
553 paudio_hid->mic_alt_setting = 0;
554 audio_codec_mic_alt_setting(paudio_hid->spk_alt_setting);
555 /* ...user code... */
556
557 break;
558 case USBD_WAKEUP_EVENT:
559 /* ...user code... */
560
561 break;
562 default:
563 break;
564 }
565 return status;
566}
567
574static void audio_req_get_cur(void *udev, usb_setup_type *setup)
575{
576 usbd_core_type *pudev = (usbd_core_type *)udev;
577 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
578 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
579 {
580 if(HBYTE(setup->wValue) == AUDIO_MUTE_CONTROL)
581 {
582 paudio_hid->g_audio_cur[0] = paudio_hid->spk_mute;
583 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
584 }
585 else
586 {
587 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->spk_volume;
588 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
589 }
590 }
591 else
592 {
593 if(HBYTE(setup->wValue) == AUDIO_MUTE_CONTROL)
594 {
595 paudio_hid->g_audio_cur[0] = paudio_hid->mic_mute;
596 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
597 }
598 else
599 {
600 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->mic_volume;
601 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
602 }
603
604 }
605}
606
613static void audio_req_set_cur(void *udev, usb_setup_type *setup)
614{
615 usbd_core_type *pudev = (usbd_core_type *)udev;
616 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
617 if(setup->wLength > 0)
618 {
619 usbd_ctrl_recv(pudev, paudio_hid->g_audio_cur, setup->wLength);
620
621 paudio_hid->audio_cmd = AUDIO_REQ_SET_CUR;
622 paudio_hid->audio_cmd_len = setup->wLength;
623
624 switch(setup->bmRequestType & AUDIO_REQ_CONTROL_MASK)
625 {
626 case AUDIO_REQ_CONTROL_INTERFACE:
627 paudio_hid->interface = HBYTE(setup->wIndex);
628 if(HBYTE(setup->wValue) == AUDIO_MUTE_CONTROL)
629 {
630 paudio_hid->request_no = AUDIO_MUTE_CONTROL;
631 }
632 else
633 {
634 paudio_hid->request_no = AUDIO_VOLUME_CONTROL;
635 }
636 break;
637 case AUDIO_REQ_CONTROL_ENDPOINT:
638 paudio_hid->enpd = setup->wIndex;
639 paudio_hid->request_no = AUDIO_FREQ_SET_CONTROL;
640 break;
641 default:
642 break;
643 }
644 }
645}
646
653static void audio_req_get_min(void *udev, usb_setup_type *setup)
654{
655 usbd_core_type *pudev = (usbd_core_type *)udev;
656 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
657 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
658 {
659 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->spk_volume_limits[0];
660 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
661 }
662 else
663 {
664 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->mic_volume_limits[0];
665 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
666 }
667}
668
675static void audio_req_get_max(void *udev, usb_setup_type *setup)
676{
677 usbd_core_type *pudev = (usbd_core_type *)udev;
678 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
679 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
680 {
681 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->spk_volume_limits[1];
682 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
683 }
684 else
685 {
686 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->mic_volume_limits[1];
687 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
688 }
689}
690
697static void audio_req_get_res(void *udev, usb_setup_type *setup)
698{
699 usbd_core_type *pudev = (usbd_core_type *)udev;
700 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
701 if(HBYTE(setup->wIndex) == AUDIO_SPK_FEATURE_UNIT_ID)
702 {
703 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->spk_volume_limits[2];
704 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
705 }
706 else
707 {
708 *((uint16_t *)paudio_hid->g_audio_cur) = paudio_hid->mic_volume_limits[2];
709 usbd_ctrl_send(pudev, paudio_hid->g_audio_cur, setup->wLength);
710 }
711}
712
719static void audio_set_interface(void *udev, usb_setup_type *setup)
720{
721 uint32_t len;
722 usbd_core_type *pudev = (usbd_core_type *)udev;
723 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
724 if(LBYTE(setup->wIndex) == AUDIO_SPK_INTERFACE_NUMBER)
725 {
726 paudio_hid->spk_alt_setting = setup->wValue;
727 audio_codec_spk_alt_setting(paudio_hid->spk_alt_setting);
728 if(paudio_hid->spk_alt_setting )
729 {
730 int len = audio_codec_spk_feedback(paudio_hid->audio_feed_back);
731 usbd_ept_recv(pudev, USBD_AUHID_AUDIO_SPK_OUT_EPT, paudio_hid->audio_spk_data, AUDIO_SPK_OUT_MAXPACKET_SIZE);
732 usbd_ept_send(pudev, USBD_AUHID_AUDIO_FEEDBACK_EPT, paudio_hid->audio_feed_back, len);
733 }
734
735 }
736 else if(LBYTE(setup->wIndex) == AUDIO_MIC_INTERFACE_NUMBER)
737 {
738 paudio_hid->mic_alt_setting = setup->wValue;
739 audio_codec_mic_alt_setting(paudio_hid->mic_alt_setting);
740 if(paudio_hid->mic_alt_setting)
741 {
742 len = audio_codec_mic_get_data(paudio_hid->audio_mic_data);
743 usbd_ept_send(pudev, USBD_AUHID_AUDIO_MIC_IN_EPT, paudio_hid->audio_mic_data, len);
744 }
745 }
746
747}
748
749
756static void audio_get_interface(void *udev, usb_setup_type *setup)
757{
758 usbd_core_type *pudev = (usbd_core_type *)udev;
759 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
760 if(LBYTE(setup->wIndex) == AUDIO_SPK_INTERFACE_NUMBER)
761 {
762 usbd_ctrl_send(pudev, (uint8_t *)&paudio_hid->spk_alt_setting, 1);
763 }
764 else if(LBYTE(setup->wIndex) == AUDIO_MIC_INTERFACE_NUMBER)
765 {
766 usbd_ctrl_send(pudev, (uint8_t *)&paudio_hid->mic_alt_setting, 1);
767 }
768
769}
770
778 usb_sts_type audio_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
779{
780 usb_sts_type status = USB_OK;
781 usbd_core_type *pudev = (usbd_core_type *)udev;
782
783 if(usbd_connect_state_get(pudev) == USB_CONN_STATE_CONFIGURED)
784 usbd_ept_send(pudev, USBD_AUHID_HID_IN_EPT, report, len);
785
786 return status;
787}
788
789
797static void usb_hid_buf_process(void *udev, uint8_t *report, uint16_t len)
798{
799 uint32_t i_index;
800 usbd_core_type *pudev = (usbd_core_type *)udev;
801 usb_audio_hid_type *paudio_hid = (usb_audio_hid_type *)pudev->class_handler->pdata;
802
803 switch(report[0])
804 {
805 case HID_REPORT_ID_2:
806 if(paudio_hid->g_rxhid_buff[1] == 0)
807 {
808 at32_led_off(LED2);
809 }
810 else
811 {
812 at32_led_on(LED2);
813 }
814 break;
815 case HID_REPORT_ID_3:
816 if(paudio_hid->g_rxhid_buff[1] == 0)
817 {
818 at32_led_off(LED3);
819 }
820 else
821 {
822 at32_led_on(LED3);
823 }
824 break;
825 case HID_REPORT_ID_4:
826 if(paudio_hid->g_rxhid_buff[1] == 0)
827 {
828 at32_led_off(LED4);
829 }
830 else
831 {
832 at32_led_on(LED4);
833 }
834 break;
835 case HID_REPORT_ID_6:
836 for(i_index = 0; i_index < len; i_index ++)
837 {
838 paudio_hid->g_txhid_buff[i_index] = report[i_index];
839 }
840 usbd_ept_send(pudev, USBD_AUHID_HID_IN_EPT, paudio_hid->g_txhid_buff, len);
841 break;
842 default:
843 break;
844 }
845
846}
847
848
audio_hid_class.h
audio_hid_desc.h
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
AUDIO_DESCRIPTOR_TYPE
#define AUDIO_DESCRIPTOR_TYPE
audio descriptor type
Definition: audio_class.h:81
AUDIO_MIC_IN_MAXPACKET_SIZE
#define AUDIO_MIC_IN_MAXPACKET_SIZE
Definition: audio_class.h:60
AUDIO_MUTE_CONTROL
#define AUDIO_MUTE_CONTROL
audio set cur type define
Definition: audio_class.h:74
AUDIO_REQ_CONTROL_INTERFACE
#define AUDIO_REQ_CONTROL_INTERFACE
request type define
Definition: audio_class.h:67
AUDIO_SPK_OUT_MAXPACKET_SIZE
#define AUDIO_SPK_OUT_MAXPACKET_SIZE
Definition: audio_class.h:61
AUDIO_VOLUME_CONTROL
#define AUDIO_VOLUME_CONTROL
Definition: audio_class.h:75
AUDIO_FREQ_SET_CONTROL
#define AUDIO_FREQ_SET_CONTROL
Definition: audio_class.h:76
AUDIO_REQ_CONTROL_ENDPOINT
#define AUDIO_REQ_CONTROL_ENDPOINT
Definition: audio_class.h:68
AUDIO_REQ_CONTROL_MASK
#define AUDIO_REQ_CONTROL_MASK
Definition: audio_class.h:69
AUDIO_DESCRIPTOR_SIZE
#define AUDIO_DESCRIPTOR_SIZE
Definition: audio_class.h:82
AUDIO_FEEDBACK_MAXPACKET_SIZE
#define AUDIO_FEEDBACK_MAXPACKET_SIZE
Definition: audio_class.h:62
AUDIO_REQ_GET_CUR
#define AUDIO_REQ_GET_CUR
Definition: audio_desc.h:111
AUDIO_SPK_INTERFACE_NUMBER
#define AUDIO_SPK_INTERFACE_NUMBER
Definition: audio_desc.h:178
AUDIO_MIC_INTERFACE_NUMBER
#define AUDIO_MIC_INTERFACE_NUMBER
audio interface number
Definition: audio_desc.h:176
AUDIO_REQ_GET_MAX
#define AUDIO_REQ_GET_MAX
Definition: audio_desc.h:115
AUDIO_REQ_GET_MIN
#define AUDIO_REQ_GET_MIN
Definition: audio_desc.h:113
AUDIO_SPK_FEATURE_UNIT_ID
#define AUDIO_SPK_FEATURE_UNIT_ID
Definition: audio_desc.h:170
AUDIO_REQ_GET_RES
#define AUDIO_REQ_GET_RES
Definition: audio_desc.h:117
AUDIO_REQ_SET_CUR
#define AUDIO_REQ_SET_CUR
Definition: audio_desc.h:110
USBD_AUHID_AUDIO_MIC_IN_EPT
#define USBD_AUHID_AUDIO_MIC_IN_EPT
endpoint define
Definition: audio_hid_class.h:52
USBD_AUHID_HID_IN_EPT
#define USBD_AUHID_HID_IN_EPT
usb custom hid use endpoint define
Definition: audio_hid_class.h:59
USBD_AUHID_HID_OUT_EPT
#define USBD_AUHID_HID_OUT_EPT
Definition: audio_hid_class.h:60
USBD_AUHID_AUDIO_FEEDBACK_EPT
#define USBD_AUHID_AUDIO_FEEDBACK_EPT
Definition: audio_hid_class.h:54
USBD_AUHID_OUT_MAXPACKET_SIZE
#define USBD_AUHID_OUT_MAXPACKET_SIZE
Definition: audio_hid_class.h:66
USBD_AUHID_AUDIO_SPK_OUT_EPT
#define USBD_AUHID_AUDIO_SPK_OUT_EPT
Definition: audio_hid_class.h:53
USBD_AUHID_IN_MAXPACKET_SIZE
#define USBD_AUHID_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: audio_hid_class.h:65
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: audio_hid_class.c:523
audio_hid_class_send_report
usb_sts_type audio_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: audio_hid_class.c:778
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: audio_hid_class.c:126
audio_hid_class_handler
usbd_class_handler audio_hid_class_handler
Definition: audio_hid_class.c:62
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: audio_hid_class.c:367
audio_req_get_res
static void audio_req_get_res(void *udev, usb_setup_type *setup)
usb audio request get res
Definition: audio_hid_class.c:697
audio_get_interface
static void audio_get_interface(void *udev, usb_setup_type *setup)
usb audio get interface
Definition: audio_hid_class.c:756
class_hid_setup_handler
usb_sts_type class_hid_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: audio_hid_class.c:243
audio_req_set_cur
static void audio_req_set_cur(void *udev, usb_setup_type *setup)
usb audio request set cur
Definition: audio_hid_class.c:613
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: audio_hid_class.c:538
audio_req_get_max
static void audio_req_get_max(void *udev, usb_setup_type *setup)
usb audio request get max
Definition: audio_hid_class.c:675
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: audio_hid_class.c:322
usb_hid_buf_process
static void usb_hid_buf_process(void *udev, uint8_t *report, uint16_t len)
usb device report function
Definition: audio_hid_class.c:797
audio_req_get_min
static void audio_req_get_min(void *udev, usb_setup_type *setup)
usb audio request get min
Definition: audio_hid_class.c:653
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: audio_hid_class.c:81
audio_hid_struct
usb_audio_hid_type audio_hid_struct
Definition: audio_hid_class.c:60
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: audio_hid_class.c:353
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: audio_hid_class.c:489
audio_req_get_cur
static void audio_req_get_cur(void *udev, usb_setup_type *setup)
usb audio request get cur
Definition: audio_hid_class.c:574
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: audio_hid_class.c:453
audio_set_interface
static void audio_set_interface(void *udev, usb_setup_type *setup)
usb audio set interface
Definition: audio_hid_class.c:719
class_audio_setup_handler
usb_sts_type class_audio_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: audio_hid_class.c:157
USBD_AUHID_HID_SIZ_REPORT_DESC
#define USBD_AUHID_HID_SIZ_REPORT_DESC
Definition: audio_hid_desc.h:234
HID_REPORT_ID_2
#define HID_REPORT_ID_2
Definition: audio_hid_desc.h:221
HID_REPORT_ID_4
#define HID_REPORT_ID_4
Definition: audio_hid_desc.h:223
HID_REPORT_ID_6
#define HID_REPORT_ID_6
Definition: audio_hid_desc.h:225
HID_REPORT_ID_3
#define HID_REPORT_ID_3
Definition: audio_hid_desc.h:222
g_audio_hid_usb_desc
uint8_t g_audio_hid_usb_desc[9]
usb hid descriptor
Definition: audio_hid_desc.c:530
g_usbd_audio_hid_report
uint8_t g_usbd_audio_hid_report[126]
usb hid report descriptor
Definition: audio_hid_desc.c:432
HID_INTERFACE_NUMBER
#define HID_INTERFACE_NUMBER
Definition: audio_hid_desc.h:181
audio_codec_mic_alt_setting
void audio_codec_mic_alt_setting(uint32_t alt_seting)
audio codec microphone alt setting config
Definition: audio/src/audio_codec.c:167
audio_codec_set_spk_volume
void audio_codec_set_spk_volume(uint16_t volume)
audio codec set speaker volume
Definition: audio/src/audio_codec.c:215
audio_codec_set_spk_mute
void audio_codec_set_spk_mute(uint8_t mute)
audio codec set speaker mute
Definition: audio/src/audio_codec.c:193
audio_codec_set_mic_freq
void audio_codec_set_mic_freq(uint32_t freq)
audio codec set microphone freq
Definition: audio/src/audio_codec.c:119
audio_codec_mic_get_data
uint32_t audio_codec_mic_get_data(uint8_t *buffer)
codec microphone get data
Definition: audio/src/audio_codec.c:280
audio_codec_set_mic_mute
void audio_codec_set_mic_mute(uint8_t mute)
audio codec set microphone mute
Definition: audio/src/audio_codec.c:182
audio_codec_spk_fifo_write
void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
audio codec interface
Definition: audio/src/audio_codec.c:242
audio_codec_spk_feedback
uint8_t audio_codec_spk_feedback(uint8_t *feedback)
codec speaker feedback
Definition: audio/src/audio_codec.c:226
audio_codec_set_mic_volume
void audio_codec_set_mic_volume(uint16_t volume)
audio codec set microphone volume
Definition: audio/src/audio_codec.c:204
audio_codec_spk_alt_setting
void audio_codec_spk_alt_setting(uint32_t alt_seting)
audio codec speaker alt setting config
Definition: audio/src/audio_codec.c:152
audio_codec_set_spk_freq
void audio_codec_set_spk_freq(uint32_t freq)
audio codec set speaker freq
Definition: audio/src/audio_codec.c:135
EPT_ISO_TYPE
@ EPT_ISO_TYPE
Definition: at32f403_usb.h:202
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
HID_DESCRIPTOR_TYPE
#define HID_DESCRIPTOR_TYPE
Definition: usb_std.h:234
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
HID_REQ_GET_PROTOCOL
#define HID_REQ_GET_PROTOCOL
Definition: usb_std.h:229
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
HID_REQ_SET_PROTOCOL
#define HID_REQ_SET_PROTOCOL
usb hid class request code define
Definition: usb_std.h:228
HID_REPORT_DESC
#define HID_REPORT_DESC
Definition: usb_std.h:235
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
HID_REQ_SET_IDLE
#define HID_REQ_SET_IDLE
Definition: usb_std.h:230
HID_REQ_GET_IDLE
#define HID_REQ_GET_IDLE
Definition: usb_std.h:231
HID_REQ_SET_REPORT
#define HID_REQ_SET_REPORT
Definition: usb_std.h:232
USB_REQ_RECIPIENT_MASK
#define USB_REQ_RECIPIENT_MASK
Definition: usb_std.h:56
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_RECIPIENT_ENDPOINT
#define USB_REQ_RECIPIENT_ENDPOINT
Definition: usb_std.h:54
USB_REQ_RECIPIENT_INTERFACE
#define USB_REQ_RECIPIENT_INTERFACE
Definition: usb_std.h:53
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_ept_dbuffer_enable
void usbd_ept_dbuffer_enable(usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer.
Definition: usbd_core.c:404
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ctrl_send_status
void usbd_ctrl_send_status(usbd_core_type *udev)
usb control endpoint send in status
Definition: usbd_core.c:209
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
usb_audio_hid_type
usb audio control struct
Definition: audio_hid_class.h:111
usb_audio_hid_type::spk_volume_limits
uint16_t spk_volume_limits[3]
Definition: audio_hid_class.h:121
usb_audio_hid_type::audio_cmd
uint8_t audio_cmd
Definition: audio_hid_class.h:124
usb_audio_hid_type::request_no
uint8_t request_no
Definition: audio_hid_class.h:114
usb_audio_hid_type::g_txhid_buff
uint8_t g_txhid_buff[0x40]
Definition: audio_hid_class.h:140
usb_audio_hid_type::mic_freq
uint32_t mic_freq
Definition: audio_hid_class.h:120
usb_audio_hid_type::interface
uint8_t interface
Definition: audio_hid_class.h:113
usb_audio_hid_type::spk_volume
uint16_t spk_volume
Definition: audio_hid_class.h:117
usb_audio_hid_type::mic_alt_setting
uint32_t mic_alt_setting
Definition: audio_hid_class.h:127
usb_audio_hid_type::mic_volume
uint16_t mic_volume
Definition: audio_hid_class.h:118
usb_audio_hid_type::alt_setting
uint32_t alt_setting
Definition: audio_hid_class.h:137
usb_audio_hid_type::spk_alt_setting
uint32_t spk_alt_setting
Definition: audio_hid_class.h:126
usb_audio_hid_type::audio_mic_data
uint8_t audio_mic_data[(16 *2 *(16/8)+40)]
Definition: audio_hid_class.h:130
usb_audio_hid_type::enpd
uint8_t enpd
Definition: audio_hid_class.h:112
usb_audio_hid_type::hid_state
uint8_t hid_state
Definition: audio_hid_class.h:141
usb_audio_hid_type::mic_mute
uint8_t mic_mute
Definition: audio_hid_class.h:116
usb_audio_hid_type::hid_set_idle
uint32_t hid_set_idle
Definition: audio_hid_class.h:136
usb_audio_hid_type::mic_volume_limits
uint16_t mic_volume_limits[3]
Definition: audio_hid_class.h:122
usb_audio_hid_type::audio_feed_back
uint8_t audio_feed_back[0x3+1]
Definition: audio_hid_class.h:131
usb_audio_hid_type::audio_cmd_len
uint32_t audio_cmd_len
Definition: audio_hid_class.h:125
usb_audio_hid_type::g_rxhid_buff
uint8_t g_rxhid_buff[0x40]
Definition: audio_hid_class.h:139
usb_audio_hid_type::spk_freq
uint32_t spk_freq
Definition: audio_hid_class.h:119
usb_audio_hid_type::audio_spk_data
uint8_t audio_spk_data[(16 *2 *(16/8)+40)]
Definition: audio_hid_class.h:129
usb_audio_hid_type::hid_set_report
uint8_t hid_set_report[64]
Definition: audio_hid_class.h:138
usb_audio_hid_type::g_audio_cur
uint8_t g_audio_cur[64]
Definition: audio_hid_class.h:128
usb_audio_hid_type::hid_protocol
uint32_t hid_protocol
Definition: audio_hid_class.h:135
usb_audio_hid_type::spk_mute
uint8_t spk_mute
Definition: audio_hid_class.h:115
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::wIndex
uint16_t wIndex
Definition: usb_std.h:294
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core_type::setup
usb_setup_type setup
Definition: usbd_core.h:117
usbd_core_type::desc_handler
usbd_desc_handler * desc_handler
Definition: usbd_core.h:112
usbd_desc_handler::get_device_configuration
usbd_desc_t *(* get_device_configuration)(void)
Definition: usbd_core.h:77
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: audio_hid_class.h Source File

  • middlewares
  • usbd_class
  • audio_hid
audio_hid_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_HID_CLASS_H
27#define __AUDIO_HID_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35#include "audio_conf.h"
36
52#define USBD_AUHID_AUDIO_MIC_IN_EPT 0x81
53#define USBD_AUHID_AUDIO_SPK_OUT_EPT 0x02
54#define USBD_AUHID_AUDIO_FEEDBACK_EPT 0x83
55
59#define USBD_AUHID_HID_IN_EPT 0x84
60#define USBD_AUHID_HID_OUT_EPT 0x05
61
65#define USBD_AUHID_IN_MAXPACKET_SIZE 0x40
66#define USBD_AUHID_OUT_MAXPACKET_SIZE 0x40
67
71#define AUDIO_REMAIN_SIZE 40
72#define AUDIO_MIC_IN_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_MIC_CHANEL_NUM * (AUDIO_MIC_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
73#define AUDIO_SPK_OUT_MAXPACKET_SIZE (AUDIO_SUPPORT_MAX_FREQ * AUDIO_SPK_CHANEL_NUM * (AUDIO_SPK_DEFAULT_BITW / 8) + AUDIO_REMAIN_SIZE)
74#define AUDIO_FEEDBACK_MAXPACKET_SIZE 0x3
75#define FEEDBACK_REFRESH_TIME 0x8
79#define AUDIO_REQ_CONTROL_INTERFACE 0x01
80#define AUDIO_REQ_CONTROL_ENDPOINT 0x02
81#define AUDIO_REQ_CONTROL_MASK 0x03
82
86#define AUDIO_MUTE_CONTROL 0x01
87#define AUDIO_VOLUME_CONTROL 0x02
88#define AUDIO_FREQ_SET_CONTROL 0x03
89
97#define AUDIO_MUTE_CONTROL 0x01
98#define AUDIO_VOLUME_CONTROL 0x02
99#define AUDIO_FREQ_SET_CONTROL 0x03
100
104#define AUDIO_DESCRIPTOR_TYPE 0x21
105#define AUDIO_DESCRIPTOR_SIZE 0x09
106
110typedef struct
111{
112 uint8_t enpd;
113 uint8_t interface;
114 uint8_t request_no;
115 uint8_t spk_mute;
116 uint8_t mic_mute;
117 uint16_t spk_volume;
118 uint16_t mic_volume;
119 uint32_t spk_freq;
120 uint32_t mic_freq;
121 uint16_t spk_volume_limits[3]; /*[0] is mininum value, [1] is maxnum value, [2] is volume resolution */
122 uint16_t mic_volume_limits[3]; /*[0] is mininum value, [1] is maxnum value, [2] is volume resolution */
123
124 uint8_t audio_cmd;
125 uint32_t audio_cmd_len;
126 uint32_t spk_alt_setting;
127 uint32_t mic_alt_setting;
128 uint8_t g_audio_cur[64];
129 uint8_t audio_spk_data[AUDIO_SPK_OUT_MAXPACKET_SIZE];
130 uint8_t audio_mic_data[AUDIO_MIC_IN_MAXPACKET_SIZE];
131 uint8_t audio_feed_back[AUDIO_FEEDBACK_MAXPACKET_SIZE+1];
132
133
134 /* hid */
135 uint32_t hid_protocol;
136 uint32_t hid_set_idle;
137 uint32_t alt_setting;
138 uint8_t hid_set_report[64];
139 uint8_t g_rxhid_buff[USBD_AUHID_OUT_MAXPACKET_SIZE];
140 uint8_t g_txhid_buff[USBD_AUHID_IN_MAXPACKET_SIZE];
141 uint8_t hid_state;
142}usb_audio_hid_type;
143
144extern usbd_class_handler audio_hid_class_handler;
145
146 usb_sts_type audio_hid_class_send_report(void *udev, uint8_t *report, uint16_t len);
147
160#ifdef __cplusplus
161}
162#endif
163
164#endif
165
audio_conf.h
usb audio config
audio_hid_class_send_report
usb_sts_type audio_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: audio_hid_class.c:778
AUDIO_MIC_IN_MAXPACKET_SIZE
#define AUDIO_MIC_IN_MAXPACKET_SIZE
Definition: audio_hid_class.h:72
audio_hid_class_handler
usbd_class_handler audio_hid_class_handler
Definition: audio_hid_class.c:62
AUDIO_SPK_OUT_MAXPACKET_SIZE
#define AUDIO_SPK_OUT_MAXPACKET_SIZE
Definition: audio_hid_class.h:73
USBD_AUHID_OUT_MAXPACKET_SIZE
#define USBD_AUHID_OUT_MAXPACKET_SIZE
Definition: audio_hid_class.h:66
USBD_AUHID_IN_MAXPACKET_SIZE
#define USBD_AUHID_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: audio_hid_class.h:65
AUDIO_FEEDBACK_MAXPACKET_SIZE
#define AUDIO_FEEDBACK_MAXPACKET_SIZE
Definition: audio_hid_class.h:74
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
usb_audio_hid_type
usb audio control struct
Definition: audio_hid_class.h:111
usb_audio_hid_type::audio_cmd
uint8_t audio_cmd
Definition: audio_hid_class.h:124
usb_audio_hid_type::request_no
uint8_t request_no
Definition: audio_hid_class.h:114
usb_audio_hid_type::mic_freq
uint32_t mic_freq
Definition: audio_hid_class.h:120
usb_audio_hid_type::interface
uint8_t interface
Definition: audio_hid_class.h:113
usb_audio_hid_type::spk_volume
uint16_t spk_volume
Definition: audio_hid_class.h:117
usb_audio_hid_type::mic_alt_setting
uint32_t mic_alt_setting
Definition: audio_hid_class.h:127
usb_audio_hid_type::mic_volume
uint16_t mic_volume
Definition: audio_hid_class.h:118
usb_audio_hid_type::alt_setting
uint32_t alt_setting
Definition: audio_hid_class.h:137
usb_audio_hid_type::spk_alt_setting
uint32_t spk_alt_setting
Definition: audio_hid_class.h:126
usb_audio_hid_type::enpd
uint8_t enpd
Definition: audio_hid_class.h:112
usb_audio_hid_type::hid_state
uint8_t hid_state
Definition: audio_hid_class.h:141
usb_audio_hid_type::mic_mute
uint8_t mic_mute
Definition: audio_hid_class.h:116
usb_audio_hid_type::hid_set_idle
uint32_t hid_set_idle
Definition: audio_hid_class.h:136
usb_audio_hid_type::audio_cmd_len
uint32_t audio_cmd_len
Definition: audio_hid_class.h:125
usb_audio_hid_type::spk_freq
uint32_t spk_freq
Definition: audio_hid_class.h:119
usb_audio_hid_type::hid_protocol
uint32_t hid_protocol
Definition: audio_hid_class.h:135
usb_audio_hid_type::spk_mute
uint8_t spk_mute
Definition: audio_hid_class.h:115
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: audio_hid_desc.c Source File

  • middlewares
  • usbd_class
  • audio_hid
audio_hid_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "audio_hid_desc.h"
28
43static usbd_desc_t *get_device_descriptor(void);
44static usbd_desc_t *get_device_qualifier(void);
45static usbd_desc_t *get_device_configuration(void);
46static usbd_desc_t *get_device_other_speed(void);
47static usbd_desc_t *get_device_lang_id(void);
48static usbd_desc_t *get_device_manufacturer_string(void);
49static usbd_desc_t *get_device_product_string(void);
50static usbd_desc_t *get_device_serial_string(void);
51static usbd_desc_t *get_device_interface_string(void);
52static usbd_desc_t *get_device_config_string(void);
53
54static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
55static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
56static void get_serial_num(void);
57#if defined ( __ICCARM__ ) /* iar compiler */
58 #pragma data_alignment=4
59#endif
60ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
61
65 usbd_desc_handler audio_hid_desc_handler =
66{
67 get_device_descriptor,
68 get_device_qualifier,
69 get_device_configuration,
70 get_device_other_speed,
71 get_device_lang_id,
72 get_device_manufacturer_string,
73 get_device_product_string,
74 get_device_serial_string,
75 get_device_interface_string,
76 get_device_config_string,
77};
78
82#if defined ( __ICCARM__ ) /* iar compiler */
83 #pragma data_alignment=4
84#endif
85ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
86{
87 USB_DEVICE_DESC_LEN, /* bLength */
88 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
89 0x00, /* bcdUSB */
90 0x02,
91 0x00, /* bDeviceClass */
92 0x00, /* bDeviceSubClass */
93 0x00, /* bDeviceProtocol */
94 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
95 LBYTE(USBD_AUHID_VENDOR_ID), /* idVendor */
96 HBYTE(USBD_AUHID_VENDOR_ID), /* idVendor */
97 LBYTE(USBD_AUHID_PRODUCT_ID), /* idProduct */
98 HBYTE(USBD_AUHID_PRODUCT_ID), /* idProduct */
99 0x00, /* bcdDevice rel. 2.00 */
100 0x02,
101 USB_MFC_STRING, /* Index of manufacturer string */
102 USB_PRODUCT_STRING, /* Index of product string */
103 USB_SERIAL_STRING, /* Index of serial number string */
104 0x01 /* bNumConfigurations */
105};
106
110#if defined ( __ICCARM__ ) /* iar compiler */
111 #pragma data_alignment=4
112#endif
113ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_AUHID_CONFIG_DESC_SIZE] ALIGNED_TAIL =
114{
115 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
116 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
117 LBYTE(USBD_AUHID_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
118 HBYTE(USBD_AUHID_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
119 0x1 + AUDIO_INTERFACE_NUM + 0x1, /* bNumInterfaces: n interface */
120 0x01, /* bConfigurationValue: configuration value */
121 0x00, /* iConfiguration: index of string descriptor describing
122 the configuration */
123 0xC0, /* bmAttributes: self powered */
124 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
125
126 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
127 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
128 0x00, /* bInterfaceNumber: number of interface */
129 0x00, /* bAlternateSetting: alternate set */
130 0x00, /* bNumEndpoints: number of endpoints */
131 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio class code */
132 AUDIO_SUBCLASS_AUDIOCONTROL, /* bInterfaceSubClass: audio control */
133 AUDIO_PROTOCOL_UNDEFINED, /* bInterfaceProtocol: undefined */
134 0x00, /* iInterface: index of string descriptor */
135
136 0x08+AUDIO_INTERFACE_NUM, /* bLength: size of this descriptor, in bytes 8+n */
137 AUDIO_CS_INTERFACE, /* bDescriptorType: cs interface descriptor type */
138 AUDIO_AC_HEADER, /* bDescriptorSubtype: Header function Descriptor*/
139 LBYTE(AUHID_BCD_NUM),
140 HBYTE(AUHID_BCD_NUM), /* bcdCDC: audio device class specification release number */
141 LBYTE(AUDIO_INTERFACE_LEN),
142 HBYTE(AUDIO_INTERFACE_LEN), /* wTotalLength: total number of bytes returned for the class-specific audio control interface */
143 AUDIO_INTERFACE_NUM, /* bInClollection: the number of audio streaming */
144#if (AUDIO_INTERFACE_NUM == 2) /* two interface */
145 0x02,
146 0x01,
147#else
148 0x01,
149#endif
150
151 /* usb microphone config */
152#if (AUDIO_SUPPORT_MIC == 1)
153 AUDIO_INPUT_TERMINAL_SIZE, /* bLength: descriptor size */
154 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
155 AUDIO_AC_INPUT_TERMINAL, /* bDescriptorSubtype: input_terminal type*/
156 AUDIO_MIC_INPUT_TERMINAL_ID, /* bTerminalID: id of this input terminal*/
157 LBYTE(AUDIO_INPUT_TERMINAL_MICROPHONE),
158 HBYTE(AUDIO_INPUT_TERMINAL_MICROPHONE),/* wTerminalType: terminal is microphone */
159 0x00, /* bAssocTerminal: no association */
160 AUDIO_MIC_CHR, /* bNrChannels: two channel */
161#if (AUDIO_MIC_CHR == 2)
162 0x03, /* wChannelConfig: left front and right front */
163#endif
164#if (AUDIO_MIC_CHR == 1)
165 0x00, /* wChannelConfig */
166#endif
167 0x00, /* wChannelConfig */
168 0x00, /* iChannelNames: unused */
169 0x00, /* iTerminal: unused */
170
171 AUDIO_FEATURE_UNIT_SIZE, /* bLength: descriptor size */
172 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
173 AUDIO_AC_FEATURE_UNIT, /* bDescriptorSubtype: feature unit type*/
174 AUDIO_MIC_FEATURE_UNIT_ID, /* bUnitID: id of this feature unit */
175 AUDIO_MIC_INPUT_TERMINAL_ID, /* bSourceID: from input terminal */
176 0x02, /* bControlSize: 2 byte */
177 0x03, /* bmaControls0: mute & volume*/
178 0x00,
179 0x00, /* bmaControls1 */
180 0x00,
181 0x00, /* bmaControls2 */
182 0x00,
183 0x00, /* iFeature: unused */
184
185 AUDIO_OUTPUT_TERMINAL_SIZE, /* bLength: descriptor size */
186 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
187 AUDIO_AC_OUTPUT_TERMINAL, /* bDescriptorSubtype: output_terminal type*/
188 AUDIO_MIC_OUTPUT_TERMINAL_ID, /* bTerminalID: id of this output terminal*/
189 LBYTE(AUDIO_TERMINAL_TYPE_STREAMING),
190 HBYTE(AUDIO_TERMINAL_TYPE_STREAMING), /* wTerminalType: usb streaming */
191 0x00, /* bAssocTerminal: unused */
192 AUDIO_MIC_FEATURE_UNIT_ID, /* bSourceID: from feature unit terminal */
193 0x00, /* iTerminal: unused */
194#endif
195
196#if (AUDIO_SUPPORT_SPK == 1)
197 /* speaker config */
198 AUDIO_INPUT_TERMINAL_SIZE, /* bLength: descriptor size */
199 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
200 AUDIO_AC_INPUT_TERMINAL, /* bDescriptorSubtype: input_terminal type*/
201 AUDIO_SPK_INPUT_TERMINAL_ID, /* bTerminalID: id of this input terminal*/
202 LBYTE(AUDIO_TERMINAL_TYPE_STREAMING), /* wTerminalType: usb streaming */
203 HBYTE(AUDIO_TERMINAL_TYPE_STREAMING), /* wTerminalType: usb streaming */
204 0x00, /* bAssocTerminal: no association */
205 AUDIO_SPK_CHR, /* bNrChannels: two channel */
206#if (AUDIO_SPK_CHR == 2)
207 0x03, /* wChannelConfig: left front and right front */
208#endif
209#if (AUDIO_SPK_CHR == 1)
210 0x00, /* wChannelConfig */
211#endif
212 0x00, /* wChannelConfig */
213 0x00, /* iChannelNames: unused */
214 0x00, /* iTerminal: unused */
215
216 AUDIO_FEATURE_UNIT_SIZE, /* bLength: descriptor size */
217 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
218 AUDIO_AC_FEATURE_UNIT, /* bDescriptorSubtype: feature unit type*/
219 AUDIO_SPK_FEATURE_UNIT_ID, /* bUnitID: id of this feature unit */
220 AUDIO_SPK_INPUT_TERMINAL_ID, /* bSourceID: from input terminal */
221 0x02, /* bControlSize: 2 byte */
222 0x03, /* bmaControls0: mute & volume*/
223 0x00,
224 0x00, /* bmaControls1: 0x0000 */
225 0x00,
226 0x00, /* bmaControls2: 0x0000 */
227 0x00,
228 0x00, /* iFeature: unused */
229
230 AUDIO_OUTPUT_TERMINAL_SIZE, /* bLength: descriptor size */
231 AUDIO_CS_INTERFACE, /* bDescriptorType: configuration */
232 AUDIO_AC_OUTPUT_TERMINAL, /* bDescriptorSubtype: output_terminal type*/
233 AUDIO_SPK_OUTPUT_TERMINAL_ID, /* bTerminalID: id of this output terminal*/
234 LBYTE(AUDIO_OUTPUT_TERMINAL_SPEAKER), /* wTerminalType: usb speaker */
235 HBYTE(AUDIO_OUTPUT_TERMINAL_SPEAKER), /* wTerminalType: usb speaker */
236 0x00, /* bAssocTerminal: unused */
237 AUDIO_SPK_FEATURE_UNIT_ID, /* bSourceID: from feature unit terminal */
238 0x00, /* iTerminal: unused */
239#endif
240
241#if (AUDIO_SUPPORT_MIC == 1)
242 /* microphone interface */
243 0x09, /* bLength: descriptor size */
244 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
245 AUDIO_MIC_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
246 0x00, /* bAlternateSetting: index of this setting */
247 0x00, /* bNumEndpoints: 0 endpoints */
248 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
249 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
250 0x00, /* bInterfaceProtocol: unused */
251 0x00, /* iInterface: unused */
252
253 0x09, /* bLength: descriptor size */
254 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
255 AUDIO_MIC_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
256 0x01, /* bAlternateSetting: index of this setting */
257 0x01, /* bNumEndpoints: 1 endpoints */
258 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
259 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
260 0x00, /* bInterfaceProtocol: unused */
261 0x00, /* iInterface: unused */
262
263 0x07, /* bLength: configuration descriptor size */
264 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
265 AUDIO_AS_GENERAL, /* bDescriptorSubtype: general sub type*/
266 AUDIO_MIC_OUTPUT_TERMINAL_ID, /* bTerminalLink: unit id of the output terminal */
267 0x01, /* bDelay: interface delay */
268 0x01, /* wFormatTag: pcm format*/
269 0x00, /* wFormatTag: pcm format*/
270
271 0x08 + AUDIO_MIC_FREQ_SIZE * 3, /* bLength: descriptor size */
272 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
273 AUDIO_AS_FORMAT_TYPE, /* bDescriptorSubtype: format subtype */
274 AUDIO_FORMAT_TYPE_I, /* bFormatType: format type 1 */
275 AUDIO_MIC_CHR, /* bNrChannels: channel number */
276 AUDIO_MIC_BITW / 8, /* bSubFrameSize: per audio subframe */
277 AUDIO_MIC_BITW, /* bBitResolution: n bits per sample */
278 AUDIO_MIC_FREQ_SIZE, /* bSamFreqType: n frequency supported */
279#if (AUDIO_SUPPORT_FREQ_16K == 1)
280 SAMPLE_FREQ(AT32_AUDIO_FREQ_16K), /* tSamFreq: 16000hz */
281#endif
282#if (AUDIO_SUPPORT_FREQ_48K == 1)
283 SAMPLE_FREQ(AT32_AUDIO_FREQ_48K), /* tSamFreq: 48000hz */
284#endif
285
286 0x09, /* bLength: size of endpoint descriptor in bytes */
287 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
288 USBD_AUHID_AUDIO_MIC_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
289 USB_EPT_DESC_ISO | USB_ETP_DESC_ASYNC, /* bmAttributes: endpoint attributes */
290 LBYTE(AUDIO_MIC_IN_MAXPACKET_SIZE),
291 HBYTE(AUDIO_MIC_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
292 AUHID_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
293 0x00, /* bRefresh: unused */
294 0x00, /* bSynchAddress: unused */
295
296 0x07, /* bLength: size of endpoint descriptor in bytes */
297 AUDIO_CS_ENDPOINT, /* bDescriptorType: cs endpoint descriptor type */
298 0x01, /* bDescriptorSubtype: general subtype */
299 0x01, /* bmAttributes */
300 0x00, /* bLockDelayUnits: unused */
301 0x00, /* wLockDelay: unused */
302 0x00, /* wLockDelay: unused */
303#endif
304
305#if (AUDIO_SUPPORT_SPK == 1)
306 /* speaker interface */
307 0x09, /* bLength: descriptor size */
308 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
309 AUDIO_SPK_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
310 0x00, /* bAlternateSetting: index of this setting */
311 0x00, /* bNumEndpoints: 0 endpoints */
312 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
313 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
314 0x00, /* bInterfaceProtocol: unused */
315 0x00, /* iInterface: unused */
316
317 0x09, /* bLength: descriptor size */
318 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
319 AUDIO_SPK_INTERFACE_NUMBER, /* bInterfaceNumber: index of this interface */
320 0x01, /* bAlternateSetting: index of this setting */
321 0x01 + AUDIO_SUPPORT_FEEDBACK, /* bNumEndpoints: endpoints */
322 USB_CLASS_CODE_AUDIO, /* bInterfaceClass: audio */
323 AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubclass: audio streaming */
324 0x00, /* bInterfaceProtocol: unused */
325 0x00, /* iInterface: unused */
326
327 0x07, /* bLength: configuration descriptor size */
328 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
329 AUDIO_AS_GENERAL, /* bDescriptorSubtype: general sub type*/
330 AUDIO_SPK_INPUT_TERMINAL_ID, /* bTerminalLink: unit id of the input terminal */
331 0x01, /* bDelay: interface delay */
332 0x01, /* wFormatTag: pcm format*/
333 0x00, /* wFormatTag: pcm format*/
334
335 0x08 + AUDIO_SPK_FREQ_SIZE * 3, /* bLength: descriptor size */
336 AUDIO_CS_INTERFACE, /* bDescriptorType: interface descriptor type */
337 AUDIO_AS_FORMAT_TYPE, /* bDescriptorSubtype: format subtype */
338 AUDIO_FORMAT_TYPE_I, /* bFormatType: format type 1 */
339 AUDIO_SPK_CHR, /* bNrChannels: channel number */
340 AUDIO_SPK_BITW / 8, /* bSubFrameSize: per audio subframe */
341 AUDIO_SPK_BITW, /* bBitResolution: n bits per sample */
342 AUDIO_SPK_FREQ_SIZE, /* bSamFreqType: n frequency supported */
343#if (AUDIO_SUPPORT_FREQ_16K == 1)
344 SAMPLE_FREQ(AT32_AUDIO_FREQ_16K), /* tSamFreq: 16000hz */
345#endif
346#if (AUDIO_SUPPORT_FREQ_48K == 1)
347 SAMPLE_FREQ(AT32_AUDIO_FREQ_48K), /* tSamFreq: 48000hz */
348#endif
349
350 0x09, /* bLength: size of endpoint descriptor in bytes */
351 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
352 USBD_AUHID_AUDIO_SPK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
353 USB_EPT_DESC_ISO | USB_ETP_DESC_ASYNC, /* bmAttributes: endpoint attributes */
354 LBYTE(AUDIO_SPK_OUT_MAXPACKET_SIZE),
355 HBYTE(AUDIO_SPK_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
356 AUHID_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
357 0x00, /* bRefresh: unused */
358#if (AUDIO_SUPPORT_FEEDBACK == 1)
359 USBD_AUHID_AUDIO_FEEDBACK_EPT, /* bSynchAddress: feedback endpoint */
360#else
361 0x00, /* bSynchAddress: unused */
362#endif
363
364 0x07, /* bLength: size of endpoint descriptor in bytes */
365 AUDIO_CS_ENDPOINT, /* bDescriptorType: cs endpoint descriptor type */
366 0x01, /* bDescriptorSubtype: general subtype */
367 0x01, /* bmAttributes */
368 0x00, /* bLockDelayUnits: unused */
369 0x00, /* wLockDelay: unused */
370 0x00, /* wLockDelay: unused */
371
372#if (AUDIO_SUPPORT_FEEDBACK == 1)
373 0x09, /* bLength: size of endpoint descriptor in bytes */
374 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
375 USBD_AUHID_AUDIO_FEEDBACK_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
376 0x11, /* bmAttributes: endpoint attributes */
377 LBYTE(AUDIO_FEEDBACK_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
378 HBYTE(AUDIO_FEEDBACK_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
379 1, /* bInterval: interval for polling endpoint for data transfers */
380 FEEDBACK_REFRESH_TIME, /* bRefresh: this field indicates the rate at which an iso syncronization
381 pipe provides new syncronization feedback data. this rate must be a power of
382 2, therefore only the power is reported back and the range of this field is from
383 1(2ms) to 9(512ms) */
384 0x00, /* bSynchAddress: 0x00*/
385#endif
386
387#endif
388
389 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
390 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
391 HID_INTERFACE_NUMBER, /* bInterfaceNumber: number of interface */
392 0x00, /* bAlternateSetting: alternate set */
393 0x02, /* bNumEndpoints: number of endpoints */
394 USB_CLASS_CODE_HID, /* bInterfaceClass: class code hid */
395 0x00, /* bInterfaceSubClass: subclass code */
396 0x00, /* bInterfaceProtocol: protocol code */
397 0x00, /* iInterface: index of string descriptor */
398
399 0x09, /* bLength: size of HID descriptor in bytes */
400 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
401 LBYTE(AUHID_HID_BCD_NUM),
402 HBYTE(AUHID_HID_BCD_NUM), /* bcdHID: HID class specification release number */
403 0x00, /* bCountryCode: hardware target conutry */
404 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
405 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
406 LBYTE(sizeof(g_usbd_audio_hid_report)),
407 HBYTE(sizeof(g_usbd_audio_hid_report)), /* wDescriptorLength: total length of reprot descriptor */
408
409 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
410 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
411 USBD_AUHID_HID_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
412 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
413 LBYTE(USBD_AUHID_IN_MAXPACKET_SIZE),
414 HBYTE(USBD_AUHID_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
415 AUHID_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
416
417 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
418 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
419 USBD_AUHID_HID_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
420 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
421 LBYTE(USBD_AUHID_OUT_MAXPACKET_SIZE),
422 HBYTE(USBD_AUHID_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
423 AUHID_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
424};
425
429#if defined ( __ICCARM__ ) /* iar compiler */
430 #pragma data_alignment=4
431#endif
432ALIGNED_HEAD uint8_t g_usbd_audio_hid_report[USBD_AUHID_HID_SIZ_REPORT_DESC] ALIGNED_TAIL =
433{
434 0x06, 0xFF, 0x00, /* USAGE_PAGE(Vendor Page:0xFF00) */
435 0x09, 0x01, /* USAGE (Demo Kit) */
436 0xa1, 0x01, /* COLLECTION (Application) */
437 /* 7 */
438
439 /* Led 2 */
440 0x85, HID_REPORT_ID_2, /* REPORT_ID 2 */
441 0x09, 0x02, /* USAGE (LED 2) */
442 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
443 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
444 0x75, 0x08, /* REPORT_SIZE (8) */
445 0x95, 0x3F, /* REPORT_COUNT (1) */
446 0xB1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
447
448 0x85, 0x02, /* REPORT_ID (2) */
449 0x09, 0x02, /* USAGE (LED 2) */
450 0x91, 0x82, /* OUTPUT (Data,Var,Abs,Vol) */
451 /* 27 */
452
453 /* Led 3 */
454 0x85, HID_REPORT_ID_3, /* REPORT_ID (3) */
455 0x09, 0x03, /* USAGE (LED 3) */
456 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
457 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
458 0x75, 0x08, /* REPORT_SIZE (8) */
459 0x95, 0x3F, /* REPORT_COUNT (1) */
460 0xB1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
461
462 0x85, 0x03, /* REPORT_ID (3) */
463 0x09, 0x03, /* USAGE (LED 3) */
464 0x91, 0x82, /* OUTPUT (Data,Var,Abs,Vol) */
465 /* 47 */
466
467 /* Led 4 */
468 0x85, HID_REPORT_ID_4, /* REPORT_ID 4) */
469 0x09, 0x04, /* USAGE (LED 4) */
470 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
471 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
472 0x75, 0x08, /* REPORT_SIZE (8) */
473 0x95, 0x3F, /* REPORT_COUNT (1) */
474 0xB1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
475
476 0x85, 0x04, /* REPORT_ID (4) */
477 0x09, 0x04, /* USAGE (LED 4) */
478 0x91, 0x82, /* OUTPUT (Data,Var,Abs,Vol) */
479 /* 67 */
480
481 /* key Push Button */
482 0x85, HID_REPORT_ID_5, /* REPORT_ID (5) */
483 0x09, 0x05, /* USAGE (Push Button) */
484 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
485 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
486 0x75, 0x01, /* REPORT_SIZE (1) */
487 0x81, 0x82, /* INPUT (Data,Var,Abs,Vol) */
488
489 0x09, 0x05, /* USAGE (Push Button) */
490 0x75, 0x01, /* REPORT_SIZE (1) */
491 0xb1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
492
493 0x75, 0x07, /* REPORT_SIZE (7) */
494 0x81, 0x83, /* INPUT (Cnst,Var,Abs,Vol) */
495 0x85, 0x05, /* REPORT_ID (5) */
496
497 0x75, 0x07, /* REPORT_SIZE (7) */
498 0xb1, 0x83, /* FEATURE (Cnst,Var,Abs,Vol) */
499 /* 95 */
500
501 /* Data OUT */
502 0x85, HID_REPORT_ID_6, /* REPORT_ID (0xF0) */
503 0x09, 0x06, /* USAGE */
504 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
505 0x26, 0x00,0xff, /* LOGICAL_MAXIMUM (255) */
506 0x75, 0x08, /* REPORT_SIZE (8) */
507 0x95, 0x3F, /* REPORT_COUNT (64) */
508 0x91, 0x02, /* OUTPUT(Data,Var,Abs,Vol) */
509 /* 110 */
510
511 /* Data IN */
512 0x85, HID_REPORT_ID_6, /* REPORT_ID (0xF0) */
513 0x09, 0x07, /* USAGE */
514 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
515 0x26, 0x00,0xff, /* LOGICAL_MAXIMUM (255) */
516 0x75, 0x08, /* REPORT_SIZE (8) */
517 0x95, 0x3F, /* REPORT_COUNT (64) */
518 0x81, 0x82, /* INPUT(Data,Var,Abs,Vol) */
519
520 /* 125 */
521 0xc0 /* END_COLLECTION */
522};
523
527#if defined ( __ICCARM__ ) /* iar compiler */
528 #pragma data_alignment=4
529#endif
530ALIGNED_HEAD uint8_t g_audio_hid_usb_desc[9] ALIGNED_TAIL =
531{
532 0x09, /* bLength: size of HID descriptor in bytes */
533 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
534 LBYTE(AUHID_HID_BCD_NUM),
535 HBYTE(AUHID_HID_BCD_NUM), /* bcdHID: HID class specification release number */
536 0x00, /* bCountryCode: hardware target conutry */
537 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
538 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
539 LBYTE(sizeof(g_usbd_audio_hid_report)),
540 HBYTE(sizeof(g_usbd_audio_hid_report)), /* wDescriptorLength: total length of reprot descriptor */
541};
542
546#if defined ( __ICCARM__ ) /* iar compiler */
547 #pragma data_alignment=4
548#endif
549ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_AUHID_SIZ_STRING_LANGID] ALIGNED_TAIL =
550{
551 USBD_AUHID_SIZ_STRING_LANGID,
552 USB_DESCIPTOR_TYPE_STRING,
553 0x09,
554 0x04,
555};
556
560#if defined ( __ICCARM__ ) /* iar compiler */
561 #pragma data_alignment=4
562#endif
563ALIGNED_HEAD static uint8_t g_string_serial[USBD_AUHID_SIZ_STRING_SERIAL] ALIGNED_TAIL =
564{
565 USBD_AUHID_SIZ_STRING_SERIAL,
566 USB_DESCIPTOR_TYPE_STRING,
567};
568
569
570/* device descriptor */
571static usbd_desc_t device_descriptor =
572{
573 USB_DEVICE_DESC_LEN,
574 g_usbd_descriptor
575};
576
577/* config descriptor */
578static usbd_desc_t config_descriptor =
579{
580 USBD_AUHID_CONFIG_DESC_SIZE,
581 g_usbd_configuration
582};
583
584/* langid descriptor */
585static usbd_desc_t langid_descriptor =
586{
587 USBD_AUHID_SIZ_STRING_LANGID,
588 g_string_lang_id
589};
590
591/* serial descriptor */
592static usbd_desc_t serial_descriptor =
593{
594 USBD_AUHID_SIZ_STRING_SERIAL,
595 g_string_serial
596};
597
598static usbd_desc_t vp_desc;
599
606static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
607{
608 uint16_t str_len = 0, id_pos = 2;
609 uint8_t *tmp_str = string;
610
611 while(*tmp_str != '\0')
612 {
613 str_len ++;
614 unicode_buf[id_pos ++] = *tmp_str ++;
615 unicode_buf[id_pos ++] = 0x00;
616 }
617
618 str_len = str_len * 2 + 2;
619 unicode_buf[0] = str_len;
620 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
621
622 return str_len;
623}
624
632static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
633{
634 uint8_t idx = 0;
635
636 for( idx = 0 ; idx < len ; idx ++)
637 {
638 if( ((value >> 28)) < 0xA )
639 {
640 pbuf[2 * idx] = (value >> 28) + '0';
641 }
642 else
643 {
644 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
645 }
646
647 value = value << 4;
648
649 pbuf[2 * idx + 1] = 0;
650 }
651}
652
658static void get_serial_num(void)
659{
660 uint32_t serial0, serial1, serial2;
661
662 serial0 = *(uint32_t*)MCU_ID1;
663 serial1 = *(uint32_t*)MCU_ID2;
664 serial2 = *(uint32_t*)MCU_ID3;
665
666 serial0 += serial2;
667
668 if (serial0 != 0)
669 {
670 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
671 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
672 }
673}
674
680static usbd_desc_t *get_device_descriptor(void)
681{
682 return &device_descriptor;
683}
684
690static usbd_desc_t * get_device_qualifier(void)
691{
692 return NULL;
693}
694
700static usbd_desc_t *get_device_configuration(void)
701{
702 return &config_descriptor;
703}
704
710static usbd_desc_t *get_device_other_speed(void)
711{
712 return NULL;
713}
714
720static usbd_desc_t *get_device_lang_id(void)
721{
722 return &langid_descriptor;
723}
724
725
731static usbd_desc_t *get_device_manufacturer_string(void)
732{
733 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUHID_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
734 vp_desc.descriptor = g_usbd_desc_buffer;
735 return &vp_desc;
736}
737
743static usbd_desc_t *get_device_product_string(void)
744{
745 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUHID_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
746 vp_desc.descriptor = g_usbd_desc_buffer;
747 return &vp_desc;
748}
749
755static usbd_desc_t *get_device_serial_string(void)
756{
757 get_serial_num();
758 return &serial_descriptor;
759}
760
766static usbd_desc_t *get_device_interface_string(void)
767{
768 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUHID_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
769 vp_desc.descriptor = g_usbd_desc_buffer;
770 return &vp_desc;
771}
772
778static usbd_desc_t *get_device_config_string(void)
779{
780 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_AUHID_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
781 vp_desc.descriptor = g_usbd_desc_buffer;
782 return &vp_desc;
783}
784
audio_hid_desc.h
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
AUDIO_MIC_IN_MAXPACKET_SIZE
#define AUDIO_MIC_IN_MAXPACKET_SIZE
Definition: audio_class.h:60
AUDIO_SPK_OUT_MAXPACKET_SIZE
#define AUDIO_SPK_OUT_MAXPACKET_SIZE
Definition: audio_class.h:61
FEEDBACK_REFRESH_TIME
#define FEEDBACK_REFRESH_TIME
Definition: audio_class.h:63
AUDIO_FEEDBACK_MAXPACKET_SIZE
#define AUDIO_FEEDBACK_MAXPACKET_SIZE
Definition: audio_class.h:62
AUDIO_MIC_FEATURE_UNIT_ID
#define AUDIO_MIC_FEATURE_UNIT_ID
Definition: audio_desc.h:167
AUDIO_CS_ENDPOINT
#define AUDIO_CS_ENDPOINT
Definition: audio_desc.h:74
AUDIO_AC_HEADER
#define AUDIO_AC_HEADER
Definition: audio_desc.h:89
AUDIO_SUBCLASS_AUDIOCONTROL
#define AUDIO_SUBCLASS_AUDIOCONTROL
Definition: audio_desc.h:66
AUDIO_INPUT_TERMINAL_SIZE
#define AUDIO_INPUT_TERMINAL_SIZE
audio interface descriptor size define
Definition: audio_desc.h:159
AUDIO_TERMINAL_TYPE_STREAMING
#define AUDIO_TERMINAL_TYPE_STREAMING
Definition: audio_desc.h:136
AUDIO_SPK_CHR
#define AUDIO_SPK_CHR
Definition: audio_desc.h:200
AUDIO_SPK_INTERFACE_NUMBER
#define AUDIO_SPK_INTERFACE_NUMBER
Definition: audio_desc.h:178
AUDIO_MIC_OUTPUT_TERMINAL_ID
#define AUDIO_MIC_OUTPUT_TERMINAL_ID
Definition: audio_desc.h:168
AUDIO_MIC_INTERFACE_NUMBER
#define AUDIO_MIC_INTERFACE_NUMBER
audio interface number
Definition: audio_desc.h:176
SAMPLE_FREQ
#define SAMPLE_FREQ(frq)
Definition: audio_desc.h:211
AUDIO_MIC_FREQ_SIZE
#define AUDIO_MIC_FREQ_SIZE
audio microphone freq and channel config
Definition: audio_desc.h:192
AUDIO_SPK_FREQ_SIZE
#define AUDIO_SPK_FREQ_SIZE
audio speaker freq and channel config
Definition: audio_desc.h:199
AT32_AUDIO_FREQ_48K
#define AT32_AUDIO_FREQ_48K
Definition: audio_desc.h:187
AUDIO_FORMAT_TYPE_I
#define AUDIO_FORMAT_TYPE_I
audio format type 1
Definition: audio_desc.h:146
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
AUDIO_AS_GENERAL
#define AUDIO_AS_GENERAL
Definition: audio_desc.h:102
AUDIO_INTERFACE_NUM
#define AUDIO_INTERFACE_NUM
audio interface config
Definition: audio_desc.h:151
AUDIO_CS_INTERFACE
#define AUDIO_CS_INTERFACE
audio class-specific descriptor types
Definition: audio_desc.h:73
AUDIO_SPK_FEATURE_UNIT_ID
#define AUDIO_SPK_FEATURE_UNIT_ID
Definition: audio_desc.h:170
AUDIO_OUTPUT_TERMINAL_SIZE
#define AUDIO_OUTPUT_TERMINAL_SIZE
Definition: audio_desc.h:160
AUDIO_SPK_OUTPUT_TERMINAL_ID
#define AUDIO_SPK_OUTPUT_TERMINAL_ID
Definition: audio_desc.h:171
AUDIO_AC_INPUT_TERMINAL
#define AUDIO_AC_INPUT_TERMINAL
Definition: audio_desc.h:90
AUDIO_MIC_CHR
#define AUDIO_MIC_CHR
Definition: audio_desc.h:193
AUDIO_OUTPUT_TERMINAL_SPEAKER
#define AUDIO_OUTPUT_TERMINAL_SPEAKER
Definition: audio_desc.h:141
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
AT32_AUDIO_FREQ_16K
#define AT32_AUDIO_FREQ_16K
audio support freq
Definition: audio_desc.h:186
AUDIO_AS_FORMAT_TYPE
#define AUDIO_AS_FORMAT_TYPE
Definition: audio_desc.h:103
AUDIO_MIC_INPUT_TERMINAL_ID
#define AUDIO_MIC_INPUT_TERMINAL_ID
audio terminal id define
Definition: audio_desc.h:166
AUDIO_SPK_BITW
#define AUDIO_SPK_BITW
Definition: audio_desc.h:201
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
AUDIO_FEATURE_UNIT_SIZE
#define AUDIO_FEATURE_UNIT_SIZE
Definition: audio_desc.h:161
AUDIO_PROTOCOL_UNDEFINED
#define AUDIO_PROTOCOL_UNDEFINED
audio interface protocol codes
Definition: audio_desc.h:83
AUDIO_MIC_BITW
#define AUDIO_MIC_BITW
Definition: audio_desc.h:194
AUDIO_AC_FEATURE_UNIT
#define AUDIO_AC_FEATURE_UNIT
Definition: audio_desc.h:94
AUDIO_SPK_INPUT_TERMINAL_ID
#define AUDIO_SPK_INPUT_TERMINAL_ID
Definition: audio_desc.h:169
AUDIO_INTERFACE_LEN
#define AUDIO_INTERFACE_LEN
Definition: audio_desc.h:152
AUDIO_SUBCLASS_AUDIOSTREAMING
#define AUDIO_SUBCLASS_AUDIOSTREAMING
Definition: audio_desc.h:67
AUDIO_AC_OUTPUT_TERMINAL
#define AUDIO_AC_OUTPUT_TERMINAL
Definition: audio_desc.h:91
AUDIO_INPUT_TERMINAL_MICROPHONE
#define AUDIO_INPUT_TERMINAL_MICROPHONE
Definition: audio_desc.h:139
USBD_AUHID_AUDIO_MIC_IN_EPT
#define USBD_AUHID_AUDIO_MIC_IN_EPT
endpoint define
Definition: audio_hid_class.h:52
USBD_AUHID_HID_IN_EPT
#define USBD_AUHID_HID_IN_EPT
usb custom hid use endpoint define
Definition: audio_hid_class.h:59
USBD_AUHID_HID_OUT_EPT
#define USBD_AUHID_HID_OUT_EPT
Definition: audio_hid_class.h:60
USBD_AUHID_AUDIO_FEEDBACK_EPT
#define USBD_AUHID_AUDIO_FEEDBACK_EPT
Definition: audio_hid_class.h:54
USBD_AUHID_OUT_MAXPACKET_SIZE
#define USBD_AUHID_OUT_MAXPACKET_SIZE
Definition: audio_hid_class.h:66
USBD_AUHID_AUDIO_SPK_OUT_EPT
#define USBD_AUHID_AUDIO_SPK_OUT_EPT
Definition: audio_hid_class.h:53
USBD_AUHID_IN_MAXPACKET_SIZE
#define USBD_AUHID_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: audio_hid_class.h:65
USBD_AUHID_DESC_CONFIGURATION_STRING
#define USBD_AUHID_DESC_CONFIGURATION_STRING
Definition: audio_hid_desc.h:59
USBD_AUHID_DESC_MANUFACTURER_STRING
#define USBD_AUHID_DESC_MANUFACTURER_STRING
Definition: audio_hid_desc.h:57
USBD_AUHID_HID_SIZ_REPORT_DESC
#define USBD_AUHID_HID_SIZ_REPORT_DESC
Definition: audio_hid_desc.h:234
AUHID_BCD_NUM
#define AUHID_BCD_NUM
Definition: audio_hid_desc.h:49
HID_REPORT_ID_2
#define HID_REPORT_ID_2
Definition: audio_hid_desc.h:221
HID_REPORT_ID_4
#define HID_REPORT_ID_4
Definition: audio_hid_desc.h:223
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
AUHID_HID_BINTERVAL_TIME
#define AUHID_HID_BINTERVAL_TIME
Definition: audio_hid_desc.h:203
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
HID_REPORT_ID_6
#define HID_REPORT_ID_6
Definition: audio_hid_desc.h:225
USBD_AUHID_SIZ_STRING_LANGID
#define USBD_AUHID_SIZ_STRING_LANGID
Definition: audio_hid_desc.h:54
AUHID_HID_BCD_NUM
#define AUHID_HID_BCD_NUM
usb bcd number define
Definition: audio_hid_desc.h:208
USBD_AUHID_PRODUCT_ID
#define USBD_AUHID_PRODUCT_ID
Definition: audio_hid_desc.h:52
USBD_AUHID_CONFIG_DESC_SIZE
#define USBD_AUHID_CONFIG_DESC_SIZE
Definition: audio_hid_desc.h:236
USBD_AUHID_DESC_INTERFACE_STRING
#define USBD_AUHID_DESC_INTERFACE_STRING
Definition: audio_hid_desc.h:60
USBD_AUHID_DESC_PRODUCT_STRING
#define USBD_AUHID_DESC_PRODUCT_STRING
Definition: audio_hid_desc.h:58
USBD_AUHID_SIZ_STRING_SERIAL
#define USBD_AUHID_SIZ_STRING_SERIAL
Definition: audio_hid_desc.h:55
HID_REPORT_ID_3
#define HID_REPORT_ID_3
Definition: audio_hid_desc.h:222
g_audio_hid_usb_desc
uint8_t g_audio_hid_usb_desc[9]
usb hid descriptor
Definition: audio_hid_desc.c:530
g_usbd_audio_hid_report
uint8_t g_usbd_audio_hid_report[126]
usb hid report descriptor
Definition: audio_hid_desc.c:432
USBD_AUHID_VENDOR_ID
#define USBD_AUHID_VENDOR_ID
Definition: audio_hid_desc.h:51
HID_REPORT_ID_5
#define HID_REPORT_ID_5
Definition: audio_hid_desc.h:224
HID_INTERFACE_NUMBER
#define HID_INTERFACE_NUMBER
Definition: audio_hid_desc.h:181
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: audio_hid_desc.c:592
device_descriptor
static usbd_desc_t device_descriptor
Definition: audio_hid_desc.c:571
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: audio_hid_desc.c:700
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: audio_hid_desc.c:585
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: audio_hid_desc.c:680
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: audio_hid_desc.c:731
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: audio_hid_desc.c:690
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: audio_hid_desc.c:766
vp_desc
static usbd_desc_t vp_desc
Definition: audio_hid_desc.c:598
audio_hid_desc_handler
usbd_desc_handler audio_hid_desc_handler
device descriptor handler structure
Definition: audio_hid_desc.c:65
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: audio_hid_desc.c:710
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: audio_hid_desc.c:60
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: audio_hid_desc.c:743
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: audio_hid_desc.c:778
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: audio_hid_desc.c:606
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: audio_hid_desc.c:720
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: audio_hid_desc.c:658
config_descriptor
static usbd_desc_t config_descriptor
Definition: audio_hid_desc.c:578
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: audio_hid_desc.c:755
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: audio_hid_desc.c:632
AUDIO_SUPPORT_FEEDBACK
#define AUDIO_SUPPORT_FEEDBACK
Definition: audio/audio_conf.h:47
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_EPT_DESC_ISO
#define USB_EPT_DESC_ISO
Definition: usb_std.h:174
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_CLASS_CODE_AUDIO
#define USB_CLASS_CODE_AUDIO
usb class code
Definition: usb_std.h:159
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_ETP_DESC_ASYNC
#define USB_ETP_DESC_ASYNC
Definition: usb_std.h:179
USB_CLASS_CODE_HID
#define USB_CLASS_CODE_HID
Definition: usb_std.h:161
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: audio_hid_desc.h Source File

  • middlewares
  • usbd_class
  • audio_hid
audio_hid_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_HID_DESC_H
27#define __AUDIO_HID_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "audio_hid_class.h"
34#include "usbd_core.h"
35#include "audio_conf.h"
36
49#define AUHID_BCD_NUM 0x0100
50
51#define USBD_AUHID_VENDOR_ID 0x2E3C
52#define USBD_AUHID_PRODUCT_ID 0x5555
53
54#define USBD_AUHID_SIZ_STRING_LANGID 4
55#define USBD_AUHID_SIZ_STRING_SERIAL 0x1A
56
57#define USBD_AUHID_DESC_MANUFACTURER_STRING "Artery"
58#define USBD_AUHID_DESC_PRODUCT_STRING "AT32 Audio"
59#define USBD_AUHID_DESC_CONFIGURATION_STRING "Audio Config"
60#define USBD_AUHID_DESC_INTERFACE_STRING "Audio Interface"
64#define AUDIO_SUBCLASS_UNDEFINED 0x00
65#define AUDIO_SUBCLASS_AUDIOCONTROL 0x01
66#define AUDIO_SUBCLASS_AUDIOSTREAMING 0x02
67#define AUDIO_SUBCLASS_MIDISTREMING 0x03
68
72#define AUDIO_CS_INTERFACE 0x24
73#define AUDIO_CS_ENDPOINT 0x25
74#define AUDIO_CS_STRING 0x23
75#define AUDIO_CS_CONFIGURATION 0x22
76#define AUDIO_CS_DEVICE 0x21
77#define AUDIO_CS_UNDEFINED 0x20
78
82#define AUDIO_PROTOCOL_UNDEFINED 0x00
83
87#define AUDIO_AC_DESCRIPTOR_UNDEFINED 0x00
88#define AUDIO_AC_HEADER 0x01
89#define AUDIO_AC_INPUT_TERMINAL 0x02
90#define AUDIO_AC_OUTPUT_TERMINAL 0x03
91#define AUDIO_AC_MIXER_UNIT 0x04
92#define AUDIO_AC_SELECTOR_UNIT 0x05
93#define AUDIO_AC_FEATURE_UNIT 0x06
94#define AUDIO_AC_PROCESSING_UNIT 0x07
95#define AUDIO_AC_EXTENSION_UNIT 0x08
96
100#define AUDIO_AS_DESCRIPTOR_UNDEFINED 0x00
101#define AUDIO_AS_GENERAL 0x01
102#define AUDIO_AS_FORMAT_TYPE 0x02
103#define AUDIO_AS_FORMAT_SPECIFIC 0x03
104
108#define AUDIO_REQUEST_CODE_UNDEFINED 0x00
109#define AUDIO_REQ_SET_CUR 0x01
110#define AUDIO_REQ_GET_CUR 0x81
111#define AUDIO_REQ_SET_MIN 0x02
112#define AUDIO_REQ_GET_MIN 0x82
113#define AUDIO_REQ_SET_MAX 0x03
114#define AUDIO_REQ_GET_MAX 0x83
115#define AUDIO_REQ_SET_RES 0x04
116#define AUDIO_REQ_GET_RES 0x84
117#define AUDIO_REQ_SET_MEM 0x05
118#define AUDIO_REQ_GET_MEM 0x85
119#define AUDIO_REQ_GET_STAT 0xFF
120
124#define AUDIO_FU_CONTROL_UNDEFINED 0x00
125#define AUDIO_FU_MUTE_CONTROL 0x01
126#define AUDIO_FU_VOLUME_CONTROL 0x02
127#define AUDIO_FU_BASS_CONTROL 0x03
128#define AUDIO_FU_MID_CONTROL 0x04
129#define AUDIO_FU_TREBLE_CONTROL 0x05
130
134#define AUDIO_TERMINAL_TYPE_UNDEFINED 0x0100
135#define AUDIO_TERMINAL_TYPE_STREAMING 0x0101
136#define AUDIO_TERMINAL_TYPE_VENDOR 0x01FF
137#define AUDIO_INPUT_TERMINAL_UNDEFINED 0x0200
138#define AUDIO_INPUT_TERMINAL_MICROPHONE 0x0201
139#define AUDIO_OUTPUT_TERMINAL_UNDEFINED 0x0300
140#define AUDIO_OUTPUT_TERMINAL_SPEAKER 0x0301
141
145#define AUDIO_FORMAT_TYPE_I 0x01
146
150#define AUDIO_INTERFACE_NUM (AUDIO_SUPPORT_SPK + AUDIO_SUPPORT_MIC)
151#define AUDIO_INTERFACE_LEN ((0x08 + AUDIO_INTERFACE_NUM) + AUDIO_INTERFACE_NUM * 0x22)
152#define AUDIO_MIC_INTERFACE 0x01
153#define AUDIO_SPK_INTERFACE 0x02
154
158#define AUDIO_INPUT_TERMINAL_SIZE 0x0C
159#define AUDIO_OUTPUT_TERMINAL_SIZE 0x09
160#define AUDIO_FEATURE_UNIT_SIZE 0x0D
161
165#define AUDIO_MIC_INPUT_TERMINAL_ID 0x01
166#define AUDIO_MIC_FEATURE_UNIT_ID 0x02
167#define AUDIO_MIC_OUTPUT_TERMINAL_ID 0x03
168#define AUDIO_SPK_INPUT_TERMINAL_ID 0x04
169#define AUDIO_SPK_FEATURE_UNIT_ID 0x05
170#define AUDIO_SPK_OUTPUT_TERMINAL_ID 0x06
171
175#define AUDIO_MIC_INTERFACE_NUMBER 0x01
176#if (AUDIO_SUPPORT_MIC == 1)
177#define AUDIO_SPK_INTERFACE_NUMBER 0x02
178#else
179#define AUDIO_SPK_INTERFACE_NUMBER 0x01
180#endif
181#define HID_INTERFACE_NUMBER 0x03
182
186#define AT32_AUDIO_FREQ_16K 16000
187#define AT32_AUDIO_FREQ_48K 48000
188
192#define AUDIO_MIC_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
193#define AUDIO_MIC_CHR AUDIO_MIC_CHANEL_NUM
194#define AUDIO_MIC_BITW (AUDIO_MIC_DEFAULT_BITW)
195
199#define AUDIO_SPK_FREQ_SIZE (AUDIO_SUPPORT_FREQ)
200#define AUDIO_SPK_CHR AUDIO_SPK_CHANEL_NUM
201#define AUDIO_SPK_BITW (AUDIO_SPK_DEFAULT_BITW)
202
203#define AUHID_HID_BINTERVAL_TIME 0x01
204
208#define AUHID_HID_BCD_NUM 0x0110
209
213#define HID_CLASS_DESC_HID 0x21
214#define HID_CLASS_DESC_REPORT 0x22
215#define HID_CLASS_DESC_PHYSICAL 0x23
216
220#define HID_REPORT_ID_1 0x01
221#define HID_REPORT_ID_2 0x02
222#define HID_REPORT_ID_3 0x03
223#define HID_REPORT_ID_4 0x04
224#define HID_REPORT_ID_5 0x05
225#define HID_REPORT_ID_6 0xF0
226
227#define MCU_ID1 (0x1FFFF7E8)
228#define MCU_ID2 (0x1FFFF7EC)
229#define MCU_ID3 (0x1FFFF7F0)
230
231
232#define SAMPLE_FREQ(frq) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16))
233
234#define USBD_AUHID_HID_SIZ_REPORT_DESC 126
235#define USBD_AUHID_HID_DESC_SIZE 32
236#define USBD_AUHID_CONFIG_DESC_SIZE ( 0x12 + AUDIO_INTERFACE_LEN + \
237 + (0x31 + AUDIO_SPK_FREQ_SIZE * 3) \
238 + (0x31 + AUDIO_MIC_FREQ_SIZE * 3) \
239 + (9 * AUDIO_SUPPORT_FEEDBACK) \
240 + USBD_AUHID_HID_DESC_SIZE)
241
242extern uint8_t g_usbd_audio_hid_report[USBD_AUHID_HID_SIZ_REPORT_DESC];
243extern uint8_t g_audio_hid_usb_desc[9];
244
245extern usbd_desc_handler audio_hid_desc_handler;
246
258#ifdef __cplusplus
259}
260#endif
261
262#endif
263
audio_conf.h
usb audio config
audio_hid_class.h
USBD_AUHID_HID_SIZ_REPORT_DESC
#define USBD_AUHID_HID_SIZ_REPORT_DESC
Definition: audio_hid_desc.h:234
audio_hid_desc_handler
usbd_desc_handler audio_hid_desc_handler
device descriptor handler structure
Definition: audio_hid_desc.c:65
g_audio_hid_usb_desc
uint8_t g_audio_hid_usb_desc[9]
usb hid descriptor
Definition: audio_hid_desc.c:530
g_usbd_audio_hid_report
uint8_t g_usbd_audio_hid_report[126]
usb hid report descriptor
Definition: audio_hid_desc.c:432
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: hid_iap_user.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
bootloader/inc/hid_iap_user.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __HID_IAP_USER_H
27#define __HID_IAP_USER_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "hid_iap_class.h"
34
47#define FLASH_APP_ADDRESS 0x08005000
48
57void iap_init(void);
58 iap_result_type iap_get_upgrade_flag(void);
59void iap_loop(void);
60void jump_to_app(uint32_t address);
61
74#ifdef __cplusplus
75}
76#endif
77
78#endif
79
80
iap_result_type
iap_result_type
Definition: hid_iap_class.h:84
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
jump_to_app
void jump_to_app(uint32_t address)
jump to app
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:214
iap_get_upgrade_flag
iap_result_type iap_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: app_led3_toggle/src/hid_iap_user.c:77
iap_loop
void iap_loop(void)
iap loop
Definition: bootloader/src/hid_iap_user.c:471
hid_iap_class.h
usb hid iap header file


AT32F403 Firmwary Library: iap.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
bootloader/inc/iap.h
Go to the documentation of this file.
1
25#ifndef __IAP_H__
26#define __IAP_H__
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46/* app starting address */
47#define APP_START_ADDR 0x08004000
48
49/* the previous sector of app starting address is iap upgrade flag */
50#define IAP_UPGRADE_FLAG_ADDR (APP_START_ADDR - 0x800)
51
52/* when app received cmd 0x5aa5 from pc-tool, will set up the flag,
53indicates that an app upgrade will follow, see iap application note for more details */
54#define IAP_UPGRADE_FLAG 0x41544B38
55
67typedef struct
68{
69 uint8_t cmd_head;
70 uint8_t cmd_addr[4];
71 uint8_t cmd_buf[0x800];
72 uint8_t cmd_check;
73} cmd_data_group_type;
74
78typedef enum
79{
80 CMD_DATA_IDLE,
81 CMD_DATA_ADDR,
82 CMD_DATA_BUF,
83 CMD_DATA_CHACK,
84 CMD_DATA_DONE,
85 CMD_DATA_ERR,
86} cmd_data_step_type;
87
91typedef enum
92{
93 CMD_CTR_IDLE,
94 CMD_CTR_INIT,
95 CMD_CTR_DONE,
96 CMD_CTR_ERR,
97 CMD_CTR_APP,
98} cmd_ctr_step_type;
99
103typedef enum
104{
105 UPDATE_PRE,
106 UPDATE_CLEAR_FLAG,
107 UPDATE_ING,
108 UPDATE_DONE,
109} update_status_type;
110
111typedef void (*iapfun)(void);
112
117extern cmd_data_group_type cmd_data_group_type_struct;
118extern cmd_data_step_type cmd_data_step;
119extern cmd_ctr_step_type cmd_ctr_step;
120extern update_status_type update_status;
121
126void command_handle(void);
127void back_err(void);
128void back_ok(void);
129void iap_upgrade_app_handle(void);
130void app_load(uint32_t appxaddr);
131
144#ifdef __cplusplus
145}
146#endif
147
148#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
update_status
update_status_type update_status
Definition: bootloader/src/iap.c:41
cmd_data_group_type_struct
cmd_data_group_type cmd_data_group_type_struct
cmd_data_step
cmd_data_step_type cmd_data_step
Definition: bootloader/src/iap.c:38
cmd_ctr_step
cmd_ctr_step_type cmd_ctr_step
Definition: bootloader/src/iap.c:39
command_handle
void command_handle(void)
command analysis handle.
Definition: bootloader/src/iap.c:104
iap_upgrade_app_handle
void iap_upgrade_app_handle(void)
iap upgrade app handle.
Definition: bootloader/src/iap.c:342
app_load
void app_load(uint32_t appxaddr)
app load.
Definition: bootloader/src/iap.c:58
back_err
void back_err(void)
command response error.
Definition: app_led3_toggle/src/usart.c:118
back_ok
void back_ok(void)
command response ok.
Definition: app_led3_toggle/src/usart.c:105
iapfun
void(* iapfun)(void)
Definition: bootloader/inc/iap.h:111
update_status_type
update_status_type
update status type
Definition: bootloader/inc/iap.h:104
cmd_ctr_step_type
cmd_ctr_step_type
cmd ctr step type
Definition: bootloader/inc/iap.h:92
cmd_data_step_type
cmd_data_step_type
cmd data step type
Definition: bootloader/inc/iap.h:79
UPDATE_PRE
@ UPDATE_PRE
Definition: bootloader/inc/iap.h:105
UPDATE_DONE
@ UPDATE_DONE
Definition: bootloader/inc/iap.h:108
UPDATE_ING
@ UPDATE_ING
Definition: bootloader/inc/iap.h:107
UPDATE_CLEAR_FLAG
@ UPDATE_CLEAR_FLAG
Definition: bootloader/inc/iap.h:106
CMD_CTR_ERR
@ CMD_CTR_ERR
Definition: bootloader/inc/iap.h:96
CMD_CTR_DONE
@ CMD_CTR_DONE
Definition: bootloader/inc/iap.h:95
CMD_CTR_INIT
@ CMD_CTR_INIT
Definition: bootloader/inc/iap.h:94
CMD_CTR_APP
@ CMD_CTR_APP
Definition: bootloader/inc/iap.h:97
CMD_CTR_IDLE
@ CMD_CTR_IDLE
Definition: bootloader/inc/iap.h:93
CMD_DATA_DONE
@ CMD_DATA_DONE
Definition: bootloader/inc/iap.h:84
CMD_DATA_ERR
@ CMD_DATA_ERR
Definition: bootloader/inc/iap.h:85
CMD_DATA_BUF
@ CMD_DATA_BUF
Definition: bootloader/inc/iap.h:82
CMD_DATA_IDLE
@ CMD_DATA_IDLE
Definition: bootloader/inc/iap.h:80
CMD_DATA_CHACK
@ CMD_DATA_CHACK
Definition: bootloader/inc/iap.h:83
CMD_DATA_ADDR
@ CMD_DATA_ADDR
Definition: bootloader/inc/iap.h:81
cmd_data_group_type
cmd data group type
Definition: bootloader/inc/iap.h:68
cmd_data_group_type::cmd_head
uint8_t cmd_head
Definition: bootloader/inc/iap.h:69
cmd_data_group_type::cmd_check
uint8_t cmd_check
Definition: bootloader/inc/iap.h:72


AT32F403 Firmwary Library: tmr.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
bootloader/inc/tmr.h
Go to the documentation of this file.
1
25#ifndef __TMR_H
26#define __TMR_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
34extern uint8_t time_ira_cnt;
35extern uint8_t get_data_from_usart_flag;
36
49void tmr_init(void);
50
63#ifdef __cplusplus
64}
65#endif
66
67#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
time_ira_cnt
uint8_t time_ira_cnt
Definition: bootloader/src/tmr.c:37
get_data_from_usart_flag
uint8_t get_data_from_usart_flag
Definition: bootloader/src/tmr.c:38
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led3_toggle/src/tmr.c:42


AT32F403 Firmwary Library: usart.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
bootloader/inc/usart.h
Go to the documentation of this file.
1
25#ifndef __USART_H
26#define __USART_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46#define USART_REC_LEN 1024
47
59typedef struct
60{
61 uint16_t buf[USART_REC_LEN];
62 uint16_t head;
63 uint16_t tail;
64 uint16_t count;
65} usart_group_type;
66
71extern usart_group_type usart_group_struct;
72
77void uart_init(uint32_t baudrate);
78
91#ifdef __cplusplus
92}
93#endif
94
95#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usart_group_struct
usart_group_type usart_group_struct
Definition: bootloader/src/usart.c:36
USART_REC_LEN
#define USART_REC_LEN
Definition: bootloader/inc/usart.h:46
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
usart_group_type
usart group type
Definition: bootloader/inc/usart.h:60
usart_group_type::tail
uint16_t tail
Definition: bootloader/inc/usart.h:63
usart_group_type::count
uint16_t count
Definition: bootloader/inc/usart.h:64
usart_group_type::head
uint16_t head
Definition: bootloader/inc/usart.h:62


AT32F403 Firmwary Library: hid_iap_user.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
bootloader/src/hid_iap_user.c
Go to the documentation of this file.
1
25#include "hid_iap_user.h"
26#include "hid_iap_class.h"
27#include "string.h"
28
37void (*pftarget)(void);
38void iap_clear_upgrade_flag(void);
39void iap_set_upgrade_flag(void);
40uint32_t crc_cal(uint32_t addr, uint16_t nk);
41
42void iap_idle(void);
43void iap_start(void);
44 iap_result_type iap_address(uint8_t *pdata, uint32_t len);
45void iap_finish(void);
46 iap_result_type iap_data_write(uint8_t *pdata, uint32_t len);
47void iap_jump(void);
48void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result);
49
55void jump_to_app(uint32_t address)
56{
57 uint32_t stkptr, jumpaddr;
58 stkptr = *(uint32_t *)address;
59 jumpaddr = *(uint32_t *)(address + sizeof(uint32_t));
60
61 /* disable nvic irq and periph clock, clear pending */
62 nvic_irq_disable(USBFS_L_CAN1_RX0_IRQn);
63 __NVIC_ClearPendingIRQ(USBFS_L_CAN1_RX0_IRQn);
64 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, FALSE);
65 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, FALSE);
66
67 crm_periph_reset(CRM_USB_PERIPH_RESET, TRUE);
68 crm_periph_reset(CRM_USB_PERIPH_RESET, FALSE);
69
70 __set_MSP(stkptr);
71 pftarget = (void (*) (void))jumpaddr;
72 pftarget();
73}
74
80void iap_clear_upgrade_flag(void)
81{
82 flash_unlock();
83 flash_sector_erase(iap_info.flag_address);
84 flash_lock();
85}
86
92void iap_set_upgrade_flag(void)
93{
94 flash_unlock();
95 flash_word_program(iap_info.flag_address, IAP_UPGRADE_COMPLETE_FLAG);
96 flash_lock();
97}
98
104 iap_result_type iap_get_upgrade_flag(void)
105{
106 uint32_t flag_address = iap_info.flag_address;
107 if(*((uint32_t *)flag_address) == IAP_UPGRADE_COMPLETE_FLAG)
108 {
109 return IAP_SUCCESS;
110 }
111 else
112 {
113 return IAP_FAILED;
114 }
115}
116
122void iap_erase_sector(uint32_t address)
123{
124 flash_unlock();
125 if(iap_info.sector_size == SECTOR_SIZE_1K)
126 {
127 flash_sector_erase(address);
128 }
129 else if(iap_info.sector_size == SECTOR_SIZE_2K)
130 {
131 /* check the address is sector align */
132 if((address & (SECTOR_SIZE_2K-1)) == 0)
133 {
134 flash_sector_erase(address);
135 }
136 }
137 else if(iap_info.sector_size == SECTOR_SIZE_4K)
138 {
139 if((address & (SECTOR_SIZE_4K-1)) == 0)
140 {
141 flash_sector_erase(address);
142 }
143 }
144 flash_lock();
145}
146
153uint32_t crc_cal(uint32_t addr, uint16_t nk)
154{
155 uint32_t *paddr = (uint32_t *)addr;
156 uint32_t wlen = nk * 1024 / sizeof(uint32_t);
157 uint32_t value, i_index = 0;
158 crm_periph_clock_enable(CRM_CRC_PERIPH_CLOCK, TRUE);
159 crc_data_reset();
160
161 for(i_index = 0; i_index < wlen; i_index ++)
162 {
163 value = *paddr;
164 crc_one_word_calculate(CONVERT_ENDIAN(value));
165 paddr ++;
166 }
167 return crc_data_get();
168}
169
175void iap_init(void)
176{
177 iap_info.flash_size = KB_TO_B(FLASH_SIZE_REG());
178 if(iap_info.flash_size < KB_TO_B(256))
179 {
180 iap_info.sector_size = SECTOR_SIZE_1K;
181 }
182 else
183 {
184 iap_info.sector_size = SECTOR_SIZE_2K;
185 }
186
187 iap_info.flash_start_address = FLASH_BASE;
188 iap_info.flash_end_address = iap_info.flash_start_address + iap_info.flash_size;
189
190 iap_info.app_address = FLASH_APP_ADDRESS;
191 iap_info.flag_address = iap_info.app_address - iap_info.sector_size;
192
193 iap_info.fifo_length = 0;
194 iap_info.iap_address = 0;
195}
196
202void iap_idle(void)
203{
204 iap_info.state = IAP_STS_START;
205 iap_init();
206 iap_respond(iap_info.iap_tx, IAP_CMD_IDLE, IAP_ACK);
207}
208
214void iap_start(void)
215{
216 iap_info.state = IAP_STS_START;
217 iap_init();
218 iap_respond(iap_info.iap_tx, IAP_CMD_START, IAP_ACK);
219}
220
227 iap_result_type iap_address(uint8_t *pdata, uint32_t len)
228{
229 iap_result_type status = IAP_SUCCESS;
230 uint16_t result = IAP_ACK;
231 uint8_t *paddr = pdata + 2; /* skip iap cmd */
232 uint32_t address;
233
234 address = (paddr[0] << 24) |
235 (paddr[1] << 16) |
236 (paddr[2] << 8) |
237 paddr[3];
238
239 /* check the address is valid */
240 if(address < iap_info.app_address || address > iap_info.flash_end_address)
241 {
242 status = IAP_FAILED;
243 result = IAP_NACK;
244 }
245 else
246 {
247 iap_info.iap_address = address;
248
249 if(iap_info.state == IAP_STS_START)
250 {
251 iap_clear_upgrade_flag();
252 }
253 iap_erase_sector(iap_info.iap_address);
254 }
255
256 iap_info.state = IAP_STS_ADDR;
257
258 iap_respond(iap_info.iap_tx, IAP_CMD_ADDR, result);
259
260 return status;
261}
262/*
263 * @brief iap data write
264 * @param pdata: data buffer pointer.
265 * @param len: buffer length
266 * @retval the result of the address parse
267 */
268 iap_result_type iap_data_write(uint8_t *pdata, uint32_t len)
269{
270 uint32_t data_len = (pdata[2] << 8 | pdata[3]);
271 uint8_t *valid_data = pdata + 4;
272 uint32_t *pbuf;
273 uint32_t i_index = 0;
274
275 if(iap_info.state == IAP_STS_ADDR)
276 {
277 if(data_len + iap_info.fifo_length <= HID_IAP_BUFFER_LEN)
278 {
279 for(i_index = 0; i_index < data_len; i_index ++)
280 {
281 iap_info.iap_fifo[iap_info.fifo_length ++] = valid_data[i_index];
282 }
283 }
284 /* buffer full */
285 if(iap_info.fifo_length == HID_IAP_BUFFER_LEN)
286 {
287 flash_unlock();
288 pbuf = (uint32_t *)iap_info.iap_fifo;
289 for(i_index = 0; i_index < iap_info.fifo_length / sizeof(uint32_t); i_index ++)
290 {
291 flash_word_program(iap_info.iap_address, *pbuf ++);
292 iap_info.iap_address += 4;
293 }
294 flash_lock();
295
296 iap_info.fifo_length = 0;
297 iap_info.iap_address = 0;
298 iap_respond(iap_info.iap_tx, IAP_CMD_DATA, IAP_ACK);
299 }
300 }
301 else
302 {
303 iap_respond(iap_info.iap_tx, IAP_CMD_DATA, IAP_NACK);
304 }
305 return IAP_SUCCESS;
306}
307
308/*
309 * @brief iap finish
310 * @param none
311 * @retval none
312 */
313void iap_finish()
314{
315 iap_info.state = IAP_STS_FINISH;
316 iap_set_upgrade_flag();
317 iap_respond(iap_info.iap_tx, IAP_CMD_FINISH, IAP_ACK);
318}
319
320/*
321 * @brief iap crc
322 * @param pdata: data buffer pointer.
323 * @param len: buffer length
324 * @retval the result of the address parse
325 */
326void iap_crc(uint8_t *pdata, uint32_t len)
327{
328 uint8_t *paddr = pdata + 2; /* skip iap cmd */
329 uint16_t crc_nk;
330 uint32_t crc_value;
331 uint32_t address = (paddr[0] << 24) |
332 (paddr[1] << 16) |
333 (paddr[2] << 8) |
334 paddr[3];
335 paddr = pdata + 6;
336
337 crc_nk = (paddr[0] << 16) | paddr[1];
338
339 crc_value = crc_cal(address, crc_nk);
340
341 iap_respond(iap_info.iap_tx, IAP_CMD_CRC, IAP_ACK);
342 iap_info.iap_tx[4] = (uint8_t)((crc_value >> 24) & 0xFF);
343 iap_info.iap_tx[5] = (uint8_t)((crc_value >> 16) & 0xFF);
344 iap_info.iap_tx[6] = (uint8_t)((crc_value >> 8) & 0xFF);
345 iap_info.iap_tx[7] = (uint8_t)((crc_value) & 0xFF);
346
347}
348
349/*
350 * @brief iap jump
351 * @param none
352 * @retval none
353 */
354void iap_jump()
355{
356 iap_info.state = IAP_STS_JMP_WAIT;
357 iap_respond(iap_info.iap_tx, IAP_CMD_JMP, IAP_ACK);
358}
359
360/*
361 * @brief iap get
362 * @param none
363 * @retval none
364 */
365void iap_get()
366{
367 iap_respond(iap_info.iap_tx, IAP_CMD_GET, IAP_ACK);
368 iap_info.iap_tx[4] = (uint8_t)((iap_info.app_address >> 24) & 0xFF);
369 iap_info.iap_tx[5] = (uint8_t)((iap_info.app_address >> 16) & 0xFF);
370 iap_info.iap_tx[6] = (uint8_t)((iap_info.app_address >> 8) & 0xFF);
371 iap_info.iap_tx[7] = (uint8_t)((iap_info.app_address) & 0xFF);
372}
373
374
375
376/*
377 * @brief iap respond
378 * @param res_buf: data buffer pointer.
379 * @param iap_cmd: iap command
380 * @param result: iap result
381 * @retval the result of the address parse
382 */
383void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
384{
385 res_buf[0] = (uint8_t)((iap_cmd >> 8) & 0xFF);
386 res_buf[1] = (uint8_t)((iap_cmd) & 0xFF);
387 res_buf[2] = (uint8_t)((result >> 8) & 0xFF);
388 res_buf[3] = (uint8_t)((result) & 0xFF);
389
390 iap_info.respond_flag = 1;
391}
392
400 iap_result_type usbd_hid_iap_process(void *udev, uint8_t *pdata, uint16_t len)
401{
402 iap_result_type status = IAP_SUCCESS;
403 uint16_t iap_cmd;
404
405 if(len < 2)
406 {
407 return IAP_FAILED;
408 }
409
410 iap_info.respond_flag = 0;
411
412 iap_cmd = (pdata[0] << 8) | pdata[1];
413
414 switch(iap_cmd)
415 {
416 case IAP_CMD_IDLE:
417 iap_idle();
418 break;
419 case IAP_CMD_START:
420 iap_start();
421 break;
422 case IAP_CMD_ADDR:
423 iap_address(pdata, len);
424 break;
425 case IAP_CMD_DATA:
426 iap_data_write(pdata, len);
427 break;
428 case IAP_CMD_FINISH:
429 iap_finish();
430 break;
431 case IAP_CMD_CRC:
432 iap_crc(pdata, len);
433 break;
434 case IAP_CMD_JMP:
435 iap_jump();
436 break;
437 case IAP_CMD_GET:
438 iap_get();
439 break;
440 default:
441 status = IAP_FAILED;
442 break;
443 }
444
445 if(iap_info.respond_flag)
446 {
447 usb_iap_class_send_report(udev, iap_info.iap_tx, 64);
448 }
449
450 return status;
451}
452
458void usbd_hid_iap_in_complete(void *udev)
459{
460 if(iap_info.state == IAP_STS_JMP_WAIT)
461 {
462 iap_info.state = IAP_STS_JMP;
463 }
464}
465
471void iap_loop(void)
472{
473 if(iap_info.state == IAP_STS_JMP)
474 {
475 delay_ms(100);
476 jump_to_app(iap_info.app_address);
477 }
478}
479
crc_value
__IO uint32_t crc_value
Definition: project/at_start_f403/examples/crc/calculation/src/main.c:62
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crc_data_reset
void crc_data_reset(void)
reset the crc data register.
Definition: at32f403_crc.c:47
crc_data_get
uint32_t crc_data_get(void)
return the current crc value.
Definition: at32f403_crc.c:87
crc_one_word_calculate
uint32_t crc_one_word_calculate(uint32_t data)
compute the 32-bit crc of a given data word(32-bit).
Definition: at32f403_crc.c:58
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_CRC_PERIPH_CLOCK
@ CRM_CRC_PERIPH_CLOCK
Definition: at32f403_crm.h:104
CRM_USB_PERIPH_RESET
@ CRM_USB_PERIPH_RESET
Definition: at32f403_crm.h:203
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
nvic_irq_disable
void nvic_irq_disable(IRQn_Type irqn)
disable nvic irq number
Definition: at32f403_misc.c:79
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
HID_IAP_BUFFER_LEN
#define HID_IAP_BUFFER_LEN
Definition: hid_iap_class.h:75
IAP_CMD_DATA
#define IAP_CMD_DATA
Definition: hid_iap_class.h:69
IAP_CMD_FINISH
#define IAP_CMD_FINISH
Definition: hid_iap_class.h:70
IAP_CMD_IDLE
#define IAP_CMD_IDLE
iap command
Definition: hid_iap_class.h:66
IAP_CMD_GET
#define IAP_CMD_GET
Definition: hid_iap_class.h:73
SECTOR_SIZE_1K
#define SECTOR_SIZE_1K
Definition: hid_iap_class.h:59
iap_result_type
iap_result_type
Definition: hid_iap_class.h:84
IAP_NACK
#define IAP_NACK
Definition: hid_iap_class.h:81
IAP_ACK
#define IAP_ACK
Definition: hid_iap_class.h:80
IAP_CMD_CRC
#define IAP_CMD_CRC
Definition: hid_iap_class.h:71
SECTOR_SIZE_2K
#define SECTOR_SIZE_2K
Definition: hid_iap_class.h:60
CONVERT_ENDIAN
#define CONVERT_ENDIAN(dwValue)
Definition: hid_iap_class.h:77
IAP_CMD_ADDR
#define IAP_CMD_ADDR
Definition: hid_iap_class.h:68
SECTOR_SIZE_4K
#define SECTOR_SIZE_4K
Definition: hid_iap_class.h:61
IAP_UPGRADE_COMPLETE_FLAG
#define IAP_UPGRADE_COMPLETE_FLAG
Definition: hid_iap_class.h:76
FLASH_SIZE_REG
#define FLASH_SIZE_REG()
Definition: hid_iap_class.h:56
IAP_CMD_START
#define IAP_CMD_START
Definition: hid_iap_class.h:67
IAP_CMD_JMP
#define IAP_CMD_JMP
Definition: hid_iap_class.h:72
KB_TO_B
#define KB_TO_B(kb)
Definition: hid_iap_class.h:57
IAP_FAILED
@ IAP_FAILED
Definition: hid_iap_class.h:87
IAP_SUCCESS
@ IAP_SUCCESS
Definition: hid_iap_class.h:85
IAP_STS_START
@ IAP_STS_START
Definition: hid_iap_class.h:93
IAP_STS_JMP
@ IAP_STS_JMP
Definition: hid_iap_class.h:99
IAP_STS_JMP_WAIT
@ IAP_STS_JMP_WAIT
Definition: hid_iap_class.h:98
IAP_STS_FINISH
@ IAP_STS_FINISH
Definition: hid_iap_class.h:96
IAP_STS_ADDR
@ IAP_STS_ADDR
Definition: hid_iap_class.h:94
iap_info
iap_info_type iap_info
Definition: hid_iap_class.c:52
usb_iap_class_send_report
usb_sts_type usb_iap_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: hid_iap_class.c:319
iap_set_upgrade_flag
void iap_set_upgrade_flag(void)
set iap upgrade complete flag
Definition: bootloader/src/hid_iap_user.c:92
iap_idle
void iap_idle(void)
iap idle function
Definition: bootloader/src/hid_iap_user.c:202
iap_respond
void iap_respond(uint8_t *res_buf, uint16_t iap_cmd, uint16_t result)
Definition: bootloader/src/hid_iap_user.c:383
iap_data_write
iap_result_type iap_data_write(uint8_t *pdata, uint32_t len)
Definition: bootloader/src/hid_iap_user.c:268
iap_init
void iap_init(void)
iap init
Definition: bootloader/src/hid_iap_user.c:175
usbd_hid_iap_process
iap_result_type usbd_hid_iap_process(void *udev, uint8_t *pdata, uint16_t len)
usb device iap function
Definition: bootloader/src/hid_iap_user.c:400
jump_to_app
void jump_to_app(uint32_t address)
jump to app
Definition: bootloader/src/hid_iap_user.c:55
crc_cal
uint32_t crc_cal(uint32_t addr, uint16_t nk)
crc cal
Definition: bootloader/src/hid_iap_user.c:153
iap_get_upgrade_flag
iap_result_type iap_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: bootloader/src/hid_iap_user.c:104
iap_address
iap_result_type iap_address(uint8_t *pdata, uint32_t len)
iap parse address
Definition: bootloader/src/hid_iap_user.c:227
iap_finish
void iap_finish(void)
Definition: bootloader/src/hid_iap_user.c:313
iap_loop
void iap_loop(void)
iap loop
Definition: bootloader/src/hid_iap_user.c:471
iap_start
void iap_start(void)
iap start function
Definition: bootloader/src/hid_iap_user.c:214
iap_crc
void iap_crc(uint8_t *pdata, uint32_t len)
Definition: bootloader/src/hid_iap_user.c:326
pftarget
void(* pftarget)(void)
Definition: bootloader/src/hid_iap_user.c:37
iap_erase_sector
void iap_erase_sector(uint32_t address)
set iap upgrade complete flag
Definition: bootloader/src/hid_iap_user.c:122
iap_clear_upgrade_flag
void iap_clear_upgrade_flag(void)
clear iap upgrade flag
Definition: bootloader/src/hid_iap_user.c:80
iap_get
void iap_get()
Definition: bootloader/src/hid_iap_user.c:365
iap_jump
void iap_jump(void)
Definition: bootloader/src/hid_iap_user.c:354
usbd_hid_iap_in_complete
void usbd_hid_iap_in_complete(void *udev)
usb device in transfer complete function
Definition: bootloader/src/hid_iap_user.c:458
FLASH_APP_ADDRESS
#define FLASH_APP_ADDRESS
Definition: app_led3_toggle/inc/hid_iap_user.h:47
hid_iap_class.h
usb hid iap header file
iap_info_type::respond_flag
uint32_t respond_flag
Definition: hid_iap_class.h:122
iap_info_type::flag_address
uint32_t flag_address
Definition: hid_iap_class.h:114
iap_info_type::sector_size
uint32_t sector_size
Definition: hid_iap_class.h:119
iap_info_type::iap_address
uint32_t iap_address
Definition: hid_iap_class.h:113
iap_info_type::flash_start_address
uint32_t flash_start_address
Definition: hid_iap_class.h:116
iap_info_type::flash_end_address
uint32_t flash_end_address
Definition: hid_iap_class.h:117
iap_info_type::fifo_length
uint32_t fifo_length
Definition: hid_iap_class.h:109
iap_info_type::iap_fifo
uint8_t iap_fifo[1024]
Definition: hid_iap_class.h:105
iap_info_type::flash_size
uint32_t flash_size
Definition: hid_iap_class.h:120
iap_info_type::iap_tx
uint8_t iap_tx[0x40]
Definition: hid_iap_class.h:107
iap_info_type::app_address
uint32_t app_address
Definition: hid_iap_class.h:112
iap_info_type::state
iap_machine_state_type state
Definition: hid_iap_class.h:131


AT32F403 Firmwary Library: iap.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
bootloader/src/iap.c
Go to the documentation of this file.
1
25#include "iap.h"
26#include "usart.h"
27#include "flash.h"
28#include "tmr.h"
29
38 cmd_data_step_type cmd_data_step = CMD_DATA_IDLE;
39 cmd_ctr_step_type cmd_ctr_step = CMD_CTR_IDLE;
40 cmd_data_group_type cmd_data_group_struct;
41 update_status_type update_status = UPDATE_PRE;
42static uint8_t cmd_addr_cnt = 0;
43static uint32_t cmd_data_cnt = 0;
44 iapfun jump_to_app;
45
46/* app_load don't optimize */
47#if defined (__CC_ARM)
48 #pragma O0
49#elif defined (__ICCARM__)
50 #pragma optimize=s none
51#endif
58void app_load(uint32_t app_addr)
59{
60 /* check the address of stack */
61 if(((*(uint32_t*)app_addr) - 0x20000000) <= (SRAM_SIZE * 1024))
62 {
63 /* disable periph clock */
64 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, FALSE);
65 crm_periph_clock_enable(CRM_USART1_PERIPH_CLOCK, FALSE);
66 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, FALSE);
67
68 /* disable nvic irq and clear pending */
69 nvic_irq_disable(USART1_IRQn);
70 nvic_irq_disable(TMR3_GLOBAL_IRQn);
71 __NVIC_ClearPendingIRQ(USART1_IRQn);
72 __NVIC_ClearPendingIRQ(TMR3_GLOBAL_IRQn);
73
74 jump_to_app = (iapfun)*(uint32_t*)(app_addr + 4); /* code second word is reset address */
75 __set_MSP(*(uint32_t*)app_addr); /* init app stack pointer(code first word is stack address) */
76 jump_to_app(); /* jump to user app */
77 }
78}
79
87uint8_t data_take(void)
88{
89 uint8_t val;
90 usart_interrupt_enable(USART1, USART_RDBF_INT, FALSE);
91 usart_group_struct.count--;
92 usart_interrupt_enable(USART1, USART_RDBF_INT, TRUE);
93 val = usart_group_struct.buf[usart_group_struct.tail++];
94 if(usart_group_struct.tail > (USART_REC_LEN-1))
95 usart_group_struct.tail = 0;
96 return val;
97}
98
104void command_handle(void)
105{
106 uint8_t val, checksum;
107 uint16_t index;
108 /* check whether received usart data */
109 if(usart_group_struct.count > 0)
110 val = data_take();
111 else
112 return;
113
114 if(update_status == UPDATE_PRE)
115 {
116 if(cmd_ctr_step == CMD_CTR_IDLE)
117 {
118 if(val == 0x5A)
119 cmd_ctr_step = CMD_CTR_INIT;
120 }
121 else if(cmd_ctr_step == CMD_CTR_INIT)
122 {
123 if(val == 0x01)
124 {
125 cmd_ctr_step = CMD_CTR_DONE;
126 }
127 else if(val == 0xA5)
128 {
129 cmd_ctr_step = CMD_CTR_APP;
130 }
131 else
132 {
133 cmd_ctr_step = CMD_CTR_ERR;
134 }
135 }
136 }
137 else if(update_status == UPDATE_ING)
138 {
139 switch(cmd_data_step)
140 {
141 case CMD_DATA_IDLE:
142 if(val == 0x31)
143 {
144 cmd_data_step = CMD_DATA_ADDR;
145 cmd_addr_cnt = 0;
146 cmd_data_cnt = 0;
147 }
148 if(val == 0x5A)
149 {
150 if(cmd_ctr_step == CMD_CTR_IDLE)
151 {
152 cmd_ctr_step = CMD_CTR_INIT;
153 update_status = UPDATE_DONE;
154 }
155 }
156 break;
157 case CMD_DATA_ADDR:
158 cmd_data_group_struct.cmd_addr[cmd_addr_cnt] = val;
159 cmd_addr_cnt++;
160 if(cmd_addr_cnt >= 4)
161 {
162 cmd_addr_cnt = 0;
163 cmd_data_step = CMD_DATA_BUF;
164 }
165 break;
166 case CMD_DATA_BUF:
167 cmd_data_group_struct.cmd_buf[cmd_data_cnt] = val;
168 cmd_data_cnt++;
169 if(cmd_data_cnt >= 2048)
170 {
171 cmd_data_cnt = 0;
172 cmd_data_step = CMD_DATA_CHACK;
173 }
174 break;
175 case CMD_DATA_CHACK:
176 checksum = 0;
177 for(index = 0;index < 4;index++)
178 {
179 checksum += cmd_data_group_struct.cmd_addr[index];
180 }
181 for(index = 0;index < 0x800; index++)
182 {
183 checksum += cmd_data_group_struct.cmd_buf[index];
184 }
185 if(checksum == val)
186 {
187 cmd_data_step = CMD_DATA_DONE;
188 }
189 else
190 {
191 cmd_data_step = CMD_DATA_ERR;
192 }
193 break;
194 default:
195 break;
196 }
197 }
198 else if(update_status == UPDATE_DONE)
199 {
200 if(cmd_ctr_step == CMD_CTR_IDLE)
201 {
202 if(val == 0x5A)
203 {
204 cmd_ctr_step = CMD_CTR_INIT;
205 }
206 }
207 else if(cmd_ctr_step == CMD_CTR_INIT)
208 {
209 if(val == 0x02)
210 {
211 cmd_ctr_step = CMD_CTR_DONE;
212 }
213 else
214 {
215 cmd_ctr_step = CMD_CTR_ERR;
216 }
217 }
218 }
219}
220
226void back_ok(void)
227{
228 usart_data_transmit(USART1, 0xCC);
229 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
230 usart_data_transmit(USART1, 0xDD);
231 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
232}
233
239void back_err(void)
240{
241 usart_data_transmit(USART1, 0xEE);
242 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
243 usart_data_transmit(USART1, 0xFF);
244 while(usart_flag_get(USART1, USART_TDC_FLAG) == RESET);
245 /* reset state machine of udgrade flow */
246 cmd_data_step = CMD_DATA_IDLE;
247 cmd_ctr_step = CMD_CTR_IDLE;
248 update_status = UPDATE_PRE;
249 cmd_addr_cnt = 0;
250 cmd_data_cnt = 0;
251 time_ira_cnt = 0;
252 get_data_from_usart_flag = 0;
253}
254
260void app_update_handle(void)
261{
262 uint32_t write_addr=0;
263 if(update_status == UPDATE_PRE)
264 {
265 if(cmd_ctr_step == CMD_CTR_DONE)
266 {
267 cmd_ctr_step = CMD_CTR_IDLE;
268 update_status = UPDATE_CLEAR_FLAG;
269 }
270 else if(cmd_ctr_step == CMD_CTR_APP)
271 {
272 cmd_ctr_step = CMD_CTR_IDLE;
273 back_ok();
274 }
275 else if(cmd_ctr_step == CMD_CTR_ERR)
276 {
277 cmd_ctr_step = CMD_CTR_IDLE;
278 back_err();
279 }
280 }
281 else if(update_status == UPDATE_CLEAR_FLAG)
282 {
283 get_data_from_usart_flag = 1;
284 update_status = UPDATE_ING;
285 back_ok();
286 }
287 else if(update_status == UPDATE_ING)
288 {
289 if(cmd_data_step == CMD_DATA_DONE)
290 {
291 write_addr = (cmd_data_group_struct.cmd_addr[0] << 24) + (cmd_data_group_struct.cmd_addr[1] << 16) + \
292 (cmd_data_group_struct.cmd_addr[2] << 8) + cmd_data_group_struct.cmd_addr[3];
293 if((write_addr >= APP_START_ADDR) && (write_addr < FLASH_BASE + 1024 * FLASH_SIZE))
294 {
295 flash_2kb_write(write_addr, cmd_data_group_struct.cmd_buf);
296 cmd_data_step = CMD_DATA_IDLE;
297 back_ok();
298 }
299 else
300 {
301 cmd_data_step = CMD_DATA_IDLE;
302 back_err();
303 }
304 }
305 else if(cmd_data_step == CMD_DATA_ERR)
306 {
307 cmd_data_step = CMD_DATA_IDLE;
308 back_err();
309 }
310 }
311 else if(update_status == UPDATE_DONE)
312 {
313 if(cmd_ctr_step == CMD_CTR_DONE)
314 {
315 cmd_ctr_step = CMD_CTR_IDLE;
316 back_ok();
317 /* check app starting address whether 0x08xxxxxx */
318 if(((*(uint32_t*)(APP_START_ADDR + 4)) & 0xFF000000) == 0x08000000)
319 {
320 crm_reset();
321 /* jump and run in app */
322 app_load(APP_START_ADDR);
323 }
324 else
325 {
326 cmd_ctr_step = CMD_CTR_ERR;
327 }
328 }
329 else if(cmd_ctr_step == CMD_CTR_ERR)
330 {
331 cmd_ctr_step = CMD_CTR_IDLE;
332 back_err();
333 }
334 }
335}
336
342void iap_upgrade_app_handle(void)
343{
344 command_handle();
345 app_update_handle();
346}
347
jump_to_app
iapfun jump_to_app
jump to app
Definition: bootloader/src/iap.c:44
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_USART1_PERIPH_CLOCK
@ CRM_USART1_PERIPH_CLOCK
Definition: at32f403_crm.h:122
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
USART1_IRQn
@ USART1_IRQn
Definition: at32f403.h:216
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_irq_disable
void nvic_irq_disable(IRQn_Type irqn)
disable nvic irq number
Definition: at32f403_misc.c:79
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
USART_TDC_FLAG
#define USART_TDC_FLAG
Definition: at32f403_usart.h:56
cmd_addr_cnt
static uint8_t cmd_addr_cnt
Definition: bootloader/src/iap.c:42
app_update_handle
void app_update_handle(void)
app update flow handle.
Definition: bootloader/src/iap.c:260
data_take
uint8_t data_take(void)
take data from usart buf.
Definition: bootloader/src/iap.c:87
command_handle
void command_handle(void)
command analysis handle.
Definition: bootloader/src/iap.c:104
update_status
update_status_type update_status
Definition: bootloader/src/iap.c:41
iap_upgrade_app_handle
void iap_upgrade_app_handle(void)
iap upgrade app handle.
Definition: bootloader/src/iap.c:342
cmd_data_group_struct
cmd_data_group_type cmd_data_group_struct
Definition: bootloader/src/iap.c:40
time_ira_cnt
uint8_t time_ira_cnt
Definition: bootloader/src/tmr.c:37
cmd_data_cnt
static uint32_t cmd_data_cnt
Definition: bootloader/src/iap.c:43
get_data_from_usart_flag
uint8_t get_data_from_usart_flag
Definition: bootloader/src/tmr.c:38
cmd_data_step
cmd_data_step_type cmd_data_step
Definition: bootloader/src/iap.c:38
app_load
void app_load(uint32_t app_addr)
app load.
Definition: bootloader/src/iap.c:58
cmd_ctr_step
cmd_ctr_step_type cmd_ctr_step
Definition: bootloader/src/iap.c:39
back_err
void back_err(void)
command response error.
Definition: bootloader/src/iap.c:239
usart_group_struct
usart_group_type usart_group_struct
Definition: bootloader/src/usart.c:36
back_ok
void back_ok(void)
command response ok.
Definition: bootloader/src/iap.c:226
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART1
#define USART1
Definition: at32f403_usart.h:317
APP_START_ADDR
#define APP_START_ADDR
Definition: app_led3_toggle/inc/iap.h:47
SRAM_SIZE
#define SRAM_SIZE
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h:47
USART_REC_LEN
#define USART_REC_LEN
Definition: bootloader/inc/usart.h:46
FLASH_SIZE
#define FLASH_SIZE
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h:46
flash_2kb_write
void flash_2kb_write(uint32_t write_addr, uint8_t *pbuffer)
flash erase/program operation.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c:43
iapfun
void(* iapfun)(void)
Definition: bootloader/inc/iap.h:111
update_status_type
update_status_type
update status type
Definition: bootloader/inc/iap.h:104
cmd_ctr_step_type
cmd_ctr_step_type
cmd ctr step type
Definition: bootloader/inc/iap.h:92
cmd_data_step_type
cmd_data_step_type
cmd data step type
Definition: bootloader/inc/iap.h:79
UPDATE_PRE
@ UPDATE_PRE
Definition: bootloader/inc/iap.h:105
UPDATE_DONE
@ UPDATE_DONE
Definition: bootloader/inc/iap.h:108
UPDATE_ING
@ UPDATE_ING
Definition: bootloader/inc/iap.h:107
UPDATE_CLEAR_FLAG
@ UPDATE_CLEAR_FLAG
Definition: bootloader/inc/iap.h:106
CMD_CTR_ERR
@ CMD_CTR_ERR
Definition: bootloader/inc/iap.h:96
CMD_CTR_DONE
@ CMD_CTR_DONE
Definition: bootloader/inc/iap.h:95
CMD_CTR_INIT
@ CMD_CTR_INIT
Definition: bootloader/inc/iap.h:94
CMD_CTR_APP
@ CMD_CTR_APP
Definition: bootloader/inc/iap.h:97
CMD_CTR_IDLE
@ CMD_CTR_IDLE
Definition: bootloader/inc/iap.h:93
CMD_DATA_DONE
@ CMD_DATA_DONE
Definition: bootloader/inc/iap.h:84
CMD_DATA_ERR
@ CMD_DATA_ERR
Definition: bootloader/inc/iap.h:85
CMD_DATA_BUF
@ CMD_DATA_BUF
Definition: bootloader/inc/iap.h:82
CMD_DATA_IDLE
@ CMD_DATA_IDLE
Definition: bootloader/inc/iap.h:80
CMD_DATA_CHACK
@ CMD_DATA_CHACK
Definition: bootloader/inc/iap.h:83
CMD_DATA_ADDR
@ CMD_DATA_ADDR
Definition: bootloader/inc/iap.h:81
cmd_data_group_type
cmd data group type
Definition: bootloader/inc/iap.h:68
cmd_data_group_type::cmd_addr
uint8_t cmd_addr[4]
Definition: bootloader/inc/iap.h:70
cmd_data_group_type::cmd_buf
uint8_t cmd_buf[0x800]
Definition: bootloader/inc/iap.h:71
usart_group_type::tail
uint16_t tail
Definition: bootloader/inc/usart.h:63
usart_group_type::buf
uint16_t buf[1024]
Definition: bootloader/inc/usart.h:61
usart_group_type::count
uint16_t count
Definition: bootloader/inc/usart.h:64


AT32F403 Firmwary Library: tmr.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
bootloader/src/tmr.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "tmr.h"
27#include "iap.h"
28
37uint8_t time_ira_cnt=0;
38uint8_t get_data_from_usart_flag = 0; /* flag for timer out in upgrade flow */
39
45void tmr_init(void)
46{
47 crm_clocks_freq_type crm_clocks_freq_struct = {0};
48
49 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
50
51 /* enable the tmr3 global interrupt */
52 nvic_irq_enable(TMR3_GLOBAL_IRQn, 1, 0);
53
54 /* get system clock */
55 crm_clocks_freq_get(&crm_clocks_freq_struct);
56
57 /* time base configuration */
58 tmr_base_init(TMR3, 10000, crm_clocks_freq_struct.ahb_freq / 10000);
59 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
60
61 /* overflow interrupt enable */
62 tmr_interrupt_enable(TMR3, TMR_OVF_INT, TRUE);
63
64 /* enable tmr */
65 tmr_counter_enable(TMR3, TRUE);
66}
67
73void TMR3_GLOBAL_IRQHandler(void)
74{
75 if(tmr_flag_get(TMR3, TMR_OVF_FLAG) == SET)
76 {
77 tmr_flag_clear(TMR3, TMR_OVF_FLAG);
78 at32_led_toggle(LED2);
79 if(get_data_from_usart_flag)
80 {
81 if((++time_ira_cnt) == 0x00)
82 time_ira_cnt = 0xFF;
83 if(time_ira_cnt > 2)
84 back_err();
85 if(time_ira_cnt > 5)
86 crm_periph_clock_enable(LED2_GPIO_CRM_CLK, FALSE);
87 }
88 }
89}
90
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_OVF_FLAG
#define TMR_OVF_FLAG
Definition: at32f403_tmr.h:50
TMR_OVF_INT
#define TMR_OVF_INT
Definition: at32f403_tmr.h:72
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
time_ira_cnt
uint8_t time_ira_cnt
Definition: bootloader/src/tmr.c:37
TMR3_GLOBAL_IRQHandler
void TMR3_GLOBAL_IRQHandler(void)
tmr3 global interrupt handler.
Definition: bootloader/src/tmr.c:73
tmr_init
void tmr_init(void)
init tmr.
Definition: bootloader/src/tmr.c:45
get_data_from_usart_flag
uint8_t get_data_from_usart_flag
Definition: bootloader/src/tmr.c:38
back_err
void back_err(void)
command response error.
Definition: app_led3_toggle/src/usart.c:118
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::ahb_freq
uint32_t ahb_freq
Definition: at32f403_crm.h:452


AT32F403 Firmwary Library: usart.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
bootloader/src/usart.c
Go to the documentation of this file.
1
25#include "usart.h"
26#include "tmr.h"
27
36 usart_group_type usart_group_struct;
37
43void uart_init(uint32_t baudrate)
44{
45 gpio_init_type gpio_init_struct;
46 /* enable the usart and it's io clock */
47 crm_periph_clock_enable(CRM_USART1_PERIPH_CLOCK, TRUE);
48 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
49
50 /* set default parameter */
51 gpio_default_para_init(&gpio_init_struct);
52
53 /* configure the usart1_tx pa9 */
54 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
55 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
56 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
57 gpio_init_struct.gpio_pins = GPIO_PINS_9;
58 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
59 gpio_init(GPIOA, &gpio_init_struct);
60
61 /* configure the usart1_rx pa10 */
62 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
63 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
64 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
65 gpio_init_struct.gpio_pins = GPIO_PINS_10;
66 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
67 gpio_init(GPIOA, &gpio_init_struct);
68
69 /*configure usart nvic interrupt */
70 nvic_irq_enable(USART1_IRQn, 0, 0);
71
72 /*configure usart param*/
73 usart_init(USART1, baudrate, USART_DATA_8BITS, USART_STOP_1_BIT);
74 usart_transmitter_enable(USART1, TRUE);
75 usart_receiver_enable(USART1, TRUE);
76 usart_interrupt_enable(USART1, USART_RDBF_INT, TRUE);
77 usart_enable(USART1, TRUE);
78}
79
85void USART1_IRQHandler(void)
86{
87 uint16_t reval;
88 time_ira_cnt = 0; /* clear upgrade time out flag */
89 if(usart_flag_get(USART1, USART_RDBF_FLAG) != RESET)
90 {
91 reval = usart_data_receive(USART1);
92 if(usart_group_struct.count > (USART_REC_LEN - 1))
93 {
94 usart_group_struct.count = 0;
95 usart_group_struct.head = 0;
96 usart_group_struct.tail = 0;
97 }
98 else
99 {
100 usart_group_struct.count++;
101 usart_group_struct.buf[usart_group_struct.head++] = reval;
102 if(usart_group_struct.head > (USART_REC_LEN - 1))
103 {
104 usart_group_struct.head = 0;
105 }
106 }
107 }
108}
109
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART1_PERIPH_CLOCK
@ CRM_USART1_PERIPH_CLOCK
Definition: at32f403_crm.h:122
USART1_IRQn
@ USART1_IRQn
Definition: at32f403.h:216
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
time_ira_cnt
uint8_t time_ira_cnt
Definition: bootloader/src/tmr.c:37
USART1_IRQHandler
void USART1_IRQHandler(void)
usart1 interrupt handler.
Definition: bootloader/src/usart.c:85
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: bootloader/src/usart.c:43
usart_group_struct
usart_group_type usart_group_struct
Definition: bootloader/src/usart.c:36
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART1
#define USART1
Definition: at32f403_usart.h:317
USART_REC_LEN
#define USART_REC_LEN
Definition: bootloader/inc/usart.h:46
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
usart_group_type
usart group type
Definition: bootloader/inc/usart.h:60
usart_group_type::tail
uint16_t tail
Definition: bootloader/inc/usart.h:63
usart_group_type::buf
uint16_t buf[1024]
Definition: bootloader/inc/usart.h:61
usart_group_type::count
uint16_t count
Definition: bootloader/inc/usart.h:64
usart_group_type::head
uint16_t head
Definition: bootloader/inc/usart.h:62


AT32F403 Firmwary Library: cdc_class.c Source File

  • middlewares
  • usbd_class
  • cdc
cdc_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "cdc_class.h"
26#include "cdc_desc.h"
27
41static usb_sts_type class_init_handler(void *udev);
42static usb_sts_type class_clear_handler(void *udev);
43static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
44static usb_sts_type class_ept0_tx_handler(void *udev);
45static usb_sts_type class_ept0_rx_handler(void *udev);
46static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
47static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_sof_handler(void *udev);
49static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
50
51static usb_sts_type cdc_struct_init(cdc_struct_type *pcdc);
52extern void usb_usart_config( linecoding_type linecoding);
53static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len);
54
55 linecoding_type linecoding =
56{
57 115200,
58 0,
59 0,
60 8
61};
62
63/* cdc data struct */
64 cdc_struct_type cdc_struct;
65
66/* usb device class handler */
67 usbd_class_handler cdc_class_handler =
68{
69 class_init_handler,
70 class_clear_handler,
71 class_setup_handler,
72 class_ept0_tx_handler,
73 class_ept0_rx_handler,
74 class_in_handler,
75 class_out_handler,
76 class_sof_handler,
77 class_event_handler,
78 &cdc_struct
79};
80
86static usb_sts_type class_init_handler(void *udev)
87{
88 usb_sts_type status = USB_OK;
89 usbd_core_type *pudev = (usbd_core_type *)udev;
90 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
91
92#ifndef USB_EPT_AUTO_MALLOC_BUFFER
93 /* use user define buffer address */
94 usbd_ept_buf_custom_define(pudev, USBD_CDC_INT_EPT, EPT2_TX_ADDR);
95 usbd_ept_buf_custom_define(pudev, USBD_CDC_BULK_IN_EPT, EPT1_TX_ADDR);
96 usbd_ept_buf_custom_define(pudev, USBD_CDC_BULK_OUT_EPT, EPT1_RX_ADDR);
97#endif
98
99 /* open in endpoint */
100 usbd_ept_open(pudev, USBD_CDC_INT_EPT, EPT_INT_TYPE, USBD_CDC_CMD_MAXPACKET_SIZE);
101
102 /* open in endpoint */
103 usbd_ept_open(pudev, USBD_CDC_BULK_IN_EPT, EPT_BULK_TYPE, USBD_CDC_IN_MAXPACKET_SIZE);
104
105 /* open out endpoint */
106 usbd_ept_open(pudev, USBD_CDC_BULK_OUT_EPT, EPT_BULK_TYPE, USBD_CDC_OUT_MAXPACKET_SIZE);
107
108 /* set out endpoint to receive status */
109 usbd_ept_recv(pudev, USBD_CDC_BULK_OUT_EPT, pcdc->g_rx_buff, USBD_CDC_OUT_MAXPACKET_SIZE);
110
111 cdc_struct_init(pcdc);
112
113 return status;
114}
115
121static usb_sts_type class_clear_handler(void *udev)
122{
123 usb_sts_type status = USB_OK;
124 usbd_core_type *pudev = (usbd_core_type *)udev;
125
126 /* close in endpoint */
127 usbd_ept_close(pudev, USBD_CDC_INT_EPT);
128
129 /* close in endpoint */
130 usbd_ept_close(pudev, USBD_CDC_BULK_IN_EPT);
131
132 /* close out endpoint */
133 usbd_ept_close(pudev, USBD_CDC_BULK_OUT_EPT);
134
135 return status;
136}
137
144static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
145{
146 usb_sts_type status = USB_OK;
147 usbd_core_type *pudev = (usbd_core_type *)udev;
148 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
149
150 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
151 {
152 /* class request */
153 case USB_REQ_TYPE_CLASS:
154 if(setup->wLength)
155 {
156 if(setup->bmRequestType & USB_REQ_DIR_DTH)
157 {
158 usb_vcp_cmd_process(udev, setup->bRequest, pcdc->g_cmd, setup->wLength);
159 usbd_ctrl_send(pudev, pcdc->g_cmd, setup->wLength);
160 }
161 else
162 {
163 pcdc->g_req = setup->bRequest;
164 pcdc->g_len = setup->wLength;
165 usbd_ctrl_recv(pudev, pcdc->g_cmd, pcdc->g_len);
166
167 }
168 }
169 break;
170 /* standard request */
171 case USB_REQ_TYPE_STANDARD:
172 switch(setup->bRequest)
173 {
174 case USB_STD_REQ_GET_DESCRIPTOR:
175 usbd_ctrl_unsupport(pudev);
176 break;
177 case USB_STD_REQ_GET_INTERFACE:
178 usbd_ctrl_send(pudev, (uint8_t *)&pcdc->alt_setting, 1);
179 break;
180 case USB_STD_REQ_SET_INTERFACE:
181 pcdc->alt_setting = setup->wValue;
182 break;
183 case USB_STD_REQ_CLEAR_FEATURE:
184 break;
185 case USB_STD_REQ_SET_FEATURE:
186 break;
187 default:
188 usbd_ctrl_unsupport(pudev);
189 break;
190 }
191 break;
192 default:
193 usbd_ctrl_unsupport(pudev);
194 break;
195 }
196 return status;
197}
198
204static usb_sts_type class_ept0_tx_handler(void *udev)
205{
206 usb_sts_type status = USB_OK;
207
208 /* ...user code... */
209
210 return status;
211}
212
218static usb_sts_type class_ept0_rx_handler(void *udev)
219{
220 usb_sts_type status = USB_OK;
221 usbd_core_type *pudev = (usbd_core_type *)udev;
222 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
223 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
224 /* ...user code... */
225 if( pcdc->g_req == SET_LINE_CODING)
226 {
227 /* class process */
228 usb_vcp_cmd_process(udev, pcdc->g_req, pcdc->g_cmd, recv_len);
229 }
230
231 return status;
232}
233
240static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
241{
242 usbd_core_type *pudev = (usbd_core_type *)udev;
243 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
244 usb_sts_type status = USB_OK;
245
246 /* ...user code...
247 trans next packet data
248 */
249 pcdc->g_tx_completed = 1;
250
251 return status;
252}
253
260static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
261{
262 usb_sts_type status = USB_OK;
263 usbd_core_type *pudev = (usbd_core_type *)udev;
264 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
265
266 /* get endpoint receive data length */
267 pcdc->g_rxlen = usbd_get_recv_len(pudev, ept_num);
268
269 /*set recv flag*/
270 pcdc->g_rx_completed = 1;
271
272 return status;
273}
274
280static usb_sts_type class_sof_handler(void *udev)
281{
282 usb_sts_type status = USB_OK;
283
284 /* ...user code... */
285
286 return status;
287}
288
295static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
296{
297 usb_sts_type status = USB_OK;
298 switch(event)
299 {
300 case USBD_RESET_EVENT:
301
302 /* ...user code... */
303
304 break;
305 case USBD_SUSPEND_EVENT:
306
307 /* ...user code... */
308
309 break;
310 case USBD_WAKEUP_EVENT:
311 /* ...user code... */
312
313 break;
314 default:
315 break;
316 }
317 return status;
318}
319
325static usb_sts_type cdc_struct_init(cdc_struct_type *pcdc)
326{
327 pcdc->g_tx_completed = 1;
328 pcdc->g_rx_completed = 0;
329 pcdc->alt_setting = 0;
330 pcdc->linecoding.bitrate = linecoding.bitrate;
331 pcdc->linecoding.data = linecoding.data;
332 pcdc->linecoding.format = linecoding.format;
333 pcdc->linecoding.parity = linecoding.parity;
334 return USB_OK;
335}
336
343uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
344{
345 uint16_t i_index = 0;
346 uint16_t tmp_len = 0;
347 usbd_core_type *pudev = (usbd_core_type *)udev;
348 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
349
350 if(pcdc->g_rx_completed == 0)
351 {
352 return 0;
353 }
354 pcdc->g_rx_completed = 0;
355 tmp_len = pcdc->g_rxlen;
356 for(i_index = 0; i_index < pcdc->g_rxlen; i_index ++)
357 {
358 recv_data[i_index] = pcdc->g_rx_buff[i_index];
359 }
360
361 usbd_ept_recv(pudev, USBD_CDC_BULK_OUT_EPT, pcdc->g_rx_buff, USBD_CDC_OUT_MAXPACKET_SIZE);
362
363 return tmp_len;
364}
365
373 error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
374{
375 error_status status = SUCCESS;
376 usbd_core_type *pudev = (usbd_core_type *)udev;
377 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
378 if(pcdc->g_tx_completed)
379 {
380 pcdc->g_tx_completed = 0;
381 usbd_ept_send(pudev, USBD_CDC_BULK_IN_EPT, send_data, len);
382 }
383 else
384 {
385 status = ERROR;
386 }
387 return status;
388}
389
390
399static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
400{
401 usbd_core_type *pudev = (usbd_core_type *)udev;
402 cdc_struct_type *pcdc = (cdc_struct_type *)pudev->class_handler->pdata;
403 switch(cmd)
404 {
405 case SET_LINE_CODING:
406 pcdc->linecoding.bitrate = (uint32_t)(buff[0] | (buff[1] << 8) | (buff[2] << 16) | (buff[3] <<24));
407 pcdc->linecoding.format = buff[4];
408 pcdc->linecoding.parity = buff[5];
409 pcdc->linecoding.data = buff[6];
410#ifdef USB_VIRTUAL_COMPORT
411 /* set hardware usart */
412 usb_usart_config(pcdc->linecoding);
413#endif
414 break;
415
416 case GET_LINE_CODING:
417 buff[0] = (uint8_t)pcdc->linecoding.bitrate;
418 buff[1] = (uint8_t)(pcdc->linecoding.bitrate >> 8);
419 buff[2] = (uint8_t)(pcdc->linecoding.bitrate >> 16);
420 buff[3] = (uint8_t)(pcdc->linecoding.bitrate >> 24);
421 buff[4] = (uint8_t)(pcdc->linecoding.format);
422 buff[5] = (uint8_t)(pcdc->linecoding.parity);
423 buff[6] = (uint8_t)(pcdc->linecoding.data);
424 break;
425
426 default:
427 break;
428 }
429}
430
cdc_class.h
usb cdc class file
cdc_desc.h
usb cdc descriptor header file
USB_EPT_AUTO_MALLOC_BUFFER
#define USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer
Definition: project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h:61
EPT1_RX_ADDR
#define EPT1_RX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:76
EPT1_TX_ADDR
#define EPT1_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:75
EPT2_TX_ADDR
#define EPT2_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:78
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
USBD_CDC_CMD_MAXPACKET_SIZE
#define USBD_CDC_CMD_MAXPACKET_SIZE
Definition: cdc_class.h:60
USBD_CDC_BULK_OUT_EPT
#define USBD_CDC_BULK_OUT_EPT
Definition: cdc_class.h:53
USBD_CDC_INT_EPT
#define USBD_CDC_INT_EPT
usb cdc use endpoint define
Definition: cdc_class.h:51
USBD_CDC_BULK_IN_EPT
#define USBD_CDC_BULK_IN_EPT
Definition: cdc_class.h:52
USBD_CDC_OUT_MAXPACKET_SIZE
#define USBD_CDC_OUT_MAXPACKET_SIZE
Definition: cdc_class.h:59
USBD_CDC_IN_MAXPACKET_SIZE
#define USBD_CDC_IN_MAXPACKET_SIZE
usb cdc in and out max packet size define
Definition: cdc_class.h:58
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: cdc_class.c:280
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: cdc_class.c:240
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: cdc_class.c:121
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_class.c:144
usb_usart_config
void usb_usart_config(linecoding_type linecoding)
this function handles usart2 and linecoding config.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:279
linecoding
linecoding_type linecoding
Definition: cdc_class.c:55
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: cdc_class.c:204
usb_vcp_get_rxdata
uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_class.c:343
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: cdc_class.c:218
cdc_struct_init
static usb_sts_type cdc_struct_init(cdc_struct_type *pcdc)
usb device cdc init
Definition: cdc_class.c:325
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: cdc_class.c:295
usb_vcp_cmd_process
static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device class request function
Definition: cdc_class.c:399
usb_vcp_send_data
error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_class.c:373
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: cdc_class.c:86
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: cdc_class.c:260
cdc_struct
cdc_struct_type cdc_struct
Definition: cdc_class.c:64
cdc_class_handler
usbd_class_handler cdc_class_handler
Definition: cdc_class.c:67
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
EPT_BULK_TYPE
@ EPT_BULK_TYPE
Definition: at32f403_usb.h:203
GET_LINE_CODING
#define GET_LINE_CODING
Definition: cdc_msc_class.h:105
SET_LINE_CODING
#define SET_LINE_CODING
Definition: cdc_msc_class.h:104
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
USB_REQ_DIR_DTH
#define USB_REQ_DIR_DTH
Definition: usb_std.h:70
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
cdc_struct_type
usb cdc class struct
Definition: cdc_class.h:74
cdc_struct_type::alt_setting
uint32_t alt_setting
Definition: cdc_class.h:75
cdc_struct_type::g_req
uint8_t g_req
Definition: cdc_class.h:78
cdc_struct_type::g_rxlen
uint16_t g_rxlen
Definition: cdc_class.h:79
cdc_struct_type::g_tx_completed
__IO uint8_t g_tx_completed
Definition: cdc_class.h:80
cdc_struct_type::linecoding
linecoding_type linecoding
Definition: cdc_class.h:81
cdc_struct_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: cdc_class.h:80
cdc_struct_type::g_cmd
uint8_t g_cmd[0x08]
Definition: cdc_class.h:77
cdc_struct_type::g_rx_buff
uint8_t g_rx_buff[0x40]
Definition: cdc_class.h:76
cdc_struct_type::g_len
uint16_t g_len
Definition: cdc_class.h:79
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
linecoding_type::bitrate
uint32_t bitrate
Definition: usb_std.h:212
linecoding_type::data
uint8_t data
Definition: usb_std.h:215
linecoding_type::parity
uint8_t parity
Definition: usb_std.h:214
linecoding_type::format
uint8_t format
Definition: usb_std.h:213
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_class.h Source File

  • middlewares
  • usbd_class
  • cdc
cdc_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CDC_CLASS_H
27#define __CDC_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
51#define USBD_CDC_INT_EPT 0x82
52#define USBD_CDC_BULK_IN_EPT 0x81
53#define USBD_CDC_BULK_OUT_EPT 0x01
54
58#define USBD_CDC_IN_MAXPACKET_SIZE 0x40
59#define USBD_CDC_OUT_MAXPACKET_SIZE 0x40
60#define USBD_CDC_CMD_MAXPACKET_SIZE 0x08
61
73typedef struct
74{
75 uint32_t alt_setting;
76 uint8_t g_rx_buff[USBD_CDC_OUT_MAXPACKET_SIZE];
77 uint8_t g_cmd[USBD_CDC_CMD_MAXPACKET_SIZE];
78 uint8_t g_req;
79 uint16_t g_len, g_rxlen;
80 __IO uint8_t g_tx_completed, g_rx_completed;
81 linecoding_type linecoding;
82}cdc_struct_type;
83
84
92extern usbd_class_handler cdc_class_handler;
93uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data);
94 error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len);
95
108#ifdef __cplusplus
109}
110#endif
111
112#endif
113
114
115
error_status
error_status
error status
Definition: at32f403.h:314
USBD_CDC_CMD_MAXPACKET_SIZE
#define USBD_CDC_CMD_MAXPACKET_SIZE
Definition: cdc_class.h:60
USBD_CDC_OUT_MAXPACKET_SIZE
#define USBD_CDC_OUT_MAXPACKET_SIZE
Definition: cdc_class.h:59
usb_vcp_get_rxdata
uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_class.c:343
usb_vcp_send_data
error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_class.c:373
cdc_class_handler
usbd_class_handler cdc_class_handler
Definition: cdc_class.c:67
cdc_struct_type
usb cdc class struct
Definition: cdc_class.h:74
cdc_struct_type::alt_setting
uint32_t alt_setting
Definition: cdc_class.h:75
cdc_struct_type::g_req
uint8_t g_req
Definition: cdc_class.h:78
cdc_struct_type::linecoding
linecoding_type linecoding
Definition: cdc_class.h:81
cdc_struct_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: cdc_class.h:80
cdc_struct_type::g_len
uint16_t g_len
Definition: cdc_class.h:79
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_desc.c Source File

  • middlewares
  • usbd_class
  • cdc
cdc_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "cdc_desc.h"
28
42static usbd_desc_t *get_device_descriptor(void);
43static usbd_desc_t *get_device_qualifier(void);
44static usbd_desc_t *get_device_configuration(void);
45static usbd_desc_t *get_device_other_speed(void);
46static usbd_desc_t *get_device_lang_id(void);
47static usbd_desc_t *get_device_manufacturer_string(void);
48static usbd_desc_t *get_device_product_string(void);
49static usbd_desc_t *get_device_serial_string(void);
50static usbd_desc_t *get_device_interface_string(void);
51static usbd_desc_t *get_device_config_string(void);
52
53static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
54static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
55static void get_serial_num(void);
56#if defined ( __ICCARM__ ) /* iar compiler */
57 #pragma data_alignment=4
58#endif
59ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
60
64 usbd_desc_handler cdc_desc_handler =
65{
66 get_device_descriptor,
67 get_device_qualifier,
68 get_device_configuration,
69 get_device_other_speed,
70 get_device_lang_id,
71 get_device_manufacturer_string,
72 get_device_product_string,
73 get_device_serial_string,
74 get_device_interface_string,
75 get_device_config_string,
76};
77
81#if defined ( __ICCARM__ ) /* iar compiler */
82 #pragma data_alignment=4
83#endif
84ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
85{
86 USB_DEVICE_DESC_LEN, /* bLength */
87 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
88 0x00, /* bcdUSB */
89 0x02,
90 0x02, /* bDeviceClass */
91 0x00, /* bDeviceSubClass */
92 0x00, /* bDeviceProtocol */
93 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
94 LBYTE(USBD_CDC_VENDOR_ID), /* idVendor */
95 HBYTE(USBD_CDC_VENDOR_ID), /* idVendor */
96 LBYTE(USBD_CDC_PRODUCT_ID), /* idProduct */
97 HBYTE(USBD_CDC_PRODUCT_ID), /* idProduct */
98 0x00, /* bcdDevice rel. 2.00 */
99 0x02,
100 USB_MFC_STRING, /* Index of manufacturer string */
101 USB_PRODUCT_STRING, /* Index of product string */
102 USB_SERIAL_STRING, /* Index of serial number string */
103 1 /* bNumConfigurations */
104};
105
109#if defined ( __ICCARM__ ) /* iar compiler */
110 #pragma data_alignment=4
111#endif
112ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_CDC_CONFIG_DESC_SIZE] ALIGNED_TAIL =
113{
114 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
115 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
116 LBYTE(USBD_CDC_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
117 HBYTE(USBD_CDC_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
118 0x02, /* bNumInterfaces: 2 interface */
119 0x01, /* bConfigurationValue: configuration value */
120 0x00, /* iConfiguration: index of string descriptor describing
121 the configuration */
122 0xC0, /* bmAttributes: self powered */
123 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
124
125 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
126 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
127 0x00, /* bInterfaceNumber: number of interface */
128 0x00, /* bAlternateSetting: alternate set */
129 0x01, /* bNumEndpoints: number of endpoints */
130 USB_CLASS_CODE_CDC, /* bInterfaceClass: CDC class code */
131 0x02, /* bInterfaceSubClass: subclass code, Abstract Control Model*/
132 0x01, /* bInterfaceProtocol: protocol code, AT Command */
133 0x00, /* iInterface: index of string descriptor */
134
135 0x05, /* bFunctionLength: size of this descriptor in bytes */
136 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
137 USBD_CDC_SUBTYPE_HEADER, /* bDescriptorSubtype: Header function Descriptor 0x00*/
138 LBYTE(CDC_BCD_NUM),
139 HBYTE(CDC_BCD_NUM), /* bcdCDC: USB class definitions for communications */
140
141 0x05, /* bFunctionLength: size of this descriptor in bytes */
142 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
143 USBD_CDC_SUBTYPE_CMF, /* bDescriptorSubtype: Call Management function descriptor subtype 0x01 */
144 0x00, /* bmCapabilities: 0x00*/
145 0x01, /* bDataInterface: interface number of data class interface optionally used for call management */
146
147 0x04, /* bFunctionLength: size of this descriptor in bytes */
148 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
149 USBD_CDC_SUBTYPE_ACM, /* bDescriptorSubtype: Abstract Control Management functional descriptor subtype 0x02 */
150 0x02, /* bmCapabilities: Support Set_Line_Coding and Get_Line_Coding 0x02 */
151
152 0x05, /* bFunctionLength: size of this descriptor in bytes */
153 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
154 USBD_CDC_SUBTYPE_UFD, /* bDescriptorSubtype: Union Function Descriptor subtype 0x06 */
155 0x00, /* bControlInterface: The interface number of the communications or data class interface 0x00 */
156 0x01, /* bSubordinateInterface0: interface number of first subordinate interface in the union */
157
158 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
159 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
160 USBD_CDC_INT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
161 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
162 LBYTE(USBD_CDC_CMD_MAXPACKET_SIZE),
163 HBYTE(USBD_CDC_CMD_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
164 CDC_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
165
166
167 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
168 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
169 0x01, /* bInterfaceNumber: number of interface */
170 0x00, /* bAlternateSetting: alternate set */
171 0x02, /* bNumEndpoints: number of endpoints */
172 USB_CLASS_CODE_CDCDATA, /* bInterfaceClass: CDC-data class code */
173 0x00, /* bInterfaceSubClass: Data interface subclass code 0x00*/
174 0x00, /* bInterfaceProtocol: data class protocol code 0x00 */
175 0x00, /* iInterface: index of string descriptor */
176
177 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
178 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
179 USBD_CDC_BULK_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
180 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
181 LBYTE(USBD_CDC_IN_MAXPACKET_SIZE),
182 HBYTE(USBD_CDC_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
183 0x00, /* bInterval: interval for polling endpoint for data transfers */
184
185 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
186 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
187 USBD_CDC_BULK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
188 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
189 LBYTE(USBD_CDC_OUT_MAXPACKET_SIZE),
190 HBYTE(USBD_CDC_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
191 0x00, /* bInterval: interval for polling endpoint for data transfers */
192};
193
197#if defined ( __ICCARM__ ) /* iar compiler */
198 #pragma data_alignment=4
199#endif
200ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_CDC_SIZ_STRING_LANGID] ALIGNED_TAIL =
201{
202 USBD_CDC_SIZ_STRING_LANGID,
203 USB_DESCIPTOR_TYPE_STRING,
204 0x09,
205 0x04,
206};
207
211#if defined ( __ICCARM__ ) /* iar compiler */
212 #pragma data_alignment=4
213#endif
214ALIGNED_HEAD static uint8_t g_string_serial[USBD_CDC_SIZ_STRING_SERIAL] ALIGNED_TAIL =
215{
216 USBD_CDC_SIZ_STRING_SERIAL,
217 USB_DESCIPTOR_TYPE_STRING,
218};
219
220
221/* device descriptor */
222static usbd_desc_t device_descriptor =
223{
224 USB_DEVICE_DESC_LEN,
225 g_usbd_descriptor
226};
227
228/* config descriptor */
229static usbd_desc_t config_descriptor =
230{
231 USBD_CDC_CONFIG_DESC_SIZE,
232 g_usbd_configuration
233};
234
235/* langid descriptor */
236static usbd_desc_t langid_descriptor =
237{
238 USBD_CDC_SIZ_STRING_LANGID,
239 g_string_lang_id
240};
241
242/* serial descriptor */
243static usbd_desc_t serial_descriptor =
244{
245 USBD_CDC_SIZ_STRING_SERIAL,
246 g_string_serial
247};
248
249static usbd_desc_t vp_desc;
250
257static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
258{
259 uint16_t str_len = 0, id_pos = 2;
260 uint8_t *tmp_str = string;
261
262 while(*tmp_str != '\0')
263 {
264 str_len ++;
265 unicode_buf[id_pos ++] = *tmp_str ++;
266 unicode_buf[id_pos ++] = 0x00;
267 }
268
269 str_len = str_len * 2 + 2;
270 unicode_buf[0] = (uint8_t)str_len;
271 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
272
273 return str_len;
274}
275
283static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
284{
285 uint8_t idx = 0;
286
287 for( idx = 0 ; idx < len ; idx ++)
288 {
289 if( ((value >> 28)) < 0xA )
290 {
291 pbuf[ 2 * idx] = (value >> 28) + '0';
292 }
293 else
294 {
295 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
296 }
297
298 value = value << 4;
299
300 pbuf[2 * idx + 1] = 0;
301 }
302}
303
309static void get_serial_num(void)
310{
311 uint32_t serial0, serial1, serial2;
312
313 serial0 = *(uint32_t*)MCU_ID1;
314 serial1 = *(uint32_t*)MCU_ID2;
315 serial2 = *(uint32_t*)MCU_ID3;
316
317 serial0 += serial2;
318
319 if (serial0 != 0)
320 {
321 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
322 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
323 }
324}
325
331static usbd_desc_t *get_device_descriptor(void)
332{
333 return &device_descriptor;
334}
335
341static usbd_desc_t * get_device_qualifier(void)
342{
343 return NULL;
344}
345
351static usbd_desc_t *get_device_configuration(void)
352{
353 return &config_descriptor;
354}
355
361static usbd_desc_t *get_device_other_speed(void)
362{
363 return NULL;
364}
365
371static usbd_desc_t *get_device_lang_id(void)
372{
373 return &langid_descriptor;
374}
375
376
382static usbd_desc_t *get_device_manufacturer_string(void)
383{
384 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
385 vp_desc.descriptor = g_usbd_desc_buffer;
386 return &vp_desc;
387}
388
394static usbd_desc_t *get_device_product_string(void)
395{
396 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
397 vp_desc.descriptor = g_usbd_desc_buffer;
398 return &vp_desc;
399}
400
406static usbd_desc_t *get_device_serial_string(void)
407{
408 get_serial_num();
409 return &serial_descriptor;
410}
411
417static usbd_desc_t *get_device_interface_string(void)
418{
419 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
420 vp_desc.descriptor = g_usbd_desc_buffer;
421 return &vp_desc;
422}
423
429static usbd_desc_t *get_device_config_string(void)
430{
431 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
432 vp_desc.descriptor = g_usbd_desc_buffer;
433 return &vp_desc;
434}
435
cdc_desc.h
usb cdc descriptor header file
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
USBD_CDC_CMD_MAXPACKET_SIZE
#define USBD_CDC_CMD_MAXPACKET_SIZE
Definition: cdc_class.h:60
USBD_CDC_BULK_OUT_EPT
#define USBD_CDC_BULK_OUT_EPT
Definition: cdc_class.h:53
USBD_CDC_INT_EPT
#define USBD_CDC_INT_EPT
usb cdc use endpoint define
Definition: cdc_class.h:51
USBD_CDC_BULK_IN_EPT
#define USBD_CDC_BULK_IN_EPT
Definition: cdc_class.h:52
USBD_CDC_OUT_MAXPACKET_SIZE
#define USBD_CDC_OUT_MAXPACKET_SIZE
Definition: cdc_class.h:59
USBD_CDC_IN_MAXPACKET_SIZE
#define USBD_CDC_IN_MAXPACKET_SIZE
usb cdc in and out max packet size define
Definition: cdc_class.h:58
CDC_BCD_NUM
#define CDC_BCD_NUM
usb bcd number define
Definition: cdc_desc.h:50
USBD_CDC_DESC_MANUFACTURER_STRING
#define USBD_CDC_DESC_MANUFACTURER_STRING
usb string define(vendor, product configuration, interface)
Definition: cdc_desc.h:68
USBD_CDC_DESC_CONFIGURATION_STRING
#define USBD_CDC_DESC_CONFIGURATION_STRING
Definition: cdc_desc.h:70
USBD_CDC_SIZ_STRING_LANGID
#define USBD_CDC_SIZ_STRING_LANGID
Definition: cdc_desc.h:62
USBD_CDC_PRODUCT_ID
#define USBD_CDC_PRODUCT_ID
Definition: cdc_desc.h:56
USBD_CDC_DESC_PRODUCT_STRING
#define USBD_CDC_DESC_PRODUCT_STRING
Definition: cdc_desc.h:69
USBD_CDC_VENDOR_ID
#define USBD_CDC_VENDOR_ID
usb vendor id and product id define
Definition: cdc_desc.h:55
CDC_HID_BINTERVAL_TIME
#define CDC_HID_BINTERVAL_TIME
usb endpoint interval define
Definition: cdc_desc.h:76
USBD_CDC_CONFIG_DESC_SIZE
#define USBD_CDC_CONFIG_DESC_SIZE
usb descriptor size define
Definition: cdc_desc.h:61
USBD_CDC_SIZ_STRING_SERIAL
#define USBD_CDC_SIZ_STRING_SERIAL
Definition: cdc_desc.h:63
USBD_CDC_DESC_INTERFACE_STRING
#define USBD_CDC_DESC_INTERFACE_STRING
Definition: cdc_desc.h:71
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: cdc_desc.c:243
device_descriptor
static usbd_desc_t device_descriptor
Definition: cdc_desc.c:222
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: cdc_desc.c:351
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: cdc_desc.c:236
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: cdc_desc.c:331
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: cdc_desc.c:382
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: cdc_desc.c:341
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: cdc_desc.c:417
vp_desc
static usbd_desc_t vp_desc
Definition: cdc_desc.c:249
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: cdc_desc.c:361
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: cdc_desc.c:59
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: cdc_desc.c:394
cdc_desc_handler
usbd_desc_handler cdc_desc_handler
device descriptor handler structure
Definition: cdc_desc.c:64
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: cdc_desc.c:429
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: cdc_desc.c:257
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: cdc_desc.c:371
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: cdc_desc.c:309
config_descriptor
static usbd_desc_t config_descriptor
Definition: cdc_desc.c:229
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: cdc_desc.c:406
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: cdc_desc.c:283
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USBD_CDC_SUBTYPE_CMF
#define USBD_CDC_SUBTYPE_CMF
Definition: usb_std.h:197
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_EPT_DESC_BULK
#define USB_EPT_DESC_BULK
Definition: usb_std.h:175
USBD_CDC_SUBTYPE_HEADER
#define USBD_CDC_SUBTYPE_HEADER
usb cdc class sub-type define
Definition: usb_std.h:196
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USBD_CDC_CS_INTERFACE
#define USBD_CDC_CS_INTERFACE
usb cdc class descriptor define
Definition: usb_std.h:190
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_CLASS_CODE_CDCDATA
#define USB_CLASS_CODE_CDCDATA
Definition: usb_std.h:165
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_CLASS_CODE_CDC
#define USB_CLASS_CODE_CDC
Definition: usb_std.h:160
USBD_CDC_SUBTYPE_UFD
#define USBD_CDC_SUBTYPE_UFD
Definition: usb_std.h:199
USBD_CDC_SUBTYPE_ACM
#define USBD_CDC_SUBTYPE_ACM
Definition: usb_std.h:198
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: cdc_desc.h Source File

  • middlewares
  • usbd_class
  • cdc
cdc_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CDC_DESC_H
27#define __CDC_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "cdc_class.h"
34#include "usbd_core.h"
35
50#define CDC_BCD_NUM 0x0110
51
55#define USBD_CDC_VENDOR_ID 0x2E3C
56#define USBD_CDC_PRODUCT_ID 0x5740
57
61#define USBD_CDC_CONFIG_DESC_SIZE 67
62#define USBD_CDC_SIZ_STRING_LANGID 4
63#define USBD_CDC_SIZ_STRING_SERIAL 0x1A
64
68#define USBD_CDC_DESC_MANUFACTURER_STRING "Artery"
69#define USBD_CDC_DESC_PRODUCT_STRING "AT32 Virtual Com Port "
70#define USBD_CDC_DESC_CONFIGURATION_STRING "Virtual ComPort Config"
71#define USBD_CDC_DESC_INTERFACE_STRING "Virtual ComPort Interface"
72
76#define CDC_HID_BINTERVAL_TIME 0xFF
77
81#define MCU_ID1 (0x1FFFF7E8)
82#define MCU_ID2 (0x1FFFF7EC)
83#define MCU_ID3 (0x1FFFF7F0)
88extern usbd_desc_handler cdc_desc_handler;
89
90
98#ifdef __cplusplus
99}
100#endif
101
102#endif
cdc_class.h
usb cdc class file
cdc_desc_handler
usbd_desc_handler cdc_desc_handler
device descriptor handler structure
Definition: cdc_desc.c:64
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_keyboard_class.c Source File

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
cdc_keyboard_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "cdc_keyboard_class.h"
26#include "cdc_keyboard_desc.h"
27
41static usb_sts_type class_init_handler(void *udev);
42static usb_sts_type class_clear_handler(void *udev);
43static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
44static usb_sts_type class_ept0_tx_handler(void *udev);
45static usb_sts_type class_ept0_rx_handler(void *udev);
46static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
47static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_sof_handler(void *udev);
49static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
50static usb_sts_type cdc_class_setup_handler(void *udev, usb_setup_type *setup);
51static usb_sts_type keyboard_class_setup_handler(void *udev, usb_setup_type *setup);
52
53static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len);
54
55 vcp_keyboard_type vcp_keyboard_struct;
56
57#define SHIFT 0x80
58const static unsigned char _asciimap[128] =
59{
60 0x00,// NUL
61 0x00,// SOH
62 0x00,// STX
63 0x00,// ETX
64 0x00,// EOT
65 0x00,// ENQ
66 0x00,// ACK
67 0x00,// BEL
68 0x2A,// BS Backspace
69 0x2B,// TAB Tab
70 0x28,// LF Enter
71 0x00,// VT
72 0x00,// FF
73 0x00,// CR
74 0x00,// SO
75 0x00,// SI
76 0x00,// DEL
77 0x00,// DC1
78 0x00,// DC2
79 0x00,// DC3
80 0x00,// DC4
81 0x00,// NAK
82 0x00,// SYN
83 0x00,// ETB
84 0x00,// CAN
85 0x00,// EM
86 0x00,// SUB
87 0x00,// ESC
88 0x00,// FS
89 0x00,// GS
90 0x00,// RS
91 0x00,// US
92
93 0x2C,// ' '
94 0x1E|SHIFT,// !
95 0x34|SHIFT,// "
96 0x20|SHIFT,// #
97 0x21|SHIFT,// $
98 0x22|SHIFT,// %
99 0x24|SHIFT,// &
100 0x34, // '
101 0x26|SHIFT,// (
102 0x27|SHIFT,// )
103 0x25|SHIFT,// *
104 0x2E|SHIFT,// +
105 0x36,// ,
106 0x2D,// -
107 0x37,// .
108 0x38,// /
109 0x27,// 0
110 0x1E,// 1
111 0x1F,// 2
112 0x20,// 3
113 0x21,// 4
114 0x22,// 5
115 0x23,// 6
116 0x24,// 7
117 0x25,// 8
118 0x26,// 9
119 0x33|SHIFT,// :
120 0x33, // ;
121 0x36|SHIFT,// <
122 0x2E, // =
123 0x37|SHIFT,// >
124 0x38|SHIFT,// ?
125 0x1F|SHIFT,// @
126 0x04|SHIFT,// A
127 0x05|SHIFT,// B
128 0x06|SHIFT,// C
129 0x07|SHIFT,// D
130 0x08|SHIFT,// E
131 0x09|SHIFT,// F
132 0x0A|SHIFT,// G
133 0x0B|SHIFT,// H
134 0x0C|SHIFT,// I
135 0x0D|SHIFT,// J
136 0x0E|SHIFT,// K
137 0x0F|SHIFT,// L
138 0x10|SHIFT,// M
139 0x11|SHIFT,// N
140 0x12|SHIFT,// O
141 0x13|SHIFT,// P
142 0x14|SHIFT,// Q
143 0x15|SHIFT,// R
144 0x16|SHIFT,// S
145 0x17|SHIFT,// T
146 0x18|SHIFT,// U
147 0x19|SHIFT,// V
148 0x1A|SHIFT,// W
149 0x1B|SHIFT,// X
150 0x1C|SHIFT,// Y
151 0x1D|SHIFT,// Z
152 0x2F, // [
153 0x31, // bslash
154 0x30, // ]
155 0x23|SHIFT,// ^
156 0x2D|SHIFT,// _
157 0x35, // `
158 0x04, // a
159 0x05, // b
160 0x06, // c
161 0x07, // d
162 0x08, // e
163 0x09, // f
164 0x0A, // g
165 0x0B, // h
166 0x0C, // i
167 0x0D, // j
168 0x0E, // k
169 0x0F, // l
170 0x10, // m
171 0x11, // n
172 0x12, // o
173 0x13, // p
174 0x14, // q
175 0x15, // r
176 0x16, // s
177 0x17, // t
178 0x18, // u
179 0x19, // v
180 0x1A, // w
181 0x1B, // x
182 0x1C, // y
183 0x1D, // z
184 0x2f|SHIFT,//
185 0x31|SHIFT,// |
186 0x30|SHIFT,// }
187 0x35|SHIFT,// ~
188 0 // DEL
189};
190
191 linecoding_type linecoding_vcpkybrd =
192{
193 115200,
194 0x00,
195 0x00,
196 0x08
197};
198
199/* static variable */
200
201
202/* usb device class handler */
203 usbd_class_handler cdc_keyboard_class_handler =
204{
205 class_init_handler,
206 class_clear_handler,
207 class_setup_handler,
208 class_ept0_tx_handler,
209 class_ept0_rx_handler,
210 class_in_handler,
211 class_out_handler,
212 class_sof_handler,
213 class_event_handler,
214 &vcp_keyboard_struct
215};
216
222static usb_sts_type class_init_handler(void *udev)
223{
224 usb_sts_type status = USB_OK;
225 usbd_core_type *pudev = (usbd_core_type *)udev;
226 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
227#ifndef USB_EPT_AUTO_MALLOC_BUFFER
228 /* use user define buffer address */
229 usbd_ept_buf_custom_define(pudev, USBD_VCPKYBRD_CDC_INT_EPT, EPT2_TX_ADDR);
230 usbd_ept_buf_custom_define(pudev, USBD_VCPKYBRD_CDC_BULK_IN_EPT, EPT1_TX_ADDR);
231 usbd_ept_buf_custom_define(pudev, USBD_VCPKYBRD_CDC_BULK_OUT_EPT, EPT1_RX_ADDR);
232 usbd_ept_buf_custom_define(pudev, USBD_VCPKYBRD_HID_IN_EPT, EPT3_TX_ADDR);
233#endif
234
235 /* open in endpoint */
236 usbd_ept_open(pudev, USBD_VCPKYBRD_CDC_INT_EPT, EPT_INT_TYPE, USBD_VCPKYBRD_CMD_MAXPACKET_SIZE);
237
238 /* open in endpoint */
239 usbd_ept_open(pudev, USBD_VCPKYBRD_CDC_BULK_IN_EPT, EPT_BULK_TYPE, USBD_VCPKYBRD_IN_MAXPACKET_SIZE);
240
241 /* open out endpoint */
242 usbd_ept_open(pudev, USBD_VCPKYBRD_CDC_BULK_OUT_EPT, EPT_BULK_TYPE, USBD_VCPKYBRD_OUT_MAXPACKET_SIZE);
243
244 /* open hid in endpoint */
245 usbd_ept_open(pudev, USBD_VCPKYBRD_HID_IN_EPT, EPT_INT_TYPE, USBD_VCPKYBRD_IN_MAXPACKET_SIZE);
246
247 /* set out endpoint to receive status */
248 usbd_ept_recv(pudev, USBD_VCPKYBRD_CDC_BULK_OUT_EPT, vcpkybrd->g_rx_buff, USBD_VCPKYBRD_OUT_MAXPACKET_SIZE);
249
250 vcpkybrd->g_tx_completed = 1;
251 vcpkybrd->g_keyboard_tx_completed = 1;
252
253 vcpkybrd->linecoding.bitrate = linecoding_vcpkybrd.bitrate;
254 vcpkybrd->linecoding.data = linecoding_vcpkybrd.data;
255 vcpkybrd->linecoding.format = linecoding_vcpkybrd.format;
256 vcpkybrd->linecoding.parity = linecoding_vcpkybrd.parity;
257 return status;
258}
259
265static usb_sts_type class_clear_handler(void *udev)
266{
267 usb_sts_type status = USB_OK;
268 usbd_core_type *pudev = (usbd_core_type *)udev;
269
270 /* close in endpoint */
271 usbd_ept_close(pudev, USBD_VCPKYBRD_CDC_INT_EPT);
272
273 /* close in endpoint */
274 usbd_ept_close(pudev, USBD_VCPKYBRD_CDC_BULK_IN_EPT);
275
276 /* close out endpoint */
277 usbd_ept_close(pudev, USBD_VCPKYBRD_CDC_BULK_OUT_EPT);
278
279 /* close in endpoint */
280 usbd_ept_close(pudev, USBD_VCPKYBRD_HID_IN_EPT);
281
282 return status;
283}
284
291static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
292{
293 usb_sts_type status = USB_OK;
294 usbd_core_type *pudev = (usbd_core_type *)udev;
295 switch(setup->bmRequestType & USB_REQ_RECIPIENT_MASK)
296 {
297 case USB_REQ_RECIPIENT_INTERFACE:
298 if(setup->wIndex == VCPKYBRD_KEYBOARD_INTERFACE)
299 {
300 keyboard_class_setup_handler(pudev, setup);
301 }
302 else
303 {
304 cdc_class_setup_handler(pudev, setup);
305 }
306 break;
307 case USB_REQ_RECIPIENT_ENDPOINT:
308 break;
309
310 }
311 return status;
312}
313
320static usb_sts_type cdc_class_setup_handler(void *udev, usb_setup_type *setup)
321{
322 usb_sts_type status = USB_OK;
323 usbd_core_type *pudev = (usbd_core_type *)udev;
324 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
325
326 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
327 {
328 /* class request */
329 case USB_REQ_TYPE_CLASS:
330 if(setup->wLength)
331 {
332 if(setup->bmRequestType & USB_REQ_DIR_DTH)
333 {
334 usb_vcp_cmd_process(udev, setup->bRequest, vcpkybrd->g_cmd, setup->wLength);
335 usbd_ctrl_send(pudev, vcpkybrd->g_cmd, setup->wLength);
336 }
337 else
338 {
339 vcpkybrd->g_req = setup->bRequest;
340 vcpkybrd->g_len = setup->wLength;
341 usbd_ctrl_recv(pudev, vcpkybrd->g_cmd, vcpkybrd->g_len);
342
343 }
344 }
345 break;
346 /* standard request */
347 case USB_REQ_TYPE_STANDARD:
348 switch(setup->bRequest)
349 {
350 case USB_STD_REQ_GET_DESCRIPTOR:
351 usbd_ctrl_unsupport(pudev);
352 break;
353 case USB_STD_REQ_GET_INTERFACE:
354 usbd_ctrl_send(pudev, (uint8_t *)&vcpkybrd->alt_setting, 1);
355 break;
356 case USB_STD_REQ_SET_INTERFACE:
357 vcpkybrd->alt_setting = setup->wValue;
358 break;
359 case USB_STD_REQ_CLEAR_FEATURE:
360 break;
361 case USB_STD_REQ_SET_FEATURE:
362 break;
363 default:
364 usbd_ctrl_unsupport(pudev);
365 break;
366 }
367 break;
368 default:
369 usbd_ctrl_unsupport(pudev);
370 break;
371 }
372 return status;
373}
374
381static usb_sts_type keyboard_class_setup_handler(void *udev, usb_setup_type *setup)
382{
383 usb_sts_type status = USB_OK;
384 usbd_core_type *pudev = (usbd_core_type *)udev;
385 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
386 uint16_t len;
387 uint8_t *buf;
388
389 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
390 {
391 /* class request */
392 case USB_REQ_TYPE_CLASS:
393 switch(setup->bRequest)
394 {
395 case HID_REQ_SET_PROTOCOL:
396 vcpkybrd->hid_protocol = (uint8_t)setup->wValue;
397 break;
398 case HID_REQ_GET_PROTOCOL:
399 usbd_ctrl_send(pudev, (uint8_t *)&vcpkybrd->hid_protocol, 1);
400 break;
401 case HID_REQ_SET_IDLE:
402 vcpkybrd->hid_set_idle = (uint8_t)(setup->wValue >> 8);
403 break;
404 case HID_REQ_GET_IDLE:
405 usbd_ctrl_send(pudev, (uint8_t *)&vcpkybrd->hid_set_idle, 1);
406 break;
407 case HID_REQ_SET_REPORT:
408 vcpkybrd->hid_state = HID_REQ_SET_REPORT;
409 usbd_ctrl_recv(pudev, vcpkybrd->hid_set_report, setup->wLength);
410 break;
411 default:
412 usbd_ctrl_unsupport(pudev);
413 break;
414 }
415 break;
416 /* standard request */
417 case USB_REQ_TYPE_STANDARD:
418 switch(setup->bRequest)
419 {
420 case USB_STD_REQ_GET_DESCRIPTOR:
421 if(setup->wValue >> 8 == HID_REPORT_DESC)
422 {
423 len = MIN(USBD_VCPKYBRD_HID_SIZ_REPORT_DESC, setup->wLength);
424 buf = (uint8_t *)g_usbd_vcpkybrd_hid_report;
425 }
426 else if(setup->wValue >> 8 == HID_DESCRIPTOR_TYPE)
427 {
428 len = MIN(9, setup->wLength);
429 buf = (uint8_t *)g_vcpkybrd_hid_usb_desc;
430 }
431 usbd_ctrl_send(pudev, (uint8_t *)buf, len);
432 break;
433 case USB_STD_REQ_GET_INTERFACE:
434 usbd_ctrl_send(pudev, (uint8_t *)&vcpkybrd->alt_setting, 1);
435 break;
436 case USB_STD_REQ_SET_INTERFACE:
437 vcpkybrd->alt_setting = setup->wValue;
438 break;
439 case USB_STD_REQ_CLEAR_FEATURE:
440 break;
441 case USB_STD_REQ_SET_FEATURE:
442 break;
443 default:
444 usbd_ctrl_unsupport(pudev);
445 break;
446 }
447 break;
448 default:
449 usbd_ctrl_unsupport(pudev);
450 break;
451 }
452 return status;
453}
454
460static usb_sts_type class_ept0_tx_handler(void *udev)
461{
462 usb_sts_type status = USB_OK;
463
464 /* ...user code... */
465
466 return status;
467}
468
474static usb_sts_type class_ept0_rx_handler(void *udev)
475{
476 usb_sts_type status = USB_OK;
477 usbd_core_type *pudev = (usbd_core_type *)udev;
478 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
479 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
480 /* ...user code... */
481 if( vcpkybrd->g_req == SET_LINE_CODING)
482 {
483 /* class process */
484 usb_vcp_cmd_process(udev, vcpkybrd->g_req, vcpkybrd->g_cmd, recv_len);
485 }
486
487 if( vcpkybrd->hid_state == HID_REQ_SET_REPORT)
488 {
489 /* hid buffer process */
490 vcpkybrd->hid_state = 0;
491 }
492 return status;
493}
494
501static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
502{
503 usb_sts_type status = USB_OK;
504 usbd_core_type *pudev = (usbd_core_type *)udev;
505 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
506
507 /* ...user code...
508 trans next packet data
509 */
510 if((ept_num & 0x7F) == (USBD_VCPKYBRD_CDC_BULK_IN_EPT & 0x7F))
511 {
512 vcpkybrd->g_tx_completed = 1;
513 }
514 if((ept_num & 0x7F) == (USBD_VCPKYBRD_HID_IN_EPT & 0x7F))
515 {
516 vcpkybrd->g_keyboard_tx_completed = 1;
517 }
518
519
520 return status;
521}
522
529static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
530{
531 usb_sts_type status = USB_OK;
532 usbd_core_type *pudev = (usbd_core_type *)udev;
533 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
534
535 /* get endpoint receive data length */
536 vcpkybrd->g_rxlen = usbd_get_recv_len(pudev, ept_num);
537
538 /*set recv flag*/
539 vcpkybrd->g_rx_completed = 1;
540
541 return status;
542}
543
549static usb_sts_type class_sof_handler(void *udev)
550{
551 usb_sts_type status = USB_OK;
552
553 /* ...user code... */
554
555 return status;
556}
557
564static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
565{
566 usb_sts_type status = USB_OK;
567 switch(event)
568 {
569 case USBD_RESET_EVENT:
570
571 /* ...user code... */
572
573 break;
574 case USBD_SUSPEND_EVENT:
575
576 /* ...user code... */
577
578 break;
579 case USBD_WAKEUP_EVENT:
580 /* ...user code... */
581
582 break;
583 default:
584 break;
585 }
586 return status;
587}
588
595uint16_t usb_vcpkybrd_vcp_get_rxdata(void *udev, uint8_t *recv_data)
596{
597 uint16_t i_index = 0;
598 usbd_core_type *pudev = (usbd_core_type *)udev;
599 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
600 uint16_t tmp_len = 0;
601
602 if(vcpkybrd->g_rx_completed == 0)
603 {
604 return 0;
605 }
606 vcpkybrd->g_rx_completed = 0;
607
608 tmp_len = vcpkybrd->g_rxlen;
609 for(i_index = 0; i_index < vcpkybrd->g_rxlen; i_index ++)
610 {
611 recv_data[i_index] = vcpkybrd->g_rx_buff[i_index];
612 }
613
614 usbd_ept_recv(pudev, USBD_VCPKYBRD_CDC_BULK_OUT_EPT, vcpkybrd->g_rx_buff, USBD_VCPKYBRD_OUT_MAXPACKET_SIZE);
615
616 return tmp_len;
617}
618
626 error_status usb_vcpkybrd_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
627{
628 error_status status = SUCCESS;
629 usbd_core_type *pudev = (usbd_core_type *)udev;
630 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
631 if(vcpkybrd->g_tx_completed)
632 {
633 vcpkybrd->g_tx_completed = 0;
634 usbd_ept_send(pudev, USBD_VCPKYBRD_CDC_BULK_IN_EPT, send_data, len);
635 }
636 else
637 {
638 status = ERROR;
639 }
640 return status;
641}
642
643
652static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
653{
654 usbd_core_type *pudev = (usbd_core_type *)udev;
655 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
656 switch(cmd)
657 {
658 case SET_LINE_CODING:
659 vcpkybrd->linecoding.bitrate = (uint32_t)(buff[0] | (buff[1] << 8) | (buff[2] << 16) | (buff[3] <<24));
660 vcpkybrd->linecoding.format = buff[4];
661 vcpkybrd->linecoding.parity = buff[5];
662 vcpkybrd->linecoding.data = buff[6];
663 break;
664
665 case GET_LINE_CODING:
666 buff[0] = (uint8_t)vcpkybrd->linecoding.bitrate;
667 buff[1] = (uint8_t)(vcpkybrd->linecoding.bitrate >> 8);
668 buff[2] = (uint8_t)(vcpkybrd->linecoding.bitrate >> 16);
669 buff[3] = (uint8_t)(vcpkybrd->linecoding.bitrate >> 24);
670 buff[4] = (uint8_t)(vcpkybrd->linecoding.format);
671 buff[5] = (uint8_t)(vcpkybrd->linecoding.parity);
672 buff[6] = (uint8_t)(vcpkybrd->linecoding.data);
673 break;
674
675 default:
676 break;
677 }
678}
679
687 usb_sts_type usb_vcpkybrd_class_send_report(void *udev, uint8_t *report, uint16_t len)
688{
689 usb_sts_type status = USB_OK;
690 usbd_core_type *pudev = (usbd_core_type *)udev;
691
692 if(usbd_connect_state_get(pudev) == USB_CONN_STATE_CONFIGURED)
693 usbd_ept_send(pudev, USBD_VCPKYBRD_HID_IN_EPT, report, len);
694
695 return status;
696}
697
698
705void usb_vcpkybrd_keyboard_send_char(void *udev, uint8_t ascii_code)
706{
707 uint8_t key_data = 0;
708 static uint8_t temp = 0;
709 static uint8_t keyboard_buf[8] = {0, 0, 6, 0, 0, 0, 0, 0};
710
711 if(ascii_code > 128)
712 {
713 ascii_code = 0;
714 }
715 else
716 {
717 ascii_code = _asciimap[ascii_code];
718 if(!ascii_code)
719 {
720 ascii_code = 0;
721 }
722
723 if(ascii_code & SHIFT)
724 {
725 key_data = 0x2;
726 ascii_code &= 0x7F;
727 }
728 }
729
730 if((temp == ascii_code) && (ascii_code != 0))
731 {
732 keyboard_buf[0] = 0;
733 keyboard_buf[2] = 0;
734 usb_vcpkybrd_class_send_report(udev, keyboard_buf, 8);
735 }
736 else
737 {
738 keyboard_buf[0] = key_data;
739 keyboard_buf[2] = ascii_code;
740 usb_vcpkybrd_class_send_report(udev, keyboard_buf, 8);
741 }
742}
743
cdc_keyboard_class.h
usb cdc and keyboard class file
cdc_keyboard_desc.h
usb cdc and keyboard descriptor header file
USB_EPT_AUTO_MALLOC_BUFFER
#define USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer
Definition: project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h:61
EPT3_TX_ADDR
#define EPT3_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:81
EPT1_RX_ADDR
#define EPT1_RX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:76
EPT1_TX_ADDR
#define EPT1_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:75
EPT2_TX_ADDR
#define EPT2_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:78
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
USBD_VCPKYBRD_CMD_MAXPACKET_SIZE
#define USBD_VCPKYBRD_CMD_MAXPACKET_SIZE
Definition: cdc_keyboard_class.h:61
USBD_VCPKYBRD_HID_IN_EPT
#define USBD_VCPKYBRD_HID_IN_EPT
Definition: cdc_keyboard_class.h:54
USBD_VCPKYBRD_IN_MAXPACKET_SIZE
#define USBD_VCPKYBRD_IN_MAXPACKET_SIZE
usb in and out max packet size define
Definition: cdc_keyboard_class.h:59
USBD_VCPKYBRD_OUT_MAXPACKET_SIZE
#define USBD_VCPKYBRD_OUT_MAXPACKET_SIZE
Definition: cdc_keyboard_class.h:60
USBD_VCPKYBRD_CDC_INT_EPT
#define USBD_VCPKYBRD_CDC_INT_EPT
usb use endpoint define
Definition: cdc_keyboard_class.h:51
USBD_VCPKYBRD_CDC_BULK_IN_EPT
#define USBD_VCPKYBRD_CDC_BULK_IN_EPT
Definition: cdc_keyboard_class.h:52
USBD_VCPKYBRD_CDC_BULK_OUT_EPT
#define USBD_VCPKYBRD_CDC_BULK_OUT_EPT
Definition: cdc_keyboard_class.h:53
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: cdc_keyboard_class.c:549
usb_vcpkybrd_vcp_send_data
error_status usb_vcpkybrd_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_keyboard_class.c:626
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: cdc_keyboard_class.c:501
usb_vcpkybrd_keyboard_send_char
void usb_vcpkybrd_keyboard_send_char(void *udev, uint8_t ascii_code)
usb keyoard send char
Definition: cdc_keyboard_class.c:705
usb_vcpkybrd_class_send_report
usb_sts_type usb_vcpkybrd_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: cdc_keyboard_class.c:687
_asciimap
static const unsigned char _asciimap[128]
Definition: cdc_keyboard_class.c:58
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: cdc_keyboard_class.c:265
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_keyboard_class.c:291
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: cdc_keyboard_class.c:460
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: cdc_keyboard_class.c:474
cdc_keyboard_class_handler
usbd_class_handler cdc_keyboard_class_handler
Definition: cdc_keyboard_class.c:203
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: cdc_keyboard_class.c:564
usb_vcp_cmd_process
static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device class request function
Definition: cdc_keyboard_class.c:652
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: cdc_keyboard_class.c:222
cdc_class_setup_handler
static usb_sts_type cdc_class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_keyboard_class.c:320
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: cdc_keyboard_class.c:529
SHIFT
#define SHIFT
Definition: cdc_keyboard_class.c:57
usb_vcpkybrd_vcp_get_rxdata
uint16_t usb_vcpkybrd_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_keyboard_class.c:595
vcp_keyboard_struct
vcp_keyboard_type vcp_keyboard_struct
Definition: cdc_keyboard_class.c:55
keyboard_class_setup_handler
static usb_sts_type keyboard_class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_keyboard_class.c:381
linecoding_vcpkybrd
linecoding_type linecoding_vcpkybrd
Definition: cdc_keyboard_class.c:191
VCPKYBRD_KEYBOARD_INTERFACE
#define VCPKYBRD_KEYBOARD_INTERFACE
Definition: cdc_keyboard_desc.h:86
USBD_VCPKYBRD_HID_SIZ_REPORT_DESC
#define USBD_VCPKYBRD_HID_SIZ_REPORT_DESC
Definition: cdc_keyboard_desc.h:64
g_usbd_vcpkybrd_hid_report
uint8_t g_usbd_vcpkybrd_hid_report[63]
usb hid keyboard report descriptor
Definition: cdc_keyboard_desc.c:264
g_vcpkybrd_hid_usb_desc
uint8_t g_vcpkybrd_hid_usb_desc[9]
usb hid descriptor
Definition: cdc_keyboard_desc.c:245
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
EPT_BULK_TYPE
@ EPT_BULK_TYPE
Definition: at32f403_usb.h:203
GET_LINE_CODING
#define GET_LINE_CODING
Definition: cdc_msc_class.h:105
SET_LINE_CODING
#define SET_LINE_CODING
Definition: cdc_msc_class.h:104
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
HID_DESCRIPTOR_TYPE
#define HID_DESCRIPTOR_TYPE
Definition: usb_std.h:234
HID_REQ_GET_PROTOCOL
#define HID_REQ_GET_PROTOCOL
Definition: usb_std.h:229
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
HID_REQ_SET_PROTOCOL
#define HID_REQ_SET_PROTOCOL
usb hid class request code define
Definition: usb_std.h:228
HID_REPORT_DESC
#define HID_REPORT_DESC
Definition: usb_std.h:235
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
HID_REQ_SET_IDLE
#define HID_REQ_SET_IDLE
Definition: usb_std.h:230
HID_REQ_GET_IDLE
#define HID_REQ_GET_IDLE
Definition: usb_std.h:231
USB_REQ_DIR_DTH
#define USB_REQ_DIR_DTH
Definition: usb_std.h:70
HID_REQ_SET_REPORT
#define HID_REQ_SET_REPORT
Definition: usb_std.h:232
USB_REQ_RECIPIENT_MASK
#define USB_REQ_RECIPIENT_MASK
Definition: usb_std.h:56
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_RECIPIENT_ENDPOINT
#define USB_REQ_RECIPIENT_ENDPOINT
Definition: usb_std.h:54
USB_REQ_RECIPIENT_INTERFACE
#define USB_REQ_RECIPIENT_INTERFACE
Definition: usb_std.h:53
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
linecoding_type::bitrate
uint32_t bitrate
Definition: usb_std.h:212
linecoding_type::data
uint8_t data
Definition: usb_std.h:215
linecoding_type::parity
uint8_t parity
Definition: usb_std.h:214
linecoding_type::format
uint8_t format
Definition: usb_std.h:213
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::wIndex
uint16_t wIndex
Definition: usb_std.h:294
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
vcp_keyboard_type
Definition: cdc_keyboard_class.h:73
vcp_keyboard_type::g_cmd
uint8_t g_cmd[0x08]
Definition: cdc_keyboard_class.h:80
vcp_keyboard_type::g_len
uint16_t g_len
Definition: cdc_keyboard_class.h:83
vcp_keyboard_type::hid_state
uint8_t hid_state
Definition: cdc_keyboard_class.h:82
vcp_keyboard_type::hid_set_idle
uint32_t hid_set_idle
Definition: cdc_keyboard_class.h:76
vcp_keyboard_type::alt_setting
uint32_t alt_setting
Definition: cdc_keyboard_class.h:74
vcp_keyboard_type::g_keyboard_tx_completed
__IO uint8_t g_keyboard_tx_completed
Definition: cdc_keyboard_class.h:86
vcp_keyboard_type::g_rxlen
uint16_t g_rxlen
Definition: cdc_keyboard_class.h:83
vcp_keyboard_type::g_tx_completed
__IO uint8_t g_tx_completed
Definition: cdc_keyboard_class.h:84
vcp_keyboard_type::g_rx_buff
uint8_t g_rx_buff[0x40]
Definition: cdc_keyboard_class.h:79
vcp_keyboard_type::g_req
uint8_t g_req
Definition: cdc_keyboard_class.h:81
vcp_keyboard_type::hid_set_report
uint8_t hid_set_report[64]
Definition: cdc_keyboard_class.h:78
vcp_keyboard_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: cdc_keyboard_class.h:85
vcp_keyboard_type::hid_protocol
uint32_t hid_protocol
Definition: cdc_keyboard_class.h:75
vcp_keyboard_type::linecoding
linecoding_type linecoding
Definition: cdc_keyboard_class.h:88
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_keyboard_class.h Source File

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
cdc_keyboard_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CDC_KEYBOARD_CLASS_H
27#define __CDC_KEYBOARD_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
51#define USBD_VCPKYBRD_CDC_INT_EPT 0x82
52#define USBD_VCPKYBRD_CDC_BULK_IN_EPT 0x81
53#define USBD_VCPKYBRD_CDC_BULK_OUT_EPT 0x01
54#define USBD_VCPKYBRD_HID_IN_EPT 0x83
55
59#define USBD_VCPKYBRD_IN_MAXPACKET_SIZE 0x40
60#define USBD_VCPKYBRD_OUT_MAXPACKET_SIZE 0x40
61#define USBD_VCPKYBRD_CMD_MAXPACKET_SIZE 0x08
62
63
72typedef struct
73{
74 uint32_t alt_setting;
75 uint32_t hid_protocol;
76 uint32_t hid_set_idle;
77
78 uint8_t hid_set_report[64];
79 uint8_t g_rx_buff[USBD_VCPKYBRD_OUT_MAXPACKET_SIZE];
80 uint8_t g_cmd[USBD_VCPKYBRD_CMD_MAXPACKET_SIZE];
81 uint8_t g_req;
82 uint8_t hid_state;
83 uint16_t g_len, g_rxlen;
84 __IO uint8_t g_tx_completed;
85 __IO uint8_t g_rx_completed;
86 __IO uint8_t g_keyboard_tx_completed;
87
88 linecoding_type linecoding;
89}vcp_keyboard_type;
90
98extern usbd_class_handler cdc_keyboard_class_handler;
99uint16_t usb_vcpkybrd_vcp_get_rxdata(void *udev, uint8_t *recv_data);
100 error_status usb_vcpkybrd_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len);
101 usb_sts_type usb_vcpkybrd_class_send_report(void *udev, uint8_t *report, uint16_t len);
102void usb_vcpkybrd_keyboard_send_char(void *udev, uint8_t ascii_code);
103
115#ifdef __cplusplus
116}
117#endif
118
119#endif
120
121
122
123
error_status
error_status
error status
Definition: at32f403.h:314
usb_vcpkybrd_vcp_send_data
error_status usb_vcpkybrd_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_keyboard_class.c:626
usb_vcpkybrd_keyboard_send_char
void usb_vcpkybrd_keyboard_send_char(void *udev, uint8_t ascii_code)
usb keyoard send char
Definition: cdc_keyboard_class.c:705
usb_vcpkybrd_class_send_report
usb_sts_type usb_vcpkybrd_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: cdc_keyboard_class.c:687
cdc_keyboard_class_handler
usbd_class_handler cdc_keyboard_class_handler
Definition: cdc_keyboard_class.c:203
usb_vcpkybrd_vcp_get_rxdata
uint16_t usb_vcpkybrd_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_keyboard_class.c:595
USBD_VCPKYBRD_CMD_MAXPACKET_SIZE
#define USBD_VCPKYBRD_CMD_MAXPACKET_SIZE
Definition: cdc_keyboard_class.h:61
USBD_VCPKYBRD_OUT_MAXPACKET_SIZE
#define USBD_VCPKYBRD_OUT_MAXPACKET_SIZE
Definition: cdc_keyboard_class.h:60
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
vcp_keyboard_type
Definition: cdc_keyboard_class.h:73
vcp_keyboard_type::g_len
uint16_t g_len
Definition: cdc_keyboard_class.h:83
vcp_keyboard_type::hid_state
uint8_t hid_state
Definition: cdc_keyboard_class.h:82
vcp_keyboard_type::hid_set_idle
uint32_t hid_set_idle
Definition: cdc_keyboard_class.h:76
vcp_keyboard_type::alt_setting
uint32_t alt_setting
Definition: cdc_keyboard_class.h:74
vcp_keyboard_type::g_keyboard_tx_completed
__IO uint8_t g_keyboard_tx_completed
Definition: cdc_keyboard_class.h:86
vcp_keyboard_type::g_tx_completed
__IO uint8_t g_tx_completed
Definition: cdc_keyboard_class.h:84
vcp_keyboard_type::g_req
uint8_t g_req
Definition: cdc_keyboard_class.h:81
vcp_keyboard_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: cdc_keyboard_class.h:85
vcp_keyboard_type::hid_protocol
uint32_t hid_protocol
Definition: cdc_keyboard_class.h:75
vcp_keyboard_type::linecoding
linecoding_type linecoding
Definition: cdc_keyboard_class.h:88
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_keyboard_desc.c Source File

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
cdc_keyboard_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "cdc_keyboard_desc.h"
41static usbd_desc_t *get_device_descriptor(void);
42static usbd_desc_t *get_device_qualifier(void);
43static usbd_desc_t *get_device_configuration(void);
44static usbd_desc_t *get_device_other_speed(void);
45static usbd_desc_t *get_device_lang_id(void);
46static usbd_desc_t *get_device_manufacturer_string(void);
47static usbd_desc_t *get_device_product_string(void);
48static usbd_desc_t *get_device_serial_string(void);
49static usbd_desc_t *get_device_interface_string(void);
50static usbd_desc_t *get_device_config_string(void);
51
52static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
53static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
54static void get_serial_num(void);
55#if defined ( __ICCARM__ ) /* iar compiler */
56 #pragma data_alignment=4
57#endif
58ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
59
63 usbd_desc_handler cdc_keyboard_desc_handler =
64{
65 get_device_descriptor,
66 get_device_qualifier,
67 get_device_configuration,
68 get_device_other_speed,
69 get_device_lang_id,
70 get_device_manufacturer_string,
71 get_device_product_string,
72 get_device_serial_string,
73 get_device_interface_string,
74 get_device_config_string,
75};
76
80#if defined ( __ICCARM__ ) /* iar compiler */
81 #pragma data_alignment=4
82#endif
83ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
84{
85 USB_DEVICE_DESC_LEN, /* bLength */
86 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
87 0x00, /* bcdUSB */
88 0x02,
89 0xEF, /* bDeviceClass */
90 0x02, /* bDeviceSubClass */
91 0x01, /* bDeviceProtocol */
92 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
93 LBYTE(USBD_VCPKYBRD_VENDOR_ID), /* idVendor */
94 HBYTE(USBD_VCPKYBRD_VENDOR_ID), /* idVendor */
95 LBYTE(USBD_VCPKYBRD_PRODUCT_ID), /* idProduct */
96 HBYTE(USBD_VCPKYBRD_PRODUCT_ID), /* idProduct */
97 0x00, /* bcdDevice rel. 2.00 */
98 0x02,
99 USB_MFC_STRING, /* Index of manufacturer string */
100 USB_PRODUCT_STRING, /* Index of product string */
101 USB_SERIAL_STRING, /* Index of serial number string */
102 1 /* bNumConfigurations */
103};
104
108#if defined ( __ICCARM__ ) /* iar compiler */
109 #pragma data_alignment=4
110#endif
111ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_VCPKYBRD_CONFIG_DESC_SIZE] ALIGNED_TAIL =
112{
113 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
114 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
115 LBYTE(USBD_VCPKYBRD_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
116 HBYTE(USBD_VCPKYBRD_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
117 0x03, /* bNumInterfaces: 2 interface */
118 0x01, /* bConfigurationValue: configuration value */
119 0x00, /* iConfiguration: index of string descriptor describing
120 the configuration */
121 0xC0, /* bmAttributes: self powered */
122 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
123
124 0x08, /* bLength */
125 0x0B, /* bDescriptorType */
126 0x00, /* bFirstInterface */
127 0x02, /* bInterfaceCount */
128 0x02, /* bFunctionClass */
129 0x02, /* bFunctionSubClass */
130 0x01, /* bFunctionProtocol */
131 0x00, /* iFunction (Index of string descriptor describing this function) */
132
133 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
134 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
135 VCPKYBRD_CDC_INTERFACE, /* bInterfaceNumber: number of interface */
136 0x00, /* bAlternateSetting: alternate set */
137 0x01, /* bNumEndpoints: number of endpoints */
138 USB_CLASS_CODE_CDC, /* bInterfaceClass: CDC class code */
139 0x02, /* bInterfaceSubClass: subclass code, Abstract Control Model*/
140 0x01, /* bInterfaceProtocol: protocol code, AT Command */
141 0x00, /* iInterface: index of string descriptor */
142
143 0x05, /* bFunctionLength: size of this descriptor in bytes */
144 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
145 USBD_CDC_SUBTYPE_HEADER, /* bDescriptorSubtype: Header function Descriptor 0x00*/
146 LBYTE(VCPKYBRD_BCD_NUM),
147 HBYTE(VCPKYBRD_BCD_NUM), /* bcdCDC: USB class definitions for communications */
148
149 0x05, /* bFunctionLength: size of this descriptor in bytes */
150 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
151 USBD_CDC_SUBTYPE_CMF, /* bDescriptorSubtype: Call Management function descriptor subtype 0x01 */
152 0x00, /* bmCapabilities: 0x00*/
153 0x01, /* bDataInterface: interface number of data class interface optionally used for call management */
154
155 0x04, /* bFunctionLength: size of this descriptor in bytes */
156 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
157 USBD_CDC_SUBTYPE_ACM, /* bDescriptorSubtype: Abstract Control Management functional descriptor subtype 0x02 */
158 0x02, /* bmCapabilities: Support Set_Line_Coding and Get_Line_Coding 0x02 */
159
160 0x05, /* bFunctionLength: size of this descriptor in bytes */
161 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
162 USBD_CDC_SUBTYPE_UFD, /* bDescriptorSubtype: Union Function Descriptor subtype 0x06 */
163 0x00, /* bControlInterface: The interface number of the communications or data class interface 0x00 */
164 0x01, /* bSubordinateInterface0: interface number of first subordinate interface in the union */
165
166 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
167 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
168 USBD_VCPKYBRD_CDC_INT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
169 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
170 LBYTE(USBD_VCPKYBRD_CMD_MAXPACKET_SIZE),
171 HBYTE(USBD_VCPKYBRD_CMD_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
172 VCPKYBRD_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
173
174
175 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
176 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
177 VCPKYBRD_CDC_DATA_INTERFACE, /* bInterfaceNumber: number of interface */
178 0x00, /* bAlternateSetting: alternate set */
179 0x02, /* bNumEndpoints: number of endpoints */
180 USB_CLASS_CODE_CDCDATA, /* bInterfaceClass: CDC-data class code */
181 0x00, /* bInterfaceSubClass: Data interface subclass code 0x00*/
182 0x00, /* bInterfaceProtocol: data class protocol code 0x00 */
183 0x00, /* iInterface: index of string descriptor */
184
185 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
186 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
187 USBD_VCPKYBRD_CDC_BULK_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
188 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
189 LBYTE(USBD_VCPKYBRD_IN_MAXPACKET_SIZE),
190 HBYTE(USBD_VCPKYBRD_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
191 0x00, /* bInterval: interval for polling endpoint for data transfers */
192
193 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
194 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
195 USBD_VCPKYBRD_CDC_BULK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
196 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
197 LBYTE(USBD_VCPKYBRD_OUT_MAXPACKET_SIZE),
198 HBYTE(USBD_VCPKYBRD_OUT_MAXPACKET_SIZE),/* wMaxPacketSize: maximum packe size this endpoint */
199 0x00, /* bInterval: interval for polling endpoint for data transfers */
200
201 0x08, /* bLength */
202 0x0B, /* bDescriptorType */
203 0x02, /* bFirstInterface */
204 0x01, /* bInterfaceCount */
205 0x03, /* bFunctionClass */
206 0x00, /* bFunctionSubClass */
207 0x01, /* bFunctionProtocol */
208 0x00, /* iFunction (Index of string descriptor describing this function) */
209
210 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
211 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
212 VCPKYBRD_KEYBOARD_INTERFACE, /* bInterfaceNumber: number of interface */
213 0x00, /* bAlternateSetting: alternate set */
214 0x01, /* bNumEndpoints: number of endpoints */
215 USB_CLASS_CODE_HID, /* bInterfaceClass: class code hid */
216 0x01, /* bInterfaceSubClass: subclass code */
217 0x01, /* bInterfaceProtocol: protocol code */
218 0x00, /* iInterface: index of string descriptor */
219
220 0x09, /* bLength: size of HID descriptor in bytes */
221 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
222 LBYTE(VCPKYBRD_BCD_NUM),
223 HBYTE(VCPKYBRD_BCD_NUM), /* bcdHID: HID class specification release number */
224 0x00, /* bCountryCode: hardware target conutry */
225 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
226 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
227 LBYTE(sizeof(g_usbd_vcpkybrd_hid_report)),
228 HBYTE(sizeof(g_usbd_vcpkybrd_hid_report)), /* wDescriptorLength: total length of reprot descriptor */
229
230 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
231 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
232 USBD_VCPKYBRD_HID_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
233 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
234 LBYTE(USBD_VCPKYBRD_IN_MAXPACKET_SIZE),
235 HBYTE(USBD_VCPKYBRD_IN_MAXPACKET_SIZE),/* wMaxPacketSize: maximum packe size this endpoint */
236 VCPKYBRD_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
237};
238
242#if defined ( __ICCARM__ ) /* iar compiler */
243 #pragma data_alignment=4
244#endif
245ALIGNED_HEAD uint8_t g_vcpkybrd_hid_usb_desc[9] ALIGNED_TAIL =
246{
247 0x09, /* bLength: size of HID descriptor in bytes */
248 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
249 LBYTE(VCPKYBRD_BCD_NUM),
250 HBYTE(VCPKYBRD_BCD_NUM), /* bcdHID: HID class specification release number */
251 0x00, /* bCountryCode: hardware target conutry */
252 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
253 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
254 LBYTE(sizeof(g_usbd_vcpkybrd_hid_report)),
255 HBYTE(sizeof(g_usbd_vcpkybrd_hid_report)), /* wDescriptorLength: total length of reprot descriptor */
256};
257
261#if defined ( __ICCARM__ ) /* iar compiler */
262 #pragma data_alignment=4
263#endif
264ALIGNED_HEAD uint8_t g_usbd_vcpkybrd_hid_report[USBD_VCPKYBRD_HID_SIZ_REPORT_DESC] ALIGNED_TAIL =
265{
266 0x05, 0x01, // USAGE_PAGE (Generic Desktop)
267 0x09, 0x06, // USAGE (Keyboard)
268 0xa1, 0x01, // COLLECTION (Application)
269 0x05, 0x07, // USAGE_PAGE (Keyboard)
270 0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl)
271 0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI)
272 0x15, 0x00, // LOGICAL_MINIMUM (0)
273 0x25, 0x01, // LOGICAL_MAXIMUM (1)
274 0x75, 0x01, // REPORT_SIZE (1)
275 0x95, 0x08, // REPORT_COUNT (8)
276 0x81, 0x02, // INPUT (Data,Var,Abs)
277 0x95, 0x01, // REPORT_COUNT (1)
278 0x75, 0x08, // REPORT_SIZE (8)
279 0x81, 0x03, // INPUT (Cnst,Var,Abs)
280 0x95, 0x05, // REPORT_COUNT (5)
281 0x75, 0x01, // REPORT_SIZE (1)
282 0x05, 0x08, // USAGE_PAGE (LEDs)
283 0x19, 0x01, // USAGE_MINIMUM (Num Lock)
284 0x29, 0x05, // USAGE_MAXIMUM (Kana)
285 0x91, 0x02, // OUTPUT (Data,Var,Abs)
286 0x95, 0x01, // REPORT_COUNT (1)
287 0x75, 0x03, // REPORT_SIZE (3)
288 0x91, 0x03, // OUTPUT (Cnst,Var,Abs)
289 0x95, 0x06, // REPORT_COUNT (6)
290 0x75, 0x08, // REPORT_SIZE (8)
291 0x15, 0x00, // LOGICAL_MINIMUM (0)
292 0x25, 0xFF, // LOGICAL_MAXIMUM (255)
293 0x05, 0x07, // USAGE_PAGE (Keyboard)
294 0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated))
295 0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application)
296 0x81, 0x00, // INPUT (Data,Ary,Abs)
297 0xc0 // END_COLLECTION
298};
302#if defined ( __ICCARM__ ) /* iar compiler */
303 #pragma data_alignment=4
304#endif
305ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_VCPKYBRD_SIZ_STRING_LANGID] ALIGNED_TAIL =
306{
307 USBD_VCPKYBRD_SIZ_STRING_LANGID,
308 USB_DESCIPTOR_TYPE_STRING,
309 0x09,
310 0x04,
311};
312
316#if defined ( __ICCARM__ ) /* iar compiler */
317 #pragma data_alignment=4
318#endif
319ALIGNED_HEAD static uint8_t g_string_serial[USBD_VCPKYBRD_SIZ_STRING_SERIAL] ALIGNED_TAIL =
320{
321 USBD_VCPKYBRD_SIZ_STRING_SERIAL,
322 USB_DESCIPTOR_TYPE_STRING,
323};
324
325
326/* device descriptor */
327static usbd_desc_t device_descriptor =
328{
329 USB_DEVICE_DESC_LEN,
330 g_usbd_descriptor
331};
332
333/* config descriptor */
334static usbd_desc_t config_descriptor =
335{
336 USBD_VCPKYBRD_CONFIG_DESC_SIZE,
337 g_usbd_configuration
338};
339
340/* langid descriptor */
341static usbd_desc_t langid_descriptor =
342{
343 USBD_VCPKYBRD_SIZ_STRING_LANGID,
344 g_string_lang_id
345};
346
347/* serial descriptor */
348static usbd_desc_t serial_descriptor =
349{
350 USBD_VCPKYBRD_SIZ_STRING_SERIAL,
351 g_string_serial
352};
353
354static usbd_desc_t vp_desc;
355
362static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
363{
364 uint16_t str_len = 0, id_pos = 2;
365 uint8_t *tmp_str = string;
366
367 while(*tmp_str != '\0')
368 {
369 str_len ++;
370 unicode_buf[id_pos ++] = *tmp_str ++;
371 unicode_buf[id_pos ++] = 0x00;
372 }
373
374 str_len = str_len * 2 + 2;
375 unicode_buf[0] = str_len;
376 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
377
378 return str_len;
379}
380
388static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
389{
390 uint8_t idx = 0;
391
392 for( idx = 0 ; idx < len ; idx ++)
393 {
394 if( ((value >> 28)) < 0xA )
395 {
396 pbuf[ 2 * idx] = (value >> 28) + '0';
397 }
398 else
399 {
400 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
401 }
402
403 value = value << 4;
404
405 pbuf[2 * idx + 1] = 0;
406 }
407}
408
414static void get_serial_num(void)
415{
416 uint32_t serial0, serial1, serial2;
417
418 serial0 = *(uint32_t*)MCU_ID1;
419 serial1 = *(uint32_t*)MCU_ID2;
420 serial2 = *(uint32_t*)MCU_ID3;
421
422 serial0 += serial2;
423
424 if (serial0 != 0)
425 {
426 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
427 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
428 }
429}
430
436static usbd_desc_t *get_device_descriptor(void)
437{
438 return &device_descriptor;
439}
440
446static usbd_desc_t * get_device_qualifier(void)
447{
448 return NULL;
449}
450
456static usbd_desc_t *get_device_configuration(void)
457{
458 return &config_descriptor;
459}
460
466static usbd_desc_t *get_device_other_speed(void)
467{
468 return NULL;
469}
470
476static usbd_desc_t *get_device_lang_id(void)
477{
478 return &langid_descriptor;
479}
480
481
487static usbd_desc_t *get_device_manufacturer_string(void)
488{
489 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_VCPKYBRD_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
490 vp_desc.descriptor = g_usbd_desc_buffer;
491 return &vp_desc;
492}
493
499static usbd_desc_t *get_device_product_string(void)
500{
501 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_VCPKYBRD_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
502 vp_desc.descriptor = g_usbd_desc_buffer;
503 return &vp_desc;
504}
505
511static usbd_desc_t *get_device_serial_string(void)
512{
513 get_serial_num();
514 return &serial_descriptor;
515}
516
522static usbd_desc_t *get_device_interface_string(void)
523{
524 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_VCPKYBRD_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
525 vp_desc.descriptor = g_usbd_desc_buffer;
526 return &vp_desc;
527}
528
534static usbd_desc_t *get_device_config_string(void)
535{
536 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_VCPKYBRD_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
537 vp_desc.descriptor = g_usbd_desc_buffer;
538 return &vp_desc;
539}
540
cdc_keyboard_desc.h
usb cdc and keyboard descriptor header file
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
USBD_VCPKYBRD_CMD_MAXPACKET_SIZE
#define USBD_VCPKYBRD_CMD_MAXPACKET_SIZE
Definition: cdc_keyboard_class.h:61
USBD_VCPKYBRD_HID_IN_EPT
#define USBD_VCPKYBRD_HID_IN_EPT
Definition: cdc_keyboard_class.h:54
USBD_VCPKYBRD_IN_MAXPACKET_SIZE
#define USBD_VCPKYBRD_IN_MAXPACKET_SIZE
usb in and out max packet size define
Definition: cdc_keyboard_class.h:59
USBD_VCPKYBRD_OUT_MAXPACKET_SIZE
#define USBD_VCPKYBRD_OUT_MAXPACKET_SIZE
Definition: cdc_keyboard_class.h:60
USBD_VCPKYBRD_CDC_INT_EPT
#define USBD_VCPKYBRD_CDC_INT_EPT
usb use endpoint define
Definition: cdc_keyboard_class.h:51
USBD_VCPKYBRD_CDC_BULK_IN_EPT
#define USBD_VCPKYBRD_CDC_BULK_IN_EPT
Definition: cdc_keyboard_class.h:52
USBD_VCPKYBRD_CDC_BULK_OUT_EPT
#define USBD_VCPKYBRD_CDC_BULK_OUT_EPT
Definition: cdc_keyboard_class.h:53
USBD_VCPKYBRD_DESC_INTERFACE_STRING
#define USBD_VCPKYBRD_DESC_INTERFACE_STRING
Definition: cdc_keyboard_desc.h:74
VCPKYBRD_CDC_INTERFACE
#define VCPKYBRD_CDC_INTERFACE
usb interface define
Definition: cdc_keyboard_desc.h:84
VCPKYBRD_KEYBOARD_INTERFACE
#define VCPKYBRD_KEYBOARD_INTERFACE
Definition: cdc_keyboard_desc.h:86
USBD_VCPKYBRD_HID_SIZ_REPORT_DESC
#define USBD_VCPKYBRD_HID_SIZ_REPORT_DESC
Definition: cdc_keyboard_desc.h:64
USBD_VCPKYBRD_DESC_MANUFACTURER_STRING
#define USBD_VCPKYBRD_DESC_MANUFACTURER_STRING
usb string define(vendor, product configuration, interface)
Definition: cdc_keyboard_desc.h:71
USBD_VCPKYBRD_PRODUCT_ID
#define USBD_VCPKYBRD_PRODUCT_ID
Definition: cdc_keyboard_desc.h:57
VCPKYBRD_BCD_NUM
#define VCPKYBRD_BCD_NUM
usb bcd number define
Definition: cdc_keyboard_desc.h:51
VCPKYBRD_CDC_DATA_INTERFACE
#define VCPKYBRD_CDC_DATA_INTERFACE
Definition: cdc_keyboard_desc.h:85
USBD_VCPKYBRD_DESC_CONFIGURATION_STRING
#define USBD_VCPKYBRD_DESC_CONFIGURATION_STRING
Definition: cdc_keyboard_desc.h:73
USBD_VCPKYBRD_CONFIG_DESC_SIZE
#define USBD_VCPKYBRD_CONFIG_DESC_SIZE
usb descriptor size define
Definition: cdc_keyboard_desc.h:63
VCPKYBRD_HID_BINTERVAL_TIME
#define VCPKYBRD_HID_BINTERVAL_TIME
usb endpoint interval define
Definition: cdc_keyboard_desc.h:79
USBD_VCPKYBRD_SIZ_STRING_SERIAL
#define USBD_VCPKYBRD_SIZ_STRING_SERIAL
Definition: cdc_keyboard_desc.h:66
USBD_VCPKYBRD_VENDOR_ID
#define USBD_VCPKYBRD_VENDOR_ID
usb vendor id and product id define
Definition: cdc_keyboard_desc.h:56
USBD_VCPKYBRD_SIZ_STRING_LANGID
#define USBD_VCPKYBRD_SIZ_STRING_LANGID
Definition: cdc_keyboard_desc.h:65
USBD_VCPKYBRD_DESC_PRODUCT_STRING
#define USBD_VCPKYBRD_DESC_PRODUCT_STRING
Definition: cdc_keyboard_desc.h:72
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: cdc_keyboard_desc.c:348
device_descriptor
static usbd_desc_t device_descriptor
Definition: cdc_keyboard_desc.c:327
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: cdc_keyboard_desc.c:456
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: cdc_keyboard_desc.c:341
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: cdc_keyboard_desc.c:436
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: cdc_keyboard_desc.c:487
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: cdc_keyboard_desc.c:446
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: cdc_keyboard_desc.c:522
vp_desc
static usbd_desc_t vp_desc
Definition: cdc_keyboard_desc.c:354
g_usbd_vcpkybrd_hid_report
uint8_t g_usbd_vcpkybrd_hid_report[63]
usb hid keyboard report descriptor
Definition: cdc_keyboard_desc.c:264
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: cdc_keyboard_desc.c:466
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: cdc_keyboard_desc.c:58
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: cdc_keyboard_desc.c:499
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: cdc_keyboard_desc.c:534
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: cdc_keyboard_desc.c:362
cdc_keyboard_desc_handler
usbd_desc_handler cdc_keyboard_desc_handler
device descriptor handler structure
Definition: cdc_keyboard_desc.c:63
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: cdc_keyboard_desc.c:476
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: cdc_keyboard_desc.c:414
g_vcpkybrd_hid_usb_desc
uint8_t g_vcpkybrd_hid_usb_desc[9]
usb hid descriptor
Definition: cdc_keyboard_desc.c:245
config_descriptor
static usbd_desc_t config_descriptor
Definition: cdc_keyboard_desc.c:334
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: cdc_keyboard_desc.c:511
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: cdc_keyboard_desc.c:388
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USBD_CDC_SUBTYPE_CMF
#define USBD_CDC_SUBTYPE_CMF
Definition: usb_std.h:197
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_EPT_DESC_BULK
#define USB_EPT_DESC_BULK
Definition: usb_std.h:175
USBD_CDC_SUBTYPE_HEADER
#define USBD_CDC_SUBTYPE_HEADER
usb cdc class sub-type define
Definition: usb_std.h:196
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USBD_CDC_CS_INTERFACE
#define USBD_CDC_CS_INTERFACE
usb cdc class descriptor define
Definition: usb_std.h:190
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_CLASS_CODE_CDCDATA
#define USB_CLASS_CODE_CDCDATA
Definition: usb_std.h:165
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_CLASS_CODE_CDC
#define USB_CLASS_CODE_CDC
Definition: usb_std.h:160
USB_CLASS_CODE_HID
#define USB_CLASS_CODE_HID
Definition: usb_std.h:161
USBD_CDC_SUBTYPE_UFD
#define USBD_CDC_SUBTYPE_UFD
Definition: usb_std.h:199
USBD_CDC_SUBTYPE_ACM
#define USBD_CDC_SUBTYPE_ACM
Definition: usb_std.h:198
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: cdc_keyboard_desc.h Source File

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
cdc_keyboard_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CDC_KEYBOARD_DESC_H
27#define __CDC_KEYBOARD_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "cdc_keyboard_class.h"
34#include "usbd_core.h"
35
51#define VCPKYBRD_BCD_NUM 0x0110
52
56#define USBD_VCPKYBRD_VENDOR_ID 0x2E3C
57#define USBD_VCPKYBRD_PRODUCT_ID 0x5750
58
59
63#define USBD_VCPKYBRD_CONFIG_DESC_SIZE 108
64#define USBD_VCPKYBRD_HID_SIZ_REPORT_DESC 63
65#define USBD_VCPKYBRD_SIZ_STRING_LANGID 4
66#define USBD_VCPKYBRD_SIZ_STRING_SERIAL 0x1A
67
71#define USBD_VCPKYBRD_DESC_MANUFACTURER_STRING "Artery"
72#define USBD_VCPKYBRD_DESC_PRODUCT_STRING "AT32 Composite VCP and Keyboard"
73#define USBD_VCPKYBRD_DESC_CONFIGURATION_STRING "Composite VCP and Keyboard Config"
74#define USBD_VCPKYBRD_DESC_INTERFACE_STRING "Composite VCP and Keyboard Interface"
75
79#define VCPKYBRD_HID_BINTERVAL_TIME 0x0A
80
84#define VCPKYBRD_CDC_INTERFACE 0x00
85#define VCPKYBRD_CDC_DATA_INTERFACE 0x01
86#define VCPKYBRD_KEYBOARD_INTERFACE 0x02
87
91#define MCU_ID1 (0x1FFFF7E8)
92#define MCU_ID2 (0x1FFFF7EC)
93#define MCU_ID3 (0x1FFFF7F0)
94
98extern uint8_t g_usbd_vcpkybrd_hid_report[USBD_VCPKYBRD_HID_SIZ_REPORT_DESC];
99extern uint8_t g_vcpkybrd_hid_usb_desc[9];
100extern usbd_desc_handler cdc_keyboard_desc_handler;
101
102
110#ifdef __cplusplus
111}
112#endif
113
114#endif
cdc_keyboard_class.h
usb cdc and keyboard class file
USBD_VCPKYBRD_HID_SIZ_REPORT_DESC
#define USBD_VCPKYBRD_HID_SIZ_REPORT_DESC
Definition: cdc_keyboard_desc.h:64
g_usbd_vcpkybrd_hid_report
uint8_t g_usbd_vcpkybrd_hid_report[63]
usb hid keyboard report descriptor
Definition: cdc_keyboard_desc.c:264
g_vcpkybrd_hid_usb_desc
uint8_t g_vcpkybrd_hid_usb_desc[9]
usb hid descriptor
Definition: cdc_keyboard_desc.c:245
cdc_keyboard_desc_handler
usbd_desc_handler cdc_keyboard_desc_handler
device descriptor handler structure
Definition: cdc_keyboard_desc.c:63
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_msc_class.c Source File

  • middlewares
  • usbd_class
  • composite_cdc_msc
cdc_msc_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "cdc_msc_class.h"
26#include "cdc_msc_desc.h"
27
41static usb_sts_type class_init_handler(void *udev);
42static usb_sts_type class_clear_handler(void *udev);
43static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
44static usb_sts_type class_ept0_tx_handler(void *udev);
45static usb_sts_type class_ept0_rx_handler(void *udev);
46static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
47static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_sof_handler(void *udev);
49static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
50
51static usb_sts_type cdc_struct_init(cdc_msc_struct_type *pcdc);
52extern void usb_usart_config( linecoding_type linecoding);
53static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len);
54
55static usb_sts_type cdc_class_setup_handler(void *udev, usb_setup_type *setup);
56static usb_sts_type msc_class_setup_handler(void *udev, usb_setup_type *setup);
57
58 linecoding_type linecoding =
59{
60 115200,
61 0,
62 0,
63 8
64};
65
66/* cdc data struct */
67 cdc_msc_struct_type cdc_msc_struct;
68
69/* usb device class handler */
70 usbd_class_handler cdc_msc_class_handler =
71{
72 class_init_handler,
73 class_clear_handler,
74 class_setup_handler,
75 class_ept0_tx_handler,
76 class_ept0_rx_handler,
77 class_in_handler,
78 class_out_handler,
79 class_sof_handler,
80 class_event_handler,
81 &cdc_msc_struct //cdc_struct
82};
88static usb_sts_type class_init_handler(void *udev)
89{
90 usb_sts_type status = USB_OK;
91 usbd_core_type *pudev = (usbd_core_type *)udev;
92 cdc_msc_struct_type *pcdcmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
93
94 /* init cdc struct */
95 cdc_struct_init(pcdcmsc);
96
97 /* open in endpoint */
98 usbd_ept_open(pudev, USBD_CDC_INT_EPT, EPT_INT_TYPE, USBD_CDC_CMD_MAXPACKET_SIZE);
99
100 /* open in endpoint */
101 usbd_ept_open(pudev, USBD_CDC_BULK_IN_EPT, EPT_BULK_TYPE, USBD_CDC_MSC_IN_MAXPACKET_SIZE);
102
103 /* open out endpoint */
104 usbd_ept_open(pudev, USBD_CDC_BULK_OUT_EPT, EPT_BULK_TYPE, USBD_CDC_MSC_OUT_MAXPACKET_SIZE);
105
106 /* set out endpoint to receive status */
107 usbd_ept_recv(pudev, USBD_CDC_BULK_OUT_EPT, pcdcmsc->g_rx_buff, USBD_CDC_MSC_OUT_MAXPACKET_SIZE);
108
109 /* open in endpoint */
110 usbd_ept_open(pudev, USBD_MSC_BULK_IN_EPT, EPT_BULK_TYPE, USBD_CDC_MSC_IN_MAXPACKET_SIZE);
111
112 /* open out endpoint */
113 usbd_ept_open(pudev, USBD_MSC_BULK_OUT_EPT, EPT_BULK_TYPE, USBD_CDC_MSC_OUT_MAXPACKET_SIZE);
114
115 bot_scsi_init(udev);
116
117 return status;
118}
119
125static usb_sts_type class_clear_handler(void *udev)
126{
127 usb_sts_type status = USB_OK;
128 usbd_core_type *pudev = (usbd_core_type *)udev;
129
130 /* close in endpoint */
131 usbd_ept_close(pudev, USBD_CDC_INT_EPT);
132
133 /* close in endpoint */
134 usbd_ept_close(pudev, USBD_CDC_BULK_IN_EPT);
135
136 /* close out endpoint */
137 usbd_ept_close(pudev, USBD_CDC_BULK_OUT_EPT);
138
139 /* close in endpoint */
140 usbd_ept_close(pudev, USBD_MSC_BULK_IN_EPT);
141
142 /* close out endpoint */
143 usbd_ept_close(pudev, USBD_MSC_BULK_OUT_EPT);
144
145 return status;
146}
147
154static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
155{
156 usb_sts_type status = USB_OK;
157 usbd_core_type *pudev = (usbd_core_type *)udev;
158 switch(setup->bmRequestType & USB_REQ_RECIPIENT_MASK)
159 {
160 case USB_REQ_RECIPIENT_INTERFACE:
161 if(setup->wIndex == VCPMSC_MSC_INTERFACE)
162 {
163 msc_class_setup_handler(udev, setup);
164 }
165 else
166 {
167 cdc_class_setup_handler(pudev, setup);
168 }
169 break;
170 case USB_REQ_RECIPIENT_ENDPOINT:
171 if(setup->wIndex == (USBD_MSC_BULK_IN_EPT | USBD_MSC_BULK_OUT_EPT))
172 {
173 msc_class_setup_handler(udev, setup);
174 }
175 else
176 {
177 cdc_class_setup_handler(pudev, setup);
178 }
179 break;
180
181 }
182 return status;
183}
184
191static usb_sts_type cdc_class_setup_handler(void *udev, usb_setup_type *setup)
192{
193 usb_sts_type status = USB_OK;
194 usbd_core_type *pudev = (usbd_core_type *)udev;
195 cdc_msc_struct_type *pcdc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
196
197 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
198 {
199 /* class request */
200 case USB_REQ_TYPE_CLASS:
201 if(setup->wLength)
202 {
203 if(setup->bmRequestType & USB_REQ_DIR_DTH)
204 {
205 usb_vcp_cmd_process(udev, setup->bRequest, pcdc->g_cmd, setup->wLength);
206 usbd_ctrl_send(pudev, pcdc->g_cmd, setup->wLength);
207 }
208 else
209 {
210 pcdc->g_req = setup->bRequest;
211 pcdc->g_len = setup->wLength;
212 usbd_ctrl_recv(pudev, pcdc->g_cmd, pcdc->g_len);
213
214 }
215 }
216 break;
217 /* standard request */
218 case USB_REQ_TYPE_STANDARD:
219 switch(setup->bRequest)
220 {
221 case USB_STD_REQ_GET_DESCRIPTOR:
222 usbd_ctrl_unsupport(pudev);
223 break;
224 case USB_STD_REQ_GET_INTERFACE:
225 usbd_ctrl_send(pudev, (uint8_t *)&pcdc->alt_setting, 1);
226 break;
227 case USB_STD_REQ_SET_INTERFACE:
228 pcdc->alt_setting = setup->wValue;
229 break;
230 case USB_STD_REQ_CLEAR_FEATURE:
231 break;
232 case USB_STD_REQ_SET_FEATURE:
233 break;
234 default:
235 usbd_ctrl_unsupport(pudev);
236 break;
237 }
238 break;
239 default:
240 usbd_ctrl_unsupport(pudev);
241 break;
242 }
243 return status;
244}
245
252static usb_sts_type msc_class_setup_handler(void *udev, usb_setup_type *setup)
253{
254 usb_sts_type status = USB_OK;
255 usbd_core_type *pudev = (usbd_core_type *)udev;
256 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
257 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
258 {
259 /* class request */
260 case USB_REQ_TYPE_CLASS:
261
262 switch(setup->bRequest)
263 {
264 case MSC_REQ_GET_MAX_LUN:
265 usbd_ctrl_send(pudev, (uint8_t *)&cdc_msc_struct.max_lun, 1);
266 break;
267 case MSC_REQ_BO_RESET:
268 bot_scsi_reset(udev);
269 usbd_ctrl_send_status(pudev);
270 break;
271 default:
272 usbd_ctrl_unsupport(pudev);
273 break;
274
275 }
276 break;
277 /* standard request */
278 case USB_REQ_TYPE_STANDARD:
279
280 switch(setup->bRequest)
281 {
282 case USB_STD_REQ_GET_DESCRIPTOR:
283 usbd_ctrl_unsupport(pudev);
284 break;
285 case USB_STD_REQ_GET_INTERFACE:
286 usbd_ctrl_send(pudev, (uint8_t *)&pmsc->alt_setting, 1);
287 break;
288 case USB_STD_REQ_SET_INTERFACE:
289 pmsc->alt_setting = setup->wValue;
290 break;
291 case USB_STD_REQ_CLEAR_FEATURE:
292 usbd_ept_close(pudev, (uint8_t)setup->wIndex);
293
294 if((setup->wIndex & 0x80) == 0x80)
295 {
296 usbd_ept_open(pudev, (uint8_t)setup->wIndex, EPT_BULK_TYPE, USBD_CDC_MSC_IN_MAXPACKET_SIZE);
297 }
298 else
299 {
300 usbd_ept_open(pudev, (uint8_t)setup->wIndex, EPT_BULK_TYPE, USBD_CDC_MSC_OUT_MAXPACKET_SIZE);
301 }
302 bot_scsi_clear_feature(udev, setup->wIndex);
303 break;
304 case USB_STD_REQ_SET_FEATURE:
305 break;
306 default:
307 usbd_ctrl_unsupport(pudev);
308 break;
309 }
310 break;
311 default:
312 usbd_ctrl_unsupport(pudev);
313 break;
314 }
315 return status;
316}
317
323static usb_sts_type class_ept0_tx_handler(void *udev)
324{
325 usb_sts_type status = USB_OK;
326
327 /* ...user code... */
328
329 return status;
330}
331
337static usb_sts_type class_ept0_rx_handler(void *udev)
338{
339 usb_sts_type status = USB_OK;
340 usbd_core_type *pudev = (usbd_core_type *)udev;
341 cdc_msc_struct_type *pcdc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
342 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
343 /* ...user code... */
344 if( pcdc->g_req == SET_LINE_CODING)
345 {
346 /* class process */
347 usb_vcp_cmd_process(udev, pcdc->g_req, pcdc->g_cmd, recv_len);
348 }
349
350 return status;
351}
352
359static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
360{
361 usbd_core_type *pudev = (usbd_core_type *)udev;
362 cdc_msc_struct_type *pcdcmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
363 usb_sts_type status = USB_OK;
364
365 /* ...user code...
366 trans next packet data
367 */
368
369 if((ept_num & 0x7F) == (USBD_CDC_BULK_IN_EPT & 0x7F))
370 {
371 pcdcmsc->g_tx_completed = 1;
372 }
373 if((ept_num & 0x7F) == (USBD_MSC_BULK_IN_EPT & 0x7F))
374 {
375 bot_scsi_datain_handler(udev, ept_num);
376 }
377
378 return status;
379}
380
387static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
388{
389 usb_sts_type status = USB_OK;
390 usbd_core_type *pudev = (usbd_core_type *)udev;
391 cdc_msc_struct_type *pcdcmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
392
393
394
395 if((ept_num & 0x7F) == (USBD_CDC_BULK_OUT_EPT & 0x7F))
396 {
397 /* get endpoint receive data length */
398 pcdcmsc->g_rxlen = usbd_get_recv_len(pudev, ept_num);
399
400 /*set recv flag*/
401 pcdcmsc->g_rx_completed = 1;
402 }
403 if((ept_num & 0x7F) == (USBD_MSC_BULK_OUT_EPT & 0x7F))
404 {
405 bot_scsi_dataout_handler(udev, ept_num);
406 }
407
408 return status;
409}
410
416static usb_sts_type class_sof_handler(void *udev)
417{
418 usb_sts_type status = USB_OK;
419
420 /* ...user code... */
421
422 return status;
423}
424
431static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
432{
433 usb_sts_type status = USB_OK;
434 switch(event)
435 {
436 case USBD_RESET_EVENT:
437
438 /* ...user code... */
439
440 break;
441 case USBD_SUSPEND_EVENT:
442
443 /* ...user code... */
444
445 break;
446 case USBD_WAKEUP_EVENT:
447 /* ...user code... */
448
449 break;
450 default:
451 break;
452 }
453 return status;
454}
455
461static usb_sts_type cdc_struct_init(cdc_msc_struct_type *pcdc)
462{
463 pcdc->g_tx_completed = 1;
464 pcdc->g_rx_completed = 0;
465 pcdc->alt_setting = 0;
466 pcdc->linecoding.bitrate = linecoding.bitrate;
467 pcdc->linecoding.data = linecoding.data;
468 pcdc->linecoding.format = linecoding.format;
469 pcdc->linecoding.parity = linecoding.parity;
470 return USB_OK;
471}
472
479uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
480{
481 uint16_t i_index = 0;
482 uint16_t tmp_len = 0;
483 usbd_core_type *pudev = (usbd_core_type *)udev;
484 cdc_msc_struct_type *pcdc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
485
486 if(pcdc->g_rx_completed == 0)
487 {
488 return 0;
489 }
490 pcdc->g_rx_completed = 0;
491 tmp_len = pcdc->g_rxlen;
492 for(i_index = 0; i_index < pcdc->g_rxlen; i_index ++)
493 {
494 recv_data[i_index] = pcdc->g_rx_buff[i_index];
495 }
496
497 usbd_ept_recv(pudev, USBD_CDC_BULK_OUT_EPT, pcdc->g_rx_buff, USBD_CDC_MSC_OUT_MAXPACKET_SIZE);
498
499 return tmp_len;
500}
501
509 error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
510{
511 error_status status = SUCCESS;
512 usbd_core_type *pudev = (usbd_core_type *)udev;
513 cdc_msc_struct_type *pcdc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
514 if(pcdc->g_tx_completed)
515 {
516 pcdc->g_tx_completed = 0;
517 usbd_ept_send(pudev, USBD_CDC_BULK_IN_EPT, send_data, len);
518 }
519 else
520 {
521 status = ERROR;
522 }
523 return status;
524}
525
534static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
535{
536 usbd_core_type *pudev = (usbd_core_type *)udev;
537 cdc_msc_struct_type *pcdc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
538 switch(cmd)
539 {
540 case SET_LINE_CODING:
541 pcdc->linecoding.bitrate = (uint32_t)(buff[0] | (buff[1] << 8) | (buff[2] << 16) | (buff[3] <<24));
542 pcdc->linecoding.format = buff[4];
543 pcdc->linecoding.parity = buff[5];
544 pcdc->linecoding.data = buff[6];
545#ifdef USB_VIRTUAL_COMPORT
546 /* set hardware usart */
547 usb_usart_config(pcdc->linecoding);
548#endif
549 break;
550
551 case GET_LINE_CODING:
552 buff[0] = (uint8_t)pcdc->linecoding.bitrate;
553 buff[1] = (uint8_t)(pcdc->linecoding.bitrate >> 8);
554 buff[2] = (uint8_t)(pcdc->linecoding.bitrate >> 16);
555 buff[3] = (uint8_t)(pcdc->linecoding.bitrate >> 24);
556 buff[4] = (uint8_t)(pcdc->linecoding.format);
557 buff[5] = (uint8_t)(pcdc->linecoding.parity);
558 buff[6] = (uint8_t)(pcdc->linecoding.data);
559 break;
560
561 default:
562 break;
563 }
564}
565
cdc_msc_class.h
usb cdc class file
cdc_msc_desc.h
usb cdc descriptor header file
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
cdc_msc_struct_type::g_tx_completed
__IO uint8_t g_tx_completed
Definition: cdc_msc_class.h:258
cdc_msc_struct_type::g_req
uint8_t g_req
Definition: cdc_msc_class.h:256
cdc_msc_struct_type::alt_setting
uint32_t alt_setting
Definition: cdc_msc_class.h:253
cdc_msc_struct_type::linecoding
linecoding_type linecoding
Definition: cdc_msc_class.h:259
cdc_msc_struct_type::g_rx_buff
uint8_t g_rx_buff[0x40]
Definition: cdc_msc_class.h:254
cdc_msc_struct_type::g_len
uint16_t g_len
Definition: cdc_msc_class.h:257
cdc_msc_struct_type::max_lun
uint32_t max_lun
Definition: cdc_msc_class.h:264
cdc_msc_struct_type::g_cmd
uint8_t g_cmd[0x08]
Definition: cdc_msc_class.h:255
cdc_msc_struct_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: cdc_msc_class.h:258
cdc_msc_struct_type::g_rxlen
uint16_t g_rxlen
Definition: cdc_msc_class.h:257
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
USBD_CDC_CMD_MAXPACKET_SIZE
#define USBD_CDC_CMD_MAXPACKET_SIZE
Definition: cdc_class.h:60
USBD_CDC_MSC_OUT_MAXPACKET_SIZE
#define USBD_CDC_MSC_OUT_MAXPACKET_SIZE
Definition: cdc_msc_class.h:63
USBD_CDC_BULK_OUT_EPT
#define USBD_CDC_BULK_OUT_EPT
Definition: cdc_class.h:53
USBD_CDC_MSC_IN_MAXPACKET_SIZE
#define USBD_CDC_MSC_IN_MAXPACKET_SIZE
usb cdc in and out max packet size define
Definition: cdc_msc_class.h:61
USBD_CDC_INT_EPT
#define USBD_CDC_INT_EPT
usb cdc use endpoint define
Definition: cdc_class.h:51
USBD_CDC_BULK_IN_EPT
#define USBD_CDC_BULK_IN_EPT
Definition: cdc_class.h:52
USBD_MSC_BULK_IN_EPT
#define USBD_MSC_BULK_IN_EPT
Definition: cdc_msc_class.h:55
USBD_MSC_BULK_OUT_EPT
#define USBD_MSC_BULK_OUT_EPT
Definition: cdc_msc_class.h:56
VCPMSC_MSC_INTERFACE
#define VCPMSC_MSC_INTERFACE
usb interface define
Definition: cdc_msc_desc.h:82
bot_scsi_datain_handler
void bot_scsi_datain_handler(void *pudev, uint8_t ept_num)
bulk-only transport data in handler
Definition: msc/msc_bot_scsi.c:143
bot_scsi_reset
void bot_scsi_reset(void *udev)
reset bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:125
bot_scsi_init
void bot_scsi_init(void *udev)
initialize bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:102
bot_scsi_dataout_handler
void bot_scsi_dataout_handler(void *pudev, uint8_t ept_num)
bulk-only transport data out handler
Definition: msc/msc_bot_scsi.c:172
bot_scsi_clear_feature
void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
clear feature
Definition: msc/msc_bot_scsi.c:729
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: cdc_msc_class.c:416
cdc_msc_struct
cdc_msc_struct_type cdc_msc_struct
Definition: cdc_msc_class.c:67
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: cdc_msc_class.c:359
cdc_struct_init
static usb_sts_type cdc_struct_init(cdc_msc_struct_type *pcdc)
usb device cdc init
Definition: cdc_msc_class.c:461
msc_class_setup_handler
static usb_sts_type msc_class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_msc_class.c:252
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: cdc_msc_class.c:125
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_msc_class.c:154
usb_usart_config
void usb_usart_config(linecoding_type linecoding)
this function handles usart2 and linecoding config.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:279
linecoding
linecoding_type linecoding
Definition: cdc_msc_class.c:58
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: cdc_msc_class.c:323
usb_vcp_get_rxdata
uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_msc_class.c:479
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: cdc_msc_class.c:337
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: cdc_msc_class.c:431
usb_vcp_cmd_process
static void usb_vcp_cmd_process(void *udev, uint8_t cmd, uint8_t *buff, uint16_t len)
usb device function
Definition: cdc_msc_class.c:534
usb_vcp_send_data
error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_msc_class.c:509
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: cdc_msc_class.c:88
cdc_class_setup_handler
static usb_sts_type cdc_class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: cdc_msc_class.c:191
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: cdc_msc_class.c:387
cdc_msc_class_handler
usbd_class_handler cdc_msc_class_handler
Definition: cdc_msc_class.c:70
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
EPT_BULK_TYPE
@ EPT_BULK_TYPE
Definition: at32f403_usb.h:203
MSC_REQ_BO_RESET
#define MSC_REQ_BO_RESET
Definition: cdc_msc_class.h:102
GET_LINE_CODING
#define GET_LINE_CODING
Definition: cdc_msc_class.h:105
SET_LINE_CODING
#define SET_LINE_CODING
Definition: cdc_msc_class.h:104
MSC_REQ_GET_MAX_LUN
#define MSC_REQ_GET_MAX_LUN
Definition: cdc_msc_class.h:101
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
USB_REQ_DIR_DTH
#define USB_REQ_DIR_DTH
Definition: usb_std.h:70
USB_REQ_RECIPIENT_MASK
#define USB_REQ_RECIPIENT_MASK
Definition: usb_std.h:56
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_RECIPIENT_ENDPOINT
#define USB_REQ_RECIPIENT_ENDPOINT
Definition: usb_std.h:54
USB_REQ_RECIPIENT_INTERFACE
#define USB_REQ_RECIPIENT_INTERFACE
Definition: usb_std.h:53
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ctrl_send_status
void usbd_ctrl_send_status(usbd_core_type *udev)
usb control endpoint send in status
Definition: usbd_core.c:209
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
cdc_msc_struct_type
usb cdc class struct
Definition: cdc_msc_class.h:251
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
linecoding_type::bitrate
uint32_t bitrate
Definition: usb_std.h:212
linecoding_type::data
uint8_t data
Definition: usb_std.h:215
linecoding_type::parity
uint8_t parity
Definition: usb_std.h:214
linecoding_type::format
uint8_t format
Definition: usb_std.h:213
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::wIndex
uint16_t wIndex
Definition: usb_std.h:294
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_msc_class.h Source File

  • middlewares
  • usbd_class
  • composite_cdc_msc
cdc_msc_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CDC_MSC_CLASS_H
27#define __CDC_MSC_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
51#define USBD_CDC_INT_EPT 0x82
52#define USBD_CDC_BULK_IN_EPT 0x83
53#define USBD_CDC_BULK_OUT_EPT 0x02
54
55#define USBD_MSC_BULK_IN_EPT 0x81
56#define USBD_MSC_BULK_OUT_EPT 0x01
57
61#define USBD_CDC_MSC_IN_MAXPACKET_SIZE 0x40
62
63#define USBD_CDC_MSC_OUT_MAXPACKET_SIZE 0x40
64#define USBD_CDC_CMD_MAXPACKET_SIZE 0x08
65
66
67
68
81#define MSC_SUPPORT_MAX_LUN 1
82#define MSC_MAX_DATA_BUF_LEN 4096
83
84#define MSC_CMD_FORMAT_UNIT 0x04
85#define MSC_CMD_INQUIRY 0x12
86#define MSC_CMD_START_STOP 0x1B
87#define MSC_CMD_MODE_SENSE6 0x1A
88#define MSC_CMD_MODE_SENSE10 0x5A
89#define MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E
90#define MSC_CMD_READ_10 0x28
91#define MSC_CMD_READ_12 0xA8
92#define MSC_CMD_READ_CAPACITY 0x25
93#define MSC_CMD_READ_FORMAT_CAPACITY 0x23
94#define MSC_CMD_REQUEST_SENSE 0x03
95#define MSC_CMD_TEST_UNIT 0x00
96#define MSC_CMD_VERIFY 0x2F
97#define MSC_CMD_WRITE_10 0x2A
98#define MSC_CMD_WRITE_12 0xAA
99#define MSC_CMD_WRITE_VERIFY 0x2E
100
101#define MSC_REQ_GET_MAX_LUN 0xFE
102#define MSC_REQ_BO_RESET 0xFF
104#define SET_LINE_CODING 0x20
105#define GET_LINE_CODING 0x21
106
107#define CBW_CMD_LENGTH 31
108#define CBW_DCBWSIGNATURE 0x43425355
109#define CBW_BMCBWFLAGS_DIR_OUT 0x00
110#define CBW_BMCBWFLAGS_DIR_IN 0x80
111
112#define CSW_CMD_LENGTH 13
113#define CSW_DCSWSIGNATURE 0x53425355
114#define CSW_BCSWSTATUS_PASS 0x00
115#define CSW_BCSWSTATUS_FAILED 0x01
116#define CSW_BCSWSTATUS_PHASE_ERR 0x02
117
118#define MSC_STATE_MACHINE_CMD 0x00
119#define MSC_STATE_MACHINE_DATA_IN 0x01
120#define MSC_STATE_MACHINE_DATA_OUT 0x02
121#define MSC_STATE_MACHINE_SEND_DATA 0x03
122#define MSC_STATE_MACHINE_LAST_DATA 0x04
123#define MSC_STATE_MACHINE_STATUS 0x05
124#define MSC_STATE_MACHINE_FAILED 0x06
125#define MSC_STATE_MACHINE_IDLE 0x07
126
127#define MSC_BOT_STATE_IDLE 0x00
128#define MSC_BOT_STATE_RECOVERY 0x01
129#define MSC_BOT_STATE_ERROR 0x02
130
131#define REQ_SENSE_STANDARD_DATA_LEN 0x12
132#define SENSE_KEY_NO_SENSE 0x00
133#define SENSE_KEY_RECOVERED_ERROR 0x01
134#define SENSE_KEY_NOT_READY 0x02
135#define SENSE_KEY_MEDIUM_ERROR 0x03
136#define SENSE_KEY_HARDWARE_ERROR 0x04
137#define SENSE_KEY_ILLEGAL_REQUEST 0x05
138#define SENSE_KEY_UNIT_ATTENTION 0x06
139#define SENSE_KEY_DATA_PROTECT 0x07
140#define SENSE_KEY_BLANK_CHECK 0x08
141#define SENSE_KEY_VENDERO_SPECIFIC 0x09
142#define SENSE_KEY_ABORTED_COMMAND 0x0B
143#define SENSE_KEY_VOLUME_OVERFLOW 0x0D
144#define SENSE_KEY_MISCOMPARE 0x0E
145
146
147#define INVALID_COMMAND 0x20
148#define INVALID_FIELED_IN_COMMAND 0x24
149#define PARAMETER_LIST_LENGTH_ERROR 0x1A
150#define INVALID_FIELD_IN_PARAMETER_LIST 0x26
151#define ADDRESS_OUT_OF_RANGE 0x21
152#define MEDIUM_NOT_PRESENT 0x3A
153#define MEDIUM_HAVE_CHANGED 0x28
154
155#define SCSI_INQUIRY_DATA_LENGTH 36
156
160typedef struct
161{
162 uint8_t opcode;
163 uint8_t lun;
164 uint32_t address;
165 uint8_t reserved1;
166 uint32_t alloc_length;
167 uint16_t reserved2;
168}cbd_typical_type;
169
173typedef struct
174{
175 uint8_t opcode;
176 uint8_t lun;
177 uint32_t address;
178 uint8_t reserved1;
179 uint32_t alloc_length;
180 uint16_t reserved2;
181}cbd_extended_type;
182
186typedef struct
187{
188 uint32_t dCBWSignature;
189 uint32_t dCBWTage;
190 uint32_t dCBWDataTransferLength;
191 uint8_t bmCBWFlags;
192 uint8_t bCBWLUN;
193 uint8_t bCBWCBLength;
194 uint8_t CBWCB[16];
195}cbw_type;
196
200typedef struct
201{
202 uint32_t dCSWSignature;
203 uint32_t dCSWTag;
204 uint32_t dCSWDataResidue;
205 uint32_t bCSWStatus;
206}csw_type;
207
211typedef struct
212{
213 uint8_t err_code;
214 uint8_t reserved1;
215 uint8_t sense_key;
216 uint32_t information;
217 uint8_t as_length;
218 uint32_t reserved2;
219 uint8_t asc;
220 uint8_t ascq;
221 uint32_t reserved3;
222}sense_type;
223
224
225typedef struct
226{
227 uint8_t msc_state;
228 uint8_t bot_status;
229 uint32_t max_lun;
230
231 uint32_t blk_nbr[MSC_SUPPORT_MAX_LUN];
232 uint32_t blk_size[MSC_SUPPORT_MAX_LUN];
233
234 uint32_t blk_addr;
235 uint32_t blk_len;
236
237 uint32_t data_len;
238 uint8_t data[MSC_MAX_DATA_BUF_LEN];
239
240 uint32_t alt_setting;
241
242 cbw_type cbw_struct;
243 csw_type csw_struct;
244
245}msc_type;
246
250typedef struct
251{
252 //used for CDC
253 uint32_t alt_setting;
254 uint8_t g_rx_buff[USBD_CDC_MSC_OUT_MAXPACKET_SIZE];
255 uint8_t g_cmd[USBD_CDC_CMD_MAXPACKET_SIZE];
256 uint8_t g_req;
257 uint16_t g_len, g_rxlen;
258 __IO uint8_t g_tx_completed, g_rx_completed;
259 linecoding_type linecoding;
260
261 //used for MSC
262 uint8_t msc_state;
263 uint8_t bot_status;
264 uint32_t max_lun;
265
266 uint32_t blk_nbr[MSC_SUPPORT_MAX_LUN];
267 uint32_t blk_size[MSC_SUPPORT_MAX_LUN];
268
269 uint64_t blk_addr;
270 uint32_t blk_len;
271
272 uint32_t data_len;
273 uint8_t data[MSC_MAX_DATA_BUF_LEN];
274
275 cbw_type cbw_struct;
276 csw_type csw_struct;
277}cdc_msc_struct_type; //cdc_struct_type;
278
279
287extern usbd_class_handler cdc_msc_class_handler; //cdc_class_handler;
288uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data);
289 error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len);
290
291void bot_scsi_init(void *udev);
292void bot_scsi_reset(void *udev);
293void bot_scsi_datain_handler(void *pudev, uint8_t ept_num);
294void bot_scsi_dataout_handler(void *pudev, uint8_t ept_num);
295void bot_cbw_decode(void *udev);
296void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len);
297void bot_scsi_send_csw(void *udev, uint8_t status);
298void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc);
299 usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count);
300void bot_scsi_stall(void *udev);
301 usb_sts_type bot_scsi_cmd_process(void *udev);
302
303 usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun);
304 usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun);
305 usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun);
306 usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun);
307 usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun);
308 usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun);
309 usb_sts_type bot_scsi_read10(void *udev, uint8_t lun);
310 usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun);
311 usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun);
312 usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun);
313 usb_sts_type bot_scsi_verify(void *udev, uint8_t lun);
314 usb_sts_type bot_scsi_write10(void *udev, uint8_t lun);
315void bot_scsi_clear_feature(void *udev, uint8_t ept_num);
316
328#ifdef __cplusplus
329}
330#endif
331
332#endif
333
334
335
336
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
cdc_msc_struct_type::cbw_struct
cbw_type cbw_struct
Definition: cdc_msc_class.h:275
cbd_typical_type::opcode
uint8_t opcode
Definition: cdc_msc_class.h:162
cbd_typical_type::address
uint32_t address
Definition: cdc_msc_class.h:164
cbd_typical_type::alloc_length
uint32_t alloc_length
Definition: cdc_msc_class.h:166
cbw_type::bCBWLUN
uint8_t bCBWLUN
Definition: cdc_msc_class.h:192
msc_type::cbw_struct
cbw_type cbw_struct
Definition: cdc_msc_class.h:242
sense_type::err_code
uint8_t err_code
Definition: cdc_msc_class.h:213
cdc_msc_struct_type::g_req
uint8_t g_req
Definition: cdc_msc_class.h:256
sense_type::ascq
uint8_t ascq
Definition: cdc_msc_class.h:220
cbw_type::bCBWCBLength
uint8_t bCBWCBLength
Definition: cdc_msc_class.h:193
cdc_msc_struct_type::alt_setting
uint32_t alt_setting
Definition: cdc_msc_class.h:253
cdc_msc_struct_type::msc_state
uint8_t msc_state
Definition: cdc_msc_class.h:262
csw_type::dCSWSignature
uint32_t dCSWSignature
Definition: cdc_msc_class.h:202
cbd_typical_type::reserved1
uint8_t reserved1
Definition: cdc_msc_class.h:165
sense_type::reserved3
uint32_t reserved3
Definition: cdc_msc_class.h:221
cbd_extended_type::alloc_length
uint32_t alloc_length
Definition: cdc_msc_class.h:179
csw_type::bCSWStatus
uint32_t bCSWStatus
Definition: cdc_msc_class.h:205
cdc_msc_struct_type::blk_len
uint32_t blk_len
Definition: cdc_msc_class.h:270
sense_type::asc
uint8_t asc
Definition: cdc_msc_class.h:219
csw_type::dCSWTag
uint32_t dCSWTag
Definition: cdc_msc_class.h:203
cbd_extended_type::opcode
uint8_t opcode
Definition: cdc_msc_class.h:175
csw_type::dCSWDataResidue
uint32_t dCSWDataResidue
Definition: cdc_msc_class.h:204
cbd_extended_type::address
uint32_t address
Definition: cdc_msc_class.h:177
cdc_msc_struct_type::csw_struct
csw_type csw_struct
Definition: cdc_msc_class.h:276
msc_type::csw_struct
csw_type csw_struct
Definition: cdc_msc_class.h:243
msc_type::blk_len
uint32_t blk_len
Definition: cdc_msc_class.h:235
sense_type::as_length
uint8_t as_length
Definition: cdc_msc_class.h:217
sense_type::reserved2
uint32_t reserved2
Definition: cdc_msc_class.h:218
cdc_msc_struct_type::blk_addr
uint64_t blk_addr
Definition: cdc_msc_class.h:269
msc_type::blk_addr
uint32_t blk_addr
Definition: cdc_msc_class.h:234
cbd_extended_type::reserved1
uint8_t reserved1
Definition: cdc_msc_class.h:178
cbd_extended_type::reserved2
uint16_t reserved2
Definition: cdc_msc_class.h:180
cdc_msc_struct_type::data_len
uint32_t data_len
Definition: cdc_msc_class.h:272
cdc_msc_struct_type::linecoding
linecoding_type linecoding
Definition: cdc_msc_class.h:259
sense_type::sense_key
uint8_t sense_key
Definition: cdc_msc_class.h:215
cbd_typical_type::lun
uint8_t lun
Definition: cdc_msc_class.h:163
cbd_typical_type::reserved2
uint16_t reserved2
Definition: cdc_msc_class.h:167
msc_type::max_lun
uint32_t max_lun
Definition: cdc_msc_class.h:229
msc_type::bot_status
uint8_t bot_status
Definition: cdc_msc_class.h:228
cbd_extended_type::lun
uint8_t lun
Definition: cdc_msc_class.h:176
msc_type::msc_state
uint8_t msc_state
Definition: cdc_msc_class.h:227
sense_type::reserved1
uint8_t reserved1
Definition: cdc_msc_class.h:214
msc_type::alt_setting
uint32_t alt_setting
Definition: cdc_msc_class.h:240
cdc_msc_struct_type::g_len
uint16_t g_len
Definition: cdc_msc_class.h:257
cbw_type::dCBWDataTransferLength
uint32_t dCBWDataTransferLength
Definition: cdc_msc_class.h:190
sense_type::information
uint32_t information
Definition: cdc_msc_class.h:216
msc_type::data_len
uint32_t data_len
Definition: cdc_msc_class.h:237
cdc_msc_struct_type::max_lun
uint32_t max_lun
Definition: cdc_msc_class.h:264
cbw_type::dCBWTage
uint32_t dCBWTage
Definition: cdc_msc_class.h:189
cbw_type::dCBWSignature
uint32_t dCBWSignature
Definition: cdc_msc_class.h:188
cdc_msc_struct_type::bot_status
uint8_t bot_status
Definition: cdc_msc_class.h:263
cdc_msc_struct_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: cdc_msc_class.h:258
cbw_type::bmCBWFlags
uint8_t bmCBWFlags
Definition: cdc_msc_class.h:191
error_status
error_status
error status
Definition: at32f403.h:314
USBD_CDC_CMD_MAXPACKET_SIZE
#define USBD_CDC_CMD_MAXPACKET_SIZE
Definition: cdc_msc_class.h:64
USBD_CDC_MSC_OUT_MAXPACKET_SIZE
#define USBD_CDC_MSC_OUT_MAXPACKET_SIZE
Definition: cdc_msc_class.h:63
bot_scsi_format_capacity
usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command format capacity
Definition: msc/msc_bot_scsi.c:504
bot_scsi_datain_handler
void bot_scsi_datain_handler(void *pudev, uint8_t ept_num)
bulk-only transport data in handler
Definition: msc/msc_bot_scsi.c:143
bot_scsi_start_stop
usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun)
bulk-only transport scsi command start stop
Definition: msc/msc_bot_scsi.c:409
bot_scsi_request_sense
usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun)
bulk-only transport scsi command request sense
Definition: msc/msc_bot_scsi.c:539
usb_vcp_get_rxdata
uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_class.c:343
bot_scsi_read10
usb_sts_type bot_scsi_read10(void *udev, uint8_t lun)
bulk-only transport scsi command read10
Definition: msc/msc_bot_scsi.c:598
bot_scsi_check_address
usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address
Definition: msc/msc_bot_scsi.c:303
bot_scsi_write10
usb_sts_type bot_scsi_write10(void *udev, uint8_t lun)
bulk-only transport scsi command write10
Definition: msc/msc_bot_scsi.c:659
bot_scsi_reset
void bot_scsi_reset(void *udev)
reset bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:125
bot_scsi_mode_sense10
usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10
Definition: msc/msc_bot_scsi.c:457
bot_scsi_sense_code
void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code
Definition: msc/msc_bot_scsi.c:288
bot_cbw_decode
void bot_cbw_decode(void *udev)
bulk-only cbw decode
Definition: msc/msc_bot_scsi.c:196
bot_scsi_verify
usb_sts_type bot_scsi_verify(void *udev, uint8_t lun)
bulk-only transport scsi command verify
Definition: msc/msc_bot_scsi.c:570
bot_scsi_allow_medium_removal
usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal
Definition: msc/msc_bot_scsi.c:423
usb_vcp_send_data
error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_class.c:373
bot_scsi_init
void bot_scsi_init(void *udev)
initialize bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:102
bot_scsi_cmd_process
usb_sts_type bot_scsi_cmd_process(void *udev)
bulk-only transport scsi command process
Definition: msc/msc_bot_scsi.c:749
bot_scsi_dataout_handler
void bot_scsi_dataout_handler(void *pudev, uint8_t ept_num)
bulk-only transport data out handler
Definition: msc/msc_bot_scsi.c:172
bot_scsi_mode_sense6
usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6
Definition: msc/msc_bot_scsi.c:437
bot_scsi_stall
void bot_scsi_stall(void *udev)
bot endpoint stall
Definition: msc/msc_bot_scsi.c:320
bot_scsi_send_data
void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len)
send bot data
Definition: msc/msc_bot_scsi.c:243
bot_scsi_test_unit
usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun)
bulk-only transport scsi command test unit
Definition: msc/msc_bot_scsi.c:346
bot_scsi_inquiry
usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun)
bulk-only transport scsi command inquiry
Definition: msc/msc_bot_scsi.c:368
bot_scsi_capacity
usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command capacity
Definition: msc/msc_bot_scsi.c:477
cdc_msc_class_handler
usbd_class_handler cdc_msc_class_handler
Definition: cdc_msc_class.c:70
bot_scsi_clear_feature
void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
clear feature
Definition: msc/msc_bot_scsi.c:729
bot_scsi_send_csw
void bot_scsi_send_csw(void *udev, uint8_t status)
send command status
Definition: msc/msc_bot_scsi.c:264
MSC_MAX_DATA_BUF_LEN
#define MSC_MAX_DATA_BUF_LEN
Definition: cdc_msc_class.h:82
MSC_SUPPORT_MAX_LUN
#define MSC_SUPPORT_MAX_LUN
Definition: cdc_msc_class.h:81
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
cbd_extended_type
extended command block description
Definition: cdc_msc_class.h:174
cbd_typical_type
typical command block description
Definition: cdc_msc_class.h:161
cbw_type
command block wrapper
Definition: cdc_msc_class.h:187
cdc_msc_struct_type
usb cdc class struct
Definition: cdc_msc_class.h:251
csw_type
command block wrapper
Definition: cdc_msc_class.h:201
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
msc_type
Definition: cdc_msc_class.h:226
sense_type
request sense standard data
Definition: cdc_msc_class.h:212
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cdc_msc_desc.c Source File

  • middlewares
  • usbd_class
  • composite_cdc_msc
cdc_msc_desc.c
Go to the documentation of this file.
1
24#include "stdio.h"
25#include "usb_std.h"
26#include "usbd_sdr.h"
27#include "usbd_core.h"
28#include "cdc_msc_desc.h"
29
43#define USB_INTERFACE_ASSOCIATION_TYPE 0x0B
44
45static usbd_desc_t *get_device_descriptor(void);
46static usbd_desc_t *get_device_qualifier(void);
47static usbd_desc_t *get_device_configuration(void);
48static usbd_desc_t *get_device_other_speed(void);
49static usbd_desc_t *get_device_lang_id(void);
50static usbd_desc_t *get_device_manufacturer_string(void);
51static usbd_desc_t *get_device_product_string(void);
52static usbd_desc_t *get_device_serial_string(void);
53static usbd_desc_t *get_device_interface_string(void);
54static usbd_desc_t *get_device_config_string(void);
55
56static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
57static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
58static void get_serial_num(void);
59#if defined ( __ICCARM__ ) /* iar compiler */
60 #pragma data_alignment=4
61#endif
62ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
63
67 usbd_desc_handler cdc_msc_desc_handler =
68{
69 get_device_descriptor,
70 get_device_qualifier,
71 get_device_configuration,
72 get_device_other_speed,
73 get_device_lang_id,
74 get_device_manufacturer_string,
75 get_device_product_string,
76 get_device_serial_string,
77 get_device_interface_string,
78 get_device_config_string,
79};
80
84#if defined ( __ICCARM__ ) /* iar compiler */
85 #pragma data_alignment=4
86#endif
87ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
88{
89 USB_DEVICE_DESC_LEN, /* bLength */
90 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
91 0x00, /* bcdUSB */
92 0x02,
93 0xEF, /* bDeviceClass */
94 0x02, /* bDeviceSubClass */
95 0x01, /* bDeviceProtocol */
96 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
97 LBYTE(USBD_CDC_MSC_VENDOR_ID), /* idVendor */
98 HBYTE(USBD_CDC_MSC_VENDOR_ID), /* idVendor */
99 LBYTE(USBD_CDC_MSC_PRODUCT_ID), /* idProduct */
100 HBYTE(USBD_CDC_MSC_PRODUCT_ID), /* idProduct */
101 0x00, /* bcdDevice rel. 2.00 */
102 0x02,
103 USB_MFC_STRING, /* Index of manufacturer string */
104 USB_PRODUCT_STRING, /* Index of product string */
105 USB_SERIAL_STRING, /* Index of serial number string */
106 1 /* bNumConfigurations */
107};
108
112#if defined ( __ICCARM__ ) /* iar compiler */
113 #pragma data_alignment=4
114#endif
115ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_CDC_MSC_CONFIG_DESC_SIZE] ALIGNED_TAIL =
116{
117 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
118 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
119 LBYTE(USBD_CDC_MSC_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
120 HBYTE(USBD_CDC_MSC_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
121 0x03, /* bNumInterfaces: 3 interface */
122 0x01, /* bConfigurationValue: configuration value */
123 0x00, /* iConfiguration: index of string descriptor describing
124 the configuration */
125 0xC0, /* bmAttributes: self powered */
126 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
127
128 // IAD (Interface Association Descriptor) for MSC
129 0x08, /* bLength */
130 USB_INTERFACE_ASSOCIATION_TYPE, /* bDescriptorType */
131 0x00, /* bFirstInterface */
132 0x01, /* bInterfaceCount */
133 0x08, /* bFunctionClass */
134 0x06, /* bFunctionSubClass */
135 0x50, /* bFunctionProtocol */
136 0x00, /* iFunction (Index of string descriptor describing this function) */
137
138 // Configuration Descriptor for MSC
139 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
140 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
141 VCPMSC_MSC_INTERFACE, /* bInterfaceNumber: number of interface */
142 0x00, /* bAlternateSetting: alternate set */
143 0x02, /* bNumEndpoints: number of endpoints */
144 USB_CLASS_CODE_MSC, /* bInterfaceClass: msc class code */
145 0x06, /* bInterfaceSubClass: subclass code scsi */
146 0x50, /* bInterfaceProtocol: protocol code BBB */
147 0x00, /* iInterface: index of string descriptor */
148
149 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
150 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
151 USBD_MSC_BULK_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
152 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
153 LBYTE(USBD_CDC_MSC_IN_MAXPACKET_SIZE),
154 HBYTE(USBD_CDC_MSC_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
155 0x00, /* bInterval: interval for polling endpoint for data transfers */
156
157 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
158 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
159 USBD_MSC_BULK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
160 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
161 LBYTE(USBD_CDC_MSC_OUT_MAXPACKET_SIZE),
162 HBYTE(USBD_CDC_MSC_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
163 0x00, /* bInterval: interval for polling endpoint for data transfers */
164
165 // IAD (Interface Association Descriptor) for CDC
166 0x08, /* bLength */
167 USB_INTERFACE_ASSOCIATION_TYPE, /* bDescriptorType */
168 0x01, /* bFirstInterface */
169 0x02, /* bInterfaceCount */
170 USB_CLASS_CODE_CDC, /* bFunctionClass */
171 0x02, /* bFunctionSubClass */
172 0x01, /* bFunctionProtocol */
173 0x00, /* iFunction (Index of string descriptor describing this function) */
174
175 // Configuration Descriptor for CDC
176 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
177 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
178 VCPMSC_CDC_INTERFACE, /* bInterfaceNumber: number of interface */
179 0x00, /* bAlternateSetting: alternate set */
180 0x01, /* bNumEndpoints: number of endpoints */
181 USB_CLASS_CODE_CDC, /* bInterfaceClass: CDC class code */
182 0x02, /* bInterfaceSubClass: subclass code, Abstract Control Model*/
183 0x01, /* bInterfaceProtocol: protocol code, AT Command */
184 0x00, /* iInterface: index of string descriptor */
185
186 0x05, /* bFunctionLength: size of this descriptor in bytes */
187 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
188 USBD_CDC_SUBTYPE_HEADER, /* bDescriptorSubtype: Header function Descriptor 0x00*/
189 LBYTE(CDC_BCD_NUM),
190 HBYTE(CDC_BCD_NUM), /* bcdCDC: USB class definitions for communications */
191
192 0x05, /* bFunctionLength: size of this descriptor in bytes */
193 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
194 USBD_CDC_SUBTYPE_CMF, /* bDescriptorSubtype: Call Management function descriptor subtype 0x01 */
195 0x00, /* bmCapabilities: 0x00*/
196 0x01, /* bDataInterface: interface number of data class interface optionally used for call management */
197
198 0x04, /* bFunctionLength: size of this descriptor in bytes */
199 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
200 USBD_CDC_SUBTYPE_ACM, /* bDescriptorSubtype: Abstract Control Management functional descriptor subtype 0x02 */
201 0x02, /* bmCapabilities: Support Set_Line_Coding and Get_Line_Coding 0x02 */
202
203 0x05, /* bFunctionLength: size of this descriptor in bytes */
204 USBD_CDC_CS_INTERFACE, /* bDescriptorType: CDC interface descriptor type */
205 USBD_CDC_SUBTYPE_UFD, /* bDescriptorSubtype: Union Function Descriptor subtype 0x06 */
206 0x01, /* bControlInterface: The interface number of the communications or data class interface 0x00 */
207 0x02, /* bSubordinateInterface0: interface number of first subordinate interface in the union */
208
209 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
210 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
211 USBD_CDC_INT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
212 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
213 LBYTE(USBD_CDC_CMD_MAXPACKET_SIZE),
214 HBYTE(USBD_CDC_CMD_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
215 CDC_HID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
216
217
218 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
219 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
220 VCPMSC_CDC_DATA_INTERFACE, /* bInterfaceNumber: number of interface */
221 0x00, /* bAlternateSetting: alternate set */
222 0x02, /* bNumEndpoints: number of endpoints */
223 USB_CLASS_CODE_CDCDATA, /* bInterfaceClass: CDC-data class code */
224 0x00, /* bInterfaceSubClass: Data interface subclass code 0x00*/
225 0x00, /* bInterfaceProtocol: data class protocol code 0x00 */
226 0x00, /* iInterface: index of string descriptor */
227
228 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
229 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
230 USBD_CDC_BULK_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
231 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
232 LBYTE(USBD_CDC_MSC_IN_MAXPACKET_SIZE),
233 HBYTE(USBD_CDC_MSC_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
234 0x00, /* bInterval: interval for polling endpoint for data transfers */
235
236 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
237 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
238 USBD_CDC_BULK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
239 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
240 LBYTE(USBD_CDC_MSC_OUT_MAXPACKET_SIZE),
241 HBYTE(USBD_CDC_MSC_OUT_MAXPACKET_SIZE),/* wMaxPacketSize: maximum packe size this endpoint */
242 0x00, /* bInterval: interval for polling endpoint for data transfers */
243
244
245};
246
250#if defined ( __ICCARM__ ) /* iar compiler */
251 #pragma data_alignment=4
252#endif
253ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_CDC_SIZ_STRING_LANGID] ALIGNED_TAIL =
254{
255 USBD_CDC_SIZ_STRING_LANGID,
256 USB_DESCIPTOR_TYPE_STRING,
257 0x09,
258 0x04,
259};
260
264#if defined ( __ICCARM__ ) /* iar compiler */
265 #pragma data_alignment=4
266#endif
267ALIGNED_HEAD static uint8_t g_string_serial[USBD_CDC_SIZ_STRING_SERIAL] ALIGNED_TAIL =
268{
269 USBD_CDC_SIZ_STRING_SERIAL,
270 USB_DESCIPTOR_TYPE_STRING,
271};
272
273
274/* device descriptor */
275static usbd_desc_t device_descriptor =
276{
277 USB_DEVICE_DESC_LEN,
278 g_usbd_descriptor
279};
280
281/* config descriptor */
282static usbd_desc_t config_descriptor =
283{
284 USBD_CDC_MSC_CONFIG_DESC_SIZE,
285 g_usbd_configuration
286};
287
288/* langid descriptor */
289static usbd_desc_t langid_descriptor =
290{
291 USBD_CDC_SIZ_STRING_LANGID,
292 g_string_lang_id
293};
294
295/* serial descriptor */
296static usbd_desc_t serial_descriptor =
297{
298 USBD_CDC_SIZ_STRING_SERIAL,
299 g_string_serial
300};
301
302static usbd_desc_t vp_desc;
303
310static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
311{
312 uint16_t str_len = 0, id_pos = 2;
313 uint8_t *tmp_str = string;
314
315 while(*tmp_str != '\0')
316 {
317 str_len ++;
318 unicode_buf[id_pos ++] = *tmp_str ++;
319 unicode_buf[id_pos ++] = 0x00;
320 }
321
322 str_len = str_len * 2 + 2;
323 unicode_buf[0] = (uint8_t)str_len;
324 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
325
326 return str_len;
327}
328
336static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
337{
338 uint8_t idx = 0;
339
340 for( idx = 0 ; idx < len ; idx ++)
341 {
342 if( ((value >> 28)) < 0xA )
343 {
344 pbuf[ 2 * idx] = (value >> 28) + '0';
345 }
346 else
347 {
348 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
349 }
350
351 value = value << 4;
352
353 pbuf[2 * idx + 1] = 0;
354 }
355}
356
362static void get_serial_num(void)
363{
364 uint32_t serial0, serial1, serial2;
365
366 serial0 = *(uint32_t*)MCU_ID1;
367 serial1 = *(uint32_t*)MCU_ID2;
368 serial2 = *(uint32_t*)MCU_ID3;
369
370 serial0 += serial2;
371
372 if (serial0 != 0)
373 {
374 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
375 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
376 }
377}
378
384static usbd_desc_t *get_device_descriptor(void)
385{
386 return &device_descriptor;
387}
388
394static usbd_desc_t * get_device_qualifier(void)
395{
396 return NULL;
397}
398
404static usbd_desc_t *get_device_configuration(void)
405{
406 return &config_descriptor;
407}
408
414static usbd_desc_t *get_device_other_speed(void)
415{
416 return NULL;
417}
418
424static usbd_desc_t *get_device_lang_id(void)
425{
426 return &langid_descriptor;
427}
428
429
435static usbd_desc_t *get_device_manufacturer_string(void)
436{
437 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
438 vp_desc.descriptor = g_usbd_desc_buffer;
439 return &vp_desc;
440}
441
447static usbd_desc_t *get_device_product_string(void)
448{
449 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
450 vp_desc.descriptor = g_usbd_desc_buffer;
451 return &vp_desc;
452}
453
459static usbd_desc_t *get_device_serial_string(void)
460{
461 get_serial_num();
462 return &serial_descriptor;
463}
464
470static usbd_desc_t *get_device_interface_string(void)
471{
472 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
473 vp_desc.descriptor = g_usbd_desc_buffer;
474 return &vp_desc;
475}
476
482static usbd_desc_t *get_device_config_string(void)
483{
484 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CDC_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
485 vp_desc.descriptor = g_usbd_desc_buffer;
486 return &vp_desc;
487}
488
cdc_msc_desc.h
usb cdc descriptor header file
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
USBD_CDC_CMD_MAXPACKET_SIZE
#define USBD_CDC_CMD_MAXPACKET_SIZE
Definition: cdc_class.h:60
USBD_CDC_MSC_OUT_MAXPACKET_SIZE
#define USBD_CDC_MSC_OUT_MAXPACKET_SIZE
Definition: cdc_msc_class.h:63
USBD_CDC_BULK_OUT_EPT
#define USBD_CDC_BULK_OUT_EPT
Definition: cdc_class.h:53
USBD_CDC_MSC_IN_MAXPACKET_SIZE
#define USBD_CDC_MSC_IN_MAXPACKET_SIZE
usb cdc in and out max packet size define
Definition: cdc_msc_class.h:61
USBD_CDC_INT_EPT
#define USBD_CDC_INT_EPT
usb cdc use endpoint define
Definition: cdc_class.h:51
USBD_CDC_BULK_IN_EPT
#define USBD_CDC_BULK_IN_EPT
Definition: cdc_class.h:52
USBD_MSC_BULK_IN_EPT
#define USBD_MSC_BULK_IN_EPT
Definition: cdc_msc_class.h:55
USBD_MSC_BULK_OUT_EPT
#define USBD_MSC_BULK_OUT_EPT
Definition: cdc_msc_class.h:56
CDC_BCD_NUM
#define CDC_BCD_NUM
usb bcd number define
Definition: cdc_desc.h:50
USBD_CDC_DESC_MANUFACTURER_STRING
#define USBD_CDC_DESC_MANUFACTURER_STRING
usb string define(vendor, product configuration, interface)
Definition: cdc_desc.h:68
USBD_CDC_DESC_CONFIGURATION_STRING
#define USBD_CDC_DESC_CONFIGURATION_STRING
Definition: cdc_desc.h:70
USBD_CDC_SIZ_STRING_LANGID
#define USBD_CDC_SIZ_STRING_LANGID
Definition: cdc_desc.h:62
USBD_CDC_DESC_PRODUCT_STRING
#define USBD_CDC_DESC_PRODUCT_STRING
Definition: cdc_desc.h:69
VCPMSC_MSC_INTERFACE
#define VCPMSC_MSC_INTERFACE
usb interface define
Definition: cdc_msc_desc.h:82
USBD_CDC_MSC_CONFIG_DESC_SIZE
#define USBD_CDC_MSC_CONFIG_DESC_SIZE
usb descriptor size define
Definition: cdc_msc_desc.h:62
CDC_HID_BINTERVAL_TIME
#define CDC_HID_BINTERVAL_TIME
usb endpoint interval define
Definition: cdc_desc.h:76
VCPMSC_CDC_INTERFACE
#define VCPMSC_CDC_INTERFACE
Definition: cdc_msc_desc.h:83
USBD_CDC_SIZ_STRING_SERIAL
#define USBD_CDC_SIZ_STRING_SERIAL
Definition: cdc_desc.h:63
USBD_CDC_DESC_INTERFACE_STRING
#define USBD_CDC_DESC_INTERFACE_STRING
Definition: cdc_desc.h:71
USBD_CDC_MSC_PRODUCT_ID
#define USBD_CDC_MSC_PRODUCT_ID
Definition: cdc_msc_desc.h:56
VCPMSC_CDC_DATA_INTERFACE
#define VCPMSC_CDC_DATA_INTERFACE
Definition: cdc_msc_desc.h:84
USBD_CDC_MSC_VENDOR_ID
#define USBD_CDC_MSC_VENDOR_ID
usb vendor id and product id define
Definition: cdc_msc_desc.h:55
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: cdc_msc_desc.c:296
cdc_msc_desc_handler
usbd_desc_handler cdc_msc_desc_handler
device descriptor handler structure
Definition: cdc_msc_desc.c:67
USB_INTERFACE_ASSOCIATION_TYPE
#define USB_INTERFACE_ASSOCIATION_TYPE
Definition: cdc_msc_desc.c:43
device_descriptor
static usbd_desc_t device_descriptor
Definition: cdc_msc_desc.c:275
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: cdc_msc_desc.c:404
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: cdc_msc_desc.c:289
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: cdc_msc_desc.c:384
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: cdc_msc_desc.c:435
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: cdc_msc_desc.c:394
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: cdc_msc_desc.c:470
vp_desc
static usbd_desc_t vp_desc
Definition: cdc_msc_desc.c:302
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: cdc_msc_desc.c:414
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: cdc_msc_desc.c:62
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: cdc_msc_desc.c:447
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: cdc_msc_desc.c:482
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: cdc_msc_desc.c:310
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: cdc_msc_desc.c:424
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: cdc_msc_desc.c:362
config_descriptor
static usbd_desc_t config_descriptor
Definition: cdc_msc_desc.c:282
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: cdc_msc_desc.c:459
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: cdc_msc_desc.c:336
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
USB_CLASS_CODE_MSC
#define USB_CLASS_CODE_MSC
Definition: usb_std.h:163
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USBD_CDC_SUBTYPE_CMF
#define USBD_CDC_SUBTYPE_CMF
Definition: usb_std.h:197
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_EPT_DESC_BULK
#define USB_EPT_DESC_BULK
Definition: usb_std.h:175
USBD_CDC_SUBTYPE_HEADER
#define USBD_CDC_SUBTYPE_HEADER
usb cdc class sub-type define
Definition: usb_std.h:196
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USBD_CDC_CS_INTERFACE
#define USBD_CDC_CS_INTERFACE
usb cdc class descriptor define
Definition: usb_std.h:190
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_CLASS_CODE_CDCDATA
#define USB_CLASS_CODE_CDCDATA
Definition: usb_std.h:165
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_CLASS_CODE_CDC
#define USB_CLASS_CODE_CDC
Definition: usb_std.h:160
USBD_CDC_SUBTYPE_UFD
#define USBD_CDC_SUBTYPE_UFD
Definition: usb_std.h:199
USBD_CDC_SUBTYPE_ACM
#define USBD_CDC_SUBTYPE_ACM
Definition: usb_std.h:198
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: cdc_msc_desc.h Source File

  • middlewares
  • usbd_class
  • composite_cdc_msc
cdc_msc_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CDC_MSC_DESC_H
27#define __CDC_MSC_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "cdc_msc_class.h"
34#include "usbd_core.h"
35
50#define CDC_BCD_NUM 0x0110
51
55#define USBD_CDC_MSC_VENDOR_ID 0x2E3C
56#define USBD_CDC_MSC_PRODUCT_ID 0x5760
57
62#define USBD_CDC_MSC_CONFIG_DESC_SIZE 106
63#define USBD_CDC_SIZ_STRING_LANGID 4
64#define USBD_CDC_SIZ_STRING_SERIAL 0x1A
65
69#define USBD_CDC_DESC_MANUFACTURER_STRING "Artery"
70#define USBD_CDC_DESC_PRODUCT_STRING "AT32 Composite VCP and MSC "
71#define USBD_CDC_DESC_CONFIGURATION_STRING "Composite VCP and MSC Config"
72#define USBD_CDC_DESC_INTERFACE_STRING "Composite VCP and MSC Interface"
73
77#define CDC_HID_BINTERVAL_TIME 0xFF
78
82#define VCPMSC_MSC_INTERFACE 0x00
83#define VCPMSC_CDC_INTERFACE 0x01
84#define VCPMSC_CDC_DATA_INTERFACE 0x02
85
86
90#define MCU_ID1 (0x1FFFF7E8)
91#define MCU_ID2 (0x1FFFF7EC)
92#define MCU_ID3 (0x1FFFF7F0)
97extern usbd_desc_handler cdc_msc_desc_handler;
98
99
107#ifdef __cplusplus
108}
109#endif
110
111#endif
cdc_msc_class.h
usb cdc class file
cdc_msc_desc_handler
usbd_desc_handler cdc_msc_desc_handler
device descriptor handler structure
Definition: cdc_msc_desc.c:67
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: cf.c Source File

  • xmc
  • pc_card
  • pc_card
cf.c
Go to the documentation of this file.
1
25/* Includes ------------------------------------------------------------------*/
26#include "cf.h"
27#include "at32f403.h"
28#include "at32f403_board.h"
29#include <string.h>
30#include <stdlib.h>
31#include <stdio.h>
32
41 dma_init_type DMA_InitStructure;
42 u16 DMA1_MEM_LEN;
43/* Private typedef -----------------------------------------------------------*/
44/* Private define ------------------------------------------------------------*/
49#define PCCARD_TIMEOUT_READ_ID (uint32_t)0x0000FFFF
50#define PCCARD_TIMEOUT_SECTOR (uint32_t)0x0000FFFF
51#define PCCARD_TIMEOUT_STATUS (uint32_t)0x01000000
52
53#define PCCARD_STATUS_OK (uint8_t)0x58
54#define PCCARD_STATUS_WRITE_OK (uint8_t)0x50
59/* Private macro -------------------------------------------------------------*/
60/* Private variables ---------------------------------------------------------*/
61/* Private function prototypes -----------------------------------------------*/
62/* Exported functions ---------------------------------------------------------*/
63
94void MYDMA_Config(dma_channel_type* DMAy_channelx, uint32_t cpar_src, uint32_t cmar_dst, uint32_t cndtr, uint8_t Transfer_Type, uint8_t Transfer_Width)
95{
96 dma_init_type DMA_InitStruct;
97 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
98
99 dma_reset(DMAy_channelx);
100
101 if(Transfer_Type == Read_Transfer)
102 {
103 DMA_InitStruct.peripheral_inc_enable = FALSE;
104 DMA_InitStruct.memory_inc_enable = TRUE;
105 }
106 else
107 {
108 DMA_InitStruct.peripheral_inc_enable = TRUE;
109 DMA_InitStruct.memory_inc_enable = FALSE;
110 }
111
112 if(Transfer_Width == Enable_8_bit_Transfer)
113 {
114 DMA_InitStruct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
115 DMA_InitStruct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
116 }
117 else
118 {
119 DMA_InitStruct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
120 DMA_InitStruct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
121 }
122
123 DMA_InitStruct.direction = DMA_DIR_MEMORY_TO_MEMORY;
124 DMA_InitStruct.buffer_size = cndtr;
125 DMA_InitStruct.peripheral_base_addr = cpar_src;
126
127 DMA_InitStruct.memory_base_addr = cmar_dst;
128
129 DMA_InitStruct.loop_mode_enable = FALSE;
130 DMA_InitStruct.priority = DMA_PRIORITY_MEDIUM;
131 dma_init(DMAy_channelx,&DMA_InitStruct);
132
133
134 dma_channel_enable(DMAy_channelx, TRUE);
135}
143 StatusType XMC_PCCARD_InitCtrl(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
144{
145 if(Set_reg_8_bit == 1)
146 {
147 Device->bk4ctrl_bit.extmdbw = 0x0;
148 }
149 else
150 {
151 Device->bk4ctrl_bit.extmdbw = 0x1;
152 }
153
154 Device->bk4ctrl_bit.tar = Init->delay_time_ar;
155 Device->bk4ctrl_bit.tcr = Init->delay_time_cr;
156
157 return STATUS_OK;
158
159}
166 StatusType XMC_Enable_Wait_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init)
167{
168
169 Device->bk4ctrl_bit.nwen = Init->enable_wait;
170
171 return STATUS_OK;
172}
180 StatusType XMC_Enable_16bit_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
181{
182 if(Set_reg_8_bit == 1)
183 {
184 Device->bk4ctrl_bit.extmdbw = 0x0;
185 }
186 else
187 {
188 Device->bk4ctrl_bit.extmdbw = 0x1;
189 }
190
191 return STATUS_OK;
192}
199 StatusType XMC_PCCARD_InitCommonSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
200{
201 Device->bk4tmgmem_bit.cmdhizt = Timing->mem_hiz_time;
202 Device->bk4tmgmem_bit.cmht = Timing->mem_hold_time;
203 Device->bk4tmgmem_bit.cmst = Timing->mem_setup_time;
204 Device->bk4tmgmem_bit.cmwt = Timing->mem_waite_time;
205
206 return STATUS_OK;
207}
214 StatusType XMC_PCCARD_InitAttributeSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
215{
216 Device->bk4tmgatt_bit.amdhizt = Timing->mem_hiz_time;
217 Device->bk4tmgatt_bit.amht = Timing->mem_hold_time;
218 Device->bk4tmgatt_bit.amst = Timing->mem_setup_time;
219 Device->bk4tmgatt_bit.amwt = Timing->mem_waite_time;
220 return STATUS_OK;
221}
222/*****************************************************************/
229 StatusType XMC_PCCARD_InitIOSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
230{
231
232 Device->bk4tmgio_bit.iohizt = Timing->mem_hiz_time;
233 Device->bk4tmgio_bit.ioht = Timing->mem_hold_time;
234 Device->bk4tmgio_bit.iost = Timing->mem_setup_time;
235 Device->bk4tmgio_bit.iowt = Timing->mem_waite_time;
236
237 return STATUS_OK;
238}
239/*****************************************************************/
249 StatusType PCCARD_Init(PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming)
250{
251 gpio_init_type GPIO_InitStructure;
252 uint8_t Set_reg_8_bit;
253
254 /* Check the PCCARD controller state */
255 if(hpccard == NULL)
256 {
257 return STATUS_ERROR;
258 }
259
260 if(hpccard->CF.Enable_8_bit_mode == TRUE)
261 Set_reg_8_bit = 1;
262 else
263 Set_reg_8_bit = 0;
264
265
266 if(hpccard->State == PCCARD_STATE_RESET)
267 {
268 /* Allocate lock resource and initialize it */
269 hpccard->Lock = UNLOCKED;
270
271 }
272
273 /* Initialize the PCCARD state */
274 hpccard->State = PCCARD_STATE_BUSY;
275
276
277 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK,TRUE);
278 crm_periph_clock_enable(CRM_GPIOE_PERIPH_CLOCK,TRUE);
279 crm_periph_clock_enable(CRM_GPIOF_PERIPH_CLOCK,TRUE);
280 crm_periph_clock_enable(CRM_GPIOG_PERIPH_CLOCK,TRUE);
281 /* address line:PF0 PF1 PF2 PF3 PF4 PF5 PF12 PF13 PF14 PF15 PG0 */
282
283 gpio_default_para_init(&GPIO_InitStructure);
284 GPIO_InitStructure.gpio_pins = GPIO_PINS_0|GPIO_PINS_1|GPIO_PINS_2|GPIO_PINS_3|GPIO_PINS_4|GPIO_PINS_5|GPIO_PINS_12|GPIO_PINS_13|GPIO_PINS_14|GPIO_PINS_15;
285 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
286 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
287 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
288 GPIO_InitStructure.gpio_pull = GPIO_PULL_NONE;
289 gpio_init(GPIOF, &GPIO_InitStructure);
290
291 gpio_default_para_init(&GPIO_InitStructure);
292 GPIO_InitStructure.gpio_pins = GPIO_PINS_0;
293 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
294 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
295 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
296 GPIO_InitStructure.gpio_pull = GPIO_PULL_NONE;
297 gpio_init(GPIOG, &GPIO_InitStructure);
298
299 /* data line: PD14 PD15 PD0 PD1 PE7 PE8 PE9 PE10 PE11 PE12 PE13 PE14 PE15 PD8 PD9 PD10 */
300
301 gpio_default_para_init(&GPIO_InitStructure);
302 GPIO_InitStructure.gpio_pins = GPIO_PINS_14|GPIO_PINS_15|GPIO_PINS_0|GPIO_PINS_1|GPIO_PINS_8|GPIO_PINS_9|GPIO_PINS_10;
303 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
304 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
305 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
306 GPIO_InitStructure.gpio_pull = GPIO_PULL_NONE;
307 gpio_init(GPIOD, &GPIO_InitStructure);
308
309 gpio_default_para_init(&GPIO_InitStructure);
310 GPIO_InitStructure.gpio_pins = GPIO_PINS_11|GPIO_PINS_12|GPIO_PINS_13|GPIO_PINS_14|GPIO_PINS_15|GPIO_PINS_7|GPIO_PINS_8|GPIO_PINS_9|GPIO_PINS_10;
311 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
312 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
313 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
314 GPIO_InitStructure.gpio_pull = GPIO_PULL_NONE;
315 gpio_init(GPIOE, &GPIO_InitStructure);
316
317 /* XMC_NCE4_1/XMC_NCE4_2:PG10/PG11 XMC_NOE:PD4 XMC_NWE:PD5 XMC_NWAIT:PD6 */
318 /* XMC_NIORD:PF6 XMC_NIOWR:PF8 XMC_NREG:PF7 XMC_INTR:PF10 XMC_CD:PF9 XMC_NIOS16:PF11 */
319
320 gpio_default_para_init(&GPIO_InitStructure);
321 GPIO_InitStructure.gpio_pins = GPIO_PINS_4|GPIO_PINS_6|GPIO_PINS_5;
322 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
323 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
324 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
325 GPIO_InitStructure.gpio_pull = GPIO_PULL_UP;
326 gpio_init(GPIOD, &GPIO_InitStructure);
327
328 gpio_default_para_init(&GPIO_InitStructure);
329 GPIO_InitStructure.gpio_pins = GPIO_PINS_6;
330 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
331 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
332 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
333 GPIO_InitStructure.gpio_pull = GPIO_PULL_NONE;
334 gpio_init(GPIOD, &GPIO_InitStructure);
335
336 gpio_default_para_init(&GPIO_InitStructure);
337 GPIO_InitStructure.gpio_pins = GPIO_PINS_10|GPIO_PINS_11;
338 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
339 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
340 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
341 GPIO_InitStructure.gpio_pull = GPIO_PULL_NONE;
342 gpio_init(GPIOG, &GPIO_InitStructure);
343
344 gpio_default_para_init(&GPIO_InitStructure);
345 GPIO_InitStructure.gpio_pins = GPIO_PINS_9|GPIO_PINS_6|GPIO_PINS_7|GPIO_PINS_8|GPIO_PINS_10|GPIO_PINS_11;
346 GPIO_InitStructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
347 GPIO_InitStructure.gpio_mode = GPIO_MODE_MUX;
348 GPIO_InitStructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
349 GPIO_InitStructure.gpio_pull = GPIO_PULL_NONE;
350 gpio_init(GPIOF, &GPIO_InitStructure);
351
352 /* Initialize PCCARD control Interface */
353 XMC_PCCARD_InitCtrl(hpccard->Instance, &(hpccard->Init), Set_reg_8_bit);
354
355 /* Init PCCARD common space timing Interface */
356 XMC_PCCARD_InitCommonSpaceTiming(hpccard->Instance, ComSpaceTiming);
357
358 /* Init PCCARD attribute space timing Interface */
359 XMC_PCCARD_InitAttributeSpaceTiming(hpccard->Instance, AttSpaceTiming);
360
361 /* Init PCCARD IO space timing Interface */
362 XMC_PCCARD_InitIOSpaceTiming(hpccard->Instance, IOSpaceTiming);
363
364 /* Enable the PCCARD device */
365 xmc_pccard_enable(TRUE);
366
367 /* Update the PCCARD state */
368 hpccard->State = PCCARD_STATE_READY;
369
370 return STATUS_OK;
371
372}
379 StatusType Enable_Wait_Feature(PCCARD_HandleType *hpccard)
380{
381 /* Check the PCCARD controller state */
382 if(hpccard == NULL)
383 {
384 return STATUS_ERROR;
385 }
386
387 if(hpccard->State == PCCARD_STATE_RESET)
388 {
389 /* Allocate lock resource and initialize it */
390 hpccard->Lock = UNLOCKED;
391 }
392
393 /* Initialize the PCCARD state */
394 hpccard->State = PCCARD_STATE_BUSY;
395
396 XMC_Enable_Wait_Feature(hpccard->Instance, &(hpccard->Init));
397
398 hpccard->State = PCCARD_STATE_READY;
399
400 return STATUS_OK;
401}
402
409 StatusType PCCARD_DeInit(PCCARD_HandleType *hpccard)
410{
411
412 /* Configure the PCCARD registers with their reset values */
413 xmc_pccard_reset();
414
415 /* Update the PCCARD controller state */
416 hpccard->State = PCCARD_STATE_RESET;
417 return STATUS_OK;
418}
419
420
444 BOOL PCCARD_Identify(PCCARD_HandleType *hpccard)
445{
446 uint8_t Reg;
447
448 Reg = hpccard->CF.CFAddr.Drv;
449
450 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
451 if(!CF_SendCommand(hpccard, ATA_IDENTIFY_DRIVE_CMD))
452 {
453 return FALSE;
454 }
455
456 return TRUE;
457}
458
459
468 BOOL PCCARD_Read_ID(PCCARD_HandleType *hpccard)
469{
470 uint8_t CardInfo[PCCARD_SECTOR_SIZE * sizeof(uint8_t)] = {0};
471
472 memset(CardInfo, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
473 PCCARD_Read_STATUS_REG(hpccard);
474
475 if(PCCARD_Identify(hpccard))
476 {
477 while(1)
478 {
479 if(TaskFileRegIsValid(hpccard))
480 {
481 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
482 {
483 /* Read CF ID bytes */
484
485 Read_Sector(hpccard, CardInfo, PCCARD_SECTOR_SIZE);
486
487 break;
488 }
489 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
490 {
491 printf("\r\nCommand Pass, but ERR bit is high");
492 printf("\r\nCF Status Reg=%#x", PCCARD_Read_STATUS_REG(hpccard));
493 printf("\r\nCF Error Reg=%#x", PCCARD_Read_ERROR_REG(hpccard));
494 return FALSE;
495 }
496 }
497 }
498 }
499
500 while(1)
501 {
502 if(TaskFileRegIsValid(hpccard))
503 {
504 if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x50)
505 {
506 break;
507 }
508 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
509 {
510 printf("\r\nSend Command Failed");
511 printf("\r\nCF Status Reg=%#x", PCCARD_Read_STATUS_REG(hpccard));
512 printf("\r\nCF Error Reg=%#x", PCCARD_Read_ERROR_REG(hpccard));
513 return FALSE;
514 }
515 }
516 }
517
518#if 1
519
520 printf("\r\n===============================================================\n");
521 printf("\r\n\nIdentify Drive Information : ");
522 printf("\r\n%s%#x", "Signature : ", ((uint16_t)CardInfo[0] | (uint16_t)CardInfo[1] << 8));
523 printf("\r\n%s%u", "Default number of cylinders : ", ((uint16_t)CardInfo[2] | (uint16_t)CardInfo[3] << 8));
524 printf("\r\n%s%u", "Default number of heads : ", ((uint16_t)CardInfo[6] | (uint16_t)CardInfo[7] << 8));
525 printf("\r\n%s%u", "Number of unformatted bytes per tract : ", ((uint16_t)CardInfo[8] | (uint16_t)CardInfo[9] << 8));
526 printf("\r\n%s%u", "Number of unformatted bytes per sector : ", ((uint16_t)CardInfo[10] | (uint16_t)CardInfo[11] << 8));
527 printf("\r\n%s%u", "Default number of sectors per track : ", ((uint16_t)CardInfo[12] | (uint16_t)CardInfo[13] << 8));
528 printf("\r\n%s%u", "Number of sectors per card : ", (uint32_t)((uint16_t)CardInfo[16] | (uint16_t)CardInfo[17] << 8) | ((uint32_t)((uint16_t)CardInfo[14] | (uint16_t)CardInfo[15] << 8) << 16));
529 printf("\r\n%s%u", "Vendor Unique : ", ((uint16_t)CardInfo[18] | (uint16_t)CardInfo[19] << 8));
530 printf("\r\n%s%#x", "Buffer type : ", ((uint16_t)CardInfo[40] | (uint16_t)CardInfo[41] << 8));
531 printf("\r\n%s%u", "Buffer size in 512 byte increments : ", ((uint16_t)CardInfo[42] | (uint16_t)CardInfo[43] << 8));
532 printf("\r\n%s%u", "#of ECC bytes passed on Read/Write Long Commands : ", ((uint16_t)CardInfo[44] | (uint16_t)CardInfo[45] << 8));
533 printf("\r\n%s%u", "Maximum number of sectors on Read/Write Multiple command : ", ((uint16_t)CardInfo[94] | (uint16_t)CardInfo[95] << 8));
534 printf("\r\n%s%u", "Double Word not supported : ", ((uint16_t)CardInfo[96] | (uint16_t)CardInfo[97] << 8));
535 printf("\r\n%s%u", "Capabilities : ", ((uint16_t)CardInfo[98] | (uint16_t)CardInfo[99] << 8));
536 printf("\r\n%s%u", "PIO data transfer cycle timing mode : ", ((uint16_t)CardInfo[102] | (uint16_t)CardInfo[103] << 8));
537 printf("\r\n%s%u", "DMA data transfer cycle timing mode: ", ((uint16_t)CardInfo[104] | (uint16_t)CardInfo[105] << 8));
538 printf("\r\n%s%u", "Translation parameters are valid : ", ((uint16_t)CardInfo[106] | (uint16_t)CardInfo[107] << 8));
539 printf("\r\n%s%u", "Current numbers of cylinders : ", ((uint16_t)CardInfo[108] | (uint16_t)CardInfo[109] << 8));
540 printf("\r\n%s%u", "Current numbers of heads : ", ((uint16_t)CardInfo[110] | (uint16_t)CardInfo[111] << 8));
541 printf("\r\n%s%u", "Current sectors per track : ", ((uint16_t)CardInfo[112] | (uint16_t)CardInfo[113] << 8));
542 printf("\r\n%s%u", "Current capacity in sectors : ", (uint32_t)((uint16_t)CardInfo[116] | (uint16_t)CardInfo[117] << 8) | ((uint32_t)((uint16_t)CardInfo[114] | (uint16_t)CardInfo[115] << 8) << 16));
543 printf("\r\n%s%#x", "Multiple sector setting : ", ((uint16_t)CardInfo[118] | (uint16_t)CardInfo[119] << 8));
544 printf("\r\n%s%u", "Total number of sectors addressable in LBA Mode : ", (uint32_t)((uint16_t)CardInfo[120] | (uint16_t)CardInfo[121] << 8) | ((uint32_t)((uint16_t)CardInfo[122] | (uint16_t)CardInfo[123] << 8) << 16));
545 printf("\r\n%s%#x", "Security status : ", ((uint16_t)CardInfo[256] | (uint16_t)CardInfo[257] << 8));
546 printf("\r\n%s%#x", "Power requirement description : ", ((uint16_t)CardInfo[320] | (uint16_t)CardInfo[321] << 8));
547 printf("\r\n===============================================================");
548
549#endif
550
551 /* signature of CF storage */
552 if(((uint16_t)CardInfo[0] | (uint16_t)CardInfo[1] << 8) == 0x848A)
553 {
554 hpccard->CF.CFCardInfo.Default_Cylinder = ((uint16_t)CardInfo[2] | (uint16_t)CardInfo[3] << 8);
555 hpccard->CF.CFCardInfo.Default_Head = ((uint16_t)CardInfo[6] | (uint16_t)CardInfo[7] << 8);
556 hpccard->CF.CFCardInfo.Default_Sector = ((uint16_t)CardInfo[12] | (uint16_t)CardInfo[13] << 8);
557 hpccard->CF.CFCardInfo.Current_Cylinder = ((uint16_t)CardInfo[108] | (uint16_t)CardInfo[109] << 8);
558 hpccard->CF.CFCardInfo.Current_Head = ((uint16_t)CardInfo[110] | (uint16_t)CardInfo[111] << 8);
559 hpccard->CF.CFCardInfo.Current_Sector = ((uint16_t)CardInfo[112] | (uint16_t)CardInfo[113] << 8);
560
561 hpccard->CF.CFCardInfo.Total_Sector = (uint32_t)((uint16_t)CardInfo[16] | (uint16_t)CardInfo[17] << 8) | ((uint32_t)((uint16_t)CardInfo[14] | (uint16_t)CardInfo[15] << 8) << 16);
562 hpccard->CF.CFCardInfo.Total_LBA_Sector = (uint32_t)((uint16_t)CardInfo[120] | (uint16_t)CardInfo[121] << 8) | ((uint32_t)((uint16_t)CardInfo[122] | (uint16_t)CardInfo[123] << 8) << 16);
563 hpccard->CF.CFCardInfo.Max_Mutiple_Sector = ((uint16_t)CardInfo[94] | (uint16_t)CardInfo[95] << 8);
564 hpccard->CF.CFCardInfo.Mutiple_Sector_Setting = ((uint16_t)CardInfo[118] | (uint16_t)CardInfo[119] << 8);
565 }
566 else
567 {
568
569 return FALSE;
570 }
571
572 return TRUE;
573}
574
583 BOOL PCCARD_Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
584{
585 uint16_t Count = 0;
586 uint8_t Reg;
587
588 if(Sector_Count == 0)
589 {
590 Sector_Count = 256;
591 }
592
593 while(Count < Sector_Count)
594 {
595
596 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
597 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
598
599 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
600 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
601 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
602 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = (uint8_t)hpccard->CF.CFAddr.Sector_Count;
603 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
604
605 if(CF_SendCommand(hpccard, ATA_READ_SECTOR_CMD))
606 {
607 while(1)
608 {
609 if(TaskFileRegIsValid(hpccard))
610 {
611 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
612 {
613 pBuffer = Read_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
614
615 Sector_Address += 1;
616 Count += 1;
617
618 if (Count == Sector_Count)
619 {
620 break;
621 }
622
623 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
624 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
625 {
626 break;
627 }
628 }
629 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
630 {
631 return FALSE;
632 }
633 }
634 }
635 }
636
637 while(1)
638 {
639 if(TaskFileRegIsValid(hpccard))
640 {
641 if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x50)
642 {
643 break;
644 }
645 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
646 {
647 printf("Error Code=%X\n", PCCARD_Read_STATUS_REG(hpccard));
648 return FALSE;
649 }
650 }
651 }
652 }
653
654 return TRUE;
655}
656
657
666 BOOL PCCARD_Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
667{
668 uint16_t Count = 0;
669 uint8_t Reg;
670
671 if(Sector_Count == 0)
672 {
673 Sector_Count = 256;
674 }
675
676 while(Count < Sector_Count)
677 {
678 // Set the parameters to write a sector //
679 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
680 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
681
682 //*(__IO uint16_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = hpccard->CF.CFAddr.Cylinder;
683 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
684 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
685 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
686 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = (uint8_t)hpccard->CF.CFAddr.Sector_Count;
687 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
688
689 if(CF_SendCommand(hpccard, ATA_WRITE_SECTOR_CMD))
690 {
691 while(1)
692 {
693 if(TaskFileRegIsValid(hpccard))
694 {
695 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
696 {
697 pBuffer = Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
698
699 Sector_Address += 1;
700 Count += 1;
701
702 if (Count == Sector_Count)
703 {
704 break;
705 }
706
707 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
708 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
709 {
710 break;
711 }
712 }
713 else if (PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
714 {
715 return FALSE;
716 }
717 }
718 }
719 }
720
721 while(1)
722 {
723 if(TaskFileRegIsValid(hpccard))
724 {
725 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
726 {
727 break;
728 }
729 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
730 {
731 printf("Error Code=%X\n", PCCARD_Read_STATUS_REG(hpccard));
732 return FALSE;
733 }
734 }
735 }
736 }
737
738 return TRUE;
739}
740
741
749 BOOL PCCARD_Erase_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count)
750{
751 uint8_t Reg;
752 uint16_t Count = 0;
753
754 while (Count < Sector_Count)
755 {
756
757 Translate_CHSAddr(hpccard, Sector_Address, 0, Sector_Count);
758 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
759
760 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
761 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
762 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
763 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
764 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
765
766 if(CF_SendCommand(hpccard, ATA_ERASE_SECTOR_CMD))
767 {
768 Count += hpccard->CF.CFAddr.Sector_Count;
769 Sector_Address += hpccard->CF.CFAddr.Sector_Count;
770 }
771
772 while(1)
773 {
774 if(TaskFileRegIsValid(hpccard))
775 {
776 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
777 {
778 break;
779 }
780 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
781 {
782 return FALSE;
783 }
784 }
785 }
786 }
787
788 return TRUE;
789}
796 BOOL PCCARD_Diagnostic(PCCARD_HandleType *hpccard)
797{
798 uint8_t ERROR_REG;
799
800 /* Set the parameters */
801 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
802
803 if(!CF_SendCommand(hpccard, ATA_EXECUTE_DRIVE_DIAG_CMD))
804 {
805 return FALSE;
806 }
807
808 ERROR_REG = PCCARD_Read_ERROR_REG(hpccard);
809
810 if((ERROR_REG == 0x01) || (ERROR_REG == 0x02) || (ERROR_REG == 0x03) || (ERROR_REG == 0x04) || (ERROR_REG == 0x05) || (ERROR_REG == 0x80))
811 {
812 return TRUE;
813 }
814 else
815 {
816 return FALSE;
817 }
818}
825 BOOL PCCARD_Check_Power_Mode(PCCARD_HandleType *hpccard)
826{
827 uint8_t SECTOR_COUNT_REG;
828 /* set sector_count register 0x80, after check_power_mode */
829 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = 0x80;
830 /* the register will be change to 0x00 or 0xFF */
831
832 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
833
834 if(!CF_SendCommand(hpccard, ATA_CHECK_POWER_MODE_CMD))
835 {
836 return FALSE;
837 }
838
839 SECTOR_COUNT_REG = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT);
840
841 if(SECTOR_COUNT_REG == 0xFF || SECTOR_COUNT_REG == 0x00)
842 {
843 return TRUE;
844 }
845 else
846 {
847 return FALSE;
848 }
849}
857 BOOL PCCARD_Idle(PCCARD_HandleType *hpccard, uint32_t Sector_Count)
858{
859 uint8_t SECTOR_COUNT_REG;
860
861 hpccard->CF.CFAddr.Sector_Count = Sector_Count;
862
863 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
864 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
865
866 if(!CF_SendCommand(hpccard, ATA_IDLE_CMD))
867 {
868 return FALSE;
869 }
870
871
872 /* Check Power Mode */
873 if(!PCCARD_Check_Power_Mode(hpccard))
874 {
875 printf("Compact Flash Check Power Mode Failed \n");
876 return FALSE;
877 }
878
879 SECTOR_COUNT_REG = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT);
880
881 if(SECTOR_COUNT_REG == 0xFF)
882 {
883 return TRUE;
884 }
885 else
886 {
887 return FALSE;
888 }
889}
896 BOOL PCCARD_Idle_Immediate(PCCARD_HandleType *hpccard)
897{
898 uint8_t SECTOR_COUNT_REG;
899 /* set sector_count register 0x80, after check_power_mode */
900 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = 0x80;
901 /* the register will be change to 0x00 or 0xFF */
902
903 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
904
905 if(!CF_SendCommand(hpccard, ATA_IDLE_IMMEDIATE_CMD))
906 {
907 return FALSE;
908 }
909
910 /* Check Power Mode */
911 if(!PCCARD_Check_Power_Mode(hpccard))
912 {
913 printf("Compact Flash Check Power Mode Failed \n");
914 return FALSE;
915 }
916
917 SECTOR_COUNT_REG = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT);
918
919 if(SECTOR_COUNT_REG == 0xFF)
920 {
921 return TRUE;
922 }
923 else
924 {
925 return FALSE;
926 }
927}
934 BOOL PCCARD_Set_Sleep_Mode(PCCARD_HandleType *hpccard)
935{
936 uint8_t SECTOR_COUNT_REG;
937 /* set sector_count register 0x80, after check_power_mode */
938 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = 0x80;
939 /* the register will be change to 0x00 or 0xFF */
940
941 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
942
943 if(!CF_SendCommand(hpccard, ATA_SET_SLEEP_MODE_CMD))
944 {
945 return FALSE;
946 }
947
948 /* Check Power Mode */
949 if(!PCCARD_Check_Power_Mode(hpccard))
950 {
951 printf("Compact Flash Check Power Mode Failed \n");
952 return FALSE;
953 }
954
955 SECTOR_COUNT_REG = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT);
956
957 if(SECTOR_COUNT_REG == 0x00)
958 {
959 return TRUE;
960 }
961 else
962 {
963 return FALSE;
964 }
965}
972 BOOL PCCARD_Standby(PCCARD_HandleType *hpccard)
973{
974 uint8_t SECTOR_COUNT_REG;
975 /* set sector_count register 0x80, after check_power_mode */
976 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = 0x80;
977 /* the register will be change to 0x00 or 0xFF */
978
979 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
980
981 if(!CF_SendCommand(hpccard, ATA_STANDBY_CMD))
982 {
983 return FALSE;
984 }
985
986 /* Check Power Mode */
987 if(!PCCARD_Check_Power_Mode(hpccard))
988 {
989 printf("Compact Flash Check Power Mode Failed \n");
990 return FALSE;
991 }
992
993 SECTOR_COUNT_REG = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT);
994
995 if(SECTOR_COUNT_REG == 0x00)
996 {
997 return TRUE;
998 }
999 else
1000 {
1001 return FALSE;
1002 }
1003}
1010 BOOL PCCARD_Standby_Immediate(PCCARD_HandleType *hpccard)
1011{
1012 uint8_t SECTOR_COUNT_REG;
1013 /* set sector_count register 0x80, after check_power_mode */
1014 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = 0x80;
1015 /* the register will be change to 0x00 or 0xFF */
1016
1017 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
1018
1019 if(!CF_SendCommand(hpccard, ATA_STANDBY_IMMEDIATE_CMD))
1020 {
1021 return FALSE;
1022 }
1023
1024 /* Check Power Mode */
1025 if(!PCCARD_Check_Power_Mode(hpccard))
1026 {
1027 printf("Compact Flash Check Power Mode Failed \n");
1028 return FALSE;
1029 }
1030
1031 SECTOR_COUNT_REG = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT);
1032
1033 if(SECTOR_COUNT_REG == 0x00)
1034 {
1035 return TRUE;
1036 }
1037 else
1038 {
1039 return FALSE;
1040 }
1041}
1048 BOOL PCCARD_Reuqest_Sense(PCCARD_HandleType *hpccard)
1049{
1050 uint8_t Reg, ERROR_REG;
1051
1052 Reg = hpccard->CF.CFAddr.Drv | 0xA0;
1053
1054 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1055
1056 if(!CF_SendCommand(hpccard, ATA_REQUEST_SENSE_CMD))
1057 {
1058 return FALSE;
1059 }
1060
1061 ERROR_REG = PCCARD_Read_ERROR_REG(hpccard);
1062
1063 if((ERROR_REG == 0x2F) || (ERROR_REG == 0x21))
1064 {
1065 return TRUE;
1066 }
1067 else
1068 {
1069 return FALSE;
1070 }
1071}
1078 BOOL PCCARD_Recalibrate(PCCARD_HandleType *hpccard)
1079{
1080 uint8_t Reg, ERROR_REG;
1081
1082 Reg = hpccard->CF.CFAddr.Drv | 0xA0;
1083
1084 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1085
1086 if(!CF_SendCommand(hpccard, ATA_RECALIBRATE_CMD))
1087 {
1088 return FALSE;
1089 }
1090
1091 ERROR_REG = PCCARD_Read_ERROR_REG(hpccard);
1092
1093 if((0x00 == ERROR_REG))
1094 {
1095 return TRUE;
1096 }
1097 else
1098 {
1099 return FALSE;
1100 }
1101}
1110 BOOL PCCARD_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
1111{
1112 uint8_t Reg;
1113
1114 hpccard->CF.CFAddr.Head = (uint8_t)Head_Count;
1115 hpccard->CF.CFAddr.Sector_Count = (uint8_t)Sector_Count;
1116
1117 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv;
1118
1119 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1120 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1121
1122 if(!CF_SendCommand(hpccard, ATA_INIT_DRIVE_PARA_CMD))
1123 {
1124 return FALSE;
1125 }
1126
1127 return TRUE;
1128}
1137 BOOL PCCARD_Seek(PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count)
1138{
1139 uint8_t Reg, ERROR_REG;
1140
1141 hpccard->CF.CFAddr.Head = (uint8_t)Head_Count;
1142 hpccard->CF.CFAddr.Cylinder = (uint16_t)Cylinder_Count;
1143
1144 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1145
1146 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1147 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1148 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1149
1150 /* This command should return false */
1151 if(CF_SendCommand(hpccard, ATA_SEEK_CMD))
1152 {
1153 return FALSE;
1154 }
1155
1156 ERROR_REG = PCCARD_Read_ERROR_REG(hpccard);
1157
1158 if((ERROR_REG != 0x00))
1159 {
1160 return TRUE;
1161 }
1162 else
1163 {
1164 return FALSE;
1165 }
1166}
1176 BOOL PCCARD_Format_Track(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
1177{
1178 uint16_t Count = 0;
1179 uint8_t Reg;
1180
1181 if(Sector_Count == 0)
1182 {
1183 Sector_Count = 256;
1184 }
1185
1186 while(Count < Sector_Count)
1187 {
1188 /* Set the parameters to write a sector */
1189 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
1190 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1191
1192 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1193 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1194 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1195 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1196 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1197
1198 if(CF_SendCommand(hpccard, ATA_FORMAT_TRACK_CMD))
1199 {
1200 while(1)
1201 {
1202 if(TaskFileRegIsValid(hpccard))
1203 {
1204 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1205 {
1206 // Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1207
1208 Sector_Address += 1;
1209 Count += 1;
1210
1211 if (Count == Sector_Count)
1212 {
1213 break;
1214 }
1215
1216 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
1217 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
1218 {
1219 break;
1220 }
1221 }
1222 else if (PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1223 {
1224 return FALSE;
1225 }
1226 }
1227 }
1228 }
1229
1230 while(1)
1231 {
1232 if(TaskFileRegIsValid(hpccard))
1233 {
1234 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1235 {
1236 break;
1237 }
1238 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1239 {
1240 return FALSE;
1241 }
1242 }
1243 }
1244 }
1245
1246 return TRUE;
1247}
1256 BOOL PCCARD_Read_Verify_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count)
1257{
1258 uint16_t Count = 0;
1259 uint8_t Reg;
1260
1261 if(Sector_Count == 0)
1262 {
1263 Sector_Count = 256;
1264 }
1265
1266 while(Count < Sector_Count)
1267 {
1268
1269 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
1270 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1271
1272 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1273 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1274 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1275 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1276 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1277
1278 if(CF_SendCommand(hpccard, ATA_READ_VERIFY_SECTOR_CMD))
1279 {
1280 while(1)
1281 {
1282 if(TaskFileRegIsValid(hpccard))
1283 {
1284 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
1285 {
1286 if(PCCARD_Read_STATUS_REG(hpccard) == DRQ_BIT) // DRQ_BIT should not be assert in this command
1287 {
1288 return FALSE;
1289 }
1290 else
1291 {
1292 Sector_Address += 1;
1293 Count += 1;
1294
1295 if (Count == Sector_Count)
1296 {
1297 break;
1298 }
1299
1300 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
1301 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
1302 {
1303 break;
1304 }
1305 }
1306 }
1307 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1308 {
1309 return FALSE;
1310 }
1311 }
1312 }
1313 }
1314
1315 while(1)
1316 {
1317 if(TaskFileRegIsValid(hpccard))
1318 {
1319 if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x50)
1320 {
1321 break;
1322 }
1323 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1324 {
1325 return FALSE;
1326 }
1327 }
1328 }
1329 }
1330
1331 return TRUE;
1332}
1342 BOOL PCCARD_Write_Verify(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
1343{
1344 uint16_t Count = 0;
1345 uint8_t Reg;
1346
1347 if(Sector_Count == 0)
1348 {
1349 Sector_Count = 256;
1350 }
1351
1352 while(Count < Sector_Count)
1353 {
1354 // Set the parameters to write a sector //
1355 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
1356 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1357
1358 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1359 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1360 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1361 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1362 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1363
1364 if(CF_SendCommand(hpccard, ATA_WRITE_VERIFY_CMD))
1365 {
1366 while(1)
1367 {
1368 if(TaskFileRegIsValid(hpccard))
1369 {
1370 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1371 {
1372 Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1373
1374 Sector_Address += 1;
1375 Count += 1;
1376
1377 if (Count == Sector_Count)
1378 {
1379 break;
1380 }
1381
1382 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
1383 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
1384 {
1385 break;
1386 }
1387 }
1388 else if (PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1389 {
1390 return FALSE;
1391 }
1392 }
1393 }
1394 }
1395
1396 while(1)
1397 {
1398 if(TaskFileRegIsValid(hpccard))
1399 {
1400 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
1401 {
1402 break;
1403 }
1404 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1405 {
1406 return FALSE;
1407 }
1408 }
1409 }
1410 }
1411
1412 return TRUE;
1413}
1421 BOOL PCCARD_Set_Multiple_Mode(PCCARD_HandleType *hpccard, uint32_t Sector_Count)
1422{
1423 hpccard->CF.CFAddr.Sector_Count = Sector_Count;
1424
1425 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1426 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
1427
1428 if(!CF_SendCommand(hpccard, ATA_SET_MULTIPLE_MODE_CMD))
1429 {
1430 return FALSE;
1431 }
1432
1433 return TRUE;
1434}
1443 BOOL PCCARD_Set_Features(PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature)
1444{
1445 hpccard->CF.CFAddr.Sector_Count = Sector_Count;
1446
1447 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1448 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
1449 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_FEATURE_REG) = Feature;
1450
1451 if(!CF_SendCommand(hpccard, ATA_SET_FEATURE_CMD))
1452 {
1453 return FALSE;
1454 }
1455
1456 return TRUE;
1457}
1465 BOOL PCCARD_Read_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
1466{
1467 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
1468
1469 if(CF_SendCommand(hpccard, ATA_READ_BUFFER_CMD))
1470 {
1471 if (TaskFileRegIsValid(hpccard))
1472 {
1473 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1474 {
1475 Read_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1476 }
1477 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1478 {
1479 return FALSE;
1480 }
1481 }
1482 }
1483
1484 while(1)
1485 {
1486 if(TaskFileRegIsValid(hpccard))
1487 {
1488 if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x50)
1489 {
1490 break;
1491 }
1492 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1493 {
1494 return FALSE;
1495 }
1496 }
1497 }
1498
1499 return TRUE;
1500}
1508 BOOL PCCARD_Write_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
1509{
1510 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = hpccard->CF.CFAddr.Drv;
1511
1512 if(CF_SendCommand(hpccard, ATA_WRITE_BUFFER_CMD))
1513 {
1514 if (TaskFileRegIsValid(hpccard))
1515 {
1516 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1517 {
1518 Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1519 }
1520 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1521 {
1522 return FALSE;
1523 }
1524 }
1525 }
1526
1527 while(1)
1528 {
1529 if(TaskFileRegIsValid(hpccard))
1530 {
1531 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
1532 {
1533 break;
1534 }
1535 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1536 {
1537 return FALSE;
1538 }
1539 }
1540 }
1541
1542 return TRUE;
1543}
1551 BOOL PCCARD_Translate_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address)
1552{
1553 uint32_t Total_Cylinder;
1554 uint8_t Reg;
1555
1556 Total_Cylinder = (uint32_t)(hpccard->CF.CFCardInfo.Default_Head * hpccard->CF.CFCardInfo.Default_Sector); // The total sectors in one cylinder
1557
1558 hpccard->CF.CFAddr.Cylinder = (uint16_t)(Sector_Address / Total_Cylinder);
1559 hpccard->CF.CFAddr.Head = (uint8_t)((Sector_Address % Total_Cylinder) / hpccard->CF.CFCardInfo.Default_Sector);
1560 hpccard->CF.CFAddr.Sector = (uint8_t)((Sector_Address % Total_Cylinder) % hpccard->CF.CFCardInfo.Default_Sector) + 1;
1561
1562 /* Set the parameters to write a sector */
1563 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1564
1565 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1566 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1567 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1568 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1569
1570 if(!CF_SendCommand(hpccard, ATA_TRANSLATE_SECTOR_CMD))
1571 {
1572 return FALSE;
1573 }
1574
1575 return TRUE;
1576}
1586 BOOL PCCARD_Write_Sector_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
1587{
1588 uint16_t Count = 0;
1589 uint8_t Reg;
1590
1591 if(Sector_Count == 0)
1592 {
1593 Sector_Count = 256;
1594 }
1595
1596 while(Count < Sector_Count)
1597 {
1598 /* Set the parameters to write a sector */
1599 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
1600 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1601
1602 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1603 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1604 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1605 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1606 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1607
1608 if(CF_SendCommand(hpccard, ATA_WRITE_SECTOR_WO_ERASE_CMD))
1609 {
1610 while(1)
1611 {
1612 if(TaskFileRegIsValid(hpccard))
1613 {
1614 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1615 {
1616 Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1617
1618 Sector_Address += 1;
1619 Count += 1;
1620
1621 if (Count == Sector_Count)
1622 {
1623 break;
1624 }
1625
1626 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
1627 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
1628 {
1629 break;
1630 }
1631 }
1632 else if (PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1633 {
1634 return FALSE;
1635 }
1636 }
1637 }
1638 }
1639
1640 while(1)
1641 {
1642 if(TaskFileRegIsValid(hpccard))
1643 {
1644 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
1645 {
1646 break;
1647 }
1648 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1649 {
1650 return FALSE;
1651 }
1652 }
1653 }
1654 }
1655
1656 return TRUE;
1657}
1667 BOOL PCCARD_Write_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
1668{
1669 uint16_t Count = 0;
1670 uint8_t Reg;
1671
1672 if(Sector_Count == 0)
1673 {
1674 Sector_Count = 256;
1675 }
1676
1677 while(Count < Sector_Count)
1678 {
1679 /* Set the parameters to write a sector */
1680 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
1681 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1682
1683 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1684 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1685 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1686 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1687 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1688
1689 if(CF_SendCommand(hpccard, ATA_WRITE_MULTIPLE_CMD))
1690 {
1691 while(1)
1692 {
1693 if(TaskFileRegIsValid(hpccard))
1694 {
1695 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1696 {
1697 Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1698
1699 Sector_Address += 1;
1700 Count += 1;
1701
1702 if (Count == Sector_Count)
1703 {
1704 break;
1705 }
1706
1707 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
1708 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
1709 {
1710 break;
1711 }
1712 }
1713 else if (PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1714 {
1715 return FALSE;
1716 }
1717 }
1718 }
1719 }
1720
1721 while(1)
1722 {
1723 if(TaskFileRegIsValid(hpccard))
1724 {
1725 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
1726 {
1727 break;
1728 }
1729 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1730 {
1731 return FALSE;
1732 }
1733 }
1734 }
1735 }
1736
1737 return TRUE;
1738}
1748 BOOL PCCARD_Read_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
1749{
1750 uint16_t Count = 0;
1751 uint8_t Reg;
1752
1753 if(Sector_Count == 0)
1754 {
1755 Sector_Count = 256;
1756 }
1757
1758 while(Count < Sector_Count)
1759 {
1760
1761 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
1762 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1763
1764 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1765 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1766 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1767 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1768 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1769
1770 if(CF_SendCommand(hpccard, ATA_READ_MULTIPLE_CMD))
1771 {
1772 while(1)
1773 {
1774 if(TaskFileRegIsValid(hpccard))
1775 {
1776 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1777 {
1778 Read_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1779
1780 Sector_Address += 1;
1781 Count += 1;
1782
1783 if (Count == Sector_Count)
1784 {
1785 break;
1786 }
1787
1788 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
1789 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
1790 {
1791 break;
1792 }
1793 }
1794 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1795 {
1796 return FALSE;
1797 }
1798 }
1799 }
1800 }
1801
1802 while(1)
1803 {
1804 if(TaskFileRegIsValid(hpccard))
1805 {
1806 if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x50)
1807 {
1808 break;
1809 }
1810 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1811 {
1812 return FALSE;
1813 }
1814 }
1815 }
1816 }
1817
1818 return TRUE;
1819}
1829 BOOL PCCARD_Write_Multiple_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
1830{
1831 uint16_t Count = 0;
1832 uint8_t Reg;
1833
1834 if(Sector_Count == 0)
1835 {
1836 Sector_Count = 256;
1837 }
1838
1839 while(Count < Sector_Count)
1840 {
1841 /* Set the parameters to write a sector */
1842 Translate_CHSAddr(hpccard, Sector_Address, Count, Sector_Count);
1843 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1844
1845 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1846 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1847 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1848 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1849 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1850
1851 if(CF_SendCommand(hpccard, ATA_WRITE_MULTIPLE_WO_ERASE_CMD))
1852 {
1853 while(1)
1854 {
1855 if(TaskFileRegIsValid(hpccard))
1856 {
1857 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1858 {
1859 Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1860
1861 Sector_Address += 1;
1862 Count += 1;
1863
1864 if (Count == Sector_Count)
1865 {
1866 break;
1867 }
1868
1869 if (Count <= (Sector_Count / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector)
1870 if (Count % hpccard->CF.CFAddr.Sector_Count == 0)
1871 {
1872 break;
1873 }
1874 }
1875 else if (PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1876 {
1877 return FALSE;
1878 }
1879 }
1880 }
1881 }
1882
1883 while(1)
1884 {
1885 if(TaskFileRegIsValid(hpccard))
1886 {
1887 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
1888 {
1889 break;
1890 }
1891 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1892 {
1893 return FALSE;
1894 }
1895 }
1896 }
1897 }
1898
1899 return TRUE;
1900}
1909 BOOL PCCARD_Read_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
1910{
1911 uint32_t index = 0, Total_Cylinder;
1912 uint8_t Reg;
1913 BOOL command_vaild = TRUE;
1914
1915 Total_Cylinder = (uint32_t)(hpccard->CF.CFCardInfo.Default_Head * hpccard->CF.CFCardInfo.Default_Sector); // The total sectors in one cylinder
1916
1917 hpccard->CF.CFAddr.Cylinder = (uint16_t)(Sector_Address / Total_Cylinder);
1918 hpccard->CF.CFAddr.Head = (uint8_t)((Sector_Address % Total_Cylinder) / hpccard->CF.CFCardInfo.Default_Sector);
1919 hpccard->CF.CFAddr.Sector = (uint8_t)((Sector_Address % Total_Cylinder) % hpccard->CF.CFCardInfo.Default_Sector) + 1;
1920 hpccard->CF.CFAddr.Sector_Count = 1; // some CF storage card implement the read long sector command as read sector commend
1921 // set sector count to 1, after read 512 byte data, if the DRQ_BIT still high, means the
1922 // read long sector command work well, because it shoult return 516 byte data (ECC).
1923
1924
1925 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
1926
1927 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
1928 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
1929 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
1930 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
1931 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
1932
1933 if(CF_SendCommand(hpccard, ATA_READ_LONG_SECTOR_CMD))
1934 {
1935 if(TaskFileRegIsValid(hpccard))
1936 {
1937 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
1938 {
1939 Read_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
1940
1941 if(PCCARD_Read_STATUS_REG(hpccard) & DRQ_BIT)
1942 {
1943 for(index = 0; index < 4; index++)
1944 {
1945 *(uint8_t *)pBuffer++ = *(uint8_t *)(hpccard->CF.IOAddr);
1946 }
1947 }
1948 else
1949 {
1950 command_vaild = FALSE;
1951 }
1952
1953 if(PCCARD_Read_STATUS_REG(hpccard) & DRQ_BIT)
1954 {
1955 command_vaild = FALSE;
1956 }
1957
1958 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
1959 {
1960 return FALSE;
1961
1962 }
1963 }
1964 }
1965 }
1966
1967 while(1)
1968 {
1969 if(TaskFileRegIsValid(hpccard))
1970 {
1971 if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x50)
1972 {
1973 break;
1974 }
1975 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
1976 {
1977 return FALSE;
1978 }
1979 }
1980 }
1981
1982 if(command_vaild == TRUE)
1983 {
1984 return TRUE;
1985 }
1986 else
1987 {
1988 return FALSE;
1989 }
1990}
1999 BOOL PCCARD_Write_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
2000{
2001 uint32_t index = 0, Total_Cylinder;
2002 uint8_t Reg;
2003 BOOL command_vaild = TRUE;
2004
2005 Total_Cylinder = (uint32_t)(hpccard->CF.CFCardInfo.Default_Head * hpccard->CF.CFCardInfo.Default_Sector); // The total sectors in one cylinder
2006
2007 hpccard->CF.CFAddr.Cylinder = (uint16_t)(Sector_Address / Total_Cylinder);
2008 hpccard->CF.CFAddr.Head = (uint8_t)((Sector_Address % Total_Cylinder) / hpccard->CF.CFCardInfo.Default_Sector);
2009 hpccard->CF.CFAddr.Sector = (uint8_t)((Sector_Address % Total_Cylinder) % hpccard->CF.CFCardInfo.Default_Sector) + 1;
2010 hpccard->CF.CFAddr.Sector_Count = 1; // some CF storage card implement the read long sector command as read sector commend
2011 // set sector count to 1, after read 512 byte data, if the DRQ_BIT still high, means the
2012 // read long sector command is work well, because it shoult return 516 byte data (ECC).
2013
2014
2015 Reg = hpccard->CF.CFAddr.Head | hpccard->CF.CFAddr.Drv | 0xA0;
2016
2017 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_HIGH) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder >> 8);
2018 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CYLINDER_LOW) = (uint8_t)(0xFF & hpccard->CF.CFAddr.Cylinder);
2019 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_NUMBER) = hpccard->CF.CFAddr.Sector;
2020 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_SECTOR_COUNT) = hpccard->CF.CFAddr.Sector_Count;
2021 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_CARD_HEAD) = Reg;
2022
2023 if(CF_SendCommand(hpccard, ATA_WRITE_LONG_SECTOR_CMD))
2024 {
2025 if(TaskFileRegIsValid(hpccard))
2026 {
2027 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
2028 {
2029 Write_Sector(hpccard, pBuffer, PCCARD_SECTOR_SIZE);
2030
2031 if(PCCARD_Read_STATUS_REG(hpccard) & DRQ_BIT)
2032 {
2033 for(index = 0; index < 4; index++)
2034 {
2035 *(uint8_t *)(hpccard->CF.IOAddr) = *(uint8_t *)pBuffer++;
2036 }
2037 }
2038 else
2039 {
2040 command_vaild = FALSE;
2041 }
2042
2043 if(PCCARD_Read_STATUS_REG(hpccard) & DRQ_BIT)
2044 {
2045 command_vaild = FALSE;
2046 }
2047
2048 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
2049 {
2050 return FALSE;
2051 }
2052 }
2053 }
2054 }
2055
2056 while(1)
2057 {
2058 if(TaskFileRegIsValid(hpccard))
2059 {
2060 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT))
2061 {
2062 break;
2063 }
2064 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
2065 {
2066 return FALSE;
2067 }
2068 }
2069 }
2070
2071 if(command_vaild == TRUE)
2072 {
2073 return TRUE;
2074 }
2075 else
2076 {
2077 return FALSE;
2078 }
2079}
2088uint8_t *Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
2089{
2090 uint32_t index = 0;
2091
2092 XMC_Enable_16bit_Feature(hpccard->Instance, &(hpccard->Init), hpccard->CF.Enable_8_bit_mode);
2093
2094 if(hpccard->CF.DMAEnable == TRUE)
2095 {
2096 if(hpccard->CF.Enable_8_bit_mode)
2097 {
2098 MYDMA_Config(DMA1_CHANNEL1, (uint32_t)hpccard->CF.IOAddr, (uint32_t)pBuffer, Transfer_Size, Read_Transfer, Enable_8_bit_Transfer);
2099 }
2100 else
2101 {
2102 MYDMA_Config(DMA1_CHANNEL1, (uint32_t)hpccard->CF.IOAddr, (uint32_t)pBuffer, (Transfer_Size / 2), Read_Transfer, Enable_16_bit_Transfer);
2103 }
2104
2105 while(1)
2106 {
2107 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
2108 {
2109 dma_flag_clear(DMA1_FDT1_FLAG);
2110 break;
2111 }
2112 }
2113
2114 pBuffer += 512;
2115 }
2116 else
2117 {
2118 if(hpccard->CF.Enable_8_bit_mode)
2119 {
2120 for(; index < (Transfer_Size) ; index++)
2121 {
2122 *(uint8_t *)pBuffer++ = *(uint8_t *)(hpccard->CF.IOAddr);
2123 }
2124 }
2125 else
2126 {
2127 for(; index < (Transfer_Size / 2); index++)
2128 {
2129 *(uint16_t *)pBuffer = *(uint16_t *)(hpccard->CF.IOAddr);
2130 /* offset to next 16 bit */
2131 pBuffer += 2;
2132 }
2133 }
2134 }
2135
2136 XMC_Enable_16bit_Feature(hpccard->Instance, &(hpccard->Init), 1);
2137 return pBuffer;
2138}
2147uint8_t *Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
2148{
2149 uint32_t index = 0;
2150
2151 XMC_Enable_16bit_Feature(hpccard->Instance, &(hpccard->Init), hpccard->CF.Enable_8_bit_mode);
2152
2153 if(hpccard->CF.DMAEnable == TRUE)
2154 {
2155 if(hpccard->CF.Enable_8_bit_mode)
2156 {
2157 MYDMA_Config(DMA1_CHANNEL1, (uint32_t)pBuffer, (uint32_t)hpccard->CF.IOAddr, Transfer_Size, Write_Transfer, Enable_8_bit_Transfer);
2158 }
2159 else
2160 {
2161 MYDMA_Config(DMA1_CHANNEL1, (uint32_t)pBuffer, (uint32_t)hpccard->CF.IOAddr, (Transfer_Size / 2), Write_Transfer, Enable_16_bit_Transfer);
2162 }
2163
2164 while(1)
2165 {
2166 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
2167 {
2168 dma_flag_clear(DMA1_FDT1_FLAG);
2169 break;
2170 }
2171 }
2172
2173 pBuffer += 512;
2174 }
2175 else
2176 {
2177 if(hpccard->CF.Enable_8_bit_mode)
2178 {
2179 for(; index < (Transfer_Size); index++)
2180 {
2181 *(uint8_t *)(hpccard->CF.IOAddr) = *(uint8_t *)pBuffer++;
2182 }
2183 }
2184 else
2185 {
2186 for(; index < (Transfer_Size / 2); index++)
2187 {
2188 *(uint16_t *)(hpccard->CF.IOAddr) = *(uint16_t *)pBuffer;
2189 /* offset to next 16 bit */
2190 pBuffer += 2; // offset to next 16 bit
2191 }
2192 }
2193 }
2194
2195 XMC_Enable_16bit_Feature(hpccard->Instance, &(hpccard->Init), 1);
2196 return pBuffer;
2197}
2198
2205 BOOL PCCARD_Reset(PCCARD_HandleType *hpccard)
2206{
2207 /* Provide an SW reset and Read and verify the:
2208 - CF Configuration Option Register at address 0x98000200 --> 0x80
2209 - Card Configuration and Status Register at address 0x98000202 --> 0x00
2210 - Pin Replacement Register at address 0x98000204 --> 0x0C
2211 - Socket and Copy Register at address 0x98000206 --> 0x00
2212 */
2213
2214 uint8_t config_option_reg;
2215
2216 /* Set up the Reset bit in config option register */
2217 *(__IO uint8_t *)(PCCARD_ATTRIBUTE_SPACE_ADDRESS | CONFIG_OPTION_REG) = 0x80;
2218 delay_ms(100);
2219 /* Clear the Reset bit in config option register */
2220 *(__IO uint8_t *)(PCCARD_ATTRIBUTE_SPACE_ADDRESS | CONFIG_OPTION_REG) = 0x00;
2221 delay_ms(100);
2222 /* Set the PC card I/O configurations */
2223 *(__IO uint8_t *)(PCCARD_ATTRIBUTE_SPACE_ADDRESS | CONFIG_OPTION_REG) = hpccard->CF.Protocol;
2224 delay_ms(100);
2225
2226 config_option_reg = *(__IO uint8_t *)(PCCARD_ATTRIBUTE_SPACE_ADDRESS | CONFIG_OPTION_REG);
2227
2228 if(config_option_reg == hpccard->CF.Protocol)
2229 {
2230 return TRUE;
2231 }
2232 else
2233 {
2234 return FALSE;
2235 }
2236}
2237
2247void Translate_CHSAddr(PCCARD_HandleType *hpccard, uint32_t Start, uint16_t Sector_Count, uint16_t Sector_Limit)
2248{
2249 uint32_t Total_Cylinder;
2250 uint16_t Prev_Count;
2251
2252 Prev_Count = (Sector_Limit / hpccard->CF.CFCardInfo.Default_Sector) * hpccard->CF.CFCardInfo.Default_Sector;
2253
2254 Total_Cylinder = (uint32_t)(hpccard->CF.CFCardInfo.Default_Head * hpccard->CF.CFCardInfo.Default_Sector); // The total sectors in one cylinder
2255
2256 hpccard->CF.CFAddr.Cylinder = (uint16_t)(Start / Total_Cylinder);
2257 hpccard->CF.CFAddr.Head = (uint8_t)((Start % Total_Cylinder) / hpccard->CF.CFCardInfo.Default_Sector);
2258 hpccard->CF.CFAddr.Sector = (uint8_t)((Start % Total_Cylinder) % hpccard->CF.CFCardInfo.Default_Sector) + 1;
2259
2260 if ((Prev_Count <= Sector_Count) && (Sector_Count <= Sector_Limit))
2261 {
2262 hpccard->CF.CFAddr.Sector_Count = (uint8_t)(Sector_Limit % hpccard->CF.CFCardInfo.Default_Sector);
2263 }
2264 else
2265 {
2266 hpccard->CF.CFAddr.Sector_Count = (uint8_t)hpccard->CF.CFCardInfo.Default_Sector;
2267 }
2268}
2269
2276 BOOL ReadCFCardCISInformation(PCCARD_HandleType *hpccard)
2277{
2278 uint8_t CIS_1, CIS_2, CIS_3;
2279
2280 CIS_1 = *(uint8_t *)(PCCARD_ATTRIBUTE_SPACE_ADDRESS | 0x0);
2281 CIS_2 = *(uint8_t *)(PCCARD_ATTRIBUTE_SPACE_ADDRESS | 0x2);
2282 CIS_3 = *(uint8_t *)(PCCARD_ATTRIBUTE_SPACE_ADDRESS | 0x4);
2283
2284 if(CIS_1 == 0x1 && CIS_2 == 0x4 && CIS_3 == 0xdf)
2285 {
2286 return TRUE;
2287 }
2288 else
2289 {
2290 return FALSE;
2291 }
2292}
2293
2301 BOOL CF_SendCommand(PCCARD_HandleType *hpccard, uint8_t Cmd)
2302{
2303 uint8_t Reg;
2304
2305 do
2306 {
2307 *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_STATUS_CMD) = Cmd;
2308
2309 while(!TaskFileRegIsValid(hpccard)) ;
2310
2311 Reg = PCCARD_Read_STATUS_REG(hpccard);
2312
2313 if ((Reg & ERR_BIT) != 0)
2314 {
2315 return FALSE;
2316 }
2317 }
2318 while((Reg & RDY_BIT) == 0);
2319
2320 return TRUE;
2321}
2328 BOOL TaskFileRegIsValid(PCCARD_HandleType *hpccard)
2329{
2330 uint8_t status = 0;
2331
2332 status = PCCARD_Read_STATUS_REG(hpccard);
2333
2334 if(status & BUSY_BIT)
2335 {
2336 return FALSE;
2337 }
2338
2339 return TRUE;
2340}
2349 BOOL Vaild_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
2350{
2351 uint8_t CardInfo[PCCARD_SECTOR_SIZE * sizeof(uint8_t)] = {0};
2352
2353 memset(CardInfo, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
2354
2355 if(PCCARD_Identify(hpccard))
2356 {
2357 while(1)
2358 {
2359 if(TaskFileRegIsValid(hpccard))
2360 {
2361 if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | DRQ_BIT))
2362 {
2363 Read_Sector(hpccard, CardInfo, PCCARD_SECTOR_SIZE);
2364 break;
2365 }
2366 else if(PCCARD_Read_STATUS_REG(hpccard) == (RDY_BIT | DSC_BIT | ERR_BIT))
2367 {
2368 printf("\r\nCommand Pass, but ERR bit is high");
2369 printf("\r\nCF Status Reg=%#x", PCCARD_Read_STATUS_REG(hpccard));
2370 printf("\r\nCF Error Reg=%#x", PCCARD_Read_ERROR_REG(hpccard));
2371 return FALSE;
2372 }
2373 }
2374 }
2375 }
2376
2377 while(1)
2378 {
2379 if(TaskFileRegIsValid(hpccard))
2380 {
2381 if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x50)
2382 {
2383 break;
2384 }
2385 else if((PCCARD_Read_STATUS_REG(hpccard) & (RDY_BIT | DSC_BIT | ERR_BIT)) == 0x51)
2386 {
2387 printf("\r\nSend Command Failed");
2388 printf("\r\nCF Status Reg=%#x", PCCARD_Read_STATUS_REG(hpccard));
2389 printf("\r\nCF Error Reg=%#x", PCCARD_Read_ERROR_REG(hpccard));
2390 return FALSE;
2391 }
2392 }
2393 }
2394
2395 if (((uint16_t)CardInfo[0] | (uint16_t)CardInfo[1] << 8) == 0x848A && ((uint16_t)CardInfo[110] | \
2396 (uint16_t)CardInfo[111] << 8) == Head_Count && ((uint16_t)CardInfo[112] | (uint16_t)CardInfo[113] << 8) == Sector_Count )
2397 {
2398 return TRUE;
2399 }
2400 else
2401 {
2402 return FALSE;
2403 }
2404
2405}
2412void show_verification_result(verification_result_struct *result)
2413{
2414 printf("\r\n");
2415 printf("\r\n----------------------------------------------------------------------");
2416 printf("\r\n%s %-6s ", "ATTRIBUTE_RW_PASS ", ((result->ATTRIBUTE_RW_PASS) ? " PASS" : "FAILED *****"));
2417 printf("\r\n%s %-6s ", "READ_ATTRIBUTE_CIS ", ((result->CIS_READ_PASS) ? " PASS" : "FAILED *****"));
2418 printf("\r\n%s %-6s ", "IDENTIFY_DRIVE ", ((result->ATA_IDENTIFY_DRIVE_PASS) ? " PASS" : "FAILED *****"));
2419 printf("\r\n%s %-6s ", "EXECUTE_DRIVE_DIAG ", ((result->ATA_EXECUTE_DRIVE_DIAG_PASS) ? " PASS" : "FAILED *****"));
2420 printf("\r\n%s %-6s ", "WRITE_SECTOR ", ((result->ATA_WRITE_SECTOR_PASS) ? " PASS" : "FAILED *****"));
2421 printf("\r\n%s %-6s ", "READ_SECTOR ", ((result->ATA_READ_SECTOR_PASS) ? " PASS" : "FAILED *****"));
2422 printf("\r\n%s %-6s ", "ACESS_25_SECTORS ", ((result->ACESS_25_SECTORS_PASS) ? " PASS" : "FAILED *****"));
2423 printf("\r\n----------------------------------------------------------------------");
2424 printf("\r\n\r\n");
2425}
2426
2427
2434void PCCARD_IRQHandler(PCCARD_HandleType *hpccard)
2435{
2436}
2437
2438
2464 PCCARD_StateType PCCARD_GetState(PCCARD_HandleType *hpccard)
2465{
2466 return hpccard->State;
2467}
2474uint8_t PCCARD_Read_ERROR_REG(PCCARD_HandleType *hpccard)
2475{
2476 uint8_t Reg = 0;
2477
2478 /* Read ERROR Reg operation */
2479 Reg = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_ERROR_REG);
2480 CF_print(ERR_REG_INFO, ("\r\nCF card ERROR Register value is %#x", Reg));
2481 return Reg;
2482}
2489uint8_t PCCARD_Read_STATUS_REG(PCCARD_HandleType *hpccard)
2490{
2491 uint8_t Reg = 0;
2492
2493 /* Read STATUS Reg operation */
2494 Reg = *(__IO uint8_t *)(hpccard->CF.IOAddr | ATA_STATUS_CMD);
2495 CF_print(STS_REG_INFO, ("\r\nCF card STATUS Register value is %#x", Reg));
2496
2497 return Reg;
2498}
2499
2500
2501void XMC_IRQHandler(void)
2502{
2503 __nop();
2504}
2505
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
cf.h
header file for the cf configuration.
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOF_PERIPH_CLOCK
@ CRM_GPIOF_PERIPH_CLOCK
Definition: at32f403_crm.h:115
CRM_GPIOG_PERIPH_CLOCK
@ CRM_GPIOG_PERIPH_CLOCK
Definition: at32f403_crm.h:116
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_MEMORY
@ DMA_DIR_MEMORY_TO_MEMORY
Definition: at32f403_dma.h:128
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
u16
uint16_t u16
Definition: at32f403.h:286
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOG
#define GPIOG
Definition: at32f403_gpio.h:600
GPIOF
#define GPIOF
Definition: at32f403_gpio.h:599
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
ATA_ERROR_REG
#define ATA_ERROR_REG
Definition: cf.h:61
ATA_WRITE_LONG_SECTOR_CMD
#define ATA_WRITE_LONG_SECTOR_CMD
Definition: cf.h:130
PCCARD_ATTRIBUTE_SPACE_ADDRESS
#define PCCARD_ATTRIBUTE_SPACE_ADDRESS
Definition: cf.h:52
ATA_READ_VERIFY_SECTOR_CMD
#define ATA_READ_VERIFY_SECTOR_CMD
Definition: cf.h:112
DSC_BIT
#define DSC_BIT
Definition: cf.h:153
ATA_WRITE_MULTIPLE_CMD
#define ATA_WRITE_MULTIPLE_CMD
Definition: cf.h:131
ATA_FORMAT_TRACK_CMD
#define ATA_FORMAT_TRACK_CMD
Definition: cf.h:103
ATA_CYLINDER_HIGH
#define ATA_CYLINDER_HIGH
Definition: cf.h:66
Enable_8_bit_Transfer
#define Enable_8_bit_Transfer
Definition: cf.h:206
ATA_READ_MULTIPLE_CMD
#define ATA_READ_MULTIPLE_CMD
Definition: cf.h:110
ATA_STANDBY_IMMEDIATE_CMD
#define ATA_STANDBY_IMMEDIATE_CMD
Definition: cf.h:126
ATA_SEEK_CMD
#define ATA_SEEK_CMD
Definition: cf.h:121
ATA_WRITE_BUFFER_CMD
#define ATA_WRITE_BUFFER_CMD
Definition: cf.h:129
ATA_READ_BUFFER_CMD
#define ATA_READ_BUFFER_CMD
Definition: cf.h:108
ATA_INIT_DRIVE_PARA_CMD
#define ATA_INIT_DRIVE_PARA_CMD
Definition: cf.h:107
ATA_STATUS_CMD
#define ATA_STATUS_CMD
Definition: cf.h:68
ATA_ERASE_SECTOR_CMD
#define ATA_ERASE_SECTOR_CMD
Definition: cf.h:102
ATA_READ_SECTOR_CMD
#define ATA_READ_SECTOR_CMD
Definition: cf.h:111
STS_REG_INFO
#define STS_REG_INFO
Definition: cf.h:216
ATA_IDLE_IMMEDIATE_CMD
#define ATA_IDLE_IMMEDIATE_CMD
Definition: cf.h:106
ATA_SECTOR_NUMBER
#define ATA_SECTOR_NUMBER
Definition: cf.h:64
ATA_SET_SLEEP_MODE_CMD
#define ATA_SET_SLEEP_MODE_CMD
Definition: cf.h:124
ATA_WRITE_MULTIPLE_WO_ERASE_CMD
#define ATA_WRITE_MULTIPLE_WO_ERASE_CMD
Definition: cf.h:132
ATA_REQUEST_SENSE_CMD
#define ATA_REQUEST_SENSE_CMD
Definition: cf.h:114
BUSY_BIT
#define BUSY_BIT
Definition: cf.h:150
ATA_SET_MULTIPLE_MODE_CMD
#define ATA_SET_MULTIPLE_MODE_CMD
Definition: cf.h:123
CF_print
#define CF_print(cond, _x_)
Definition: cf.h:209
ATA_WRITE_SECTOR_CMD
#define ATA_WRITE_SECTOR_CMD
Definition: cf.h:133
CONFIG_OPTION_REG
#define CONFIG_OPTION_REG
Definition: cf.h:78
ATA_WRITE_VERIFY_CMD
#define ATA_WRITE_VERIFY_CMD
Definition: cf.h:135
ERR_BIT
#define ERR_BIT
Definition: cf.h:156
ATA_SET_FEATURE_CMD
#define ATA_SET_FEATURE_CMD
Definition: cf.h:122
ATA_STANDBY_CMD
#define ATA_STANDBY_CMD
Definition: cf.h:125
RDY_BIT
#define RDY_BIT
Definition: cf.h:151
ATA_CYLINDER_LOW
#define ATA_CYLINDER_LOW
Definition: cf.h:65
ATA_EXECUTE_DRIVE_DIAG_CMD
#define ATA_EXECUTE_DRIVE_DIAG_CMD
Definition: cf.h:101
DRQ_BIT
#define DRQ_BIT
Definition: cf.h:154
ATA_READ_LONG_SECTOR_CMD
#define ATA_READ_LONG_SECTOR_CMD
Definition: cf.h:109
ATA_CARD_HEAD
#define ATA_CARD_HEAD
Definition: cf.h:67
Read_Transfer
#define Read_Transfer
Definition: cf.h:204
ATA_IDENTIFY_DRIVE_CMD
#define ATA_IDENTIFY_DRIVE_CMD
Definition: cf.h:104
ATA_FEATURE_REG
#define ATA_FEATURE_REG
Definition: cf.h:62
ATA_SECTOR_COUNT
#define ATA_SECTOR_COUNT
Definition: cf.h:63
ATA_WRITE_SECTOR_WO_ERASE_CMD
#define ATA_WRITE_SECTOR_WO_ERASE_CMD
Definition: cf.h:134
ERR_REG_INFO
#define ERR_REG_INFO
Definition: cf.h:215
ATA_RECALIBRATE_CMD
#define ATA_RECALIBRATE_CMD
Definition: cf.h:113
PCCARD_SECTOR_SIZE
#define PCCARD_SECTOR_SIZE
Definition: cf.h:172
Enable_16_bit_Transfer
#define Enable_16_bit_Transfer
Definition: cf.h:207
ATA_TRANSLATE_SECTOR_CMD
#define ATA_TRANSLATE_SECTOR_CMD
Definition: cf.h:127
ATA_IDLE_CMD
#define ATA_IDLE_CMD
Definition: cf.h:105
ATA_CHECK_POWER_MODE_CMD
#define ATA_CHECK_POWER_MODE_CMD
Definition: cf.h:100
Write_Transfer
#define Write_Transfer
Definition: cf.h:205
XMC_PCCARD_InitCommonSpaceTiming
StatusType XMC_PCCARD_InitCommonSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init CommonSpace Timing.
Definition: cf.c:199
XMC_PCCARD_InitCtrl
StatusType XMC_PCCARD_InitCtrl(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
XMC InitCtrl.
Definition: cf.c:143
XMC_Enable_Wait_Feature
StatusType XMC_Enable_Wait_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init)
XMC Enable Wait Feature.
Definition: cf.c:166
XMC_PCCARD_InitIOSpaceTiming
StatusType XMC_PCCARD_InitIOSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init IOSpace Timing.
Definition: cf.c:229
PCCARD_Init
StatusType PCCARD_Init(PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming)
Perform the PCCARD memory Initialization sequence.
Definition: cf.c:249
XMC_PCCARD_InitAttributeSpaceTiming
StatusType XMC_PCCARD_InitAttributeSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init AttributeSpace Timing.
Definition: cf.c:214
MYDMA_Config
void MYDMA_Config(dma_channel_type *DMAy_channelx, uint32_t cpar_src, uint32_t cmar_dst, uint32_t cndtr, uint8_t Transfer_Type, uint8_t Transfer_Width)
DMA configuration.
Definition: cf.c:94
Enable_Wait_Feature
StatusType Enable_Wait_Feature(PCCARD_HandleType *hpccard)
Enable Wait Feature.
Definition: cf.c:379
XMC_Enable_16bit_Feature
StatusType XMC_Enable_16bit_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
Set 16bit_Feature.
Definition: cf.c:180
PCCARD_DeInit
StatusType PCCARD_DeInit(PCCARD_HandleType *hpccard)
Perform the PCCARD memory De-initialization sequence.
Definition: cf.c:409
PCCARD_Diagnostic
BOOL PCCARD_Diagnostic(PCCARD_HandleType *hpccard)
Diagnostic.
Definition: cf.c:796
PCCARD_Write_Verify
BOOL PCCARD_Write_Verify(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Verify
Definition: cf.c:1342
PCCARD_Identify
BOOL PCCARD_Identify(PCCARD_HandleType *hpccard)
Identify.
Definition: cf.c:444
TaskFileRegIsValid
BOOL TaskFileRegIsValid(PCCARD_HandleType *hpccard)
Check the PCCARD TaskFileReg valid.
Definition: cf.c:2328
PCCARD_Reset
BOOL PCCARD_Reset(PCCARD_HandleType *hpccard)
Reset the PCCARD memory.
Definition: cf.c:2205
PCCARD_Write_Multiple
BOOL PCCARD_Write_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple
Definition: cf.c:1667
PCCARD_Reuqest_Sense
BOOL PCCARD_Reuqest_Sense(PCCARD_HandleType *hpccard)
Reuqest Sense the pccard.
Definition: cf.c:1048
PCCARD_Write_Long_Sector
BOOL PCCARD_Write_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
write long sector
Definition: cf.c:1999
ReadCFCardCISInformation
BOOL ReadCFCardCISInformation(PCCARD_HandleType *hpccard)
Read CIS Information.
Definition: cf.c:2276
PCCARD_Read_Multiple
BOOL PCCARD_Read_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
read Multiple
Definition: cf.c:1748
PCCARD_Read_Sector
BOOL PCCARD_Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Read sector from PCCARD memory.
Definition: cf.c:583
PCCARD_Set_Sleep_Mode
BOOL PCCARD_Set_Sleep_Mode(PCCARD_HandleType *hpccard)
Set sleep mode.
Definition: cf.c:934
PCCARD_Set_Features
BOOL PCCARD_Set_Features(PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature)
set features
Definition: cf.c:1443
PCCARD_Write_Multiple_WO_ERASE
BOOL PCCARD_Write_Multiple_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple WO_ERASE
Definition: cf.c:1829
PCCARD_Read_Verify_Sector
BOOL PCCARD_Read_Verify_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count)
read Verify Sector
Definition: cf.c:1256
CF_SendCommand
BOOL CF_SendCommand(PCCARD_HandleType *hpccard, uint8_t Cmd)
Send command.
Definition: cf.c:2301
Vaild_Init_Drive_Para
BOOL Vaild_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Check the PCCARD info valid.
Definition: cf.c:2349
PCCARD_Write_Sector
BOOL PCCARD_Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Write sector to PCCARD memory.
Definition: cf.c:666
PCCARD_Idle_Immediate
BOOL PCCARD_Idle_Immediate(PCCARD_HandleType *hpccard)
Idle immediate.
Definition: cf.c:896
PCCARD_Standby_Immediate
BOOL PCCARD_Standby_Immediate(PCCARD_HandleType *hpccard)
Standby Immediate.
Definition: cf.c:1010
PCCARD_Format_Track
BOOL PCCARD_Format_Track(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
format track
Definition: cf.c:1176
PCCARD_Read_ID
BOOL PCCARD_Read_ID(PCCARD_HandleType *hpccard)
Read Compact Flash's ID.
Definition: cf.c:468
PCCARD_Idle
BOOL PCCARD_Idle(PCCARD_HandleType *hpccard, uint32_t Sector_Count)
Set idle.
Definition: cf.c:857
PCCARD_Translate_Sector
BOOL PCCARD_Translate_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address)
Translate sector.
Definition: cf.c:1551
PCCARD_Seek
BOOL PCCARD_Seek(PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count)
seek pccard
Definition: cf.c:1137
PCCARD_IRQHandler
void PCCARD_IRQHandler(PCCARD_HandleType *hpccard)
This function handles PCCARD device interrupt request.
Definition: cf.c:2434
Read_Sector
uint8_t * Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
read sector
Definition: cf.c:2088
PCCARD_Erase_Sector
BOOL PCCARD_Erase_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count)
Erase sector from PCCARD memory.
Definition: cf.c:749
Write_Sector
uint8_t * Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
write sector
Definition: cf.c:2147
PCCARD_Init_Drive_Para
BOOL PCCARD_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Init drive para.
Definition: cf.c:1110
PCCARD_Read_Long_Sector
BOOL PCCARD_Read_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
read long sector
Definition: cf.c:1909
show_verification_result
void show_verification_result(verification_result_struct *result)
printf the verification result.
Definition: cf.c:2412
PCCARD_Standby
BOOL PCCARD_Standby(PCCARD_HandleType *hpccard)
Set Standby.
Definition: cf.c:972
PCCARD_Recalibrate
BOOL PCCARD_Recalibrate(PCCARD_HandleType *hpccard)
Recalibrate the pccard.
Definition: cf.c:1078
PCCARD_Write_Buffer
BOOL PCCARD_Write_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
write buffer
Definition: cf.c:1508
PCCARD_Set_Multiple_Mode
BOOL PCCARD_Set_Multiple_Mode(PCCARD_HandleType *hpccard, uint32_t Sector_Count)
set multiple mode
Definition: cf.c:1421
PCCARD_Check_Power_Mode
BOOL PCCARD_Check_Power_Mode(PCCARD_HandleType *hpccard)
Check Power Mode.
Definition: cf.c:825
Translate_CHSAddr
void Translate_CHSAddr(PCCARD_HandleType *hpccard, uint32_t Start, uint16_t Sector_Count, uint16_t Sector_Limit)
Definition: cf.c:2247
PCCARD_Read_Buffer
BOOL PCCARD_Read_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
read buffer
Definition: cf.c:1465
PCCARD_Write_Sector_WO_ERASE
BOOL PCCARD_Write_Sector_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write sector WO_ERASE
Definition: cf.c:1586
PCCARD_Read_STATUS_REG
uint8_t PCCARD_Read_STATUS_REG(PCCARD_HandleType *hpccard)
Get the PCCARD status reg value.
Definition: cf.c:2489
XMC_IRQHandler
void XMC_IRQHandler(void)
Definition: cf.c:2501
PCCARD_GetState
PCCARD_StateType PCCARD_GetState(PCCARD_HandleType *hpccard)
return the PCCARD controller state
Definition: cf.c:2464
PCCARD_Read_ERROR_REG
uint8_t PCCARD_Read_ERROR_REG(PCCARD_HandleType *hpccard)
Get the PCCARD error reg value.
Definition: cf.c:2474
PCCARD_StateType
PCCARD_StateType
HAL PCCARD State structures definition.
Definition: cf.h:246
BOOL
unsigned char BOOL
Definition: cf.h:230
StatusType
StatusType
Definition: cf.h:237
PCCARD_STATE_READY
@ PCCARD_STATE_READY
Definition: cf.h:248
PCCARD_STATE_RESET
@ PCCARD_STATE_RESET
Definition: cf.h:247
PCCARD_STATE_BUSY
@ PCCARD_STATE_BUSY
Definition: cf.h:249
UNLOCKED
@ UNLOCKED
Definition: cf.h:233
STATUS_ERROR
@ STATUS_ERROR
Definition: cf.h:239
STATUS_OK
@ STATUS_OK
Definition: cf.h:238
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
DMA1_MEM_LEN
u16 DMA1_MEM_LEN
Definition: cf.c:42
DMA_InitStructure
dma_init_type DMA_InitStructure
Definition: cf.c:41
xmc_pccard_enable
void xmc_pccard_enable(confirm_state new_state)
enable or disable the pccard memory bank.
Definition: at32f403_xmc.c:657
xmc_pccard_reset
void xmc_pccard_reset(void)
xmc pc card registers reset
Definition: at32f403_xmc.c:540
CFCardAddrStruct::Cylinder
uint16_t Cylinder
Definition: cf.h:273
CFCardAddrStruct::Drv
uint8_t Drv
Definition: cf.h:276
CFCardAddrStruct::Sector
uint8_t Sector
Definition: cf.h:275
CFCardAddrStruct::Head
uint8_t Head
Definition: cf.h:274
CFCardAddrStruct::Sector_Count
uint16_t Sector_Count
Definition: cf.h:272
CFCardInfoStruct::Max_Mutiple_Sector
uint16_t Max_Mutiple_Sector
Definition: cf.h:265
CFCardInfoStruct::Default_Sector
uint16_t Default_Sector
Definition: cf.h:259
CFCardInfoStruct::Default_Head
uint8_t Default_Head
Definition: cf.h:258
CFCardInfoStruct::Mutiple_Sector_Setting
uint16_t Mutiple_Sector_Setting
Definition: cf.h:266
CFCardInfoStruct::Current_Cylinder
uint16_t Current_Cylinder
Definition: cf.h:260
CFCardInfoStruct::Current_Head
uint8_t Current_Head
Definition: cf.h:261
CFCardInfoStruct::Total_LBA_Sector
uint32_t Total_LBA_Sector
Definition: cf.h:264
CFCardInfoStruct::Current_Sector
uint16_t Current_Sector
Definition: cf.h:262
CFCardInfoStruct::Total_Sector
uint32_t Total_Sector
Definition: cf.h:263
CFCardInfoStruct::Default_Cylinder
uint16_t Default_Cylinder
Definition: cf.h:257
CFCardStruct::CFCardInfo
CFCardInfoStruct CFCardInfo
Definition: cf.h:286
CFCardStruct::IOAddr
uint32_t IOAddr
Definition: cf.h:283
CFCardStruct::DMAEnable
BOOL DMAEnable
Definition: cf.h:284
CFCardStruct::Protocol
uint16_t Protocol
Definition: cf.h:288
CFCardStruct::Enable_8_bit_mode
BOOL Enable_8_bit_mode
Definition: cf.h:285
CFCardStruct::CFAddr
CFCardAddrStruct CFAddr
Definition: cf.h:287
PCCARD_HandleType
XMC_PCCARD handle Structure definition.
Definition: cf.h:344
PCCARD_HandleType::CF
CFCardStruct CF
Definition: cf.h:353
PCCARD_HandleType::Instance
xmc_bank4_type * Instance
Definition: cf.h:345
PCCARD_HandleType::State
__IO PCCARD_StateType State
Definition: cf.h:349
PCCARD_HandleType::Init
xmc_pccard_init_type Init
Definition: cf.h:347
PCCARD_HandleType::Lock
LockType Lock
Definition: cf.h:351
dma_channel_type
type define dma channel register all
Definition: at32f403_dma.h:287
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
verification_result_struct
Definition: cf.h:297
verification_result_struct::CIS_READ_PASS
BOOL CIS_READ_PASS
Definition: cf.h:335
verification_result_struct::ATA_WRITE_SECTOR_PASS
BOOL ATA_WRITE_SECTOR_PASS
Definition: cf.h:331
verification_result_struct::ACESS_25_SECTORS_PASS
BOOL ACESS_25_SECTORS_PASS
Definition: cf.h:334
verification_result_struct::ATTRIBUTE_RW_PASS
BOOL ATTRIBUTE_RW_PASS
Definition: cf.h:336
verification_result_struct::ATA_READ_SECTOR_PASS
BOOL ATA_READ_SECTOR_PASS
Definition: cf.h:309
verification_result_struct::ATA_IDENTIFY_DRIVE_PASS
BOOL ATA_IDENTIFY_DRIVE_PASS
Definition: cf.h:302
verification_result_struct::ATA_EXECUTE_DRIVE_DIAG_PASS
BOOL ATA_EXECUTE_DRIVE_DIAG_PASS
Definition: cf.h:299
xmc_bank4_type
xmc bank4 registers
Definition: at32f403_xmc.h:629
xmc_bank4_type::tcr
__IO uint32_t tcr
Definition: at32f403_xmc.h:646
xmc_bank4_type::nwen
__IO uint32_t nwen
Definition: at32f403_xmc.h:640
xmc_bank4_type::bk4tmgmem_bit
struct xmc_bank4_type::@795::@803 bk4tmgmem_bit
xmc_bank4_type::amht
__IO uint32_t amht
Definition: at32f403_xmc.h:697
xmc_bank4_type::cmht
__IO uint32_t cmht
Definition: at32f403_xmc.h:682
xmc_bank4_type::bk4ctrl_bit
struct xmc_bank4_type::@791::@801 bk4ctrl_bit
xmc_bank4_type::cmst
__IO uint32_t cmst
Definition: at32f403_xmc.h:680
xmc_bank4_type::ioht
__IO uint32_t ioht
Definition: at32f403_xmc.h:712
xmc_bank4_type::iowt
__IO uint32_t iowt
Definition: at32f403_xmc.h:711
xmc_bank4_type::cmdhizt
__IO uint32_t cmdhizt
Definition: at32f403_xmc.h:683
xmc_bank4_type::iost
__IO uint32_t iost
Definition: at32f403_xmc.h:710
xmc_bank4_type::amwt
__IO uint32_t amwt
Definition: at32f403_xmc.h:696
xmc_bank4_type::tar
__IO uint32_t tar
Definition: at32f403_xmc.h:647
xmc_bank4_type::bk4tmgio_bit
struct xmc_bank4_type::@799::@805 bk4tmgio_bit
xmc_bank4_type::cmwt
__IO uint32_t cmwt
Definition: at32f403_xmc.h:681
xmc_bank4_type::amdhizt
__IO uint32_t amdhizt
Definition: at32f403_xmc.h:698
xmc_bank4_type::amst
__IO uint32_t amst
Definition: at32f403_xmc.h:695
xmc_bank4_type::bk4tmgatt_bit
struct xmc_bank4_type::@797::@804 bk4tmgatt_bit
xmc_bank4_type::iohizt
__IO uint32_t iohizt
Definition: at32f403_xmc.h:713
xmc_bank4_type::extmdbw
__IO uint32_t extmdbw
Definition: at32f403_xmc.h:643
xmc_nand_pccard_timinginit_type
nand timing parameters xmc
Definition: at32f403_xmc.h:283
xmc_nand_pccard_timinginit_type::mem_waite_time
uint32_t mem_waite_time
Definition: at32f403_xmc.h:286
xmc_nand_pccard_timinginit_type::mem_hold_time
uint32_t mem_hold_time
Definition: at32f403_xmc.h:287
xmc_nand_pccard_timinginit_type::mem_hiz_time
uint32_t mem_hiz_time
Definition: at32f403_xmc.h:288
xmc_nand_pccard_timinginit_type::mem_setup_time
uint32_t mem_setup_time
Definition: at32f403_xmc.h:285
xmc_pccard_init_type
xmc pccard init structure definition
Definition: at32f403_xmc.h:311
xmc_pccard_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:314
xmc_pccard_init_type::enable_wait
xmc_nand_pccard_wait_type enable_wait
Definition: at32f403_xmc.h:312
xmc_pccard_init_type::delay_time_cr
uint32_t delay_time_cr
Definition: at32f403_xmc.h:313


AT32F403 Firmwary Library: cf.h Source File

  • xmc
  • pc_card
  • pc_card
cf.h
Go to the documentation of this file.
1
24#ifndef __CF_H
25#define __CF_H
26
27/* Includes ------------------------------------------------------------------*/
28#include "stdint.h"
29#include "at32f403.h"
37#ifdef __cplusplus
38extern "C" {
39#endif
40
41
42 /* Exported typedef ----------------------------------------------------------*/
46#define FALSE 0
47#define TRUE 1
48#define XMC_BASE ((uint32_t)0x60000000)
49#define XMC_BANK4_ (XMC_BASE + 0x30000000)
50#define PCCARD_DEVICE_ADDRESS XMC_BANK4_ /* 0x9000 0000 */
51#define PCCARD_COMMON_SPACE_ADDRESS PCCARD_DEVICE_ADDRESS /* Common space size to @0x93FF FFFF */
52#define PCCARD_ATTRIBUTE_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x08000000)) /* Attribute space size to @0x9BFF FFFF */
53#define PCCARD_IO_SPACE_ADDRESS ((uint32_t)(XMC_BANK4_ + 0x0C000000)) /* IO space size to @0x9FFF FFFF */
54
55// In XMC document page 545/1128, the XMC is not supported True IDE mode. //
56#define PCCARD_IO_SPACE_PRIMARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x1F0)) /* IO space size to @0x9FFF FFFF */
57#define PCCARD_IO_SPACE_SECONDARY_ADDR ((uint32_t)(XMC_BANK4_ + PCCARD_IO_SPACE_ADDRESS + 0x170)) /* IO space size to @0x9FFF FFFF */
58
59 /* Compact Flash-ATA registers description */
60#define ATA_DATA ((uint8_t)0x00) /* Data register */
61#define ATA_ERROR_REG ((uint8_t)0x01) /* Error register */
62#define ATA_FEATURE_REG ((uint8_t)0x01) /* Feature register */
63#define ATA_SECTOR_COUNT ((uint8_t)0x02) /* Sector Count register */
64#define ATA_SECTOR_NUMBER ((uint8_t)0x03) /* Sector Number register */
65#define ATA_CYLINDER_LOW ((uint8_t)0x04) /* Cylinder low register */
66#define ATA_CYLINDER_HIGH ((uint8_t)0x05) /* Cylinder high register */
67#define ATA_CARD_HEAD ((uint8_t)0x06) /* Card/Head register */
68#define ATA_STATUS_CMD ((uint8_t)0x07) /* Status(read)/Command(write) register */
69#define ATA_STATUS_CMD_ALTERNATE ((uint8_t)0x0E) /* Alternate Status(read)/Command(write) register */
70#define ATA_COMMON_DATA_AREA ((uint16_t)0x0400) /* Start of data area (for Common access only!) */
71
72// CFA spec. page 19
73// The configuration of the CompactFlash Card will be controlled using the standard
74// PCMCIA configuration registers starting at address 200h in the Attribute Memory space
75 /* attribute memory space register description */
76#define ATTRIBUTE_MEM_BASE 0
77#define ATTRIBUTE_MEM_CONFIG_BASE 0x200
78#define CONFIG_OPTION_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x00
79#define CARD_CONFIG_STATUS_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x02
80#define PIN_REPLACE_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x04
81#define SOCKET_COPY_REG ATTRIBUTE_MEM_CONFIG_BASE + 0x06
82// #define ATA_CARD_CONFIGURATION ((uint16_t)0x0202) /* Card Configuration and Status Register */
83
84 /* configuration option register */
85#define CONF0_BIT 0x01
86#define CONF1_BIT 0x02
87#define CONF2_BIT 0x04
88#define CONF3_BIT 0x08
89#define CONF4_BIT 0x10
90#define CONF5_BIT 0x20
91#define LEVLREQ_BIT 0x40
92#define SRESET_BIT 0x80
93
94#define CF_MEM_MAP_MODE 0x00
95#define CF_IO_16_MODE 0x01
96#define CF_IO_PRICH_MODE 0x02 // the XMC is not supported True IDE mode.
97#define CF_IO_SECCH_MODE 0x03 // the XMC is not supported True IDE mode.
98
99 /* Compact Flash-ATA commands */
100#define ATA_CHECK_POWER_MODE_CMD ((uint8_t)0xE5)
101#define ATA_EXECUTE_DRIVE_DIAG_CMD ((uint8_t)0x90)
102#define ATA_ERASE_SECTOR_CMD ((uint8_t)0xC0)
103#define ATA_FORMAT_TRACK_CMD ((uint8_t)0x50)
104#define ATA_IDENTIFY_DRIVE_CMD ((uint8_t)0xEC)
105#define ATA_IDLE_CMD ((uint8_t)0xE3)
106#define ATA_IDLE_IMMEDIATE_CMD ((uint8_t)0xE1)
107#define ATA_INIT_DRIVE_PARA_CMD ((uint8_t)0x91)
108#define ATA_READ_BUFFER_CMD ((uint8_t)0xE4)
109#define ATA_READ_LONG_SECTOR_CMD ((uint8_t)0x22)
110#define ATA_READ_MULTIPLE_CMD ((uint8_t)0xC4)
111#define ATA_READ_SECTOR_CMD ((uint8_t)0x20)
112#define ATA_READ_VERIFY_SECTOR_CMD ((uint8_t)0x40)
113#define ATA_RECALIBRATE_CMD ((uint8_t)0x10)
114#define ATA_REQUEST_SENSE_CMD ((uint8_t)0x03)
115#define ATA_SECURITY_DISABLE_PASSWORD_CMD ((uint8_t)0xF6)
116#define ATA_SECURITY_EREASE_PREPARE_CMD ((uint8_t)0xF3)
117#define ATA_SECURITY_ERASE_UNIT_CMD ((uint8_t)0xF4)
118#define ATA_SECURITY_FREEZE_LOCK_CMD ((uint8_t)0xF5)
119#define ATA_SECURITY_SET_PASSWORD_CMD ((uint8_t)0xF1)
120#define ATA_SECURITY_UNLOCK_CMD ((uint8_t)0xF2)
121#define ATA_SEEK_CMD ((uint8_t)0x70)
122#define ATA_SET_FEATURE_CMD ((uint8_t)0xEF)
123#define ATA_SET_MULTIPLE_MODE_CMD ((uint8_t)0xC6)
124#define ATA_SET_SLEEP_MODE_CMD ((uint8_t)0xE6)
125#define ATA_STANDBY_CMD ((uint8_t)0xE2)
126#define ATA_STANDBY_IMMEDIATE_CMD ((uint8_t)0xE0)
127#define ATA_TRANSLATE_SECTOR_CMD ((uint8_t)0x87)
128#define ATA_WEAR_LEVEL_CMD ((uint8_t)0xF5)
129#define ATA_WRITE_BUFFER_CMD ((uint8_t)0xE8)
130#define ATA_WRITE_LONG_SECTOR_CMD ((uint8_t)0x32)
131#define ATA_WRITE_MULTIPLE_CMD ((uint8_t)0xC5)
132#define ATA_WRITE_MULTIPLE_WO_ERASE_CMD ((uint8_t)0xCD)
133#define ATA_WRITE_SECTOR_CMD ((uint8_t)0x30)
134#define ATA_WRITE_SECTOR_WO_ERASE_CMD ((uint8_t)0x38)
135#define ATA_WRITE_VERIFY_CMD ((uint8_t)0x3C)
136
137 /* feature command */
138#define ENABLE_8BIT_MODE 0x01
139#define ENABLE_PWR_LV1 0x0a
140#define DISABLE_READ_LOOK_AHEAD 0x55
141#define DISABLE_POR 0x66
142#define NOP 0x69
143#define DISABLE_8BIT_MODE 0x81
144#define DISABLE_PWR_LV1 0x8a
145#define SET_HOST_CUR_SOURCE_CAP 0x9a
146#define APPLY_4BYTE_DATA_RW_LONG_CMD 0xbb
147#define ENABLE_POR 0xcc
148
149 /* status register */
150#define BUSY_BIT 0x80
151#define RDY_BIT 0x40
152#define DWF_BIT 0x20
153#define DSC_BIT 0x10
154#define DRQ_BIT 0x08
155#define CORR_BIT 0x04
156#define ERR_BIT 0x01
157
158 /* error register */
159#define BBK_BIT 0x80
160#define UNC_BIT 0x40
161#define IDNF_BIT 0x10
162#define ABRT_BIT 0x04
163#define AMNF_BIT 0x01
164
165 /* Compact Flash status */
166#define PCCARD_TIMEOUT_ERROR ((uint8_t)0x60)
167#define PCCARD_BUSY ((uint8_t)0x80)
168#define PCCARD_PROGR ((uint8_t)0x01)
169#define PCCARD_READY ((uint8_t)0x40)
170
171//#define PCCARD_SECTOR_SIZE ((uint32_t)255) /* In half words */
172#define PCCARD_SECTOR_SIZE ((uint32_t)512)
173#define PCCARD_LONG_SECTOR_SIZE ((uint32_t)516)
174#define PCCARD_25_SECTORS_SIZES ((uint32_t)(512*25))
175 /* CF CIS information */
176#define CISTPL_DEVICE 0x01
177#define CISTPL_DEVICE_OC 0x1c
178#define CISTPL_JEDEC_C 0x18
179#define CISTPL_MANFID 0x20
180#define CISTPL_VERS_1 0x15
181#define CISTPL_FUNCID 0x21
182#define CISTPL_FUNCE 0x22
183#define CISTPL_CONFIG 0x1a
184#define CISTPL_CFTABLE_ENTRY 0x1b
185#define CISTPL_NO_LINK 0x14
186#define CISTPL_END 0xff
187#define TPL_LINK_LOC 16
188#define MAX_CIS_LEN 0x200
189
190 /* Compact Flash redefinition */
191
192#define CF_DEVICE_ADDRESS PCCARD_DEVICE_ADDRESS
193#define CF_ATTRIBUTE_SPACE_ADDRESS PCCARD_ATTRIBUTE_SPACE_ADDRESS
194#define CF_COMMON_SPACE_ADDRESS PCCARD_COMMON_SPACE_ADDRESS
195#define CF_IO_SPACE_ADDRESS PCCARD_IO_SPACE_ADDRESS
196#define CF_IO_SPACE_PRIMARY_ADDR PCCARD_IO_SPACE_PRIMARY_ADDR
197
198#define CF_TIMEOUT_ERROR PCCARD_TIMEOUT_ERROR
199#define CF_BUSY PCCARD_BUSY
200#define CF_PROGR PCCARD_PROGR
201#define CF_READY PCCARD_READY
202
203#define CF_SECTOR_SIZE PCCARD_SECTOR_SIZE
204#define Read_Transfer 1
205#define Write_Transfer 0
206#define Enable_8_bit_Transfer 1
207#define Enable_16_bit_Transfer 0
208
209#define CF_print( cond, _x_) \
210 if ( cond ) { \
211 printf _x_ ; \
212 }
213
214 /* For print message level */
215#define ERR_REG_INFO 0
216#define STS_REG_INFO 0
217#define PRT_INIT_INFO 1
218#define PRT_CMD_INFO 0
219#define PRT_ERR_INFO 0
220
225 /* Exported typedef ----------------------------------------------------------*/
230 typedef unsigned char BOOL;
231 typedef enum
232 {
233 UNLOCKED = 0x00,
234 LOCKED = 0x01
235 } LockType;
236 typedef enum
237 {
238 STATUS_OK = 0x00,
239 STATUS_ERROR = 0x01,
240 } StatusType;
241
245 typedef enum
246 {
247 PCCARD_STATE_RESET = 0x00,
248 PCCARD_STATE_READY = 0x01,
249 PCCARD_STATE_BUSY = 0x02,
250 PCCARD_STATE_ERROR = 0x04
251 } PCCARD_StateType;
252
253
254 /* CF type */
255 typedef struct
256 {
257 uint16_t Default_Cylinder;
258 uint8_t Default_Head;
259 uint16_t Default_Sector;
260 uint16_t Current_Cylinder;
261 uint8_t Current_Head;
262 uint16_t Current_Sector;
263 uint32_t Total_Sector;
264 uint32_t Total_LBA_Sector;
265 uint16_t Max_Mutiple_Sector;
266 uint16_t Mutiple_Sector_Setting;
267 } CFCardInfoStruct;
268
269 /* CF address struct */
270 typedef struct
271 {
272 uint16_t Sector_Count;
273 uint16_t Cylinder;
274 uint8_t Head;
275 uint8_t Sector;
276 uint8_t Drv;
277 uint32_t SectorSize;
278 } CFCardAddrStruct;
279
280 /* CF card structure */
281 typedef struct
282 {
283 uint32_t IOAddr;
284 BOOL DMAEnable;
285 BOOL Enable_8_bit_mode;
286 CFCardInfoStruct CFCardInfo;
287 CFCardAddrStruct CFAddr;
288 uint16_t Protocol;
289
290 /* Drive Name */
291 uint32_t Drive;
292
293 } CFCardStruct;
294
295 /* ATA-Command verification result */
296 typedef struct
297 {
298 BOOL ATA_CHECK_POWER_MODE_PASS;
299 BOOL ATA_EXECUTE_DRIVE_DIAG_PASS;
300 BOOL ATA_ERASE_SECTOR_PASS;
301 BOOL ATA_FORMAT_TRACK_PASS;
302 BOOL ATA_IDENTIFY_DRIVE_PASS;
303 BOOL ATA_IDLE_PASS;
304 BOOL ATA_IDLE_IMMEDIATE_PASS;
305 BOOL ATA_INIT_DRIVE_PARA_PASS;
306 BOOL ATA_READ_BUFFER_PASS;
307 BOOL ATA_READ_LONG_SECTOR_PASS;
308 BOOL ATA_READ_MULTIPLE_PASS;
309 BOOL ATA_READ_SECTOR_PASS;
310 BOOL ATA_READ_VERIFY_SECTOR_PASS;
311 BOOL ATA_RECALIBRATE_PASS;
312 BOOL ATA_REQUEST_SENSE_PASS;
313 BOOL ATA_SECURITY_DISABLE_PASSWORD_PASS;
314 BOOL ATA_SECURITY_EREASE_PREPARE_PASS;
315 BOOL ATA_SECURITY_ERASE_UNIT_PASS;
316 BOOL ATA_SECURITY_FREEZE_LOCK_PASS;
317 BOOL ATA_SECURITY_SET_PASSWORD_PASS;
318 BOOL ATA_SECURITY_UNLOCK_PASS;
319 BOOL ATA_SEEK_PASS;
320 BOOL ATA_SET_FEATURE_PASS;
321 BOOL ATA_SET_MULTIPLE_MODE_PASS;
322 BOOL ATA_SET_SLEEP_MODE_PASS;
323 BOOL ATA_STANDBY_PASS;
324 BOOL ATA_STANDBY_IMMEDIATE_PASS;
325 BOOL ATA_TRANSLATE_SECTOR_PASS;
326 BOOL ATA_WEAR_LEVEL_PASS;
327 BOOL ATA_WRITE_BUFFER_PASS;
328 BOOL ATA_WRITE_LONG_SECTOR_PASS;
329 BOOL ATA_WRITE_MULTIPLE_PASS;
330 BOOL ATA_WRITE_MULTIPLE_WO_ERASE_PASS;
331 BOOL ATA_WRITE_SECTOR_PASS;
332 BOOL ATA_WRITE_SECTOR_WO_ERASE_PASS;
333 BOOL ATA_WRITE_VERIFY_PASS;
334 BOOL ACESS_25_SECTORS_PASS;
335 BOOL CIS_READ_PASS;
336 BOOL ATTRIBUTE_RW_PASS;
337
338 } verification_result_struct;
339
343 typedef struct
344 {
345 xmc_bank4_type *Instance;
347 xmc_pccard_init_type Init;
349 __IO PCCARD_StateType State;
351 LockType Lock;
353 CFCardStruct CF;
354
355 } PCCARD_HandleType;
360 /* Exported constants --------------------------------------------------------*/
361 /* Exported macro ------------------------------------------------------------*/
370#define __PCCARD_Reset_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = PCCARD_STATE_RESET)
375 /* Exported functions --------------------------------------------------------*/
383 /* Initialization/de-initialization functions **********************************/
384 StatusType PCCARD_Init(PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming);
385 StatusType PCCARD_DeInit(PCCARD_HandleType *hpccard);
386 StatusType Enable_Wait_Feature(PCCARD_HandleType *hpccard);
394 /* IO operation functions *****************************************************/
395
396 BOOL PCCARD_Read_ID(PCCARD_HandleType *hpccard);
397 BOOL PCCARD_Identify(PCCARD_HandleType *hpccard);
398 BOOL PCCARD_Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
399 BOOL PCCARD_Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
400 BOOL PCCARD_Erase_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count);
401 BOOL PCCARD_Diagnostic(PCCARD_HandleType *hpccard);
402 BOOL PCCARD_Reset(PCCARD_HandleType *hpccard);
403 BOOL PCCARD_Check_Power_Mode(PCCARD_HandleType *hpccard);
404 BOOL PCCARD_Idle(PCCARD_HandleType *hpccard, uint32_t Sector_Count);
405 BOOL PCCARD_Idle_Immediate(PCCARD_HandleType *hpccard);
406 BOOL PCCARD_Set_Sleep_Mode(PCCARD_HandleType *hpccard);
407 BOOL PCCARD_Standby(PCCARD_HandleType *hpccard);
408 BOOL PCCARD_Standby_Immediate(PCCARD_HandleType *hpccard);
409 BOOL PCCARD_Reuqest_Sense(PCCARD_HandleType *hpccard);
410 BOOL PCCARD_Read_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer);
411 BOOL PCCARD_Write_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer);
412 BOOL PCCARD_Recalibrate(PCCARD_HandleType *hpccard);
413 BOOL PCCARD_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count);
414 BOOL PCCARD_Seek(PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count);
415 BOOL PCCARD_Translate_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address);
416 BOOL PCCARD_Read_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer);
417 BOOL PCCARD_Write_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer);
418 BOOL PCCARD_Write_Sector_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
419 BOOL PCCARD_Format_Track(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
420 BOOL PCCARD_Read_Verify_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count);
421 BOOL PCCARD_Write_Verify(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
422 BOOL PCCARD_Set_Multiple_Mode(PCCARD_HandleType *hpccard, uint32_t Sector_Count);
423 BOOL PCCARD_Set_Features(PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature);
424 BOOL PCCARD_Write_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
425 BOOL PCCARD_Read_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
426 BOOL PCCARD_Write_Multiple_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count);
427
428 BOOL ReadCFCardCISInformation(PCCARD_HandleType *hpccard);
429 BOOL CF_SendCommand(PCCARD_HandleType *hpccard, uint8_t Cmd);
430 BOOL TaskFileRegIsValid(PCCARD_HandleType *hpccard);
431 BOOL Vaild_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count);
432
433 void Translate_CHSAddr(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count, uint16_t Sector_Limit);
434 void PCCARD_IRQHandler(PCCARD_HandleType *hpccard);
435 void PCCARD_ITCallback(PCCARD_HandleType *hpccard);
436 void show_verification_result(verification_result_struct *result);
437 uint8_t *Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size);
438 uint8_t *Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size);
439
447 /* PCCARD State functions *******************************************************/
448 PCCARD_StateType PCCARD_GetState(PCCARD_HandleType *hpccard);
449 uint8_t PCCARD_Read_ERROR_REG(PCCARD_HandleType *hpccard);
450 uint8_t PCCARD_Read_STATUS_REG(PCCARD_HandleType *hpccard);
451
452
453#define __XMC_PCCARD_GET_FLAG(__INSTANCE__, __FLAG__) (((__INSTANCE__)->BK4STS &(__FLAG__)) == (__FLAG__))
454#define __XMC_PCCARD_CLEAR_FLAG(__INSTANCE__, __FLAG__) BIT_CLEAR((__INSTANCE__)->BK4STS, (__FLAG__))
455
456 StatusType XMC_PCCARD_InitCtrl(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit);
457 StatusType XMC_Enable_Wait_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init);
458 StatusType XMC_Enable_16bit_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit);
459 StatusType XMC_PCCARD_InitCommonSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing);
460 StatusType XMC_PCCARD_InitAttributeSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing);
461 StatusType XMC_PCCARD_InitIOSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing);
462
463
464#define XMC_BKxCTRL_DEV_PCCARD ((uint32_t)0x00000000)
465#define BKxTMGMEM_CLEAR_MASK ((uint32_t)(XMC_BK4TMGMEM_STP | XMC_BK4TMGMEM_OP |\
466 XMC_BK4TMGMEM_HLD | XMC_BK4TMGMEM_WRSTP))
467
468#define BKxTMGATT_CLEAR_MASK ((uint32_t)(XMC_BK4TMGATT_STP | XMC_BK4TMGATT_OP |\
469 XMC_BK4TMGATT_HLD | XMC_BK4TMGATT_WRSTP))
470
471#define BK4TMGIO_CLEAR_MASK ((uint32_t)(XMC_BK4TMGIO_STP | XMC_BK4TMGIO_OP | \
472 XMC_BK4TMGIO_HLD | XMC_BK4TMGIO_WRSTP))
473#endif
480#ifdef __cplusplus
481}
482#endif
483
at32f403.h
at32f403 header file
PCCARD_Init
StatusType PCCARD_Init(PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming)
Perform the PCCARD memory Initialization sequence.
Definition: cf.c:249
Enable_Wait_Feature
StatusType Enable_Wait_Feature(PCCARD_HandleType *hpccard)
Enable Wait Feature.
Definition: cf.c:379
PCCARD_DeInit
StatusType PCCARD_DeInit(PCCARD_HandleType *hpccard)
Perform the PCCARD memory De-initialization sequence.
Definition: cf.c:409
PCCARD_Diagnostic
BOOL PCCARD_Diagnostic(PCCARD_HandleType *hpccard)
Diagnostic.
Definition: cf.c:796
PCCARD_Write_Verify
BOOL PCCARD_Write_Verify(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Verify
Definition: cf.c:1342
PCCARD_Identify
BOOL PCCARD_Identify(PCCARD_HandleType *hpccard)
Identify.
Definition: cf.c:444
TaskFileRegIsValid
BOOL TaskFileRegIsValid(PCCARD_HandleType *hpccard)
Check the PCCARD TaskFileReg valid.
Definition: cf.c:2328
PCCARD_Reset
BOOL PCCARD_Reset(PCCARD_HandleType *hpccard)
Reset the PCCARD memory.
Definition: cf.c:2205
PCCARD_Write_Multiple
BOOL PCCARD_Write_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple
Definition: cf.c:1667
PCCARD_Reuqest_Sense
BOOL PCCARD_Reuqest_Sense(PCCARD_HandleType *hpccard)
Reuqest Sense the pccard.
Definition: cf.c:1048
PCCARD_Write_Long_Sector
BOOL PCCARD_Write_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
write long sector
Definition: cf.c:1999
ReadCFCardCISInformation
BOOL ReadCFCardCISInformation(PCCARD_HandleType *hpccard)
Read CIS Information.
Definition: cf.c:2276
PCCARD_Read_Multiple
BOOL PCCARD_Read_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
read Multiple
Definition: cf.c:1748
PCCARD_Read_Sector
BOOL PCCARD_Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Read sector from PCCARD memory.
Definition: cf.c:583
PCCARD_Set_Sleep_Mode
BOOL PCCARD_Set_Sleep_Mode(PCCARD_HandleType *hpccard)
Set sleep mode.
Definition: cf.c:934
PCCARD_ITCallback
void PCCARD_ITCallback(PCCARD_HandleType *hpccard)
PCCARD_Set_Features
BOOL PCCARD_Set_Features(PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature)
set features
Definition: cf.c:1443
PCCARD_Write_Multiple_WO_ERASE
BOOL PCCARD_Write_Multiple_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple WO_ERASE
Definition: cf.c:1829
PCCARD_Read_Verify_Sector
BOOL PCCARD_Read_Verify_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count)
read Verify Sector
Definition: cf.c:1256
CF_SendCommand
BOOL CF_SendCommand(PCCARD_HandleType *hpccard, uint8_t Cmd)
Send command.
Definition: cf.c:2301
Vaild_Init_Drive_Para
BOOL Vaild_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Check the PCCARD info valid.
Definition: cf.c:2349
PCCARD_Write_Sector
BOOL PCCARD_Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Write sector to PCCARD memory.
Definition: cf.c:666
PCCARD_Idle_Immediate
BOOL PCCARD_Idle_Immediate(PCCARD_HandleType *hpccard)
Idle immediate.
Definition: cf.c:896
PCCARD_Standby_Immediate
BOOL PCCARD_Standby_Immediate(PCCARD_HandleType *hpccard)
Standby Immediate.
Definition: cf.c:1010
PCCARD_Format_Track
BOOL PCCARD_Format_Track(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
format track
Definition: cf.c:1176
PCCARD_Read_ID
BOOL PCCARD_Read_ID(PCCARD_HandleType *hpccard)
Read Compact Flash's ID.
Definition: cf.c:468
PCCARD_Idle
BOOL PCCARD_Idle(PCCARD_HandleType *hpccard, uint32_t Sector_Count)
Set idle.
Definition: cf.c:857
PCCARD_Translate_Sector
BOOL PCCARD_Translate_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address)
Translate sector.
Definition: cf.c:1551
PCCARD_Seek
BOOL PCCARD_Seek(PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count)
seek pccard
Definition: cf.c:1137
PCCARD_IRQHandler
void PCCARD_IRQHandler(PCCARD_HandleType *hpccard)
This function handles PCCARD device interrupt request.
Definition: cf.c:2434
Read_Sector
uint8_t * Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
read sector
Definition: cf.c:2088
PCCARD_Erase_Sector
BOOL PCCARD_Erase_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count)
Erase sector from PCCARD memory.
Definition: cf.c:749
Write_Sector
uint8_t * Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Transfer_Size)
write sector
Definition: cf.c:2147
PCCARD_Init_Drive_Para
BOOL PCCARD_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Init drive para.
Definition: cf.c:1110
PCCARD_Read_Long_Sector
BOOL PCCARD_Read_Long_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint8_t *pBuffer)
read long sector
Definition: cf.c:1909
show_verification_result
void show_verification_result(verification_result_struct *result)
printf the verification result.
Definition: cf.c:2412
PCCARD_Standby
BOOL PCCARD_Standby(PCCARD_HandleType *hpccard)
Set Standby.
Definition: cf.c:972
PCCARD_Recalibrate
BOOL PCCARD_Recalibrate(PCCARD_HandleType *hpccard)
Recalibrate the pccard.
Definition: cf.c:1078
PCCARD_Write_Buffer
BOOL PCCARD_Write_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
write buffer
Definition: cf.c:1508
PCCARD_Set_Multiple_Mode
BOOL PCCARD_Set_Multiple_Mode(PCCARD_HandleType *hpccard, uint32_t Sector_Count)
set multiple mode
Definition: cf.c:1421
PCCARD_Check_Power_Mode
BOOL PCCARD_Check_Power_Mode(PCCARD_HandleType *hpccard)
Check Power Mode.
Definition: cf.c:825
Translate_CHSAddr
void Translate_CHSAddr(PCCARD_HandleType *hpccard, uint32_t Start, uint16_t Sector_Count, uint16_t Sector_Limit)
Definition: cf.c:2247
PCCARD_Read_Buffer
BOOL PCCARD_Read_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
read buffer
Definition: cf.c:1465
PCCARD_Write_Sector_WO_ERASE
BOOL PCCARD_Write_Sector_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write sector WO_ERASE
Definition: cf.c:1586
XMC_PCCARD_InitCommonSpaceTiming
StatusType XMC_PCCARD_InitCommonSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init CommonSpace Timing.
Definition: cf.c:199
PCCARD_Read_STATUS_REG
uint8_t PCCARD_Read_STATUS_REG(PCCARD_HandleType *hpccard)
Get the PCCARD status reg value.
Definition: cf.c:2489
XMC_PCCARD_InitCtrl
StatusType XMC_PCCARD_InitCtrl(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
XMC InitCtrl.
Definition: cf.c:143
XMC_Enable_Wait_Feature
StatusType XMC_Enable_Wait_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init)
XMC Enable Wait Feature.
Definition: cf.c:166
XMC_PCCARD_InitIOSpaceTiming
StatusType XMC_PCCARD_InitIOSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init IOSpace Timing.
Definition: cf.c:229
XMC_PCCARD_InitAttributeSpaceTiming
StatusType XMC_PCCARD_InitAttributeSpaceTiming(xmc_bank4_type *Device, xmc_nand_pccard_timinginit_type *Timing)
Init AttributeSpace Timing.
Definition: cf.c:214
PCCARD_GetState
PCCARD_StateType PCCARD_GetState(PCCARD_HandleType *hpccard)
return the PCCARD controller state
Definition: cf.c:2464
PCCARD_Read_ERROR_REG
uint8_t PCCARD_Read_ERROR_REG(PCCARD_HandleType *hpccard)
Get the PCCARD error reg value.
Definition: cf.c:2474
XMC_Enable_16bit_Feature
StatusType XMC_Enable_16bit_Feature(xmc_bank4_type *Device, xmc_pccard_init_type *Init, uint8_t Set_reg_8_bit)
Set 16bit_Feature.
Definition: cf.c:180
PCCARD_StateType
PCCARD_StateType
HAL PCCARD State structures definition.
Definition: cf.h:246
LockType
LockType
Definition: cf.h:232
BOOL
unsigned char BOOL
Definition: cf.h:230
StatusType
StatusType
Definition: cf.h:237
PCCARD_STATE_READY
@ PCCARD_STATE_READY
Definition: cf.h:248
PCCARD_STATE_RESET
@ PCCARD_STATE_RESET
Definition: cf.h:247
PCCARD_STATE_BUSY
@ PCCARD_STATE_BUSY
Definition: cf.h:249
PCCARD_STATE_ERROR
@ PCCARD_STATE_ERROR
Definition: cf.h:250
UNLOCKED
@ UNLOCKED
Definition: cf.h:233
LOCKED
@ LOCKED
Definition: cf.h:234
STATUS_ERROR
@ STATUS_ERROR
Definition: cf.h:239
STATUS_OK
@ STATUS_OK
Definition: cf.h:238
CFCardAddrStruct
Definition: cf.h:271
CFCardAddrStruct::Cylinder
uint16_t Cylinder
Definition: cf.h:273
CFCardAddrStruct::Drv
uint8_t Drv
Definition: cf.h:276
CFCardAddrStruct::Sector
uint8_t Sector
Definition: cf.h:275
CFCardAddrStruct::Head
uint8_t Head
Definition: cf.h:274
CFCardAddrStruct::SectorSize
uint32_t SectorSize
Definition: cf.h:277
CFCardAddrStruct::Sector_Count
uint16_t Sector_Count
Definition: cf.h:272
CFCardInfoStruct
Definition: cf.h:256
CFCardInfoStruct::Max_Mutiple_Sector
uint16_t Max_Mutiple_Sector
Definition: cf.h:265
CFCardInfoStruct::Default_Sector
uint16_t Default_Sector
Definition: cf.h:259
CFCardInfoStruct::Default_Head
uint8_t Default_Head
Definition: cf.h:258
CFCardInfoStruct::Mutiple_Sector_Setting
uint16_t Mutiple_Sector_Setting
Definition: cf.h:266
CFCardInfoStruct::Current_Cylinder
uint16_t Current_Cylinder
Definition: cf.h:260
CFCardInfoStruct::Current_Head
uint8_t Current_Head
Definition: cf.h:261
CFCardInfoStruct::Total_LBA_Sector
uint32_t Total_LBA_Sector
Definition: cf.h:264
CFCardInfoStruct::Current_Sector
uint16_t Current_Sector
Definition: cf.h:262
CFCardInfoStruct::Total_Sector
uint32_t Total_Sector
Definition: cf.h:263
CFCardInfoStruct::Default_Cylinder
uint16_t Default_Cylinder
Definition: cf.h:257
CFCardStruct
Definition: cf.h:282
CFCardStruct::CFCardInfo
CFCardInfoStruct CFCardInfo
Definition: cf.h:286
CFCardStruct::IOAddr
uint32_t IOAddr
Definition: cf.h:283
CFCardStruct::DMAEnable
BOOL DMAEnable
Definition: cf.h:284
CFCardStruct::Drive
uint32_t Drive
Definition: cf.h:291
CFCardStruct::Protocol
uint16_t Protocol
Definition: cf.h:288
CFCardStruct::Enable_8_bit_mode
BOOL Enable_8_bit_mode
Definition: cf.h:285
CFCardStruct::CFAddr
CFCardAddrStruct CFAddr
Definition: cf.h:287
PCCARD_HandleType
XMC_PCCARD handle Structure definition.
Definition: cf.h:344
PCCARD_HandleType::CF
CFCardStruct CF
Definition: cf.h:353
PCCARD_HandleType::Instance
xmc_bank4_type * Instance
Definition: cf.h:345
PCCARD_HandleType::State
__IO PCCARD_StateType State
Definition: cf.h:349
PCCARD_HandleType::Init
xmc_pccard_init_type Init
Definition: cf.h:347
PCCARD_HandleType::Lock
LockType Lock
Definition: cf.h:351
verification_result_struct
Definition: cf.h:297
verification_result_struct::CIS_READ_PASS
BOOL CIS_READ_PASS
Definition: cf.h:335
verification_result_struct::ATA_SECURITY_EREASE_PREPARE_PASS
BOOL ATA_SECURITY_EREASE_PREPARE_PASS
Definition: cf.h:314
verification_result_struct::ATA_WRITE_MULTIPLE_WO_ERASE_PASS
BOOL ATA_WRITE_MULTIPLE_WO_ERASE_PASS
Definition: cf.h:330
verification_result_struct::ATA_STANDBY_IMMEDIATE_PASS
BOOL ATA_STANDBY_IMMEDIATE_PASS
Definition: cf.h:324
verification_result_struct::ATA_TRANSLATE_SECTOR_PASS
BOOL ATA_TRANSLATE_SECTOR_PASS
Definition: cf.h:325
verification_result_struct::ATA_SET_MULTIPLE_MODE_PASS
BOOL ATA_SET_MULTIPLE_MODE_PASS
Definition: cf.h:321
verification_result_struct::ATA_WRITE_MULTIPLE_PASS
BOOL ATA_WRITE_MULTIPLE_PASS
Definition: cf.h:329
verification_result_struct::ATA_WRITE_LONG_SECTOR_PASS
BOOL ATA_WRITE_LONG_SECTOR_PASS
Definition: cf.h:328
verification_result_struct::ATA_INIT_DRIVE_PARA_PASS
BOOL ATA_INIT_DRIVE_PARA_PASS
Definition: cf.h:305
verification_result_struct::ATA_READ_LONG_SECTOR_PASS
BOOL ATA_READ_LONG_SECTOR_PASS
Definition: cf.h:307
verification_result_struct::ATA_WRITE_SECTOR_PASS
BOOL ATA_WRITE_SECTOR_PASS
Definition: cf.h:331
verification_result_struct::ATA_REQUEST_SENSE_PASS
BOOL ATA_REQUEST_SENSE_PASS
Definition: cf.h:312
verification_result_struct::ATA_SET_FEATURE_PASS
BOOL ATA_SET_FEATURE_PASS
Definition: cf.h:320
verification_result_struct::ATA_FORMAT_TRACK_PASS
BOOL ATA_FORMAT_TRACK_PASS
Definition: cf.h:301
verification_result_struct::ATA_SECURITY_ERASE_UNIT_PASS
BOOL ATA_SECURITY_ERASE_UNIT_PASS
Definition: cf.h:315
verification_result_struct::ACESS_25_SECTORS_PASS
BOOL ACESS_25_SECTORS_PASS
Definition: cf.h:334
verification_result_struct::ATA_SEEK_PASS
BOOL ATA_SEEK_PASS
Definition: cf.h:319
verification_result_struct::ATA_SET_SLEEP_MODE_PASS
BOOL ATA_SET_SLEEP_MODE_PASS
Definition: cf.h:322
verification_result_struct::ATTRIBUTE_RW_PASS
BOOL ATTRIBUTE_RW_PASS
Definition: cf.h:336
verification_result_struct::ATA_ERASE_SECTOR_PASS
BOOL ATA_ERASE_SECTOR_PASS
Definition: cf.h:300
verification_result_struct::ATA_SECURITY_UNLOCK_PASS
BOOL ATA_SECURITY_UNLOCK_PASS
Definition: cf.h:318
verification_result_struct::ATA_SECURITY_FREEZE_LOCK_PASS
BOOL ATA_SECURITY_FREEZE_LOCK_PASS
Definition: cf.h:316
verification_result_struct::ATA_READ_SECTOR_PASS
BOOL ATA_READ_SECTOR_PASS
Definition: cf.h:309
verification_result_struct::ATA_SECURITY_SET_PASSWORD_PASS
BOOL ATA_SECURITY_SET_PASSWORD_PASS
Definition: cf.h:317
verification_result_struct::ATA_STANDBY_PASS
BOOL ATA_STANDBY_PASS
Definition: cf.h:323
verification_result_struct::ATA_CHECK_POWER_MODE_PASS
BOOL ATA_CHECK_POWER_MODE_PASS
Definition: cf.h:298
verification_result_struct::ATA_IDENTIFY_DRIVE_PASS
BOOL ATA_IDENTIFY_DRIVE_PASS
Definition: cf.h:302
verification_result_struct::ATA_WRITE_SECTOR_WO_ERASE_PASS
BOOL ATA_WRITE_SECTOR_WO_ERASE_PASS
Definition: cf.h:332
verification_result_struct::ATA_EXECUTE_DRIVE_DIAG_PASS
BOOL ATA_EXECUTE_DRIVE_DIAG_PASS
Definition: cf.h:299
verification_result_struct::ATA_IDLE_PASS
BOOL ATA_IDLE_PASS
Definition: cf.h:303
verification_result_struct::ATA_RECALIBRATE_PASS
BOOL ATA_RECALIBRATE_PASS
Definition: cf.h:311
verification_result_struct::ATA_WRITE_BUFFER_PASS
BOOL ATA_WRITE_BUFFER_PASS
Definition: cf.h:327
verification_result_struct::ATA_SECURITY_DISABLE_PASSWORD_PASS
BOOL ATA_SECURITY_DISABLE_PASSWORD_PASS
Definition: cf.h:313
verification_result_struct::ATA_READ_VERIFY_SECTOR_PASS
BOOL ATA_READ_VERIFY_SECTOR_PASS
Definition: cf.h:310
verification_result_struct::ATA_READ_MULTIPLE_PASS
BOOL ATA_READ_MULTIPLE_PASS
Definition: cf.h:308
verification_result_struct::ATA_READ_BUFFER_PASS
BOOL ATA_READ_BUFFER_PASS
Definition: cf.h:306
verification_result_struct::ATA_WRITE_VERIFY_PASS
BOOL ATA_WRITE_VERIFY_PASS
Definition: cf.h:333
verification_result_struct::ATA_WEAR_LEVEL_PASS
BOOL ATA_WEAR_LEVEL_PASS
Definition: cf.h:326
verification_result_struct::ATA_IDLE_IMMEDIATE_PASS
BOOL ATA_IDLE_IMMEDIATE_PASS
Definition: cf.h:304
xmc_bank4_type
xmc bank4 registers
Definition: at32f403_xmc.h:629
xmc_nand_pccard_timinginit_type
nand timing parameters xmc
Definition: at32f403_xmc.h:283
xmc_pccard_init_type
xmc pccard init structure definition
Definition: at32f403_xmc.h:311


AT32F403 Firmwary Library: audio_codec.h Source File

  • usb_device
  • composite_audio_hid
  • inc
composite_audio_hid/inc/audio_codec.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AUDIO_CODEC_H
27#define __AUDIO_CODEC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
42/* includes ------------------------------------------------------------------*/
43#include "at32f403.h"
44
48#define WM8988_R0_LEFT_INPUT_VOLUME 0x00 /*Left channel PGA control*/
49#define WM8988_R1_RIGHT_INPUT_VOLUME 0x01 /*Right channel PGA control*/
50#define WM8988_R2_LOUT1_VOLUME 0x02
51#define WM8988_R3_ROUT1_VOLUME 0x03
52#define WM8988_R4_RESERVED 0x04
53#define WM8988_R5_ADC_DAC_CONTROL 0x05
54#define WM8988_R6_RESERVED 0x06
55#define WM8988_R7_AUDIO_INTERFACE 0x07
56#define WM8988_R8_SAMPLE_RATE 0x08
57#define WM8988_R9_RESERVED 0x09
58#define WM8988_R10_LEFT_DAC_VOLUME 0x0A
59#define WM8988_R11_RIGHT_DAC_VOLUME 0x0B
60#define WM8988_R12_BASS_CONTROL 0x0C
61#define WM8988_R13_TREBLE_CONTROL 0x0D
62#define WM8988_R14_
63#define WM8988_R15_RESET 0x0F
64#define WM8988_R16_3D_CONTROL 0x10
65#define WM8988_R17_ALC1 0x11
66#define WM8988_R18_ALC2 0x12
67#define WM8988_R19_ALC3 0x13
68#define WM8988_R20_NOISE_GATE 0x14
69#define WM8988_R21_LEFT_ADC_VOLUME 0x15
70#define WM8988_R22_RIGHT_ADC_VOLUME 0x16
71#define WM8988_R23_ADDITIONAL_1_CONTROL 0x17
72#define WM8988_R24_ADDITIONAL_2_CONTROL 0x18
73#define WM8988_R25_PWR_1_MGMT 0x19
74#define WM8988_R26_PWR_2_MGMT 0x1A
75#define WM8988_R27_ADDITIONAL_3_CONTROL 0x1B
76
77#define WM8988_R31_ADC_INPUT_MODE 0x1F
78#define WM8988_R32_ADC_L_SIGNAL_PATH 0x20
79#define WM8988_R33_ADC_R_SIGNAL_PATH 0x21
80#define WM8988_R34_LEFT_OUT_MIX_1 0x22
81#define WM8988_R35_LEFT_OUT_MIX_2 0x23
82#define WM8988_R36_RIGHT_OUT_MIX_1 0x24
83#define WM8988_R37_RIGHT_OUT_MIX_2 0x25
84#define WM8988_R38_RESERVED
85#define WM8988_R39_RESERVED
86#define WM8988_R40_LOUT2_VOLUME 0x28
87#define WM8988_R41_ROUT2_VOLUME 0x29
88#define WM8988_R42_RESERVED
89#define WM8988_R43_LOW_POWER_PALYBACK 0x43
90
91#define WM8988_I2C_ADDR_CSB_LOW 0x34
92#define WM8988_I2C_ADDR_CSB_HIGH 0x36
93
101#define I2S1_WS_PIN GPIO_PINS_4
102#define I2S1_CK_PIN GPIO_PINS_5
103#define I2S1_SD_PIN GPIO_PINS_7
104
105#define I2S1_GPIO GPIOA
106#define I2S1_GPIO_CRM_CLK CRM_GPIOA_PERIPH_CLOCK
107#define I2S1_DT_ADDRESS (&(SPI1->dt))
108
109/*I2S2 Pin*/
110#define I2S2_WS_PIN GPIO_PINS_12
111#define I2S2_CK_PIN GPIO_PINS_13
112#define I2S2_SD_PIN GPIO_PINS_15
113
114
115#define I2S2_GPIO GPIOB
116#define I2S2_GPIO_CRM_CLK CRM_GPIOB_PERIPH_CLOCK
117#define I2S2_DT_ADDRESS (&(SPI2->dt))
118
119#define SPK_TX_FIFO_SIZE (1024 * 4)
120
128#define MIC_BUFFER_SIZE 1024
129#define SPK_BUFFER_SIZE 4096
130#define DMA_BUFFER_SIZE 288
131
132typedef struct
133{
134 uint32_t audio_freq;
135 uint32_t audio_bitw;
136 //spk part
137 uint16_t spk_buffer[SPK_BUFFER_SIZE];
138 uint16_t *spk_roff;
139 uint16_t *spk_woff;
140 uint16_t *spk_rend;
141 uint32_t spk_freq;
142 uint32_t spk_wtotal;
143 uint32_t spk_rtotal;
144 uint16_t spk_threshold;
145 uint16_t spk_calc;
146 uint8_t spk_stage;
147
148 //mic part
149 uint16_t mic_buffer[MIC_BUFFER_SIZE];
150 uint16_t *mic_roff;
151 uint16_t *mic_woff;
152 uint16_t *mic_wend;
153 uint32_t mic_wtotal;
154 uint32_t mic_rtotal;
155 uint32_t mic_delta;
156 uint16_t mic_calc;
157 uint16_t mic_adj_count;
158 uint8_t mic_adj_stage;
159 uint8_t mic_stage;
160
161 uint8_t mic_mute;
162 uint8_t spk_mute;
163
164 uint16_t mic_volume;
165 uint16_t spk_volume;
166
167 uint32_t spk_tx_size;
168 uint32_t mic_rx_size;
169
170 uint32_t spk_enable;
171 uint32_t mic_enable;
172
173}audio_codec_type;
174
175 error_status audio_codec_init(void);
176 error_status audio_codec_loop(void);
177void audio_codec_modify_freq(uint32_t freq);
178
182void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len);
183uint32_t audio_codec_mic_get_data(uint8_t *buffer);
184uint8_t audio_codec_spk_feedback(uint8_t *feedback);
185void audio_codec_spk_alt_setting(uint32_t alt_seting);
186void audio_codec_mic_alt_setting(uint32_t alt_seting);
187void audio_codec_set_mic_mute(uint8_t mute);
188void audio_codec_set_spk_mute(uint8_t mute);
189void audio_codec_set_mic_volume(uint16_t volume);
190void audio_codec_set_spk_volume(uint16_t volume);
191void audio_codec_set_mic_freq(uint32_t freq);
192void audio_codec_set_spk_freq(uint32_t freq);
193
205#ifdef __cplusplus
206}
207#endif
208
209#endif
210
at32f403.h
at32f403 header file
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
error_status
error_status
error status
Definition: at32f403.h:314
audio_codec_mic_alt_setting
void audio_codec_mic_alt_setting(uint32_t alt_seting)
audio codec microphone alt setting config
Definition: audio/src/audio_codec.c:167
audio_codec_set_spk_volume
void audio_codec_set_spk_volume(uint16_t volume)
audio codec set speaker volume
Definition: audio/src/audio_codec.c:215
audio_codec_set_spk_mute
void audio_codec_set_spk_mute(uint8_t mute)
audio codec set speaker mute
Definition: audio/src/audio_codec.c:193
MIC_BUFFER_SIZE
#define MIC_BUFFER_SIZE
Definition: composite_audio_hid/inc/audio_codec.h:128
audio_codec_set_mic_freq
void audio_codec_set_mic_freq(uint32_t freq)
audio codec set microphone freq
Definition: audio/src/audio_codec.c:119
audio_codec_mic_get_data
uint32_t audio_codec_mic_get_data(uint8_t *buffer)
codec microphone get data
Definition: audio/src/audio_codec.c:280
audio_codec_loop
error_status audio_codec_loop(void)
audio codec loop
Definition: audio/src/audio_codec.c:851
SPK_BUFFER_SIZE
#define SPK_BUFFER_SIZE
Definition: composite_audio_hid/inc/audio_codec.h:129
audio_codec_set_mic_mute
void audio_codec_set_mic_mute(uint8_t mute)
audio codec set microphone mute
Definition: audio/src/audio_codec.c:182
audio_codec_spk_fifo_write
void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
audio codec interface
Definition: audio/src/audio_codec.c:242
audio_codec_spk_feedback
uint8_t audio_codec_spk_feedback(uint8_t *feedback)
codec speaker feedback
Definition: audio/src/audio_codec.c:226
audio_codec_modify_freq
void audio_codec_modify_freq(uint32_t freq)
audio codec modify freq
Definition: audio/src/audio_codec.c:340
audio_codec_set_mic_volume
void audio_codec_set_mic_volume(uint16_t volume)
audio codec set microphone volume
Definition: audio/src/audio_codec.c:204
audio_codec_spk_alt_setting
void audio_codec_spk_alt_setting(uint32_t alt_seting)
audio codec speaker alt setting config
Definition: audio/src/audio_codec.c:152
audio_codec_init
error_status audio_codec_init(void)
audio codec init
Definition: audio/src/audio_codec.c:792
audio_codec_set_spk_freq
void audio_codec_set_spk_freq(uint32_t freq)
audio codec set speaker freq
Definition: audio/src/audio_codec.c:135
audio_codec_type
Definition: audio/inc/audio_codec.h:130


AT32F403 Firmwary Library: audio_codec.c Source File

  • usb_device
  • composite_audio_hid
  • src
composite_audio_hid/src/audio_codec.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "audio_codec.h"
27#include "i2c_application.h"
28#include "audio_conf.h"
29#include <string.h>
30
39#define I2C_TIMEOUT 0xFFFFFFFF
40
41#define I2Cx_SPEED 200000
42#define I2Cx_ADDRESS 0x00
43
44#define I2Cx_PORT I2C1
45#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
46
47#define I2Cx_SCL_PIN GPIO_PINS_8
48#define I2Cx_SCL_GPIO_PORT GPIOB
49#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
50
51#define I2Cx_SDA_PIN GPIO_PINS_9
52#define I2Cx_SDA_GPIO_PORT GPIOB
53#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
54
58#define WM8988_REG_FREQ48K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0081)
59#define WM8988_REG_FREQ16K ((WM8988_R8_SAMPLE_RATE << 9) | 0x0095)
60
64#define WM8988_REG_BITW16 ((WM8988_R7_AUDIO_INTERFACE << 9) | 0x0002)
65
69uint16_t reg_addr_data[] =
70{
71 (WM8988_R0_LEFT_INPUT_VOLUME << 9) | 0x012F, /*Left Input Channel Volume*/
72 (WM8988_R1_RIGHT_INPUT_VOLUME << 9) | 0x012F, /*Right Input Channel Volume*/
73 (WM8988_R2_LOUT1_VOLUME << 9) | 0x0179, /*Left Output Channel Volume*/
74 (WM8988_R3_ROUT1_VOLUME << 9) | 0x0179, /*Right Output Channel Volume*/
75 (WM8988_R5_ADC_DAC_CONTROL << 9) | 0x0006, /*De-emphasis Control and Digital soft mute*/
76 (WM8988_REG_BITW16),
77 (WM8988_REG_FREQ16K),
78 (WM8988_R10_LEFT_DAC_VOLUME << 9) | 0x01FF, /*Left Digital DAC Volume Control*/
79 (WM8988_R11_RIGHT_DAC_VOLUME << 9) | 0x01FF, /*Right Digital DAC Volume Control*/
80 (WM8988_R12_BASS_CONTROL << 9) | 0x000F, /*Bass Control*/
81 (WM8988_R13_TREBLE_CONTROL << 9) | 0x000F, /*Treble Control*/
82 (WM8988_R16_3D_CONTROL << 9) | 0x0000, /*3D stereo Enhancment*/
83 (WM8988_R21_LEFT_ADC_VOLUME << 9) | 0x01C3, /*Left ADC Digital Volume*/
84 (WM8988_R22_RIGHT_ADC_VOLUME << 9) | 0x01C3, /*Right ADC Digital Volume*/
85 (WM8988_R23_ADDITIONAL_1_CONTROL << 9) | 0x00C2, /*Additional Control 1*/
86 (WM8988_R24_ADDITIONAL_2_CONTROL << 9) | 0x0000, /*Additional Control 2*/
87 (WM8988_R27_ADDITIONAL_3_CONTROL << 9) | 0x0000, /*Additional Control 3*/
88 (WM8988_R31_ADC_INPUT_MODE << 9) | 0x0000, /*ADC input mode*/
89 (WM8988_R32_ADC_L_SIGNAL_PATH << 9) | 0x0000, /*ADC Signal Path Control left*/
90 (WM8988_R33_ADC_R_SIGNAL_PATH << 9) | 0x0000, /*ADC Signal Path Control right*/
91 (WM8988_R34_LEFT_OUT_MIX_1 << 9) | 0x0152, /*Left DAC mixer Control*/
92 (WM8988_R35_LEFT_OUT_MIX_2 << 9) | 0x0050, /*Left DAC mixer Control*/
93 (WM8988_R36_RIGHT_OUT_MIX_1 << 9) | 0x0052, /*Right DAC mixer Control*/
94 (WM8988_R37_RIGHT_OUT_MIX_2 << 9) | 0x0150, /*Right DAC mixer Control*/
95 (WM8988_R40_LOUT2_VOLUME << 9) | 0x01FF, /*Output left channel volume*/
96 (WM8988_R41_ROUT2_VOLUME << 9) | 0x01FF, /*Output left channel volume*/
97 (WM8988_R43_LOW_POWER_PALYBACK << 9) | 0x0008, /*Output left channel volume*/
98 (WM8988_R25_PWR_1_MGMT << 9) | 0x017C, /*Power Management1*/
99 (WM8988_R26_PWR_2_MGMT << 9) | 0x01F8, /*Power Management2*/
100};
101
102 i2c_handle_type hi2cx;
103
104 audio_codec_type audio_codec;
105uint16_t spk_dma_buffer[DMA_BUFFER_SIZE];
106uint16_t mic_dma_buffer[DMA_BUFFER_SIZE];
107
108void memset16_buffer(uint16_t *buffer, uint32_t set, uint32_t len);
109void codec_i2s_reset(void);
110void codec_i2s_init(audio_codec_type *param);
111void mclk_tmr1_init(void);
112void copy_buff(uint16_t *dest, uint16_t *src, uint32_t len);
113
119void audio_codec_set_mic_freq(uint32_t freq)
120{
121 if(audio_codec.audio_freq != freq)
122 {
123 audio_codec.audio_freq = freq;
124 codec_i2s_reset();
125 audio_codec_modify_freq(freq);
126 codec_i2s_init(&audio_codec);
127 }
128}
129
135void audio_codec_set_spk_freq(uint32_t freq)
136{
137 if(audio_codec.audio_freq != freq)
138 {
139 audio_codec.audio_freq = freq;
140 codec_i2s_reset();
141 audio_codec_modify_freq(freq);
142 codec_i2s_init(&audio_codec);
143 }
144}
145
146
152void audio_codec_spk_alt_setting(uint32_t alt_seting)
153{
154 if(alt_seting == 0)
155 {
156 }
157 else
158 {
159 }
160}
161
167void audio_codec_mic_alt_setting(uint32_t alt_seting)
168{
169 if(alt_seting == 0)
170 {
171 }
172 else
173 {
174 }
175}
176
182void audio_codec_set_mic_mute(uint8_t mute)
183{
184 audio_codec.mic_mute = mute;
185}
186
187
193void audio_codec_set_spk_mute(uint8_t mute)
194{
195 audio_codec.spk_mute = mute;
196}
197
198
204void audio_codec_set_mic_volume(uint16_t volume)
205{
206 /* wm8988 adc have 256 steps */
207 audio_codec.mic_volume = volume;
208}
209
215void audio_codec_set_spk_volume(uint16_t volume)
216{
217 /* wm8988 dac have 80 steps */
218 audio_codec.spk_volume = (volume * 0x50) / 0x64 + 0x30 - 1;
219}
220
226uint8_t audio_codec_spk_feedback(uint8_t *feedback)
227{
228 uint32_t feedback_value = (audio_codec.spk_freq);
229 feedback_value = ((feedback_value/1000)<<14)|((feedback_value%1000)<<4);
230 feedback[0] = (uint8_t)(feedback_value);
231 feedback[1] = (uint8_t)(feedback_value >> 8);
232 feedback[2] = (uint8_t)(feedback_value >> 16);
233 return 3;
234}
235
242void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
243{
244 uint16_t ulen = len / 2, i;
245 uint16_t *u16data = (uint16_t *)data;
246
247 switch(audio_codec.spk_stage)
248 {
249 case 0:
250 audio_codec.spk_woff = audio_codec.spk_roff = audio_codec.spk_buffer;
251 audio_codec.spk_wtotal = audio_codec.spk_rtotal = 0;
252 audio_codec.spk_stage = 1;
253 audio_codec.spk_threshold = SPK_BUFFER_SIZE/2;
254 break;
255 case 1:
256 if( audio_codec.spk_wtotal >= SPK_BUFFER_SIZE/2 )
257 {
258 audio_codec.spk_stage = 2;
259 }
260 break;
261 case 2:
262 break;
263 }
264 for( i = 0; i < ulen; ++i )
265 {
266 *audio_codec.spk_woff++ = *u16data++;
267 if( audio_codec.spk_woff >= audio_codec.spk_rend )
268 {
269 audio_codec.spk_woff = audio_codec.spk_buffer;
270 }
271 }
272 audio_codec.spk_wtotal += ulen;
273}
274
280uint32_t audio_codec_mic_get_data(uint8_t *buffer)
281{
282 //copy_buff((uint16_t *)buffer, audio_codec.mic_buffer + audio_codec.mic_hf_status, audio_codec.mic_rx_size);
283 uint16_t len = audio_codec.mic_rx_size << 1;
284 uint16_t i;
285 uint16_t* u16buf = (uint16_t*)buffer;
286 switch(audio_codec.mic_stage)
287 {
288 case 0:
289 audio_codec.mic_stage = 1;
290 memset( buffer, 0, len );
291 return len;
292 case 1:
293 if( audio_codec.mic_wtotal - audio_codec.mic_rtotal >= MIC_BUFFER_SIZE/2 )
294 {
295 audio_codec.mic_stage = 2;
296 }
297 return len;
298 }
299 switch( audio_codec.mic_adj_stage )
300 {
301 case 0:
302 break;
303 case 1:
304 if( audio_codec.mic_adj_count >= 4 ){
305 len += 4;
306 audio_codec.mic_adj_count -= 4;
307 }
308 break;
309 case 2:
310 if( audio_codec.mic_adj_count >= 4 ){
311 len -= 4;
312 audio_codec.mic_adj_count -= 4;
313 }
314 break;
315 }
316
317 for( i = 0; i < len/2; ++i )
318 {
319 *u16buf++ = *audio_codec.mic_roff++;
320 if( audio_codec.mic_roff >= audio_codec.mic_wend )
321 {
322 audio_codec.mic_roff = audio_codec.mic_buffer;
323 }
324 }
325 if( audio_codec.mic_wtotal <= audio_codec.mic_rtotal )
326 { //should not happen
327 while(1);
328 }
329
330 audio_codec.mic_rtotal += len/2;
331 audio_codec.mic_delta += len/2;
332 return len;
333}
334
340void audio_codec_modify_freq(uint32_t freq)
341{
342 uint16_t codec_cmd;
343 uint8_t i2c_cmd[2];
344 if(freq == AUDIO_FREQ_16K)
345 {
346 codec_cmd = WM8988_REG_FREQ16K;
347 }
348 else if(freq == AUDIO_FREQ_48K)
349 {
350 codec_cmd = WM8988_REG_FREQ48K;
351 }
352 i2c_cmd[0] = (uint8_t)(codec_cmd >> 8);
353 i2c_cmd[1] = (uint8_t)codec_cmd & 0xFF;
354 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
355 {
356 while(1);
357 }
358}
359
367void memset16_buffer(uint16_t *buffer, uint32_t set, uint32_t len)
368{
369 uint32_t i_index = 0;
370 for(i_index = 0; i_index < len; i_index ++)
371 {
372 buffer[i_index] = (uint16_t)set;
373 }
374}
375
383void copy_buff(uint16_t *dest, uint16_t *src, uint32_t len)
384{
385 uint16_t i_index;
386 for(i_index = 0; i_index < len; i_index ++)
387 {
388 dest[i_index] = src[i_index];
389 }
390}
391
397void i2c_lowlevel_init(i2c_handle_type* hi2c)
398{
399 gpio_init_type gpio_initstructure;
400
401 if(hi2c->i2cx == I2Cx_PORT)
402 {
403 /* i2c periph clock enable */
404 crm_periph_clock_enable(I2Cx_CLK, TRUE);
405 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
406 gpio_pin_remap_config(I2C1_MUX, TRUE);
407 crm_periph_clock_enable(I2Cx_SCL_GPIO_CLK, TRUE);
408 crm_periph_clock_enable(I2Cx_SDA_GPIO_CLK, TRUE);
409
410 /* gpio configuration */
411 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
412 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
413 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
414 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
415
416 /* configure i2c pins: scl */
417 gpio_initstructure.gpio_pins = I2Cx_SCL_PIN;
418 gpio_init(I2Cx_SCL_GPIO_PORT, &gpio_initstructure);
419
420 /* configure i2c pins: sda */
421 gpio_initstructure.gpio_pins = I2Cx_SDA_PIN;
422 gpio_init(I2Cx_SDA_GPIO_PORT, &gpio_initstructure);
423
424 i2c_init(hi2c->i2cx, I2C_FSMODE_DUTY_2_1, I2Cx_SPEED);
425
426 i2c_own_address1_set(hi2c->i2cx, I2C_ADDRESS_MODE_7BIT, I2Cx_ADDRESS);
427 }
428}
429
435void mclk_tmr1_init(void)
436{
437 gpio_init_type gpio_init_struct;
438 tmr_output_config_type tmr_oc_init_structure;
439 uint16_t prescaler_value = (uint16_t)(system_core_clock / 24000000) - 1;
440
441 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
442 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
443 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
444
445 gpio_default_para_init(&gpio_init_struct);
446
447
448 gpio_init_struct.gpio_pins = GPIO_PINS_8;
449 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
450 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
451 gpio_init(GPIOA, &gpio_init_struct);
452
453 tmr_base_init(TMR1, 1, prescaler_value);
454 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
455 tmr_clock_source_div_set(TMR1, TMR_CLOCK_DIV1);
456
457 tmr_output_default_para_init(&tmr_oc_init_structure);
458 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
459 tmr_oc_init_structure.oc_idle_state = FALSE;
460 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
461 tmr_oc_init_structure.oc_output_state = TRUE;
462 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
463 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 1);
464 tmr_output_channel_buffer_enable(TMR1, TMR_SELECT_CHANNEL_1, TRUE);
465
466 /* tmr enable counter */
467 tmr_counter_enable(TMR1, TRUE);
468 tmr_output_enable(TMR1, TRUE);
469}
470
471
477void codec_i2s_reset(void)
478{
479 i2s_enable(SPI1, FALSE);
480 i2s_enable(SPI2, FALSE);
481 dma_channel_enable(DMA1_CHANNEL3, FALSE);
482 dma_channel_enable(DMA1_CHANNEL4, FALSE);
483}
484
491void codec_i2s_init(audio_codec_type *param)
492{
493 gpio_init_type gpio_init_struct;
494 dma_init_type dma_init_struct;
495 i2s_init_type i2s_init_struct;
496 i2s_data_channel_format_type format = I2S_DATA_16BIT_CHANNEL_16BIT;
497
498 crm_periph_clock_enable(I2S1_GPIO_CRM_CLK, TRUE);
499 crm_periph_clock_enable(I2S2_GPIO_CRM_CLK, TRUE);
500 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
501 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
502 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
503
504 param->spk_freq = param->audio_freq;
505
506 param->spk_tx_size = (param->audio_freq / 1000) * (param->audio_bitw / 8) * AUDIO_SPK_CHANEL_NUM / 2;
507 param->mic_rx_size = (param->audio_freq / 1000) * (param->audio_bitw / 8) * AUDIO_MIC_CHANEL_NUM / 2;
508
509 memset(param->spk_buffer, 0, SPK_BUFFER_SIZE*sizeof(uint16_t));
510 memset(param->mic_buffer, 0, MIC_BUFFER_SIZE*sizeof(uint16_t));
511
512 param->mic_wend = param->mic_woff = param->mic_roff = param->mic_buffer;
513 param->spk_rend = param->spk_woff = param->spk_roff = param->spk_buffer;
514
515 while(param->mic_wend < param->mic_buffer+MIC_BUFFER_SIZE)
516 {
517 param->mic_wend += param->mic_rx_size;
518 }
519 param->mic_wend -= param->mic_rx_size;
520 while(param->spk_rend < param->spk_buffer+SPK_BUFFER_SIZE)
521 {
522 param->spk_rend += param->spk_tx_size;
523 }
524 param->spk_rend -= param->spk_tx_size;
525 if(param->audio_bitw == 16)
526 {
527 format = I2S_DATA_16BIT_CHANNEL_16BIT;
528 }
529 else
530 {
531 format = I2S_DATA_24BIT_CHANNEL_32BIT;
532 }
533
534 gpio_default_para_init(&gpio_init_struct);
535
536 /* i2s1 ws pins */
537 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
538 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
539 gpio_init_struct.gpio_pins = I2S1_WS_PIN;
540 gpio_init(I2S1_GPIO, &gpio_init_struct);
541
542 /* i2s1 ck pins */
543 gpio_init_struct.gpio_pull = GPIO_PULL_DOWN;
544 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
545 gpio_init_struct.gpio_pins = I2S1_CK_PIN;
546 gpio_init(I2S1_GPIO, &gpio_init_struct);
547
548 /* i2s1 sd pins slave tx */
549 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
550 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
551 gpio_init_struct.gpio_pins = I2S1_SD_PIN;
552 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
553 gpio_init(I2S1_GPIO, &gpio_init_struct);
554
555 /* i2s2 ws pins */
556 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
557 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
558 gpio_init_struct.gpio_pins = I2S2_WS_PIN;
559 gpio_init(I2S2_GPIO, &gpio_init_struct);
560
561 /* i2s2 ck pins */
562 gpio_init_struct.gpio_pull = GPIO_PULL_DOWN;
563 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
564 gpio_init_struct.gpio_pins = I2S2_CK_PIN;
565 gpio_init(I2S2_GPIO, &gpio_init_struct);
566
567 /* i2s2 sd pins slave rx */
568 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
569 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
570 gpio_init_struct.gpio_pins = I2S2_SD_PIN;
571 gpio_init(I2S2_GPIO, &gpio_init_struct);
572
573 /* dma config */
574 dma_reset(DMA1_CHANNEL3);
575 dma_reset(DMA1_CHANNEL4);
576
577 /* dma1 channel3: speaker i2s1 tx */
578 dma_default_para_init(&dma_init_struct);
579 dma_init_struct.buffer_size = param->spk_tx_size << 1;
580 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
581 dma_init_struct.memory_base_addr = (uint32_t)spk_dma_buffer;
582 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
583 dma_init_struct.memory_inc_enable = TRUE;
584 dma_init_struct.peripheral_base_addr = (uint32_t)I2S1_DT_ADDRESS;
585 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
586 dma_init_struct.peripheral_inc_enable = FALSE;
587 dma_init_struct.priority = DMA_PRIORITY_HIGH;
588 dma_init_struct.loop_mode_enable = TRUE;
589 dma_init(DMA1_CHANNEL3, &dma_init_struct);
590 dma_interrupt_enable(DMA1_CHANNEL3, DMA_FDT_INT, TRUE);
591 dma_interrupt_enable(DMA1_CHANNEL3, DMA_HDT_INT, TRUE);
592 nvic_irq_enable(DMA1_Channel3_IRQn, 1, 0);
593
594 /* dma1 channel4: microphone i2s2 rx */
595 dma_default_para_init(&dma_init_struct);
596 dma_init_struct.buffer_size = param->mic_rx_size << 1;
597 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
598 dma_init_struct.memory_base_addr = (uint32_t)mic_dma_buffer;
599 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
600 dma_init_struct.memory_inc_enable = TRUE;
601 dma_init_struct.peripheral_base_addr = (uint32_t)I2S2_DT_ADDRESS;
602 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
603 dma_init_struct.peripheral_inc_enable = FALSE;
604 dma_init_struct.priority = DMA_PRIORITY_HIGH;
605 dma_init_struct.loop_mode_enable = TRUE;
606 dma_init(DMA1_CHANNEL4, &dma_init_struct);
607 dma_interrupt_enable(DMA1_CHANNEL4, DMA_FDT_INT, TRUE);
608 dma_interrupt_enable(DMA1_CHANNEL4, DMA_HDT_INT, TRUE);
609 nvic_irq_enable(DMA1_Channel4_IRQn, 2, 0);
610
611 /* i2s1 tx init */
612 spi_i2s_reset(SPI1);
613 i2s_default_para_init(&i2s_init_struct);
614 i2s_init_struct.audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
615 i2s_init_struct.data_channel_format = format;
616 i2s_init_struct.mclk_output_enable = FALSE;
617 i2s_init_struct.audio_sampling_freq = (i2s_audio_sampling_freq_type)param->audio_freq;
618 i2s_init_struct.clock_polarity = I2S_CLOCK_POLARITY_LOW;
619 i2s_init_struct.operation_mode = I2S_MODE_MASTER_TX;
620 i2s_init(SPI1, &i2s_init_struct);
621
622 /* i2s2 rx init */
623 spi_i2s_reset(SPI2);
624 i2s_default_para_init(&i2s_init_struct);
625 i2s_init_struct.audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
626 i2s_init_struct.data_channel_format = format;
627 i2s_init_struct.mclk_output_enable = FALSE;
628 i2s_init_struct.audio_sampling_freq = (i2s_audio_sampling_freq_type)param->audio_freq;
629 i2s_init_struct.clock_polarity = I2S_CLOCK_POLARITY_LOW;
630 i2s_init_struct.operation_mode = I2S_MODE_SLAVE_RX;
631 i2s_init(SPI2, &i2s_init_struct);
632
633
634 spi_i2s_dma_transmitter_enable(SPI1, TRUE);
635 spi_i2s_dma_receiver_enable(SPI2, TRUE);
636 i2s_enable(SPI2, TRUE);
637 i2s_enable(SPI1, TRUE);
638
639 dma_channel_enable(DMA1_CHANNEL3, TRUE);
640 dma_channel_enable(DMA1_CHANNEL4, TRUE);
641
642}
643
649void DMA1_Channel3_IRQHandler(void)
650{
651 uint16_t half_size = audio_codec.spk_tx_size;
652 uint16_t *pdst;
653
654 if(dma_flag_get(DMA1_HDT3_FLAG) == SET)
655 {
656 //copy_buff(audio_codec.spk_buffer, audio_codec.spk_tx_fifo + audio_codec.r_pos, half_size);
657 pdst = spk_dma_buffer;
658 dma_flag_clear(DMA1_HDT3_FLAG);
659 }
660 else if(dma_flag_get(DMA1_FDT3_FLAG) == SET)
661 {
662 //copy_buff(&audio_codec.spk_buffer[half_size], audio_codec.spk_tx_fifo + audio_codec.r_pos, half_size);
663 pdst = spk_dma_buffer + half_size;
664 dma_flag_clear(DMA1_FDT3_FLAG);
665 }
666
667 switch( audio_codec.spk_stage )
668 {
669 case 0:
670 case 1:
671 memset( pdst, 0, half_size << 1);
672 break;
673 case 2:
674 if( audio_codec.spk_wtotal >= audio_codec.spk_rtotal + SPK_BUFFER_SIZE )
675 {
676 while(1);//should not happen;
677 }
678 if( audio_codec.spk_rtotal >= audio_codec.spk_wtotal )
679 {
680 audio_codec.spk_stage = 0;
681 audio_codec.spk_woff = audio_codec.spk_roff = audio_codec.spk_buffer;
682 audio_codec.spk_rtotal = audio_codec.spk_wtotal = 0;
683 }
684 else
685 {
686 memcpy( pdst, audio_codec.spk_roff, half_size << 1 );
687 audio_codec.spk_roff += half_size;
688 audio_codec.spk_rtotal += half_size;
689 if( audio_codec.spk_roff >= audio_codec.spk_rend )
690 {
691 audio_codec.spk_roff = audio_codec.spk_buffer;
692 }
693 if( ++audio_codec.spk_calc == 256 )
694 {
695 uint16_t delta = audio_codec.spk_wtotal - audio_codec.spk_rtotal;
696 audio_codec.spk_calc = 0;
697 if( delta < audio_codec.spk_threshold - half_size )
698 {
699 audio_codec.spk_threshold -= half_size;
700 audio_codec.spk_freq += audio_codec.audio_freq/1024;
701 }
702 else if( delta > audio_codec.spk_threshold + half_size )
703 {
704 audio_codec.spk_threshold += half_size;
705 audio_codec.spk_freq -= audio_codec.audio_freq/1024;
706 }
707 if(audio_codec.spk_rtotal > 0x20000000)
708 {
709 audio_codec.spk_rtotal -= 0x10000000;
710 audio_codec.spk_wtotal -= 0x10000000;
711 }
712 }
713 }
714 break;
715 }
716
717}
718
724void DMA1_Channel4_IRQHandler(void)
725{
726 uint16_t *psrc;
727 uint16_t len = audio_codec.mic_rx_size << 1;
728
729 if(dma_flag_get(DMA1_HDT4_FLAG) == SET)
730 {
731 dma_flag_clear(DMA1_HDT4_FLAG);
732 psrc = mic_dma_buffer;
733 }
734 else if(dma_flag_get(DMA1_FDT4_FLAG) == SET)
735 {
736 psrc = mic_dma_buffer + audio_codec.mic_rx_size;
737 dma_flag_clear(DMA1_FDT4_FLAG);
738 }
739 if( audio_codec.mic_stage )
740 {
741 memcpy( audio_codec.mic_woff, psrc, len );
742 audio_codec.mic_woff += len/2;
743 audio_codec.mic_wtotal += len/2;
744 if( audio_codec.mic_woff >= audio_codec.mic_wend )
745 {
746 audio_codec.mic_woff = audio_codec.mic_buffer;
747 }
748 if( audio_codec.mic_stage == 2 )
749 {
750 if( 1024 == ++audio_codec.mic_calc )
751 {
752 uint32_t size_estimate = 1024*audio_codec.mic_rx_size;
753 audio_codec.mic_calc = 0;
754 if( audio_codec.mic_delta > size_estimate )
755 {
756 audio_codec.mic_adj_count = audio_codec.mic_delta - size_estimate;
757 audio_codec.mic_adj_stage = 2;
758 }
759 else if( audio_codec.mic_delta < size_estimate )
760 {
761 audio_codec.mic_adj_count = size_estimate - audio_codec.mic_delta;
762 audio_codec.mic_adj_stage = 1;
763 }
764 else
765 {
766 audio_codec.mic_adj_count = 0;
767 audio_codec.mic_adj_stage = 0;
768 }
769 audio_codec.mic_delta = 0;
770 if( audio_codec.mic_rtotal >= 0x80000000 )
771 {
772 audio_codec.mic_rtotal -= 0x80000000;
773 audio_codec.mic_wtotal -= 0x80000000;
774 }
775 }
776 if( audio_codec.mic_wtotal >= audio_codec.mic_rtotal + MIC_BUFFER_SIZE )
777 {
778 audio_codec.mic_delta = audio_codec.mic_wtotal = audio_codec.mic_rtotal = 0;
779 audio_codec.mic_woff = audio_codec.mic_roff = audio_codec.mic_buffer;
780 audio_codec.mic_stage = 0;
781 audio_codec.mic_adj_stage = 0;
782 audio_codec.mic_adj_count = 0;
783 audio_codec.mic_calc = 0;
784 }
785 }
786 }
787}
788
794 error_status audio_codec_init(void)
795{
796 uint32_t reg_len = sizeof(reg_addr_data) / sizeof(uint16_t);
797 uint32_t i_index = 0;
798 uint8_t i2c_cmd[2];
799
800 if(AUDIO_DEFAULT_FREQ == AUDIO_FREQ_16K)
801 {
802 reg_addr_data[6] = WM8988_REG_FREQ16K;
803 audio_codec.audio_freq = AUDIO_FREQ_16K;
804 }
805 else if(AUDIO_DEFAULT_FREQ == AUDIO_FREQ_48K)
806 {
807 reg_addr_data[6] = WM8988_REG_FREQ48K;
808 audio_codec.audio_freq = AUDIO_FREQ_48K;
809 }
810 else
811 {
812 return ERROR;
813 }
814
815 if(AUDIO_DEFAULT_BITW == AUDIO_BITW_16)
816 {
817 reg_addr_data[5] = WM8988_REG_BITW16;
818 audio_codec.audio_bitw = AUDIO_BITW_16;
819 }
820 else
821 {
822 return ERROR;
823 }
824
825 /* i2c init */
826 hi2cx.i2cx = I2Cx_PORT;
827
828 i2c_config(&hi2cx);
829
830 for(i_index = 0; i_index < reg_len; i_index ++)
831 {
832 i2c_cmd[0] = (uint8_t)(reg_addr_data[i_index] >> 8);
833 i2c_cmd[1] = (uint8_t)reg_addr_data[i_index] & 0xFF;
834 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
835 {
836 return ERROR;
837 }
838 }
839
840 /* timer init */
841 mclk_tmr1_init();
842
843 codec_i2s_init(&audio_codec);
844
845 return SUCCESS;
846}
847
853 error_status audio_codec_loop(void)
854{
855 static uint8_t mic_mute = 0;
856 static uint16_t mic_volume = 0;
857 static uint8_t spk_mute = 0;
858 static uint16_t spk_volume = 0;
859 uint16_t audio_ctrl_l;
860 uint16_t audio_ctrl_r;
861 uint8_t i2c_cmd[2];
862
863 if(mic_mute != audio_codec.mic_mute)
864 {
865 mic_mute = audio_codec.mic_mute;
866 audio_ctrl_l = WM8988_R21_LEFT_ADC_VOLUME << 9 | 0x100;
867 audio_ctrl_r = WM8988_R22_RIGHT_ADC_VOLUME << 9 | 0x100;
868 if(audio_codec.mic_mute == 0)
869 {
870 audio_ctrl_l |= audio_codec.mic_volume;
871 audio_ctrl_r |= audio_codec.mic_volume;
872 }
873 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
874 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
875 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
876 {
877 return ERROR;
878 }
879 i2c_cmd[0] = (uint8_t)(audio_ctrl_r >> 8);
880 i2c_cmd[1] = (uint8_t)audio_ctrl_r & 0xFF;
881 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
882 {
883 return ERROR;
884 }
885 }
886
887 if(mic_volume != audio_codec.mic_volume)
888 {
889 mic_volume = audio_codec.mic_volume;
890 audio_ctrl_l = WM8988_R21_LEFT_ADC_VOLUME << 9 | 0x100;
891 audio_ctrl_r = WM8988_R22_RIGHT_ADC_VOLUME << 9 | 0x100;
892 audio_ctrl_l |= audio_codec.mic_volume;
893 audio_ctrl_r |= audio_codec.mic_volume;
894 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
895 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
896 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
897 {
898 return ERROR;
899 }
900 i2c_cmd[0] = (uint8_t)(audio_ctrl_r >> 8);
901 i2c_cmd[1] = (uint8_t)audio_ctrl_r & 0xFF;
902 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
903 {
904 return ERROR;
905 }
906 }
907
908 if(spk_mute != audio_codec.spk_mute)
909 {
910 spk_mute = audio_codec.spk_mute;
911 audio_ctrl_l = (WM8988_R5_ADC_DAC_CONTROL << 9) | 0x0006 | (audio_codec.spk_mute << 3);
912 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
913 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
914 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
915 {
916 return ERROR;
917 }
918 }
919
920 if(spk_volume != audio_codec.spk_volume)
921 {
922 spk_volume = audio_codec.spk_volume;
923 audio_ctrl_l = WM8988_R2_LOUT1_VOLUME << 9 | 0x100;
924 audio_ctrl_r = WM8988_R3_ROUT1_VOLUME << 9 | 0x100;
925 audio_ctrl_l |= audio_codec.spk_volume;
926 audio_ctrl_r |= audio_codec.spk_volume;
927
928 i2c_cmd[0] = (uint8_t)(audio_ctrl_l >> 8);
929 i2c_cmd[1] = (uint8_t)audio_ctrl_l & 0xFF;
930
931 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
932 {
933 return ERROR;
934 }
935 i2c_cmd[0] = (uint8_t)(audio_ctrl_r >> 8);
936 i2c_cmd[1] = (uint8_t)audio_ctrl_r & 0xFF;
937 if(i2c_master_transmit(&hi2cx, WM8988_I2C_ADDR_CSB_LOW, (uint8_t *)i2c_cmd, 2, 0xFFFF) != I2C_OK)
938 {
939 return ERROR;
940 }
941 }
942 return SUCCESS;
943}
944
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:42
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:36
reg_addr_data
uint16_t reg_addr_data[]
wm8988 register default value
Definition: composite_audio_hid/src/audio_codec.c:69
audio_codec_mic_alt_setting
void audio_codec_mic_alt_setting(uint32_t alt_seting)
audio codec microphone alt setting config
Definition: composite_audio_hid/src/audio_codec.c:167
codec_i2s_reset
void codec_i2s_reset(void)
audio codec i2s reset
Definition: composite_audio_hid/src/audio_codec.c:477
spk_dma_buffer
uint16_t spk_dma_buffer[DMA_BUFFER_SIZE]
Definition: composite_audio_hid/src/audio_codec.c:105
audio_codec_set_spk_volume
void audio_codec_set_spk_volume(uint16_t volume)
audio codec set speaker volume
Definition: composite_audio_hid/src/audio_codec.c:215
audio_codec_set_spk_mute
void audio_codec_set_spk_mute(uint8_t mute)
audio codec set speaker mute
Definition: composite_audio_hid/src/audio_codec.c:193
WM8988_REG_FREQ48K
#define WM8988_REG_FREQ48K
wm8988 freq
Definition: composite_audio_hid/src/audio_codec.c:58
audio_codec_set_mic_freq
void audio_codec_set_mic_freq(uint32_t freq)
audio codec set microphone freq
Definition: composite_audio_hid/src/audio_codec.c:119
I2Cx_ADDRESS
#define I2Cx_ADDRESS
Definition: composite_audio_hid/src/audio_codec.c:42
I2Cx_CLK
#define I2Cx_CLK
Definition: composite_audio_hid/src/audio_codec.c:45
audio_codec_mic_get_data
uint32_t audio_codec_mic_get_data(uint8_t *buffer)
codec microphone get data
Definition: composite_audio_hid/src/audio_codec.c:280
WM8988_REG_BITW16
#define WM8988_REG_BITW16
wm8988 bit width
Definition: composite_audio_hid/src/audio_codec.c:64
audio_codec_loop
error_status audio_codec_loop(void)
audio codec loop
Definition: composite_audio_hid/src/audio_codec.c:853
codec_i2s_init
void codec_i2s_init(audio_codec_type *param)
audio codec i2s init
Definition: composite_audio_hid/src/audio_codec.c:491
audio_codec_set_mic_mute
void audio_codec_set_mic_mute(uint8_t mute)
audio codec set microphone mute
Definition: composite_audio_hid/src/audio_codec.c:182
audio_codec_spk_fifo_write
void audio_codec_spk_fifo_write(uint8_t *data, uint32_t len)
codec speaker write fifo
Definition: composite_audio_hid/src/audio_codec.c:242
I2Cx_SDA_PIN
#define I2Cx_SDA_PIN
Definition: composite_audio_hid/src/audio_codec.c:51
I2Cx_SCL_PIN
#define I2Cx_SCL_PIN
Definition: composite_audio_hid/src/audio_codec.c:47
mic_dma_buffer
uint16_t mic_dma_buffer[DMA_BUFFER_SIZE]
Definition: composite_audio_hid/src/audio_codec.c:106
audio_codec_spk_feedback
uint8_t audio_codec_spk_feedback(uint8_t *feedback)
codec speaker feedback
Definition: composite_audio_hid/src/audio_codec.c:226
hi2cx
i2c_handle_type hi2cx
Definition: composite_audio_hid/src/audio_codec.c:102
DMA1_Channel4_IRQHandler
void DMA1_Channel4_IRQHandler(void)
this function handles dma1 channel4 interrupt.
Definition: composite_audio_hid/src/audio_codec.c:724
audio_codec_modify_freq
void audio_codec_modify_freq(uint32_t freq)
audio codec modify freq
Definition: composite_audio_hid/src/audio_codec.c:340
I2Cx_SDA_GPIO_PORT
#define I2Cx_SDA_GPIO_PORT
Definition: composite_audio_hid/src/audio_codec.c:52
audio_codec_set_mic_volume
void audio_codec_set_mic_volume(uint16_t volume)
audio codec set microphone volume
Definition: composite_audio_hid/src/audio_codec.c:204
mclk_tmr1_init
void mclk_tmr1_init(void)
mclk clock conifg
Definition: composite_audio_hid/src/audio_codec.c:435
DMA1_Channel3_IRQHandler
void DMA1_Channel3_IRQHandler(void)
this function handles dma1 channel3 interrupt.
Definition: composite_audio_hid/src/audio_codec.c:649
I2Cx_SDA_GPIO_CLK
#define I2Cx_SDA_GPIO_CLK
Definition: composite_audio_hid/src/audio_codec.c:53
audio_codec
audio_codec_type audio_codec
Definition: composite_audio_hid/src/audio_codec.c:104
audio_codec_spk_alt_setting
void audio_codec_spk_alt_setting(uint32_t alt_seting)
audio codec speaker alt setting config
Definition: composite_audio_hid/src/audio_codec.c:152
i2c_lowlevel_init
void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: composite_audio_hid/src/audio_codec.c:397
I2Cx_SPEED
#define I2Cx_SPEED
Definition: composite_audio_hid/src/audio_codec.c:41
audio_codec_init
error_status audio_codec_init(void)
audio codec init
Definition: composite_audio_hid/src/audio_codec.c:794
WM8988_REG_FREQ16K
#define WM8988_REG_FREQ16K
Definition: composite_audio_hid/src/audio_codec.c:59
copy_buff
void copy_buff(uint16_t *dest, uint16_t *src, uint32_t len)
copy buffer
Definition: composite_audio_hid/src/audio_codec.c:383
memset16_buffer
void memset16_buffer(uint16_t *buffer, uint32_t set, uint32_t len)
buffer memset
Definition: composite_audio_hid/src/audio_codec.c:367
I2Cx_PORT
#define I2Cx_PORT
Definition: composite_audio_hid/src/audio_codec.c:44
audio_codec_set_spk_freq
void audio_codec_set_spk_freq(uint32_t freq)
audio codec set speaker freq
Definition: composite_audio_hid/src/audio_codec.c:135
I2Cx_SCL_GPIO_CLK
#define I2Cx_SCL_GPIO_CLK
Definition: composite_audio_hid/src/audio_codec.c:49
I2Cx_SCL_GPIO_PORT
#define I2Cx_SCL_GPIO_PORT
Definition: composite_audio_hid/src/audio_codec.c:48
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_master_transmit
i2c_status_type i2c_master_transmit(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode.
Definition: i2c_application.c:414
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
DMA1_Channel3_IRQn
@ DMA1_Channel3_IRQn
Definition: at32f403.h:191
DMA1_Channel4_IRQn
@ DMA1_Channel4_IRQn
Definition: at32f403.h:192
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA1_HDT4_FLAG
#define DMA1_HDT4_FLAG
Definition: at32f403_dma.h:77
DMA1_HDT3_FLAG
#define DMA1_HDT3_FLAG
Definition: at32f403_dma.h:73
DMA1_FDT4_FLAG
#define DMA1_FDT4_FLAG
Definition: at32f403_dma.h:76
DMA1_FDT3_FLAG
#define DMA1_FDT3_FLAG
Definition: at32f403_dma.h:72
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA_HDT_INT
#define DMA_HDT_INT
Definition: at32f403_dma.h:51
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL4
#define DMA1_CHANNEL4
Definition: at32f403_dma.h:358
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
I2C1_MUX
#define I2C1_MUX
Definition: at32f403_gpio.h:81
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
i2s_init
void i2s_init(spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value.
Definition: at32f403_spi.c:326
spi_i2s_dma_receiver_enable
void spi_i2s_dma_receiver_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode.
Definition: at32f403_spi.c:509
i2s_enable
void i2s_enable(spi_type *spi_x, confirm_state new_state)
enable or disable i2s.
Definition: at32f403_spi.c:455
spi_i2s_reset
void spi_i2s_reset(spi_type *spi_x)
spi reset by crm reset register
Definition: at32f403_spi.c:49
i2s_default_para_init
void i2s_default_para_init(i2s_init_type *i2s_init_struct)
i2s init config with its default value.
Definition: at32f403_spi.c:308
spi_i2s_dma_transmitter_enable
void spi_i2s_dma_transmitter_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode.
Definition: at32f403_spi.c:495
i2s_data_channel_format_type
i2s_data_channel_format_type
i2s data bit num and channel bit num type
Definition: at32f403_spi.h:224
i2s_audio_sampling_freq_type
i2s_audio_sampling_freq_type
i2s audio frequency type
Definition: at32f403_spi.h:207
I2S_CLOCK_POLARITY_LOW
@ I2S_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:247
I2S_DATA_16BIT_CHANNEL_16BIT
@ I2S_DATA_16BIT_CHANNEL_16BIT
Definition: at32f403_spi.h:225
I2S_DATA_24BIT_CHANNEL_32BIT
@ I2S_DATA_24BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:227
I2S_AUDIO_PROTOCOL_PHILLIPS
@ I2S_AUDIO_PROTOCOL_PHILLIPS
Definition: at32f403_spi.h:196
I2S_MODE_MASTER_TX
@ I2S_MODE_MASTER_TX
Definition: at32f403_spi.h:238
I2S_MODE_SLAVE_RX
@ I2S_MODE_SLAVE_RX
Definition: at32f403_spi.h:237
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_output_channel_buffer_enable
void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer
Definition: at32f403_tmr.c:627
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
MIC_BUFFER_SIZE
#define MIC_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:125
SPK_BUFFER_SIZE
#define SPK_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:126
DMA_BUFFER_SIZE
#define DMA_BUFFER_SIZE
Definition: audio/inc/audio_codec.h:127
I2S2_DT_ADDRESS
#define I2S2_DT_ADDRESS
Definition: audio/inc/audio_codec.h:114
I2S1_SD_PIN
#define I2S1_SD_PIN
Definition: audio/inc/audio_codec.h:103
I2S1_CK_PIN
#define I2S1_CK_PIN
Definition: audio/inc/audio_codec.h:102
I2S2_GPIO
#define I2S2_GPIO
Definition: audio/inc/audio_codec.h:112
I2S2_SD_PIN
#define I2S2_SD_PIN
Definition: audio/inc/audio_codec.h:111
I2S2_WS_PIN
#define I2S2_WS_PIN
Definition: audio/inc/audio_codec.h:109
I2S2_GPIO_CRM_CLK
#define I2S2_GPIO_CRM_CLK
Definition: audio/inc/audio_codec.h:113
I2S1_DT_ADDRESS
#define I2S1_DT_ADDRESS
Definition: audio/inc/audio_codec.h:106
I2S1_GPIO_CRM_CLK
#define I2S1_GPIO_CRM_CLK
Definition: audio/inc/audio_codec.h:105
I2S1_WS_PIN
#define I2S1_WS_PIN
Definition: audio/inc/audio_codec.h:101
I2S1_GPIO
#define I2S1_GPIO
Definition: audio/inc/audio_codec.h:104
I2S2_CK_PIN
#define I2S2_CK_PIN
Definition: audio/inc/audio_codec.h:110
WM8988_R27_ADDITIONAL_3_CONTROL
#define WM8988_R27_ADDITIONAL_3_CONTROL
Definition: audio/inc/audio_codec.h:75
WM8988_I2C_ADDR_CSB_LOW
#define WM8988_I2C_ADDR_CSB_LOW
Definition: audio/inc/audio_codec.h:91
WM8988_R10_LEFT_DAC_VOLUME
#define WM8988_R10_LEFT_DAC_VOLUME
Definition: audio/inc/audio_codec.h:58
WM8988_R1_RIGHT_INPUT_VOLUME
#define WM8988_R1_RIGHT_INPUT_VOLUME
Definition: audio/inc/audio_codec.h:49
WM8988_R3_ROUT1_VOLUME
#define WM8988_R3_ROUT1_VOLUME
Definition: audio/inc/audio_codec.h:51
WM8988_R36_RIGHT_OUT_MIX_1
#define WM8988_R36_RIGHT_OUT_MIX_1
Definition: audio/inc/audio_codec.h:82
WM8988_R21_LEFT_ADC_VOLUME
#define WM8988_R21_LEFT_ADC_VOLUME
Definition: audio/inc/audio_codec.h:69
WM8988_R31_ADC_INPUT_MODE
#define WM8988_R31_ADC_INPUT_MODE
Definition: audio/inc/audio_codec.h:77
WM8988_R13_TREBLE_CONTROL
#define WM8988_R13_TREBLE_CONTROL
Definition: audio/inc/audio_codec.h:61
WM8988_R16_3D_CONTROL
#define WM8988_R16_3D_CONTROL
Definition: audio/inc/audio_codec.h:64
WM8988_R22_RIGHT_ADC_VOLUME
#define WM8988_R22_RIGHT_ADC_VOLUME
Definition: audio/inc/audio_codec.h:70
WM8988_R0_LEFT_INPUT_VOLUME
#define WM8988_R0_LEFT_INPUT_VOLUME
Definition: audio/inc/audio_codec.h:48
WM8988_R23_ADDITIONAL_1_CONTROL
#define WM8988_R23_ADDITIONAL_1_CONTROL
Definition: audio/inc/audio_codec.h:71
WM8988_R35_LEFT_OUT_MIX_2
#define WM8988_R35_LEFT_OUT_MIX_2
Definition: audio/inc/audio_codec.h:81
WM8988_R43_LOW_POWER_PALYBACK
#define WM8988_R43_LOW_POWER_PALYBACK
Definition: audio/inc/audio_codec.h:89
WM8988_R32_ADC_L_SIGNAL_PATH
#define WM8988_R32_ADC_L_SIGNAL_PATH
Definition: audio/inc/audio_codec.h:78
WM8988_R26_PWR_2_MGMT
#define WM8988_R26_PWR_2_MGMT
Definition: audio/inc/audio_codec.h:74
WM8988_R11_RIGHT_DAC_VOLUME
#define WM8988_R11_RIGHT_DAC_VOLUME
Definition: audio/inc/audio_codec.h:59
WM8988_R24_ADDITIONAL_2_CONTROL
#define WM8988_R24_ADDITIONAL_2_CONTROL
Definition: audio/inc/audio_codec.h:72
WM8988_R40_LOUT2_VOLUME
#define WM8988_R40_LOUT2_VOLUME
Definition: audio/inc/audio_codec.h:86
WM8988_R34_LEFT_OUT_MIX_1
#define WM8988_R34_LEFT_OUT_MIX_1
Definition: audio/inc/audio_codec.h:80
WM8988_R5_ADC_DAC_CONTROL
#define WM8988_R5_ADC_DAC_CONTROL
Definition: audio/inc/audio_codec.h:53
WM8988_R25_PWR_1_MGMT
#define WM8988_R25_PWR_1_MGMT
Definition: audio/inc/audio_codec.h:73
WM8988_R41_ROUT2_VOLUME
#define WM8988_R41_ROUT2_VOLUME
Definition: audio/inc/audio_codec.h:87
WM8988_R2_LOUT1_VOLUME
#define WM8988_R2_LOUT1_VOLUME
Definition: audio/inc/audio_codec.h:50
WM8988_R37_RIGHT_OUT_MIX_2
#define WM8988_R37_RIGHT_OUT_MIX_2
Definition: audio/inc/audio_codec.h:83
WM8988_R33_ADC_R_SIGNAL_PATH
#define WM8988_R33_ADC_R_SIGNAL_PATH
Definition: audio/inc/audio_codec.h:79
WM8988_R12_BASS_CONTROL
#define WM8988_R12_BASS_CONTROL
Definition: audio/inc/audio_codec.h:60
AUDIO_BITW_16
#define AUDIO_BITW_16
Definition: audio/audio_conf.h:59
AUDIO_MIC_CHANEL_NUM
#define AUDIO_MIC_CHANEL_NUM
Definition: audio/audio_conf.h:61
AUDIO_DEFAULT_FREQ
#define AUDIO_DEFAULT_FREQ
Definition: audio/audio_conf.h:69
AUDIO_FREQ_16K
#define AUDIO_FREQ_16K
Definition: audio/audio_conf.h:57
AUDIO_SPK_CHANEL_NUM
#define AUDIO_SPK_CHANEL_NUM
Definition: audio/audio_conf.h:64
AUDIO_DEFAULT_BITW
#define AUDIO_DEFAULT_BITW
Definition: audio/audio_conf.h:70
AUDIO_FREQ_48K
#define AUDIO_FREQ_48K
Definition: audio/audio_conf.h:58
i2c_application.h
i2c application libray header file
audio_codec_type
Definition: audio/inc/audio_codec.h:130
audio_codec_type::spk_mute
uint8_t spk_mute
Definition: audio/inc/audio_codec.h:159
audio_codec_type::spk_threshold
uint16_t spk_threshold
Definition: audio/inc/audio_codec.h:141
audio_codec_type::spk_stage
uint8_t spk_stage
Definition: audio/inc/audio_codec.h:143
audio_codec_type::mic_roff
uint16_t * mic_roff
Definition: audio/inc/audio_codec.h:147
audio_codec_type::spk_buffer
uint16_t spk_buffer[4096]
Definition: audio/inc/audio_codec.h:134
audio_codec_type::mic_volume
uint16_t mic_volume
Definition: audio/inc/audio_codec.h:161
audio_codec_type::spk_roff
uint16_t * spk_roff
Definition: audio/inc/audio_codec.h:135
audio_codec_type::spk_rtotal
uint32_t spk_rtotal
Definition: audio/inc/audio_codec.h:140
audio_codec_type::mic_delta
uint32_t mic_delta
Definition: audio/inc/audio_codec.h:152
audio_codec_type::spk_calc
uint16_t spk_calc
Definition: audio/inc/audio_codec.h:142
audio_codec_type::mic_woff
uint16_t * mic_woff
Definition: audio/inc/audio_codec.h:148
audio_codec_type::mic_stage
uint8_t mic_stage
Definition: audio/inc/audio_codec.h:156
audio_codec_type::mic_adj_count
uint16_t mic_adj_count
Definition: audio/inc/audio_codec.h:154
audio_codec_type::spk_freq
uint32_t spk_freq
Definition: audio/inc/audio_codec.h:138
audio_codec_type::audio_bitw
uint32_t audio_bitw
Definition: audio/inc/audio_codec.h:132
audio_codec_type::mic_wend
uint16_t * mic_wend
Definition: audio/inc/audio_codec.h:149
audio_codec_type::spk_rend
uint16_t * spk_rend
Definition: audio/inc/audio_codec.h:137
audio_codec_type::mic_wtotal
uint32_t mic_wtotal
Definition: audio/inc/audio_codec.h:150
audio_codec_type::mic_rtotal
uint32_t mic_rtotal
Definition: audio/inc/audio_codec.h:151
audio_codec_type::audio_freq
uint32_t audio_freq
Definition: audio/inc/audio_codec.h:131
audio_codec_type::mic_mute
uint8_t mic_mute
Definition: audio/inc/audio_codec.h:158
audio_codec_type::spk_volume
uint16_t spk_volume
Definition: audio/inc/audio_codec.h:162
audio_codec_type::mic_calc
uint16_t mic_calc
Definition: audio/inc/audio_codec.h:153
audio_codec_type::spk_wtotal
uint32_t spk_wtotal
Definition: audio/inc/audio_codec.h:139
audio_codec_type::mic_adj_stage
uint8_t mic_adj_stage
Definition: audio/inc/audio_codec.h:155
audio_codec_type::spk_tx_size
uint32_t spk_tx_size
Definition: audio/inc/audio_codec.h:164
audio_codec_type::mic_rx_size
uint32_t mic_rx_size
Definition: audio/inc/audio_codec.h:165
audio_codec_type::spk_woff
uint16_t * spk_woff
Definition: audio/inc/audio_codec.h:136
audio_codec_type::mic_buffer
uint16_t mic_buffer[1024]
Definition: audio/inc/audio_codec.h:146
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
i2s_init_type
i2s init type
Definition: at32f403_spi.h:270
i2s_init_type::audio_sampling_freq
i2s_audio_sampling_freq_type audio_sampling_freq
Definition: at32f403_spi.h:273
i2s_init_type::data_channel_format
i2s_data_channel_format_type data_channel_format
Definition: at32f403_spi.h:274
i2s_init_type::mclk_output_enable
confirm_state mclk_output_enable
Definition: at32f403_spi.h:276
i2s_init_type::audio_protocol
i2s_audio_protocol_type audio_protocol
Definition: at32f403_spi.h:272
i2s_init_type::operation_mode
i2s_operation_mode_type operation_mode
Definition: at32f403_spi.h:271
i2s_init_type::clock_polarity
i2s_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:275
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400


AT32F403 Firmwary Library: msc_bot_scsi.c Source File

  • middlewares
  • usbd_class
  • composite_cdc_msc
composite_cdc_msc/msc_bot_scsi.c
Go to the documentation of this file.
1
24// #include "msc_bot_scsi.h"
25#include "cdc_msc_class.h"
26#include "msc_diskio.h"
27
42#if defined ( __ICCARM__ ) /* iar compiler */
43 #pragma data_alignment=4
44#endif
45ALIGNED_HEAD uint8_t page00_inquiry_data[] ALIGNED_TAIL = {
46 0x00,
47 0x00,
48 0x00,
49 0x00,
50 0x00,
51
52};
53#if defined ( __ICCARM__ ) /* iar compiler */
54 #pragma data_alignment=4
55#endif
56ALIGNED_HEAD sense_type sense_data ALIGNED_TAIL =
57{
58 0x70,
59 0x00,
60 SENSE_KEY_ILLEGAL_REQUEST,
61 0x00000000,
62 0x0A,
63 0x00000000,
64 0x20,
65 0x00,
66 0x00000000
67};
68
69#if defined ( __ICCARM__ ) /* iar compiler */
70 #pragma data_alignment=4
71#endif
72ALIGNED_HEAD uint8_t mode_sense6_data[8] ALIGNED_TAIL =
73{
74 0x00,
75 0x00,
76 0x00,
77 0x00,
78 0x00,
79 0x00,
80 0x00,
81 0x00
82};
83
84#if defined ( __ICCARM__ ) /* iar compiler */
85 #pragma data_alignment=4
86#endif
87ALIGNED_HEAD uint8_t mode_sense10_data[8] ALIGNED_TAIL =
88{
89 0x00,
90 0x06,
91 0x00,
92 0x00,
93 0x00,
94 0x00,
95 0x00,
96 0x00
97};
103void bot_scsi_init(void *udev)
104{
105 usbd_core_type *pudev = (usbd_core_type *)udev;
106 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
107 pmsc->msc_state = MSC_STATE_MACHINE_IDLE;
108 pmsc->bot_status = MSC_BOT_STATE_IDLE;
109 pmsc->max_lun = MSC_SUPPORT_MAX_LUN - 1;
110
111 pmsc->csw_struct.dCSWSignature = CSW_DCSWSIGNATURE;
112 pmsc->csw_struct.dCSWDataResidue = 0;
113 pmsc->csw_struct.dCSWSignature = 0;
114 pmsc->csw_struct.dCSWTag = CSW_BCSWSTATUS_PASS;
115
116 /* set out endpoint to receive status */
117 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
118}
119
125void bot_scsi_reset(void *udev)
126{
127 usbd_core_type *pudev = (usbd_core_type *)udev;
128 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
129 pmsc->msc_state = MSC_STATE_MACHINE_IDLE;
130 pmsc->bot_status = MSC_BOT_STATE_RECOVERY;
131 pmsc->max_lun = MSC_SUPPORT_MAX_LUN - 1;
132
133 /* set out endpoint to receive status */
134 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
135}
136
143void bot_scsi_datain_handler(void *udev, uint8_t ept_num)
144{
145 usbd_core_type *pudev = (usbd_core_type *)udev;
146 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
147 switch(pmsc->msc_state)
148 {
149 case MSC_STATE_MACHINE_DATA_IN:
150 if(bot_scsi_cmd_process(udev) != USB_OK)
151 {
152 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_FAILED);
153 }
154 break;
155
156 case MSC_STATE_MACHINE_LAST_DATA:
157 case MSC_STATE_MACHINE_SEND_DATA:
158 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_PASS);
159 break;
160
161 default:
162 break;
163 }
164}
165
172void bot_scsi_dataout_handler(void *udev, uint8_t ept_num)
173{
174 usbd_core_type *pudev = (usbd_core_type *)udev;
175 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
176 switch(pmsc->msc_state)
177 {
178 case MSC_STATE_MACHINE_IDLE:
179 bot_cbw_decode(udev);
180 break;
181
182 case MSC_STATE_MACHINE_DATA_OUT:
183 if(bot_scsi_cmd_process(udev) != USB_OK)
184 {
185 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_FAILED);
186 }
187 break;
188 }
189}
190
196void bot_cbw_decode(void *udev)
197{
198 usbd_core_type *pudev = (usbd_core_type *)udev;
199 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
200
201 pmsc->csw_struct.dCSWTag = pmsc->cbw_struct.dCBWTage;
202 pmsc->csw_struct.dCSWDataResidue = pmsc->cbw_struct.dCBWDataTransferLength;
203
204 /* check param */
205 if((pmsc->cbw_struct.dCBWSignature != CBW_DCBWSIGNATURE) ||
206 (usbd_get_recv_len(pudev, USBD_MSC_BULK_OUT_EPT) != CBW_CMD_LENGTH)
207 || (pmsc->cbw_struct.bCBWLUN > MSC_SUPPORT_MAX_LUN) ||
208 (pmsc->cbw_struct.bCBWCBLength < 1) || (pmsc->cbw_struct.bCBWCBLength > 16))
209 {
210 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
211 pmsc->bot_status = MSC_BOT_STATE_ERROR;
212 bot_scsi_stall(udev);
213 }
214 else
215 {
216 if(bot_scsi_cmd_process(udev) != USB_OK)
217 {
218 bot_scsi_stall(udev);
219 }
220 else if((pmsc->msc_state != MSC_STATE_MACHINE_DATA_IN) &&
221 (pmsc->msc_state != MSC_STATE_MACHINE_DATA_OUT) &&
222 (pmsc->msc_state != MSC_STATE_MACHINE_LAST_DATA))
223 {
224 if(pmsc->data_len == 0)
225 {
226 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_PASS);
227 }
228 else if(pmsc->data_len > 0)
229 {
230 bot_scsi_send_data(udev, pmsc->data, pmsc->data_len);
231 }
232 }
233 }
234}
235
243void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len)
244{
245 usbd_core_type *pudev = (usbd_core_type *)udev;
246 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
247 uint32_t data_len = MIN(len, pmsc->cbw_struct.dCBWDataTransferLength);
248
249 pmsc->csw_struct.dCSWDataResidue -= data_len;
250 pmsc->csw_struct.bCSWStatus = CSW_BCSWSTATUS_PASS;
251
252 pmsc->msc_state = MSC_STATE_MACHINE_SEND_DATA;
253
254 usbd_ept_send(pudev, USBD_MSC_BULK_IN_EPT,
255 buffer, data_len);
256}
257
264void bot_scsi_send_csw(void *udev, uint8_t status)
265{
266 usbd_core_type *pudev = (usbd_core_type *)udev;
267 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
268
269 pmsc->csw_struct.bCSWStatus = status;
270 pmsc->csw_struct.dCSWSignature = CSW_DCSWSIGNATURE;
271 pmsc->msc_state = MSC_STATE_MACHINE_IDLE;
272
273 usbd_ept_send(pudev, USBD_MSC_BULK_IN_EPT,
274 (uint8_t *)&pmsc->csw_struct, CSW_CMD_LENGTH);
275
276 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT,
277 (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
278}
279
280
288void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc)
289{
290 sense_data.sense_key = sense_key;
291 sense_data.asc = asc;
292}
293
294
303 usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
304{
305 usbd_core_type *pudev = (usbd_core_type *)udev;
306 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
307 if((blk_offset + blk_count) > pmsc->blk_nbr[lun])
308 {
309 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, ADDRESS_OUT_OF_RANGE);
310 return USB_FAIL;
311 }
312 return USB_OK;
313}
314
320void bot_scsi_stall(void *udev)
321{
322 usbd_core_type *pudev = (usbd_core_type *)udev;
323 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
324
325 if((pmsc->cbw_struct.dCBWDataTransferLength != 0) &&
326 (pmsc->cbw_struct.bmCBWFlags == 0) &&
327 pmsc->bot_status == MSC_BOT_STATE_IDLE)
328 {
329 usbd_set_stall(pudev, USBD_MSC_BULK_OUT_EPT);
330 }
331 usbd_set_stall(pudev, USBD_MSC_BULK_IN_EPT);
332
333 if(pmsc->bot_status == MSC_BOT_STATE_ERROR)
334 {
335 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT,
336 (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
337 }
338}
339
346 usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun)
347{
348 usb_sts_type status = USB_OK;
349 usbd_core_type *pudev = (usbd_core_type *)udev;
350 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
351
352 if(pmsc->cbw_struct.dCBWDataTransferLength != 0)
353 {
354 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
355 return USB_FAIL;
356 }
357
358 pmsc->data_len = 0;
359 return status;
360}
361
368 usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun)
369{
370 uint8_t *pdata;
371 uint32_t trans_len = 0;
372 usb_sts_type status = USB_OK;
373 usbd_core_type *pudev = (usbd_core_type *)udev;
374 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
375
376 if(pmsc->cbw_struct.CBWCB[1] & 0x01)
377 {
378 pdata = page00_inquiry_data;
379 trans_len = 5;
380 }
381 else
382 {
383 pdata = get_inquiry(lun);
384 if(pmsc->cbw_struct.dCBWDataTransferLength < SCSI_INQUIRY_DATA_LENGTH)
385 {
386 trans_len = pmsc->cbw_struct.dCBWDataTransferLength;
387 }
388 else
389 {
390 trans_len = SCSI_INQUIRY_DATA_LENGTH;
391 }
392 }
393
394 pmsc->data_len = trans_len;
395 while(trans_len)
396 {
397 trans_len --;
398 pmsc->data[trans_len] = pdata[trans_len];
399 }
400 return status;
401}
402
409 usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun)
410{
411 usbd_core_type *pudev = (usbd_core_type *)udev;
412 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
413 pmsc->data_len = 0;
414 return USB_OK;
415}
416
423 usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun)
424{
425 usbd_core_type *pudev = (usbd_core_type *)udev;
426 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
427 pmsc->data_len = 0;
428 return USB_OK;
429}
430
437 usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun)
438{
439 uint8_t data_len = 8;
440 usbd_core_type *pudev = (usbd_core_type *)udev;
441 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
442 pmsc->data_len = 8;
443 while(data_len)
444 {
445 data_len --;
446 pmsc->data[data_len] = mode_sense6_data[data_len];
447 };
448 return USB_OK;
449}
450
457 usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun)
458{
459 uint8_t data_len = 8;
460 usbd_core_type *pudev = (usbd_core_type *)udev;
461 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
462 pmsc->data_len = 8;
463 while(data_len)
464 {
465 data_len --;
466 pmsc->data[data_len] = mode_sense10_data[data_len];
467 };
468 return USB_OK;
469}
470
477 usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun)
478{
479 usbd_core_type *pudev = (usbd_core_type *)udev;
480 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
481 uint8_t *pdata = pmsc->data;
482 msc_disk_capacity(lun, &pmsc->blk_nbr[lun], &pmsc->blk_size[lun]);
483
484 pdata[0] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 24);
485 pdata[1] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 16);
486 pdata[2] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 8);
487 pdata[3] = (uint8_t)((pmsc->blk_nbr[lun] - 1));
488
489 pdata[4] = (uint8_t)((pmsc->blk_size[lun]) >> 24);
490 pdata[5] = (uint8_t)((pmsc->blk_size[lun]) >> 16);
491 pdata[6] = (uint8_t)((pmsc->blk_size[lun]) >> 8);
492 pdata[7] = (uint8_t)((pmsc->blk_size[lun]));
493
494 pmsc->data_len = 8;
495 return USB_OK;
496}
497
504 usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun)
505{
506 usbd_core_type *pudev = (usbd_core_type *)udev;
507 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
508 uint8_t *pdata = pmsc->data;
509
510 pdata[0] = 0;
511 pdata[1] = 0;
512 pdata[2] = 0;
513 pdata[3] = 0x08;
514
515 msc_disk_capacity(lun, &pmsc->blk_nbr[lun], &pmsc->blk_size[lun]);
516
517 pdata[4] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 24);
518 pdata[5] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 16);
519 pdata[6] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 8);
520 pdata[7] = (uint8_t)((pmsc->blk_nbr[lun] - 1));
521
522 pdata[8] = 0x02;
523
524 pdata[9] = (uint8_t)((pmsc->blk_size[lun]) >> 16);
525 pdata[10] = (uint8_t)((pmsc->blk_size[lun]) >> 8);
526 pdata[11] = (uint8_t)((pmsc->blk_size[lun]));
527
528 pmsc->data_len = 12;
529
530 return USB_OK;
531}
532
539 usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun)
540{
541 uint32_t trans_len = 0x12;
542 usbd_core_type *pudev = (usbd_core_type *)udev;
543 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
544 uint8_t *pdata = pmsc->data;
545 uint8_t *sdata = (uint8_t *)&sense_data;
546
547 while(trans_len)
548 {
549 trans_len --;
550 pdata[trans_len] = sdata[trans_len];
551 }
552
553 if(pmsc->cbw_struct.dCBWDataTransferLength < REQ_SENSE_STANDARD_DATA_LEN)
554 {
555 pmsc->data_len = pmsc->cbw_struct.dCBWDataTransferLength;
556 }
557 else
558 {
559 pmsc->data_len = REQ_SENSE_STANDARD_DATA_LEN;
560 }
561 return USB_OK;
562}
563
570 usb_sts_type bot_scsi_verify(void *udev, uint8_t lun)
571{
572 usbd_core_type *pudev = (usbd_core_type *)udev;
573 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
574 uint8_t *cmd = pmsc->cbw_struct.CBWCB;
575 if((pmsc->cbw_struct.CBWCB[1] & 0x02) == 0x02)
576 {
577 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_FIELED_IN_COMMAND);
578 return USB_FAIL;
579 }
580
581 pmsc->blk_addr = cmd[2] << 24 | cmd[3] << 16 | cmd[4] << 8 | cmd[5];
582 pmsc->blk_len = cmd[7] << 8 | cmd[8];
583
584 if(bot_scsi_check_address(udev, lun, pmsc->blk_addr, pmsc->blk_len) != USB_OK)
585 {
586 return USB_FAIL;
587 }
588 pmsc->data_len = 0;
589 return USB_OK;
590}
591
598 usb_sts_type bot_scsi_read10(void *udev, uint8_t lun)
599{
600 usbd_core_type *pudev = (usbd_core_type *)udev;
601 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
602 uint8_t *cmd = pmsc->cbw_struct.CBWCB;
603 uint32_t len;
604
605 if(pmsc->msc_state == MSC_STATE_MACHINE_IDLE)
606 {
607 if((pmsc->cbw_struct.bmCBWFlags & 0x80) != 0x80)
608 {
609 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
610 return USB_FAIL;
611 }
612
613 pmsc->blk_addr = cmd[2] << 24 | cmd[3] << 16 | cmd[4] << 8 | cmd[5];
614 pmsc->blk_len = cmd[7] << 8 | cmd[8];
615
616 if(bot_scsi_check_address(udev, lun, pmsc->blk_addr, pmsc->blk_len) != USB_OK)
617 {
618 return USB_FAIL;
619 }
620
621 pmsc->blk_addr *= pmsc->blk_size[lun];
622 pmsc->blk_len *= pmsc->blk_size[lun];
623
624 if(pmsc->cbw_struct.dCBWDataTransferLength != pmsc->blk_len)
625 {
626 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
627 return USB_FAIL;
628 }
629 pmsc->msc_state = MSC_STATE_MACHINE_DATA_IN;
630 }
631 pmsc->data_len = MSC_MAX_DATA_BUF_LEN;
632
633 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
634 if( msc_disk_read(lun, pmsc->blk_addr, pmsc->data, len) != USB_OK)
635 {
636 bot_scsi_sense_code(udev, SENSE_KEY_HARDWARE_ERROR, MEDIUM_NOT_PRESENT);
637 return USB_FAIL;
638 }
639 usbd_ept_send(pudev, USBD_MSC_BULK_IN_EPT, pmsc->data, len);
640 pmsc->blk_addr += len;
641 pmsc->blk_len -= len;
642
643 pmsc->csw_struct.dCSWDataResidue -= len;
644 if(pmsc->blk_len == 0)
645 {
646 pmsc->msc_state = MSC_STATE_MACHINE_LAST_DATA;
647 }
648
649 return USB_OK;
650}
651
652
659 usb_sts_type bot_scsi_write10(void *udev, uint8_t lun)
660{
661 usbd_core_type *pudev = (usbd_core_type *)udev;
662 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
663 uint8_t *cmd = pmsc->cbw_struct.CBWCB;
664 uint32_t len;
665
666 if(pmsc->msc_state == MSC_STATE_MACHINE_IDLE)
667 {
668 if((pmsc->cbw_struct.bmCBWFlags & 0x80) == 0x80)
669 {
670 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
671 return USB_FAIL;
672 }
673
674 pmsc->blk_addr = cmd[2] << 24 | cmd[3] << 16 | cmd[4] << 8 | cmd[5];
675 pmsc->blk_len = cmd[7] << 8 | cmd[8];
676
677 if(bot_scsi_check_address(udev, lun, pmsc->blk_addr, pmsc->blk_len) != USB_OK)
678 {
679 return USB_FAIL;
680 }
681
682 pmsc->blk_addr *= pmsc->blk_size[lun];
683 pmsc->blk_len *= pmsc->blk_size[lun];
684
685 if(pmsc->cbw_struct.dCBWDataTransferLength != pmsc->blk_len)
686 {
687 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
688 return USB_FAIL;
689 }
690
691 pmsc->msc_state = MSC_STATE_MACHINE_DATA_OUT;
692 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
693 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)pmsc->data, len);
694
695 }
696 else
697 {
698 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
699 if(msc_disk_write(lun, pmsc->blk_addr, pmsc->data, len) != USB_OK)
700 {
701 bot_scsi_sense_code(udev, SENSE_KEY_HARDWARE_ERROR, MEDIUM_NOT_PRESENT);
702 return USB_FAIL;
703 }
704
705 pmsc->blk_addr += len;
706 pmsc->blk_len -= len;
707
708 pmsc->csw_struct.dCSWDataResidue -= len;
709
710 if(pmsc->blk_len == 0)
711 {
712 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_PASS);
713 }
714 else
715 {
716 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
717 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)pmsc->data, len);
718 }
719 }
720 return USB_OK;
721}
722
729void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
730{
731 usbd_core_type *pudev = (usbd_core_type *)udev;
732 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
733 if(pmsc->bot_status == MSC_BOT_STATE_ERROR)
734 {
735 usbd_set_stall(pudev, USBD_MSC_BULK_IN_EPT);
736 pmsc->bot_status = MSC_BOT_STATE_IDLE;
737 }
738 else if(((ept_num & 0x80) == 0x80) && (pmsc->bot_status != MSC_BOT_STATE_RECOVERY))
739 {
740 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_FAILED);
741 }
742}
743
749 usb_sts_type bot_scsi_cmd_process(void *udev)
750{
751 usb_sts_type status = USB_FAIL;
752 usbd_core_type *pudev = (usbd_core_type *)udev;
753 cdc_msc_struct_type *pmsc = (cdc_msc_struct_type *)pudev->class_handler->pdata;
754 switch(pmsc->cbw_struct.CBWCB[0])
755 {
756 case MSC_CMD_INQUIRY:
757 status = bot_scsi_inquiry(udev, pmsc->cbw_struct.bCBWLUN);
758 break;
759
760 case MSC_CMD_START_STOP:
761 status = bot_scsi_start_stop(udev, pmsc->cbw_struct.bCBWLUN);
762 break;
763
764 case MSC_CMD_MODE_SENSE6:
765 status = bot_scsi_mode_sense6(udev, pmsc->cbw_struct.bCBWLUN);
766 break;
767
768 case MSC_CMD_MODE_SENSE10:
769 status = bot_scsi_mode_sense10(udev, pmsc->cbw_struct.bCBWLUN);
770 break;
771
772 case MSC_CMD_ALLOW_MEDIUM_REMOVAL:
773 status = bot_scsi_allow_medium_removal(udev, pmsc->cbw_struct.bCBWLUN);
774 break;
775
776 case MSC_CMD_READ_10:
777 status = bot_scsi_read10(udev, pmsc->cbw_struct.bCBWLUN);
778 break;
779
780 case MSC_CMD_READ_CAPACITY:
781 status = bot_scsi_capacity(udev, pmsc->cbw_struct.bCBWLUN);
782 break;
783
784 case MSC_CMD_REQUEST_SENSE:
785 status = bot_scsi_request_sense(udev, pmsc->cbw_struct.bCBWLUN);
786 break;
787
788 case MSC_CMD_TEST_UNIT:
789 status = bot_scsi_test_unit(udev, pmsc->cbw_struct.bCBWLUN);
790 break;
791
792 case MSC_CMD_VERIFY:
793 status = bot_scsi_verify(udev, pmsc->cbw_struct.bCBWLUN);
794 break;
795
796 case MSC_CMD_WRITE_10:
797 status = bot_scsi_write10(udev, pmsc->cbw_struct.bCBWLUN);
798 break;
799
800 case MSC_CMD_READ_FORMAT_CAPACITY:
801 status = bot_scsi_format_capacity(udev, pmsc->cbw_struct.bCBWLUN);
802 break;
803
804 default:
805 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
806 status = USB_FAIL;
807 break;
808 }
809 return status;
810}
811
cdc_msc_class.h
usb cdc class file
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: composite_vcp_msc/src/msc_diskio.c:134
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: composite_vcp_msc/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: composite_vcp_msc/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: composite_vcp_msc/src/msc_diskio.c:100
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
cdc_msc_struct_type::cbw_struct
cbw_type cbw_struct
Definition: cdc_msc_class.h:275
cdc_msc_struct_type::data
uint8_t data[4096]
Definition: cdc_msc_class.h:273
cbw_type::bCBWLUN
uint8_t bCBWLUN
Definition: cdc_msc_class.h:192
cbw_type::bCBWCBLength
uint8_t bCBWCBLength
Definition: cdc_msc_class.h:193
cdc_msc_struct_type::msc_state
uint8_t msc_state
Definition: cdc_msc_class.h:262
csw_type::dCSWSignature
uint32_t dCSWSignature
Definition: cdc_msc_class.h:202
cbw_type::CBWCB
uint8_t CBWCB[16]
Definition: cdc_msc_class.h:194
csw_type::bCSWStatus
uint32_t bCSWStatus
Definition: cdc_msc_class.h:205
cdc_msc_struct_type::blk_len
uint32_t blk_len
Definition: cdc_msc_class.h:270
csw_type::dCSWTag
uint32_t dCSWTag
Definition: cdc_msc_class.h:203
csw_type::dCSWDataResidue
uint32_t dCSWDataResidue
Definition: cdc_msc_class.h:204
cdc_msc_struct_type::blk_size
uint32_t blk_size[1]
Definition: cdc_msc_class.h:267
cdc_msc_struct_type::csw_struct
csw_type csw_struct
Definition: cdc_msc_class.h:276
cdc_msc_struct_type::blk_addr
uint64_t blk_addr
Definition: cdc_msc_class.h:269
cdc_msc_struct_type::data_len
uint32_t data_len
Definition: cdc_msc_class.h:272
cdc_msc_struct_type::blk_nbr
uint32_t blk_nbr[1]
Definition: cdc_msc_class.h:266
cbw_type::dCBWDataTransferLength
uint32_t dCBWDataTransferLength
Definition: cdc_msc_class.h:190
cdc_msc_struct_type::max_lun
uint32_t max_lun
Definition: cdc_msc_class.h:264
cbw_type::dCBWTage
uint32_t dCBWTage
Definition: cdc_msc_class.h:189
cbw_type::dCBWSignature
uint32_t dCBWSignature
Definition: cdc_msc_class.h:188
cdc_msc_struct_type::bot_status
uint8_t bot_status
Definition: cdc_msc_class.h:263
cbw_type::bmCBWFlags
uint8_t bmCBWFlags
Definition: cdc_msc_class.h:191
USBD_MSC_BULK_IN_EPT
#define USBD_MSC_BULK_IN_EPT
Definition: cdc_msc_class.h:55
USBD_MSC_BULK_OUT_EPT
#define USBD_MSC_BULK_OUT_EPT
Definition: cdc_msc_class.h:56
bot_scsi_format_capacity
usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command format capacity
Definition: composite_cdc_msc/msc_bot_scsi.c:504
bot_scsi_datain_handler
void bot_scsi_datain_handler(void *udev, uint8_t ept_num)
bulk-only transport data in handler
Definition: composite_cdc_msc/msc_bot_scsi.c:143
bot_scsi_start_stop
usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun)
bulk-only transport scsi command start stop
Definition: composite_cdc_msc/msc_bot_scsi.c:409
bot_scsi_request_sense
usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun)
bulk-only transport scsi command request sense
Definition: composite_cdc_msc/msc_bot_scsi.c:539
bot_scsi_read10
usb_sts_type bot_scsi_read10(void *udev, uint8_t lun)
bulk-only transport scsi command read10
Definition: composite_cdc_msc/msc_bot_scsi.c:598
bot_scsi_check_address
usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address
Definition: composite_cdc_msc/msc_bot_scsi.c:303
bot_scsi_write10
usb_sts_type bot_scsi_write10(void *udev, uint8_t lun)
bulk-only transport scsi command write10
Definition: composite_cdc_msc/msc_bot_scsi.c:659
bot_scsi_reset
void bot_scsi_reset(void *udev)
reset bulk-only transport and scsi
Definition: composite_cdc_msc/msc_bot_scsi.c:125
bot_scsi_mode_sense10
usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10
Definition: composite_cdc_msc/msc_bot_scsi.c:457
bot_scsi_sense_code
void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code
Definition: composite_cdc_msc/msc_bot_scsi.c:288
bot_cbw_decode
void bot_cbw_decode(void *udev)
bulk-only cbw decode
Definition: composite_cdc_msc/msc_bot_scsi.c:196
bot_scsi_verify
usb_sts_type bot_scsi_verify(void *udev, uint8_t lun)
bulk-only transport scsi command verify
Definition: composite_cdc_msc/msc_bot_scsi.c:570
bot_scsi_allow_medium_removal
usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal
Definition: composite_cdc_msc/msc_bot_scsi.c:423
bot_scsi_init
void bot_scsi_init(void *udev)
initialize bulk-only transport and scsi
Definition: composite_cdc_msc/msc_bot_scsi.c:103
bot_scsi_cmd_process
usb_sts_type bot_scsi_cmd_process(void *udev)
bulk-only transport scsi command process
Definition: composite_cdc_msc/msc_bot_scsi.c:749
bot_scsi_dataout_handler
void bot_scsi_dataout_handler(void *udev, uint8_t ept_num)
bulk-only transport data out handler
Definition: composite_cdc_msc/msc_bot_scsi.c:172
bot_scsi_mode_sense6
usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6
Definition: composite_cdc_msc/msc_bot_scsi.c:437
bot_scsi_stall
void bot_scsi_stall(void *udev)
bot endpoint stall
Definition: composite_cdc_msc/msc_bot_scsi.c:320
bot_scsi_send_data
void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len)
send bot data
Definition: composite_cdc_msc/msc_bot_scsi.c:243
bot_scsi_test_unit
usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun)
bulk-only transport scsi command test unit
Definition: composite_cdc_msc/msc_bot_scsi.c:346
bot_scsi_inquiry
usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun)
bulk-only transport scsi command inquiry
Definition: composite_cdc_msc/msc_bot_scsi.c:368
bot_scsi_capacity
usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command capacity
Definition: composite_cdc_msc/msc_bot_scsi.c:477
ALIGNED_TAIL
ALIGNED_HEAD uint8_t page00_inquiry_data[] ALIGNED_TAIL
Definition: composite_cdc_msc/msc_bot_scsi.c:45
bot_scsi_clear_feature
void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
clear feature
Definition: composite_cdc_msc/msc_bot_scsi.c:729
bot_scsi_send_csw
void bot_scsi_send_csw(void *udev, uint8_t status)
send command status
Definition: composite_cdc_msc/msc_bot_scsi.c:264
MSC_STATE_MACHINE_DATA_IN
#define MSC_STATE_MACHINE_DATA_IN
Definition: cdc_msc_class.h:119
MSC_CMD_START_STOP
#define MSC_CMD_START_STOP
Definition: cdc_msc_class.h:86
MSC_CMD_VERIFY
#define MSC_CMD_VERIFY
Definition: cdc_msc_class.h:96
ADDRESS_OUT_OF_RANGE
#define ADDRESS_OUT_OF_RANGE
Definition: cdc_msc_class.h:151
SENSE_KEY_HARDWARE_ERROR
#define SENSE_KEY_HARDWARE_ERROR
Definition: cdc_msc_class.h:136
MEDIUM_NOT_PRESENT
#define MEDIUM_NOT_PRESENT
Definition: cdc_msc_class.h:152
MSC_CMD_MODE_SENSE6
#define MSC_CMD_MODE_SENSE6
Definition: cdc_msc_class.h:87
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155
MSC_CMD_ALLOW_MEDIUM_REMOVAL
#define MSC_CMD_ALLOW_MEDIUM_REMOVAL
Definition: cdc_msc_class.h:89
CSW_CMD_LENGTH
#define CSW_CMD_LENGTH
Definition: cdc_msc_class.h:112
MSC_BOT_STATE_IDLE
#define MSC_BOT_STATE_IDLE
Definition: cdc_msc_class.h:127
MSC_MAX_DATA_BUF_LEN
#define MSC_MAX_DATA_BUF_LEN
Definition: cdc_msc_class.h:82
CSW_DCSWSIGNATURE
#define CSW_DCSWSIGNATURE
Definition: cdc_msc_class.h:113
MSC_CMD_INQUIRY
#define MSC_CMD_INQUIRY
Definition: cdc_msc_class.h:85
MSC_SUPPORT_MAX_LUN
#define MSC_SUPPORT_MAX_LUN
Definition: cdc_msc_class.h:81
INVALID_COMMAND
#define INVALID_COMMAND
Definition: cdc_msc_class.h:147
MSC_CMD_WRITE_10
#define MSC_CMD_WRITE_10
Definition: cdc_msc_class.h:97
MSC_STATE_MACHINE_IDLE
#define MSC_STATE_MACHINE_IDLE
Definition: cdc_msc_class.h:125
MSC_CMD_READ_FORMAT_CAPACITY
#define MSC_CMD_READ_FORMAT_CAPACITY
Definition: cdc_msc_class.h:93
MSC_CMD_MODE_SENSE10
#define MSC_CMD_MODE_SENSE10
Definition: cdc_msc_class.h:88
SENSE_KEY_ILLEGAL_REQUEST
#define SENSE_KEY_ILLEGAL_REQUEST
Definition: cdc_msc_class.h:137
MSC_STATE_MACHINE_DATA_OUT
#define MSC_STATE_MACHINE_DATA_OUT
Definition: cdc_msc_class.h:120
CSW_BCSWSTATUS_PASS
#define CSW_BCSWSTATUS_PASS
Definition: cdc_msc_class.h:114
INVALID_FIELED_IN_COMMAND
#define INVALID_FIELED_IN_COMMAND
Definition: cdc_msc_class.h:148
REQ_SENSE_STANDARD_DATA_LEN
#define REQ_SENSE_STANDARD_DATA_LEN
Definition: cdc_msc_class.h:131
MSC_STATE_MACHINE_SEND_DATA
#define MSC_STATE_MACHINE_SEND_DATA
Definition: cdc_msc_class.h:121
CBW_DCBWSIGNATURE
#define CBW_DCBWSIGNATURE
Definition: cdc_msc_class.h:108
MSC_CMD_READ_10
#define MSC_CMD_READ_10
Definition: cdc_msc_class.h:90
MSC_BOT_STATE_RECOVERY
#define MSC_BOT_STATE_RECOVERY
Definition: cdc_msc_class.h:128
CBW_CMD_LENGTH
#define CBW_CMD_LENGTH
Definition: cdc_msc_class.h:107
MSC_STATE_MACHINE_LAST_DATA
#define MSC_STATE_MACHINE_LAST_DATA
Definition: cdc_msc_class.h:122
MSC_CMD_TEST_UNIT
#define MSC_CMD_TEST_UNIT
Definition: cdc_msc_class.h:95
CSW_BCSWSTATUS_FAILED
#define CSW_BCSWSTATUS_FAILED
Definition: cdc_msc_class.h:115
MSC_CMD_READ_CAPACITY
#define MSC_CMD_READ_CAPACITY
Definition: cdc_msc_class.h:92
MSC_BOT_STATE_ERROR
#define MSC_BOT_STATE_ERROR
Definition: cdc_msc_class.h:129
MSC_CMD_REQUEST_SENSE
#define MSC_CMD_REQUEST_SENSE
Definition: cdc_msc_class.h:94
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
USB_FAIL
@ USB_FAIL
Definition: usb_std.h:280
usbd_set_stall
void usbd_set_stall(usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall.
Definition: usbd_core.c:259
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
cdc_msc_struct_type
usb cdc class struct
Definition: cdc_msc_class.h:251
sense_type
request sense standard data
Definition: cdc_msc_class.h:212
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111


AT32F403 Firmwary Library: msc_diskio.h Source File

  • usb_device
  • composite_vcp_msc
  • inc
composite_vcp_msc/inc/msc_diskio.h
Go to the documentation of this file.
1
24/* Define to prevent recursive inclusion -------------------------------------*/
25#ifndef __MSC_DISKIO_H
26#define __MSC_DISKIO_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32
33#include "usb_conf.h"
34#include "usb_std.h"
35
43#define INTERNAL_FLASH_LUN 0
44#define SPI_FLASH_LUN 1
45#define SD_LUN 2
46
47#define USB_FLASH_ADDR_OFFSET 0x08005000
48
49#define SECTOR_SIZE_1K 1024
50#define SECTOR_SIZE_2K 2048
51#define SECTOR_SIZE_4K 4096
52
53uint8_t *get_inquiry(uint8_t lun);
54 usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len);
55 usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len);
56 usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size);
57
66#ifdef __cplusplus
67}
68#endif
69
70#endif
71
72
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: composite_vcp_msc/src/msc_diskio.c:134
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: composite_vcp_msc/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: composite_vcp_msc/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: composite_vcp_msc/src/msc_diskio.c:100
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
usb_std.h
usb standard header file
usb_conf.h
usb config header file


AT32F403 Firmwary Library: msc_diskio.c Source File

  • usb_device
  • composite_vcp_msc
  • src
composite_vcp_msc/src/msc_diskio.c
Go to the documentation of this file.
1
24#include "msc_diskio.h"
25#include "cdc_msc_class.h"
26
34uint32_t sector_size = 2048;
35uint32_t msc_flash_size;
36uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH] =
37{
38 /* lun = 0 */
39 {
40 0x00, /* peripheral device type (direct-access device) */
41 0x80, /* removable media bit */
42 0x00, /* ansi version, ecma version, iso version */
43 0x01, /* respond data format */
44 SCSI_INQUIRY_DATA_LENGTH - 5, /* additional length */
45 0x00, 0x00, 0x00, /* reserved */
46 'A', 'T', '3', '2', ' ', ' ', ' ', ' ', /* vendor information "AT32" */
47 'D', 'i', 's', 'k', '0', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', /* Product identification "Disk" */
48 '2', '.', '0', '0' /* product revision level */
49 }
50};
51
57uint8_t *get_inquiry(uint8_t lun)
58{
59 if(lun < MSC_SUPPORT_MAX_LUN)
60 return (uint8_t *)scsi_inquiry[lun];
61 else
62 return NULL;
63}
64
73 usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
74{
75 uint32_t i = 0;
76 uint32_t flash_addr = (uint32_t)addr + USB_FLASH_ADDR_OFFSET;
77 switch(lun)
78 {
79 case 0:
80 for(i = 0; i < len; i ++)
81 {
82 read_buf[i] = *((uint8_t *)flash_addr);
83 flash_addr += 1;
84 }
85 break;
86 case 1:
87 break;
88 }
89 return USB_OK;
90}
91
100 usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
101{
102 uint32_t flash_addr = (uint32_t)addr + USB_FLASH_ADDR_OFFSET;
103 uint32_t i = 0, page_len = 2048, tolen = len;
104 uint32_t erase_addr = flash_addr;
105 switch(lun)
106 {
107 case 0:
108 flash_unlock();
109 while(tolen >= page_len)
110 {
111 flash_sector_erase(erase_addr);
112 tolen -= page_len;
113 erase_addr += page_len;
114 }
115 for(i = 0; i < len; i ++)
116 {
117 flash_byte_program(flash_addr+i, buf[i]);
118 }
119 flash_lock();
120 break;
121 case 1:
122 break;
123 }
124 return USB_OK;
125}
126
134 usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
135{
136 uint32_t flash_s = *((uint32_t *)0x1FFFF7E0);
137 msc_flash_size = (flash_s << 10) - (USB_FLASH_ADDR_OFFSET - FLASH_BASE);
138
139 if(flash_s < 256)
140 {
141 sector_size = SECTOR_SIZE_1K;
142 }
143 else
144 {
145 sector_size = SECTOR_SIZE_2K;
146 }
147
148 switch(lun)
149 {
150 case INTERNAL_FLASH_LUN:
151 *blk_nbr = msc_flash_size / sector_size;
152 *blk_size = sector_size;
153 break;
154 case SPI_FLASH_LUN:
155 break;
156 case SD_LUN:
157 break;
158 default:
159 break;
160 }
161 return USB_OK;
162}
163
cdc_msc_class.h
usb cdc class file
USB_FLASH_ADDR_OFFSET
#define USB_FLASH_ADDR_OFFSET
Definition: composite_vcp_msc/inc/msc_diskio.h:47
INTERNAL_FLASH_LUN
#define INTERNAL_FLASH_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:43
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: composite_vcp_msc/src/msc_diskio.c:134
msc_flash_size
uint32_t msc_flash_size
Definition: composite_vcp_msc/src/msc_diskio.c:35
sector_size
uint32_t sector_size
Definition: composite_vcp_msc/src/msc_diskio.c:34
SD_LUN
#define SD_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:45
scsi_inquiry
uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]
Definition: composite_vcp_msc/src/msc_diskio.c:36
SPI_FLASH_LUN
#define SPI_FLASH_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:44
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: composite_vcp_msc/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: composite_vcp_msc/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: composite_vcp_msc/src/msc_diskio.c:100
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_byte_program
flash_status_type flash_byte_program(uint32_t address, uint8_t data)
program a byte at a specified address.
Definition: at32f403_flash.c:757
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
SECTOR_SIZE_1K
#define SECTOR_SIZE_1K
Definition: hid_iap_class.h:59
SECTOR_SIZE_2K
#define SECTOR_SIZE_2K
Definition: hid_iap_class.h:60
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155
MSC_SUPPORT_MAX_LUN
#define MSC_SUPPORT_MAX_LUN
Definition: cdc_msc_class.h:81
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279


AT32F403 Firmwary Library: custom_hid_class.c Source File

  • middlewares
  • usbd_class
  • custom_hid
custom_hid_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "custom_hid_class.h"
26#include "custom_hid_desc.h"
27
41static usb_sts_type class_init_handler(void *udev);
42static usb_sts_type class_clear_handler(void *udev);
43static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
44static usb_sts_type class_ept0_tx_handler(void *udev);
45static usb_sts_type class_ept0_rx_handler(void *udev);
46static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
47static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_sof_handler(void *udev);
49static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
50
51static void usb_hid_buf_process(void *udev, uint8_t *report, uint16_t len);
52 custom_hid_type custom_hid_struct;
53
54/* usb device class handler */
55 usbd_class_handler custom_hid_class_handler =
56{
57 class_init_handler,
58 class_clear_handler,
59 class_setup_handler,
60 class_ept0_tx_handler,
61 class_ept0_rx_handler,
62 class_in_handler,
63 class_out_handler,
64 class_sof_handler,
65 class_event_handler,
66 &custom_hid_struct
67};
68
74 usb_sts_type class_init_handler(void *udev)
75{
76 usb_sts_type status = USB_OK;
77 usbd_core_type *pudev = (usbd_core_type *)udev;
78 custom_hid_type *pcshid = (custom_hid_type *)pudev->class_handler->pdata;
79#ifndef USB_EPT_AUTO_MALLOC_BUFFER
80 /* use user define buffer address */
81 usbd_ept_buf_custom_define(pudev, USBD_CUSTOM_HID_IN_EPT, EPT1_TX_ADDR);
82 usbd_ept_buf_custom_define(pudev, USBD_CUSTOM_HID_OUT_EPT, EPT1_RX_ADDR);
83#endif
84
85 /* open custom hid in endpoint */
86 usbd_ept_open(pudev, USBD_CUSTOM_HID_IN_EPT, EPT_INT_TYPE, USBD_CUSTOM_IN_MAXPACKET_SIZE);
87
88 /* open custom hid out endpoint */
89 usbd_ept_open(pudev, USBD_CUSTOM_HID_OUT_EPT, EPT_INT_TYPE, USBD_CUSTOM_OUT_MAXPACKET_SIZE);
90
91 /* set out endpoint to receive status */
92 usbd_ept_recv(pudev, USBD_CUSTOM_HID_OUT_EPT, pcshid->g_rxhid_buff, USBD_CUSTOM_OUT_MAXPACKET_SIZE);
93
94 return status;
95}
96
102static usb_sts_type class_clear_handler(void *udev)
103{
104 usb_sts_type status = USB_OK;
105 usbd_core_type *pudev = (usbd_core_type *)udev;
106
107 /* close custom hid in endpoint */
108 usbd_ept_close(pudev, USBD_CUSTOM_HID_IN_EPT);
109
110 /* close custom hid out endpoint */
111 usbd_ept_close(pudev, USBD_CUSTOM_HID_OUT_EPT);
112
113 return status;
114}
115
122static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
123{
124 usb_sts_type status = USB_OK;
125 usbd_core_type *pudev = (usbd_core_type *)udev;
126 custom_hid_type *pcshid = (custom_hid_type *)pudev->class_handler->pdata;
127 uint16_t len;
128 uint8_t *buf;
129
130 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
131 {
132 /* class request */
133 case USB_REQ_TYPE_CLASS:
134 switch(setup->bRequest)
135 {
136 case HID_REQ_SET_PROTOCOL:
137 pcshid->hid_protocol = (uint8_t)setup->wValue;
138 break;
139 case HID_REQ_GET_PROTOCOL:
140 usbd_ctrl_send(pudev, (uint8_t *)&pcshid->hid_protocol, 1);
141 break;
142 case HID_REQ_SET_IDLE:
143 pcshid->hid_set_idle = (uint8_t)(setup->wValue >> 8);
144 break;
145 case HID_REQ_GET_IDLE:
146 usbd_ctrl_send(pudev, (uint8_t *)&pcshid->hid_set_idle, 1);
147 break;
148 case HID_REQ_SET_REPORT:
149 pcshid->hid_state = HID_REQ_SET_REPORT;
150 usbd_ctrl_recv(pudev, pcshid->hid_set_report, setup->wLength);
151 break;
152 case HID_REQ_GET_REPORT:
153 usbd_ctrl_send(pudev, pcshid->hid_get_report, setup->wLength);
154 break;
155 default:
156 usbd_ctrl_unsupport(pudev);
157 break;
158 }
159 break;
160 /* standard request */
161 case USB_REQ_TYPE_STANDARD:
162 switch(setup->bRequest)
163 {
164 case USB_STD_REQ_GET_DESCRIPTOR:
165 if(setup->wValue >> 8 == HID_REPORT_DESC)
166 {
167 len = MIN(USBD_CUSHID_SIZ_REPORT_DESC, setup->wLength);
168 buf = (uint8_t *)g_usbd_custom_hid_report;
169 }
170 else if(setup->wValue >> 8 == HID_DESCRIPTOR_TYPE)
171 {
172 len = MIN(9, setup->wLength);
173 buf = (uint8_t *)g_custom_hid_usb_desc;
174 }
175 usbd_ctrl_send(pudev, (uint8_t *)buf, len);
176 break;
177 case USB_STD_REQ_GET_INTERFACE:
178 usbd_ctrl_send(pudev, (uint8_t *)&pcshid->alt_setting, 1);
179 break;
180 case USB_STD_REQ_SET_INTERFACE:
181 pcshid->alt_setting = setup->wValue;
182 break;
183 case USB_STD_REQ_CLEAR_FEATURE:
184 break;
185 case USB_STD_REQ_SET_FEATURE:
186 break;
187 default:
188 usbd_ctrl_unsupport(pudev);
189 break;
190 }
191 break;
192 default:
193 usbd_ctrl_unsupport(pudev);
194 break;
195 }
196 return status;
197}
198
204static usb_sts_type class_ept0_tx_handler(void *udev)
205{
206 usb_sts_type status = USB_OK;
207
208 /* ...user code... */
209
210 return status;
211}
212
218static usb_sts_type class_ept0_rx_handler(void *udev)
219{
220 usb_sts_type status = USB_OK;
221 usbd_core_type *pudev = (usbd_core_type *)udev;
222 custom_hid_type *pcshid = (custom_hid_type *)pudev->class_handler->pdata;
223 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
224 /* ...user code... */
225 if( pcshid->hid_state == HID_REQ_SET_REPORT)
226 {
227 /* hid buffer process */
228 usb_hid_buf_process(udev, pcshid->hid_set_report, recv_len);
229 pcshid->hid_state = 0;
230 }
231
232 return status;
233}
234
241static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
242{
243 usb_sts_type status = USB_OK;
244
245 /* ...user code...
246 trans next packet data
247 */
248
249 return status;
250}
251
258static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
259{
260 usb_sts_type status = USB_OK;
261 usbd_core_type *pudev = (usbd_core_type *)udev;
262 custom_hid_type *pcshid = (custom_hid_type *)pudev->class_handler->pdata;
263
264 /* get endpoint receive data length */
265 uint32_t recv_len = usbd_get_recv_len(pudev, ept_num);
266
267 /* hid buffer process */
268 usb_hid_buf_process(udev, pcshid->g_rxhid_buff, recv_len);
269
270 /* start receive next packet */
271 usbd_ept_recv(pudev, USBD_CUSTOM_HID_OUT_EPT, pcshid->g_rxhid_buff, recv_len);
272
273 return status;
274}
275
281static usb_sts_type class_sof_handler(void *udev)
282{
283 usb_sts_type status = USB_OK;
284
285 /* ...user code... */
286
287 return status;
288}
289
296static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
297{
298 usb_sts_type status = USB_OK;
299 switch(event)
300 {
301 case USBD_RESET_EVENT:
302
303 /* ...user code... */
304
305 break;
306 case USBD_SUSPEND_EVENT:
307
308 /* ...user code... */
309
310 break;
311 case USBD_WAKEUP_EVENT:
312 /* ...user code... */
313
314 break;
315 default:
316 break;
317 }
318 return status;
319}
320
328 usb_sts_type custom_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
329{
330 usb_sts_type status = USB_OK;
331 usbd_core_type *pudev = (usbd_core_type *)udev;
332
333 if(usbd_connect_state_get(pudev) == USB_CONN_STATE_CONFIGURED)
334 usbd_ept_send(pudev, USBD_CUSTOM_HID_IN_EPT, report, len);
335
336 return status;
337}
338
346static void usb_hid_buf_process(void *udev, uint8_t *report, uint16_t len)
347{
348 uint32_t i_index;
349 usbd_core_type *pudev = (usbd_core_type *)udev;
350 custom_hid_type *pcshid = (custom_hid_type *)pudev->class_handler->pdata;
351
352 switch(report[0])
353 {
354 case HID_REPORT_ID_2:
355 if(pcshid->g_rxhid_buff[1] == 0)
356 {
357 at32_led_off(LED2);
358 }
359 else
360 {
361 at32_led_on(LED2);
362 }
363 break;
364 case HID_REPORT_ID_3:
365 if(pcshid->g_rxhid_buff[1] == 0)
366 {
367 at32_led_off(LED3);
368 }
369 else
370 {
371 at32_led_on(LED3);
372 }
373 break;
374 case HID_REPORT_ID_4:
375 if(pcshid->g_rxhid_buff[1] == 0)
376 {
377 at32_led_off(LED4);
378 }
379 else
380 {
381 at32_led_on(LED4);
382 }
383 break;
384 case HID_REPORT_ID_6:
385 for(i_index = 0; i_index < len; i_index ++)
386 {
387 pcshid->g_txhid_buff[i_index] = report[i_index];
388 }
389 usbd_ept_send(pudev, USBD_CUSTOM_HID_IN_EPT, pcshid->g_txhid_buff, len);
390 break;
391 default:
392 break;
393 }
394
395}
396
custom_hid_class.h
usb custom hid header file
custom_hid_desc.h
usb custom hid descriptor header file
USB_EPT_AUTO_MALLOC_BUFFER
#define USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer
Definition: project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h:61
EPT1_RX_ADDR
#define EPT1_RX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:76
EPT1_TX_ADDR
#define EPT1_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:75
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
HID_REPORT_ID_2
#define HID_REPORT_ID_2
Definition: audio_hid_desc.h:221
HID_REPORT_ID_4
#define HID_REPORT_ID_4
Definition: audio_hid_desc.h:223
HID_REPORT_ID_6
#define HID_REPORT_ID_6
Definition: audio_hid_desc.h:225
HID_REPORT_ID_3
#define HID_REPORT_ID_3
Definition: audio_hid_desc.h:222
USBD_CUSTOM_IN_MAXPACKET_SIZE
#define USBD_CUSTOM_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: custom_hid_class.h:57
USBD_CUSTOM_HID_IN_EPT
#define USBD_CUSTOM_HID_IN_EPT
usb custom hid use endpoint define
Definition: custom_hid_class.h:51
USBD_CUSTOM_OUT_MAXPACKET_SIZE
#define USBD_CUSTOM_OUT_MAXPACKET_SIZE
Definition: custom_hid_class.h:58
USBD_CUSTOM_HID_OUT_EPT
#define USBD_CUSTOM_HID_OUT_EPT
Definition: custom_hid_class.h:52
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: custom_hid_class.c:281
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: custom_hid_class.c:241
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: custom_hid_class.c:102
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: custom_hid_class.c:122
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: custom_hid_class.c:204
custom_hid_class_send_report
usb_sts_type custom_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: custom_hid_class.c:328
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: custom_hid_class.c:218
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: custom_hid_class.c:296
usb_hid_buf_process
static void usb_hid_buf_process(void *udev, uint8_t *report, uint16_t len)
usb device class report function
Definition: custom_hid_class.c:346
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: custom_hid_class.c:258
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: custom_hid_class.c:74
custom_hid_class_handler
usbd_class_handler custom_hid_class_handler
Definition: custom_hid_class.c:55
custom_hid_struct
custom_hid_type custom_hid_struct
Definition: custom_hid_class.c:52
USBD_CUSHID_SIZ_REPORT_DESC
#define USBD_CUSHID_SIZ_REPORT_DESC
Definition: custom_hid_desc.h:64
g_custom_hid_usb_desc
uint8_t g_custom_hid_usb_desc[9]
usb hid descriptor
Definition: custom_hid_desc.c:265
g_usbd_custom_hid_report
uint8_t g_usbd_custom_hid_report[126]
usb hid report descriptor
Definition: custom_hid_desc.c:167
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
HID_REQ_GET_REPORT
#define HID_REQ_GET_REPORT
Definition: usb_std.h:233
HID_DESCRIPTOR_TYPE
#define HID_DESCRIPTOR_TYPE
Definition: usb_std.h:234
HID_REQ_GET_PROTOCOL
#define HID_REQ_GET_PROTOCOL
Definition: usb_std.h:229
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
HID_REQ_SET_PROTOCOL
#define HID_REQ_SET_PROTOCOL
usb hid class request code define
Definition: usb_std.h:228
HID_REPORT_DESC
#define HID_REPORT_DESC
Definition: usb_std.h:235
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
HID_REQ_SET_IDLE
#define HID_REQ_SET_IDLE
Definition: usb_std.h:230
HID_REQ_GET_IDLE
#define HID_REQ_GET_IDLE
Definition: usb_std.h:231
HID_REQ_SET_REPORT
#define HID_REQ_SET_REPORT
Definition: usb_std.h:232
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
custom_hid_type
Definition: custom_hid_class.h:69
custom_hid_type::g_txhid_buff
uint8_t g_txhid_buff[0x40]
Definition: custom_hid_class.h:71
custom_hid_type::alt_setting
uint32_t alt_setting
Definition: custom_hid_class.h:75
custom_hid_type::hid_set_report
uint8_t hid_set_report[64]
Definition: custom_hid_class.h:77
custom_hid_type::g_rxhid_buff
uint8_t g_rxhid_buff[0x40]
Definition: custom_hid_class.h:70
custom_hid_type::hid_set_idle
uint32_t hid_set_idle
Definition: custom_hid_class.h:74
custom_hid_type::hid_protocol
uint32_t hid_protocol
Definition: custom_hid_class.h:73
custom_hid_type::hid_state
uint8_t hid_state
Definition: custom_hid_class.h:79
custom_hid_type::hid_get_report
uint8_t hid_get_report[64]
Definition: custom_hid_class.h:78
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: custom_hid_class.h Source File

  • middlewares
  • usbd_class
  • custom_hid
custom_hid_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CUSTOM_HID_CLASS_H
27#define __CUSTOM_HID_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
51#define USBD_CUSTOM_HID_IN_EPT 0x81
52#define USBD_CUSTOM_HID_OUT_EPT 0x01
53
57#define USBD_CUSTOM_IN_MAXPACKET_SIZE 0x40
58#define USBD_CUSTOM_OUT_MAXPACKET_SIZE 0x40
59
68typedef struct
69{
70 uint8_t g_rxhid_buff[USBD_CUSTOM_OUT_MAXPACKET_SIZE];
71 uint8_t g_txhid_buff[USBD_CUSTOM_IN_MAXPACKET_SIZE];
72
73 uint32_t hid_protocol;
74 uint32_t hid_set_idle;
75 uint32_t alt_setting;
76
77 uint8_t hid_set_report[64];
78 uint8_t hid_get_report[64];
79 uint8_t hid_state;
80}custom_hid_type;
81
89extern usbd_class_handler custom_hid_class_handler;
90 usb_sts_type custom_hid_class_send_report(void *udev, uint8_t *report, uint16_t len);
102#ifdef __cplusplus
103}
104#endif
105
106#endif
USBD_CUSTOM_IN_MAXPACKET_SIZE
#define USBD_CUSTOM_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: custom_hid_class.h:57
USBD_CUSTOM_OUT_MAXPACKET_SIZE
#define USBD_CUSTOM_OUT_MAXPACKET_SIZE
Definition: custom_hid_class.h:58
custom_hid_class_send_report
usb_sts_type custom_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: custom_hid_class.c:328
custom_hid_class_handler
usbd_class_handler custom_hid_class_handler
Definition: custom_hid_class.c:55
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
custom_hid_type
Definition: custom_hid_class.h:69
custom_hid_type::alt_setting
uint32_t alt_setting
Definition: custom_hid_class.h:75
custom_hid_type::hid_set_idle
uint32_t hid_set_idle
Definition: custom_hid_class.h:74
custom_hid_type::hid_protocol
uint32_t hid_protocol
Definition: custom_hid_class.h:73
custom_hid_type::hid_state
uint8_t hid_state
Definition: custom_hid_class.h:79
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: custom_hid_desc.c Source File

  • middlewares
  • usbd_class
  • custom_hid
custom_hid_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "custom_hid_desc.h"
28
41static usbd_desc_t *get_device_descriptor(void);
42static usbd_desc_t *get_device_qualifier(void);
43static usbd_desc_t *get_device_configuration(void);
44static usbd_desc_t *get_device_other_speed(void);
45static usbd_desc_t *get_device_lang_id(void);
46static usbd_desc_t *get_device_manufacturer_string(void);
47static usbd_desc_t *get_device_product_string(void);
48static usbd_desc_t *get_device_serial_string(void);
49static usbd_desc_t *get_device_interface_string(void);
50static usbd_desc_t *get_device_config_string(void);
51
52static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
53static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
54static void get_serial_num(void);
55#if defined ( __ICCARM__ ) /* iar compiler */
56 #pragma data_alignment=4
57#endif
58ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
59
63 usbd_desc_handler custom_hid_desc_handler =
64{
65 get_device_descriptor,
66 get_device_qualifier,
67 get_device_configuration,
68 get_device_other_speed,
69 get_device_lang_id,
70 get_device_manufacturer_string,
71 get_device_product_string,
72 get_device_serial_string,
73 get_device_interface_string,
74 get_device_config_string,
75};
76
80#if defined ( __ICCARM__ ) /* iar compiler */
81 #pragma data_alignment=4
82#endif
83ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
84{
85 USB_DEVICE_DESC_LEN, /* bLength */
86 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
87 0x00, /* bcdUSB */
88 0x02,
89 0x00, /* bDeviceClass */
90 0x00, /* bDeviceSubClass */
91 0x00, /* bDeviceProtocol */
92 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
93 LBYTE(USBD_CUSHID_VENDOR_ID), /* idVendor */
94 HBYTE(USBD_CUSHID_VENDOR_ID), /* idVendor */
95 LBYTE(USBD_CUSHID_PRODUCT_ID), /* idProduct */
96 HBYTE(USBD_CUSHID_PRODUCT_ID), /* idProduct */
97 0x00, /* bcdDevice rel. 2.00 */
98 0x02,
99 USB_MFC_STRING, /* Index of manufacturer string */
100 USB_PRODUCT_STRING, /* Index of product string */
101 USB_SERIAL_STRING, /* Index of serial number string */
102 1 /* bNumConfigurations */
103};
104
108#if defined ( __ICCARM__ ) /* iar compiler */
109 #pragma data_alignment=4
110#endif
111ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_CUSHID_CONFIG_DESC_SIZE] ALIGNED_TAIL =
112{
113 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
114 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
115 LBYTE(USBD_CUSHID_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
116 HBYTE(USBD_CUSHID_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
117 0x01, /* bNumInterfaces: 1 interface */
118 0x01, /* bConfigurationValue: configuration value */
119 0x00, /* iConfiguration: index of string descriptor describing
120 the configuration */
121 0xC0, /* bmAttributes: self powered */
122 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
123
124 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
125 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
126 0x00, /* bInterfaceNumber: number of interface */
127 0x00, /* bAlternateSetting: alternate set */
128 0x02, /* bNumEndpoints: number of endpoints */
129 USB_CLASS_CODE_HID, /* bInterfaceClass: class code hid */
130 0x00, /* bInterfaceSubClass: subclass code */
131 0x00, /* bInterfaceProtocol: protocol code */
132 0x00, /* iInterface: index of string descriptor */
133
134 0x09, /* bLength: size of HID descriptor in bytes */
135 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
136 LBYTE(CUSHID_BCD_NUM),
137 HBYTE(CUSHID_BCD_NUM), /* bcdHID: HID class specification release number */
138 0x00, /* bCountryCode: hardware target conutry */
139 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
140 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
141 LBYTE(sizeof(g_usbd_custom_hid_report)),
142 HBYTE(sizeof(g_usbd_custom_hid_report)), /* wDescriptorLength: total length of reprot descriptor */
143
144 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
145 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
146 USBD_CUSTOM_HID_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
147 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
148 LBYTE(USBD_CUSTOM_IN_MAXPACKET_SIZE),
149 HBYTE(USBD_CUSTOM_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
150 CUSHID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
151
152 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
153 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
154 USBD_CUSTOM_HID_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
155 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
156 LBYTE(USBD_CUSTOM_OUT_MAXPACKET_SIZE),
157 HBYTE(USBD_CUSTOM_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
158 CUSHID_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
159};
160
164#if defined ( __ICCARM__ ) /* iar compiler */
165 #pragma data_alignment=4
166#endif
167ALIGNED_HEAD uint8_t g_usbd_custom_hid_report[USBD_CUSHID_SIZ_REPORT_DESC] ALIGNED_TAIL =
168{
169 0x06, 0xFF, 0x00, /* USAGE_PAGE(Vendor Page:0xFF00) */
170 0x09, 0x01, /* USAGE (Demo Kit) */
171 0xa1, 0x01, /* COLLECTION (Application) */
172 /* 7 */
173
174 /* Led 2 */
175 0x85, HID_REPORT_ID_2, /* REPORT_ID 2 */
176 0x09, 0x02, /* USAGE (LED 2) */
177 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
178 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
179 0x75, 0x08, /* REPORT_SIZE (8) */
180 0x95, 0x3F, /* REPORT_COUNT (1) */
181 0xB1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
182
183 0x85, 0x02, /* REPORT_ID (2) */
184 0x09, 0x02, /* USAGE (LED 2) */
185 0x91, 0x82, /* OUTPUT (Data,Var,Abs,Vol) */
186 /* 27 */
187
188 /* Led 3 */
189 0x85, HID_REPORT_ID_3, /* REPORT_ID (3) */
190 0x09, 0x03, /* USAGE (LED 3) */
191 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
192 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
193 0x75, 0x08, /* REPORT_SIZE (8) */
194 0x95, 0x3F, /* REPORT_COUNT (1) */
195 0xB1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
196
197 0x85, 0x03, /* REPORT_ID (3) */
198 0x09, 0x03, /* USAGE (LED 3) */
199 0x91, 0x82, /* OUTPUT (Data,Var,Abs,Vol) */
200 /* 47 */
201
202 /* Led 4 */
203 0x85, HID_REPORT_ID_4, /* REPORT_ID 4) */
204 0x09, 0x04, /* USAGE (LED 4) */
205 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
206 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
207 0x75, 0x08, /* REPORT_SIZE (8) */
208 0x95, 0x3F, /* REPORT_COUNT (1) */
209 0xB1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
210
211 0x85, 0x04, /* REPORT_ID (4) */
212 0x09, 0x04, /* USAGE (LED 4) */
213 0x91, 0x82, /* OUTPUT (Data,Var,Abs,Vol) */
214 /* 67 */
215
216 /* key Push Button */
217 0x85, HID_REPORT_ID_5, /* REPORT_ID (5) */
218 0x09, 0x05, /* USAGE (Push Button) */
219 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
220 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
221 0x75, 0x01, /* REPORT_SIZE (1) */
222 0x81, 0x82, /* INPUT (Data,Var,Abs,Vol) */
223
224 0x09, 0x05, /* USAGE (Push Button) */
225 0x75, 0x01, /* REPORT_SIZE (1) */
226 0xb1, 0x82, /* FEATURE (Data,Var,Abs,Vol) */
227
228 0x75, 0x07, /* REPORT_SIZE (7) */
229 0x81, 0x83, /* INPUT (Cnst,Var,Abs,Vol) */
230 0x85, 0x05, /* REPORT_ID (5) */
231
232 0x75, 0x07, /* REPORT_SIZE (7) */
233 0xb1, 0x83, /* FEATURE (Cnst,Var,Abs,Vol) */
234 /* 95 */
235
236 /* Data OUT */
237 0x85, HID_REPORT_ID_6, /* REPORT_ID (0xF0) */
238 0x09, 0x06, /* USAGE */
239 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
240 0x26, 0x00,0xff, /* LOGICAL_MAXIMUM (255) */
241 0x75, 0x08, /* REPORT_SIZE (8) */
242 0x95, 0x3F, /* REPORT_COUNT (64) */
243 0x91, 0x02, /* OUTPUT(Data,Var,Abs,Vol) */
244 /* 110 */
245
246 /* Data IN */
247 0x85, HID_REPORT_ID_6, /* REPORT_ID (0xF0) */
248 0x09, 0x07, /* USAGE */
249 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
250 0x26, 0x00,0xff, /* LOGICAL_MAXIMUM (255) */
251 0x75, 0x08, /* REPORT_SIZE (8) */
252 0x95, 0x3F, /* REPORT_COUNT (64) */
253 0x81, 0x82, /* INPUT(Data,Var,Abs,Vol) */
254
255 /* 125 */
256 0xc0 /* END_COLLECTION */
257};
258
262#if defined ( __ICCARM__ ) /* iar compiler */
263 #pragma data_alignment=4
264#endif
265ALIGNED_HEAD uint8_t g_custom_hid_usb_desc[9] ALIGNED_TAIL =
266{
267 0x09, /* bLength: size of HID descriptor in bytes */
268 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
269 LBYTE(CUSHID_BCD_NUM),
270 HBYTE(CUSHID_BCD_NUM), /* bcdHID: HID class specification release number */
271 0x00, /* bCountryCode: hardware target conutry */
272 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
273 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
274 LBYTE(sizeof(g_usbd_custom_hid_report)),
275 HBYTE(sizeof(g_usbd_custom_hid_report)), /* wDescriptorLength: total length of reprot descriptor */
276};
277
278
282#if defined ( __ICCARM__ ) /* iar compiler */
283 #pragma data_alignment=4
284#endif
285ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_CUSHID_SIZ_STRING_LANGID] ALIGNED_TAIL =
286{
287 USBD_CUSHID_SIZ_STRING_LANGID,
288 USB_DESCIPTOR_TYPE_STRING,
289 0x09,
290 0x04,
291};
292
296#if defined ( __ICCARM__ ) /* iar compiler */
297 #pragma data_alignment=4
298#endif
299ALIGNED_HEAD static uint8_t g_string_serial[USBD_CUSHID_SIZ_STRING_SERIAL] ALIGNED_TAIL =
300{
301 USBD_CUSHID_SIZ_STRING_SERIAL,
302 USB_DESCIPTOR_TYPE_STRING,
303};
304
305
306/* device descriptor */
307static usbd_desc_t device_descriptor =
308{
309 USB_DEVICE_DESC_LEN,
310 g_usbd_descriptor
311};
312
313/* config descriptor */
314static usbd_desc_t config_descriptor =
315{
316 USBD_CUSHID_CONFIG_DESC_SIZE,
317 g_usbd_configuration
318};
319
320/* langid descriptor */
321static usbd_desc_t langid_descriptor =
322{
323 USBD_CUSHID_SIZ_STRING_LANGID,
324 g_string_lang_id
325};
326
327/* serial descriptor */
328static usbd_desc_t serial_descriptor =
329{
330 USBD_CUSHID_SIZ_STRING_SERIAL,
331 g_string_serial
332};
333
334static usbd_desc_t vp_desc;
335
342static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
343{
344 uint16_t str_len = 0, id_pos = 2;
345 uint8_t *tmp_str = string;
346
347 while(*tmp_str != '\0')
348 {
349 str_len ++;
350 unicode_buf[id_pos ++] = *tmp_str ++;
351 unicode_buf[id_pos ++] = 0x00;
352 }
353
354 str_len = str_len * 2 + 2;
355 unicode_buf[0] = str_len;
356 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
357
358 return str_len;
359}
360
368static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
369{
370 uint8_t idx = 0;
371
372 for( idx = 0 ; idx < len ; idx ++)
373 {
374 if( ((value >> 28)) < 0xA )
375 {
376 pbuf[ 2 * idx] = (value >> 28) + '0';
377 }
378 else
379 {
380 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
381 }
382
383 value = value << 4;
384
385 pbuf[2 * idx + 1] = 0;
386 }
387}
388
394static void get_serial_num(void)
395{
396 uint32_t serial0, serial1, serial2;
397
398 serial0 = *(uint32_t*)MCU_ID1;
399 serial1 = *(uint32_t*)MCU_ID2;
400 serial2 = *(uint32_t*)MCU_ID3;
401
402 serial0 += serial2;
403
404 if (serial0 != 0)
405 {
406 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
407 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
408 }
409}
410
416static usbd_desc_t *get_device_descriptor(void)
417{
418 return &device_descriptor;
419}
420
426static usbd_desc_t * get_device_qualifier(void)
427{
428 return NULL;
429}
430
436static usbd_desc_t *get_device_configuration(void)
437{
438 return &config_descriptor;
439}
440
446static usbd_desc_t *get_device_other_speed(void)
447{
448 return NULL;
449}
450
456static usbd_desc_t *get_device_lang_id(void)
457{
458 return &langid_descriptor;
459}
460
461
467static usbd_desc_t *get_device_manufacturer_string(void)
468{
469 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CUSHID_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
470 vp_desc.descriptor = g_usbd_desc_buffer;
471 return &vp_desc;
472}
473
479static usbd_desc_t *get_device_product_string(void)
480{
481 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CUSHID_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
482 vp_desc.descriptor = g_usbd_desc_buffer;
483 return &vp_desc;
484}
485
491static usbd_desc_t *get_device_serial_string(void)
492{
493 get_serial_num();
494 return &serial_descriptor;
495}
496
502static usbd_desc_t *get_device_interface_string(void)
503{
504 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CUSHID_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
505 vp_desc.descriptor = g_usbd_desc_buffer;
506 return &vp_desc;
507}
508
514static usbd_desc_t *get_device_config_string(void)
515{
516 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_CUSHID_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
517 vp_desc.descriptor = g_usbd_desc_buffer;
518 return &vp_desc;
519}
520
custom_hid_desc.h
usb custom hid descriptor header file
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
HID_REPORT_ID_2
#define HID_REPORT_ID_2
Definition: audio_hid_desc.h:221
HID_REPORT_ID_4
#define HID_REPORT_ID_4
Definition: audio_hid_desc.h:223
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
HID_REPORT_ID_6
#define HID_REPORT_ID_6
Definition: audio_hid_desc.h:225
HID_REPORT_ID_3
#define HID_REPORT_ID_3
Definition: audio_hid_desc.h:222
HID_REPORT_ID_5
#define HID_REPORT_ID_5
Definition: audio_hid_desc.h:224
USBD_CUSTOM_IN_MAXPACKET_SIZE
#define USBD_CUSTOM_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: custom_hid_class.h:57
USBD_CUSTOM_HID_IN_EPT
#define USBD_CUSTOM_HID_IN_EPT
usb custom hid use endpoint define
Definition: custom_hid_class.h:51
USBD_CUSTOM_OUT_MAXPACKET_SIZE
#define USBD_CUSTOM_OUT_MAXPACKET_SIZE
Definition: custom_hid_class.h:58
USBD_CUSTOM_HID_OUT_EPT
#define USBD_CUSTOM_HID_OUT_EPT
Definition: custom_hid_class.h:52
USBD_CUSHID_SIZ_STRING_SERIAL
#define USBD_CUSHID_SIZ_STRING_SERIAL
Definition: custom_hid_desc.h:66
USBD_CUSHID_VENDOR_ID
#define USBD_CUSHID_VENDOR_ID
usb vendor id and product id define
Definition: custom_hid_desc.h:57
USBD_CUSHID_DESC_CONFIGURATION_STRING
#define USBD_CUSHID_DESC_CONFIGURATION_STRING
Definition: custom_hid_desc.h:73
USBD_CUSHID_SIZ_REPORT_DESC
#define USBD_CUSHID_SIZ_REPORT_DESC
Definition: custom_hid_desc.h:64
CUSHID_BINTERVAL_TIME
#define CUSHID_BINTERVAL_TIME
Definition: custom_hid_desc.h:76
USBD_CUSHID_DESC_MANUFACTURER_STRING
#define USBD_CUSHID_DESC_MANUFACTURER_STRING
usb string define(vendor, product configuration, interface)
Definition: custom_hid_desc.h:71
USBD_CUSHID_CONFIG_DESC_SIZE
#define USBD_CUSHID_CONFIG_DESC_SIZE
usb descriptor size define
Definition: custom_hid_desc.h:63
USBD_CUSHID_DESC_INTERFACE_STRING
#define USBD_CUSHID_DESC_INTERFACE_STRING
Definition: custom_hid_desc.h:74
USBD_CUSHID_PRODUCT_ID
#define USBD_CUSHID_PRODUCT_ID
Definition: custom_hid_desc.h:58
USBD_CUSHID_SIZ_STRING_LANGID
#define USBD_CUSHID_SIZ_STRING_LANGID
Definition: custom_hid_desc.h:65
USBD_CUSHID_DESC_PRODUCT_STRING
#define USBD_CUSHID_DESC_PRODUCT_STRING
Definition: custom_hid_desc.h:72
CUSHID_BCD_NUM
#define CUSHID_BCD_NUM
usb bcd number define
Definition: custom_hid_desc.h:52
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: custom_hid_desc.c:328
device_descriptor
static usbd_desc_t device_descriptor
Definition: custom_hid_desc.c:307
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: custom_hid_desc.c:436
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: custom_hid_desc.c:321
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: custom_hid_desc.c:416
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: custom_hid_desc.c:467
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: custom_hid_desc.c:426
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: custom_hid_desc.c:502
vp_desc
static usbd_desc_t vp_desc
Definition: custom_hid_desc.c:334
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: custom_hid_desc.c:446
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: custom_hid_desc.c:58
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: custom_hid_desc.c:479
custom_hid_desc_handler
usbd_desc_handler custom_hid_desc_handler
custom hid device descriptor handler structure
Definition: custom_hid_desc.c:63
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: custom_hid_desc.c:514
g_custom_hid_usb_desc
uint8_t g_custom_hid_usb_desc[9]
usb hid descriptor
Definition: custom_hid_desc.c:265
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: custom_hid_desc.c:342
g_usbd_custom_hid_report
uint8_t g_usbd_custom_hid_report[126]
usb hid report descriptor
Definition: custom_hid_desc.c:167
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: custom_hid_desc.c:456
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: custom_hid_desc.c:394
config_descriptor
static usbd_desc_t config_descriptor
Definition: custom_hid_desc.c:314
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: custom_hid_desc.c:491
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: custom_hid_desc.c:368
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_CLASS_CODE_HID
#define USB_CLASS_CODE_HID
Definition: usb_std.h:161
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: custom_hid_desc.h Source File

  • middlewares
  • usbd_class
  • custom_hid
custom_hid_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __CUSTOM_HID_DESC_H
27#define __CUSTOM_HID_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "custom_hid_class.h"
34#include "usbd_core.h"
35
52#define CUSHID_BCD_NUM 0x0110
53
57#define USBD_CUSHID_VENDOR_ID 0x2E3C
58#define USBD_CUSHID_PRODUCT_ID 0x5745
59
63#define USBD_CUSHID_CONFIG_DESC_SIZE 41
64#define USBD_CUSHID_SIZ_REPORT_DESC 126
65#define USBD_CUSHID_SIZ_STRING_LANGID 4
66#define USBD_CUSHID_SIZ_STRING_SERIAL 0x1A
67
71#define USBD_CUSHID_DESC_MANUFACTURER_STRING "Artery"
72#define USBD_CUSHID_DESC_PRODUCT_STRING "Custom HID"
73#define USBD_CUSHID_DESC_CONFIGURATION_STRING "Custom HID Config"
74#define USBD_CUSHID_DESC_INTERFACE_STRING "Custom HID Interface"
75
76#define CUSHID_BINTERVAL_TIME 0x0A
77
84#define HID_REPORT_ID_1 0x01
85#define HID_REPORT_ID_2 0x02
86#define HID_REPORT_ID_3 0x03
87#define HID_REPORT_ID_4 0x04
88#define HID_REPORT_ID_5 0x05
89#define HID_REPORT_ID_6 0xF0
90
94#define MCU_ID1 (0x1FFFF7E8)
95#define MCU_ID2 (0x1FFFF7EC)
96#define MCU_ID3 (0x1FFFF7F0)
97
101extern uint8_t g_usbd_custom_hid_report[USBD_CUSHID_SIZ_REPORT_DESC];
102extern uint8_t g_custom_hid_usb_desc[9];
103extern usbd_desc_handler custom_hid_desc_handler;
104
112#ifdef __cplusplus
113}
114#endif
115
116#endif
117
118
custom_hid_class.h
usb custom hid header file
USBD_CUSHID_SIZ_REPORT_DESC
#define USBD_CUSHID_SIZ_REPORT_DESC
Definition: custom_hid_desc.h:64
g_custom_hid_usb_desc
uint8_t g_custom_hid_usb_desc[9]
usb hid descriptor
Definition: custom_hid_desc.c:265
g_usbd_custom_hid_report
uint8_t g_usbd_custom_hid_report[126]
usb hid report descriptor
Definition: custom_hid_desc.c:167
custom_hid_desc_handler
usbd_desc_handler custom_hid_desc_handler
custom hid device descriptor handler structure
Definition: custom_hid_desc.c:63
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • software_trigger_repeat
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c [code]
main program


AT32F403 Firmwary Library: eeprom Directory Reference

  • i2c
  • eeprom
eeprom Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • combine_mode_ordinary_simult
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • dac
  • one_dac_dma_escalator
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c [code]
main program


AT32F403 Firmwary Library: complementary_signals Directory Reference

  • tmr
  • complementary_signals
complementary_signals Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • flash
  • flash_write_read
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/flash/flash_write_read/src/flash.c [code]
flash program
file | project/at_start_f403/examples/flash/flash_write_read/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • flash
  • run_in_spim
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/flash/run_in_spim/src/main.c [code]
main program
file | run_in_spim.c [code]
run in spim program


AT32F403 Firmwary Library: inc Directory Reference

  • can
  • loopback_mode
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/can/loopback_mode/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: oc_toggle_tmr9 Directory Reference

  • tmr
  • oc_toggle_tmr9
oc_toggle_tmr9 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • synchronous
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/synchronous/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
src Directory Reference

Files

file | utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c [code]
main interrupt service routines.
file | bootloader/src/hid_iap_user.c [code]
usb hid iap user file
file | utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • 6_steps
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/6_steps/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: halfduplex_interrupt Directory Reference

  • i2s
  • halfduplex_interrupt
halfduplex_interrupt Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • i2c
  • communication_poll
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • encoder_tmr2
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • pwm_output_simulate
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • dac
  • two_dac_trianglewave
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • keyboard
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/keyboard/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • dma
  • flash_to_sram
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: cmsis_dsp Directory Reference

  • cortex_m4
  • cmsis_dsp
cmsis_dsp Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • crm
  • sysclk_switch
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
inc Directory Reference

Files

file | utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | app_led3_toggle/inc/hid_iap_user.h [code]
usb config header file
file | utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • dma_burst
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/dma_burst/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • 7_pwm_output
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/7_pwm_output/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • spi
  • crc_transfer_polling
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: exint Directory Reference

  • exint
exint Directory Reference

Directories

directory | exint_config
directory | exint_software_trigger


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • irda
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/irda/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/irda/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/irda/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • sram
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/sram/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/sram/src/main.c [code]
main program
file | xmc_sram.c [code]


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • mouse
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/mouse/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: inc Directory Reference

  • cortex_m4
  • systick_interrupt
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • cortex_m4
  • fpu
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | julia_fpu.h [code]
julia_fpu header file


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • one_cycle
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/one_cycle/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • half_duplex
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/half_duplex/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • rtc
  • lick_calibration
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/rtc/lick_calibration/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • triple_adc_synchro_trigger
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c [code]
main program


AT32F403 Firmwary Library: double_mode_dma_sinewave Directory Reference

  • dac
  • double_mode_dma_sinewave
double_mode_dma_sinewave Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • pwm_input
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/pwm_input/src/main.c [code]
main program


AT32F403 Firmwary Library: wdt_standby Directory Reference

  • wdt
  • wdt_standby
wdt_standby Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: hang_mode Directory Reference

  • tmr
  • hang_mode
hang_mode Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • timer_base
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/timer_base/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • rtc
  • calendar
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/rtc/calendar/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | rtc.h [code]
this file provides template for calendar api.


AT32F403 Firmwary Library: inc Directory Reference

  • rtc
  • lick_calibration
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: i2s Directory Reference

  • i2s
i2s Directory Reference

Directories

directory | halfduplex_dma
directory | halfduplex_interrupt
directory | spii2s_switch_halfduplex_polling


AT32F403 Firmwary Library: pwm_input Directory Reference

  • tmr
  • pwm_input
pwm_input Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • custom_hid
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: tmr_trigger_automatic_preempted Directory Reference

  • adc
  • tmr_trigger_automatic_preempted
tmr_trigger_automatic_preempted Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: nor Directory Reference

  • xmc
  • nor
nor Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • dac
  • double_mode_dma_squarewave
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c [code]
main program


AT32F403 Firmwary Library: dma_burst Directory Reference

  • tmr
  • dma_burst
dma_burst Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: pwm_input_dma Directory Reference

  • tmr
  • pwm_input_dma
pwm_input_dma Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • dac
  • one_dac_noisewave
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • exint_trigger_partitioned
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • interrupt
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/interrupt/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • sdio
  • sdio_fatfs
  • inc
inc Directory Reference

Files

file | sdio_fatfs/inc/at32_sdio.h [code]
this file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library.
file | project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | ffconf.h [code]


AT32F403 Firmwary Library: sdio Directory Reference

  • sdio
sdio Directory Reference

Directories

directory | sd_mmc_card
directory | sdio_fatfs


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • parallel_synchro
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/parallel_synchro/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • bpr
  • tamper
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/bpr/tamper/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: at32f403_usart_iap_demo Directory Reference

  • utilities
  • at32f403_usart_iap_demo
at32f403_usart_iap_demo Directory Reference

Directories

directory source_code


AT32F403 Firmwary Library: audio Directory Reference

  • middlewares
  • usbd_class
  • audio
audio Directory Reference

Files

file | audio_class.c [code]
usb audio class type
file | audio_class.h [code]
usb audio class file
file | audio/audio_conf.h [code]
usb audio config
file | audio_desc.c [code]
usb audio device descriptor
file | audio_desc.h [code]
usb audio descriptor header file


AT32F403 Firmwary Library: src Directory Reference

  • exint
  • exint_config
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/exint/exint_config/src/main.c [code]
main program


AT32F403 Firmwary Library: halfduplex_transceiver_switch Directory Reference

  • spi
  • halfduplex_transceiver_switch
halfduplex_transceiver_switch Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • dac
  • one_dac_noisewave
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • i2s
  • halfduplex_interrupt
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • current_vref_value_check
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: transfer_by_dma_polling Directory Reference

  • usart
  • transfer_by_dma_polling
transfer_by_dma_polling Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • spi
  • w25q_flash
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/spi/w25q_flash/src/main.c [code]
main program
file | spi_flash.c [code]
spi_flash source code


AT32F403 Firmwary Library: src Directory Reference

  • crm
  • clock_failure_detection
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/crm/clock_failure_detection/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • polling
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/polling/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/polling/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • nand
  • nand
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/nand/nand/src/main.c [code]
main program
file | xmc_nand.c [code]
nand configuration


AT32F403 Firmwary Library: adc Directory Reference

  • adc
adc Directory Reference

Directories

directory | combine_mode_ordinary_simult
directory | current_vref_value_check
directory | exint_trigger_partitioned
directory | internal_temperature_sensor
directory | repeat_conversion_loop_transfer
directory | software_trigger_repeat
directory | tmr_trigger_automatic_preempted
directory | triple_adc_synchro_trigger
directory | voltage_monitoring


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • synchronous
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/synchronous/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
inc Directory Reference

Files

file | utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | app_led4_toggle/inc/hid_iap_user.h [code]
usb config header file
file | utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: receiver_mute Directory Reference

  • usart
  • receiver_mute
receiver_mute Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • dac
  • two_dac_trianglewave
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • vcp_loopback
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
src Directory Reference

Files

file | utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c [code]
main interrupt service routines.
file | app_led3_toggle/src/hid_iap_user.c [code]
usb hid iap user file
file | utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • oc_low
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/oc_low/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • gpio
  • io_toggle
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: double_mode_dma_squarewave Directory Reference

  • dac
  • double_mode_dma_squarewave
double_mode_dma_squarewave Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • libraries
  • drivers
  • src
src Directory Reference

Files

file | at32f403_adc.c [code]
contains all the functions for the adc firmware library
file | at32f403_bpr.c [code]
contains all the functions for the bpr firmware library
file | at32f403_can.c [code]
contains all the functions for the can firmware library
file | at32f403_crc.c [code]
contains all the functions for the crc firmware library
file | at32f403_crm.c [code]
contains all the functions for the crm firmware library
file | at32f403_dac.c [code]
contains all the functions for the dac firmware library
file | at32f403_debug.c [code]
contains all the functions for the debug firmware library
file | at32f403_dma.c [code]
contains all the functions for the dma firmware library
file | at32f403_exint.c [code]
contains all the functions for the exint firmware library
file | at32f403_flash.c [code]
contains all the functions for the flash firmware library
file | at32f403_gpio.c [code]
contains all the functions for the gpio firmware library
file | at32f403_i2c.c [code]
contains all the functions for the i2c firmware library
file | at32f403_misc.c [code]
contains all the functions for the misc firmware library
file | at32f403_pwc.c [code]
contains all the functions for the pwc firmware library
file | at32f403_rtc.c [code]
contains all the functions for the rtc firmware library
file | at32f403_sdio.c [code]
contains all the functions for the sdio firmware library
file | at32f403_spi.c [code]
contains all the functions for the spi firmware library
file | at32f403_tmr.c [code]
contains all the functions for the tmr firmware library
file | at32f403_usart.c [code]
contains all the functions for the usart firmware library
file | at32f403_usb.c [code]
contains the functions for the usb firmware library
file | at32f403_wdt.c [code]
contains all the functions for the wdt firmware library
file | at32f403_wwdt.c [code]
contains all the functions for the wwdt firmware library
file | at32f403_xmc.c [code]
contains all the functions for the xmc firmware library


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • oc_toggle_tmr3
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: only_receive_mode_polling Directory Reference

  • spi
  • only_receive_mode_polling
only_receive_mode_polling Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • flash
  • run_in_spim
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | run_in_spim.h [code]
run_in_spim header file


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
src Directory Reference

Files

file | utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c [code]
main interrupt service routines.
file | app_led4_toggle/src/iap.c [code]
iap program
file | utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c [code]
main program
file | app_led4_toggle/src/tmr.c [code]
tmr program
file | app_led4_toggle/src/usart.c [code]
usart program


AT32F403 Firmwary Library: communication_poll Directory Reference

  • i2c
  • communication_poll
communication_poll Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: virtual_msc_iap Directory Reference

  • usb_device
  • virtual_msc_iap
virtual_msc_iap Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: crc_transfer_polling Directory Reference

  • spi
  • crc_transfer_polling
crc_transfer_polling Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: flash_to_sram Directory Reference

  • dma
  • flash_to_sram
flash_to_sram Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: at32f403_freertos_demo Directory Reference

  • utilities
  • at32f403_freertos_demo
at32f403_freertos_demo Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: drivers Directory Reference

  • libraries
  • drivers
drivers Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: current_vref_value_check Directory Reference

  • adc
  • current_vref_value_check
current_vref_value_check Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: composite_vcp_msc Directory Reference

  • usb_device
  • composite_vcp_msc
composite_vcp_msc Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • internal_temperature_sensor
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
src Directory Reference

Files

file | utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c [code]
main interrupt service routines.
file | app_led4_toggle/src/hid_iap_user.c [code]
usb hid iap user file
file | utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c [code]
main program


AT32F403 Firmwary Library: wwdt Directory Reference

  • wwdt
wwdt Directory Reference

Directories

directory wwdt_reset


AT32F403 Firmwary Library: one_dac_noisewave Directory Reference

  • dac
  • one_dac_noisewave
one_dac_noisewave Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: msc Directory Reference

  • usb_device
  • msc
msc Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • voltage_monitoring
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • transfer_by_dma_polling
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • composite_vcp_msc
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | composite_vcp_msc/inc/msc_diskio.h [code]
usb mass storage disk interface header file
file | project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: sd_mmc_card Directory Reference

  • sdio
  • sd_mmc_card
sd_mmc_card Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: run_in_spim Directory Reference

  • flash
  • run_in_spim
run_in_spim Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: pwm_output_simulate Directory Reference

  • tmr
  • pwm_output_simulate
pwm_output_simulate Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: custom_hid Directory Reference

  • middlewares
  • usbd_class
  • custom_hid
custom_hid Directory Reference

Files

file | custom_hid_class.c [code]
usb custom hid class type
file | custom_hid_class.h [code]
usb custom hid header file
file | custom_hid_desc.c [code]
usb hid device descriptor
file | custom_hid_desc.h [code]
usb custom hid descriptor header file


AT32F403 Firmwary Library: lcd_touch_16bit Directory Reference

  • xmc
  • lcd_touch_16bit
lcd_touch_16bit Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • pwc
  • standby_wakeup_pin
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • pwm_input_dma
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c [code]
main program


AT32F403 Firmwary Library: pwm_output_tmr10 Directory Reference

  • tmr
  • pwm_output_tmr10
pwm_output_tmr10 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • i2c
  • communication_dma
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: cmsis Directory Reference

  • libraries
  • cmsis
cmsis Directory Reference

Directories

directory cm4


AT32F403 Firmwary Library: encoder_tmr2 Directory Reference

  • tmr
  • encoder_tmr2
encoder_tmr2 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • composite_vcp_msc
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c [code]
main program
file | composite_vcp_msc/src/msc_diskio.c [code]
usb mass storage disk function


AT32F403 Firmwary Library: internal_temperature_sensor Directory Reference

  • adc
  • internal_temperature_sensor
internal_temperature_sensor Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • flash
  • flash_write_read
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/flash/flash_write_read/inc/flash.h [code]
flash header file


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • 7_pwm_output
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: synchronous Directory Reference

  • usart
  • synchronous
synchronous Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: power_voltage_monitor Directory Reference

  • pwc
  • power_voltage_monitor
power_voltage_monitor Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: use_jtagpin_hardwarecs_dma Directory Reference

  • spi
  • use_jtagpin_hardwarecs_dma
use_jtagpin_hardwarecs_dma Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • spi
  • w25q_flash
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | spi_flash.h [code]
header file of spi_flash


AT32F403 Firmwary Library: bpr_data Directory Reference

  • bpr
  • bpr_data
bpr_data Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: oc_low Directory Reference

  • tmr
  • oc_low
oc_low Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: software_trigger_repeat Directory Reference

  • adc
  • software_trigger_repeat
software_trigger_repeat Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: 7_pwm_output Directory Reference

  • tmr
  • 7_pwm_output
7_pwm_output Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: spii2s_switch_halfduplex_polling Directory Reference

  • i2s
  • spii2s_switch_halfduplex_polling
spii2s_switch_halfduplex_polling Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • software_trigger_repeat
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • pwc
  • sleep_usart1
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: crc Directory Reference

  • crc
crc Directory Reference

Directories

directory calculation


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • pwm_output_tmr3
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c [code]
main program


AT32F403 Firmwary Library: usbd_class Directory Reference

  • middlewares
  • usbd_class
usbd_class Directory Reference

Directories

directory | audio
directory | audio_hid
directory | cdc
directory | composite_cdc_keyboard
directory | composite_cdc_msc
directory | custom_hid
directory | hid_iap
directory | keyboard
directory | mouse
directory | msc
directory | printer


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • nor
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/nor/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/nor/src/main.c [code]
main program
file | xmc_nor.c [code]


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_gen_random_number_demo
  • src
src Directory Reference

Files

file | utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_gen_random_number_demo/src/at32f403_int.c [code]
main interrupt service routines.
file | utilities/at32f403_gen_random_number_demo/src/main.c [code]
main program
file | random.c [code]
set of firmware functions to random function


AT32F403 Firmwary Library: src Directory Reference

  • cortex_m4
  • systick_interrupt
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c [code]
main program


AT32F403 Firmwary Library: sram Directory Reference

  • xmc
  • sram
sram Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • spi
  • fullduplex_polling
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/spi/fullduplex_polling/src/main.c [code]
main program


AT32F403 Firmwary Library: xmc Directory Reference

  • xmc
xmc Directory Reference

Directories

directory | lcd_8bit
directory | lcd_touch_16bit
directory | nand
directory | nor
directory | pc_card
directory | psram
directory | sram


AT32F403 Firmwary Library: sysclk_switch Directory Reference

  • crm
  • sysclk_switch
sysclk_switch Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: triple_adc_synchro_trigger Directory Reference

  • adc
  • triple_adc_synchro_trigger
triple_adc_synchro_trigger Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: w25q_flash Directory Reference

  • spi
  • w25q_flash
w25q_flash Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • i2s
  • halfduplex_dma
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c [code]
main program


AT32F403 Firmwary Library: vcp_loopback Directory Reference

  • usb_device
  • vcp_loopback
vcp_loopback Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • crm
  • clock_failure_detection
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • composite_vcp_keyboard
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: src Directory Reference

  • pwc
  • standby_rtc
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/pwc/standby_rtc/src/main.c [code]
main program


AT32F403 Firmwary Library: keyboard Directory Reference

  • middlewares
  • usbd_class
  • keyboard
keyboard Directory Reference

Files

file | keyboard_class.c [code]
usb hid keyboard class type
file | keyboard_class.h [code]
usb hid keyboard header file
file | keyboard_desc.c [code]
usb hid keyboard device descriptor
file | keyboard_desc.h [code]
usb keyboard descriptor header file


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • tmr_trigger_automatic_preempted
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c [code]
main program


AT32F403 Firmwary Library: middlewares Directory Reference

  • middlewares
middlewares Directory Reference

Directories

directory | i2c_application_library
directory | usbd_class
directory | usbd_drivers


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • voltage_monitoring
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/voltage_monitoring/src/main.c [code]
main program


AT32F403 Firmwary Library: operate_spim Directory Reference

  • flash
  • operate_spim
operate_spim Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: main_page Directory Reference

  • main_page
main_page Directory Reference

Files

file main_page.h [code]


AT32F403 Firmwary Library: cdc Directory Reference

  • middlewares
  • usbd_class
  • cdc
cdc Directory Reference

Files

file | cdc_class.c [code]
usb cdc class type
file | cdc_class.h [code]
usb cdc class file
file | cdc_desc.c [code]
usb cdc device descriptor
file | cdc_desc.h [code]
usb cdc descriptor header file


AT32F403 Firmwary Library: inc Directory Reference

  • pwc
  • power_voltage_monitor
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • i2c
  • eeprom
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/i2c/eeprom/src/main.c [code]
main program


AT32F403 Firmwary Library: 6_steps Directory Reference

  • tmr
  • 6_steps
6_steps Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • smartcard
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/smartcard/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | smartcard_config.h [code]
header file of clock program


AT32F403 Firmwary Library: bpr Directory Reference

  • bpr
bpr Directory Reference

Directories

directory | bpr_data
directory | tamper


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • tmr2_32bit
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • repeat_conversion_loop_transfer
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • hw_flow_control
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • crc
  • calculation
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/crc/calculation/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • pwc
  • power_voltage_monitor
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
inc Directory Reference

Files

file | utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h [code]
flash header file
file | bootloader/inc/iap.h [code]
iap header file
file | bootloader/inc/tmr.h [code]
tmr header file
file | bootloader/inc/usart.h [code]
usart header file


AT32F403 Firmwary Library: sleep_usart1 Directory Reference

  • pwc
  • sleep_usart1
sleep_usart1 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
inc Directory Reference

Files

file | utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | bootloader/inc/hid_iap_user.h [code]
usb config header file
file | utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • composite_audio_hid
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c [code]
main interrupt service routines.
file | composite_audio_hid/src/audio_codec.c [code]
audio codec function
file | project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • flash
  • fap_enable
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/flash/fap_enable/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • half_duplex
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/half_duplex/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • pwm_input_dma
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • oc_high
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_high/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • gpio
  • led_toggle
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • cascade_synchro
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: dma Directory Reference

  • tmr
  • dma
dma Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: gpio Directory Reference

  • gpio
gpio Directory Reference

Directories

directory | io_toggle
directory | led_toggle
directory | swjtag_remap


AT32F403 Firmwary Library: pc_card Directory Reference

  • xmc
  • pc_card
  • pc_card
pc_card Directory Reference

Files

file | cf.c [code]
xmc pc card program
file | cf.h [code]
header file for the cf configuration.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • pwm_input
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • oc_high
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/oc_high/src/main.c [code]
main program


AT32F403 Firmwary Library: rtc Directory Reference

  • rtc
rtc Directory Reference

Directories

directory | calendar
directory | lick_calibration


AT32F403 Firmwary Library: inc Directory Reference

  • bpr
  • bpr_data
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • dma
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/dma/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: flash Directory Reference

  • flash
flash Directory Reference

Directories

directory | fap_enable
directory | flash_write_read
directory | operate_spim
directory | run_in_spim


AT32F403 Firmwary Library: communication_mode Directory Reference

  • can
  • communication_mode
communication_mode Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • libraries
  • drivers
  • inc
inc Directory Reference

Files

file | at32f403_adc.h [code]
at32f403 adc header file
file | at32f403_bpr.h [code]
at32f403 bpr header file
file | at32f403_can.h [code]
at32f403 can header file
file | at32f403_crc.h [code]
at32f403 crc header file
file | at32f403_crm.h [code]
at32f403 crm header file
file | at32f403_dac.h [code]
at32f403 dac header file
file | at32f403_debug.h [code]
at32f403 debug header file
file | at32f403_def.h [code]
at32f403 macros header file
file | at32f403_dma.h [code]
at32f403 dma header file
file | at32f403_exint.h [code]
at32f403 exint header file
file | at32f403_flash.h [code]
at32f403 flash header file
file | at32f403_gpio.h [code]
at32f403 gpio header file
file | at32f403_i2c.h [code]
at32f403 i2c header file
file | at32f403_misc.h [code]
at32f403 misc header file
file | at32f403_pwc.h [code]
at32f403 pwc header file
file | at32f403_rtc.h [code]
at32f403 rtc header file
file | at32f403_sdio.h [code]
at32f403 sdio header file
file | at32f403_spi.h [code]
at32f403 spi header file
file | at32f403_tmr.h [code]
at32f403 tmr header file
file | at32f403_usart.h [code]
at32f403 usart header file
file | at32f403_usb.h [code]
at32f403 usb header file
file | at32f403_wdt.h [code]
at32f403 wdt header file
file | at32f403_wwdt.h [code]
at32f403 wwdt header file
file | at32f403_xmc.h [code]
at32f403 xmc header file


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • dma
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/dma/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/dma/src/main.c [code]
main program


AT32F403 Firmwary Library: tmr2_32bit Directory Reference

  • tmr
  • tmr2_32bit
tmr2_32bit Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • can
  • communication_mode
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/can/communication_mode/src/main.c [code]
main program


AT32F403 Firmwary Library: calendar Directory Reference

  • rtc
  • calendar
calendar Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: communication_dma Directory Reference

  • i2c
  • communication_dma
communication_dma Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • idle_detection
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/idle_detection/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • audio
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c [code]
main interrupt service routines.
file | audio/src/audio_codec.c [code]
audio codec function
file | project/at_start_f403/examples/usb_device/audio/src/main.c [code]
main program


AT32F403 Firmwary Library: i2c Directory Reference

  • i2c
i2c Directory Reference

Directories

directory | communication_dma
directory | communication_int
directory | communication_poll
directory | eeprom


AT32F403 Firmwary Library: voltage_monitoring Directory Reference

  • adc
  • voltage_monitoring
voltage_monitoring Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: usart Directory Reference

  • usart
usart Directory Reference

Directories

directory | half_duplex
directory | hw_flow_control
directory | idle_detection
directory | interrupt
directory | irda
directory | polling
directory | printf
directory | receiver_mute
directory | rs485
directory | smartcard
directory | synchronous
directory | transfer_by_dma_interrupt
directory | transfer_by_dma_polling


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • mouse
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/mouse/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • cortex_m4
  • fpu
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c [code]
main interrupt service routines.
file | julia_fpu.c [code]
julia_fpu source file
file | project/at_start_f403/examples/cortex_m4/fpu/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • cascade_synchro
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/cascade_synchro/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • interrupt
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/interrupt/src/main.c [code]
main program


AT32F403 Firmwary Library: wwdt_reset Directory Reference

  • wwdt
  • wwdt_reset
wwdt_reset Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: nand Directory Reference

  • xmc
  • nand
  • nand
nand Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • irda
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/irda/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/irda/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c [code]
main program


AT32F403 Firmwary Library: lick_calibration Directory Reference

  • rtc
  • lick_calibration
lick_calibration Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: parallel_synchro Directory Reference

  • tmr
  • parallel_synchro
parallel_synchro Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • templates
  • src
src Directory Reference

Files

file | project/at_start_f403/templates/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/templates/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/templates/src/main.c [code]
main program


AT32F403 Firmwary Library: halfduplex_dma Directory Reference

  • i2s
  • halfduplex_dma
halfduplex_dma Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: led_toggle Directory Reference

  • gpio
  • led_toggle
led_toggle Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: data_to_gpio Directory Reference

  • dma
  • data_to_gpio
data_to_gpio Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • spi
  • fullduplex_polling
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: device_support Directory Reference

  • libraries
  • cmsis
  • cm4
  • device_support
device_support Directory Reference

Files

file | at32f403.h [code]
at32f403 header file
file | system_at32f403.c [code]
contains all the functions for cmsis cortex-m4 system source file
file | system_at32f403.h [code]
cmsis cortex-m4 system header file.


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • audio
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/audio/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | audio/inc/audio_codec.h [code]
audio codec header file
file | project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: src Directory Reference

  • pwc
  • deepsleep_rtc
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • rtc
  • calendar
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/rtc/calendar/src/main.c [code]
main program
file | rtc.c [code]
this file provides template for calendar api.


AT32F403 Firmwary Library: utilities Directory Reference

  • utilities
utilities Directory Reference

Directories

directory | at32f403_freertos_demo
directory | at32f403_gen_random_number_demo
directory | at32f403_usart_iap_demo
directory | at32f403_usb_iap_demo


AT32F403 Firmwary Library: timer_base Directory Reference

  • tmr
  • timer_base
timer_base Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • gpio
  • swjtag_remap
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • msc
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/msc/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | msc/inc/msc_diskio.h [code]
usb mass storage disk interface header file
file | project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: inc Directory Reference

  • pwc
  • sleep_tmr2
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • msc
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/msc/src/main.c [code]
main program
file | msc/src/msc_diskio.c [code]
usb mass storage disk function


AT32F403 Firmwary Library: inc Directory Reference

  • dac
  • double_mode_dma_squarewave
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: oc_high Directory Reference

  • tmr
  • oc_high
oc_high Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • can
  • filter
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/can/filter/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/can/filter/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/can/filter/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • wdt
  • wdt_reset
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/wdt/wdt_reset/src/main.c [code]
main program


AT32F403 Firmwary Library: project Directory Reference

  • project
project Directory Reference

Directories

directory | at32f403_board
directory | at_start_f403


AT32F403 Firmwary Library: inc Directory Reference

  • pwc
  • deepsleep_rtc
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: msc Directory Reference

  • middlewares
  • usbd_class
  • msc
msc Directory Reference

Files

file | msc/msc_bot_scsi.c [code]
usb mass storage bulk-only transport and scsi command
file | msc_bot_scsi.h [code]
usb mass storage bulk-only transport and scsi command header file
file | msc_class.c [code]
usb msc class type
file | msc_class.h [code]
usb msc class file
file | msc_desc.c [code]
usb msc device descriptor
file | msc_desc.h [code]
usb msc descriptor header file


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • exint_trigger_partitioned
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • printer
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/printer/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • custom_hid
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/custom_hid/src/main.c [code]
main program


AT32F403 Firmwary Library: app_led4_toggle Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
app_led4_toggle Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • spi
  • halfduplex_transceiver_switch
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • hw_flow_control
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/hw_flow_control/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • triple_adc_synchro_trigger
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • dac
  • one_dac_dma_escalator
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • sdio
  • sdio_fatfs
  • src
src Directory Reference

Files

file | sdio_fatfs/src/at32_sdio.c [code]
this file provides a set of functions needed to manage the sdio/mmc card memory.
file | project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c [code]
main interrupt service routines.
file | diskio.c [code]
file | project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • pwm_output_simulate
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: composite_vcp_keyboard Directory Reference

  • usb_device
  • composite_vcp_keyboard
composite_vcp_keyboard Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: wdt_reset Directory Reference

  • wdt
  • wdt_reset
wdt_reset Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: usb_device Directory Reference

  • usb_device
usb_device Directory Reference

Directories

directory | audio
directory | composite_audio_hid
directory | composite_vcp_keyboard
directory | composite_vcp_msc
directory | custom_hid
directory | keyboard
directory | mouse
directory | msc
directory | printer
directory | vcp_loopback
directory | virtual_comport
directory | virtual_msc_iap


AT32F403 Firmwary Library: hid_iap Directory Reference

  • middlewares
  • usbd_class
  • hid_iap
hid_iap Directory Reference

Files

file | hid_iap_class.c [code]
usb hid iap class type
file | hid_iap_class.h [code]
usb hid iap header file
file | hid_iap_desc.c [code]
usb hid device descriptor
file | hid_iap_desc.h [code]
usb hid descriptor header file


AT32F403 Firmwary Library: inc Directory Reference

  • spi
  • halfduplex_interrupt
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: sleep_tmr2 Directory Reference

  • pwc
  • sleep_tmr2
sleep_tmr2 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: idle_detection Directory Reference

  • usart
  • idle_detection
idle_detection Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: cascade_synchro Directory Reference

  • tmr
  • cascade_synchro
cascade_synchro Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • rs485
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/rs485/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/rs485/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • transfer_by_dma_polling
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: tamper Directory Reference

  • bpr
  • tamper
tamper Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • middlewares
  • usbd_drivers
  • src
src Directory Reference

Files

file | usbd_core.c [code]
usb driver
file | usbd_int.c [code]
usb interrupt request
file | usbd_sdr.c [code]
usb standard device request


AT32F403 Firmwary Library: bootloader Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
bootloader Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • polling
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/polling/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/polling/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/polling/src/main.c [code]
main program


AT32F403 Firmwary Library: composite_cdc_msc Directory Reference

  • middlewares
  • usbd_class
  • composite_cdc_msc
composite_cdc_msc Directory Reference

Files

file | cdc_msc_class.c [code]
usb cdc class type
file | cdc_msc_class.h [code]
usb cdc class file
file | cdc_msc_desc.c [code]
usb cdc device descriptor
file | cdc_msc_desc.h [code]
usb cdc descriptor header file
file | composite_cdc_msc/msc_bot_scsi.c [code]
usb mass storage bulk-only transport and scsi command


AT32F403 Firmwary Library: src Directory Reference

  • bpr
  • bpr_data
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/bpr/bpr_data/src/main.c [code]
main program


AT32F403 Firmwary Library: systick_interrupt Directory Reference

  • cortex_m4
  • systick_interrupt
systick_interrupt Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
inc Directory Reference

Files

file | utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | app_led3_toggle/inc/iap.h [code]
iap header file
file | app_led3_toggle/inc/tmr.h [code]
tmr header file
file | app_led3_toggle/inc/usart.h [code]
usart header file


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • composite_audio_hid
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | composite_audio_hid/inc/audio_codec.h [code]
audio codec header file
file | project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: at_start_f403 Directory Reference

at_start_f403 Directory Reference

Directories

directory | examples
directory | templates


AT32F403 Firmwary Library: src Directory Reference

  • gpio
  • io_toggle
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/gpio/io_toggle/src/main.c [code]
main program


AT32F403 Firmwary Library: one_cycle Directory Reference

  • tmr
  • one_cycle
one_cycle Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • printf
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/printf/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/printf/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • smartcard
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/smartcard/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • receiver_mute
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/receiver_mute/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • hang_mode
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/hang_mode/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • pwc
  • sleep_usart1
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/pwc/sleep_usart1/src/main.c [code]
main program


AT32F403 Firmwary Library: bootloader Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
bootloader Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • tmr1_synchro
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • nor
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/nor/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | xmc_nor.h [code]


AT32F403 Firmwary Library: src Directory Reference

  • spi
  • halfduplex_transceiver_switch
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
inc Directory Reference

Files

file | utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | app_led4_toggle/inc/iap.h [code]
iap header file
file | app_led4_toggle/inc/tmr.h [code]
tmr header file
file | app_led4_toggle/inc/usart.h [code]
usart header file


AT32F403 Firmwary Library: smartcard Directory Reference

  • usart
  • smartcard
smartcard Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • wdt
  • wdt_reset
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • pwm_output_tmr10
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: clock_failure_detection Directory Reference

  • crm
  • clock_failure_detection
clock_failure_detection Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: communication_int Directory Reference

  • i2c
  • communication_int
communication_int Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: polling Directory Reference

  • usart
  • polling
polling Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: half_duplex Directory Reference

  • usart
  • half_duplex
half_duplex Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • one_cycle
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • transfer_by_dma_interrupt
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • encoder_tmr2
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • i2c
  • eeprom
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/i2c/eeprom/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • exint
  • exint_config
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/exint/exint_config/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: interrupt Directory Reference

  • usart
  • interrupt
interrupt Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • psram
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/psram/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/psram/src/main.c [code]
main program
file | xmc_psram.c [code]


AT32F403 Firmwary Library: app_led3_toggle Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
app_led3_toggle Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • rs485
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/rs485/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • debug
  • tmr1
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/debug/tmr1/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: examples Directory Reference

examples Directory Reference

Directories

directory | adc
directory | bpr
directory | can
directory | cortex_m4
directory | crc
directory | crm
directory | dac
directory | debug
directory | dma
directory | exint
directory | flash
directory | gpio
directory | i2c
directory | i2s
directory | pwc
directory | rtc
directory | sdio
directory | spi
directory | tmr
directory | usart
directory | usb_device
directory | wdt
directory | wwdt
directory | xmc


AT32F403 Firmwary Library: src Directory Reference

  • spi
  • crc_transfer_polling
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • printf
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/printf/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/printf/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/printf/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • middlewares
  • usbd_drivers
  • inc
inc Directory Reference

Files

file | usb_std.h [code]
usb standard header file
file | usbd_core.h [code]
usb device core header file
file | usbd_int.h [code]
file | usbd_sdr.h [code]
usb standard request header file


AT32F403 Firmwary Library: src Directory Reference

  • sdio
  • sd_mmc_card
  • src
src Directory Reference

Files

file | sd_mmc_card/src/at32_sdio.c [code]
this file provides a set of functions needed to manage the sdio/mmc card memory.
file | project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • pwm_output_tmr3
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: at32f403_usb_iap_demo Directory Reference

  • utilities
  • at32f403_usb_iap_demo
at32f403_usb_iap_demo Directory Reference

Directories

directory source_code


AT32F403 Firmwary Library: printer Directory Reference

  • middlewares
  • usbd_class
  • printer
printer Directory Reference

Files

file | printer_class.c [code]
usb printer class type
file | printer_class.h [code]
usb printer class file
file | printer_desc.c [code]
usb printer device descriptor
file | printer_desc.h [code]
usb printer descriptor header file


AT32F403 Firmwary Library: repeat_conversion_loop_transfer Directory Reference

  • adc
  • repeat_conversion_loop_transfer
repeat_conversion_loop_transfer Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • oc_low
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_low/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: custom_hid Directory Reference

  • usb_device
  • custom_hid
custom_hid Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • hall_xor_tmr2
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • keyboard
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: mouse Directory Reference

  • middlewares
  • usbd_class
  • mouse
mouse Directory Reference

Files

file | mouse_class.c [code]
usb hid mouse class type
file | mouse_class.h [code]
usb hid mouse header file
file | mouse_desc.c [code]
usb hid mouse device descriptor
file | mouse_desc.h [code]
usb mouse descriptor header file


AT32F403 Firmwary Library: inc Directory Reference

  • i2s
  • halfduplex_dma
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • virtual_msc_iap
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | flash_fat16.h [code]
fat16 file system header file
file | virtual_msc_iap/inc/msc_diskio.h [code]
usb mass storage disk interface header file
file | project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: source_code Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
source_code Directory Reference

Directories

directory | app_led3_toggle
directory | app_led4_toggle
directory | bootloader


AT32F403 Firmwary Library: halfduplex_interrupt Directory Reference

  • spi
  • halfduplex_interrupt
halfduplex_interrupt Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • exint
  • exint_software_trigger
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/exint/exint_software_trigger/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • dac
  • double_mode_dma_sinewave
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c [code]
main program


AT32F403 Firmwary Library: tmr1_synchro Directory Reference

  • tmr
  • tmr1_synchro
tmr1_synchro Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • nand
  • ecc
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/nand/ecc/src/main.c [code]
main program
file | xmc_ecc.c [code]
nand ecc configuration


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • lcd_8bit
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/lcd_8bit/src/main.c [code]
main program
file | lcd_8bit/src/xmc_lcd.c [code]
xmc_lcd config program


AT32F403 Firmwary Library: pwc Directory Reference

  • pwc
pwc Directory Reference

Directories

directory | deepsleep_rtc
directory | power_voltage_monitor
directory | sleep_tmr2
directory | sleep_usart1
directory | standby_rtc
directory | standby_wakeup_pin


AT32F403 Firmwary Library: source_code Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
source_code Directory Reference

Directories

directory | app_led3_toggle
directory | app_led4_toggle
directory | bootloader


AT32F403 Firmwary Library: exint_software_trigger Directory Reference

  • exint
  • exint_software_trigger
exint_software_trigger Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • pc_card
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/pc_card/src/main.c [code]
main program


AT32F403 Firmwary Library: crm Directory Reference

  • crm
crm Directory Reference

Directories

directory | clock_failure_detection
directory | sysclk_switch


AT32F403 Firmwary Library: external_clock Directory Reference

  • tmr
  • external_clock
external_clock Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • dma
  • data_to_gpio
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/dma/data_to_gpio/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • tmr_trigger_automatic_preempted
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • spi
  • only_receive_mode_polling
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c [code]
main program


AT32F403 Firmwary Library: calculation Directory Reference

  • crc
  • calculation
calculation Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: at32f403_board Directory Reference

  • at32f403_board
at32f403_board Directory Reference

Files

file | at32f403_board.c [code]
set of firmware functions to manage leds and push-button. initialize delay function.
file | at32f403_board.h [code]
header file for at-start board. set of firmware functions to manage leds and push-button. initialize delay function.


AT32F403 Firmwary Library: fullduplex_polling Directory Reference

  • spi
  • fullduplex_polling
fullduplex_polling Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • pwc
  • sleep_tmr2
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c [code]
main program


AT32F403 Firmwary Library: filter Directory Reference

  • can
  • filter
filter Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • wwdt
  • wwdt_reset
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • i2c
  • communication_poll
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/i2c/communication_poll/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • lcd_touch_16bit
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | touch.h [code]
this file contains all the functions prototypes for the touch firmware driver.
file | lcd_touch_16bit/inc/xmc_lcd.h [code]
xmc_lcd program header


AT32F403 Firmwary Library: src Directory Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c [code]
main program


AT32F403 Firmwary Library: at32f403_gen_random_number_demo Directory Reference

  • utilities
  • at32f403_gen_random_number_demo
at32f403_gen_random_number_demo Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: tmr1 Directory Reference

  • debug
  • tmr1
tmr1 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: loopback_mode Directory Reference

  • can
  • loopback_mode
loopback_mode Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • flash
  • operate_spim
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/flash/operate_spim/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | operate_spim.h [code]
operate_spim header file


AT32F403 Firmwary Library: src Directory Reference

  • usart
  • idle_detection
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usart/idle_detection/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • dma
  • flash_to_sram
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/dma/flash_to_sram/src/main.c [code]
main program


AT32F403 Firmwary Library: audio Directory Reference

  • usb_device
  • audio
audio Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: one_dac_dma_escalator Directory Reference

  • dac
  • one_dac_dma_escalator
one_dac_dma_escalator Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • i2c
  • communication_int
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/i2c/communication_int/src/main.c [code]
main program


AT32F403 Firmwary Library: combine_mode_ordinary_simult Directory Reference

  • adc
  • combine_mode_ordinary_simult
combine_mode_ordinary_simult Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: rs485 Directory Reference

  • usart
  • rs485
rs485 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: flash_write_read Directory Reference

  • flash
  • flash_write_read
flash_write_read Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • wdt
  • wdt_standby
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: virtual_comport Directory Reference

  • usb_device
  • virtual_comport
virtual_comport Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: cm4 Directory Reference

  • libraries
  • cmsis
  • cm4
cm4 Directory Reference

Directories

directory device_support


AT32F403 Firmwary Library: cortex_m4 Directory Reference

  • cortex_m4
cortex_m4 Directory Reference

Directories

directory | bit_band
directory | cmsis_dsp
directory | fpu
directory | systick_interrupt


AT32F403 Firmwary Library: input_capture Directory Reference

  • tmr
  • input_capture
input_capture Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: usbd_drivers Directory Reference

  • middlewares
  • usbd_drivers
usbd_drivers Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • pwc
  • standby_wakeup_pin
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: hall_xor_tmr2 Directory Reference

  • tmr
  • hall_xor_tmr2
hall_xor_tmr2 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • oc_toggle_tmr9
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • dac
  • double_mode_dma_sinewave
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: deepsleep_rtc Directory Reference

  • pwc
  • deepsleep_rtc
deepsleep_rtc Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_freertos_demo
  • src
src Directory Reference

Files

file | utilities/at32f403_freertos_demo/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_freertos_demo/src/at32f403_int.c [code]
main interrupt service routines.
file | include_port.c [code]
include_port program
file | utilities/at32f403_freertos_demo/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • spi
  • use_jtagpin_hardwarecs_dma
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
src Directory Reference

Files

file | utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c [code]
main interrupt service routines.
file | app_led3_toggle/src/iap.c [code]
iap program
file | utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c [code]
main program
file | app_led3_toggle/src/tmr.c [code]
tmr program
file | app_led3_toggle/src/usart.c [code]
usart program


AT32F403 Firmwary Library: src Directory Reference

  • debug
  • tmr1
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/debug/tmr1/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • can
  • loopback_mode
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/can/loopback_mode/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • i2s
  • halfduplex_interrupt
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • nand
  • ecc
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | xmc_ecc.h [code]
header file for the nand ecc configuration.


AT32F403 Firmwary Library: inc Directory Reference

  • templates
  • inc
inc Directory Reference

Files

file | project/at_start_f403/templates/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/templates/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/templates/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • i2c
  • communication_int
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/i2c/communication_int/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • external_clock
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/external_clock/src/main.c [code]
main program


AT32F403 Firmwary Library: dma Directory Reference

  • dma
dma Directory Reference

Directories

directory | data_to_gpio
directory | flash_to_sram


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • repeat_conversion_loop_transfer
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • tmr1_synchro
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c [code]
main program


AT32F403 Firmwary Library: app_led4_toggle Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
app_led4_toggle Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • virtual_comport
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/virtual_comport/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • oc_toggle_tmr9
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • can
  • communication_mode
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/can/communication_mode/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • pc_card
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/pc_card/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: composite_audio_hid Directory Reference

  • usb_device
  • composite_audio_hid
composite_audio_hid Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • vcp_loopback
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: two_dac_trianglewave Directory Reference

  • dac
  • two_dac_trianglewave
two_dac_trianglewave Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • dma_burst
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • pwm_output_tmr10
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • cortex_m4
  • bit_band
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/cortex_m4/bit_band/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • current_vref_value_check
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/current_vref_value_check/src/main.c [code]
main program


AT32F403 Firmwary Library: libraries Directory Reference

  • libraries
libraries Directory Reference

Directories

directory | cmsis
directory | drivers


AT32F403 Firmwary Library: hw_flow_control Directory Reference

  • usart
  • hw_flow_control
hw_flow_control Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: io_toggle Directory Reference

  • gpio
  • io_toggle
io_toggle Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_freertos_demo
  • inc
inc Directory Reference

Files

file | utilities/at32f403_freertos_demo/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_freertos_demo/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_freertos_demo/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | FreeRTOSConfig.h [code]


AT32F403 Firmwary Library: inc Directory Reference

  • can
  • filter
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/can/filter/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/can/filter/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/can/filter/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • adc
  • combine_mode_ordinary_simult
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • crm
  • sysclk_switch
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/crm/sysclk_switch/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • spi
  • only_receive_mode_polling
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: tmr Directory Reference

  • tmr
tmr Directory Reference

Directories

directory | 6_steps
directory | 7_pwm_output
directory | cascade_synchro
directory | complementary_signals
directory | dma
directory | dma_burst
directory | encoder_tmr2
directory | external_clock
directory | hall_xor_tmr2
directory | hang_mode
directory | input_capture
directory | oc_high
directory | oc_low
directory | oc_toggle_tmr3
directory | oc_toggle_tmr9
directory | one_cycle
directory | parallel_synchro
directory | pwm_input
directory | pwm_input_dma
directory | pwm_output_simulate
directory | pwm_output_tmr10
directory | pwm_output_tmr3
directory | timer_base
directory | tmr1_synchro
directory | tmr2_32bit


AT32F403 Firmwary Library: keyboard Directory Reference

  • usb_device
  • keyboard
keyboard Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: exint_config Directory Reference

  • exint
  • exint_config
exint_config Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • spi
  • halfduplex_interrupt
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c [code]
main program


AT32F403 Firmwary Library: can Directory Reference

  • can
can Directory Reference

Directories

directory | communication_mode
directory | filter
directory | loopback_mode


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • printer
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/printer/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: dac Directory Reference

  • dac
dac Directory Reference

Directories

directory | double_mode_dma_sinewave
directory | double_mode_dma_squarewave
directory | one_dac_dma_escalator
directory | one_dac_noisewave
directory | two_dac_trianglewave


AT32F403 Firmwary Library: src Directory Reference

  • crc
  • calculation
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/crc/calculation/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/crc/calculation/src/main.c [code]
main program


AT32F403 Firmwary Library: oc_toggle_tmr3 Directory Reference

  • tmr
  • oc_toggle_tmr3
oc_toggle_tmr3 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: standby_rtc Directory Reference

  • pwc
  • standby_rtc
standby_rtc Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: wdt Directory Reference

  • wdt
wdt Directory Reference

Directories

directory | wdt_reset
directory | wdt_standby


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • parallel_synchro
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: pwm_output_tmr3 Directory Reference

  • tmr
  • pwm_output_tmr3
pwm_output_tmr3 Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • cortex_m4
  • cmsis_dsp
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • cortex_m4
  • cmsis_dsp
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: pc_card Directory Reference

  • xmc
  • pc_card
pc_card Directory Reference

Directories

directory | inc
directory | pc_card
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • sram
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/sram/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | xmc_sram.h [code]


AT32F403 Firmwary Library: fpu Directory Reference

  • cortex_m4
  • fpu
fpu Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: printf Directory Reference

  • usart
  • printf
printf Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • nand
  • nand
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | xmc_nand.h [code]
header file for the nand configuration.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • input_capture
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/input_capture/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • timer_base
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/timer_base/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • composite_vcp_keyboard
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c [code]
main program


AT32F403 Firmwary Library: standby_wakeup_pin Directory Reference

  • pwc
  • standby_wakeup_pin
standby_wakeup_pin Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: printer Directory Reference

  • usb_device
  • printer
printer Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • hall_xor_tmr2
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • external_clock
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/external_clock/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • flash
  • operate_spim
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/flash/operate_spim/src/main.c [code]
main program
file | operate_spim.c [code]
operate spim program


AT32F403 Firmwary Library: AT32F403_Firmware_Library_V2.0.8 Directory Reference

AT32F403_Firmware_Library_V2.0.8 Directory Reference

Directories

directory | libraries
directory | main_page
directory | middlewares
directory | project
directory | utilities


AT32F403 Firmwary Library: src Directory Reference

  • usb_device
  • virtual_msc_iap
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c [code]
main interrupt service routines.
file | flash_fat16.c [code]
fat16 file system
file | project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c [code]
main program
file | virtual_msc_iap/src/msc_diskio.c [code]
usb mass storage disk function


AT32F403 Firmwary Library: src Directory Reference

  • gpio
  • swjtag_remap
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/gpio/swjtag_remap/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • sdio
  • sd_mmc_card
  • inc
inc Directory Reference

Files

file | sd_mmc_card/inc/at32_sdio.h [code]
this file contains all the functions prototypes for the sd/mmc card at32_sdio driver firmware library.
file | project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • adc
  • internal_temperature_sensor
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • bpr
  • tamper
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/bpr/tamper/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • lcd_8bit
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | picture.h [code]
this file contains all the picture used for lcd display.
file | lcd_8bit/inc/xmc_lcd.h [code]
xmc_lcd header file


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • hang_mode
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • input_capture
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/input_capture/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • receiver_mute
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: irda Directory Reference

  • usart
  • irda
irda Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: templates Directory Reference

  • templates
templates Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: exint_trigger_partitioned Directory Reference

  • adc
  • exint_trigger_partitioned
exint_trigger_partitioned Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • oc_toggle_tmr3
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c [code]
main program


AT32F403 Firmwary Library: bit_band Directory Reference

  • cortex_m4
  • bit_band
bit_band Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • gpio
  • led_toggle
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/gpio/led_toggle/src/main.c [code]
main program


AT32F403 Firmwary Library: lcd_8bit Directory Reference

  • xmc
  • lcd_8bit
lcd_8bit Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • wdt
  • wdt_standby
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/wdt/wdt_standby/src/main.c [code]
main program


AT32F403 Firmwary Library: app_led3_toggle Directory Reference

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
app_led3_toggle Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
src Directory Reference

Files

file | utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c [code]
system clock config program
file | utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c [code]
main interrupt service routines.
file | utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c [code]
flash program
file | bootloader/src/iap.c [code]
iap program
file | utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c [code]
main program
file | bootloader/src/tmr.c [code]
tmr program
file | bootloader/src/usart.c [code]
usart program


AT32F403 Firmwary Library: spi Directory Reference

  • spi
spi Directory Reference

Directories

directory | crc_transfer_polling
directory | fullduplex_polling
directory | halfduplex_interrupt
directory | halfduplex_transceiver_switch
directory | only_receive_mode_polling
directory | use_jtagpin_hardwarecs_dma
directory | w25q_flash


AT32F403 Firmwary Library: inc Directory Reference

  • utilities
  • at32f403_gen_random_number_demo
  • inc
inc Directory Reference

Files

file | utilities/at32f403_gen_random_number_demo/inc/at32f403_clock.h [code]
header file of clock program
file | utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h [code]
at32f403 config header file
file | utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | random.h [code]
at32f403 random header file


AT32F403 Firmwary Library: fap_enable Directory Reference

  • flash
  • fap_enable
fap_enable Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • exint
  • exint_software_trigger
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: debug Directory Reference

  • debug
debug Directory Reference

Directories

directory tmr1


AT32F403 Firmwary Library: nand Directory Reference

  • xmc
  • nand
nand Directory Reference

Directories

directory | ecc
directory | nand


AT32F403 Firmwary Library: inc Directory Reference

  • flash
  • fap_enable
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/flash/fap_enable/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • tmr2_32bit
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c [code]
main program


AT32F403 Firmwary Library: transfer_by_dma_interrupt Directory Reference

  • usart
  • transfer_by_dma_interrupt
transfer_by_dma_interrupt Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • i2s
  • spii2s_switch_halfduplex_polling
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • dma
  • data_to_gpio
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • usb_device
  • virtual_comport
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h [code]
usb config header file


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • 6_steps
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/6_steps/src/main.c [code]
main program


AT32F403 Firmwary Library: inc Directory Reference

  • tmr
  • complementary_signals
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: audio_hid Directory Reference

  • middlewares
  • usbd_class
  • audio_hid
audio_hid Directory Reference

Files

file | audio_hid/audio_conf.h [code]
usb audio config
file | audio_hid_class.c [code]
file | audio_hid_class.h [code]
file | audio_hid_desc.c [code]
file | audio_hid_desc.h [code]


AT32F403 Firmwary Library: inc Directory Reference

  • usart
  • transfer_by_dma_interrupt
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: inc Directory Reference

  • cortex_m4
  • bit_band
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • xmc
  • lcd_touch_16bit
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c [code]
main program
file | touch.c [code]
this file contains all the functions prototypes for the touch firmware driver.
file | lcd_touch_16bit/src/xmc_lcd.c [code]
xmc_lcd program file


AT32F403 Firmwary Library: mouse Directory Reference

  • usb_device
  • mouse
mouse Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: composite_cdc_keyboard Directory Reference

  • middlewares
  • usbd_class
  • composite_cdc_keyboard
composite_cdc_keyboard Directory Reference

Files

file | cdc_keyboard_class.c [code]
usb cdc and keyboard class type
file | cdc_keyboard_class.h [code]
usb cdc and keyboard class file
file | cdc_keyboard_desc.c [code]
usb cdc and keyboard device descriptor
file | cdc_keyboard_desc.h [code]
usb cdc and keyboard descriptor header file


AT32F403 Firmwary Library: inc Directory Reference

  • xmc
  • psram
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/xmc/psram/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h [code]
header file of main interrupt service routines.
file | xmc_psram.h [code]
header file for the psram configuration.


AT32F403 Firmwary Library: i2c_application_library Directory Reference

  • middlewares
  • i2c_application_library
i2c_application_library Directory Reference

Files

file | i2c_application.c [code]
the driver library of the i2c peripheral
file | i2c_application.h [code]
i2c application libray header file


AT32F403 Firmwary Library: sdio_fatfs Directory Reference

  • sdio
  • sdio_fatfs
sdio_fatfs Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: src Directory Reference

  • wwdt
  • wwdt_reset
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c [code]
main program


AT32F403 Firmwary Library: psram Directory Reference

  • xmc
  • psram
psram Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: ecc Directory Reference

  • xmc
  • nand
  • ecc
ecc Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: swjtag_remap Directory Reference

  • gpio
  • swjtag_remap
swjtag_remap Directory Reference

Directories

directory | inc
directory | src


AT32F403 Firmwary Library: inc Directory Reference

  • pwc
  • standby_rtc
  • inc
inc Directory Reference

Files

file | project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_clock.h [code]
header file of clock program
file | project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h [code]
at32f403 config header file
file | project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h [code]
header file of main interrupt service routines.


AT32F403 Firmwary Library: src Directory Reference

  • tmr
  • complementary_signals
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/tmr/complementary_signals/src/main.c [code]
main program


AT32F403 Firmwary Library: src Directory Reference

  • i2c
  • communication_dma
  • src
src Directory Reference

Files

file | project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c [code]
system clock config program
file | project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c [code]
main interrupt service routines.
file | project/at_start_f403/examples/i2c/communication_dma/src/main.c [code]
main program


AT32F403 Firmwary Library: diskio.c Source File

  • sdio
  • sdio_fatfs
  • src
diskio.c
Go to the documentation of this file.
1/*-----------------------------------------------------------------------*/
2/* Low level disk I/O module SKELETON for FatFs (C)ChaN, 2019 */
3/*-----------------------------------------------------------------------*/
4/* If a working storage control module is available, it should be */
5/* attached to the FatFs via a glue function rather than modifying it. */
6/* This is an example of glue functions to attach various exsisting */
7/* storage control modules to the FatFs module with a defined API. */
8/*-----------------------------------------------------------------------*/
9
10
11#include "ff.h" /* Obtains integer types */
12#include "diskio.h" /* Declarations of disk functions */
13
14#include <string.h>
15#include "at32_sdio.h" /* Example: Header file of existing MMC/SDC contorl module */
16
17/* Definitions of physical drive number for each drive */
18#define DEV_RAM 0 /* Example: Map Ramdisk to physical drive 0 */
19#define DEV_MMC 1 /* Example: Map MMC/SD card to physical drive 1 */
20#define DEV_USB 2 /* Example: Map USB MSD to physical drive 2 */
21
22 __align(4) uint8_t sdio_data_buffer[512]; /* buf for sd_read_disk/sd_write_disk function used. */
23
24 sd_error_status_type sd_read_disk(uint8_t *buf, uint32_t sector, uint8_t cnt);
25 sd_error_status_type sd_write_disk(const uint8_t *buf, uint32_t sector, uint8_t cnt);
26
34 sd_error_status_type sd_read_disk(uint8_t *buf, uint32_t sector, uint8_t cnt)
35{
36 sd_error_status_type sta = SD_OK;
37 long long lsector = sector;
38 uint8_t n;
39
40 /* data address is in block (512 byte) units. */
41 lsector <<= 9;
42
43 if((uint32_t)buf % 4 != 0)
44 {
45 for(n = 0; n < cnt; n++)
46 {
47 sta = sd_block_read(sdio_data_buffer, lsector + 512 * n, 512);
48 memcpy(buf, sdio_data_buffer, 512);
49 buf += 512;
50 }
51 }
52 else
53 {
54 if(cnt == 1)
55 {
56 sta = sd_block_read(buf, lsector, 512);
57 }
58 else
59 {
60 sta = sd_mult_blocks_read(buf, lsector, 512, cnt);
61 }
62 }
63
64 return sta;
65}
66
74 sd_error_status_type sd_write_disk(const uint8_t *buf, uint32_t sector, uint8_t cnt)
75{
76 sd_error_status_type sta = SD_OK;
77 uint8_t n;
78 long long lsector = sector;
79
80 /* data address is in block (512 byte) units. */
81 lsector <<= 9;
82
83 if((uint32_t)buf % 4 != 0)
84 {
85 for(n = 0; n < cnt; n++)
86 {
87 memcpy(sdio_data_buffer, buf, 512);
88 sta = sd_block_write(sdio_data_buffer, lsector + 512*n, 512);
89 buf += 512;
90 }
91 }
92 else
93 {
94 if(cnt == 1)
95 {
96 sta = sd_block_write(buf, lsector, 512);
97 }
98 else
99 {
100 sta = sd_mult_blocks_write(buf, lsector, 512, cnt);
101 }
102 }
103
104 return sta;
105}
106
107/*-----------------------------------------------------------------------*/
108/* Get Drive Status */
109/*-----------------------------------------------------------------------*/
110DSTATUS disk_status (
111 BYTE pdrv /* Physical drive nmuber to identify the drive */
112)
113{
114 DSTATUS stat;
115 int result;
116
117 switch (pdrv) {
118 case DEV_RAM :
119 result = 1;
120 stat = (DSTATUS)result;
121 return stat;
122
123 case DEV_MMC :
124 result = 0;
125 stat = (DSTATUS)result;
126 return stat;
127
128 case DEV_USB :
129 result = 1;
130 stat = (DSTATUS)result;
131 return stat;
132 }
133 return STA_NOINIT;
134}
135
136
137
138/*-----------------------------------------------------------------------*/
139/* Inidialize a Drive */
140/*-----------------------------------------------------------------------*/
141DSTATUS disk_initialize (
142 BYTE pdrv /* Physical drive nmuber to identify the drive */
143)
144{
145 DSTATUS stat;
146 int result;
147
148 switch (pdrv) {
149 case DEV_RAM :
150 result = 1;
151 stat = (DSTATUS)result;
152 return stat;
153
154 case DEV_MMC :
155 result = sd_init();
156 stat = (DSTATUS)result;
157 return stat;
158
159 case DEV_USB :
160 result = 1;
161 stat = (DSTATUS)result;
162 return stat;
163 }
164 return STA_NOINIT;
165}
166
167
168
169/*-----------------------------------------------------------------------*/
170/* Read Sector(s) */
171/*-----------------------------------------------------------------------*/
172DRESULT disk_read (
173 BYTE pdrv, /* Physical drive nmuber to identify the drive */
174 BYTE *buff, /* Data buffer to store read data */
175 LBA_t sector, /* Start sector in LBA */
176 UINT count /* Number of sectors to read */
177)
178{
179 DRESULT res;
180 int result;
181
182 switch (pdrv) {
183 case DEV_RAM :
184 result = 1;
185 res = (DRESULT)result;
186 return res;
187
188 case DEV_MMC :
189 result = sd_read_disk(buff, sector, count);
190 res = (DRESULT)result;
191 return res;
192
193 case DEV_USB :
194 result = 1;
195 res = (DRESULT)result;
196 return res;
197 }
198
199 return RES_PARERR;
200}
201
202
203
204/*-----------------------------------------------------------------------*/
205/* Write Sector(s) */
206/*-----------------------------------------------------------------------*/
207#if FF_FS_READONLY == 0
208
209DRESULT disk_write (
210 BYTE pdrv, /* Physical drive nmuber to identify the drive */
211 const BYTE *buff, /* Data to be written */
212 LBA_t sector, /* Start sector in LBA */
213 UINT count /* Number of sectors to write */
214)
215{
216 DRESULT res;
217 int result;
218
219 switch (pdrv) {
220 case DEV_RAM :
221 result = 1;
222 res = (DRESULT)result;
223 return res;
224
225 case DEV_MMC :
226 result = sd_write_disk(buff, sector, count);
227 res = (DRESULT)result;
228 return res;
229
230 case DEV_USB :
231 result = 1;
232 res = (DRESULT)result;
233 return res;
234 }
235
236 return RES_PARERR;
237}
238
239#endif
240
241
242/*-----------------------------------------------------------------------*/
243/* Miscellaneous Functions */
244/*-----------------------------------------------------------------------*/
245DRESULT disk_ioctl (
246 BYTE pdrv, /* Physical drive nmuber (0..) */
247 BYTE cmd, /* Control code */
248 void *buff /* Buffer to send/receive control data */
249)
250{
251 DRESULT res;
252 int result;
253
254 switch (pdrv) {
255 case DEV_RAM :
256 result = 1;
257 res = (DRESULT)result;
258 return res;
259
260 case DEV_MMC :
261 switch(cmd){
262 case CTRL_SYNC:
263 result = RES_OK;
264 break;
265 case GET_SECTOR_SIZE:
266 *(DWORD*)buff = 512;
267 result = RES_OK;
268 break;
269 case GET_SECTOR_COUNT:
270 *(DWORD*)buff = sd_card_info.card_capacity/512;
271 result = RES_OK;
272 break;
273 case GET_BLOCK_SIZE:
274 *(DWORD*)buff = sd_card_info.card_blk_size;
275 result = RES_OK;
276 break;
277 default:
278 result = RES_PARERR;
279 break;
280 }
281 res = (DRESULT)result;
282 return res;
283
284 case DEV_USB :
285 result = 1;
286 res = (DRESULT)result;
287 return res;
288 }
289
290 return RES_PARERR;
291}
disk_read
DRESULT disk_read(BYTE pdrv, BYTE *buff, LBA_t sector, UINT count)
Definition: diskio.c:172
disk_initialize
DSTATUS disk_initialize(BYTE pdrv)
Definition: diskio.c:141
__align
__align(4)
Definition: diskio.c:22
DEV_USB
#define DEV_USB
Definition: diskio.c:20
DEV_RAM
#define DEV_RAM
Definition: diskio.c:18
disk_status
DSTATUS disk_status(BYTE pdrv)
Definition: diskio.c:110
disk_ioctl
DRESULT disk_ioctl(BYTE pdrv, BYTE cmd, void *buff)
Definition: diskio.c:245
disk_write
DRESULT disk_write(BYTE pdrv, const BYTE *buff, LBA_t sector, UINT count)
Definition: diskio.c:209
DEV_MMC
#define DEV_MMC
Definition: diskio.c:19
sd_write_disk
sd_error_status_type sd_write_disk(const uint8_t *buf, uint32_t sector, uint8_t cnt)
write sd card sector
Definition: diskio.c:74
sd_card_info
sd_card_info_struct_type sd_card_info
Definition: sd_mmc_card/src/at32_sdio.c:46
sd_block_read
sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma ...
Definition: sd_mmc_card/src/at32_sdio.c:1179
sd_mult_blocks_write
sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed ...
Definition: sd_mmc_card/src/at32_sdio.c:1480
sd_block_write
sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be manag...
Definition: sd_mmc_card/src/at32_sdio.c:1358
sd_init
sd_error_status_type sd_init(void)
initializes the sd card and put it into standby state (ready for data transfer).
Definition: sd_mmc_card/src/at32_sdio.c:70
sd_mult_blocks_read
sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mod...
Definition: sd_mmc_card/src/at32_sdio.c:1268
sd_error_status_type
sd_error_status_type
Definition: sd_mmc_card/inc/at32_sdio.h:72
SD_OK
@ SD_OK
Definition: sd_mmc_card/inc/at32_sdio.h:117
sd_card_info_struct_type::card_capacity
long long card_capacity
Definition: sd_mmc_card/inc/at32_sdio.h:239
sd_card_info_struct_type::card_blk_size
uint32_t card_blk_size
Definition: sd_mmc_card/inc/at32_sdio.h:240


AT32F403 Firmwary Library: ffconf.h Source File

  • sdio
  • sdio_fatfs
  • inc
ffconf.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------------/
2/ FatFs Functional Configurations
3/---------------------------------------------------------------------------*/
4
5#define FFCONF_DEF 86631 /* Revision ID */
6
7/*---------------------------------------------------------------------------/
8/ Function Configurations
9/---------------------------------------------------------------------------*/
10
11#define FF_FS_READONLY 0
12/* This option switches read-only configuration. (0:Read/Write or 1:Read-only)
13/ Read-only configuration removes writing API functions, f_write(), f_sync(),
14/ f_unlink(), f_mkdir(), f_chmod(), f_rename(), f_truncate(), f_getfree()
15/ and optional writing functions as well. */
16
17
18#define FF_FS_MINIMIZE 0
19/* This option defines minimization level to remove some basic API functions.
20/
21/ 0: Basic functions are fully enabled.
22/ 1: f_stat(), f_getfree(), f_unlink(), f_mkdir(), f_truncate() and f_rename()
23/ are removed.
24/ 2: f_opendir(), f_readdir() and f_closedir() are removed in addition to 1.
25/ 3: f_lseek() function is removed in addition to 2. */
26
27
28#define FF_USE_FIND 0
29/* This option switches filtered directory read functions, f_findfirst() and
30/ f_findnext(). (0:Disable, 1:Enable 2:Enable with matching altname[] too) */
31
32
33#define FF_USE_MKFS 1//0
34/* This option switches f_mkfs() function. (0:Disable or 1:Enable) */
35
36
37#define FF_USE_FASTSEEK 1//0
38/* This option switches fast seek function. (0:Disable or 1:Enable) */
39
40
41#define FF_USE_EXPAND 0
42/* This option switches f_expand function. (0:Disable or 1:Enable) */
43
44
45#define FF_USE_CHMOD 0
46/* This option switches attribute manipulation functions, f_chmod() and f_utime().
47/ (0:Disable or 1:Enable) Also FF_FS_READONLY needs to be 0 to enable this option. */
48
49
50#define FF_USE_LABEL 0
51/* This option switches volume label functions, f_getlabel() and f_setlabel().
52/ (0:Disable or 1:Enable) */
53
54
55#define FF_USE_FORWARD 0
56/* This option switches f_forward() function. (0:Disable or 1:Enable) */
57
58
59#define FF_USE_STRFUNC 0
60#define FF_PRINT_LLI 0
61#define FF_PRINT_FLOAT 0
62#define FF_STRF_ENCODE 0
63/* FF_USE_STRFUNC switches string functions, f_gets(), f_putc(), f_puts() and
64/ f_printf().
65/
66/ 0: Disable. FF_PRINT_LLI, FF_PRINT_FLOAT and FF_STRF_ENCODE have no effect.
67/ 1: Enable without LF-CRLF conversion.
68/ 2: Enable with LF-CRLF conversion.
69/
70/ FF_PRINT_LLI = 1 makes f_printf() support long long argument and FF_PRINT_FLOAT = 1/2
71 makes f_printf() support floating point argument. These features want C99 or later.
72/ When FF_LFN_UNICODE >= 1 with LFN enabled, string functions convert the character
73/ encoding in it. FF_STRF_ENCODE selects assumption of character encoding ON THE FILE
74/ to be read/written via those functions.
75/
76/ 0: ANSI/OEM in current CP
77/ 1: Unicode in UTF-16LE
78/ 2: Unicode in UTF-16BE
79/ 3: Unicode in UTF-8
80*/
81
82
83/*---------------------------------------------------------------------------/
84/ Locale and Namespace Configurations
85/---------------------------------------------------------------------------*/
86
87#define FF_CODE_PAGE 932
88/* This option specifies the OEM code page to be used on the target system.
89/ Incorrect code page setting can cause a file open failure.
90/
91/ 437 - U.S.
92/ 720 - Arabic
93/ 737 - Greek
94/ 771 - KBL
95/ 775 - Baltic
96/ 850 - Latin 1
97/ 852 - Latin 2
98/ 855 - Cyrillic
99/ 857 - Turkish
100/ 860 - Portuguese
101/ 861 - Icelandic
102/ 862 - Hebrew
103/ 863 - Canadian French
104/ 864 - Arabic
105/ 865 - Nordic
106/ 866 - Russian
107/ 869 - Greek 2
108/ 932 - Japanese (DBCS)
109/ 936 - Simplified Chinese (DBCS)
110/ 949 - Korean (DBCS)
111/ 950 - Traditional Chinese (DBCS)
112/ 0 - Include all code pages above and configured by f_setcp()
113*/
114
115
116#define FF_USE_LFN 0
117#define FF_MAX_LFN 255
118/* The FF_USE_LFN switches the support for LFN (long file name).
119/
120/ 0: Disable LFN. FF_MAX_LFN has no effect.
121/ 1: Enable LFN with static working buffer on the BSS. Always NOT thread-safe.
122/ 2: Enable LFN with dynamic working buffer on the STACK.
123/ 3: Enable LFN with dynamic working buffer on the HEAP.
124/
125/ To enable the LFN, ffunicode.c needs to be added to the project. The LFN function
126/ requiers certain internal working buffer occupies (FF_MAX_LFN + 1) * 2 bytes and
127/ additional (FF_MAX_LFN + 44) / 15 * 32 bytes when exFAT is enabled.
128/ The FF_MAX_LFN defines size of the working buffer in UTF-16 code unit and it can
129/ be in range of 12 to 255. It is recommended to be set it 255 to fully support LFN
130/ specification.
131/ When use stack for the working buffer, take care on stack overflow. When use heap
132/ memory for the working buffer, memory management functions, ff_memalloc() and
133/ ff_memfree() exemplified in ffsystem.c, need to be added to the project. */
134
135
136#define FF_LFN_UNICODE 0
137/* This option switches the character encoding on the API when LFN is enabled.
138/
139/ 0: ANSI/OEM in current CP (TCHAR = char)
140/ 1: Unicode in UTF-16 (TCHAR = WCHAR)
141/ 2: Unicode in UTF-8 (TCHAR = char)
142/ 3: Unicode in UTF-32 (TCHAR = DWORD)
143/
144/ Also behavior of string I/O functions will be affected by this option.
145/ When LFN is not enabled, this option has no effect. */
146
147
148#define FF_LFN_BUF 255
149#define FF_SFN_BUF 12
150/* This set of options defines size of file name members in the FILINFO structure
151/ which is used to read out directory items. These values should be suffcient for
152/ the file names to read. The maximum possible length of the read file name depends
153/ on character encoding. When LFN is not enabled, these options have no effect. */
154
155
156#define FF_FS_RPATH 0
157/* This option configures support for relative path.
158/
159/ 0: Disable relative path and remove related functions.
160/ 1: Enable relative path. f_chdir() and f_chdrive() are available.
161/ 2: f_getcwd() function is available in addition to 1.
162*/
163
164
165/*---------------------------------------------------------------------------/
166/ Drive/Volume Configurations
167/---------------------------------------------------------------------------*/
168
169#define FF_VOLUMES 3//1
170/* Number of volumes (logical drives) to be used. (1-10) */
171
172
173#define FF_STR_VOLUME_ID 0
174#define FF_VOLUME_STRS "RAM","NAND","CF","SD","SD2","USB","USB2","USB3"
175/* FF_STR_VOLUME_ID switches support for volume ID in arbitrary strings.
176/ When FF_STR_VOLUME_ID is set to 1 or 2, arbitrary strings can be used as drive
177/ number in the path name. FF_VOLUME_STRS defines the volume ID strings for each
178/ logical drives. Number of items must not be less than FF_VOLUMES. Valid
179/ characters for the volume ID strings are A-Z, a-z and 0-9, however, they are
180/ compared in case-insensitive. If FF_STR_VOLUME_ID >= 1 and FF_VOLUME_STRS is
181/ not defined, a user defined volume string table needs to be defined as:
182/
183/ const char* VolumeStr[FF_VOLUMES] = {"ram","flash","sd","usb",...
184*/
185
186
187#define FF_MULTI_PARTITION 0
188/* This option switches support for multiple volumes on the physical drive.
189/ By default (0), each logical drive number is bound to the same physical drive
190/ number and only an FAT volume found on the physical drive will be mounted.
191/ When this function is enabled (1), each logical drive number can be bound to
192/ arbitrary physical drive and partition listed in the VolToPart[]. Also f_fdisk()
193/ funciton will be available. */
194
195
196#define FF_MIN_SS 512
197#define FF_MAX_SS 512
198/* This set of options configures the range of sector size to be supported. (512,
199/ 1024, 2048 or 4096) Always set both 512 for most systems, generic memory card and
200/ harddisk, but a larger value may be required for on-board flash memory and some
201/ type of optical media. When FF_MAX_SS is larger than FF_MIN_SS, FatFs is configured
202/ for variable sector size mode and disk_ioctl() function needs to implement
203/ GET_SECTOR_SIZE command. */
204
205
206#define FF_LBA64 0
207/* This option switches support for 64-bit LBA. (0:Disable or 1:Enable)
208/ To enable the 64-bit LBA, also exFAT needs to be enabled. (FF_FS_EXFAT == 1) */
209
210
211#define FF_MIN_GPT 0x10000000
212/* Minimum number of sectors to switch GPT as partitioning format in f_mkfs and
213/ f_fdisk function. 0x100000000 max. This option has no effect when FF_LBA64 == 0. */
214
215
216#define FF_USE_TRIM 0
217/* This option switches support for ATA-TRIM. (0:Disable or 1:Enable)
218/ To enable Trim function, also CTRL_TRIM command should be implemented to the
219/ disk_ioctl() function. */
220
221
222
223/*---------------------------------------------------------------------------/
224/ System Configurations
225/---------------------------------------------------------------------------*/
226
227#define FF_FS_TINY 0
228/* This option switches tiny buffer configuration. (0:Normal or 1:Tiny)
229/ At the tiny configuration, size of file object (FIL) is shrinked FF_MAX_SS bytes.
230/ Instead of private sector buffer eliminated from the file object, common sector
231/ buffer in the filesystem object (FATFS) is used for the file data transfer. */
232
233
234#define FF_FS_EXFAT 0
235/* This option switches support for exFAT filesystem. (0:Disable or 1:Enable)
236/ To enable exFAT, also LFN needs to be enabled. (FF_USE_LFN >= 1)
237/ Note that enabling exFAT discards ANSI C (C89) compatibility. */
238
239
240#define FF_FS_NORTC 1//0
241#define FF_NORTC_MON 1
242#define FF_NORTC_MDAY 1
243#define FF_NORTC_YEAR 2020
244/* The option FF_FS_NORTC switches timestamp functiton. If the system does not have
245/ any RTC function or valid timestamp is not needed, set FF_FS_NORTC = 1 to disable
246/ the timestamp function. Every object modified by FatFs will have a fixed timestamp
247/ defined by FF_NORTC_MON, FF_NORTC_MDAY and FF_NORTC_YEAR in local time.
248/ To enable timestamp function (FF_FS_NORTC = 0), get_fattime() function need to be
249/ added to the project to read current time form real-time clock. FF_NORTC_MON,
250/ FF_NORTC_MDAY and FF_NORTC_YEAR have no effect.
251/ These options have no effect in read-only configuration (FF_FS_READONLY = 1). */
252
253
254#define FF_FS_NOFSINFO 0
255/* If you need to know correct free space on the FAT32 volume, set bit 0 of this
256/ option, and f_getfree() function at first time after volume mount will force
257/ a full FAT scan. Bit 1 controls the use of last allocated cluster number.
258/
259/ bit0=0: Use free cluster count in the FSINFO if available.
260/ bit0=1: Do not trust free cluster count in the FSINFO.
261/ bit1=0: Use last allocated cluster number in the FSINFO if available.
262/ bit1=1: Do not trust last allocated cluster number in the FSINFO.
263*/
264
265
266#define FF_FS_LOCK 0
267/* The option FF_FS_LOCK switches file lock function to control duplicated file open
268/ and illegal operation to open objects. This option must be 0 when FF_FS_READONLY
269/ is 1.
270/
271/ 0: Disable file lock function. To avoid volume corruption, application program
272/ should avoid illegal open, remove and rename to the open objects.
273/ >0: Enable file lock function. The value defines how many files/sub-directories
274/ can be opened simultaneously under file lock control. Note that the file
275/ lock control is independent of re-entrancy. */
276
277
278/* #include <somertos.h> // O/S definitions */
279#define FF_FS_REENTRANT 0
280#define FF_FS_TIMEOUT 1000
281#define FF_SYNC_t HANDLE
282/* The option FF_FS_REENTRANT switches the re-entrancy (thread safe) of the FatFs
283/ module itself. Note that regardless of this option, file access to different
284/ volume is always re-entrant and volume control functions, f_mount(), f_mkfs()
285/ and f_fdisk() function, are always not re-entrant. Only file/directory access
286/ to the same volume is under control of this function.
287/
288/ 0: Disable re-entrancy. FF_FS_TIMEOUT and FF_SYNC_t have no effect.
289/ 1: Enable re-entrancy. Also user provided synchronization handlers,
290/ ff_req_grant(), ff_rel_grant(), ff_del_syncobj() and ff_cre_syncobj()
291/ function, must be added to the project. Samples are available in
292/ option/syscall.c.
293/
294/ The FF_FS_TIMEOUT defines timeout period in unit of time tick.
295/ The FF_SYNC_t defines O/S dependent sync object type. e.g. HANDLE, ID, OS_EVENT*,
296/ SemaphoreHandle_t and etc. A header file for O/S definitions needs to be
297/ included somewhere in the scope of ff.h. */
298
299
300
301/*--- End of configuration options ---*/


AT32F403 Firmwary Library: flash_fat16.c Source File

  • usb_device
  • virtual_msc_iap
  • src
flash_fat16.c
Go to the documentation of this file.
1
24#include "flash_fat16.h"
25#include "usb_conf.h"
26
34#define FAT16_SECTOR_SIZE 62
35static uint8_t fat16_sector[FAT16_SECTOR_SIZE] =
36{
37 0xEB, /*0*/
38 0x3C, /*1*/
39 0x90, /*2*/
40 0x4D, /*3*/
41 0x53, /*4*/
42 0x44, /*5*/
43 0x4F, /*6*/
44 0x53, /*7*/
45 0x35, /*8*/
46 0x2E, /*9*/
47 0x30, /*10*/
48 0x00, /*11*/
49 0x08, /*12*/ //2K
50 0x04, /*13*/
51 0x06, /*14*/
52 0x00, /*15*/
53
54 0x02, /*16*/
55 0x00, /*17*/
56 0x02, /*18*/
57 0xFF, /*19*/
58 0x0F, /*20*/
59 0xF8, /*21*/
60 0x01, /*22*/
61 0x00, /*23*/
62 0x01, /*24*/
63 0x00, /*25*/
64 0x01, /*26*/
65 0x00, /*27*/
66 0x00, /*28*/
67 0x00, /*29*/
68 0x00, /*30*/
69 0x00, /*31*/
70
71 0x00, /*32*/
72 0x00, /*33*/
73 0x00, /*34*/
74 0x00, /*35*/
75 0x00, /*36*/
76 0x00, /*37*/
77 0x29, /*38*/
78 0x96, /*39*/
79 0x16, /*40*/
80 0x66, /*41*/
81 0xD3, /*42*/
82 0x20, /*43*/
83 0x20, /*44*/
84 0x20, /*45*/
85 0x20, /*46*/
86 0x20, /*47*/
87
88 0x20, /*48*/
89 0x20, /*49*/
90 0x20, /*50*/
91 0x20, /*51*/
92 0x20, /*52*/
93 0x20, /*53*/
94 0x46, /*54*/
95 0x41, /*55*/
96 0x54, /*56*/
97 0x31, /*57*/
98 0x36, /*58*/
99 0x20, /*59*/
100 0x20, /*60*/
101 0x20 /*61*/
102};
103
104
105
106const uint8_t fat16_root_dir_sector[FAT16_DIR_SIZE]=
107{
108 0x20, /*11 - Archive Attribute set */
109 0x00, /*12 - Reserved */
110 0x4B, /*13 - Create Time Tenth */
111 0x9C, /*14 - Create Time */
112 0x42, /*15 - Create Time */
113 0x92, /*16 - Create Date */
114 0x38, /*17 - Create Date */
115 0x92, /*18 - Last Access Date */
116 0x38, /*19 - Last Access Date */
117 0x00, /*20 - Not used in FAT16 */
118 0x00, /*21 - Not used in FAT16 */
119 0x9D, /*22 - Write Time */
120 0x42, /*23 - Write Time */
121 0x92, /*24 - Write Date */
122 0x38, /*25 - Write Date */
123 0x00, /*26 - First Cluster (none, because file is empty) */
124 0x00, /*27 - First Cluster (none, because file is empty) */
125 0x00, /*28 - File Size */
126 0x00, /*29 - File Size */
127 0x00, /*30 - File Size */
128 0x00, /*31 - File Size */
129 'A','T','3','2',' ','I','A','P',' ',' ',' ', /*32-42 - Volume label */
130 0x08, /*43 - File attribute = Volume label */
131 0x00, /*44 - Reserved */
132 0x00, /*45 - Create Time Tenth */
133 0x00, /*46 - Create Time */
134 0x00, /*47 - Create Time */
135 0x00, /*48 - Create Date */
136 0x00, /*49 - Create Date */
137 0x00, /*50 - Last Access Date */
138 0x00, /*51 - Last Access Date */
139 0x00, /*52 - Not used in FAT16 */
140 0x00, /*53 - Not used in FAT16 */
141 0x9D, /*54 - Write Time */
142 0x42, /*55 - Write Time */
143 0x92, /*56 - Write Date */
144 0x38, /*57 - Write Date */
145};
146
147const uint8_t fat16_table_sector0[FAT16_TABLE_SIZE] =
148{
149 0xF8,
150 0xFF,
151 0xFF,
152 0xFF
153};
154
155uint8_t fat16_file_name[FAT16_FILENAME_SIZE] =
156{
157 'R',
158 'e',
159 'a',
160 'd',
161 'y',
162 ' ',
163 ' ',
164 ' ',
165 'T',
166 'X',
167 'T'
168};
169
170 fat_dir_type g_file_attr;
171 flash_iap_type flash_iap;
172uint32_t file_write_nr = 0;
173uint8_t file_match = 0;
174
175uint32_t flash_fat16_boot_dir_write(uint32_t fat_lbk, uint8_t *data, uint32_t len);
176uint32_t flash_fat16_sector_write(uint32_t fat_lbk, uint8_t *data, uint32_t len);
177uint32_t fat16_memory_copy(uint8_t *dst, const uint8_t *src, uint32_t len);
178uint32_t fat16_memory_memset(uint8_t *dst, uint32_t set, uint32_t len);
179uint32_t flash_write_data(uint32_t address, uint8_t *data, uint32_t len);
180uint32_t flash_read_data(uint32_t address, uint8_t *data, uint32_t len);
181uint32_t fat16_memory_cmp(uint8_t *dst, uint8_t *src, uint32_t len);
182uint32_t flash_crc_check(uint32_t address, uint8_t *data, uint32_t len);
183void flash_fat16_clear_upgrade_flag(void);
184void flash_fat16_set_upgrade_flag(void);
185
193uint32_t fat16_memory_copy(uint8_t *dst, const uint8_t *src, uint32_t len)
194{
195 uint32_t i_index;
196 for(i_index = 0; i_index < len; i_index ++)
197 {
198 dst[i_index] = src[i_index];
199 }
200 return i_index;
201}
202
210uint32_t fat16_memory_memset(uint8_t *dst, uint32_t set, uint32_t len)
211{
212 uint32_t i_index;
213 for(i_index = 0; i_index < len; i_index ++)
214 {
215 dst[i_index] = (uint8_t)set;
216 }
217 return i_index;
218}
219
227uint32_t fat16_memory_cmp(uint8_t *dst, uint8_t *src, uint32_t len)
228{
229 uint32_t i_index;
230 for(i_index = 0; i_index < len; i_index ++)
231 {
232 if(dst[i_index] != src[i_index])
233 return 1;
234 }
235 return 0;
236}
237
243void flash_fat16_clear_upgrade_flag(void)
244{
245 flash_unlock();
246 flash_sector_erase(flash_iap.flash_app_addr - flash_iap.sector_size);
247 flash_lock();
248}
249
255void flash_fat16_set_upgrade_flag(void)
256{
257 flash_unlock();
258 flash_word_program(flash_iap.flash_app_addr - flash_iap.sector_size,
259 IAP_UPGRADE_COMPLETE_FLAG);
260 flash_lock();
261}
262
268uint8_t flash_fat16_get_upgrade_flag(void)
269{
270 uint32_t flag_address = flash_iap.flash_app_addr - flash_iap.sector_size;
271 if(*((uint32_t *)flag_address) == IAP_UPGRADE_COMPLETE_FLAG)
272 {
273 return IAP_SUCCESS;
274 }
275 else
276 {
277 return IAP_FAILED;
278 }
279}
280
288uint32_t flash_fat16_read(uint32_t fat_lbk, uint8_t *data, uint32_t len)
289{
290 uint32_t i_index = 0;
291 switch(fat_lbk)
292 {
293 case FLASH_FAT16_BOOT_SECTOR_ADDR:
294 i_index += fat16_memory_copy(data, fat16_sector, FAT16_SECTOR_SIZE);
295 i_index += 2;
296
297 fat16_memory_memset(data+i_index, 0, FAT16_BYTE_PER_SIZE-i_index);
298 data[510] = 0x55;
299 data[511] = 0xAA;
300
301 break;
302 case FLASH_FAT16_1_ADDR:
303 case FLASH_FAT16_2_ADDR:
304 i_index += fat16_memory_copy(data, fat16_table_sector0, FAT16_TABLE_SIZE);
305
306 fat16_memory_memset(data+i_index, 0, FAT16_BYTE_PER_SIZE-i_index);
307 break;
308 case FLASH_FAT16_ROOT_ADDR:
309 i_index += fat16_memory_copy(data, fat16_file_name, FAT16_FILENAME_SIZE);
310 i_index += fat16_memory_copy(data + i_index, fat16_root_dir_sector, FAT16_DIR_SIZE);
311
312 fat16_memory_memset(data+i_index, 0, FAT16_BYTE_PER_SIZE-i_index);
313 break;
314 default:
315 i_index = 0;
316 fat16_memory_memset(data+i_index, 0, FAT16_BYTE_PER_SIZE-i_index);
317 break;
318 }
319 return FAT16_BYTE_PER_SIZE;
320}
321
329uint32_t flash_fat16_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
330{
331 switch(fat_lbk)
332 {
333 case FLASH_FAT16_BOOT_SECTOR_ADDR:
334 case FLASH_FAT16_1_ADDR:
335 case FLASH_FAT16_2_ADDR:
336 break;
337 case FLASH_FAT16_ROOT_ADDR:
338 flash_fat16_boot_dir_write(fat_lbk, data, len);
339 break;
340 default:
341 if(fat_lbk >= FLASH_FAT16_FILE_START_ADDR)
342 {
343 flash_fat16_sector_write(fat_lbk, data, len);
344 }
345 break;
346
347 }
348 return len;
349}
350
357uint32_t flash_fat16_set_name(const uint8_t *file_name, uint8_t len)
358{
359 uint8_t i_index = 0;
360 for(i_index = 0; i_index < len && i_index < 8; i_index ++)
361 {
362 fat16_file_name[i_index] = file_name[i_index];
363 }
364
365 for(; i_index < 8; i_index ++)
366 {
367 fat16_file_name[i_index] = ' ';
368 }
369 return i_index;
370}
371
379uint32_t flash_fat16_boot_dir_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
380{
381 fat_dir_type *pdir = (fat_dir_type *)data;
382 uint32_t i_index = 2, loop_len = 0;
383
384 pdir ++;
385 pdir ++;
386 loop_len += 64;
387
388 while(i_index ++ < 512 && loop_len < len)
389 {
390 if((pdir->attr == 0x20) && ((pdir + 1)->attr == 0x00))
391 {
392 break;
393 }
394 else
395 {
396 pdir ++;
397 }
398 loop_len += 32;
399 }
400
401 if(i_index <= 512 && loop_len < len)
402 {
403 fat16_memory_copy((uint8_t *)&g_file_attr, (const uint8_t *)pdir, 32);
404
405 if(file_match == 1)
406 {
407 file_match = 0;
408 if(g_file_attr.file_size > 0)
409 {
410 if(flash_iap.file_write_nr >= g_file_attr.file_size)
411 {
412 /* upgrade finish */
413 flash_iap.file_write_nr = 0;
414 flash_iap.msc_up_status = UPGRADE_SUCCESS;
415
416 /* set the upgrade done flag to flash */
417 flash_fat16_set_upgrade_flag();
418 }
419 }
420 }
421 g_file_attr.write_data = 0;
422 g_file_attr.write_time = 0;
423 flash_iap.file_write_nr = 0;
424 }
425 else
426 {
427 fat16_memory_memset((uint8_t *)&g_file_attr, 0, 32);
428 }
429 return len;
430}
431
437uint32_t flash_fat16_addr_offset(uint8_t *file_name)
438{
439 uint8_t i_index = 0, offset_shift = 20;
440 uint32_t offset = 0;
441 uint8_t *pfile = file_name;
442
443 if(*pfile != 'A')
444 {
445 return INVAILD_OFFSET_ADDR;
446 }
447 pfile += 1;
448
449 for(i_index = 0; i_index < 6; i_index ++)
450 {
451 if(*pfile >= '0' && *pfile <= '9')
452 {
453 offset |= (*pfile - '0') << offset_shift;
454 }
455 else if(*pfile >= 'A' && *pfile <= 'F')
456 {
457 offset |= (*pfile - 'A' + 0xA) << offset_shift;
458 }
459 else if(*pfile >= 'a' && *pfile <= 'f')
460 {
461 offset |= (*pfile - 'a' + 0xA) << offset_shift;
462 }
463 else
464 {
465 return INVAILD_OFFSET_ADDR;
466 }
467 pfile ++;
468 offset_shift -= 4;
469 }
470
471 if((offset < (flash_iap.flash_app_addr - flash_iap.flash_base_addr)) ||
472 (offset > flash_iap.flash_size ))
473 {
474 return INVAILD_OFFSET_ADDR;
475 }
476 return offset;
477}
478
486uint32_t flash_fat16_sector_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
487{
488 uint32_t file_size = g_file_attr.file_size;
489 uint32_t flash_offset = 0;
490 uint32_t status;
491 static uint32_t s_bin_sp = 0;
492 static uint32_t s_bin_pc = 0;
493
494 if(s_bin_sp == 0 && s_bin_pc == 0)
495 {
496 s_bin_sp = *(uint32_t *)data;
497 s_bin_pc = *(uint32_t *)(data+4);
498 }
499
500 /* check the suffix is .bin or .BIN*/
501 if((fat16_memory_cmp((uint8_t *)&g_file_attr.file_name[8],
502 (uint8_t *)FILE_SUFFIX1_NAME, FILE_SUFFIX1_LEN) == 0) ||
503 (fat16_memory_cmp((uint8_t *)&g_file_attr.file_name[8],
504 (uint8_t *)FILE_SUFFIX2_NAME, FILE_SUFFIX2_LEN) == 0)
505 ||
506 ((s_bin_sp & 0xF0000000) == 0x20000000 && (s_bin_pc & 0xFF000000) == 0x08000000))
507 {
508 /* check the upgrade status */
509 if(flash_iap.msc_up_status == UPGRADE_DONE || flash_iap.msc_up_status == UPGRADE_SUCCESS)
510 {
511 return 0;
512 }
513
514 if(g_file_attr.file_size == 0)
515 {
516 g_file_attr.file_size = flash_iap.flash_app_size;
517 file_match = 1;
518 }
519
520 file_size = g_file_attr.file_size;
521
522 if(flash_iap.msc_up_status == UPGRADE_READY)
523 {
524 /* get offset address from filename */
525 flash_offset = flash_fat16_addr_offset(g_file_attr.file_name);
526
527 if(flash_offset == INVAILD_OFFSET_ADDR)
528 {
529 /* use default app address */
530 flash_iap.write_addr = FLASH_APP_START_ADDR;
531 }
532 else
533 {
534 flash_iap.write_addr = flash_offset + flash_iap.flash_base_addr;
535 }
536 /* clear upgrade flag */
537 flash_fat16_clear_upgrade_flag();
538
539 flash_iap.msc_up_status = UPGRAGE_ONGOING;
540 }
541
542 if(flash_iap.flash_app_size >= g_file_attr.file_size)
543 {
544 if((flash_iap.file_write_nr + len) >= file_size)
545 {
546 len = file_size - flash_iap.file_write_nr;
547 }
548 /* write data to flash and check crc */
549 status = flash_write_data(flash_iap.write_addr + flash_iap.file_write_nr, data, len);
550
551 flash_iap.file_write_nr += len;
552
553 if(status == 0)
554 {
555 if(flash_iap.file_write_nr >= file_size)
556 {
557 /* upgrade finish */
558 flash_iap.file_write_nr = 0;
559 flash_iap.msc_up_status = UPGRADE_SUCCESS;
560 s_bin_sp = 0;
561 s_bin_pc = 0;
562 /* set the upgrade done flag to flash */
563 flash_fat16_set_upgrade_flag();
564 }
565 }
566 else
567 {
568 /* upgrade failed */
569 flash_iap.file_write_nr = 0;
570 flash_iap.msc_up_status = UPGRADE_FAILED;
571 }
572 }
573 else
574 {
575 /* upgrade file is large than flash size */
576 flash_iap.msc_up_status = UPGRADE_LARGE;
577 }
578
579 }
580 else if((fat16_memory_cmp((uint8_t *)&g_file_attr.file_name[0],
581 (uint8_t *)"JUMP", 4) == 0))
582 {
583 /* receive jump command file */
584 flash_iap.msc_up_status = UPGRADE_JUMP;
585 }
586 else
587 {
588 /* unkonw upgrade status */
589 }
590
591 return len;
592}
593
601uint32_t flash_crc_check(uint32_t address, uint8_t *data, uint32_t len)
602{
603 uint32_t flash_crc = 0;
604 uint32_t data_crc = 0;
605 uint32_t i_index = 0;
606 uint32_t wlen = len / sizeof(uint32_t);
607 uint32_t remain_len = len % sizeof(uint32_t);
608 uint32_t *u32data = (uint32_t *)data;
609 uint32_t *flash_addr = (uint32_t *)address;
610
611 /* enable crc clock */
612 crm_periph_clock_enable(CRM_CRC_PERIPH_CLOCK, TRUE);
613
614 if(remain_len)
615 {
616 wlen += 1;
617 for(i_index = 0; i_index < (4 - remain_len); i_index ++)
618 {
619 data[len+i_index] = 0xFF;
620 }
621 }
622
623 /* calculate write buffer */
624 crc_data_reset();
625 for(i_index = 0; i_index < wlen; i_index ++)
626 {
627 data_crc = crc_one_word_calculate(u32data[i_index]);
628 }
629
630 /* calculate flash data */
631 crc_data_reset();
632 for(i_index = 0; i_index < wlen; i_index ++)
633 {
634 flash_crc = crc_one_word_calculate(*flash_addr++);
635 }
636 crm_periph_clock_enable(CRM_CRC_PERIPH_CLOCK, FALSE);
637
638 if(data_crc != flash_crc)
639 return 1;
640
641 return 0;
642
643}
644
652uint32_t flash_read_data(uint32_t address, uint8_t *data, uint32_t len)
653{
654 uint32_t i_index;
655 for(i_index = 0; i_index < len; i_index ++)
656 {
657 data[i_index] = *(uint8_t *)address;
658 address += 1;
659 }
660 return i_index;
661}
662
663
671uint32_t flash_write_data(uint32_t address, uint8_t *data, uint32_t len)
672{
673 uint32_t waddr = address;
674 uint32_t wlength = len;
675 uint32_t i_index = 0;
676 if((address + len) > flash_iap.flash_base_addr + flash_iap.flash_size)
677 {
678 return 1;
679 }
680
681 if((waddr & flash_iap.sector_mask) == 0)
682 {
683 flash_unlock();
684 if(len > flash_iap.sector_size)
685 {
686 for(; wlength >= flash_iap.sector_size; wlength -= flash_iap.sector_size)
687 {
688 flash_sector_erase(waddr);
689 waddr += flash_iap.sector_size;
690 }
691 if(wlength > 0)
692 {
693 flash_sector_erase(waddr);
694 }
695 }
696 else
697 {
698 flash_sector_erase(waddr);
699 }
700
701 flash_lock();
702 }
703
704 waddr = address;
705 flash_unlock();
706 for(i_index = 0; i_index < len; i_index ++)
707 {
708 flash_byte_program(waddr+i_index, data[i_index]);
709 }
710 flash_lock();
711
712 return flash_crc_check(address, data, len);
713}
714
720void flash_fat16_init(void)
721{
722 uint32_t flash_size = *(uint32_t *)0x1FFFF7E0;
723 flash_iap.flash_base_addr = FLASH_BASE;
724 flash_iap.flash_app_addr = FLASH_APP_START_ADDR;
725 flash_iap.write_addr = FLASH_APP_START_ADDR;
726 flash_iap.flash_size = flash_size << 10;
727
728 flash_iap.flash_app_size = flash_iap.flash_size -
729 (flash_iap.flash_app_addr -
730 flash_iap.flash_base_addr);
731
732 if(flash_size < 0x100)
733 {
734 flash_iap.sector_size = FLASH_SECTOR_1K_SIZE;
735 flash_iap.sector_mask = FLASH_SECTOR_1K_ALLGNED;
736 }
737 else
738 {
739 flash_iap.sector_size = FLASH_SECTOR_2K_SIZE;
740 flash_iap.sector_mask = FLASH_SECTOR_2K_ALLGNED;
741 }
742
743}
744
745
746
flash_fat16.h
fat16 file system header file
flash_fat16_set_name
uint32_t flash_fat16_set_name(const uint8_t *file_name, uint8_t len)
set file name
Definition: flash_fat16.c:357
FAT16_SECTOR_SIZE
#define FAT16_SECTOR_SIZE
Definition: flash_fat16.c:34
g_file_attr
fat_dir_type g_file_attr
Definition: flash_fat16.c:170
fat16_sector
static uint8_t fat16_sector[62]
Definition: flash_fat16.c:35
flash_read_data
uint32_t flash_read_data(uint32_t address, uint8_t *data, uint32_t len)
read data from flash
Definition: flash_fat16.c:652
file_match
uint8_t file_match
Definition: flash_fat16.c:173
fat16_root_dir_sector
const uint8_t fat16_root_dir_sector[FAT16_DIR_SIZE]
Definition: flash_fat16.c:106
file_write_nr
uint32_t file_write_nr
Definition: flash_fat16.c:172
flash_fat16_addr_offset
uint32_t flash_fat16_addr_offset(uint8_t *file_name)
get offset address
Definition: flash_fat16.c:437
fat16_table_sector0
const uint8_t fat16_table_sector0[FAT16_TABLE_SIZE]
Definition: flash_fat16.c:147
flash_fat16_clear_upgrade_flag
void flash_fat16_clear_upgrade_flag(void)
clear iap upgrade flag
Definition: flash_fat16.c:243
flash_fat16_get_upgrade_flag
uint8_t flash_fat16_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: flash_fat16.c:268
fat16_memory_memset
uint32_t fat16_memory_memset(uint8_t *dst, uint32_t set, uint32_t len)
memset function
Definition: flash_fat16.c:210
flash_iap
flash_iap_type flash_iap
Definition: flash_fat16.c:171
flash_crc_check
uint32_t flash_crc_check(uint32_t address, uint8_t *data, uint32_t len)
crc check
Definition: flash_fat16.c:601
flash_fat16_write
uint32_t flash_fat16_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
write a logical block address
Definition: flash_fat16.c:329
fat16_memory_cmp
uint32_t fat16_memory_cmp(uint8_t *dst, uint8_t *src, uint32_t len)
memory compare function
Definition: flash_fat16.c:227
flash_fat16_sector_write
uint32_t flash_fat16_sector_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
write sector
Definition: flash_fat16.c:486
flash_fat16_set_upgrade_flag
void flash_fat16_set_upgrade_flag(void)
set iap upgrade complete flag
Definition: flash_fat16.c:255
flash_write_data
uint32_t flash_write_data(uint32_t address, uint8_t *data, uint32_t len)
write data to flash
Definition: flash_fat16.c:671
fat16_memory_copy
uint32_t fat16_memory_copy(uint8_t *dst, const uint8_t *src, uint32_t len)
memory copy function
Definition: flash_fat16.c:193
flash_fat16_init
void flash_fat16_init(void)
flash fat16 iap init
Definition: flash_fat16.c:720
flash_fat16_boot_dir_write
uint32_t flash_fat16_boot_dir_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
boot dir write
Definition: flash_fat16.c:379
flash_fat16_read
uint32_t flash_fat16_read(uint32_t fat_lbk, uint8_t *data, uint32_t len)
read a logical block address
Definition: flash_fat16.c:288
fat16_file_name
uint8_t fat16_file_name[FAT16_FILENAME_SIZE]
Definition: flash_fat16.c:155
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
crc_data_reset
void crc_data_reset(void)
reset the crc data register.
Definition: at32f403_crc.c:47
crc_one_word_calculate
uint32_t crc_one_word_calculate(uint32_t data)
compute the 32-bit crc of a given data word(32-bit).
Definition: at32f403_crc.c:58
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_CRC_PERIPH_CLOCK
@ CRM_CRC_PERIPH_CLOCK
Definition: at32f403_crm.h:104
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_byte_program
flash_status_type flash_byte_program(uint32_t address, uint8_t data)
program a byte at a specified address.
Definition: at32f403_flash.c:757
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
FLASH_APP_START_ADDR
#define FLASH_APP_START_ADDR
Definition: flash_fat16.h:58
FLASH_SECTOR_1K_ALLGNED
#define FLASH_SECTOR_1K_ALLGNED
Definition: flash_fat16.h:64
FAT16_TABLE_SIZE
#define FAT16_TABLE_SIZE
Definition: flash_fat16.h:47
INVAILD_OFFSET_ADDR
#define INVAILD_OFFSET_ADDR
Definition: flash_fat16.h:73
FLASH_FAT16_2_ADDR
#define FLASH_FAT16_2_ADDR
Definition: flash_fat16.h:54
FLASH_FAT16_1_ADDR
#define FLASH_FAT16_1_ADDR
Definition: flash_fat16.h:53
FLASH_FAT16_ROOT_ADDR
#define FLASH_FAT16_ROOT_ADDR
Definition: flash_fat16.h:55
FAT16_DIR_SIZE
#define FAT16_DIR_SIZE
Definition: flash_fat16.h:50
FLASH_SECTOR_2K_SIZE
#define FLASH_SECTOR_2K_SIZE
Definition: flash_fat16.h:61
FILE_SUFFIX1_NAME
#define FILE_SUFFIX1_NAME
Definition: flash_fat16.h:70
FLASH_FAT16_FILE_START_ADDR
#define FLASH_FAT16_FILE_START_ADDR
Definition: flash_fat16.h:56
FILE_SUFFIX2_LEN
#define FILE_SUFFIX2_LEN
Definition: flash_fat16.h:69
FLASH_SECTOR_2K_ALLGNED
#define FLASH_SECTOR_2K_ALLGNED
Definition: flash_fat16.h:65
FLASH_FAT16_BOOT_SECTOR_ADDR
#define FLASH_FAT16_BOOT_SECTOR_ADDR
Definition: flash_fat16.h:52
FILE_SUFFIX1_LEN
#define FILE_SUFFIX1_LEN
Definition: flash_fat16.h:68
FAT16_BYTE_PER_SIZE
#define FAT16_BYTE_PER_SIZE
Definition: flash_fat16.h:48
FILE_SUFFIX2_NAME
#define FILE_SUFFIX2_NAME
Definition: flash_fat16.h:71
FAT16_FILENAME_SIZE
#define FAT16_FILENAME_SIZE
Definition: flash_fat16.h:49
FLASH_SECTOR_1K_SIZE
#define FLASH_SECTOR_1K_SIZE
Definition: flash_fat16.h:60
UPGRADE_LARGE
@ UPGRADE_LARGE
Definition: flash_fat16.h:84
UPGRADE_JUMP
@ UPGRADE_JUMP
Definition: flash_fat16.h:87
UPGRADE_FAILED
@ UPGRADE_FAILED
Definition: flash_fat16.h:83
UPGRADE_SUCCESS
@ UPGRADE_SUCCESS
Definition: flash_fat16.h:82
UPGRADE_READY
@ UPGRADE_READY
Definition: flash_fat16.h:80
UPGRAGE_ONGOING
@ UPGRAGE_ONGOING
Definition: flash_fat16.h:81
UPGRADE_DONE
@ UPGRADE_DONE
Definition: flash_fat16.h:86
IAP_UPGRADE_COMPLETE_FLAG
#define IAP_UPGRADE_COMPLETE_FLAG
Definition: hid_iap_class.h:76
IAP_FAILED
@ IAP_FAILED
Definition: hid_iap_class.h:87
IAP_SUCCESS
@ IAP_SUCCESS
Definition: hid_iap_class.h:85
fat_dir_type
Definition: flash_fat16.h:91
fat_dir_type::write_data
uint16_t write_data
Definition: flash_fat16.h:101
fat_dir_type::file_size
uint32_t file_size
Definition: flash_fat16.h:103
fat_dir_type::write_time
uint16_t write_time
Definition: flash_fat16.h:100
fat_dir_type::file_name
uint8_t file_name[11]
Definition: flash_fat16.h:92
fat_dir_type::attr
uint8_t attr
Definition: flash_fat16.h:93
flash_iap_type
Definition: flash_fat16.h:107
flash_iap_type::flash_size
uint32_t flash_size
Definition: flash_fat16.h:110
flash_iap_type::msc_up_status
upgrade_status_type msc_up_status
Definition: flash_fat16.h:120
flash_iap_type::flash_base_addr
uint32_t flash_base_addr
Definition: flash_fat16.h:108
flash_iap_type::sector_size
uint32_t sector_size
Definition: flash_fat16.h:112
flash_iap_type::sector_mask
uint32_t sector_mask
Definition: flash_fat16.h:113
flash_iap_type::file_write_nr
uint32_t file_write_nr
Definition: flash_fat16.h:119
flash_iap_type::flash_app_size
uint32_t flash_app_size
Definition: flash_fat16.h:111
flash_iap_type::write_addr
uint32_t write_addr
Definition: flash_fat16.h:118
flash_iap_type::flash_app_addr
uint32_t flash_app_addr
Definition: flash_fat16.h:109


AT32F403 Firmwary Library: flash_fat16.h Source File

  • usb_device
  • virtual_msc_iap
  • inc
flash_fat16.h
Go to the documentation of this file.
1
24/* Define to prevent recursive inclusion -------------------------------------*/
25#ifndef __FLASH_FAT16_H
26#define __FLASH_FAT16_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32
33#include "usb_conf.h"
34
46#define FAT16_SECTOR_SIZE 62
47#define FAT16_TABLE_SIZE 4
48#define FAT16_BYTE_PER_SIZE 2048
49#define FAT16_FILENAME_SIZE 11
50#define FAT16_DIR_SIZE 47
51
52#define FLASH_FAT16_BOOT_SECTOR_ADDR 0x00
53#define FLASH_FAT16_1_ADDR 0x3000
54#define FLASH_FAT16_2_ADDR 0x3800
55#define FLASH_FAT16_ROOT_ADDR 0x4000
56#define FLASH_FAT16_FILE_START_ADDR 0x8800
57
58#define FLASH_APP_START_ADDR 0x08005000
59
60#define FLASH_SECTOR_1K_SIZE 0x400
61#define FLASH_SECTOR_2K_SIZE 0x800
62#define FLASH_SECTOR_4K_SIZE 0x1000
63
64#define FLASH_SECTOR_1K_ALLGNED 0x3FF
65#define FLASH_SECTOR_2K_ALLGNED 0x7FF
66#define FLASH_SECTOR_4K_ALLGNED 0xFFF
67
68#define FILE_SUFFIX1_LEN 3
69#define FILE_SUFFIX2_LEN 3
70#define FILE_SUFFIX1_NAME "BIN"
71#define FILE_SUFFIX2_NAME "bin"
72
73#define INVAILD_OFFSET_ADDR 0xFFFFFFFF
74#define IAP_UPGRADE_COMPLETE_FLAG 0x41544B38
75#define IAP_SUCCESS 0
76#define IAP_FAILED 1
77
78typedef enum
79{
80 UPGRADE_READY = 0,
81 UPGRAGE_ONGOING,
82 UPGRADE_SUCCESS,
83 UPGRADE_FAILED,
84 UPGRADE_LARGE,
85 UPGRADE_UNKNOWN,
86 UPGRADE_DONE,
87 UPGRADE_JUMP
88}upgrade_status_type;
89
90typedef struct
91{
92 uint8_t file_name[11];
93 uint8_t attr;
94 uint8_t res;
95 uint8_t create_time_tenth;
96 uint16_t create_time;
97 uint16_t create_data;
98 uint16_t last_access_data;
99 uint16_t clus_high;
100 uint16_t write_time;
101 uint16_t write_data;
102 uint16_t clus_low;
103 uint32_t file_size;
104}fat_dir_type;
105
106typedef struct
107{
108 uint32_t flash_base_addr;
109 uint32_t flash_app_addr;
110 uint32_t flash_size;
111 uint32_t flash_app_size;
112 uint32_t sector_size;
113 uint32_t sector_mask;
114 uint32_t firmware_length;
115 uint32_t write_crc;
116 uint32_t read_crc;
117
118 uint32_t write_addr;
119 uint32_t file_write_nr;
120 upgrade_status_type msc_up_status;
121}flash_iap_type;
122
123extern flash_iap_type flash_iap;
124
125uint32_t flash_fat16_write(uint32_t fat_lbk, uint8_t *data, uint32_t len);
126uint32_t flash_fat16_read(uint32_t fat_lbk, uint8_t *data, uint32_t len);
127
128void flash_fat16_init(void);
129void flash_fat16_loop_status(void);
130uint32_t flash_fat16_set_name(const uint8_t *file_name, uint8_t len);
131uint8_t flash_fat16_get_upgrade_flag(void);
132
145#ifdef __cplusplus
146}
147#endif
148
149#endif
150
upgrade_status_type
upgrade_status_type
Definition: flash_fat16.h:79
flash_fat16_set_name
uint32_t flash_fat16_set_name(const uint8_t *file_name, uint8_t len)
set file name
Definition: flash_fat16.c:357
flash_fat16_get_upgrade_flag
uint8_t flash_fat16_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: flash_fat16.c:268
flash_fat16_loop_status
void flash_fat16_loop_status(void)
loop status
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:159
flash_iap
flash_iap_type flash_iap
Definition: flash_fat16.c:171
flash_fat16_write
uint32_t flash_fat16_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
write a logical block address
Definition: flash_fat16.c:329
flash_fat16_init
void flash_fat16_init(void)
flash fat16 iap init
Definition: flash_fat16.c:720
flash_fat16_read
uint32_t flash_fat16_read(uint32_t fat_lbk, uint8_t *data, uint32_t len)
read a logical block address
Definition: flash_fat16.c:288
UPGRADE_LARGE
@ UPGRADE_LARGE
Definition: flash_fat16.h:84
UPGRADE_UNKNOWN
@ UPGRADE_UNKNOWN
Definition: flash_fat16.h:85
UPGRADE_JUMP
@ UPGRADE_JUMP
Definition: flash_fat16.h:87
UPGRADE_FAILED
@ UPGRADE_FAILED
Definition: flash_fat16.h:83
UPGRADE_SUCCESS
@ UPGRADE_SUCCESS
Definition: flash_fat16.h:82
UPGRADE_READY
@ UPGRADE_READY
Definition: flash_fat16.h:80
UPGRAGE_ONGOING
@ UPGRAGE_ONGOING
Definition: flash_fat16.h:81
UPGRADE_DONE
@ UPGRADE_DONE
Definition: flash_fat16.h:86
fat_dir_type
Definition: flash_fat16.h:91
fat_dir_type::clus_low
uint16_t clus_low
Definition: flash_fat16.h:102
fat_dir_type::write_data
uint16_t write_data
Definition: flash_fat16.h:101
fat_dir_type::file_size
uint32_t file_size
Definition: flash_fat16.h:103
fat_dir_type::last_access_data
uint16_t last_access_data
Definition: flash_fat16.h:98
fat_dir_type::write_time
uint16_t write_time
Definition: flash_fat16.h:100
fat_dir_type::create_time
uint16_t create_time
Definition: flash_fat16.h:96
fat_dir_type::create_time_tenth
uint8_t create_time_tenth
Definition: flash_fat16.h:95
fat_dir_type::create_data
uint16_t create_data
Definition: flash_fat16.h:97
fat_dir_type::clus_high
uint16_t clus_high
Definition: flash_fat16.h:99
fat_dir_type::res
uint8_t res
Definition: flash_fat16.h:94
fat_dir_type::attr
uint8_t attr
Definition: flash_fat16.h:93
flash_iap_type
Definition: flash_fat16.h:107
flash_iap_type::flash_size
uint32_t flash_size
Definition: flash_fat16.h:110
flash_iap_type::read_crc
uint32_t read_crc
Definition: flash_fat16.h:116
flash_iap_type::msc_up_status
upgrade_status_type msc_up_status
Definition: flash_fat16.h:120
flash_iap_type::flash_base_addr
uint32_t flash_base_addr
Definition: flash_fat16.h:108
flash_iap_type::write_crc
uint32_t write_crc
Definition: flash_fat16.h:115
flash_iap_type::sector_size
uint32_t sector_size
Definition: flash_fat16.h:112
flash_iap_type::firmware_length
uint32_t firmware_length
Definition: flash_fat16.h:114
flash_iap_type::sector_mask
uint32_t sector_mask
Definition: flash_fat16.h:113
flash_iap_type::file_write_nr
uint32_t file_write_nr
Definition: flash_fat16.h:119
flash_iap_type::flash_app_size
uint32_t flash_app_size
Definition: flash_fat16.h:111
flash_iap_type::write_addr
uint32_t write_addr
Definition: flash_fat16.h:118
flash_iap_type::flash_app_addr
uint32_t flash_app_addr
Definition: flash_fat16.h:109
usb_conf.h
usb config header file


AT32F403 Firmwary Library: hid_iap_class.c Source File

  • middlewares
  • usbd_class
  • hid_iap
hid_iap_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "hid_iap_class.h"
26#include "hid_iap_desc.h"
27
42static usb_sts_type class_init_handler(void *udev);
43static usb_sts_type class_clear_handler(void *udev);
44static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
45static usb_sts_type class_ept0_tx_handler(void *udev);
46static usb_sts_type class_ept0_rx_handler(void *udev);
47static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
49static usb_sts_type class_sof_handler(void *udev);
50static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
51
52 iap_info_type iap_info;
53
54/* usb device class handler */
55 usbd_class_handler hid_iap_class_handler =
56{
57 class_init_handler,
58 class_clear_handler,
59 class_setup_handler,
60 class_ept0_tx_handler,
61 class_ept0_rx_handler,
62 class_in_handler,
63 class_out_handler,
64 class_sof_handler,
65 class_event_handler,
66 &iap_info
67};
68
74static usb_sts_type class_init_handler(void *udev)
75{
76 usb_sts_type status = USB_OK;
77 usbd_core_type *pudev = (usbd_core_type *)udev;
78 iap_info_type *piap = (iap_info_type *)pudev->class_handler->pdata;
79 /* open hid iap in endpoint */
80 usbd_ept_open(pudev, USBD_HIDIAP_IN_EPT, EPT_INT_TYPE, USBD_HIDIAP_IN_MAXPACKET_SIZE);
81
82 /* open hid iap out endpoint */
83 usbd_ept_open(pudev, USBD_HIDIAP_OUT_EPT, EPT_INT_TYPE, USBD_HIDIAP_OUT_MAXPACKET_SIZE);
84
85 /* set out endpoint to receive status */
86 usbd_ept_recv(pudev, USBD_HIDIAP_OUT_EPT, piap->g_rxhid_buff, USBD_HIDIAP_OUT_MAXPACKET_SIZE);
87
88 return status;
89}
90
96static usb_sts_type class_clear_handler(void *udev)
97{
98 usb_sts_type status = USB_OK;
99 usbd_core_type *pudev = (usbd_core_type *)udev;
100
101 /* close hid iap in endpoint */
102 usbd_ept_close(pudev, USBD_HIDIAP_IN_EPT);
103
104 /* close hid iap out endpoint */
105 usbd_ept_close(pudev, USBD_HIDIAP_OUT_EPT);
106
107 return status;
108}
109
116static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
117{
118 usb_sts_type status = USB_OK;
119 usbd_core_type *pudev = (usbd_core_type *)udev;
120 iap_info_type *piap = (iap_info_type *)pudev->class_handler->pdata;
121 uint16_t len;
122 uint8_t *buf;
123
124 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
125 {
126 /* class request */
127 case USB_REQ_TYPE_CLASS:
128 switch(setup->bRequest)
129 {
130 case HID_REQ_SET_PROTOCOL:
131 piap->hid_protocol = (uint8_t)setup->wValue;
132 break;
133 case HID_REQ_GET_PROTOCOL:
134 usbd_ctrl_send(pudev, (uint8_t *)&piap->hid_protocol, 1);
135 break;
136 case HID_REQ_SET_IDLE:
137 piap->hid_set_idle = (uint8_t)(setup->wValue >> 8);
138 break;
139 case HID_REQ_GET_IDLE:
140 usbd_ctrl_send(pudev, (uint8_t *)&piap->hid_set_idle, 1);
141 break;
142 case HID_REQ_SET_REPORT:
143 piap->hid_state = HID_REQ_SET_REPORT;
144 usbd_ctrl_recv(pudev, piap->hid_set_report, setup->wLength);
145 break;
146 default:
147 usbd_ctrl_unsupport(pudev);
148 break;
149 }
150 break;
151 /* standard request */
152 case USB_REQ_TYPE_STANDARD:
153 switch(setup->bRequest)
154 {
155 case USB_STD_REQ_GET_DESCRIPTOR:
156 if(setup->wValue >> 8 == HID_REPORT_DESC)
157 {
158 len = MIN(USBD_HIDIAP_SIZ_REPORT_DESC, setup->wLength);
159 buf = (uint8_t *)g_usbd_hidiap_report;
160 }
161 else if(setup->wValue >> 8 == HID_DESCRIPTOR_TYPE)
162 {
163 len = MIN(9, setup->wLength);
164 buf = (uint8_t *)g_hidiap_usb_desc;
165 }
166 usbd_ctrl_send(pudev, (uint8_t *)buf, len);
167 break;
168 case USB_STD_REQ_GET_INTERFACE:
169 usbd_ctrl_send(pudev, (uint8_t *)&piap->alt_setting, 1);
170 break;
171 case USB_STD_REQ_SET_INTERFACE:
172 piap->alt_setting = setup->wValue;
173 break;
174 case USB_STD_REQ_CLEAR_FEATURE:
175 break;
176 case USB_STD_REQ_SET_FEATURE:
177 break;
178 default:
179 usbd_ctrl_unsupport(pudev);
180 break;
181 }
182 break;
183 default:
184 usbd_ctrl_unsupport(pudev);
185 break;
186 }
187 return status;
188}
189
195static usb_sts_type class_ept0_tx_handler(void *udev)
196{
197 usb_sts_type status = USB_OK;
198
199 /* ...user code... */
200
201 return status;
202}
203
209static usb_sts_type class_ept0_rx_handler(void *udev)
210{
211 usb_sts_type status = USB_OK;
212 usbd_core_type *pudev = (usbd_core_type *)udev;
213 iap_info_type *piap = (iap_info_type *)pudev->class_handler->pdata;
214 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
215 /* ...user code... */
216 if( piap->hid_state == HID_REQ_SET_REPORT)
217 {
218 /* hid buffer process */
219 piap->hid_state = 0;
220 }
221
222 return status;
223}
224
231static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
232{
233 usb_sts_type status = USB_OK;
234
235 /* ...user code...
236 trans next packet data
237 */
238 usbd_hid_iap_in_complete(udev);
239
240 return status;
241}
242
249static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
250{
251 usb_sts_type status = USB_OK;
252 usbd_core_type *pudev = (usbd_core_type *)udev;
253 iap_info_type *piap = (iap_info_type *)pudev->class_handler->pdata;
254
255 /* get endpoint receive data length */
256 uint32_t recv_len = usbd_get_recv_len(pudev, ept_num);
257
258 /* hid iap process */
259 usbd_hid_iap_process(udev, piap->g_rxhid_buff, recv_len);
260
261 /* start receive next packet */
262 usbd_ept_recv(pudev, USBD_HIDIAP_OUT_EPT, piap->g_rxhid_buff, USBD_HIDIAP_OUT_MAXPACKET_SIZE);
263
264 return status;
265}
266
272static usb_sts_type class_sof_handler(void *udev)
273{
274 usb_sts_type status = USB_OK;
275
276 /* ...user code... */
277
278 return status;
279}
280
287static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
288{
289 usb_sts_type status = USB_OK;
290 switch(event)
291 {
292 case USBD_RESET_EVENT:
293
294 /* ...user code... */
295
296 break;
297 case USBD_SUSPEND_EVENT:
298
299 /* ...user code... */
300
301 break;
302 case USBD_WAKEUP_EVENT:
303 /* ...user code... */
304
305 break;
306 default:
307 break;
308 }
309 return status;
310}
311
319 usb_sts_type usb_iap_class_send_report(void *udev, uint8_t *report, uint16_t len)
320{
321 usb_sts_type status = USB_OK;
322 usbd_core_type *pudev = (usbd_core_type *)udev;
323
324 if(usbd_connect_state_get(pudev) == USB_CONN_STATE_CONFIGURED)
325 usbd_ept_send(pudev, USBD_HIDIAP_IN_EPT, report, len);
326
327 return status;
328}
329
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
USBD_HIDIAP_OUT_MAXPACKET_SIZE
#define USBD_HIDIAP_OUT_MAXPACKET_SIZE
Definition: hid_iap_class.h:54
usbd_hid_iap_process
iap_result_type usbd_hid_iap_process(void *udev, uint8_t *report, uint16_t len)
usb device iap function
Definition: app_led3_toggle/src/hid_iap_user.c:192
USBD_HIDIAP_IN_EPT
#define USBD_HIDIAP_IN_EPT
Definition: hid_iap_class.h:50
USBD_HIDIAP_OUT_EPT
#define USBD_HIDIAP_OUT_EPT
Definition: hid_iap_class.h:51
USBD_HIDIAP_IN_MAXPACKET_SIZE
#define USBD_HIDIAP_IN_MAXPACKET_SIZE
Definition: hid_iap_class.h:53
usbd_hid_iap_in_complete
void usbd_hid_iap_in_complete(void *udev)
usb device in transfer complete function
Definition: app_led3_toggle/src/hid_iap_user.c:238
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: hid_iap_class.c:272
iap_info
iap_info_type iap_info
Definition: hid_iap_class.c:52
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: hid_iap_class.c:231
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: hid_iap_class.c:96
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: hid_iap_class.c:116
usb_iap_class_send_report
usb_sts_type usb_iap_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: hid_iap_class.c:319
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: hid_iap_class.c:195
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: hid_iap_class.c:209
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: hid_iap_class.c:287
hid_iap_class_handler
usbd_class_handler hid_iap_class_handler
Definition: hid_iap_class.c:55
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: hid_iap_class.c:74
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: hid_iap_class.c:249
g_hidiap_usb_desc
uint8_t g_hidiap_usb_desc[9]
usb hid descriptor
Definition: hid_iap_desc.c:201
USBD_HIDIAP_SIZ_REPORT_DESC
#define USBD_HIDIAP_SIZ_REPORT_DESC
Definition: hid_iap_desc.h:55
g_usbd_hidiap_report
uint8_t g_usbd_hidiap_report[32]
usb hid report descriptor
Definition: hid_iap_desc.c:170
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
HID_DESCRIPTOR_TYPE
#define HID_DESCRIPTOR_TYPE
Definition: usb_std.h:234
HID_REQ_GET_PROTOCOL
#define HID_REQ_GET_PROTOCOL
Definition: usb_std.h:229
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
HID_REQ_SET_PROTOCOL
#define HID_REQ_SET_PROTOCOL
usb hid class request code define
Definition: usb_std.h:228
HID_REPORT_DESC
#define HID_REPORT_DESC
Definition: usb_std.h:235
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
HID_REQ_SET_IDLE
#define HID_REQ_SET_IDLE
Definition: usb_std.h:230
HID_REQ_GET_IDLE
#define HID_REQ_GET_IDLE
Definition: usb_std.h:231
HID_REQ_SET_REPORT
#define HID_REQ_SET_REPORT
Definition: usb_std.h:232
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
hid_iap_class.h
usb hid iap header file
hid_iap_desc.h
usb hid descriptor header file
iap_info_type
Definition: hid_iap_class.h:103
iap_info_type::hid_state
uint32_t hid_state
Definition: hid_iap_class.h:128
iap_info_type::hid_set_idle
uint32_t hid_set_idle
Definition: hid_iap_class.h:126
iap_info_type::hid_protocol
uint32_t hid_protocol
Definition: hid_iap_class.h:125
iap_info_type::hid_set_report
uint8_t hid_set_report[64]
Definition: hid_iap_class.h:129
iap_info_type::alt_setting
uint32_t alt_setting
Definition: hid_iap_class.h:127
iap_info_type::g_rxhid_buff
uint8_t g_rxhid_buff[0x40]
Definition: hid_iap_class.h:124
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: hid_iap_class.h Source File

  • middlewares
  • usbd_class
  • hid_iap
hid_iap_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __HID_IAP_CLASS_H
27#define __HID_IAP_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
36
50#define USBD_HIDIAP_IN_EPT 0x81
51#define USBD_HIDIAP_OUT_EPT 0x01
52
53#define USBD_HIDIAP_IN_MAXPACKET_SIZE 0x40
54#define USBD_HIDIAP_OUT_MAXPACKET_SIZE 0x40
55
56#define FLASH_SIZE_REG() ((*(uint32_t *)0x1FFFF7E0) & 0xFFFF) /*Get Flash size*/
57#define KB_TO_B(kb) ((kb) << 10)
58
59#define SECTOR_SIZE_1K 0x400
60#define SECTOR_SIZE_2K 0x800
61#define SECTOR_SIZE_4K 0x1000
62
66#define IAP_CMD_IDLE 0x5AA0
67#define IAP_CMD_START 0x5AA1
68#define IAP_CMD_ADDR 0x5AA2
69#define IAP_CMD_DATA 0x5AA3
70#define IAP_CMD_FINISH 0x5AA4
71#define IAP_CMD_CRC 0x5AA5
72#define IAP_CMD_JMP 0x5AA6
73#define IAP_CMD_GET 0x5AA7
74
75#define HID_IAP_BUFFER_LEN 1024
76#define IAP_UPGRADE_COMPLETE_FLAG 0x41544B38
77#define CONVERT_ENDIAN(dwValue) ((dwValue >> 24) | ((dwValue >> 8) & 0xFF00) | \
78 ((dwValue << 8) & 0xFF0000) | (dwValue << 24) )
79
80#define IAP_ACK 0xFF00
81#define IAP_NACK 0x00FF
82
83typedef enum
84{
85 IAP_SUCCESS,
86 IAP_WAIT,
87 IAP_FAILED
88}iap_result_type;
89
90typedef enum
91{
92 IAP_STS_IDLE,
93 IAP_STS_START,
94 IAP_STS_ADDR,
95 IAP_STS_DATA,
96 IAP_STS_FINISH,
97 IAP_STS_CRC,
98 IAP_STS_JMP_WAIT,
99 IAP_STS_JMP,
100}iap_machine_state_type;
101
102typedef struct
103{
104
105 uint8_t iap_fifo[HID_IAP_BUFFER_LEN];
106 uint8_t iap_rx[USBD_HIDIAP_OUT_MAXPACKET_SIZE];
107 uint8_t iap_tx[USBD_HIDIAP_IN_MAXPACKET_SIZE];
108
109 uint32_t fifo_length;
110 uint32_t tx_length;
111
112 uint32_t app_address;
113 uint32_t iap_address;
114 uint32_t flag_address;
115
116 uint32_t flash_start_address;
117 uint32_t flash_end_address;
118
119 uint32_t sector_size;
120 uint32_t flash_size;
121
122 uint32_t respond_flag;
123
124 uint8_t g_rxhid_buff[USBD_HIDIAP_OUT_MAXPACKET_SIZE];
125 uint32_t hid_protocol;
126 uint32_t hid_set_idle;
127 uint32_t alt_setting;
128 uint32_t hid_state;
129 uint8_t hid_set_report[64];
130
131 iap_machine_state_type state;
132}iap_info_type;
133
134extern usbd_class_handler hid_iap_class_handler;
135extern iap_info_type iap_info;
136 usb_sts_type usb_iap_class_send_report(void *udev, uint8_t *report, uint16_t len);
137 iap_result_type usbd_hid_iap_process(void *udev, uint8_t *report, uint16_t len);
138void usbd_hid_iap_in_complete(void *udev);
139
151#ifdef __cplusplus
152}
153#endif
154
155#endif
156
157
iap_info
iap_info_type iap_info
Definition: hid_iap_class.c:52
HID_IAP_BUFFER_LEN
#define HID_IAP_BUFFER_LEN
Definition: hid_iap_class.h:75
USBD_HIDIAP_OUT_MAXPACKET_SIZE
#define USBD_HIDIAP_OUT_MAXPACKET_SIZE
Definition: hid_iap_class.h:54
usb_iap_class_send_report
usb_sts_type usb_iap_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: hid_iap_class.c:319
iap_result_type
iap_result_type
Definition: hid_iap_class.h:84
usbd_hid_iap_process
iap_result_type usbd_hid_iap_process(void *udev, uint8_t *report, uint16_t len)
usb device iap function
Definition: app_led3_toggle/src/hid_iap_user.c:192
hid_iap_class_handler
usbd_class_handler hid_iap_class_handler
Definition: hid_iap_class.c:55
iap_machine_state_type
iap_machine_state_type
Definition: hid_iap_class.h:91
USBD_HIDIAP_IN_MAXPACKET_SIZE
#define USBD_HIDIAP_IN_MAXPACKET_SIZE
Definition: hid_iap_class.h:53
usbd_hid_iap_in_complete
void usbd_hid_iap_in_complete(void *udev)
usb device in transfer complete function
Definition: app_led3_toggle/src/hid_iap_user.c:238
IAP_WAIT
@ IAP_WAIT
Definition: hid_iap_class.h:86
IAP_FAILED
@ IAP_FAILED
Definition: hid_iap_class.h:87
IAP_SUCCESS
@ IAP_SUCCESS
Definition: hid_iap_class.h:85
IAP_STS_START
@ IAP_STS_START
Definition: hid_iap_class.h:93
IAP_STS_JMP
@ IAP_STS_JMP
Definition: hid_iap_class.h:99
IAP_STS_DATA
@ IAP_STS_DATA
Definition: hid_iap_class.h:95
IAP_STS_JMP_WAIT
@ IAP_STS_JMP_WAIT
Definition: hid_iap_class.h:98
IAP_STS_IDLE
@ IAP_STS_IDLE
Definition: hid_iap_class.h:92
IAP_STS_FINISH
@ IAP_STS_FINISH
Definition: hid_iap_class.h:96
IAP_STS_ADDR
@ IAP_STS_ADDR
Definition: hid_iap_class.h:94
IAP_STS_CRC
@ IAP_STS_CRC
Definition: hid_iap_class.h:97
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
iap_info_type
Definition: hid_iap_class.h:103
iap_info_type::respond_flag
uint32_t respond_flag
Definition: hid_iap_class.h:122
iap_info_type::hid_state
uint32_t hid_state
Definition: hid_iap_class.h:128
iap_info_type::flag_address
uint32_t flag_address
Definition: hid_iap_class.h:114
iap_info_type::sector_size
uint32_t sector_size
Definition: hid_iap_class.h:119
iap_info_type::iap_address
uint32_t iap_address
Definition: hid_iap_class.h:113
iap_info_type::flash_start_address
uint32_t flash_start_address
Definition: hid_iap_class.h:116
iap_info_type::flash_end_address
uint32_t flash_end_address
Definition: hid_iap_class.h:117
iap_info_type::fifo_length
uint32_t fifo_length
Definition: hid_iap_class.h:109
iap_info_type::hid_set_idle
uint32_t hid_set_idle
Definition: hid_iap_class.h:126
iap_info_type::hid_protocol
uint32_t hid_protocol
Definition: hid_iap_class.h:125
iap_info_type::tx_length
uint32_t tx_length
Definition: hid_iap_class.h:110
iap_info_type::flash_size
uint32_t flash_size
Definition: hid_iap_class.h:120
iap_info_type::app_address
uint32_t app_address
Definition: hid_iap_class.h:112
iap_info_type::alt_setting
uint32_t alt_setting
Definition: hid_iap_class.h:127
iap_info_type::state
iap_machine_state_type state
Definition: hid_iap_class.h:131
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: hid_iap_desc.c Source File

  • middlewares
  • usbd_class
  • hid_iap
hid_iap_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "hid_iap_desc.h"
28
29
44static usbd_desc_t *get_device_descriptor(void);
45static usbd_desc_t *get_device_qualifier(void);
46static usbd_desc_t *get_device_configuration(void);
47static usbd_desc_t *get_device_other_speed(void);
48static usbd_desc_t *get_device_lang_id(void);
49static usbd_desc_t *get_device_manufacturer_string(void);
50static usbd_desc_t *get_device_product_string(void);
51static usbd_desc_t *get_device_serial_string(void);
52static usbd_desc_t *get_device_interface_string(void);
53static usbd_desc_t *get_device_config_string(void);
54
55static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
56static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
57static void get_serial_num(void);
58#if defined ( __ICCARM__ ) /* iar compiler */
59 #pragma data_alignment=4
60#endif
61ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
62
66 usbd_desc_handler hid_iap_desc_handler =
67{
68 get_device_descriptor,
69 get_device_qualifier,
70 get_device_configuration,
71 get_device_other_speed,
72 get_device_lang_id,
73 get_device_manufacturer_string,
74 get_device_product_string,
75 get_device_serial_string,
76 get_device_interface_string,
77 get_device_config_string,
78};
79
83#if defined ( __ICCARM__ ) /* iar compiler */
84 #pragma data_alignment=4
85#endif
86ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
87{
88 USB_DEVICE_DESC_LEN, /* bLength */
89 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
90 0x00, /* bcdUSB */
91 0x02,
92 0x00, /* bDeviceClass */
93 0x00, /* bDeviceSubClass */
94 0x00, /* bDeviceProtocol */
95 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
96 LBYTE(USBD_HIDIAP_VENDOR_ID), /* idVendor */
97 HBYTE(USBD_HIDIAP_VENDOR_ID), /* idVendor */
98 LBYTE(USBD_HIDIAP_PRODUCT_ID), /* idProduct */
99 HBYTE(USBD_HIDIAP_PRODUCT_ID), /* idProduct */
100 0x00, /* bcdDevice rel. 2.00 */
101 0x02,
102 USB_MFC_STRING, /* Index of manufacturer string */
103 USB_PRODUCT_STRING, /* Index of product string */
104 USB_SERIAL_STRING, /* Index of serial number string */
105 1 /* bNumConfigurations */
106};
107
111#if defined ( __ICCARM__ ) /* iar compiler */
112 #pragma data_alignment=4
113#endif
114ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_HIDIAP_CONFIG_DESC_SIZE] ALIGNED_TAIL =
115{
116 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
117 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
118 LBYTE(USBD_HIDIAP_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
119 HBYTE(USBD_HIDIAP_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
120 0x01, /* bNumInterfaces: 1 interface */
121 0x01, /* bConfigurationValue: configuration value */
122 0x00, /* iConfiguration: index of string descriptor describing
123 the configuration */
124 0xC0, /* bmAttributes: self powered */
125 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
126
127 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
128 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
129 0x00, /* bInterfaceNumber: number of interface */
130 0x00, /* bAlternateSetting: alternate set */
131 0x02, /* bNumEndpoints: number of endpoints */
132 USB_CLASS_CODE_HID, /* bInterfaceClass: class code hid */
133 0x00, /* bInterfaceSubClass: subclass code */
134 0x00, /* bInterfaceProtocol: protocol code */
135 0x00, /* iInterface: index of string descriptor */
136
137 0x09, /* bLength: size of HID descriptor in bytes */
138 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
139 LBYTE(HIDIAP_BCD_NUM),
140 HBYTE(HIDIAP_BCD_NUM), /* bcdHID: HID class specification release number */
141 0x00, /* bCountryCode: hardware target conutry */
142 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
143 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
144 LBYTE(sizeof(g_usbd_hidiap_report)),
145 HBYTE(sizeof(g_usbd_hidiap_report)), /* wDescriptorLength: total length of reprot descriptor */
146
147 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
148 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
149 USBD_HIDIAP_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
150 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
151 LBYTE(USBD_HIDIAP_IN_MAXPACKET_SIZE),
152 HBYTE(USBD_HIDIAP_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
153 HIDIAP_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
154
155 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
156 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
157 USBD_HIDIAP_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
158 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
159 LBYTE(USBD_HIDIAP_OUT_MAXPACKET_SIZE),
160 HBYTE(USBD_HIDIAP_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
161 HIDIAP_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
162};
163
167#if defined ( __ICCARM__ ) /* iar compiler */
168 #pragma data_alignment=4
169#endif
170ALIGNED_HEAD uint8_t g_usbd_hidiap_report[USBD_HIDIAP_SIZ_REPORT_DESC] ALIGNED_TAIL =
171{
172 0x06, 0xFF, 0x00, /* USAGE_PAGE(Vendor Page:0xFF00) */
173 0x09, 0x01, /* USAGE (Demo Kit) */
174 0xa1, 0x01, /* COLLECTION (Application) */
175
176 /* 6 */
177 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
178 0x25, 0xFF, /* LOGICAL_MAXIMUM (255) */
179 0x75, 0x08, /* REPORT_SIZE (8) */
180 0x95, 0x40, /* REPORT_COUNT (64) */
181
182 0x09, 0x01,
183 0x81, 0x02,
184 0x95, 0x40,
185
186 0x09, 0x01,
187 0x91, 0x02,
188 0x95, 0x01,
189
190 0x09, 0x01,
191 0xB1, 0x02,
192 0xC0
193};
194
198#if defined ( __ICCARM__ ) /* iar compiler */
199 #pragma data_alignment=4
200#endif
201ALIGNED_HEAD uint8_t g_hidiap_usb_desc[9] ALIGNED_TAIL =
202{
203 0x09, /* bLength: size of HID descriptor in bytes */
204 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
205 LBYTE(HIDIAP_BCD_NUM),
206 HBYTE(HIDIAP_BCD_NUM), /* bcdHID: HID class specification release number */
207 0x00, /* bCountryCode: hardware target conutry */
208 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
209 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
210 LBYTE(sizeof(g_usbd_hidiap_report)),
211 HBYTE(sizeof(g_usbd_hidiap_report)), /* wDescriptorLength: total length of reprot descriptor */
212};
213
214
218#if defined ( __ICCARM__ ) /* iar compiler */
219 #pragma data_alignment=4
220#endif
221ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_HIDIAP_SIZ_STRING_LANGID] ALIGNED_TAIL =
222{
223 USBD_HIDIAP_SIZ_STRING_LANGID,
224 USB_DESCIPTOR_TYPE_STRING,
225 0x09,
226 0x04,
227};
228
232#if defined ( __ICCARM__ ) /* iar compiler */
233 #pragma data_alignment=4
234#endif
235ALIGNED_HEAD static uint8_t g_string_serial[USBD_HIDIAP_SIZ_STRING_SERIAL] ALIGNED_TAIL =
236{
237 USBD_HIDIAP_SIZ_STRING_SERIAL,
238 USB_DESCIPTOR_TYPE_STRING,
239};
240
241
242/* device descriptor */
243static usbd_desc_t device_descriptor =
244{
245 USB_DEVICE_DESC_LEN,
246 g_usbd_descriptor
247};
248
249/* config descriptor */
250static usbd_desc_t config_descriptor =
251{
252 USBD_HIDIAP_CONFIG_DESC_SIZE,
253 g_usbd_configuration
254};
255
256/* langid descriptor */
257static usbd_desc_t langid_descriptor =
258{
259 USBD_HIDIAP_SIZ_STRING_LANGID,
260 g_string_lang_id
261};
262
263/* serial descriptor */
264static usbd_desc_t serial_descriptor =
265{
266 USBD_HIDIAP_SIZ_STRING_SERIAL,
267 g_string_serial
268};
269
270static usbd_desc_t vp_desc;
271
278static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
279{
280 uint16_t str_len = 0, id_pos = 2;
281 uint8_t *tmp_str = string;
282
283 while(*tmp_str != '\0')
284 {
285 str_len ++;
286 unicode_buf[id_pos ++] = *tmp_str ++;
287 unicode_buf[id_pos ++] = 0x00;
288 }
289
290 str_len = str_len * 2 + 2;
291 unicode_buf[0] = str_len;
292 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
293
294 return str_len;
295}
296
304static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
305{
306 uint8_t idx = 0;
307
308 for( idx = 0 ; idx < len ; idx ++)
309 {
310 if( ((value >> 28)) < 0xA )
311 {
312 pbuf[ 2 * idx] = (value >> 28) + '0';
313 }
314 else
315 {
316 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
317 }
318
319 value = value << 4;
320
321 pbuf[2 * idx + 1] = 0;
322 }
323}
324
330static void get_serial_num(void)
331{
332 uint32_t serial0, serial1, serial2;
333
334 serial0 = *(uint32_t*)MCU_ID1;
335 serial1 = *(uint32_t*)MCU_ID2;
336 serial2 = *(uint32_t*)MCU_ID3;
337
338 serial0 += serial2;
339
340 if (serial0 != 0)
341 {
342 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
343 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
344 }
345}
346
352static usbd_desc_t *get_device_descriptor(void)
353{
354 return &device_descriptor;
355}
356
362static usbd_desc_t * get_device_qualifier(void)
363{
364 return NULL;
365}
366
372static usbd_desc_t *get_device_configuration(void)
373{
374 return &config_descriptor;
375}
376
382static usbd_desc_t *get_device_other_speed(void)
383{
384 return NULL;
385}
386
392static usbd_desc_t *get_device_lang_id(void)
393{
394 return &langid_descriptor;
395}
396
397
403static usbd_desc_t *get_device_manufacturer_string(void)
404{
405 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_HIDIAP_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
406 vp_desc.descriptor = g_usbd_desc_buffer;
407 return &vp_desc;
408}
409
415static usbd_desc_t *get_device_product_string(void)
416{
417 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_HIDIAP_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
418 vp_desc.descriptor = g_usbd_desc_buffer;
419 return &vp_desc;
420}
421
427static usbd_desc_t *get_device_serial_string(void)
428{
429 get_serial_num();
430 return &serial_descriptor;
431}
432
438static usbd_desc_t *get_device_interface_string(void)
439{
440 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_HIDIAP_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
441 vp_desc.descriptor = g_usbd_desc_buffer;
442 return &vp_desc;
443}
444
450static usbd_desc_t *get_device_config_string(void)
451{
452 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_HIDIAP_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
453 vp_desc.descriptor = g_usbd_desc_buffer;
454 return &vp_desc;
455}
456
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
USBD_HIDIAP_OUT_MAXPACKET_SIZE
#define USBD_HIDIAP_OUT_MAXPACKET_SIZE
Definition: hid_iap_class.h:54
USBD_HIDIAP_IN_EPT
#define USBD_HIDIAP_IN_EPT
Definition: hid_iap_class.h:50
USBD_HIDIAP_OUT_EPT
#define USBD_HIDIAP_OUT_EPT
Definition: hid_iap_class.h:51
USBD_HIDIAP_IN_MAXPACKET_SIZE
#define USBD_HIDIAP_IN_MAXPACKET_SIZE
Definition: hid_iap_class.h:53
USBD_HIDIAP_SIZ_STRING_LANGID
#define USBD_HIDIAP_SIZ_STRING_LANGID
Definition: hid_iap_desc.h:56
USBD_HIDIAP_SIZ_STRING_SERIAL
#define USBD_HIDIAP_SIZ_STRING_SERIAL
Definition: hid_iap_desc.h:57
USBD_HIDIAP_VENDOR_ID
#define USBD_HIDIAP_VENDOR_ID
Definition: hid_iap_desc.h:51
HIDIAP_BCD_NUM
#define HIDIAP_BCD_NUM
Definition: hid_iap_desc.h:49
g_hidiap_usb_desc
uint8_t g_hidiap_usb_desc[9]
usb hid descriptor
Definition: hid_iap_desc.c:201
USBD_HIDIAP_SIZ_REPORT_DESC
#define USBD_HIDIAP_SIZ_REPORT_DESC
Definition: hid_iap_desc.h:55
USBD_HIDIAP_DESC_INTERFACE_STRING
#define USBD_HIDIAP_DESC_INTERFACE_STRING
Definition: hid_iap_desc.h:62
HIDIAP_BINTERVAL_TIME
#define HIDIAP_BINTERVAL_TIME
Definition: hid_iap_desc.h:64
USBD_HIDIAP_DESC_CONFIGURATION_STRING
#define USBD_HIDIAP_DESC_CONFIGURATION_STRING
Definition: hid_iap_desc.h:61
USBD_HIDIAP_DESC_MANUFACTURER_STRING
#define USBD_HIDIAP_DESC_MANUFACTURER_STRING
Definition: hid_iap_desc.h:59
USBD_HIDIAP_DESC_PRODUCT_STRING
#define USBD_HIDIAP_DESC_PRODUCT_STRING
Definition: hid_iap_desc.h:60
USBD_HIDIAP_CONFIG_DESC_SIZE
#define USBD_HIDIAP_CONFIG_DESC_SIZE
Definition: hid_iap_desc.h:54
USBD_HIDIAP_PRODUCT_ID
#define USBD_HIDIAP_PRODUCT_ID
Definition: hid_iap_desc.h:52
g_usbd_hidiap_report
uint8_t g_usbd_hidiap_report[32]
usb hid report descriptor
Definition: hid_iap_desc.c:170
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: hid_iap_desc.c:264
device_descriptor
static usbd_desc_t device_descriptor
Definition: hid_iap_desc.c:243
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: hid_iap_desc.c:372
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: hid_iap_desc.c:257
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: hid_iap_desc.c:352
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: hid_iap_desc.c:403
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: hid_iap_desc.c:362
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: hid_iap_desc.c:438
vp_desc
static usbd_desc_t vp_desc
Definition: hid_iap_desc.c:270
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: hid_iap_desc.c:382
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: hid_iap_desc.c:61
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: hid_iap_desc.c:415
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: hid_iap_desc.c:450
hid_iap_desc_handler
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure
Definition: hid_iap_desc.c:66
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: hid_iap_desc.c:278
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: hid_iap_desc.c:392
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: hid_iap_desc.c:330
config_descriptor
static usbd_desc_t config_descriptor
Definition: hid_iap_desc.c:250
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: hid_iap_desc.c:427
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: hid_iap_desc.c:304
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_CLASS_CODE_HID
#define USB_CLASS_CODE_HID
Definition: usb_std.h:161
hid_iap_desc.h
usb hid descriptor header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: hid_iap_desc.h Source File

  • middlewares
  • usbd_class
  • hid_iap
hid_iap_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __HID_IAP_DESC_H
27#define __HID_IAP_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "hid_iap_class.h"
34#include "usbd_core.h"
35
49#define HIDIAP_BCD_NUM 0x0110
50
51#define USBD_HIDIAP_VENDOR_ID 0x2E3C
52#define USBD_HIDIAP_PRODUCT_ID 0xAF01
53
54#define USBD_HIDIAP_CONFIG_DESC_SIZE 41
55#define USBD_HIDIAP_SIZ_REPORT_DESC 32
56#define USBD_HIDIAP_SIZ_STRING_LANGID 4
57#define USBD_HIDIAP_SIZ_STRING_SERIAL 0x1A
58
59#define USBD_HIDIAP_DESC_MANUFACTURER_STRING "Artery"
60#define USBD_HIDIAP_DESC_PRODUCT_STRING "HID IAP"
61#define USBD_HIDIAP_DESC_CONFIGURATION_STRING "HID IAP Config"
62#define USBD_HIDIAP_DESC_INTERFACE_STRING "HID IAP Interface"
63
64#define HIDIAP_BINTERVAL_TIME 0x01
65
66#define MCU_ID1 (0x1FFFF7E8)
67#define MCU_ID2 (0x1FFFF7EC)
68#define MCU_ID3 (0x1FFFF7F0)
69extern uint8_t g_usbd_hidiap_report[USBD_HIDIAP_SIZ_REPORT_DESC];
70extern uint8_t g_hidiap_usb_desc[9];
71
72extern usbd_desc_handler hid_iap_desc_handler;
73
74
87#ifdef __cplusplus
88}
89#endif
90
91#endif
92
g_hidiap_usb_desc
uint8_t g_hidiap_usb_desc[9]
usb hid descriptor
Definition: hid_iap_desc.c:201
USBD_HIDIAP_SIZ_REPORT_DESC
#define USBD_HIDIAP_SIZ_REPORT_DESC
Definition: hid_iap_desc.h:55
hid_iap_desc_handler
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure
Definition: hid_iap_desc.c:66
g_usbd_hidiap_report
uint8_t g_usbd_hidiap_report[32]
usb hid report descriptor
Definition: hid_iap_desc.c:170
hid_iap_class.h
usb hid iap header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: i2c_application.c Source File

  • middlewares
  • i2c_application_library
i2c_application.c
Go to the documentation of this file.
1
25#include "i2c_application.h"
26
35#define DMA_GET_TC_FLAG(DMA_CHANNEL) \
36(((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL1))? DMA1_FDT1_FLAG : \
37 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL2))? DMA1_FDT2_FLAG : \
38 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL3))? DMA1_FDT3_FLAG : \
39 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL4))? DMA1_FDT4_FLAG : \
40 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL5))? DMA1_FDT5_FLAG : \
41 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL6))? DMA1_FDT6_FLAG : \
42 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL7))? DMA1_FDT7_FLAG : \
43 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL1))? DMA2_FDT1_FLAG : \
44 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL2))? DMA2_FDT2_FLAG : \
45 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL3))? DMA2_FDT3_FLAG : \
46 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL4))? DMA2_FDT4_FLAG : \
47 DMA2_FDT5_FLAG)
48
52#define DMA_GET_HT_FLAG(DMA_CHANNEL) \
53(((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL1))? DMA1_HDT1_FLAG : \
54 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL2))? DMA1_HDT2_FLAG : \
55 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL3))? DMA1_HDT3_FLAG : \
56 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL4))? DMA1_HDT4_FLAG : \
57 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL5))? DMA1_HDT5_FLAG : \
58 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL6))? DMA1_HDT6_FLAG : \
59 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL7))? DMA1_HDT7_FLAG : \
60 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL1))? DMA2_HDT1_FLAG : \
61 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL2))? DMA2_HDT2_FLAG : \
62 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL3))? DMA2_HDT3_FLAG : \
63 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL4))? DMA2_HDT4_FLAG : \
64 DMA2_HDT5_FLAG)
65
69#define DMA_GET_TERR_FLAG(DMA_CHANNEL) \
70(((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL1))? DMA1_DTERR1_FLAG : \
71 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL2))? DMA1_DTERR2_FLAG : \
72 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL3))? DMA1_DTERR3_FLAG : \
73 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL4))? DMA1_DTERR4_FLAG : \
74 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL5))? DMA1_DTERR5_FLAG : \
75 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL6))? DMA1_DTERR6_FLAG : \
76 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA1_CHANNEL7))? DMA1_DTERR7_FLAG : \
77 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL1))? DMA2_DTERR1_FLAG : \
78 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL2))? DMA2_DTERR2_FLAG : \
79 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL3))? DMA2_DTERR3_FLAG : \
80 ((uint32_t)(DMA_CHANNEL) == ((uint32_t)DMA2_CHANNEL4))? DMA2_DTERR4_FLAG : \
81 DMA2_DTERR5_FLAG)
82
86#define I2C_START 0
87#define I2C_END 1
88
94__WEAK void i2c_lowlevel_init(i2c_handle_type* hi2c)
95{
96
97}
98
104void i2c_config(i2c_handle_type* hi2c)
105{
106 /* reset i2c peripheral */
107 i2c_reset(hi2c->i2cx);
108
109 /* i2c peripheral initialization */
110 i2c_lowlevel_init(hi2c);
111
112 /* i2c peripheral enable */
113 i2c_enable(hi2c->i2cx, TRUE);
114}
115
122 i2c_status_type i2c_wait_end(i2c_handle_type* hi2c, uint32_t timeout)
123{
124 while(hi2c->status != I2C_END)
125 {
126 /* check timeout */
127 if((timeout--) == 0)
128 {
129 return I2C_ERR_TIMEOUT;
130 }
131 }
132
133 if(hi2c->error_code != I2C_OK)
134 {
135 return hi2c->error_code;
136 }
137 else
138 {
139 return I2C_OK;
140 }
141}
142
178 i2c_status_type i2c_wait_flag(i2c_handle_type* hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout)
179{
180 if(flag == I2C_BUSYF_FLAG)
181 {
182 while(i2c_flag_get(hi2c->i2cx, flag) != RESET)
183 {
184 /* check timeout */
185 if((timeout--) == 0)
186 {
187 hi2c->error_code = I2C_ERR_TIMEOUT;
188
189 return I2C_ERR_TIMEOUT;
190 }
191 }
192 }
193 else
194 {
195 while(i2c_flag_get(hi2c->i2cx, flag) == RESET)
196 {
197 /* check the ack fail flag */
198 if(event_check & I2C_EVENT_CHECK_ACKFAIL)
199 {
200 if(i2c_flag_get(hi2c->i2cx, I2C_ACKFAIL_FLAG) != RESET)
201 {
202 /* generate stop condtion */
203 i2c_stop_generate(hi2c->i2cx);
204
205 /* clear ack fail flag */
206 i2c_flag_clear(hi2c->i2cx, I2C_ACKFAIL_FLAG);
207
208 hi2c->error_code = I2C_ERR_ACKFAIL;
209
210 return I2C_ERR_ACKFAIL;
211 }
212 }
213
214 /* check the stop flag */
215 if(event_check & I2C_EVENT_CHECK_STOP)
216 {
217 if(i2c_flag_get(hi2c->i2cx, I2C_STOPF_FLAG) != RESET)
218 {
219 /* clear stop flag */
220 i2c_flag_clear(hi2c->i2cx, I2C_STOPF_FLAG);
221
222 hi2c->error_code = I2C_ERR_STOP;
223
224 return I2C_ERR_STOP;
225 }
226 }
227
228 /* check timeout */
229 if((timeout--) == 0)
230 {
231 hi2c->error_code = I2C_ERR_TIMEOUT;
232
233 return I2C_ERR_TIMEOUT;
234 }
235 }
236 }
237
238 return I2C_OK;
239}
240
249void i2c_dma_config(i2c_handle_type* hi2c, dma_channel_type* dma_channelx, uint8_t* pdata, uint16_t size)
250{
251 /* disable the dma channel */
252 dma_channel_enable(dma_channelx, FALSE);
253
254 /* disable the transfer complete interrupt */
255 dma_interrupt_enable(dma_channelx, DMA_FDT_INT , FALSE);
256
257 /* configure buffer address and buffer size */
258 hi2c->dma_init_struct.memory_base_addr = (uint32_t)pdata;
259 hi2c->dma_init_struct.direction = (dma_channelx == hi2c->dma_tx_channel) ? DMA_DIR_MEMORY_TO_PERIPHERAL : DMA_DIR_PERIPHERAL_TO_MEMORY;
260 hi2c->dma_init_struct.peripheral_base_addr = (uint32_t)&hi2c->i2cx->dt;
261 hi2c->dma_init_struct.buffer_size = (uint32_t)size;
262 dma_init(dma_channelx, &hi2c->dma_init_struct);
263
264 /* enable the transfer complete interrupt */
265 dma_interrupt_enable(dma_channelx, DMA_FDT_INT , TRUE);
266
267 /* enable the dma channel */
268 dma_channel_enable(dma_channelx, TRUE);
269}
270
278 i2c_status_type i2c_master_write_addr(i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
279{
280 /* generate start condtion */
281 i2c_start_generate(hi2c->i2cx);
282
283 /* wait for the start flag to be set */
284 if(i2c_wait_flag(hi2c, I2C_STARTF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
285 {
286 hi2c->error_code = I2C_ERR_START;
287
288 return I2C_ERR_START;
289 }
290
291 if(hi2c->i2cx->oaddr1_bit.addr1mode == I2C_ADDRESS_MODE_7BIT)
292 {
293 /* send slave address */
294 i2c_7bit_address_send(hi2c->i2cx, address, I2C_DIRECTION_TRANSMIT);
295 }
296 else
297 {
298 /* send slave 10-bit address header */
299 i2c_data_send(hi2c->i2cx, (uint8_t)((address & 0x0300) >> 7) | 0xF0);
300
301 /* wait for the addrh flag to be set */
302 if(i2c_wait_flag(hi2c, I2C_ADDRHF_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
303 {
304 hi2c->error_code = I2C_ERR_ADDR10;
305
306 return I2C_ERR_ADDR10;
307 }
308
309 /* send slave address */
310 i2c_data_send(hi2c->i2cx, (uint8_t)(address & 0x00FF));
311 }
312
313 /* wait for the addr7 flag to be set */
314 if(i2c_wait_flag(hi2c, I2C_ADDR7F_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
315 {
316 hi2c->error_code = I2C_ERR_ADDR;
317
318 return I2C_ERR_ADDR;
319 }
320
321 return I2C_OK;
322}
323
331 i2c_status_type i2c_master_read_addr(i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
332{
333 /* enable ack */
334 i2c_ack_enable(hi2c->i2cx, TRUE);
335
336 /* generate start condtion */
337 i2c_start_generate(hi2c->i2cx);
338
339 /* wait for the start flag to be set */
340 if(i2c_wait_flag(hi2c, I2C_STARTF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
341 {
342 hi2c->error_code = I2C_ERR_START;
343
344 return I2C_ERR_START;
345 }
346
347 if(hi2c->i2cx->oaddr1_bit.addr1mode == I2C_ADDRESS_MODE_7BIT)
348 {
349 /* send slave address */
350 i2c_7bit_address_send(hi2c->i2cx, address, I2C_DIRECTION_RECEIVE);
351 }
352 else
353 {
354 /* send slave 10-bit address header */
355 i2c_data_send(hi2c->i2cx, (uint8_t)((address & 0x0300) >> 7) | 0xF0);
356
357 /* wait for the addrh flag to be set */
358 if(i2c_wait_flag(hi2c, I2C_ADDRHF_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
359 {
360 hi2c->error_code = I2C_ERR_ADDR10;
361
362 return I2C_ERR_ADDR10;
363 }
364
365 /* send slave address */
366 i2c_data_send(hi2c->i2cx, (uint8_t)(address & 0x00FF));
367
368 /* wait for the addr7 flag to be set */
369 if(i2c_wait_flag(hi2c, I2C_ADDR7F_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
370 {
371 hi2c->error_code = I2C_ERR_ADDR;
372
373 return I2C_ERR_ADDR;
374 }
375
376 /* clear addr flag */
377 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
378
379 /* generate restart condtion */
380 i2c_start_generate(hi2c->i2cx);
381
382 /* wait for the start flag to be set */
383 if(i2c_wait_flag(hi2c, I2C_STARTF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
384 {
385 hi2c->error_code = I2C_ERR_START;
386
387 return I2C_ERR_START;
388 }
389
390 /* send slave 10-bit address header */
391 i2c_data_send(hi2c->i2cx, (uint8_t)((address & 0x0300) >> 7) | 0xF1);
392 }
393
394 /* wait for the addr7 flag to be set */
395 if(i2c_wait_flag(hi2c, I2C_ADDR7F_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
396 {
397 hi2c->error_code = I2C_ERR_ADDR;
398
399 return I2C_ERR_ADDR;
400 }
401
402 return I2C_OK;
403}
404
414 i2c_status_type i2c_master_transmit(i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout)
415{
416 /* initialization parameters */
417 hi2c->pbuff = pdata;
418 hi2c->pcount = size;
419
420 hi2c->error_code = I2C_OK;
421
422 /* wait for the busy flag to be reset */
423 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
424 {
425 return I2C_ERR_STEP_1;
426 }
427
428 /* ack acts on the current byte */
429 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
430
431 /* send slave address */
432 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
433 {
434 /* generate stop condtion */
435 i2c_stop_generate(hi2c->i2cx);
436
437 return I2C_ERR_STEP_2;
438 }
439
440 /* clear addr flag */
441 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
442
443 while(size > 0)
444 {
445 /* wait for the tdbe flag to be set */
446 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
447 {
448 /* generate stop condtion */
449 i2c_stop_generate(hi2c->i2cx);
450
451 return I2C_ERR_STEP_3;
452 }
453
454 /* write data */
455 i2c_data_send(hi2c->i2cx, (*pdata++));
456 size--;
457 }
458
459 /* wait for the tdc flag to be set */
460 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
461 {
462 /* generate stop condtion */
463 i2c_stop_generate(hi2c->i2cx);
464
465 return I2C_ERR_STEP_4;
466 }
467
468 /* generate stop condtion */
469 i2c_stop_generate(hi2c->i2cx);
470
471 return I2C_OK;
472}
473
482 i2c_status_type i2c_slave_receive(i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout)
483{
484 /* initialization parameters */
485 hi2c->pbuff = pdata;
486 hi2c->pcount = size;
487
488 hi2c->error_code = I2C_OK;
489
490 /* wait for the busy flag to be reset */
491 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
492 {
493 return I2C_ERR_STEP_1;
494 }
495
496 /* ack acts on the current byte */
497 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
498
499 /* enable ack */
500 i2c_ack_enable(hi2c->i2cx, TRUE);
501
502 /* wait for the addr7 flag to be set */
503 if(i2c_wait_flag(hi2c, I2C_ADDR7F_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
504 {
505 /* disable ack */
506 i2c_ack_enable(hi2c->i2cx, FALSE);
507
508 return I2C_ERR_STEP_2;
509 }
510
511 /* clear addr flag */
512 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
513
514 while(size > 0)
515 {
516 /* wait for the rdbf flag to be set */
517 if(i2c_wait_flag(hi2c, I2C_RDBF_FLAG, I2C_EVENT_CHECK_STOP, timeout) != I2C_OK)
518 {
519 /* disable ack */
520 i2c_ack_enable(hi2c->i2cx, FALSE);
521
522 return I2C_ERR_STEP_3;
523 }
524
525 /* read data */
526 (*pdata++) = i2c_data_receive(hi2c->i2cx);
527 size--;
528 }
529
530 /* wait for the stop flag to be set */
531 if(i2c_wait_flag(hi2c, I2C_STOPF_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
532 {
533 /* disable ack */
534 i2c_ack_enable(hi2c->i2cx, FALSE);
535
536 return I2C_ERR_STEP_4;
537 }
538
539 /* clear stop flag */
540 i2c_flag_clear(hi2c->i2cx, I2C_STOPF_FLAG);
541
542 /* disable ack */
543 i2c_ack_enable(hi2c->i2cx, FALSE);
544
545 return I2C_OK;
546}
547
557 i2c_status_type i2c_master_receive(i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout)
558{
559 /* initialization parameters */
560 hi2c->pbuff = pdata;
561 hi2c->pcount = size;
562
563 hi2c->error_code = I2C_OK;
564
565 /* wait for the busy flag to be reset */
566 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
567 {
568 return I2C_ERR_STEP_1;
569 }
570
571 /* ack acts on the current byte */
572 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
573
574 /* enable ack */
575 i2c_ack_enable(hi2c->i2cx, TRUE);
576
577 /* send slave address */
578 if(i2c_master_read_addr(hi2c, address, timeout) != I2C_OK)
579 {
580 /* generate stop condtion */
581 i2c_stop_generate(hi2c->i2cx);
582
583 return I2C_ERR_STEP_2;
584 }
585
586 if(size == 1)
587 {
588 /* disable ack */
589 i2c_ack_enable(hi2c->i2cx, FALSE);
590
591 /* clear addr flag */
592 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
593
594 /* generate stop condtion */
595 i2c_stop_generate(hi2c->i2cx);
596 }
597 else if(size == 2)
598 {
599 /* ack acts on the next byte */
600 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_NEXT);
601
602 /* disable ack */
603 i2c_ack_enable(hi2c->i2cx, FALSE);
604
605 /* clear addr flag */
606 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
607 }
608 else
609 {
610 /* enable ack */
611 i2c_ack_enable(hi2c->i2cx, TRUE);
612
613 /* clear addr flag */
614 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
615 }
616
617 while(size > 0)
618 {
619 if(size <= 3)
620 {
621 /* 1 byte */
622 if(size == 1)
623 {
624 /* wait for the rdbf flag to be set */
625 if(i2c_wait_flag(hi2c, I2C_RDBF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
626 {
627 /* generate stop condtion */
628 i2c_stop_generate(hi2c->i2cx);
629
630 return I2C_ERR_STEP_3;
631 }
632
633 /* read data */
634 (*pdata++) = i2c_data_receive(hi2c->i2cx);
635 size--;
636 }
637 /* 2 bytes */
638 else if(size == 2)
639 {
640 /* wait for the tdc flag to be set */
641 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
642 {
643 /* generate stop condtion */
644 i2c_stop_generate(hi2c->i2cx);
645
646 return I2C_ERR_STEP_4;
647 }
648
649 /* generate stop condtion */
650 i2c_stop_generate(hi2c->i2cx);
651
652 /* read data */
653 (*pdata++) = i2c_data_receive(hi2c->i2cx);
654 size--;
655
656 /* read data */
657 (*pdata++) = i2c_data_receive(hi2c->i2cx);
658 size--;
659 }
660 /* 3 last bytes */
661 else
662 {
663 /* wait for the tdc flag to be set */
664 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
665 {
666 /* generate stop condtion */
667 i2c_stop_generate(hi2c->i2cx);
668
669 return I2C_ERR_STEP_5;
670 }
671
672 /* disable ack */
673 i2c_ack_enable(hi2c->i2cx, FALSE);
674
675 /* read data */
676 (*pdata++) = i2c_data_receive(hi2c->i2cx);
677 size--;
678
679 /* wait for the tdc flag to be set */
680 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
681 {
682 /* generate stop condtion */
683 i2c_stop_generate(hi2c->i2cx);
684
685 return I2C_ERR_STEP_6;
686 }
687
688 /* generate stop condtion */
689 i2c_stop_generate(hi2c->i2cx);
690
691 /* read data */
692 (*pdata++) = i2c_data_receive(hi2c->i2cx);
693 size--;
694
695 /* read data */
696 (*pdata++) = i2c_data_receive(hi2c->i2cx);
697 size--;
698 }
699 }
700 else
701 {
702 /* wait for the rdbf flag to be set */
703 if(i2c_wait_flag(hi2c, I2C_RDBF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
704 {
705 /* generate stop condtion */
706 i2c_stop_generate(hi2c->i2cx);
707
708 return I2C_ERR_STEP_7;
709 }
710
711 /* read data */
712 (*pdata++) = i2c_data_receive(hi2c->i2cx);
713 size--;
714 }
715 }
716
717 return I2C_OK;
718}
719
728 i2c_status_type i2c_slave_transmit(i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout)
729{
730 /* initialization parameters */
731 hi2c->pbuff = pdata;
732 hi2c->pcount = size;
733
734 hi2c->error_code = I2C_OK;
735
736 /* wait for the busy flag to be reset */
737 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
738 {
739 return I2C_ERR_STEP_1;
740 }
741
742 /* ack acts on the current byte */
743 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
744
745 /* enable ack */
746 i2c_ack_enable(hi2c->i2cx, TRUE);
747
748 /* wait for the addr7 flag to be set */
749 if(i2c_wait_flag(hi2c, I2C_ADDR7F_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
750 {
751 /* disable ack */
752 i2c_ack_enable(hi2c->i2cx, FALSE);
753
754 return I2C_ERR_STEP_2;
755 }
756
757 /* clear addr flag */
758 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
759
760 if(hi2c->i2cx->oaddr1_bit.addr1mode == I2C_ADDRESS_MODE_10BIT)
761 {
762 /* wait for the addr7 flag to be set */
763 if(i2c_wait_flag(hi2c, I2C_ADDR7F_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
764 {
765 /* disable ack */
766 i2c_ack_enable(hi2c->i2cx, FALSE);
767
768 return I2C_ERR_STEP_3;
769 }
770
771 /* clear addr flag */
772 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
773 }
774
775 while(size > 0)
776 {
777 /* wait for the tdbe flag to be set */
778 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
779 {
780 /* disable ack */
781 i2c_ack_enable(hi2c->i2cx, FALSE);
782
783 return I2C_ERR_STEP_4;
784 }
785
786 /* write data */
787 i2c_data_send(hi2c->i2cx, *pdata++);
788 size--;
789 }
790
791 /* wait for the ackfail flag to be set */
792 if(i2c_wait_flag(hi2c, I2C_ACKFAIL_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
793 {
794 return I2C_ERR_STEP_5;
795 }
796
797 /* clear ackfail flag */
798 i2c_flag_clear(hi2c->i2cx, I2C_ACKFAIL_FLAG);
799
800 /* disable ack */
801 i2c_ack_enable(hi2c->i2cx, FALSE);
802
803 return I2C_OK;
804}
805
815 i2c_status_type i2c_master_transmit_int(i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout)
816{
817 /* initialization parameters */
818 hi2c->mode = I2C_INT_MA_TX;
819 hi2c->status = I2C_START;
820
821 hi2c->pbuff = pdata;
822 hi2c->pcount = size;
823
824 hi2c->timeout = timeout;
825 hi2c->error_code = I2C_OK;
826
827 /* wait for the busy flag to be reset */
828 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
829 {
830 return I2C_ERR_STEP_1;
831 }
832
833 /* ack acts on the current byte */
834 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
835
836 /* send slave address */
837 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
838 {
839 /* generate stop condtion */
840 i2c_stop_generate(hi2c->i2cx);
841
842 return I2C_ERR_STEP_2;
843 }
844
845 /* clear addr flag */
846 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
847
848 /* enable interrupt */
849 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, TRUE);
850
851 return I2C_OK;
852}
853
862 i2c_status_type i2c_slave_receive_int(i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout)
863{
864 /* initialization parameters */
865 hi2c->mode = I2C_INT_SLA_RX;
866 hi2c->status = I2C_START;
867
868 hi2c->pbuff = pdata;
869 hi2c->pcount = size;
870
871 hi2c->timeout = timeout;
872 hi2c->error_code = I2C_OK;
873
874 /* wait for the busy flag to be reset */
875 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
876 {
877 return I2C_ERR_STEP_1;
878 }
879
880 /* ack acts on the current byte */
881 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
882
883 /* enable ack */
884 i2c_ack_enable(hi2c->i2cx, TRUE);
885
886 /* enable interrupt */
887 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, TRUE);
888
889 return I2C_OK;
890}
891
901 i2c_status_type i2c_master_receive_int(i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout)
902{
903 /* initialization parameters */
904 hi2c->mode = I2C_INT_MA_RX;
905 hi2c->status = I2C_START;
906
907 hi2c->pbuff = pdata;
908 hi2c->pcount = size;
909
910 hi2c->timeout = timeout;
911 hi2c->error_code = I2C_OK;
912
913 /* wait for the busy flag to be reset */
914 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
915 {
916 return I2C_ERR_STEP_1;
917 }
918
919 /* ack acts on the current byte */
920 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
921
922 /* enable ack */
923 i2c_ack_enable(hi2c->i2cx, TRUE);
924
925 /* send slave address */
926 if(i2c_master_read_addr(hi2c, address, timeout) != I2C_OK)
927 {
928 /* generate stop condtion */
929 i2c_stop_generate(hi2c->i2cx);
930
931 return I2C_ERR_STEP_2;
932 }
933
934 if(hi2c->pcount == 1)
935 {
936 /* disable ack */
937 i2c_ack_enable(hi2c->i2cx, FALSE);
938
939 /* clear addr flag */
940 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
941
942 /* generate stop condtion */
943 i2c_stop_generate(hi2c->i2cx);
944 }
945 else if(hi2c->pcount == 2)
946 {
947 /* ack acts on the next byte */
948 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_NEXT);
949
950 /* clear addr flag */
951 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
952
953 /* disable ack */
954 i2c_ack_enable(hi2c->i2cx, FALSE);
955 }
956 else
957 {
958 /* enable ack */
959 i2c_ack_enable(hi2c->i2cx, TRUE);
960
961 /* clear addr flag */
962 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
963 }
964
965 /* enable interrupt */
966 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, TRUE);
967
968 return I2C_OK;
969}
970
979 i2c_status_type i2c_slave_transmit_int(i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout)
980{
981 /* initialization parameters */
982 hi2c->mode = I2C_INT_SLA_TX;
983 hi2c->status = I2C_START;
984
985 hi2c->pbuff = pdata;
986 hi2c->pcount = size;
987
988 hi2c->timeout = timeout;
989 hi2c->error_code = I2C_OK;
990
991 /* wait for the busy flag to be reset */
992 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
993 {
994 return I2C_ERR_STEP_1;
995 }
996
997 /* ack acts on the current byte */
998 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
999
1000 /* enable ack */
1001 i2c_ack_enable(hi2c->i2cx, TRUE);
1002
1003 /* enable interrupt */
1004 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, TRUE);
1005
1006 return I2C_OK;
1007}
1008
1018 i2c_status_type i2c_master_transmit_dma(i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1019{
1020 /* initialization parameters */
1021 hi2c->mode = I2C_DMA_MA_TX;
1022 hi2c->status = I2C_START;
1023
1024 hi2c->pbuff = pdata;
1025 hi2c->pcount = size;
1026
1027 hi2c->timeout = timeout;
1028 hi2c->error_code = I2C_OK;
1029
1030 /* wait for the busy flag to be reset */
1031 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1032 {
1033 return I2C_ERR_STEP_1;
1034 }
1035
1036 /* ack acts on the current byte */
1037 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1038
1039 /* disable dma request */
1040 i2c_dma_enable(hi2c->i2cx, FALSE);
1041
1042 /* configure the dma channel */
1043 i2c_dma_config(hi2c, hi2c->dma_tx_channel, pdata, size);
1044
1045 /* send slave address */
1046 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
1047 {
1048 /* generate stop condtion */
1049 i2c_stop_generate(hi2c->i2cx);
1050
1051 return I2C_ERR_STEP_2;
1052 }
1053
1054 /* clear addr flag */
1055 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1056
1057 /* enable dma request */
1058 i2c_dma_enable(hi2c->i2cx, TRUE);
1059
1060 return I2C_OK;
1061}
1062
1071 i2c_status_type i2c_slave_receive_dma(i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout)
1072{
1073 /* initialization parameters */
1074 hi2c->mode = I2C_DMA_SLA_RX;
1075 hi2c->status = I2C_START;
1076
1077 hi2c->pbuff = pdata;
1078 hi2c->pcount = size;
1079
1080 hi2c->timeout = timeout;
1081 hi2c->error_code = I2C_OK;
1082
1083 /* wait for the busy flag to be reset */
1084 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1085 {
1086 return I2C_ERR_STEP_1;
1087 }
1088
1089 /* ack acts on the current byte */
1090 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1091
1092 /* enable ack */
1093 i2c_ack_enable(hi2c->i2cx, TRUE);
1094
1095 /* disable dma request */
1096 i2c_dma_enable(hi2c->i2cx, FALSE);
1097
1098 /* configure the dma channel */
1099 i2c_dma_config(hi2c, hi2c->dma_rx_channel, pdata, size);
1100
1101 /* enable dma request */
1102 i2c_dma_enable(hi2c->i2cx, TRUE);
1103
1104 /* enable address interrupt */
1105 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT, TRUE);
1106
1107 return I2C_OK;
1108}
1109
1119 i2c_status_type i2c_master_receive_dma(i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1120{
1121 /* initialization parameters */
1122 hi2c->mode = I2C_DMA_MA_RX;
1123 hi2c->status = I2C_START;
1124
1125 hi2c->pbuff = pdata;
1126 hi2c->pcount = size;
1127
1128 hi2c->timeout = timeout;
1129 hi2c->error_code = I2C_OK;
1130
1131 /* wait for the busy flag to be reset */
1132 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1133 {
1134 return I2C_ERR_STEP_1;
1135 }
1136
1137 /* ack acts on the current byte */
1138 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1139
1140 /* enable ack */
1141 i2c_ack_enable(hi2c->i2cx, TRUE);
1142
1143 /* disable dma request */
1144 i2c_dma_enable(hi2c->i2cx, FALSE);
1145
1146 /* configure the dma channel */
1147 i2c_dma_config(hi2c, hi2c->dma_rx_channel, pdata, size);
1148
1149 /* send slave address */
1150 if(i2c_master_read_addr(hi2c, address, timeout) != I2C_OK)
1151 {
1152 /* generate stop condtion */
1153 i2c_stop_generate(hi2c->i2cx);
1154
1155 return I2C_ERR_STEP_2;
1156 }
1157
1158 if(size == 1)
1159 {
1160 /* clear addr flag */
1161 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1162
1163 /* disable ack */
1164 i2c_ack_enable(hi2c->i2cx, FALSE);
1165
1166 /* generate stop condtion */
1167 i2c_stop_generate(hi2c->i2cx);
1168
1169 /* enable dma request */
1170 i2c_dma_enable(hi2c->i2cx, TRUE);
1171 }
1172 else
1173 {
1174 /* enable dma end transfer */
1175 i2c_dma_end_transfer_set(hi2c->i2cx, TRUE);
1176
1177 /* enable dma request */
1178 i2c_dma_enable(hi2c->i2cx, TRUE);
1179
1180 /* clear addr flag */
1181 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1182 }
1183
1184 return I2C_OK;
1185}
1186
1195 i2c_status_type i2c_slave_transmit_dma(i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout)
1196{
1197 /* initialization parameters */
1198 hi2c->mode = I2C_DMA_SLA_TX;
1199 hi2c->status = I2C_START;
1200
1201 hi2c->pbuff = pdata;
1202 hi2c->pcount = size;
1203
1204 hi2c->timeout = timeout;
1205 hi2c->error_code = I2C_OK;
1206
1207 /* wait for the busy flag to be reset */
1208 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1209 {
1210 return I2C_ERR_STEP_1;
1211 }
1212
1213 /* ack acts on the current byte */
1214 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1215
1216 /* enable ack */
1217 i2c_ack_enable(hi2c->i2cx, TRUE);
1218
1219 /* disable dma request */
1220 i2c_dma_enable(hi2c->i2cx, FALSE);
1221
1222 /* configure the dma channel */
1223 i2c_dma_config(hi2c, hi2c->dma_tx_channel, pdata, size);
1224
1225 /* enable dma request */
1226 i2c_dma_enable(hi2c->i2cx, TRUE);
1227
1228 /* enable address interrupt */
1229 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT, TRUE);
1230
1231 return I2C_OK;
1232}
1233
1246 i2c_status_type i2c_memory_address_send(i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t mem_address, int32_t timeout)
1247{
1248 i2c_status_type err_code;
1249
1250 if(mem_address_width == I2C_MEM_ADDR_WIDIH_8)
1251 {
1252 /* send memory address */
1253 i2c_data_send(hi2c->i2cx, mem_address & 0xFF);
1254 }
1255 else
1256 {
1257 /* send memory address */
1258 i2c_data_send(hi2c->i2cx, (mem_address >> 8) & 0xFF);
1259
1260 /* wait for the tdbe flag to be set */
1261 err_code = i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout);
1262
1263 if(err_code != I2C_OK)
1264 {
1265 /* generate stop condtion */
1266 i2c_stop_generate(hi2c->i2cx);
1267
1268 return err_code;
1269 }
1270
1271 /* send memory address */
1272 i2c_data_send(hi2c->i2cx, mem_address & 0xFF);
1273 }
1274
1275 return I2C_OK;
1276}
1277
1292 i2c_status_type i2c_memory_write(i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1293{
1294 /* initialization parameters */
1295 hi2c->pbuff = pdata;
1296 hi2c->pcount = size;
1297
1298 hi2c->error_code = I2C_OK;
1299
1300 /* wait for the busy flag to be reset */
1301 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1302 {
1303 return I2C_ERR_STEP_1;
1304 }
1305
1306 /* ack acts on the current byte */
1307 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1308
1309 /* send slave address */
1310 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
1311 {
1312 /* generate stop condtion */
1313 i2c_stop_generate(hi2c->i2cx);
1314
1315 return I2C_ERR_STEP_2;
1316 }
1317
1318 /* clear addr flag */
1319 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1320
1321 /* wait for the tdbe flag to be set */
1322 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1323 {
1324 /* generate stop condtion */
1325 i2c_stop_generate(hi2c->i2cx);
1326
1327 return I2C_ERR_STEP_3;
1328 }
1329
1330 /* send memory address */
1331 if(i2c_memory_address_send(hi2c, mem_address_width, mem_address, timeout) != I2C_OK)
1332 {
1333 return I2C_ERR_STEP_4;
1334 }
1335
1336 while(size > 0)
1337 {
1338 /* wait for the tdbe flag to be set */
1339 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1340 {
1341 /* generate stop condtion */
1342 i2c_stop_generate(hi2c->i2cx);
1343
1344 return I2C_ERR_STEP_5;
1345 }
1346
1347 /* write data */
1348 i2c_data_send(hi2c->i2cx, (*pdata++));
1349 size--;
1350 }
1351
1352 /* wait for the tdc flag to be set */
1353 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1354 {
1355 /* generate stop condtion */
1356 i2c_stop_generate(hi2c->i2cx);
1357
1358 return I2C_ERR_STEP_6;
1359 }
1360
1361 /* generate stop condtion */
1362 i2c_stop_generate(hi2c->i2cx);
1363
1364 return I2C_OK;
1365}
1366
1381 i2c_status_type i2c_memory_read(i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1382{
1383 /* initialization parameters */
1384 hi2c->pbuff = pdata;
1385 hi2c->pcount = size;
1386
1387 hi2c->error_code = I2C_OK;
1388
1389 /* wait for the busy flag to be reset */
1390 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1391 {
1392 return I2C_ERR_STEP_1;
1393 }
1394
1395 /* ack acts on the current byte */
1396 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1397
1398 /* enable ack */
1399 i2c_ack_enable(hi2c->i2cx, TRUE);
1400
1401 /* send slave address */
1402 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
1403 {
1404 /* generate stop condtion */
1405 i2c_stop_generate(hi2c->i2cx);
1406
1407 return I2C_ERR_STEP_2;
1408 }
1409
1410 /* clear addr flag */
1411 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1412
1413 /* wait for the tdbe flag to be set */
1414 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1415 {
1416 /* generate stop condtion */
1417 i2c_stop_generate(hi2c->i2cx);
1418
1419 return I2C_ERR_STEP_3;
1420 }
1421
1422 /* send memory address */
1423 if(i2c_memory_address_send(hi2c, mem_address_width, mem_address, timeout) != I2C_OK)
1424 {
1425 return I2C_ERR_STEP_4;
1426 }
1427
1428 /* wait for the tdbe flag to be set */
1429 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1430 {
1431 /* generate stop condtion */
1432 i2c_stop_generate(hi2c->i2cx);
1433
1434 return I2C_ERR_STEP_5;
1435 }
1436
1437 /* send slave address */
1438 if(i2c_master_read_addr(hi2c, address, timeout) != I2C_OK)
1439 {
1440 /* generate stop condtion */
1441 i2c_stop_generate(hi2c->i2cx);
1442
1443 return I2C_ERR_STEP_6;
1444 }
1445
1446 if(size == 1)
1447 {
1448 /* disable ack */
1449 i2c_ack_enable(hi2c->i2cx, FALSE);
1450
1451 /* clear addr flag */
1452 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1453
1454 /* generate stop condtion */
1455 i2c_stop_generate(hi2c->i2cx);
1456 }
1457 else if(size == 2)
1458 {
1459 /* ack acts on the next byte */
1460 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_NEXT);
1461
1462 /* clear addr flag */
1463 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1464
1465 /* disable ack */
1466 i2c_ack_enable(hi2c->i2cx, FALSE);
1467 }
1468 else
1469 {
1470 /* enable ack */
1471 i2c_ack_enable(hi2c->i2cx, TRUE);
1472
1473 /* clear addr flag */
1474 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1475 }
1476
1477 while(size > 0)
1478 {
1479 if(size <= 3)
1480 {
1481 /* 1 byte */
1482 if(size == 1)
1483 {
1484 /* wait for the rdbf flag to be set */
1485 if(i2c_wait_flag(hi2c, I2C_RDBF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1486 {
1487 /* generate stop condtion */
1488 i2c_stop_generate(hi2c->i2cx);
1489
1490 return I2C_ERR_STEP_7;
1491 }
1492
1493 /* read data */
1494 (*pdata++) = i2c_data_receive(hi2c->i2cx);
1495 size--;
1496 }
1497 /* 2 bytes */
1498 else if(size == 2)
1499 {
1500 /* wait for the tdc flag to be set */
1501 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1502 {
1503 /* generate stop condtion */
1504 i2c_stop_generate(hi2c->i2cx);
1505
1506 return I2C_ERR_STEP_8;
1507 }
1508
1509 /* generate stop condtion */
1510 i2c_stop_generate(hi2c->i2cx);
1511
1512 /* read data */
1513 (*pdata++) = i2c_data_receive(hi2c->i2cx);
1514 size--;
1515
1516 /* read data */
1517 (*pdata++) = i2c_data_receive(hi2c->i2cx);
1518 size--;
1519 }
1520 /* 3 last bytes */
1521 else
1522 {
1523 /* wait for the tdc flag to be set */
1524 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1525 {
1526 /* generate stop condtion */
1527 i2c_stop_generate(hi2c->i2cx);
1528
1529 return I2C_ERR_STEP_9;
1530 }
1531
1532 /* disable ack */
1533 i2c_ack_enable(hi2c->i2cx, FALSE);
1534
1535 /* read data */
1536 (*pdata++) = i2c_data_receive(hi2c->i2cx);
1537 size--;
1538
1539 /* wait for the tdc flag to be set */
1540 if(i2c_wait_flag(hi2c, I2C_TDC_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1541 {
1542 /* generate stop condtion */
1543 i2c_stop_generate(hi2c->i2cx);
1544
1545 return I2C_ERR_STEP_10;
1546 }
1547
1548 /* generate stop condtion */
1549 i2c_stop_generate(hi2c->i2cx);
1550
1551 /* read data */
1552 (*pdata++) = i2c_data_receive(hi2c->i2cx);
1553 size--;
1554
1555 /* read data */
1556 (*pdata++) = i2c_data_receive(hi2c->i2cx);
1557 size--;
1558 }
1559 }
1560 else
1561 {
1562 /* wait for the rdbf flag to be set */
1563 if(i2c_wait_flag(hi2c, I2C_RDBF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1564 {
1565 /* generate stop condtion */
1566 i2c_stop_generate(hi2c->i2cx);
1567
1568 return I2C_ERR_STEP_11;
1569 }
1570
1571 /* read data */
1572 (*pdata++) = i2c_data_receive(hi2c->i2cx);
1573 size--;
1574 }
1575 }
1576
1577 return I2C_OK;
1578}
1579
1594 i2c_status_type i2c_memory_write_int(i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1595{
1596 /* initialization parameters */
1597 hi2c->mode = I2C_INT_MA_TX;
1598 hi2c->status = I2C_START;
1599
1600 hi2c->pbuff = pdata;
1601 hi2c->pcount = size;
1602
1603 hi2c->timeout = timeout;
1604 hi2c->error_code = I2C_OK;
1605
1606 /* wait for the busy flag to be reset */
1607 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1608 {
1609 return I2C_ERR_STEP_1;
1610 }
1611
1612 /* ack acts on the current byte */
1613 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1614
1615 /* send slave address */
1616 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
1617 {
1618 /* generate stop condtion */
1619 i2c_stop_generate(hi2c->i2cx);
1620
1621 return I2C_ERR_STEP_2;
1622 }
1623
1624 /* clear addr flag */
1625 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1626
1627 /* wait for the tdbe flag to be set */
1628 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1629 {
1630 /* generate stop condtion */
1631 i2c_stop_generate(hi2c->i2cx);
1632
1633 return I2C_ERR_STEP_3;
1634 }
1635
1636 /* send memory address */
1637 if(i2c_memory_address_send(hi2c, mem_address_width, mem_address, timeout) != I2C_OK)
1638 {
1639 return I2C_ERR_STEP_4;
1640 }
1641
1642 /* wait for the tdbe flag to be set */
1643 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1644 {
1645 /* generate stop condtion */
1646 i2c_stop_generate(hi2c->i2cx);
1647
1648 return I2C_ERR_STEP_5;
1649 }
1650
1651 /* enable interrupt */
1652 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, TRUE);
1653
1654 return I2C_OK;
1655}
1656
1671 i2c_status_type i2c_memory_read_int(i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1672{
1673 /* initialization parameters */
1674 hi2c->mode = I2C_INT_MA_RX;
1675 hi2c->status = I2C_START;
1676
1677 hi2c->pbuff = pdata;
1678 hi2c->pcount = size;
1679
1680 hi2c->timeout = timeout;
1681 hi2c->error_code = I2C_OK;
1682
1683 /* wait for the busy flag to be reset */
1684 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1685 {
1686 return I2C_ERR_STEP_1;
1687 }
1688
1689 /* ack acts on the current byte */
1690 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1691
1692 /* send slave address */
1693 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
1694 {
1695 /* generate stop condtion */
1696 i2c_stop_generate(hi2c->i2cx);
1697
1698 return I2C_ERR_STEP_2;
1699 }
1700
1701 /* clear addr flag */
1702 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1703
1704 /* wait for the tdbe flag to be set */
1705 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1706 {
1707 /* generate stop condtion */
1708 i2c_stop_generate(hi2c->i2cx);
1709
1710 return I2C_ERR_STEP_3;
1711 }
1712
1713 /* send memory address */
1714 if(i2c_memory_address_send(hi2c, mem_address_width, mem_address, timeout) != I2C_OK)
1715 {
1716 return I2C_ERR_STEP_4;
1717 }
1718
1719 /* wait for the tdbe flag to be set */
1720 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1721 {
1722 /* generate stop condtion */
1723 i2c_stop_generate(hi2c->i2cx);
1724
1725 return I2C_ERR_STEP_5;
1726 }
1727
1728 /* send slave address */
1729 if(i2c_master_read_addr(hi2c, address, timeout) != I2C_OK)
1730 {
1731 /* generate stop condtion */
1732 i2c_stop_generate(hi2c->i2cx);
1733
1734 return I2C_ERR_STEP_6;
1735 }
1736
1737 if(hi2c->pcount == 1)
1738 {
1739 /* disable ack */
1740 i2c_ack_enable(hi2c->i2cx, FALSE);
1741
1742 /* clear addr flag */
1743 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1744
1745 /* generate stop condtion */
1746 i2c_stop_generate(hi2c->i2cx);
1747 }
1748 else if(hi2c->pcount == 2)
1749 {
1750 /* ack acts on the next byte */
1751 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_NEXT);
1752
1753 /* clear addr flag */
1754 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1755
1756 /* disable ack */
1757 i2c_ack_enable(hi2c->i2cx, FALSE);
1758 }
1759 else
1760 {
1761 /* enable ack */
1762 i2c_ack_enable(hi2c->i2cx, TRUE);
1763
1764 /* clear addr flag */
1765 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1766 }
1767
1768 /* enable interrupt */
1769 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, TRUE);
1770
1771 return I2C_OK;
1772}
1773
1788 i2c_status_type i2c_memory_write_dma(i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1789{
1790 /* initialization parameters */
1791 hi2c->mode = I2C_DMA_MA_TX;
1792 hi2c->status = I2C_START;
1793
1794 hi2c->pbuff = pdata;
1795 hi2c->pcount = size;
1796
1797 hi2c->timeout = timeout;
1798 hi2c->error_code = I2C_OK;
1799
1800 /* wait for the busy flag to be reset */
1801 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1802 {
1803 return I2C_ERR_STEP_1;
1804 }
1805
1806 /* ack acts on the current byte */
1807 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1808
1809 /* disable dma request */
1810 i2c_dma_enable(hi2c->i2cx, FALSE);
1811
1812 /* configure the dma channel */
1813 i2c_dma_config(hi2c, hi2c->dma_tx_channel, pdata, size);
1814
1815 /* send slave address */
1816 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
1817 {
1818 /* generate stop condtion */
1819 i2c_stop_generate(hi2c->i2cx);
1820
1821 return I2C_ERR_STEP_2;
1822 }
1823
1824 /* clear addr flag */
1825 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1826
1827 /* wait for the tdbe flag to be set */
1828 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1829 {
1830 /* generate stop condtion */
1831 i2c_stop_generate(hi2c->i2cx);
1832
1833 return I2C_ERR_STEP_3;
1834 }
1835
1836 /* send memory address */
1837 if(i2c_memory_address_send(hi2c, mem_address_width, mem_address, timeout) != I2C_OK)
1838 {
1839 return I2C_ERR_STEP_4;
1840 }
1841
1842 /* wait for the tdbe flag to be set */
1843 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1844 {
1845 /* generate stop condtion */
1846 i2c_stop_generate(hi2c->i2cx);
1847
1848 return I2C_ERR_STEP_5;
1849 }
1850
1851 /* enable dma request */
1852 i2c_dma_enable(hi2c->i2cx, TRUE);
1853
1854 return I2C_OK;
1855}
1856
1871 i2c_status_type i2c_memory_read_dma(i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout)
1872{
1873 /* initialization parameters */
1874 hi2c->mode = I2C_DMA_MA_RX;
1875 hi2c->status = I2C_START;
1876
1877 hi2c->pbuff = pdata;
1878 hi2c->pcount = size;
1879
1880 hi2c->timeout = timeout;
1881 hi2c->error_code = I2C_OK;
1882
1883 /* wait for the busy flag to be reset */
1884 if(i2c_wait_flag(hi2c, I2C_BUSYF_FLAG, I2C_EVENT_CHECK_NONE, timeout) != I2C_OK)
1885 {
1886 return I2C_ERR_STEP_1;
1887 }
1888
1889 /* ack acts on the current byte */
1890 i2c_master_receive_ack_set(hi2c->i2cx, I2C_MASTER_ACK_CURRENT);
1891
1892 /* enable ack */
1893 i2c_ack_enable(hi2c->i2cx, TRUE);
1894
1895 /* disable dma request */
1896 i2c_dma_enable(hi2c->i2cx, FALSE);
1897
1898 /* configure the dma channel */
1899 i2c_dma_config(hi2c, hi2c->dma_rx_channel, pdata, size);
1900
1901 /* send slave address */
1902 if(i2c_master_write_addr(hi2c, address, timeout) != I2C_OK)
1903 {
1904 /* generate stop condtion */
1905 i2c_stop_generate(hi2c->i2cx);
1906
1907 return I2C_ERR_STEP_2;
1908 }
1909
1910 /* clear addr flag */
1911 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1912
1913 /* wait for the tdbe flag to be set */
1914 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1915 {
1916 /* generate stop condtion */
1917 i2c_stop_generate(hi2c->i2cx);
1918
1919 return I2C_ERR_STEP_3;
1920 }
1921
1922 /* send memory address */
1923 if(i2c_memory_address_send(hi2c, mem_address_width, mem_address, timeout) != I2C_OK)
1924 {
1925 return I2C_ERR_STEP_4;
1926 }
1927
1928 /* wait for the tdbe flag to be set */
1929 if(i2c_wait_flag(hi2c, I2C_TDBE_FLAG, I2C_EVENT_CHECK_ACKFAIL, timeout) != I2C_OK)
1930 {
1931 /* generate stop condtion */
1932 i2c_stop_generate(hi2c->i2cx);
1933
1934 return I2C_ERR_STEP_5;
1935 }
1936
1937 /* send slave address */
1938 if(i2c_master_read_addr(hi2c, address, timeout) != I2C_OK)
1939 {
1940 /* generate stop condtion */
1941 i2c_stop_generate(hi2c->i2cx);
1942
1943 return I2C_ERR_STEP_6;
1944 }
1945
1946 if(size == 1)
1947 {
1948 /* clear addr flag */
1949 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1950
1951 /* disable ack */
1952 i2c_ack_enable(hi2c->i2cx, FALSE);
1953
1954 /* generate stop condtion */
1955 i2c_stop_generate(hi2c->i2cx);
1956
1957 /* enable dma request */
1958 i2c_dma_enable(hi2c->i2cx, TRUE);
1959 }
1960 else
1961 {
1962 /* enable dma end transfer */
1963 i2c_dma_end_transfer_set(hi2c->i2cx, TRUE);
1964
1965 /* enable dma request */
1966 i2c_dma_enable(hi2c->i2cx, TRUE);
1967
1968 /* clear addr flag */
1969 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
1970 }
1971
1972 return I2C_OK;
1973}
1974
1980void i2c_master_tx_isr_int(i2c_handle_type* hi2c)
1981{
1982 /* step 1: transfer data */
1983 if(i2c_flag_get(hi2c->i2cx, I2C_TDBE_FLAG) != RESET)
1984 {
1985 if(hi2c->pcount == 0)
1986 {
1987 /* transfer complete */
1988 hi2c->status = I2C_END;
1989
1990 /* disable interrupt */
1991 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, FALSE);
1992
1993 /* generate stop condtion */
1994 i2c_stop_generate(hi2c->i2cx);
1995 }
1996 else
1997 {
1998 /* write data */
1999 i2c_data_send(hi2c->i2cx, *hi2c->pbuff++);
2000 hi2c->pcount--;
2001 }
2002 }
2003}
2004
2010void i2c_master_rx_isr_int(i2c_handle_type* hi2c)
2011{
2012 if(i2c_flag_get(hi2c->i2cx, I2C_TDC_FLAG) != RESET)
2013 {
2014 if(hi2c->pcount == 3)
2015 {
2016 /* disable ack */
2017 i2c_ack_enable(hi2c->i2cx, FALSE);
2018
2019 /* read data */
2020 (*hi2c->pbuff++) = i2c_data_receive(hi2c->i2cx);
2021 hi2c->pcount--;
2022 }
2023 else if(hi2c->pcount == 2)
2024 {
2025 /* generate stop condtion */
2026 i2c_stop_generate(hi2c->i2cx);
2027
2028 /* read data */
2029 (*hi2c->pbuff++) = i2c_data_receive(hi2c->i2cx);
2030 hi2c->pcount--;
2031
2032 /* read data */
2033 (*hi2c->pbuff++) = i2c_data_receive(hi2c->i2cx);
2034 hi2c->pcount--;
2035
2036 /* transfer complete */
2037 hi2c->status = I2C_END;
2038
2039 /* disable interrupt */
2040 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, FALSE);
2041 }
2042 else
2043 {
2044 /* read data */
2045 (*hi2c->pbuff++) = i2c_data_receive(hi2c->i2cx);
2046 hi2c->pcount--;
2047 }
2048 }
2049
2050 else if(i2c_flag_get(hi2c->i2cx, I2C_RDBF_FLAG) != RESET)
2051 {
2052 if(hi2c->pcount > 3)
2053 {
2054 /* read data */
2055 (*hi2c->pbuff++) = i2c_data_receive(hi2c->i2cx);
2056 hi2c->pcount--;
2057 }
2058 else if((hi2c->pcount == 3) || (hi2c->pcount == 2))
2059 {
2060 /* disable rdbf interrupt */
2061 i2c_interrupt_enable(hi2c->i2cx, I2C_DATA_INT, FALSE);
2062 }
2063 else
2064 {
2065 /* read data */
2066 (*hi2c->pbuff++) = i2c_data_receive(hi2c->i2cx);
2067 hi2c->pcount--;
2068
2069 /* transfer complete */
2070 hi2c->status = I2C_END;
2071
2072 /* disable interrupt */
2073 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, FALSE);
2074 }
2075 }
2076}
2077
2083void i2c_slave_tx_isr_int(i2c_handle_type* hi2c)
2084{
2085 /* step 1: receive slave address */
2086 if(i2c_flag_get(hi2c->i2cx, I2C_ADDR7F_FLAG) != RESET)
2087 {
2088 /* clear addr flag */
2089 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
2090 }
2091
2092 /* step 2: transfer data */
2093 else if(i2c_flag_get(hi2c->i2cx, I2C_TDBE_FLAG) != RESET)
2094 {
2095 if(hi2c->pcount)
2096 {
2097 /* send data */
2098 i2c_data_send(hi2c->i2cx, (*hi2c->pbuff++));
2099 hi2c->pcount--;
2100
2101 if(hi2c->pcount == 0)
2102 {
2103 /* disable interrupt */
2104 i2c_interrupt_enable(hi2c->i2cx, I2C_DATA_INT | I2C_EVT_INT | I2C_ERR_INT, FALSE);
2105
2106 /* wait for the ackfail flag to be set */
2107 hi2c->status = i2c_wait_flag(hi2c, I2C_ACKFAIL_FLAG, I2C_EVENT_CHECK_NONE, hi2c->timeout);
2108
2109 /* clear ackfail flag */
2110 i2c_flag_clear(hi2c->i2cx, I2C_ACKFAIL_FLAG);
2111
2112 /* transfer complete */
2113 hi2c->status = I2C_END;
2114 }
2115 }
2116 }
2117}
2118
2124void i2c_slave_rx_isr_int(i2c_handle_type* hi2c)
2125{
2126 /* step 1: receive slave address */
2127 if(i2c_flag_get(hi2c->i2cx, I2C_ADDR7F_FLAG) != RESET)
2128 {
2129 /* clear addr flag */
2130 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
2131 }
2132
2133 /* step 2: receive data */
2134 else if(i2c_flag_get(hi2c->i2cx, I2C_RDBF_FLAG) != RESET)
2135 {
2136 if(hi2c->pcount)
2137 {
2138 /* read data */
2139 (*hi2c->pbuff++) = i2c_data_receive(hi2c->i2cx);
2140
2141 hi2c->pcount--;
2142 }
2143 }
2144
2145 /* step 3: stop conditon is received, transfer ends */
2146 else if(i2c_flag_get(hi2c->i2cx, I2C_STOPF_FLAG) != RESET)
2147 {
2148 /* clear stop flag */
2149 i2c_flag_clear(hi2c->i2cx, I2C_STOPF_FLAG);
2150
2151 /* transfer complete */
2152 hi2c->status = I2C_END;
2153
2154 /* disable interrupt */
2155 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT | I2C_DATA_INT | I2C_ERR_INT, FALSE);
2156 }
2157}
2158
2164void i2c_master_tx_isr_dma(i2c_handle_type* hi2c)
2165{
2166 /* tdc interrupt */
2167 if(i2c_flag_get(hi2c->i2cx, I2C_TDC_FLAG) != RESET)
2168 {
2169 /* generate stop condtion */
2170 i2c_stop_generate(hi2c->i2cx);
2171
2172 /* disable evt interrupt */
2173 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT, FALSE);
2174
2175 /* transfer complete */
2176 hi2c->status = I2C_END;
2177 }
2178}
2179
2185void i2c_slave_tx_rx_isr_dma(i2c_handle_type* hi2c)
2186{
2187 /* receive slave address */
2188 if(i2c_flag_get(hi2c->i2cx, I2C_ADDR7F_FLAG) != RESET)
2189 {
2190 /* clear addr flag */
2191 i2c_flag_clear(hi2c->i2cx, I2C_ADDR7F_FLAG);
2192 }
2193
2194 /* wait for the stop flag to be set, trasnfer end */
2195 if(i2c_flag_get(hi2c->i2cx, I2C_STOPF_FLAG) != RESET)
2196 {
2197 /* clear stop flag */
2198 i2c_flag_clear(hi2c->i2cx, I2C_STOPF_FLAG);
2199
2200 /* disable evt interrupt */
2201 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT, FALSE);
2202
2203 /* disable ack */
2204 i2c_ack_enable(hi2c->i2cx, TRUE);
2205
2206 /* transfer complete */
2207 hi2c->status = I2C_END;
2208 }
2209}
2210
2216void i2c_evt_irq_handler(i2c_handle_type* hi2c)
2217{
2218 switch(hi2c->mode)
2219 {
2220 case I2C_INT_MA_TX:
2221 i2c_master_tx_isr_int(hi2c);
2222 break;
2223 case I2C_INT_MA_RX:
2224 i2c_master_rx_isr_int(hi2c);
2225 break;
2226 case I2C_INT_SLA_TX:
2227 i2c_slave_tx_isr_int(hi2c);
2228 break;
2229 case I2C_INT_SLA_RX:
2230 i2c_slave_rx_isr_int(hi2c);
2231 break;
2232 case I2C_DMA_MA_TX:
2233 i2c_master_tx_isr_dma(hi2c);
2234 break;
2235 case I2C_DMA_SLA_TX:
2236 case I2C_DMA_SLA_RX:
2237 i2c_slave_tx_rx_isr_dma(hi2c);
2238 break;
2239 default:
2240 break;
2241 }
2242}
2243
2249void i2c_dma_tx_irq_handler(i2c_handle_type* hi2c)
2250{
2251 /* transfer complete */
2252 if(dma_flag_get(DMA_GET_TC_FLAG(hi2c->dma_tx_channel)) != RESET)
2253 {
2254 /* disable the transfer complete interrupt */
2255 dma_interrupt_enable(hi2c->dma_tx_channel, DMA_FDT_INT, FALSE);
2256
2257 /* clear the transfer complete flag */
2258 dma_flag_clear(DMA_GET_TC_FLAG(hi2c->dma_tx_channel));
2259
2260 /* disable dma request */
2261 i2c_dma_enable(hi2c->i2cx, FALSE);
2262
2263 hi2c->pcount = 0;
2264
2265 switch(hi2c->mode)
2266 {
2267 case I2C_DMA_MA_TX:
2268 /* enable tdc interrupt, generate stop condition in tdc interrupt */
2269 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT, TRUE);
2270 break;
2271 case I2C_DMA_SLA_TX:
2272 /* enable ackfail interrupt, generate stop condition in ackfail interrupt */
2273 i2c_interrupt_enable(hi2c->i2cx, I2C_ERR_INT, TRUE);
2274 break;
2275 default:
2276 break;
2277 }
2278 }
2279}
2280
2286void i2c_dma_rx_irq_handler(i2c_handle_type* hi2c)
2287{
2288 /* transfer complete */
2289 if(dma_flag_get(DMA_GET_TC_FLAG(hi2c->dma_rx_channel)) != RESET)
2290 {
2291 /* disable the transfer complete interrupt */
2292 dma_interrupt_enable(hi2c->dma_rx_channel, DMA_FDT_INT, FALSE);
2293
2294 /* clear the transfer complete flag */
2295 dma_flag_clear(DMA_GET_TC_FLAG(hi2c->dma_rx_channel));
2296
2297 /* disable dma request */
2298 i2c_dma_enable(hi2c->i2cx, FALSE);
2299
2300 hi2c->pcount = 0;
2301
2302 switch(hi2c->mode)
2303 {
2304 case I2C_DMA_MA_RX:
2305 /* clear ackfail flag */
2306 i2c_flag_clear(hi2c->i2cx, I2C_ACKFAIL_FLAG);
2307
2308 if(hi2c->pcount != 1)
2309 {
2310 /* generate stop condtion */
2311 i2c_stop_generate(hi2c->i2cx);
2312 }
2313
2314 /* transfer complete */
2315 hi2c->status = I2C_END;
2316 break;
2317 case I2C_DMA_SLA_RX:
2318 /* enable stop interrupt, wait for the stop flag to be set */
2319 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT, TRUE);
2320 break;
2321 default:
2322 break;
2323 }
2324 }
2325}
2326
2332void i2c_err_irq_handler(i2c_handle_type* hi2c)
2333{
2334 /* buserr */
2335 if(i2c_flag_get(hi2c->i2cx, I2C_BUSERR_FLAG) != RESET)
2336 {
2337 i2c_flag_clear(hi2c->i2cx, I2C_BUSERR_FLAG);
2338
2339 hi2c->error_code = I2C_ERR_INTERRUPT;
2340 }
2341
2342 /* arlost */
2343 if(i2c_flag_get(hi2c->i2cx, I2C_ARLOST_FLAG) != RESET)
2344 {
2345 i2c_flag_clear(hi2c->i2cx, I2C_ARLOST_FLAG);
2346
2347 hi2c->error_code = I2C_ERR_INTERRUPT;
2348 }
2349
2350 /* ackfail */
2351 if(i2c_flag_get(hi2c->i2cx, I2C_ACKFAIL_FLAG) != RESET)
2352 {
2353 i2c_flag_clear(hi2c->i2cx, I2C_ACKFAIL_FLAG);
2354
2355 switch(hi2c->mode)
2356 {
2357 case I2C_DMA_SLA_TX:
2358 /* disable ack */
2359 i2c_ack_enable(hi2c->i2cx, FALSE);
2360
2361 /* disable evt interrupt */
2362 i2c_interrupt_enable(hi2c->i2cx, I2C_EVT_INT, FALSE);
2363
2364 /* transfer complete */
2365 hi2c->status = I2C_END;
2366 break;
2367 default:
2368 hi2c->error_code = I2C_ERR_INTERRUPT;
2369 break;
2370 }
2371 }
2372
2373 /* ouf */
2374 if(i2c_flag_get(hi2c->i2cx, I2C_OUF_FLAG) != RESET)
2375 {
2376 i2c_flag_clear(hi2c->i2cx, I2C_OUF_FLAG);
2377
2378 hi2c->error_code = I2C_ERR_INTERRUPT;
2379 }
2380
2381 /* pecerr */
2382 if(i2c_flag_get(hi2c->i2cx, I2C_PECERR_FLAG) != RESET)
2383 {
2384 i2c_flag_clear(hi2c->i2cx, I2C_PECERR_FLAG);
2385
2386 hi2c->error_code = I2C_ERR_INTERRUPT;
2387 }
2388
2389 /* tmout */
2390 if(i2c_flag_get(hi2c->i2cx, I2C_TMOUT_FLAG) != RESET)
2391 {
2392 i2c_flag_clear(hi2c->i2cx, I2C_TMOUT_FLAG);
2393
2394 hi2c->error_code = I2C_ERR_INTERRUPT;
2395 }
2396
2397 /* alertf */
2398 if(i2c_flag_get(hi2c->i2cx, I2C_ALERTF_FLAG) != RESET)
2399 {
2400 i2c_flag_clear(hi2c->i2cx, I2C_ALERTF_FLAG);
2401
2402 hi2c->error_code = I2C_ERR_INTERRUPT;
2403 }
2404
2405 /* disable all interrupts */
2406 i2c_interrupt_enable(hi2c->i2cx, I2C_ERR_INT, FALSE);
2407}
2408
i2c_wait_flag
i2c_status_type i2c_wait_flag(i2c_handle_type *hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout)
wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are wai...
Definition: i2c_application.c:178
i2c_master_rx_isr_int
void i2c_master_rx_isr_int(i2c_handle_type *hi2c)
master receive mode interrupt procession function
Definition: i2c_application.c:2010
i2c_memory_read_dma
i2c_status_type i2c_memory_read_dma(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode.
Definition: i2c_application.c:1871
i2c_slave_rx_isr_int
void i2c_slave_rx_isr_int(i2c_handle_type *hi2c)
slave receive mode interrupt procession function
Definition: i2c_application.c:2124
i2c_wait_end
i2c_status_type i2c_wait_end(i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end.
Definition: i2c_application.c:122
i2c_memory_write_dma
i2c_status_type i2c_memory_write_dma(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through dma mode.
Definition: i2c_application.c:1788
i2c_slave_tx_rx_isr_dma
void i2c_slave_tx_rx_isr_dma(i2c_handle_type *hi2c)
slave interrupt processing function in dma mode.
Definition: i2c_application.c:2185
i2c_evt_irq_handler
void i2c_evt_irq_handler(i2c_handle_type *hi2c)
interrupt procession function.
Definition: i2c_application.c:2216
i2c_memory_write_int
i2c_status_type i2c_memory_write_int(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through interrupt mode.
Definition: i2c_application.c:1594
i2c_master_tx_isr_int
void i2c_master_tx_isr_int(i2c_handle_type *hi2c)
master transfer mode interrupt procession function
Definition: i2c_application.c:1980
i2c_slave_transmit_int
i2c_status_type i2c_slave_transmit_int(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through interrupt mode.
Definition: i2c_application.c:979
i2c_err_irq_handler
void i2c_err_irq_handler(i2c_handle_type *hi2c)
i2c error interrupt function.
Definition: i2c_application.c:2332
i2c_dma_rx_irq_handler
void i2c_dma_rx_irq_handler(i2c_handle_type *hi2c)
dma reveive complete interrupt function.
Definition: i2c_application.c:2286
i2c_master_write_addr
i2c_status_type i2c_master_write_addr(i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
send address in master transmits mode.
Definition: i2c_application.c:278
I2C_START
#define I2C_START
i2c transmission status
Definition: i2c_application.c:86
i2c_slave_receive
i2c_status_type i2c_slave_receive(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through polling mode.
Definition: i2c_application.c:482
i2c_slave_transmit_dma
i2c_status_type i2c_slave_transmit_dma(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through dma mode.
Definition: i2c_application.c:1195
i2c_master_receive_int
i2c_status_type i2c_master_receive_int(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through interrupt mode.
Definition: i2c_application.c:901
i2c_slave_tx_isr_int
void i2c_slave_tx_isr_int(i2c_handle_type *hi2c)
slave transfer mode interrupt procession function
Definition: i2c_application.c:2083
i2c_memory_write
i2c_status_type i2c_memory_write(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through polling mode.
Definition: i2c_application.c:1292
i2c_master_read_addr
i2c_status_type i2c_master_read_addr(i2c_handle_type *hi2c, uint16_t address, uint32_t timeout)
send address in master receive mode.
Definition: i2c_application.c:331
I2C_END
#define I2C_END
Definition: i2c_application.c:87
i2c_master_transmit_dma
i2c_status_type i2c_master_transmit_dma(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through dma mode.
Definition: i2c_application.c:1018
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_master_tx_isr_dma
void i2c_master_tx_isr_dma(i2c_handle_type *hi2c)
master interrupt processing function in dma mode.
Definition: i2c_application.c:2164
i2c_memory_read
i2c_status_type i2c_memory_read(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode.
Definition: i2c_application.c:1381
i2c_memory_read_int
i2c_status_type i2c_memory_read_int(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through interrupt mode.
Definition: i2c_application.c:1671
i2c_memory_address_send
i2c_status_type i2c_memory_address_send(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t mem_address, int32_t timeout)
send memory address.
Definition: i2c_application.c:1246
DMA_GET_TC_FLAG
#define DMA_GET_TC_FLAG(DMA_CHANNEL)
get the dma transfer complete flag through the channel
Definition: i2c_application.c:35
i2c_dma_config
void i2c_dma_config(i2c_handle_type *hi2c, dma_channel_type *dma_channelx, uint8_t *pdata, uint16_t size)
dma transfer cofiguration.
Definition: i2c_application.c:249
i2c_dma_tx_irq_handler
void i2c_dma_tx_irq_handler(i2c_handle_type *hi2c)
dma transmission complete interrupt function.
Definition: i2c_application.c:2249
i2c_lowlevel_init
__WEAK void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: i2c_application.c:94
i2c_slave_receive_dma
i2c_status_type i2c_slave_receive_dma(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through dma mode.
Definition: i2c_application.c:1071
i2c_master_transmit_int
i2c_status_type i2c_master_transmit_int(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through interrupt mode.
Definition: i2c_application.c:815
i2c_master_receive
i2c_status_type i2c_master_receive(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through polling mode.
Definition: i2c_application.c:557
i2c_master_receive_dma
i2c_status_type i2c_master_receive_dma(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through dma mode.
Definition: i2c_application.c:1119
i2c_slave_receive_int
i2c_status_type i2c_slave_receive_int(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through interrupt mode.
Definition: i2c_application.c:862
i2c_master_transmit
i2c_status_type i2c_master_transmit(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode.
Definition: i2c_application.c:414
i2c_slave_transmit
i2c_status_type i2c_slave_transmit(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through polling mode.
Definition: i2c_application.c:728
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
i2c_data_receive
uint8_t i2c_data_receive(i2c_type *i2c_x)
receive a byte through the i2c periph.
Definition: at32f403_i2c.c:542
i2c_reset
void i2c_reset(i2c_type *i2c_x)
reset the i2c register
Definition: at32f403_i2c.c:49
i2c_ack_enable
void i2c_ack_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable acknowledge.
Definition: at32f403_i2c.c:290
i2c_7bit_address_send
void i2c_7bit_address_send(i2c_type *i2c_x, uint8_t address, i2c_direction_type direction)
transmit the slave address.
Definition: at32f403_i2c.c:510
i2c_dma_end_transfer_set
void i2c_dma_end_transfer_set(i2c_type *i2c_x, confirm_state new_state)
enable or disable if the next dma transfer will be the last one.
Definition: at32f403_i2c.c:431
i2c_stop_generate
void i2c_stop_generate(i2c_type *i2c_x)
generate stop condition.
Definition: at32f403_i2c.c:493
i2c_enable
void i2c_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable i2c periph
Definition: at32f403_i2c.c:248
i2c_flag_get
flag_status i2c_flag_get(i2c_type *i2c_x, uint32_t flag)
get flag status
Definition: at32f403_i2c.c:577
i2c_interrupt_enable
void i2c_interrupt_enable(i2c_type *i2c_x, uint16_t source, confirm_state new_state)
enable or disable interrupt
Definition: at32f403_i2c.c:462
i2c_flag_clear
void i2c_flag_clear(i2c_type *i2c_x, uint32_t flag)
clear flag status
Definition: at32f403_i2c.c:703
i2c_dma_enable
void i2c_dma_enable(i2c_type *i2c_x, confirm_state new_state)
enable or disable dma requests.
Definition: at32f403_i2c.c:444
i2c_data_send
void i2c_data_send(i2c_type *i2c_x, uint8_t data)
send a byte through the i2c periph.
Definition: at32f403_i2c.c:530
i2c_master_receive_ack_set
void i2c_master_receive_ack_set(i2c_type *i2c_x, i2c_master_ack_type pos)
master receiving mode acknowledge control.
Definition: at32f403_i2c.c:306
i2c_start_generate
void i2c_start_generate(i2c_type *i2c_x)
generate start condition.
Definition: at32f403_i2c.c:481
I2C_DIRECTION_RECEIVE
@ I2C_DIRECTION_RECEIVE
Definition: at32f403_i2c.h:165
I2C_DIRECTION_TRANSMIT
@ I2C_DIRECTION_TRANSMIT
Definition: at32f403_i2c.h:164
I2C_MASTER_ACK_CURRENT
@ I2C_MASTER_ACK_CURRENT
Definition: at32f403_i2c.h:108
I2C_MASTER_ACK_NEXT
@ I2C_MASTER_ACK_NEXT
Definition: at32f403_i2c.h:109
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
I2C_ADDRESS_MODE_10BIT
@ I2C_ADDRESS_MODE_10BIT
Definition: at32f403_i2c.h:156
I2C_EVT_INT
#define I2C_EVT_INT
Definition: at32f403_i2c.h:92
I2C_ERR_INT
#define I2C_ERR_INT
Definition: at32f403_i2c.h:93
I2C_DATA_INT
#define I2C_DATA_INT
Definition: at32f403_i2c.h:91
I2C_EVENT_CHECK_STOP
#define I2C_EVENT_CHECK_STOP
Definition: i2c_application.h:47
I2C_EVENT_CHECK_NONE
#define I2C_EVENT_CHECK_NONE
Definition: i2c_application.h:45
I2C_EVENT_CHECK_ACKFAIL
#define I2C_EVENT_CHECK_ACKFAIL
Definition: i2c_application.h:46
i2c_mem_address_width_type
i2c_mem_address_width_type
Definition: i2c_application.h:58
I2C_MEM_ADDR_WIDIH_8
@ I2C_MEM_ADDR_WIDIH_8
Definition: i2c_application.h:59
i2c_status_type
i2c_status_type
Definition: i2c_application.h:93
I2C_ERR_STEP_1
@ I2C_ERR_STEP_1
Definition: i2c_application.h:95
I2C_ERR_TIMEOUT
@ I2C_ERR_TIMEOUT
Definition: i2c_application.h:112
I2C_ERR_ADDR10
@ I2C_ERR_ADDR10
Definition: i2c_application.h:108
I2C_ERR_START
@ I2C_ERR_START
Definition: i2c_application.h:107
I2C_ERR_STEP_11
@ I2C_ERR_STEP_11
Definition: i2c_application.h:105
I2C_ERR_INTERRUPT
@ I2C_ERR_INTERRUPT
Definition: i2c_application.h:113
I2C_ERR_STEP_3
@ I2C_ERR_STEP_3
Definition: i2c_application.h:97
I2C_ERR_STEP_6
@ I2C_ERR_STEP_6
Definition: i2c_application.h:100
I2C_ERR_STEP_5
@ I2C_ERR_STEP_5
Definition: i2c_application.h:99
I2C_ERR_STEP_9
@ I2C_ERR_STEP_9
Definition: i2c_application.h:103
I2C_ERR_STEP_7
@ I2C_ERR_STEP_7
Definition: i2c_application.h:101
I2C_ERR_STOP
@ I2C_ERR_STOP
Definition: i2c_application.h:110
I2C_ERR_STEP_8
@ I2C_ERR_STEP_8
Definition: i2c_application.h:102
I2C_ERR_ACKFAIL
@ I2C_ERR_ACKFAIL
Definition: i2c_application.h:111
I2C_ERR_ADDR
@ I2C_ERR_ADDR
Definition: i2c_application.h:109
I2C_ERR_STEP_2
@ I2C_ERR_STEP_2
Definition: i2c_application.h:96
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
I2C_ERR_STEP_10
@ I2C_ERR_STEP_10
Definition: i2c_application.h:104
I2C_ERR_STEP_4
@ I2C_ERR_STEP_4
Definition: i2c_application.h:98
I2C_DMA_MA_RX
@ I2C_DMA_MA_RX
Definition: i2c_application.h:78
I2C_DMA_SLA_RX
@ I2C_DMA_SLA_RX
Definition: i2c_application.h:80
I2C_INT_SLA_RX
@ I2C_INT_SLA_RX
Definition: i2c_application.h:76
I2C_DMA_MA_TX
@ I2C_DMA_MA_TX
Definition: i2c_application.h:77
I2C_INT_MA_RX
@ I2C_INT_MA_RX
Definition: i2c_application.h:74
I2C_INT_SLA_TX
@ I2C_INT_SLA_TX
Definition: i2c_application.h:75
I2C_INT_MA_TX
@ I2C_INT_MA_TX
Definition: i2c_application.h:73
I2C_DMA_SLA_TX
@ I2C_DMA_SLA_TX
Definition: i2c_application.h:79
I2C_STARTF_FLAG
#define I2C_STARTF_FLAG
Definition: at32f403_i2c.h:50
I2C_TMOUT_FLAG
#define I2C_TMOUT_FLAG
Definition: at32f403_i2c.h:62
I2C_ADDR7F_FLAG
#define I2C_ADDR7F_FLAG
Definition: at32f403_i2c.h:51
I2C_ALERTF_FLAG
#define I2C_ALERTF_FLAG
Definition: at32f403_i2c.h:63
I2C_BUSERR_FLAG
#define I2C_BUSERR_FLAG
Definition: at32f403_i2c.h:57
I2C_ACKFAIL_FLAG
#define I2C_ACKFAIL_FLAG
Definition: at32f403_i2c.h:59
I2C_OUF_FLAG
#define I2C_OUF_FLAG
Definition: at32f403_i2c.h:60
I2C_ARLOST_FLAG
#define I2C_ARLOST_FLAG
Definition: at32f403_i2c.h:58
I2C_STOPF_FLAG
#define I2C_STOPF_FLAG
Definition: at32f403_i2c.h:54
I2C_TDC_FLAG
#define I2C_TDC_FLAG
Definition: at32f403_i2c.h:52
I2C_ADDRHF_FLAG
#define I2C_ADDRHF_FLAG
Definition: at32f403_i2c.h:53
I2C_TDBE_FLAG
#define I2C_TDBE_FLAG
Definition: at32f403_i2c.h:56
I2C_RDBF_FLAG
#define I2C_RDBF_FLAG
Definition: at32f403_i2c.h:55
I2C_PECERR_FLAG
#define I2C_PECERR_FLAG
Definition: at32f403_i2c.h:61
I2C_BUSYF_FLAG
#define I2C_BUSYF_FLAG
Definition: at32f403_i2c.h:75
i2c_application.h
i2c application libray header file
dma_channel_type
type define dma channel register all
Definition: at32f403_dma.h:287
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::dma_rx_channel
dma_channel_type * dma_rx_channel
Definition: i2c_application.h:135
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
i2c_handle_type::status
__IO uint32_t status
Definition: i2c_application.h:132
i2c_handle_type::pbuff
uint8_t * pbuff
Definition: i2c_application.h:128
i2c_handle_type::mode
__IO uint32_t mode
Definition: i2c_application.h:130
i2c_handle_type::timeout
__IO uint32_t timeout
Definition: i2c_application.h:131
i2c_handle_type::dma_init_struct
dma_init_type dma_init_struct
Definition: i2c_application.h:136
i2c_handle_type::error_code
__IO i2c_status_type error_code
Definition: i2c_application.h:133
i2c_handle_type::dma_tx_channel
dma_channel_type * dma_tx_channel
Definition: i2c_application.h:134
i2c_handle_type::pcount
__IO uint16_t pcount
Definition: i2c_application.h:129
i2c_type::addr1mode
__IO uint32_t addr1mode
Definition: at32f403_i2c.h:229
i2c_type::dt
__IO uint32_t dt
Definition: at32f403_i2c.h:253
i2c_type::oaddr1_bit
struct i2c_type::@487::@503 oaddr1_bit


AT32F403 Firmwary Library: i2c_application.h Source File

  • middlewares
  • i2c_application_library
i2c_application.h
Go to the documentation of this file.
1
26#ifndef __I2C_APPLICATION_H
27#define __I2C_APPLICATION_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
45#define I2C_EVENT_CHECK_NONE ((uint32_t)0x00000000)
46#define I2C_EVENT_CHECK_ACKFAIL ((uint32_t)0x00000001)
47#define I2C_EVENT_CHECK_STOP ((uint32_t)0x00000002)
57typedef enum
58{
59 I2C_MEM_ADDR_WIDIH_8 = 0x01,
60 I2C_MEM_ADDR_WIDIH_16 = 0x02,
61} i2c_mem_address_width_type;
62
71typedef enum
72{
73 I2C_INT_MA_TX = 0,
74 I2C_INT_MA_RX,
75 I2C_INT_SLA_TX,
76 I2C_INT_SLA_RX,
77 I2C_DMA_MA_TX,
78 I2C_DMA_MA_RX,
79 I2C_DMA_SLA_TX,
80 I2C_DMA_SLA_RX,
81} i2c_mode_type;
82
83
92typedef enum
93{
94 I2C_OK = 0,
95 I2C_ERR_STEP_1,
96 I2C_ERR_STEP_2,
97 I2C_ERR_STEP_3,
98 I2C_ERR_STEP_4,
99 I2C_ERR_STEP_5,
100 I2C_ERR_STEP_6,
101 I2C_ERR_STEP_7,
102 I2C_ERR_STEP_8,
103 I2C_ERR_STEP_9,
104 I2C_ERR_STEP_10,
105 I2C_ERR_STEP_11,
106 I2C_ERR_STEP_12,
107 I2C_ERR_START,
108 I2C_ERR_ADDR10,
109 I2C_ERR_ADDR,
110 I2C_ERR_STOP,
111 I2C_ERR_ACKFAIL,
112 I2C_ERR_TIMEOUT,
113 I2C_ERR_INTERRUPT,
115} i2c_status_type;
116
125typedef struct
126{
127 i2c_type *i2cx;
128 uint8_t *pbuff;
129 __IO uint16_t pcount;
130 __IO uint32_t mode;
131 __IO uint32_t timeout;
132 __IO uint32_t status;
133 __IO i2c_status_type error_code;
134 dma_channel_type *dma_tx_channel;
135 dma_channel_type *dma_rx_channel;
136 dma_init_type dma_init_struct;
137} i2c_handle_type;
138
147void i2c_config (i2c_handle_type* hi2c);
148void i2c_lowlevel_init (i2c_handle_type* hi2c);
149 i2c_status_type i2c_wait_end (i2c_handle_type* hi2c, uint32_t timeout);
150 i2c_status_type i2c_wait_flag (i2c_handle_type* hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout);
151
152 i2c_status_type i2c_master_transmit (i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout);
153 i2c_status_type i2c_master_receive (i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout);
154 i2c_status_type i2c_slave_transmit (i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout);
155 i2c_status_type i2c_slave_receive (i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout);
156
157 i2c_status_type i2c_master_transmit_int (i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout);
158 i2c_status_type i2c_master_receive_int (i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout);
159 i2c_status_type i2c_slave_transmit_int (i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout);
160 i2c_status_type i2c_slave_receive_int (i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout);
161
162 i2c_status_type i2c_master_transmit_dma (i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout);
163 i2c_status_type i2c_master_receive_dma (i2c_handle_type* hi2c, uint16_t address, uint8_t* pdata, uint16_t size, uint32_t timeout);
164 i2c_status_type i2c_slave_transmit_dma (i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout);
165 i2c_status_type i2c_slave_receive_dma (i2c_handle_type* hi2c, uint8_t* pdata, uint16_t size, uint32_t timeout);
166
167 i2c_status_type i2c_memory_write (i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout);
168 i2c_status_type i2c_memory_write_int (i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout);
169 i2c_status_type i2c_memory_write_dma (i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout);
170 i2c_status_type i2c_memory_read (i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout);
171 i2c_status_type i2c_memory_read_int (i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout);
172 i2c_status_type i2c_memory_read_dma (i2c_handle_type* hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t* pdata, uint16_t size, uint32_t timeout);
173
174void i2c_evt_irq_handler (i2c_handle_type* hi2c);
175void i2c_err_irq_handler (i2c_handle_type* hi2c);
176void i2c_dma_tx_irq_handler (i2c_handle_type* hi2c);
177void i2c_dma_rx_irq_handler (i2c_handle_type* hi2c);
178
187#ifdef __cplusplus
188}
189#endif
190
191#endif
at32f403.h
at32f403 header file
i2c_wait_flag
i2c_status_type i2c_wait_flag(i2c_handle_type *hi2c, uint32_t flag, uint32_t event_check, uint32_t timeout)
wait for the flag to be set or reset, only BUSYF flag is waiting to be reset, and other flags are wai...
Definition: i2c_application.c:178
i2c_memory_read_dma
i2c_status_type i2c_memory_read_dma(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode.
Definition: i2c_application.c:1871
i2c_wait_end
i2c_status_type i2c_wait_end(i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end.
Definition: i2c_application.c:122
i2c_memory_write_dma
i2c_status_type i2c_memory_write_dma(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through dma mode.
Definition: i2c_application.c:1788
i2c_evt_irq_handler
void i2c_evt_irq_handler(i2c_handle_type *hi2c)
interrupt procession function.
Definition: i2c_application.c:2216
i2c_memory_write_int
i2c_status_type i2c_memory_write_int(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through interrupt mode.
Definition: i2c_application.c:1594
i2c_slave_transmit_int
i2c_status_type i2c_slave_transmit_int(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through interrupt mode.
Definition: i2c_application.c:979
i2c_err_irq_handler
void i2c_err_irq_handler(i2c_handle_type *hi2c)
i2c error interrupt function.
Definition: i2c_application.c:2332
i2c_dma_rx_irq_handler
void i2c_dma_rx_irq_handler(i2c_handle_type *hi2c)
dma reveive complete interrupt function.
Definition: i2c_application.c:2286
i2c_slave_receive
i2c_status_type i2c_slave_receive(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through polling mode.
Definition: i2c_application.c:482
i2c_slave_transmit_dma
i2c_status_type i2c_slave_transmit_dma(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through dma mode.
Definition: i2c_application.c:1195
i2c_master_receive_int
i2c_status_type i2c_master_receive_int(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through interrupt mode.
Definition: i2c_application.c:901
i2c_memory_write
i2c_status_type i2c_memory_write(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through polling mode.
Definition: i2c_application.c:1292
i2c_master_transmit_dma
i2c_status_type i2c_master_transmit_dma(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through dma mode.
Definition: i2c_application.c:1018
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_memory_read
i2c_status_type i2c_memory_read(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode.
Definition: i2c_application.c:1381
i2c_memory_read_int
i2c_status_type i2c_memory_read_int(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through interrupt mode.
Definition: i2c_application.c:1671
i2c_dma_tx_irq_handler
void i2c_dma_tx_irq_handler(i2c_handle_type *hi2c)
dma transmission complete interrupt function.
Definition: i2c_application.c:2249
i2c_lowlevel_init
void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: i2c_application.c:94
i2c_slave_receive_dma
i2c_status_type i2c_slave_receive_dma(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through dma mode.
Definition: i2c_application.c:1071
i2c_master_transmit_int
i2c_status_type i2c_master_transmit_int(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through interrupt mode.
Definition: i2c_application.c:815
i2c_master_receive
i2c_status_type i2c_master_receive(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through polling mode.
Definition: i2c_application.c:557
i2c_master_receive_dma
i2c_status_type i2c_master_receive_dma(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through dma mode.
Definition: i2c_application.c:1119
i2c_slave_receive_int
i2c_status_type i2c_slave_receive_int(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through interrupt mode.
Definition: i2c_application.c:862
i2c_master_transmit
i2c_status_type i2c_master_transmit(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode.
Definition: i2c_application.c:414
i2c_slave_transmit
i2c_status_type i2c_slave_transmit(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through polling mode.
Definition: i2c_application.c:728
i2c_mem_address_width_type
i2c_mem_address_width_type
Definition: i2c_application.h:58
I2C_MEM_ADDR_WIDIH_8
@ I2C_MEM_ADDR_WIDIH_8
Definition: i2c_application.h:59
I2C_MEM_ADDR_WIDIH_16
@ I2C_MEM_ADDR_WIDIH_16
Definition: i2c_application.h:60
i2c_status_type
i2c_status_type
Definition: i2c_application.h:93
I2C_ERR_STEP_1
@ I2C_ERR_STEP_1
Definition: i2c_application.h:95
I2C_ERR_TIMEOUT
@ I2C_ERR_TIMEOUT
Definition: i2c_application.h:112
I2C_ERR_ADDR10
@ I2C_ERR_ADDR10
Definition: i2c_application.h:108
I2C_ERR_START
@ I2C_ERR_START
Definition: i2c_application.h:107
I2C_ERR_STEP_11
@ I2C_ERR_STEP_11
Definition: i2c_application.h:105
I2C_ERR_INTERRUPT
@ I2C_ERR_INTERRUPT
Definition: i2c_application.h:113
I2C_ERR_STEP_3
@ I2C_ERR_STEP_3
Definition: i2c_application.h:97
I2C_ERR_STEP_6
@ I2C_ERR_STEP_6
Definition: i2c_application.h:100
I2C_ERR_STEP_5
@ I2C_ERR_STEP_5
Definition: i2c_application.h:99
I2C_ERR_STEP_9
@ I2C_ERR_STEP_9
Definition: i2c_application.h:103
I2C_ERR_STEP_7
@ I2C_ERR_STEP_7
Definition: i2c_application.h:101
I2C_ERR_STOP
@ I2C_ERR_STOP
Definition: i2c_application.h:110
I2C_ERR_STEP_8
@ I2C_ERR_STEP_8
Definition: i2c_application.h:102
I2C_ERR_ACKFAIL
@ I2C_ERR_ACKFAIL
Definition: i2c_application.h:111
I2C_ERR_ADDR
@ I2C_ERR_ADDR
Definition: i2c_application.h:109
I2C_ERR_STEP_12
@ I2C_ERR_STEP_12
Definition: i2c_application.h:106
I2C_ERR_STEP_2
@ I2C_ERR_STEP_2
Definition: i2c_application.h:96
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
I2C_ERR_STEP_10
@ I2C_ERR_STEP_10
Definition: i2c_application.h:104
I2C_ERR_STEP_4
@ I2C_ERR_STEP_4
Definition: i2c_application.h:98
i2c_mode_type
i2c_mode_type
Definition: i2c_application.h:72
I2C_DMA_MA_RX
@ I2C_DMA_MA_RX
Definition: i2c_application.h:78
I2C_DMA_SLA_RX
@ I2C_DMA_SLA_RX
Definition: i2c_application.h:80
I2C_INT_SLA_RX
@ I2C_INT_SLA_RX
Definition: i2c_application.h:76
I2C_DMA_MA_TX
@ I2C_DMA_MA_TX
Definition: i2c_application.h:77
I2C_INT_MA_RX
@ I2C_INT_MA_RX
Definition: i2c_application.h:74
I2C_INT_SLA_TX
@ I2C_INT_SLA_TX
Definition: i2c_application.h:75
I2C_INT_MA_TX
@ I2C_INT_MA_TX
Definition: i2c_application.h:73
I2C_DMA_SLA_TX
@ I2C_DMA_SLA_TX
Definition: i2c_application.h:79
dma_channel_type
type define dma channel register all
Definition: at32f403_dma.h:287
dma_init_type
dma init type
Definition: at32f403_dma.h:184
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::dma_rx_channel
dma_channel_type * dma_rx_channel
Definition: i2c_application.h:135
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
i2c_handle_type::status
__IO uint32_t status
Definition: i2c_application.h:132
i2c_handle_type::pbuff
uint8_t * pbuff
Definition: i2c_application.h:128
i2c_handle_type::mode
__IO uint32_t mode
Definition: i2c_application.h:130
i2c_handle_type::timeout
__IO uint32_t timeout
Definition: i2c_application.h:131
i2c_handle_type::dma_init_struct
dma_init_type dma_init_struct
Definition: i2c_application.h:136
i2c_handle_type::error_code
__IO i2c_status_type error_code
Definition: i2c_application.h:133
i2c_handle_type::dma_tx_channel
dma_channel_type * dma_tx_channel
Definition: i2c_application.h:134
i2c_handle_type::pcount
__IO uint16_t pcount
Definition: i2c_application.h:129
i2c_type
type define i2c register all
Definition: at32f403_i2c.h:172


AT32F403 Firmwary Library: include_port.c Source File

  • utilities
  • at32f403_freertos_demo
  • src
include_port.c
Go to the documentation of this file.
1
33/* support ac5 and ac6 compiler */
34#if (__ARMCC_VERSION > 6000000)
35
36#include "..\..\..\middlewares\freertos\source\portable\GCC\ARM_CM4F\port.c"
37
38#else
39
40#include "..\..\..\middlewares\freertos\source\portable\rvds\ARM_CM4F\port.c"
41
42#endif
43


AT32F403 Firmwary Library: julia_fpu.c Source File

  • cortex_m4
  • fpu
  • src
julia_fpu.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "julia_fpu.h"
27
46void generate_julia_fpu(uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t * buffer)
47{
48 float tmp1, tmp2;
49 float num_real, num_img;
50 float rayon;
51 uint16_t i;
52 uint16_t x, y;
53 for (y = 0; y < size_y; y++)
54 {
55 for (x = 0; x < size_x; x++)
56 {
57 num_real = y - offset_y;
58 num_real = num_real / zoom;
59 num_img = x - offset_x;
60 num_img = num_img / zoom;
61 i = 0;
62 rayon = 0;
63 while((i < ITERATION - 1) && (rayon < 4))
64 {
65 tmp1 = num_real * num_real;
66 tmp2 = num_img * num_img;
67 num_img = 2 * num_real * num_img + IMG_CONSTANT;
68 num_real = tmp1 - tmp2 + REAL_CONSTANT;
69 rayon = tmp1 + tmp2;
70 i++;
71 }
72 /* store the value in the buffer */
73 buffer[x + y * size_x] = i;
74 }
75 }
76}
77
IMG_CONSTANT
#define IMG_CONSTANT
Definition: julia_fpu.h:45
generate_julia_fpu
void generate_julia_fpu(uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t *buffer)
julia calculation test with fpu option enable or disable
Definition: julia_fpu.c:46
REAL_CONSTANT
#define REAL_CONSTANT
Definition: julia_fpu.h:44
ITERATION
#define ITERATION
Definition: julia_fpu.h:43
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
julia_fpu.h
julia_fpu header file


AT32F403 Firmwary Library: julia_fpu.h Source File

  • cortex_m4
  • fpu
  • inc
julia_fpu.h
Go to the documentation of this file.
1
25#ifndef __JULIA_FPU_H
26#define __JULIA_FPU_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32/* includes ------------------------------------------------------------------*/
33#include "at32f403.h"
34
43#define ITERATION 200
44#define REAL_CONSTANT (0.285f)
45#define IMG_CONSTANT (0.01f)
46
51void generate_julia_fpu(uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t * buffer);
52
65#ifdef __cplusplus
66}
67#endif
68
69#endif
70
at32f403.h
at32f403 header file
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
generate_julia_fpu
void generate_julia_fpu(uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t *buffer)
julia calculation test with fpu option enable or disable
Definition: julia_fpu.c:46


AT32F403 Firmwary Library: keyboard_class.c Source File

  • middlewares
  • usbd_class
  • keyboard
keyboard_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "keyboard_class.h"
26#include "keyboard_desc.h"
27
41static usb_sts_type class_init_handler(void *udev);
42static usb_sts_type class_clear_handler(void *udev);
43static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
44static usb_sts_type class_ept0_tx_handler(void *udev);
45static usb_sts_type class_ept0_rx_handler(void *udev);
46static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
47static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_sof_handler(void *udev);
49static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
50
51 keyboard_type keyboard_struct;
52#define SHIFT 0x80
53const static unsigned char _asciimap[128] =
54{
55 0x00,// NUL
56 0x00,// SOH
57 0x00,// STX
58 0x00,// ETX
59 0x00,// EOT
60 0x00,// ENQ
61 0x00,// ACK
62 0x00,// BEL
63 0x2A,// BS Backspace
64 0x2B,// TAB Tab
65 0x28,// LF Enter
66 0x00,// VT
67 0x00,// FF
68 0x00,// CR
69 0x00,// SO
70 0x00,// SI
71 0x00,// DEL
72 0x00,// DC1
73 0x00,// DC2
74 0x00,// DC3
75 0x00,// DC4
76 0x00,// NAK
77 0x00,// SYN
78 0x00,// ETB
79 0x00,// CAN
80 0x00,// EM
81 0x00,// SUB
82 0x00,// ESC
83 0x00,// FS
84 0x00,// GS
85 0x00,// RS
86 0x00,// US
87
88 0x2C,// ' '
89 0x1E|SHIFT,// !
90 0x34|SHIFT,// "
91 0x20|SHIFT,// #
92 0x21|SHIFT,// $
93 0x22|SHIFT,// %
94 0x24|SHIFT,// &
95 0x34, // '
96 0x26|SHIFT,// (
97 0x27|SHIFT,// )
98 0x25|SHIFT,// *
99 0x2E|SHIFT,// +
100 0x36,// ,
101 0x2D,// -
102 0x37,// .
103 0x38,// /
104 0x27,// 0
105 0x1E,// 1
106 0x1F,// 2
107 0x20,// 3
108 0x21,// 4
109 0x22,// 5
110 0x23,// 6
111 0x24,// 7
112 0x25,// 8
113 0x26,// 9
114 0x33|SHIFT,// :
115 0x33, // ;
116 0x36|SHIFT,// <
117 0x2E, // =
118 0x37|SHIFT,// >
119 0x38|SHIFT,// ?
120 0x1F|SHIFT,// @
121 0x04|SHIFT,// A
122 0x05|SHIFT,// B
123 0x06|SHIFT,// C
124 0x07|SHIFT,// D
125 0x08|SHIFT,// E
126 0x09|SHIFT,// F
127 0x0A|SHIFT,// G
128 0x0B|SHIFT,// H
129 0x0C|SHIFT,// I
130 0x0D|SHIFT,// J
131 0x0E|SHIFT,// K
132 0x0F|SHIFT,// L
133 0x10|SHIFT,// M
134 0x11|SHIFT,// N
135 0x12|SHIFT,// O
136 0x13|SHIFT,// P
137 0x14|SHIFT,// Q
138 0x15|SHIFT,// R
139 0x16|SHIFT,// S
140 0x17|SHIFT,// T
141 0x18|SHIFT,// U
142 0x19|SHIFT,// V
143 0x1A|SHIFT,// W
144 0x1B|SHIFT,// X
145 0x1C|SHIFT,// Y
146 0x1D|SHIFT,// Z
147 0x2F, // [
148 0x31, // bslash
149 0x30, // ]
150 0x23|SHIFT,// ^
151 0x2D|SHIFT,// _
152 0x35, // `
153 0x04, // a
154 0x05, // b
155 0x06, // c
156 0x07, // d
157 0x08, // e
158 0x09, // f
159 0x0A, // g
160 0x0B, // h
161 0x0C, // i
162 0x0D, // j
163 0x0E, // k
164 0x0F, // l
165 0x10, // m
166 0x11, // n
167 0x12, // o
168 0x13, // p
169 0x14, // q
170 0x15, // r
171 0x16, // s
172 0x17, // t
173 0x18, // u
174 0x19, // v
175 0x1A, // w
176 0x1B, // x
177 0x1C, // y
178 0x1D, // z
179 0x2f|SHIFT,//
180 0x31|SHIFT,// |
181 0x30|SHIFT,// }
182 0x35|SHIFT,// ~
183 0 // DEL
184};
185
186/* usb device class handler */
187 usbd_class_handler keyboard_class_handler =
188{
189 class_init_handler,
190 class_clear_handler,
191 class_setup_handler,
192 class_ept0_tx_handler,
193 class_ept0_rx_handler,
194 class_in_handler,
195 class_out_handler,
196 class_sof_handler,
197 class_event_handler,
198 &keyboard_struct
199};
200
206static usb_sts_type class_init_handler(void *udev)
207{
208 usb_sts_type status = USB_OK;
209 usbd_core_type *pudev = (usbd_core_type *)udev;
210 keyboard_type *pkeyboard = (keyboard_type *)pudev->class_handler->pdata;
211#ifndef USB_EPT_AUTO_MALLOC_BUFFER
212 /* use user define buffer address */
213 usbd_ept_buf_custom_define(pudev, USBD_KEYBOARD_IN_EPT, EPT1_TX_ADDR);
214#endif
215
216 /* open hid in endpoint */
217 usbd_ept_open(pudev, USBD_KEYBOARD_IN_EPT, EPT_INT_TYPE, USBD_KEYBOARD_IN_MAXPACKET_SIZE);
218
219 pkeyboard->g_u8tx_completed = 1;
220
221 return status;
222}
223
229static usb_sts_type class_clear_handler(void *udev)
230{
231 usb_sts_type status = USB_OK;
232 usbd_core_type *pudev = (usbd_core_type *)udev;
233
234 /* close hid in endpoint */
235 usbd_ept_close(pudev, USBD_KEYBOARD_IN_EPT);
236
237 return status;
238}
239
246static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
247{
248 usb_sts_type status = USB_OK;
249 usbd_core_type *pudev = (usbd_core_type *)udev;
250 keyboard_type *pkeyboard = (keyboard_type *)pudev->class_handler->pdata;
251 uint16_t len;
252 uint8_t *buf;
253
254 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
255 {
256 /* class request */
257 case USB_REQ_TYPE_CLASS:
258 switch(setup->bRequest)
259 {
260 case HID_REQ_SET_PROTOCOL:
261 pkeyboard->hid_protocol = (uint8_t)setup->wValue;
262 break;
263 case HID_REQ_GET_PROTOCOL:
264 usbd_ctrl_send(pudev, (uint8_t *)&pkeyboard->hid_protocol, 1);
265 break;
266 case HID_REQ_SET_IDLE:
267 pkeyboard->hid_set_idle = (uint8_t)(setup->wValue >> 8);
268 break;
269 case HID_REQ_GET_IDLE:
270 usbd_ctrl_send(pudev, (uint8_t *)&pkeyboard->hid_set_idle, 1);
271 break;
272 case HID_REQ_SET_REPORT:
273 pkeyboard->hid_state = HID_REQ_SET_REPORT;
274 usbd_ctrl_recv(pudev, pkeyboard->hid_set_report, setup->wLength);
275 break;
276 default:
277 usbd_ctrl_unsupport(pudev);
278 break;
279 }
280 break;
281 /* standard request */
282 case USB_REQ_TYPE_STANDARD:
283 switch(setup->bRequest)
284 {
285 case USB_STD_REQ_GET_DESCRIPTOR:
286 if(setup->wValue >> 8 == HID_REPORT_DESC)
287 {
288 len = MIN(USBD_KEYBOARD_SIZ_REPORT_DESC, setup->wLength);
289 buf = (uint8_t *)g_usbd_keyboard_report;
290 }
291 else if(setup->wValue >> 8 == HID_DESCRIPTOR_TYPE)
292 {
293 len = MIN(9, setup->wLength);
294 buf = (uint8_t *)g_keyboard_usb_desc;
295 }
296 usbd_ctrl_send(pudev, (uint8_t *)buf, len);
297 break;
298 case USB_STD_REQ_GET_INTERFACE:
299 usbd_ctrl_send(pudev, (uint8_t *)&pkeyboard->alt_setting, 1);
300 break;
301 case USB_STD_REQ_SET_INTERFACE:
302 pkeyboard->alt_setting = setup->wValue;
303 break;
304 case USB_STD_REQ_CLEAR_FEATURE:
305 break;
306 case USB_STD_REQ_SET_FEATURE:
307 break;
308 default:
309 usbd_ctrl_unsupport(pudev);
310 break;
311 }
312 break;
313 default:
314 usbd_ctrl_unsupport(pudev);
315 break;
316 }
317 return status;
318}
319
325static usb_sts_type class_ept0_tx_handler(void *udev)
326{
327 usb_sts_type status = USB_OK;
328
329 /* ...user code... */
330
331 return status;
332}
333
339static usb_sts_type class_ept0_rx_handler(void *udev)
340{
341 usb_sts_type status = USB_OK;
342 usbd_core_type *pudev = (usbd_core_type *)udev;
343 keyboard_type *pkeyboard = (keyboard_type *)pudev->class_handler->pdata;
344 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
345 /* ...user code... */
346 if( pkeyboard->hid_state == HID_REQ_SET_REPORT)
347 {
348 /* hid buffer process */
349 pkeyboard->hid_state = 0;
350 }
351
352 return status;
353}
354
361static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
362{
363 usb_sts_type status = USB_OK;
364 usbd_core_type *pudev = (usbd_core_type *)udev;
365 keyboard_type *pkeyboard = (keyboard_type *)pudev->class_handler->pdata;
366
367 /* ...user code...
368 trans next packet data
369 */
370 pkeyboard->g_u8tx_completed = 1;
371
372 return status;
373}
374
381static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
382{
383 usb_sts_type status = USB_OK;
384
385 return status;
386}
387
393static usb_sts_type class_sof_handler(void *udev)
394{
395 usb_sts_type status = USB_OK;
396
397 /* ...user code... */
398
399 return status;
400}
401
408static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
409{
410 usb_sts_type status = USB_OK;
411 usbd_core_type *pudev = (usbd_core_type *)udev;
412 keyboard_type *pkeyboard = (keyboard_type *)pudev->class_handler->pdata;
413 switch(event)
414 {
415 case USBD_RESET_EVENT:
416
417 /* ...user code... */
418
419 break;
420 case USBD_SUSPEND_EVENT:
421 pkeyboard->hid_suspend_flag = 1;
422 /* ...user code... */
423
424 break;
425 case USBD_WAKEUP_EVENT:
426 /* ...user code... */
427
428 break;
429 default:
430 break;
431 }
432 return status;
433}
434
442 usb_sts_type usb_keyboard_class_send_report(void *udev, uint8_t *report, uint16_t len)
443{
444 usb_sts_type status = USB_OK;
445 usbd_core_type *pudev = (usbd_core_type *)udev;
446
447 if(usbd_connect_state_get(pudev) == USB_CONN_STATE_CONFIGURED)
448 usbd_ept_send(pudev, USBD_KEYBOARD_IN_EPT, report, len);
449
450 return status;
451}
452
453
460void usb_hid_keyboard_send_char(void *udev, uint8_t ascii_code)
461{
462 uint8_t key_data = 0;
463 usbd_core_type *pudev = (usbd_core_type *)udev;
464 keyboard_type *pkeyboard = (keyboard_type *)pudev->class_handler->pdata;
465
466 if(ascii_code > 128)
467 {
468 ascii_code = 0;
469 }
470 else
471 {
472 ascii_code = _asciimap[ascii_code];
473 if(!ascii_code)
474 {
475 ascii_code = 0;
476 }
477
478 if(ascii_code & SHIFT)
479 {
480 key_data = 0x2;
481 ascii_code &= 0x7F;
482 }
483 }
484
485 if((pkeyboard->temp == ascii_code) && (ascii_code != 0))
486 {
487 pkeyboard->keyboard_buf[0] = 0;
488 pkeyboard->keyboard_buf[2] = 0;
489 usb_keyboard_class_send_report(udev, pkeyboard->keyboard_buf, 8);
490 }
491 else
492 {
493 pkeyboard->keyboard_buf[0] = key_data;
494 pkeyboard->keyboard_buf[2] = ascii_code;
495 usb_keyboard_class_send_report(udev, pkeyboard->keyboard_buf, 8);
496 }
497}
498
499
USB_EPT_AUTO_MALLOC_BUFFER
#define USB_EPT_AUTO_MALLOC_BUFFER
auto malloc usb endpoint buffer
Definition: project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h:61
EPT1_TX_ADDR
#define EPT1_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:75
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
USBD_KEYBOARD_IN_MAXPACKET_SIZE
#define USBD_KEYBOARD_IN_MAXPACKET_SIZE
usb hid in and out max packet size define
Definition: keyboard_class.h:56
USBD_KEYBOARD_IN_EPT
#define USBD_KEYBOARD_IN_EPT
usb hid use endpoint define
Definition: keyboard_class.h:51
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: keyboard_class.c:393
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: keyboard_class.c:361
keyboard_struct
keyboard_type keyboard_struct
Definition: keyboard_class.c:51
_asciimap
static const unsigned char _asciimap[128]
Definition: keyboard_class.c:53
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: keyboard_class.c:229
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: keyboard_class.c:246
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: keyboard_class.c:325
usb_hid_keyboard_send_char
void usb_hid_keyboard_send_char(void *udev, uint8_t ascii_code)
usb device class report function
Definition: keyboard_class.c:460
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: keyboard_class.c:339
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: keyboard_class.c:408
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: keyboard_class.c:206
usb_keyboard_class_send_report
usb_sts_type usb_keyboard_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: keyboard_class.c:442
keyboard_class_handler
usbd_class_handler keyboard_class_handler
Definition: keyboard_class.c:187
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: keyboard_class.c:381
SHIFT
#define SHIFT
Definition: keyboard_class.c:52
USBD_KEYBOARD_SIZ_REPORT_DESC
#define USBD_KEYBOARD_SIZ_REPORT_DESC
Definition: keyboard_desc.h:63
g_usbd_keyboard_report
uint8_t g_usbd_keyboard_report[63]
usb mouse report descriptor
Definition: keyboard_desc.c:160
g_keyboard_usb_desc
uint8_t g_keyboard_usb_desc[9]
usb hid descriptor
Definition: keyboard_desc.c:202
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
HID_DESCRIPTOR_TYPE
#define HID_DESCRIPTOR_TYPE
Definition: usb_std.h:234
HID_REQ_GET_PROTOCOL
#define HID_REQ_GET_PROTOCOL
Definition: usb_std.h:229
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
HID_REQ_SET_PROTOCOL
#define HID_REQ_SET_PROTOCOL
usb hid class request code define
Definition: usb_std.h:228
HID_REPORT_DESC
#define HID_REPORT_DESC
Definition: usb_std.h:235
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
HID_REQ_SET_IDLE
#define HID_REQ_SET_IDLE
Definition: usb_std.h:230
HID_REQ_GET_IDLE
#define HID_REQ_GET_IDLE
Definition: usb_std.h:231
HID_REQ_SET_REPORT
#define HID_REQ_SET_REPORT
Definition: usb_std.h:232
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
keyboard_class.h
usb hid keyboard header file
keyboard_desc.h
usb keyboard descriptor header file
keyboard_type
Definition: keyboard_class.h:65
keyboard_type::keyboard_buf
uint8_t keyboard_buf[8]
Definition: keyboard_class.h:70
keyboard_type::hid_set_report
uint8_t hid_set_report[64]
Definition: keyboard_class.h:69
keyboard_type::hid_set_idle
uint32_t hid_set_idle
Definition: keyboard_class.h:67
keyboard_type::alt_setting
uint32_t alt_setting
Definition: keyboard_class.h:68
keyboard_type::temp
uint8_t temp
Definition: keyboard_class.h:75
keyboard_type::hid_state
uint8_t hid_state
Definition: keyboard_class.h:74
keyboard_type::g_u8tx_completed
__IO uint8_t g_u8tx_completed
Definition: keyboard_class.h:73
keyboard_type::hid_protocol
uint32_t hid_protocol
Definition: keyboard_class.h:66
keyboard_type::hid_suspend_flag
__IO uint8_t hid_suspend_flag
Definition: keyboard_class.h:72
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: keyboard_class.h Source File

  • middlewares
  • usbd_class
  • keyboard
keyboard_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __KEYBOARD_CLASS_H
27#define __KEYBOARD_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
51#define USBD_KEYBOARD_IN_EPT 0x81
52
56#define USBD_KEYBOARD_IN_MAXPACKET_SIZE 0x40
57#define USBD_KEYBOARD_OUT_MAXPACKET_SIZE 0x40
58
64typedef struct
65{
66 uint32_t hid_protocol;
67 uint32_t hid_set_idle;
68 uint32_t alt_setting;
69 uint8_t hid_set_report[64];
70 uint8_t keyboard_buf[8];
71
72 __IO uint8_t hid_suspend_flag;
73 __IO uint8_t g_u8tx_completed;
74 uint8_t hid_state;
75 uint8_t temp;
76
77}keyboard_type;
78
82extern usbd_class_handler keyboard_class_handler;
83
84 usb_sts_type usb_keyboard_class_send_report(void *udev, uint8_t *report, uint16_t len);
85void usb_hid_keyboard_send_char(void *udev, uint8_t ascii_code);
97#ifdef __cplusplus
98}
99#endif
100
101#endif
usb_hid_keyboard_send_char
void usb_hid_keyboard_send_char(void *udev, uint8_t ascii_code)
usb device class report function
Definition: keyboard_class.c:460
usb_keyboard_class_send_report
usb_sts_type usb_keyboard_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: keyboard_class.c:442
keyboard_class_handler
usbd_class_handler keyboard_class_handler
Definition: keyboard_class.c:187
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
keyboard_type
Definition: keyboard_class.h:65
keyboard_type::hid_set_idle
uint32_t hid_set_idle
Definition: keyboard_class.h:67
keyboard_type::alt_setting
uint32_t alt_setting
Definition: keyboard_class.h:68
keyboard_type::temp
uint8_t temp
Definition: keyboard_class.h:75
keyboard_type::hid_state
uint8_t hid_state
Definition: keyboard_class.h:74
keyboard_type::g_u8tx_completed
__IO uint8_t g_u8tx_completed
Definition: keyboard_class.h:73
keyboard_type::hid_protocol
uint32_t hid_protocol
Definition: keyboard_class.h:66
keyboard_type::hid_suspend_flag
__IO uint8_t hid_suspend_flag
Definition: keyboard_class.h:72
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: keyboard_desc.c Source File

  • middlewares
  • usbd_class
  • keyboard
keyboard_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "keyboard_desc.h"
28
42static usbd_desc_t *get_device_descriptor(void);
43static usbd_desc_t *get_device_qualifier(void);
44static usbd_desc_t *get_device_configuration(void);
45static usbd_desc_t *get_device_other_speed(void);
46static usbd_desc_t *get_device_lang_id(void);
47static usbd_desc_t *get_device_manufacturer_string(void);
48static usbd_desc_t *get_device_product_string(void);
49static usbd_desc_t *get_device_serial_string(void);
50static usbd_desc_t *get_device_interface_string(void);
51static usbd_desc_t *get_device_config_string(void);
52
53static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
54static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
55static void get_serial_num(void);
56#if defined ( __ICCARM__ ) /* iar compiler */
57 #pragma data_alignment=4
58#endif
59ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
60
64 usbd_desc_handler keyboard_desc_handler =
65{
66 get_device_descriptor,
67 get_device_qualifier,
68 get_device_configuration,
69 get_device_other_speed,
70 get_device_lang_id,
71 get_device_manufacturer_string,
72 get_device_product_string,
73 get_device_serial_string,
74 get_device_interface_string,
75 get_device_config_string,
76};
77
81#if defined ( __ICCARM__ ) /* iar compiler */
82 #pragma data_alignment=4
83#endif
84ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
85{
86 USB_DEVICE_DESC_LEN, /* bLength */
87 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
88 0x00, /* bcdUSB */
89 0x02,
90 0x00, /* bDeviceClass */
91 0x00, /* bDeviceSubClass */
92 0x00, /* bDeviceProtocol */
93 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
94 LBYTE(USBD_KEYBOARD_VENDOR_ID), /* idVendor */
95 HBYTE(USBD_KEYBOARD_VENDOR_ID), /* idVendor */
96 LBYTE(USBD_KEYBOARD_PRODUCT_ID), /* idProduct */
97 HBYTE(USBD_KEYBOARD_PRODUCT_ID), /* idProduct */
98 0x00, /* bcdDevice rel. 2.00 */
99 0x02,
100 USB_MFC_STRING, /* Index of manufacturer string */
101 USB_PRODUCT_STRING, /* Index of product string */
102 USB_SERIAL_STRING, /* Index of serial number string */
103 1 /* bNumConfigurations */
104};
105
109#if defined ( __ICCARM__ ) /* iar compiler */
110 #pragma data_alignment=4
111#endif
112ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_KEYBOARD_CONFIG_DESC_SIZE] ALIGNED_TAIL =
113{
114 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
115 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
116 LBYTE(USBD_KEYBOARD_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
117 HBYTE(USBD_KEYBOARD_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
118 0x01, /* bNumInterfaces: 1 interface */
119 0x01, /* bConfigurationValue: configuration value */
120 0x00, /* iConfiguration: index of string descriptor describing
121 the configuration */
122 0xE0, /* bmAttributes: self powered and support remote wakeup*/
123 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
124
125 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
126 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
127 0x00, /* bInterfaceNumber: number of interface */
128 0x00, /* bAlternateSetting: alternate set */
129 0x01, /* bNumEndpoints: number of endpoints */
130 USB_CLASS_CODE_HID, /* bInterfaceClass: class code hid */
131 0x01, /* bInterfaceSubClass: subclass code */
132 0x01, /* bInterfaceProtocol: protocol code */
133 0x00, /* iInterface: index of string descriptor */
134
135 0x09, /* bLength: size of HID descriptor in bytes */
136 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
137 LBYTE(KEYBOARD_BCD_NUM),
138 HBYTE(KEYBOARD_BCD_NUM), /* bcdHID: HID class specification release number */
139 0x00, /* bCountryCode: hardware target conutry */
140 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
141 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
142 LBYTE(sizeof(g_usbd_keyboard_report)),
143 HBYTE(sizeof(g_usbd_keyboard_report)), /* wDescriptorLength: total length of reprot descriptor */
144
145 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
146 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
147 USBD_KEYBOARD_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
148 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
149 LBYTE(USBD_KEYBOARD_IN_MAXPACKET_SIZE),
150 HBYTE(USBD_KEYBOARD_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
151 KEYBOARD_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
152};
153
157#if defined ( __ICCARM__ ) /* iar compiler */
158 #pragma data_alignment=4
159#endif
160ALIGNED_HEAD uint8_t g_usbd_keyboard_report[USBD_KEYBOARD_SIZ_REPORT_DESC] ALIGNED_TAIL =
161{
162 0x05, 0x01, // USAGE_PAGE (Generic Desktop)
163 0x09, 0x06, // USAGE (Keyboard)
164 0xa1, 0x01, // COLLECTION (Application)
165 0x05, 0x07, // USAGE_PAGE (Keyboard)
166 0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl)
167 0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI)
168 0x15, 0x00, // LOGICAL_MINIMUM (0)
169 0x25, 0x01, // LOGICAL_MAXIMUM (1)
170 0x75, 0x01, // REPORT_SIZE (1)
171 0x95, 0x08, // REPORT_COUNT (8)
172 0x81, 0x02, // INPUT (Data,Var,Abs)
173 0x95, 0x01, // REPORT_COUNT (1)
174 0x75, 0x08, // REPORT_SIZE (8)
175 0x81, 0x03, // INPUT (Cnst,Var,Abs)
176 0x95, 0x05, // REPORT_COUNT (5)
177 0x75, 0x01, // REPORT_SIZE (1)
178 0x05, 0x08, // USAGE_PAGE (LEDs)
179 0x19, 0x01, // USAGE_MINIMUM (Num Lock)
180 0x29, 0x05, // USAGE_MAXIMUM (Kana)
181 0x91, 0x02, // OUTPUT (Data,Var,Abs)
182 0x95, 0x01, // REPORT_COUNT (1)
183 0x75, 0x03, // REPORT_SIZE (3)
184 0x91, 0x03, // OUTPUT (Cnst,Var,Abs)
185 0x95, 0x06, // REPORT_COUNT (6)
186 0x75, 0x08, // REPORT_SIZE (8)
187 0x15, 0x00, // LOGICAL_MINIMUM (0)
188 0x25, 0xFF, // LOGICAL_MAXIMUM (255)
189 0x05, 0x07, // USAGE_PAGE (Keyboard)
190 0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated))
191 0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application)
192 0x81, 0x00, // INPUT (Data,Ary,Abs)
193 0xc0 // END_COLLECTION
194};
195
199#if defined ( __ICCARM__ ) /* iar compiler */
200 #pragma data_alignment=4
201#endif
202ALIGNED_HEAD uint8_t g_keyboard_usb_desc[9] ALIGNED_TAIL =
203{
204 0x09, /* bLength: size of HID descriptor in bytes */
205 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
206 LBYTE(KEYBOARD_BCD_NUM),
207 HBYTE(KEYBOARD_BCD_NUM), /* bcdHID: HID class specification release number */
208 0x00, /* bCountryCode: hardware target conutry */
209 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
210 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
211 LBYTE(sizeof(g_usbd_keyboard_report)),
212 HBYTE(sizeof(g_usbd_keyboard_report)), /* wDescriptorLength: total length of reprot descriptor */
213};
214
215
219#if defined ( __ICCARM__ ) /* iar compiler */
220 #pragma data_alignment=4
221#endif
222ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_KEYBOARD_SIZ_STRING_LANGID] ALIGNED_TAIL =
223{
224 USBD_KEYBOARD_SIZ_STRING_LANGID,
225 USB_DESCIPTOR_TYPE_STRING,
226 0x09,
227 0x04,
228};
229
233#if defined ( __ICCARM__ ) /* iar compiler */
234 #pragma data_alignment=4
235#endif
236ALIGNED_HEAD static uint8_t g_string_serial[USBD_KEYBOARD_SIZ_STRING_SERIAL] ALIGNED_TAIL =
237{
238 USBD_KEYBOARD_SIZ_STRING_SERIAL,
239 USB_DESCIPTOR_TYPE_STRING,
240};
241
242
243/* device descriptor */
244static usbd_desc_t device_descriptor =
245{
246 USB_DEVICE_DESC_LEN,
247 g_usbd_descriptor
248};
249
250/* config descriptor */
251static usbd_desc_t config_descriptor =
252{
253 USBD_KEYBOARD_CONFIG_DESC_SIZE,
254 g_usbd_configuration
255};
256
257/* langid descriptor */
258static usbd_desc_t langid_descriptor =
259{
260 USBD_KEYBOARD_SIZ_STRING_LANGID,
261 g_string_lang_id
262};
263
264/* serial descriptor */
265static usbd_desc_t serial_descriptor =
266{
267 USBD_KEYBOARD_SIZ_STRING_SERIAL,
268 g_string_serial
269};
270
271static usbd_desc_t vp_desc;
272
279static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
280{
281 uint16_t str_len = 0, id_pos = 2;
282 uint8_t *tmp_str = string;
283
284 while(*tmp_str != '\0')
285 {
286 str_len ++;
287 unicode_buf[id_pos ++] = *tmp_str ++;
288 unicode_buf[id_pos ++] = 0x00;
289 }
290
291 str_len = str_len * 2 + 2;
292 unicode_buf[0] = str_len;
293 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
294
295 return str_len;
296}
297
305static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
306{
307 uint8_t idx = 0;
308
309 for( idx = 0 ; idx < len ; idx ++)
310 {
311 if( ((value >> 28)) < 0xA )
312 {
313 pbuf[ 2 * idx] = (value >> 28) + '0';
314 }
315 else
316 {
317 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
318 }
319
320 value = value << 4;
321
322 pbuf[2 * idx + 1] = 0;
323 }
324}
325
331static void get_serial_num(void)
332{
333 uint32_t serial0, serial1, serial2;
334
335 serial0 = *(uint32_t*)MCU_ID1;
336 serial1 = *(uint32_t*)MCU_ID2;
337 serial2 = *(uint32_t*)MCU_ID3;
338
339 serial0 += serial2;
340
341 if (serial0 != 0)
342 {
343 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
344 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
345 }
346}
347
353static usbd_desc_t *get_device_descriptor(void)
354{
355 return &device_descriptor;
356}
357
363static usbd_desc_t * get_device_qualifier(void)
364{
365 return NULL;
366}
367
373static usbd_desc_t *get_device_configuration(void)
374{
375 return &config_descriptor;
376}
377
383static usbd_desc_t *get_device_other_speed(void)
384{
385 return NULL;
386}
387
393static usbd_desc_t *get_device_lang_id(void)
394{
395 return &langid_descriptor;
396}
397
398
404static usbd_desc_t *get_device_manufacturer_string(void)
405{
406 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_KEYBOARD_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
407 vp_desc.descriptor = g_usbd_desc_buffer;
408 return &vp_desc;
409}
410
416static usbd_desc_t *get_device_product_string(void)
417{
418 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_KEYBOARD_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
419 vp_desc.descriptor = g_usbd_desc_buffer;
420 return &vp_desc;
421}
422
428static usbd_desc_t *get_device_serial_string(void)
429{
430 get_serial_num();
431 return &serial_descriptor;
432}
433
439static usbd_desc_t *get_device_interface_string(void)
440{
441 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_KEYBOARD_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
442 vp_desc.descriptor = g_usbd_desc_buffer;
443 return &vp_desc;
444}
445
451static usbd_desc_t *get_device_config_string(void)
452{
453 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_KEYBOARD_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
454 vp_desc.descriptor = g_usbd_desc_buffer;
455 return &vp_desc;
456}
457
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
USBD_KEYBOARD_IN_MAXPACKET_SIZE
#define USBD_KEYBOARD_IN_MAXPACKET_SIZE
usb hid in and out max packet size define
Definition: keyboard_class.h:56
USBD_KEYBOARD_IN_EPT
#define USBD_KEYBOARD_IN_EPT
usb hid use endpoint define
Definition: keyboard_class.h:51
USBD_KEYBOARD_VENDOR_ID
#define USBD_KEYBOARD_VENDOR_ID
usb vendor id and product id define
Definition: keyboard_desc.h:56
USBD_KEYBOARD_DESC_CONFIGURATION_STRING
#define USBD_KEYBOARD_DESC_CONFIGURATION_STRING
Definition: keyboard_desc.h:72
USBD_KEYBOARD_CONFIG_DESC_SIZE
#define USBD_KEYBOARD_CONFIG_DESC_SIZE
usb descriptor size define
Definition: keyboard_desc.h:62
USBD_KEYBOARD_SIZ_STRING_LANGID
#define USBD_KEYBOARD_SIZ_STRING_LANGID
Definition: keyboard_desc.h:64
USBD_KEYBOARD_DESC_MANUFACTURER_STRING
#define USBD_KEYBOARD_DESC_MANUFACTURER_STRING
usb string define(vendor, product configuration, interface)
Definition: keyboard_desc.h:70
USBD_KEYBOARD_SIZ_REPORT_DESC
#define USBD_KEYBOARD_SIZ_REPORT_DESC
Definition: keyboard_desc.h:63
KEYBOARD_BCD_NUM
#define KEYBOARD_BCD_NUM
usb bcd number define
Definition: keyboard_desc.h:51
KEYBOARD_BINTERVAL_TIME
#define KEYBOARD_BINTERVAL_TIME
usb hid endpoint interval define
Definition: keyboard_desc.h:78
USBD_KEYBOARD_DESC_PRODUCT_STRING
#define USBD_KEYBOARD_DESC_PRODUCT_STRING
Definition: keyboard_desc.h:71
USBD_KEYBOARD_SIZ_STRING_SERIAL
#define USBD_KEYBOARD_SIZ_STRING_SERIAL
Definition: keyboard_desc.h:65
USBD_KEYBOARD_PRODUCT_ID
#define USBD_KEYBOARD_PRODUCT_ID
Definition: keyboard_desc.h:57
USBD_KEYBOARD_DESC_INTERFACE_STRING
#define USBD_KEYBOARD_DESC_INTERFACE_STRING
Definition: keyboard_desc.h:73
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: keyboard_desc.c:265
device_descriptor
static usbd_desc_t device_descriptor
Definition: keyboard_desc.c:244
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: keyboard_desc.c:373
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: keyboard_desc.c:258
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: keyboard_desc.c:353
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: keyboard_desc.c:404
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: keyboard_desc.c:363
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: keyboard_desc.c:439
g_usbd_keyboard_report
uint8_t g_usbd_keyboard_report[63]
usb mouse report descriptor
Definition: keyboard_desc.c:160
vp_desc
static usbd_desc_t vp_desc
Definition: keyboard_desc.c:271
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: keyboard_desc.c:383
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: keyboard_desc.c:59
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: keyboard_desc.c:416
keyboard_desc_handler
usbd_desc_handler keyboard_desc_handler
keyboard device descriptor handler structure
Definition: keyboard_desc.c:64
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: keyboard_desc.c:451
g_keyboard_usb_desc
uint8_t g_keyboard_usb_desc[9]
usb hid descriptor
Definition: keyboard_desc.c:202
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: keyboard_desc.c:279
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: keyboard_desc.c:393
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: keyboard_desc.c:331
config_descriptor
static usbd_desc_t config_descriptor
Definition: keyboard_desc.c:251
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: keyboard_desc.c:428
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: keyboard_desc.c:305
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_CLASS_CODE_HID
#define USB_CLASS_CODE_HID
Definition: usb_std.h:161
keyboard_desc.h
usb keyboard descriptor header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: keyboard_desc.h Source File

  • middlewares
  • usbd_class
  • keyboard
keyboard_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __KEYBOARD_DESC_H
27#define __KEYBOARD_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "keyboard_class.h"
34#include "usbd_core.h"
35
51#define KEYBOARD_BCD_NUM 0x0110
52
56#define USBD_KEYBOARD_VENDOR_ID 0x2E3C
57#define USBD_KEYBOARD_PRODUCT_ID 0x6040
58
62#define USBD_KEYBOARD_CONFIG_DESC_SIZE 34
63#define USBD_KEYBOARD_SIZ_REPORT_DESC 63
64#define USBD_KEYBOARD_SIZ_STRING_LANGID 4
65#define USBD_KEYBOARD_SIZ_STRING_SERIAL 0x1A
66
70#define USBD_KEYBOARD_DESC_MANUFACTURER_STRING "Artery"
71#define USBD_KEYBOARD_DESC_PRODUCT_STRING "Keyboard"
72#define USBD_KEYBOARD_DESC_CONFIGURATION_STRING "Keyboard Config"
73#define USBD_KEYBOARD_DESC_INTERFACE_STRING "Keyboard Interface"
74
78#define KEYBOARD_BINTERVAL_TIME 0x0A
79
83#define MCU_ID1 (0x1FFFF7E8)
84#define MCU_ID2 (0x1FFFF7EC)
85#define MCU_ID3 (0x1FFFF7F0)
86
90extern uint8_t g_usbd_keyboard_report[USBD_KEYBOARD_SIZ_REPORT_DESC];
91extern uint8_t g_keyboard_usb_desc[9];
92extern usbd_desc_handler keyboard_desc_handler;
93
101#ifdef __cplusplus
102}
103#endif
104
105#endif
106
107
USBD_KEYBOARD_SIZ_REPORT_DESC
#define USBD_KEYBOARD_SIZ_REPORT_DESC
Definition: keyboard_desc.h:63
g_usbd_keyboard_report
uint8_t g_usbd_keyboard_report[63]
usb mouse report descriptor
Definition: keyboard_desc.c:160
g_keyboard_usb_desc
uint8_t g_keyboard_usb_desc[9]
usb hid descriptor
Definition: keyboard_desc.c:202
keyboard_desc_handler
usbd_desc_handler keyboard_desc_handler
keyboard device descriptor handler structure
Definition: keyboard_desc.c:64
keyboard_class.h
usb hid keyboard header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: xmc_lcd.h Source File

  • xmc
  • lcd_8bit
  • inc
lcd_8bit/inc/xmc_lcd.h
Go to the documentation of this file.
1
25#ifndef __XMC_LCD_H
26#define __XMC_LCD_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46/* the address of write data & command (xmc_a0) */
47#define XMC_LCD_COMMAND 0x60000000
48#define XMC_LCD_DATA 0x60000001
49
58/* the lcd reset line */
59#define LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)
60#define LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)
61
66#define WHITE 0xFFFF
67#define BLACK 0x0000
68#define BLUE 0x001F
69#define BRED 0xF81F
70#define GRED 0xFFE0
71#define GBLUE 0x07FF
72#define RED 0xF800
73#define MAGENTA 0xF81F
74#define GREEN 0x07E0
75#define CYAN 0x7FFF
76#define YELLOW 0xFFE0
77#define BROWN 0xBC40
78#define BRRED 0xFC07
79#define GRAY 0x8430
80
85void xmc_init(void);
86void lcd_init(void);
87void lcd_wr_command(uint8_t command);
88void lcd_wr_data(uint8_t data);
89void lcd_set_block(uint16_t xstart,uint16_t ystart,uint16_t xend,uint16_t yend);
90void lcd_write_one_point(uint16_t color);
91void lcd_draw_point(uint16_t x,uint16_t y,uint16_t color);
92void lcd_clear(uint16_t color);
93void lcd_display_number(void);
94
107#ifdef __cplusplus
108}
109#endif
110
111#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
lcd_init
void lcd_init(void)
configures the lcd. this function must be called before any write/read operation on the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:152
lcd_write_one_point
void lcd_write_one_point(uint16_t color)
this function is write one point to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:291
lcd_set_block
void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd.
Definition: lcd_8bit/src/xmc_lcd.c:267
lcd_draw_point
void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:302
lcd_wr_command
void lcd_wr_command(uint8_t command)
this function is write command to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:244
lcd_clear
void lcd_clear(uint16_t color)
this function is clear the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:314
lcd_display_number
void lcd_display_number(void)
this function is display number on the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:331
lcd_wr_data
void lcd_wr_data(uint8_t data)
this function is write data to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:254
xmc_init
void xmc_init(void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write...
Definition: lcd_8bit/src/xmc_lcd.c:45


AT32F403 Firmwary Library: xmc_lcd.c Source File

  • xmc
  • lcd_8bit
  • src
lcd_8bit/src/xmc_lcd.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "xmc_lcd.h"
27#include "picture.h"
28
45void xmc_init(void)
46{
47 gpio_init_type gpio_init_struct = {0};
48 xmc_norsram_init_type xmc_norsram_init_struct;
49 xmc_norsram_timing_init_type rw_timing_struct, w_timing_struct;
50
51 /* enable the gpio clock */
52 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
54 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
55 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
56 crm_periph_clock_enable(CRM_GPIOF_PERIPH_CLOCK, TRUE);
57 /* enable the xmc clock */
58 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
59
60 /*-- gpio configuration ------------------------------------------------------*/
61 /* lcd data lines configuration */
62 gpio_init_struct.gpio_pins = GPIO_PINS_14 | GPIO_PINS_15 | GPIO_PINS_0 | GPIO_PINS_1;
63 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
64 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
65 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
66 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
67 gpio_init(GPIOD, &gpio_init_struct);
68
69 gpio_init_struct.gpio_pins = GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10;
70 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
71 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
72 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
73 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
74 gpio_init(GPIOE, &gpio_init_struct);
75
76 /* lcd reset lines configuration */
77 gpio_init_struct.gpio_pins = GPIO_PINS_9;
78 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
79 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
80 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
81 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
82 gpio_init(GPIOB, &gpio_init_struct);
83
84 /* lcd rs/cs/wr/rd lines configuration */
85 gpio_init_struct.gpio_pins = GPIO_PINS_0;
86 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
87 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
88 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
89 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
90 gpio_init(GPIOF, &gpio_init_struct);
91
92 gpio_init_struct.gpio_pins = GPIO_PINS_7 | GPIO_PINS_4 | GPIO_PINS_5;
93 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
94 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
95 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
96 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
97 gpio_init(GPIOD, &gpio_init_struct);
98
99 /*-- xmc configuration ------------------------------------------------------*/
100 xmc_norsram_default_para_init(&xmc_norsram_init_struct);
101 xmc_norsram_init_struct.subbank = XMC_BANK1_NOR_SRAM4;
102 xmc_norsram_init_struct.data_addr_multiplex = XMC_DATA_ADDR_MUX_DISABLE;
103 xmc_norsram_init_struct.device = XMC_DEVICE_SRAM;
104 xmc_norsram_init_struct.bus_type = XMC_BUSTYPE_8_BITS;
105 xmc_norsram_init_struct.burst_mode_enable = XMC_BURST_MODE_DISABLE;
106 xmc_norsram_init_struct.asynwait_enable = XMC_ASYN_WAIT_DISABLE;
107 xmc_norsram_init_struct.wait_signal_lv = XMC_WAIT_SIGNAL_LEVEL_LOW;
108 xmc_norsram_init_struct.wrapped_mode_enable = XMC_WRAPPED_MODE_DISABLE;
109 xmc_norsram_init_struct.wait_signal_config = XMC_WAIT_SIGNAL_SYN_BEFORE;
110 xmc_norsram_init_struct.write_enable = XMC_WRITE_OPERATION_ENABLE;
111 xmc_norsram_init_struct.wait_signal_enable = XMC_WAIT_SIGNAL_DISABLE;
112 xmc_norsram_init_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
113 xmc_norsram_init_struct.write_burst_syn = XMC_WRITE_BURST_SYN_DISABLE;
114 xmc_nor_sram_init(&xmc_norsram_init_struct);
115
116 /* timing configuration */
117 xmc_norsram_timing_default_para_init(&rw_timing_struct, &w_timing_struct);
118 rw_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
119 rw_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
120 rw_timing_struct.addr_setup_time = 0xf;
121 rw_timing_struct.addr_hold_time = 0x0;
122 rw_timing_struct.data_setup_time = 0xf;
123 rw_timing_struct.bus_latency_time = 0x0;
124 rw_timing_struct.clk_psc = 0x0;
125 rw_timing_struct.data_latency_time = 0x0;
126 rw_timing_struct.mode = XMC_ACCESS_MODE_A;
127 w_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
128 w_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
129 w_timing_struct.addr_setup_time = 0xf;
130 w_timing_struct.addr_hold_time = 0x0;
131 w_timing_struct.data_setup_time = 0xf;
132 w_timing_struct.bus_latency_time = 0x0;
133 w_timing_struct.clk_psc = 0x0;
134 w_timing_struct.data_latency_time = 0x0;
135 w_timing_struct.mode = XMC_ACCESS_MODE_A;
136 xmc_nor_sram_timing_config(&rw_timing_struct, &w_timing_struct);
137
138 /* bus turnaround phase for consecutive read duration and consecutive write duration */
139 xmc_ext_timing_config(XMC_BANK1_NOR_SRAM1, 0x08, 0x08);
140
141 /* enable xmc_bank1_nor_sram4 */
142 xmc_nor_sram_enable(XMC_BANK1_NOR_SRAM1, TRUE);
143}
144
152void lcd_init(void)
153{
154 /* init xmc */
155 xmc_init();
156 delay_ms(50);
157
158 /* reset lcd */
159 LCD_RESET_HIGH;
160 delay_ms(1);
161 LCD_RESET_LOW;
162 delay_ms(10);
163 LCD_RESET_HIGH;
164 delay_ms(120);
165 lcd_wr_command(0x36);
166 lcd_wr_data(0x00);
167 lcd_wr_command(0x3a);
168 lcd_wr_data(0x55);
169
170 /* 320*240 */
171 lcd_wr_command(0x2a);
172 lcd_wr_data(0x00);
173 lcd_wr_data(0x00);
174 lcd_wr_data(0x01);
175 lcd_wr_data(0x3f);
176 lcd_wr_command(0x2b);
177 lcd_wr_data(0x00);
178 lcd_wr_data(0x00);
179 lcd_wr_data(0x00);
180 lcd_wr_data(0xef);
181 lcd_wr_command(0xb2);
182 lcd_wr_data(0x0c);
183 lcd_wr_data(0x0c);
184 lcd_wr_data(0x00);
185 lcd_wr_data(0x33);
186 lcd_wr_data(0x33);
187 lcd_wr_command(0xb7);
188 lcd_wr_data(0x35);
189 lcd_wr_command(0xbb);
190 lcd_wr_data(0x30);
191 lcd_wr_command(0xc3);
192 lcd_wr_data(0x1c);
193 lcd_wr_command(0xc4);
194 lcd_wr_data(0x18);
195 lcd_wr_command(0xc6);
196 lcd_wr_data(0x0f);
197 lcd_wr_command(0xd0);
198 lcd_wr_data(0xa4);
199 lcd_wr_data(0xa2);
200 lcd_wr_command(0xe0);
201 lcd_wr_data(0xf0);
202 lcd_wr_data(0x00);
203 lcd_wr_data(0x0a);
204 lcd_wr_data(0x10);
205 lcd_wr_data(0x12);
206 lcd_wr_data(0x1b);
207 lcd_wr_data(0x39);
208 lcd_wr_data(0x44);
209 lcd_wr_data(0x47);
210 lcd_wr_data(0x28);
211 lcd_wr_data(0x12);
212 lcd_wr_data(0x10);
213 lcd_wr_data(0x16);
214 lcd_wr_data(0x1b);
215 lcd_wr_command(0xe1);
216 lcd_wr_data(0xf0);
217 lcd_wr_data(0x00);
218 lcd_wr_data(0x0a);
219 lcd_wr_data(0x10);
220 lcd_wr_data(0x11);
221 lcd_wr_data(0x1a);
222 lcd_wr_data(0x3b);
223 lcd_wr_data(0x34);
224 lcd_wr_data(0x4e);
225 lcd_wr_data(0x3a);
226 lcd_wr_data(0x17);
227 lcd_wr_data(0x16);
228 lcd_wr_data(0x21);
229 lcd_wr_data(0x22);
230 lcd_wr_command(0x3a);
231 lcd_wr_data(0x55);
232 lcd_wr_command(0x11);
233 delay_ms(120);
234
235 /* display on */
236 lcd_wr_command(0x29);
237}
238
244void lcd_wr_command(uint8_t command)
245{
246 *(__IO uint8_t *) XMC_LCD_COMMAND = command;
247}
248
254void lcd_wr_data(uint8_t data)
255{
256 *(__IO uint8_t *) XMC_LCD_DATA = data;
257}
258
267void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
268{
269 /* set row coordinates */
270 lcd_wr_command(0x2a);
271 lcd_wr_data(xstart >> 8);
272 lcd_wr_data(xstart);
273 lcd_wr_data(xend >> 8);
274 lcd_wr_data(xend);
275
276 /* set column coordinates */
277 lcd_wr_command(0x2b);
278 lcd_wr_data(ystart >> 8);
279 lcd_wr_data(ystart);
280 lcd_wr_data(yend >> 8);
281 lcd_wr_data(yend);
282 /* enable write menory */
283 lcd_wr_command(0x2c);
284}
285
291void lcd_write_one_point(uint16_t color)
292{
293 lcd_wr_data(color >> 8);
294 lcd_wr_data(color);
295}
296
302void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
303{
304 lcd_set_block(x, y, x, y);
305
306 lcd_write_one_point(color);
307}
308
314void lcd_clear(uint16_t color)
315{
316 uint32_t i;
317
318 lcd_set_block(0, 0, 240, 320);
319
320 for(i = 0; i < 76800; i++)
321 {
322 lcd_write_one_point(color);
323 }
324}
325
331void lcd_display_number(void)
332{
333 int i;
334
335 lcd_set_block(50, 50, 199, 219);
336
337 for(i=0; i<sizeof(gimage_8); i++)
338 {
339 lcd_wr_data(gimage_8[i]);
340 }
341
342 delay_ms(1000);
343 lcd_set_block(50, 50, 199, 219);
344
345 for(i=0; i<sizeof(gimage_3); i++)
346 {
347 lcd_wr_data(gimage_3[i]);
348 }
349
350 delay_ms(1000);
351 lcd_set_block(50, 50, 199, 219);
352
353 for(i=0; i<sizeof(gimage_5); i++)
354 {
355 lcd_wr_data(gimage_5[i]);
356 }
357
358 delay_ms(1000);
359 lcd_set_block(50, 50, 199, 219);
360
361 for(i=0; i<sizeof(gimage_9); i++)
362 {
363 lcd_wr_data(gimage_9[i]);
364 }
365
366 delay_ms(1000);
367 lcd_set_block(50, 50, 199, 219);
368
369 for(i=0; i<sizeof(gimage_0); i++)
370 {
371 lcd_wr_data(gimage_0[i]);
372 }
373
374 delay_ms(1000);
375}
376
377
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
lcd_init
void lcd_init(void)
configures the lcd. this function must be called before any write/read operation on the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:152
lcd_write_one_point
void lcd_write_one_point(uint16_t color)
this function is write one point to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:291
lcd_set_block
void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd.
Definition: lcd_8bit/src/xmc_lcd.c:267
lcd_draw_point
void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:302
lcd_wr_command
void lcd_wr_command(uint8_t command)
this function is write command to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:244
lcd_clear
void lcd_clear(uint16_t color)
this function is clear the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:314
lcd_display_number
void lcd_display_number(void)
this function is display number on the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:331
lcd_wr_data
void lcd_wr_data(uint8_t data)
this function is write data to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:254
xmc_init
void xmc_init(void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write...
Definition: lcd_8bit/src/xmc_lcd.c:45
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOF_PERIPH_CLOCK
@ CRM_GPIOF_PERIPH_CLOCK
Definition: at32f403_crm.h:115
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOF
#define GPIOF
Definition: at32f403_gpio.h:599
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
xmc_nor_sram_init
void xmc_nor_sram_init(xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.
Definition: at32f403_xmc.c:74
xmc_norsram_timing_default_para_init
void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.
Definition: at32f403_xmc.c:172
xmc_ext_timing_config
void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase.
Definition: at32f403_xmc.c:219
xmc_nor_sram_timing_config
void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct a...
Definition: at32f403_xmc.c:109
xmc_norsram_default_para_init
void xmc_norsram_default_para_init(xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value.
Definition: at32f403_xmc.c:146
xmc_nor_sram_enable
void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank.
Definition: at32f403_xmc.c:204
XMC_WAIT_SIGNAL_DISABLE
@ XMC_WAIT_SIGNAL_DISABLE
Definition: at32f403_xmc.h:99
XMC_WAIT_SIGNAL_SYN_BEFORE
@ XMC_WAIT_SIGNAL_SYN_BEFORE
Definition: at32f403_xmc.h:193
XMC_WRITE_OPERATION_ENABLE
@ XMC_WRITE_OPERATION_ENABLE
Definition: at32f403_xmc.h:91
XMC_WRITE_BURST_SYN_DISABLE
@ XMC_WRITE_BURST_SYN_DISABLE
Definition: at32f403_xmc.h:108
XMC_BURST_MODE_DISABLE
@ XMC_BURST_MODE_DISABLE
Definition: at32f403_xmc.h:63
XMC_DATA_ADDR_MUX_DISABLE
@ XMC_DATA_ADDR_MUX_DISABLE
Definition: at32f403_xmc.h:54
XMC_BUSTYPE_8_BITS
@ XMC_BUSTYPE_8_BITS
Definition: at32f403_xmc.h:175
XMC_WRITE_TIMING_ENABLE
@ XMC_WRITE_TIMING_ENABLE
Definition: at32f403_xmc.h:118
XMC_BANK1_NOR_SRAM1
@ XMC_BANK1_NOR_SRAM1
Definition: at32f403_xmc.h:144
XMC_BANK1_NOR_SRAM4
@ XMC_BANK1_NOR_SRAM4
Definition: at32f403_xmc.h:147
XMC_ASYN_WAIT_DISABLE
@ XMC_ASYN_WAIT_DISABLE
Definition: at32f403_xmc.h:72
XMC_WRAPPED_MODE_DISABLE
@ XMC_WRAPPED_MODE_DISABLE
Definition: at32f403_xmc.h:81
XMC_ACCESS_MODE_A
@ XMC_ACCESS_MODE_A
Definition: at32f403_xmc.h:202
XMC_WAIT_SIGNAL_LEVEL_LOW
@ XMC_WAIT_SIGNAL_LEVEL_LOW
Definition: at32f403_xmc.h:184
XMC_DEVICE_SRAM
@ XMC_DEVICE_SRAM
Definition: at32f403_xmc.h:165
XMC_LCD_COMMAND
#define XMC_LCD_COMMAND
Definition: lcd_8bit/inc/xmc_lcd.h:47
XMC_LCD_DATA
#define XMC_LCD_DATA
Definition: lcd_8bit/inc/xmc_lcd.h:48
LCD_RESET_HIGH
#define LCD_RESET_HIGH
Definition: lcd_8bit/inc/xmc_lcd.h:59
LCD_RESET_LOW
#define LCD_RESET_LOW
Definition: lcd_8bit/inc/xmc_lcd.h:60
picture.h
this file contains all the picture used for lcd display.
gimage_9
const unsigned char gimage_9[51000]
Definition: picture.h:9602
gimage_5
const unsigned char gimage_5[51000]
Definition: picture.h:6412
gimage_8
const unsigned char gimage_8[51000]
Definition: picture.h:3222
gimage_3
const unsigned char gimage_3[51000]
Definition: picture.h:31
gimage_0
const unsigned char gimage_0[51000]
Definition: picture.h:12792
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
xmc_norsram_init_type
xmc nor/sram init structure definition
Definition: at32f403_xmc.h:262
xmc_norsram_init_type::wait_signal_enable
xmc_wait_signal_type wait_signal_enable
Definition: at32f403_xmc.h:273
xmc_norsram_init_type::data_addr_multiplex
xmc_data_addr_mux_type data_addr_multiplex
Definition: at32f403_xmc.h:264
xmc_norsram_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:274
xmc_norsram_init_type::burst_mode_enable
xmc_burst_access_mode_type burst_mode_enable
Definition: at32f403_xmc.h:267
xmc_norsram_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:266
xmc_norsram_init_type::device
xmc_memory_type device
Definition: at32f403_xmc.h:265
xmc_norsram_init_type::wait_signal_lv
xmc_wait_signal_polarity_type wait_signal_lv
Definition: at32f403_xmc.h:269
xmc_norsram_init_type::wrapped_mode_enable
xmc_wrap_mode_type wrapped_mode_enable
Definition: at32f403_xmc.h:270
xmc_norsram_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:263
xmc_norsram_init_type::write_burst_syn
xmc_write_burst_type write_burst_syn
Definition: at32f403_xmc.h:275
xmc_norsram_init_type::asynwait_enable
xmc_asyn_wait_type asynwait_enable
Definition: at32f403_xmc.h:268
xmc_norsram_init_type::wait_signal_config
xmc_wait_timing_type wait_signal_config
Definition: at32f403_xmc.h:271
xmc_norsram_init_type::write_enable
xmc_write_operation_type write_enable
Definition: at32f403_xmc.h:272
xmc_norsram_timing_init_type
nor/sram banks timing parameters
Definition: at32f403_xmc.h:246
xmc_norsram_timing_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:248
xmc_norsram_timing_init_type::data_latency_time
uint32_t data_latency_time
Definition: at32f403_xmc.h:254
xmc_norsram_timing_init_type::addr_hold_time
uint32_t addr_hold_time
Definition: at32f403_xmc.h:250
xmc_norsram_timing_init_type::bus_latency_time
uint32_t bus_latency_time
Definition: at32f403_xmc.h:252
xmc_norsram_timing_init_type::addr_setup_time
uint32_t addr_setup_time
Definition: at32f403_xmc.h:249
xmc_norsram_timing_init_type::mode
xmc_access_mode_type mode
Definition: at32f403_xmc.h:255
xmc_norsram_timing_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:247
xmc_norsram_timing_init_type::clk_psc
uint32_t clk_psc
Definition: at32f403_xmc.h:253
xmc_norsram_timing_init_type::data_setup_time
uint32_t data_setup_time
Definition: at32f403_xmc.h:251


AT32F403 Firmwary Library: xmc_lcd.h Source File

  • xmc
  • lcd_touch_16bit
  • inc
lcd_touch_16bit/inc/xmc_lcd.h
Go to the documentation of this file.
1
24#ifndef __XMC_LCD_H
25#define __XMC_LCD_H
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31#include "at32f403_board.h"
32
45typedef struct
46{
47 uint16_t lcd_id;
48 void (*xmc_init)(void);
49 void (*lcd_init)(void);
50 void (*lcd_set_block)(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend);
51 void (*draw_point)(uint16_t x, uint16_t y, uint16_t color);
52 void (*lcd_clear)(uint16_t color);
53} lcd_dev_type;
54
63/* the address of write data & command (xmc_a0) */
64#define XMC_LCD_COMMAND 0x60000000
65#define XMC_LCD_DATA 0x60000002
66
75/* the lcd reset line */
76#define LCD_RESET_HIGH gpio_bits_set(GPIOB,GPIO_PINS_9)
77#define LCD_RESET_LOW gpio_bits_reset(GPIOB,GPIO_PINS_9)
78
83#define LCD_BL_HIGH gpio_bits_set(GPIOB,GPIO_PINS_8)
84#define LCD_BL_LOW gpio_bits_reset(GPIOB,GPIO_PINS_8)
85static uint16_t LCD_ID;
86#define WHITE 0xFFFF
87#define BLACK 0x0000
88#define BLUE 0x001F
89#define BRED 0xF81F
90#define GRED 0xFFE0
91#define GBLUE 0x07FF
92#define RED 0xF800
93#define MAGENTA 0xF81F
94#define GREEN 0x07E0
95#define CYAN 0x7FFF
96#define YELLOW 0xFFE0
97#define BROWN 0xBC40
98#define BRRED 0xFC07
99#define GRAY 0x8430
100
101extern lcd_dev_type lcd_dev_struct;
102extern lcd_dev_type *lcd_struct;
103
108void xmc_init(void);
109void lcd_init(void);
110void lcd_wr_command(uint16_t command);
111void lcd_wr_data(uint16_t data);
112uint16_t lcd_rd_data(void);
113void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend);
114void lcd_write_one_point(uint16_t color);
115void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color);
116void lcd_clear(uint16_t color);
117
130#ifdef __cplusplus
131}
132#endif
133
134#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
lcd_dev_struct
lcd_dev_type lcd_dev_struct
Definition: lcd_touch_16bit/src/xmc_lcd.c:35
LCD_ID
static uint16_t LCD_ID
Definition: lcd_touch_16bit/inc/xmc_lcd.h:85
lcd_struct
lcd_dev_type * lcd_struct
Definition: lcd_touch_16bit/src/xmc_lcd.c:45
lcd_init
void lcd_init(void)
configures the lcd. this function must be called before any write/read operation on the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:152
lcd_write_one_point
void lcd_write_one_point(uint16_t color)
this function is write one point to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:291
lcd_set_block
void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd.
Definition: lcd_8bit/src/xmc_lcd.c:267
lcd_wr_command
void lcd_wr_command(uint16_t command)
this function is write command to lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:313
lcd_draw_point
void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:302
lcd_rd_data
uint16_t lcd_rd_data(void)
Definition: lcd_touch_16bit/src/xmc_lcd.c:328
lcd_clear
void lcd_clear(uint16_t color)
this function is clear the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:314
lcd_wr_data
void lcd_wr_data(uint16_t data)
this function is write data to lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:323
xmc_init
void xmc_init(void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write...
Definition: lcd_8bit/src/xmc_lcd.c:45
lcd_dev_type
Definition: lcd_touch_16bit/inc/xmc_lcd.h:46
lcd_dev_type::lcd_id
uint16_t lcd_id
Definition: lcd_touch_16bit/inc/xmc_lcd.h:47


AT32F403 Firmwary Library: xmc_lcd.c Source File

  • xmc
  • lcd_touch_16bit
  • src
lcd_touch_16bit/src/xmc_lcd.c
Go to the documentation of this file.
1
25#include "xmc_lcd.h"
26
35 lcd_dev_type lcd_dev_struct =
36{
37 0,
38 xmc_init,
39 lcd_init,
40 lcd_set_block,
41 lcd_draw_point,
42 lcd_clear,
43};
44
45 lcd_dev_type *lcd_struct;
46
54void xmc_init(void)
55{
56 gpio_init_type gpio_init_struct = {0};
57 xmc_norsram_init_type xmc_norsram_init_struct;
58 xmc_norsram_timing_init_type rw_timing_struct, w_timing_struct;
59
60 /* enable the gpio clock */
61 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
63 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
65 crm_periph_clock_enable(CRM_GPIOE_PERIPH_CLOCK, TRUE);
66 crm_periph_clock_enable(CRM_GPIOF_PERIPH_CLOCK, TRUE);
67 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
68
69 /* enable the xmc clock */
70 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
71
72 /*-- gpio configuration ------------------------------------------------------*/
73 /* lcd data lines configuration */
74 gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13 | GPIO_PINS_14 | GPIO_PINS_15 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10;
75 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
76 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
77 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
78 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
79 gpio_init(GPIOE, &gpio_init_struct);
80
81 gpio_init_struct.gpio_pins = GPIO_PINS_9 | GPIO_PINS_10 | GPIO_PINS_8 | GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_14 | GPIO_PINS_15;
82 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
83 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
84 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
85 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
86 gpio_init(GPIOD, &gpio_init_struct);
87
88 /* lcd reset lines configuration */
89 gpio_init_struct.gpio_pins = GPIO_PINS_8;
90 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
91 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
92 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
93 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
94 gpio_init(GPIOB, &gpio_init_struct);
95
96 gpio_init_struct.gpio_pins = GPIO_PINS_9;
97 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
98 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
99 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
100 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
101 gpio_init(GPIOB, &gpio_init_struct);
102
103 /* lcd rs/cs/wr/rd lines configuration */
104 gpio_init_struct.gpio_pins = GPIO_PINS_5 | GPIO_PINS_4;
105 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
106 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
107 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
108 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
109 gpio_init(GPIOD, &gpio_init_struct);
110
111 gpio_init_struct.gpio_pins = GPIO_PINS_0;
112 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
113 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
114 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
115 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
116 gpio_init(GPIOF, &gpio_init_struct);
117
118 gpio_init_struct.gpio_pins = GPIO_PINS_7;
119 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
120 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
121 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
122 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
123 gpio_init(GPIOD, &gpio_init_struct);
124
125 /*-- xmc configuration ------------------------------------------------------*/
126 xmc_norsram_default_para_init(&xmc_norsram_init_struct);
127 xmc_norsram_init_struct.subbank = XMC_BANK1_NOR_SRAM1;
128 xmc_norsram_init_struct.data_addr_multiplex = XMC_DATA_ADDR_MUX_DISABLE;
129 xmc_norsram_init_struct.device = XMC_DEVICE_SRAM;
130 xmc_norsram_init_struct.bus_type = XMC_BUSTYPE_16_BITS;
131 xmc_norsram_init_struct.burst_mode_enable = XMC_BURST_MODE_DISABLE;
132 xmc_norsram_init_struct.asynwait_enable = XMC_ASYN_WAIT_DISABLE;
133 xmc_norsram_init_struct.wait_signal_lv = XMC_WAIT_SIGNAL_LEVEL_LOW;
134 xmc_norsram_init_struct.wrapped_mode_enable = XMC_WRAPPED_MODE_DISABLE;
135 xmc_norsram_init_struct.wait_signal_config = XMC_WAIT_SIGNAL_SYN_BEFORE;
136 xmc_norsram_init_struct.write_enable = XMC_WRITE_OPERATION_ENABLE;
137 xmc_norsram_init_struct.wait_signal_enable = XMC_WAIT_SIGNAL_DISABLE;
138 xmc_norsram_init_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
139 xmc_norsram_init_struct.write_burst_syn = XMC_WRITE_BURST_SYN_DISABLE;
140 xmc_nor_sram_init(&xmc_norsram_init_struct);
141
142 /* timing configuration */
143 xmc_norsram_timing_default_para_init(&rw_timing_struct, &w_timing_struct);
144 rw_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
145 rw_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
146 rw_timing_struct.addr_setup_time = 0x2;
147 rw_timing_struct.addr_hold_time = 0x0;
148 rw_timing_struct.data_setup_time = 0x2;
149 rw_timing_struct.bus_latency_time = 0x0;
150 rw_timing_struct.clk_psc = 0x0;
151 rw_timing_struct.data_latency_time = 0x0;
152 rw_timing_struct.mode = XMC_ACCESS_MODE_A;
153 w_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
154 w_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
155 w_timing_struct.addr_setup_time = 0x2;
156 w_timing_struct.addr_hold_time = 0x0;
157 w_timing_struct.data_setup_time = 0x2;
158 w_timing_struct.bus_latency_time = 0x0;
159 w_timing_struct.clk_psc = 0x0;
160 w_timing_struct.data_latency_time = 0x0;
161 w_timing_struct.mode = XMC_ACCESS_MODE_A;
162 xmc_nor_sram_timing_config(&rw_timing_struct, &w_timing_struct);
163
164 /* bus turnaround phase for consecutive read duration and consecutive write duration */
165 xmc_ext_timing_config(XMC_BANK1_NOR_SRAM1, 0x08, 0x08);
166
167 /* enable xmc_bank1_nor_sram4 */
168 xmc_nor_sram_enable(XMC_BANK1_NOR_SRAM1, TRUE);
169}
170
178void lcd_init(void)
179{
180 /* init xmc */
181 lcd_struct->xmc_init();
182
183 LCD_RESET_HIGH;
184
185 delay_ms(50);
186
187 /* read id */
188 lcd_wr_command(0x0000);
189 delay_ms(5);
190
191 lcd_struct->lcd_id = lcd_rd_data();
192 lcd_wr_command(0xD3);
193
194 lcd_struct->lcd_id = lcd_rd_data();
195 lcd_struct->lcd_id = lcd_rd_data();
196 lcd_struct->lcd_id = lcd_rd_data();
197 lcd_struct->lcd_id = lcd_rd_data();
198 lcd_struct->lcd_id = lcd_struct->lcd_id << 8;
199 lcd_struct->lcd_id |= lcd_rd_data();
200
201 lcd_wr_command(0xcf);
202 lcd_wr_data(0x00);
203 lcd_wr_data(0xc1);
204 lcd_wr_data(0x30);
205 lcd_wr_command(0xed);
206 lcd_wr_data(0x64);
207 lcd_wr_data(0x03);
208 lcd_wr_data(0x12);
209 lcd_wr_data(0x81);
210 lcd_wr_command(0xe8);
211 lcd_wr_data(0x85);
212 lcd_wr_data(0x10);
213 lcd_wr_data(0x7a);
214 lcd_wr_command(0xcb);
215 lcd_wr_data(0x39);
216 lcd_wr_data(0x2c);
217 lcd_wr_data(0x00);
218 lcd_wr_data(0x34);
219 lcd_wr_data(0x02);
220 lcd_wr_command(0xf7);
221 lcd_wr_data(0x20);
222 lcd_wr_command(0xea);
223 lcd_wr_data(0x00);
224 lcd_wr_data(0x00);
225 lcd_wr_command(0xc0);
226 lcd_wr_data(0x1b);
227 lcd_wr_command(0xc1);
228 lcd_wr_data(0x01);
229 lcd_wr_command(0xc5);
230 lcd_wr_data(0x30);
231 lcd_wr_data(0x30);
232 lcd_wr_command(0xc7);
233 lcd_wr_data(0xb7);
234 lcd_wr_command(0x36);
235 lcd_wr_data(0x48);
236 lcd_wr_command(0x3a);
237 lcd_wr_data(0x55);
238 lcd_wr_command(0xb1);
239 lcd_wr_data(0x00);
240 lcd_wr_data(0x1a);
241 lcd_wr_command(0xb6);
242 lcd_wr_data(0x0a);
243 lcd_wr_data(0xa2);
244 lcd_wr_command(0xf2);
245 lcd_wr_data(0x00);
246 lcd_wr_command(0x26);
247 lcd_wr_data(0x01);
248 lcd_wr_command(0xe0);
249 lcd_wr_data(0x0f);
250 lcd_wr_data(0x2a);
251 lcd_wr_data(0x28);
252 lcd_wr_data(0x08);
253 lcd_wr_data(0x0e);
254 lcd_wr_data(0x08);
255 lcd_wr_data(0x54);
256 lcd_wr_data(0xa9);
257 lcd_wr_data(0x43);
258 lcd_wr_data(0x0a);
259 lcd_wr_data(0x0f);
260 lcd_wr_data(0x00);
261 lcd_wr_data(0x00);
262 lcd_wr_data(0x00);
263 lcd_wr_data(0x00);
264 lcd_wr_command(0xe1);
265 lcd_wr_data(0x00);
266 lcd_wr_data(0x15);
267 lcd_wr_data(0x17);
268 lcd_wr_data(0x07);
269 lcd_wr_data(0x11);
270 lcd_wr_data(0x06);
271 lcd_wr_data(0x2b);
272 lcd_wr_data(0x56);
273 lcd_wr_data(0x3c);
274 lcd_wr_data(0x05);
275 lcd_wr_data(0x10);
276 lcd_wr_data(0x0f);
277 lcd_wr_data(0x3f);
278 lcd_wr_data(0x3f);
279 lcd_wr_data(0x0f);
280 lcd_wr_command(0x2b);
281 lcd_wr_data(0x00);
282 lcd_wr_data(0x00);
283 lcd_wr_data(0x01);
284 lcd_wr_data(0x3f);
285 lcd_wr_command(0x2a);
286 lcd_wr_data(0x00);
287 lcd_wr_data(0x00);
288 lcd_wr_data(0x00);
289 lcd_wr_data(0xef);
290 lcd_wr_command(0x11);
291 delay_ms(120);
292 lcd_wr_command(0x29);
293 lcd_wr_command(0x36);
294 lcd_wr_data(0x08);
295 lcd_wr_command(0x2a);
296 lcd_wr_data(0x00);
297 lcd_wr_data(0x00);
298 lcd_wr_data(0xef >> 8);
299 lcd_wr_data(0xef & 0xff);
300 lcd_wr_command(0x2b);
301 lcd_wr_data(0x00);
302 lcd_wr_data(0x00);
303 lcd_wr_data(0x13f >> 8);
304 lcd_wr_data(0x13f & 0xff);
305 LCD_BL_HIGH;
306}
307
313void lcd_wr_command(uint16_t command)
314{
315 *(__IO uint16_t*) XMC_LCD_COMMAND = command;
316}
317
323void lcd_wr_data(uint16_t data)
324{
325 *(__IO uint16_t*) XMC_LCD_DATA = data;
326}
327
328uint16_t lcd_rd_data(void)
329{
330 uint16_t data;
331
332 data = *(uint16_t*)XMC_LCD_DATA;
333
334 return data;
335}
336
345void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
346{
347 /* set row coordinates */
348 lcd_wr_command(0x2a);
349 lcd_wr_data(xstart >> 8);
350 lcd_wr_data(xstart);
351 lcd_wr_data(xend >> 8);
352 lcd_wr_data(xend);
353
354 /* set column coordinates */
355 lcd_wr_command(0x2b);
356 lcd_wr_data(ystart >> 8);
357 lcd_wr_data(ystart);
358 lcd_wr_data(yend >> 8);
359 lcd_wr_data(yend);
360
361 /* enable write menory */
362 lcd_wr_command(0x2c);
363}
364
370void lcd_write_one_point(uint16_t color)
371{
372 lcd_wr_data(color);
373}
374
380void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
381{
382 lcd_struct->lcd_set_block(x, y ,x ,y);
383
384 lcd_write_one_point(color);
385}
386
392void lcd_clear(uint16_t color)
393{
394 uint32_t i;
395
396 lcd_struct->lcd_set_block(0, 0, 240, 320);
397 for(i = 0; i < 76800; i++)
398 {
399 lcd_write_one_point(color);
400 }
401}
402
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
lcd_dev_struct
lcd_dev_type lcd_dev_struct
Definition: lcd_touch_16bit/src/xmc_lcd.c:35
lcd_init
void lcd_init(void)
configures the lcd. this function must be called before any write/read operation on the lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:178
lcd_write_one_point
void lcd_write_one_point(uint16_t color)
this function is write one point to lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:370
lcd_set_block
void lcd_set_block(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
this function is set row&column coordinates for lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:345
lcd_wr_command
void lcd_wr_command(uint16_t command)
this function is write command to lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:313
lcd_draw_point
void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:380
lcd_rd_data
uint16_t lcd_rd_data(void)
Definition: lcd_touch_16bit/src/xmc_lcd.c:328
lcd_clear
void lcd_clear(uint16_t color)
this function is clear the lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:392
lcd_struct
lcd_dev_type * lcd_struct
Definition: lcd_touch_16bit/src/xmc_lcd.c:45
lcd_wr_data
void lcd_wr_data(uint16_t data)
this function is write data to lcd.
Definition: lcd_touch_16bit/src/xmc_lcd.c:323
LCD_BL_HIGH
#define LCD_BL_HIGH
Definition: lcd_touch_16bit/inc/xmc_lcd.h:83
xmc_init
void xmc_init(void)
configures the xmc and gpios to interface with the lcd. this function must be called before any write...
Definition: lcd_touch_16bit/src/xmc_lcd.c:54
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOF_PERIPH_CLOCK
@ CRM_GPIOF_PERIPH_CLOCK
Definition: at32f403_crm.h:115
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOF
#define GPIOF
Definition: at32f403_gpio.h:599
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
xmc_nor_sram_init
void xmc_nor_sram_init(xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.
Definition: at32f403_xmc.c:74
xmc_norsram_timing_default_para_init
void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.
Definition: at32f403_xmc.c:172
xmc_ext_timing_config
void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase.
Definition: at32f403_xmc.c:219
xmc_nor_sram_timing_config
void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct a...
Definition: at32f403_xmc.c:109
xmc_norsram_default_para_init
void xmc_norsram_default_para_init(xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value.
Definition: at32f403_xmc.c:146
xmc_nor_sram_enable
void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank.
Definition: at32f403_xmc.c:204
XMC_WAIT_SIGNAL_DISABLE
@ XMC_WAIT_SIGNAL_DISABLE
Definition: at32f403_xmc.h:99
XMC_WAIT_SIGNAL_SYN_BEFORE
@ XMC_WAIT_SIGNAL_SYN_BEFORE
Definition: at32f403_xmc.h:193
XMC_WRITE_OPERATION_ENABLE
@ XMC_WRITE_OPERATION_ENABLE
Definition: at32f403_xmc.h:91
XMC_WRITE_BURST_SYN_DISABLE
@ XMC_WRITE_BURST_SYN_DISABLE
Definition: at32f403_xmc.h:108
XMC_BURST_MODE_DISABLE
@ XMC_BURST_MODE_DISABLE
Definition: at32f403_xmc.h:63
XMC_DATA_ADDR_MUX_DISABLE
@ XMC_DATA_ADDR_MUX_DISABLE
Definition: at32f403_xmc.h:54
XMC_BUSTYPE_16_BITS
@ XMC_BUSTYPE_16_BITS
Definition: at32f403_xmc.h:176
XMC_WRITE_TIMING_ENABLE
@ XMC_WRITE_TIMING_ENABLE
Definition: at32f403_xmc.h:118
XMC_BANK1_NOR_SRAM1
@ XMC_BANK1_NOR_SRAM1
Definition: at32f403_xmc.h:144
XMC_ASYN_WAIT_DISABLE
@ XMC_ASYN_WAIT_DISABLE
Definition: at32f403_xmc.h:72
XMC_WRAPPED_MODE_DISABLE
@ XMC_WRAPPED_MODE_DISABLE
Definition: at32f403_xmc.h:81
XMC_ACCESS_MODE_A
@ XMC_ACCESS_MODE_A
Definition: at32f403_xmc.h:202
XMC_WAIT_SIGNAL_LEVEL_LOW
@ XMC_WAIT_SIGNAL_LEVEL_LOW
Definition: at32f403_xmc.h:184
XMC_DEVICE_SRAM
@ XMC_DEVICE_SRAM
Definition: at32f403_xmc.h:165
XMC_LCD_COMMAND
#define XMC_LCD_COMMAND
Definition: lcd_8bit/inc/xmc_lcd.h:47
XMC_LCD_DATA
#define XMC_LCD_DATA
Definition: lcd_8bit/inc/xmc_lcd.h:48
LCD_RESET_HIGH
#define LCD_RESET_HIGH
Definition: lcd_8bit/inc/xmc_lcd.h:59
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
lcd_dev_type
Definition: lcd_touch_16bit/inc/xmc_lcd.h:46
lcd_dev_type::lcd_id
uint16_t lcd_id
Definition: lcd_touch_16bit/inc/xmc_lcd.h:47
lcd_dev_type::xmc_init
void(* xmc_init)(void)
Definition: lcd_touch_16bit/inc/xmc_lcd.h:48
lcd_dev_type::lcd_set_block
void(* lcd_set_block)(uint16_t xstart, uint16_t ystart, uint16_t xend, uint16_t yend)
Definition: lcd_touch_16bit/inc/xmc_lcd.h:50
xmc_norsram_init_type
xmc nor/sram init structure definition
Definition: at32f403_xmc.h:262
xmc_norsram_init_type::wait_signal_enable
xmc_wait_signal_type wait_signal_enable
Definition: at32f403_xmc.h:273
xmc_norsram_init_type::data_addr_multiplex
xmc_data_addr_mux_type data_addr_multiplex
Definition: at32f403_xmc.h:264
xmc_norsram_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:274
xmc_norsram_init_type::burst_mode_enable
xmc_burst_access_mode_type burst_mode_enable
Definition: at32f403_xmc.h:267
xmc_norsram_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:266
xmc_norsram_init_type::device
xmc_memory_type device
Definition: at32f403_xmc.h:265
xmc_norsram_init_type::wait_signal_lv
xmc_wait_signal_polarity_type wait_signal_lv
Definition: at32f403_xmc.h:269
xmc_norsram_init_type::wrapped_mode_enable
xmc_wrap_mode_type wrapped_mode_enable
Definition: at32f403_xmc.h:270
xmc_norsram_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:263
xmc_norsram_init_type::write_burst_syn
xmc_write_burst_type write_burst_syn
Definition: at32f403_xmc.h:275
xmc_norsram_init_type::asynwait_enable
xmc_asyn_wait_type asynwait_enable
Definition: at32f403_xmc.h:268
xmc_norsram_init_type::wait_signal_config
xmc_wait_timing_type wait_signal_config
Definition: at32f403_xmc.h:271
xmc_norsram_init_type::write_enable
xmc_write_operation_type write_enable
Definition: at32f403_xmc.h:272
xmc_norsram_timing_init_type
nor/sram banks timing parameters
Definition: at32f403_xmc.h:246
xmc_norsram_timing_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:248
xmc_norsram_timing_init_type::data_latency_time
uint32_t data_latency_time
Definition: at32f403_xmc.h:254
xmc_norsram_timing_init_type::addr_hold_time
uint32_t addr_hold_time
Definition: at32f403_xmc.h:250
xmc_norsram_timing_init_type::bus_latency_time
uint32_t bus_latency_time
Definition: at32f403_xmc.h:252
xmc_norsram_timing_init_type::addr_setup_time
uint32_t addr_setup_time
Definition: at32f403_xmc.h:249
xmc_norsram_timing_init_type::mode
xmc_access_mode_type mode
Definition: at32f403_xmc.h:255
xmc_norsram_timing_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:247
xmc_norsram_timing_init_type::clk_psc
uint32_t clk_psc
Definition: at32f403_xmc.h:253
xmc_norsram_timing_init_type::data_setup_time
uint32_t data_setup_time
Definition: at32f403_xmc.h:251


AT32F403 Firmwary Library: main_page.h Source File

  • main_page
main_page.h
Go to the documentation of this file.
1


AT32F403 Firmwary Library: mouse_class.c Source File

  • middlewares
  • usbd_class
  • mouse
mouse_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "mouse_class.h"
26#include "mouse_desc.h"
27
41static usb_sts_type class_init_handler(void *udev);
42static usb_sts_type class_clear_handler(void *udev);
43static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
44static usb_sts_type class_ept0_tx_handler(void *udev);
45static usb_sts_type class_ept0_rx_handler(void *udev);
46static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
47static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_sof_handler(void *udev);
49static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
50
51 mouse_type mouse_struct;
52
53/* usb device class handler */
54 usbd_class_handler mouse_class_handler =
55{
56 class_init_handler,
57 class_clear_handler,
58 class_setup_handler,
59 class_ept0_tx_handler,
60 class_ept0_rx_handler,
61 class_in_handler,
62 class_out_handler,
63 class_sof_handler,
64 class_event_handler,
65 &mouse_struct
66};
67
73static usb_sts_type class_init_handler(void *udev)
74{
75 usb_sts_type status = USB_OK;
76 usbd_core_type *pudev = (usbd_core_type *)udev;
77
78#ifndef USB_EPT_AUTO_MALLOC_BUFFER
79 /* use user define buffer address */
80 usbd_ept_buf_custom_define(pudev, USBD_MOUSE_IN_EPT, EPT1_TX_ADDR);
81#endif
82
83 /* open hid in endpoint */
84 usbd_ept_open(pudev, USBD_MOUSE_IN_EPT, EPT_INT_TYPE, USBD_MOUSE_IN_MAXPACKET_SIZE);
85
86 return status;
87}
88
94static usb_sts_type class_clear_handler(void *udev)
95{
96 usb_sts_type status = USB_OK;
97 usbd_core_type *pudev = (usbd_core_type *)udev;
98
99 /* close hid in endpoint */
100 usbd_ept_close(pudev, USBD_MOUSE_IN_EPT);
101
102 return status;
103}
104
111static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
112{
113 usb_sts_type status = USB_OK;
114 usbd_core_type *pudev = (usbd_core_type *)udev;
115 mouse_type *pmouse = (mouse_type *)pudev->class_handler->pdata;
116 uint16_t len;
117 uint8_t *buf;
118
119 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
120 {
121 /* class request */
122 case USB_REQ_TYPE_CLASS:
123 switch(setup->bRequest)
124 {
125 case HID_REQ_SET_PROTOCOL:
126 pmouse->hid_protocol = (uint8_t)setup->wValue;
127 break;
128 case HID_REQ_GET_PROTOCOL:
129 usbd_ctrl_send(pudev, (uint8_t *)&pmouse->hid_protocol, 1);
130 break;
131 case HID_REQ_SET_IDLE:
132 pmouse->hid_set_idle = (uint8_t)(setup->wValue >> 8);
133 break;
134 case HID_REQ_GET_IDLE:
135 usbd_ctrl_send(pudev, (uint8_t *)&pmouse->hid_set_idle, 1);
136 break;
137 case HID_REQ_SET_REPORT:
138 pmouse->hid_state = HID_REQ_SET_REPORT;
139 usbd_ctrl_recv(pudev, pmouse->hid_set_report, setup->wLength);
140 break;
141 default:
142 usbd_ctrl_unsupport(pudev);
143 break;
144 }
145 break;
146 /* standard request */
147 case USB_REQ_TYPE_STANDARD:
148 switch(setup->bRequest)
149 {
150 case USB_STD_REQ_GET_DESCRIPTOR:
151 if(setup->wValue >> 8 == HID_REPORT_DESC)
152 {
153 len = MIN(USBD_MOUSE_SIZ_REPORT_DESC, setup->wLength);
154 buf = (uint8_t *)g_usbd_mouse_report;
155 }
156 else if(setup->wValue >> 8 == HID_DESCRIPTOR_TYPE)
157 {
158 len = MIN(9, setup->wLength);
159 buf = (uint8_t *)g_mouse_usb_desc;
160 }
161 usbd_ctrl_send(pudev, (uint8_t *)buf, len);
162 break;
163 case USB_STD_REQ_GET_INTERFACE:
164 usbd_ctrl_send(pudev, (uint8_t *)&pmouse->alt_setting, 1);
165 break;
166 case USB_STD_REQ_SET_INTERFACE:
167 pmouse->alt_setting = setup->wValue;
168 break;
169 case USB_STD_REQ_CLEAR_FEATURE:
170 break;
171 case USB_STD_REQ_SET_FEATURE:
172 break;
173 default:
174 usbd_ctrl_unsupport(pudev);
175 break;
176 }
177 break;
178 default:
179 usbd_ctrl_unsupport(pudev);
180 break;
181 }
182 return status;
183}
184
190static usb_sts_type class_ept0_tx_handler(void *udev)
191{
192 usb_sts_type status = USB_OK;
193
194 /* ...user code... */
195
196 return status;
197}
198
204static usb_sts_type class_ept0_rx_handler(void *udev)
205{
206 usb_sts_type status = USB_OK;
207 usbd_core_type *pudev = (usbd_core_type *)udev;
208 mouse_type *pmouse = (mouse_type *)pudev->class_handler->pdata;
209 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
210 /* ...user code... */
211 if( pmouse->hid_state == HID_REQ_SET_REPORT)
212 {
213 /* hid buffer process */
214 pmouse->hid_state = 0;
215 }
216
217 return status;
218}
219
226static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
227{
228 usb_sts_type status = USB_OK;
229
230 /* ...user code...
231 trans next packet data
232 */
233
234 return status;
235}
236
243static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
244{
245 usb_sts_type status = USB_OK;
246
247 return status;
248}
249
255static usb_sts_type class_sof_handler(void *udev)
256{
257 usb_sts_type status = USB_OK;
258
259 /* ...user code... */
260
261 return status;
262}
263
270static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
271{
272 usb_sts_type status = USB_OK;
273 usbd_core_type *pudev = (usbd_core_type *)udev;
274 mouse_type *pmouse = (mouse_type *)pudev->class_handler->pdata;
275 switch(event)
276 {
277 case USBD_RESET_EVENT:
278
279 /* ...user code... */
280
281 break;
282 case USBD_SUSPEND_EVENT:
283 pmouse->hid_suspend_flag = 1;
284 /* ...user code... */
285
286 break;
287 case USBD_WAKEUP_EVENT:
288 /* ...user code... */
289
290 break;
291 default:
292 break;
293 }
294 return status;
295}
296
304 usb_sts_type usb_mouse_class_send_report(void *udev, uint8_t *report, uint16_t len)
305{
306 usb_sts_type status = USB_OK;
307 usbd_core_type *pudev = (usbd_core_type *)udev;
308
309 if(usbd_connect_state_get(pudev) == USB_CONN_STATE_CONFIGURED)
310 usbd_ept_send(pudev, USBD_MOUSE_IN_EPT, report, len);
311
312 return status;
313}
314
321void usb_hid_mouse_send(void *udev, uint8_t op)
322{
323 usbd_core_type *pudev = (usbd_core_type *)udev;
324 mouse_type *pmouse = (mouse_type *)pudev->class_handler->pdata;
325 int8_t posx = 0, posy = 0, button = 0;
326 switch(op)
327 {
328 case LEFT_BUTTON:
329 button = 0x01;
330 break;
331
332 case RIGHT_BUTTON:
333 button = 0x2;
334 break;
335
336 case UP_MOVE:
337 posy -= MOVE_STEP;
338 break;
339
340 case DOWN_MOVE:
341 posy += MOVE_STEP;
342 break;
343
344 case LEFT_MOVE:
345 posx -= MOVE_STEP;
346 break;
347
348 case RIGHT_MOVE:
349 posx += MOVE_STEP;
350 break;
351
352 default:
353 break;
354 }
355 pmouse->mouse_buffer[0] = button;
356 pmouse->mouse_buffer[1] = posx;
357 pmouse->mouse_buffer[2] = posy;
358
359 usb_mouse_class_send_report(udev, pmouse->mouse_buffer, 4);
360}
361
EPT1_TX_ADDR
#define EPT1_TX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:75
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
EPT_INT_TYPE
@ EPT_INT_TYPE
Definition: at32f403_usb.h:204
USBD_MOUSE_IN_EPT
#define USBD_MOUSE_IN_EPT
usb hid use endpoint define
Definition: mouse_class.h:51
USBD_MOUSE_IN_MAXPACKET_SIZE
#define USBD_MOUSE_IN_MAXPACKET_SIZE
usb hid in and out max packet size define
Definition: mouse_class.h:56
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device class sof handler
Definition: mouse_class.c:255
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device class transmision complete handler
Definition: mouse_class.c:226
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: mouse_class.c:94
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: mouse_class.c:111
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device class endpoint 0 in status stage complete
Definition: mouse_class.c:190
usb_mouse_class_send_report
usb_sts_type usb_mouse_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: mouse_class.c:304
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device class endpoint 0 out status stage complete
Definition: mouse_class.c:204
mouse_struct
mouse_type mouse_struct
Definition: mouse_class.c:51
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device class event handler
Definition: mouse_class.c:270
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: mouse_class.c:73
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device class endpoint receive data
Definition: mouse_class.c:243
mouse_class_handler
usbd_class_handler mouse_class_handler
Definition: mouse_class.c:54
usb_hid_mouse_send
void usb_hid_mouse_send(void *udev, uint8_t op)
usb device class report function
Definition: mouse_class.c:321
MOVE_STEP
#define MOVE_STEP
usb hid mouse operation
Definition: mouse_class.h:70
LEFT_MOVE
#define LEFT_MOVE
Definition: mouse_class.h:75
DOWN_MOVE
#define DOWN_MOVE
Definition: mouse_class.h:78
RIGHT_MOVE
#define RIGHT_MOVE
Definition: mouse_class.h:76
LEFT_BUTTON
#define LEFT_BUTTON
Definition: mouse_class.h:73
RIGHT_BUTTON
#define RIGHT_BUTTON
Definition: mouse_class.h:74
UP_MOVE
#define UP_MOVE
Definition: mouse_class.h:77
USBD_MOUSE_SIZ_REPORT_DESC
#define USBD_MOUSE_SIZ_REPORT_DESC
Definition: mouse_desc.h:63
g_usbd_mouse_report
uint8_t g_usbd_mouse_report[74]
usb mouse report descriptor
Definition: mouse_desc.c:160
g_mouse_usb_desc
uint8_t g_mouse_usb_desc[9]
usb hid descriptor
Definition: mouse_desc.c:216
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
HID_DESCRIPTOR_TYPE
#define HID_DESCRIPTOR_TYPE
Definition: usb_std.h:234
HID_REQ_GET_PROTOCOL
#define HID_REQ_GET_PROTOCOL
Definition: usb_std.h:229
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
HID_REQ_SET_PROTOCOL
#define HID_REQ_SET_PROTOCOL
usb hid class request code define
Definition: usb_std.h:228
HID_REPORT_DESC
#define HID_REPORT_DESC
Definition: usb_std.h:235
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
HID_REQ_SET_IDLE
#define HID_REQ_SET_IDLE
Definition: usb_std.h:230
HID_REQ_GET_IDLE
#define HID_REQ_GET_IDLE
Definition: usb_std.h:231
HID_REQ_SET_REPORT
#define HID_REQ_SET_REPORT
Definition: usb_std.h:232
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
mouse_class.h
usb hid mouse header file
mouse_desc.h
usb mouse descriptor header file
mouse_type
Definition: mouse_class.h:81
mouse_type::hid_suspend_flag
__IO uint8_t hid_suspend_flag
Definition: mouse_class.h:89
mouse_type::hid_protocol
uint32_t hid_protocol
Definition: mouse_class.h:82
mouse_type::hid_set_idle
uint32_t hid_set_idle
Definition: mouse_class.h:83
mouse_type::mouse_buffer
uint8_t mouse_buffer[4]
Definition: mouse_class.h:87
mouse_type::hid_set_report
uint8_t hid_set_report[64]
Definition: mouse_class.h:86
mouse_type::alt_setting
uint32_t alt_setting
Definition: mouse_class.h:84
mouse_type::hid_state
uint8_t hid_state
Definition: mouse_class.h:88
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: mouse_class.h Source File

  • middlewares
  • usbd_class
  • mouse
mouse_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __MOUSE_CLASS_H
27#define __MOUSE_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
51#define USBD_MOUSE_IN_EPT 0x81
52
56#define USBD_MOUSE_IN_MAXPACKET_SIZE 0x40
57
70#define MOVE_STEP 20
71
72#define BUTTON_RELEASE 0
73#define LEFT_BUTTON 1
74#define RIGHT_BUTTON 2
75#define LEFT_MOVE 3
76#define RIGHT_MOVE 4
77#define UP_MOVE 5
78#define DOWN_MOVE 6
79
80typedef struct
81{
82 uint32_t hid_protocol;
83 uint32_t hid_set_idle;
84 uint32_t alt_setting;
85
86 uint8_t hid_set_report[64];
87 uint8_t mouse_buffer[4];
88 uint8_t hid_state;
89 __IO uint8_t hid_suspend_flag;
90}mouse_type;
91
99extern usbd_class_handler mouse_class_handler;
100 usb_sts_type usb_mouse_class_send_report(void *udev, uint8_t *report, uint16_t len);
101void usb_hid_mouse_send(void *udev, uint8_t op);
113#ifdef __cplusplus
114}
115#endif
116
117#endif
usb_mouse_class_send_report
usb_sts_type usb_mouse_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: mouse_class.c:304
mouse_class_handler
usbd_class_handler mouse_class_handler
Definition: mouse_class.c:54
usb_hid_mouse_send
void usb_hid_mouse_send(void *udev, uint8_t op)
usb device class report function
Definition: mouse_class.c:321
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
mouse_type
Definition: mouse_class.h:81
mouse_type::hid_suspend_flag
__IO uint8_t hid_suspend_flag
Definition: mouse_class.h:89
mouse_type::hid_protocol
uint32_t hid_protocol
Definition: mouse_class.h:82
mouse_type::hid_set_idle
uint32_t hid_set_idle
Definition: mouse_class.h:83
mouse_type::alt_setting
uint32_t alt_setting
Definition: mouse_class.h:84
mouse_type::hid_state
uint8_t hid_state
Definition: mouse_class.h:88
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: mouse_desc.c Source File

  • middlewares
  • usbd_class
  • mouse
mouse_desc.c
Go to the documentation of this file.
1
24#include "usb_std.h"
25#include "usbd_sdr.h"
26#include "usbd_core.h"
27#include "mouse_desc.h"
28
42static usbd_desc_t *get_device_descriptor(void);
43static usbd_desc_t *get_device_qualifier(void);
44static usbd_desc_t *get_device_configuration(void);
45static usbd_desc_t *get_device_other_speed(void);
46static usbd_desc_t *get_device_lang_id(void);
47static usbd_desc_t *get_device_manufacturer_string(void);
48static usbd_desc_t *get_device_product_string(void);
49static usbd_desc_t *get_device_serial_string(void);
50static usbd_desc_t *get_device_interface_string(void);
51static usbd_desc_t *get_device_config_string(void);
52
53static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
54static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
55static void get_serial_num(void);
56#if defined ( __ICCARM__ ) /* iar compiler */
57 #pragma data_alignment=4
58#endif
59ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
60
64 usbd_desc_handler mouse_desc_handler =
65{
66 get_device_descriptor,
67 get_device_qualifier,
68 get_device_configuration,
69 get_device_other_speed,
70 get_device_lang_id,
71 get_device_manufacturer_string,
72 get_device_product_string,
73 get_device_serial_string,
74 get_device_interface_string,
75 get_device_config_string,
76};
77
81#if defined ( __ICCARM__ ) /* iar compiler */
82 #pragma data_alignment=4
83#endif
84ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
85{
86 USB_DEVICE_DESC_LEN, /* bLength */
87 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
88 0x00, /* bcdUSB */
89 0x02,
90 0x00, /* bDeviceClass */
91 0x00, /* bDeviceSubClass */
92 0x00, /* bDeviceProtocol */
93 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
94 LBYTE(USBD_MOUSE_VENDOR_ID), /* idVendor */
95 HBYTE(USBD_MOUSE_VENDOR_ID), /* idVendor */
96 LBYTE(USBD_MOUSE_PRODUCT_ID), /* idProduct */
97 HBYTE(USBD_MOUSE_PRODUCT_ID), /* idProduct */
98 0x00, /* bcdDevice rel. 2.00 */
99 0x02,
100 USB_MFC_STRING, /* Index of manufacturer string */
101 USB_PRODUCT_STRING, /* Index of product string */
102 USB_SERIAL_STRING, /* Index of serial number string */
103 1 /* bNumConfigurations */
104};
105
109#if defined ( __ICCARM__ ) /* iar compiler */
110 #pragma data_alignment=4
111#endif
112ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_MOUSE_CONFIG_DESC_SIZE] ALIGNED_TAIL =
113{
114 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
115 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
116 LBYTE(USBD_MOUSE_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
117 HBYTE(USBD_MOUSE_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
118 0x01, /* bNumInterfaces: 1 interface */
119 0x01, /* bConfigurationValue: configuration value */
120 0x00, /* iConfiguration: index of string descriptor describing
121 the configuration */
122 0xE0, /* bmAttributes: self powered and support remote wakeup*/
123 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
124
125 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
126 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
127 0x00, /* bInterfaceNumber: number of interface */
128 0x00, /* bAlternateSetting: alternate set */
129 0x01, /* bNumEndpoints: number of endpoints */
130 USB_CLASS_CODE_HID, /* bInterfaceClass: class code hid */
131 0x01, /* bInterfaceSubClass: subclass code */
132 0x02, /* bInterfaceProtocol: protocol code */
133 0x00, /* iInterface: index of string descriptor */
134
135 0x09, /* bLength: size of HID descriptor in bytes */
136 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
137 LBYTE(MOUSE_BCD_NUM),
138 HBYTE(MOUSE_BCD_NUM), /* bcdHID: HID class specification release number */
139 0x00, /* bCountryCode: hardware target conutry */
140 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
141 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
142 LBYTE(sizeof(g_usbd_mouse_report)),
143 HBYTE(sizeof(g_usbd_mouse_report)), /* wDescriptorLength: total length of reprot descriptor */
144
145 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
146 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
147 USBD_MOUSE_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
148 USB_EPT_DESC_INTERRUPT, /* bmAttributes: endpoint attributes */
149 LBYTE(USBD_MOUSE_IN_MAXPACKET_SIZE),
150 HBYTE(USBD_MOUSE_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
151 MOUSE_BINTERVAL_TIME, /* bInterval: interval for polling endpoint for data transfers */
152};
153
157#if defined ( __ICCARM__ ) /* iar compiler */
158 #pragma data_alignment=4
159#endif
160ALIGNED_HEAD uint8_t g_usbd_mouse_report[USBD_MOUSE_SIZ_REPORT_DESC] ALIGNED_TAIL =
161{
162 0x05,0x01,
163 0x09,0x02,
164 0xA1,0x01,
165 0x09,0x01,
166
167 0xA1,0x00,
168 0x05,0x09,
169 0x19,0x01,
170 0x29,0x03,
171
172 0x15,0x00,
173 0x25,0x01,
174 0x95,0x03,
175 0x75,0x01,
176
177 0x81,0x02,
178 0x95,0x01,
179 0x75,0x05,
180 0x81,0x01,
181
182 0x05,0x01,
183 0x09,0x30,
184 0x09,0x31,
185 0x09,0x38,
186
187 0x15,0x81,
188 0x25,0x7F,
189 0x75,0x08,
190 0x95,0x03,
191
192 0x81,0x06,
193 0xC0,0x09,
194 0x3c,0x05,
195 0xff,0x09,
196
197 0x01,0x15,
198 0x00,0x25,
199 0x01,0x75,
200 0x01,0x95,
201
202 0x02,0xb1,
203 0x22,0x75,
204 0x06,0x95,
205 0x01,0xb1,
206
207 0x01,0xc0
208};
209
213#if defined ( __ICCARM__ ) /* iar compiler */
214 #pragma data_alignment=4
215#endif
216ALIGNED_HEAD uint8_t g_mouse_usb_desc[9] ALIGNED_TAIL =
217{
218 0x09, /* bLength: size of HID descriptor in bytes */
219 HID_CLASS_DESC_HID, /* bDescriptorType: HID descriptor type */
220 LBYTE(MOUSE_BCD_NUM),
221 HBYTE(MOUSE_BCD_NUM), /* bcdHID: HID class specification release number */
222 0x00, /* bCountryCode: hardware target conutry */
223 0x01, /* bNumDescriptors: number of HID class descriptor to follow */
224 HID_CLASS_DESC_REPORT, /* bDescriptorType: report descriptor type */
225 LBYTE(sizeof(g_usbd_mouse_report)),
226 HBYTE(sizeof(g_usbd_mouse_report)), /* wDescriptorLength: total length of reprot descriptor */
227};
228
229
233#if defined ( __ICCARM__ ) /* iar compiler */
234 #pragma data_alignment=4
235#endif
236ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_MOUSE_SIZ_STRING_LANGID] ALIGNED_TAIL =
237{
238 USBD_MOUSE_SIZ_STRING_LANGID,
239 USB_DESCIPTOR_TYPE_STRING,
240 0x09,
241 0x04,
242};
243
247#if defined ( __ICCARM__ ) /* iar compiler */
248 #pragma data_alignment=4
249#endif
250ALIGNED_HEAD static uint8_t g_string_serial[USBD_MOUSE_SIZ_STRING_SERIAL] ALIGNED_TAIL =
251{
252 USBD_MOUSE_SIZ_STRING_SERIAL,
253 USB_DESCIPTOR_TYPE_STRING,
254};
255
256
257/* device descriptor */
258static usbd_desc_t device_descriptor =
259{
260 USB_DEVICE_DESC_LEN,
261 g_usbd_descriptor
262};
263
264/* config descriptor */
265static usbd_desc_t config_descriptor =
266{
267 USBD_MOUSE_CONFIG_DESC_SIZE,
268 g_usbd_configuration
269};
270
271/* langid descriptor */
272static usbd_desc_t langid_descriptor =
273{
274 USBD_MOUSE_SIZ_STRING_LANGID,
275 g_string_lang_id
276};
277
278/* serial descriptor */
279static usbd_desc_t serial_descriptor =
280{
281 USBD_MOUSE_SIZ_STRING_SERIAL,
282 g_string_serial
283};
284
285static usbd_desc_t vp_desc;
286
293static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
294{
295 uint16_t str_len = 0, id_pos = 2;
296 uint8_t *tmp_str = string;
297
298 while(*tmp_str != '\0')
299 {
300 str_len ++;
301 unicode_buf[id_pos ++] = *tmp_str ++;
302 unicode_buf[id_pos ++] = 0x00;
303 }
304
305 str_len = str_len * 2 + 2;
306 unicode_buf[0] = str_len;
307 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
308
309 return str_len;
310}
311
319static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
320{
321 uint8_t idx = 0;
322
323 for( idx = 0 ; idx < len ; idx ++)
324 {
325 if( ((value >> 28)) < 0xA )
326 {
327 pbuf[ 2 * idx] = (value >> 28) + '0';
328 }
329 else
330 {
331 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
332 }
333
334 value = value << 4;
335
336 pbuf[2 * idx + 1] = 0;
337 }
338}
339
345static void get_serial_num(void)
346{
347 uint32_t serial0, serial1, serial2;
348
349 serial0 = *(uint32_t*)MCU_ID1;
350 serial1 = *(uint32_t*)MCU_ID2;
351 serial2 = *(uint32_t*)MCU_ID3;
352
353 serial0 += serial2;
354
355 if (serial0 != 0)
356 {
357 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
358 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
359 }
360}
361
367static usbd_desc_t *get_device_descriptor(void)
368{
369 return &device_descriptor;
370}
371
377static usbd_desc_t * get_device_qualifier(void)
378{
379 return NULL;
380}
381
387static usbd_desc_t *get_device_configuration(void)
388{
389 return &config_descriptor;
390}
391
397static usbd_desc_t *get_device_other_speed(void)
398{
399 return NULL;
400}
401
407static usbd_desc_t *get_device_lang_id(void)
408{
409 return &langid_descriptor;
410}
411
412
418static usbd_desc_t *get_device_manufacturer_string(void)
419{
420 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MOUSE_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
421 vp_desc.descriptor = g_usbd_desc_buffer;
422 return &vp_desc;
423}
424
430static usbd_desc_t *get_device_product_string(void)
431{
432 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MOUSE_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
433 vp_desc.descriptor = g_usbd_desc_buffer;
434 return &vp_desc;
435}
436
442static usbd_desc_t *get_device_serial_string(void)
443{
444 get_serial_num();
445 return &serial_descriptor;
446}
447
453static usbd_desc_t *get_device_interface_string(void)
454{
455 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MOUSE_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
456 vp_desc.descriptor = g_usbd_desc_buffer;
457 return &vp_desc;
458}
459
465static usbd_desc_t *get_device_config_string(void)
466{
467 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MOUSE_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
468 vp_desc.descriptor = g_usbd_desc_buffer;
469 return &vp_desc;
470}
471
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
HID_CLASS_DESC_HID
#define HID_CLASS_DESC_HID
usb hid class descriptor define
Definition: audio_hid_desc.h:213
HID_CLASS_DESC_REPORT
#define HID_CLASS_DESC_REPORT
Definition: audio_hid_desc.h:214
USBD_MOUSE_IN_EPT
#define USBD_MOUSE_IN_EPT
usb hid use endpoint define
Definition: mouse_class.h:51
USBD_MOUSE_IN_MAXPACKET_SIZE
#define USBD_MOUSE_IN_MAXPACKET_SIZE
usb hid in and out max packet size define
Definition: mouse_class.h:56
USBD_MOUSE_DESC_INTERFACE_STRING
#define USBD_MOUSE_DESC_INTERFACE_STRING
Definition: mouse_desc.h:73
USBD_MOUSE_SIZ_REPORT_DESC
#define USBD_MOUSE_SIZ_REPORT_DESC
Definition: mouse_desc.h:63
USBD_MOUSE_DESC_CONFIGURATION_STRING
#define USBD_MOUSE_DESC_CONFIGURATION_STRING
Definition: mouse_desc.h:72
USBD_MOUSE_SIZ_STRING_LANGID
#define USBD_MOUSE_SIZ_STRING_LANGID
Definition: mouse_desc.h:64
USBD_MOUSE_VENDOR_ID
#define USBD_MOUSE_VENDOR_ID
usb vendor id and product id define
Definition: mouse_desc.h:56
USBD_MOUSE_CONFIG_DESC_SIZE
#define USBD_MOUSE_CONFIG_DESC_SIZE
usb descriptor size define
Definition: mouse_desc.h:62
MOUSE_BINTERVAL_TIME
#define MOUSE_BINTERVAL_TIME
usb hid endpoint interval define
Definition: mouse_desc.h:78
USBD_MOUSE_PRODUCT_ID
#define USBD_MOUSE_PRODUCT_ID
Definition: mouse_desc.h:57
USBD_MOUSE_DESC_PRODUCT_STRING
#define USBD_MOUSE_DESC_PRODUCT_STRING
Definition: mouse_desc.h:71
USBD_MOUSE_SIZ_STRING_SERIAL
#define USBD_MOUSE_SIZ_STRING_SERIAL
Definition: mouse_desc.h:65
USBD_MOUSE_DESC_MANUFACTURER_STRING
#define USBD_MOUSE_DESC_MANUFACTURER_STRING
usb string define(vendor, product configuration, interface)
Definition: mouse_desc.h:70
MOUSE_BCD_NUM
#define MOUSE_BCD_NUM
usb bcd number define
Definition: mouse_desc.h:51
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: mouse_desc.c:279
device_descriptor
static usbd_desc_t device_descriptor
Definition: mouse_desc.c:258
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: mouse_desc.c:387
mouse_desc_handler
usbd_desc_handler mouse_desc_handler
mouse device descriptor handler structure
Definition: mouse_desc.c:64
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: mouse_desc.c:272
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: mouse_desc.c:367
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: mouse_desc.c:418
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: mouse_desc.c:377
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: mouse_desc.c:453
vp_desc
static usbd_desc_t vp_desc
Definition: mouse_desc.c:285
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: mouse_desc.c:397
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: mouse_desc.c:59
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: mouse_desc.c:430
g_usbd_mouse_report
uint8_t g_usbd_mouse_report[74]
usb mouse report descriptor
Definition: mouse_desc.c:160
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: mouse_desc.c:465
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: mouse_desc.c:293
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: mouse_desc.c:407
g_mouse_usb_desc
uint8_t g_mouse_usb_desc[9]
usb hid descriptor
Definition: mouse_desc.c:216
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: mouse_desc.c:345
config_descriptor
static usbd_desc_t config_descriptor
Definition: mouse_desc.c:265
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: mouse_desc.c:442
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: mouse_desc.c:319
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_EPT_DESC_INTERRUPT
#define USB_EPT_DESC_INTERRUPT
Definition: usb_std.h:176
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
USB_CLASS_CODE_HID
#define USB_CLASS_CODE_HID
Definition: usb_std.h:161
mouse_desc.h
usb mouse descriptor header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: mouse_desc.h Source File

  • middlewares
  • usbd_class
  • mouse
mouse_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __MOUSE_DESC_H
27#define __MOUSE_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "mouse_class.h"
34#include "usbd_core.h"
35
51#define MOUSE_BCD_NUM 0x0110
52
56#define USBD_MOUSE_VENDOR_ID 0x2E3C
57#define USBD_MOUSE_PRODUCT_ID 0x5710
58
62#define USBD_MOUSE_CONFIG_DESC_SIZE 34
63#define USBD_MOUSE_SIZ_REPORT_DESC 74
64#define USBD_MOUSE_SIZ_STRING_LANGID 4
65#define USBD_MOUSE_SIZ_STRING_SERIAL 0x1A
66
70#define USBD_MOUSE_DESC_MANUFACTURER_STRING "Artery"
71#define USBD_MOUSE_DESC_PRODUCT_STRING "Mouse"
72#define USBD_MOUSE_DESC_CONFIGURATION_STRING "Mouse Config"
73#define USBD_MOUSE_DESC_INTERFACE_STRING "Mouse Interface"
74
78#define MOUSE_BINTERVAL_TIME 0x0A
79
83#define MCU_ID1 (0x1FFFF7E8)
84#define MCU_ID2 (0x1FFFF7EC)
85#define MCU_ID3 (0x1FFFF7F0)
86
90extern uint8_t g_usbd_mouse_report[USBD_MOUSE_SIZ_REPORT_DESC];
91extern uint8_t g_mouse_usb_desc[9];
92extern usbd_desc_handler mouse_desc_handler;
93
101#ifdef __cplusplus
102}
103#endif
104
105#endif
106
107
USBD_MOUSE_SIZ_REPORT_DESC
#define USBD_MOUSE_SIZ_REPORT_DESC
Definition: mouse_desc.h:63
g_usbd_mouse_report
uint8_t g_usbd_mouse_report[74]
usb mouse report descriptor
Definition: mouse_desc.c:160
g_mouse_usb_desc
uint8_t g_mouse_usb_desc[9]
usb hid descriptor
Definition: mouse_desc.c:216
mouse_desc_handler
usbd_desc_handler mouse_desc_handler
mouse device descriptor handler structure
Definition: mouse_desc.c:64
mouse_class.h
usb hid mouse header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: msc_diskio.h Source File

  • usb_device
  • msc
  • inc
msc/inc/msc_diskio.h
Go to the documentation of this file.
1
24/* Define to prevent recursive inclusion -------------------------------------*/
25#ifndef __MSC_DISKIO_H
26#define __MSC_DISKIO_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32
33#include "usb_conf.h"
34#include "usb_std.h"
35
43#define INTERNAL_FLASH_LUN 0
44#define SPI_FLASH_LUN 1
45#define SD_LUN 2
46
47#define USB_FLASH_ADDR_OFFSET 0x08005000
48
49#define SECTOR_SIZE_1K 1024
50#define SECTOR_SIZE_2K 2048
51#define SECTOR_SIZE_4K 4096
52
53uint8_t *get_inquiry(uint8_t lun);
54 usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len);
55 usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len);
56 usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size);
57
66#ifdef __cplusplus
67}
68#endif
69
70#endif
71
72
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: msc/src/msc_diskio.c:134
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: msc/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: msc/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: msc/src/msc_diskio.c:100
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
usb_std.h
usb standard header file
usb_conf.h
usb config header file


AT32F403 Firmwary Library: msc_bot_scsi.c Source File

  • middlewares
  • usbd_class
  • msc
msc/msc_bot_scsi.c
Go to the documentation of this file.
1
24#include "msc_bot_scsi.h"
25#include "msc_diskio.h"
26
41#if defined ( __ICCARM__ ) /* iar compiler */
42 #pragma data_alignment=4
43#endif
44ALIGNED_HEAD uint8_t page00_inquiry_data[] ALIGNED_TAIL = {
45 0x00,
46 0x00,
47 0x00,
48 0x00,
49 0x00,
50
51};
52#if defined ( __ICCARM__ ) /* iar compiler */
53 #pragma data_alignment=4
54#endif
55ALIGNED_HEAD sense_type sense_data ALIGNED_TAIL =
56{
57 0x70,
58 0x00,
59 SENSE_KEY_ILLEGAL_REQUEST,
60 0x00000000,
61 0x0A,
62 0x00000000,
63 0x20,
64 0x00,
65 0x00000000
66};
67
68#if defined ( __ICCARM__ ) /* iar compiler */
69 #pragma data_alignment=4
70#endif
71ALIGNED_HEAD uint8_t mode_sense6_data[8] ALIGNED_TAIL =
72{
73 0x00,
74 0x00,
75 0x00,
76 0x00,
77 0x00,
78 0x00,
79 0x00,
80 0x00
81};
82
83#if defined ( __ICCARM__ ) /* iar compiler */
84 #pragma data_alignment=4
85#endif
86ALIGNED_HEAD uint8_t mode_sense10_data[8] ALIGNED_TAIL =
87{
88 0x00,
89 0x06,
90 0x00,
91 0x00,
92 0x00,
93 0x00,
94 0x00,
95 0x00
96};
102void bot_scsi_init(void *udev)
103{
104 usbd_core_type *pudev = (usbd_core_type *)udev;
105 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
106 pmsc->msc_state = MSC_STATE_MACHINE_IDLE;
107 pmsc->bot_status = MSC_BOT_STATE_IDLE;
108 pmsc->max_lun = MSC_SUPPORT_MAX_LUN - 1;
109
110 pmsc->csw_struct.dCSWSignature = CSW_DCSWSIGNATURE;
111 pmsc->csw_struct.dCSWDataResidue = 0;
112 pmsc->csw_struct.dCSWSignature = 0;
113 pmsc->csw_struct.dCSWTag = CSW_BCSWSTATUS_PASS;
114
115
116 /* set out endpoint to receive status */
117 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
118}
119
125void bot_scsi_reset(void *udev)
126{
127 usbd_core_type *pudev = (usbd_core_type *)udev;
128 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
129 pmsc->msc_state = MSC_STATE_MACHINE_IDLE;
130 pmsc->bot_status = MSC_BOT_STATE_RECOVERY;
131 pmsc->max_lun = MSC_SUPPORT_MAX_LUN - 1;
132
133 /* set out endpoint to receive status */
134 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
135}
136
143void bot_scsi_datain_handler(void *udev, uint8_t ept_num)
144{
145 usbd_core_type *pudev = (usbd_core_type *)udev;
146 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
147 switch(pmsc->msc_state)
148 {
149 case MSC_STATE_MACHINE_DATA_IN:
150 if(bot_scsi_cmd_process(udev) != USB_OK)
151 {
152 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_FAILED);
153 }
154 break;
155
156 case MSC_STATE_MACHINE_LAST_DATA:
157 case MSC_STATE_MACHINE_SEND_DATA:
158 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_PASS);
159 break;
160
161 default:
162 break;
163 }
164}
165
172void bot_scsi_dataout_handler(void *udev, uint8_t ept_num)
173{
174 usbd_core_type *pudev = (usbd_core_type *)udev;
175 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
176 switch(pmsc->msc_state)
177 {
178 case MSC_STATE_MACHINE_IDLE:
179 bot_cbw_decode(udev);
180 break;
181
182 case MSC_STATE_MACHINE_DATA_OUT:
183 if(bot_scsi_cmd_process(udev) != USB_OK)
184 {
185 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_FAILED);
186 }
187 break;
188 }
189}
190
196void bot_cbw_decode(void *udev)
197{
198 usbd_core_type *pudev = (usbd_core_type *)udev;
199 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
200
201 pmsc->csw_struct.dCSWTag = pmsc->cbw_struct.dCBWTage;
202 pmsc->csw_struct.dCSWDataResidue = pmsc->cbw_struct.dCBWDataTransferLength;
203
204 /* check param */
205 if((pmsc->cbw_struct.dCBWSignature != CBW_DCBWSIGNATURE) ||
206 (usbd_get_recv_len(pudev, USBD_MSC_BULK_OUT_EPT) != CBW_CMD_LENGTH)
207 || (pmsc->cbw_struct.bCBWLUN > MSC_SUPPORT_MAX_LUN) ||
208 (pmsc->cbw_struct.bCBWCBLength < 1) || (pmsc->cbw_struct.bCBWCBLength > 16))
209 {
210 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
211 pmsc->bot_status = MSC_BOT_STATE_ERROR;
212 bot_scsi_stall(udev);
213 }
214 else
215 {
216 if(bot_scsi_cmd_process(udev) != USB_OK)
217 {
218 bot_scsi_stall(udev);
219 }
220 else if((pmsc->msc_state != MSC_STATE_MACHINE_DATA_IN) &&
221 (pmsc->msc_state != MSC_STATE_MACHINE_DATA_OUT) &&
222 (pmsc->msc_state != MSC_STATE_MACHINE_LAST_DATA))
223 {
224 if(pmsc->data_len == 0)
225 {
226 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_PASS);
227 }
228 else if(pmsc->data_len > 0)
229 {
230 bot_scsi_send_data(udev, pmsc->data, pmsc->data_len);
231 }
232 }
233 }
234}
235
243void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len)
244{
245 usbd_core_type *pudev = (usbd_core_type *)udev;
246 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
247 uint32_t data_len = MIN(len, pmsc->cbw_struct.dCBWDataTransferLength);
248
249 pmsc->csw_struct.dCSWDataResidue -= data_len;
250 pmsc->csw_struct.bCSWStatus = CSW_BCSWSTATUS_PASS;
251
252 pmsc->msc_state = MSC_STATE_MACHINE_SEND_DATA;
253
254 usbd_ept_send(pudev, USBD_MSC_BULK_IN_EPT,
255 buffer, data_len);
256}
257
264void bot_scsi_send_csw(void *udev, uint8_t status)
265{
266 usbd_core_type *pudev = (usbd_core_type *)udev;
267 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
268
269 pmsc->csw_struct.bCSWStatus = status;
270 pmsc->csw_struct.dCSWSignature = CSW_DCSWSIGNATURE;
271 pmsc->msc_state = MSC_STATE_MACHINE_IDLE;
272
273 usbd_ept_send(pudev, USBD_MSC_BULK_IN_EPT,
274 (uint8_t *)&pmsc->csw_struct, CSW_CMD_LENGTH);
275
276 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT,
277 (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
278}
279
280
288void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc)
289{
290 sense_data.sense_key = sense_key;
291 sense_data.asc = asc;
292}
293
294
303 usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
304{
305 usbd_core_type *pudev = (usbd_core_type *)udev;
306 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
307 if((blk_offset + blk_count) > pmsc->blk_nbr[lun])
308 {
309 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, ADDRESS_OUT_OF_RANGE);
310 return USB_FAIL;
311 }
312 return USB_OK;
313}
314
320void bot_scsi_stall(void *udev)
321{
322 usbd_core_type *pudev = (usbd_core_type *)udev;
323 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
324
325 if((pmsc->cbw_struct.dCBWDataTransferLength != 0) &&
326 (pmsc->cbw_struct.bmCBWFlags == 0) &&
327 pmsc->bot_status == MSC_BOT_STATE_IDLE)
328 {
329 usbd_set_stall(pudev, USBD_MSC_BULK_OUT_EPT);
330 }
331 usbd_set_stall(pudev, USBD_MSC_BULK_IN_EPT);
332
333 if(pmsc->bot_status == MSC_BOT_STATE_ERROR)
334 {
335 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT,
336 (uint8_t *)&pmsc->cbw_struct, CBW_CMD_LENGTH);
337 }
338}
339
346 usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun)
347{
348 usb_sts_type status = USB_OK;
349 usbd_core_type *pudev = (usbd_core_type *)udev;
350 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
351
352 if(pmsc->cbw_struct.dCBWDataTransferLength != 0)
353 {
354 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
355 return USB_FAIL;
356 }
357
358 pmsc->data_len = 0;
359 return status;
360}
361
368 usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun)
369{
370 uint8_t *pdata;
371 uint32_t trans_len = 0;
372 usb_sts_type status = USB_OK;
373 usbd_core_type *pudev = (usbd_core_type *)udev;
374 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
375
376 if(pmsc->cbw_struct.CBWCB[1] & 0x01)
377 {
378 pdata = page00_inquiry_data;
379 trans_len = 5;
380 }
381 else
382 {
383 pdata = get_inquiry(lun);
384 if(pmsc->cbw_struct.dCBWDataTransferLength < SCSI_INQUIRY_DATA_LENGTH)
385 {
386 trans_len = pmsc->cbw_struct.dCBWDataTransferLength;
387 }
388 else
389 {
390 trans_len = SCSI_INQUIRY_DATA_LENGTH;
391 }
392 }
393
394 pmsc->data_len = trans_len;
395 while(trans_len)
396 {
397 trans_len --;
398 pmsc->data[trans_len] = pdata[trans_len];
399 }
400 return status;
401}
402
409 usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun)
410{
411 usbd_core_type *pudev = (usbd_core_type *)udev;
412 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
413 pmsc->data_len = 0;
414 return USB_OK;
415}
416
423 usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun)
424{
425 usbd_core_type *pudev = (usbd_core_type *)udev;
426 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
427 pmsc->data_len = 0;
428 return USB_OK;
429}
430
437 usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun)
438{
439 uint8_t data_len = 8;
440 usbd_core_type *pudev = (usbd_core_type *)udev;
441 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
442 pmsc->data_len = 8;
443 while(data_len)
444 {
445 data_len --;
446 pmsc->data[data_len] = mode_sense6_data[data_len];
447 };
448 return USB_OK;
449}
450
457 usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun)
458{
459 uint8_t data_len = 8;
460 usbd_core_type *pudev = (usbd_core_type *)udev;
461 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
462 pmsc->data_len = 8;
463 while(data_len)
464 {
465 data_len --;
466 pmsc->data[data_len] = mode_sense10_data[data_len];
467 };
468 return USB_OK;
469}
470
477 usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun)
478{
479 usbd_core_type *pudev = (usbd_core_type *)udev;
480 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
481 uint8_t *pdata = pmsc->data;
482 msc_disk_capacity(lun, &pmsc->blk_nbr[lun], &pmsc->blk_size[lun]);
483
484 pdata[0] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 24);
485 pdata[1] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 16);
486 pdata[2] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 8);
487 pdata[3] = (uint8_t)((pmsc->blk_nbr[lun] - 1));
488
489 pdata[4] = (uint8_t)((pmsc->blk_size[lun]) >> 24);
490 pdata[5] = (uint8_t)((pmsc->blk_size[lun]) >> 16);
491 pdata[6] = (uint8_t)((pmsc->blk_size[lun]) >> 8);
492 pdata[7] = (uint8_t)((pmsc->blk_size[lun]));
493
494 pmsc->data_len = 8;
495 return USB_OK;
496}
497
504 usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun)
505{
506 usbd_core_type *pudev = (usbd_core_type *)udev;
507 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
508 uint8_t *pdata = pmsc->data;
509
510 pdata[0] = 0;
511 pdata[1] = 0;
512 pdata[2] = 0;
513 pdata[3] = 0x08;
514
515 msc_disk_capacity(lun, &pmsc->blk_nbr[lun], &pmsc->blk_size[lun]);
516
517 pdata[4] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 24);
518 pdata[5] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 16);
519 pdata[6] = (uint8_t)((pmsc->blk_nbr[lun] - 1) >> 8);
520 pdata[7] = (uint8_t)((pmsc->blk_nbr[lun] - 1));
521
522 pdata[8] = 0x02;
523
524 pdata[9] = (uint8_t)((pmsc->blk_size[lun]) >> 16);
525 pdata[10] = (uint8_t)((pmsc->blk_size[lun]) >> 8);
526 pdata[11] = (uint8_t)((pmsc->blk_size[lun]));
527
528 pmsc->data_len = 12;
529
530 return USB_OK;
531}
532
539 usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun)
540{
541 uint32_t trans_len = 0x12;
542 usbd_core_type *pudev = (usbd_core_type *)udev;
543 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
544 uint8_t *pdata = pmsc->data;
545 uint8_t *sdata = (uint8_t *)&sense_data;
546
547 while(trans_len)
548 {
549 trans_len --;
550 pdata[trans_len] = sdata[trans_len];
551 }
552
553 if(pmsc->cbw_struct.dCBWDataTransferLength < REQ_SENSE_STANDARD_DATA_LEN)
554 {
555 pmsc->data_len = pmsc->cbw_struct.dCBWDataTransferLength;
556 }
557 else
558 {
559 pmsc->data_len = REQ_SENSE_STANDARD_DATA_LEN;
560 }
561 return USB_OK;
562}
563
570 usb_sts_type bot_scsi_verify(void *udev, uint8_t lun)
571{
572 usbd_core_type *pudev = (usbd_core_type *)udev;
573 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
574 uint8_t *cmd = pmsc->cbw_struct.CBWCB;
575 if((pmsc->cbw_struct.CBWCB[1] & 0x02) == 0x02)
576 {
577 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_FIELED_IN_COMMAND);
578 return USB_FAIL;
579 }
580
581 pmsc->blk_addr = cmd[2] << 24 | cmd[3] << 16 | cmd[4] << 8 | cmd[5];
582 pmsc->blk_len = cmd[7] << 8 | cmd[8];
583
584 if(bot_scsi_check_address(udev, lun, pmsc->blk_addr, pmsc->blk_len) != USB_OK)
585 {
586 return USB_FAIL;
587 }
588 pmsc->data_len = 0;
589 return USB_OK;
590}
591
598 usb_sts_type bot_scsi_read10(void *udev, uint8_t lun)
599{
600 usbd_core_type *pudev = (usbd_core_type *)udev;
601 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
602 uint8_t *cmd = pmsc->cbw_struct.CBWCB;
603 uint32_t len;
604
605 if(pmsc->msc_state == MSC_STATE_MACHINE_IDLE)
606 {
607 if((pmsc->cbw_struct.bmCBWFlags & 0x80) != 0x80)
608 {
609 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
610 return USB_FAIL;
611 }
612
613 pmsc->blk_addr = cmd[2] << 24 | cmd[3] << 16 | cmd[4] << 8 | cmd[5];
614 pmsc->blk_len = cmd[7] << 8 | cmd[8];
615
616 if(bot_scsi_check_address(udev, lun, pmsc->blk_addr, pmsc->blk_len) != USB_OK)
617 {
618 return USB_FAIL;
619 }
620
621 pmsc->blk_addr *= pmsc->blk_size[lun];
622 pmsc->blk_len *= pmsc->blk_size[lun];
623
624 if(pmsc->cbw_struct.dCBWDataTransferLength != pmsc->blk_len)
625 {
626 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
627 return USB_FAIL;
628 }
629 pmsc->msc_state = MSC_STATE_MACHINE_DATA_IN;
630 }
631 pmsc->data_len = MSC_MAX_DATA_BUF_LEN;
632
633 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
634 if( msc_disk_read(lun, pmsc->blk_addr, pmsc->data, len) != USB_OK)
635 {
636 bot_scsi_sense_code(udev, SENSE_KEY_HARDWARE_ERROR, MEDIUM_NOT_PRESENT);
637 return USB_FAIL;
638 }
639 usbd_ept_send(pudev, USBD_MSC_BULK_IN_EPT, pmsc->data, len);
640 pmsc->blk_addr += len;
641 pmsc->blk_len -= len;
642
643 pmsc->csw_struct.dCSWDataResidue -= len;
644 if(pmsc->blk_len == 0)
645 {
646 pmsc->msc_state = MSC_STATE_MACHINE_LAST_DATA;
647 }
648
649 return USB_OK;
650}
651
652
659 usb_sts_type bot_scsi_write10(void *udev, uint8_t lun)
660{
661 usbd_core_type *pudev = (usbd_core_type *)udev;
662 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
663 uint8_t *cmd = pmsc->cbw_struct.CBWCB;
664 uint32_t len;
665
666 if(pmsc->msc_state == MSC_STATE_MACHINE_IDLE)
667 {
668 if((pmsc->cbw_struct.bmCBWFlags & 0x80) == 0x80)
669 {
670 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
671 return USB_FAIL;
672 }
673
674 pmsc->blk_addr = cmd[2] << 24 | cmd[3] << 16 | cmd[4] << 8 | cmd[5];
675 pmsc->blk_len = cmd[7] << 8 | cmd[8];
676
677 if(bot_scsi_check_address(udev, lun, pmsc->blk_addr, pmsc->blk_len) != USB_OK)
678 {
679 return USB_FAIL;
680 }
681
682 pmsc->blk_addr *= pmsc->blk_size[lun];
683 pmsc->blk_len *= pmsc->blk_size[lun];
684
685 if(pmsc->cbw_struct.dCBWDataTransferLength != pmsc->blk_len)
686 {
687 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
688 return USB_FAIL;
689 }
690
691 pmsc->msc_state = MSC_STATE_MACHINE_DATA_OUT;
692 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
693 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)pmsc->data, len);
694
695 }
696 else
697 {
698 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
699 if(msc_disk_write(lun, pmsc->blk_addr, pmsc->data, len) != USB_OK)
700 {
701 bot_scsi_sense_code(udev, SENSE_KEY_HARDWARE_ERROR, MEDIUM_NOT_PRESENT);
702 return USB_FAIL;
703 }
704
705 pmsc->blk_addr += len;
706 pmsc->blk_len -= len;
707
708 pmsc->csw_struct.dCSWDataResidue -= len;
709
710 if(pmsc->blk_len == 0)
711 {
712 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_PASS);
713 }
714 else
715 {
716 len = MIN(pmsc->blk_len, MSC_MAX_DATA_BUF_LEN);
717 usbd_ept_recv(pudev, USBD_MSC_BULK_OUT_EPT, (uint8_t *)pmsc->data, len);
718 }
719 }
720 return USB_OK;
721}
722
729void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
730{
731 usbd_core_type *pudev = (usbd_core_type *)udev;
732 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
733 if(pmsc->bot_status == MSC_BOT_STATE_ERROR)
734 {
735 usbd_set_stall(pudev, USBD_MSC_BULK_IN_EPT);
736 pmsc->bot_status = MSC_BOT_STATE_IDLE;
737 }
738 else if(((ept_num & 0x80) == 0x80) && (pmsc->bot_status != MSC_BOT_STATE_RECOVERY))
739 {
740 bot_scsi_send_csw(udev, CSW_BCSWSTATUS_FAILED);
741 }
742}
743
749 usb_sts_type bot_scsi_cmd_process(void *udev)
750{
751 usb_sts_type status = USB_FAIL;
752 usbd_core_type *pudev = (usbd_core_type *)udev;
753 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
754 switch(pmsc->cbw_struct.CBWCB[0])
755 {
756 case MSC_CMD_INQUIRY:
757 status = bot_scsi_inquiry(udev, pmsc->cbw_struct.bCBWLUN);
758 break;
759
760 case MSC_CMD_START_STOP:
761 status = bot_scsi_start_stop(udev, pmsc->cbw_struct.bCBWLUN);
762 break;
763
764 case MSC_CMD_MODE_SENSE6:
765 status = bot_scsi_mode_sense6(udev, pmsc->cbw_struct.bCBWLUN);
766 break;
767
768 case MSC_CMD_MODE_SENSE10:
769 status = bot_scsi_mode_sense10(udev, pmsc->cbw_struct.bCBWLUN);
770 break;
771
772 case MSC_CMD_ALLOW_MEDIUM_REMOVAL:
773 status = bot_scsi_allow_medium_removal(udev, pmsc->cbw_struct.bCBWLUN);
774 break;
775
776 case MSC_CMD_READ_10:
777 status = bot_scsi_read10(udev, pmsc->cbw_struct.bCBWLUN);
778 break;
779
780 case MSC_CMD_READ_CAPACITY:
781 status = bot_scsi_capacity(udev, pmsc->cbw_struct.bCBWLUN);
782 break;
783
784 case MSC_CMD_REQUEST_SENSE:
785 status = bot_scsi_request_sense(udev, pmsc->cbw_struct.bCBWLUN);
786 break;
787
788 case MSC_CMD_TEST_UNIT:
789 status = bot_scsi_test_unit(udev, pmsc->cbw_struct.bCBWLUN);
790 break;
791
792 case MSC_CMD_VERIFY:
793 status = bot_scsi_verify(udev, pmsc->cbw_struct.bCBWLUN);
794 break;
795
796 case MSC_CMD_WRITE_10:
797 status = bot_scsi_write10(udev, pmsc->cbw_struct.bCBWLUN);
798 break;
799
800 case MSC_CMD_READ_FORMAT_CAPACITY:
801 status = bot_scsi_format_capacity(udev, pmsc->cbw_struct.bCBWLUN);
802 break;
803
804 default:
805 bot_scsi_sense_code(udev, SENSE_KEY_ILLEGAL_REQUEST, INVALID_COMMAND);
806 status = USB_FAIL;
807 break;
808 }
809 return status;
810}
811
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: composite_vcp_msc/src/msc_diskio.c:134
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: composite_vcp_msc/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: composite_vcp_msc/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: composite_vcp_msc/src/msc_diskio.c:100
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
cbw_type::bCBWLUN
uint8_t bCBWLUN
Definition: cdc_msc_class.h:192
msc_type::cbw_struct
cbw_type cbw_struct
Definition: cdc_msc_class.h:242
cbw_type::bCBWCBLength
uint8_t bCBWCBLength
Definition: cdc_msc_class.h:193
csw_type::dCSWSignature
uint32_t dCSWSignature
Definition: cdc_msc_class.h:202
cbw_type::CBWCB
uint8_t CBWCB[16]
Definition: cdc_msc_class.h:194
msc_type::blk_size
uint32_t blk_size[1]
Definition: cdc_msc_class.h:232
csw_type::bCSWStatus
uint32_t bCSWStatus
Definition: cdc_msc_class.h:205
csw_type::dCSWTag
uint32_t dCSWTag
Definition: cdc_msc_class.h:203
csw_type::dCSWDataResidue
uint32_t dCSWDataResidue
Definition: cdc_msc_class.h:204
msc_type::csw_struct
csw_type csw_struct
Definition: cdc_msc_class.h:243
msc_type::blk_len
uint32_t blk_len
Definition: cdc_msc_class.h:235
msc_type::data
uint8_t data[4096]
Definition: cdc_msc_class.h:238
msc_type::blk_addr
uint32_t blk_addr
Definition: cdc_msc_class.h:234
msc_type::max_lun
uint32_t max_lun
Definition: cdc_msc_class.h:229
msc_type::bot_status
uint8_t bot_status
Definition: cdc_msc_class.h:228
msc_type::msc_state
uint8_t msc_state
Definition: cdc_msc_class.h:227
cbw_type::dCBWDataTransferLength
uint32_t dCBWDataTransferLength
Definition: cdc_msc_class.h:190
msc_type::data_len
uint32_t data_len
Definition: cdc_msc_class.h:237
cbw_type::dCBWTage
uint32_t dCBWTage
Definition: cdc_msc_class.h:189
cbw_type::dCBWSignature
uint32_t dCBWSignature
Definition: cdc_msc_class.h:188
msc_type::blk_nbr
uint32_t blk_nbr[1]
Definition: cdc_msc_class.h:231
cbw_type::bmCBWFlags
uint8_t bmCBWFlags
Definition: cdc_msc_class.h:191
USBD_MSC_BULK_IN_EPT
#define USBD_MSC_BULK_IN_EPT
Definition: cdc_msc_class.h:55
USBD_MSC_BULK_OUT_EPT
#define USBD_MSC_BULK_OUT_EPT
Definition: cdc_msc_class.h:56
bot_scsi_format_capacity
usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command format capacity
Definition: msc/msc_bot_scsi.c:504
bot_scsi_datain_handler
void bot_scsi_datain_handler(void *pudev, uint8_t ept_num)
bulk-only transport data in handler
Definition: msc/msc_bot_scsi.c:143
bot_scsi_start_stop
usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun)
bulk-only transport scsi command start stop
Definition: msc/msc_bot_scsi.c:409
bot_scsi_request_sense
usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun)
bulk-only transport scsi command request sense
Definition: msc/msc_bot_scsi.c:539
bot_scsi_read10
usb_sts_type bot_scsi_read10(void *udev, uint8_t lun)
bulk-only transport scsi command read10
Definition: msc/msc_bot_scsi.c:598
bot_scsi_check_address
usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address
Definition: msc/msc_bot_scsi.c:303
bot_scsi_write10
usb_sts_type bot_scsi_write10(void *udev, uint8_t lun)
bulk-only transport scsi command write10
Definition: msc/msc_bot_scsi.c:659
bot_scsi_reset
void bot_scsi_reset(void *udev)
reset bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:125
bot_scsi_mode_sense10
usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10
Definition: msc/msc_bot_scsi.c:457
bot_scsi_sense_code
void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code
Definition: msc/msc_bot_scsi.c:288
bot_cbw_decode
void bot_cbw_decode(void *udev)
bulk-only cbw decode
Definition: msc/msc_bot_scsi.c:196
bot_scsi_verify
usb_sts_type bot_scsi_verify(void *udev, uint8_t lun)
bulk-only transport scsi command verify
Definition: msc/msc_bot_scsi.c:570
bot_scsi_allow_medium_removal
usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal
Definition: msc/msc_bot_scsi.c:423
bot_scsi_init
void bot_scsi_init(void *udev)
initialize bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:102
bot_scsi_cmd_process
usb_sts_type bot_scsi_cmd_process(void *udev)
bulk-only transport scsi command process
Definition: msc/msc_bot_scsi.c:749
bot_scsi_dataout_handler
void bot_scsi_dataout_handler(void *pudev, uint8_t ept_num)
bulk-only transport data out handler
Definition: msc/msc_bot_scsi.c:172
bot_scsi_mode_sense6
usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6
Definition: msc/msc_bot_scsi.c:437
bot_scsi_stall
void bot_scsi_stall(void *udev)
bot endpoint stall
Definition: msc/msc_bot_scsi.c:320
bot_scsi_send_data
void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len)
send bot data
Definition: msc/msc_bot_scsi.c:243
bot_scsi_test_unit
usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun)
bulk-only transport scsi command test unit
Definition: msc/msc_bot_scsi.c:346
bot_scsi_inquiry
usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun)
bulk-only transport scsi command inquiry
Definition: msc/msc_bot_scsi.c:368
bot_scsi_capacity
usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command capacity
Definition: msc/msc_bot_scsi.c:477
bot_scsi_clear_feature
void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
clear feature
Definition: msc/msc_bot_scsi.c:729
bot_scsi_send_csw
void bot_scsi_send_csw(void *udev, uint8_t status)
send command status
Definition: msc/msc_bot_scsi.c:264
ALIGNED_TAIL
ALIGNED_HEAD uint8_t page00_inquiry_data[] ALIGNED_TAIL
Definition: msc/msc_bot_scsi.c:44
MSC_STATE_MACHINE_DATA_IN
#define MSC_STATE_MACHINE_DATA_IN
Definition: cdc_msc_class.h:119
MSC_CMD_START_STOP
#define MSC_CMD_START_STOP
Definition: cdc_msc_class.h:86
MSC_CMD_VERIFY
#define MSC_CMD_VERIFY
Definition: cdc_msc_class.h:96
ADDRESS_OUT_OF_RANGE
#define ADDRESS_OUT_OF_RANGE
Definition: cdc_msc_class.h:151
SENSE_KEY_HARDWARE_ERROR
#define SENSE_KEY_HARDWARE_ERROR
Definition: cdc_msc_class.h:136
MEDIUM_NOT_PRESENT
#define MEDIUM_NOT_PRESENT
Definition: cdc_msc_class.h:152
MSC_CMD_MODE_SENSE6
#define MSC_CMD_MODE_SENSE6
Definition: cdc_msc_class.h:87
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155
MSC_CMD_ALLOW_MEDIUM_REMOVAL
#define MSC_CMD_ALLOW_MEDIUM_REMOVAL
Definition: cdc_msc_class.h:89
CSW_CMD_LENGTH
#define CSW_CMD_LENGTH
Definition: cdc_msc_class.h:112
MSC_BOT_STATE_IDLE
#define MSC_BOT_STATE_IDLE
Definition: cdc_msc_class.h:127
MSC_MAX_DATA_BUF_LEN
#define MSC_MAX_DATA_BUF_LEN
Definition: cdc_msc_class.h:82
CSW_DCSWSIGNATURE
#define CSW_DCSWSIGNATURE
Definition: cdc_msc_class.h:113
MSC_CMD_INQUIRY
#define MSC_CMD_INQUIRY
Definition: cdc_msc_class.h:85
MSC_SUPPORT_MAX_LUN
#define MSC_SUPPORT_MAX_LUN
Definition: cdc_msc_class.h:81
INVALID_COMMAND
#define INVALID_COMMAND
Definition: cdc_msc_class.h:147
MSC_CMD_WRITE_10
#define MSC_CMD_WRITE_10
Definition: cdc_msc_class.h:97
MSC_STATE_MACHINE_IDLE
#define MSC_STATE_MACHINE_IDLE
Definition: cdc_msc_class.h:125
MSC_CMD_READ_FORMAT_CAPACITY
#define MSC_CMD_READ_FORMAT_CAPACITY
Definition: cdc_msc_class.h:93
MSC_CMD_MODE_SENSE10
#define MSC_CMD_MODE_SENSE10
Definition: cdc_msc_class.h:88
SENSE_KEY_ILLEGAL_REQUEST
#define SENSE_KEY_ILLEGAL_REQUEST
Definition: cdc_msc_class.h:137
MSC_STATE_MACHINE_DATA_OUT
#define MSC_STATE_MACHINE_DATA_OUT
Definition: cdc_msc_class.h:120
CSW_BCSWSTATUS_PASS
#define CSW_BCSWSTATUS_PASS
Definition: cdc_msc_class.h:114
INVALID_FIELED_IN_COMMAND
#define INVALID_FIELED_IN_COMMAND
Definition: cdc_msc_class.h:148
REQ_SENSE_STANDARD_DATA_LEN
#define REQ_SENSE_STANDARD_DATA_LEN
Definition: cdc_msc_class.h:131
MSC_STATE_MACHINE_SEND_DATA
#define MSC_STATE_MACHINE_SEND_DATA
Definition: cdc_msc_class.h:121
CBW_DCBWSIGNATURE
#define CBW_DCBWSIGNATURE
Definition: cdc_msc_class.h:108
MSC_CMD_READ_10
#define MSC_CMD_READ_10
Definition: cdc_msc_class.h:90
MSC_BOT_STATE_RECOVERY
#define MSC_BOT_STATE_RECOVERY
Definition: cdc_msc_class.h:128
CBW_CMD_LENGTH
#define CBW_CMD_LENGTH
Definition: cdc_msc_class.h:107
MSC_STATE_MACHINE_LAST_DATA
#define MSC_STATE_MACHINE_LAST_DATA
Definition: cdc_msc_class.h:122
MSC_CMD_TEST_UNIT
#define MSC_CMD_TEST_UNIT
Definition: cdc_msc_class.h:95
CSW_BCSWSTATUS_FAILED
#define CSW_BCSWSTATUS_FAILED
Definition: cdc_msc_class.h:115
MSC_CMD_READ_CAPACITY
#define MSC_CMD_READ_CAPACITY
Definition: cdc_msc_class.h:92
MSC_BOT_STATE_ERROR
#define MSC_BOT_STATE_ERROR
Definition: cdc_msc_class.h:129
MSC_CMD_REQUEST_SENSE
#define MSC_CMD_REQUEST_SENSE
Definition: cdc_msc_class.h:94
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
USB_FAIL
@ USB_FAIL
Definition: usb_std.h:280
usbd_set_stall
void usbd_set_stall(usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall.
Definition: usbd_core.c:259
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
msc_bot_scsi.h
usb mass storage bulk-only transport and scsi command header file
msc_type
Definition: cdc_msc_class.h:226
sense_type
request sense standard data
Definition: cdc_msc_class.h:212
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111


AT32F403 Firmwary Library: msc_diskio.c Source File

  • usb_device
  • msc
  • src
msc/src/msc_diskio.c
Go to the documentation of this file.
1
24#include "msc_diskio.h"
25#include "msc_bot_scsi.h"
26
34uint32_t sector_size = 2048;
35uint32_t msc_flash_size;
36uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH] =
37{
38 /* lun = 0 */
39 {
40 0x00, /* peripheral device type (direct-access device) */
41 0x80, /* removable media bit */
42 0x00, /* ansi version, ecma version, iso version */
43 0x01, /* respond data format */
44 SCSI_INQUIRY_DATA_LENGTH - 5, /* additional length */
45 0x00, 0x00, 0x00, /* reserved */
46 'A', 'T', '3', '2', ' ', ' ', ' ', ' ', /* vendor information "AT32" */
47 'D', 'i', 's', 'k', '0', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', /* Product identification "Disk" */
48 '2', '.', '0', '0' /* product revision level */
49 }
50};
51
57uint8_t *get_inquiry(uint8_t lun)
58{
59 if(lun < MSC_SUPPORT_MAX_LUN)
60 return (uint8_t *)scsi_inquiry[lun];
61 else
62 return NULL;
63}
64
73 usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
74{
75 uint32_t i = 0;
76 uint32_t flash_addr = (uint32_t)addr + USB_FLASH_ADDR_OFFSET;
77 switch(lun)
78 {
79 case 0:
80 for(i = 0; i < len; i ++)
81 {
82 read_buf[i] = *((uint8_t *)flash_addr);
83 flash_addr += 1;
84 }
85 break;
86 case 1:
87 break;
88 }
89 return USB_OK;
90}
91
100 usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
101{
102 uint32_t flash_addr = (uint32_t)addr + USB_FLASH_ADDR_OFFSET;
103 uint32_t i = 0, page_len = 2048, tolen = len;
104 uint32_t erase_addr = flash_addr;
105 switch(lun)
106 {
107 case 0:
108 flash_unlock();
109 while(tolen >= page_len)
110 {
111 flash_sector_erase(erase_addr);
112 tolen -= page_len;
113 erase_addr += page_len;
114 }
115 for(i = 0; i < len; i ++)
116 {
117 flash_byte_program(flash_addr+i, buf[i]);
118 }
119 flash_lock();
120 break;
121 case 1:
122 break;
123 }
124 return USB_OK;
125}
126
134 usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
135{
136 uint32_t flash_s = *((uint32_t *)0x1FFFF7E0);
137 msc_flash_size = (flash_s << 10) - (USB_FLASH_ADDR_OFFSET - FLASH_BASE);
138
139 if(flash_s < 256)
140 {
141 sector_size = SECTOR_SIZE_1K;
142 }
143 else
144 {
145 sector_size = SECTOR_SIZE_2K;
146 }
147
148 switch(lun)
149 {
150 case INTERNAL_FLASH_LUN:
151 *blk_nbr = msc_flash_size / sector_size;
152 *blk_size = sector_size;
153 break;
154 case SPI_FLASH_LUN:
155 break;
156 case SD_LUN:
157 break;
158 default:
159 break;
160 }
161 return USB_OK;
162}
163
msc_flash_size
uint32_t msc_flash_size
Definition: msc/src/msc_diskio.c:35
sector_size
uint32_t sector_size
Definition: msc/src/msc_diskio.c:34
scsi_inquiry
uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]
Definition: msc/src/msc_diskio.c:36
USB_FLASH_ADDR_OFFSET
#define USB_FLASH_ADDR_OFFSET
Definition: composite_vcp_msc/inc/msc_diskio.h:47
INTERNAL_FLASH_LUN
#define INTERNAL_FLASH_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:43
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: composite_vcp_msc/src/msc_diskio.c:134
SD_LUN
#define SD_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:45
SPI_FLASH_LUN
#define SPI_FLASH_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:44
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: composite_vcp_msc/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: composite_vcp_msc/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: composite_vcp_msc/src/msc_diskio.c:100
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_byte_program
flash_status_type flash_byte_program(uint32_t address, uint8_t data)
program a byte at a specified address.
Definition: at32f403_flash.c:757
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
SECTOR_SIZE_1K
#define SECTOR_SIZE_1K
Definition: hid_iap_class.h:59
SECTOR_SIZE_2K
#define SECTOR_SIZE_2K
Definition: hid_iap_class.h:60
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155
MSC_SUPPORT_MAX_LUN
#define MSC_SUPPORT_MAX_LUN
Definition: cdc_msc_class.h:81
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
msc_bot_scsi.h
usb mass storage bulk-only transport and scsi command header file


AT32F403 Firmwary Library: msc_bot_scsi.h Source File

  • middlewares
  • usbd_class
  • msc
msc_bot_scsi.h
Go to the documentation of this file.
1
24/* define to prevent recursive inclusion -------------------------------------*/
25#ifndef __MSC_BOT_SCSI_H
26#define __MSC_BOT_SCSI_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "msc_class.h"
33#include "usbd_core.h"
34
47#define MSC_SUPPORT_MAX_LUN 1
48#define MSC_MAX_DATA_BUF_LEN 4096
49
50#define MSC_CMD_FORMAT_UNIT 0x04
51#define MSC_CMD_INQUIRY 0x12
52#define MSC_CMD_START_STOP 0x1B
53#define MSC_CMD_MODE_SENSE6 0x1A
54#define MSC_CMD_MODE_SENSE10 0x5A
55#define MSC_CMD_ALLOW_MEDIUM_REMOVAL 0x1E
56#define MSC_CMD_READ_10 0x28
57#define MSC_CMD_READ_12 0xA8
58#define MSC_CMD_READ_CAPACITY 0x25
59#define MSC_CMD_READ_FORMAT_CAPACITY 0x23
60#define MSC_CMD_REQUEST_SENSE 0x03
61#define MSC_CMD_TEST_UNIT 0x00
62#define MSC_CMD_VERIFY 0x2F
63#define MSC_CMD_WRITE_10 0x2A
64#define MSC_CMD_WRITE_12 0xAA
65#define MSC_CMD_WRITE_VERIFY 0x2E
66
67#define MSC_REQ_GET_MAX_LUN 0xFE
68#define MSC_REQ_BO_RESET 0xFF
70#define SET_LINE_CODING 0x20
71#define GET_LINE_CODING 0x21
72
73#define CBW_CMD_LENGTH 31
74#define CBW_DCBWSIGNATURE 0x43425355
75#define CBW_BMCBWFLAGS_DIR_OUT 0x00
76#define CBW_BMCBWFLAGS_DIR_IN 0x80
77
78#define CSW_CMD_LENGTH 13
79#define CSW_DCSWSIGNATURE 0x53425355
80#define CSW_BCSWSTATUS_PASS 0x00
81#define CSW_BCSWSTATUS_FAILED 0x01
82#define CSW_BCSWSTATUS_PHASE_ERR 0x02
83
84#define MSC_STATE_MACHINE_CMD 0x00
85#define MSC_STATE_MACHINE_DATA_IN 0x01
86#define MSC_STATE_MACHINE_DATA_OUT 0x02
87#define MSC_STATE_MACHINE_SEND_DATA 0x03
88#define MSC_STATE_MACHINE_LAST_DATA 0x04
89#define MSC_STATE_MACHINE_STATUS 0x05
90#define MSC_STATE_MACHINE_FAILED 0x06
91#define MSC_STATE_MACHINE_IDLE 0x07
92
93#define MSC_BOT_STATE_IDLE 0x00
94#define MSC_BOT_STATE_RECOVERY 0x01
95#define MSC_BOT_STATE_ERROR 0x02
96
97#define REQ_SENSE_STANDARD_DATA_LEN 0x12
98#define SENSE_KEY_NO_SENSE 0x00
99#define SENSE_KEY_RECOVERED_ERROR 0x01
100#define SENSE_KEY_NOT_READY 0x02
101#define SENSE_KEY_MEDIUM_ERROR 0x03
102#define SENSE_KEY_HARDWARE_ERROR 0x04
103#define SENSE_KEY_ILLEGAL_REQUEST 0x05
104#define SENSE_KEY_UNIT_ATTENTION 0x06
105#define SENSE_KEY_DATA_PROTECT 0x07
106#define SENSE_KEY_BLANK_CHECK 0x08
107#define SENSE_KEY_VENDERO_SPECIFIC 0x09
108#define SENSE_KEY_ABORTED_COMMAND 0x0B
109#define SENSE_KEY_VOLUME_OVERFLOW 0x0D
110#define SENSE_KEY_MISCOMPARE 0x0E
111
112
113#define INVALID_COMMAND 0x20
114#define INVALID_FIELED_IN_COMMAND 0x24
115#define PARAMETER_LIST_LENGTH_ERROR 0x1A
116#define INVALID_FIELD_IN_PARAMETER_LIST 0x26
117#define ADDRESS_OUT_OF_RANGE 0x21
118#define MEDIUM_NOT_PRESENT 0x3A
119#define MEDIUM_HAVE_CHANGED 0x28
120
121#define SCSI_INQUIRY_DATA_LENGTH 36
122
126typedef struct
127{
128 uint8_t opcode;
129 uint8_t lun;
130 uint32_t address;
131 uint8_t reserved1;
132 uint32_t alloc_length;
133 uint16_t reserved2;
134}cbd_typical_type;
135
139typedef struct
140{
141 uint8_t opcode;
142 uint8_t lun;
143 uint32_t address;
144 uint8_t reserved1;
145 uint32_t alloc_length;
146 uint16_t reserved2;
147}cbd_extended_type;
148
152typedef struct
153{
154 uint32_t dCBWSignature;
155 uint32_t dCBWTage;
156 uint32_t dCBWDataTransferLength;
157 uint8_t bmCBWFlags;
158 uint8_t bCBWLUN;
159 uint8_t bCBWCBLength;
160 uint8_t CBWCB[16];
161}cbw_type;
162
166typedef struct
167{
168 uint32_t dCSWSignature;
169 uint32_t dCSWTag;
170 uint32_t dCSWDataResidue;
171 uint32_t bCSWStatus;
172}csw_type;
173
177typedef struct
178{
179 uint8_t err_code;
180 uint8_t reserved1;
181 uint8_t sense_key;
182 uint32_t information;
183 uint8_t as_length;
184 uint32_t reserved2;
185 uint8_t asc;
186 uint8_t ascq;
187 uint32_t reserved3;
188}sense_type;
189
190
191typedef struct
192{
193 uint8_t msc_state;
194 uint8_t bot_status;
195 uint32_t max_lun;
196
197 uint32_t blk_nbr[MSC_SUPPORT_MAX_LUN];
198 uint32_t blk_size[MSC_SUPPORT_MAX_LUN];
199
200 uint64_t blk_addr;
201 uint32_t blk_len;
202
203 uint32_t data_len;
204 uint8_t data[MSC_MAX_DATA_BUF_LEN];
205
206 uint32_t alt_setting;
207
208 cbw_type cbw_struct;
209 csw_type csw_struct;
210
211}msc_type;
212
213void bot_scsi_init(void *udev);
214void bot_scsi_reset(void *udev);
215void bot_scsi_datain_handler(void *pudev, uint8_t ept_num);
216void bot_scsi_dataout_handler(void *pudev, uint8_t ept_num);
217void bot_cbw_decode(void *udev);
218void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len);
219void bot_scsi_send_csw(void *udev, uint8_t status);
220void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc);
221 usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count);
222void bot_scsi_stall(void *udev);
223 usb_sts_type bot_scsi_cmd_process(void *udev);
224
225 usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun);
226 usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun);
227 usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun);
228 usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun);
229 usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun);
230 usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun);
231 usb_sts_type bot_scsi_read10(void *udev, uint8_t lun);
232 usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun);
233 usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun);
234 usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun);
235 usb_sts_type bot_scsi_verify(void *udev, uint8_t lun);
236 usb_sts_type bot_scsi_write10(void *udev, uint8_t lun);
237void bot_scsi_clear_feature(void *udev, uint8_t ept_num);
238
250#ifdef __cplusplus
251}
252#endif
253
254#endif
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
bot_scsi_format_capacity
usb_sts_type bot_scsi_format_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command format capacity
Definition: composite_cdc_msc/msc_bot_scsi.c:504
bot_scsi_start_stop
usb_sts_type bot_scsi_start_stop(void *udev, uint8_t lun)
bulk-only transport scsi command start stop
Definition: composite_cdc_msc/msc_bot_scsi.c:409
bot_scsi_request_sense
usb_sts_type bot_scsi_request_sense(void *udev, uint8_t lun)
bulk-only transport scsi command request sense
Definition: composite_cdc_msc/msc_bot_scsi.c:539
bot_scsi_dataout_handler
void bot_scsi_dataout_handler(void *pudev, uint8_t ept_num)
bulk-only transport data out handler
Definition: composite_cdc_msc/msc_bot_scsi.c:172
MSC_MAX_DATA_BUF_LEN
#define MSC_MAX_DATA_BUF_LEN
Definition: msc_bot_scsi.h:48
bot_scsi_read10
usb_sts_type bot_scsi_read10(void *udev, uint8_t lun)
bulk-only transport scsi command read10
Definition: composite_cdc_msc/msc_bot_scsi.c:598
bot_scsi_check_address
usb_sts_type bot_scsi_check_address(void *udev, uint8_t lun, uint32_t blk_offset, uint32_t blk_count)
check address
Definition: composite_cdc_msc/msc_bot_scsi.c:303
MSC_SUPPORT_MAX_LUN
#define MSC_SUPPORT_MAX_LUN
Definition: msc_bot_scsi.h:47
bot_scsi_write10
usb_sts_type bot_scsi_write10(void *udev, uint8_t lun)
bulk-only transport scsi command write10
Definition: composite_cdc_msc/msc_bot_scsi.c:659
bot_scsi_reset
void bot_scsi_reset(void *udev)
reset bulk-only transport and scsi
Definition: composite_cdc_msc/msc_bot_scsi.c:125
bot_scsi_mode_sense10
usb_sts_type bot_scsi_mode_sense10(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense10
Definition: composite_cdc_msc/msc_bot_scsi.c:457
bot_scsi_sense_code
void bot_scsi_sense_code(void *udev, uint8_t sense_key, uint8_t asc)
send scsi sense code
Definition: composite_cdc_msc/msc_bot_scsi.c:288
bot_cbw_decode
void bot_cbw_decode(void *udev)
bulk-only cbw decode
Definition: composite_cdc_msc/msc_bot_scsi.c:196
bot_scsi_verify
usb_sts_type bot_scsi_verify(void *udev, uint8_t lun)
bulk-only transport scsi command verify
Definition: composite_cdc_msc/msc_bot_scsi.c:570
bot_scsi_allow_medium_removal
usb_sts_type bot_scsi_allow_medium_removal(void *udev, uint8_t lun)
bulk-only transport scsi command meidum removal
Definition: composite_cdc_msc/msc_bot_scsi.c:423
bot_scsi_init
void bot_scsi_init(void *udev)
initialize bulk-only transport and scsi
Definition: composite_cdc_msc/msc_bot_scsi.c:103
bot_scsi_cmd_process
usb_sts_type bot_scsi_cmd_process(void *udev)
bulk-only transport scsi command process
Definition: composite_cdc_msc/msc_bot_scsi.c:749
bot_scsi_datain_handler
void bot_scsi_datain_handler(void *pudev, uint8_t ept_num)
bulk-only transport data in handler
Definition: composite_cdc_msc/msc_bot_scsi.c:143
bot_scsi_mode_sense6
usb_sts_type bot_scsi_mode_sense6(void *udev, uint8_t lun)
bulk-only transport scsi command mode sense6
Definition: composite_cdc_msc/msc_bot_scsi.c:437
bot_scsi_stall
void bot_scsi_stall(void *udev)
bot endpoint stall
Definition: composite_cdc_msc/msc_bot_scsi.c:320
bot_scsi_send_data
void bot_scsi_send_data(void *udev, uint8_t *buffer, uint32_t len)
send bot data
Definition: composite_cdc_msc/msc_bot_scsi.c:243
bot_scsi_test_unit
usb_sts_type bot_scsi_test_unit(void *udev, uint8_t lun)
bulk-only transport scsi command test unit
Definition: composite_cdc_msc/msc_bot_scsi.c:346
bot_scsi_inquiry
usb_sts_type bot_scsi_inquiry(void *udev, uint8_t lun)
bulk-only transport scsi command inquiry
Definition: composite_cdc_msc/msc_bot_scsi.c:368
bot_scsi_capacity
usb_sts_type bot_scsi_capacity(void *udev, uint8_t lun)
bulk-only transport scsi command capacity
Definition: composite_cdc_msc/msc_bot_scsi.c:477
bot_scsi_clear_feature
void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
clear feature
Definition: composite_cdc_msc/msc_bot_scsi.c:729
bot_scsi_send_csw
void bot_scsi_send_csw(void *udev, uint8_t status)
send command status
Definition: composite_cdc_msc/msc_bot_scsi.c:264
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
msc_class.h
usb msc class file
cbd_extended_type
extended command block description
Definition: cdc_msc_class.h:174
cbd_typical_type
typical command block description
Definition: cdc_msc_class.h:161
cbw_type
command block wrapper
Definition: cdc_msc_class.h:187
csw_type
command block wrapper
Definition: cdc_msc_class.h:201
msc_type
Definition: cdc_msc_class.h:226
msc_type::blk_addr
uint64_t blk_addr
Definition: msc_bot_scsi.h:200
sense_type
request sense standard data
Definition: cdc_msc_class.h:212
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: msc_class.c Source File

  • middlewares
  • usbd_class
  • msc
msc_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "msc_class.h"
26#include "msc_desc.h"
27#include "msc_bot_scsi.h"
28
42static usb_sts_type class_init_handler(void *udev);
43static usb_sts_type class_clear_handler(void *udev);
44static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
45static usb_sts_type class_ept0_tx_handler(void *udev);
46static usb_sts_type class_ept0_rx_handler(void *udev);
47static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
49static usb_sts_type class_sof_handler(void *udev);
50static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
51
52 msc_type msc_struct;
53
54/* usb device class handler */
55 usbd_class_handler msc_class_handler =
56{
57 class_init_handler,
58 class_clear_handler,
59 class_setup_handler,
60 class_ept0_tx_handler,
61 class_ept0_rx_handler,
62 class_in_handler,
63 class_out_handler,
64 class_sof_handler,
65 class_event_handler,
66 &msc_struct
67};
68
74static usb_sts_type class_init_handler(void *udev)
75{
76 usb_sts_type status = USB_OK;
77 usbd_core_type *pudev = (usbd_core_type *)udev;
78
79 /* open in endpoint */
80 usbd_ept_open(pudev, USBD_MSC_BULK_IN_EPT, EPT_BULK_TYPE, USBD_OUT_MAXPACKET_SIZE);
81
82 /* open out endpoint */
83 usbd_ept_open(pudev, USBD_MSC_BULK_OUT_EPT, EPT_BULK_TYPE, USBD_OUT_MAXPACKET_SIZE);
84
85 bot_scsi_init(udev);
86
87 return status;
88}
89
95static usb_sts_type class_clear_handler(void *udev)
96{
97 usb_sts_type status = USB_OK;
98 usbd_core_type *pudev = (usbd_core_type *)udev;
99
100 /* close in endpoint */
101 usbd_ept_close(pudev, USBD_MSC_BULK_IN_EPT);
102
103 /* close out endpoint */
104 usbd_ept_close(pudev, USBD_MSC_BULK_OUT_EPT);
105
106 return status;
107}
108
115static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
116{
117 usb_sts_type status = USB_OK;
118 usbd_core_type *pudev = (usbd_core_type *)udev;
119 msc_type *pmsc = (msc_type *)pudev->class_handler->pdata;
120 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
121 {
122 /* class request */
123 case USB_REQ_TYPE_CLASS:
124
125 switch(setup->bRequest)
126 {
127 case MSC_REQ_GET_MAX_LUN:
128 usbd_ctrl_send(pudev, (uint8_t *)&pmsc->max_lun, 1);
129 break;
130 case MSC_REQ_BO_RESET:
131 bot_scsi_reset(udev);
132 usbd_ctrl_send_status(pudev);
133 break;
134 default:
135 usbd_ctrl_unsupport(pudev);
136 break;
137
138 }
139 break;
140 /* standard request */
141 case USB_REQ_TYPE_STANDARD:
142
143 switch(setup->bRequest)
144 {
145 case USB_STD_REQ_GET_DESCRIPTOR:
146 usbd_ctrl_unsupport(pudev);
147 break;
148 case USB_STD_REQ_GET_INTERFACE:
149 usbd_ctrl_send(pudev, (uint8_t *)&pmsc->alt_setting, 1);
150 break;
151 case USB_STD_REQ_SET_INTERFACE:
152 pmsc->alt_setting = setup->wValue;
153 break;
154 case USB_STD_REQ_CLEAR_FEATURE:
155 usbd_ept_close(pudev, (uint8_t)setup->wIndex);
156
157 if((setup->wIndex & 0x80) == 0x80)
158 {
159 usbd_ept_open(pudev, (uint8_t)setup->wIndex, EPT_BULK_TYPE, USBD_IN_MAXPACKET_SIZE);
160 }
161 else
162 {
163 usbd_ept_open(pudev, (uint8_t)setup->wIndex, EPT_BULK_TYPE, USBD_OUT_MAXPACKET_SIZE);
164 }
165 bot_scsi_clear_feature(udev, setup->wIndex);
166 break;
167 case USB_STD_REQ_SET_FEATURE:
168 break;
169 default:
170 usbd_ctrl_unsupport(pudev);
171 break;
172 }
173 break;
174 default:
175 usbd_ctrl_unsupport(pudev);
176 break;
177 }
178 return status;
179}
180
186static usb_sts_type class_ept0_tx_handler(void *udev)
187{
188 usb_sts_type status = USB_OK;
189
190 /* ...user code... */
191
192 return status;
193}
194
200static usb_sts_type class_ept0_rx_handler(void *udev)
201{
202 usb_sts_type status = USB_OK;
203 usbd_core_type *pudev = (usbd_core_type *)udev;
204 uint32_t recv_len = usbd_get_recv_len(pudev, 0);
205 /* ...user code... */
206 return status;
207}
208
215static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
216{
217 usb_sts_type status = USB_OK;
218
219 bot_scsi_datain_handler(udev, ept_num);
220 return status;
221}
222
229static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
230{
231 usb_sts_type status = USB_OK;
232 bot_scsi_dataout_handler(udev, ept_num);
233 return status;
234}
235
241static usb_sts_type class_sof_handler(void *udev)
242{
243 usb_sts_type status = USB_OK;
244
245 /* ...user code... */
246
247 return status;
248}
249
256static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
257{
258 usb_sts_type status = USB_OK;
259 switch(event)
260 {
261 case USBD_RESET_EVENT:
262
263 /* ...user code... */
264
265 break;
266 case USBD_SUSPEND_EVENT:
267
268 /* ...user code... */
269
270 break;
271 case USBD_WAKEUP_EVENT:
272 /* ...user code... */
273
274 break;
275
276 default:
277 break;
278 }
279 return status;
280}
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
msc_type::max_lun
uint32_t max_lun
Definition: cdc_msc_class.h:229
msc_type::alt_setting
uint32_t alt_setting
Definition: cdc_msc_class.h:240
USBD_MSC_BULK_IN_EPT
#define USBD_MSC_BULK_IN_EPT
Definition: cdc_msc_class.h:55
USBD_MSC_BULK_OUT_EPT
#define USBD_MSC_BULK_OUT_EPT
Definition: cdc_msc_class.h:56
bot_scsi_datain_handler
void bot_scsi_datain_handler(void *pudev, uint8_t ept_num)
bulk-only transport data in handler
Definition: msc/msc_bot_scsi.c:143
bot_scsi_reset
void bot_scsi_reset(void *udev)
reset bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:125
bot_scsi_init
void bot_scsi_init(void *udev)
initialize bulk-only transport and scsi
Definition: msc/msc_bot_scsi.c:102
bot_scsi_dataout_handler
void bot_scsi_dataout_handler(void *pudev, uint8_t ept_num)
bulk-only transport data out handler
Definition: msc/msc_bot_scsi.c:172
bot_scsi_clear_feature
void bot_scsi_clear_feature(void *udev, uint8_t ept_num)
clear feature
Definition: msc/msc_bot_scsi.c:729
EPT_BULK_TYPE
@ EPT_BULK_TYPE
Definition: at32f403_usb.h:203
MSC_REQ_BO_RESET
#define MSC_REQ_BO_RESET
Definition: cdc_msc_class.h:102
MSC_REQ_GET_MAX_LUN
#define MSC_REQ_GET_MAX_LUN
Definition: cdc_msc_class.h:101
USBD_OUT_MAXPACKET_SIZE
#define USBD_OUT_MAXPACKET_SIZE
Definition: msc_class.h:51
USBD_IN_MAXPACKET_SIZE
#define USBD_IN_MAXPACKET_SIZE
Definition: msc_class.h:50
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: msc_class.c:241
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: msc_class.c:215
msc_struct
msc_type msc_struct
Definition: msc_class.c:52
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: msc_class.c:95
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: msc_class.c:115
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: msc_class.c:186
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: msc_class.c:200
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: msc_class.c:256
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb endpoint
Definition: msc_class.c:74
msc_class_handler
usbd_class_handler msc_class_handler
Definition: msc_class.c:55
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: msc_class.c:229
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ctrl_send_status
void usbd_ctrl_send_status(usbd_core_type *udev)
usb control endpoint send in status
Definition: usbd_core.c:209
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
msc_bot_scsi.h
usb mass storage bulk-only transport and scsi command header file
msc_class.h
usb msc class file
msc_desc.h
usb msc descriptor header file
msc_type
Definition: cdc_msc_class.h:226
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::wIndex
uint16_t wIndex
Definition: usb_std.h:294
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: msc_class.h Source File

  • middlewares
  • usbd_class
  • msc
msc_class.h
Go to the documentation of this file.
1
24 /* define to prevent recursive inclusion -------------------------------------*/
25#ifndef __MSC_CLASS_H
26#define __MSC_CLASS_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "usb_std.h"
33#include "usbd_core.h"
34
47#define USBD_MSC_BULK_IN_EPT 0x81
48#define USBD_MSC_BULK_OUT_EPT 0x01
49
50#define USBD_IN_MAXPACKET_SIZE 0x40
51#define USBD_OUT_MAXPACKET_SIZE 0x40
52
53
54extern usbd_class_handler msc_class_handler;
66#ifdef __cplusplus
67}
68#endif
69
70#endif
msc_class_handler
usbd_class_handler msc_class_handler
Definition: msc_class.c:55
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: msc_desc.c Source File

  • middlewares
  • usbd_class
  • msc
msc_desc.c
Go to the documentation of this file.
1
24#include "stdio.h"
25#include "usb_std.h"
26#include "usbd_sdr.h"
27#include "usbd_core.h"
28#include "msc_desc.h"
29
43static usbd_desc_t *get_device_descriptor(void);
44static usbd_desc_t *get_device_qualifier(void);
45static usbd_desc_t *get_device_configuration(void);
46static usbd_desc_t *get_device_other_speed(void);
47static usbd_desc_t *get_device_lang_id(void);
48static usbd_desc_t *get_device_manufacturer_string(void);
49static usbd_desc_t *get_device_product_string(void);
50static usbd_desc_t *get_device_serial_string(void);
51static usbd_desc_t *get_device_interface_string(void);
52static usbd_desc_t *get_device_config_string(void);
53
54static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
55static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
56static void get_serial_num(void);
57#if defined ( __ICCARM__ ) /* iar compiler */
58 #pragma data_alignment=4
59#endif
60ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
61
65 usbd_desc_handler msc_desc_handler =
66{
67 get_device_descriptor,
68 get_device_qualifier,
69 get_device_configuration,
70 get_device_other_speed,
71 get_device_lang_id,
72 get_device_manufacturer_string,
73 get_device_product_string,
74 get_device_serial_string,
75 get_device_interface_string,
76 get_device_config_string,
77};
78
82#if defined ( __ICCARM__ ) /* iar compiler */
83 #pragma data_alignment=4
84#endif
85ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
86{
87 USB_DEVICE_DESC_LEN, /* bLength */
88 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
89 0x00, /* bcdUSB */
90 0x02,
91 0x00, /* bDeviceClass */
92 0x00, /* bDeviceSubClass */
93 0x00, /* bDeviceProtocol */
94 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
95 LBYTE(USBD_MSC_VENDOR_ID), /* idVendor */
96 HBYTE(USBD_MSC_VENDOR_ID), /* idVendor */
97 LBYTE(USBD_MSC_PRODUCT_ID), /* idProduct */
98 HBYTE(USBD_MSC_PRODUCT_ID), /* idProduct */
99 0x00, /* bcdDevice rel. 2.00 */
100 0x02,
101 USB_MFC_STRING, /* Index of manufacturer string */
102 USB_PRODUCT_STRING, /* Index of product string */
103 USB_SERIAL_STRING, /* Index of serial number string */
104 1 /* bNumConfigurations */
105};
106
110#if defined ( __ICCARM__ ) /* iar compiler */
111 #pragma data_alignment=4
112#endif
113ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_MSC_CONFIG_DESC_SIZE] ALIGNED_TAIL =
114{
115 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
116 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
117 LBYTE(USBD_MSC_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
118 HBYTE(USBD_MSC_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
119 0x01, /* bNumInterfaces: 2 interface */
120 0x01, /* bConfigurationValue: configuration value */
121 0x04, /* iConfiguration: index of string descriptor describing
122 the configuration */
123 0xC0, /* bmAttributes: self powered */
124 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
125
126 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
127 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
128 0x00, /* bInterfaceNumber: number of interface */
129 0x00, /* bAlternateSetting: alternate set */
130 0x02, /* bNumEndpoints: number of endpoints */
131 USB_CLASS_CODE_MSC, /* bInterfaceClass: msc class code */
132 0x06, /* bInterfaceSubClass: subclass code scsi */
133 0x50, /* bInterfaceProtocol: protocol code BBB */
134 0x05, /* iInterface: index of string descriptor */
135
136 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
137 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
138 USBD_MSC_BULK_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
139 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
140 LBYTE(USBD_IN_MAXPACKET_SIZE),
141 HBYTE(USBD_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
142 0x00, /* bInterval: interval for polling endpoint for data transfers */
143
144 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
145 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
146 USBD_MSC_BULK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
147 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
148 LBYTE(USBD_OUT_MAXPACKET_SIZE),
149 HBYTE(USBD_OUT_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
150 0x00, /* bInterval: interval for polling endpoint for data transfers */
151};
152
156#if defined ( __ICCARM__ ) /* iar compiler */
157 #pragma data_alignment=4
158#endif
159ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_MSC_SIZ_STRING_LANGID] ALIGNED_TAIL =
160{
161 USBD_MSC_SIZ_STRING_LANGID,
162 USB_DESCIPTOR_TYPE_STRING,
163 0x09,
164 0x04,
165};
166
170#if defined ( __ICCARM__ ) /* iar compiler */
171 #pragma data_alignment=4
172#endif
173ALIGNED_HEAD static uint8_t g_string_serial[USBD_MSC_SIZ_STRING_SERIAL] ALIGNED_TAIL =
174{
175 USBD_MSC_SIZ_STRING_SERIAL,
176 USB_DESCIPTOR_TYPE_STRING,
177};
178
179
180/* device descriptor */
181static usbd_desc_t device_descriptor =
182{
183 USB_DEVICE_DESC_LEN,
184 g_usbd_descriptor
185};
186
187/* config descriptor */
188static usbd_desc_t config_descriptor =
189{
190 USBD_MSC_CONFIG_DESC_SIZE,
191 g_usbd_configuration
192};
193
194/* langid descriptor */
195static usbd_desc_t langid_descriptor =
196{
197 USBD_MSC_SIZ_STRING_LANGID,
198 g_string_lang_id
199};
200
201/* serial descriptor */
202static usbd_desc_t serial_descriptor =
203{
204 USBD_MSC_SIZ_STRING_SERIAL,
205 g_string_serial
206};
207
208static usbd_desc_t vp_desc;
209
216static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
217{
218 uint16_t str_len = 0, id_pos = 2;
219 uint8_t *tmp_str = string;
220
221 while(*tmp_str != '\0')
222 {
223 str_len ++;
224 unicode_buf[id_pos ++] = *tmp_str ++;
225 unicode_buf[id_pos ++] = 0x00;
226 }
227
228 str_len = str_len * 2 + 2;
229 unicode_buf[0] = (uint8_t)str_len;
230 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
231
232 return str_len;
233}
234
242static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
243{
244 uint8_t idx = 0;
245
246 for( idx = 0 ; idx < len ; idx ++)
247 {
248 if( ((value >> 28)) < 0xA )
249 {
250 pbuf[ 2 * idx] = (value >> 28) + '0';
251 }
252 else
253 {
254 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
255 }
256
257 value = value << 4;
258
259 pbuf[2 * idx + 1] = 0;
260 }
261}
262
268static void get_serial_num(void)
269{
270 uint32_t serial0, serial1, serial2;
271
272 serial0 = *(uint32_t*)MCU_ID1;
273 serial1 = *(uint32_t*)MCU_ID2;
274 serial2 = *(uint32_t*)MCU_ID3;
275
276 serial0 += serial2;
277
278 if (serial0 != 0)
279 {
280 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
281 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
282 }
283}
284
290static usbd_desc_t *get_device_descriptor(void)
291{
292 return &device_descriptor;
293}
294
300static usbd_desc_t * get_device_qualifier(void)
301{
302 return NULL;
303}
304
310static usbd_desc_t *get_device_configuration(void)
311{
312 return &config_descriptor;
313}
314
320static usbd_desc_t *get_device_other_speed(void)
321{
322 return NULL;
323}
324
330static usbd_desc_t *get_device_lang_id(void)
331{
332 return &langid_descriptor;
333}
334
335
341static usbd_desc_t *get_device_manufacturer_string(void)
342{
343 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MSC_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
344 vp_desc.descriptor = g_usbd_desc_buffer;
345 return &vp_desc;
346}
347
353static usbd_desc_t *get_device_product_string(void)
354{
355 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MSC_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
356 vp_desc.descriptor = g_usbd_desc_buffer;
357 return &vp_desc;
358}
359
365static usbd_desc_t *get_device_serial_string(void)
366{
367 get_serial_num();
368 return &serial_descriptor;
369}
370
376static usbd_desc_t *get_device_interface_string(void)
377{
378 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MSC_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
379 vp_desc.descriptor = g_usbd_desc_buffer;
380 return &vp_desc;
381}
382
388static usbd_desc_t *get_device_config_string(void)
389{
390 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_MSC_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
391 vp_desc.descriptor = g_usbd_desc_buffer;
392 return &vp_desc;
393}
394
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
USBD_MSC_BULK_IN_EPT
#define USBD_MSC_BULK_IN_EPT
Definition: cdc_msc_class.h:55
USBD_MSC_BULK_OUT_EPT
#define USBD_MSC_BULK_OUT_EPT
Definition: cdc_msc_class.h:56
USBD_OUT_MAXPACKET_SIZE
#define USBD_OUT_MAXPACKET_SIZE
Definition: msc_class.h:51
USBD_IN_MAXPACKET_SIZE
#define USBD_IN_MAXPACKET_SIZE
Definition: msc_class.h:50
USBD_MSC_SIZ_STRING_SERIAL
#define USBD_MSC_SIZ_STRING_SERIAL
Definition: msc_desc.h:55
USBD_MSC_DESC_PRODUCT_STRING
#define USBD_MSC_DESC_PRODUCT_STRING
Definition: msc_desc.h:58
USBD_MSC_DESC_CONFIGURATION_STRING
#define USBD_MSC_DESC_CONFIGURATION_STRING
Definition: msc_desc.h:59
USBD_MSC_DESC_INTERFACE_STRING
#define USBD_MSC_DESC_INTERFACE_STRING
Definition: msc_desc.h:60
USBD_MSC_CONFIG_DESC_SIZE
#define USBD_MSC_CONFIG_DESC_SIZE
Definition: msc_desc.h:53
USBD_MSC_PRODUCT_ID
#define USBD_MSC_PRODUCT_ID
Definition: msc_desc.h:51
USBD_MSC_SIZ_STRING_LANGID
#define USBD_MSC_SIZ_STRING_LANGID
Definition: msc_desc.h:54
USBD_MSC_VENDOR_ID
#define USBD_MSC_VENDOR_ID
Definition: msc_desc.h:50
USBD_MSC_DESC_MANUFACTURER_STRING
#define USBD_MSC_DESC_MANUFACTURER_STRING
Definition: msc_desc.h:57
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: msc_desc.c:202
device_descriptor
static usbd_desc_t device_descriptor
Definition: msc_desc.c:181
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: msc_desc.c:310
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: msc_desc.c:195
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: msc_desc.c:290
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: msc_desc.c:341
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: msc_desc.c:300
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: msc_desc.c:376
vp_desc
static usbd_desc_t vp_desc
Definition: msc_desc.c:208
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: msc_desc.c:320
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: msc_desc.c:60
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: msc_desc.c:353
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: msc_desc.c:388
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: msc_desc.c:216
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: msc_desc.c:330
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: msc_desc.c:268
config_descriptor
static usbd_desc_t config_descriptor
Definition: msc_desc.c:188
msc_desc_handler
usbd_desc_handler msc_desc_handler
device descriptor handler structure
Definition: msc_desc.c:65
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: msc_desc.c:365
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: msc_desc.c:242
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
USB_CLASS_CODE_MSC
#define USB_CLASS_CODE_MSC
Definition: usb_std.h:163
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_EPT_DESC_BULK
#define USB_EPT_DESC_BULK
Definition: usb_std.h:175
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
msc_desc.h
usb msc descriptor header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: msc_desc.h Source File

  • middlewares
  • usbd_class
  • msc
msc_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __MSC_DESC_H
27#define __MSC_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "msc_class.h"
34#include "usbd_core.h"
35
48#define MSC_BCD_NUM 0x0110
49
50#define USBD_MSC_VENDOR_ID 0x2E3C
51#define USBD_MSC_PRODUCT_ID 0x5720
52
53#define USBD_MSC_CONFIG_DESC_SIZE 32
54#define USBD_MSC_SIZ_STRING_LANGID 4
55#define USBD_MSC_SIZ_STRING_SERIAL 0x1A
56
57#define USBD_MSC_DESC_MANUFACTURER_STRING "Artery"
58#define USBD_MSC_DESC_PRODUCT_STRING "AT32 Mass Storage"
59#define USBD_MSC_DESC_CONFIGURATION_STRING "Mass Storage Config"
60#define USBD_MSC_DESC_INTERFACE_STRING "Mass Storage Interface"
61
62#define MCU_ID1 (0x1FFFF7E8)
63#define MCU_ID2 (0x1FFFF7EC)
64#define MCU_ID3 (0x1FFFF7F0)
65
66extern usbd_desc_handler msc_desc_handler;
67
79#ifdef __cplusplus
80}
81#endif
82
83#endif
msc_desc_handler
usbd_desc_handler msc_desc_handler
device descriptor handler structure
Definition: msc_desc.c:65
msc_class.h
usb msc class file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: operate_spim.c Source File

  • flash
  • operate_spim
  • src
operate_spim.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "operate_spim.h"
27#include <string.h>
28
29
39uint8_t write_buffer[4096]; /* the content writed to spim flash */
40uint8_t read_buffer[4096]; /* the content read from spim flash */
41
47void spim_init(void)
48{
49 gpio_init_type gpio_init_struct;
50
51 /* enable the clock */
52 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
54 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
55
56 /* init spim io */
57 gpio_default_para_init(&gpio_init_struct);
58 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
59 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
60 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
61 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
62 gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_11 | GPIO_PINS_12;
63 gpio_init(GPIOA, &gpio_init_struct);
64 gpio_init_struct.gpio_pins = GPIO_PINS_1 | GPIO_PINS_6 | GPIO_PINS_7;
65 gpio_init(GPIOB, &gpio_init_struct);
66
67 /* enable spim */
68 gpio_pin_remap_config(EXT_SPIM_EN_MUX, TRUE);
69
70 /* in this example, use on-board en25qh128a as spim flash */
71 flash_spim_model_select(FLASH_SPIM_MODEL2);
72
73 /* unlock the spim flash program erase controller */
74 while(flash_flag_get(FLASH_SPIM_OBF_FLAG));
75 flash_spim_unlock();
76 while(FLASH->ctrl3_bit.oplk);
77
78 /* if the data written to spim flash need to be scrambled, please specify the scrambled range */
79 flash_spim_encryption_range_set(0);
80
81 return;
82}
83
91void sector_read(uint32_t address, uint32_t sector_size, uint8_t *buf)
92{
93 while(sector_size)
94 {
95 *(uint32_t *)buf = *(uint32_t *)address;
96 sector_size -= sizeof(uint32_t);
97 address += sizeof(uint32_t);
98 buf += sizeof(uint32_t);
99 }
100}
101
107void spim_operate(void)
108{
109 uint16_t i = 0;
110 flash_status_type status = FLASH_OPERATE_DONE;
111
112 /* configures the spim flash */
113 spim_init();
114
115 /* fill the content to be writed to spim flash */
116 for(i = 0; i < SPIM_SECTOR_SIZE; i++)
117 {
118 write_buffer[i] = i % 256;
119 }
120
121 /* wait for operation to be completed */
122 status = flash_operation_wait_for(ERASE_TIMEOUT);
123
124 if((status == FLASH_PROGRAM_ERROR) || (status == FLASH_EPP_ERROR))
125 flash_flag_clear(FLASH_PRGMERR_FLAG | FLASH_EPPERR_FLAG);
126 else if(status == FLASH_OPERATE_TIMEOUT)
127 {
128 /* test spim fail */
129 return;
130 }
131 /* erase an spim flash sector */
132 if(flash_sector_erase(SPIM_TEST_ADDR) != FLASH_OPERATE_DONE)
133 {
134 /* test spim fail */
135 return;
136 }
137
138 /* read an spim flash sector */
139 memset(read_buffer, 0, SPIM_SECTOR_SIZE);
140 sector_read(SPIM_TEST_ADDR, SPIM_SECTOR_SIZE, read_buffer);
141
142 /* check if the desired sector are erased */
143 for(i = 0; i < SPIM_SECTOR_SIZE; i++)
144 {
145 if(read_buffer[i] != 0xff)
146 {
147 /* test spim fail */
148 return;
149 }
150 }
151
152 /* program an spim flash sector */
153 i = 0;
154 while(i < SPIM_SECTOR_SIZE)
155 {
156 status = flash_word_program(SPIM_TEST_ADDR + i, *(uint32_t *)(write_buffer + i));
157 if(status != FLASH_OPERATE_DONE)
158 {
159 /* test spim fail */
160 return;
161 }
162 i = i + 4;
163 }
164
165 /* read an spim flash sector */
166 memset(read_buffer, 0, SPIM_SECTOR_SIZE);
167 sector_read(SPIM_TEST_ADDR, SPIM_SECTOR_SIZE, read_buffer);
168
169 /* check if reading result and writing content are the same */
170 for(i = 0; i < SPIM_SECTOR_SIZE; i++)
171 {
172 if(read_buffer[i] != write_buffer[i])
173 {
174 /* test spim fail */
175 return;
176 }
177 }
178
179 while(1)
180 {
181 /* toggle led */
182 at32_led_toggle(LED2);
183 delay_ms(100);
184 at32_led_toggle(LED3);
185 delay_ms(100);
186 at32_led_toggle(LED4);
187 delay_ms(100);
188 }
189}
190
191
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
write_buffer
uint8_t write_buffer[4096]
Definition: operate_spim.c:39
SPIM_SECTOR_SIZE
#define SPIM_SECTOR_SIZE
Definition: operate_spim.h:41
sector_read
void sector_read(uint32_t address, uint32_t sector_size, uint8_t *buf)
read one sector from a specified address in spim flash
Definition: operate_spim.c:91
spim_init
void spim_init(void)
init the spim flash
Definition: operate_spim.c:47
read_buffer
uint8_t read_buffer[4096]
Definition: operate_spim.c:40
SPIM_TEST_ADDR
#define SPIM_TEST_ADDR
Definition: operate_spim.h:42
spim_operate
void spim_operate(void)
operate spim flash
Definition: operate_spim.c:107
sector_size
uint32_t sector_size
Definition: composite_vcp_msc/src/msc_diskio.c:34
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
TRUE
@ TRUE
Definition: at32f403.h:309
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_spim_unlock
void flash_spim_unlock(void)
unlock the flash spim controller.
Definition: at32f403_flash.c:391
flash_spim_model_select
void flash_spim_model_select(flash_spim_model_type mode)
select spim supports extended spi flash chip model.
Definition: at32f403_flash.c:1030
flash_word_program
flash_status_type flash_word_program(uint32_t address, uint32_t data)
program a word at a specified address.
Definition: at32f403_flash.c:658
flash_spim_encryption_range_set
void flash_spim_encryption_range_set(uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value,...
Definition: at32f403_flash.c:1045
flash_flag_get
flag_status flash_flag_get(uint32_t flash_flag)
check whether the specified flash flag is set or not.
Definition: at32f403_flash.c:65
flash_operation_wait_for
flash_status_type flash_operation_wait_for(uint32_t time_out)
wait for flash operation complete or timeout.
Definition: at32f403_flash.c:257
flash_flag_clear
void flash_flag_clear(uint32_t flash_flag)
clear the flash flag.
Definition: at32f403_flash.c:114
flash_status_type
flash_status_type
flash status type
Definition: at32f403_flash.h:163
FLASH_SPIM_MODEL2
@ FLASH_SPIM_MODEL2
Definition: at32f403_flash.h:177
FLASH_OPERATE_DONE
@ FLASH_OPERATE_DONE
Definition: at32f403_flash.h:167
FLASH_OPERATE_TIMEOUT
@ FLASH_OPERATE_TIMEOUT
Definition: at32f403_flash.h:168
FLASH_PROGRAM_ERROR
@ FLASH_PROGRAM_ERROR
Definition: at32f403_flash.h:165
FLASH_EPP_ERROR
@ FLASH_EPP_ERROR
Definition: at32f403_flash.h:166
FLASH_SPIM_OBF_FLAG
#define FLASH_SPIM_OBF_FLAG
Definition: at32f403_flash.h:91
FLASH_PRGMERR_FLAG
#define FLASH_PRGMERR_FLAG
Definition: at32f403_flash.h:81
FLASH_EPPERR_FLAG
#define FLASH_EPPERR_FLAG
Definition: at32f403_flash.h:82
ERASE_TIMEOUT
#define ERASE_TIMEOUT
Definition: at32f403_flash.h:145
FLASH
#define FLASH
Definition: at32f403_flash.h:511
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
EXT_SPIM_EN_MUX
#define EXT_SPIM_EN_MUX
Definition: at32f403_gpio.h:127
operate_spim.h
operate_spim header file
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219


AT32F403 Firmwary Library: operate_spim.h Source File

  • flash
  • operate_spim
  • inc
operate_spim.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __OPERATE_SPIM_H
27#define __OPERATE_SPIM_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#define SPIM_SECTOR_SIZE 4096
42#define SPIM_TEST_ADDR 0x08400000
43
48void spim_operate(void);
49
63#ifdef __cplusplus
64}
65#endif
66
67#endif /* __OPERATE_SPIM_H */
spim_operate
void spim_operate(void)
operate spim flash
Definition: operate_spim.c:107


AT32F403 Firmwary Library: picture.h Source File

AT32F403_Firmware_Library_V2.0.8

project

at_start_f403

examples

xmc

lcd_8bit

inc

picture.h

Go to the documentation of this file.

1

24#ifndef __PICTURE_H

25#define __PICTURE_H

26

27#ifdef __cplusplus

28extern "C" {

29#endif

30

31const unsigned char gimage_3[51000] = { /* 0X10,0X10,0X00,0X96,0X00,0XAA,0X01,0X1B, */

320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

960XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1150XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

1170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1340XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,

1350XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

1360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1520XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,

1530XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XDB,0XFF,0XDC,0XFF,0XDC,0XFF,0XDC,

1540XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

1550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1710XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,

1720XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFD,0XFF,0XFD,

1730XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

1740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1900XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,

1910XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,

1920XFF,0XFB,0XFF,0XFB,0XFF,0XFC,0XFF,0XFC,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,

1930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

1940XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

1990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2090XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,0XFF,0XFB,

2100XFF,0XFA,0XFF,0XFA,0XFF,0XF9,0XFF,0XF9,0XFF,0XF9,0XFF,0XF8,0XFF,0XF8,0XFF,0XF8,

2110XFF,0XF9,0XFF,0XF9,0XFF,0XFA,0XFF,0XFA,0XFF,0XFB,0XFF,0XFC,0XFF,0XFC,0XFF,0XFD,

2120XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2270XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

2280XFF,0XFC,0XFF,0XFB,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF6,0XFF,0XF6,

2290XFF,0XF5,0XFF,0XF5,0XFF,0XF4,0XFF,0XF4,0XFF,0XF4,0XFF,0XF5,0XFF,0XF5,0XFF,0XF5,

2300XFF,0XF6,0XFF,0XF6,0XFF,0XF7,0XFF,0XF7,0XFF,0XF8,0XFF,0XF9,0XFF,0XFA,0XFF,0XFB,

2310XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

2330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2460XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFA,0XFF,0XF9,0XFF,0XD8,

2470XFF,0XD6,0XFF,0XD5,0XFF,0XF5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,

2480XF7,0XF2,0XF7,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF3,

2490XFF,0XF3,0XFF,0XF4,0XFF,0XF5,0XFF,0XF6,0XFF,0XF7,0XFF,0XF8,0XFF,0XF9,0XFF,0XFB,

2500XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2510XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,

2650XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF6,0XFF,0XD5,0XF7,0XD4,0XFF,0XD2,0XF7,0XD2,

2660XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

2670XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,

2680XFF,0XF2,0XFF,0XF3,0XFF,0XF3,0XFF,0XF5,0XFF,0XF6,0XFF,0XF7,0XFF,0XF8,0XFF,0XFA,

2690XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2700XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2830XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,0XFF,0XF8,0XFF,0XD6,0XFF,0XF5,

2840XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

2850XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

2860XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,

2870XFF,0XF2,0XFF,0XF2,0XFF,0XD3,0XFF,0XD4,0XFF,0XF5,0XFF,0XF7,0XFF,0XF9,0XFF,0XFB,

2880XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

2990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,

3020XFF,0XF9,0XFF,0XF8,0XF7,0XD7,0XF7,0XF5,0XF7,0XD2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

3030XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

3040XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

3050XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,

3060XFF,0XF2,0XFF,0XD2,0XFF,0XF3,0XFF,0XF5,0XFF,0XF7,0XFF,0XF9,0XFF,0XFB,0XFF,0XFD,

3070XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3200XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XF8,0XFF,0XF6,0XFF,0XD5,

3210XF7,0XF4,0XF7,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3220XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

3230XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

3240XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,

3250XFF,0XF1,0XFF,0XF2,0XFF,0XF3,0XFF,0XF6,0XFF,0XF8,0XFF,0XFA,0XFF,0XFD,0XFF,0XFF,

3260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3380XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

3390XFF,0XFB,0XFF,0XF9,0XFF,0XF6,0XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,

3400XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,

3410XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

3420XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

3430XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

3440XFF,0XF1,0XFF,0XF3,0XFF,0XD5,0XFF,0XD7,0XFF,0XFB,0XFF,0XFD,0XFF,0XFF,0XFF,0XDF,

3450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

3570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XF8,0XFF,0XD6,

3580XFF,0XD3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3590XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,

3600XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,

3610XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,

3620XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF1,

3630XFF,0XD3,0XFF,0XB5,0XFF,0XF8,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

3640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3760XFF,0XFE,0XFF,0XFC,0XFF,0XF9,0XFF,0XF7,0XFF,0XD4,0XFF,0XD3,0XFF,0XD1,0XFF,0XF0,

3770XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3780XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3790XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3800XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3810XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF1,0XFF,0XF2,0XF7,0XB3,

3820XFF,0XD6,0XFF,0XB8,0XFF,0XDB,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

3830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

3940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XFF,0XF9,

3950XFF,0XF6,0XFF,0XD4,0XFF,0XF2,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3960XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3970XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3980XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

3990XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4000XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XD1,0XFF,0XD3,0XF7,0XB5,

4010XFF,0XD8,0XFF,0XFB,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4130XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XD9,0XFF,0XD6,0XFF,0XD3,0XFF,0XF1,

4140XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,

4150XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4160XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4170XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4180XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,

4190XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XD0,0XFF,0XF1,0XF7,0XB2,0XF7,0XB5,0XFF,0XD8,

4200XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,

4320XFF,0XFA,0XFF,0XF7,0XFF,0XD5,0XFF,0XD3,0XFF,0XF1,0XFF,0XEF,0XFF,0XEE,0XFF,0XED,

4330XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4340XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4350XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4360XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4370XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4380XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XF7,0XAF,0XF7,0X91,0XF7,0X95,0XFF,0XDB,0XFF,0XFD,

4390XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4500XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XD9,0XFF,0XF6,0XFF,0XD3,

4510XFF,0XF1,0XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

4520XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4530XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4540XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4550XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,

4560XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XCC,

4570XFF,0XED,0XFF,0XEE,0XF7,0X8F,0XEF,0X31,0XF7,0X98,0XFF,0XFC,0XFF,0XFE,0XFF,0XFE,

4580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

4690XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XD6,0XFF,0XD2,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,

4700XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

4710XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4720XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

4730XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,

4740XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

4750XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XED,0XF7,0XCB,0XFF,0XEC,0XFF,0XED,

4760XF7,0XAE,0XE7,0X0F,0XEF,0X55,0XFF,0XFA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,

4770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFB,0XFF,0XF9,

4880XFF,0XD6,0XFF,0XD3,0XFF,0XF0,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

4890XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

4900XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

4910XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

4920XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

4930XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

4940XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XCE,0XE7,0X0E,

4950XDE,0XB0,0XFF,0XB8,0XFF,0XFC,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

4990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5060XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF6,0XFF,0XD3,0XFF,0XD1,

5070XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5080XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5090XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5100XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5110XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5120XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

5130XFF,0XED,0XFF,0XCC,0XFF,0XEC,0XFF,0XCC,0XFF,0XCE,0XEF,0X2E,0XCE,0X4D,0XDE,0XD2,

5140XFF,0XFB,0XFF,0XFE,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

5150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

5250XFF,0XFC,0XFF,0XF9,0XFF,0XF6,0XFF,0XF3,0XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XED,

5260XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

5270XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XCD,0XFF,0XCE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

5280XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5290XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5300XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

5310XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCC,

5320XFF,0XCC,0XFF,0XED,0XFF,0XCE,0XF7,0X4E,0XCE,0X0B,0XC5,0XCD,0XFF,0X78,0XFF,0XFD,

5330XFF,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XFF,0XF7,

5440XFF,0XF3,0XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5450XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

5460XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

5470XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5480XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

5490XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

5500XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

5510XFF,0XCE,0XFF,0X6E,0XCE,0X0A,0XB5,0X6A,0XDE,0X73,0XFF,0XFC,0XFF,0XDD,0XFF,0XFF,

5520XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5620XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF8,0XF7,0XD4,0XF7,0XD0,0XFF,0XEE,

5630XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

5640XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,

5650XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

5660XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

5670XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XED,

5680XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

5690XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XCC,0XFF,0XCD,0XFF,0XAD,0XFF,0X8E,

5700XD6,0X2A,0XB5,0X29,0XB5,0X0D,0XFF,0X58,0XFF,0XFD,0XFF,0XDE,0XFF,0XFE,0XFF,0XDE,

5710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

5810XFF,0XFC,0XFF,0XF9,0XFF,0XD5,0XF7,0XB2,0XF7,0XAF,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,

5820XFF,0XEE,0XFF,0XEE,0XFF,0XCE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

5830XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XED,0XFF,0XED,

5840XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

5850XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XCD,0XFF,0XCD,

5860XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XED,0XFF,0XCD,

5870XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

5880XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCD,0XFF,0XAD,0XFF,0XAE,0XDE,0X2A,0XB5,0X08,

5890XA4,0X69,0XDE,0X53,0XFF,0XDB,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

5900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

5990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFA,0XF7,0XD6,

6000XF7,0XB3,0XF7,0XD0,0XFF,0XCE,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XCE,

6010XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XF7,0XCC,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

6020XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XAC,0XFF,0XAC,0XFF,0XCC,0XFF,0XCD,

6030XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,

6040XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,

6050XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

6060XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

6070XFF,0XCC,0XFF,0XEC,0XFF,0XAC,0XFF,0XAD,0XDE,0X2A,0XAC,0XC7,0X9C,0X47,0XBD,0X4E,

6080XF7,0X37,0XFF,0XDC,0XFF,0XFD,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6180XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF7,0XF7,0XB3,0XF7,0XB0,0XFF,0XCF,

6190XFF,0XEE,0XFF,0XCD,0XFF,0XEC,0XFF,0XEC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

6200XFF,0XCD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0X6B,0XF7,0X4A,0XF7,0X4A,0XF7,0X4B,

6210XF7,0X2B,0XF7,0X4B,0XF7,0X6B,0XF7,0X8B,0XFF,0XAC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

6220XFF,0XCC,0XFF,0XCC,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

6230XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XAD,0XFF,0XAD,

6240XFF,0XAD,0XFF,0XAD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,

6250XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XCC,

6260XFF,0X8B,0XFF,0X8D,0XD6,0X0A,0XAC,0X66,0XA4,0X47,0XAC,0XAA,0XD6,0X53,0XFF,0XDA,

6270XFF,0XFC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

6370XFF,0XFC,0XFF,0XF8,0XF7,0XD4,0XF7,0XB0,0XF7,0XAF,0XFF,0XAE,0XFF,0X8E,0XFF,0XAD,

6380XFF,0XAC,0XFF,0XAB,0XFF,0XAC,0XFF,0XAD,0XFF,0X8D,0XFF,0X6C,0XF7,0X4B,0XF7,0X0A,

6390XEE,0XE9,0XEE,0XC8,0XEE,0X88,0XE6,0X87,0XE6,0X68,0XE6,0X47,0XE6,0X47,0XE6,0X47,

6400XDE,0X46,0XE6,0X87,0XEE,0XE9,0XF7,0X4A,0XFF,0X8B,0XFF,0X8C,0XFF,0XCD,0XFF,0X8C,

6410XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0X8C,0XFF,0XAD,0XFF,0XCD,0XFF,0X8C,0XFF,0X8C,

6420XFF,0XAC,0XFF,0XAC,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,

6430XFF,0XAC,0XFF,0XAC,0XFF,0XAD,0XFF,0XAD,0XFF,0X8D,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

6440XFF,0X8C,0XFF,0X8C,0XFF,0XAD,0XFF,0X8C,0XFF,0XAC,0XFF,0XAB,0XF7,0X6B,0XFF,0X8D,

6450XCD,0XC9,0X9C,0X25,0X9C,0X47,0X9C,0X48,0XB5,0X4D,0XF7,0X78,0XFF,0XDC,0XFF,0XFE,

6460XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XF7,0XD6,

6560XF7,0XB1,0XF7,0XAF,0XFF,0XAD,0XFF,0XAD,0XFF,0X8D,0XFF,0X8D,0XFF,0X8C,0XFF,0X8C,

6570XFF,0X6C,0XFF,0X4C,0XF7,0X0B,0XF6,0XCA,0XEE,0XA9,0XEE,0X88,0XEE,0X88,0XEE,0X88,

6580XEE,0X68,0XF6,0X88,0XF6,0X68,0XF6,0X68,0XEE,0X47,0XEE,0X26,0XE6,0X45,0XE6,0X25,

6590XDE,0X05,0XD6,0X05,0XDE,0X68,0XF7,0X2B,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0X8D,

6600XFF,0X8D,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0XAC,0XFF,0X8C,0XFF,0X8C,

6610XFF,0X8C,0XFF,0X8D,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0XAC,0XFF,0X8C,0XFF,0X8C,

6620XFF,0X8D,0XFF,0X8D,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8B,0XFF,0X8B,0XFF,0X8C,

6630XFF,0X8D,0XFF,0X8D,0XFF,0X8B,0XFF,0XCC,0XFF,0X6B,0XFF,0X8D,0XCD,0XC9,0X8B,0XA3,

6640X8B,0XA5,0X9C,0X27,0X9C,0X89,0XD6,0X72,0XFF,0XFB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

6650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6740XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD8,0XF7,0X93,0XF7,0X6F,0XF7,0X8D,

6750XFF,0XAC,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X2B,0XFE,0XEB,0XF6,0XCA,

6760XF6,0X89,0XEE,0X68,0XEE,0X68,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

6770XFE,0X68,0XF6,0X47,0XEE,0X06,0XE5,0XE6,0XD5,0X63,0XD5,0X83,0XD5,0XA4,0XD5,0XC5,

6780XD5,0XE6,0XD6,0X07,0XE6,0X69,0XFF,0X4D,0XFF,0X8D,0XFF,0X8D,0XFF,0X8D,0XFF,0X8C,

6790XFF,0X8C,0XFF,0X8C,0XFF,0XCC,0XFF,0X8B,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,

6800XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X6D,

6810XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6B,0XFF,0X6B,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,

6820XFF,0X8B,0XFF,0XAC,0XFF,0X6B,0XFF,0X6D,0XC5,0X69,0X73,0X01,0X83,0X84,0X94,0X07,

6830X8C,0X27,0XAD,0X2E,0XEF,0X18,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

6840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

6920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

6930XFF,0XFD,0XFF,0XD9,0XFF,0X95,0XF7,0X71,0XF7,0X6E,0XFF,0X6C,0XFF,0X8B,0XFF,0X8B,

6940XFF,0X6B,0XFF,0X4C,0XFF,0X0C,0XFE,0XAA,0XEE,0X69,0XEE,0X48,0XF6,0X68,0XF6,0X89,

6950XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0XA9,0XFE,0XA8,0XFE,0X88,0XFE,0X88,0XF6,0X67,

6960XF6,0X27,0XEE,0X27,0XEE,0X06,0XDD,0X63,0XBC,0XC1,0XAC,0X60,0XA4,0X40,0XB4,0XE3,

6970XD5,0XA8,0XEE,0XCC,0XF7,0X0D,0XFF,0X6E,0XFF,0X8D,0XFF,0X6C,0XFF,0X6B,0XFF,0X8B,

6980XFF,0XAB,0XFF,0X6B,0XFF,0X8B,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,

6990XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,

7000XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X4C,0XFF,0X6C,0XF7,0X2B,0XFF,0X8B,0XFF,0X6B,

7010XFF,0X6C,0XF7,0X4D,0XBD,0X27,0X6A,0XC0,0X83,0X63,0X94,0X27,0X94,0X27,0X94,0X49,

7020XDE,0X95,0XFF,0XBB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDA,0XFF,0XB6,

7120XF7,0X51,0XF7,0X6E,0XF7,0X4C,0XFF,0X6B,0XFF,0X8B,0XFF,0X6A,0XFF,0X4A,0XFF,0X0B,

7130XF6,0X8A,0XF6,0X4A,0XEE,0X48,0XF6,0X68,0XFE,0XA9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,

7140XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

7150XF6,0X46,0XED,0XC4,0XE5,0XA4,0XCD,0X02,0X9B,0XA0,0X93,0X60,0XA4,0X01,0XBC,0XE6,

7160XDE,0X0A,0XFF,0X0D,0XFF,0X4D,0XFF,0X6C,0XFF,0X6B,0XFF,0X6A,0XFF,0X6A,0XFF,0X6B,

7170XFF,0X6B,0XFF,0X6B,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X6C,0XFF,0X6B,0XFF,0X6B,

7180XFF,0X6C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,

7190XFF,0X4B,0XFF,0X2B,0XFF,0X4C,0XF7,0X0B,0XFF,0X6B,0XFF,0X2B,0XFF,0X4C,0XF7,0X2D,

7200X9C,0X45,0X62,0X80,0X73,0X02,0X7B,0X64,0X8C,0X07,0X8C,0X08,0XAC,0XEE,0XF7,0X59,

7210XFF,0XFC,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7300XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XFF,0XB8,0XF7,0X73,0XF7,0X2F,0XFF,0X4D,

7310XFF,0X4C,0XFF,0X4B,0XFF,0X4A,0XFF,0X49,0XFF,0X09,0XF6,0XA9,0XF6,0X6A,0XF6,0X6A,

7320XF6,0X89,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,

7330XFE,0XC9,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XF6,0X88,0XFE,0X88,0XFE,0X46,0XFE,0X26,

7340XF6,0X05,0XE5,0XA5,0XBC,0XA2,0X9B,0X80,0X83,0X00,0X93,0X81,0XB4,0XA5,0XEE,0X4B,

7350XFF,0X2E,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X4C,

7360XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4C,0XFF,0X4C,

7370XFF,0X2C,0XFF,0X2C,0XFF,0X4C,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

7380XFF,0X2C,0XFF,0X4C,0XFF,0X0B,0XFF,0X4B,0XFF,0X2C,0XEE,0XED,0X8B,0XC3,0X62,0X80,

7390X62,0XA1,0X7B,0X64,0X8B,0XC6,0X8C,0X08,0X9C,0X4B,0XDE,0X75,0XFF,0XDC,0XFF,0XFD,

7400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

7490XFF,0XFC,0XFF,0XD9,0XFF,0X95,0XF7,0X51,0XF7,0X2D,0XFF,0X2C,0XFF,0X2B,0XFF,0X2A,

7500XFF,0X09,0XFE,0XE9,0XF6,0XA8,0XF6,0X88,0XF6,0X8A,0XFE,0XAA,0XFE,0XAA,0XFE,0XC9,

7510XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,

7520XFE,0XC8,0XFE,0XC8,0XFE,0XC8,0XFE,0XA8,0XF6,0X26,0XFE,0X88,0XFE,0X67,0XEE,0X06,

7530XE5,0XE6,0XC4,0XC3,0X93,0X60,0X7A,0X80,0X8B,0X41,0XC4,0XE7,0XF6,0X8C,0XFE,0XEC,

7540XFF,0X0B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4A,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,

7550XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X2B,0XFF,0X2C,0XFF,0X2C,0XFF,0X2C,

7560XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X0B,0XFF,0X2C,

7570XF6,0XEA,0XFF,0X2C,0XF7,0X0C,0XDE,0X4B,0X7B,0X41,0X5A,0X40,0X62,0XA1,0X73,0X23,

7580X7B,0X85,0X94,0X07,0X83,0X87,0XBD,0X50,0XFF,0XBB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

7590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XFF,0XD7,

7680XF7,0X73,0XEF,0X0F,0XF7,0X0C,0XFF,0X0B,0XFF,0X0A,0XFF,0X09,0XFE,0XE9,0XFE,0XC8,

7690XF6,0XA8,0XF6,0XA8,0XFE,0XA9,0XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,

7700XFE,0XC9,0XFE,0XA9,0XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,

7710XFE,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,0XDD,0XC6,

7720XBC,0XC4,0X8B,0X20,0X72,0X80,0X93,0X82,0XD5,0X89,0XFE,0XEC,0XFF,0X2C,0XFF,0X2B,

7730XFF,0X0A,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

7740XFF,0X2B,0XFF,0X2B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

7750XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XF6,0XCA,0XFF,0X0C,

7760XF6,0XEC,0XCD,0XC9,0X7B,0X22,0X52,0X00,0X5A,0X81,0X6A,0XE3,0X73,0X23,0X83,0XA6,

7770X8B,0X87,0X9C,0X6C,0XF7,0X99,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7860XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF8,0XFF,0XB4,0XF7,0X10,0XF7,0X0E,

7870XFF,0X0C,0XFE,0XEA,0XFF,0X09,0XFE,0XA7,0XF6,0XA8,0XF6,0X88,0XF6,0XA8,0XFE,0XA9,

7880XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

7890XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,

7900XFE,0XAA,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XF6,0X67,0XE6,0X27,0XDD,0XE7,0XB4,0X84,

7910X83,0X00,0X72,0XC0,0XAC,0X44,0XEE,0X6B,0XFF,0X4D,0XFE,0XEA,0XFF,0X2B,0XFF,0X0B,

7920XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

7930XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

7940XFE,0XEA,0XFF,0X0B,0XFE,0XEB,0XFE,0XAA,0XFF,0X0B,0XFE,0XEB,0XEE,0XAC,0XBD,0X27,

7950X7B,0X43,0X49,0XE0,0X5A,0X41,0X5A,0X81,0X6A,0XE3,0X7B,0X45,0X8B,0X87,0X8B,0XE9,

7960XDE,0X96,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

7990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8050XFF,0XFE,0XFF,0XFB,0XFF,0XB6,0XF7,0X51,0XEE,0XCE,0XF6,0XED,0XFF,0X2C,0XFF,0X0A,

8060XF6,0XA7,0XFE,0XA7,0XF6,0X88,0XF6,0X89,0XFE,0XA9,0XFE,0XC9,0XFE,0XC8,0XFE,0XC8,

8070XFE,0XC9,0XFE,0XCA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

8080XFE,0XCA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XFE,0XAA,0XFE,0X8A,0XFE,0X6A,

8090XFE,0X89,0XF6,0X88,0XF6,0X87,0XEE,0X88,0XEE,0X89,0XCD,0XA7,0XA4,0X23,0X7A,0XE0,

8100X93,0XA1,0XD5,0XC8,0XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFF,0X0B,

8110XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFE,0XEB,0XFE,0XEA,0XFE,0XEB,0XFE,0XEB,

8120XFE,0XEB,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

8130XFE,0XCA,0XFE,0XCA,0XFE,0XCB,0XFE,0XEB,0XEE,0X6B,0XAC,0XC7,0X73,0X02,0X49,0XE0,

8140X52,0X20,0X52,0X41,0X62,0XC2,0X73,0X04,0X7B,0X25,0X83,0X88,0XC5,0XF3,0XFF,0XFD,

8150XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,

8240XFF,0X73,0XF7,0X0F,0XF6,0XCD,0XFF,0X0D,0XFE,0XEB,0XFE,0XC9,0XF6,0X86,0XFE,0XC7,

8250XFE,0XA8,0XFE,0X89,0XFE,0XAA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,

8260XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

8270XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XFE,0X8A,0XFE,0X8A,0XFE,0XA9,0XFE,0XA8,

8280XF6,0XA7,0XF6,0X87,0XEE,0XA8,0XDE,0X08,0XC5,0X68,0X93,0XC2,0X83,0X40,0XBC,0XE5,

8290XF6,0XAB,0XFE,0XEB,0XFE,0XEC,0XFE,0XEB,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

8300XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

8310XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

8320XFE,0XCB,0XFE,0XEC,0XDD,0XEA,0XAC,0XC7,0X6A,0XA1,0X49,0XE0,0X49,0XE0,0X4A,0X01,

8330X62,0X82,0X6A,0XC3,0X72,0XE4,0X7B,0X47,0XAD,0X10,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,

8340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8420XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFC,0XFF,0XB8,0XEE,0XF0,0XF6,0XCD,

8430XF6,0XAC,0XFE,0XCB,0XF6,0XA9,0XF6,0X88,0XFE,0XC7,0XF6,0XA6,0XFE,0XA9,0XFE,0XAA,

8440XFE,0XAA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

8450XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

8460XFE,0XAA,0XFE,0X8A,0XFE,0X8A,0XFE,0X8A,0XFE,0X8A,0XFE,0XA9,0XFE,0XC9,0XF6,0XC9,

8470XF6,0XCA,0XE6,0X8B,0XDE,0X2C,0XC5,0X29,0X9C,0X04,0XAC,0X84,0XF6,0X8B,0XF6,0XAB,

8480XFE,0XCB,0XFE,0XCB,0XFE,0XCB,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XE9,0XFE,0XEA,

8490XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

8500XFE,0XC9,0XFE,0XCA,0XFE,0XCA,0XFE,0XA9,0XFE,0XCA,0XFE,0XAA,0XFE,0XEB,0XF6,0XAB,

8510XCD,0X89,0XB4,0XE8,0X5A,0X40,0X49,0XE1,0X49,0XE1,0X49,0XC1,0X5A,0X42,0X62,0X83,

8520X6A,0XA4,0X73,0X26,0X9C,0X8E,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

8610XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XFF,0X54,0XEE,0XAE,0XFE,0XCC,0XFE,0XCB,0XFE,0XAA,

8620XFE,0XA9,0XF6,0X88,0XFE,0XC7,0XF6,0X87,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XCA,

8630XFE,0XAA,0XFE,0XCA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

8640XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

8650XFE,0XAB,0XFE,0XAB,0XF6,0X6B,0XEE,0X6B,0XEE,0X8B,0XEE,0X8B,0XE6,0X6C,0XE6,0X6E,

8660XDE,0X2E,0XDE,0X0E,0XBD,0X2A,0XAC,0XA6,0XE6,0X0A,0XF6,0XAA,0XFE,0XCA,0XFE,0XAA,

8670XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,

8680XFE,0XAA,0XFE,0XAA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

8690XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XF6,0X89,0XFE,0XCA,0XE6,0X29,0XCD,0XA9,0XA4,0X46,

8700X52,0X00,0X51,0XE1,0X49,0XC2,0X41,0XA1,0X52,0X02,0X5A,0X42,0X62,0X83,0X6A,0XC6,

8710X8C,0X2C,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,

8800XFF,0X97,0XEE,0XD1,0XEE,0X8C,0XF6,0XAA,0XFE,0XA9,0XF6,0X68,0XFE,0XA9,0XFE,0XA9,

8810XF6,0X67,0XFE,0XA8,0XFE,0XAA,0XFE,0XAA,0XFE,0XCA,0XFE,0XCA,0XFE,0XAA,0XFE,0XAA,

8820XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XCA,0XFE,0XCA,0XFE,0XC9,

8830XFE,0XC9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,0XFE,0XAB,0XEE,0X8B,0XF6,0XAD,

8840XF6,0XAE,0XF6,0XCF,0XF6,0XF0,0XF7,0X11,0XF7,0X13,0XFF,0X75,0XFF,0X77,0XFF,0X56,

8850XF7,0X13,0XD5,0XCC,0XD5,0XE9,0XFF,0X0B,0XFE,0XCA,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,

8860XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

8870XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

8880XFE,0X89,0XFE,0XA9,0XF6,0XAA,0XDE,0X09,0XD5,0XEB,0X83,0X63,0X51,0XE0,0X51,0XE2,

8890X49,0XC2,0X41,0XA1,0X49,0XC1,0X52,0X02,0X5A,0X43,0X62,0XA5,0X83,0XCB,0XFF,0XFD,

8900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

8910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

8980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF9,0XF7,0X74,0XE6,0X8E,

8990XF6,0XAA,0XFE,0XA8,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XF6,0X68,0XFE,0XCA,

9000XFE,0XCB,0XFE,0XAB,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

9010XFE,0XAB,0XFE,0XAB,0XFE,0XAA,0XFE,0XAA,0XFE,0XC9,0XFE,0XC8,0XFE,0XE8,0XFE,0XC9,

9020XFE,0XC9,0XF6,0XAA,0XFE,0XAC,0XF6,0XCD,0XEE,0XAE,0XEF,0X10,0XF7,0X13,0XFF,0X55,

9030XFF,0X77,0XFF,0XB9,0XFF,0X9A,0XFF,0XDB,0XFF,0XDC,0XFF,0XDB,0XFF,0XD8,0XE6,0X90,

9040XD5,0XC9,0XF6,0XEA,0XFE,0XC9,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

9050XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,

9060XFE,0XA8,0XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XF6,0X88,0XF6,0XA9,

9070XEE,0X68,0XE6,0X4A,0XCD,0X69,0X7B,0X02,0X62,0X42,0X52,0X02,0X49,0XA2,0X49,0XC2,

9080X49,0XC2,0X49,0XE2,0X52,0X23,0X52,0X64,0X7B,0XCB,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,

9090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9170XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XFF,0XB8,0XEF,0X12,0XDE,0X4C,0XF6,0XAA,0XF6,0X67,

9180XF6,0X46,0XFE,0X88,0XFE,0X88,0XF6,0X69,0XFE,0XCA,0XFE,0XAA,0XFE,0XAB,0XFE,0XAA,

9190XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,0XFE,0XAB,0XFE,0XAB,

9200XFE,0XAB,0XFE,0XAA,0XFE,0XA9,0XFE,0XC8,0XFE,0XE8,0XFE,0XE9,0XF6,0XCA,0XF6,0XAB,

9210XF6,0XAE,0XEE,0XD0,0XFF,0X94,0XFF,0XB6,0XFF,0XB8,0XFF,0XDB,0XFF,0XDC,0XFF,0XFE,

9220XFF,0XDE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFD,0XFF,0XB9,0XE6,0XB2,0XD6,0X0A,0XE6,0X69,

9230XF6,0XA9,0XFE,0XA8,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XFE,0X88,

9240XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

9250XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X88,0XF6,0X89,0XF6,0X68,0XE6,0X08,0XE6,0X4A,

9260XAC,0X85,0X7A,0XE2,0X72,0XA4,0X5A,0X23,0X51,0XC2,0X51,0XE3,0X49,0XC2,0X41,0XC1,

9270X49,0XE2,0X4A,0X03,0X83,0XCC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

9360XFF,0XDB,0XF7,0X56,0XCD,0XEE,0XCD,0XEA,0XE6,0X49,0XEE,0X48,0XFE,0X89,0XFE,0X88,

9370XF6,0X68,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XCA,0XFE,0X89,0XFE,0XAA,0XFE,0XAA,

9380XFE,0XA9,0XFE,0XCA,0XFE,0XCA,0XFE,0XCB,0XFE,0XAB,0XFE,0XAB,0XFE,0X8A,0XFE,0XAA,

9390XFE,0XA8,0XFE,0XA8,0XFE,0XC8,0XF6,0XC9,0XF6,0XAC,0XEE,0XCE,0XF7,0X12,0XFF,0X77,

9400XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

9410XFF,0XDF,0XFF,0XFE,0XFF,0XDB,0XEE,0XD3,0XDE,0X2C,0XEE,0X8A,0XF6,0XAA,0XF6,0X89,

9420XF6,0X89,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X69,0XF6,0X69,

9430XFE,0X89,0XF6,0X68,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,

9440XF6,0X68,0XF6,0X68,0XF6,0X88,0XEE,0X48,0XE6,0X49,0XD5,0XC9,0X93,0XE4,0X83,0X44,

9450X7A,0XE5,0X62,0X64,0X5A,0X03,0X51,0XE2,0X49,0XC1,0X49,0XC2,0X39,0XA2,0X41,0XC4,

9460X84,0X0E,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XEF,0X16,

9550XCD,0XEF,0XD6,0X0D,0XD5,0XC9,0XEE,0X6A,0XF6,0X8A,0XF6,0X6A,0XF6,0X89,0XFE,0X89,

9560XF6,0X88,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XFE,0X89,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

9570XF6,0XAA,0XFE,0XAA,0XFE,0XCA,0XFE,0XAA,0XFE,0XAA,0XFE,0X89,0XFE,0X89,0XFE,0XC9,

9580XFE,0XCA,0XEE,0XAB,0XEE,0XAE,0XF7,0X13,0XFF,0X98,0XFF,0XFB,0XFF,0XFE,0XFF,0XFF,

9590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XDF,0XFF,0XDE,

9600XFF,0XDB,0XEE,0XB3,0XDE,0X2C,0XEE,0X6A,0XF6,0X6A,0XF6,0X69,0XF6,0X88,0XF6,0X88,

9610XF6,0X88,0XF6,0X88,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

9620XF6,0X88,0XF6,0X88,0XF6,0X68,0XF6,0X68,0XF6,0X88,0XF6,0X68,0XF6,0X68,0XF6,0X88,

9630XF6,0X68,0XE6,0X07,0XFE,0XCC,0XBC,0XE6,0X93,0XE4,0X8B,0XA5,0X72,0XC4,0X72,0XC5,

9640X5A,0X23,0X5A,0X43,0X49,0XE1,0X49,0XC2,0X41,0XC3,0X39,0XA4,0X94,0X91,0XFF,0XFE,

9650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9730XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFD,0XFF,0X9A,0XCE,0X11,0X94,0X08,

9740XAC,0XA8,0XD5,0X8A,0XE6,0X2C,0XF6,0X6C,0XF6,0XAB,0XFE,0XCA,0XF6,0X88,0XF6,0X87,

9750XFE,0XC8,0XFE,0XC9,0XFE,0X89,0XFE,0X89,0XFE,0XAA,0XF6,0X89,0XF6,0X89,0XFE,0XC9,

9760XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XF6,0XAA,0XF6,0X8B,0XEE,0XAE,

9770XFF,0X33,0XFF,0XD9,0XFF,0XFC,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDB,0XE6,0X93,

9790XDE,0X2C,0XEE,0X6A,0XEE,0X69,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

9800XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

9810XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X89,0XEE,0X28,0XEE,0X07,0XFF,0X0C,

9820XDD,0XC7,0XB4,0XC5,0XA4,0X65,0X93,0XC5,0X83,0X45,0X72,0XE5,0X62,0X43,0X62,0X63,

9830X52,0X02,0X49,0XE3,0X41,0XA3,0X31,0X83,0XBD,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9920XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0X9A,0XE6,0X95,0X9C,0X29,0X72,0XC3,

9930X7B,0X02,0XB4,0XC7,0XEE,0X4C,0XEE,0X6A,0XF6,0XCA,0XF6,0XC9,0XF6,0X88,0XF6,0X88,

9940XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC8,0XFE,0XA9,

9950XFE,0XAA,0XFE,0XAA,0XF6,0XAB,0XEE,0X8C,0XF6,0XCF,0XFF,0X53,0XFF,0XB8,0XFF,0XFC,

9960XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

9970XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDD,0XFF,0XDA,0XE6,0X92,0XE6,0X4C,0XEE,0X6A,

9980XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

9990XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X68,

10000XF6,0X68,0XF6,0X48,0XEE,0X28,0XF6,0X48,0XFE,0X8A,0XEE,0X29,0XDD,0XA7,0XBC,0XC4,

10010XAC,0XA6,0XA4,0X46,0X8B,0XA6,0X7B,0X25,0X72,0XC4,0X62,0X83,0X52,0X02,0X49,0XC2,

10020X41,0XC3,0X4A,0X06,0XE6,0XFA,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10110XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XFF,0XDC,0XFF,0XBB,0XC5,0X91,0X83,0X47,0X62,0X82,

10120X8B,0XA4,0XCD,0XAA,0XEE,0X8B,0XEE,0X8A,0XF6,0XA9,0XFE,0XC9,0XF6,0X88,0XFE,0X88,

10130XFE,0XA8,0XFE,0XA8,0XFE,0XC8,0XFE,0XC8,0XFE,0XA8,0XFE,0XA9,0XFE,0XAA,0XF6,0XAB,

10140XF6,0XAD,0XF6,0XD0,0XF7,0X34,0XFF,0X98,0XFF,0XDB,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,

10150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

10160XFF,0XFE,0XFF,0XDC,0XFF,0XB9,0XE6,0X91,0XE6,0X4B,0XEE,0X69,0XF6,0X48,0XF6,0X68,

10170XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

10180XF6,0X48,0XF6,0X68,0XF6,0X48,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XEE,0X48,0XEE,0X48,

10190XEE,0X27,0XF6,0X69,0XFE,0XAA,0XE5,0XE7,0XD5,0X66,0XC5,0X26,0XBC,0XE6,0XAC,0X86,

10200X93,0XC5,0X8B,0XA6,0X7B,0X04,0X6A,0X83,0X5A,0X42,0X49,0XE2,0X41,0XC3,0X6B,0X2A,

10210XF7,0X7C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDE,

10300XFF,0XFF,0XFF,0XFF,0XFF,0X9D,0XFF,0X5B,0XEE,0XD7,0XAC,0XEE,0X73,0X05,0X72,0XE2,

10310X9C,0X45,0XDE,0X4C,0XE6,0X6A,0XF6,0XCB,0XFE,0XCA,0XF6,0X68,0XF6,0X88,0XFE,0XA8,

10320XFE,0XA8,0XFE,0X88,0XFE,0XA9,0XFE,0XCA,0XFE,0XAB,0XF6,0XAC,0XEE,0XAF,0XF7,0X34,

10330XFF,0X98,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDC,

10350XFF,0X98,0XE6,0X90,0XE6,0X4A,0XEE,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X28,0XF6,0X28,

10360XF6,0X28,0XF6,0X28,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X48,

10370XEE,0X28,0XEE,0X48,0XF6,0X68,0XEE,0X48,0XEE,0X28,0XEE,0X48,0XF6,0X89,0XFE,0X89,

10380XF6,0X68,0XE5,0XE7,0XDD,0XA7,0XCD,0X46,0XC5,0X07,0XB4,0XC7,0XA4,0X46,0X93,0XC5,

10390X83,0X64,0X72,0XC3,0X6A,0XA3,0X5A,0X64,0X39,0X82,0XA4,0XD1,0XFF,0XBD,0XFF,0XFF,

10400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10490XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XF7,0X7B,0XD6,0X75,0X9C,0X6C,0X62,0XA3,0X73,0X23,

10500XB4,0XE8,0XE6,0X4C,0XEE,0X8B,0XF6,0XAA,0XFE,0XA9,0XFE,0XE9,0XFE,0XA8,0XF6,0X88,

10510XFE,0XA9,0XF6,0XAA,0XEE,0X8B,0XEE,0X8E,0XEE,0XF2,0XFF,0XB8,0XFF,0XFC,0XFF,0XFD,

10520XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XFF,0X56,0XE6,0X6E,

10540XE6,0X49,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

10550XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X28,

10560XF6,0X48,0XEE,0X28,0XEE,0X28,0XF6,0X68,0XFE,0XA9,0XFE,0X88,0XF6,0X47,0XF6,0X28,

10570XE5,0XE8,0XDD,0X88,0XCD,0X27,0XC5,0X08,0XB4,0XA7,0X9C,0X05,0X9C,0X06,0X83,0X44,

10580X6A,0XC4,0X5A,0X84,0X52,0X45,0XDE,0X97,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10670XFF,0XFF,0XFF,0XDF,0XF7,0XFE,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0X9E,

10680XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XEF,0X3A,0XD6,0X35,0X8B,0XC9,0X62,0X82,0X83,0X63,

10690XD5,0XCB,0XEE,0X8C,0XEE,0X8A,0XF6,0XCA,0XF6,0XA9,0XF6,0X89,0XF6,0XAA,0XF6,0X8B,

10700XEE,0X8D,0XF6,0XD1,0XFF,0X97,0XFF,0XFB,0XFF,0XFD,0XF7,0XDE,0XFF,0XFF,0XFF,0XFF,

10710XF7,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

10720XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XBB,0XF7,0X14,0XE6,0X4D,0XE6,0X28,0XEE,0X47,

10730XF6,0X27,0XF6,0X07,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

10740XEE,0X27,0XEE,0X27,0XEE,0X28,0XF6,0X28,0XEE,0X27,0XEE,0X27,0XF6,0X48,0XEE,0X27,

10750XF6,0X48,0XFE,0XA9,0XF6,0X87,0XF6,0X46,0XFE,0X68,0XF6,0X28,0XF6,0X09,0XE5,0XA9,

10760XD5,0X48,0XCD,0X28,0XBC,0XC7,0XAC,0X86,0X9C,0X25,0X83,0X84,0X72,0XE4,0X5A,0X84,

10770X8C,0X0C,0XEF,0X3A,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10860XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XF7,0XDF,0XFF,0XDF,0XFF,0XDF,

10870XFF,0XFF,0XFF,0XDE,0XFF,0X9D,0XFF,0X7B,0XB5,0X10,0X62,0X83,0X62,0XA1,0XAC,0XA7,

10880XEE,0X8E,0XF6,0XCE,0XEE,0XAB,0XEE,0XAB,0XEE,0XAB,0XE6,0X6C,0XE6,0X6F,0XF7,0X14,

10890XFF,0XDA,0XFF,0XFC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XF7,0XFE,0XFF,0XFE,

10900XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

10910XFF,0XDD,0XFF,0XBA,0XEE,0XD2,0XE6,0X0C,0XEE,0X28,0XEE,0X46,0XF6,0X27,0XF6,0X27,

10920XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XF6,0X48,

10930XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XE5,0XE6,0XFE,0X88,0XFE,0XC9,0XFE,0X88,

10940XF6,0X46,0XF6,0X67,0XF6,0X47,0XF6,0X08,0XF6,0X09,0XED,0XC9,0XDD,0XA9,0XCD,0X48,

10950XC5,0X07,0XB4,0XC6,0X9C,0X24,0X93,0XE5,0X7B,0X45,0X6A,0XE6,0XCD,0XF5,0XFF,0XBD,

10960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

10990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11060XFF,0XFF,0XFF,0X9E,0XFF,0XBC,0XE6,0XB7,0X94,0X2A,0X52,0X21,0X7B,0X24,0XCD,0XAC,

11070XEE,0X8E,0XEE,0X8D,0XEE,0XAD,0XE6,0X8E,0XEE,0XD2,0XFF,0XD9,0XFF,0XFB,0XFF,0XFD,

11080XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11090XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDC,0XFF,0X78,

11100XEE,0X90,0XE6,0X0B,0XEE,0X28,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X47,

11110XEE,0X27,0XEE,0X27,0XEE,0X48,0XE5,0XE7,0XEE,0X28,0XE5,0XE7,0XEE,0X28,0XF6,0X48,

11120XEE,0X08,0XEE,0X27,0XFE,0X68,0XF6,0X68,0XEE,0X06,0XE5,0XE5,0XF6,0X46,0XF6,0X66,

11130XFE,0X67,0XF6,0X28,0XF6,0X29,0XF5,0XE9,0XED,0XEA,0XDD,0XA8,0XCD,0X67,0XBD,0X06,

11140XAC,0XA6,0X9C,0X46,0X7B,0X66,0X94,0X2C,0XEE,0XF9,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

11150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

11250XFF,0XDE,0XFF,0XDD,0XF7,0X5A,0XBD,0XB2,0X83,0X88,0X73,0X05,0XA4,0X89,0XD6,0X0E,

11260XDE,0X8F,0XDE,0X70,0XF7,0X56,0XFF,0XDA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

11270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

11280XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XFF,0XD9,0XF7,0X34,0XE6,0X4D,0XE6,0X0A,

11290XEE,0X08,0XEE,0X07,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,

11300XEE,0X27,0XF6,0X69,0XE6,0X07,0XEE,0X28,0XF6,0X49,0XE5,0XE7,0XEE,0X07,0XF6,0X69,

11310XF6,0X68,0XDD,0XA5,0XD5,0X23,0XD5,0X64,0XE5,0XE4,0XEE,0X25,0XFE,0X67,0XFE,0X68,

11320XFE,0X49,0XF6,0X08,0XEE,0X08,0XDD,0XC7,0XCD,0X86,0XBD,0X25,0XBD,0X27,0XA4,0X66,

11330X94,0X09,0XD6,0X13,0XFF,0X9C,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XBF,0XFF,0XDF,

11440XFF,0XDE,0XFF,0XDD,0XF7,0X59,0XDE,0X75,0XBD,0X6F,0XC5,0XAF,0XD6,0X31,0XEF,0X36,

11450XFF,0XFB,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

11470XFF,0XFD,0XFF,0XFB,0XFF,0XB6,0XEE,0XD0,0XE6,0X2B,0XE6,0X29,0XEE,0X08,0XEE,0X07,

11480XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XE6,0X07,

11490XEE,0X28,0XEE,0X08,0XE5,0XE7,0XF6,0X49,0XEE,0X28,0XE5,0XC6,0XAC,0X40,0XB4,0X61,

11500XC4,0XC2,0XD5,0X64,0XDD,0XC4,0XEE,0X25,0XF6,0X46,0XFE,0X47,0XFE,0X48,0XF6,0X28,

11510XEE,0X28,0XE6,0X07,0XD5,0XC6,0XC5,0X86,0XBD,0X47,0XA4,0XA7,0XBD,0X8F,0XF7,0X59,

11520XFF,0XBD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11620XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0X9F,0XFF,0XBF,0XFF,0XDE,0XFF,0XFE,

11630XFF,0XFD,0XFF,0XBB,0XFF,0XDB,0XF7,0X9A,0XFF,0XBA,0XFF,0XBB,0XFF,0XDC,0XFF,0XDD,

11640XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11650XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XDF,0XFF,0XDE,0XFF,0XFC,0XFF,0XF8,

11660XF7,0X52,0XE6,0X8B,0XDE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X28,

11670XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X07,0XEE,0X28,0XEE,0X28,

11680XF6,0X69,0XE5,0XE7,0XBC,0XC3,0X8B,0X40,0X93,0X60,0X9B,0XC0,0XB4,0X62,0XBC,0XC2,

11690XD5,0X84,0XDD,0XE5,0XEE,0X25,0XF6,0X67,0XFE,0X67,0XF6,0X47,0XF6,0X47,0XE6,0X47,

11700XD5,0XE6,0XD5,0XE7,0XB5,0X27,0XBD,0X4B,0XE6,0XD5,0XFF,0XBB,0XFF,0XBD,0XFF,0XFF,

11710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11810XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XBF,0XFF,0XFF,0XF7,0XBE,0XFF,0XDD,0XFF,0XFE,

11820XFF,0XBC,0XFF,0XFE,0XFF,0XDD,0XFF,0XDD,0XFF,0XDE,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,

11830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

11840XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFD,0XFF,0XFA,0XFF,0XB4,0XEE,0XED,0XDE,0X49,

11850XE6,0X27,0XEE,0X47,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XE6,0X07,

11860XEE,0X27,0XEE,0X48,0XE5,0XE7,0XEE,0X48,0XE6,0X27,0XF6,0X69,0XFE,0XEB,0XFE,0XAA,

11870XD5,0X86,0XAC,0X21,0X83,0X20,0X9B,0XA0,0XAC,0X21,0XAC,0X62,0XBD,0X03,0XD5,0X84,

11880XE6,0X05,0XF6,0X67,0XFE,0X67,0XFE,0X88,0XF6,0X68,0XE6,0X47,0XDE,0X08,0XD6,0X09,

11890XB5,0X29,0XDE,0X92,0XFF,0XB9,0XFF,0XDC,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

11900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

11990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XF7,0X7E,

12000XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XF7,0X9D,

12010XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

12030XFF,0XDF,0XFF,0XFC,0XFF,0XF7,0XEF,0X50,0XDE,0X8A,0XDE,0X27,0XE6,0X27,0XEE,0X47,

12040XEE,0X06,0XEE,0X07,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X07,0XEE,0X07,

12050XEE,0X27,0XDD,0XC6,0XE6,0X27,0XE6,0X07,0XEE,0X48,0XFF,0X2C,0XFF,0X0C,0XF6,0XAB,

12060XDD,0XC8,0XAC,0X43,0X8B,0X20,0X9B,0XE1,0XAC,0X82,0XC5,0X44,0XDD,0XA5,0XEE,0X47,

12070XF6,0X67,0XFE,0X88,0XF6,0X69,0XEE,0X69,0XE6,0X4A,0XD6,0X0C,0XDE,0X4F,0XFF,0X97,

12080XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XF7,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XBE,0XFF,0XDE,

12190XFF,0XFF,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,

12200XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12210XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDD,0XFF,0XFA,

12220XFF,0XD4,0XE6,0XCC,0XD6,0X48,0XDE,0X07,0XE6,0X47,0XEE,0X27,0XE6,0X06,0XEE,0X27,

12230XEE,0X28,0XEE,0X08,0XEE,0X08,0XE6,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X27,0XEE,0X27,

12240XE6,0X07,0XE6,0X27,0XEE,0X48,0XDE,0X07,0XE6,0X08,0XFE,0XCB,0XFF,0X4E,0XFE,0XCD,

12250XCD,0X67,0X9C,0X01,0X93,0XE0,0XB4,0XC2,0XD5,0X65,0XEE,0X27,0XF6,0X48,0XF6,0X69,

12260XEE,0X6A,0XE6,0X4B,0XDE,0X2C,0XD6,0X0E,0XFF,0XB7,0XFF,0XBA,0XFF,0X9C,0XFF,0XDE,

12270XF7,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12380XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12390XF7,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

12400XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDB,0XFF,0XB6,0XEF,0X0F,0XDE,0X4A,

12410XDE,0X49,0XDE,0X28,0XE6,0X28,0XE6,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

12420XEE,0X27,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

12430XE6,0X28,0XE5,0XE7,0XE6,0X28,0XE6,0X08,0XDE,0X08,0XF6,0XAB,0XFF,0X4D,0XFE,0XEC,

12440XBD,0X24,0XA4,0X61,0XCD,0X24,0XE5,0XE8,0XEE,0X29,0XF6,0X8B,0XEE,0X6B,0XDE,0X2C,

12450XE6,0X90,0XFF,0XB7,0XFF,0XDB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

12580XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12590XFF,0XDE,0XFF,0XDB,0XFF,0XB7,0XF7,0X12,0XE6,0X6C,0XDE,0X29,0XDE,0X29,0XE6,0X29,

12600XE6,0X08,0XE6,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

12610XE6,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X28,

12620XE6,0X28,0XE6,0X28,0XE6,0X08,0XDD,0XE7,0XE6,0X49,0XF6,0XEB,0XFF,0X6D,0XEE,0XAA,

12630XCD,0X45,0XD5,0X86,0XF6,0X8B,0XEE,0X6B,0XE6,0X4D,0XEE,0XB0,0XF7,0X35,0XFF,0XB9,

12640XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

12760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12770XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XFF,0X97,

12780XFF,0X53,0XE6,0XAD,0XDE,0X09,0XE6,0X09,0XE6,0X09,0XE6,0X09,0XEE,0X08,0XEE,0X08,

12790XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X07,0XE6,0X07,

12800XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X27,0XE6,0X07,0XDE,0X07,

12810XE6,0X48,0XE6,0X49,0XDE,0X08,0XDD,0XE7,0XE6,0X49,0XFF,0X4C,0XFF,0X2C,0XF6,0XAA,

12820XEE,0X8A,0XE6,0X6B,0XEE,0XAF,0XFF,0X95,0XFF,0XD9,0XFF,0XBB,0XFF,0XFE,0XFF,0XFE,

12830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12940XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

12950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

12960XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XB6,0XF7,0X31,0XEE,0XCD,0XDE,0X4A,

12970XDE,0X08,0XE6,0X09,0XE6,0X09,0XEE,0X09,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,

12980XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

12990XE6,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X28,0XE6,0X08,0XDD,0XE7,

13000XE6,0X08,0XE6,0X48,0XE6,0X28,0XE6,0X48,0XEE,0X89,0XFF,0X4C,0XFF,0X2C,0XEE,0XCD,

13010XFF,0X32,0XFF,0XB7,0XFF,0XDA,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13130XFF,0XFE,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

13150XFF,0XFA,0XFF,0XB7,0XFF,0X71,0XEE,0XCC,0XDE,0X28,0XDE,0X07,0XE6,0X08,0XEE,0X08,

13160XEE,0X09,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

13170XEE,0X27,0XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

13180XE6,0X07,0XEE,0X28,0XE6,0X07,0XE5,0XE7,0XE6,0X07,0XE6,0X28,0XE6,0X07,0XE6,0X08,

13190XDD,0XE7,0XD5,0XC6,0XE6,0X47,0XEE,0XA9,0XF6,0XEB,0XFF,0X6F,0XFF,0X73,0XFF,0XB7,

13200XFF,0X99,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

13330XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFB,0XFF,0XF9,0XFF,0X96,0XEE,0XF1,

13340XE6,0XAC,0XE6,0X68,0XDE,0X06,0XE6,0X06,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X07,

13350XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,

13360XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE5,0XE7,

13370XE6,0X07,0XEE,0X28,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XDD,0XE7,0XF6,0X69,0XEE,0X48,

13380XD5,0XA5,0XDE,0X07,0XE6,0X69,0XEE,0XCC,0XFF,0X72,0XFF,0X34,0XF7,0X77,0XFF,0XFC,

13390XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

13520XFF,0XFC,0XFF,0XFA,0XFF,0XB7,0XFF,0X94,0XEE,0XCF,0XDE,0X4B,0XDE,0X07,0XDE,0X26,

13530XE6,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

13540XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,

13550XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X07,0XEE,0X27,0XE6,0X07,

13560XDD,0XC6,0XEE,0X28,0XEE,0X68,0XDD,0XC6,0XE5,0XC6,0XE6,0X07,0XEE,0X47,0XE6,0X27,

13570XDE,0X07,0XDE,0X29,0XEE,0XAD,0XFF,0X51,0XFF,0X54,0XFF,0XB8,0XFF,0XFB,0XFF,0XFD,

13580XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

13700XF7,0XDF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XB8,0XFF,0X75,

13710XF7,0X11,0XE6,0X8E,0XDE,0X2A,0XE6,0X29,0XE6,0X27,0XE6,0X46,0XEE,0X26,0XEE,0X06,

13720XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

13730XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,

13740XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X28,0XE6,0X27,

13750XE6,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XE6,0X27,0XDE,0X07,0XE6,0X28,0XE6,0X28,

13760XDD,0XE8,0XEE,0X8C,0XF7,0X10,0XF7,0X33,0XFF,0XD8,0XFF,0XFA,0XFF,0XDD,0XFF,0XFE,

13770XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XDD,0XFF,0XFD,0XFF,0XFC,

13890XFF,0XFA,0XFF,0XF8,0XFF,0XB6,0XFF,0X95,0XF7,0X11,0XEE,0X8E,0XE6,0X2B,0XDE,0X09,

13900XE6,0X28,0XE6,0X28,0XE6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,

13910XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X08,0XEE,0X08,

13920XEE,0X08,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

13930XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

13940XEE,0X07,0XEE,0X07,0XE6,0X28,0XE6,0X27,0XDE,0X07,0XE6,0X07,0XE6,0X28,0XE6,0X29,

13950XEE,0X8B,0XFF,0X0F,0XEE,0XD1,0XFF,0X76,0XFF,0XBA,0XFF,0XDD,0XFF,0XBE,0XFF,0XDF,

13960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

13990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14070XFF,0XBE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XD8,0XFF,0XB5,0XF7,0X73,

14080XEF,0X30,0XE6,0XAE,0XDE,0X2B,0XDE,0X09,0XE6,0X08,0XE6,0X07,0XEE,0X07,0XEE,0X07,

14090XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

14100XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X27,

14110XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

14120XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,

14130XE6,0X28,0XE6,0X28,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XF6,0X8C,

14140XEE,0XCF,0XDE,0X70,0XF7,0X57,0XFF,0XDC,0XFF,0XDD,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,

14150XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,

14260XFF,0XDA,0XFF,0XB7,0XFF,0XB4,0XFF,0X92,0XF7,0X2F,0XE6,0XAC,0XDE,0X4A,0XDE,0X29,

14270XE6,0X28,0XE6,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

14280XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XEE,0X28,0XE6,0X28,0XE6,0X47,0XEE,0X27,

14290XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,

14300XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

14310XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X27,0XE6,0X27,

14320XE6,0X27,0XE6,0X07,0XE5,0XE7,0XE6,0X07,0XE5,0XE7,0XEE,0X49,0XEE,0X6B,0XE6,0X4E,

14330XD6,0X10,0XEF,0X16,0XFF,0XDC,0XFF,0XBD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0X7B,0XFF,0X77,0XFF,0X52,

14450XEE,0XEE,0XEE,0XAB,0XDE,0X2A,0XDE,0X09,0XDE,0X08,0XE6,0X28,0XE6,0X27,0XE6,0X26,

14460XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

14470XEE,0X27,0XEE,0X28,0XEE,0X28,0XE6,0X28,0XE6,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

14480XEE,0X07,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,

14490XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

14500XEE,0X07,0XEE,0X27,0XE6,0X07,0XEE,0X28,0XE6,0X27,0XE6,0X27,0XEE,0X28,0XEE,0X07,

14510XE5,0XE7,0XEE,0X07,0XF6,0X48,0XE5,0XE7,0XE6,0X29,0XE6,0X4B,0XCD,0XCC,0XC5,0XAE,

14520XEE,0XF6,0XFF,0XDC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

14530XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14630XFF,0XFF,0XFF,0XFF,0XFF,0XBD,0XDE,0X75,0XDE,0X30,0XE6,0X6D,0XE6,0X29,0XE6,0X28,

14640XDD,0XC8,0XE5,0XE9,0XEE,0X09,0XE6,0X08,0XE6,0X06,0XEE,0X26,0XEE,0X26,0XE6,0X06,

14650XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

14660XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

14670XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

14680XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

14690XE6,0X07,0XE6,0X28,0XE6,0X07,0XE6,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X08,0XEE,0X08,

14700XEE,0X08,0XE5,0XE7,0XEE,0X28,0XE6,0X08,0XDE,0X0B,0XB5,0X0A,0XAC,0XCC,0XF7,0X38,

14710XFF,0XBC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

14720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14820XFF,0XDC,0XBD,0X90,0XBD,0X4A,0XDD,0XE9,0XE6,0X07,0XF6,0X27,0XF6,0X09,0XED,0XE9,

14830XED,0XE9,0XEE,0X09,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,

14840XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,

14850XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

14860XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

14870XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X28,

14880XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XE5,0XC7,0XF6,0X27,

14890XEE,0X06,0XEE,0X27,0XE6,0X09,0XCD,0X6A,0X9C,0X28,0X9C,0X6B,0XFF,0X9A,0XFF,0XFD,

14900XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

14990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X9A,0XC5,0X8F,

15010XC5,0X6A,0XE6,0X29,0XEE,0X06,0XEE,0X06,0XF6,0X07,0XED,0XC8,0XED,0XE9,0XF6,0X29,

15020XEE,0X28,0XEE,0X07,0XEE,0X27,0XF6,0X68,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

15030XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

15040XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

15050XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,

15060XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,

15070XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XF6,0X07,0XEE,0X05,0XED,0XE6,

15080XEE,0X28,0XDD,0XEA,0XC5,0X4A,0X6A,0XA3,0XA4,0XCE,0XFF,0XFC,0XFF,0XDD,0XFF,0XDE,

15090XFF,0XFF,0XEF,0X7D,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XF7,0X79,0XC5,0XAF,0XC5,0X6A,0XDE,0X09,

15200XE6,0X06,0XF6,0X47,0XF6,0X07,0XF6,0X07,0XED,0XE8,0XED,0XE8,0XEE,0X08,0XF6,0X48,

15210XEE,0X48,0XE6,0X07,0XEE,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

15220XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

15230XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X27,

15240XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

15250XEE,0X07,0XEE,0X07,0XEE,0X08,0XED,0XE7,0XEE,0X07,0XEE,0X07,0XEE,0X06,0XEE,0X27,

15260XEE,0X28,0XEE,0X07,0XEE,0X07,0XF6,0X07,0XF6,0X26,0XF6,0X27,0XED,0XE7,0XE5,0XC8,

15270XDD,0XEB,0X9C,0X06,0X62,0X83,0X94,0X6D,0XF7,0X7B,0XFF,0XDD,0XFF,0XDE,0XFF,0XDF,

15280XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15380XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XC5,0XF0,0XC5,0XAC,0XE6,0X4B,0XDE,0X07,0XE6,0X26,

15390XEE,0X26,0XEE,0X26,0XEE,0X27,0XF6,0X48,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XF6,0X49,

15400XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,

15410XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XE6,0X28,

15420XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X27,

15430XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

15440XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

15450XEE,0X07,0XEE,0X06,0XEE,0X06,0XEE,0X07,0XEE,0X28,0XE6,0X28,0XD5,0XC8,0XC5,0X48,

15460X6A,0X81,0X5A,0X43,0XB5,0X30,0XFF,0X9C,0XFF,0XBE,0XFF,0XFF,0XFF,0XBF,0XFF,0XFF,

15470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

15570XF7,0XBB,0XE6,0XF6,0XD6,0X51,0XCD,0XED,0XD6,0X0A,0XE6,0X6A,0XEE,0X69,0XE6,0X48,

15580XE6,0X28,0XE6,0X08,0XE5,0XE7,0XEE,0X29,0XEE,0X49,0XE6,0X08,0XEE,0X28,0XEE,0X27,

15590XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X27,0XEE,0X27,

15600XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

15610XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

15620XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

15630XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XEE,0X07,

15640XF6,0X48,0XEE,0X07,0XEE,0X28,0XEE,0X49,0XDD,0XE7,0XCD,0X67,0XA4,0X05,0X5A,0X21,

15650X62,0XA5,0XCD,0XF5,0XFF,0XBD,0XFF,0XDE,0XFF,0XBE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

15660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XBB,

15760XEE,0XF7,0XC5,0XD0,0XAC,0XCA,0XA4,0XA8,0XC5,0X69,0XD5,0XCA,0XE6,0X2C,0XEE,0X6C,

15770XEE,0X6B,0XE6,0X09,0XE6,0X08,0XEE,0X69,0XEE,0X28,0XEE,0X07,0XEE,0X27,0XEE,0X48,

15780XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

15790XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

15800XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

15810XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X28,

15820XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XF6,0X27,0XEE,0X07,

15830XEE,0X28,0XEE,0X69,0XE6,0X08,0XD5,0XA8,0XB4,0XA7,0X5A,0X20,0X52,0X02,0X7B,0X8A,

15840XE6,0XD9,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

15940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0X7C,0XFF,0XFE,0XFF,0XBC,0XF7,0X59,

15950XEE,0XF7,0XC5,0X90,0X8B,0XC7,0X7B,0X24,0X7B,0X44,0XA4,0X87,0XCD,0XAB,0XEE,0X8C,

15960XEE,0X8B,0XDD,0XE8,0XEE,0X29,0XEE,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X28,

15970XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X28,

15980XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

15990XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X08,

16000XEE,0X27,0XEE,0X27,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

16010XEE,0X27,0XEE,0X27,0XEE,0X07,0XF6,0X47,0XED,0XE6,0XEE,0X47,0XEE,0X48,0XE6,0X07,

16020XEE,0X48,0XDD,0XE8,0XC5,0X07,0X7B,0X02,0X62,0X83,0X4A,0X03,0XA4,0XD0,0XF7,0X9C,

16030XFF,0XBD,0XFF,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBE,0XFF,0XDE,0XFF,0XBC,0XFF,0XDC,

16140XFF,0X9A,0XDE,0X95,0X9C,0X6C,0X62,0X83,0X51,0XE0,0X73,0X02,0XB4,0XE8,0XE6,0X6D,

16150XE6,0X0B,0XEE,0X0A,0XEE,0X29,0XEE,0X08,0XEE,0X27,0XEE,0X07,0XEE,0X08,0XF6,0X48,

16160XEE,0X28,0XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XEE,0X28,

16170XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

16180XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

16190XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

16200XF6,0X47,0XEE,0X06,0XF6,0X68,0XEE,0X27,0XEE,0X27,0XF6,0X48,0XE6,0X07,0XE6,0X29,

16210XC5,0X07,0X9B,0XE5,0X52,0X00,0X52,0X43,0X5A,0XA7,0XCE,0X16,0XFF,0XBD,0XFF,0XFE,

16220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16320XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XDC,

16330XFF,0XFC,0XF7,0X79,0XB5,0X2F,0X62,0XC4,0X49,0XC0,0X49,0XC0,0XAC,0X87,0XE6,0X0C,

16340XEE,0X4B,0XDD,0XC8,0XEE,0X28,0XF6,0X48,0XEE,0X07,0XEE,0X28,0XEE,0X27,0XEE,0X47,

16350XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

16360XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

16370XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X27,

16380XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XF6,0X48,

16390XEE,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XF6,0X69,0XE6,0X29,0XCD,0X67,0XAC,0X66,

16400X5A,0X40,0X52,0X43,0X41,0XC2,0X83,0XEC,0XF7,0X5B,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,

16410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

16510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDC,

16520XFF,0XFD,0XF7,0X7A,0XC5,0XD3,0X94,0X2B,0X62,0X83,0X72,0XC2,0XAC,0X87,0XDD,0XEB,

16530XE6,0X09,0XE6,0X08,0XF6,0X49,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,

16540XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

16550XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

16560XEE,0X28,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

16570XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X06,0XF6,0X47,0XEE,0X27,0XEE,0X47,

16580XEE,0X28,0XEE,0X28,0XF6,0X69,0XEE,0X29,0XD5,0X88,0XA4,0X44,0X6A,0XC1,0X41,0XC0,

16590X4A,0X24,0X5A,0X87,0XCE,0X16,0XFF,0XBD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

16710XFF,0XDD,0XFF,0XBC,0XE6,0XF7,0XBD,0X6F,0X9C,0X8A,0XB5,0X0B,0XDE,0X0C,0XE6,0X6C,

16720XE6,0X2A,0XE6,0X09,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,

16730XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X27,

16740XF6,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

16750XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

16760XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X47,0XEE,0X48,0XEE,0X48,

16770XF6,0X48,0XEE,0X49,0XE5,0XE9,0XB4,0XA5,0X72,0XE1,0X49,0XC0,0X52,0X44,0X39,0X82,

16780X8C,0X0D,0XFF,0XBD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16890XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDD,

16900XFF,0XBC,0XFF,0XFC,0XFF,0XDB,0XFF,0X98,0XF7,0X56,0XFF,0X34,0XEE,0XB0,0XE6,0X0B,

16910XE6,0X0A,0XEE,0X09,0XEE,0X28,0XFE,0X69,0XF6,0X27,0XED,0XE7,0XF6,0X47,0XF6,0X27,

16920XEE,0X27,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X27,

16930XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,

16940XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,

16950XEE,0X47,0XEE,0X27,0XEE,0X27,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X49,

16960XF6,0X6A,0XB4,0XA5,0X73,0X02,0X52,0X21,0X4A,0X03,0X39,0X82,0X5A,0X87,0XE6,0XF9,

16970XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

16980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

16990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17080XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,

17090XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XDA,0XFF,0X76,0XF6,0XD2,0XE6,0X4E,0XE5,0XEA,

17100XE5,0XE9,0XEE,0X08,0XF6,0X28,0XF6,0X47,0XF6,0X27,0XEE,0X26,0XEE,0X47,0XEE,0X47,

17110XEE,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X47,0XEE,0X47,

17120XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

17130XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,

17140XEE,0X27,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X49,0XF6,0X6A,0XBC,0XE6,

17150X7B,0X22,0X52,0X00,0X49,0XE2,0X49,0XE4,0X49,0XE4,0XAD,0X32,0XFF,0XFE,0XFF,0XFF,

17160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,

17270XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XF7,0XDE,0XFF,0XDF,0XFF,0XDE,0XF7,0XDE,

17280XFF,0XDE,0XFF,0XFE,0XFF,0XDC,0XFF,0X99,0XF7,0X14,0XE6,0X4E,0XE6,0X0A,0XE6,0X08,

17290XEE,0X27,0XF6,0X47,0XEE,0X26,0XF6,0X26,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,

17300XF6,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

17310XEE,0X47,0XEE,0X47,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XEE,0X47,0XF6,0X27,0XF6,0X27,

17320XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,

17330XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X49,0XF6,0X6A,0XCD,0X47,0X83,0X84,0X49,0XC0,

17340X4A,0X02,0X4A,0X04,0X39,0X83,0X6B,0X0A,0XFF,0XBD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

17350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

17460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XDF,0XFF,0XFF,

17470XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XFF,0X35,0XEE,0XAF,0XDE,0X09,0XE5,0XE7,0XEE,0X47,

17480XF6,0X47,0XEE,0X26,0XEE,0X47,0XEE,0X47,0XEE,0X28,0XEE,0X27,0XF6,0X28,0XF6,0X28,

17490XF6,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

17500XF6,0X28,0XF6,0X28,0XF6,0X27,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

17510XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X48,0XF6,0X48,

17520XF6,0X48,0XF6,0X49,0XF6,0X4A,0XE5,0XEA,0X83,0X63,0X52,0X00,0X49,0XC1,0X4A,0X04,

17530X41,0XA3,0X41,0XC4,0XF7,0X7B,0XF7,0XBD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17650XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XDF,0XFF,0XFF,

17660XFF,0XFD,0XFF,0XDA,0XFF,0X54,0XE6,0X8D,0XD5,0XE8,0XE6,0X48,0XF6,0XA8,0XEE,0X27,

17670XEE,0X47,0XEE,0X48,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X47,0XEE,0X47,

17680XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,

17690XF6,0X27,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,

17700XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X49,

17710XEE,0X29,0XE6,0X2B,0X8B,0XA3,0X49,0XE0,0X4A,0X02,0X41,0XC2,0X49,0XE4,0X31,0X62,

17720XAD,0X52,0XFF,0XFE,0XFF,0XFE,0XF7,0X9D,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

17840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,

17850XFF,0XD8,0XFF,0X74,0XE6,0X8D,0XDE,0X09,0XE6,0X69,0XE6,0X48,0XEE,0X48,0XEE,0X48,

17860XEE,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,

17870XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,

17880XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,

17890XEE,0X47,0XEE,0X47,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X29,0XEE,0X29,0XEE,0X4B,

17900X8B,0XA3,0X52,0X00,0X49,0XC1,0X49,0XE3,0X49,0XE3,0X39,0X62,0X8C,0X2E,0XFF,0XBD,

17910XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

17990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBF,0XFF,0XDE,0XFF,0XDE,

18030XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XFF,0XFC,0XFF,0XFA,

18040XFF,0X74,0XDE,0X6E,0XDE,0X2A,0XE6,0X49,0XE6,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X28,

18050XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

18060XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XF6,0X27,0XF6,0X27,

18070XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

18080XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X49,0XE6,0X4B,0X9C,0X05,0X52,0X00,

18090X49,0XE1,0X49,0XE2,0X49,0XE3,0X39,0XA3,0X62,0XC8,0XEF,0X7B,0XFF,0XFE,0XFF,0XFF,

18100XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18210XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

18220XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XFF,0XF9,0XFF,0X54,

18230XDE,0X6D,0XDE,0X2A,0XE6,0X29,0XEE,0X29,0XEE,0X48,0XEE,0X47,0XF6,0X27,0XF6,0X27,

18240XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X47,

18250XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,

18260XF6,0X48,0XF6,0X48,0XF6,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X28,

18270XFE,0X28,0XF6,0X48,0XF6,0X49,0XEE,0X8B,0X9C,0X45,0X5A,0X20,0X49,0XE1,0X49,0XE2,

18280X49,0XE3,0X41,0XC3,0X42,0X04,0XDE,0XF9,0XFF,0XDD,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,

18290XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18400XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

18410XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XFF,0XF9,0XEF,0X31,0XD6,0X4C,

18420XD5,0XE9,0XEE,0X4A,0XEE,0X48,0XEE,0X27,0XF6,0X67,0XF6,0X26,0XF6,0X26,0XF6,0X47,

18430XF6,0X46,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,

18440XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

18450XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

18460XEE,0X69,0XEE,0X6B,0XAC,0XA6,0X62,0X40,0X51,0XE1,0X49,0XE2,0X49,0XE2,0X41,0XE3,

18470X39,0XC3,0XC6,0X35,0XFF,0XFD,0XFF,0XFF,0XF7,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

18480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

18600XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0XB6,0XE6,0XF0,0XDE,0X2C,0XDE,0X2A,

18610XEE,0X28,0XEE,0X47,0XF6,0X47,0XF6,0X26,0XF6,0X26,0XF6,0X46,0XF6,0X46,0XEE,0X47,

18620XEE,0X47,0XEE,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

18630XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

18640XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X69,0XEE,0X8B,

18650XB4,0XC6,0X62,0X60,0X51,0XE1,0X52,0X03,0X49,0XE2,0X4A,0X03,0X39,0XA2,0XB5,0X92,

18660XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

18790XFF,0XDE,0XFF,0XFD,0XFF,0XFA,0XFF,0X95,0XE6,0XB0,0XDE,0X0B,0XE6,0X28,0XEE,0X68,

18800XF6,0X26,0XF6,0X46,0XF6,0X26,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X48,

18810XF6,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,

18820XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

18830XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XEE,0X69,0XF6,0X8B,0XB4,0XC7,0X6A,0X80,

18840X5A,0X01,0X52,0X02,0X49,0XE2,0X4A,0X03,0X39,0XC2,0X94,0XAF,0XFF,0XFE,0XFF,0XFF,

18850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

18970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,

18980XFF,0XFC,0XFF,0XD9,0XF7,0X54,0XDE,0X4D,0XDE,0X09,0XEE,0X68,0XEE,0X46,0XF6,0X47,

18990XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,

19000XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

19010XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,

19020XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X8B,0XBC,0XE7,0X6A,0XA1,0X5A,0X21,0X52,0X23,

19030X49,0XE2,0X52,0X23,0X41,0XE2,0X8C,0X2D,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFC,

19170XFF,0XB8,0XEE,0XD2,0XDE,0X0A,0XE6,0X48,0XEE,0X47,0XF6,0X46,0XF6,0X47,0XF6,0X47,

19180XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,

19190XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

19200XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X68,

19210XF6,0X69,0XF6,0X8B,0XBC,0XE7,0X72,0XE1,0X62,0X42,0X5A,0X43,0X52,0X02,0X52,0X23,

19220X41,0XE3,0X84,0X0C,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XDB,0XFF,0X76,

19360XE6,0X4D,0XDE,0X29,0XEE,0X47,0XEE,0X46,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X48,

19370XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,

19380XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

19390XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X89,0XF6,0X8B,

19400XBD,0X07,0X7B,0X01,0X62,0X62,0X5A,0X43,0X52,0X02,0X52,0X23,0X49,0XE3,0X8C,0X0C,

19410XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19540XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDA,0XEE,0XF2,0XDE,0X0B,

19550XE6,0X28,0XEE,0X46,0XEE,0X46,0XEE,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,

19560XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

19570XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,

19580XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X8A,0XC5,0X07,0X83,0X42,

19590X62,0X62,0X62,0X63,0X52,0X22,0X52,0X43,0X4A,0X03,0X8C,0X0C,0XFF,0XFD,0XFF,0XFE,

19600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19730XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFC,0XFF,0X77,0XDE,0X0D,0XDE,0X09,0XEE,0X67,

19740XEE,0X46,0XEE,0X46,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,

19750XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

19760XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,

19770XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X8A,0XC5,0X27,0X8B,0X83,0X6A,0X82,0X62,0X83,

19780X5A,0X42,0X5A,0X63,0X52,0X43,0X8C,0X2C,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

19920XFF,0XFF,0XFF,0XDD,0XFF,0XDB,0XF6,0XF3,0XDE,0X0B,0XE6,0X48,0XEE,0X46,0XEE,0X46,

19930XF6,0X47,0XF6,0X48,0XF6,0X47,0XFE,0X48,0XF6,0X27,0XF6,0X47,0XEE,0X47,0XF6,0X47,

19940XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

19950XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,

19960XF6,0X68,0XF6,0X69,0XCD,0X67,0X93,0XC3,0X72,0XC2,0X6A,0XA3,0X6A,0XA3,0X5A,0X63,

19970X5A,0X64,0X8C,0X2C,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

19990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,

20110XFF,0X7B,0XFF,0X98,0XDE,0X0C,0XE6,0X49,0XE6,0X27,0XF6,0X66,0XF6,0X47,0XF6,0X47,

20120XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

20130XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,

20140XF6,0X67,0XF6,0X67,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XEE,0X69,

20150XCD,0X67,0X9B,0XE4,0X72,0XC2,0X72,0XC3,0X6A,0XC4,0X62,0XA4,0X5A,0X84,0X8C,0X2C,

20160XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20290XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0X9A,

20300XF7,0X13,0XCD,0XA8,0XEE,0X68,0XEE,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X47,0XF6,0X27,

20310XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

20320XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

20330XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X69,0XD5,0X67,0XA4,0X04,

20340X7A,0XE2,0X72,0XE4,0X72,0XE4,0X6A,0XC4,0X62,0XA5,0X94,0X4D,0XFF,0XFD,0XFF,0XFF,

20350XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

20480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFD,0XFF,0X76,0XD5,0XCC,

20490XDD,0XE9,0XEE,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X48,0XF6,0X48,

20500XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,

20510XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X48,0XF6,0X48,

20520XF6,0X48,0XFE,0X68,0XFE,0X68,0XF6,0X69,0XD5,0X87,0XA4,0X24,0X7B,0X03,0X7B,0X04,

20530X7B,0X04,0X72,0XE4,0X6A,0XC5,0X9C,0X8E,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

20540XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20670XFF,0XFF,0XF7,0XDE,0XFF,0XFF,0XFF,0XFD,0XFF,0XBA,0XE6,0X50,0XD5,0X89,0XEE,0X29,

20680XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X48,

20690XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,

20700XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XFE,0X68,

20710XFE,0X68,0XF6,0X69,0XD5,0X88,0XA4,0X24,0X83,0X23,0X7B,0X04,0X7B,0X25,0X73,0X05,

20720X6A,0XE6,0XAD,0X10,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

20730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFE,

20860XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XF7,0X15,0XD5,0X6B,0XEE,0X2A,0XF6,0X48,0XF6,0X67,

20870XF6,0X47,0XF6,0X67,0XEE,0X67,0XF6,0X68,0XF6,0X47,0XF6,0X28,0XF6,0X47,0XF6,0X47,

20880XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X67,0XF6,0X67,

20890XF6,0X67,0XF6,0X67,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XFE,0X68,0XFE,0X88,0XF6,0X89,

20900XDD,0XA8,0XA4,0X04,0X8B,0X64,0X83,0X45,0X83,0X65,0X73,0X05,0X6A,0XC5,0XBD,0X92,

20910XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

20990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21040XFF,0XFF,0XFF,0XDF,0XFF,0XBF,0XFF,0XDF,0XFF,0XFF,0XF7,0XFE,0XFF,0XFE,0XFF,0XFE,

21050XFF,0XFD,0XFF,0X58,0XDD,0XCE,0XE5,0XEA,0XF6,0X49,0XF6,0X67,0XF6,0X67,0XEE,0X67,

21060XEE,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,

21070XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

21080XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XFE,0X68,0XF6,0X89,0XDD,0XC8,0XA4,0X03,

21090X93,0XA5,0X8B,0X85,0X8B,0XA6,0X7B,0X46,0X73,0X06,0XD6,0X55,0XFF,0XDD,0XFF,0XFF,

21100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

21230XFF,0XBF,0XFF,0XDF,0XFF,0XFE,0XF7,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0X7A,

21240XE6,0X31,0XDD,0XAB,0XEE,0X49,0XF6,0X47,0XF6,0X68,0XEE,0X47,0XF6,0X67,0XEE,0X47,

21250XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,

21260XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X48,0XF6,0X68,

21270XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X89,0XDD,0XC8,0X9B,0XE3,0X9B,0XE5,0X93,0XA6,

21280X93,0XE7,0X83,0X86,0X83,0X88,0XEE,0XF8,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

21420XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XBB,0XEE,0XD3,0XCD,0X8A,

21430XE6,0X29,0XF6,0X47,0XF6,0X28,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

21440XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

21450XFE,0X48,0XF6,0X47,0XFE,0X88,0XF6,0X67,0XF6,0X47,0XFE,0X68,0XF6,0X68,0XF6,0X68,

21460XF6,0X68,0XFE,0X8A,0XDD,0XA8,0XA4,0X04,0X9B,0XE5,0X93,0XE6,0X94,0X26,0X83,0XA6,

21470X8C,0X0B,0XFF,0X9B,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XEE,0XF5,0XCD,0XAB,0XE6,0X29,0XEE,0X48,

21620XF6,0X28,0XFE,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,

21630XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X47,

21640XFE,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0XA9,0XFE,0X8A,

21650XCD,0X47,0XA4,0X24,0XA4,0X26,0X94,0X06,0X94,0X26,0X83,0XC6,0XAD,0X0F,0XFF,0XDD,

21660XFF,0XFE,0XFF,0XFE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21800XFF,0XFF,0XFF,0XFC,0XF7,0X36,0XCD,0XCC,0XDE,0X09,0XEE,0X48,0XF6,0X28,0XFE,0X48,

21810XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,

21820XF6,0X48,0XF6,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X68,0XF6,0X47,

21830XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0XAA,0XFE,0XAA,0XC4,0XE6,0XAC,0X45,

21840XAC,0X67,0X9C,0X26,0X94,0X26,0X8B,0XE7,0XC5,0XF3,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,

21850XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

21980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,

21990XF7,0X57,0XCD,0XCD,0XDD,0XE9,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

22000XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

22010XFE,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X67,0XFE,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

22020XF6,0X67,0XF6,0X89,0XFE,0XCA,0XF6,0X8A,0XC4,0XC5,0XB4,0X86,0XAC,0X87,0XA4,0X67,

22030X9C,0X67,0X94,0X28,0XDE,0XB6,0XFF,0XFD,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

22040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

22140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X78,0XD5,0XEE,

22180XD5,0XA9,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,

22190XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

22200XFE,0X48,0XFE,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XFE,0XA9,

22210XFE,0XCB,0XEE,0X09,0XC4,0XC5,0XC4,0XE7,0XBC,0XC8,0XAC,0X87,0XA4,0XA8,0XA4,0XCB,

22220XFF,0X7A,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0X9A,0XDE,0X30,0XCD,0X89,0XEE,0X49,

22370XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,

22380XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XFE,0X47,0XFE,0X68,

22390XF6,0X47,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X88,0XFE,0XA9,0XFE,0XCB,0XDD,0X87,

22400XC4,0XC5,0XCD,0X07,0XC5,0X08,0XB4,0XC8,0XAC,0XC9,0XBD,0X8F,0XFF,0XFB,0XFF,0XFE,

22410XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22550XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XE6,0X92,0XCD,0X89,0XEE,0X29,0XF6,0X48,0XF6,0X48,

22560XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,

22570XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

22580XF6,0X68,0XF6,0X68,0XFE,0XA9,0XFE,0XA9,0XFE,0X8A,0XD5,0X46,0XC4,0XE5,0XCD,0X27,

22590XC5,0X28,0XBD,0X0A,0XAC,0XCA,0XE6,0XB4,0XFF,0XDC,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,

22600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

22740XFF,0XDB,0XEE,0XB3,0XCD,0X69,0XEE,0X29,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,

22750XF6,0X47,0XF6,0X47,0XFE,0X67,0XFE,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,

22760XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X68,

22770XFE,0XC9,0XFE,0XAA,0XF6,0X49,0XD5,0X66,0XD5,0X46,0XCD,0X27,0XC5,0X28,0XC5,0X4B,

22780XB4,0XEB,0XFF,0X78,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,

22790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBF,0XFF,0XDF,

22860XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

22870XF7,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

22880XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22890XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XF7,0XFE,0XF7,0XFE,

22900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XE6,0XB3,

22930XC5,0X69,0XEE,0X4A,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XFE,0X67,

22940XFE,0X67,0XFE,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

22950XF6,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X88,0XF6,0X47,0XF6,0X88,0XFE,0XEA,0XFE,0XAA,

22960XDD,0XC6,0XDD,0X86,0XCD,0X05,0XCD,0X68,0XC5,0X08,0XBD,0X2B,0XCD,0XF0,0XFF,0XB9,

22970XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

22990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBE,0XFF,0XDE,

23050XFF,0XDE,0XFF,0XFE,0XFF,0XDD,0XFF,0XDC,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,

23060XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFE,0XFF,0XDD,0XFF,0XDE,

23070XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBD,

23080XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,

23090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XE6,0XB4,0XC5,0X6A,0XEE,0X29,

23120XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XFE,0X67,0XFE,0X67,0XFE,0X47,

23130XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

23140XF6,0X67,0XF6,0X67,0XF6,0X68,0XFE,0XA9,0XFE,0XCA,0XF6,0X89,0XDD,0XA6,0XDD,0X86,

23150XD5,0X87,0XCD,0X68,0XC5,0X6A,0XBD,0X2B,0XE6,0XB4,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,

23160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23230XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XFC,0XFF,0X9A,0XFF,0XDA,

23240XFF,0XDA,0XFF,0XDA,0XFF,0XDA,0XF7,0X79,0XEF,0X38,0XE7,0X18,0XDE,0XF8,0XE6,0XF8,

23250XE7,0X19,0XEF,0X39,0XEF,0X18,0XEF,0X18,0XEE,0XF7,0XEF,0X38,0XEF,0X39,0XEF,0X39,

23260XEF,0X19,0XEF,0X19,0XF7,0X5A,0XFF,0X9B,0XFF,0XDC,0XFF,0XDD,0XFF,0XBC,0XFF,0XBD,

23270XFF,0XFE,0XFF,0XFE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23300XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XE6,0XB4,0XC5,0X69,0XEE,0X29,0XF6,0X48,0XF6,0X67,

23310XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,

23320XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,

23330XF6,0X68,0XFE,0XCA,0XFE,0XAA,0XEE,0X48,0XDD,0XC6,0XDD,0X86,0XDD,0XC8,0XCD,0X68,

23340XC5,0X6B,0XCD,0XAE,0XF7,0X57,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

23420XFF,0X9D,0XFF,0XDC,0XFF,0XDA,0XFF,0XB9,0XFF,0X77,0XFF,0X76,0XFF,0X55,0XFF,0X55,

23430XFF,0X55,0XF7,0X55,0XDE,0X93,0XBD,0XAF,0XAD,0X0D,0X94,0X6B,0X8C,0X2A,0X8C,0X2A,

23440X9C,0X4A,0X8C,0X09,0X94,0X29,0X94,0X29,0X94,0X29,0X94,0X09,0X94,0X0A,0X94,0X0B,

23450XA4,0X8D,0XB5,0X2F,0XCD,0XD2,0XEE,0XD7,0XFF,0XBB,0XFF,0XDC,0XFF,0XDD,0XFF,0XFE,

23460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

23490XFF,0XDD,0XE6,0X94,0XC5,0X49,0XE6,0X29,0XF6,0X48,0XFE,0X68,0XF6,0X47,0XF6,0X47,

23500XFE,0X67,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

23510XF6,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X47,0XFE,0X88,0XFE,0XCA,

23520XFE,0X89,0XEE,0X07,0XE5,0XC6,0XE5,0XC7,0XD5,0XA8,0XCD,0X89,0XC5,0X6C,0XE6,0X93,

23530XFF,0XBA,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBC,0XFF,0XFB,0XFF,0XD9,

23610XEE,0XF4,0XE6,0XB0,0XE6,0X90,0XE6,0X8F,0XEE,0X8E,0XE6,0X6D,0XE6,0X8E,0XF6,0XF0,

23620XF7,0X32,0XEE,0XF1,0XE6,0X90,0XC5,0XAD,0XA4,0XA9,0X9C,0X47,0XA4,0X88,0X9C,0X67,

23630X9C,0X26,0X9C,0X46,0XA4,0X66,0XA4,0X67,0X9C,0X27,0X93,0XE6,0X93,0XC6,0X93,0XE7,

23640X9C,0X29,0XB4,0XED,0XD6,0X12,0XF7,0X38,0XFF,0XBB,0XFF,0XDD,0XFF,0XDE,0XFF,0XFF,

23650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23670XFF,0XFF,0XF7,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBC,0XDE,0X74,

23680XC5,0X49,0XE6,0X29,0XF6,0X68,0XFE,0X67,0XF6,0X47,0XF6,0X47,0XFE,0X67,0XFE,0X47,

23690XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,

23700XFE,0X67,0XFE,0X67,0XFE,0X88,0XF6,0X68,0XFE,0X89,0XFE,0XCA,0XF6,0X69,0XEE,0X08,

23710XE5,0XE7,0XEE,0X28,0XD5,0X88,0XD5,0XCB,0XD6,0X0F,0XF7,0X37,0XFF,0XFC,0XFF,0XFE,

23720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

23790XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XFF,0X98,0XDE,0XB1,0XCD,0XEC,0XD5,0XCA,

23800XDE,0X0B,0XD5,0XE9,0XDE,0X09,0XDE,0X09,0XDE,0X09,0XDE,0X2A,0XE6,0X4B,0XF6,0XEF,

23810XFF,0X50,0XFF,0X71,0XEE,0XCF,0XDE,0X4C,0XCD,0X89,0XCD,0XC9,0XCD,0XA9,0XCD,0X68,

23820XC5,0X48,0XC5,0X48,0XC5,0X28,0XC5,0X08,0XBC,0XE8,0XC4,0XE9,0XBC,0XC9,0XB4,0XA9,

23830XAC,0X8A,0XC5,0X90,0XF7,0X38,0XFF,0XFC,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

23860XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XBC,0XE6,0X94,0XC5,0X49,0XEE,0X29,

23870XF6,0X68,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,

23880XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

23890XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0XAA,0XF6,0X69,0XEE,0X28,0XEE,0X07,0XE5,0XE8,

23900XE6,0X0B,0XD5,0XCC,0XE6,0XD3,0XFF,0XB9,0XFF,0XDC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23970XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

23980XFF,0XFD,0XFF,0XDA,0XCE,0X50,0XAD,0X29,0XCD,0XA9,0XDE,0X09,0XE6,0X49,0XE6,0X08,

23990XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X28,0XDE,0X09,0XDE,0X09,0XF6,0XED,

24000XFF,0X8F,0XFF,0X2D,0XDE,0X29,0XDE,0X09,0XE5,0XE9,0XDD,0XA8,0XD5,0X87,0XD5,0X88,

24010XDD,0X87,0XD5,0X67,0XD5,0X47,0XCD,0X27,0XCD,0X27,0XC4,0XE8,0XBC,0XC8,0XB4,0XAA,

24020XC5,0X6F,0XEE,0XF6,0XFF,0XDB,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,

24050XFF,0XFF,0XFF,0XFF,0XFF,0XBC,0XDE,0X53,0XC5,0X49,0XEE,0X49,0XF6,0X68,0XF6,0X47,

24060XF6,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,

24070XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X89,

24080XFE,0XA9,0XFE,0X69,0XF6,0X49,0XF6,0X29,0XEE,0X28,0XE5,0XE8,0XEE,0X4C,0XDE,0X2E,

24090XF7,0X56,0XFF,0XFB,0XF7,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24160XFF,0XFE,0XFF,0XFE,0XF7,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0X9D,0XFF,0XDB,0XCE,0X31,

24170XBD,0X8A,0XC5,0XA8,0XE6,0X4A,0XE6,0X29,0XDD,0XC6,0XE6,0X06,0XEE,0X26,0XEE,0X26,

24180XEE,0X26,0XEE,0X27,0XEE,0X28,0XE6,0X28,0XDE,0X08,0XDD,0XE8,0XFE,0XEC,0XFF,0X8E,

24190XFF,0X4D,0XEE,0X69,0XDD,0XC7,0XD5,0XA7,0XDD,0XA7,0XDD,0XA7,0XDD,0X87,0XDD,0X66,

24200XD5,0X46,0XD5,0X26,0XCD,0X06,0XCD,0X27,0XC5,0X28,0XB4,0XE8,0XAC,0XAA,0XBD,0X2D,

24210XDE,0X74,0XFF,0XDB,0XFF,0XBD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

24220XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

24240XF7,0X3A,0XBD,0X6F,0XC5,0X69,0XEE,0X4A,0XF6,0X48,0XF6,0X47,0XFE,0X67,0XFE,0X68,

24250XFE,0X47,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

24260XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0XA9,0XFE,0XAA,0XF6,0X69,

24270XF6,0X49,0XF6,0X49,0XEE,0X28,0XEE,0X4A,0XDD,0XEC,0XEE,0XD2,0XFF,0XB9,0XFF,0XDC,

24280XFF,0XDE,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

24350XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XDD,0XEE,0XD5,0XAC,0XA9,0XD5,0XE9,0XE6,0X08,

24360XE6,0X08,0XEE,0X28,0XEE,0X48,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,

24370XEE,0X28,0XE6,0X07,0XE6,0X28,0XEE,0X48,0XE6,0X08,0XEE,0X8A,0XFF,0X6D,0XFF,0X2C,

24380XE6,0X49,0XDD,0XE8,0XDD,0XC7,0XDD,0XA7,0XDD,0X87,0XDD,0X87,0XD5,0X26,0XD5,0X26,

24390XD5,0X47,0XCD,0X47,0XBC,0XE6,0XB4,0XC7,0XB4,0XE8,0XAC,0XA9,0XBD,0X4C,0XDE,0X73,

24400XFF,0XBB,0XFF,0XDD,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,

24410XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

24420XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XBD,0XF7,0X58,0XB5,0X0C,

24430XD5,0XAA,0XEE,0X29,0XFE,0X69,0XF6,0X27,0XFE,0X47,0XFE,0X47,0XFE,0X68,0XF6,0X67,

24440XFE,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

24450XFE,0X67,0XFE,0X68,0XFE,0X89,0XFE,0XAA,0XFE,0X8A,0XF6,0X69,0XF6,0X49,0XF6,0X69,

24460XEE,0X49,0XE6,0X0B,0XEE,0XB1,0XFF,0X57,0XFF,0XDC,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,

24470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

24540XFF,0XDE,0XFF,0X7A,0XBD,0X2D,0XC5,0X29,0XEE,0X29,0XEE,0X48,0XE5,0XE7,0XEE,0X07,

24550XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X48,

24560XEE,0X28,0XE5,0XE7,0XE6,0X28,0XEE,0X69,0XEE,0X8A,0XFF,0X6D,0XFF,0X6D,0XE6,0X69,

24570XDD,0XC7,0XD5,0XA7,0XDD,0X87,0XDD,0XA8,0XDD,0X87,0XD5,0X26,0XD5,0X67,0XCD,0X26,

24580XC5,0X06,0XC5,0X27,0XBD,0X08,0XAC,0X86,0XAC,0X87,0XB5,0X0B,0XDE,0X73,0XFF,0XBB,

24590XFF,0XFD,0XFF,0XBD,0XFF,0XDE,0XFF,0XFF,0XF7,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24610XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDC,0XEF,0X16,0XB4,0XEA,0XDE,0X0A,0XEE,0X28,

24620XFE,0X68,0XFE,0X27,0XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,

24630XFE,0X68,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X68,

24640XFE,0XA9,0XFE,0XAA,0XF6,0X89,0XF6,0X69,0XF6,0X69,0XEE,0X49,0XEE,0X4B,0XE6,0X6E,

24650XFF,0X15,0XFF,0XBA,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XDE,0X75,

24730XB4,0XEA,0XE6,0X2B,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X26,

24740XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

24750XF6,0X68,0XEE,0X68,0XE6,0X28,0XF6,0XAA,0XFF,0X4D,0XFF,0X2C,0XF6,0XAB,0XDD,0XC8,

24760XD5,0X87,0XDD,0XA7,0XDD,0X87,0XD5,0X66,0XD5,0X66,0XCD,0X06,0XCD,0X47,0XCD,0X47,

24770XBC,0XC6,0XBC,0XE8,0XBD,0X09,0XA4,0X67,0XAC,0XAA,0XD6,0X31,0XFF,0X78,0XFF,0XFC,

24780XFF,0XDD,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24800XFF,0XFE,0XFF,0XDB,0XD6,0X71,0XB4,0XE7,0XE6,0X49,0XF6,0X67,0XF6,0X47,0XFE,0X47,

24810XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X47,0XFE,0X68,0XF6,0X67,

24820XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X68,0XFE,0X89,0XFE,0XA9,

24830XFE,0X88,0XF6,0X88,0XF6,0X88,0XEE,0X6A,0XE6,0X4D,0XF6,0XD2,0XFF,0X98,0XFF,0XFC,

24840XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XF7,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XBD,0X6F,0XCD,0XAB,0XE6,0X2A,

24920XE6,0X07,0XF6,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X46,0XF6,0X46,0XEE,0X26,

24930XEE,0X27,0XF6,0X27,0XEE,0X07,0XF6,0X27,0XEE,0X47,0XF6,0X47,0XEE,0X27,0XE6,0X27,

24940XEE,0X68,0XE6,0X48,0XF6,0XAA,0XFF,0X4D,0XFF,0X4D,0XEE,0X8A,0XDD,0XC7,0XD5,0XA7,

24950XD5,0X87,0XD5,0X86,0XD5,0X66,0XD5,0X66,0XC5,0X05,0XC4,0XE6,0XC5,0X27,0XBD,0X07,

24960XB4,0XC7,0XB4,0XC8,0XA4,0X67,0XAC,0XC9,0XCD,0XF0,0XF7,0X58,0XFF,0XDC,0XFF,0XFE,

24970XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

24980XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XD9,

24990XBD,0X6B,0XC5,0X67,0XEE,0X68,0XF6,0X87,0XF6,0X26,0XFE,0X67,0XFE,0X46,0XFE,0X67,

25000XFE,0X67,0XFE,0X67,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X67,

25010XFE,0X87,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0XA8,0XFE,0XA8,0XF6,0XA8,

25020XEE,0X89,0XEE,0X8C,0XEE,0XB1,0XFF,0X97,0XFF,0XDB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,

25030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

25100XFF,0XFF,0XFF,0XDD,0XFF,0X99,0XBD,0X4C,0XDE,0X0B,0XE6,0X08,0XF6,0X47,0XF6,0X47,

25110XEE,0X07,0XEE,0X07,0XEE,0X06,0XEE,0X26,0XF6,0X46,0XF6,0X26,0XF6,0X26,0XF6,0X47,

25120XF6,0X27,0XF6,0X48,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X68,0XEE,0X48,

25130XEE,0X68,0XF6,0XAA,0XFF,0X2C,0XFF,0X4D,0XEE,0X8A,0XD5,0XC7,0XD5,0XA7,0XD5,0X86,

25140XD5,0X66,0XD5,0X66,0XCD,0X05,0XC5,0X05,0XCD,0X27,0XBC,0XE7,0XB4,0XA6,0XBC,0XE7,

25150XB4,0XC7,0XAC,0XA7,0XAC,0X89,0XC5,0XB0,0XF7,0X59,0XFF,0XFE,0XF7,0XBD,0XFF,0XFF,

25160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XEE,0XD4,0XB5,0X07,0XDE,0X28,

25180XEE,0X67,0XF6,0X86,0XFE,0X67,0XFE,0X47,0XFE,0X46,0XFE,0X67,0XFE,0X67,0XFE,0X67,

25190XFE,0X67,0XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X88,

25200XFE,0X89,0XFE,0XC9,0XFE,0XA8,0XF6,0X87,0XF6,0X88,0XEE,0X89,0XEE,0X8B,0XEE,0XD0,

25210XF7,0X56,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBF,0XFF,0XFF,0XFF,0XDC,

25290XE6,0XB4,0XCD,0XCD,0XE6,0X4A,0XEE,0X68,0XF6,0X26,0XEE,0X05,0XF6,0X27,0XF6,0X27,

25300XF6,0X27,0XF6,0X47,0XF6,0X46,0XF6,0X46,0XF6,0X26,0XF6,0X47,0XF6,0X47,0XF6,0X27,

25310XF6,0X27,0XF6,0X27,0XF6,0X67,0XFE,0X88,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X48,

25320XF6,0XAA,0XFF,0X4D,0XFF,0X2C,0XE6,0X69,0XD5,0XE7,0XCD,0X86,0XCD,0X86,0XCD,0X45,

25330XD5,0X66,0XD5,0X67,0XC5,0X06,0XC4,0XE6,0XC5,0X07,0XBC,0XC6,0XBC,0XC6,0XB4,0X86,

25340XA4,0X47,0XA4,0X8A,0XC5,0XB1,0XF7,0X39,0XFF,0XDC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

25350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDE,

25360XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XD5,0XEE,0XAC,0XA4,0XF6,0XA9,0XF6,0X67,0XF6,0X46,

25370XFE,0XA8,0XF6,0X26,0XFE,0X67,0XFE,0X67,0XF6,0X47,0XFE,0X67,0XFE,0X66,0XFE,0X66,

25380XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XF6,0X88,0XF6,0X89,0XFE,0XA9,0XFE,0XA9,

25390XFE,0XA8,0XF6,0X88,0XEE,0X89,0XE6,0X4A,0XE6,0X8E,0XF7,0X54,0XFF,0XDB,0XFF,0XDD,

25400XFF,0XDE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

25410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFC,0XDE,0X72,0XD6,0X0C,

25480XE6,0X28,0XF6,0X47,0XF6,0X06,0XF6,0X26,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

25490XF6,0X47,0XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X47,0XF6,0X06,0XFE,0X47,0XFE,0X47,

25500XF6,0X26,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XEE,0X47,0XEE,0X48,0XE6,0X28,0XF6,0XA9,

25510XFF,0X4C,0XFF,0X4C,0XEE,0X89,0XD5,0XA6,0XD5,0XA6,0XCD,0X66,0XCD,0X46,0XCD,0X46,

25520XC5,0X26,0XBC,0XE6,0XBC,0XC6,0XBC,0XE6,0XC4,0XC7,0XB4,0X86,0XB4,0X88,0XA4,0X48,

25530X9C,0X29,0XC5,0X90,0XEF,0X17,0XFF,0XFB,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

25540XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XDC,

25550XFF,0X77,0XAC,0X67,0XD5,0XE8,0XEE,0X68,0XF6,0X67,0XF6,0X67,0XFE,0X88,0XF6,0X26,

25560XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X66,0XF6,0X66,0XF6,0X66,0XF6,0X67,

25570XF6,0X67,0XF6,0X88,0XF6,0X69,0XFE,0X89,0XFE,0XAA,0XF6,0X89,0XF6,0X89,0XF6,0XAA,

25580XEE,0X8B,0XE6,0X6D,0XEF,0X13,0XFF,0XB9,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25590XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25660XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XDB,0XE6,0XB1,0XD6,0X2B,0XE6,0X48,0XEE,0X26,

25670XFE,0X27,0XFE,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X46,

25680XF6,0X46,0XF6,0X46,0XF6,0X27,0XFE,0X47,0XF6,0X26,0XF6,0X47,0XF6,0X47,0XF6,0X27,

25690XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XEE,0X47,0XEE,0X68,0XF6,0XA9,0XFF,0X2B,

25700XFF,0X4C,0XE6,0X69,0XCD,0X86,0XCD,0X86,0XCD,0X66,0XC5,0X26,0XC5,0X06,0XC5,0X27,

25710XC5,0X27,0XBC,0XC6,0XBC,0XA6,0XBC,0X87,0XB4,0X87,0XAC,0X67,0X9C,0X06,0X94,0X27,

25720XAD,0X2C,0XEF,0X15,0XFF,0XBA,0XFF,0XFC,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XF7,0XBF,

25730XFF,0XDF,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XDD,0XFF,0X99,0XC5,0X6D,0XC5,0X49,

25740XDD,0XE8,0XF6,0X88,0XF6,0X68,0XFE,0X88,0XF6,0X47,0XF6,0X67,0XFE,0X67,0XFE,0X47,

25750XFE,0X88,0XFE,0X67,0XFE,0X67,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0X89,

25760XFE,0X89,0XFE,0X8A,0XFE,0X8A,0XF6,0X89,0XF6,0XAA,0XF6,0X8B,0XE6,0X6D,0XEE,0XF2,

25770XFF,0XB8,0XFF,0XDC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

25780XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

25850XFF,0XFE,0XFF,0XFB,0XE6,0XD1,0XD6,0X2B,0XEE,0X68,0XEE,0X47,0XF6,0X07,0XFE,0X07,

25860XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

25870XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

25880XF6,0X67,0XF6,0X67,0XF6,0X68,0XEE,0X47,0XEE,0X68,0XF6,0XCA,0XFF,0X4C,0XFF,0X6C,

25890XE6,0X89,0XCD,0XA6,0XC5,0X66,0XC5,0X46,0XBD,0X05,0XC5,0X06,0XC5,0X06,0XBC,0XE6,

25900XBC,0XA6,0XBC,0XA7,0XB4,0X87,0XAC,0X86,0XA4,0X66,0X9C,0X25,0X94,0X05,0X94,0X48,

25910XC5,0XF1,0XEF,0X38,0XFF,0XFD,0XFF,0XBD,0XFF,0XDE,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,

25920XFF,0XDE,0XFF,0X9C,0XFF,0XDA,0XE6,0X92,0XAC,0XA7,0XE6,0X0A,0XEE,0X49,0XF6,0X68,

25930XF6,0X48,0XF6,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

25940XFE,0X68,0XF6,0X67,0XF6,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X89,0XFE,0X8A,0XFE,0XAA,

25950XFE,0X8A,0XFE,0X8B,0XF6,0X6B,0XE6,0X6D,0XEE,0XD1,0XFF,0X97,0XFF,0XFC,0XFF,0XFE,

25960XF7,0XFE,0XF7,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

25990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XFF,0XFA,

26040XEF,0X12,0XDE,0X6C,0XE6,0X28,0XEE,0X47,0XFE,0X28,0XFE,0X07,0XF6,0X47,0XF6,0X47,

26050XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,

26060XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,

26070XF6,0X67,0XF6,0X88,0XF6,0X88,0XEE,0X68,0XF6,0XA9,0XFF,0X2B,0XFF,0X8D,0XEE,0XCA,

26080XD5,0XE8,0XC5,0X66,0XC5,0X46,0XBD,0X26,0XBC,0XC5,0XBC,0XC6,0XBC,0XA7,0XB4,0XA7,

26090XB4,0X86,0XAC,0X65,0XAC,0X85,0XA4,0X65,0X9C,0X24,0X8B,0XE5,0X94,0X28,0XAD,0X0E,

26100XD6,0X35,0XF7,0X7B,0XFF,0XFD,0XFF,0XDD,0XF7,0XBC,0XFF,0XFD,0XFF,0XBD,0XFF,0XBB,

26110XE6,0X93,0XBD,0X29,0XD5,0XA8,0XEE,0X48,0XF6,0X69,0XFE,0X68,0XF6,0X48,0XF6,0X68,

26120XF6,0X68,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,

26130XFE,0XA7,0XFE,0XA8,0XFE,0XA8,0XFE,0X89,0XFE,0X8A,0XFE,0X8B,0XFE,0X8B,0XF6,0X6B,

26140XEE,0X8D,0XF6,0XF1,0XFF,0X77,0XFF,0XBA,0XFF,0XFD,0XFF,0XFE,0XF7,0XFE,0XF7,0XFF,

26150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFA,0XF7,0X53,0XDE,0X4C,

26230XE6,0X29,0XF6,0X48,0XFE,0X48,0XFE,0X27,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

26240XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XFE,0X47,0XFE,0X67,0XFE,0X48,

26250XFE,0X48,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X68,

26260XFE,0X88,0XF6,0X68,0XEE,0X68,0XF6,0XA9,0XFF,0X2C,0XFF,0X6D,0XFF,0X2C,0XDE,0X49,

26270XBD,0X25,0XAC,0XC4,0XB4,0XC5,0XBC,0XE6,0XB4,0XC6,0XB4,0XA6,0XAC,0X65,0XA4,0X24,

26280XA4,0X24,0XA4,0X24,0X9C,0X04,0X8B,0XC4,0X83,0X84,0X83,0XA7,0X8C,0X0A,0XAD,0X0F,

26290XDE,0X75,0XF7,0X7A,0XFF,0XFB,0XFF,0XFB,0XFF,0X9A,0XF7,0X36,0XD5,0XED,0XC5,0X68,

26300XEE,0X89,0XF6,0X87,0XF6,0X67,0XF6,0X47,0XF6,0X68,0XFE,0X68,0XFE,0X87,0XF6,0X67,

26310XF6,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0XA7,0XF6,0XA7,

26320XFE,0XA8,0XFE,0XCA,0XFE,0XAB,0XFE,0X8C,0XF6,0X6C,0XEE,0X6D,0XEE,0XB1,0XFF,0X77,

26330XFF,0XFB,0XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

26340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26410XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFB,0XFF,0X95,0XDE,0X4D,0XEE,0X8B,0XF6,0X49,

26420XFE,0X48,0XFE,0X27,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,

26430XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,

26440XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X87,0XFE,0X67,0XF6,0X47,0XFE,0X67,0XF6,0X88,

26450XF6,0X68,0XEE,0X68,0XEE,0X89,0XF7,0X0B,0XFF,0X6D,0XFF,0X6D,0XDE,0X4A,0XC5,0X46,

26460XBC,0XE5,0XB4,0XC5,0XA4,0X65,0XA4,0X65,0XAC,0X65,0XA4,0X45,0X9C,0X04,0X9C,0X04,

26470X9B,0XE4,0X93,0XC4,0X8B,0XA5,0X7B,0X24,0X73,0X25,0X6A,0XC5,0X73,0X26,0X9C,0X4B,

26480XCD,0XF1,0XE6,0X93,0XFF,0X15,0XC5,0X6D,0XC5,0X69,0XEE,0X8A,0XF6,0X87,0XF6,0X86,

26490XFE,0X87,0XFE,0X67,0XFE,0X88,0XF6,0X88,0XF6,0X87,0XF6,0X86,0XF6,0X67,0XF6,0X67,

26500XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XF6,0XA7,0XF6,0XA7,0XFE,0XC9,0XFE,0XCA,

26510XFE,0XAC,0XF6,0X8D,0XEE,0X6E,0XF6,0XD1,0XFF,0X56,0XFF,0XDB,0XFF,0XFD,0XFF,0XDE,

26520XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

26600XFF,0XFE,0XFF,0XFB,0XFF,0XB6,0XDE,0X6F,0XEE,0X6C,0XEE,0X49,0XF6,0X28,0XFE,0X47,

26610XFE,0X66,0XFE,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X67,

26620XF6,0X67,0XF6,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,

26630XFE,0X67,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XF6,0XA8,

26640XEE,0X68,0XEE,0XA9,0XEE,0XAA,0XFF,0X4D,0XFF,0XCF,0XF6,0XEC,0XCD,0X87,0XAC,0X83,

26650XAC,0XA5,0XA4,0X64,0X9C,0X24,0X9C,0X24,0X93,0XE4,0X93,0XA3,0X8B,0XA3,0X8B,0X83,

26660X7B,0X22,0X73,0X02,0X73,0X03,0X6A,0XC2,0X62,0X81,0X5A,0X60,0X49,0XC0,0X8B,0X84,

26670XC5,0X4A,0XD5,0XCB,0XEE,0X6B,0XEE,0X68,0XF6,0XA7,0XFE,0X86,0XF6,0X46,0XFE,0X88,

26680XFE,0X68,0XF6,0X87,0XF6,0X87,0XF6,0X86,0XF6,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,

26690XFE,0X87,0XFE,0X87,0XFE,0XA7,0XFE,0XC8,0XFE,0XCA,0XF6,0X8B,0XEE,0X6D,0XEE,0X6F,

26700XF6,0XF3,0XFF,0X77,0XFF,0XDB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26710XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,

26790XFF,0XB8,0XF7,0X12,0XE6,0X2C,0XEE,0X2A,0XFE,0X48,0XFE,0X67,0XFE,0X66,0XFE,0X66,

26800XFE,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

26810XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X47,

26820XFE,0X67,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XFE,0XA8,0XF6,0X88,0XF6,0X88,0XF6,0X89,

26830XEE,0X69,0XEE,0X89,0XFF,0X0C,0XFF,0X8E,0XFF,0X6E,0XF6,0XEC,0XB5,0X26,0XA4,0X84,

26840X93,0XE2,0X93,0XC2,0X8B,0XA3,0X83,0X62,0X7B,0X22,0X7B,0X01,0X72,0XE1,0X6A,0XA0,

26850X6A,0XA0,0X62,0X80,0X62,0X60,0X62,0X80,0XB4,0XC7,0XCD,0XA9,0XEE,0X4B,0XEE,0X4A,

26860XF6,0X69,0XF6,0X67,0XFE,0XA7,0XF6,0X86,0XFE,0X87,0XFE,0X88,0XF6,0X68,0XF6,0X88,

26870XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0XA7,

26880XFE,0XA8,0XFE,0XA9,0XF6,0X8B,0XEE,0X6D,0XEE,0XB0,0XF6,0XF4,0XFF,0X98,0XFF,0XDB,

26890XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

26970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XD9,0XFF,0X54,

26980XE6,0X6E,0XEE,0X2A,0XF6,0X48,0XFE,0X66,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XF6,0X67,

26990XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,

27000XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X47,0XFE,0X67,0XFE,0X67,

27010XFE,0X67,0XFE,0X87,0XFE,0X87,0XF6,0X67,0XF6,0X68,0XEE,0X48,0XF6,0XA9,0XF6,0X8A,

27020XE6,0X28,0XE6,0X8A,0XFF,0X2D,0XFF,0X8E,0XFF,0XAE,0XEE,0XCC,0XC5,0XA8,0XAC,0XA5,

27030X94,0X04,0X83,0X82,0X7B,0X21,0X7B,0X21,0X7B,0X21,0X83,0X62,0X7B,0X21,0X8B,0X82,

27040XB4,0XA6,0XE6,0X2B,0XE6,0X09,0XF6,0X6A,0XF6,0X89,0XF6,0X68,0XF6,0X68,0XFE,0X88,

27050XFE,0X87,0XFE,0X67,0XFE,0X88,0XF6,0X68,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X87,

27060XF6,0X68,0XF6,0X88,0XFE,0X88,0XFE,0XA7,0XFE,0XA7,0XFE,0XA8,0XFE,0X89,0XFE,0X8A,

27070XF6,0X8D,0XF6,0XD0,0XFF,0X35,0XFF,0X99,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

27080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0X56,0XFE,0XF2,0XEE,0X4C,

27170XF6,0X68,0XF6,0X66,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,

27180XFE,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,

27190XFE,0X68,0XFE,0X67,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XF6,0X67,

27200XF6,0X67,0XFE,0X87,0XFE,0X88,0XF6,0X68,0XF6,0X89,0XF6,0X69,0XEE,0X69,0XEE,0X8A,

27210XEE,0X8A,0XEE,0XAA,0XF7,0X2C,0XFF,0X6D,0XFF,0X8F,0XFF,0X4E,0XEE,0XCD,0XDE,0X4C,

27220XD5,0XCA,0XCD,0XCA,0XC5,0X89,0XC5,0X69,0XE6,0X8D,0XFF,0X0E,0XFE,0XED,0XF6,0XAB,

27230XF6,0XAA,0XF6,0X88,0XF6,0X67,0XF6,0X46,0XFE,0XA8,0XFE,0X87,0XFE,0X67,0XFE,0X67,

27240XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XF6,0X68,0XF6,0X68,0XFE,0X88,

27250XFE,0XA8,0XFE,0XC9,0XFE,0XA9,0XF6,0X8A,0XF6,0X8B,0XF6,0X8E,0XFE,0XD2,0XFF,0X56,

27260XFF,0XBA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27350XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XBB,0XFF,0X76,0XE6,0X6E,0XEE,0X69,0XEE,0X67,

27360XF6,0X86,0XFE,0XA6,0XFE,0X67,0XF6,0X47,0XFE,0X88,0XFE,0X68,0XF6,0X67,0XFE,0X87,

27370XF6,0X86,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X87,

27380XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,

27390XFE,0X88,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XFE,0X89,0XFE,0X89,0XF6,0X69,0XEE,0X69,

27400XEE,0X69,0XEE,0XA9,0XF6,0XCA,0XF6,0XEB,0XFF,0X0C,0XFF,0X2D,0XFF,0X2E,0XFF,0X4E,

27410XFF,0X2E,0XFE,0XED,0XF6,0XCC,0XF6,0X8A,0XEE,0X69,0XEE,0X68,0XEE,0X68,0XF6,0X88,

27420XF6,0X87,0XF6,0X87,0XF6,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X68,

27430XFE,0X68,0XFE,0X48,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XFE,0XA9,0XF6,0X89,

27440XF6,0XAB,0XEE,0XAD,0XEE,0XB0,0XF7,0X14,0XFF,0X99,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,

27450XF7,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27540XFF,0XDF,0XFF,0XBD,0XFF,0XB9,0XEE,0XF2,0XEE,0XAD,0XE6,0X68,0XF6,0X67,0XF6,0X67,

27550XFE,0X88,0XFE,0X68,0XF6,0X48,0XFE,0X68,0XFE,0X88,0XF6,0X67,0XFE,0X87,0XFE,0X87,

27560XF6,0X67,0XF6,0X67,0XF6,0X87,0XFE,0X88,0XFE,0X88,0XF6,0X67,0XFE,0X87,0XFE,0X87,

27570XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,

27580XFE,0X88,0XFE,0X68,0XF6,0X67,0XF6,0X68,0XFE,0X68,0XFE,0X88,0XF6,0X88,0XF6,0X88,

27590XEE,0X68,0XEE,0X89,0XF6,0X89,0XF6,0X89,0XEE,0X89,0XEE,0X69,0XF6,0X89,0XF6,0X69,

27600XF6,0X69,0XF6,0X68,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XFE,0X88,0XF6,0X87,0XFE,0X87,

27610XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X47,0XFE,0X68,

27620XFE,0X68,0XFE,0X68,0XFE,0X8A,0XFE,0X8A,0XF6,0X6A,0XF6,0X8C,0XF6,0XCF,0XF7,0X12,

27630XFF,0X77,0XFF,0XBA,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFE,0XFF,0XFE,

27640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

27730XFF,0XFB,0XFF,0X96,0XF7,0X32,0XE6,0X6C,0XF6,0X6A,0XF6,0X68,0XFE,0X69,0XFE,0X89,

27740XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,

27750XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X88,0XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X68,

27760XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0XA7,0XFE,0X67,0XF6,0X67,0XFE,0X87,

27770XFE,0XA8,0XFE,0X88,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,

27780XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XF6,0XA8,0XF6,0X88,0XF6,0X67,0XF6,0X67,0XFE,0X67,

27790XFE,0X87,0XFE,0X67,0XFE,0X48,0XFE,0X47,0XFE,0X88,0XFE,0X67,0XFE,0X67,0XFE,0X87,

27800XFE,0XA8,0XFE,0X67,0XF6,0X67,0XFE,0XA7,0XFE,0XA7,0XFE,0XA7,0XF6,0X87,0XF6,0X88,

27810XF6,0XAA,0XF6,0XAD,0XF6,0XCF,0XF6,0XD1,0XFF,0X35,0XFF,0X99,0XFF,0XDC,0XFF,0XFE,

27820XFF,0XDF,0XFF,0XDF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

27910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFC,0XFF,0XB9,

27920XFF,0X96,0XEE,0XD0,0XEE,0X4C,0XFE,0X6B,0XFE,0X6A,0XF6,0X48,0XFE,0X68,0XFE,0X88,

27930XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

27940XFE,0X68,0XF6,0X49,0XFE,0X69,0XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X87,0XFE,0X87,

27950XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,

27960XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X68,0XF6,0X68,

27970XF6,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X66,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X67,

27980XFE,0X68,0XFE,0X68,0XFE,0X47,0XFE,0X88,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XFE,0XA8,

27990XFE,0XA8,0XF6,0X88,0XF6,0XA8,0XF6,0XA9,0XF6,0XCA,0XEE,0XCB,0XE6,0X8D,0XEE,0XD0,

28000XFF,0X75,0XFF,0XD9,0XFF,0XDB,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

28010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

28060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0X97,

28110XF6,0XD1,0XEE,0X2C,0XEE,0X2A,0XFE,0X89,0XF6,0X88,0XF6,0X67,0XFE,0X87,0XFE,0X87,

28120XFE,0XA8,0XFE,0X87,0XFE,0X67,0XF6,0X66,0XF6,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X69,

28130XFE,0X69,0XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,

28140XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0XA7,

28150XF6,0X88,0XFE,0X88,0XFE,0XA8,0XFE,0X88,0XFE,0X68,0XFE,0X67,0XFE,0X87,0XFE,0X87,

28160XFE,0X67,0XFE,0X66,0XFE,0X46,0XFE,0X46,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X67,

28170XFE,0X47,0XFE,0X87,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XF6,0XA8,0XF6,0XA9,0XEE,0X8A,

28180XEE,0X6B,0XEE,0XAD,0XEE,0XF0,0XF7,0X33,0XFF,0XB6,0XFF,0XF9,0XFF,0XDA,0XFF,0XDB,

28190XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

28200XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

28250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,

28290XF7,0XDF,0XFF,0XDF,0XFF,0XDE,0XFF,0XBD,0XFF,0XDD,0XFF,0XBB,0XFF,0X56,0XFE,0XF2,

28300XF6,0XAE,0XEE,0X8B,0XF6,0X89,0XFE,0XA8,0XFE,0XA8,0XF6,0X87,0XF6,0X67,0XFE,0X87,

28310XFE,0XA7,0XFE,0XA7,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X48,0XFE,0X68,0XFE,0X68,

28320XFE,0X68,0XFE,0X68,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X67,

28330XFE,0X67,0XFE,0X88,0XFE,0XA8,0XFE,0X87,0XFE,0X87,0XF6,0X67,0XFE,0X88,0XF6,0X88,

28340XF6,0X88,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,

28350XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X87,0XF6,0X67,

28360XF6,0X68,0XFE,0X89,0XFE,0XAB,0XF6,0XAB,0XF6,0XAD,0XF7,0X10,0XFF,0X12,0XFF,0X55,

28370XFF,0X97,0XFF,0XBA,0XFF,0XDB,0XFF,0XDC,0XFF,0XFD,0XFF,0XFE,0XF7,0XFE,0XF7,0XDF,

28380XF7,0XDF,0XF7,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,

28390XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28430XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

28470XFF,0XDF,0XFF,0XBF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XEF,0XBE,0XEF,0X9E,

28480XEF,0X9E,0XEF,0X7D,0XEF,0X5D,0XF7,0X7C,0XFF,0X59,0XFF,0X35,0XEE,0XB0,0XE6,0X8D,

28490XEE,0XCC,0XEE,0XAA,0XEE,0X69,0XFE,0XA9,0XFE,0XA9,0XFE,0X87,0XF6,0X66,0XF6,0X65,

28500XFE,0X85,0XFE,0X86,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X86,0XFE,0X87,0XFE,0X87,

28510XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,

28520XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0XA8,0XFE,0X88,0XF6,0X88,0XFE,0X67,0XFE,0X87,

28530XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X68,0XFE,0X88,0XFE,0X88,

28540XFE,0X88,0XFE,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0XA9,0XF6,0X8B,0XF6,0X8C,

28550XF6,0XAF,0XF6,0XD1,0XF6,0XF3,0XF7,0X35,0XFF,0X98,0XFF,0X7A,0XFF,0X9C,0XFF,0XBE,

28560XF7,0X9E,0XF7,0XBE,0XF7,0XDE,0XEF,0XBD,0XEF,0XDD,0XEF,0XDD,0XF7,0XDE,0XF7,0XDF,

28570XF7,0XBF,0XF7,0XBF,0XFF,0XDE,0XFF,0XDE,0XFF,0XBE,0XFF,0XBE,0XFF,0XBF,0XFF,0XDF,

28580XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28620XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

28650XFF,0XDF,0XFF,0XDF,0XF7,0XDE,0XF7,0XDE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

28660XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XE7,0X5D,0XE7,0X3C,0XE7,0X3D,0XE7,0X1C,

28670XDE,0XDB,0XDE,0XDA,0XDE,0XB8,0XDE,0X96,0XDE,0X93,0XDE,0X70,0XDE,0X6E,0XE6,0X8D,

28680XEE,0XAD,0XF6,0X8C,0XEE,0X6A,0XF6,0X89,0XF6,0XA8,0XFE,0XA7,0XFE,0XA6,0XFE,0X86,

28690XFE,0X87,0XFE,0X86,0XFE,0X86,0XFE,0X86,0XFE,0X86,0XFE,0X86,0XFE,0X87,0XFE,0X87,

28700XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

28710XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0XA8,0XFE,0X88,0XFE,0X67,0XFE,0X67,

28720XFE,0X87,0XFE,0X87,0XFE,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X89,0XF6,0X89,0XF6,0X8A,

28730XF6,0X8A,0XF6,0XAB,0XF6,0XCB,0XF6,0XCC,0XEE,0XAE,0XEE,0X90,0XE6,0X93,0XE6,0X94,

28740XEE,0XD6,0XEF,0X18,0XEE,0XF9,0XEF,0X1B,0XE7,0X1C,0XE6,0XFD,0XE7,0X3E,0XE7,0X5E,

28750XE7,0X5D,0XE7,0X9D,0XE7,0X9C,0XE7,0X9C,0XEF,0X9D,0XEF,0X9D,0XEF,0X9E,0XEF,0X7E,

28760XF7,0X9D,0XF7,0X9D,0XF7,0X9D,0XF7,0X9D,0XFF,0X9E,0XFF,0XBE,0XF7,0XBE,0XF7,0XBE,

28770XF7,0XDE,0XF7,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

28780XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,

28810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28830XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

28840XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9D,0XF7,0X7D,0XEF,0X7D,0XEF,0X3C,0XE7,0X1C,

28850XE7,0X1C,0XDF,0X1C,0XDE,0XFB,0XD6,0XBB,0XD6,0X9A,0XCE,0X7A,0XC6,0X39,0XC6,0X18,

28860XBD,0XD6,0XB5,0X94,0XAD,0X52,0XAD,0X30,0XAC,0XED,0XB4,0XEC,0XC5,0X6D,0XDD,0XEE,

28870XEE,0X8F,0XF6,0X8D,0XF6,0X8B,0XF6,0XCA,0XF6,0X88,0XF6,0X87,0XF6,0X67,0XFE,0XA7,

28880XFE,0XA6,0XFE,0X86,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,

28890XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

28900XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X87,

28910XF6,0X67,0XF6,0X88,0XF6,0XA9,0XF6,0XAA,0XEE,0XAB,0XF6,0XAD,0XF6,0XCD,0XE6,0X4D,

28920XC5,0X8A,0XAC,0XA9,0X9C,0X2A,0X9C,0X4C,0XA4,0X8F,0XAC,0XD1,0XAD,0X13,0XB5,0X54,

28930XBD,0X96,0XBD,0XD7,0XC5,0XF8,0XC6,0X19,0XCE,0X5A,0XCE,0X7A,0XCE,0X99,0XCE,0XB9,

28940XD6,0XDA,0XD6,0XFA,0XDF,0X1B,0XDF,0X1C,0XDF,0X1C,0XE7,0X1C,0XE7,0X1C,0XEF,0X3C,

28950XEF,0X5C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9D,0XF7,0X9D,

28960XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,

28970XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

28980XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

28990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

29000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

29020XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

29030XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X3C,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XDE,0XDB,

29040XD6,0X9A,0XCE,0X79,0XCE,0X59,0XC6,0X18,0XB5,0XB7,0XAD,0X76,0XA5,0X35,0X9C,0XD3,

29050X94,0X71,0X8C,0X0E,0X83,0XAC,0X7B,0X6A,0X7B,0X49,0X83,0X68,0X9C,0X29,0XBD,0X2C,

29060XE6,0X4E,0XEE,0XAE,0XF6,0XAC,0XFF,0X0C,0XFE,0XCB,0XF6,0XAA,0XF6,0XA9,0XF6,0X88,

29070XF6,0X88,0XFE,0X89,0XFE,0X89,0XF6,0X69,0XF6,0X69,0XFE,0X89,0XF6,0X89,0XF6,0X89,

29080XF6,0X89,0XF6,0X89,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X68,

29090XF6,0X68,0XF6,0X89,0XF6,0X89,0XF6,0X69,0XF6,0X89,0XEE,0X89,0XF6,0XAA,0XF6,0XAB,

29100XFF,0X0D,0XF6,0XCD,0XE6,0X8E,0XD6,0X2D,0XA4,0XA8,0X73,0X24,0X49,0XC0,0X39,0X80,

29110X41,0X82,0X41,0XC5,0X4A,0X07,0X52,0X49,0X5A,0X8A,0X62,0XCB,0X6B,0X2C,0X73,0X8E,

29120X7B,0XF0,0X8C,0X31,0X94,0X92,0X94,0XD2,0XA5,0X33,0XAD,0X74,0XAD,0X95,0XB5,0XB6,

29130XBD,0XF7,0XC6,0X18,0XC6,0X39,0XCE,0X59,0XCE,0X79,0XD6,0XBA,0XD6,0XBA,0XDE,0XBB,

29140XDE,0XDB,0XDE,0XFB,0XE6,0XFC,0XE7,0X1B,0XE7,0X3C,0XE7,0X5C,0XEF,0X5C,0XEF,0X5D,

29150XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

29160XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

29170XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29180XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,

29210XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XEF,0X9E,0XEF,0X7D,0XEF,0X7D,

29220XEF,0X5C,0XE7,0X3C,0XE7,0X3C,0XE7,0X1C,0XE7,0X1C,0XDE,0XDB,0XD6,0X9A,0XCE,0X79,

29230XCE,0X59,0XC6,0X38,0XBD,0XD6,0XB5,0X96,0XA5,0X35,0X9C,0XD4,0X94,0X72,0X83,0XF0,

29240X7B,0X8D,0X6B,0X0B,0X5A,0X88,0X52,0X26,0X52,0X04,0X49,0XE2,0X51,0XE0,0X7B,0X44,

29250XAC,0XC9,0XCD,0XCC,0XE6,0X8F,0XEE,0XAE,0XF6,0XCD,0XFE,0XCD,0XF6,0XAC,0XEE,0X8B,

29260XF6,0X8B,0XF6,0XAB,0XF6,0X8A,0XEE,0X69,0XEE,0X8A,0XF6,0X8A,0XF6,0X8A,0XF6,0X8A,

29270XF6,0XA9,0XF6,0XA9,0XF6,0XA9,0XF6,0XA9,0XF6,0X8A,0XEE,0X6A,0XF6,0X8B,0XF6,0X8B,

29280XF6,0X8B,0XF6,0XAC,0XFE,0XEE,0XFF,0X0F,0XF6,0XEF,0XE6,0X8E,0XC5,0X8B,0X9C,0X88,

29290X62,0XC3,0X39,0X80,0X39,0X80,0X39,0XA1,0X41,0XE4,0X41,0XE4,0X41,0XE5,0X39,0XC5,

29300X39,0XA5,0X41,0XE7,0X42,0X28,0X4A,0X49,0X4A,0X69,0X52,0XAA,0X62,0XEB,0X63,0X0B,

29310X6B,0X4C,0X6B,0X6C,0X73,0XAD,0X7B,0XEE,0X8C,0X30,0X8C,0X72,0X94,0XB3,0X9C,0XF3,

29320XA5,0X34,0XAD,0X54,0XB5,0X95,0XBD,0XD6,0XBE,0X17,0XC6,0X38,0XCE,0X59,0XCE,0X7A,

29330XD6,0X9A,0XD6,0XBA,0XDE,0XDA,0XDE,0XFA,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,

29340XE7,0X3C,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,

29350XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,

29360XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

29370XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,

29400XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X9E,0XEF,0X9D,0XEF,0X7D,0XEF,0X5D,

29410XE7,0X3C,0XE7,0X3C,0XE7,0X1C,0XE6,0XFC,0XDE,0XFB,0XDE,0XDB,0XDE,0XBA,0XD6,0X99,

29420XCE,0X79,0XCE,0X59,0XC6,0X19,0XBD,0XF8,0XB5,0X97,0XB5,0X76,0XAD,0X35,0XA4,0XD3,

29430X94,0X51,0X8C,0X0F,0X83,0XCD,0X73,0X2A,0X62,0XC7,0X52,0X44,0X41,0XC1,0X49,0XE1,

29440X5A,0X42,0X7B,0X25,0X9C,0X27,0XBC,0XEA,0XD5,0XAC,0XDE,0X0C,0XE6,0X2D,0XEE,0X8D,

29450XEE,0XAE,0XEE,0XAD,0XEE,0X8D,0XEE,0XAD,0XEE,0XAD,0XEE,0XAD,0XEE,0XCD,0XEE,0XCC,

29460XEE,0XCC,0XEE,0XCC,0XF6,0XCE,0XEE,0X8E,0XEE,0X8E,0XEE,0X8E,0XDE,0X4D,0XC5,0X8B,

29470XA4,0X87,0X83,0XA5,0X6B,0X03,0X4A,0X00,0X31,0X40,0X29,0X20,0X31,0X60,0X39,0XC3,

29480X41,0XE4,0X42,0X05,0X42,0X06,0X4A,0X27,0X52,0X88,0X52,0X88,0X52,0X88,0X52,0XA9,

29490X52,0X89,0X4A,0X69,0X52,0XAA,0X5A,0XAA,0X5A,0XCA,0X62,0XEA,0X6B,0X2B,0X73,0X6C,

29500X73,0XAD,0X7B,0XEE,0X7B,0XCF,0X84,0X10,0X8C,0X51,0X94,0X91,0X94,0XD2,0X9C,0XF2,

29510XA5,0X33,0XAD,0X74,0XAD,0X95,0XB5,0XB6,0XBD,0XD7,0XBE,0X18,0XC6,0X18,0XCE,0X38,

29520XD6,0X79,0XD6,0X99,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,0XE7,0X1C,

29530XE7,0X1C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

29540XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

29550XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,

29560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29580XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

29590XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7E,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,

29600XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X1C,0XE7,0X1B,0XDE,0XFB,0XDE,0XFA,0XDE,0XFA,

29610XD6,0XBA,0XD6,0X9A,0XCE,0X79,0XCE,0X59,0XCE,0X59,0XCE,0X18,0XC5,0XF7,0XC5,0XD6,

29620XBD,0XB5,0XBD,0XD5,0XB5,0X93,0XBD,0X93,0XBD,0X93,0XB5,0X52,0XB5,0X11,0XA4,0X8F,

29630X9C,0X2D,0X9C,0X0C,0X93,0XEA,0X93,0XEA,0X94,0X09,0X9C,0X29,0XA4,0X69,0XAC,0XAA,

29640XAC,0XCA,0XAC,0XAA,0XA4,0X8A,0XA4,0X69,0X9C,0X48,0X9C,0X47,0X94,0X26,0X94,0X06,

29650X83,0X65,0X73,0X04,0X62,0X82,0X52,0X20,0X49,0XC0,0X41,0XA0,0X39,0X80,0X39,0X80,

29660X39,0XA2,0X39,0XC3,0X42,0X05,0X42,0X05,0X42,0X26,0X4A,0X67,0X4A,0X47,0X42,0X47,

29670X52,0X88,0X52,0X88,0X5A,0XC9,0X5A,0XE9,0X63,0X2A,0X6B,0X6C,0X73,0X8D,0X73,0X8D,

29680X73,0X6D,0X73,0X6C,0X73,0X6C,0X73,0X6C,0X73,0X8C,0X7B,0XAE,0X83,0XEF,0X84,0X10,

29690X8C,0X51,0X8C,0X71,0X94,0XB2,0X9C,0XD2,0X9C,0XF2,0XA5,0X13,0XA5,0X54,0XAD,0X74,

29700XAD,0X95,0XB5,0XB6,0XB5,0XD7,0XBD,0XF7,0XBD,0XF8,0XC6,0X18,0XCE,0X38,0XCE,0X79,

29710XD6,0X7A,0XD6,0X9A,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,

29720XE7,0X3C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,

29730XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

29740XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

29750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

29770XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

29780XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X9E,0XEF,0X9E,0XEF,0X9D,0XEF,0X7D,0XEF,0X7D,

29790XEF,0X5D,0XEF,0X5D,0XEF,0X3D,0XE7,0X3C,0XE7,0X3C,0XE7,0X1C,0XE7,0X3C,0XE7,0X1C,

29800XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1B,0XE7,0X1B,0XDE,0XFA,

29810XE7,0X3B,0XE6,0XFA,0XE7,0X1A,0XEE,0XFA,0XE6,0XD9,0XE6,0XDA,0XE6,0X99,0XE6,0X98,

29820XE6,0X98,0XDE,0X77,0XD6,0X35,0XCD,0XF4,0XCD,0XD3,0XCD,0XD2,0XC5,0XB2,0XBD,0X91,

29830XBD,0X50,0XB5,0X2F,0XAD,0X0E,0XA4,0XCD,0X9C,0XAC,0X9C,0X8C,0X9C,0X4C,0X94,0X2B,

29840X8C,0X0B,0X8B,0XEB,0X8B,0XEB,0X83,0XEB,0X7B,0XCB,0X73,0X8B,0X73,0X8B,0X73,0XAC,

29850X73,0X6C,0X73,0X8C,0X73,0X8D,0X6B,0X6C,0X73,0XAD,0X73,0XCD,0X7B,0XEE,0X7B,0XED,

29860X84,0X0E,0X84,0X0E,0X84,0X2E,0X84,0X2F,0X8C,0X50,0X8C,0X50,0X94,0X70,0X94,0X90,

29870X94,0X70,0X94,0X70,0X94,0X70,0X94,0X71,0X94,0X92,0X9C,0XB3,0X9C,0XD3,0X9C,0XF3,

29880XA5,0X13,0XA5,0X34,0XAD,0X54,0XAD,0X74,0XAD,0X95,0XB5,0XB6,0XB5,0XD6,0XBD,0XF7,

29890XBE,0X17,0XBE,0X18,0XC6,0X38,0XCE,0X59,0XCE,0X79,0XD6,0X7A,0XD6,0X9A,0XD6,0X9A,

29900XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X3C,0XE7,0X1C,

29910XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

29920XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

29930XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

29950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

29960XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XF7,0XBF,0XF7,0XBF,

29970XF7,0XBF,0XF7,0XBF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBD,0XF7,0X9D,0XF7,0X9E,

29980XF7,0X9E,0XEF,0X7E,0XEF,0X7D,0XEF,0X7D,0XE7,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7C,

29990XEF,0X7D,0XF7,0X9E,0XF7,0XBE,0XF7,0XDE,0XF7,0XBE,0XFF,0XDE,0XF7,0XBD,0XF7,0X9C,

30000XF7,0X9C,0XF7,0X5B,0XFF,0X7C,0XF7,0X3B,0XF7,0X5C,0XF7,0X5B,0XEF,0X3B,0XEF,0X1A,

30010XEF,0X3B,0XF7,0X7B,0XF7,0X3B,0XEE,0XF9,0XEF,0X19,0XEF,0X19,0XE7,0X19,0XE7,0X19,

30020XE6,0XF8,0XE6,0XF8,0XE6,0XD8,0XE6,0XD8,0XE6,0XB8,0XE6,0XB8,0XE6,0XB8,0XDE,0X98,

30030XD6,0X77,0XD6,0X77,0XD6,0X77,0XD6,0X77,0XCE,0X56,0XCE,0X36,0XCE,0X56,0XC6,0X16,

30040XC6,0X16,0XC6,0X36,0XBD,0XD5,0XBD,0XD5,0XBD,0XB6,0XBD,0XB5,0XBD,0XD6,0XBD,0XD6,

30050XBD,0XB5,0XBD,0XD6,0XBD,0XD6,0XBD,0XD6,0XC5,0XF6,0XC6,0X16,0XC6,0X16,0XC5,0XF5,

30060XBD,0XD5,0XB5,0XB5,0XB5,0X95,0XB5,0X96,0XB5,0XB5,0XB5,0XB6,0XB5,0XD6,0XBD,0XD7,

30070XBD,0XD7,0XBD,0XF8,0XC6,0X18,0XC6,0X39,0XC6,0X38,0XC6,0X38,0XC6,0X58,0XCE,0X79,

30080XCE,0X79,0XD6,0X9A,0XD6,0X9B,0XDE,0XBB,0XDE,0XDB,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,

30090XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,

30100XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

30110XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,

30120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

30150XFF,0XDF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XDF,

30160XF7,0XDF,0XF7,0XDE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,

30170XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XDE,0XF7,0XBE,0XFF,0XDE,0XFF,0XFF,

30180XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XDE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XBD,

30190XFF,0XBD,0XFF,0XBE,0XFF,0XBD,0XF7,0XBD,0XF7,0XBD,0XFF,0XBD,0XFF,0XDE,0XFF,0XDE,

30200XFF,0XBD,0XFF,0XBD,0XF7,0X9D,0XF7,0X9C,0XF7,0XBD,0XF7,0XBC,0XF7,0X9C,0XF7,0X9C,

30210XF7,0XBD,0XFF,0XBD,0XF7,0X7C,0XF7,0X7C,0XF7,0X5C,0XF7,0X5C,0XF7,0X7C,0XF7,0X9C,

30220XF7,0X9C,0XEF,0X7B,0XEF,0X5B,0XF7,0X7B,0XEF,0X5A,0XEF,0X5A,0XEF,0X3B,0XE7,0X3B,

30230XEF,0X5B,0XEF,0X5C,0XEF,0X3C,0XEF,0X1C,0XEF,0X3C,0XE7,0X1B,0XE7,0X1B,0XE7,0X3B,

30240XE7,0X1B,0XE7,0X1B,0XE7,0X1A,0XE7,0X1A,0XE7,0X1A,0XE7,0X1A,0XE7,0X3B,0XDF,0X1B,

30250XD6,0XBA,0XD6,0X99,0XCE,0X99,0XCE,0X99,0XCE,0X99,0XD6,0X9A,0XD6,0X9A,0XD6,0X9B,

30260XD6,0XBB,0XD6,0XBB,0XD6,0XBA,0XD6,0XBA,0XDE,0XDA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,

30270XDE,0XFC,0XDE,0XFC,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

30280XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

30290XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

30300XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

30310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

30350XFF,0XDE,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

30360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30370XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,

30380XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

30390XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

30400XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,

30410XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XF7,0XBD,

30420XF7,0XBD,0XF7,0XBD,0XF7,0XBD,0XF7,0XBD,0XF7,0XBD,0XF7,0XBD,0XF7,0XBD,0XF7,0XBD,

30430XF7,0X9D,0XF7,0XBD,0XF7,0XBD,0XFF,0XDE,0XF7,0XDE,0XF7,0XBE,0XF7,0X9D,0XF7,0X9D,

30440XEF,0X7D,0XE7,0X3C,0XE7,0X1B,0XE7,0X1B,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,

30450XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3D,0XE7,0X3D,0XE7,0X3D,

30460XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

30470XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

30480XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

30490XF7,0XBE,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30570XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

30580XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30600XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

30610XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

30620XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XF7,0X9E,

30630XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

30640XEF,0X7D,0XEF,0X7D,0XEF,0X7E,0XEF,0X7E,0XEF,0X7E,0XEF,0X7E,0XEF,0X7D,0XEF,0X7D,

30650XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

30660XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

30670XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

30680XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30790XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XF7,0XBE,

30820XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

30830XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

30840XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

30850XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

30860XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

30870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

30990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDE,

31010XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

31020XF7,0XBE,0XF7,0XBF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

31030XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

31040XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

31050XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,

31200XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

31210XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

31220XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

31230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

31390XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

31400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

31990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,};

3220

3221

3222const unsigned char gimage_8[51000] = { /* 0X10,0X10,0X00,0X96,0X00,0XAA,0X01,0X1B, */

32230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

32990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33630XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

33640XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

33650XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

33820XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,

33830XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,

33840XFF,0XFC,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

33990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

34000XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,0XFF,0XFA,

34010XFF,0XFA,0XFF,0XF9,0XFF,0XF9,0XFF,0XD9,0XFF,0XD9,0XFF,0XD9,0XFF,0XF8,0XFF,0XF8,

34020XFF,0XF8,0XFF,0XF8,0XFF,0XF8,0XFF,0XF8,0XFF,0XF8,0XFF,0XF8,0XFF,0XF9,0XFF,0XFA,

34030XFF,0XFA,0XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34180XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,

34190XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF7,0XFF,0XF6,0XFF,0XF6,0XFF,0XF5,

34200XFF,0XD5,0XFF,0XD4,0XFF,0XD4,0XFF,0XD4,0XFF,0XF4,0XFF,0XF4,0XFF,0XF4,0XFF,0XF4,

34210XFF,0XF4,0XFF,0XD4,0XFF,0XF5,0XFF,0XD5,0XFF,0XF6,0XFF,0XF6,0XFF,0XF7,0XFF,0XF8,

34220XFF,0XFA,0XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFB,

34370XFF,0XFA,0XFF,0XF9,0XFF,0XF9,0XFF,0XF8,0XFF,0XF8,0XFF,0XF7,0XFF,0XF7,0XFF,0XF6,

34380XFF,0XD5,0XFF,0XD4,0XFF,0XF4,0XFF,0XF3,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,

34390XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,

34400XFF,0XF2,0XFF,0XF3,0XFF,0XF3,0XFF,0XF4,0XFF,0XF5,0XFF,0XD6,0XFF,0XD7,0XFF,0XF8,

34410XFF,0XF9,0XFF,0XFA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

34550XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF6,

34560XFF,0XF5,0XFF,0XF4,0XFF,0XF4,0XFF,0XF4,0XFF,0XF3,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,

34570XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,

34580XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF2,

34590XFF,0XF2,0XFF,0XF2,0XFF,0XF3,0XFF,0XD4,0XFF,0XD5,0XFF,0XF5,0XFF,0XF6,0XFF,0XD7,

34600XFF,0XFA,0XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

34610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34730XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,

34740XFF,0XF9,0XFF,0XF7,0XFF,0XF6,0XFF,0XF5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,

34750XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,

34760XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

34770XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,

34780XFF,0XF1,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF3,0XFF,0XF4,0XFF,0XD7,0XFF,0XD8,

34790XFF,0XD9,0XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

34920XFF,0XFE,0XFF,0XFC,0XFF,0XFB,0XFF,0XF9,0XFF,0XF7,0XFF,0XF5,0XFF,0XF4,0XFF,0XF3,

34930XF7,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

34940XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

34950XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

34960XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

34970XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF3,0XFF,0XF5,0XFF,0XD6,0XFF,0XF8,

34980XFF,0XFA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

34990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,

35110XFF,0XF8,0XFF,0XF6,0XF7,0XF4,0XF7,0XF2,0XF7,0XF1,0XF7,0XF0,0XFF,0XF0,0XFF,0XF0,

35120XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XCF,0XFF,0XCF,

35130XFF,0XCF,0XFF,0XD0,0XFF,0XD0,0XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

35140XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

35150XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

35160XFF,0XEE,0XFF,0XEF,0XFF,0XF1,0XFF,0XD2,0XFF,0XD3,0XFF,0XD5,0XFF,0XF7,0XFF,0XF9,

35170XFF,0XFB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

35290XFF,0XFD,0XFF,0XFD,0XFF,0XFB,0XFF,0XFA,0XFF,0XF8,0XFF,0XD6,0XFF,0XD5,0XFF,0XF3,

35300XFF,0XF2,0XF7,0XF0,0XF7,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,

35310XFF,0XB0,0XFF,0XD0,0XFF,0XAF,0XFF,0XAE,0XFF,0XAE,0XFF,0XAE,0XFF,0X6E,0XFF,0X6E,

35320XFF,0X6F,0XFF,0XAF,0XFF,0XD0,0XFF,0XF0,0XF7,0XAF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

35330XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XCE,0XFF,0XEF,0XFF,0XCE,0XFF,0XCF,0XFF,0XEF,

35340XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,

35350XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF2,0XFF,0XF3,0XFF,0XF5,0XFF,0XF8,0XFF,0XFB,

35360XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,

35480XFF,0XF8,0XFF,0XD6,0XFF,0XD5,0XFF,0XD3,0XFF,0XD2,0XFF,0XF1,0XF7,0XF0,0XFF,0XEF,

35490XFF,0XEF,0XFF,0XEE,0XFF,0XCE,0XFF,0XCE,0XFF,0XCE,0XFF,0X8E,0XFF,0X8E,0XFF,0X2D,

35500XEE,0XEA,0XE6,0XA9,0XDE,0X68,0XDE,0X47,0XDE,0X28,0XDE,0X08,0XE6,0X29,0XE6,0X6A,

35510XE6,0XAB,0XF7,0X4E,0XFF,0XF0,0XFF,0XD0,0XF7,0XAF,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,

35520XFF,0XEF,0XFF,0XCE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

35530XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

35540XFF,0XEF,0XFF,0XF0,0XFF,0XF1,0XF7,0XF2,0XFF,0XD5,0XFF,0XD8,0XFF,0XDB,0XFF,0XFE,

35550XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35660XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFB,0XFF,0XF9,0XFF,0XF7,0XFF,0XD5,0XFF,0XD3,

35670XFF,0XD1,0XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XF7,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XCF,

35680XFF,0XAE,0XFF,0XAE,0XFF,0X8D,0XF7,0X4B,0XEE,0X88,0XE6,0X46,0XDE,0X26,0XDE,0X05,

35690XD5,0XC4,0XD5,0X83,0XCD,0X62,0XCD,0X22,0XCD,0X23,0XC5,0X03,0XC5,0X45,0XD6,0X08,

35700XF7,0X0C,0XFF,0X8F,0XFF,0XD0,0XFF,0XD0,0XFF,0XD0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,

35710XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

35720XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,

35730XFF,0XEF,0XFF,0XD0,0XF7,0XD2,0XF7,0XB5,0XFF,0XD9,0XFF,0XFD,0XFF,0XBD,0XFF,0XFF,

35740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,

35850XFF,0XFA,0XFF,0XF8,0XFF,0XF6,0XFF,0XF5,0XFF,0XD2,0XFF,0XD1,0XFF,0XEF,0XFF,0XEF,

35860XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XAF,0XFF,0X8D,0XFF,0X2C,

35870XEE,0XC9,0XE6,0X47,0XD5,0XC3,0XCD,0X82,0XCD,0X62,0XD5,0X62,0XD5,0X61,0XD5,0X81,

35880XDD,0X81,0XDD,0X81,0XD5,0X21,0XC4,0XE2,0XBC,0XA1,0XAC,0X61,0XBD,0X04,0XE6,0X6A,

35890XFF,0XB0,0XFF,0XD0,0XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,

35900XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

35910XFF,0XEF,0XFF,0XEF,0XFF,0XCF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,

35920XFF,0XD1,0XFF,0XD3,0XFF,0XB6,0XFF,0XB9,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

35930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

35990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36030XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF7,0XFF,0XF5,

36040XFF,0XF3,0XFF,0XF1,0XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,

36050XFF,0XEF,0XFF,0XEF,0XFF,0XCF,0XFF,0X8E,0XFF,0X0B,0XEE,0X68,0XE6,0X06,0XDD,0XC5,

36060XDD,0XC3,0XE5,0XE3,0XE5,0XC3,0XE5,0XC3,0XED,0XE2,0XEE,0X02,0XED,0XE1,0XED,0XE1,

36070XDD,0X61,0XDD,0X42,0XC4,0XA1,0XA3,0XC0,0X9B,0XC0,0XB4,0XE4,0XE6,0X8B,0XFF,0XAF,

36080XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

36090XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

36100XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEF,0XFF,0XF1,

36110XF7,0X93,0XF7,0X95,0XFF,0XFA,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

36120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

36220XFF,0XFD,0XFF,0XFA,0XFF,0XF8,0XFF,0XD6,0XFF,0XD4,0XFF,0XD2,0XFF,0XF0,0XFF,0XEF,

36230XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XCE,

36240XFF,0X8D,0XF7,0X0B,0XE6,0X48,0XE5,0XE6,0XE6,0X06,0XEE,0X26,0XEE,0X25,0XF6,0X65,

36250XF6,0X66,0XFE,0X45,0XFE,0X65,0XFE,0X43,0XED,0XE1,0XED,0XC1,0XED,0XE2,0XE5,0X82,

36260XD5,0X42,0XBC,0X81,0X93,0X60,0X8B,0X60,0XB4,0XC4,0XF7,0X0D,0XFF,0XCF,0XFF,0XF0,

36270XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

36280XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

36290XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEF,0XFF,0XB0,0XF7,0X93,

36300XF7,0X55,0XFF,0XFB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

36400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XFF,0XF7,

36410XFF,0XD5,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

36420XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XAD,0XF7,0X2A,0XE6,0X67,

36430XDD,0XE6,0XEE,0X06,0XF6,0X48,0XF6,0X68,0XFE,0XC9,0XFE,0XA8,0XFE,0X67,0XFE,0X46,

36440XFE,0X46,0XFE,0X45,0XFE,0X44,0XFE,0X44,0XFE,0X44,0XED,0XE3,0XED,0XC4,0XDD,0X44,

36450XA3,0XC0,0X83,0X00,0X8B,0X60,0XD5,0XE8,0XF7,0X4D,0XFF,0XF0,0XFF,0XCF,0XFF,0XCF,

36460XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,

36470XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

36480XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEF,0XF7,0XB0,0XE6,0XF1,0XFF,0XF8,

36490XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

36590XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XFF,0XF8,0XFF,0XF4,0XFF,0XF1,0XFF,0XF0,

36600XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,

36610XFF,0XEF,0XFF,0XEE,0XFF,0X6C,0XF7,0X2A,0XEE,0X87,0XDD,0XE4,0XE6,0X05,0XFE,0X88,

36620XFE,0XA9,0XF6,0X48,0XFE,0XC9,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X87,

36630XFE,0X87,0XFE,0X86,0XF6,0X44,0XF6,0X24,0XED,0XE4,0XE5,0XC5,0XD5,0X45,0XAC,0X21,

36640X72,0X80,0X94,0X01,0XE6,0XAB,0XFF,0XCF,0XFF,0XCF,0XFF,0XCF,0XFF,0XCF,0XFF,0XEE,

36650XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

36660XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

36670XFF,0XEE,0XFF,0XCD,0XFF,0XED,0XF7,0X8E,0XEF,0X2F,0XEF,0X33,0XFF,0XF9,0XFF,0XFC,

36680XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

36780XFF,0XFB,0XFF,0XD8,0XFF,0XD4,0XFF,0XF2,0XFF,0XEF,0XFF,0XEE,0XFF,0XCE,0XFF,0XEE,

36790XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XCD,

36800XFF,0X4B,0XF6,0XC8,0XD5,0XA3,0XEE,0X05,0XF6,0X67,0XFE,0XC8,0XFE,0XC9,0XFE,0X89,

36810XF6,0X88,0XFE,0XA8,0XFE,0XA9,0XFE,0X89,0XFE,0X69,0XFE,0X89,0XFE,0X88,0XFE,0XA8,

36820XF6,0X86,0XFE,0XA6,0XFE,0X66,0XEE,0X06,0XE5,0XC7,0XC4,0XC4,0X93,0X80,0X83,0X20,

36830XBD,0X46,0XF7,0X4D,0XFF,0XCF,0XFF,0XEF,0XFF,0XCE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

36840XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

36850XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCE,0XFF,0XEE,0XFF,0XCE,0XFF,0XCD,

36860XFF,0XCD,0XFF,0XCE,0XEF,0X4E,0XD6,0X8E,0XFF,0XB6,0XFF,0XFB,0XFF,0XFD,0XFF,0XFF,

36870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

36960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFC,0XFF,0XF8,0XFF,0XD5,

36970XFF,0XD2,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

36980XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0X8C,0XF6,0XA8,0XDD,0XE5,

36990XDD,0XA4,0XEE,0X25,0XF6,0X67,0XFE,0X87,0XFE,0XA9,0XFE,0XEA,0XFE,0X88,0XFE,0XA9,

37000XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XFE,0X87,

37010XFE,0X86,0XFE,0X67,0XF6,0X27,0XE5,0XA7,0XBC,0X84,0X8B,0X20,0X9C,0X21,0XEE,0XEB,

37020XFF,0X8E,0XFF,0XEF,0XFF,0XCE,0XFF,0XEE,0XF7,0XCC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,

37030XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

37040XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XCE,0XFF,0XCD,0XFF,0XED,0XFF,0XCD,

37050XFF,0XAE,0XCE,0X4C,0XE6,0XF2,0XFF,0XF9,0XFF,0XDD,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,

37060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37150XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF9,0XFF,0XD4,0XFF,0XD1,0XFF,0XCF,0XFF,0XEE,

37160XFF,0XED,0XFF,0XEE,0XFF,0XCF,0XFF,0XEF,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,

37170XFF,0XED,0XFF,0XED,0XFF,0XCD,0XF7,0X0A,0XE6,0X06,0XD5,0X43,0XE5,0XE5,0XF6,0X66,

37180XFE,0X87,0XF6,0X67,0XFE,0X88,0XFE,0XA9,0XFE,0X89,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,

37190XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XFE,0X88,0XFE,0XA8,0XFE,0XA8,

37200XFE,0X67,0XF6,0X48,0XDD,0X87,0XAC,0X01,0X83,0X60,0XD6,0X28,0XFF,0XAE,0XFF,0XCE,

37210XFF,0XEE,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,

37220XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,

37230XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCE,0XFF,0XAD,0XFF,0XCF,0XCE,0X4B,

37240XCE,0X4F,0XF7,0X77,0XFF,0XFC,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

37340XFF,0XF9,0XFF,0XF5,0XFF,0XD1,0XFF,0XCF,0XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XEE,

37350XFF,0XCF,0XFF,0XCF,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XED,0XFF,0XCD,

37360XFF,0X8C,0XE6,0X68,0XD5,0XA5,0XCD,0X43,0XEE,0X06,0XF6,0X46,0XF6,0X67,0XFE,0X67,

37370XFE,0X88,0XF6,0X69,0XFE,0X8A,0XFE,0X8A,0XFE,0X8A,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

37380XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,

37390XEE,0X08,0XCD,0X24,0X93,0XA0,0XBD,0X65,0XFF,0X4C,0XFF,0XCD,0XFF,0XED,0XFF,0XED,

37400XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

37410XFF,0XCD,0XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XCC,

37420XFF,0XCD,0XFF,0XCD,0XFF,0XAD,0XFF,0XCE,0XFF,0XAE,0XE6,0XED,0XC5,0XCC,0XDE,0XB2,

37430XFF,0XBA,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XFF,0XD5,0XFF,0XB2,

37530XFF,0XCF,0XFF,0XCE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XCE,0XFF,0XCE,

37540XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XF7,0X0A,0XD5,0XA5,

37550XC5,0X03,0XCD,0X44,0XE5,0XC5,0XEE,0X06,0XF6,0X47,0XFE,0X88,0XFE,0X89,0XFE,0X69,

37560XFE,0X6A,0XFE,0X6A,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XFE,0XA8,

37570XFE,0X89,0XFE,0XCA,0XFE,0X89,0XFE,0X88,0XFE,0XA9,0XFE,0X88,0XF6,0X68,0XE5,0XE7,

37580XB4,0XA3,0XAC,0XC3,0XEE,0XEB,0XFF,0XAD,0XFF,0XCD,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,

37590XFF,0XEC,0XFF,0XED,0XFF,0XCC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

37600XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XEC,0XFF,0XEC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,

37610XFF,0XAD,0XFF,0XAE,0XFF,0XCE,0XEF,0X0D,0XBD,0XAA,0XBD,0XAD,0XF7,0X57,0XFF,0XFC,

37620XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37710XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0XD7,0XFF,0XB2,0XF7,0XAF,0XFF,0XCE,0XFF,0XCD,

37720XFF,0XCC,0XFF,0XCC,0XFF,0XEC,0XFF,0XCD,0XFF,0XCE,0XFF,0XCE,0XFF,0XCE,0XFF,0XED,

37730XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0X8C,0XDE,0X28,0XB4,0XA3,0XAC,0X61,0XC5,0X03,

37740XD5,0X64,0XE5,0XE6,0XEE,0X47,0XF6,0X68,0XFE,0X68,0XFE,0X69,0XFE,0X69,0XFE,0X69,

37750XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XFE,0X88,0XFE,0XA9,

37760XFE,0XAA,0XFE,0XAA,0XFE,0X89,0XFE,0X89,0XFE,0XAA,0XF6,0X69,0XD5,0XC7,0XAC,0XA3,

37770XE6,0XAA,0XFF,0XAD,0XFF,0XCD,0XF7,0XCC,0XFF,0XED,0XFF,0XEC,0XFF,0XED,0XFF,0XCC,

37780XFF,0XCC,0XFF,0XCC,0XFF,0XAC,0XFF,0XCC,0XFF,0XAD,0XFF,0XCD,0XFF,0XAD,0XFF,0XAD,

37790XFF,0XAC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XAC,0XFF,0XAD,0XFF,0XAD,0XFF,0X8D,

37800XFF,0XCE,0XEF,0X0C,0XB5,0X68,0XAD,0X09,0XE6,0X93,0XFF,0XDB,0XFF,0XDD,0XFF,0XFF,

37810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

37890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,

37900XFF,0XF7,0XF7,0XB3,0XF7,0X90,0XF7,0XAE,0XFF,0XAD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,

37910XFF,0XCC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCE,0XFF,0XCE,0XFF,0XCD,0XFF,0XCD,

37920XFF,0XAD,0XFF,0X2C,0XC5,0X25,0X9B,0XE0,0X9B,0XC0,0XAC,0X42,0XBC,0XA3,0XD5,0X85,

37930XE5,0XE7,0XF6,0X27,0XFE,0X27,0XFE,0X48,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0XA9,

37940XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X8A,

37950XF6,0X8B,0XFE,0X8C,0XFE,0X8C,0XF6,0X6B,0XE6,0X2A,0XC5,0X46,0XD6,0X08,0XFF,0XAE,

37960XF7,0X6C,0XFF,0XED,0XF7,0XCC,0XF7,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

37970XFF,0XAC,0XFF,0XAC,0XFF,0XCC,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,

37980XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0X8C,0XFF,0XAC,0XFF,0X8C,0XFF,0X8D,

37990XAD,0X05,0XAD,0X08,0XC5,0X8E,0XFF,0X79,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFC,0XFF,0XF9,0XFF,0XD4,0XF7,0X90,

38090XF7,0X8E,0XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XCC,0XFF,0XCB,0XFF,0XCB,

38100XFF,0XCC,0XFF,0XCD,0XFF,0XAE,0XFF,0XAE,0XFF,0XAE,0XFF,0XAE,0XFF,0X8D,0XF6,0XEB,

38110XB4,0X83,0X8B,0X40,0X8B,0X40,0X93,0X60,0X9B,0XE1,0XB4,0XA3,0XCD,0X66,0XE5,0XE7,

38120XF6,0X28,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XFE,0X89,0XFE,0X89,

38130XFE,0X69,0XFE,0X8A,0XFE,0X69,0XFE,0X69,0XFE,0XAB,0XFE,0XAD,0XF6,0XAE,0XEE,0X6E,

38140XEE,0X4D,0XF6,0X6E,0XEE,0X6E,0XD5,0XEA,0XD6,0X09,0XFF,0X8D,0XF7,0X8C,0XFF,0XCD,

38150XFF,0XCD,0XFF,0XCC,0XFF,0XCD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAB,0XFF,0XAC,

38160XFF,0XAC,0XFF,0XAD,0XFF,0X8D,0XFF,0XAD,0XFF,0XAD,0XFF,0X8C,0XFF,0X8C,0XFF,0XAC,

38170XFF,0XAC,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8D,0XBD,0X46,0XA4,0X86,

38180XAC,0XEA,0XE6,0XB4,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

38270XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XB6,0XF7,0X70,0XFF,0X8E,0XFF,0X8D,0XFF,0X8C,

38280XFF,0X8C,0XFF,0XAC,0XFF,0XAC,0XFF,0XCB,0XFF,0XCA,0XFF,0XCB,0XFF,0XAC,0XFF,0XAC,

38290XFF,0X8D,0XFF,0XAE,0XFF,0XAE,0XFF,0X8E,0XFF,0X6E,0XEE,0X6B,0XAC,0X03,0X8B,0X00,

38300X8B,0X00,0X7A,0XC0,0X7B,0X00,0X93,0XC2,0XAC,0X84,0XC5,0X46,0XE5,0XC8,0XF6,0X48,

38310XF6,0X67,0XFE,0X88,0XFE,0X88,0XF6,0X68,0XFE,0X89,0XFE,0X69,0XFE,0X8A,0XFE,0X6A,

38320XFE,0X8B,0XF6,0X8C,0XF6,0X8D,0XEE,0X8F,0XF6,0XB1,0XFE,0XF3,0XFF,0X34,0XFF,0X34,

38330XFF,0X75,0XEE,0XF1,0XD6,0X2B,0XFF,0X4D,0XFF,0X6C,0XFF,0X8C,0XFF,0X8C,0XFF,0XAD,

38340XFF,0XAC,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0XAC,0XFF,0X8C,

38350XFF,0X8D,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,

38360XFF,0X6C,0XFF,0X8C,0XFF,0X6C,0XFF,0X2C,0XC5,0X67,0X9C,0X45,0X94,0X26,0XC5,0XAF,

38370XF7,0X99,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

38380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XFA,

38460XFF,0XD7,0XFF,0X93,0XFF,0X4F,0XFF,0X6D,0XFF,0X4C,0XFF,0X6C,0XFF,0X8C,0XFF,0X8C,

38470XFF,0XAB,0XFF,0XAB,0XFF,0XAB,0XFF,0XAB,0XFF,0XAC,0XFF,0X8D,0XFF,0X8C,0XFF,0X8D,

38480XFF,0X8D,0XFF,0X8E,0XFF,0X6E,0XEE,0X4A,0XAB,0XE2,0X8B,0X00,0X8A,0XE0,0X72,0X80,

38490X6A,0X80,0X72,0XE1,0X83,0X82,0XA4,0X44,0XC5,0X27,0XDD,0XC8,0XEE,0X28,0XF6,0X47,

38500XF6,0X48,0XFE,0X68,0XFE,0X69,0XFE,0X89,0XFE,0X8A,0XFE,0X8B,0XEE,0X4C,0XEE,0X8E,

38510XF6,0XD1,0XF7,0X14,0XFF,0X56,0XFF,0X98,0XFF,0XB9,0XFF,0XDA,0XFF,0XD9,0XEF,0X34,

38520XD6,0X4C,0XF7,0X4D,0XFF,0X6C,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XFF,0X8C,

38530XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X6C,

38540XFF,0X4C,0XFF,0X4C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X4C,

38550XFF,0X2C,0XFF,0X0C,0XC5,0X47,0X9C,0X24,0X94,0X05,0XA4,0XAB,0XEF,0X17,0XFF,0XFC,

38560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XB8,0XFF,0X94,0XFF,0X50,

38650XF7,0X2E,0XFF,0X4D,0XFF,0X4C,0XFF,0X6C,0XFF,0X6B,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,

38660XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X6C,0XFF,0X8C,

38670XFF,0X6C,0XE6,0X49,0XAC,0X22,0X93,0X60,0X8B,0X00,0X72,0XA0,0X62,0X40,0X5A,0X40,

38680X6A,0XA1,0X83,0X42,0XA4,0X25,0XC5,0X28,0XE5,0XC8,0XF6,0X28,0XF6,0X48,0XFE,0X88,

38690XFE,0X68,0XFE,0X89,0XF6,0X6A,0XEE,0X6C,0XE6,0X6E,0XF6,0XF3,0XFF,0X77,0XFF,0XDA,

38700XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XF7,0X76,0XDE,0X6E,0XEE,0XED,

38710XFF,0X4D,0XFF,0X6C,0XFF,0X4C,0XFF,0X4C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,

38720XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X6C,0XFF,0X6C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,

38730XFF,0X4C,0XFF,0X4B,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X2C,0XFF,0X2C,0XFF,0X0D,

38740XBD,0X06,0X93,0XC3,0X93,0XE5,0X8B,0XE7,0XCE,0X12,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,

38750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38830XFF,0XDF,0XFF,0XDE,0XFF,0XDB,0XFF,0X96,0XFF,0X51,0XF7,0X2E,0XFF,0X2D,0XFF,0X4D,

38840XFF,0X2C,0XFF,0X4C,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X8C,0XFF,0X6C,0XFF,0X6D,

38850XFF,0X6D,0XFF,0X6C,0XFF,0X8C,0XFF,0X6B,0XFF,0X8B,0XFF,0X6B,0XFF,0X6C,0XE6,0X68,

38860XB4,0XA2,0XA3,0XC1,0X8B,0X20,0X7A,0XC0,0X62,0X60,0X52,0X00,0X52,0X00,0X62,0X61,

38870X7B,0X23,0XA4,0X26,0XC4,0XE7,0XDD,0XA8,0XE6,0X07,0XF6,0X47,0XF6,0X88,0XF6,0XA9,

38880XEE,0X8B,0XEE,0XAF,0XFF,0X34,0XFF,0X78,0XFF,0XDB,0XFF,0XFD,0XFF,0XFD,0XF7,0XFE,

38890XF7,0XFE,0XFF,0XFE,0XFF,0XFC,0XFF,0X97,0XDE,0X6F,0XE6,0XAD,0XFF,0X2D,0XFF,0X4C,

38900XFF,0X4C,0XFF,0X4B,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4B,0XFF,0X6B,0XFF,0X6B,

38910XFF,0X6B,0XFF,0X4B,0XFF,0X4C,0XFF,0X4B,0XFF,0X2B,0XFF,0X4B,0XFF,0X2B,0XFF,0X2B,

38920XFF,0X2B,0XFF,0X4B,0XFF,0X4B,0XFF,0X2C,0XFF,0X2C,0XFF,0X0D,0XB4,0XA5,0X83,0X41,

38930X8B,0XC5,0X8B,0XC7,0X9C,0XAC,0XEF,0X38,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

38940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

38990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDD,

39020XFF,0XB9,0XFF,0X54,0XF7,0X2F,0XF7,0X0C,0XFF,0X2C,0XFF,0X2D,0XFF,0X2C,0XFF,0X4C,

39030XFF,0X4B,0XFF,0X6B,0XFF,0X6C,0XFF,0X6C,0XFF,0X4D,0XFF,0X4D,0XFF,0X4D,0XFF,0X4C,

39040XFF,0X4B,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X4B,0XEE,0XA9,0XC5,0X03,0XA3,0XE1,

39050X8B,0X40,0X83,0X00,0X6A,0XA1,0X5A,0X20,0X49,0XC0,0X49,0XC0,0X62,0X41,0X83,0X24,

39060XA4,0X27,0XC5,0X08,0XD5,0XA8,0XDE,0X08,0XEE,0X89,0XE6,0X69,0XE6,0X6D,0XEE,0XD2,

39070XFF,0XB9,0XFF,0XDC,0XFF,0XFD,0XFF,0XFE,0XF7,0XFE,0XF7,0XFF,0XF7,0XFF,0XFF,0XFF,

39080XFF,0XFD,0XFF,0XB9,0XDE,0X70,0XE6,0X8D,0XFF,0X2D,0XFF,0X2C,0XFF,0X2C,0XFF,0X2B,

39090XFF,0X4C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,

39100XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

39110XFF,0X0B,0XFF,0X0B,0XFF,0X0C,0XF6,0XCD,0XA4,0X44,0X72,0XC0,0X8B,0XA5,0X8B,0XE7,

39120X83,0XC8,0XBD,0XB1,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDC,0XFF,0X77,0XF7,0X32,

39210XF7,0X0D,0XF7,0X0B,0XFF,0X0C,0XFF,0X0C,0XFF,0X0C,0XFF,0X2B,0XFF,0X2A,0XFF,0X4A,

39220XFF,0X4B,0XFF,0X4C,0XFF,0X2C,0XFF,0X2C,0XFF,0X2C,0XFF,0X2C,0XFF,0X2B,0XFF,0X6B,

39230XFF,0X4B,0XFF,0X4B,0XF7,0X2A,0XFF,0X0B,0XCD,0X65,0X9B,0XE0,0X93,0XA1,0X8B,0X61,

39240X7B,0X02,0X62,0X81,0X52,0X00,0X49,0XA0,0X49,0XC0,0X62,0X42,0X7A,0XE4,0X9B,0XE6,

39250XBD,0X07,0XCD,0XA8,0XDE,0X4A,0XDE,0X4B,0XEE,0XF1,0XFF,0XB8,0XFF,0XDB,0XFF,0XDE,

39260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XBA,

39270XDE,0X70,0XE6,0X8D,0XFF,0X2D,0XFF,0X0C,0XFF,0X2C,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

39280XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

39290XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFE,0XEB,0XFE,0XEB,

39300XFE,0XEC,0XF6,0XAC,0X9B,0XE4,0X6A,0XA0,0X83,0X64,0X8B,0XC7,0X83,0XC7,0X94,0X4B,

39310XFF,0X9A,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,

39320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39390XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XBB,0XF7,0X14,0XF6,0XF0,0XF7,0X0D,0XF6,0XEB,

39400XFF,0X0C,0XFE,0XEC,0XFF,0X0B,0XFF,0X0B,0XFF,0X2A,0XFF,0X2A,0XFF,0X2B,0XFF,0X2C,

39410XFF,0X2C,0XFF,0X2C,0XFF,0X2C,0XFF,0X2C,0XFF,0X0B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

39420XF7,0X0B,0XFF,0X4D,0XDD,0XE7,0XA4,0X01,0X93,0XC0,0X8B,0X81,0X83,0X62,0X73,0X02,

39430X5A,0X61,0X52,0X00,0X49,0XC0,0X49,0XC1,0X5A,0X22,0X73,0X04,0X94,0X26,0XAC,0XE8,

39440XC5,0X8A,0XD6,0X6F,0XF7,0X56,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

39450XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XB9,0XD6,0X50,0XE6,0X8D,

39460XFF,0X0D,0XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

39470XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,0XFF,0X0A,

39480XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFF,0X0B,0XFE,0XEA,0XFE,0XEB,0XFE,0XEC,0XEE,0X6C,

39490X8B,0X62,0X6A,0X60,0X7B,0X24,0X7B,0X65,0X83,0XC7,0X83,0XC8,0XD6,0X34,0XFF,0XDC,

39500XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,

39580XFF,0XDD,0XFF,0X99,0XF6,0XF2,0XF6,0XCE,0XFF,0X0C,0XFE,0XEB,0XFF,0X0C,0XFE,0XEC,

39590XFE,0XEB,0XFF,0X0B,0XFF,0X0A,0XFF,0X2A,0XFF,0X0B,0XFF,0X2C,0XFF,0X2B,0XFF,0X2B,

39600XFF,0X2B,0XFF,0X0B,0XFF,0X2B,0XFF,0X0B,0XFF,0X2C,0XF7,0X0B,0XFF,0X4C,0XFF,0X6D,

39610XE6,0X69,0XA4,0X42,0X93,0XC0,0X93,0XA1,0X8B,0XA2,0X83,0X63,0X72,0XE2,0X62,0X82,

39620X52,0X01,0X49,0XC1,0X49,0XA0,0X5A,0X21,0X73,0X03,0X8B,0XE7,0XAC,0XEB,0XE6,0XB4,

39630XFF,0XDB,0XFF,0X9D,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

39640XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XD6,0X4F,0XEE,0X8D,0XFF,0X0D,0XFE,0XEB,

39650XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

39660XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFF,0X0A,0XFF,0X0A,0XFE,0XEA,0XFE,0XCA,

39670XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCB,0XFF,0X0D,0XE6,0X2B,0X72,0XC0,0X5A,0X20,

39680X72,0XE3,0X73,0X04,0X7B,0X65,0X8B,0XE8,0XA4,0XCD,0XFF,0XBA,0XFF,0XFD,0XFF,0XFE,

39690XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XFF,0X57,

39770XEE,0XB0,0XF6,0XCD,0XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFE,0XEA,

39780XFF,0X0A,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,0XFF,0X0B,0XFF,0X0B,

39790XFF,0X0A,0XFF,0X0A,0XFF,0X2B,0XFF,0X2B,0XF7,0X2B,0XFF,0X4D,0XF6,0XEC,0XB4,0XC4,

39800X8B,0X80,0X93,0XA1,0X93,0XA2,0X8B,0XA3,0X83,0X84,0X7B,0X24,0X62,0X83,0X5A,0X22,

39810X49,0XA0,0X49,0XA0,0X5A,0X21,0X6A,0XC4,0XAC,0XCD,0XFF,0X59,0XFF,0XBD,0XFF,0XDF,

39820XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

39830XFF,0XFE,0XF7,0X79,0XDE,0X50,0XEE,0XAD,0XFF,0X0C,0XFE,0XCA,0XFE,0XEA,0XFE,0XEA,

39840XFE,0XEA,0XFF,0X0B,0XFF,0X0B,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,

39850XFE,0XCA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XC9,0XFE,0XEA,0XFE,0XCA,0XFE,0XEA,

39860XFE,0XCA,0XFE,0XCB,0XFE,0XED,0XCD,0X89,0X62,0X60,0X5A,0X20,0X6A,0XC3,0X72,0XE4,

39870X83,0X85,0X83,0X86,0X83,0XC9,0XEF,0X38,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

39880XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

39950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XF6,0XF4,0XEE,0XAE,0XF6,0XCB,

39960XFE,0XEA,0XFE,0XEA,0XFE,0XEB,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFF,0X0A,0XFF,0X0A,

39970XFE,0XEB,0XFF,0X0B,0XFF,0X0A,0XFF,0X0A,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

39980XFF,0X0A,0XF7,0X0A,0XF7,0X0B,0XFF,0X2C,0XFF,0X2C,0XCD,0X87,0X93,0XA0,0X8B,0X80,

39990X93,0XC2,0X9B,0XE4,0X93,0XE5,0X8B,0X85,0X7B,0X25,0X62,0X83,0X5A,0X01,0X51,0XC1,

40000X49,0XA0,0X5A,0X44,0XC5,0X93,0XFF,0XBC,0XFF,0XBE,0XFF,0XBF,0XFF,0XDF,0XFF,0XFF,

40010XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0X79,

40020XDE,0X50,0XEE,0X8D,0XFE,0XCC,0XFE,0XAA,0XFE,0XCA,0XFE,0XC9,0XFE,0XEA,0XFE,0XEA,

40030XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XC9,

40040XFE,0XC9,0XFE,0XE9,0XFE,0XC9,0XFE,0XEA,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,0XFE,0XAA,

40050XF6,0XAC,0XB4,0XE7,0X62,0X20,0X52,0X00,0X62,0X83,0X62,0X83,0X7B,0X24,0X7B,0X65,

40060X7B,0X87,0XD6,0X75,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,

40070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40140XFF,0XFF,0XFF,0XFE,0XFF,0X99,0XE6,0X91,0XEE,0X8C,0XF6,0XAA,0XF6,0XC9,0XFE,0XE9,

40150XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEB,0XFE,0XEB,

40160XFE,0XEB,0XFE,0XEA,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFF,0X0A,0XF6,0XEA,

40170XF7,0X0A,0XF6,0XEA,0XFF,0X6D,0XEE,0X8B,0XA4,0X02,0X8B,0X60,0X93,0XA2,0X9C,0X04,

40180X9C,0X05,0X9C,0X26,0X8B,0XA5,0X83,0X44,0X6A,0X82,0X5A,0X22,0X49,0XA1,0X62,0XA7,

40190XE6,0X98,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0X79,0XDE,0X4F,0XEE,0XAD,

40210XFE,0XCB,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

40220XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC8,

40230XFE,0XA9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0XCA,0XF6,0X8A,0XEE,0X8C,0XA4,0X25,

40240X62,0X81,0X52,0X01,0X5A,0X42,0X62,0X83,0X6A,0XE4,0X73,0X45,0X73,0X46,0XB5,0X71,

40250XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFD,

40330XFF,0X78,0XE6,0X70,0XEE,0X8B,0XF6,0XA9,0XF6,0XC8,0XFE,0XC8,0XFE,0XCA,0XFE,0XCA,

40340XFE,0XCA,0XFE,0XCA,0XFE,0XEA,0XFE,0XEA,0XFE,0XCB,0XFE,0XEB,0XFE,0XCB,0XFE,0XEA,

40350XFE,0XEA,0XFE,0XEA,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFF,0X0A,0XF6,0XE9,0XF6,0XEA,

40360XFF,0X4C,0XFF,0X2D,0XBC,0XE5,0X8B,0X60,0X93,0XA2,0XA4,0X04,0XA4,0X24,0XA4,0X46,

40370XA4,0X45,0X93,0XC5,0X83,0X45,0X6A,0X84,0X5A,0X24,0X8B,0XEC,0XFF,0X7C,0XFF,0XDE,

40380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40390XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0X58,0XDE,0X2F,0XEE,0XAD,0XFE,0XAB,0XFE,0XA9,

40400XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC8,

40410XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XC8,0XFE,0XA8,0XFE,0XA8,0XFE,0X88,

40420XFE,0X88,0XFE,0X89,0XFE,0XA9,0XF6,0X8A,0XE6,0X0A,0X9C,0X05,0X72,0XC3,0X51,0XE0,

40430X52,0X01,0X5A,0X63,0X6A,0XC3,0X73,0X25,0X73,0X26,0X9C,0XAE,0XFF,0XDD,0XFF,0XDE,

40440XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,0XF7,0X36,0XE6,0X4E,

40520XF6,0X8B,0XF6,0XA8,0XF6,0XC8,0XFE,0XA8,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XCA,

40530XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

40540XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFF,0X0A,0XF6,0XC9,0XF6,0XC9,0XFE,0XEB,0XFF,0X4E,

40550XEE,0X6B,0X8B,0X60,0X93,0XA1,0X9B,0XC2,0XAC,0X64,0XBC,0XE6,0XAC,0X85,0X9C,0X25,

40560X93,0XE6,0X7B,0X25,0X62,0XC5,0XA4,0XCF,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

40570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

40580XFF,0XFD,0XF7,0X58,0XD6,0X2E,0XEE,0XAC,0XF6,0XAA,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,

40590XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XFE,0XA8,0XFE,0XA8,

40600XFE,0X88,0XFE,0X88,0XFE,0XA8,0XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X89,

40610XF6,0X48,0XFE,0XAB,0XBC,0XE6,0XB4,0XC8,0X52,0X00,0X51,0XE1,0X49,0XC0,0X52,0X43,

40620X5A,0X63,0X6A,0XE4,0X6B,0X06,0X94,0X4C,0XFF,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

40630XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40700XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,0XE6,0X93,0XDE,0X0D,0XF6,0XAA,0XFE,0XA8,

40710XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,

40720XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XCA,

40730XFE,0XA9,0XFE,0XEA,0XF6,0XA9,0XFE,0XC9,0XF6,0XCA,0XFF,0X2D,0XFE,0XED,0XCD,0X67,

40740X8B,0X80,0XA4,0X02,0XAC,0X63,0XAC,0X43,0XBC,0XC5,0XB4,0XC6,0X9C,0X45,0X8B,0XE6,

40750X7B,0X46,0XAD,0X30,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XEF,0X37,

40770XDE,0X2E,0XEE,0X8C,0XFE,0XAA,0XFE,0XA8,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XF6,0XA9,

40780XF6,0XA9,0XF6,0XA9,0XFE,0XA9,0XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X88,

40790XF6,0X87,0XF6,0X87,0XFE,0XA8,0XF6,0X88,0XFE,0X89,0XFE,0X68,0XFE,0X89,0XE5,0XE8,

40800XCD,0X69,0XA4,0X47,0X51,0XC0,0X49,0XA1,0X49,0XC1,0X52,0X02,0X52,0X42,0X62,0XA4,

40810X62,0XE6,0X84,0X0B,0XF7,0X7B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

40820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

40890XFF,0XFE,0XFF,0XDB,0XD6,0X10,0XDE,0X0C,0XF6,0X8A,0XF6,0X88,0XF6,0X88,0XF6,0X88,

40900XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

40910XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0XAA,0XFE,0XA9,0XFE,0XC9,

40920XF6,0X88,0XFE,0XCA,0XF6,0X89,0XFE,0XEB,0XFF,0X4E,0XFF,0X0D,0XA4,0X21,0X9C,0X01,

40930XAC,0X42,0XB4,0XA4,0XBC,0XC5,0XB4,0XC6,0XAC,0X85,0XA4,0X66,0X94,0X07,0XBD,0X8F,

40940XFF,0XDB,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

40950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XEF,0X36,0XDE,0X4D,0XEE,0X8B,

40960XFE,0X89,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XF6,0X89,0XF6,0X89,0XF6,0X89,

40970XFE,0X89,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XF6,0X87,0XF6,0X87,

40980XFE,0X88,0XF6,0X68,0XFE,0X68,0XF6,0X48,0XFE,0X69,0XD5,0X87,0XDE,0X0B,0X83,0X63,

40990X49,0XC0,0X49,0XC2,0X41,0XC1,0X4A,0X02,0X52,0X02,0X5A,0X64,0X62,0XC5,0X7B,0XAA,

41000XF7,0X5B,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

41010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41070XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XBB,

41080XCD,0XAE,0XE6,0X2B,0XF6,0X89,0XF6,0X88,0XF6,0X68,0XF6,0X69,0XFE,0X89,0XFE,0X89,

41090XFE,0X89,0XF6,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,

41100XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XF6,0X68,0XFE,0XA9,

41110XEE,0X69,0XF6,0X8A,0XFF,0X2C,0XFF,0X4D,0XE6,0X29,0XAC,0X62,0X9B,0XE0,0XB4,0XA3,

41120XBC,0XC5,0XB4,0XC5,0XBD,0X05,0XAC,0XA5,0XA4,0X68,0XCD,0XD0,0XFF,0XDB,0XFF,0XFE,

41130XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41140XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XEF,0X15,0XDE,0X4D,0XEE,0X8A,0XF6,0X88,0XFE,0X67,

41150XFE,0X67,0XFE,0X68,0XF6,0X88,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X89,

41160XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X68,0XF6,0X87,0XF6,0X87,0XF6,0X88,0XEE,0X47,

41170XFE,0X68,0XFE,0X69,0XE5,0XE7,0XE5,0XE8,0XD5,0XCA,0X72,0XC1,0X49,0XA0,0X49,0XC2,

41180X41,0XC2,0X49,0XE2,0X49,0XE2,0X52,0X43,0X5A,0X85,0X73,0X49,0XEF,0X5B,0XFF,0XFF,

41190XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBD,0XFF,0XDB,0XCD,0X8D,0XE6,0X4B,

41270XEE,0X68,0XF6,0X67,0XF6,0X48,0XF6,0X49,0XFE,0X69,0XF6,0X69,0XF6,0X68,0XF6,0X88,

41280XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X89,0XF6,0X89,0XFE,0X89,0XFE,0X89,

41290XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X89,

41300XF6,0XCA,0XFF,0X0C,0XFF,0X4D,0XCD,0X86,0XA4,0X20,0XAC,0X61,0XB4,0XA3,0XBC,0XE4,

41310XC5,0X25,0XB4,0XA5,0XB4,0XC9,0XCD,0XB0,0XFF,0XBB,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,

41320XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,

41330XFF,0XDB,0XE6,0XB2,0XDE,0X6C,0XEE,0X89,0XEE,0X67,0XF6,0X66,0XFE,0X67,0XFE,0X48,

41340XFE,0X69,0XF6,0X69,0XF6,0X69,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X69,0XF6,0X69,

41350XF6,0X48,0XF6,0X68,0XF6,0X67,0XEE,0X47,0XEE,0X47,0XF6,0X88,0XFE,0X69,0XEE,0X28,

41360XE5,0XE8,0XF6,0X8C,0XAC,0X86,0X62,0X60,0X52,0X01,0X49,0XE2,0X49,0XC2,0X49,0XC2,

41370X41,0XC1,0X4A,0X23,0X4A,0X24,0X73,0X8B,0XEF,0X5C,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

41380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41450XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0XFF,0XBB,0XC5,0X6C,0XE6,0X4B,0XEE,0X47,0XF6,0X67,

41460XF6,0X49,0XF6,0X29,0XF6,0X69,0XF6,0X49,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X88,

41470XF6,0X88,0XF6,0X88,0XF6,0X89,0XF6,0X89,0XF6,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X88,

41480XF6,0X88,0XF6,0X88,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XEE,0X48,0XF6,0XAA,

41490XFF,0X4C,0XFE,0XEB,0XCD,0X65,0XAC,0X41,0XAC,0X61,0XBC,0XE3,0XBC,0XC3,0XBC,0XE6,

41500XAC,0X88,0XCD,0X8F,0XFF,0X9B,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

41510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XB9,0XE6,0X91,

41520XDE,0X4C,0XEE,0X89,0XEE,0X66,0XF6,0X66,0XFE,0X67,0XFE,0X48,0XFE,0X49,0XF6,0X49,

41530XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X69,0XF6,0X49,0XF6,0X49,0XF6,0X48,

41540XEE,0X67,0XEE,0X67,0XEE,0X47,0XF6,0X68,0XF6,0X48,0XED,0XE8,0XF6,0X4A,0XDD,0XC9,

41550X93,0XA3,0X6A,0XA1,0X62,0X83,0X4A,0X02,0X49,0XE2,0X41,0XA1,0X41,0XC1,0X4A,0X02,

41560X41,0XE3,0X7B,0XAC,0XF7,0X9D,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

41640XFF,0XBE,0XFF,0XBA,0XBD,0X2B,0XE6,0X4B,0XEE,0X27,0XF6,0X67,0XF6,0X49,0XF6,0X29,

41650XF6,0X49,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

41660XF6,0X68,0XF6,0X69,0XF6,0X69,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

41670XF6,0X68,0XF6,0X68,0XF6,0X69,0XF6,0X69,0XEE,0X68,0XEE,0X69,0XF6,0XA9,0XFF,0X4C,

41680XF6,0XCA,0XC5,0X24,0XA4,0X20,0XB4,0X82,0XBC,0XE3,0XBD,0X06,0XBC,0XE8,0XC5,0X6E,

41690XFF,0X5A,0XFF,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

41700XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XFF,0X78,0XE6,0X70,0XDE,0X4B,0XEE,0X69,

41710XEE,0X66,0XF6,0X66,0XF6,0X47,0XFE,0X48,0XF6,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X68,

41720XF6,0X68,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XEE,0X47,0XF6,0X67,

41730XEE,0X67,0XEE,0X47,0XEE,0X28,0XEE,0X08,0XF6,0X6B,0XC5,0X06,0X83,0X21,0X72,0XE2,

41740X6A,0XE4,0X52,0X22,0X49,0XE2,0X41,0XE1,0X41,0XC1,0X41,0XC1,0X41,0XC3,0X83,0XCD,

41750XFF,0XBD,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XBA,

41830XBD,0X0A,0XE6,0X4B,0XE6,0X27,0XF6,0X47,0XF6,0X48,0XF6,0X29,0XF6,0X28,0XF6,0X48,

41840XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X69,

41850XF6,0X69,0XF6,0X68,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X48,0XF6,0X48,

41860XF6,0X68,0XEE,0X68,0XEE,0X68,0XEE,0X48,0XE6,0X48,0XF6,0XCA,0XFF,0X4C,0XF6,0XCA,

41870XBD,0X04,0XA4,0X20,0XAC,0X82,0XB4,0XA4,0XC5,0X69,0XBD,0X2B,0XE6,0XB6,0XFF,0XDD,

41880XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41890XFF,0XFE,0XFF,0XDB,0XF7,0X35,0XDE,0X6F,0XE6,0X4B,0XEE,0X69,0XEE,0X47,0XF6,0X67,

41900XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

41910XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X68,0XEE,0X47,0XF6,0X88,0XE6,0X07,

41920XEE,0X28,0XF6,0X6A,0XE6,0X09,0XB4,0X85,0X8B,0XA3,0X7B,0X63,0X6A,0XE4,0X5A,0X83,

41930X4A,0X02,0X4A,0X22,0X4A,0X02,0X39,0XA1,0X39,0XA3,0X8C,0X0E,0XFF,0XDE,0XFF,0XFF,

41940XFF,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

41990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42010XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XBA,0XB5,0X0A,0XE6,0X4B,

42020XE6,0X07,0XEE,0X26,0XEE,0X28,0XEE,0X08,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X48,

42030XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

42040XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X68,

42050XEE,0X68,0XEE,0X48,0XEE,0X89,0XE6,0X48,0XEE,0X89,0XFF,0X4C,0XF6,0XCB,0XC5,0X24,

42060XA4,0X20,0XAC,0XA3,0XA4,0X43,0XB5,0X09,0XDE,0X53,0XFF,0X9B,0XFF,0XDE,0XF7,0XBE,

42070XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XBA,

42080XF6,0XF3,0XE6,0X4E,0XE6,0X4A,0XEE,0X48,0XEE,0X47,0XF6,0X47,0XF6,0X28,0XF6,0X28,

42090XF6,0X28,0XF6,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X28,0XF6,0X28,

42100XF6,0X28,0XF6,0X28,0XF6,0X48,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XF6,0X49,0XF6,0X6A,

42110XD5,0X67,0XAC,0X65,0XA4,0X46,0X8B,0XC5,0X73,0X24,0X62,0XC3,0X5A,0X62,0X4A,0X22,

42120X41,0XE1,0X41,0XE2,0X39,0XA3,0XAD,0X12,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

42130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

42200XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XDA,0XBD,0X2B,0XDE,0X0A,0XE6,0X07,0XEE,0X26,

42210XEE,0X27,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X48,0XEE,0X28,0XF6,0X48,0XF6,0X48,

42220XEE,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

42230XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XEE,0X48,

42240XEE,0X68,0XE6,0X48,0XE6,0X27,0XEE,0X89,0XFF,0X4D,0XF6,0XCB,0XCD,0XA6,0XA4,0X62,

42250XA4,0X43,0XAC,0XC7,0XBD,0X4D,0XEE,0XF7,0XFF,0XDD,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,

42260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0X98,0XEE,0XD1,0XE6,0X4C,

42270XE6,0X49,0XEE,0X48,0XEE,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

42280XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XF6,0X28,0XF6,0X08,

42290XEE,0X27,0XEE,0X47,0XE5,0XE6,0XF6,0X89,0XF6,0X89,0XE6,0X08,0XCD,0X47,0XBC,0XC6,

42300XAC,0X66,0X9C,0X06,0X83,0X64,0X73,0X04,0X6A,0XC3,0X52,0X42,0X41,0XC1,0X4A,0X03,

42310X41,0XE4,0XD6,0X57,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

42390XFF,0XDD,0XFF,0XDB,0XBD,0X2C,0XCD,0XAA,0XE6,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,

42400XEE,0X08,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,

42410XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XF6,0X48,0XF6,0X48,

42420XF6,0X48,0XF6,0X48,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X28,0XEE,0X48,

42430XEE,0X69,0XE6,0X28,0XEE,0X89,0XFE,0XEB,0XFF,0X4D,0XDE,0X08,0XB4,0XE4,0X93,0XE2,

42440XAC,0XE8,0XD6,0X51,0XF7,0X9A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42450XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XF7,0X35,0XE6,0X8F,0XE6,0X2A,0XE6,0X49,0XEE,0X27,

42460XEE,0X26,0XF6,0X27,0XF6,0X07,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X47,

42470XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XF6,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X47,

42480XEE,0X27,0XFE,0XA9,0XF6,0X69,0XDD,0XA7,0XD5,0X67,0XC5,0X07,0XB4,0XA6,0XA4,0X46,

42490X8B,0XC5,0X7B,0X64,0X73,0X03,0X62,0X83,0X4A,0X22,0X41,0XC3,0X62,0XC8,0XEF,0X5B,

42500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XDB,

42580XBD,0X2D,0XC5,0X69,0XE6,0X29,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X07,0XEE,0X07,

42590XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,

42600XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X47,

42610XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XE6,0X27,0XE6,0X48,0XEE,0X89,

42620XE6,0X28,0XE6,0X49,0XFE,0XEB,0XFF,0X0C,0XF6,0XAB,0XBD,0X06,0X9C,0X23,0XB5,0X2A,

42630XF7,0X56,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,0XF7,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

42640XFF,0XDA,0XEE,0XF3,0XE6,0X4C,0XDE,0X09,0XE6,0X28,0XEE,0X27,0XEE,0X26,0XF6,0X26,

42650XF6,0X07,0XF6,0X08,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X47,

42660XEE,0X47,0XEE,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XFE,0XC9,0XF6,0X89,

42670XEE,0X07,0XDD,0XA7,0XD5,0X47,0XC5,0X27,0XC4,0XE7,0XAC,0X66,0X9C,0X06,0X8B,0XA5,

42680X73,0X03,0X6A,0XC3,0X52,0X43,0X39,0XA2,0X94,0X6E,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,

42690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XBD,0X4E,0XC5,0X6A,

42770XE6,0X09,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,

42780XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

42790XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

42800XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X27,0XE6,0X28,0XE6,0X48,0XEE,0X69,

42810XE6,0X29,0XF6,0X8B,0XFF,0X2D,0XFE,0XCC,0XCD,0XC8,0XA4,0XA5,0XBD,0XAD,0XFF,0XD9,

42820XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFB,0XFF,0XB7,0XEE,0XB0,

42830XE6,0X2B,0XE6,0X08,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X26,0XEE,0X07,0XEE,0X08,

42840XEE,0X08,0XEE,0X09,0XEE,0X08,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

42850XEE,0X07,0XEE,0X07,0XF6,0X27,0XFE,0X88,0XFE,0X88,0XF6,0X68,0XEE,0X07,0XE5,0XE8,

42860XDD,0X87,0XCD,0X27,0XC5,0X27,0XBC,0XA7,0XAC,0X66,0X9B,0XE5,0X83,0X64,0X72,0XE4,

42870X5A,0X64,0X52,0X66,0XCE,0X36,0XFF,0XFE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

42880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

42950XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XCD,0XD1,0XBD,0X2B,0XE6,0X2A,0XE5,0XE7,

42960XE5,0XE7,0XEE,0X48,0XEE,0X07,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,

42970XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

42980XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

42990XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XE6,0X28,0XE6,0X28,0XEE,0X49,0XE6,0X09,

43000XEE,0X29,0XFE,0XCC,0XFF,0XAE,0XEE,0XCC,0XB5,0X29,0XD6,0X71,0XFF,0XFC,0XFF,0XFE,

43010XFF,0XDE,0XFF,0XDE,0XFF,0XFD,0XFF,0XD9,0XF7,0X54,0XE6,0X8D,0XE6,0X29,0XE6,0X07,

43020XEE,0X27,0XEE,0X26,0XEE,0X25,0XEE,0X26,0XEE,0X06,0XEE,0X07,0XEE,0X08,0XEE,0X09,

43030XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XE6,0X06,0XEE,0X06,0XEE,0X07,0XEE,0X07,

43040XFE,0X68,0XFE,0X88,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XE5,0XE7,0XE5,0XA8,0XDD,0X87,

43050XD5,0X48,0XC4,0XE7,0XB4,0X86,0XA4,0X26,0X93,0XC6,0X73,0X04,0X6A,0XE6,0X6B,0X4A,

43060XFF,0XDD,0XFF,0XFE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43140XFF,0XFF,0XFF,0XFD,0XDE,0X95,0XAC,0XCA,0XDE,0X0B,0XDD,0XE8,0XDD,0XE7,0XEE,0X68,

43150XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X28,

43160XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

43170XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X48,

43180XEE,0X48,0XEE,0X48,0XEE,0X28,0XE6,0X28,0XE6,0X08,0XEE,0X29,0XEE,0X09,0XEE,0X49,

43190XEE,0X6A,0XFF,0X4D,0XFF,0X4F,0XCE,0X2D,0XF7,0X76,0XFF,0X9A,0XFF,0XBC,0XFF,0XFD,

43200XFF,0XFB,0XFF,0XB6,0XEE,0XF0,0XDE,0X4B,0XE6,0X29,0XE6,0X07,0XEE,0X27,0XEE,0X26,

43210XEE,0X26,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

43220XEE,0X28,0XEE,0X27,0XEE,0X06,0XE6,0X06,0XEE,0X28,0XF6,0X69,0XFE,0XA9,0XFE,0X88,

43230XF6,0X67,0XF6,0X68,0XF6,0X48,0XEE,0X28,0XE5,0XE8,0XDD,0XA7,0XD5,0X67,0XCD,0X27,

43240XBC,0XA6,0XAC,0X46,0X9C,0X07,0X7B,0X26,0X6A,0XE7,0XD6,0X77,0XFF,0XDD,0XFF,0XDE,

43250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,

43330XF7,0X38,0XA4,0X8B,0XD5,0XCB,0XDE,0X09,0XDE,0X07,0XE6,0X27,0XE6,0X07,0XE5,0XE7,

43340XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,

43350XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

43360XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

43370XEE,0X48,0XEE,0X48,0XEE,0X28,0XE5,0XC7,0XF6,0X49,0XE5,0XE8,0XDD,0XE7,0XE6,0X69,

43380XEE,0XEB,0XFF,0X6F,0XEE,0XD1,0XFF,0X56,0XFF,0X99,0XFF,0XBA,0XFF,0XB7,0XF7,0X73,

43390XE6,0XAD,0XDE,0X29,0XE6,0X28,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X26,0XEE,0X26,

43400XEE,0X26,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X06,

43410XEE,0X26,0XF6,0X47,0XF6,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0X88,0XFE,0X68,0XF6,0X47,

43420XF6,0X27,0XF6,0X48,0XEE,0X08,0XE5,0XC7,0XDD,0X87,0XCD,0X47,0XC5,0X07,0XB4,0XA7,

43430XA4,0X28,0X83,0X67,0XAC,0XF0,0XF7,0X5B,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

43440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0X9B,0XB4,0XED,

43520XC5,0X4A,0XDE,0X0A,0XDD,0XE8,0XDD,0XE6,0XE6,0X08,0XE6,0X07,0XEE,0X08,0XE5,0XE7,

43530XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,

43540XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

43550XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

43560XEE,0X28,0XEE,0X08,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XE6,0X08,0XE6,0X69,0XE6,0X6A,

43570XFF,0X0F,0XF6,0XF1,0XF6,0XD4,0XFF,0X35,0XFF,0X73,0XF6,0XEF,0XDE,0X2A,0XDE,0X28,

43580XE6,0X27,0XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

43590XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XE6,0X06,0XE6,0X06,0XF6,0X27,0XFE,0X88,

43600XFE,0XA9,0XF6,0X69,0XFE,0X89,0XFE,0X89,0XFE,0X68,0XF6,0X47,0XF6,0X68,0XF6,0X48,

43610XEE,0X28,0XE6,0X08,0XDD,0XC7,0XCD,0X46,0XCD,0X28,0XC5,0X09,0XA4,0X69,0X94,0X2B,

43620XE6,0XD7,0XFF,0XDD,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XCD,0XD2,0XB4,0XC9,0XDD,0XEA,

43710XDE,0X08,0XE6,0X07,0XE5,0XE7,0XE6,0X08,0XE5,0XE7,0XEE,0X07,0XEE,0X07,0XEE,0X07,

43720XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,

43730XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

43740XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XF6,0X69,

43750XEE,0X07,0XED,0XE7,0XEE,0X28,0XEE,0X48,0XDE,0X07,0XDE,0X07,0XDE,0X09,0XF6,0XAD,

43760XFF,0X11,0XFE,0XF1,0XEE,0XAE,0XEE,0X8C,0XDE,0X28,0XE6,0X27,0XE6,0X07,0XEE,0X27,

43770XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X06,0XEE,0X27,0XEE,0X07,

43780XE6,0X06,0XEE,0X06,0XEE,0X47,0XF6,0X47,0XF6,0X67,0XFE,0X88,0XF6,0X68,0XF6,0X69,

43790XFE,0X69,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XEE,0X28,

43800XE6,0X08,0XDD,0XA7,0XCD,0X68,0XBD,0X09,0XAC,0XAB,0XC5,0XB2,0XF7,0X7B,0XFF,0XFE,

43810XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

43890XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XEE,0XB6,0XB4,0XC9,0XD5,0XA9,0XE6,0X09,0XE6,0X28,

43900XDD,0XC7,0XE5,0XE7,0XE5,0XE7,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

43910XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

43920XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X07,

43930XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XF6,0X48,0XEE,0X07,0XEE,0X07,

43940XEE,0X07,0XEE,0X27,0XE6,0X06,0XEE,0X68,0XE6,0X28,0XE6,0X08,0XEE,0X4A,0XF6,0XAC,

43950XFE,0XCC,0XEE,0X69,0XDD,0XE7,0XE6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X09,

43960XEE,0X08,0XEE,0X08,0XEE,0X27,0XE6,0X06,0XEE,0X27,0XEE,0X06,0XEE,0X06,0XEE,0X46,

43970XF6,0X67,0XF6,0X47,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XFE,0X89,0XFE,0X69,0XFE,0X48,

43980XFE,0X69,0XFE,0X68,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XEE,0X28,0XE6,0X28,0XE6,0X08,

43990XCD,0X88,0XBD,0X2A,0XC5,0X8F,0XF7,0X38,0XFF,0XDC,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

44000XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44080XFF,0XBE,0XFF,0X5A,0XC5,0X4D,0XCD,0X6A,0XDD,0XE9,0XDE,0X08,0XE5,0XE7,0XE6,0X07,

44090XEE,0X08,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XEE,0X08,0XE6,0X07,0XEE,0X07,0XEE,0X07,

44100XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,

44110XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

44120XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XF6,0X48,0XEE,0X27,

44130XEE,0X27,0XDD,0XE6,0XF6,0X89,0XEE,0X27,0XE6,0X08,0XDD,0XE7,0XE6,0X28,0XEE,0X28,

44140XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X08,0XEE,0X09,0XEE,0X08,0XEE,0X08,

44150XEE,0X28,0XE6,0X06,0XE5,0XE6,0XEE,0X27,0XF6,0X67,0XF6,0X67,0XF6,0X46,0XE5,0XC5,

44160XDD,0XA5,0XE5,0XC5,0XEE,0X27,0XF6,0X48,0XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X68,

44170XFE,0X68,0XF6,0X88,0XF6,0X68,0XEE,0X48,0XE6,0X08,0XDD,0XE9,0XCD,0XA9,0XCD,0XED,

44180XDE,0XB3,0XFF,0XDB,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

44190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBC,

44270XDE,0X32,0XB4,0XC9,0XD5,0XCA,0XD5,0XC7,0XE6,0X07,0XE6,0X07,0XE5,0XE7,0XE5,0XE8,

44280XE5,0XE8,0XE6,0X08,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

44290XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

44300XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

44310XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

44320XE5,0XE6,0XE6,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X07,0XEE,0X07,

44330XEE,0X27,0XE6,0X07,0XEE,0X28,0XE5,0XE7,0XEE,0X28,0XE6,0X08,0XEE,0X28,0XEE,0X07,

44340XEE,0X28,0XF6,0X48,0XFE,0X88,0XE5,0XC6,0XCD,0X02,0XCC,0XE2,0XCD,0X03,0XDD,0X85,

44350XEE,0X07,0XF6,0X48,0XF6,0X69,0XF6,0X88,0XFE,0XA8,0XF6,0X88,0XF6,0X68,0XF6,0X88,

44360XF6,0X48,0XEE,0X29,0XEE,0X4A,0XDE,0X0A,0XD6,0X2D,0XDE,0XB2,0XFF,0XD9,0XFF,0XFC,

44370XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBD,0XF7,0X17,0XBD,0X4D,

44460XC5,0X6A,0XD5,0XC8,0XDE,0X07,0XE6,0X27,0XE5,0XE7,0XEE,0X08,0XE5,0XC8,0XE6,0X09,

44470XE6,0X08,0XE6,0X27,0XEE,0X26,0XE6,0X06,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

44480XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,

44490XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X07,

44500XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

44510XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,

44520XEE,0X28,0XEE,0X07,0XE5,0XE7,0XE5,0XE7,0XEE,0X28,0XE6,0X08,0XF6,0X49,0XEE,0X48,

44530XCD,0X24,0XAC,0X20,0XB4,0X40,0XBC,0X81,0XCD,0X03,0XDD,0X65,0XE5,0XC6,0XEE,0X28,

44540XFE,0X89,0XFE,0XA9,0XF6,0X88,0XFE,0XA9,0XFE,0XC9,0XF6,0X68,0XF6,0X69,0XF6,0X8A,

44550XE6,0X2B,0XD5,0XEC,0XEF,0X13,0XFF,0XD8,0XFF,0XFB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

44560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44640XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDD,0XFF,0X9B,0XDE,0X32,0XAC,0XC9,0XDE,0X2B,

44650XD5,0XC7,0XE5,0XE6,0XE5,0XE6,0XE5,0XE7,0XEE,0X08,0XED,0XE9,0XE5,0XE8,0XE5,0XE7,

44660XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,

44670XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

44680XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X28,

44690XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

44700XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XE6,0X07,

44710XEE,0X27,0XEE,0X27,0XE6,0X07,0XF6,0XAA,0XDD,0XA7,0XAC,0X41,0X93,0X60,0X9B,0XC0,

44720XA3,0XE0,0XAC,0X21,0XC4,0XC2,0XCD,0X03,0XDD,0X85,0XEE,0X07,0XFE,0X68,0XFE,0X88,

44730XFE,0X88,0XFE,0X88,0XF6,0X88,0XF6,0X89,0XF6,0X69,0XE6,0X4A,0XE6,0X4D,0XE6,0X91,

44740XFF,0X98,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44830XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XF7,0X37,0XBD,0X6D,0XC5,0X8A,0XD5,0XC8,0XDE,0X07,

44840XE5,0XE6,0XE5,0XE7,0XEE,0X08,0XEE,0X09,0XE5,0XE8,0XE5,0XC8,0XE6,0X08,0XE6,0X08,

44850XE6,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

44860XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

44870XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

44880XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,

44890XEE,0X28,0XEE,0X28,0XED,0XE8,0XEE,0X08,0XEE,0X07,0XE6,0X07,0XEE,0X47,0XF6,0X88,

44900XFF,0X0B,0XD5,0XA6,0XA4,0X21,0X83,0X20,0X82,0XE0,0X8B,0X40,0X9B,0XC0,0XA3,0XE1,

44910XB4,0X41,0XC4,0XC3,0XDD,0X65,0XEE,0X07,0XF6,0X48,0XFE,0X48,0XFE,0X89,0XFE,0X69,

44920XF6,0X69,0XF6,0XAA,0XEE,0X6B,0XE6,0X4C,0XEE,0XF2,0XFF,0XB8,0XFF,0XBB,0XFF,0XDD,

44930XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

44990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45020XFF,0XFE,0XFF,0XBB,0XEF,0X16,0XB4,0XEA,0XCD,0XA9,0XE6,0X09,0XE5,0XE7,0XEE,0X07,

45030XE5,0XE7,0XED,0XE8,0XEE,0X08,0XED,0XE8,0XEE,0X08,0XE6,0X08,0XE6,0X07,0XEE,0X07,

45040XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

45050XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

45060XEE,0X28,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

45070XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X08,

45080XF6,0X09,0XED,0XE8,0XE5,0XE7,0XEE,0X48,0XEE,0X47,0XE6,0X26,0XFF,0X2B,0XF6,0XEB,

45090XD5,0XA7,0X9B,0XE1,0X83,0X00,0X83,0X00,0X8B,0X40,0X9B,0XC1,0XA3,0XE1,0XBC,0XA3,

45100XD5,0X44,0XED,0XE6,0XFE,0X68,0XFE,0X68,0XFE,0X48,0XFE,0X8A,0XFE,0X8B,0XEE,0X6C,

45110XEE,0X8F,0XF7,0X33,0XFF,0X97,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,

45120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,

45210XFF,0XDA,0XDE,0X72,0XB4,0XE9,0XD5,0XAA,0XDD,0XC8,0XEE,0X08,0XE5,0XE7,0XED,0XE7,

45220XED,0XE7,0XE5,0XE8,0XE5,0XE8,0XE6,0X08,0XE5,0XE8,0XE6,0X08,0XEE,0X07,0XEE,0X07,

45230XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

45240XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X07,

45250XEE,0X27,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

45260XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XED,0XE8,

45270XEE,0X08,0XE6,0X07,0XE6,0X27,0XE6,0X27,0XDE,0X06,0XEE,0X8A,0XFF,0X4D,0XE6,0X6B,

45280XB4,0XC5,0X8B,0X60,0X83,0X20,0X7A,0XE0,0X9B,0XC1,0XAC,0X42,0XCD,0X03,0XE5,0XE6,

45290XFE,0X69,0XFE,0X69,0XFE,0X6A,0XF6,0X6B,0XEE,0X6C,0XEE,0X6F,0XF7,0X14,0XFF,0XD9,

45300XFF,0XBB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDE,0XFF,0XFE,0XFF,0XBB,0XFF,0XDA,

45400XCD,0XAF,0XC5,0X4B,0XD5,0X89,0XDD,0XC8,0XE6,0X07,0XE5,0XE6,0XE5,0XE6,0XE5,0XE6,

45410XE6,0X07,0XEE,0X08,0XE5,0XE8,0XE5,0XE8,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

45420XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

45430XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X27,0XEE,0X28,

45440XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

45450XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XED,0XE7,0XEE,0X08,0XEE,0X07,0XEE,0X27,

45460XE5,0XE6,0XDE,0X07,0XE6,0X48,0XE6,0X48,0XE6,0X6A,0XFF,0X0D,0XFF,0X4E,0XCD,0X88,

45470X83,0X20,0X8B,0X40,0X83,0X40,0X9B,0XC0,0XBC,0XA3,0XDD,0XC6,0XF6,0X69,0XF6,0X8A,

45480XFE,0X8C,0XF6,0X6D,0XEE,0X90,0XFF,0X35,0XFF,0XBA,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,

45490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0X7B,0XFF,0XBA,0XC5,0X8E,

45590XCD,0X8C,0XD5,0XA9,0XDD,0XE8,0XE6,0X06,0XE6,0X26,0XE6,0X06,0XEE,0X07,0XE6,0X07,

45600XE5,0XE8,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

45610XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

45620XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,

45630XEE,0X27,0XEE,0X07,0XEE,0X28,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,

45640XEE,0X28,0XEE,0X27,0XEE,0X07,0XED,0XE7,0XEE,0X07,0XE6,0X07,0XEE,0X48,0XE6,0X27,

45650XE6,0X48,0XE6,0X28,0XDE,0X07,0XDE,0X29,0XF6,0XAB,0XFF,0X2D,0XF6,0XCD,0X83,0X40,

45660X83,0X20,0X83,0X40,0XAC,0X83,0XD5,0XA7,0XF6,0X8A,0XF6,0XAB,0XEE,0X6D,0XF6,0XD0,

45670XFF,0X56,0XFF,0XFB,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,

45680XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XFF,0X9A,0XD6,0X11,0XBD,0X2A,

45780XD5,0XC9,0XDE,0X27,0XDD,0XE5,0XE6,0X25,0XDD,0XE5,0XEE,0X27,0XE5,0XE8,0XE5,0XE8,

45790XEE,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,

45800XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

45810XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

45820XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

45830XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X07,0XE6,0X07,

45840XE6,0X28,0XDE,0X07,0XDD,0XE7,0XEE,0X8A,0XFF,0X2D,0XFF,0X4E,0XA4,0X63,0X83,0X40,

45850X9C,0X22,0XCD,0XA8,0XE6,0X6C,0XEE,0XCF,0XEE,0XD1,0XFF,0X76,0XFF,0XFB,0XFF,0XFD,

45860XFF,0XFE,0XF7,0XDF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

45960XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBC,0XF7,0X37,0XDE,0X50,0XC5,0XAA,0XCD,0XC8,

45970XDE,0X27,0XE6,0X46,0XDD,0XE5,0XE6,0X07,0XEE,0X08,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

45980XE5,0XE7,0XE6,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

45990XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46000XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46010XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X26,0XEE,0X26,

46020XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X27,

46030XDE,0X07,0XE6,0X48,0XE6,0X49,0XEE,0XAB,0XFF,0X4E,0XBD,0X46,0XA4,0X84,0XD6,0X0B,

46040XF6,0XF0,0XE6,0X91,0XFF,0XF8,0XFF,0XFB,0XFF,0XDC,0XFF,0XDE,0XFF,0XFF,0XF7,0XFF,

46050XF7,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

46150XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XF7,0X57,0XD6,0X4F,0XC5,0XCA,0XCD,0XE8,0XDE,0X27,

46160XE6,0X27,0XE5,0XE6,0XE6,0X07,0XE5,0XE7,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46170XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46180XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

46190XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46200XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XEE,0X27,0XEE,0X27,

46210XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XE6,0X07,0XEE,0X47,0XE6,0X27,

46220XDE,0X07,0XE6,0X48,0XF7,0X0C,0XFF,0X2D,0XDE,0X29,0XDE,0X4C,0XFF,0X93,0XFF,0XD7,

46230XFF,0XBA,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XDF,0XF7,0XFF,0XFF,0XFF,

46240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46340XFF,0XFD,0XFF,0XDB,0XF7,0X77,0XDE,0X91,0XCD,0XCB,0XCD,0XA8,0XDE,0X28,0XDE,0X07,

46350XE5,0XE7,0XEE,0X08,0XE6,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

46360XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

46370XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46380XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46390XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,

46400XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X07,0XE6,0X48,

46410XDE,0X27,0XEE,0X89,0XFF,0X2C,0XF7,0X4E,0XEE,0XF1,0XFF,0X96,0XFF,0XFC,0XFF,0XDD,

46420XFF,0XDF,0XFF,0XFF,0XF7,0XDF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDE,0XFF,0XFD,

46530XFF,0XFC,0XFF,0X98,0XDE,0X91,0XCD,0XEC,0XD5,0XCA,0XDE,0X09,0XE6,0X08,0XEE,0X28,

46540XE5,0XE8,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X28,0XEE,0X28,

46550XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46560XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46570XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

46580XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

46590XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XDE,0X07,

46600XEE,0XA9,0XFF,0X4D,0XF7,0X0F,0XEE,0XF2,0XF7,0X77,0XFF,0XFD,0XFF,0XDE,0XF7,0XBE,

46610XF7,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDC,

46720XFF,0X78,0XEE,0XD2,0XD5,0XCC,0XCD,0XA9,0XDD,0XC8,0XE6,0X08,0XEE,0X28,0XEE,0X28,

46730XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46740XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

46750XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

46760XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

46770XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

46780XEE,0X08,0XED,0XE7,0XEE,0X08,0XEE,0X28,0XE5,0XE7,0XEE,0X48,0XE6,0X27,0XDE,0X49,

46790XF7,0X2E,0XFF,0X72,0XDE,0X92,0XF7,0X58,0XFF,0XFC,0XFF,0XFE,0XFF,0XDD,0XFF,0XDE,

46800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

46890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

46900XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDB,0XFF,0XB8,

46910XEE,0XB2,0XDE,0X2C,0XD5,0XC9,0XDD,0XE8,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

46920XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

46930XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

46940XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

46950XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

46960XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XF6,0X28,0XED,0XE7,0XF6,0X28,

46970XED,0XE7,0XF6,0X08,0XEE,0X07,0XE5,0XC6,0XE6,0X27,0XDE,0X07,0XDE,0X29,0XF6,0XEE,

46980XFF,0X52,0XD6,0X50,0XE6,0XD4,0XFF,0XBA,0XFF,0XDC,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,

46990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDB,0XFF,0XD8,0XF7,0X33,

47100XDE,0X2C,0XD5,0XC9,0XE6,0X29,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

47110XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

47120XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47130XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47140XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X07,0XEE,0X07,

47150XEE,0X07,0XEE,0X07,0XEE,0X07,0XF6,0X28,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XF6,0X08,

47160XF5,0XE7,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X48,0XE6,0X29,0XEE,0XCD,0XF7,0X30,

47170XCD,0XEE,0XDE,0X93,0XFF,0XBA,0XFF,0XDC,0XFF,0XDD,0XFF,0XDE,0XFF,0XDE,0XFF,0XDF,

47180XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47280XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD9,0XF7,0X54,0XE6,0X8E,

47290XDD,0XC8,0XDD,0XA6,0XEE,0X48,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XF6,0X48,0XEE,0X28,

47300XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,

47310XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X28,0XEE,0X27,0XEE,0X27,

47320XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47330XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,

47340XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

47350XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X28,0XE6,0X48,0XEE,0XAB,0XF7,0X0F,0XB5,0X2B,

47360XCD,0XF1,0XF7,0X9A,0XFF,0XDC,0XFF,0XDD,0XFF,0XDE,0XFF,0XBF,0XFF,0XDF,0XFF,0XDF,

47370XF7,0X9E,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47470XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFC,0XFF,0XD8,0XFF,0X53,0XEE,0X4B,0XE5,0XC7,

47480XE6,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

47490XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,

47500XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47510XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

47520XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

47530XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XED,0XE7,0XED,0XE7,

47540XEE,0X07,0XEE,0X27,0XE6,0X05,0XEE,0X68,0XF6,0XCC,0XE6,0X8E,0XA4,0XCA,0XB5,0X2E,

47550XEF,0X38,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47560XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47660XFF,0XDD,0XFF,0XBB,0XFF,0XB9,0XFF,0X94,0XFE,0XEE,0XEE,0X49,0XE5,0XE7,0XEE,0X08,

47670XEE,0X07,0XEE,0X08,0XEE,0X27,0XF6,0X48,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,

47680XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XF6,0X28,0XF6,0X28,

47690XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47700XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47710XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47720XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

47730XE6,0X05,0XE6,0X26,0XEE,0X68,0XF6,0XEC,0XD6,0X0C,0X94,0X27,0X94,0X29,0XE6,0XD6,

47740XFF,0XDC,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XBF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

47750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XBD,0XFF,0XBC,0XFF,0XDB,

47850XFF,0X77,0XEE,0XB1,0XEE,0X6B,0XEE,0X48,0XE6,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X28,

47860XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

47870XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X28,0XF6,0X28,

47880XF6,0X28,0XF6,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

47890XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X27,

47900XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

47910XEE,0X27,0XEE,0X27,0XEE,0X08,0XF6,0X28,0XEE,0X07,0XEE,0X07,0XF6,0X66,0XEE,0X25,

47920XE6,0X46,0XE6,0X48,0XEE,0X8B,0XDE,0X2C,0X7B,0X63,0X83,0XA7,0XDE,0X95,0XFF,0XFC,

47930XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

47990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48030XFF,0XFF,0XFF,0XDD,0XFF,0XDD,0XFF,0XFB,0XFF,0XB9,0XFF,0X55,0XEE,0XB1,0XDE,0X2C,

48040XDD,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X28,0XEE,0X08,0XEE,0X28,0XEE,0X28,

48050XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48060XEE,0X28,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X48,

48070XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48080XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X27,0XEE,0X27,

48090XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48100XEE,0X07,0XEE,0X28,0XEE,0X08,0XEE,0X07,0XF6,0X46,0XEE,0X25,0XEE,0X45,0XEE,0X26,

48110XEE,0X68,0XE6,0X29,0XE6,0X6D,0X5A,0X60,0X83,0XA8,0XDE,0XB6,0XFF,0XFC,0XFF,0XDD,

48120XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,

48220XFF,0XFA,0XFF,0XB7,0XF7,0X12,0XDE,0X2D,0XD5,0XEB,0XDE,0X2A,0XE6,0X08,0XEE,0X07,

48230XE6,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

48240XEE,0X48,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X28,0XEE,0X28,

48250XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,

48260XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

48270XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48280XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X07,

48290XEE,0X28,0XF6,0X08,0XEE,0X06,0XF6,0X46,0XEE,0X25,0XF6,0X46,0XF6,0X47,0XEE,0X48,

48300XDE,0X0A,0XBD,0X49,0X52,0X20,0X73,0X46,0XE6,0XF7,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,

48310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD9,0XF7,0X54,0XDE,0X8E,

48410XD6,0X0B,0XDE,0X09,0XDE,0X28,0XDE,0X07,0XE6,0X07,0XEE,0X27,0XE6,0X07,0XEE,0X48,

48420XEE,0X28,0XEE,0X27,0XEE,0X07,0XE6,0X07,0XEE,0X48,0XEE,0X48,0XEE,0X27,0XEE,0X27,

48430XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XF6,0X48,0XEE,0X28,0XF6,0X28,0XF6,0X28,

48440XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,

48450XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

48460XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48470XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XF6,0X28,

48480XF6,0X07,0XF6,0X27,0XEE,0X05,0XF6,0X26,0XEE,0X07,0XEE,0X48,0XE6,0X09,0XDE,0X0B,

48490X94,0X26,0X4A,0X00,0X7B,0X67,0XE6,0XD7,0XFF,0XDD,0XFF,0XFF,0XFF,0XFE,0XF7,0XBE,

48500XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48580XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48590XFF,0XDE,0XFF,0XDC,0XFF,0X97,0XF7,0X12,0XE6,0X8D,0XDE,0X2A,0XDE,0X28,0XDE,0X07,

48600XDE,0X07,0XE6,0X47,0XE6,0X07,0XEE,0X48,0XE6,0X07,0XEE,0X27,0XE5,0XE7,0XEE,0X28,

48610XEE,0X48,0XEE,0X28,0XF6,0X68,0XEE,0X27,0XE6,0X07,0XE6,0X06,0XEE,0X27,0XEE,0X47,

48620XEE,0X47,0XEE,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

48630XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,

48640XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

48650XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48660XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X48,0XEE,0X28,0XEE,0X08,0XF6,0X28,0XEE,0X06,

48670XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X28,0XEE,0X49,0XDD,0XE9,0XCD,0XAA,0X6A,0XA1,

48680X52,0X01,0X8C,0X2B,0XE6,0XF9,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

48690XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48770XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XBD,0XFF,0XDC,0XFF,0X57,

48780XEE,0XD0,0XDE,0X4B,0XD5,0XE7,0XDD,0XE6,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X27,

48790XEE,0X27,0XEE,0X27,0XE6,0X07,0XEE,0X48,0XE6,0X07,0XEE,0X48,0XEE,0X48,0XF6,0X48,

48800XF6,0X68,0XE5,0XE7,0XE5,0XE6,0XE5,0XE6,0XE6,0X07,0XEE,0X27,0XEE,0X47,0XEE,0X47,

48810XEE,0X47,0XEE,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

48820XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,

48830XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48840XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

48850XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X07,0XF6,0X28,

48860XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X6A,0XCD,0XA9,0XA4,0X66,0X62,0X61,0X49,0XE2,

48870X9C,0XAF,0XF7,0X7C,0XFF,0XFE,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,

48880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

48950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

48960XFF,0XFD,0XFF,0XFC,0XFF,0XFD,0XFF,0XDB,0XF7,0X36,0XE6,0X91,0XDE,0X0A,0XDE,0X07,

48970XDE,0X06,0XE6,0X06,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,

48980XE6,0X07,0XEE,0X27,0XF6,0X69,0XEE,0X07,0XEE,0X48,0XF6,0X89,0XEE,0X07,0XE6,0X07,

48990XF6,0X68,0XEE,0X47,0XE5,0XE6,0XE6,0X06,0XEE,0X27,0XF6,0X47,0XEE,0X27,0XF6,0X48,

49000XF6,0X48,0XEE,0X27,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,

49010XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,

49020XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

49030XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

49040XEE,0X27,0XEE,0X27,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X29,0XEE,0X28,

49050XEE,0X28,0XEE,0X48,0XD5,0XC8,0XD5,0XEA,0X7B,0X22,0X52,0X01,0X52,0X44,0XAD,0X11,

49060XF7,0XBC,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

49070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

49150XFF,0XFB,0XEE,0XD4,0XE6,0X6F,0XD5,0XEA,0XD5,0XE8,0XDE,0X06,0XE6,0X06,0XE6,0X06,

49160XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

49170XEE,0X48,0XE6,0X07,0XFE,0X89,0XF6,0X68,0XDD,0XA5,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,

49180XF6,0X68,0XEE,0X06,0XE6,0X06,0XEE,0X07,0XF6,0X68,0XEE,0X47,0XF6,0X27,0XF6,0X48,

49190XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

49200XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

49210XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49220XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XEE,0X47,0XEE,0X47,

49230XEE,0X47,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XEE,0X48,

49240XE6,0X28,0XDD,0XE9,0XA4,0X45,0X6A,0XA2,0X49,0XC1,0X52,0X66,0XC6,0X15,0XFF,0XFD,

49250XFF,0XFE,0XFF,0XFE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49330XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XDA,0XEE,0XF4,0XD6,0X0D,

49340XD5,0XEA,0XDD,0XC8,0XDE,0X07,0XE6,0X07,0XE6,0X07,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

49350XEE,0X08,0XE6,0X07,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XE5,0XC6,0XEE,0X47,

49360XFE,0X88,0XE6,0X06,0XE5,0XE6,0XFE,0XC9,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XF6,0X68,

49370XEE,0X27,0XE5,0XE6,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X27,0XF6,0X27,

49380XF6,0X27,0XF6,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

49390XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

49400XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49410XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

49420XEE,0X48,0XEE,0X48,0XEE,0X28,0XF6,0X48,0XEE,0X27,0XEE,0X27,0XF6,0X89,0XD5,0XA7,

49430XCD,0X48,0X7B,0X02,0X5A,0X22,0X41,0XC2,0X73,0X49,0XE6,0XF8,0XFF,0XFD,0XFF,0XDE,

49440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49520XFF,0XFE,0XFF,0XBC,0XFF,0XFB,0XEE,0XD4,0XD5,0XED,0XD5,0XC9,0XDD,0XE8,0XDE,0X07,

49530XDD,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

49540XE6,0X07,0XEE,0X48,0XEE,0X27,0XE6,0X07,0XEE,0X27,0XFE,0XA9,0XE6,0X06,0XE5,0XC5,

49550XFE,0X88,0XF6,0X47,0XFE,0XA9,0XFE,0X88,0XFE,0X88,0XFE,0XC9,0XF6,0X68,0XEE,0X27,

49560XDD,0X85,0XEE,0X47,0XF6,0X27,0XEE,0X07,0XF6,0X27,0XFE,0X68,0XEE,0X27,0XEE,0X27,

49570XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,

49580XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49590XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49600XF6,0X27,0XF6,0X27,0XF6,0X47,0XEE,0X46,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

49610XF6,0X48,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X47,0XE6,0X28,0XDD,0XC9,0X93,0XC4,

49620X51,0XE0,0X5A,0X43,0X31,0X40,0XAD,0X31,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,0XEF,0X7D,

49630XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XFF,0XBA,

49710XEE,0XD4,0XCD,0XED,0XCD,0XA9,0XD5,0XC8,0XDE,0X07,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

49720XE5,0XE7,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,

49730XEE,0X07,0XE5,0XE6,0XF6,0X68,0XFE,0XC9,0XDD,0XC5,0XEE,0X26,0XFE,0X88,0XF6,0X47,

49740XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XFE,0XA9,0XFE,0X88,0XFE,0X88,0XD5,0X64,

49750XE5,0XC6,0XF6,0X27,0XFE,0X69,0XED,0XE6,0XF6,0X48,0XF6,0X27,0XEE,0X47,0XEE,0X47,

49760XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49770XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49780XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X27,

49790XEE,0X47,0XEE,0X46,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X28,

49800XFE,0X68,0XF6,0X47,0XEE,0X27,0XEE,0X48,0XE6,0X08,0XB4,0X86,0X7B,0X03,0X41,0XA0,

49810X49,0XE2,0X5A,0X86,0XD6,0X56,0XFF,0XDD,0XFF,0XBE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

49820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

49890XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBE,0XFF,0X9B,0XF7,0X16,0XC5,0X8C,0XD5,0XCA,

49900XD5,0XA7,0XDE,0X07,0XDD,0XC7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

49910XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XEE,0X08,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X27,

49920XF6,0X68,0XF6,0X68,0XE5,0XE5,0XF6,0X67,0XF6,0X47,0XFE,0X88,0XFE,0X67,0XFE,0X88,

49930XFE,0X88,0XFE,0X68,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XDD,0X85,0XE5,0XE6,

49940XEE,0X06,0XFE,0X88,0XED,0XE6,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

49950XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49960XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

49970XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X47,0XEE,0X47,

49980XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X48,0XF6,0X28,0XF6,0X27,0XF6,0X47,

49990XF6,0X88,0XEE,0X47,0XEE,0X29,0XBD,0X07,0X83,0X44,0X51,0XE0,0X52,0X02,0X52,0X04,

50000X8C,0X0D,0XF7,0X7C,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50080XFF,0XDE,0XFF,0XBC,0XF7,0X38,0XCD,0XAF,0XD5,0XCB,0XCD,0X67,0XE6,0X08,0XE5,0XE7,

50090XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE6,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,

50100XEE,0X08,0XED,0XE7,0XEE,0X07,0XEE,0X28,0XEE,0X27,0XF6,0X68,0XF6,0X68,0XEE,0X47,

50110XE5,0XC5,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XFE,0X88,

50120XFE,0X88,0XF6,0X68,0XFE,0X89,0XF6,0X68,0XF6,0X48,0XDD,0XA6,0XE5,0XC7,0XE6,0X08,

50130XF6,0X69,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X28,0XEE,0X47,0XEE,0X47,

50140XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

50150XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

50160XF6,0X27,0XF6,0X27,0XF6,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,

50170XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X28,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X88,

50180XEE,0X48,0XD5,0X88,0X93,0XA5,0X5A,0X01,0X5A,0X22,0X41,0XC2,0X5A,0X66,0XCE,0X16,

50190XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBC,0XFF,0X9A,

50270XD6,0X10,0XC5,0X4B,0XDE,0X0A,0XD5,0XC7,0XDD,0XE8,0XE5,0XE7,0XE5,0XC7,0XE5,0XC7,

50280XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

50290XEE,0X07,0XEE,0X27,0XEE,0X27,0XF6,0X68,0XF6,0XA8,0XDD,0XA4,0XEE,0X26,0XEE,0X26,

50300XF6,0X46,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X68,

50310XF6,0X69,0XF6,0X69,0XEE,0X4A,0XF6,0X6C,0XDD,0XCA,0XDD,0XEA,0XDE,0X29,0XEE,0X89,

50320XEE,0X27,0XF6,0X47,0XF6,0X08,0XF6,0X49,0XEE,0X28,0XEE,0X27,0XF6,0X67,0XEE,0X46,

50330XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,

50340XEE,0X27,0XEE,0X47,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

50350XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

50360XF6,0X48,0XF6,0X47,0XF6,0X48,0XEE,0X47,0XF6,0X47,0XF6,0X68,0XEE,0X48,0XDD,0XE9,

50370XA4,0X06,0X62,0X42,0X49,0XC1,0X49,0XE3,0X49,0XE4,0X8C,0X2E,0XE7,0X1A,0XFF,0XFF,

50380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XE6,0X93,0XC5,0X4B,0XD5,0XCA,

50460XD5,0X87,0XE6,0X28,0XD5,0X87,0XE5,0XE8,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

50470XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X06,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X27,

50480XEE,0X27,0XF6,0X67,0XFE,0XA8,0XD5,0X63,0XEE,0X46,0XEE,0X26,0XEE,0X26,0XF6,0X27,

50490XF6,0X07,0XF6,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XF6,0X6A,

50500XEE,0X4B,0XEE,0X6D,0XFF,0X12,0XDE,0X6F,0XD5,0XEB,0XDE,0X29,0XEE,0X48,0XEE,0X07,

50510XF6,0X28,0XED,0XE8,0XF6,0X28,0XF6,0X68,0XEE,0X66,0XF6,0X66,0XF6,0X47,0XF6,0X47,

50520XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

50530XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

50540XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

50550XF6,0X68,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XEE,0X29,0XB4,0XA8,0X6A,0X82,

50560X49,0XA1,0X52,0X03,0X41,0XA3,0X62,0XC8,0XD6,0X98,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

50570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50640XFF,0XDE,0XFF,0XDC,0XFF,0X99,0XBD,0X4D,0XC5,0X69,0XDD,0XE9,0XD5,0X87,0XDD,0XA7,

50650XE6,0X08,0XDD,0XA7,0XE5,0XE8,0XDD,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE6,0X08,

50660XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XFE,0XA9,

50670XEE,0X46,0XDD,0XA4,0XEE,0X26,0XEE,0X06,0XED,0XE6,0XED,0XE7,0XED,0XE7,0XED,0XE7,

50680XED,0XE7,0XE5,0XE7,0XE5,0XE7,0XEE,0X08,0XE6,0X07,0XEE,0X4A,0XDD,0XCA,0XFE,0XF1,

50690XFF,0XD7,0XFF,0X96,0XD6,0X2E,0XD6,0X0B,0XE6,0X28,0XF6,0X48,0XF6,0X28,0XF6,0X08,

50700XF6,0X49,0XEE,0X48,0XE6,0X46,0XEE,0X87,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

50710XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

50720XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

50730XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X48,

50740XF6,0X88,0XF6,0X68,0XF6,0X68,0XEE,0X6A,0XC5,0X09,0X7B,0X04,0X51,0XC1,0X51,0XE3,

50750X49,0XE3,0X41,0XC4,0XAD,0X11,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,

50830XC5,0XD0,0XBD,0X6B,0XD5,0XA8,0XDD,0XE8,0XE5,0XE7,0XDD,0XA6,0XE5,0XE8,0XDD,0XA8,

50840XE5,0XC8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X08,0XE6,0X08,0XE6,0X07,0XE6,0X07,

50850XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XFE,0XEA,0XDD,0XC5,0XE5,0XE5,

50860XE5,0XE5,0XEE,0X06,0XE5,0XA5,0XE5,0XC6,0XE5,0XC7,0XE5,0XA7,0XDD,0XA7,0XDD,0XA7,

50870XDD,0XA7,0XE5,0XC7,0XE5,0XC7,0XDD,0XA8,0XDE,0X2C,0XEE,0XF2,0XFF,0XB8,0XFF,0XDA,

50880XF7,0X76,0XCE,0X0E,0XE6,0X4B,0XE6,0X08,0XF6,0X29,0XF6,0X08,0XF6,0X28,0XF6,0X48,

50890XEE,0X87,0XEE,0X67,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

50900XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,

50910XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

50920XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X88,0XF6,0X47,

50930XEE,0X47,0XEE,0X6A,0XC5,0X29,0X83,0X44,0X51,0XE1,0X49,0XC2,0X52,0X24,0X39,0XC3,

50940X73,0X4A,0XEF,0X3B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

50990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51010XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XFF,0XDD,0XFF,0X79,0XAC,0XCB,0XCD,0XAA,

51020XDD,0XE7,0XDD,0XE6,0XDD,0XE6,0XE5,0XE7,0XDD,0XA7,0XE5,0XE9,0XE5,0XC7,0XE5,0XE7,

51030XE5,0XE7,0XE6,0X07,0XE5,0XE7,0XE6,0X08,0XE6,0X08,0XE6,0X07,0XE6,0X07,0XEE,0X07,

51040XEE,0X27,0XE6,0X06,0XEE,0X47,0XFE,0XC9,0XDD,0XA4,0XE5,0XC5,0XE5,0XC5,0XE5,0XE6,

51050XDD,0X85,0XDD,0X86,0XDD,0X87,0XD5,0X67,0XD5,0X67,0XD5,0X67,0XD5,0X67,0XDD,0X87,

51060XDD,0X67,0XD5,0X88,0XD5,0XED,0XFF,0X96,0XFF,0XFC,0XFF,0XFD,0XFF,0XBB,0XFF,0XF9,

51070XC5,0X8B,0XE6,0X2B,0XF6,0X2A,0XF6,0X28,0XFE,0X89,0XE5,0XE6,0XEE,0X88,0XE6,0X47,

51080XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,

51090XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51100XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51110XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X47,0XF6,0X88,0XF6,0X47,0XF6,0X47,0XF6,0X69,

51120XD5,0XAA,0X8B,0X64,0X5A,0X01,0X51,0XE2,0X49,0XE3,0X41,0XE3,0X52,0X45,0XD6,0X77,

51130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

51200XFF,0XFE,0XFF,0XDD,0XFF,0X9A,0XC5,0XB0,0XBD,0X6B,0XCD,0XA9,0XDE,0X06,0XDD,0XC4,

51210XDD,0XC5,0XE5,0XC6,0XE5,0XE8,0XE5,0XC8,0XE5,0XE8,0XDD,0XC7,0XE5,0XE7,0XE6,0X07,

51220XE5,0XE7,0XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X08,0XEE,0X07,0XE6,0X07,0XEE,0X27,

51230XF6,0X68,0XFE,0X88,0XDD,0XA4,0XDD,0X84,0XE5,0XA5,0XDD,0X85,0XD5,0X45,0XD5,0X67,

51240XD5,0X67,0XCD,0X47,0XCD,0X47,0XD5,0X47,0XD5,0X47,0XD5,0X47,0XD5,0X47,0XCD,0X49,

51250XDE,0X70,0XFF,0XD8,0XF7,0XDC,0XFF,0XFE,0XFF,0XFE,0XFF,0XDB,0XF7,0X35,0XCD,0XCC,

51260XDD,0XC9,0XEE,0X49,0XE6,0X07,0XF6,0X68,0XEE,0X68,0XEE,0X47,0XEE,0X47,0XF6,0X47,

51270XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,

51280XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51290XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X48,

51300XF6,0X68,0XF6,0X47,0XF6,0X88,0XF6,0X67,0XF6,0X68,0XF6,0X69,0XE6,0X0A,0X93,0XA4,

51310X5A,0X01,0X52,0X03,0X49,0XE2,0X41,0XE2,0X41,0XE3,0XAD,0X11,0XFF,0XBE,0XFF,0XFF,

51320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XDC,

51390XF7,0X38,0XA4,0X8A,0XCD,0XAB,0XDE,0X09,0XDD,0XC5,0XE5,0XE5,0XE5,0XE5,0XEE,0X07,

51400XE5,0XA7,0XE5,0XC8,0XE5,0XC8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

51410XE6,0X07,0XE6,0X08,0XEE,0X08,0XEE,0X07,0XE6,0X07,0XEE,0X48,0XF6,0X88,0XF6,0X68,

51420XDD,0X84,0XDD,0X64,0XDD,0X65,0XD5,0X65,0XCD,0X26,0XCD,0X47,0XCD,0X47,0XCD,0X27,

51430XCD,0X47,0XCD,0X47,0XCD,0X26,0XCD,0X27,0XCD,0X28,0XC5,0X29,0XE6,0XB2,0XFF,0XFA,

51440XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDA,0XE6,0XB2,0XD5,0XCC,0XEE,0X6C,

51450XE6,0X08,0XF6,0X68,0XEE,0X27,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51460XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,

51470XEE,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51480XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X47,0XF6,0X68,0XF6,0X68,

51490XF6,0X68,0XF6,0X67,0XF6,0X88,0XF6,0X89,0XE6,0X2A,0XA4,0X46,0X62,0X21,0X52,0X02,

51500X52,0X02,0X4A,0X02,0X41,0XC2,0X7B,0XAB,0XF7,0X7D,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

51510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XFF,0XDB,0XCD,0XD1,0XBD,0X4B,

51580XD5,0XEA,0XD5,0XC7,0XE5,0XE6,0XE5,0XC5,0XE5,0XE6,0XE5,0XC6,0XE5,0XC7,0XE5,0XC8,

51590XE5,0XC8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

51600XEE,0X08,0XEE,0X07,0XE6,0X07,0XEE,0X48,0XFE,0XCA,0XEE,0X27,0XD5,0X64,0XD5,0X65,

51610XCD,0X24,0XCD,0X25,0XCD,0X26,0XCD,0X47,0XCD,0X47,0XC5,0X27,0XCD,0X27,0XCD,0X47,

51620XCD,0X26,0XCD,0X27,0XC5,0X08,0XBD,0X2B,0XF7,0X35,0XFF,0XFC,0XFF,0XDE,0XFF,0XBF,

51630XFF,0XFF,0XFF,0XFE,0XF7,0XBB,0XFF,0XB9,0XDE,0X91,0XCD,0XCB,0XE6,0X4A,0XEE,0X49,

51640XEE,0X07,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51650XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X28,0XF6,0X48,

51660XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51670XF6,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,

51680XF6,0X88,0XF6,0X89,0XF6,0X8B,0XB4,0XA6,0X6A,0X62,0X49,0XC1,0X52,0X22,0X52,0X22,

51690X41,0XE2,0X5A,0XA7,0XF7,0X5C,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51760XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XFF,0X78,0XAC,0XEB,0XD5,0XCC,0XD5,0XC9,0XD5,0XA6,

51770XE5,0XC6,0XE5,0XC7,0XE5,0XE7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE8,

51780XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE5,0XE7,0XE6,0X07,

51790XEE,0X07,0XEE,0X48,0XFE,0XAA,0XE5,0XE7,0XCD,0X24,0XD5,0X45,0XCD,0X25,0XCD,0X26,

51800XCD,0X26,0XCD,0X47,0XC5,0X27,0XC5,0X27,0XC5,0X27,0XCD,0X47,0XC5,0X06,0XC5,0X07,

51810XBD,0X08,0XC5,0X6C,0XFF,0XB9,0XFF,0XFD,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

51820XFF,0XDD,0XFF,0XFC,0XF7,0X77,0XCD,0XEF,0XDD,0XEB,0XEE,0X4A,0XF6,0X48,0XF6,0X47,

51830XF6,0X47,0XEE,0X27,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

51840XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

51850XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

51860XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X87,0XF6,0X89,

51870XF6,0X8A,0XC5,0X48,0X6A,0X61,0X51,0XE1,0X52,0X22,0X52,0X22,0X4A,0X02,0X4A,0X04,

51880XD6,0X58,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

51940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XFF,0XFE,

51950XFF,0XBB,0XDE,0X73,0XBD,0X0A,0XD5,0XCA,0XD5,0XA8,0XDD,0XA7,0XE5,0XC7,0XE5,0XC8,

51960XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE7,

51970XE5,0XE6,0XE6,0X06,0XE6,0X07,0XE6,0X07,0XE5,0XE7,0XEE,0X07,0XEE,0X27,0XF6,0X68,

51980XFE,0X89,0XDD,0X86,0XCC,0XE4,0XCD,0X05,0XCD,0X05,0XC5,0X06,0XC5,0X06,0XC5,0X07,

51990XBD,0X07,0XBD,0X07,0XBD,0X07,0XC5,0X27,0XC4,0XE6,0XBD,0X07,0XB4,0XE8,0XCD,0XCE,

52000XFF,0XBA,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XDD,

52010XFF,0XDB,0XEF,0X15,0XD5,0XED,0XDD,0XCA,0XF6,0X6A,0XF6,0X48,0XF6,0X48,0XF6,0X47,

52020XF6,0X47,0XF6,0X26,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

52030XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

52040XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,

52050XF6,0X67,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0XCB,0XCD,0X48,

52060X6A,0X61,0X5A,0X01,0X52,0X01,0X52,0X22,0X4A,0X02,0X39,0XA2,0XB5,0X74,0XFF,0XDE,

52070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

52080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XFF,0XFE,0XFF,0XBA,0XBD,0X4D,

52140XCD,0XAB,0XD5,0X88,0XE5,0XE8,0XDD,0XA7,0XE5,0XC8,0XE5,0XC8,0XE5,0XC8,0XE5,0XC7,

52150XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE7,0XE6,0X07,0XE6,0X06,

52160XE6,0X06,0XE6,0X06,0XE6,0X07,0XEE,0X07,0XEE,0X48,0XF6,0X68,0XF6,0X48,0XCD,0X25,

52170XC4,0XC4,0XC4,0XE5,0XBC,0XC5,0XBC,0XC6,0XBC,0XE6,0XBC,0XE7,0XBC,0XE7,0XBD,0X07,

52180XBD,0X07,0XBD,0X07,0XBC,0XE6,0XBC,0XE7,0XAC,0XC8,0XDE,0X51,0XFF,0XBB,0XFF,0XDE,

52190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XFC,0XFF,0XD9,

52200XE6,0X71,0XCD,0X8B,0XEE,0X4B,0XEE,0X29,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XEE,0X26,

52210XF6,0X68,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

52220XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

52230XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X68,

52240XF6,0X87,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XFE,0XAA,0XD5,0XA9,0X72,0XA1,0X5A,0X21,

52250X52,0X21,0X52,0X42,0X52,0X43,0X41,0XC2,0X9C,0X6F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XEE,0XF6,0XC5,0X8D,0XC5,0X49,0XDD,0XE9,

52330XDD,0XC7,0XE5,0XC7,0XE5,0XC8,0XE5,0XC8,0XE5,0XA8,0XE5,0XC8,0XE5,0XE7,0XE5,0XE7,

52340XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE6,0X06,0XE6,0X06,0XE6,0X06,

52350XE6,0X07,0XEE,0X07,0XEE,0X48,0XF6,0X68,0XEE,0X08,0XBC,0XC4,0XBC,0XA4,0XBC,0XA5,

52360XB4,0X85,0XB4,0XA6,0XB4,0XA6,0XB4,0XA6,0XB4,0XC6,0XB4,0XC6,0XB4,0XC6,0XB4,0XC6,

52370XB4,0XA6,0XB4,0XC7,0XAC,0X88,0XEE,0XD4,0XFF,0XBC,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

52380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XFF,0XFB,0XFF,0X76,0XD6,0X0E,

52390XDD,0XEB,0XE6,0X0A,0XEE,0X49,0XEE,0X47,0XF6,0X47,0XEE,0X26,0XFE,0X68,0XF6,0X27,

52400XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

52410XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

52420XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

52430XF6,0X67,0XF6,0X68,0XF6,0X69,0XE6,0X2B,0X7B,0X02,0X62,0X41,0X5A,0X62,0X5A,0X62,

52440X52,0X42,0X52,0X44,0X6B,0X2A,0XFF,0XBD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

52450XFF,0XDF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52510XFF,0XFF,0XFF,0XDC,0XE6,0XB4,0XC5,0X6B,0XCD,0X89,0XDD,0XC8,0XDD,0XC7,0XE5,0XC7,

52520XE5,0XC8,0XE5,0XC8,0XE5,0XC8,0XE5,0XC8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

52530XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

52540XEE,0X47,0XF6,0X68,0XDD,0XA7,0XB4,0X83,0XB4,0X84,0XAC,0X65,0XAC,0X65,0XAC,0X46,

52550XAC,0X66,0XAC,0X66,0XAC,0X66,0XAC,0X85,0XAC,0X86,0XAC,0X66,0XA4,0X66,0XA4,0X67,

52560XA4,0X69,0XF7,0X57,0XFF,0XDC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52570XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XEE,0XD3,0XCD,0X8C,0XE6,0X0C,

52580XF6,0X6A,0XEE,0X27,0XF6,0X67,0XF6,0X47,0XF6,0X68,0XEE,0X27,0XF6,0X48,0XF6,0X48,

52590XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

52600XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

52610XF6,0X68,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,

52620XEE,0X49,0XF6,0X6B,0X8B,0X62,0X62,0X60,0X62,0X82,0X5A,0X83,0X52,0X42,0X52,0X44,

52630X5A,0XA7,0XFF,0XBC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

52640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,

52700XDE,0X72,0XBD,0X4A,0XD5,0XA9,0XDD,0XC8,0XDD,0XC7,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,

52710XE5,0XC8,0XE5,0XC8,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,

52720XE5,0XE7,0XE6,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X07,0XE6,0X06,0XEE,0X47,0XEE,0X47,

52730XCD,0X65,0XAC,0X42,0XAC,0X64,0XAC,0X25,0XA4,0X25,0XA4,0X25,0XA4,0X25,0XA4,0X25,

52740XA4,0X45,0XA4,0X45,0XA4,0X46,0XA4,0X45,0X9C,0X26,0X9C,0X27,0X9C,0X6B,0XFF,0X9A,

52750XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

52760XFF,0XDD,0XFF,0XFC,0XFF,0XFB,0XFF,0X98,0XD5,0XCF,0XD5,0XAC,0XF6,0X6A,0XEE,0X27,

52770XF6,0X67,0XF6,0X47,0XF6,0X47,0XEE,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

52780XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

52790XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

52800XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X69,0XEE,0X6B,

52810X93,0XC3,0X6A,0X81,0X62,0X82,0X62,0XA3,0X5A,0X83,0X52,0X43,0X5A,0X86,0XF7,0X7B,

52820XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

52830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

52880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XCD,0XF0,0XBD,0X6A,

52890XD5,0XC9,0XDD,0XC8,0XDD,0XC7,0XDD,0XC7,0XDD,0XC6,0XDD,0XC7,0XE5,0XC8,0XE5,0XC8,

52900XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

52910XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X06,0XF6,0X47,0XEE,0X27,0XC5,0X04,0XA4,0X22,

52920XA4,0X24,0XA4,0X25,0XA4,0X05,0XA4,0X05,0XA4,0X05,0XA4,0X05,0XA4,0X25,0XA4,0X05,

52930XA4,0X26,0X9C,0X05,0X9C,0X06,0X93,0XE7,0XA4,0XAD,0XFF,0XFB,0XFF,0XDE,0XFF,0XFF,

52940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFD,

52950XFF,0XDC,0XFF,0XFB,0XEE,0XB3,0XD5,0X8B,0XE6,0X2A,0XEE,0X27,0XF6,0X67,0XF6,0X46,

52960XEE,0X47,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

52970XF6,0X28,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

52980XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,

52990XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X89,0XEE,0X6A,0XA4,0X24,0X72,0XE2,

53000X6A,0XA2,0X6A,0XC4,0X6A,0XC4,0X5A,0X64,0X5A,0X65,0XE7,0X19,0XFF,0XFE,0XFF,0XFF,

53010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53070XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0X79,0XC5,0X8D,0XCD,0X8A,0XD5,0XA8,0XDD,0XA7,

53080XE5,0XC7,0XDD,0XC6,0XDD,0XE6,0XDD,0XE6,0XE5,0XC7,0XE5,0XC8,0XE5,0XC7,0XE5,0XE7,

53090XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X08,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

53100XE6,0X06,0XEE,0X06,0XF6,0X47,0XE6,0X07,0XBC,0XC3,0XA4,0X02,0X9C,0X04,0X9B,0XE5,

53110X9B,0XE5,0X9B,0XE5,0X9B,0XE5,0X9B,0XE5,0X9C,0X05,0X9B,0XE4,0X9C,0X05,0X93,0XE5,

53120X93,0XC5,0X8B,0XA6,0XAD,0X0E,0XFF,0XFD,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

53130XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XFF,0XFC,

53140XFF,0X98,0XCD,0XAE,0XDD,0XCA,0XEE,0X48,0XF6,0X67,0XEE,0X47,0XF6,0X47,0XF6,0X68,

53150XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X46,0XF6,0X47,0XF6,0X47,0XF6,0X28,0XF6,0X48,

53160XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

53170XF6,0X68,0XF6,0X68,0XF6,0X47,0XF6,0X68,0XF6,0X67,0XF6,0X68,0XF6,0X67,0XF6,0X67,

53180XF6,0X67,0XF6,0X68,0XF6,0X69,0XF6,0X6A,0XAC,0X85,0X7B,0X22,0X72,0XE3,0X6A,0XE4,

53190X72,0XE4,0X62,0XA4,0X62,0XA5,0XDE,0XB8,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53200XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53260XFF,0XFD,0XEF,0X38,0XC5,0X8D,0XCD,0XAA,0XD5,0X88,0XE5,0XC7,0XE5,0XC6,0XDD,0XC6,

53270XE5,0XE6,0XE5,0XE6,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

53280XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE5,0XE7,0XE6,0X06,0XEE,0X07,0XEE,0X07,0XED,0XE7,

53290XF6,0X48,0XE5,0XE7,0XAC,0X42,0X9B,0XE2,0X9B,0XE4,0X93,0XC4,0X93,0XC5,0X93,0XC5,

53300X93,0XC5,0X93,0XC5,0X9B,0XE5,0X8B,0XA4,0X93,0XE5,0X8B,0XC5,0X8B,0XA6,0X83,0X66,

53310XBD,0X50,0XFF,0XFC,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

53320XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XBD,0XFF,0XDC,0XEE,0XB4,

53330XCD,0X6B,0XEE,0X2A,0XEE,0X48,0XEE,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,

53340XF6,0X66,0XF6,0X66,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

53350XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

53360XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X88,

53370XFE,0X68,0XF6,0X6A,0XBC,0XE7,0X83,0X63,0X73,0X03,0X72,0XE3,0X73,0X04,0X6A,0XC4,

53380X62,0XA5,0XDE,0X76,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,

53390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XEF,0X17,

53450XC5,0X6C,0XD5,0XAA,0XDD,0XA8,0XE5,0XE7,0XE5,0XE6,0XDD,0XE5,0XE5,0XE6,0XE5,0XE6,

53460XE5,0XC7,0XE5,0XE7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

53470XE6,0X07,0XE6,0X06,0XE6,0X06,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XF6,0X48,0XDD,0XA6,

53480XAC,0X22,0X93,0XC2,0X93,0XA4,0X93,0XA4,0X93,0XA5,0X93,0XA5,0X93,0XA6,0X93,0XC5,

53490X93,0XC5,0X8B,0XA4,0X8B,0XC5,0X8B,0XA5,0X8B,0XA6,0X83,0X67,0XC5,0X91,0XFF,0XFD,

53500XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

53510XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XBE,0XFF,0XFE,0XFF,0X79,0XD5,0XCD,0XDD,0XEA,

53520XEE,0X49,0XEE,0X27,0XF6,0X48,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X66,0XF6,0X66,

53530XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

53540XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

53550XF6,0X67,0XF6,0X87,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X89,0XF6,0X8A,

53560XC5,0X07,0X8B,0XA3,0X7B,0X43,0X73,0X03,0X7B,0X24,0X72,0XE4,0X6A,0XA5,0XDE,0X96,

53570XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XE6,0XF7,0XBD,0X4C,0XD5,0XAA,

53640XDD,0XA8,0XE5,0XC7,0XE5,0XE6,0XDD,0XE6,0XDD,0XE6,0XE5,0XE6,0XE5,0XE7,0XE5,0XE7,

53650XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X06,

53660XE6,0X06,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XF6,0X49,0XD5,0X46,0XA3,0XE2,0X8B,0X82,

53670X8B,0X63,0X8B,0X84,0X8B,0X65,0X8B,0X65,0X8B,0X65,0X8B,0X65,0X8B,0X85,0X83,0X64,

53680X83,0X64,0X83,0X65,0X83,0X66,0X7B,0X26,0XCD,0XF3,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,

53690XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

53700XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XDB,0XE6,0X71,0XD5,0XAA,0XEE,0X49,0XEE,0X47,

53710XFE,0X68,0XF6,0X27,0XF6,0X48,0XF6,0X47,0XF6,0X66,0XF6,0X66,0XF6,0X47,0XF6,0X48,

53720XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,

53730XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

53740XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XF6,0X6A,0XCD,0X47,0X9B,0XE4,

53750X83,0X64,0X7B,0X44,0X7B,0X44,0X73,0X25,0X6A,0XC5,0XDE,0X96,0XFF,0XFE,0XFF,0XFF,

53760XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53820XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XE6,0XD6,0XBD,0X4B,0XD5,0XAA,0XDD,0XA8,0XE5,0XC7,

53830XE5,0XC6,0XE5,0XE6,0XE5,0XE6,0XE5,0XE6,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

53840XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X06,0XEE,0X06,0XEE,0X27,

53850XEE,0X08,0XEE,0X08,0XF6,0X4A,0XCD,0X06,0X9B,0XC2,0X83,0X42,0X83,0X43,0X83,0X44,

53860X83,0X45,0X83,0X25,0X83,0X45,0X83,0X45,0X83,0X44,0X83,0X64,0X7B,0X24,0X7B,0X45,

53870X7B,0X26,0X72,0XE6,0XD6,0X14,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53880XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53890XFF,0XFE,0XFF,0XDB,0XF6,0XF4,0XCD,0X8A,0XE6,0X29,0XF6,0X68,0XF6,0X68,0XF6,0X27,

53900XF6,0X48,0XF6,0X47,0XF6,0X46,0XF6,0X66,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,

53910XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

53920XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,

53930XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X69,0XD5,0X88,0XA4,0X45,0X8B,0XA5,0X8B,0X85,

53940X8B,0X85,0X7B,0X45,0X73,0X05,0XDE,0XB6,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53950XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

53990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

54010XFF,0XDD,0XE6,0XD5,0XC5,0X4B,0XDD,0XCA,0XDD,0XA8,0XE5,0XC7,0XE5,0XC6,0XE5,0XE6,

54020XE5,0XE6,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

54030XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X09,

54040XF6,0X4A,0XC4,0XE5,0X93,0X82,0X83,0X02,0X7B,0X03,0X7B,0X04,0X7B,0X04,0X7B,0X04,

54050X7B,0X05,0X7B,0X04,0X7B,0X24,0X7B,0X44,0X73,0X04,0X7B,0X25,0X73,0X05,0X6A,0XC6,

54060XD6,0X35,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,

54080XFF,0X56,0XCD,0XAC,0XDD,0XE9,0XEE,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

54090XF6,0X47,0XF6,0X46,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,

54100XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,

54110XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X87,

54120XFE,0X88,0XF6,0X89,0XDD,0XC9,0XAC,0X66,0X93,0XC5,0X93,0XC6,0X93,0XC6,0X8B,0X86,

54130X83,0X87,0XEF,0X17,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XE6,0XD5,

54200XC5,0X6B,0XDD,0XC9,0XE5,0XA7,0XE5,0XC6,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

54210XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

54220XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X09,0XF6,0X2A,0XBC,0XC5,

54230X8B,0X41,0X7B,0X02,0X7B,0X03,0X72,0XE4,0X7B,0X04,0X7B,0X05,0X7A,0XE4,0X72,0XE4,

54240X73,0X04,0X73,0X24,0X72,0XE3,0X73,0X04,0X72,0XC5,0X6A,0XA6,0XD6,0X35,0XFF,0XFE,

54250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X78,0XD5,0XEE,

54270XCD,0XA8,0XEE,0X68,0XEE,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

54280XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

54290XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X68,

54300XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X66,0XFE,0X87,0XFE,0X87,0XFE,0X89,

54310XE6,0X09,0XAC,0X65,0X9B,0XE5,0X93,0XC6,0X9B,0XE6,0X8B,0XA6,0X8B,0XC8,0XF7,0X38,

54320XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XE6,0XD5,0XC5,0X6B,0XDD,0XE9,

54390XDD,0XA7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

54400XE5,0XE8,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

54410XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X09,0XF6,0X2A,0XBC,0XC5,0X83,0X00,0X7A,0XE1,

54420X7B,0X03,0X72,0XE4,0X72,0XE4,0X73,0X04,0X7A,0XE4,0X73,0X04,0X73,0X04,0X73,0X03,

54430X6B,0X03,0X6A,0XE4,0X6A,0XC5,0X62,0XA6,0XCE,0X35,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

54440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XDE,0X71,0XCD,0X89,0XEE,0X69,

54460XEE,0X47,0XF6,0X67,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

54470XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

54480XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,

54490XF6,0X67,0XF6,0X66,0XFE,0X66,0XFE,0X86,0XFE,0X87,0XFE,0X89,0XEE,0X4A,0XAC,0X45,

54500XA4,0X05,0X9B,0XE6,0X9C,0X06,0X8B,0XC6,0X94,0X09,0XFF,0X99,0XFF,0XDD,0XFF,0XFF,

54510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54570XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XEE,0XF5,0XCD,0X8B,0XDD,0XC9,0XDD,0XA7,0XED,0XE7,

54580XE6,0X07,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

54590XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X07,

54600XEE,0X08,0XEE,0X29,0XEE,0X4A,0XBC,0XC5,0X7A,0XE0,0X7A,0XE1,0X72,0XE3,0X72,0XE3,

54610X72,0XC4,0X72,0XE4,0X72,0XE4,0X72,0XE4,0X6A,0XE3,0X6A,0XE3,0X6A,0XE3,0X6A,0XC3,

54620X62,0XA4,0X62,0X85,0XCE,0X15,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54630XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54640XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XE6,0XB3,0XC5,0X69,0XEE,0X69,0XF6,0X67,0XF6,0X67,

54650XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

54660XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

54670XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XFE,0X67,0XFE,0X87,0XF6,0X66,

54680XF6,0X66,0XFE,0X86,0XFE,0XA7,0XFE,0XA9,0XF6,0X6A,0XAC,0X64,0XAC,0X46,0XA4,0X26,

54690XA4,0X26,0X93,0XC6,0XA4,0X8B,0XFF,0XFA,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

54760XFF,0XDC,0XEE,0XF5,0XCD,0X8B,0XDD,0XC8,0XE5,0XA7,0XED,0XE7,0XE5,0XE7,0XE5,0XE7,

54770XE5,0XE6,0XE6,0X07,0XE5,0XE7,0XE5,0XE8,0XED,0XE7,0XEE,0X07,0XEE,0X07,0XE6,0X06,

54780XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X06,0XEE,0X28,0XEE,0X08,0XEE,0X29,

54790XF6,0X4A,0XBC,0XA5,0X7B,0X00,0X72,0XC1,0X72,0XC2,0X6A,0XC3,0X6A,0XC4,0X6A,0XC4,

54800X6A,0XA4,0X6A,0XC3,0X6A,0XC3,0X62,0XA3,0X62,0XA3,0X6A,0XC4,0X62,0XA4,0X5A,0X45,

54810XC5,0XD4,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54820XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54830XFF,0XFD,0XE6,0XD5,0XC5,0X69,0XDE,0X29,0XEE,0X47,0XF6,0X46,0XF6,0X47,0XFE,0X47,

54840XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

54850XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,

54860XF6,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X87,0XF6,0X67,0XF6,0X66,0XFE,0X87,

54870XFE,0X87,0XFE,0XCA,0XEE,0X09,0XB4,0X84,0XB4,0X87,0XAC,0X47,0XAC,0X67,0X9C,0X27,

54880XC5,0X8F,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

54890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

54940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XEE,0XF5,

54950XCD,0X8B,0XDD,0XA9,0XE5,0XA7,0XED,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X06,0XE6,0X07,

54960XE5,0XE7,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

54970XEE,0X27,0XEE,0X27,0XE6,0X07,0XEE,0X27,0XEE,0X08,0XEE,0X09,0XF6,0X4A,0XBC,0X85,

54980X7B,0X00,0X6A,0X80,0X6A,0XA2,0X62,0X83,0X6A,0XA3,0X6A,0XA4,0X62,0X84,0X62,0XA3,

54990X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0X64,0X52,0X24,0XB5,0X73,0XFF,0XDE,

55000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

55010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XEE,0XF6,

55020XC5,0X8A,0XDE,0X09,0XEE,0X47,0XF6,0X46,0XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,

55030XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X46,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,

55040XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X68,

55050XFE,0X68,0XFE,0X67,0XFE,0X87,0XF6,0X67,0XF6,0X86,0XFE,0X87,0XFE,0XA8,0XFE,0XCA,

55060XE5,0XE8,0XBC,0XA5,0XBC,0XC7,0XB4,0X87,0XAC,0XA8,0XA4,0X89,0XD6,0X32,0XFF,0XFB,

55070XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XEF,0X16,0XD5,0XAC,0XDD,0XC9,

55140XE5,0XC8,0XED,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X06,0XE6,0X06,0XE6,0X07,0XE6,0X07,

55150XEE,0X07,0XED,0XE7,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

55160XE6,0X06,0XEE,0X48,0XEE,0X08,0XEE,0X09,0XF6,0X6B,0XBC,0XA5,0X83,0X01,0X6A,0X60,

55170X62,0X82,0X5A,0X42,0X62,0X63,0X62,0X64,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X83,

55180X5A,0X83,0X5A,0X63,0X52,0X43,0X4A,0X04,0XA4,0XF1,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

55190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0X37,0XC5,0X8B,0XDD,0XE9,

55210XF6,0X48,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

55220XF6,0X46,0XF6,0X66,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,

55230XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X67,

55240XFE,0X87,0XF6,0X67,0XF6,0X87,0XFE,0XA7,0XFE,0XC9,0XFE,0XCA,0XE5,0XC7,0XC4,0XE6,

55250XC4,0XE7,0XBC,0XE8,0XB4,0XC9,0XB4,0XEB,0XEE,0XF6,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,

55260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55320XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XF7,0X57,0XD5,0XED,0XDD,0XCA,0XE5,0XE8,0XED,0XE7,

55330XE5,0XE7,0XE6,0X07,0XE6,0X06,0XE6,0X06,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

55340XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X06,0XEE,0X47,

55350XEE,0X28,0XEE,0X29,0XF6,0X6B,0XBC,0XC6,0X83,0X01,0X62,0X60,0X5A,0X41,0X5A,0X42,

55360X5A,0X43,0X5A,0X43,0X5A,0X23,0X5A,0X23,0X5A,0X43,0X5A,0X63,0X52,0X42,0X52,0X43,

55370X52,0X03,0X49,0XE4,0X94,0X4E,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

55380XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55390XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0X78,0XCD,0XAC,0XDD,0XE9,0XF6,0X48,0XF6,0X67,

55400XFE,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X66,0XF6,0X66,

55410XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

55420XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XF6,0X67,

55430XF6,0X87,0XFE,0XA8,0XFE,0XA9,0XFE,0XAA,0XDD,0X67,0XCD,0X06,0XC5,0X27,0XC5,0X28,

55440XB4,0XC9,0XBD,0X6E,0XFF,0X79,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

55510XFF,0XFD,0XF7,0X78,0XDE,0X0E,0XDD,0XCA,0XED,0XE9,0XED,0XE7,0XE5,0XE7,0XE6,0X06,

55520XE6,0X26,0XE6,0X26,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

55530XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X26,0XEE,0X47,0XEE,0X27,0XEE,0X29,

55540XF6,0X6A,0XC5,0X07,0X7B,0X00,0X62,0X40,0X5A,0X21,0X5A,0X22,0X52,0X03,0X52,0X23,

55550X52,0X23,0X52,0X23,0X52,0X23,0X52,0X42,0X52,0X42,0X52,0X23,0X52,0X03,0X49,0XE4,

55560X7B,0XAC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

55570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55580XFF,0XFE,0XFF,0X99,0XCD,0XCD,0XD5,0XC9,0XF6,0X49,0XF6,0X47,0XFE,0X47,0XFE,0X47,

55590XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,

55600XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,

55610XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X87,0XF6,0X87,0XFE,0XA8,

55620XFE,0XAA,0XFE,0X8A,0XD5,0X46,0XCD,0X26,0XCD,0X47,0XC5,0X48,0XB4,0XE9,0XCE,0X11,

55630XFF,0XDB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X99,

55700XDE,0X70,0XDD,0XCA,0XED,0XE9,0XED,0XC7,0XEE,0X07,0XE6,0X06,0XEE,0X26,0XEE,0X26,

55710XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

55720XEE,0X27,0XEE,0X27,0XEE,0X26,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XF6,0X4A,0XCD,0X68,

55730X83,0X01,0X62,0X40,0X5A,0X21,0X52,0X22,0X52,0X02,0X52,0X03,0X52,0X03,0X52,0X03,

55740X52,0X02,0X52,0X22,0X4A,0X22,0X4A,0X22,0X4A,0X03,0X49,0XE3,0X62,0XC8,0XFF,0XDD,

55750XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0X79,

55770XCD,0XAD,0XD5,0XC9,0XF6,0X69,0XF6,0X27,0XFE,0X47,0XFE,0X67,0XF6,0X67,0XF6,0X67,

55780XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,

55790XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

55800XFE,0X67,0XFE,0X67,0XFE,0X88,0XF6,0X87,0XFE,0X88,0XFE,0XC9,0XFE,0X8A,0XF6,0X4A,

55810XD5,0X46,0XD5,0X67,0XCD,0X67,0XC5,0X68,0XBD,0X2B,0XE6,0XB4,0XFF,0XDC,0XFF,0XFE,

55820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDA,0XEE,0XB1,0XDD,0XEB,

55890XE5,0XE9,0XE5,0XC7,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,

55900XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

55910XEE,0X26,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XF6,0X4A,0XDD,0XC9,0X83,0X41,0X62,0X40,

55920X5A,0X21,0X52,0X02,0X52,0X02,0X52,0X03,0X52,0X03,0X4A,0X03,0X4A,0X02,0X4A,0X02,

55930X4A,0X01,0X4A,0X02,0X4A,0X02,0X49,0XC3,0X4A,0X05,0XEF,0X1A,0XFF,0XBE,0XFF,0XFF,

55940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

55950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0X78,0XCD,0XAD,0XDD,0XCA,

55960XF6,0X49,0XF6,0X27,0XFE,0X47,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

55970XF6,0X66,0XF6,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,

55980XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

55990XFE,0X68,0XF6,0X87,0XFE,0X88,0XFE,0XC9,0XFE,0X8A,0XED,0XE8,0XD5,0X47,0XDD,0X88,

56000XD5,0X86,0XC5,0X68,0XCD,0XAD,0XF7,0X37,0XFF,0XDC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56070XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XEE,0XF3,0XDD,0XEC,0XE5,0XE9,0XE5,0XC7,

56080XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,

56090XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X26,0XF6,0X47,

56100XEE,0X47,0XF6,0X48,0XF6,0X69,0XE6,0X2A,0X8B,0X82,0X62,0X40,0X5A,0X21,0X51,0XE1,

56110X52,0X02,0X49,0XE3,0X52,0X03,0X52,0X03,0X52,0X22,0X4A,0X22,0X4A,0X01,0X4A,0X22,

56120X4A,0X02,0X49,0XC3,0X39,0X83,0XD6,0X57,0XF7,0X7D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56140XFF,0XFF,0XFF,0XFF,0XFF,0XBD,0XFF,0X58,0XCD,0XAD,0XDD,0XC9,0XF6,0X69,0XF6,0X07,

56150XFE,0X47,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,

56160XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

56170XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,

56180XFE,0X88,0XFE,0XCA,0XFE,0X8A,0XE5,0XA8,0XDD,0X67,0XDD,0XC9,0XD5,0X87,0XC5,0X89,

56190XD6,0X30,0XFF,0X99,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56260XFF,0XFD,0XFF,0XFB,0XF7,0X55,0XDE,0X4E,0XDD,0XEA,0XE6,0X08,0XEE,0X27,0XEE,0X06,

56270XF6,0X06,0XF6,0X06,0XEE,0X07,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X26,0XF6,0X26,

56280XF6,0X27,0XF6,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X46,0XEE,0X46,0XEE,0X47,

56290XEE,0X48,0XEE,0X6A,0XAC,0X65,0X62,0X60,0X52,0X00,0X52,0X01,0X52,0X23,0X49,0XE2,

56300X4A,0X03,0X4A,0X03,0X4A,0X02,0X4A,0X01,0X4A,0X02,0X49,0XE1,0X49,0XC2,0X41,0XC2,

56310X41,0XA2,0XA4,0XB0,0XFF,0XFF,0XFF,0XDF,0XF7,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

56330XFF,0XDE,0XF7,0X17,0XCD,0X8B,0XE6,0X0A,0XEE,0X28,0XFE,0X47,0XFE,0X67,0XF6,0X46,

56340XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,

56350XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

56360XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X67,0XFE,0X88,0XFE,0XA9,0XFE,0XAA,

56370XF6,0X2A,0XE5,0XC9,0XDD,0X88,0XDD,0XC9,0XD5,0XA8,0XCD,0XAB,0XEE,0XF4,0XFF,0XDB,

56380XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFC,

56450XFF,0X98,0XE6,0XB1,0XDE,0X0B,0XDD,0XE8,0XEE,0X47,0XEE,0X06,0XF6,0X06,0XF6,0X06,

56460XEE,0X27,0XEE,0X27,0XEE,0X46,0XEE,0X26,0XF6,0X26,0XF6,0X26,0XF6,0X27,0XF6,0X28,

56470XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X46,0XEE,0X46,0XEE,0X47,0XEE,0X48,0XF6,0X8A,

56480XBC,0XE6,0X72,0XC0,0X5A,0X20,0X51,0XE1,0X52,0X22,0X4A,0X03,0X4A,0X03,0X4A,0X02,

56490X4A,0X02,0X4A,0X01,0X4A,0X01,0X4A,0X02,0X49,0XE2,0X49,0XC2,0X41,0XA2,0X7B,0X4A,

56500XFF,0XBD,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XEE,0XF7,

56520XC5,0X6A,0XE6,0X09,0XF6,0X48,0XFE,0X47,0XFE,0X47,0XFE,0X46,0XF6,0X66,0XF6,0X66,

56530XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XFE,0X68,0XFE,0X67,

56540XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

56550XFE,0X87,0XFE,0X87,0XFE,0X68,0XFE,0X88,0XFE,0XAA,0XFE,0X8A,0XF6,0X4A,0XE5,0XC9,

56560XE5,0XE9,0XDD,0XEA,0XD5,0XCA,0XDE,0X4F,0XFF,0X77,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,

56570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XF7,0X14,

56640XDE,0X2C,0XE6,0X28,0XEE,0X47,0XEE,0X26,0XF6,0X26,0XF6,0X26,0XEE,0X27,0XEE,0X27,

56650XEE,0X46,0XEE,0X46,0XF6,0X26,0XF6,0X26,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XEE,0X47,

56660XEE,0X47,0XEE,0X46,0XEE,0X46,0XEE,0X47,0XF6,0X48,0XF6,0X8A,0XD5,0XA8,0X8B,0X61,

56670X62,0X40,0X52,0X00,0X5A,0X42,0X52,0X22,0X52,0X23,0X4A,0X22,0X4A,0X22,0X4A,0X22,

56680X52,0X22,0X52,0X22,0X52,0X02,0X51,0XE2,0X49,0XE3,0X52,0X25,0XE6,0XF9,0XFF,0XDE,

56690XFF,0XFE,0XFF,0XFE,0XFF,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBD,0XEE,0XD6,0XC5,0X49,0XE6,0X08,

56710XFE,0X68,0XFE,0X67,0XF6,0X26,0XFE,0X67,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X67,

56720XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

56730XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X88,

56740XFE,0X88,0XFE,0XA9,0XFE,0XAA,0XFE,0X8A,0XF6,0X49,0XEE,0X29,0XE6,0X09,0XE6,0X2B,

56750XDE,0X0C,0XF6,0XF3,0XFF,0XFA,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56820XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XFF,0X56,0XDE,0X4D,0XE6,0X49,

56830XEE,0X26,0XF6,0X46,0XF6,0X26,0XF6,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X46,0XEE,0X46,

56840XF6,0X26,0XF6,0X26,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XF6,0X67,0XF6,0X47,

56850XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X89,0XE6,0X09,0XA4,0X03,0X72,0XA0,0X5A,0X20,

56860X5A,0X62,0X52,0X42,0X5A,0X63,0X5A,0X63,0X52,0X42,0X52,0X42,0X52,0X42,0X5A,0X42,

56870X52,0X22,0X52,0X22,0X52,0X23,0X4A,0X04,0XB5,0X93,0XFF,0XFD,0XFF,0XDD,0XFF,0XDD,

56880XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56890XFF,0XFF,0XFF,0XFE,0XFF,0X7B,0XE6,0X94,0XC5,0X69,0XE6,0X28,0XFE,0X88,0XFE,0X47,

56900XFE,0X46,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X66,

56910XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

56920XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X88,0XFE,0XA9,0XFE,0XCA,

56930XFE,0XAA,0XF6,0X69,0XF6,0X68,0XEE,0X48,0XEE,0X29,0XE6,0X2B,0XE6,0X90,0XFF,0X97,

56940XFF,0XFC,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

56990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

57010XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0X99,0XEE,0XCF,0XE6,0X49,0XE6,0X26,0XF6,0X46,

57020XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X46,

57030XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

57040XF6,0X47,0XF6,0X89,0XF6,0X6A,0XBC,0XC5,0X83,0X41,0X62,0X60,0X62,0X61,0X62,0X82,

57050X62,0X83,0X5A,0X83,0X5A,0X83,0X5A,0X83,0X5A,0X63,0X62,0X62,0X62,0X42,0X5A,0X42,

57060X52,0X43,0X52,0X64,0X83,0XEC,0XFF,0XBC,0XFF,0XDC,0XFF,0XFE,0XFF,0XFE,0XFF,0XDF,

57070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

57080XFF,0X9A,0XD6,0X11,0XCD,0X69,0XEE,0X48,0XFE,0X88,0XFE,0X46,0XFE,0X67,0XFE,0X67,

57090XFE,0X67,0XFE,0X67,0XF6,0X68,0XF6,0X68,0XFE,0X67,0XFE,0X66,0XFE,0X67,0XFE,0X67,

57100XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X67,

57110XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0XA9,0XFE,0XCA,0XF6,0X8A,0XEE,0X49,

57120XF6,0X68,0XEE,0X47,0XEE,0X6A,0XDE,0X2C,0XFF,0X55,0XFF,0XDB,0XFF,0XDD,0XFF,0XFF,

57130XF7,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

57200XFF,0XFF,0XFF,0XDB,0XFF,0X53,0XDE,0X2A,0XEE,0X48,0XEE,0X26,0XF6,0X27,0XF6,0X27,

57210XF6,0X27,0XEE,0X47,0XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X47,0XF6,0X47,

57220XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X46,0XF6,0X47,0XF6,0X47,0XFE,0X68,0XEE,0X28,

57230XFE,0XAB,0XDD,0XC8,0X93,0XC2,0X72,0XC0,0X72,0XE2,0X6A,0XA2,0X6A,0XC3,0X6A,0XC3,

57240X6A,0XA3,0X62,0XA3,0X6A,0XA3,0X6A,0XA3,0X6A,0XA3,0X6A,0XA3,0X62,0X84,0X5A,0X84,

57250X6B,0X28,0XD6,0X96,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

57260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X99,0XC5,0X8D,

57270XCD,0X88,0XEE,0X48,0XFE,0X87,0XF6,0X45,0XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X67,

57280XF6,0X68,0XF6,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

57290XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X87,0XFE,0X87,

57300XFE,0X87,0XFE,0X87,0XFE,0XC9,0XFE,0XAA,0XF6,0X8A,0XEE,0X69,0XEE,0X67,0XEE,0X89,

57310XE6,0X4A,0XEE,0XF1,0XFF,0XB9,0XFF,0XDD,0XF7,0XDE,0XF7,0XFF,0XF7,0XFE,0XF7,0XFF,

57320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57380XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,

57390XFF,0XB6,0XEE,0XAE,0XE6,0X49,0XEE,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X47,

57400XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X66,0XF6,0X66,0XF6,0X66,

57410XF6,0X66,0XF6,0X66,0XF6,0X47,0XF6,0X47,0XFE,0X88,0XEE,0X07,0XFE,0XAA,0XF6,0X6B,

57420XB4,0X84,0X8B,0X61,0X83,0X42,0X73,0X02,0X73,0X24,0X73,0X24,0X73,0X05,0X73,0X05,

57430X73,0X04,0X7A,0XE4,0X7A,0XE4,0X7A,0XE4,0X73,0X05,0X72,0XE5,0X6A,0XE6,0XA4,0XCE,

57440XFF,0XBB,0XFF,0XFD,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57450XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XF7,0X16,0XBD,0X2A,0XDD,0XE9,0XEE,0X68,

57460XFE,0XA7,0XF6,0X45,0XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XF6,0X68,0XF6,0X68,

57470XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

57480XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0XA7,

57490XFE,0XA8,0XFE,0XA9,0XF6,0X89,0XEE,0X89,0XE6,0X68,0XEE,0XAB,0XE6,0X8D,0XFF,0XB6,

57500XFF,0XBB,0XFF,0XDE,0XFF,0XFF,0XF7,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57570XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDD,0XFF,0XB9,0XFF,0X53,

57580XDE,0X2B,0XEE,0X49,0XEE,0X28,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X46,

57590XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X46,0XF6,0X66,0XF6,0X66,0XF6,0X66,0XF6,0X66,

57600XF6,0X66,0XF6,0X67,0XF6,0X47,0XF6,0X68,0XF6,0X69,0XF6,0X6A,0XD5,0X67,0XA4,0X03,

57610X83,0X21,0X83,0X63,0X83,0X64,0X83,0X65,0X83,0X65,0X83,0X45,0X83,0X45,0X83,0X45,

57620X83,0X25,0X83,0X24,0X83,0X25,0X8B,0X87,0X62,0XA4,0X8B,0XC9,0XDE,0X95,0XFF,0XFC,

57630XFF,0XDE,0XFF,0XFF,0XF7,0XBF,0XFF,0XDF,0XF7,0XDF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFE,

57640XFF,0XFD,0XFF,0XD9,0XE6,0X72,0XBD,0X08,0XEE,0X4A,0XF6,0X67,0XFE,0X87,0XF6,0X45,

57650XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X87,

57660XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

57670XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0XA8,0XF6,0X88,

57680XEE,0X69,0XEE,0X8A,0XEE,0XAB,0XD6,0X0B,0XFF,0X74,0XFF,0XD9,0XFF,0XDD,0XFF,0XFF,

57690XF7,0XDF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XFF,0X97,0XEE,0XD0,0XE6,0X2B,

57770XEE,0X28,0XF6,0X68,0XF6,0X47,0XF6,0X26,0XF6,0X46,0XF6,0X46,0XF6,0X26,0XFE,0X47,

57780XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X66,0XF6,0X67,

57790XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X69,0XEE,0X29,0XC5,0X05,0X9B,0XC2,0X93,0XC3,

57800X93,0XE5,0X8B,0X84,0X93,0XE6,0X8B,0XA5,0X8B,0XA5,0X93,0XA6,0X93,0X85,0X93,0X85,

57810X93,0XA5,0X83,0X24,0X8B,0XA6,0X83,0X87,0XAD,0X0E,0XEF,0X58,0XFF,0XDD,0XFF,0XFE,

57820XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XFF,0X97,

57830XBD,0X2B,0XCD,0X89,0XEE,0X69,0XF6,0X67,0XF6,0X66,0XFE,0X86,0XFE,0X66,0XFE,0X67,

57840XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,

57850XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,

57860XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0XA8,0XF6,0XA8,0XF6,0XA9,0XF6,0X88,0XE6,0X69,

57870XE6,0X6C,0XF7,0X32,0XFF,0XB8,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

57940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,

57950XFF,0XFF,0XFF,0XDD,0XFF,0XDD,0XFF,0XDA,0XFF,0X55,0XEE,0XAE,0XE6,0X29,0XF6,0X68,

57960XF6,0X47,0XF6,0X26,0XF6,0X46,0XFE,0X46,0XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,

57970XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X47,

57980XF6,0X47,0XF6,0X68,0XF6,0X89,0XDD,0XE8,0XBC,0XC4,0X9C,0X02,0XA4,0X25,0X9C,0X25,

57990X9C,0X05,0XA4,0X47,0X9C,0X06,0X9C,0X06,0X9C,0X05,0XA4,0X05,0XA3,0XC5,0X9B,0XC5,

58000XA4,0X27,0X8B,0XA6,0X8B,0XE8,0XC5,0XD1,0XF7,0X79,0XFF,0XDD,0XFF,0XFF,0XF7,0XBE,

58010XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XFF,0XFA,0XDE,0X50,0XAC,0XA7,0XE6,0X2A,

58020XF6,0XA9,0XF6,0X87,0XF6,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X47,0XFE,0X68,0XFE,0X68,

58030XFE,0X68,0XF6,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

58040XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X68,0XFE,0X88,0XFE,0X88,

58050XFE,0X88,0XF6,0X88,0XF6,0XA9,0XF6,0XCA,0XF6,0XAA,0XE6,0X4B,0XF7,0X11,0XFF,0X97,

58060XFF,0XDB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,

58140XFF,0XDE,0XFF,0XFD,0XFF,0XB9,0XF7,0X33,0XE6,0X6B,0XEE,0X68,0XEE,0X67,0XF6,0X87,

58150XF6,0X46,0XFE,0X46,0XFE,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X68,

58160XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X88,

58170XF6,0X68,0XEE,0X48,0XDD,0XC7,0XBC,0XC4,0XAC,0X64,0XB4,0XA6,0XAC,0X85,0XAC,0X86,

58180XAC,0X66,0XAC,0X66,0XAC,0X45,0XAC,0X45,0XAC,0X45,0XAC,0X25,0XA4,0X25,0X9C,0X46,

58190X94,0X06,0X94,0X69,0XCE,0X12,0XF7,0X9A,0XFF,0XFE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDE,

58200XFF,0XDD,0XFF,0XFB,0XF7,0X55,0XB5,0X09,0XCD,0X68,0XF6,0X6A,0XEE,0X47,0XF6,0X87,

58210XFE,0XA6,0XF6,0X45,0XFE,0X46,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,0XF6,0X87,

58220XF6,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,

58230XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0XA8,0XF6,0XA9,

58240XF6,0X8A,0XEE,0X6B,0XEE,0X8D,0XF6,0XF0,0XFF,0X96,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,

58250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDF,0XFF,0XFE,

58330XFF,0XDB,0XFF,0XB7,0XEE,0XCF,0XE6,0X49,0XEE,0X68,0XF6,0XA8,0XF6,0X26,0XF6,0X26,

58340XFE,0X68,0XF6,0X28,0XF6,0X49,0XF6,0X49,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,

58350XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X87,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,

58360XF6,0XA9,0XDD,0XE7,0XBC,0XE4,0XB4,0XC4,0XB4,0XE6,0XAC,0XA5,0XB4,0XA5,0XB4,0XA6,

58370XB4,0X85,0XB4,0X65,0XB4,0X85,0XB4,0X45,0XAC,0X45,0XA4,0X45,0X9C,0X25,0X94,0X46,

58380X9C,0X69,0XB5,0X6F,0XE6,0XF8,0XFF,0XDD,0XFF,0XFD,0XFF,0XBC,0XFF,0XDB,0XFF,0X97,

58390XCD,0XAD,0XB4,0XE7,0XF6,0X6B,0XF6,0X69,0XEE,0X47,0XF6,0X66,0XF6,0X66,0XFE,0X87,

58400XFE,0X67,0XFE,0X48,0XFE,0X68,0XFE,0X68,0XF6,0X88,0XF6,0X87,0XF6,0X87,0XFE,0X87,

58410XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X87,

58420XFE,0X87,0XFE,0X87,0XFE,0XA7,0XFE,0XA7,0XF6,0XA8,0XF6,0XAA,0XEE,0XAC,0XE6,0X8D,

58430XEE,0XD1,0XFF,0X76,0XFF,0XBA,0XFF,0XDD,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

58440XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58510XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,

58520XFF,0X74,0XEE,0XAE,0XE6,0X6A,0XF6,0X89,0XF6,0X67,0XFE,0X47,0XFE,0X68,0XFE,0X48,

58530XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,0XF6,0X67,

58540XF6,0X87,0XF6,0X87,0XF6,0X66,0XF6,0X87,0XF6,0X67,0XFE,0XA8,0XFF,0X0A,0XFE,0XEA,

58550XDE,0X07,0XBD,0X04,0XB5,0X04,0XBD,0X05,0XBC,0XE5,0XB4,0XC5,0XBC,0XC5,0XB4,0X84,

58560XB4,0X64,0XBC,0XC5,0XA4,0X03,0XAC,0X65,0X9C,0X44,0X8B,0XE4,0X94,0X27,0X7B,0X66,

58570X94,0X0A,0XCD,0XF3,0XF7,0X58,0XFF,0XB9,0XFF,0X97,0XDE,0X30,0XA4,0X65,0XE6,0X0A,

58580XFE,0X8A,0XF6,0X47,0XFE,0X87,0XF6,0X66,0XF6,0X46,0XFE,0X87,0XFE,0X88,0XFE,0X48,

58590XFE,0X68,0XFE,0X68,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XFE,0X67,0XFE,0X67,

58600XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,

58610XF6,0X87,0XFE,0XC9,0XF6,0XCA,0XEE,0XAB,0XE6,0XAE,0XEE,0XF2,0XFF,0X56,0XFF,0XBB,

58620XFF,0XDD,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

58630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

58700XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD9,0XF7,0X33,

58710XE6,0X6C,0XE6,0X29,0XF6,0X88,0XFE,0X87,0XFE,0X47,0XFE,0X87,0XFE,0X67,0XFE,0X68,

58720XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X67,0XF6,0X66,0XF6,0X87,

58730XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XFE,0XA8,0XFF,0X0A,0XFE,0XEA,0XE6,0X48,

58740XBD,0X24,0XBD,0X04,0XBC,0XE4,0XB4,0XC4,0XB4,0XA4,0XB4,0X84,0XB4,0X64,0XB4,0X64,

58750XA4,0X24,0XA4,0X24,0X9C,0X03,0X93,0XC3,0X8B,0XA4,0X8B,0X85,0X83,0X66,0X72,0XE4,

58760X7B,0X25,0XBD,0X2C,0XC5,0X8C,0XBD,0X29,0XE6,0X0A,0XEE,0X49,0XF6,0X88,0XF6,0X47,

58770XF6,0X67,0XFE,0X87,0XFE,0XA7,0XF6,0X46,0XFE,0X48,0XFE,0X69,0XFE,0X68,0XFE,0X68,

58780XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XFE,0X67,0XFE,0X68,0XFE,0X67,0XFE,0X67,

58790XFE,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0XA8,0XF6,0XC9,0XF6,0XCA,

58800XEE,0XAB,0XE6,0XAD,0XEE,0XF1,0XF7,0X56,0XFF,0XBA,0XFF,0XFE,0XFF,0XBE,0XFF,0XDF,

58810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

58820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

58890XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XFD,0XFF,0XDC,0XFF,0X98,0XEE,0XD0,0XE6,0X4B,

58900XF6,0X69,0XF6,0X67,0XF6,0X46,0XFE,0X66,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X67,

58910XFE,0X48,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0XA8,0XF6,0X87,0XF6,0X66,0XF6,0X67,

58920XFE,0X87,0XFE,0X87,0XF6,0X67,0XF6,0X88,0XFF,0X0A,0XFF,0X4C,0XDE,0X28,0XCD,0X86,

58930XBD,0X05,0XB4,0XC4,0XB4,0XA3,0XB4,0X83,0XAC,0X42,0XB4,0X44,0XA4,0X24,0X93,0XA3,

58940X93,0X82,0X8B,0X41,0X83,0X21,0X83,0X22,0X72,0XC2,0X62,0X40,0X6A,0X80,0X83,0X62,

58950XBC,0XE7,0XE6,0X0A,0XF6,0X6A,0XF6,0X69,0XF6,0X67,0XFE,0X87,0XF6,0X66,0XFE,0X87,

58960XFE,0X87,0XFE,0X47,0XFE,0X48,0XFE,0X48,0XFE,0X68,0XFE,0X68,0XF6,0X87,0XF6,0X87,

58970XF6,0X87,0XF6,0X87,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,

58980XFE,0X87,0XFE,0X88,0XFE,0X88,0XF6,0XA9,0XFE,0XEC,0XEE,0X8C,0XE6,0X8D,0XEE,0XF1,

58990XFF,0X96,0XFF,0XFA,0XFF,0XFC,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

59000XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59070XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59080XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XFF,0X76,0XF6,0XD0,0XEE,0X6B,0XF6,0X89,

59090XFE,0XA8,0XFE,0X87,0XFE,0X66,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X48,0XFE,0X48,

59100XFE,0X68,0XFE,0X68,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X67,0XFE,0X88,0XFE,0X88,

59110XF6,0X68,0XFE,0XA9,0XFE,0XEA,0XFF,0X0B,0XFF,0X6D,0XEE,0XAA,0XCD,0X86,0XBD,0X04,

59120XBC,0XE4,0XAC,0X63,0XAC,0X42,0X9B,0XE1,0X9B,0XC3,0X9B,0XA3,0X93,0X81,0X83,0X00,

59130X7A,0XE0,0X72,0X80,0X72,0XA0,0X8B,0X81,0XAC,0X84,0XCD,0X67,0XE6,0X29,0XEE,0X49,

59140XFE,0X89,0XFE,0X88,0XFE,0X67,0XFE,0X87,0XF6,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X67,

59150XFE,0X68,0XFE,0X48,0XFE,0X68,0XFE,0X68,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XFE,0X68,

59160XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0XA7,0XFE,0XA7,0XF6,0XA8,

59170XF6,0X8A,0XF6,0X8B,0XE6,0X4C,0XEE,0X8F,0XF7,0X33,0XFF,0XB7,0XFF,0XDA,0XFF,0XFC,

59180XFF,0XFE,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

59190XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59270XFF,0XFE,0XFF,0XDC,0XFF,0XDA,0XFF,0X95,0XF6,0XF0,0XE6,0X6B,0XEE,0X69,0XF6,0X88,

59280XF6,0X67,0XFE,0X66,0XFE,0X46,0XFE,0X67,0XFE,0X88,0XFE,0X68,0XFE,0X48,0XFE,0X68,

59290XF6,0X67,0XF6,0X67,0XF6,0X87,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XF6,0X88,

59300XF6,0X89,0XF6,0XA9,0XFE,0XEB,0XFF,0X2C,0XFF,0X2C,0XEE,0X8A,0XCD,0X87,0XBC,0XC4,

59310XAC,0X83,0XAC,0X42,0XA4,0X02,0X93,0XC1,0X93,0X81,0X93,0X81,0X9B,0XC2,0XA4,0X02,

59320XC5,0X05,0XD5,0XA7,0XEE,0X48,0XEE,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X68,0XFE,0X68,

59330XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,

59340XFE,0X68,0XFE,0X67,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X69,0XFE,0X49,0XFE,0X49,

59350XFE,0X67,0XFE,0X66,0XFE,0X86,0XF6,0XA7,0XFE,0XA8,0XF6,0XAA,0XEE,0XAC,0XEE,0X8E,

59360XEE,0XB2,0XF7,0X36,0XFF,0XB9,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

59370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDD,

59460XFF,0XFC,0XFF,0XD9,0XFF,0X55,0XEE,0XD0,0XEE,0X8C,0XEE,0X6A,0XF6,0X68,0XFE,0X87,

59470XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X48,0XFE,0X48,0XFE,0X69,0XFE,0X88,0XFE,0X88,

59480XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

59490XF6,0X68,0XF6,0XA9,0XFF,0X0B,0XFF,0X4C,0XFF,0X2C,0XFE,0XEB,0XEE,0X6A,0XE6,0X29,

59500XDD,0XE8,0XD5,0XA8,0XD5,0XC8,0XE5,0XE9,0XEE,0X4A,0XF6,0X8A,0XF6,0X8A,0XF6,0X68,

59510XF6,0X47,0XF6,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X87,0XFE,0X87,

59520XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X67,

59530XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X69,0XFE,0X6A,0XFE,0X69,0XFE,0X68,0XFE,0X88,

59540XFE,0XA8,0XF6,0XA9,0XEE,0X8A,0XEE,0X8C,0XEE,0XCF,0XF7,0X13,0XFF,0X98,0XFF,0XBB,

59550XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFC,

59650XFF,0XDA,0XFF,0X76,0XF6,0XF1,0XEE,0X8D,0XEE,0X69,0XEE,0X68,0XF6,0X87,0XFE,0X87,

59660XFE,0X87,0XFE,0X88,0XFE,0X69,0XFE,0X49,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,

59670XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0XA7,0XFE,0XA7,0XF6,0X87,0XF6,0X87,0XF6,0X88,

59680XF6,0X88,0XEE,0X68,0XF6,0X88,0XFE,0XCA,0XFF,0X2C,0XFF,0X2C,0XFF,0X0C,0XFF,0X0C,

59690XFE,0XEB,0XFE,0XCA,0XF6,0X89,0XEE,0X48,0XEE,0X27,0XF6,0X68,0XFE,0X88,0XFE,0X88,

59700XFE,0X87,0XFE,0X87,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,

59710XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,

59720XFE,0X68,0XFE,0X68,0XF6,0X88,0XF6,0X89,0XFE,0X89,0XF6,0X89,0XEE,0X8A,0XEE,0XAC,

59730XEE,0XAE,0XF6,0XF1,0XFF,0X55,0XFF,0XB9,0XFF,0XDB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,

59740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

59750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59820XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

59830XFF,0XDF,0XFF,0XDE,0XFF,0XFF,0XFF,0XDE,0XFF,0XBE,0XFF,0XDE,0XFF,0XDD,0XFF,0XBA,

59840XFF,0X76,0XF7,0X12,0XEE,0XCD,0XEE,0X8A,0XF6,0XA8,0XFE,0XA8,0XFE,0X88,0XFE,0X68,

59850XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X87,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,

59860XFE,0X87,0XFE,0XA7,0XF6,0X86,0XFE,0XA7,0XF6,0X87,0XF6,0X66,0XF6,0X67,0XFE,0XA8,

59870XFE,0XC9,0XF6,0XA9,0XEE,0X48,0XEE,0X48,0XEE,0X68,0XEE,0X68,0XF6,0X88,0XF6,0X88,

59880XF6,0X88,0XF6,0XA8,0XF6,0X88,0XFE,0XA9,0XFE,0XA9,0XF6,0X67,0XF6,0X46,0XFE,0X86,

59890XFE,0XA6,0XFE,0X86,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,

59900XFE,0X67,0XFE,0X67,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X68,0XFE,0X88,0XF6,0X89,

59910XF6,0XA9,0XF6,0XCA,0XEE,0X8B,0XEE,0X8C,0XEE,0XAE,0XF7,0X11,0XFF,0X55,0XFF,0X98,

59920XFF,0XDA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59930XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

59990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

60010XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,

60020XF7,0X9D,0XF7,0X9D,0XFF,0XBE,0XF7,0X9E,0XF7,0X7E,0XFF,0X7C,0XFF,0X7A,0XFF,0X77,

60030XF7,0X33,0XEE,0XAE,0XE6,0X8B,0XEE,0X69,0XF6,0X69,0XFE,0X89,0XFE,0X89,0XFE,0X69,

60040XFE,0X87,0XFE,0X86,0XFE,0X67,0XFE,0X87,0XFE,0XA7,0XFE,0XA7,0XFE,0X87,0XF6,0X66,

60050XF6,0X86,0XF6,0X86,0XF6,0X87,0XFE,0XC8,0XFE,0XA9,0XF6,0X68,0XF6,0X28,0XF6,0X49,

60060XF6,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XF6,0XA7,0XF6,0X87,0XF6,0X87,0XF6,0X87,

60070XF6,0X68,0XF6,0X47,0XF6,0X47,0XFE,0X68,0XFE,0X87,0XFE,0X86,0XFE,0X66,0XFE,0X66,

60080XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X87,

60090XFE,0X87,0XFE,0X67,0XFE,0X67,0XF6,0X68,0XF6,0X68,0XEE,0X69,0XEE,0X8A,0XEE,0XAC,

60100XEE,0XCE,0XF7,0X11,0XFF,0X75,0XFF,0XB8,0XFF,0XDA,0XFF,0XDC,0XFF,0XDD,0XFF,0XDE,

60110XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBF,

60120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

60190XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

60200XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5C,0XEF,0X3C,0XEF,0X5C,

60210XEF,0X5D,0XEF,0X3D,0XE7,0X1D,0XE7,0X1C,0XEF,0X1B,0XEF,0X19,0XEE,0XF6,0XEE,0XF3,

60220XF6,0XF0,0XEE,0XAD,0XEE,0X6B,0XF6,0X6A,0XF6,0X6A,0XFE,0X69,0XFE,0X87,0XFE,0X86,

60230XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X86,0XFE,0XA7,

60240XFE,0XA7,0XF6,0X87,0XF6,0X47,0XFE,0X68,0XFE,0X69,0XFE,0X69,0XF6,0X88,0XF6,0X68,

60250XF6,0X67,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XFE,0X87,0XFE,0X87,0XFE,0XA8,0XFE,0X88,

60260XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X66,0XFE,0X66,0XFE,0X66,0XFE,0X67,0XFE,0X68,

60270XFE,0X68,0XF6,0X68,0XF6,0X88,0XF6,0X87,0XF6,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,

60280XFE,0X89,0XFE,0X8A,0XF6,0XAB,0XEE,0XAC,0XEE,0XCE,0XEE,0XF0,0XFF,0X74,0XFF,0XB7,

60290XFF,0XDA,0XFF,0XDB,0XFF,0XBD,0XFF,0XBE,0XFF,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

60300XF7,0XBE,0XF7,0XBE,0XF7,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

60310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

60380XF7,0X9E,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XE7,0X3C,

60390XE7,0X3C,0XE7,0X3C,0XE7,0X1C,0XDE,0XFB,0XDE,0XFA,0XDE,0XDA,0XD6,0XBA,0XD6,0X9A,

60400XCE,0X7A,0XCE,0X5A,0XCE,0X59,0XC6,0X17,0XCE,0X15,0XCD,0XD3,0XC5,0XB0,0XCD,0XCE,

60410XE6,0X4E,0XF6,0X8E,0XF6,0X8D,0XF6,0X8B,0XF6,0X89,0XFE,0XA7,0XFE,0XA7,0XFE,0XA7,

60420XF6,0X87,0XF6,0X86,0XFE,0XA6,0XFE,0XA7,0XF6,0X86,0XF6,0X66,0XF6,0X66,0XFE,0X87,

60430XFE,0XA8,0XFE,0XA8,0XFE,0X88,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,

60440XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

60450XFE,0X87,0XFE,0XA8,0XFE,0XA8,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,

60460XF6,0X87,0XF6,0X87,0XF6,0X88,0XF6,0X89,0XFE,0X8A,0XF6,0X8B,0XF6,0X8C,0XF6,0X8E,

60470XEE,0X8F,0XEE,0XB1,0XEE,0XF3,0XEF,0X15,0XEF,0X57,0XEF,0X59,0XEF,0X5A,0XE7,0X3B,

60480XE7,0X3C,0XEF,0X3D,0XEF,0X5D,0XEF,0X5D,0XEF,0X9D,0XEF,0X9D,0XEF,0X9E,0XEF,0X9D,

60490XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

60500XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

60510XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60560XFF,0XFF,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,

60570XEF,0X5D,0XEF,0X5D,0XE7,0X3C,0XE7,0X3C,0XE7,0X1C,0XDE,0XFB,0XDE,0XDB,0XDE,0XDB,

60580XD6,0XBA,0XD6,0X9A,0XCE,0X79,0XCE,0X58,0XC6,0X38,0XBD,0XF8,0XB5,0XD7,0XB5,0X97,

60590XAD,0X76,0XAD,0X55,0XAD,0X14,0XAC,0XF2,0XA4,0X8F,0XA4,0X8D,0XAC,0XAB,0XBD,0X0B,

60600XD5,0XCC,0XEE,0X6D,0XFE,0XCD,0XF6,0XAB,0XEE,0X89,0XEE,0X89,0XF6,0XA8,0XFE,0XC8,

60610XFE,0XA7,0XF6,0X87,0XF6,0X87,0XFE,0X87,0XFE,0XA7,0XFE,0X87,0XFE,0X87,0XFE,0X87,

60620XF6,0X86,0XF6,0X66,0XF6,0X66,0XFE,0X66,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XF6,0X67,

60630XFE,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X67,

60640XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XF6,0X87,0XF6,0X88,0XF6,0XA9,

60650XF6,0XAA,0XF6,0XAC,0XF6,0XAD,0XEE,0X4E,0XDE,0X0E,0XD5,0XAE,0XC5,0X8F,0XC5,0X91,

60660XCD,0XD3,0XCE,0X35,0XC6,0X56,0XCE,0X77,0XCE,0X79,0XD6,0X9A,0XD6,0XBB,0XDE,0XDB,

60670XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XDF,0X1B,0XE7,0X3C,0XE7,0X3C,0XE7,0X3D,0XEF,0X5D,

60680XEF,0X5C,0XE7,0X5C,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,

60690XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

60700XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

60710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0X9E,

60750XF7,0X9E,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XE7,0X3C,

60760XE7,0X1C,0XE7,0X1C,0XDE,0XFB,0XDE,0XDB,0XD6,0XBA,0XD6,0XBA,0XD6,0X9A,0XCE,0X59,

60770XC6,0X38,0XBE,0X18,0XB5,0XD7,0XAD,0X96,0XAD,0X75,0XA5,0X34,0X9C,0XF3,0X9C,0XB3,

60780X94,0X52,0X8C,0X30,0X83,0XCE,0X83,0XCD,0X7B,0X49,0X73,0X47,0X83,0XA8,0X9C,0X49,

60790XC5,0X4B,0XD5,0XEC,0XEE,0X8D,0XF6,0XCD,0XEE,0XAB,0XEE,0X89,0XF6,0X89,0XFE,0XA9,

60800XF6,0X88,0XF6,0X67,0XFE,0X88,0XFE,0X88,0XF6,0X67,0XF6,0X87,0XFE,0XC7,0XF6,0X86,

60810XFE,0X86,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

60820XF6,0X47,0XF6,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X88,0XFE,0X68,0XF6,0X48,0XFE,0X89,

60830XFE,0X88,0XF6,0X67,0XF6,0X67,0XF6,0X89,0XF6,0XAA,0XF6,0XCB,0XF6,0XAD,0XEE,0X8E,

60840XC5,0X4C,0X93,0XE8,0X6A,0XA5,0X5A,0X66,0X6A,0XC9,0X73,0X2B,0X7B,0X8C,0X83,0XCD,

60850X84,0X30,0X8C,0X91,0X9C,0XD3,0XA5,0X14,0XA5,0X35,0XAD,0X76,0XB5,0XB6,0XBD,0XD7,

60860XC6,0X17,0XCE,0X58,0XCE,0X79,0XD6,0X9A,0XD6,0XBA,0XD6,0XDA,0XDE,0XFA,0XDE,0XFB,

60870XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

60880XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

60890XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

60900XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

60930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0X9E,0XEF,0X7D,

60940XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

60950XE7,0X1C,0XDE,0XFB,0XDE,0XDB,0XDE,0XDB,0XD6,0XBA,0XCE,0X9A,0XCE,0X59,0XC6,0X39,

60960XBE,0X17,0XB5,0XD6,0XB5,0X95,0XAD,0X55,0XA5,0X14,0X9C,0XF4,0X94,0X72,0X8C,0X31,

60970X7B,0XAF,0X73,0X6D,0X6B,0X2B,0X6B,0X09,0X5A,0X86,0X52,0X24,0X5A,0X44,0X73,0X26,

60980X9C,0X49,0XBD,0X4C,0XDE,0X2D,0XEE,0XAE,0XF6,0XAD,0XEE,0X6B,0XF6,0X6B,0XF6,0X8B,

60990XF6,0XAA,0XF6,0X89,0XF6,0X88,0XEE,0X67,0XEE,0X86,0XF6,0X86,0XF6,0XA7,0XF6,0X87,

61000XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X89,0XFE,0XA9,

61010XF6,0X88,0XF6,0X68,0XF6,0X69,0XF6,0X6A,0XFE,0X8B,0XF6,0X6A,0XF6,0X8A,0XFE,0XAA,

61020XFE,0XCB,0XF6,0XAC,0XEE,0X6C,0XD5,0XEB,0XAC,0XA8,0X83,0X85,0X5A,0X42,0X49,0XC2,

61030X39,0X63,0X39,0X85,0X39,0XA6,0X41,0XA7,0X49,0XE7,0X4A,0X28,0X52,0X8A,0X5A,0XCB,

61040X63,0X2D,0X6B,0X6E,0X73,0XAF,0X84,0X10,0X8C,0X71,0X94,0XB2,0X9D,0X13,0XA5,0X34,

61050XAD,0X75,0XB5,0X96,0XBD,0XD7,0XBD,0XF7,0XC6,0X38,0XCE,0X58,0XCE,0X79,0XD6,0X9A,

61060XD6,0XBB,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,

61070XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

61080XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

61090XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

61130XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XE7,0X3C,0XE7,0X1C,

61140XE7,0X1C,0XDE,0XFB,0XDE,0XFB,0XD6,0XDB,0XD6,0XBA,0XD6,0XBA,0XCE,0X7A,0XCE,0X59,

61150XC6,0X39,0XC6,0X18,0XBD,0XD8,0XBD,0XB7,0XB5,0X56,0XAD,0X15,0X9C,0XD3,0X9C,0XB2,

61160X8C,0X50,0X83,0XEE,0X73,0X6C,0X6B,0X2B,0X62,0XEA,0X52,0X26,0X41,0XA3,0X41,0XA3,

61170X5A,0X44,0X83,0X47,0XAC,0X8B,0XCD,0X8D,0XE6,0X0E,0XEE,0X4E,0XEE,0X6D,0XEE,0X8C,

61180XF6,0XEC,0XF6,0XEB,0XEE,0XA9,0XEE,0XC9,0XEE,0XA8,0XF6,0X88,0XF6,0X89,0XF6,0X89,

61190XF6,0X89,0XF6,0XA9,0XF6,0X89,0XF6,0X89,0XEE,0X48,0XEE,0X68,0XF6,0X89,0XF6,0XAA,

61200XF6,0XCB,0XFE,0XCC,0XF6,0XAB,0XFE,0XED,0XF6,0XAD,0XE6,0X2D,0XCD,0X6A,0XA4,0X47,

61210X7B,0X23,0X62,0X61,0X51,0XE0,0X41,0XA1,0X41,0XE3,0X4A,0X05,0X4A,0X47,0X4A,0X68,

61220X4A,0X49,0X4A,0X49,0X52,0X49,0X52,0X6A,0X5A,0XAA,0X5A,0XCB,0X62,0XEC,0X63,0X2D,

61230X6B,0X4E,0X73,0X8E,0X73,0XAF,0X7B,0XEF,0X84,0X30,0X8C,0X71,0X94,0XB2,0X9C,0XF3,

61240XA5,0X14,0XAD,0X55,0XB5,0X95,0XB5,0XB6,0XBD,0XF7,0XC6,0X18,0XCE,0X59,0XCE,0X79,

61250XCE,0X79,0XD6,0X9A,0XD6,0XBA,0XDE,0XFB,0XDE,0XDB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,

61260XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,

61270XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

61280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61310XFF,0XFF,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,

61320XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

61330XE7,0X1C,0XE7,0X1C,0XDF,0X1B,0XDE,0XFB,0XDE,0XFB,0XDE,0XDB,0XDE,0XDB,0XD6,0XBB,

61340XD6,0X9A,0XD6,0X7A,0XD6,0X5A,0XCE,0X59,0XCE,0X18,0XC5,0XF7,0XBD,0XD7,0XBD,0XD7,

61350XB5,0X96,0XAD,0X55,0XA4,0XF4,0XA4,0XF3,0XA4,0XD2,0X94,0X50,0X8B,0XED,0X83,0X6A,

61360X7B,0X28,0X73,0X06,0X8B,0XA8,0XA4,0X49,0XB4,0XEA,0XC5,0X6B,0XD6,0X0C,0XDE,0X2C,

61370XDE,0X2B,0XE6,0X6C,0XEE,0XCD,0XEE,0XAC,0XEE,0XAC,0XEE,0X8C,0XEE,0X8C,0XEE,0X8C,

61380XEE,0X8C,0XEE,0X8C,0XF6,0XEE,0XF6,0XEE,0XF6,0XCE,0XEE,0XAE,0XDE,0X0B,0XC5,0X69,

61390XB4,0XE8,0X8B,0XA4,0X72,0XE2,0X5A,0X20,0X41,0X80,0X41,0X60,0X41,0X80,0X41,0XA1,

61400X49,0XE3,0X4A,0X25,0X4A,0X25,0X4A,0X46,0X52,0X87,0X52,0XA9,0X5A,0XCA,0X62,0XEB,

61410X63,0X0C,0X6B,0X2C,0X62,0XEB,0X62,0XEB,0X6B,0X2C,0X73,0X4D,0X73,0X8E,0X7B,0XCF,

61420X84,0X10,0X84,0X51,0X84,0X51,0X8C,0X92,0X94,0XD2,0X9C,0XF3,0XA4,0XF4,0XA5,0X34,

61430XAD,0X55,0XB5,0X96,0XB5,0XB6,0XBD,0XD7,0XC6,0X18,0XC6,0X38,0XC6,0X38,0XCE,0X59,

61440XCE,0X79,0XD6,0X9A,0XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,

61450XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,

61460XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

61470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

61500XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

61510XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,

61520XE7,0X5C,0XE7,0X5C,0XE7,0X3C,0XE7,0X3C,0XE7,0X1C,0XE6,0XFC,0XE6,0XDC,0XE6,0XDC,

61530XDE,0XDB,0XDE,0XBB,0XDE,0X9A,0XD6,0X9A,0XD6,0X9A,0XD6,0XBA,0XD6,0X99,0XCE,0X79,

61540XD6,0X79,0XD6,0X99,0XD6,0X99,0XD6,0X78,0XDE,0XB8,0XDE,0XB7,0XDE,0XB6,0XDE,0X75,

61550XD6,0X54,0XCE,0X13,0XC5,0XB1,0XBD,0X70,0XC5,0X70,0XBD,0X4F,0XB5,0X2E,0XB5,0X0D,

61560XB5,0X0D,0XBD,0X2D,0XBD,0X4D,0XC5,0X6D,0XBD,0X4D,0XB5,0X0C,0XAC,0XAB,0XA4,0X6A,

61570X94,0X08,0X83,0X87,0X7B,0X05,0X62,0X43,0X51,0XE1,0X49,0XA0,0X41,0X60,0X49,0XA1,

61580X41,0XA2,0X41,0XA3,0X49,0XE4,0X52,0X25,0X52,0X45,0X52,0X66,0X5A,0X87,0X5A,0XA8,

61590X62,0XE9,0X63,0X09,0X6B,0X4A,0X6B,0X6A,0X6B,0X6B,0X73,0X8C,0X73,0XAD,0X7B,0XEE,

61600X8C,0X0F,0X84,0X0F,0X83,0XEF,0X83,0XEF,0X84,0X0F,0X84,0X30,0X8C,0X72,0X94,0XB3,

61610X9C,0XD3,0X9C,0XF4,0XA5,0X14,0XA5,0X34,0XAD,0X55,0XAD,0X75,0XB5,0X96,0XBD,0XB7,

61620XC5,0XF7,0XC6,0X18,0XC6,0X38,0XCE,0X59,0XCE,0X79,0XCE,0X79,0XD6,0XBA,0XD6,0XBA,

61630XDE,0XDB,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,

61640XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,

61650XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

61690XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

61700XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,0XF7,0X9E,0XEF,0X7D,

61710XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X3D,0XEF,0X3D,0XEF,0X3D,0XE6,0XFC,

61720XE7,0X1C,0XEF,0X3C,0XE7,0X3C,0XDE,0XFB,0XE7,0X1C,0XEF,0X7C,0XEF,0X7C,0XEF,0X7C,

61730XEF,0X7B,0XEF,0X7B,0XEF,0X9B,0XEF,0X7B,0XEF,0X7A,0XEF,0X5A,0XE7,0X39,0XE7,0X18,

61740XEF,0X19,0XEE,0XF8,0XE6,0XD8,0XE6,0XB8,0XE6,0XB8,0XE6,0XB7,0XDE,0X76,0XDE,0X75,

61750XDE,0X55,0XD6,0X54,0XD6,0X34,0XCD,0XF3,0XCD,0XF3,0XCD,0XD3,0XC5,0XD3,0XC5,0XB3,

61760XBD,0X72,0XBD,0X52,0XB5,0X12,0XB5,0X32,0XB5,0X32,0XA4,0XB0,0XA4,0XD1,0XA4,0XD1,

61770X9C,0XB1,0X9C,0XB0,0X94,0X90,0X94,0XB0,0X94,0XB1,0X94,0X90,0X94,0X90,0X94,0X90,

61780X94,0XB0,0X9C,0XD0,0X9C,0XF1,0X9C,0XF1,0XA5,0X12,0XA5,0X33,0XAD,0X33,0XAD,0X33,

61790XAD,0X33,0XAD,0X33,0XA5,0X13,0XA5,0X13,0XA5,0X14,0XA5,0X35,0XAD,0X56,0XAD,0X76,

61800XB5,0X96,0XB5,0XB6,0XB5,0XB6,0XBD,0XD7,0XBD,0XF8,0XC6,0X18,0XC6,0X38,0XC6,0X38,

61810XCE,0X59,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,

61820XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,

61830XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

61840XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

61870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

61880XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

61890XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9F,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

61900XF7,0X9D,0XF7,0X7D,0XF7,0X7D,0XF7,0X7D,0XF7,0X7E,0XF7,0X7E,0XF7,0X9E,0XF7,0X7E,

61910XF7,0X9E,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,

61920XF7,0XDE,0XF7,0XFE,0XF7,0XDE,0XEF,0XBC,0XF7,0XDC,0XF7,0XBB,0XF7,0XBB,0XF7,0X9B,

61930XF7,0X9B,0XF7,0X7B,0XF7,0X5B,0XF7,0X3B,0XF7,0X5B,0XF7,0X7A,0XF7,0X7A,0XEF,0X5A,

61940XEF,0X39,0XEF,0X19,0XEF,0X19,0XEF,0X19,0XEF,0X19,0XEF,0X19,0XEF,0X3A,0XEF,0X1A,

61950XEF,0X1A,0XE6,0XFA,0XDE,0XB9,0XE7,0X1A,0XDE,0XFA,0XDE,0XDA,0XDE,0XD9,0XDE,0XF9,

61960XD6,0XD9,0XD6,0XB9,0XD6,0XB8,0XD6,0X98,0XDE,0XBA,0XDE,0X99,0XDE,0X79,0XDE,0X99,

61970XD6,0X98,0XD6,0X98,0XD6,0XB7,0XCE,0X97,0XD6,0X98,0XD6,0XB8,0XD6,0XD8,0XDE,0XB8,

61980XD6,0X98,0XD6,0X78,0XCE,0X38,0XC6,0X18,0XCE,0X39,0XCE,0X19,0XCE,0X39,0XCE,0X59,

61990XCE,0X59,0XCE,0X79,0XCE,0X7A,0XCE,0X9A,0XD6,0XBA,0XD6,0XBA,0XD6,0XBA,0XDE,0XDA,

62000XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,

62010XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

62020XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

62030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62060XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

62070XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62080XFF,0XDF,0XFF,0XDF,0XFF,0XBF,0XFF,0XBF,0XF7,0XBF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBD,

62090XF7,0XBD,0XF7,0XBE,0XFF,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

62100XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XF7,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62110XF7,0XDF,0XF7,0XFE,0XF7,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XDD,0XFF,0XDD,

62120XFF,0XBE,0XFF,0XDE,0XFF,0XBD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XBC,0XFF,0XBC,

62130XF7,0XBC,0XFF,0XBC,0XF7,0X9C,0XF7,0XBC,0XF7,0X9C,0XF7,0X7C,0XF7,0X7D,0XF7,0X7D,

62140XEF,0X7D,0XF7,0X7D,0XEF,0X9D,0XEF,0X9D,0XEF,0X9D,0XEF,0X9C,0XEF,0X9C,0XEF,0X9C,

62150XEF,0X7C,0XEF,0X5C,0XEF,0X3C,0XEF,0X3C,0XF7,0X5D,0XF7,0X5D,0XEF,0X5C,0XEF,0X7C,

62160XEF,0X9B,0XEF,0X7B,0XEF,0X7B,0XEF,0X7B,0XEF,0X9C,0XEF,0X9B,0XF7,0X7C,0XF7,0X7C,

62170XEF,0X5C,0XE7,0X1C,0XE6,0XFB,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFC,

62180XDE,0XFC,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

62190XE7,0X3C,0XEF,0X5D,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,

62200XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

62210XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

62220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62260XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62270XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

62290XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62300XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,

62310XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,

62320XFF,0XDE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,

62330XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XF7,0XDE,0XF7,0XDD,0XF7,0XDD,0XFF,0XDE,0XFF,0XDE,

62340XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,

62350XFF,0XDD,0XFF,0XDD,0XF7,0XBD,0XFF,0XDD,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XF7,0XBE,

62360XF7,0X7D,0XEF,0X5D,0XEF,0X3C,0XE7,0X3C,0XEF,0X3C,0XEF,0X5D,0XEF,0X5D,0XE7,0X3C,

62370XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

62380XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

62390XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

62400XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62510XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

62520XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

62530XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

62540XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XF7,0XBE,

62550XF7,0X9D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X7D,0XEF,0X7D,0XEF,0X7D,

62560XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

62570XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

62580XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

62590XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBE,

62740XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

62750XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

62760XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62770XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBF,

62930XFF,0XBE,0XFF,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62940XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62950XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

62960XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

62990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

63120XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

63130XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

63140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

63310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

63990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,};

6411

6412const unsigned char gimage_5[51000] = { /* 0X10,0X10,0X00,0X96,0X00,0XAA,0X01,0X1B, */

64130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64650XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

64990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65020XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

65030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFE,0XFF,0XDD,

65210XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

65390XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XDB,0XFF,0XDC,0XEF,0X5A,0XEF,0X3A,0XFF,0XDD,

65400XFF,0XDD,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

65570XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,

65580XFF,0XF9,0XFF,0XD9,0XC6,0X13,0X7B,0XCB,0X9C,0XAF,0XF7,0X9C,0XFF,0XFE,0XFF,0XDE,

65590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65750XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,

65760XFF,0XFB,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF8,0XFF,0XF7,0XFF,0XF6,0XE7,0X34,

65770X9C,0XCC,0X42,0X02,0X63,0X08,0XDE,0XD8,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

65940XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF6,

65950XFF,0XF6,0XFF,0XF5,0XF7,0XD4,0XFF,0XF4,0XFF,0XD4,0XDE,0XF1,0X7B,0X86,0X4A,0X21,

65960X52,0X64,0XBD,0XB3,0XFF,0XBD,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

65970XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

65990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

66110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

66120XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,0XFF,0XF9,

66130XFF,0XF8,0XFF,0XF7,0XFF,0XF5,0XFF,0XF5,0XF7,0XD3,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,

66140XF7,0XD2,0XFF,0XF2,0XFF,0XD2,0XBD,0XEC,0X5A,0XC1,0X52,0X41,0X4A,0X22,0X8C,0X2D,

66150XFF,0X9D,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

66160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66290XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

66300XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,0XFF,0XF9,

66310XFF,0XF9,0XFF,0XF8,0XFF,0XD8,0XFF,0XD8,0XFF,0XD7,0XFF,0XF6,0XFF,0XF5,0XFF,0XF4,

66320XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XD0,0XFF,0XF2,

66330XF7,0X91,0X9C,0XA7,0X5A,0X80,0X52,0X61,0X52,0X42,0X62,0XC7,0XE6,0XD9,0XFF,0XDE,

66340XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

66480XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,

66490XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF5,0XFF,0XF5,0XFF,0XF4,0XFF,0XF4,

66500XFF,0XD4,0XFF,0XD4,0XFF,0XD4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,

66510XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XD0,0XFF,0XF1,0XE7,0X0F,0X73,0X62,

66520X5A,0X80,0X52,0X41,0X52,0X43,0X4A,0X03,0XAD,0X11,0XFF,0XFE,0XFF,0XDE,0XFF,0XDF,

66530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66660XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,

66670XFF,0XFC,0XFF,0XFB,0XFF,0XFB,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF6,

66680XFF,0XF5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF2,0XFF,0XF2,

66690XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,

66700XFF,0XEF,0XFF,0XEF,0XFF,0XD0,0XFF,0XD1,0XC5,0XCB,0X62,0XA0,0X5A,0X40,0X5A,0X42,

66710X5A,0X42,0X52,0X23,0X73,0X49,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

66850XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,

66860XFF,0XF6,0XFF,0XF5,0XFF,0XF5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,

66870XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

66880XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XCF,0XFF,0XEF,0XFF,0XF0,

66890XFF,0XD1,0XFF,0X71,0X94,0X25,0X62,0X80,0X52,0X00,0X5A,0X42,0X5A,0X42,0X52,0X43,

66900X52,0X44,0XCE,0X55,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

66990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

67030XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,0XFF,0XFB,0XFF,0XFA,0XFF,0XFA,

67040XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XD6,0XFF,0XD5,0XFF,0XD4,0XF7,0XD3,0XF7,0XF2,

67050XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

67060XFF,0XF2,0XFF,0XF1,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,

67070XFF,0XF1,0XFF,0XF0,0XFF,0XF1,0XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0X90,0XEF,0X30,

67080X6B,0X02,0X62,0XA2,0X52,0X00,0X5A,0X42,0X52,0X43,0X52,0X43,0X4A,0X03,0X9C,0XCF,

67090XFF,0XDC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67190XFF,0XFF,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,

67210XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,

67220XFF,0XD9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF6,0XFF,0XF5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF3,

67230XFF,0XF3,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

67240XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,

67250XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67260XFF,0XF0,0XFF,0XCF,0XFF,0XF0,0XFF,0XF0,0XFF,0XD1,0XAD,0X29,0X62,0XA1,0X52,0X21,

67270X52,0X22,0X52,0X43,0X52,0X23,0X52,0X43,0X4A,0X24,0X62,0XE7,0XF7,0X7A,0XFF,0XDD,

67280XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67380XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

67390XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,

67400XFF,0XFB,0XFF,0XFA,0XFF,0XDA,0XFF,0XD8,0XFF,0XD7,0XFF,0XD6,0XFF,0XD6,0XFF,0XF4,

67410XFF,0XF3,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

67420XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67430XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,

67440XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XD0,

67450XFF,0XCF,0XFF,0XF1,0XEF,0X2F,0X9C,0X86,0X5A,0X81,0X52,0X22,0X52,0X22,0X52,0X23,

67460X52,0X23,0X52,0X43,0X52,0X24,0X52,0X45,0XC5,0XD4,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,

67470XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

67570XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

67580XFF,0XFB,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF8,0XFF,0XF7,0XFF,0XF6,0XFF,0XF6,

67590XFF,0XD5,0XFF,0XD4,0XFF,0XD4,0XFF,0XF3,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,0XFF,0XF1,

67600XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67610XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67620XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,

67630XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XAF,0XFF,0XF0,

67640XC5,0XEA,0X7B,0X63,0X52,0X41,0X52,0X22,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X43,

67650X52,0X44,0X4A,0X04,0X8C,0X0D,0XFF,0XDC,0XFF,0XDD,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

67660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

67760XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,0XFF,0XFB,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,

67770XFF,0XF6,0XFF,0XF4,0XFF,0XF3,0XFF,0XF3,0XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,

67780XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,

67790XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67800XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67810XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

67820XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XD0,0XFF,0XD1,0XAD,0X07,0X62,0XE1,

67830X52,0X01,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X23,0X52,0X23,0X52,0X44,0X4A,0X24,

67840X6B,0X08,0XE6,0XF9,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

67940XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF8,

67950XFF,0XF8,0XFF,0XF7,0XFF,0XD6,0XFF,0XF5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,

67960XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

67970XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67980XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

67990XFF,0XF0,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,

68000XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68010XFF,0XF0,0XFF,0XF0,0XFF,0XD0,0XE7,0X0E,0X8C,0X25,0X62,0X80,0X52,0X01,0X52,0X02,

68020X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X23,0X52,0X44,0X52,0X86,0XB5,0X93,

68030XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

68130XFF,0XFC,0XFF,0XF9,0XFF,0XD7,0XFF,0XD5,0XFF,0XF4,0XFF,0XF4,0XFF,0XF3,0XFF,0XF3,

68140XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,

68150XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

68160XFF,0XEE,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

68170XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68180XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68190XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XCF,0XFF,0XD0,

68200XFF,0XB0,0XCE,0X0B,0X7B,0X62,0X52,0X20,0X51,0XE1,0X52,0X23,0X52,0X22,0X52,0X02,

68210X52,0X23,0X52,0X43,0X52,0X03,0X52,0X24,0X4A,0X25,0X84,0X0D,0XF7,0X9C,0XFF,0XFE,

68220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XFF,0XD7,

68320XF7,0XD4,0XFF,0XD2,0XFF,0XD1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,

68330XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68340XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68350XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68360XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68370XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68380XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0X8E,0XFF,0XD0,0XFF,0X90,0XAD,0X28,

68390X73,0X22,0X52,0X00,0X51,0XE1,0X52,0X03,0X52,0X23,0X52,0X02,0X52,0X23,0X52,0X23,

68400X52,0X03,0X52,0X24,0X42,0X04,0X63,0X08,0XD6,0XB8,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,

68410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68500XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF8,0XF7,0XD5,0XFF,0XD2,0XFF,0XF0,

68510XFF,0XEF,0XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68520XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68530XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68540XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68550XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68560XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,

68570XFF,0XEE,0XFF,0XEF,0XFF,0XF0,0XFF,0XD0,0XE6,0XCE,0X8B,0XE4,0X62,0XA1,0X49,0XC0,

68580X52,0X02,0X52,0X02,0X52,0X02,0X52,0X02,0X52,0X23,0X4A,0X02,0X52,0X23,0X52,0X44,

68590X41,0XE3,0X52,0X66,0XBD,0XF5,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68690XFF,0XFD,0XFF,0XFB,0XFF,0XD7,0XF7,0XB3,0XFF,0XD1,0XFF,0XF0,0XFF,0XEF,0XFF,0XEE,

68700XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68710XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,

68720XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

68730XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,

68740XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68750XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XCE,

68760XFF,0XF0,0XFF,0X90,0XCD,0XEB,0X7B,0X84,0X5A,0X41,0X49,0XE1,0X51,0XE2,0X52,0X03,

68770X52,0X02,0X52,0X02,0X52,0X03,0X52,0X23,0X4A,0X02,0X4A,0X03,0X4A,0X04,0X73,0X6A,

68780XE7,0X19,0XFF,0XFE,0XFF,0XFF,0XF7,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

68790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,

68880XFF,0XD6,0XF7,0XD2,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

68890XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,

68900XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

68910XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

68920XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

68930XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,

68940XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XCF,0XFF,0XD0,0XF7,0X4F,

68950XAD,0X08,0X6A,0XE2,0X49,0XE0,0X49,0XE1,0X51,0XE2,0X52,0X03,0X52,0X02,0X52,0X23,

68960X49,0XE2,0X52,0X23,0X4A,0X03,0X52,0X24,0X41,0XE4,0X9C,0XD0,0XF7,0X9C,0XFF,0XFE,

68970XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

68990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD9,0XFF,0XD5,0XF7,0XD2,

69070XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,

69080XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69090XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

69100XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69110XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69120XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69130XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XCF,0XFF,0XAF,0XE6,0XCE,0X94,0X25,0X5A,0X81,

69140X49,0XE1,0X52,0X02,0X49,0XE2,0X51,0XE3,0X52,0X03,0X4A,0X02,0X4A,0X02,0X49,0XE2,

69150X4A,0X03,0X52,0X44,0X4A,0X25,0XCE,0X56,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

69160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69250XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD8,0XF7,0XB4,0XFF,0XD1,0XFF,0XEF,0XFF,0XEE,

69260XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,

69270XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69280XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,

69290XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69300XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

69310XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69320XFF,0XCE,0XFF,0XCF,0XF7,0X6F,0XCE,0X0B,0X7B,0X84,0X5A,0X41,0X49,0XE1,0X51,0XE2,

69330X49,0XC2,0X49,0XE2,0X52,0X03,0X4A,0X02,0X52,0X23,0X49,0XE2,0X4A,0X03,0X4A,0X04,

69340X6B,0X29,0XEF,0X5A,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69350XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,

69440XFF,0XDA,0XFF,0XB6,0XF7,0XB2,0XFF,0XF0,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,

69450XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

69460XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69470XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69480XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69490XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

69500XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XCE,0XFF,0XCF,

69510XF7,0X4E,0XAD,0X07,0X6B,0X22,0X52,0X00,0X49,0XC1,0X49,0XC2,0X49,0XC2,0X49,0XE3,

69520X49,0XE2,0X4A,0X03,0X4A,0X03,0X4A,0X03,0X49,0XE3,0X41,0XC3,0XA4,0XF1,0XFF,0XFD,

69530XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XD9,0XFF,0XB5,

69630XFF,0XB1,0XFF,0XEF,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

69640XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

69650XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

69660XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

69670XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

69680XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

69690XFF,0XEE,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCE,0XFF,0XCF,0XE6,0XED,0X8C,0X24,

69700X62,0XA1,0X49,0XE0,0X49,0XC2,0X49,0XE3,0X49,0XC2,0X49,0XE3,0X49,0XE2,0X4A,0X03,

69710X49,0XE3,0X49,0XE3,0X41,0XE3,0X41,0XC3,0XDE,0XB8,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

69720XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69810XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,0XFF,0XB7,0XFF,0XB3,0XFF,0XD0,0XFF,0XEE,

69820XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,

69830XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

69840XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

69850XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,

69860XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

69870XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,

69880XFF,0XCD,0XFF,0XCD,0XFF,0XCE,0XFF,0XAF,0XC5,0XE9,0X7B,0X82,0X5A,0X60,0X49,0XC0,

69890X49,0XE2,0X49,0XE3,0X49,0XE2,0X49,0XE2,0X4A,0X03,0X49,0XE2,0X4A,0X03,0X41,0XC3,

69900X41,0XC3,0X6B,0X29,0XFF,0XBC,0XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

69990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

70000XFF,0XFE,0XFF,0XFB,0XFF,0XB6,0XFF,0XB2,0XFF,0XCF,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70010XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70020XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70030XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70040XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70050XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70060XFF,0XED,0XFF,0XED,0XFF,0XCE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,

70070XFF,0XAE,0XF7,0X8F,0XAD,0X07,0X6B,0X21,0X4A,0X00,0X41,0XA0,0X49,0XC2,0X41,0XC2,

70080X49,0XC2,0X49,0XE2,0X4A,0X03,0X49,0XE2,0X4A,0X03,0X4A,0X04,0X31,0X62,0XA5,0X11,

70090XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XF9,

70190XFF,0X94,0XFF,0XB1,0XFF,0XCE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,

70200XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70210XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,

70220XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70230XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,

70240XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

70250XFF,0XEE,0XFF,0XCD,0XFF,0XCC,0XFF,0XEC,0XFF,0XCC,0XFF,0XAD,0XFF,0XAF,0XDE,0X8C,

70260X8C,0X05,0X6A,0XE2,0X41,0XA0,0X49,0XE2,0X41,0XC2,0X49,0XC2,0X41,0XC1,0X4A,0X01,

70270X4A,0X02,0X41,0XC2,0X41,0XE3,0X41,0XE4,0X41,0XE4,0XDE,0XB9,0XFF,0XDE,0XFF,0XFF,

70280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XB8,0XFF,0X93,0XFF,0XB0,

70380XFF,0XCD,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,

70390XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

70400XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

70410XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,

70420XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,

70430XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCE,0XFF,0XCE,0XFF,0XCE,0XFF,0XCE,0XFF,0XCD,

70440XFF,0XCC,0XFF,0XCB,0XFF,0XCC,0XFF,0XAD,0XFF,0X6E,0XC5,0XAA,0X83,0XA4,0X5A,0X42,

70450X49,0XE1,0X41,0XC2,0X49,0XE2,0X41,0XC2,0X49,0XE1,0X4A,0X01,0X4A,0X02,0X41,0XC2,

70460X49,0XE4,0X39,0X83,0X7B,0XAC,0XFF,0XDD,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

70470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70560XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XF7,0X95,0XFF,0X91,0XFF,0XAF,0XFF,0XCD,0XFF,0XEC,

70570XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

70580XFF,0XCD,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCC,

70590XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XAC,0XFF,0XAC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCD,

70600XFF,0XCC,0XFF,0XEC,0XFF,0XCC,0XFF,0XEC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

70610XFF,0XEC,0XFF,0XEC,0XFF,0XCC,0XFF,0XEC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XAD,

70620XFF,0XAD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCE,0XFF,0X8D,0XFF,0XCD,0XFF,0XCC,0XFF,0XAB,

70630XFF,0XAB,0XFF,0X8D,0XF6,0XED,0XA4,0XA6,0X73,0X03,0X49,0XC0,0X49,0XE2,0X41,0XC2,

70640X4A,0X02,0X41,0XE1,0X49,0XE1,0X49,0XE1,0X4A,0X02,0X41,0XC2,0X41,0XE3,0X31,0X83,

70650XBD,0X94,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,

70750XFF,0XFA,0XF7,0X74,0XFF,0X90,0XFF,0XAE,0XFF,0XAD,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

70760XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

70770XFF,0XCC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,

70780XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XAD,0XFF,0XAD,0XFF,0XCC,0XFF,0XCC,

70790XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

70800XFF,0XCC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAD,0XFF,0XAD,

70810XFF,0X8D,0XFF,0X8D,0XFF,0X8D,0XFF,0X6C,0XFF,0X6B,0XFF,0X6A,0XFF,0X6A,0XF6,0XCA,

70820XDE,0X4A,0X9C,0X25,0X62,0X82,0X49,0XA0,0X41,0XA1,0X49,0XE2,0X41,0XE1,0X41,0XE1,

70830X41,0XC1,0X41,0XE2,0X49,0XE2,0X41,0XE2,0X41,0XC3,0X5A,0XC8,0XF7,0X7B,0XFF,0XFE,

70840XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

70930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD8,0XF7,0X52,

70940XFF,0X8F,0XFF,0X8D,0XFF,0XAC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XAD,0XFF,0XAD,

70950XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

70960XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

70970XFF,0XCD,0XFF,0XCD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

70980XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

70990XFF,0XAC,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X6C,

71000XF6,0XCA,0XFE,0XEB,0XF6,0XC9,0XEE,0X67,0XEE,0X87,0XF6,0XA9,0XDE,0X0A,0X93,0XE4,

71010X5A,0X01,0X49,0XC1,0X41,0XC1,0X41,0XC2,0X41,0XC1,0X41,0XE1,0X41,0XC1,0X41,0XE2,

71020X41,0XE2,0X4A,0X03,0X31,0X62,0X8C,0X4E,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

71030XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

71120XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFA,0XF7,0X95,0XF7,0X51,0XFF,0X8E,0XFF,0X8C,

71130XFF,0X8C,0XFF,0XAC,0XFF,0XAC,0XFF,0XAB,0XFF,0XAC,0XFF,0XAC,0XFF,0X8C,0XFF,0XAC,

71140XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0XAC,0XFF,0XAC,

71150XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

71160XFF,0XAD,0XFF,0X8D,0XFF,0X8D,0XFF,0XAC,0XFF,0XAD,0XFF,0XAD,0XFF,0X8C,0XFF,0X8C,

71170XFF,0X8C,0XFF,0X8C,0XFF,0X6C,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X4B,0XFF,0X4B,

71180XFF,0X0A,0XFE,0XE9,0XF6,0XC8,0XEE,0X88,0XEE,0X67,0XEE,0X47,0XEE,0X48,0XEE,0X68,

71190XEE,0X47,0XEE,0X46,0XDD,0XE4,0XCD,0X44,0XBC,0XE5,0X9C,0X04,0X51,0XC0,0X49,0X80,

71200X49,0XC1,0X41,0XA1,0X41,0XE1,0X41,0XE1,0X41,0XE2,0X41,0XC2,0X39,0XA2,0X41,0XE3,

71210X41,0XE4,0XCE,0X56,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

71310XFF,0XFD,0XFF,0XD9,0XF7,0X53,0XF7,0X6F,0XFF,0X6D,0XFF,0X6C,0XFF,0X6C,0XFF,0X8B,

71320XFF,0X8B,0XFF,0X8B,0XFF,0X8C,0XFF,0X8C,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

71330XFF,0XAC,0XFF,0X8D,0XFF,0X8D,0XFF,0X8C,0XFF,0X8C,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,

71340XFF,0X8B,0XFF,0X8B,0XFF,0X8B,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,

71350XFF,0X6C,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X4C,0XFF,0X2B,0XFF,0X0B,

71360XFF,0X0A,0XFE,0XEA,0XFE,0XC9,0XFE,0XA9,0XF6,0X88,0XF6,0X68,0XF6,0X67,0XEE,0X46,

71370XEE,0X26,0XE6,0X05,0XE6,0X05,0XE6,0X05,0XDD,0XA5,0XD5,0X64,0XCD,0X22,0XCD,0X43,

71380XD5,0X83,0XDD,0XE6,0XE6,0X29,0XE6,0X0C,0X7A,0XE2,0X49,0XA0,0X49,0XA1,0X41,0XA1,

71390X49,0XE2,0X41,0XC2,0X41,0XE2,0X41,0XC2,0X41,0XE3,0X39,0XA2,0X62,0XE8,0XE6,0XF9,

71400XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XB7,

71500XEF,0X31,0XFF,0X6E,0XFF,0X6C,0XFF,0X6B,0XFF,0X6B,0XFF,0X6C,0XFF,0X6B,0XFF,0X8C,

71510XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8B,0XFF,0X8C,0XFF,0X6C,0XFF,0X6C,

71520XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,

71530XFF,0X8B,0XFF,0X8B,0XFF,0X6B,0XFF,0X8B,0XFF,0X6C,0XFF,0X4B,0XFF,0X4B,0XFF,0X2B,

71540XFF,0X0A,0XFF,0X0A,0XFE,0XE9,0XF6,0XA9,0XF6,0X88,0XF6,0X88,0XF6,0X68,0XF6,0X47,

71550XEE,0X26,0XEE,0X06,0XEE,0X06,0XEE,0X05,0XED,0XE5,0XE5,0XC4,0XE5,0XA3,0XDD,0X83,

71560XDD,0X83,0XDD,0X83,0XE5,0XC5,0XEE,0X06,0XF6,0X27,0XF6,0X88,0XF6,0X68,0XFE,0XA9,

71570XF6,0X8A,0XFE,0XCD,0XBD,0X09,0X62,0X40,0X49,0XA0,0X49,0XC2,0X49,0XC2,0X41,0XC2,

71580X41,0XC2,0X41,0XE3,0X39,0XC3,0X39,0XA3,0X9C,0XD0,0XEF,0X5A,0XFF,0XFE,0XFF,0XFF,

71590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71680XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XFF,0X96,0XEF,0X2F,0XFF,0X6D,

71690XFF,0X6B,0XFF,0X4B,0XFF,0X4B,0XFF,0X6B,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X4C,

71700XFF,0X6C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X6B,0XFF,0X6C,

71710XFF,0X6C,0XFF,0X4B,0XFF,0X6B,0XFF,0X6B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4A,0XFF,0X2A,

71720XF7,0X09,0XF6,0XE9,0XF6,0XC9,0XF6,0XA8,0XF6,0XA8,0XF6,0X87,0XEE,0X67,0XEE,0X67,

71730XEE,0X46,0XEE,0X25,0XEE,0X05,0XE5,0XE4,0XE5,0XC4,0XE5,0XA4,0XE5,0X83,0XDD,0X62,

71740XDD,0X62,0XE5,0X83,0XE5,0X83,0XE5,0X83,0XE5,0XC3,0XEE,0X04,0XF6,0X25,0XF6,0X46,

71750XF6,0X67,0XF6,0X67,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XF6,0XA9,0XF6,0X8A,

71760XF6,0XAD,0X93,0XC4,0X51,0XC0,0X51,0XC2,0X49,0XC3,0X41,0XA2,0X41,0XA2,0X41,0XE2,

71770X39,0XA3,0X4A,0X25,0XC5,0XF5,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

71870XFF,0XFF,0XFF,0XFE,0XFF,0XB9,0XF7,0X54,0XF7,0X2E,0XFF,0X4C,0XFF,0X6B,0XFF,0X4B,

71880XFF,0X4B,0XFF,0X2B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X6C,0XFF,0X4C,

71890XFF,0X4C,0XFF,0X4B,0XFF,0X6C,0XFF,0X6B,0XFF,0X4B,0XFF,0X0A,0XFF,0X0B,0XFF,0X0B,

71900XFF,0X0B,0XF6,0XEA,0XEE,0XA8,0XEE,0X88,0XF6,0XA8,0XF6,0XA8,0XEE,0X87,0XF6,0X87,

71910XF6,0X66,0XEE,0X46,0XEE,0X25,0XE5,0XE4,0XE5,0XC3,0XDD,0XA3,0XDD,0X61,0XDD,0X61,

71920XDD,0X61,0XDD,0X61,0XDD,0X82,0XE5,0XA2,0XE5,0XA2,0XE5,0XA3,0XED,0XE3,0XED,0XE4,

71930XF6,0X04,0XF6,0X04,0XF6,0X25,0XF6,0X46,0XFE,0X66,0XFE,0X67,0XF6,0X67,0XF6,0X67,

71940XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XF6,0XA9,0XF6,0XAA,0XEE,0X8B,0XD5,0XEB,

71950X72,0XE2,0X41,0X60,0X49,0XA2,0X41,0X82,0X49,0XE2,0X41,0XC2,0X39,0XC3,0X6B,0X2A,

71960XDE,0XD9,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

71990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

72060XFF,0X97,0XF7,0X32,0XF7,0X4E,0XFF,0X4B,0XFF,0X2B,0XFF,0X2B,0XFF,0X4B,0XFF,0X2B,

72070XFF,0X2B,0XFF,0X2B,0XFF,0X4B,0XFF,0X6B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X0B,

72080XFE,0XEA,0XFF,0X0A,0XFE,0XEA,0XF6,0XC9,0XF6,0XAA,0XEE,0X69,0XEE,0X48,0XF6,0X68,

72090XF6,0XA8,0XF6,0X88,0XEE,0X46,0XE5,0XE4,0XE5,0XC3,0XE5,0XA3,0XDD,0X62,0XD5,0X41,

72100XD5,0X40,0XDD,0X40,0XDD,0X41,0XDD,0X61,0XE5,0XA1,0XE5,0XA0,0XE5,0XC1,0XE5,0XC1,

72110XED,0XE2,0XED,0XE2,0XEE,0X03,0XF6,0X03,0XEE,0X04,0XF6,0X24,0XF6,0X45,0XF6,0X46,

72120XFE,0X66,0XFE,0X66,0XFE,0X67,0XF6,0X67,0XFE,0X87,0XFE,0XA8,0XFE,0X88,0XFE,0X89,

72130XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XF6,0XC9,0XEE,0X68,0XF6,0XAC,0XA4,0X47,0X59,0XE0,

72140X49,0X81,0X49,0XA2,0X49,0XE3,0X39,0X82,0X41,0XC3,0X94,0X4F,0XFF,0X9C,0XFF,0XFF,

72150XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XF7,0X75,0XF7,0X30,

72250XFF,0X2D,0XFF,0X4B,0XFF,0X4B,0XFF,0X2B,0XFF,0X2B,0XFF,0X0B,0XFF,0X0B,0XFF,0X2B,

72260XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XF6,0XA9,0XF6,0X89,0XF6,0X89,0XEE,0X49,0XE6,0X07,

72270XE6,0X28,0XF6,0X89,0XF6,0X69,0XF6,0X48,0XEE,0X27,0XE5,0XE6,0XDD,0X83,0XD5,0X42,

72280XD5,0X21,0XD5,0X00,0XD5,0X20,0XDD,0X40,0XE5,0X61,0XE5,0X81,0XE5,0X81,0XE5,0X80,

72290XE5,0X80,0XE5,0X80,0XE5,0XA0,0XE5,0XC0,0XE5,0XE1,0XED,0XE1,0XED,0XE2,0XEE,0X02,

72300XEE,0X23,0XF6,0X24,0XF6,0X45,0XF6,0X45,0XF6,0X66,0XFE,0X87,0XFE,0X87,0XFE,0X88,

72310XFE,0X87,0XF6,0X88,0XFE,0XA8,0XFE,0XA8,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,

72320XFE,0X88,0XFE,0XA8,0XFF,0X0A,0XF6,0XAB,0XDE,0X0C,0X83,0X44,0X41,0X60,0X49,0XC2,

72330X49,0XC2,0X41,0XA2,0X4A,0X05,0XBD,0X94,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72430XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XFF,0XB9,0XF7,0X32,0XF7,0X2E,0XFF,0X0B,0XFF,0X2B,

72440XFF,0X0B,0XFF,0X2C,0XFF,0X2C,0XFF,0X0C,0XF6,0XA9,0XF6,0X88,0XEE,0X46,0XEE,0X46,

72450XEE,0X06,0XF6,0X48,0XF6,0X69,0XF6,0X49,0XEE,0X29,0XEE,0X09,0XDD,0X86,0XCD,0X04,

72460XBC,0XC1,0XC4,0XA1,0XBC,0XA0,0XC4,0XA0,0XCD,0X00,0XD5,0X40,0XDD,0X60,0XDD,0X60,

72470XE5,0X60,0XE5,0X80,0XE5,0X80,0XE5,0X80,0XE5,0X80,0XED,0XA0,0XED,0XC0,0XED,0XE1,

72480XED,0XE1,0XED,0XE2,0XEE,0X02,0XF6,0X23,0XF6,0X23,0XF6,0X44,0XF6,0X65,0XF6,0X65,

72490XF6,0X66,0XF6,0X86,0XFE,0X87,0XFE,0X87,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

72500XFE,0X88,0XF6,0X88,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0X88,

72510XFE,0XCA,0XF6,0XAA,0XF6,0XCD,0XB4,0XA8,0X5A,0X00,0X41,0X80,0X41,0XA1,0X41,0X82,

72520X6A,0XE9,0XE6,0XD9,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

72620XFF,0XFC,0XF7,0X76,0XEF,0X10,0XF7,0X2D,0XFF,0X0A,0XFF,0X0A,0XFE,0XEA,0XFF,0X0C,

72630XFE,0XEC,0XFE,0XAB,0XE6,0X27,0XEE,0X25,0XE5,0XE4,0XEE,0X05,0XE5,0XC6,0XD5,0X24,

72640XC4,0X82,0XB4,0X21,0XAB,0XE1,0XA3,0XA0,0XA3,0XA0,0XA3,0XC0,0XAB,0XE0,0XB4,0X40,

72650XBC,0X80,0XCC,0XC0,0XD5,0X00,0XDD,0X40,0XDD,0X60,0XE5,0X80,0XED,0XA1,0XED,0XA1,

72660XED,0XC1,0XED,0XC1,0XED,0XC2,0XED,0XE2,0XF5,0XE2,0XF6,0X03,0XF6,0X24,0XF6,0X24,

72670XF6,0X44,0XF6,0X45,0XFE,0X65,0XFE,0X66,0XFE,0X66,0XFE,0X87,0XFE,0X87,0XF6,0X88,

72680XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

72690XFE,0X8A,0XFE,0X8A,0XFE,0XAA,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0X89,0XFE,0XCB,

72700XF6,0XCC,0XE6,0X4D,0X8B,0XA5,0X49,0XA0,0X49,0XC2,0X41,0XC3,0X94,0X4F,0XFF,0X9D,

72710XFF,0XFE,0XFF,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XF7,0X55,

72810XEF,0X0E,0XF7,0X0B,0XFF,0X0A,0XFF,0X09,0XFF,0X0B,0XFE,0XCB,0XFE,0XCC,0XF6,0X6A,

72820XEE,0X26,0XDD,0XA3,0XC4,0XA0,0XB4,0X20,0XB4,0X00,0XB3,0XE0,0XAB,0XC0,0XA3,0X80,

72830X9B,0X40,0X9B,0X40,0XA3,0X80,0XAB,0XC0,0XB4,0X20,0XBC,0XA0,0XCC,0XE1,0XD5,0X01,

72840XD5,0X41,0XDD,0X61,0XE5,0X81,0XED,0XA2,0XED,0XA2,0XED,0XC2,0XED,0XE3,0XF5,0XE3,

72850XF6,0X04,0XF6,0X04,0XF6,0X25,0XF6,0X25,0XF6,0X26,0XFE,0X26,0XFE,0X47,0XFE,0X67,

72860XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X89,

72870XFE,0X89,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0X8A,0XFE,0X8A,

72880XFE,0X8A,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0XCA,0XFE,0XAA,0XEE,0X6A,0XF6,0XED,

72890XBD,0X29,0X62,0XA2,0X41,0X81,0X52,0X25,0XCD,0XF6,0XFF,0XDE,0XFF,0XDE,0XFF,0XBE,

72900XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

72990XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XB9,0XEF,0X32,0XEE,0XEC,0XEE,0XE9,

73000XFE,0XE9,0XFE,0XE9,0XFF,0X0A,0XFE,0XCA,0XFE,0XEC,0XEE,0X29,0XEE,0X06,0XDD,0X63,

73010XCC,0XE2,0XBC,0X81,0XB3,0XE0,0XB4,0X00,0XB4,0X00,0XAB,0XC0,0XAB,0XA0,0XAB,0XA0,

73020XB3,0XE0,0XB4,0X00,0XBC,0X40,0XC4,0XC0,0XCC,0XE1,0XD5,0X21,0XDD,0X62,0XE5,0X82,

73030XE5,0XC2,0XED,0XE3,0XF6,0X03,0XF6,0X04,0XF6,0X24,0XF6,0X25,0XF6,0X25,0XF6,0X26,

73040XF6,0X46,0XFE,0X47,0XFE,0X47,0XFE,0X48,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,

73050XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X8A,0XFE,0X8A,

73060XFE,0X8A,0XFE,0XAA,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X69,0XFE,0X69,

73070XFE,0X89,0XFE,0X89,0XFE,0X8A,0XF6,0X69,0XF6,0XAA,0XF6,0XED,0XEE,0XAE,0XA4,0X89,

73080X39,0X60,0X6A,0XE9,0XF7,0X5B,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

73090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73180XFF,0XFF,0XFF,0XDD,0XFF,0X77,0XEE,0XF0,0XEE,0XCB,0XF6,0XE9,0XFE,0XE9,0XFE,0XC8,

73190XFF,0X0A,0XF6,0XA9,0XFE,0XAA,0XEE,0X28,0XDD,0XA6,0XC4,0XE3,0XD5,0X24,0XCC,0XE2,

73200XBC,0X81,0XBC,0X60,0XB4,0X20,0XB4,0X20,0XBC,0X40,0XBC,0X40,0XBC,0X40,0XC4,0X60,

73210XCC,0XC0,0XD5,0X00,0XDD,0X42,0XE5,0X82,0XE5,0XC3,0XED,0XE3,0XEE,0X03,0XEE,0X24,

73220XEE,0X44,0XF6,0X44,0XF6,0X45,0XF6,0X65,0XFE,0X46,0XFE,0X66,0XFE,0X67,0XFE,0X88,

73230XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X89,

73240XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0XA9,0XFE,0X8A,0XFE,0X89,

73250XFE,0XA9,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,

73260XF6,0X47,0XFE,0XCA,0XEE,0X8A,0XEE,0X8C,0XE6,0XAF,0XD6,0X31,0X62,0XA6,0X9C,0X8F,

73270XFF,0XDD,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,

73370XF7,0X34,0XEE,0XCE,0XF6,0XCB,0XFE,0XC8,0XFE,0XC8,0XFE,0XC8,0XFE,0XE9,0XFE,0XEA,

73380XF6,0X69,0XE5,0XE8,0XCD,0X25,0XBC,0X83,0XC4,0XC3,0XCD,0X04,0XD5,0X23,0XC4,0XC1,

73390XBC,0X60,0XBC,0X80,0XC4,0XA0,0XC4,0X80,0XC4,0XA0,0XD4,0XE0,0XD4,0XE0,0XDD,0X20,

73400XE5,0X82,0XED,0XE3,0XF6,0X24,0XF6,0X45,0XF6,0X45,0XF6,0X65,0XF6,0X65,0XF6,0X66,

73410XFE,0X86,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X68,0XFE,0X89,0XFE,0XA9,

73420XFE,0XA8,0XFE,0XA8,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,

73430XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0X89,0XFE,0X8A,0XFE,0X8A,0XFE,0XA9,0XFE,0XA9,

73440XFE,0XAA,0XFE,0X8A,0XFE,0X8B,0XFE,0X6B,0XFE,0X8A,0XFE,0X8B,0XEE,0X49,0XF6,0XCC,

73450XEE,0X8C,0XE6,0X8E,0XE6,0X71,0XE6,0XB4,0XC5,0XB2,0XDE,0XB8,0XFF,0XFE,0XFF,0XFE,

73460XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDA,0XEE,0XF1,0XE6,0X8C,

73560XF6,0XCA,0XF6,0XA8,0XFE,0XA9,0XFE,0XC9,0XFE,0XA8,0XFE,0XC9,0XEE,0X08,0XE5,0XC8,

73570XBC,0XA4,0XB4,0X22,0XB4,0X42,0XC4,0XA3,0XCC,0XE3,0XCD,0X03,0XCC,0XE2,0XC4,0XC0,

73580XC4,0XC0,0XCC,0XE0,0XD5,0X20,0XDD,0X40,0XED,0X81,0XED,0XA2,0XF5,0XE3,0XF6,0X04,

73590XFE,0X45,0XFE,0X66,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,

73600XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0XA8,0XFE,0XA8,

73610XFE,0XA8,0XFE,0XA8,0XF6,0XA9,0XF6,0XA9,0XF6,0XAA,0XF6,0XAA,0XF6,0XAA,0XF6,0X8A,

73620XF6,0XAA,0XF6,0X8A,0XF6,0X8B,0XF6,0XAB,0XEE,0X8A,0XEE,0X8B,0XEE,0X8B,0XEE,0X8C,

73630XEE,0X6D,0XEE,0X6E,0XEE,0X6E,0XEE,0X8F,0XF7,0X11,0XE6,0XB0,0XEE,0XB2,0XF7,0X35,

73640XFF,0XB9,0XF7,0X58,0XFF,0XDC,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73740XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XF7,0X76,0XE6,0XAF,0XE6,0X6B,0XF6,0XAA,0XF6,0X88,

73750XFE,0X89,0XFE,0XAA,0XFE,0XC9,0XFE,0XA9,0XE5,0XE8,0XCD,0X26,0XA3,0XE2,0XA3,0XE2,

73760XAC,0X03,0XAC,0X23,0XB4,0X42,0XC4,0XA3,0XCD,0X03,0XCD,0X22,0XD5,0X21,0XD5,0X20,

73770XDD,0X60,0XE5,0XC1,0XED,0XC1,0XF5,0XE2,0XFE,0X24,0XFE,0X45,0XFE,0X66,0XFE,0X67,

73780XFE,0X68,0XFE,0X68,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,

73790XFE,0X69,0XFE,0X69,0XFE,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X8A,

73800XEE,0X8A,0XEE,0X8A,0XEE,0XAB,0XEE,0X8C,0XEE,0X8C,0XEE,0X8D,0XEE,0X8D,0XEE,0X8D,

73810XEE,0X8D,0XE6,0X8D,0XE6,0X8E,0XE6,0XAF,0XEE,0XD1,0XF7,0X12,0XF7,0X34,0XFF,0X55,

73820XFF,0X97,0XFF,0XB8,0XFF,0XFA,0XFF,0XDA,0XFF,0XDA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFD,

73830XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

73920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

73930XFF,0XDA,0XEE,0XD2,0XE6,0X8D,0XEE,0X8A,0XF6,0XA9,0XFE,0XA9,0XF6,0X69,0XFE,0X89,

73940XF6,0X68,0XEE,0X48,0XDD,0XC8,0XB4,0XA4,0X9B,0XC3,0XA3,0XE3,0XA3,0XE3,0X9B,0XC3,

73950XA3,0XE3,0XAC,0X23,0XBC,0X83,0XC4,0XC3,0XCD,0X02,0XCD,0X41,0XD5,0X61,0XE5,0XC2,

73960XED,0XC2,0XF5,0XE3,0XFE,0X44,0XFE,0X86,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X89,

73970XFE,0X89,0XF6,0X89,0XFE,0X89,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XF6,0XAA,

73980XF6,0XAA,0XF6,0XAB,0XEE,0XAB,0XEE,0XAC,0XEE,0XAD,0XEE,0XAD,0XEE,0XAE,0XEE,0XAF,

73990XE6,0X8F,0XE6,0X8F,0XE6,0XB1,0XEE,0XD2,0XF7,0X13,0XFF,0X34,0XFF,0X74,0XFF,0X76,

74000XFF,0XB9,0XFF,0XBA,0XFF,0XBB,0XFF,0XDB,0XFF,0XDC,0XFF,0XDC,0XFF,0XFD,0XFF,0XFE,

74010XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XD8,0XE6,0X8F,

74120XE6,0X6C,0XF6,0X8A,0XF6,0X68,0XFE,0X89,0XF6,0X69,0XFE,0X8A,0XF6,0X89,0XEE,0X49,

74130XCD,0X67,0X93,0XA1,0X8B,0X61,0X8B,0X62,0X93,0X83,0X93,0XC3,0X9B,0XC3,0XA3,0XE3,

74140XA4,0X02,0XAC,0X22,0XB4,0X82,0XC4,0XE2,0XCD,0X43,0XD5,0X63,0XE5,0XC3,0XEE,0X04,

74150XFE,0X46,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0XAA,0XF6,0XAA,0XF6,0X8B,

74160XF6,0X8B,0XEE,0X8B,0XEE,0X8B,0XEE,0X6B,0XEE,0X6B,0XEE,0X6C,0XEE,0X8C,0XEE,0XAD,

74170XEE,0XAE,0XEE,0XD0,0XEE,0XD1,0XF7,0X12,0XF7,0X13,0XF7,0X34,0XFF,0X76,0XFF,0X77,

74180XFF,0X98,0XFF,0X98,0XFF,0XB9,0XFF,0XBA,0XFF,0XDA,0XFF,0XDB,0XFF,0XFD,0XFF,0XFE,

74190XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0X75,0XDE,0X4C,0XEE,0X4B,0XF6,0X6A,

74310XEE,0X48,0XF6,0X88,0XF6,0X68,0XF6,0X89,0XEE,0X69,0XE6,0X29,0XB4,0X84,0X83,0X20,

74320X83,0X21,0X83,0X21,0X83,0X42,0X8B,0X62,0X93,0X83,0X93,0X82,0X93,0X82,0X9B,0XC2,

74330XA3,0XE2,0XA3,0XE1,0XAC,0X42,0XC4,0XE3,0XD5,0X64,0XE5,0XE5,0XF6,0X68,0XFE,0XA9,

74340XFE,0XAA,0XF6,0X8A,0XF6,0X8B,0XF6,0X8C,0XEE,0X8C,0XEE,0X8D,0XEE,0X8E,0XEE,0X8F,

74350XEE,0XB0,0XEE,0XD1,0XF6,0XF2,0XF7,0X13,0XF7,0X34,0XFF,0X55,0XFF,0X76,0XFF,0X97,

74360XFF,0XB8,0XFF,0XD9,0XFF,0XFA,0XFF,0XFB,0XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,

74370XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,

74380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDE,0XFF,0XFF,0XF7,0XDE,0XFF,0XFF,

74390XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74490XFF,0XFF,0XFF,0XFB,0XEE,0XF1,0XDE,0X2A,0XE6,0X2A,0XF6,0X6A,0XF6,0X48,0XF6,0X68,

74500XF6,0X68,0XEE,0X48,0XE6,0X09,0XCD,0X87,0X93,0XA1,0X7B,0X00,0X83,0X20,0X8B,0X82,

74510X93,0XE3,0X9C,0X04,0XA4,0X24,0XA4,0X45,0XA4,0X45,0XAC,0X45,0XAC,0X44,0XAC,0X44,

74520XB4,0X64,0XBC,0XA4,0XC5,0X24,0XD5,0XA6,0XE6,0X28,0XEE,0X8A,0XEE,0X8A,0XEE,0X8B,

74530XF6,0XAC,0XF6,0XCD,0XFF,0X30,0XFF,0X31,0XFF,0X53,0XFF,0X74,0XFF,0X95,0XFF,0X97,

74540XFF,0XB8,0XFF,0XB9,0XFF,0XB9,0XFF,0XDA,0XFF,0XDB,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,

74550XFF,0XFC,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

74560XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

74570XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

74580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XBD,0XFF,0XDA,

74680XD6,0X0C,0XE6,0X49,0XEE,0X2A,0XF6,0X29,0XF6,0X28,0XF6,0X48,0XF6,0X68,0XF6,0X68,

74690XF6,0XCB,0XE6,0X4A,0XD5,0XE9,0XD5,0XE9,0XDE,0X4B,0XEE,0XAD,0XEE,0XED,0XEE,0XED,

74700XF7,0X0D,0XF7,0X0E,0XF7,0X0E,0XF7,0X0E,0XF6,0XEE,0XFF,0X0E,0XFE,0XED,0XF6,0XEC,

74710XF6,0XEB,0XFF,0X0C,0XFF,0X4D,0XFF,0X6D,0XFF,0X4E,0XFF,0X4E,0XFF,0X6F,0XFF,0X70,

74720XFF,0X91,0XFF,0X93,0XFF,0XB5,0XFF,0XD6,0XFF,0XD8,0XFF,0XF9,0XFF,0XFA,0XFF,0XFB,

74730XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

74740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFE,

74750XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74760XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

74860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XBC,0XFF,0X97,0XD6,0X0B,0XE6,0X28,

74870XEE,0X29,0XEE,0X29,0XF6,0X28,0XF6,0X47,0XF6,0X67,0XF6,0X68,0XFF,0X0C,0XFF,0X0C,

74880XFE,0XED,0XF6,0XEC,0XF6,0XCC,0XEE,0XAB,0XEE,0XAA,0XE6,0XAA,0XE6,0X69,0XE6,0X6A,

74890XE6,0X6A,0XE6,0X4A,0XE6,0X4A,0XE6,0X4A,0XE6,0X4A,0XE6,0X49,0XEE,0X8A,0XEE,0XAA,

74900XEE,0XCB,0XF6,0XCB,0XF6,0XCB,0XFF,0X0C,0XFF,0X2E,0XFF,0X4F,0XFF,0X91,0XFF,0X91,

74910XFF,0X72,0XFF,0X54,0XFF,0X55,0XFF,0X76,0XFF,0XB8,0XFF,0XD9,0XFF,0XDA,0XFF,0XFC,

74920XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

74930XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,

74940XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

74950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

74990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,

75050XFF,0XDF,0XFF,0XBE,0XFF,0XDB,0XE6,0X92,0XDE,0X0A,0XE6,0X28,0XEE,0X28,0XEE,0X28,

75060XEE,0X28,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X49,0XEE,0X49,0XEE,0X49,

75070XEE,0X49,0XE6,0X49,0XEE,0X68,0XEE,0X68,0XEE,0X68,0XEE,0X68,0XEE,0X68,0XEE,0X49,

75080XEE,0X49,0XEE,0X49,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

75090XEE,0X28,0XEE,0X28,0XEE,0X29,0XEE,0X49,0XEE,0X4A,0XF6,0X8B,0XFE,0XCD,0XFF,0X0F,

75100XFF,0X30,0XFF,0X31,0XFF,0X32,0XFF,0X32,0XEF,0X54,0XF7,0X95,0XFF,0XB7,0XFF,0XFA,

75110XFF,0XFB,0XFF,0XFC,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

75120XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

75130XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

75140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75230XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,

75240XFF,0X99,0XD5,0XEE,0XDE,0X09,0XE6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

75250XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X48,

75260XEE,0X47,0XEE,0X47,0XEE,0X67,0XEE,0X47,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X28,

75270XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,

75280XEE,0X08,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XE6,0X09,0XE6,0X09,0XE6,0X2A,0XEE,0X6B,

75290XF6,0XAD,0XF7,0X0E,0XEF,0X2F,0XF7,0X71,0XF7,0X93,0XEF,0X53,0XEF,0X55,0XFF,0X98,

75300XFF,0XDA,0XFF,0XDB,0XFF,0XFD,0XFF,0XFD,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,

75310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75320XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75420XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XBD,0XF7,0X15,0XD5,0XEC,

75430XE6,0X09,0XE6,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

75440XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X48,0XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X67,

75450XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X47,0XEE,0X47,

75460XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

75470XE6,0X07,0XE6,0X27,0XE6,0X28,0XE6,0X28,0XE6,0X29,0XE6,0X29,0XE6,0X29,0XE6,0X49,

75480XDE,0X4A,0XDE,0X6A,0XEE,0XCC,0XF7,0X2F,0XFF,0X71,0XF7,0X31,0XF7,0X33,0XF7,0X55,

75490XFF,0X78,0XFF,0XDA,0XFF,0XDC,0XFF,0XDD,0XFF,0XDD,0XFF,0XFE,0XFF,0XDE,0XFF,0XDF,

75500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75610XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XBB,0XE6,0X91,0XD5,0XEB,0XE6,0X08,0XE6,0X07,

75620XE6,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,

75630XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X27,

75640XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,

75650XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X28,

75660XEE,0X28,0XE6,0X28,0XE6,0X28,0XE6,0X28,0XE6,0X48,0XE6,0X48,0XE6,0X48,0XE6,0X48,

75670XDE,0X28,0XDE,0X28,0XE6,0X6A,0XF6,0XED,0XFF,0X30,0XFF,0X52,0XF7,0X13,0XF7,0X56,

75680XFF,0X98,0XFF,0XBA,0XFF,0XDC,0XFF,0XDD,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,

75800XFF,0XDD,0XFF,0X79,0XDE,0X4F,0XD5,0XEA,0XE6,0X08,0XE6,0X07,0XE6,0X08,0XE6,0X28,

75810XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,

75820XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

75830XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XEE,0X27,

75840XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X48,

75850XEE,0X48,0XEE,0X28,0XEE,0X08,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X06,0XE6,0X27,

75860XEE,0X28,0XE6,0X29,0XE6,0X4B,0XE6,0X6C,0XEE,0XF0,0XF7,0X32,0XF7,0X33,0XEF,0X35,

75870XF7,0X97,0XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75880XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

75980XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFE,0XFF,0XDB,0XEE,0XF4,

75990XD5,0XEC,0XDE,0X0A,0XE6,0X08,0XE6,0X07,0XE6,0X08,0XEE,0X08,0XE6,0X27,0XEE,0X27,

76000XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X27,

76010XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,

76020XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76030XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE5,0XE7,0XE5,0XE7,0XEE,0X07,

76040XEE,0X08,0XEE,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XE5,0XE6,0XE5,0XC6,0XE5,0XE7,

76050XE6,0X29,0XE6,0X4A,0XDE,0X0A,0XEE,0X8D,0XF7,0X10,0XF7,0X52,0XF7,0X53,0XEF,0X34,

76060XF7,0X97,0XFF,0XDA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

76070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76170XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XDE,0X91,0XCD,0XCA,0XDD,0XE8,

76180XE6,0X08,0XE6,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,

76190XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

76200XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76210XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76220XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76230XED,0XE6,0XED,0XE6,0XF6,0X07,0XF6,0X27,0XF6,0X28,0XEE,0X07,0XE6,0X07,0XE6,0X07,

76240XE6,0X08,0XDD,0XE8,0XDD,0XE9,0XE6,0X6B,0XFF,0X0F,0XFF,0X72,0XFF,0X72,0XF7,0X33,

76250XFF,0XF9,0XFF,0XFB,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

76270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

76360XFF,0XDE,0XFF,0XFC,0XF7,0X97,0XCE,0X0D,0XD5,0XE9,0XDE,0X08,0XE6,0X08,0XED,0XE7,

76370XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X26,0XEE,0X07,0XEE,0X27,

76380XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76390XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

76400XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76410XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

76420XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X27,0XE6,0X27,

76430XE6,0X28,0XE6,0X08,0XE6,0X09,0XEE,0X6B,0XFF,0X0F,0XFF,0X92,0XF7,0X33,0XFF,0XD7,

76440XFF,0XFA,0XFF,0XBB,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76450XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFE,0XFF,0XDB,

76550XEF,0X14,0XCD,0XCB,0XD5,0XE8,0XE6,0X08,0XE5,0XE8,0XED,0XE7,0XEE,0X07,0XEE,0X07,

76560XE6,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

76570XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76580XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

76590XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76600XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

76610XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X07,0XE6,0X07,0XE6,0X07,

76620XE5,0XE8,0XE6,0X09,0XEE,0X4B,0XF6,0X8D,0XFF,0X51,0XF7,0X52,0XFF,0X95,0XFF,0XD9,

76630XFF,0XFB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

76640XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0XFF,0XFE,0XFF,0XBA,0XDE,0XB1,0XCD,0XEB,

76740XD5,0XC8,0XE6,0X07,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,

76750XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76760XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76770XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76780XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76790XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

76800XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X08,0XE5,0XE8,

76810XE5,0XC8,0XE5,0XE9,0XE6,0X6B,0XF7,0X2F,0XFF,0X92,0XFF,0X74,0XFF,0X97,0XFF,0XDB,

76820XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

76830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

76920XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XF7,0X77,0XD6,0X0D,0XD5,0XE9,0XD5,0XC7,0XE6,0X08,

76930XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,0XEE,0X07,0XEE,0X07,

76940XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76950XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76960XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76970XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

76980XEE,0X27,0XE6,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

76990XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XED,0XE7,0XED,0XC8,0XED,0XC8,0XEE,0X08,

77000XDD,0XC7,0XE6,0X49,0XF6,0XED,0XFF,0X51,0XFF,0X74,0XFF,0X97,0XFF,0XDB,0XFF,0XFD,

77010XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

77110XFF,0XBB,0XEE,0XF5,0XCD,0XEB,0XD5,0XA8,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

77120XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

77130XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77140XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77150XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77160XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77170XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,

77180XEE,0X06,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XED,0XE7,0XED,0XE7,0XEE,0X27,0XDD,0XE6,

77190XDE,0X08,0XF6,0XCD,0XFF,0X51,0XFF,0X74,0XFF,0X97,0XFF,0XDA,0XFF,0XFC,0XFF,0XFD,

77200XFF,0XFE,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XDE,0X72,

77300XD5,0XCA,0XD5,0XC7,0XE6,0X08,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

77310XE6,0X08,0XE6,0X08,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

77320XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77330XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77340XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77350XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

77360XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X06,

77370XED,0XE6,0XED,0XE6,0XEE,0X06,0XEE,0X07,0XE5,0XC6,0XF6,0X69,0XE6,0X28,0XD5,0XC7,

77380XEE,0X8C,0XFF,0X30,0XFF,0X53,0XFF,0X95,0XFF,0XD8,0XFF,0XFA,0XFF,0XFD,0XFF,0XFE,

77390XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0X99,0XCD,0XCE,0XCD,0XA9,0XDD,0XE7,

77490XE5,0XE8,0XE5,0XA7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,

77500XED,0XE7,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,

77510XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77520XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77530XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77540XEE,0X27,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

77550XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X06,0XE6,0X06,0XEE,0X06,0XEE,0X27,

77560XEE,0X27,0XE5,0XE6,0XF6,0X48,0XDD,0XA6,0XEE,0X07,0XEE,0X48,0XD5,0XC7,0XE6,0X4A,

77570XFF,0X50,0XF7,0X51,0XFF,0X94,0XFF,0XD8,0XFF,0XFB,0XFF,0XFD,0XFF,0XDF,0XFF,0XDF,

77580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77670XFF,0XFF,0XFF,0XDC,0XF7,0X17,0XC5,0X8C,0XD5,0XC8,0XE5,0XE7,0XE5,0XC7,0XE5,0XC7,

77680XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XED,0XE7,0XEE,0X07,

77690XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

77700XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77710XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77720XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

77730XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

77740XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,

77750XEE,0X07,0XEE,0X07,0XE5,0XE7,0XE5,0XE7,0XE6,0X08,0XDD,0XE7,0XDE,0X29,0XF6,0XED,

77760XF7,0X30,0XFF,0XB4,0XFF,0XD8,0XFF,0XDC,0XFF,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

77770XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,

77860XDE,0X52,0XC5,0X4B,0XDD,0XE9,0XE5,0XE7,0XE5,0XC7,0XED,0XE8,0XE5,0XE7,0XE5,0XE7,

77870XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

77880XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

77890XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77900XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,

77910XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

77920XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

77930XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE5,0XE7,0XEE,0X07,

77940XE5,0XE7,0XE6,0X07,0XEE,0X07,0XE5,0XE7,0XDE,0X07,0XE6,0X69,0XF6,0XED,0XEF,0X10,

77950XEF,0X34,0XFF,0XB9,0XFF,0XFD,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77960XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

77990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XBA,0XC5,0X8E,0XCD,0X6B,

78050XE6,0X09,0XE5,0XC7,0XE5,0XC7,0XED,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

78060XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

78070XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

78080XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

78090XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

78100XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,

78110XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

78120XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X06,0XEE,0X06,0XE6,0X06,0XE6,0X07,

78130XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X28,0XDE,0X28,0XF7,0X0E,0XEE,0XD0,0XE6,0XD3,

78140XFF,0XBA,0XFF,0XFD,0XFF,0XDD,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78150XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78230XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XF7,0X17,0XBD,0X4C,0XD5,0XCB,0XDD,0XC8,0XE5,0XC7,

78240XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,

78250XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

78260XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

78270XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

78280XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X28,

78290XEE,0X28,0XEE,0X28,0XE6,0X28,0XE6,0X28,0XE6,0X28,0XE6,0X27,0XEE,0X07,0XEE,0X07,

78300XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

78310XEE,0X07,0XEE,0X26,0XEE,0X26,0XE6,0X26,0XE6,0X06,0XE6,0X07,0XEE,0X07,0XEE,0X27,

78320XEE,0X27,0XE6,0X07,0XE6,0X07,0XE6,0X4A,0XEE,0XAE,0XDE,0X4F,0XE6,0XB3,0XFF,0XBA,

78330XFF,0XDC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

78420XFF,0XFC,0XD6,0X11,0XC5,0X6B,0XDD,0XEA,0XDD,0XA8,0XE5,0XC7,0XEE,0X08,0XE5,0XC7,

78430XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

78440XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

78450XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

78460XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

78470XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

78480XE6,0X27,0XE6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,

78490XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

78500XE6,0X26,0XE6,0X25,0XEE,0X26,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE5,0XE6,

78510XEE,0X27,0XDD,0XC7,0XE6,0X6A,0XEE,0X8D,0XC5,0X8C,0XDE,0X72,0XFF,0XDA,0XFF,0XDC,

78520XFF,0XFD,0XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XDA,0XBD,0X4D,

78610XCD,0XAB,0XDD,0XC9,0XDD,0XC8,0XDD,0XA7,0XEE,0X28,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,

78620XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

78630XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

78640XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

78650XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

78660XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

78670XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,

78680XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X26,0XE6,0X26,

78690XEE,0X27,0XEE,0X27,0XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XE5,0XE6,0XEE,0X48,

78700XE6,0X07,0XE6,0X4A,0XDE,0X2C,0XAC,0XC9,0XD6,0X32,0XFF,0X99,0XFF,0XFD,0XFF,0XDD,

78710XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

78720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

78790XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XF7,0X16,0XBD,0X4C,0XD5,0XCA,0XD5,0XC8,

78800XE6,0X09,0XDD,0XC7,0XE6,0X07,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

78810XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

78820XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

78830XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

78840XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

78850XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,

78860XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

78870XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X26,0XE6,0X07,0XE6,0X07,

78880XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X06,0XEE,0X27,0XE6,0X28,

78890XE6,0X2A,0XCD,0XCB,0X8B,0XC6,0XD6,0X53,0XFF,0XDB,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,

78900XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

78970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFF,

78980XFF,0XFE,0XFF,0XDC,0XCD,0XF0,0XC5,0X6B,0XCD,0XA8,0XD5,0XA7,0XE5,0XE8,0XE5,0XE8,

78990XDD,0XC7,0XDD,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

79000XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

79010XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

79020XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

79030XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

79040XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

79050XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

79060XEE,0X27,0XEE,0X07,0XEE,0X06,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X28,0XEE,0X28,

79070XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X06,0XEE,0X26,0XE6,0X26,0XE6,0X28,0XDE,0X2A,

79080XCD,0X8B,0X73,0X04,0XDE,0XB6,0XF7,0X9B,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

79090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0X99,

79170XC5,0X6C,0XD5,0XCA,0XDD,0XC8,0XDD,0XC8,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,

79180XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,

79190XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X08,0XEE,0X28,

79200XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

79210XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

79220XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

79230XEE,0X08,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

79240XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

79250XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X08,0XEE,0X08,0XEE,0X09,0XEE,0X08,

79260XEE,0X07,0XEE,0X07,0XEE,0X05,0XEE,0X26,0XEE,0X27,0XE6,0X09,0XCD,0X89,0XAC,0XA8,

79270X73,0X05,0XD6,0X74,0XFF,0XBC,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,

79280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79350XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFC,0XE6,0XD4,0XBD,0X4A,0XD5,0XA8,

79360XDD,0XC8,0XE5,0XE7,0XE5,0XE7,0XED,0XE7,0XE5,0XE8,0XE5,0XC8,0XE5,0XE8,0XE5,0XE7,

79370XE6,0X07,0XE5,0XE6,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

79380XEE,0X07,0XEE,0X08,0XEE,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X28,

79390XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X27,0XEE,0X48,0XEE,0X27,

79400XEE,0X28,0XEE,0X27,0XEE,0X07,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

79410XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X27,

79420XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,

79430XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

79440XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X09,0XEE,0X08,0XEE,0X08,0XEE,0X07,

79450XEE,0X06,0XEE,0X26,0XEE,0X07,0XE6,0X08,0XDD,0XC9,0XC5,0X29,0X72,0XE2,0X83,0XA8,

79460XE6,0X96,0XFF,0XBD,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79540XFF,0XDF,0XFF,0XFE,0XFF,0XDB,0XD6,0X31,0XC5,0X89,0XD5,0XE8,0XDD,0XE7,0XDD,0XE6,

79550XE5,0XE6,0XE5,0XC6,0XDD,0XC7,0XDD,0XC7,0XDD,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

79560XE6,0X07,0XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

79570XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X28,

79580XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

79590XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

79600XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

79610XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X07,

79620XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,

79630XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X06,

79640XEE,0X07,0XEE,0X08,0XE6,0X09,0XD5,0XAA,0XA4,0X87,0X5A,0X62,0X94,0X0B,0XEE,0XF9,

79650XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XFF,0XDF,0XFF,0XDE,

79730XF7,0X58,0XBD,0X8D,0XCD,0XA9,0XD5,0XE7,0XDD,0XE6,0XDD,0XE6,0XE5,0XC6,0XE5,0XC6,

79740XE5,0XE7,0XE5,0XE8,0XDD,0XE7,0XDD,0XE7,0XDD,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,

79750XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X07,0XE6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

79760XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

79770XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X48,

79780XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

79790XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

79800XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

79810XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X27,

79820XEE,0X27,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,

79830XE6,0X08,0XD5,0XC9,0XC5,0X49,0X83,0X64,0X52,0X22,0XA4,0XCF,0XFF,0XBC,0XFF,0XFE,

79840XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

79910XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDD,0XDE,0XB4,0XBD,0X6B,

79920XCD,0XA9,0XDD,0XE7,0XDD,0XE6,0XE5,0XE6,0XE5,0XE6,0XE5,0XC6,0XE5,0XE7,0XE5,0XE8,

79930XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

79940XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X27,0XEE,0X27,0XEE,0X27,

79950XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

79960XEE,0X28,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,

79970XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

79980XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

79990XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

80000XEE,0X08,0XEE,0X28,0XEE,0X27,0XEE,0X26,0XEE,0X46,0XEE,0X46,0XEE,0X27,0XEE,0X27,

80010XEE,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XE6,0X08,0XDD,0XE8,

80020XC5,0X68,0X8B,0XC4,0X62,0X82,0X62,0XC6,0XB5,0X72,0XFF,0XDD,0XFF,0XDD,0XFF,0XFE,

80030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80100XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0X9B,0XCD,0XF0,0XBD,0X6A,0XCD,0XA7,0XDD,0XC6,

80110XDD,0XA5,0XDD,0XA4,0XE5,0XC5,0XE5,0XC5,0XE5,0XC6,0XE5,0XE7,0XE5,0XC6,0XDD,0XE6,

80120XE5,0XE6,0XE5,0XE6,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

80130XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,

80140XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X08,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X47,

80150XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

80160XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80170XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

80180XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X08,

80190XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,

80200XF6,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XE6,0X07,0XE6,0X49,0XD5,0XA8,0XBD,0X28,

80210X6A,0XC2,0X41,0XA0,0X62,0XE7,0XF7,0X9B,0XF7,0XBC,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,

80220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

80290XFF,0XBD,0XEF,0X38,0XC5,0XCE,0XC5,0X8A,0XDE,0X08,0XEE,0X27,0XEE,0X26,0XF6,0X26,

80300XFE,0X46,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,

80310XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0X69,0XFE,0X69,0XFE,0X8A,0XFE,0XAA,

80320XFE,0X8A,0XF6,0X69,0XEE,0X49,0XEE,0X28,0XE6,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X29,

80330XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XF6,0X47,

80340XF6,0X48,0XF6,0X48,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,

80350XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80360XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

80370XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X26,

80380XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XF6,0X27,0XEE,0X27,

80390XEE,0X27,0XEE,0X27,0XEE,0X28,0XF6,0X6A,0XDD,0XE8,0XC5,0X47,0X8B,0XA4,0X5A,0X41,

80400X49,0XE3,0X7B,0XCB,0XFF,0XBC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XF7,0X58,

80480XDE,0X92,0XDE,0X6E,0XEE,0X6B,0XF6,0X8A,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,

80490XFE,0X88,0XF6,0X68,0XFE,0X88,0XF6,0X88,0XF6,0X67,0XF6,0X47,0XF6,0X27,0XEE,0X06,

80500XED,0XE6,0XED,0XC6,0XE5,0XA5,0XE5,0X85,0XE5,0X86,0XE5,0X86,0XE5,0XA6,0XDD,0XC7,

80510XE5,0XC8,0XE5,0XE8,0XE6,0X29,0XEE,0X2A,0XEE,0X4A,0XEE,0X4A,0XEE,0X4A,0XEE,0X4A,

80520XEE,0X2A,0XEE,0X29,0XEE,0X48,0XEE,0X47,0XE6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80530XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X08,0XF6,0X08,0XEE,0X28,0XEE,0X27,

80540XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80550XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

80560XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X27,

80570XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XF6,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,

80580XEE,0X08,0XF6,0X6A,0XE5,0XE8,0XCD,0X87,0X9C,0X25,0X62,0X61,0X52,0X23,0X5A,0X86,

80590XBD,0XD4,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0X9A,0XF7,0X36,0XEE,0XD2,

80670XEE,0X8F,0XEE,0X6D,0XEE,0X6C,0XF6,0X6B,0XF6,0X4A,0XF6,0X4A,0XEE,0X49,0XEE,0X49,

80680XEE,0X48,0XEE,0X27,0XF6,0X26,0XED,0XE6,0XED,0XC6,0XED,0XC6,0XED,0XA5,0XE5,0XA4,

80690XDD,0X63,0XDD,0X23,0XD5,0X03,0XCC,0XC2,0XC4,0XA2,0XBC,0X82,0XAC,0X42,0XAC,0X22,

80700XA4,0X22,0XAC,0X43,0XB4,0X84,0XBC,0XC5,0XC5,0X27,0XD5,0X88,0XDD,0XE9,0XE6,0X09,

80710XE6,0X29,0XEE,0X8A,0XEE,0X89,0XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X06,0XEE,0X27,

80720XF6,0X27,0XF6,0X27,0XF6,0X07,0XEE,0X08,0XF6,0X48,0XEE,0X27,0XEE,0X07,0XEE,0X27,

80730XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80740XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80750XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80760XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X48,

80770XEE,0X28,0XD5,0XA7,0XB4,0XA6,0X72,0XC2,0X52,0X02,0X49,0XE3,0X7B,0XAC,0XE7,0X1A,

80780XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80850XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0X9A,0XFF,0X78,0XFF,0X56,0XFF,0X34,

80860XF6,0XF2,0XF6,0XB0,0XF6,0X8E,0XEE,0X4D,0XEE,0X4C,0XEE,0X4B,0XEE,0X6A,0XF6,0X49,

80870XF6,0X48,0XF6,0X27,0XF6,0X07,0XF6,0X07,0XF6,0X06,0XED,0XE5,0XED,0XE5,0XED,0XC5,

80880XE5,0X85,0XD5,0X45,0XCD,0X05,0XBC,0XC4,0XB4,0X84,0XAC,0X64,0X9C,0X03,0X93,0XC3,

80890X8B,0X82,0X8B,0X82,0X83,0X41,0X83,0X21,0X8B,0XA2,0XA4,0X44,0XB4,0XC5,0XC5,0X67,

80900XDE,0X09,0XEE,0X6A,0XEE,0X8A,0XEE,0X49,0XEE,0X27,0XED,0XE6,0XF6,0X27,0XEE,0X27,

80910XF6,0X48,0XF6,0X47,0XED,0XE6,0XEE,0X27,0XF6,0X68,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80920XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X27,0XEE,0X27,

80930XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80940XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

80950XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XDD,0XE7,

80960XC5,0X28,0X72,0XE1,0X52,0X22,0X4A,0X04,0X52,0X66,0XB5,0X94,0XFF,0XDD,0XFF,0XFE,

80970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

80990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

81040XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDD,0XFF,0XDC,0XFF,0XBA,0XFF,0X99,0XFF,0X77,

81050XFF,0X35,0XF6,0XF2,0XEE,0XD0,0XEE,0XAE,0XEE,0X8C,0XEE,0X6B,0XEE,0X49,0XEE,0X28,

81060XF6,0X28,0XF6,0X27,0XF6,0X26,0XEE,0X26,0XF6,0X27,0XEE,0X28,0XEE,0X28,0XE5,0XE8,

81070XDD,0XA8,0XCD,0X48,0XBD,0X08,0XB4,0XE8,0XB4,0XC8,0XAC,0X88,0X9C,0X06,0X8B,0XA5,

81080X83,0X84,0X83,0X84,0X73,0X22,0X62,0X80,0X6A,0XA0,0X6A,0XC0,0X8B,0X83,0XAC,0X86,

81090XCD,0X69,0XE6,0X0A,0XF6,0X6B,0XF6,0X6A,0XEE,0X07,0XEE,0X47,0XF6,0X46,0XEE,0X46,

81100XEE,0X26,0XEE,0X46,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

81110XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,

81120XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

81130XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

81140XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XF6,0X48,0XE6,0X08,0XC5,0X48,0X83,0X43,

81150X52,0X21,0X52,0X23,0X39,0XA3,0X83,0XCC,0XEF,0X5A,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

81160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFE,0XFF,0XDF,

81230XFF,0XBF,0XFF,0XBF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDD,0XFF,0XDC,0XFF,0XDA,0XFF,0XB8,

81240XFF,0X96,0XFF,0X74,0XF7,0X11,0XF6,0XEF,0XF6,0XAE,0XEE,0X6C,0XEE,0X4B,0XEE,0X2A,

81250XEE,0X29,0XEE,0X29,0XE6,0X29,0XE6,0X2A,0XE6,0X2B,0XDE,0X0B,0XD5,0XCB,0XCD,0X8B,

81260XC5,0X4B,0XBD,0X4C,0XB4,0XEB,0XA4,0XAB,0XA4,0XAB,0XA4,0XCB,0XA4,0X8B,0X8C,0X08,

81270X83,0X87,0X83,0X87,0X6A,0XE4,0X62,0X82,0X52,0X00,0X51,0XE0,0X6A,0X81,0X8B,0X84,

81280XBC,0XE8,0XE6,0X0B,0XEE,0X8B,0XE6,0X28,0XE6,0X26,0XEE,0X46,0XEE,0X47,0XEE,0X46,

81290XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X27,

81300XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

81310XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

81320XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

81330XF6,0X28,0XEE,0X47,0XF6,0X68,0XEE,0X48,0XCD,0X47,0X93,0XE4,0X52,0X00,0X52,0X03,

81340X41,0XC3,0X5A,0X87,0XC5,0XF4,0XFF,0XDC,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81410XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XDF,

81420XFF,0XDF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFA,

81430XFF,0XD8,0XFF,0XB7,0XFF,0X55,0XFF,0X13,0XF6,0XB1,0XEE,0X90,0XE6,0X6F,0XE6,0X8E,

81440XEE,0XB0,0XEE,0XD0,0XF6,0XF1,0XF7,0X12,0XF7,0X13,0XF7,0X14,0XEF,0X15,0XEF,0X15,

81450XF7,0X57,0XF7,0X58,0XF7,0X58,0XEF,0X17,0XEF,0X17,0XEF,0X17,0XE6,0XD6,0XDE,0X95,

81460XCE,0X13,0XC5,0XD3,0XAD,0X10,0X94,0X2C,0X7B,0X69,0X5A,0X23,0X51,0XE0,0X6A,0XA1,

81470XA4,0X86,0XD6,0X0A,0XEE,0XAB,0XE6,0X48,0XE6,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X27,

81480XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XEE,0X48,

81490XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

81500XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

81510XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,

81520XF6,0X67,0XEE,0X69,0XCD,0X87,0XA4,0X45,0X5A,0X40,0X49,0XC1,0X52,0X24,0X41,0XE4,

81530X8C,0X2C,0XF7,0X7A,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,

81620XFF,0XDB,0XFF,0XBA,0XFF,0XB9,0XFF,0XB9,0XFF,0XD8,0XFF,0XF8,0XFF,0XD8,0XFF,0XF9,

81630XFF,0XF9,0XFF,0XFA,0XFF,0XFA,0XFF,0XFB,0XFF,0XFB,0XFF,0XFC,0XFF,0XDB,0XFF,0XFC,

81640XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XBC,

81650XFF,0XFE,0XFF,0XFD,0XFF,0X7C,0XFF,0X9B,0XEE,0XF7,0XB5,0X50,0X94,0X09,0X9C,0X48,

81660XC5,0X6A,0XDE,0X2B,0XE6,0X2A,0XE6,0X09,0XEE,0X49,0XEE,0X28,0XEE,0X27,0XEE,0X27,

81670XF6,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X48,

81680XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

81690XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

81700XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X67,0XEE,0X68,

81710XDE,0X09,0XA4,0X45,0X6A,0XA2,0X49,0XA0,0X52,0X03,0X41,0XC2,0X62,0XC7,0XDE,0XB7,

81720XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,

81790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,

81810XFF,0XDD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,

81820XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,

81840XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XFD,0XFF,0XBC,0XF7,0X59,0XF7,0X16,0XFF,0X14,

81850XF6,0XB0,0XE6,0X2C,0XE5,0XE9,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XF6,0X27,0XEE,0X47,

81860XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X48,

81870XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

81880XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,

81890XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XEE,0X47,0XEE,0X68,0XE6,0X4A,0XA4,0X65,

81900X72,0XE2,0X49,0XC0,0X49,0XE2,0X41,0XE3,0X4A,0X24,0XB5,0X92,0XFF,0XBC,0XFF,0XFE,

81910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81980XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

81990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82000XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82010XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82020XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,

82030XFF,0XFF,0XFF,0XDF,0XFF,0XBF,0XFF,0XDE,0XFF,0XDD,0XFF,0XBA,0XFF,0X96,0XFE,0XF2,

82040XEE,0X6E,0XE6,0X2B,0XEE,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X27,0XEE,0X27,

82050XEE,0X28,0XF6,0X48,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X28,0XEE,0X28,

82060XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

82070XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XF6,0X27,0XF6,0X27,

82080XF6,0X27,0XF6,0X47,0XF6,0X67,0XEE,0X68,0XE6,0X4A,0XAC,0XA6,0X6A,0XA1,0X49,0XE0,

82090X41,0XC1,0X49,0XE3,0X39,0XA2,0X94,0X6E,0XF7,0X9B,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

82100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82210XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

82220XFF,0XBF,0XFF,0XBF,0XFF,0XBE,0XFF,0XDD,0XFF,0XFC,0XFF,0XD9,0XF7,0X55,0XEE,0XF1,

82230XE6,0X4B,0XE6,0X28,0XE6,0X27,0XEE,0X47,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,

82240XEE,0X48,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,

82250XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X47,

82260XEE,0X47,0XF6,0X48,0XF6,0X48,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,

82270XF6,0X67,0XF6,0X68,0XEE,0X6A,0XC5,0X28,0X72,0XC1,0X49,0XC0,0X49,0XE1,0X49,0XE3,

82280X39,0XA2,0X63,0X08,0XE7,0X1A,0XFF,0XBE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

82290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

82410XFF,0XDF,0XFF,0XDE,0XFF,0XDD,0XFF,0XFC,0XFF,0XDA,0XFF,0XB8,0XF7,0X32,0XEE,0X8D,

82420XDE,0X29,0XE6,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X08,0XEE,0X28,0XF6,0X48,0XEE,0X47,

82430XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

82440XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

82450XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X68,

82460XEE,0X6A,0XCD,0X69,0X72,0XC1,0X51,0XE0,0X49,0XE1,0X49,0XE3,0X41,0XE3,0X4A,0X25,

82470XD6,0X98,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82590XFF,0XFF,0XFF,0XFE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

82600XFF,0XDE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFB,0XFF,0XBA,0XFF,0X35,0XEE,0X8E,0XDE,0X4A,

82610XE6,0X28,0XEE,0X48,0XEE,0X28,0XEE,0X07,0XF6,0X48,0XEE,0X47,0XF6,0X47,0XEE,0X47,

82620XEE,0X48,0XEE,0X48,0XF6,0X48,0XEE,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,

82630XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

82640XF6,0X28,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XEE,0X6A,0XDD,0XCA,

82650X7A,0XE1,0X52,0X00,0X51,0XE1,0X49,0XE2,0X49,0XE3,0X39,0XA3,0XB5,0X94,0XFF,0XDE,

82660XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

82750XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFE,

82790XFF,0XDD,0XFF,0XBD,0XFF,0XDD,0XFF,0XDB,0XFF,0X76,0XEE,0XCF,0XE6,0X4A,0XE6,0X49,

82800XEE,0X48,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XF6,0X48,0XEE,0X48,0XEE,0X47,0XEE,0X47,

82810XF6,0X67,0XEE,0X47,0XEE,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

82820XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

82830XFE,0X48,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X6A,0XE6,0X0B,0X7B,0X02,0X52,0X00,

82840X52,0X02,0X49,0XC2,0X41,0XE3,0X41,0XC3,0X8C,0X2E,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,

82850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

82970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

82980XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XFF,0X97,0XEE,0XD0,0XDE,0X4B,0XDE,0X28,0XEE,0X68,

82990XEE,0X27,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XEE,0X47,0XEE,0X67,0XEE,0X67,0XEE,0X47,

83000XEE,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

83010XEE,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XFE,0X48,0XF6,0X67,

83020XF6,0X67,0XF6,0X48,0XF6,0X6A,0XE6,0X0B,0X83,0X22,0X51,0XE0,0X52,0X02,0X49,0XE3,

83030X41,0XC2,0X42,0X04,0X6B,0X4A,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

83170XFF,0XDE,0XFF,0XFC,0XFF,0X97,0XEE,0XF0,0XE6,0X4A,0XE6,0X28,0XEE,0X48,0XEE,0X28,

83180XF6,0X48,0XF6,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X67,0XEE,0X47,0XEE,0X48,0XF6,0X47,

83190XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X48,

83200XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X68,0XF6,0X48,

83210XF6,0X6A,0XE6,0X2B,0X8B,0X63,0X52,0X00,0X5A,0X22,0X52,0X03,0X49,0XE2,0X41,0XE3,

83220X5A,0XC8,0XF7,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,

83360XFF,0XFB,0XFF,0XB7,0XEE,0XF0,0XDE,0X2B,0XE6,0X29,0XEE,0X28,0XF6,0X48,0XF6,0X47,

83370XF6,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

83380XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

83390XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X6A,0XE6,0X2B,

83400X93,0XC4,0X5A,0X20,0X52,0X01,0X52,0X02,0X4A,0X03,0X41,0XC2,0X52,0X66,0XEF,0X3B,

83410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XFF,0XDA,

83550XFF,0X76,0XF6,0XF1,0XD5,0XEA,0XDE,0X08,0XEE,0X28,0XF6,0X47,0XF6,0X27,0XEE,0X27,

83560XF6,0X47,0XF6,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

83570XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,

83580XF6,0X47,0XF6,0X47,0XFE,0X68,0XF6,0X69,0XF6,0X69,0XEE,0X4B,0X9C,0X04,0X62,0X40,

83590X52,0X01,0X52,0X22,0X4A,0X02,0X41,0XE2,0X4A,0X05,0XDE,0XF9,0XFF,0XFF,0XFF,0XFF,

83600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XBA,0XFF,0X96,

83740XE6,0X8E,0XDE,0X2A,0XE6,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X27,0XF6,0X47,

83750XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

83760XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

83770XFE,0X68,0XF6,0X69,0XF6,0X49,0XEE,0X6B,0XA4,0X45,0X6A,0X80,0X5A,0X21,0X52,0X22,

83780X4A,0X02,0X4A,0X23,0X41,0XE4,0XD6,0X77,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83920XFF,0XFF,0XFF,0XDE,0XFF,0XDF,0XFF,0XDE,0XFF,0XDC,0XFF,0XB9,0XFF,0X53,0XDE,0X4C,

83930XDE,0X09,0XEE,0X49,0XF6,0X48,0XF6,0X27,0XF6,0X27,0XFE,0X68,0XF6,0X47,0XF6,0X47,

83940XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,

83950XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XFE,0X68,0XF6,0X48,

83960XF6,0X69,0XEE,0X6A,0XAC,0X65,0X72,0XC1,0X62,0X41,0X5A,0X42,0X52,0X22,0X52,0X23,

83970X41,0XE3,0XC6,0X15,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

83990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

84110XFF,0XDF,0XFF,0XFF,0XFF,0XFD,0XFF,0XDB,0XFF,0XF8,0XEE,0XF1,0XE6,0X4C,0XE6,0X08,

84120XEE,0X48,0XF6,0X47,0XF6,0X27,0XFE,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

84130XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,

84140XF6,0X47,0XF6,0X67,0XFE,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X89,0XEE,0X6A,

84150XB4,0XA5,0X7B,0X01,0X62,0X62,0X62,0X63,0X5A,0X42,0X52,0X43,0X41,0XC3,0XBD,0XB4,

84160XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84300XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XB6,0XEE,0XF0,0XD5,0XE8,0XEE,0X68,0XF6,0X67,

84310XF6,0X27,0XF6,0X28,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

84320XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X67,0XFE,0X67,

84330XFE,0X67,0XFE,0X67,0XF6,0X48,0XF6,0X48,0XF6,0X89,0XEE,0X69,0XBC,0XE5,0X83,0X42,

84340X6A,0XA2,0X62,0X83,0X5A,0X63,0X5A,0X63,0X49,0XE3,0XB5,0X93,0XFF,0XFF,0XFF,0XFF,

84350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

84490XFF,0XFC,0XFF,0XF9,0XFF,0X73,0XDE,0X4B,0XE6,0X48,0XEE,0X47,0XEE,0X07,0XF6,0X48,

84500XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

84510XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,

84520XF6,0X48,0XF6,0X48,0XF6,0XA8,0XEE,0X68,0XBD,0X26,0X8B,0X62,0X72,0XC2,0X6A,0XA3,

84530X62,0XA3,0X62,0XA4,0X52,0X24,0XBD,0X93,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,

84680XFF,0XB6,0XEE,0XEF,0XD6,0X08,0XE6,0X48,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X47,

84690XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

84700XF6,0X48,0XF6,0X68,0XF6,0X47,0XF6,0X67,0XFE,0X47,0XF6,0X67,0XF6,0X68,0XF6,0X48,

84710XF6,0XA8,0XEE,0X68,0XC5,0X47,0X8B,0X82,0X72,0XE3,0X72,0XC4,0X6A,0XC4,0X62,0XC5,

84720X5A,0X65,0XC5,0XD4,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XF9,0XFF,0X53,

84870XD6,0X2B,0XE6,0X49,0XEE,0X28,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

84880XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X68,

84890XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X87,0XEE,0X68,

84900XCD,0X87,0X8B,0XA2,0X7B,0X03,0X72,0XE4,0X72,0XE4,0X6A,0XE5,0X62,0XA5,0XCE,0X55,

84910XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

84990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0X76,0XE6,0X90,0XDE,0X2A,

85060XE6,0X27,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

85070XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X47,0XF6,0X47,

85080XF6,0X47,0XF6,0X67,0XFE,0X88,0XF6,0X68,0XEE,0X67,0XEE,0X88,0XD5,0XC8,0X93,0XA3,

85090X83,0X23,0X7B,0X04,0X73,0X04,0X73,0X05,0X6A,0XE6,0XDE,0X97,0XFF,0XFE,0XFF,0XFF,

85100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85240XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDB,0XEF,0X15,0XD6,0X0C,0XE6,0X29,0XEE,0X26,

85250XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

85260XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XFE,0X67,0XF6,0X47,

85270XFE,0X68,0XF6,0X68,0XEE,0X88,0XEE,0X68,0XDD,0XE9,0X93,0XA3,0X83,0X23,0X83,0X45,

85280X7B,0X24,0X73,0X25,0X73,0X28,0XEF,0X3A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85430XFF,0XFE,0XFF,0XDC,0XF7,0X58,0XD5,0XEE,0XDE,0X29,0XEE,0X47,0XF6,0X47,0XF6,0X47,

85440XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X47,

85450XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XFE,0X67,0XF6,0X47,0XF6,0X68,0XF6,0X68,

85460XEE,0X68,0XF6,0XAA,0XD5,0XC9,0X93,0XC3,0X93,0X84,0X8B,0X65,0X83,0X64,0X7B,0X46,

85470X7B,0X89,0XF7,0X7B,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,

85620XFF,0XBA,0XD6,0X0F,0XDD,0XE9,0XEE,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

85630XF6,0X47,0XF6,0X67,0XF6,0X68,0XF6,0X67,0XF6,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X67,

85640XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X88,0XF6,0XCB,

85650XCD,0X68,0X9B,0XC3,0X9B,0XC5,0X93,0XA5,0X8B,0XA5,0X7B,0X65,0X8C,0X0B,0XFF,0XBC,

85660XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XE6,0X72,

85810XD5,0XC9,0XEE,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

85820XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X67,

85830XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0XA9,0XFE,0XCB,0XC5,0X06,0X9B,0XE4,

85840X9B,0XE5,0X93,0XC5,0X93,0XE5,0X7B,0X85,0XA4,0XEF,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,

85850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

85930XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

85990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XF7,0X35,0XCD,0X8A,0XE6,0X29,

86000XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

86010XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XFE,0X67,0XF6,0X67,

86020XF6,0X67,0XEE,0X67,0XFE,0XCA,0XF6,0XAB,0XBC,0XC6,0XA4,0X25,0XA4,0X05,0X9C,0X05,

86030X9C,0X26,0X83,0XA6,0XC5,0XD2,0XFF,0XBC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86110XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

86120XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86180XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XFF,0XB8,0XCD,0XAC,0XDE,0X09,0XEE,0X48,0XF6,0X47,

86190XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

86200XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X88,

86210XFE,0XEB,0XE6,0X2A,0XB4,0XA6,0XAC,0X66,0XA4,0X25,0XA4,0X46,0X9C,0X06,0X94,0X07,

86220XDE,0X95,0XFF,0XBC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86300XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86370XFF,0XDC,0XFF,0XDA,0XD5,0XEE,0XD5,0XC9,0XEE,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,

86380XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

86390XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XF6,0XA9,0XFE,0XCB,0XDD,0XC8,

86400XBC,0XC6,0XB4,0XA6,0XAC,0X66,0XA4,0X46,0X9C,0X26,0XA4,0XAA,0XEF,0X17,0XFF,0XDD,

86410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,

86560XD6,0X30,0XCD,0X89,0XEE,0X49,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

86570XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,

86580XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0XC9,0XF6,0XCB,0XD5,0XA8,0XBC,0XE6,0XBC,0XC7,

86590XBC,0XA7,0XAC,0X87,0XA4,0X68,0XBD,0X4E,0XF7,0X78,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,

86600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86670XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86700XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86740XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XE6,0XB3,0XBD,0X49,

86750XEE,0X49,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

86760XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XFE,0X67,0XFE,0XA8,0XEE,0X27,

86770XF6,0XA8,0XFE,0XCA,0XF6,0XAB,0XCD,0X67,0XC5,0X27,0XBC,0XE7,0XBC,0XE8,0XB4,0XC8,

86780XAC,0X89,0XD6,0X32,0XFF,0X99,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

86870XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

86880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

86890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86930XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XBB,0XE6,0XB4,0XB5,0X09,0XEE,0X49,0XF6,0X47,

86940XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

86950XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X88,0XF6,0X47,0XF6,0XA9,0XFE,0XCA,

86960XEE,0X6A,0XCD,0X67,0XC5,0X26,0XC5,0X07,0XC5,0X08,0XB4,0XE9,0XB5,0X0C,0XE6,0XB5,

86970XFF,0XDB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

86990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

87050XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XF7,0XDF,0XF7,0XBF,0XF7,0XBE,

87060XF7,0XDF,0XF7,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

87070XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDF,

87080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87120XFF,0XDE,0XFF,0XDC,0XE6,0XD4,0XAC,0XC8,0XEE,0X4A,0XEE,0X47,0XF6,0X47,0XF6,0X47,

87130XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

87140XF6,0X67,0XFE,0X68,0XF6,0X68,0XF6,0X68,0XFE,0XCA,0XFE,0XCA,0XE6,0X08,0XCD,0X66,

87150XC5,0X26,0XC5,0X27,0XC5,0X49,0XBC,0XEA,0XC5,0X90,0XF7,0X38,0XFF,0XFC,0XFF,0XFD,

87160XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

87240XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87250XF7,0XDE,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87270XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,

87310XEE,0XF5,0XAC,0XC8,0XEE,0X4A,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

87320XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X68,0XFE,0X68,

87330XF6,0X47,0XFE,0X88,0XFE,0XCA,0XF6,0XAA,0XDD,0XC7,0XCD,0X66,0XCD,0X46,0XCD,0X48,

87340XCD,0X4A,0XB4,0XEB,0XD6,0X13,0XFF,0X7B,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

87350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87420XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,

87430XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

87440XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87450XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

87460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87490XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XEE,0XF5,0XAC,0XC8,

87500XEE,0X4A,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

87510XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X68,0XF6,0X68,0XF6,0X68,0XFE,0XA9,

87520XFE,0XCA,0XF6,0X69,0XDD,0XA7,0XCD,0X66,0XCD,0X87,0XCD,0X47,0XC5,0X4A,0XBD,0X2C,

87530XEE,0XD7,0XFF,0XBD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

87610XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFB,0XFF,0XFA,0XFF,0XDB,0XFF,0XDB,

87620XFF,0XDC,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,

87630XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XFF,0XDD,

87640XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

87650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

87680XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XE6,0XF5,0XAC,0XA8,0XEE,0X6A,0XF6,0X68,

87690XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

87700XF6,0X67,0XF6,0X67,0XFE,0X68,0XF6,0X68,0XF6,0X68,0XFE,0XC9,0XFE,0XAA,0XEE,0X29,

87710XDD,0XA7,0XD5,0X87,0XD5,0XA7,0XCD,0X68,0XC5,0X6A,0XD5,0XF0,0XFF,0X5A,0XFF,0XDE,

87720XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,0XFF,0XDA,

87800XFF,0XB9,0XF7,0XB8,0XFF,0XB7,0XFF,0XD7,0XFF,0XB6,0XEF,0X35,0XCE,0X52,0XB5,0X6E,

87810X9C,0XCC,0X94,0X8B,0X94,0X6B,0X9C,0X8C,0X9C,0X8C,0X9C,0X8D,0X9C,0X8D,0X9C,0X8D,

87820X9C,0X8D,0X9C,0X8D,0X9C,0X6E,0X94,0X6E,0X9C,0XAF,0XBD,0XB3,0XE7,0X19,0XFF,0XDD,

87830XFF,0XBC,0XFF,0XFE,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

87870XFF,0XFE,0XFF,0XFC,0XE6,0XD4,0XA4,0X87,0XEE,0X6A,0XF6,0X68,0XF6,0X67,0XF6,0X67,

87880XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X67,

87890XF6,0X67,0XF6,0X67,0XFE,0XA8,0XFE,0XC9,0XFE,0X89,0XE6,0X08,0XDD,0XC8,0XDD,0XA8,

87900XD5,0XA8,0XD5,0XA9,0XCD,0X6A,0XEE,0XD3,0XFF,0XBC,0XFF,0XBF,0XFF,0XFF,0XF7,0XFF,

87910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

87980XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XDB,0XFF,0X98,0XF7,0X55,0XEF,0X13,0XEF,0X11,

87990XEF,0X31,0XF7,0X51,0XF7,0X72,0XFF,0XB3,0XFF,0XB3,0XF7,0X32,0XCE,0X2E,0XA4,0XA8,

88000X7B,0X83,0X6A,0XE2,0X6A,0XE2,0X6A,0XE3,0X6A,0XE3,0X6A,0XE4,0X6A,0XC4,0X6A,0XC4,

88010X62,0XC4,0X62,0XA4,0X62,0XA4,0X5A,0X84,0X6A,0XE6,0X94,0X4C,0XC5,0XD3,0XFF,0XDB,

88020XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88050XFF,0XDF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

88060XE6,0XB4,0X9C,0X47,0XEE,0X4A,0XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

88070XF6,0X67,0XF6,0X66,0XF6,0X46,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X67,

88080XFE,0XA9,0XFE,0XC9,0XF6,0X69,0XE5,0XE8,0XE5,0XC8,0XE5,0XE9,0XD5,0XA8,0XD5,0XC9,

88090XC5,0X8B,0XFF,0X76,0XFF,0XDD,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88160XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XF7,0XBF,0XFF,0XDF,0XF7,0XBD,0XFF,0XDC,

88170XFF,0XDA,0XEE,0XD3,0XDE,0X0E,0XD5,0XCB,0XDE,0X0A,0XDE,0X09,0XD6,0X08,0XD6,0X09,

88180XD6,0X09,0XDE,0X4A,0XEE,0X8C,0XFF,0X0E,0XFF,0X50,0XFF,0X91,0XFF,0X70,0XD6,0X0B,

88190XB5,0X08,0X9C,0X45,0XA4,0X66,0XA4,0X67,0XA4,0X67,0XA4,0X67,0XA4,0X47,0X9C,0X06,

88200X94,0X06,0X94,0X27,0X8B,0XE6,0X83,0XA6,0X7B,0X65,0X8B,0XE8,0XCE,0X11,0XFF,0XB9,

88210XFF,0XDB,0XFF,0XFD,0XFF,0XDD,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

88230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XFF,0XFF,0XDF,0XFF,0XBF,0XFF,0XDE,

88240XFF,0XFE,0XFF,0XFD,0XF7,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XCD,0XF2,0XAC,0XA9,

88250XEE,0X4B,0XF6,0X69,0XF6,0X68,0XF6,0X67,0XFE,0X67,0XFE,0X46,0XFE,0X66,0XFE,0X66,

88260XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0XA8,0XFE,0XC9,0XFE,0X88,

88270XF6,0X49,0XEE,0X09,0XE5,0XC9,0XED,0XE9,0XE5,0XEA,0XCD,0X89,0XEE,0XF2,0XFF,0XF9,

88280XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88350XFF,0XDF,0XF7,0XDF,0XFF,0XFF,0XF7,0XBD,0XFF,0XDD,0XFF,0XDA,0XD6,0X31,0XC5,0X6B,

88360XCD,0X68,0XE5,0XC8,0XE5,0XE7,0XE6,0X27,0XDE,0X27,0XDE,0X28,0XE6,0X49,0XDE,0X08,

88370XDD,0XE8,0XDE,0X08,0XE6,0X4A,0XEE,0XCC,0XFF,0X4E,0XFF,0X6F,0XF6,0XED,0XDE,0X2B,

88380XC5,0X48,0XBD,0X28,0XBD,0X28,0XB4,0XC7,0XB4,0XC7,0XB4,0XC7,0XB4,0XC7,0XAC,0X86,

88390XB4,0XA7,0XA4,0X66,0X9C,0X26,0XA4,0X68,0X93,0XE6,0XAC,0XEC,0XDE,0XB5,0XF7,0X9A,

88400XFF,0XFC,0XFF,0XDC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,

88410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88420XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XFF,0XDF,0XFF,0XBF,0XFF,0XBE,0XFF,0XFE,0XFF,0XFE,

88430XF7,0XFE,0XF7,0XFE,0XFF,0XDD,0XFF,0XFC,0XC5,0X6F,0XBC,0XE9,0XF6,0X4B,0XF6,0X49,

88440XF6,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X66,0XFE,0X66,0XF6,0X67,0XF6,0X67,

88450XF6,0X67,0XF6,0X68,0XF6,0X88,0XFE,0XA9,0XFE,0XC9,0XF6,0X89,0XEE,0X29,0XF6,0X0A,

88460XF6,0X09,0XEE,0X0A,0XDD,0XEA,0XE6,0X4E,0XF7,0X75,0XFF,0XFA,0XFF,0XFE,0XFF,0XFF,

88470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDE,

88540XFF,0XFE,0XFF,0XBD,0XFF,0XBB,0XD6,0X74,0XBD,0X4C,0XCD,0X8A,0XE5,0XE9,0XEE,0X28,

88550XEE,0X07,0XE6,0X26,0XE6,0X48,0XDE,0X07,0XE6,0X28,0XE6,0X28,0XEE,0X48,0XE6,0X08,

88560XE6,0X08,0XE6,0X49,0XE6,0X4A,0XF6,0XCC,0XFF,0X6E,0XFF,0X6F,0XEE,0XAC,0XD5,0XE9,

88570XC5,0X68,0XC5,0X47,0XC5,0X28,0XC5,0X07,0XBC,0XE6,0XC5,0X07,0XB4,0XC6,0XBC,0XE7,

88580XB4,0XE8,0X9C,0X46,0XA4,0XA8,0X9C,0X48,0X9C,0X8B,0XBD,0XB0,0XEF,0X17,0XFF,0XFC,

88590XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0XFF,

88610XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XF7,0XFE,0XF7,0XFE,

88620XF7,0XDC,0XFF,0XBA,0XAC,0XCB,0XCD,0X8A,0XF6,0X6A,0XF6,0X68,0XF6,0X68,0XFE,0X67,

88630XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,

88640XFE,0XA9,0XFE,0XAA,0XFE,0XA9,0XF6,0X69,0XF6,0X29,0XF6,0X29,0XF6,0X29,0XEE,0X0A,

88650XD5,0XCB,0XF7,0X33,0XFF,0XD9,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XFF,0XDC,

88730XE6,0XB6,0XB5,0X2D,0XC5,0X8B,0XE6,0X2B,0XEE,0X2A,0XEE,0X07,0XEE,0X06,0XE6,0X06,

88740XE6,0X27,0XE6,0X48,0XE6,0X27,0XEE,0X28,0XEE,0X48,0XEE,0X07,0XE6,0X28,0XE6,0X28,

88750XDD,0XE8,0XE6,0X49,0XE6,0X6A,0XFF,0X4D,0XFF,0X8F,0XF6,0XED,0XDE,0X09,0XD5,0XA8,

88760XC5,0X26,0XCD,0X47,0XCD,0X47,0XC5,0X06,0XBC,0XE6,0XC5,0X07,0XB4,0XC6,0XBC,0XE8,

88770XAC,0XA7,0XA4,0X67,0X9C,0X48,0X9C,0X49,0XB5,0X2E,0XE6,0XB5,0XFF,0X9A,0XFF,0XDD,

88780XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88790XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

88800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XEF,0XFE,0XF7,0XFE,0XFF,0XFC,0XE6,0XF5,

88810XA4,0X88,0XE6,0X0A,0XF6,0X69,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,

88820XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0XA9,0XFE,0XA9,

88830XFE,0X89,0XF6,0X48,0XF6,0X28,0XF6,0X49,0XEE,0X49,0XE6,0X2B,0XDE,0X2E,0XFF,0X97,

88840XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

88850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBD,0XFF,0XFD,0XF7,0X58,0XBD,0X8F,0XC5,0XAC,

88920XD5,0XEB,0XE6,0X29,0XE5,0XE7,0XEE,0X06,0XF6,0X26,0XEE,0X06,0XE6,0X06,0XEE,0X47,

88930XEE,0X47,0XEE,0X27,0XEE,0X06,0XEE,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XEE,0X69,

88940XE6,0X49,0XE6,0X69,0XF6,0XEB,0XFF,0X6E,0XFF,0X4D,0XEE,0XAB,0XD5,0XA7,0XCD,0X67,

88950XC5,0X26,0XC5,0X06,0XCD,0X47,0XC4,0XE6,0XC5,0X07,0XBC,0XC7,0XB4,0XC7,0XB4,0XC7,

88960XAC,0X87,0XAC,0X68,0XA4,0X69,0X9C,0X4A,0XD6,0X33,0XEF,0X38,0XFF,0XDC,0XFF,0XDD,

88970XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88980XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

88990XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFD,0XFF,0XDA,0XC5,0XCF,0XB4,0XC6,0XEE,0X49,

89000XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

89010XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0X68,0XF6,0X48,

89020XF6,0X48,0XF6,0X69,0XE6,0X2A,0XEE,0X8E,0XF7,0X14,0XFF,0XFB,0XFF,0XFE,0XFF,0XFF,

89030XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

89100XFF,0XFF,0XFF,0XBD,0XFF,0XDB,0XDE,0X94,0XBD,0X4C,0XDE,0X0C,0XDE,0X29,0XE6,0X07,

89110XEE,0X06,0XF6,0X27,0XF6,0X26,0XEE,0X26,0XEE,0X47,0XE6,0X06,0XEE,0X27,0XEE,0X27,

89120XEE,0X26,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XE6,0X27,0XEE,0X69,0XE6,0X28,

89130XDE,0X07,0XF6,0XCA,0XFF,0X4C,0XFF,0X6D,0XFE,0XEB,0XDE,0X08,0XD5,0XA7,0XCD,0X46,

89140XC5,0X06,0XCD,0X27,0XC5,0X07,0XC5,0X07,0XBC,0XC7,0XB4,0XA6,0XAC,0X66,0XAC,0X86,

89150XAC,0X67,0XA4,0X68,0X94,0X08,0XBD,0X6F,0XE6,0XF6,0XFF,0XDB,0XFF,0XFD,0XFF,0XFE,

89160XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XFF,

89180XF7,0XFF,0XFF,0XFE,0XF7,0X98,0XB5,0X0A,0XC5,0X27,0XF6,0X89,0XF6,0X67,0XF6,0X67,

89190XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X87,

89200XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XFE,0X89,0XFE,0X48,0XF6,0X49,0XF6,0X68,0XEE,0X49,

89210XE6,0X2B,0XEE,0XD1,0XFF,0XB9,0XFF,0XFD,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,

89220XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDD,

89290XFF,0X79,0XCD,0XF0,0XCD,0XAB,0XDD,0XE9,0XE6,0X48,0XEE,0X26,0XF6,0X26,0XF6,0X05,

89300XED,0XC5,0XF6,0X26,0XF6,0X68,0XEE,0X47,0XEE,0X27,0XF6,0X67,0XF6,0X26,0XF6,0X06,

89310XEE,0X26,0XF6,0X47,0XF6,0X67,0XEE,0X47,0XEE,0X27,0XF6,0X69,0XEE,0X48,0XE6,0X48,

89320XEE,0X68,0XFF,0X0B,0XFF,0X8D,0XFF,0X2C,0XDE,0X08,0XCD,0X67,0XCD,0X47,0XCD,0X47,

89330XC5,0X07,0XBC,0XC6,0XCD,0X28,0XBC,0XC6,0XC4,0XC6,0XBC,0XA6,0XB4,0XA6,0XA4,0X45,

89340XA4,0X88,0X8B,0XE7,0XA4,0XCC,0XE6,0XD5,0XFF,0X9A,0XFF,0XDD,0XFF,0XDE,0XFF,0XDF,

89350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XDD,

89370XE6,0X74,0XB4,0XC9,0XDD,0XA8,0XFE,0XA9,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

89380XF6,0X67,0XF6,0X86,0XF6,0X87,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XFE,0XA9,0XFE,0XA9,

89390XFE,0XA9,0XFE,0X89,0XFE,0X48,0XFE,0X69,0XF6,0X69,0XEE,0X6A,0XEE,0X8F,0XF7,0X55,

89400XFF,0XFC,0XFF,0XFE,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XF7,0X37,0XC5,0X8D,

89480XD5,0XEA,0XE6,0X29,0XEE,0X47,0XEE,0X26,0XF6,0X46,0XF6,0X26,0XF6,0X26,0XF6,0X27,

89490XEE,0X07,0XEE,0X27,0XEE,0X27,0XF6,0X47,0XF6,0X26,0XF6,0X26,0XF6,0X46,0XF6,0X26,

89500XEE,0X26,0XF6,0X47,0XF6,0X48,0XEE,0X07,0XF6,0X68,0XEE,0X47,0XE6,0X47,0XEE,0X68,

89510XF6,0XEA,0XFF,0X8D,0XFF,0X4D,0XE6,0X4A,0XCD,0X67,0XC5,0X27,0XC5,0X27,0XC5,0X27,

89520XC4,0XE7,0XBC,0XE6,0XC4,0XC6,0XBC,0XE6,0XB4,0XA5,0XAC,0XA5,0XA4,0X65,0XA4,0X87,

89530X94,0X27,0X9C,0X6A,0XD6,0X53,0XFF,0X9A,0XFF,0XFD,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,

89540XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

89550XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0X5A,0XC5,0X4F,0XC5,0X09,

89560XEE,0X29,0XFE,0X68,0XFE,0X48,0XFE,0X48,0XFE,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,

89570XF6,0X67,0XF6,0X67,0XF6,0X48,0XF6,0X68,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0X89,

89580XFE,0X49,0XFE,0X8A,0XEE,0X4A,0XE6,0X6D,0XF7,0X34,0XFF,0XDA,0XFF,0XFE,0XFF,0XFF,

89590XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XF7,0X15,0XCD,0XAC,0XDE,0X09,0XEE,0X48,

89670XEE,0X25,0XF6,0X25,0XF6,0X26,0XF6,0X26,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

89680XF6,0X27,0XF6,0X26,0XF6,0X26,0XF6,0X26,0XF6,0X26,0XF6,0X26,0XF6,0X46,0XF6,0X47,

89690XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XEE,0X67,0XEE,0X68,0XEE,0X88,0XEE,0XA9,

89700XFF,0X8D,0XFF,0X6E,0XE6,0X4A,0XC5,0X47,0XC5,0X67,0XC5,0X48,0XC5,0X47,0XBC,0XE6,

89710XBC,0XC5,0XBC,0XC5,0XB4,0XA4,0XAC,0XA4,0XAC,0XA5,0XAC,0XA6,0X9C,0X66,0X94,0X27,

89720X94,0X29,0XBD,0X70,0XF7,0X39,0XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

89730XF7,0X9E,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,

89740XFF,0XFF,0XF7,0XBD,0XFF,0XDC,0XE6,0X95,0XB4,0XAA,0XDD,0XAB,0XFE,0X6A,0XFE,0X48,

89750XFE,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,

89760XFE,0X69,0XFE,0X89,0XFE,0X8A,0XFE,0XA9,0XFE,0XA9,0XFE,0X69,0XFE,0X8B,0XF6,0X4B,

89770XEE,0X6D,0XF7,0X12,0XFF,0XB9,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89780XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89850XFF,0XFE,0XFF,0XDC,0XF7,0X14,0XD5,0XCB,0XE6,0X29,0XEE,0X47,0XEE,0X25,0XF6,0X45,

89860XF6,0X26,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,

89870XF6,0X27,0XF6,0X46,0XF6,0X26,0XF6,0X26,0XF6,0X46,0XF6,0X47,0XF6,0X47,0XF6,0X47,

89880XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X67,0XEE,0X88,0XEE,0X88,0XEE,0XAA,0XFF,0X6D,

89890XFF,0X8E,0XEE,0XAB,0XCD,0XA8,0XB5,0X06,0XBD,0X27,0XBD,0X26,0XBC,0XE6,0XBC,0XE6,

89900XBC,0XE5,0XB4,0XA5,0XB4,0XC5,0XA4,0X64,0XA4,0X45,0XA4,0X87,0X93,0XE6,0X9C,0X29,

89910XAC,0XCD,0XE6,0X96,0XFF,0X9B,0XFF,0XDD,0XFF,0XFE,0XF7,0XBE,0XFF,0XFF,0XF7,0XBE,

89920XFF,0XDF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XBB,

89930XEF,0X16,0XBD,0X2C,0XCD,0X6A,0XE6,0X09,0XFE,0XAA,0XF6,0X27,0XFE,0X48,0XFE,0X48,

89940XFE,0X48,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X89,0XFE,0X89,

89950XFE,0XA9,0XFE,0XAA,0XFE,0X89,0XFE,0X8A,0XF6,0X6C,0XEE,0X2D,0XF6,0XD2,0XFF,0X77,

89960XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

89970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

89990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDB,

90040XEE,0XF4,0XD5,0XEB,0XE6,0X48,0XEE,0X46,0XF6,0X25,0XF6,0X45,0XF6,0X47,0XF6,0X27,

90050XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

90060XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XFE,0X47,0XFE,0X67,0XF6,0X46,0XF6,0X66,

90070XF6,0X67,0XF6,0X67,0XEE,0X67,0XEE,0X68,0XEE,0X88,0XF6,0XA9,0XFF,0X0B,0XFF,0X4D,

90080XF7,0X0D,0XD6,0X09,0XBD,0X46,0XB5,0X05,0XBD,0X06,0XBC,0XE6,0XBC,0XE6,0XAC,0XA5,

90090XAC,0X85,0XA4,0X64,0XA4,0X65,0XA4,0X45,0XA4,0X46,0X94,0X06,0X8B,0XC7,0X9C,0X4B,

90100XCD,0XD3,0XEF,0X39,0XFF,0XBC,0XFF,0XFE,0XFF,0XBE,0XFF,0XFF,0XFF,0XDE,0XF7,0XDE,

90110XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XF7,0XDD,0XFF,0XDC,0XFF,0XB9,0XCD,0XCE,0XBD,0X07,

90120XE6,0X09,0XF6,0XA9,0XEE,0X27,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,

90130XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X88,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,

90140XF6,0X8A,0XF6,0X8B,0XEE,0X2C,0XF6,0XB1,0XFF,0X57,0XFF,0XBB,0XFF,0XFD,0XFF,0XFE,

90150XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XEF,0X13,0XD6,0X0B,

90230XEE,0X48,0XF6,0X46,0XF6,0X45,0XF6,0X46,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,

90240XF6,0X47,0XF6,0X46,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

90250XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X67,

90260XF6,0X67,0XF6,0X67,0XF6,0X88,0XF6,0X68,0XEE,0X89,0XF6,0XCA,0XFF,0X8D,0XFF,0X4D,

90270XD6,0X49,0XB5,0X45,0XB4,0XE5,0XAC,0XA5,0XAC,0XA5,0XB4,0XC6,0XB4,0XC6,0XAC,0XA5,

90280XA4,0X65,0X9C,0X24,0XA4,0X45,0X9C,0X05,0X94,0X06,0X8B,0XA6,0X8B,0XE9,0XA4,0XAD,

90290XDE,0X96,0XFF,0X9B,0XFF,0XDD,0XF7,0X9D,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,

90300XFF,0XFD,0XFF,0XFC,0XFF,0XDA,0XDE,0X30,0XBD,0X07,0XE6,0X49,0XEE,0X47,0XF6,0XA8,

90310XEE,0X27,0XFE,0XA9,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X67,0XFE,0X87,

90320XFE,0X67,0XFE,0X68,0XFE,0X89,0XFE,0XCA,0XFE,0X89,0XF6,0X89,0XF6,0XAB,0XEE,0X8D,

90330XEE,0X6F,0XFF,0X35,0XFF,0XBB,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDB,0XF7,0X13,0XDE,0X2B,0XEE,0X48,0XF6,0X46,

90420XF6,0X26,0XF6,0X46,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X46,

90430XF6,0X66,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,

90440XF6,0X67,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

90450XF6,0X67,0XF6,0X67,0XF6,0X88,0XF6,0X88,0XEE,0XA9,0XFF,0X6C,0XFF,0X6D,0XE6,0XAA,

90460XC5,0X47,0XBD,0X27,0XB5,0X06,0XA4,0X64,0XB4,0XC6,0XA4,0X44,0XA4,0X45,0XA4,0X45,

90470XA4,0X45,0X93,0XE4,0X93,0XC4,0X83,0X64,0X8B,0XA7,0X8B,0XC8,0X8B,0XEA,0XAC,0XEF,

90480XE6,0XB8,0XFF,0XBD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDC,0XFF,0XFC,0XFF,0X78,

90490XE6,0X92,0XBD,0X09,0XDD,0XE9,0XEE,0X68,0XFE,0XC7,0XEE,0X45,0XFE,0XA9,0XF6,0X48,

90500XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,

90510XFE,0X8A,0XFE,0X8A,0XF6,0XAA,0XF6,0XAB,0XEE,0X8C,0XE6,0X8E,0XFF,0X54,0XFF,0XB9,

90520XFF,0XDD,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90530XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90600XFF,0XFE,0XFF,0XFB,0XF7,0X34,0XE6,0X4C,0XE6,0X28,0XF6,0X46,0XF6,0X26,0XF6,0X47,

90610XF6,0X48,0XF6,0X49,0XF6,0X48,0XF6,0X47,0XF6,0X66,0XF6,0X66,0XF6,0X66,0XF6,0X67,

90620XF6,0X47,0XF6,0X48,0XFE,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

90630XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X47,0XFE,0X47,0XFE,0X67,0XF6,0X46,

90640XF6,0X67,0XF6,0X88,0XEE,0X67,0XF6,0XC9,0XFF,0X2B,0XFF,0X8E,0XFF,0X0D,0XC5,0X88,

90650XA4,0X64,0XB4,0XE6,0XA4,0X44,0XAC,0X86,0XA4,0X65,0X9C,0X24,0X9C,0X04,0X9C,0X05,

90660X8B,0XA3,0X94,0X06,0X83,0X85,0X7B,0X25,0X73,0X26,0X6A,0XE6,0X83,0X69,0XB5,0X11,

90670XF7,0X1A,0XFF,0XDD,0XFF,0XFC,0XFF,0XFB,0XFF,0XB8,0XEE,0X92,0XC5,0X0A,0XDD,0XEA,

90680XFE,0XAA,0XF6,0X87,0XF6,0X65,0XFE,0XA7,0XF6,0X48,0XF6,0X48,0XF6,0X67,0XFE,0X87,

90690XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X8A,0XFE,0X8B,

90700XF6,0X8B,0XEE,0X8C,0XEE,0XAE,0XF7,0X12,0XFF,0XD9,0XFF,0XFC,0XFF,0XDE,0XFF,0XFF,

90710XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

90720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,

90790XFF,0X75,0XE6,0X8D,0XE6,0X28,0XF6,0X47,0XF6,0X26,0XFE,0X27,0XF6,0X49,0XF6,0X49,

90800XF6,0X48,0XF6,0X68,0XF6,0X66,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X68,

90810XFE,0X48,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XFE,0X87,0XF6,0X67,0XF6,0X68,0XF6,0X68,

90820XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,

90830XF6,0X67,0XF6,0X68,0XEE,0X68,0XFE,0XEB,0XFF,0X8E,0XFF,0X4E,0XE6,0X4B,0XB4,0XC5,

90840XA4,0X64,0X9C,0X44,0X9C,0X24,0X9C,0X04,0X93,0XE4,0X93,0XC4,0X8B,0XA4,0X8B,0XA5,

90850X83,0X64,0X7B,0X24,0X72,0XE4,0X73,0X05,0X6A,0XA3,0X62,0X63,0X62,0XA5,0X7B,0X68,

90860XAC,0XED,0XD6,0X30,0XE6,0X6F,0XDD,0XEB,0XE5,0XEA,0XF6,0X29,0XFE,0X68,0XF6,0X66,

90870XFE,0X66,0XFE,0X66,0XFE,0X69,0XFE,0X69,0XF6,0X68,0XF6,0X87,0XF6,0X88,0XFE,0X88,

90880XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X89,0XFE,0X8C,0XFE,0X8D,0XEE,0X4D,0XEE,0X8F,

90890XFF,0X74,0XFF,0XD8,0XFF,0XDC,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

90970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XB6,0XEE,0XAF,

90980XE6,0X49,0XEE,0X67,0XF6,0X47,0XFE,0X47,0XF6,0X48,0XF6,0X49,0XF6,0X49,0XF6,0X68,

90990XF6,0X67,0XF6,0X66,0XF6,0X86,0XF6,0X67,0XF6,0X67,0XFE,0X68,0XFE,0X48,0XFE,0X48,

91000XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XFE,0X68,0XFE,0X68,

91010XFE,0X68,0XFE,0X67,0XFE,0X87,0XF6,0X46,0XFE,0X67,0XFE,0X87,0XF6,0X67,0XFE,0X88,

91020XF6,0X68,0XEE,0X48,0XF6,0XAA,0XFF,0X0C,0XFF,0X4E,0XFF,0X4E,0XCD,0XA9,0XB4,0XE6,

91030X9C,0X04,0X8B,0XC3,0X93,0XE4,0X83,0X63,0X83,0X63,0X72,0XE1,0X73,0X02,0X73,0X02,

91040X73,0X02,0X62,0X80,0X62,0X40,0X51,0XE0,0X62,0X41,0X5A,0X20,0X83,0X43,0XC5,0X6A,

91050XE6,0X2A,0XE6,0X29,0XEE,0X28,0XFE,0X89,0XF6,0X46,0XFE,0X66,0XFE,0X86,0XFE,0X67,

91060XFE,0X48,0XFE,0X69,0XF6,0X68,0XF6,0X88,0XF6,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X88,

91070XFE,0X89,0XFE,0X8B,0XF6,0X6D,0XEE,0X4E,0XF6,0XB1,0XFF,0X54,0XFF,0XB8,0XFF,0XFB,

91080XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91160XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDD,0XFF,0XDA,0XF7,0X53,0XE6,0X8B,0XE6,0X47,

91170XF6,0X67,0XFE,0X46,0XF6,0X48,0XF6,0X69,0XF6,0X28,0XF6,0X49,0XFE,0X88,0XF6,0X47,

91180XF6,0X67,0XF6,0X66,0XFE,0X47,0XFE,0X48,0XFE,0X48,0XFE,0X48,0XF6,0X67,0XFE,0X67,

91190XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,

91200XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X68,

91210XEE,0X69,0XF6,0XAA,0XFF,0X0C,0XFF,0X4D,0XFF,0X6E,0XF7,0X0D,0XD5,0XEA,0XAC,0XE6,

91220X93,0XE3,0X83,0X62,0X7B,0X21,0X73,0X01,0X72,0XE0,0X6A,0XC0,0X62,0X80,0X6A,0XC0,

91230X7B,0X40,0X83,0X81,0X9C,0X44,0XC5,0X68,0XE6,0X6B,0XEE,0X8B,0XEE,0X69,0XF6,0X68,

91240XFE,0X88,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XF6,0X88,

91250XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0XC8,0XFE,0XC9,0XF6,0XAA,0XEE,0X8B,

91260XEE,0XAE,0XF6,0XF2,0XFF,0X76,0XFF,0XDA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,

91270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91350XFF,0XFF,0XFF,0XDE,0XFF,0XFB,0XFF,0X76,0XE6,0XCE,0XE6,0X49,0XF6,0X67,0XF6,0X46,

91360XF6,0X47,0XF6,0X48,0XFE,0X49,0XFE,0X49,0XFE,0X69,0XFE,0X68,0XFE,0X67,0XFE,0X67,

91370XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

91380XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,

91390XFE,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X88,0XF6,0X68,0XEE,0X89,

91400XEE,0X89,0XEE,0X89,0XF6,0XEB,0XFF,0X4D,0XFF,0X4E,0XFF,0X2E,0XEE,0XCD,0XD6,0X0A,

91410XC5,0X68,0XB5,0X07,0XB4,0XE6,0XB5,0X06,0XBD,0X06,0XC5,0X67,0XCD,0XC8,0XE6,0X8A,

91420XF7,0X2C,0XFF,0X2C,0XF6,0XC9,0XEE,0X68,0XF6,0X67,0XFE,0XA8,0XFE,0X67,0XFE,0X67,

91430XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XF6,0X87,0XF6,0X87,0XFE,0X88,0XFE,0X89,

91440XFE,0X89,0XFE,0XA9,0XFE,0XCA,0XF6,0X8A,0XEE,0X8B,0XE6,0X6D,0XF7,0X33,0XFF,0X97,

91450XFF,0XDA,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

91540XFF,0XFC,0XFF,0XB8,0XF7,0X11,0XE6,0X8B,0XF6,0X89,0XF6,0X87,0XF6,0X67,0XF6,0X48,

91550XF6,0X48,0XF6,0X28,0XF6,0X28,0XFE,0X69,0XFE,0X68,0XFE,0X67,0XFE,0X68,0XFE,0X68,

91560XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,

91570XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,

91580XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XF6,0X68,0XF6,0X88,0XF6,0X88,0XF6,0X88,

91590XF6,0X88,0XF6,0XA9,0XF6,0XCA,0XF6,0XCA,0XFF,0X0C,0XFF,0X2C,0XFF,0X4D,0XFF,0X2D,

91600XFF,0X2D,0XFF,0X2C,0XFF,0X0C,0XFF,0X0C,0XF6,0XEA,0XF6,0XCA,0XEE,0XA8,0XE6,0X66,

91610XEE,0X66,0XF6,0XA7,0XFE,0XA8,0XF6,0X47,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X66,

91620XFE,0X66,0XFE,0X86,0XFE,0XA7,0XFE,0X87,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XF6,0X8A,

91630XF6,0X6C,0XEE,0X8E,0XF6,0XD1,0XFF,0X55,0XFF,0XB8,0XFF,0XDB,0XFF,0XFD,0XFF,0XFE,

91640XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,

91730XFF,0X75,0XEE,0XCF,0XEE,0X4A,0XEE,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X68,0XFE,0X68,

91740XFE,0X48,0XFE,0X68,0XFE,0X68,0XF6,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X67,

91750XFE,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,

91760XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,

91770XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X88,

91780XF6,0XA8,0XF6,0XA8,0XEE,0X68,0XF6,0X89,0XF6,0XA9,0XF6,0X89,0XEE,0X68,0XEE,0X68,

91790XF6,0X68,0XF6,0X88,0XF6,0X88,0XEE,0X67,0XF6,0X87,0XFE,0XE8,0XFE,0XA7,0XF6,0X66,

91800XF6,0X67,0XFE,0X88,0XF6,0X47,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,

91810XF6,0X87,0XF6,0X87,0XFE,0X88,0XFE,0X8A,0XFE,0X8B,0XF6,0XAE,0XF6,0XD0,0XF6,0XF3,

91820XF7,0X57,0XFF,0XDA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

91830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

91870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

91910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XB9,0XFF,0X54,

91920XEE,0X8E,0XE6,0X4A,0XEE,0X69,0XF6,0X88,0XFE,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X46,

91930XFE,0X87,0XFE,0X86,0XF6,0X86,0XF6,0X87,0XF6,0X87,0XF6,0X67,0XFE,0X67,0XFE,0X67,

91940XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,

91950XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,

91960XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XF6,0X67,0XF6,0X47,0XF6,0X47,

91970XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XF6,0X67,

91980XF6,0X87,0XFE,0XA7,0XFE,0XA8,0XF6,0X67,0XF6,0X47,0XFE,0X68,0XFE,0X88,0XF6,0X27,

91990XFE,0X88,0XFE,0X68,0XFE,0X48,0XFE,0X68,0XF6,0X68,0XF6,0X88,0XFE,0XA8,0XFE,0XC9,

92000XFE,0XEB,0XF6,0X8C,0XEE,0X4D,0XEE,0XB0,0XFF,0X56,0XFF,0XDA,0XFF,0XFD,0XFF,0XFE,

92010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

92060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

92090XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0X98,0XFF,0X54,0XEE,0XAE,

92110XEE,0X8B,0XF6,0X89,0XF6,0X67,0XFE,0X86,0XFE,0X66,0XFE,0X66,0XFE,0X86,0XF6,0X86,

92120XF6,0X86,0XF6,0X87,0XF6,0X87,0XFE,0X67,0XFE,0X68,0XFE,0X88,0XFE,0X87,0XFE,0X87,

92130XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X87,

92140XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X88,0XFE,0X68,

92150XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X88,

92160XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X66,0XF6,0X46,

92170XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X47,0XF6,0X48,

92180XFE,0X69,0XFE,0XAA,0XFE,0XAB,0XF6,0X8A,0XEE,0X8A,0XEE,0X8B,0XEE,0X6C,0XF6,0XD0,

92190XFF,0X33,0XFF,0X97,0XFF,0XDA,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92240XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,

92280XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92290XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDC,0XFF,0XB9,0XF7,0X14,0XEE,0XCF,0XEE,0X8B,

92300XEE,0X88,0XFE,0XA8,0XFE,0X87,0XFE,0XA8,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X88,

92310XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,

92320XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X87,0XFE,0X87,0XFE,0X87,

92330XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

92340XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X67,0XFE,0X68,

92350XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X88,0XFE,0X67,0XFE,0X67,

92360XFE,0X67,0XFE,0X86,0XFE,0X86,0XFE,0X87,0XFE,0XA7,0XF6,0X88,0XF6,0X69,0XEE,0X6A,

92370XEE,0X6C,0XEE,0X8D,0XF6,0XCF,0XF6,0XF1,0XFF,0X54,0XFF,0X96,0XFF,0XB8,0XFF,0XFA,

92380XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XF7,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92430XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

92460XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,

92470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

92480XFF,0XDF,0XFF,0XFE,0XFF,0XDC,0XFF,0X99,0XFF,0X74,0XEE,0XAF,0XEE,0X8B,0XF6,0XAA,

92490XF6,0X68,0XF6,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,

92500XFE,0X68,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,

92510XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,

92520XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X68,

92530XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

92540XFE,0X87,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X66,0XFE,0X86,0XF6,0X66,

92550XF6,0X66,0XF6,0XA7,0XF6,0XA9,0XF6,0XAA,0XF6,0XAC,0XF6,0XAE,0XF6,0XD0,0XF7,0X12,

92560XFF,0X55,0XFF,0X97,0XFF,0XDA,0XFF,0XFC,0XFF,0XFC,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,

92570XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

92580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,

92620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92640XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

92650XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X7D,0XF7,0X7D,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

92660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,

92670XFF,0XDE,0XFF,0XFC,0XFF,0XD9,0XF7,0X34,0XEE,0XD0,0XEE,0X8D,0XEE,0X6B,0XEE,0X49,

92680XF6,0X48,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X88,0XFE,0X68,0XFE,0X67,

92690XFE,0X88,0XFE,0XA8,0XFE,0X88,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0X87,

92700XFE,0X88,0XFE,0X87,0XFE,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X87,

92710XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,

92720XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

92730XFE,0X68,0XFE,0X68,0XF6,0X46,0XFE,0X87,0XF6,0XA7,0XF6,0X87,0XF6,0XC9,0XF6,0XAA,

92740XF6,0XCC,0XF6,0XCE,0XF6,0XF1,0XFF,0X34,0XFF,0X77,0XFF,0XB9,0XFF,0XDA,0XFF,0XFB,

92750XFF,0XFD,0XF7,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,

92760XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

92810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

92830XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

92840XF7,0X7D,0XEF,0X7D,0XEF,0X5D,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XDF,0XFF,0XDE,

92850XFF,0XDE,0XF7,0XDE,0XF7,0XBE,0XF7,0XBF,0XF7,0XBF,0XF7,0XBF,0XF7,0X9E,0XF7,0X9C,

92860XFF,0XBB,0XFF,0X99,0XF7,0X35,0XEE,0XD2,0XEE,0XAF,0XF6,0XAC,0XEE,0X69,0XF6,0X88,

92870XFE,0X88,0XFE,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XF6,0X68,0XF6,0X68,

92880XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,0XFE,0XA8,0XFE,0X87,0XFE,0X87,

92890XFE,0X88,0XFE,0X87,0XF6,0X87,0XF6,0XA7,0XF6,0X87,0XF6,0X87,0XFE,0X67,0XFE,0X67,

92900XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X87,

92910XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XF6,0X88,0XF6,0X68,0XFE,0X88,0XF6,0X68,

92920XFE,0XA9,0XEE,0X68,0XF6,0XAA,0XF6,0XCB,0XF6,0XED,0XF6,0XEF,0XF6,0XF1,0XF7,0X34,

92930XFF,0X77,0XFF,0XB9,0XFF,0XBA,0XFF,0XBB,0XFF,0XDC,0XFF,0XFD,0XF7,0XFF,0XF7,0XDF,

92940XF7,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

92950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

92960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

92990XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,

93020XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XEF,0X9D,0XEF,0X7D,0XEF,0X5D,

93030XEF,0X5D,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XEF,0X9E,0XF7,0X9D,0XF7,0X9D,0XEF,0X7D,

93040XEF,0X7D,0XEF,0X7D,0XE7,0X5D,0XE7,0X5D,0XE7,0X3C,0XE7,0X1B,0XE7,0X1A,0XE7,0X19,

93050XE6,0XD7,0XDE,0X94,0XDE,0X51,0XE6,0X6E,0XF6,0XAC,0XF6,0XCA,0XFE,0XA9,0XF6,0X88,

93060XF6,0X67,0XF6,0X68,0XF6,0X88,0XF6,0X88,0XFE,0XA9,0XFE,0XA9,0XFE,0X68,0XFE,0X68,

93070XFE,0X88,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

93080XFE,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,

93090XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X87,0XF6,0X87,

93100XF6,0X88,0XF6,0X68,0XF6,0X68,0XF6,0X89,0XF6,0XA9,0XF6,0XAA,0XFE,0XEC,0XF6,0XCD,

93110XF6,0XCF,0XEE,0XB1,0XEE,0XB3,0XF7,0X16,0XF7,0X18,0XF7,0X39,0XF7,0X5A,0XF7,0X7B,

93120XEF,0X7B,0XEF,0X5B,0XEF,0X5C,0XEF,0X7D,0XEF,0X9E,0XEF,0X7E,0XEF,0X7E,0XF7,0X9E,

93130XF7,0X9E,0XF7,0X9D,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XDE,0XF7,0XDE,0XF7,0XDE,

93140XF7,0XDF,0XF7,0XDF,0XFF,0XBF,0XFF,0XBF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

93150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93180XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,

93210XF7,0XBE,0XF7,0X9E,0XF7,0XBE,0XF7,0X9E,0XF7,0X7D,0XEF,0X5D,0XEF,0X5D,0XF7,0X9E,

93220XEF,0X7E,0XEF,0X7D,0XEF,0X7D,0XEF,0X5C,0XE7,0X3C,0XE7,0X1B,0XE6,0XFB,0XDE,0XFB,

93230XD6,0XDB,0XD6,0XBA,0XD6,0XBA,0XCE,0X99,0XC6,0X58,0XC6,0X17,0XC5,0XD5,0XC5,0XB4,

93240XC5,0X91,0XC5,0X6E,0XCD,0XCC,0XDE,0X2B,0XEE,0X8B,0XF6,0XCC,0XF6,0XAB,0XF6,0X8A,

93250XF6,0X8A,0XF6,0XAA,0XF6,0X89,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X87,

93260XFE,0X88,0XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XF6,0X88,0XF6,0X69,

93270XF6,0X69,0XF6,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,

93280XFE,0X87,0XFE,0X87,0XF6,0X87,0XF6,0X87,0XF6,0XA8,0XF6,0XA8,0XF6,0X88,0XEE,0X89,

93290XF6,0X8A,0XF6,0XAB,0XF6,0XCC,0XF6,0XCD,0XDE,0X2D,0XD6,0X0E,0XCD,0XAF,0XCD,0XD2,

93300XCD,0XF4,0XCD,0XF6,0XD6,0X58,0XD6,0X58,0XD6,0X79,0XD6,0X99,0XD6,0XBA,0XD6,0XDA,

93310XDE,0XFB,0XDF,0X1C,0XDE,0XFC,0XDE,0XFC,0XE7,0X1C,0XE7,0X1C,0XEF,0X3C,0XEF,0X3C,

93320XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X9E,0XEF,0X7E,0XEF,0X7E,

93330XF7,0X7E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

93340XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

93350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

93370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93390XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

93400XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X7E,0XF7,0X7E,0XEF,0X7E,0XEF,0X7D,0XE7,0X5C,

93410XE7,0X5C,0XE7,0X3C,0XE6,0XFB,0XDE,0XDB,0XDE,0XBA,0XD6,0X99,0XCE,0X79,0XC6,0X38,

93420XBE,0X18,0XBD,0XF8,0XB5,0X96,0XA5,0X34,0XA4,0XF3,0X9C,0XB2,0X9C,0X4F,0X8B,0XEC,

93430X83,0X88,0X8B,0XC8,0XA4,0X8A,0XCD,0XAD,0XEE,0X8F,0XEE,0XAE,0XEE,0XAD,0XEE,0XAB,

93440XF6,0X8A,0XF6,0X89,0XF6,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0X87,0XF6,0X67,0XFE,0X67,

93450XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XF6,0X89,0XF6,0X88,

93460XF6,0X68,0XF6,0X68,0XF6,0X88,0XFE,0X88,0XFE,0XA8,0XFE,0XA8,0XF6,0X88,0XF6,0X67,

93470XF6,0X88,0XF6,0XA9,0XF6,0XA9,0XF6,0XCA,0XF6,0XCC,0XF6,0XCD,0XF6,0XCD,0XEE,0XCE,

93480XC5,0XAB,0X8B,0XE6,0X4A,0X00,0X4A,0X02,0X52,0X25,0X5A,0X68,0X62,0XEA,0X73,0X6D,

93490X83,0XEF,0X84,0X0F,0X8C,0X71,0X9C,0XD3,0XA5,0X14,0XA5,0X55,0XAD,0X96,0XB5,0XD6,

93500XC6,0X17,0XC6,0X18,0XCE,0X38,0XCE,0X59,0XD6,0X7A,0XD6,0X9A,0XD6,0XBB,0XDE,0XDB,

93510XDE,0XFB,0XDE,0XFC,0XDF,0X1C,0XDF,0X1C,0XDF,0X1C,0XE7,0X3C,0XE7,0X3D,0XEF,0X5D,

93520XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

93530XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

93540XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

93560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

93580XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

93590XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XE7,0X5C,0XE7,0X3C,0XE7,0X1C,

93600XE6,0XFB,0XDE,0XBA,0XDE,0X9A,0XD6,0X99,0XCE,0X59,0XC6,0X38,0XB5,0XD7,0XB5,0XB6,

93610XAD,0X55,0X9C,0XF3,0X94,0X92,0X8C,0X31,0X83,0XAE,0X73,0X6C,0X7B,0X6C,0X62,0XA8,

93620X52,0X24,0X5A,0X64,0X73,0X26,0X94,0X28,0XBD,0X2A,0XDE,0X0C,0XE6,0X2C,0XEE,0X6C,

93630XEE,0X8B,0XEE,0X6A,0XF6,0X8A,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XF6,0X68,0XF6,0X69,

93640XF6,0X89,0XF6,0X69,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XF6,0X89,0XF6,0XA9,0XF6,0X89,

93650XF6,0X69,0XEE,0X69,0XF6,0X69,0XF6,0X8A,0XFE,0XAB,0XFE,0XCB,0XF6,0XAC,0XEE,0X8B,

93660XE6,0X6B,0XE6,0X4C,0XD6,0X0C,0XBD,0X29,0X8B,0XE5,0X6A,0XE2,0X41,0XC0,0X39,0X80,

93670X39,0X61,0X31,0X42,0X31,0X64,0X39,0XA6,0X39,0XC6,0X42,0X07,0X42,0X07,0X4A,0X48,

93680X52,0XAA,0X5B,0X0C,0X63,0X2D,0X6B,0X6D,0X73,0XCF,0X84,0X10,0X94,0X71,0X94,0X92,

93690X9C,0XD3,0XA5,0X14,0XAD,0X55,0XAD,0X75,0XB5,0XB7,0XBD,0XF7,0XC6,0X18,0XC6,0X38,

93700XC6,0X59,0XCE,0X79,0XCE,0X7A,0XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,

93710XE7,0X1C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

93720XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

93730XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

93740XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

93770XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XDF,0XFF,0XDF,0XFF,0XBF,0XFF,0XBF,

93780XF7,0XBF,0XEF,0X7D,0XEF,0X7D,0XE7,0X5C,0XE7,0X5C,0XE7,0X3C,0XE7,0X1C,0XE6,0XFB,

93790XE6,0XDB,0XDE,0XBB,0XD6,0X9A,0XCE,0X79,0XC6,0X58,0XBE,0X38,0XBD,0XD6,0XB5,0X95,

93800XAD,0X55,0XA4,0XF4,0X9C,0X93,0X94,0X72,0X83,0XCF,0X7B,0XAE,0X73,0X6C,0X62,0XE9,

93810X52,0X46,0X4A,0X03,0X52,0X02,0X5A,0X42,0X73,0X04,0X94,0X07,0XB4,0XEA,0XC5,0X6A,

93820XCD,0XAB,0XDE,0X0B,0XE6,0X2B,0XE6,0X2A,0XEE,0X6B,0XF6,0X8C,0XF6,0XAC,0XF6,0XAC,

93830XF6,0XAC,0XF6,0XAC,0XF6,0XAB,0XF6,0XAB,0XF6,0XAB,0XF6,0XAB,0XF6,0X8C,0XF6,0X8C,

93840XEE,0X6C,0XE6,0X2C,0XDD,0XEB,0XD5,0XAB,0XBD,0X0A,0XB4,0XEA,0XA4,0X48,0X7B,0X45,

93850X5A,0X42,0X41,0XA0,0X41,0X81,0X41,0XA2,0X41,0XC4,0X41,0XC4,0X4A,0X47,0X42,0X47,

93860X4A,0X68,0X4A,0X68,0X42,0X48,0X42,0X48,0X4A,0X69,0X4A,0X89,0X52,0XAA,0X52,0XCA,

93870X5A,0XCB,0X5B,0X0B,0X6B,0X4D,0X73,0X8E,0X73,0XAE,0X7B,0XCF,0X84,0X10,0X8C,0X50,

93880X8C,0X91,0X94,0XD2,0X9C,0XF3,0XA5,0X34,0XAD,0X55,0XB5,0X75,0XBD,0XB6,0XBD,0XD7,

93890XC5,0XF7,0XC6,0X38,0XCE,0X78,0XCE,0X99,0XD6,0X9A,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,

93900XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,

93910XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

93920XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

93930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

93950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

93960XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XBF,0XEF,0X7D,

93970XEF,0X7D,0XEF,0X7C,0XEF,0X5C,0XEF,0X5C,0XEF,0X3D,0XEF,0X3C,0XE7,0X1C,0XE6,0XFC,

93980XDE,0XFB,0XDE,0XDB,0XD6,0XBA,0XD6,0XB9,0XCE,0X99,0XCE,0X79,0XCE,0X59,0XCE,0X39,

93990XC5,0XF8,0XBD,0XD7,0XB5,0X96,0XB5,0X96,0XAD,0X34,0X9C,0XD2,0X94,0X90,0X94,0X4F,

94000X8C,0X0D,0X83,0XCB,0X7B,0X89,0X7B,0X48,0X73,0X47,0X7B,0X67,0X8B,0XA7,0X93,0XE7,

94010X9C,0X27,0XA4,0X68,0XB4,0XC9,0XBD,0X09,0XC5,0X2A,0XC5,0X4A,0XBD,0X2A,0XBD,0X29,

94020XBD,0X29,0XBD,0X09,0XB4,0XE8,0XB4,0XC8,0XA4,0X87,0X9C,0X26,0X8B,0XA5,0X7B,0X24,

94030X6A,0XA2,0X62,0X42,0X52,0X01,0X49,0XA0,0X39,0X60,0X39,0X61,0X41,0XA3,0X41,0XE4,

94040X4A,0X05,0X41,0XE6,0X42,0X07,0X4A,0X28,0X4A,0X47,0X52,0X88,0X52,0XA9,0X52,0XA9,

94050X5B,0X0A,0X63,0X0B,0X5B,0X0B,0X5A,0XEB,0X5B,0X0B,0X63,0X0B,0X63,0X2C,0X6B,0X6C,

94060X73,0X8D,0X73,0XAE,0X7B,0XD0,0X7B,0XF0,0X84,0X30,0X8C,0X71,0X94,0X91,0X94,0XB2,

94070X9C,0XF3,0XA5,0X13,0XAD,0X34,0XAD,0X55,0XB5,0X76,0XBD,0XB6,0XBD,0XD7,0XBD,0XF7,

94080XC6,0X17,0XC6,0X37,0XCE,0X58,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XDE,0XDB,0XDE,0XDB,

94090XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,

94100XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,

94110XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

94120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0X9D,0XF7,0X9D,

94160XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

94170XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XDB,0XD6,0XBA,0XD6,0X9A,0XD6,0X9A,0XD6,0X9A,

94180XCE,0X59,0XCE,0X79,0XCE,0X59,0XCE,0X58,0XD6,0X78,0XD6,0X78,0XCE,0X57,0XCE,0X56,

94190XCE,0X15,0XCE,0X15,0XCD,0XF4,0XC5,0XD3,0XBD,0X92,0XB5,0X51,0XB5,0X30,0XB5,0X30,

94200XB5,0X30,0XAD,0X0F,0XAC,0XCE,0XA4,0XAD,0XA4,0X8D,0X9C,0X6C,0X94,0X2B,0X94,0X0A,

94210X8B,0XEA,0X83,0XA9,0X73,0X67,0X6B,0X07,0X6A,0XE6,0X62,0XC6,0X5A,0X85,0X52,0X65,

94220X52,0X66,0X5A,0X86,0X52,0X67,0X52,0X87,0X5A,0XA9,0X5A,0XA9,0X52,0X88,0X62,0XEA,

94230X6B,0X2B,0X6B,0X2B,0X6B,0X2B,0X6B,0X4C,0X6B,0X6C,0X73,0X6C,0X73,0XAD,0X7B,0XAD,

94240X7B,0XEE,0X83,0XEE,0X83,0XEE,0X7B,0XEE,0X7B,0XCE,0X7B,0XEE,0X83,0XEF,0X84,0X0F,

94250X8C,0X51,0X8C,0X71,0X94,0X92,0X94,0XB2,0X9C,0XD3,0X9C,0XF3,0XA5,0X14,0XAD,0X55,

94260XAD,0X75,0XB5,0X76,0XB5,0X96,0XBD,0XB6,0XBD,0XD7,0XBD,0XF7,0XC6,0X18,0XC6,0X38,

94270XCE,0X59,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,

94280XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,

94290XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

94300XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

94350XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,

94360XEF,0X5D,0XE7,0X3C,0XE7,0X1C,0XE7,0X1B,0XE7,0X1B,0XE7,0X1C,0XE7,0X3C,0XEF,0X3C,

94370XE7,0X3C,0XEF,0X3C,0XEF,0X5C,0XEF,0X7C,0XEF,0X5C,0XEF,0X7C,0XEF,0X5B,0XEF,0X3B,

94380XEF,0X3B,0XEF,0X3A,0XEF,0X1A,0XE6,0XFA,0XE6,0XD9,0XE6,0XF9,0XE6,0XD9,0XDE,0XB8,

94390XDE,0X98,0XDE,0X97,0XDE,0X77,0XD6,0X77,0XD6,0X57,0XCE,0X56,0XCE,0X56,0XCE,0X36,

94400XC6,0X15,0XC5,0XF5,0XC5,0XD4,0XBD,0XD4,0XBD,0XD4,0XBD,0XB4,0XBD,0XB4,0XB5,0XB4,

94410XB5,0X94,0XAD,0X74,0XAD,0X54,0XA5,0X33,0XA5,0X33,0XA5,0X33,0XA4,0XF2,0XA4,0XF2,

94420XA4,0XF2,0XA4,0XF2,0XA4,0XF2,0XA5,0X12,0XAD,0X33,0XAD,0X33,0XAD,0X53,0XAD,0X54,

94430XB5,0X74,0XB5,0X74,0XAD,0X54,0XAD,0X33,0XA4,0XF3,0X9C,0XF2,0XA5,0X14,0XA5,0X34,

94440XAD,0X55,0XAD,0X75,0XAD,0X75,0XB5,0X96,0XB5,0XB6,0XBD,0XD7,0XBD,0XF7,0XBD,0XF7,

94450XC6,0X18,0XC6,0X18,0XC6,0X38,0XCE,0X59,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XD6,0X9A,

94460XD6,0X9A,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,

94470XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

94480XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

94490XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94530XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

94540XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,

94550XEF,0X7D,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,

94560XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XFF,0XDD,0XF7,0XBD,0XF7,0X9C,0XF7,0X9C,0XF7,0X9C,

94570XF7,0X9C,0XF7,0X9C,0XF7,0X7C,0XF7,0X7C,0XF7,0X7C,0XF7,0X7B,0XEF,0X7B,0XEF,0X7B,

94580XF7,0X7B,0XEF,0X7B,0XEF,0X7B,0XEF,0X5B,0XEF,0X5B,0XEF,0X5B,0XEF,0X5B,0XEF,0X5A,

94590XEF,0X5A,0XEF,0X3A,0XEF,0X3A,0XEF,0X5A,0XE7,0X1A,0XE6,0XFA,0XE7,0X1A,0XE7,0X1A,

94600XDE,0XFA,0XE7,0X1A,0XE7,0X3B,0XDE,0XFA,0XDE,0XFA,0XDE,0XF9,0XDE,0XD9,0XDE,0XD9,

94610XDE,0XD9,0XDE,0XD9,0XDE,0XD9,0XDE,0XD9,0XDE,0XB9,0XDE,0XB9,0XDE,0XD9,0XDE,0XD9,

94620XDE,0XD9,0XDE,0XD9,0XD6,0XB9,0XD6,0X99,0XC6,0X38,0XCE,0X59,0XCE,0X59,0XC6,0X38,

94630XC6,0X38,0XCE,0X59,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XD6,0X9A,0XD6,0X9A,

94640XD6,0X9A,0XD6,0XBA,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,

94650XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,

94660XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,

94670XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

94680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94720XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

94730XF7,0XBE,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

94740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

94750XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,

94760XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,

94770XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XBD,0XFF,0XBC,

94780XF7,0XBC,0XF7,0XBC,0XFF,0XDD,0XFF,0XBD,0XFF,0XDD,0XF7,0XBD,0XF7,0X9C,0XF7,0XBD,

94790XFF,0XDD,0XF7,0X9C,0XF7,0XBD,0XF7,0XBC,0XF7,0XBC,0XF7,0XBC,0XF7,0XBC,0XF7,0XBC,

94800XF7,0X9C,0XF7,0X9C,0XF7,0X9C,0XF7,0X9C,0XF7,0X7C,0XF7,0X7C,0XF7,0X9C,0XF7,0X9C,

94810XF7,0X9C,0XF7,0X9D,0XEF,0X5C,0XE7,0X3C,0XDE,0XFB,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,

94820XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,

94830XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

94840XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

94850XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,

94860XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

94870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94910XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

94920XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

94940XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

94950XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

94960XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

94970XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

94980XFF,0XFD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,

94990XFF,0XFE,0XFF,0XFD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,

95000XFF,0XFF,0XF7,0XBE,0XF7,0X9E,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,

95010XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,

95020XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

95030XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

95040XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

95050XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95100XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

95130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95150XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

95160XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

95170XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

95180XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95190XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

95200XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

95210XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

95220XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

95230XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

95240XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

95310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95340XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

95350XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

95360XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95380XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

95390XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

95400XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

95410XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

95420XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

95430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95570XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

95580XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

95590XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

95600XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

95610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

95620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95870XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

95990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,};

9601

9602const unsigned char gimage_9[51000] = { /* 0X10,0X10,0X00,0X96,0X00,0XAA,0X01,0X1B, */

96030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96690XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

96920XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

96990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDF,0XFF,0XDF,

97110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97430XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

97440XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

97450XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97610XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,

97620XFF,0XFC,0XFF,0XFB,0XFF,0XFB,0XFF,0XFB,0XFF,0XFB,0XFF,0XFB,0XFF,0XFB,0XFF,0XFB,

97630XFF,0XFB,0XFF,0XFB,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,0XFF,0XFD,0XFF,0XFD,

97640XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

97800XFF,0XFC,0XFF,0XFB,0XFF,0XFB,0XFF,0XFA,0XFF,0XF9,0XFF,0XF9,0XFF,0XD8,0XFF,0XF7,

97810XFF,0XF7,0XFF,0XD7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XD7,0XFF,0XF8,0XFF,0XF8,

97820XFF,0XF8,0XFF,0XF9,0XFF,0XF9,0XFF,0XFA,0XFF,0XFB,0XFF,0XFB,0XFF,0XFC,0XFF,0XFD,

97830XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

97960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

97970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

97980XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XF9,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,

97990XFF,0XF6,0XFF,0XF5,0XFF,0XF5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF3,0XFF,0XF3,0XFF,0XF2,

98000XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XD2,0XFF,0XF4,0XFF,0XD4,0XFF,0XF4,0XFF,0XF5,

98010XFF,0XF5,0XFF,0XF6,0XFF,0XF7,0XFF,0XF8,0XFF,0XF9,0XFF,0XFA,0XFF,0XFB,0XFF,0XFC,

98020XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

98160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFB,

98170XFF,0XF9,0XFF,0XF7,0XFF,0XF5,0XF7,0XF3,0XFF,0XF3,0XFF,0XF3,0XFF,0XF3,0XFF,0XF2,

98180XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

98190XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF2,0XFF,0XF2,0XFF,0XF3,

98200XFF,0XF4,0XFF,0XF5,0XFF,0XD6,0XFF,0XF7,0XFF,0XF8,0XFF,0XF9,0XFF,0XFB,0XFF,0XFC,

98210XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98340XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

98350XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF7,0XFF,0XF5,0XFF,0XF4,

98360XF7,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

98370XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XD0,0XFF,0XD0,0XFF,0XF0,

98380XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF2,0XFF,0XF3,

98390XFF,0XF3,0XFF,0XF4,0XFF,0XF4,0XFF,0XF5,0XFF,0XF7,0XFF,0XF9,0XFF,0XFA,0XFF,0XFC,

98400XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98410XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98530XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,

98540XFF,0XF9,0XFF,0XD7,0XFF,0XD5,0XFF,0XF4,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,

98550XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

98560XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,

98570XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

98580XFF,0XF1,0XFF,0XF2,0XFF,0XF3,0XFF,0XF5,0XFF,0XF7,0XFF,0XF8,0XFF,0XFB,0XFF,0XFC,

98590XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98600XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98720XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFA,0XFF,0XF8,0XFF,0XF6,0XFF,0XF4,0XF7,0XD2,

98730XF7,0XD1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

98740XFF,0XF0,0XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

98750XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

98760XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

98770XFF,0XF0,0XFF,0XF2,0XFF,0XD3,0XFF,0XD5,0XFF,0XF8,0XFF,0XF9,0XFF,0XFB,0XFF,0XFC,

98780XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

98910XFF,0XFA,0XFF,0XF7,0XF7,0XF5,0XF7,0XF3,0XF7,0XF1,0XF7,0XEF,0XF7,0XEF,0XFF,0XEF,

98920XFF,0XF0,0XFF,0XD0,0XFF,0XD0,0XFF,0XD0,0XFF,0XCF,0XFF,0XCF,0XFF,0XCF,0XFF,0XCF,

98930XFF,0XCF,0XFF,0XF0,0XFF,0XCF,0XFF,0XF0,0XFF,0XF0,0XFF,0XCF,0XFF,0XCF,0XFF,0XF0,

98940XFF,0XF0,0XFF,0XCF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

98950XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XF0,

98960XFF,0XD1,0XFF,0XD2,0XFF,0XF5,0XFF,0XF7,0XFF,0XF9,0XFF,0XFB,0XFF,0XFC,0XFF,0XFE,

98970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

98990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99090XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF6,0XFF,0XF4,

99100XFF,0XF2,0XF7,0XF0,0XF7,0XEF,0XF7,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XF0,0XFF,0XD0,

99110XFF,0XD0,0XFF,0X8E,0XFF,0X8C,0XFF,0X8C,0XFF,0X8B,0XFF,0X8C,0XFF,0XAD,0XFF,0XCF,

99120XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XF7,0XCE,0XF7,0XEE,0XFF,0XEF,

99130XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,

99140XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,

99150XFF,0XF2,0XFF,0XF4,0XFF,0XF5,0XFF,0XF8,0XFF,0XFA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,

99160XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

99280XFF,0XFC,0XFF,0XFA,0XFF,0XD8,0XFF,0XD5,0XFF,0XF3,0XFF,0XF2,0XF7,0XF1,0XF7,0XEF,

99290XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XCE,0XFF,0XAE,0XFF,0X6E,0XF7,0X0D,0XEE,0XCA,

99300XE6,0X87,0XD6,0X45,0XD6,0X25,0XD6,0X46,0XDE,0X68,0XEF,0X0B,0XFF,0X8E,0XFF,0XF0,

99310XFF,0XCE,0XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XF7,0XEE,0XF7,0XEE,0XFF,0XEF,0XFF,0XEF,

99320XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

99330XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XD1,

99340XFF,0XD3,0XFF,0XD5,0XFF,0XF7,0XFF,0XF9,0XFF,0XFB,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,

99350XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF9,0XFF,0XF6,

99470XFF,0XD4,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,

99480XFF,0XEE,0XFF,0XAD,0XFF,0X4C,0XF6,0XCA,0XEE,0X48,0XE6,0X47,0XE6,0X26,0XDD,0XE4,

99490XDD,0XC4,0XCD,0X83,0XBD,0X03,0XC5,0X45,0XD6,0X29,0XFF,0X8F,0XFF,0XCF,0XFF,0XCF,

99500XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XF7,0XCE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

99510XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

99520XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF1,0XFF,0XF2,

99530XFF,0XF4,0XFF,0XF6,0XFF,0XF9,0XFF,0XFB,0XFF,0XFD,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

99540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99650XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF8,0XFF,0XD5,0XFF,0XD3,0XFF,0XF1,0XFF,0XF0,

99660XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XCE,0XFF,0XAD,0XFF,0X4C,

99670XEE,0XC9,0XE6,0X47,0XE5,0XE5,0XE5,0XC4,0XDD,0XA3,0XDD,0X82,0XD5,0X62,0XCD,0X22,

99680XB4,0X81,0XAC,0X61,0XAC,0X62,0XD5,0XE9,0XF7,0X4E,0XFF,0XF0,0XFF,0XCF,0XF7,0XCF,

99690XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

99700XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

99710XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF1,0XFF,0XF3,

99720XFF,0XF6,0XFF,0XF8,0XFF,0XFB,0XFF,0XFD,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

99730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XFA,

99840XFF,0XF7,0XFF,0XD5,0XFF,0XD2,0XFF,0XD0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

99850XFF,0XEF,0XFF,0XEF,0XFF,0XCE,0XFF,0XAD,0XFF,0X4B,0XEE,0XA9,0XE6,0X26,0XEE,0X26,

99860XFE,0X67,0XFE,0X46,0XF6,0X04,0XEE,0X03,0XE5,0XC2,0XDD,0X62,0XC4,0XE1,0XAC,0X00,

99870X8B,0X40,0X9C,0X01,0XDE,0X2A,0XFF,0X8F,0XFF,0XCF,0XFF,0XCE,0XFF,0XEF,0XFF,0XEF,

99880XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

99890XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

99900XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XF7,0XF1,0XF7,0XD3,0XFF,0XD6,

99910XFF,0XD9,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

99990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100020XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFA,0XFF,0XF7,0XFF,0XF4,0XFF,0XF1,

100030XFF,0XF0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEE,0XFF,0XCE,

100040XFF,0XCE,0XFF,0X8D,0XF6,0XE9,0XE6,0X06,0XDD,0XC4,0XF6,0X46,0XFE,0XA7,0XFE,0X86,

100050XFE,0X45,0XF6,0X24,0XED,0XC2,0XE5,0XA2,0XE5,0XA3,0XCC,0XE1,0X9B,0XA0,0X82,0XE0,

100060XAC,0X83,0XE6,0X8B,0XFF,0XAF,0XFF,0XEF,0XFF,0XEE,0XFF,0XED,0XFF,0XEF,0XFF,0XEF,

100070XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

100080XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

100090XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XF7,0XEF,0XF7,0XD1,0XF7,0XD3,0XFF,0XD6,0XFF,0XD9,

100100XFF,0XDD,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100200XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

100210XFF,0XFD,0XFF,0XFA,0XFF,0XF6,0XFF,0XF3,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

100220XFF,0XEE,0XFF,0XCE,0XFF,0XCE,0XFF,0XEF,0XFF,0XCF,0XFF,0XCE,0XFF,0XAD,0XF6,0XEA,

100230XEE,0X67,0XD5,0X83,0XE5,0XA3,0XF6,0X25,0XFE,0X86,0XFE,0XA7,0XFE,0X87,0XFE,0X46,

100240XEE,0X04,0XE5,0XC3,0XE5,0XE2,0XD5,0X61,0XCD,0X41,0X93,0X60,0X8B,0X20,0XC5,0X06,

100250XFF,0X2E,0XFF,0XEF,0XFF,0XCC,0XFF,0XEC,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

100260XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

100270XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,

100280XFF,0XED,0XF7,0XED,0XFF,0XEF,0XFF,0XF1,0XFF,0XD4,0XFF,0XB6,0XFF,0XDA,0XFF,0XFD,

100290XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

100390XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFB,0XFF,0XF7,

100400XFF,0XF4,0XFF,0XF1,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

100410XFF,0XEE,0XFF,0XEF,0XFF,0XAF,0XFF,0XCE,0XFF,0X8D,0XE6,0X27,0XDD,0XE4,0XCD,0X21,

100420XDD,0X83,0XED,0XC3,0XF6,0X24,0XFE,0X66,0XFE,0X88,0XFE,0X88,0XF6,0X67,0XEE,0X45,

100430XE6,0X02,0XE5,0XE1,0XDD,0X81,0XC4,0XC0,0X9B,0X80,0XA4,0X01,0XDD,0XE9,0XFF,0X8E,

100440XFF,0XCD,0XFF,0XCC,0XFF,0XED,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

100450XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

100460XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

100470XFF,0XED,0XFF,0XF0,0XFF,0XD1,0XF7,0XB4,0XFF,0XD8,0XFF,0XFB,0XFF,0XDE,0XFF,0XFF,

100480XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

100580XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XFF,0XD7,0XFF,0XD4,0XFF,0XD1,0XFF,0XEF,

100590XFF,0XCF,0XFF,0XEF,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,

100600XFF,0XAE,0XFF,0XCF,0XF6,0XEB,0XD5,0XA4,0XD5,0X62,0XD5,0X21,0XE5,0X82,0XE5,0XA2,

100610XED,0XC3,0XFE,0X67,0XFE,0X88,0XFE,0XA9,0XFE,0XA8,0XF6,0X87,0XF6,0X65,0XEE,0X23,

100620XE5,0XC2,0XE5,0XC3,0XBC,0XA0,0X9B,0XA0,0XC5,0X25,0XFF,0X4D,0XFF,0XAE,0XFF,0XCD,

100630XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

100640XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

100650XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,

100660XFF,0XF0,0XFF,0XD2,0XFF,0XB5,0XFF,0XB8,0XFF,0XFC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

100670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

100770XFF,0XFC,0XFF,0XD8,0XFF,0XD5,0XFF,0XD1,0XFF,0XCF,0XFF,0XEF,0XFF,0XCF,0XFF,0XCF,

100780XFF,0XEE,0XFF,0XED,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XCE,0XFF,0X6D,

100790XE6,0X48,0XB4,0XC1,0XCD,0X21,0XD5,0X21,0XDD,0X20,0XE5,0XA2,0XED,0XC3,0XEE,0X04,

100800XFE,0X87,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XF6,0X86,0XFE,0X65,0XF6,0X23,0XF6,0X03,

100810XE5,0X83,0XC4,0XA1,0XB4,0XA3,0XE6,0XAA,0XFF,0XAD,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

100820XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

100830XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XEE,

100840XFF,0XEE,0XFF,0XEE,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEE,0XFF,0XD0,

100850XFF,0XB2,0XF7,0X94,0XFF,0XFA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

100860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

100950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF9,0XFF,0XD5,

100960XFF,0XD1,0XFF,0XCF,0XFF,0XCF,0XFF,0XCF,0XFF,0XCF,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

100970XFF,0XEC,0XFF,0XEC,0XFF,0XCD,0XFF,0XCE,0XFF,0XAE,0XFF,0X4C,0XBD,0X23,0XAC,0X60,

100980XD5,0X42,0XD5,0X21,0XDD,0X40,0XDD,0X60,0XE5,0XC1,0XE5,0XC2,0XF6,0X65,0XFE,0XA8,

100990XFE,0XA8,0XFE,0XA9,0XFE,0XA7,0XFE,0XA7,0XFE,0XA6,0XFE,0X25,0XF6,0X06,0XE5,0XA5,

101000XBC,0XC2,0XD5,0XE6,0XFF,0XAC,0XFF,0XCC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

101010XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,

101020XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,

101030XFF,0XEC,0XFF,0XEB,0XFF,0XEB,0XFF,0XEB,0XFF,0XED,0XFF,0XCE,0XFF,0XB0,0XF7,0X91,

101040XFF,0XB5,0XFF,0XD9,0XFF,0XFC,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101140XFF,0XDF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFA,0XFF,0XD5,0XFF,0XD2,0XFF,0XCF,0XFF,0XCE,

101150XFF,0XCE,0XFF,0XCE,0XFF,0XCE,0XFF,0XCE,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,

101160XFF,0XCD,0XFF,0XCE,0XFF,0XCE,0XF7,0X0B,0XA4,0X20,0XB4,0X60,0XCD,0X02,0XD5,0X21,

101170XD5,0X00,0XDD,0X40,0XE5,0XA0,0XE5,0XC2,0XF6,0X44,0XF6,0X86,0XF6,0X88,0XFE,0XA9,

101180XFE,0XA9,0XFE,0XA8,0XFE,0X87,0XFE,0X66,0XFE,0X47,0XFE,0X68,0XCD,0X64,0XBD,0X23,

101190XFF,0X8B,0XFF,0XCC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

101200XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,

101210XFF,0XEC,0XFF,0XEC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XEC,0XFF,0XEB,

101220XFF,0XEB,0XFF,0XEB,0XFF,0XCC,0XFF,0XCD,0XFF,0XAE,0XFF,0XB0,0XEF,0X51,0XFF,0XB6,

101230XFF,0XFB,0XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFD,

101330XFF,0XFB,0XFF,0XD7,0XF7,0XB2,0XFF,0XCF,0XFF,0XCE,0XFF,0XCD,0XFF,0XCE,0XFF,0XCE,

101340XFF,0XCD,0XFF,0XCC,0XFF,0XEC,0XFF,0XEC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCE,0XFF,0XAE,

101350XFF,0XAE,0XEE,0XAA,0X8B,0X80,0XBC,0XC1,0XC4,0XE2,0XC4,0XC0,0XCC,0XC0,0XCC,0XC0,

101360XD5,0X20,0XDD,0XA2,0XE5,0XE3,0XF6,0X45,0XF6,0X87,0XFE,0X68,0XFE,0X69,0XFE,0X69,

101370XFE,0X68,0XFE,0X88,0XFE,0X68,0XFE,0X88,0XEE,0X48,0XBD,0X23,0XEE,0XC8,0XFF,0XCC,

101380XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,

101390XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCC,

101400XFF,0XCC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,0XFF,0XCB,0XFF,0XCB,

101410XFF,0XCC,0XFF,0XCC,0XFF,0XAD,0XFF,0XCE,0XF7,0X4F,0XF7,0X52,0XFF,0XD9,0XFF,0XDC,

101420XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

101510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD8,0XFF,0XB4,

101520XF7,0XAF,0XF7,0XAD,0XFF,0XCC,0XFF,0XCC,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XCC,

101530XFF,0XCC,0XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XAE,0XFF,0XAE,0XFF,0X8E,0XCD,0X86,

101540X9B,0XE0,0XBC,0XC2,0XC4,0XC2,0XC4,0XA1,0XBC,0X40,0XBC,0X60,0XBC,0X80,0XC5,0X01,

101550XCD,0X41,0XE6,0X04,0XF6,0X68,0XF6,0X49,0XFE,0X4A,0XFE,0X6A,0XFE,0X68,0XFE,0X88,

101560XFE,0X88,0XF6,0X68,0XFE,0XCB,0XCD,0X85,0XD5,0XE6,0XFF,0XAC,0XFF,0XAC,0XFF,0XCC,

101570XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

101580XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XAD,0XFF,0XAD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,

101590XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

101600XFF,0XAC,0XFF,0XAC,0XFF,0XAE,0XEF,0X2F,0XFF,0X76,0XFF,0XDB,0XFF,0XDD,0XFF,0XDF,

101610XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

101700XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XD9,0XFF,0XB5,0XF7,0XB1,0XF7,0XAE,0XFF,0XCC,

101710XFF,0XCC,0XFF,0XCC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XCC,

101720XFF,0XCD,0XFF,0XCD,0XFF,0XAE,0XFF,0XAE,0XFF,0X8E,0XBD,0X25,0X9B,0XC0,0XB4,0X62,

101730XBC,0X61,0XB4,0X20,0XB3,0XE0,0XAB,0XE0,0XA4,0X00,0XA4,0X21,0XB4,0X81,0XCD,0X44,

101740XE5,0XE8,0XF6,0X2A,0XFE,0X4A,0XFE,0X8A,0XFE,0X67,0XFE,0XA8,0XFE,0XA9,0XFE,0X8A,

101750XFE,0X8C,0XDD,0XC8,0XC5,0X25,0XFF,0X6D,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

101760XFF,0XAC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

101770XFF,0XAC,0XFF,0XAC,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0X8D,0XFF,0X8E,

101780XFF,0X8E,0XFF,0X8D,0XFF,0X8C,0XFF,0X8C,0XFF,0X6C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,

101790XFF,0XAD,0XEF,0X4E,0XEE,0XF2,0XFF,0XB9,0XFF,0XDD,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

101800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

101890XFF,0XFA,0XFF,0XD6,0XF7,0X92,0XF7,0X8F,0XFF,0X8D,0XFF,0XAC,0XFF,0XAC,0XFF,0XAB,

101900XFF,0XAB,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

101910XFF,0XAD,0XFF,0X8E,0XFF,0X4D,0XB4,0XC4,0X9B,0XA0,0XB4,0X42,0XB4,0X21,0XAB,0XC0,

101920XA3,0X80,0X93,0X40,0X8B,0X60,0X83,0X40,0X9B,0XC1,0XAC,0X43,0XC4,0XE6,0XE5,0XC9,

101930XF6,0X2A,0XF6,0X49,0XFE,0X88,0XFE,0XC9,0XF6,0X8A,0XFE,0XCD,0XF6,0X8E,0XE6,0X2D,

101940XBD,0X07,0XF7,0X0E,0XFF,0X8E,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,

101950XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0X8C,

101960XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8D,0XFF,0X6E,0XFF,0X6D,0XFF,0X6D,

101970XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XF7,0X4B,0XFF,0X6E,

101980XE6,0XAF,0XF7,0X56,0XFF,0XDB,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

101990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102070XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,0XFF,0XF7,0XFF,0XB3,

102080XF7,0X50,0XFF,0X4E,0XFF,0X6C,0XFF,0X8B,0XFF,0X8C,0XFF,0X8B,0XFF,0X8C,0XFF,0X8C,

102090XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8B,0XFF,0XAB,0XFF,0XAC,0XFF,0X8C,0XFF,0X8D,

102100XF6,0XEC,0XAC,0X63,0X9B,0XC0,0XAC,0X23,0XAC,0X02,0X9B,0XA1,0X93,0X40,0X83,0X00,

102110X7A,0XE0,0X72,0XE0,0X72,0XC0,0X83,0X63,0XA4,0X05,0XC4,0XE7,0XE5,0XC8,0XF6,0X48,

102120XFE,0X89,0XFE,0XEB,0XE6,0X6B,0XEE,0XAF,0XF7,0X12,0XFF,0X53,0XBD,0X6B,0XDE,0X4D,

102130XFF,0X8F,0XFF,0X8D,0XFF,0XAD,0XFF,0X8B,0XFF,0X8B,0XFF,0XAC,0XFF,0X6B,0XFF,0X8C,

102140XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,

102150XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,

102160XFF,0X6C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4C,0XFF,0X2C,0XFF,0X4E,0XEE,0XCE,0XE6,0XB0,

102170XFF,0X97,0XFF,0XFC,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

102180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102260XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XFF,0XB4,0XFF,0X90,0XF7,0X4E,0XFF,0X4D,

102270XFF,0X4B,0XFF,0X6B,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6D,

102280XFF,0X8C,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,0XFF,0X8C,0XFF,0X6D,0XF6,0XCB,0XA4,0X01,

102290XA3,0XE2,0XA3,0XE2,0X9B,0XC2,0X93,0X61,0X83,0X00,0X7A,0XC0,0X6A,0X80,0X62,0X60,

102300X5A,0X20,0X62,0X61,0X7B,0X23,0XA4,0X05,0XC5,0X06,0XE5,0XE8,0XEE,0X6A,0XEE,0X6C,

102310XEE,0XB0,0XFF,0X74,0XFF,0XB7,0XFF,0XD8,0XD6,0X30,0XC5,0XAC,0XFF,0X50,0XFF,0X6D,

102320XFF,0X6C,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,0XFF,0X6B,0XFF,0X4C,0XFF,0X6C,0XFF,0X6C,

102330XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X4B,

102340XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X4B,0XFF,0X4C,0XFF,0X4C,0XFF,0X2C,0XFF,0X4C,

102350XFF,0X4C,0XFF,0X2B,0XFF,0X2C,0XFF,0X4D,0XF6,0XED,0XDE,0X4C,0XF7,0X74,0XFF,0XF9,

102360XFF,0XFD,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

102450XFF,0XFC,0XFF,0XB7,0XF7,0X51,0XF7,0X4E,0XF7,0X4D,0XFF,0X2C,0XFF,0X4B,0XFF,0X4B,

102460XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X6C,0XFF,0X6B,

102470XFF,0X8B,0XFF,0X8C,0XFF,0X8C,0XFF,0X6D,0XEE,0XAB,0X9B,0XE1,0XAC,0X22,0X9B,0XC2,

102480X93,0X81,0X8B,0X21,0X82,0XE0,0X72,0XA0,0X62,0X40,0X5A,0X20,0X49,0XE0,0X49,0XE1,

102490X5A,0X62,0X7B,0X23,0X93,0XE4,0XBD,0X08,0XD5,0XCB,0XDE,0X6E,0XF7,0X55,0XFF,0XD9,

102500XFF,0XFA,0XFF,0XFB,0XEE,0XF5,0XAC,0XEB,0XFF,0X30,0XFF,0X4D,0XFF,0X6C,0XFF,0X6B,

102510XFF,0X6B,0XFF,0X6B,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4B,0XFF,0X6B,

102520XFF,0X6C,0XFF,0X4C,0XFF,0X4C,0XFF,0X6B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4A,

102530XFF,0X4B,0XFF,0X4B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X4B,0XFF,0X2B,

102540XFF,0X0B,0XFF,0X2C,0XF6,0XEC,0XDE,0X2B,0XDE,0X90,0XFF,0XB8,0XFF,0XFD,0XFF,0XFF,

102550XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XF7,0X75,

102640XF7,0X2F,0XF7,0X2D,0XFF,0X2C,0XFF,0X2C,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4C,

102650XFF,0X2C,0XFF,0X4C,0XFF,0X2C,0XFF,0X4C,0XFF,0X4C,0XFF,0X6B,0XFF,0X6B,0XFF,0X6C,

102660XFF,0X6C,0XFF,0X6D,0XE6,0X4A,0X9B,0XE1,0XA4,0X22,0X9B,0XA1,0X93,0X61,0X83,0X21,

102670X7A,0XE0,0X72,0X80,0X62,0X40,0X5A,0X21,0X41,0XA0,0X41,0XC1,0X41,0XC0,0X5A,0X62,

102680X6A,0XE2,0X94,0X06,0XAC,0XEA,0XE6,0XD3,0XFF,0XFA,0XFF,0XFC,0XFF,0XDC,0XFF,0XFC,

102690XFF,0X9A,0XA4,0X8A,0XF6,0XEF,0XFF,0X2D,0XFF,0X4C,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,

102700XFF,0X4C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,

102710XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X2A,0XFF,0X2A,0XFF,0X2A,0XFF,0X2B,0XFF,0X2B,

102720XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X0B,0XFF,0X0A,0XFF,0X2B,0XFF,0X0B,0XF7,0X0B,

102730XFF,0X0C,0XE6,0X8C,0XBD,0XAB,0XF7,0X75,0XFF,0XFB,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,

102740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102820XFF,0XFF,0XF7,0XDE,0XFF,0XDD,0XFF,0XFC,0XFF,0X77,0XF7,0X11,0XF7,0X0D,0XF7,0X0C,

102830XFF,0X0B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2C,0XFF,0X2C,0XFF,0X2C,

102840XFF,0X0C,0XFF,0X2C,0XFF,0X2C,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2C,0XFF,0X2C,

102850XDE,0X08,0XA4,0X21,0X9B,0XE1,0X93,0X80,0X8B,0X61,0X83,0X01,0X72,0XC1,0X6A,0X81,

102860X5A,0X20,0X52,0X01,0X49,0XC1,0X49,0XE1,0X41,0XE1,0X4A,0X01,0X52,0X42,0X5A,0XC3,

102870X94,0X8B,0XFF,0XFA,0XFF,0XFD,0XF7,0XBC,0XFF,0XFE,0XFF,0XFD,0XFF,0X9A,0XB5,0X2E,

102880XE6,0X4D,0XF7,0X0C,0XFF,0X4C,0XFF,0X4A,0XFF,0X4B,0XFF,0X6C,0XF7,0X0C,0XFF,0X2C,

102890XFF,0X2B,0XFF,0X2B,0XFF,0X2A,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

102900XFF,0X2A,0XFF,0X2A,0XFF,0X2A,0XFF,0X2A,0XFF,0X2A,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

102910XFF,0X2B,0XFF,0X0A,0XFF,0X0A,0XFF,0X0B,0XFF,0X0B,0XF6,0XEA,0XFF,0X2C,0XEE,0XCC,

102920XC5,0XCA,0XCE,0X0E,0XFF,0XD9,0XFF,0X9C,0XFF,0XDE,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,

102930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

102990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDD,

103010XFF,0XDD,0XFF,0XB9,0XF7,0X33,0XF6,0XEF,0XFF,0X0D,0XFF,0X0B,0XFF,0X0B,0XFF,0X2B,

103020XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X0C,0XFF,0X0C,0XFF,0X0C,

103030XFF,0X2C,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2C,0XFF,0X2C,0XDD,0XE8,0XA4,0X42,

103040X93,0XA0,0X8B,0X60,0X8B,0X61,0X7B,0X01,0X72,0XC1,0X6A,0X81,0X62,0X62,0X5A,0X22,

103050X4A,0X01,0X39,0XA0,0X41,0XE1,0X39,0XC1,0X42,0X02,0X4A,0X43,0XB5,0XB2,0XFF,0XFC,

103060XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XC5,0X90,0XCD,0X8B,0XFE,0XEC,

103070XFF,0X4B,0XFF,0X2A,0XFF,0X0A,0XFF,0X4C,0XF6,0XEB,0XFF,0X0C,0XFF,0X2B,0XFF,0X2A,

103080XFF,0X2A,0XFF,0X2A,0XFF,0X2B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,0XFF,0X0A,

103090XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,

103100XFF,0X0B,0XFF,0X0A,0XFE,0XEA,0XFE,0XEA,0XFF,0X0B,0XF6,0XEB,0XCD,0XE9,0XBD,0X8B,

103110XDE,0X93,0XFF,0XFC,0XFF,0XBD,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFD,0XFF,0XFC,0XFF,0X77,

103200XF6,0XF0,0XF6,0XED,0XFF,0X0C,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

103210XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0C,0XFF,0X0C,0XFF,0X2B,0XFF,0X2B,

103220XFF,0X0B,0XFF,0X0B,0XFF,0X0C,0XFF,0X2C,0XD5,0XC8,0XA4,0X21,0X93,0XA0,0X8B,0X80,

103230X8B,0X41,0X7B,0X01,0X7A,0XE2,0X72,0XA2,0X62,0X62,0X5A,0X21,0X5A,0X22,0X41,0XC1,

103240X41,0XE2,0X39,0XC1,0X31,0X81,0X5A,0XA6,0XE7,0X19,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

103250XFF,0XDE,0XFF,0XFE,0XFF,0XDD,0XDE,0X54,0XBC,0XE9,0XFF,0X0D,0XFF,0X0A,0XFF,0X2A,

103260XF6,0XE9,0XFF,0X2C,0XFE,0XEC,0XFF,0X0C,0XFF,0X0B,0XFF,0X2A,0XFF,0X2A,0XFF,0X0A,

103270XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,

103280XFF,0X0A,0XFF,0X0A,0XFF,0X0B,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

103290XFE,0XE9,0XFF,0X0A,0XFE,0XEA,0XF6,0XCA,0XDE,0X29,0XBD,0X49,0XBD,0X4D,0XFF,0X9A,

103300XFF,0X9C,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103380XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XFF,0X54,0XF6,0XCE,0XF6,0XCB,

103390XFE,0XCC,0XFE,0XEB,0XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,

103400XFF,0X0B,0XFF,0X0B,0XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

103410XFF,0X0C,0XFF,0X0C,0XD5,0XC7,0XA4,0X01,0X93,0XC0,0X8B,0X80,0X83,0X41,0X7B,0X01,

103420X7A,0XE3,0X72,0XA3,0X6A,0X82,0X62,0X62,0X5A,0X43,0X52,0X22,0X4A,0X02,0X41,0XC2,

103430X31,0X61,0X7B,0XCB,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

103440XFF,0XDE,0XF7,0X18,0XA4,0X47,0XFF,0X0E,0XFE,0XEA,0XFF,0X2A,0XFE,0XEA,0XFF,0X0B,

103450XFE,0XEC,0XFE,0XCC,0XFE,0XEB,0XFF,0X0A,0XFF,0X09,0XFF,0X0A,0XFE,0XEB,0XFE,0XEB,

103460XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

103470XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XEA,0XFE,0XC9,0XFF,0X0A,

103480XFE,0XC9,0XF6,0XCA,0XE6,0X8A,0XBD,0X48,0XA4,0X89,0XDE,0X73,0XFF,0XDC,0XFF,0XDD,

103490XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103570XFF,0XFE,0XFF,0XFD,0XFF,0XB8,0XF6,0XF1,0XF6,0XCC,0XFE,0XCB,0XFE,0XAB,0XFE,0XEC,

103580XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

103590XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFE,0XEA,0XFE,0XEA,0XFF,0X0B,0XFF,0X0B,0XFF,0X0C,

103600XD5,0XA7,0X9C,0X01,0X93,0XC0,0X8B,0X81,0X83,0X41,0X7B,0X22,0X7A,0XE3,0X72,0XC3,

103610X72,0XA3,0X6A,0X83,0X5A,0X22,0X62,0X84,0X41,0XC2,0X49,0XE3,0X39,0XA3,0XAD,0X32,

103620XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XBB,

103630XAC,0X88,0XEE,0X6C,0XFF,0X0B,0XFF,0X09,0XFE,0XEA,0XFE,0XEB,0XFE,0XEC,0XFE,0XCB,

103640XFE,0XCA,0XFE,0XE9,0XFE,0XE9,0XFE,0XE9,0XFE,0XCA,0XFE,0XCB,0XFE,0XCA,0XFE,0XCA,

103650XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

103660XFE,0XCA,0XFE,0XAA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XE9,0XFE,0XC9,0XF6,0XC9,

103670XEE,0XAA,0XCD,0XA8,0XA4,0X87,0XAC,0XCB,0XFF,0X99,0XFF,0XDC,0XFF,0XFE,0XF7,0XBE,

103680XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

103760XF7,0X56,0XEE,0XAF,0XF6,0XCB,0XFE,0XCA,0XFE,0XCB,0XFE,0XCB,0XFE,0XEA,0XFE,0XEA,

103770XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFF,0X0B,

103780XFF,0X0A,0XFE,0XEA,0XFE,0XEA,0XFE,0XEB,0XFE,0XEB,0XFE,0XEC,0XD5,0XA7,0X9B,0XE1,

103790X93,0XC1,0X8B,0X81,0X8B,0X62,0X83,0X22,0X7B,0X03,0X72,0XE4,0X72,0XC3,0X6A,0XA3,

103800X62,0X62,0X5A,0X63,0X52,0X23,0X4A,0X04,0X52,0X25,0XC6,0X15,0XFF,0XDE,0XFF,0XFE,

103810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XB4,0XCA,0XDE,0X0B,

103820XFE,0XEB,0XF6,0XE9,0XFE,0XE9,0XFE,0XAA,0XFE,0XCC,0XFE,0XAB,0XFE,0XCA,0XFE,0XC9,

103830XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XAA,0XFE,0XCA,0XFE,0XAA,0XFE,0XC9,0XFE,0XC9,

103840XFE,0XCA,0XFE,0XCA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,

103850XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XFE,0XC9,0XFE,0XA8,0XF6,0XC9,0XF6,0XAA,0XCD,0XA8,

103860XB4,0XE7,0X93,0XE6,0XD6,0X33,0XFF,0XBB,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

103870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

103940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XEE,0XF3,0XE6,0X8D,

103950XFE,0XCA,0XFE,0XA9,0XFE,0XCA,0XFE,0XAA,0XFE,0XCA,0XFE,0XE9,0XFE,0XE9,0XFE,0XEA,

103960XFE,0XCA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

103970XFE,0XEA,0XFE,0XEB,0XFE,0XEB,0XFE,0XCB,0XD5,0X87,0X9B,0XE1,0X93,0XC1,0X93,0X81,

103980X8B,0X62,0X83,0X43,0X83,0X24,0X7B,0X04,0X72,0XE4,0X6A,0XE4,0X62,0XA3,0X5A,0X63,

103990X5A,0X64,0X4A,0X03,0X5A,0XA7,0XDE,0XD8,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

104000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XBD,0X4D,0XCD,0X8A,0XF6,0XCB,0XF6,0XE9,

104010XFE,0XC9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAB,0XFE,0XAA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,

104020XFE,0XC9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,

104030XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,

104040XFE,0X89,0XFE,0XA9,0XFE,0XA8,0XF6,0XA8,0XF6,0XA9,0XD5,0XC7,0XBD,0X27,0X8B,0XC4,

104050XA4,0XAB,0XFF,0X99,0XFF,0XBC,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104130XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XF7,0X98,0XE6,0XB0,0XEE,0X8C,0XFE,0XAA,0XF6,0X68,

104140XFE,0XAA,0XFE,0XAA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,

104150XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XEA,0XFE,0XCA,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,

104160XFE,0XCB,0XFE,0XCB,0XD5,0X87,0X9B,0XE1,0X93,0XA1,0X93,0XA2,0X8B,0X82,0X83,0X43,

104170X83,0X24,0X7B,0X04,0X72,0XE3,0X73,0X04,0X6A,0XE4,0X62,0X83,0X5A,0X84,0X52,0X23,

104180X6B,0X08,0XEF,0X19,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104190XFF,0XFF,0XFF,0XFC,0XD5,0XD0,0XC5,0X29,0XF6,0XAC,0XFE,0XEA,0XF6,0XA8,0XFE,0XC9,

104200XFE,0X8A,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XFE,0XC9,0XFE,0XA9,0XFE,0XA9,

104210XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X89,

104220XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XF6,0X89,0XF6,0X88,

104230XF6,0X88,0XF6,0XA8,0XF6,0X89,0XE6,0X29,0XBC,0XE6,0X9C,0X25,0X8B,0XC7,0XD6,0X33,

104240XFF,0XDC,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

104320XFF,0XDB,0XF7,0X56,0XE6,0X6E,0XEE,0X8B,0XF6,0X89,0XFE,0X68,0XFE,0X89,0XFE,0XA9,

104330XFE,0XA9,0XF6,0XC9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XCA,

104340XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0XCA,0XFE,0XCA,0XFE,0XCB,

104350XD5,0X88,0X9B,0XE2,0X93,0XA2,0X93,0X82,0X8B,0X83,0X83,0X43,0X83,0X44,0X7B,0X24,

104360X73,0X03,0X73,0X04,0X73,0X04,0X62,0XA3,0X62,0XA4,0X52,0X43,0X83,0XEB,0XEF,0X59,

104370XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

104380XDE,0X73,0XB4,0XE9,0XEE,0XAC,0XF6,0XCA,0XF6,0XA8,0XFE,0XC8,0XFE,0X69,0XFE,0X8A,

104390XFE,0X89,0XFE,0X89,0XFE,0XA8,0XFE,0XA8,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XFE,0X89,

104400XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0X88,

104410XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XF6,0X88,0XF6,0X88,0XF6,0X88,

104420XFE,0XA9,0XE6,0X08,0XC5,0X26,0XA4,0X45,0X8B,0XA5,0XA4,0XCC,0XF7,0X79,0XFF,0XFD,

104430XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XD9,0XE6,0XF2,

104510XDE,0X4C,0XEE,0X8B,0XF6,0X48,0XFE,0X88,0XFE,0X89,0XF6,0X89,0XF6,0XA9,0XF6,0XA9,

104520XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,

104530XFE,0XA9,0XFE,0XA8,0XFE,0X89,0XFE,0XA9,0XFE,0XAA,0XFE,0XAB,0XD5,0XA8,0X9B,0XC2,

104540X8B,0X82,0X8B,0X82,0X8B,0X83,0X83,0X63,0X83,0X44,0X7B,0X24,0X7B,0X24,0X73,0X03,

104550X7B,0X24,0X62,0XA3,0X6A,0XC4,0X52,0X43,0X9C,0XAE,0XF7,0X9A,0XFF,0XFD,0XFF,0XFF,

104560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XEE,0XF5,0XAC,0XC9,

104570XEE,0X8C,0XEE,0X89,0XF6,0XA8,0XFE,0X87,0XFE,0X89,0XFE,0X69,0XFE,0X69,0XFE,0X69,

104580XF6,0X88,0XF6,0X88,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

104590XFE,0X89,0XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X89,

104600XF6,0X69,0XFE,0X89,0XF6,0X69,0XF6,0X68,0XF6,0X88,0XF6,0X68,0XF6,0X89,0XEE,0X28,

104610XC5,0X26,0XAC,0XA6,0X8B,0XC5,0X8B,0XE8,0XDE,0XB6,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,

104620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XB7,0XDE,0X8F,0XDE,0X2B,0XEE,0X6A,

104700XF6,0X28,0XFE,0X89,0XFE,0X68,0XF6,0X88,0XF6,0X88,0XF6,0X89,0XFE,0X69,0XFE,0X69,

104710XFE,0X69,0XFE,0X88,0XFE,0X89,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X88,

104720XFE,0X88,0XFE,0X89,0XFE,0XAA,0XFE,0X8B,0XD5,0X88,0X93,0XA2,0X8B,0X61,0X8B,0X82,

104730X8B,0X83,0X83,0X64,0X83,0X64,0X7B,0X44,0X83,0X44,0X7B,0X04,0X7B,0X04,0X6A,0XA3,

104740X6A,0XE5,0X5A,0X63,0XAD,0X30,0XFF,0XBB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X57,0XAC,0XCA,0XE6,0X6C,0XEE,0X69,

104760XF6,0XA8,0XF6,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X69,0XFE,0X69,0XF6,0X68,0XF6,0X88,

104770XF6,0X87,0XF6,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,0XF6,0X68,

104780XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X68,0XF6,0X48,0XF6,0X69,

104790XF6,0X69,0XF6,0X68,0XF6,0X87,0XF6,0X67,0XFE,0X89,0XEE,0X49,0XCD,0X47,0XAC,0X85,

104800X83,0X84,0X83,0XA7,0XB5,0X50,0XFF,0X9B,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

104880XFF,0XFF,0XFF,0XFC,0XF7,0X75,0XD6,0X2C,0XE6,0X4B,0XEE,0X6A,0XEE,0X28,0XFE,0X69,

104890XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X69,0XF6,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X68,

104900XF6,0X88,0XF6,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,

104910XFE,0X8A,0XFE,0X8B,0XCD,0X68,0X93,0X81,0X83,0X41,0X83,0X62,0X83,0X84,0X83,0X64,

104920X83,0X64,0X83,0X64,0X7B,0X44,0X7B,0X44,0X72,0XE3,0X73,0X04,0X72,0XE5,0X62,0X84,

104930XB5,0X71,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

104940XFF,0XFF,0XFF,0XFD,0XFF,0X98,0XB4,0XEA,0XDE,0X2B,0XEE,0X69,0XF6,0XA8,0XF6,0X67,

104950XFE,0X68,0XFE,0X68,0XFE,0X69,0XF6,0X69,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

104960XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X68,

104970XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X48,

104980XF6,0X67,0XEE,0X47,0XF6,0X48,0XF6,0X49,0XD5,0X87,0XAC,0X65,0X93,0XC5,0X7B,0X45,

104990X94,0X4B,0XEF,0X18,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDA,

105070XEF,0X12,0XD6,0X0B,0XE6,0X6A,0XEE,0X48,0XEE,0X28,0XF6,0X48,0XF6,0X68,0XF6,0X48,

105080XF6,0X68,0XF6,0X48,0XF6,0X49,0XF6,0X49,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X88,

105090XF6,0X69,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X88,0XF6,0X88,0XF6,0X69,0XF6,0X8B,

105100XCD,0X67,0X93,0X81,0X7B,0X01,0X83,0X43,0X83,0X64,0X83,0X65,0X83,0X65,0X83,0X65,

105110X83,0X44,0X7B,0X24,0X73,0X03,0X7B,0X24,0X6A,0XC4,0X6A,0XC5,0XBD,0XB2,0XFF,0XBC,

105120XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,

105130XFF,0X9A,0XB4,0XEB,0XD6,0X0B,0XEE,0X6A,0XF6,0X68,0XF6,0X47,0XFE,0X68,0XF6,0X48,

105140XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

105150XF6,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X47,0XF6,0X67,

105160XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XEE,0X27,

105170XF6,0X68,0XEE,0X49,0XD5,0X87,0XAC,0X65,0X93,0XA4,0X83,0X65,0X83,0X88,0XC5,0XD3,

105180XFF,0X9B,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105250XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XDA,0XE6,0XB0,0XD5,0XEA,

105260XE6,0X49,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

105270XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

105280XF6,0X68,0XF6,0X68,0XFE,0X68,0XF6,0X68,0XF6,0X69,0XF6,0X8A,0XD5,0X88,0X93,0X61,

105290X83,0X22,0X83,0X43,0X83,0X45,0X83,0X65,0X83,0X65,0X83,0X64,0X83,0X64,0X7B,0X43,

105300X7B,0X23,0X7B,0X24,0X6A,0XC4,0X6A,0XE6,0XC5,0XD3,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,

105310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0X9A,0XB5,0X2D,

105320XCD,0XCA,0XEE,0X8A,0XF6,0X48,0XF6,0X47,0XFE,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X48,

105330XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

105340XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,

105350XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X27,0XF6,0X48,0XEE,0X49,

105360XDD,0XA8,0XAC,0X65,0X8B,0X84,0X83,0X45,0X73,0X06,0XA4,0XAE,0XF7,0X7A,0XFF,0XDD,

105370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

105440XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XB9,0XD6,0X2E,0XD5,0XC9,0XE6,0X29,0XE6,0X08,

105450XEE,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

105460XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

105470XF6,0X68,0XF6,0X48,0XF6,0X49,0XF6,0X8A,0XDD,0XA9,0X8B,0X61,0X83,0X42,0X83,0X43,

105480X83,0X45,0X83,0X65,0X83,0X65,0X83,0X64,0X83,0X64,0X7B,0X43,0X7B,0X23,0X73,0X24,

105490X6A,0XC4,0X6B,0X06,0XC5,0XD3,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XBD,0X6E,0XC5,0X69,0XEE,0X8A,

105510XEE,0X48,0XF6,0X47,0XFE,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

105520XF6,0X48,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

105530XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

105540XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X28,0XE6,0X09,0XA4,0X24,

105550X93,0XC4,0X7B,0X24,0X73,0X06,0X83,0XAA,0XEF,0X18,0XFF,0XBC,0XFF,0XFF,0XFF,0XFF,

105560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

105630XFF,0XFD,0XFF,0X99,0XD5,0XCD,0XD5,0XE9,0XE6,0X29,0XE6,0X07,0XEE,0X28,0XF6,0X28,

105640XEE,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X48,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

105650XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X48,

105660XF6,0X49,0XF6,0X8A,0XDD,0XC9,0X8B,0X40,0X83,0X42,0X83,0X43,0X83,0X44,0X83,0X65,

105670X83,0X65,0X83,0X64,0X83,0X44,0X7B,0X43,0X7B,0X23,0X73,0X24,0X6A,0XE4,0X6B,0X06,

105680XC5,0XF3,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105690XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XC5,0XAF,0XBD,0X49,0XEE,0X6A,0XEE,0X48,0XF6,0X47,

105700XF6,0X48,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XEE,0X47,

105710XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

105720XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,

105730XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X29,0XE6,0X09,0XAC,0X44,0X8B,0X83,0X7B,0X44,

105740X73,0X26,0X73,0X48,0XCE,0X14,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105810XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XF7,0X57,

105820XCD,0XAC,0XDE,0X09,0XE6,0X29,0XE6,0X07,0XEE,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,

105830XEE,0X47,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X48,

105840XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X6A,

105850XDD,0XC9,0X8B,0X40,0X83,0X42,0X83,0X43,0X83,0X45,0X83,0X65,0X83,0X65,0X7B,0X44,

105860X83,0X44,0X7B,0X43,0X7B,0X24,0X7B,0X24,0X6A,0XE4,0X6B,0X26,0XCD,0XF4,0XFF,0XDC,

105870XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

105880XFF,0XBB,0XCD,0XAF,0XBD,0X29,0XE6,0X4A,0XEE,0X28,0XF6,0X47,0XF6,0X27,0XF6,0X27,

105890XF6,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

105900XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

105910XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

105920XEE,0X28,0XEE,0X28,0XE6,0X09,0XAC,0X44,0X83,0X42,0X7B,0X03,0X73,0X06,0X6B,0X07,

105930XA4,0XCF,0XFF,0XDC,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

105990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106000XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XEE,0XF6,0XCD,0X8B,0XDE,0X09,

106010XE6,0X08,0XE5,0XE7,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

106020XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XEE,0X48,0XF6,0X48,0XF6,0X48,

106030XF6,0X48,0XF6,0X48,0XF6,0X48,0XEE,0X48,0XEE,0X48,0XF6,0X6A,0XDD,0XC9,0X8B,0X40,

106040X83,0X42,0X83,0X64,0X83,0X65,0X83,0X65,0X83,0X65,0X83,0X45,0X83,0X44,0X7B,0X43,

106050X7B,0X44,0X7B,0X24,0X73,0X05,0X73,0X26,0XCE,0X14,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,

106060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XCD,0XF0,

106070XBD,0X29,0XE6,0X2A,0XEE,0X48,0XF6,0X27,0XEE,0X07,0XF6,0X27,0XF6,0X27,0XEE,0X27,

106080XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X27,

106090XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

106100XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XE6,0X28,

106110XEE,0X2A,0XAC,0X65,0X83,0X62,0X72,0XC2,0X73,0X05,0X6A,0XE6,0X83,0XCB,0XFF,0X9B,

106120XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

106190XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XDE,0X94,0XC5,0X6A,0XDD,0XE9,0XE6,0X07,0XE6,0X07,

106200XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X27,0XE6,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

106210XEE,0X27,0XEE,0X28,0XEE,0X48,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XEE,0X28,0XEE,0X28,

106220XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X4A,0XDD,0XE9,0X93,0X81,0X83,0X22,0X8B,0X64,

106230X83,0X65,0X83,0X65,0X83,0X65,0X83,0X65,0X83,0X44,0X7B,0X43,0X7B,0X44,0X7B,0X24,

106240X73,0X05,0X73,0X27,0XCE,0X14,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XD6,0X32,0XB5,0X08,0XE6,0X2A,

106260XEE,0X28,0XEE,0X07,0XEE,0X07,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

106270XF6,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

106280XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

106290XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X29,0XE6,0X2A,0XB4,0XC6,

106300X83,0X22,0X72,0XE2,0X72,0XE4,0X6A,0XE5,0X6B,0X27,0XE6,0XF8,0XFF,0XFE,0XFF,0XFF,

106310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

106380XFF,0XDC,0XD6,0X52,0XC5,0X4A,0XDD,0XE8,0XE5,0XE7,0XE6,0X07,0XE5,0XE7,0XE5,0XE7,

106390XEE,0X27,0XE6,0X07,0XE6,0X07,0XE6,0X27,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X28,

106400XEE,0X48,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

106410XEE,0X28,0XEE,0X4A,0XE6,0X09,0X93,0XA1,0X83,0X21,0X8B,0X84,0X83,0X65,0X83,0X65,

106420X83,0X65,0X83,0X65,0X83,0X64,0X7B,0X23,0X7B,0X24,0X73,0X24,0X73,0X05,0X6B,0X06,

106430XCE,0X14,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106440XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XDE,0X53,0XAC,0XC8,0XE6,0X2A,0XEE,0X28,0XEE,0X07,

106450XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

106460XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

106470XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

106480XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X09,0XEE,0X2A,0XB4,0XA5,0X83,0X42,0X6A,0XC1,

106490X72,0XE4,0X6A,0XE5,0X5A,0XA5,0XCE,0X55,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106560XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XCD,0XF1,

106570XC5,0X6A,0XDD,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XEE,0X07,0XEE,0X07,0XE6,0X07,

106580XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,

106590XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X49,

106600XE6,0X09,0X93,0XA2,0X83,0X41,0X8B,0X84,0X83,0X64,0X83,0X65,0X83,0X65,0X83,0X65,

106610X83,0X44,0X7B,0X44,0X7B,0X23,0X73,0X24,0X73,0X05,0X6B,0X06,0XCD,0XF4,0XFF,0XDD,

106620XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

106630XFF,0XBC,0XDE,0X73,0XAC,0XA8,0XE6,0X2A,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,

106640XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

106650XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

106660XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

106670XEE,0X08,0XE6,0X29,0XEE,0X2A,0XB4,0XC6,0X83,0X22,0X6A,0X81,0X72,0XE4,0X6A,0XE5,

106680X5A,0XA5,0XA4,0XEF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106750XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XDB,0XBD,0X8F,0XCD,0X8A,0XDD,0XE8,

106760XE6,0X07,0XE6,0X07,0XE5,0XE7,0XEE,0X08,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

106770XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X27,

106780XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X49,0XEE,0X2A,0X9B,0XE2,

106790X8B,0X41,0X8B,0X84,0X8B,0X65,0X8B,0X85,0X83,0X85,0X83,0X65,0X83,0X64,0X7B,0X44,

106800X7B,0X24,0X73,0X24,0X73,0X05,0X6B,0X06,0XC5,0XF3,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,

106810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBC,0XDE,0X73,

106820XAC,0XA8,0XE6,0X2A,0XE6,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,

106830XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

106840XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,

106850XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XE6,0X08,

106860XE6,0X2A,0XBC,0XE7,0X7B,0X21,0X62,0X81,0X6A,0XC3,0X62,0XA4,0X5A,0X84,0X8C,0X2C,

106870XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

106930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

106940XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XB5,0X2D,0XCD,0XCB,0XDE,0X08,0XE6,0X07,0XE5,0XE7,

106950XE5,0XE7,0XEE,0X08,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,

106960XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X28,

106970XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X29,0XEE,0X4A,0XA4,0X23,0X83,0X41,0X8B,0XA4,

106980X8B,0X85,0X8B,0X85,0X83,0X85,0X83,0X65,0X83,0X64,0X83,0X64,0X7B,0X44,0X73,0X24,

106990X73,0X05,0X6B,0X06,0XC5,0XD3,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XDE,0X73,0XAC,0XA8,0XDE,0X2A,

107010XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X08,

107020XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

107030XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107040XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XE6,0X08,0XE6,0X2A,0XBD,0X07,

107050X7A,0XE1,0X62,0X61,0X6A,0XA3,0X5A,0X83,0X52,0X64,0X6B,0X48,0XFF,0XBD,0XFF,0XDF,

107060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

107130XFF,0XDB,0XAC,0XEC,0XCD,0XAA,0XDD,0XE8,0XDD,0XE7,0XE5,0XE6,0XE5,0XE7,0XEE,0X08,

107140XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107150XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,

107160XEE,0X28,0XEE,0X49,0XEE,0X49,0XAC,0X63,0X83,0X20,0X8B,0XA3,0X8B,0XA5,0X8B,0X85,

107170X83,0X85,0X83,0X65,0X83,0X64,0X83,0X64,0X7B,0X44,0X73,0X24,0X73,0X05,0X6B,0X06,

107180XC5,0XD3,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107190XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XDE,0X74,0XAC,0XA8,0XDE,0X0A,0XE6,0X08,0XEE,0X28,

107200XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107210XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107220XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107230XEE,0X07,0XEE,0X07,0XEE,0X08,0XE6,0X08,0XE6,0X2A,0XC5,0X28,0X72,0XC0,0X62,0X40,

107240X62,0X82,0X5A,0X83,0X52,0X63,0X5A,0XC6,0XEF,0X3B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107310XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDB,0XAC,0XCB,

107320XCD,0XAA,0XDD,0XE8,0XDD,0XE7,0XE5,0XE7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE8,0XE6,0X08,

107330XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107340XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X48,

107350XEE,0X49,0XB4,0XA4,0X83,0X20,0X8B,0XA3,0X93,0XA5,0X8B,0XA5,0X8B,0X85,0X83,0X85,

107360X83,0X65,0X83,0X64,0X7B,0X44,0X7B,0X24,0X73,0X25,0X6B,0X06,0XBD,0XB3,0XFF,0XBC,

107370XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

107380XFF,0XDC,0XDE,0X94,0XAC,0XC8,0XDE,0X0A,0XE6,0X08,0XEE,0X28,0XEE,0X07,0XEE,0X07,

107390XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107400XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107410XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107420XE6,0X08,0XE6,0X09,0XE6,0X0B,0XC5,0X29,0X6A,0X80,0X5A,0X20,0X62,0X62,0X5A,0X83,

107430X52,0X43,0X52,0X85,0XD6,0X78,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

107500XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XA4,0XCB,0XCD,0XAA,0XDD,0XE8,

107510XE5,0XE7,0XE6,0X07,0XE5,0XC7,0XED,0XE7,0XE5,0XE8,0XE6,0X08,0XE5,0XE7,0XE6,0X07,

107520XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,

107530XEE,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X49,0XC5,0X26,

107540X83,0X40,0X93,0XC3,0X93,0XC5,0X8B,0XA5,0X8B,0XA5,0X8B,0X85,0X83,0X65,0X83,0X64,

107550X83,0X64,0X7B,0X44,0X73,0X25,0X6B,0X06,0XBD,0X92,0XFF,0XBC,0XFF,0XFE,0XFF,0XFF,

107560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XE6,0XB4,

107570XAC,0XC8,0XDD,0XE9,0XE6,0X08,0XEE,0X27,0XE5,0XE7,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107580XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107590XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

107600XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X08,0XE6,0X29,

107610XE6,0X0B,0XC5,0X09,0X6A,0X60,0X5A,0X20,0X5A,0X62,0X5A,0X63,0X52,0X43,0X4A,0X45,

107620XBD,0X94,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

107690XFF,0XFE,0XFF,0XFD,0XFF,0XDA,0XA4,0XCB,0XCD,0XCA,0XDE,0X08,0XDD,0XE7,0XE5,0XE7,

107700XE5,0XC7,0XED,0XE8,0XE5,0XC8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XEE,0X07,

107710XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,

107720XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X69,0XCD,0X67,0X8B,0X61,0X93,0XC4,

107730X93,0XC5,0X8B,0XA5,0X8B,0XA5,0X8B,0X85,0X83,0X65,0X83,0X64,0X83,0X65,0X7B,0X44,

107740X73,0X46,0X6B,0X06,0XB5,0X72,0XFF,0X9C,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XE6,0XB4,0XAC,0XC8,0XDD,0XE9,

107760XE6,0X08,0XEE,0X27,0XE5,0XE7,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X08,

107770XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107780XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,

107790XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X08,0XE6,0X29,0XE6,0X0B,0XBC,0XE8,

107800X6A,0X60,0X5A,0X00,0X5A,0X41,0X5A,0X42,0X52,0X63,0X42,0X04,0XA4,0XF2,0XFF,0XDF,

107810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107870XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDD,

107880XFF,0XBA,0XA4,0XCB,0XD5,0XEA,0XDE,0X08,0XDD,0XE6,0XE5,0XE7,0XE5,0XE8,0XED,0XE8,

107890XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XED,0XE7,0XEE,0X07,0XEE,0X07,

107900XEE,0X08,0XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X08,0XEE,0X08,

107910XEE,0X07,0XE6,0X28,0XEE,0X69,0XD5,0XA8,0X8B,0X81,0X93,0XE4,0X93,0XC5,0X8B,0XA5,

107920X8B,0XA5,0X8B,0XA5,0X83,0X84,0X83,0X64,0X83,0X65,0X7B,0X44,0X7B,0X45,0X6B,0X06,

107930XB5,0X71,0XF7,0X9B,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

107940XFF,0XFF,0XFF,0XFE,0XFF,0XDC,0XE6,0XB4,0XAC,0XA7,0XD5,0XE9,0XE6,0X08,0XEE,0X28,

107950XE6,0X06,0XEE,0X07,0XEE,0X06,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,

107960XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

107970XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

107980XEE,0X07,0XEE,0X07,0XE6,0X08,0XE6,0X29,0XE6,0X2B,0XBC,0XE8,0X62,0X60,0X52,0X00,

107990X5A,0X22,0X52,0X22,0X52,0X64,0X39,0XC3,0X9C,0XB1,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,

108000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDA,0X9C,0X89,

108070XD6,0X0B,0XD5,0XA6,0XDD,0XC6,0XE5,0XE6,0XE5,0XE8,0XE5,0XA8,0XE5,0XE8,0XE6,0X08,

108080XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XED,0XE7,0XEE,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,

108090XEE,0X07,0XE6,0X07,0XEE,0X08,0XEE,0X08,0XE5,0XE8,0XEE,0X08,0XEE,0X28,0XE6,0X07,

108100XEE,0X28,0XE6,0X49,0X93,0XA1,0X9B,0XE4,0X93,0XC5,0X93,0XC6,0X93,0XC5,0X8B,0XA5,

108110X8B,0XA4,0X83,0X84,0X83,0X65,0X7B,0X45,0X7B,0X45,0X73,0X45,0XA4,0XCE,0XF7,0X7A,

108120XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

108130XFF,0XDC,0XE6,0X94,0XAC,0XA8,0XDE,0X0A,0XE6,0X08,0XEE,0X28,0XEE,0X06,0XEE,0X26,

108140XEE,0X26,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108150XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108160XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,

108170XE6,0X07,0XEE,0X29,0XE6,0X2B,0XB4,0XE8,0X5A,0X20,0X52,0X00,0X52,0X22,0X52,0X03,

108180X5A,0X64,0X41,0XE3,0X8C,0X2E,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

108190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDA,0XA4,0X89,0XD5,0XEA,0XD5,0XC7,

108260XE5,0XE6,0XE5,0XE6,0XE5,0XC8,0XE5,0XC8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,

108270XE5,0XE8,0XED,0XE7,0XE6,0X07,0XE6,0X07,0XE5,0XE8,0XE6,0X08,0XEE,0X07,0XEE,0X07,

108280XEE,0X08,0XEE,0X08,0XED,0XE8,0XEE,0X08,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X49,

108290XA4,0X02,0X9B,0XE3,0X93,0XA4,0X9B,0XC6,0X93,0XC5,0X8B,0XA5,0X8B,0XA5,0X8B,0XA5,

108300X8B,0X85,0X83,0X65,0X7B,0X44,0X73,0X25,0X9C,0X8C,0XF7,0X5A,0XFF,0XFE,0XFF,0XFF,

108310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XBC,0XE6,0X74,

108320XAC,0XC8,0XDE,0X0A,0XE6,0X09,0XEE,0X08,0XEE,0X26,0XEE,0X26,0XEE,0X26,0XEE,0X07,

108330XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108340XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108350XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X29,

108360XE6,0X2A,0XB4,0XE7,0X52,0X20,0X4A,0X00,0X52,0X02,0X4A,0X03,0X52,0X64,0X41,0XC3,

108370X83,0XED,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108440XFF,0XDF,0XFF,0XDD,0XFF,0XBA,0XA4,0X8A,0XCD,0XAA,0XD5,0XC7,0XE5,0XE6,0XE5,0XC6,

108450XE5,0XC8,0XE5,0XE9,0XE6,0X08,0XDD,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

108460XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

108470XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X27,0XEE,0X48,0XEE,0X69,0XBC,0XA4,0X9B,0XC2,

108480XA4,0X05,0X9B,0XE6,0X9B,0XE5,0X93,0XC5,0X8B,0XA5,0X8B,0XA5,0X8B,0X85,0X8B,0X86,

108490X7B,0X44,0X73,0X25,0X94,0X2B,0XF7,0X39,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBC,0XE6,0X74,0XAC,0XC8,0XDE,0X0A,

108510XE6,0X09,0XEE,0X07,0XEE,0X06,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X07,0XEE,0X07,

108520XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108530XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108540XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X29,0XE6,0X2B,0XAC,0XA6,

108550X52,0X20,0X4A,0X01,0X4A,0X02,0X4A,0X03,0X52,0X44,0X41,0XC3,0X73,0X8B,0XFF,0XFD,

108560XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,

108630XFF,0XDB,0XAC,0XCB,0XC5,0X69,0XD5,0XC8,0XDD,0XE6,0XDD,0XC6,0XE5,0XC8,0XE5,0XE9,

108640XE6,0X08,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

108650XE6,0X07,0XE6,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

108660XEE,0X08,0XEE,0X28,0XEE,0X27,0XEE,0X69,0XCD,0X46,0X9B,0XC2,0XA4,0X04,0X9B,0XE5,

108670X9B,0XE5,0X93,0XC5,0X93,0XA5,0X93,0XA5,0X8B,0X85,0X8B,0XA6,0X83,0X65,0X7B,0X45,

108680X8B,0XEA,0XEF,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108690XFF,0XFF,0XFF,0XDF,0XFF,0XBC,0XE6,0X94,0XAC,0XC7,0XDE,0X2A,0XE5,0XE8,0XEE,0X08,

108700XEE,0X06,0XEE,0X26,0XEE,0X26,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108710XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108720XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108730XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X2B,0XA4,0X45,0X52,0X00,0X4A,0X01,

108740X49,0XE1,0X4A,0X03,0X4A,0X23,0X41,0XC3,0X63,0X2A,0XFF,0XDD,0XFF,0XFE,0XFF,0XFE,

108750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XB5,0X2D,

108820XC5,0X49,0XD5,0XC8,0XDD,0XC7,0XDD,0XC6,0XE5,0XC8,0XE5,0XC9,0XE5,0XE8,0XE5,0XE8,

108830XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

108840XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,

108850XEE,0X28,0XEE,0X69,0XDD,0XE8,0XA4,0X23,0X9B,0XE3,0XA4,0X25,0X9C,0X05,0X9B,0XE5,

108860X93,0XC5,0X93,0XA5,0X8B,0X85,0X8B,0XA5,0X83,0X85,0X7B,0X45,0X83,0XA8,0XE6,0XF8,

108870XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

108880XFF,0XBC,0XE6,0X94,0XAC,0XA7,0XE6,0X2A,0XE5,0XE8,0XEE,0X28,0XED,0XE6,0XEE,0X27,

108890XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

108900XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

108910XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,

108920XE6,0X07,0XE6,0X08,0XE6,0X2B,0X94,0X04,0X52,0X00,0X49,0XE0,0X41,0XC1,0X49,0XE2,

108930X4A,0X03,0X41,0XC3,0X62,0XE9,0XF7,0XBD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

108940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

108990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XC5,0X8F,0XBD,0X2A,0XDD,0XE9,

109010XDD,0XC7,0XDD,0XC7,0XE5,0XC8,0XDD,0XC8,0XDD,0XC8,0XDD,0XE8,0XE5,0XE8,0XE5,0XE8,

109020XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,

109030XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XE6,0X07,0XF6,0X69,

109040XEE,0X49,0XA4,0X22,0XAC,0X44,0XA4,0X04,0XA4,0X05,0XA4,0X26,0X93,0XC5,0X93,0XA5,

109050X93,0XA5,0X8B,0X85,0X83,0X64,0X7B,0X64,0X7B,0X88,0XE6,0XD7,0XFF,0XDE,0XFF,0XFF,

109060XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBC,0XE6,0X94,

109070XAC,0XA7,0XE6,0X4A,0XE5,0XE8,0XEE,0X28,0XED,0XE7,0XEE,0X27,0XEE,0X07,0XEE,0X07,

109080XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,

109090XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109100XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X29,

109110XDE,0X2B,0X93,0XC4,0X52,0X00,0X49,0XE0,0X49,0XC1,0X49,0XE2,0X49,0XE3,0X39,0XC3,

109120X5A,0XC9,0XF7,0XBD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109190XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XCD,0XF1,0XB4,0XE9,0XD5,0XEA,0XDD,0XC8,0XE5,0XC7,

109200XE5,0XC8,0XE5,0XC8,0XDD,0XC7,0XDD,0XE8,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

109210XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

109220XEE,0X27,0XEE,0X07,0XE6,0X07,0XEE,0X28,0XE5,0XE7,0XEE,0X49,0XF6,0X8A,0XB4,0XA3,

109230XAC,0X64,0XA4,0X24,0XA4,0X04,0XA4,0X25,0X9B,0XE5,0X9B,0XC5,0X9B,0XC5,0X8B,0XA4,

109240X8B,0X83,0X83,0X84,0X7B,0X66,0XD6,0X75,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

109250XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XBC,0XE6,0X73,0XAC,0XC7,0XDE,0X29,

109260XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109270XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109280XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109290XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X29,0XDE,0X0B,0X8B,0XA3,

109300X52,0X20,0X49,0XE1,0X49,0XC1,0X49,0XE2,0X41,0XE2,0X39,0XA2,0X5A,0XE9,0XF7,0XBD,

109310XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

109380XFF,0XFD,0XDE,0X74,0XAC,0XA9,0XD5,0XCA,0XDD,0XE9,0XE5,0XE7,0XE5,0XC8,0XE5,0XC8,

109390XDD,0XC8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

109400XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X07,

109410XE6,0X07,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XFE,0XCA,0XDD,0XE8,0XA4,0X22,0XB4,0XA5,

109420XAC,0X85,0XA4,0X25,0XA4,0X26,0X9B,0XE5,0X9B,0XE5,0X8B,0XA4,0X8B,0XC3,0X83,0XA4,

109430X73,0X45,0XC5,0XD2,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

109440XFF,0XFF,0XFF,0XDF,0XFF,0XBC,0XDE,0X73,0XB4,0XE7,0XDE,0X08,0XEE,0X28,0XE5,0XE7,

109450XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109460XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109470XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109480XEE,0X06,0XEE,0X07,0XE6,0X07,0XE6,0X29,0XDD,0XEA,0X83,0X63,0X52,0X00,0X49,0XC0,

109490X41,0XC1,0X41,0XC2,0X41,0XE2,0X39,0XA2,0X62,0XE9,0XF7,0XBD,0XFF,0XFE,0XFF,0XFF,

109500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XEF,0X17,

109570XAC,0XAA,0XD5,0XCB,0XDD,0XC8,0XE5,0XC7,0XE5,0XE7,0XE5,0XA7,0XE5,0XE8,0XE5,0XE8,

109580XE5,0XC7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE5,0XE7,

109590XE6,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,

109600XE6,0X08,0XEE,0X28,0XF6,0X89,0XEE,0X89,0XB4,0XA3,0XAC,0X83,0XB4,0X85,0XAC,0X45,

109610XA4,0X25,0XA4,0X26,0X9B,0XE5,0X93,0XC4,0X93,0XE4,0X8B,0XC4,0X7B,0X45,0XB5,0X2F,

109620XFF,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

109630XFF,0X9C,0XDE,0X32,0XB5,0X07,0XE6,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X27,0XEE,0X07,

109640XEE,0X08,0XE6,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

109650XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109660XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X06,0XEE,0X27,

109670XE6,0X07,0XEE,0X4A,0XD5,0XAA,0X83,0X83,0X52,0X00,0X49,0XC0,0X49,0XE2,0X41,0XA1,

109680X41,0XE2,0X39,0XA2,0X62,0XEA,0XF7,0XBD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0X59,0XAC,0XCB,0XCD,0X8B,

109760XDD,0XCA,0XDD,0XA7,0XE5,0XE7,0XE5,0XC6,0XE5,0XC7,0XE5,0XE8,0XE5,0XC7,0XE5,0XE8,

109770XE5,0XE8,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,

109780XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XE6,0X28,

109790XEE,0X69,0XF6,0XAA,0XCD,0X65,0XB4,0X83,0XB4,0XA4,0XAC,0X65,0XAC,0X25,0XAC,0X26,

109800XAC,0X26,0X9B,0XE5,0X93,0XE4,0X8B,0XC4,0X83,0X85,0X9C,0X8C,0XFF,0XBC,0XFF,0XFF,

109810XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBB,0XD6,0X31,

109820XBD,0X27,0XE6,0X28,0XEE,0X27,0XE6,0X06,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XE6,0X08,

109830XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

109840XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

109850XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X06,0XEE,0X27,0XEE,0X07,0XEE,0X2A,

109860XCD,0X69,0X83,0X43,0X52,0X00,0X49,0XC1,0X49,0XC2,0X41,0XA1,0X41,0XC2,0X39,0X82,

109870X6B,0X4B,0XF7,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

109940XF7,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0X9B,0XBD,0X2D,0XC5,0X2A,0XDD,0XCA,0XDD,0XA7,

109950XE5,0XC7,0XE5,0XC6,0XE5,0XC7,0XE5,0XE8,0XE5,0XC7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE7,

109960XE5,0XE7,0XE6,0X07,0XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X08,0XEE,0X07,0XE6,0X07,

109970XE6,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XE6,0X07,0XEE,0X48,0XFE,0XEA,

109980XE6,0X48,0XBC,0XC3,0XB4,0XA4,0XAC,0X65,0XB4,0X66,0XAC,0X26,0XAC,0X26,0X9B,0XE5,

109990X9C,0X05,0X93,0XE4,0X8B,0XC6,0X83,0XC9,0XF7,0X5A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XBB,0XD5,0XF0,0XC5,0X48,0XE6,0X28,

110010XEE,0X28,0XEE,0X06,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

110020XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

110030XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,

110040XEE,0X07,0XEE,0X27,0XE6,0X06,0XEE,0X27,0XEE,0X28,0XE6,0X09,0XC5,0X28,0X83,0X43,

110050X52,0X00,0X49,0XC1,0X49,0XC2,0X41,0XC2,0X41,0XC2,0X31,0X82,0X7B,0XAD,0XFF,0XDE,

110060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,

110130XFF,0XFF,0XFF,0XBC,0XCD,0XD1,0XB4,0XEA,0XD5,0XAA,0XDD,0XC8,0XE5,0XE7,0XE5,0XC6,

110140XE5,0XE7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

110150XE5,0XE8,0XE5,0XE8,0XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X07,0XE6,0X07,0XEE,0X27,

110160XEE,0X28,0XEE,0X28,0XEE,0X28,0XE6,0X28,0XE6,0X07,0XF6,0X89,0XFE,0XEA,0XCD,0X85,

110170XB4,0XC4,0XB4,0XA5,0XB4,0X86,0XAC,0X46,0XAC,0X47,0XA4,0X26,0XA4,0X25,0X93,0XE4,

110180X8B,0XE6,0X83,0XA8,0XE6,0XD8,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110190XFF,0XFF,0XFF,0XFE,0XFF,0XBB,0XCD,0XAF,0XC5,0X68,0XE6,0X28,0XEE,0X28,0XEE,0X07,

110200XEE,0X27,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,

110210XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

110220XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X47,

110230XE6,0X06,0XEE,0X27,0XEE,0X28,0XE6,0X09,0XB4,0XC7,0X83,0X43,0X52,0X01,0X41,0XC1,

110240X49,0XC2,0X41,0XC2,0X41,0XC2,0X31,0X82,0X83,0XED,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

110250XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,

110320XE6,0X95,0XAC,0XCB,0XD5,0XAB,0XE5,0XE9,0XE5,0XC6,0XE5,0XE6,0XE5,0XE7,0XE5,0XC7,

110330XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

110340XE6,0X08,0XE6,0X08,0XE6,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X07,

110350XEE,0X28,0XEE,0X48,0XE6,0X07,0XE6,0X27,0XFF,0X0A,0XEE,0X69,0XC5,0X25,0XBC,0XE5,

110360XBC,0XC6,0XB4,0X86,0XAC,0X46,0XAC,0X46,0XA4,0X45,0X9C,0X25,0X94,0X06,0X83,0XA7,

110370XCD,0XF3,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

110380XFF,0XDA,0XC5,0X8D,0XCD,0X88,0XE6,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X07,0XEE,0X07,

110390XEE,0X07,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

110400XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

110410XEE,0X07,0XEE,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X06,0XEE,0X27,

110420XEE,0X28,0XE6,0X0A,0XB4,0XA7,0X83,0X43,0X51,0XE1,0X41,0XC1,0X49,0XE2,0X41,0XC2,

110430X41,0XC2,0X31,0X61,0X84,0X0E,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XF7,0X38,0XAC,0XCB,

110510XCD,0X6B,0XDD,0XC9,0XDD,0XA6,0XE6,0X07,0XDD,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

110520XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

110530XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XE6,0X28,0XEE,0X48,

110540XE6,0X27,0XE6,0X27,0XFE,0XEA,0XFE,0XEA,0XD5,0XA6,0XBC,0XE5,0XB4,0XA5,0XBC,0XE7,

110550XB4,0X86,0XAC,0X46,0XAC,0X65,0XA4,0X65,0X9C,0X05,0X8B,0XA6,0XA4,0XCE,0XFF,0XFD,

110560XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XD9,0XC5,0X8C,

110570XCD,0XA8,0XE6,0X49,0XEE,0X09,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

110580XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

110590XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,

110600XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X47,0XEE,0X07,0XEE,0X27,0XEE,0X49,0XE5,0XE9,

110610XB4,0XA7,0X7B,0X03,0X52,0X01,0X49,0XC1,0X49,0XE2,0X41,0XC2,0X41,0XC2,0X31,0X61,

110620X94,0X90,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBD,0XFF,0X9A,0XBD,0X4F,0XBD,0X2A,0XD5,0XA9,

110700XDD,0XA6,0XE6,0X07,0XDD,0XC7,0XE6,0X08,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,

110710XE6,0X06,0XE6,0X06,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,

110720XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XE6,0X28,0XEE,0X48,0XEE,0X48,0XE6,0X27,

110730XF6,0X88,0XFF,0X0B,0XEE,0X69,0XCD,0X66,0XB4,0XA4,0XC4,0XE6,0XBC,0XC7,0XB4,0X86,

110740XAC,0X64,0XA4,0X64,0X9C,0X45,0X94,0X27,0X94,0X0A,0XF7,0X7A,0XFF,0XDD,0XFF,0XFF,

110750XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,0XFF,0XB7,0XC5,0XAC,0XCD,0XA8,0XE6,0X49,

110760XED,0XE9,0XF6,0X09,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

110770XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

110780XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X07,0XEE,0X07,

110790XEE,0X07,0XF6,0X47,0XEE,0X07,0XEE,0X27,0XF6,0X49,0XDD,0XA8,0XB4,0XC7,0X72,0XC2,

110800X52,0X01,0X49,0XE2,0X49,0XE2,0X41,0XC2,0X41,0XE2,0X31,0X82,0XB5,0X74,0XFF,0XFF,

110810XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

110880XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XD6,0X33,0XB4,0XEA,0XD5,0XAA,0XDD,0XC7,0XDD,0XE6,

110890XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

110900XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,

110910XEE,0X28,0XEE,0X28,0XEE,0X48,0XE6,0X07,0XEE,0X27,0XE6,0X27,0XE6,0X47,0XFE,0XEA,

110920XFF,0X4D,0XE6,0X49,0XC5,0X25,0XBC,0XC5,0XB4,0X85,0XB4,0X85,0XB4,0XC5,0XB4,0XC6,

110930XAC,0XA6,0X9C,0X47,0X8B,0XE8,0XDE,0X55,0XFF,0XDC,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,

110940XFF,0XFC,0XFF,0XFA,0XFF,0X95,0XCD,0XAB,0XCD,0XA8,0XEE,0X49,0XE5,0XE8,0XEE,0X09,

110950XEE,0X08,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,

110960XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

110970XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XF6,0X48,

110980XEE,0X27,0XEE,0X27,0XF6,0X69,0XD5,0X67,0XBC,0XE8,0X62,0X61,0X52,0X01,0X52,0X02,

110990X49,0XE2,0X49,0XC2,0X41,0XE2,0X39,0X82,0XC6,0X16,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111000XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

111070XFF,0XFD,0XEF,0X37,0XBD,0X6D,0XC5,0X8A,0XDD,0XC9,0XDD,0XC7,0XE5,0XE7,0XE5,0XC7,

111080XE5,0XC7,0XE5,0XE7,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

111090XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X28,

111100XEE,0X28,0XEE,0X07,0XEE,0X48,0XEE,0X68,0XE6,0X27,0XEE,0X68,0XFF,0X0C,0XFF,0X4D,

111110XE6,0X29,0XB4,0XC4,0XBC,0XE5,0XB4,0X85,0XAC,0X84,0XAC,0X84,0XA4,0X84,0XA4,0X86,

111120X9C,0X48,0XAC,0XED,0XFF,0XBA,0XFF,0XBB,0XFF,0XDC,0XFF,0XBB,0XFF,0XFA,0XFF,0XD6,

111130XFF,0X72,0XDE,0X2B,0XDE,0X09,0XE6,0X29,0XE5,0XE8,0XEE,0X08,0XEE,0X07,0XEE,0X07,

111140XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

111150XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,

111160XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X26,0XF6,0X67,

111170XEE,0X28,0XD5,0X68,0XB4,0XA8,0X62,0X40,0X51,0XE1,0X52,0X23,0X4A,0X02,0X4A,0X03,

111180X49,0XC3,0X41,0XC4,0XDE,0X99,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,

111190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XBA,

111260XCE,0X31,0XBD,0X4A,0XD5,0XA9,0XE5,0XE9,0XE5,0XC7,0XE5,0XC8,0XE5,0XC7,0XE5,0XE8,

111270XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

111280XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XF6,0X48,

111290XEE,0X27,0XE6,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X6A,0XFF,0X0C,0XFF,0X0C,0XE6,0X09,

111300XB4,0XA4,0XB4,0XC5,0XB4,0XA4,0XAC,0X84,0XAC,0XC5,0XA4,0X64,0XA4,0X87,0XAC,0X8A,

111310XEE,0XB5,0XFF,0XBA,0XFF,0XB9,0XFF,0XD8,0XF7,0X55,0XFF,0X93,0XEE,0XEE,0XE6,0X4A,

111320XE6,0X29,0XE6,0X29,0XE6,0X28,0XEE,0X48,0XF6,0X27,0XEE,0X07,0XF6,0X07,0XEE,0X07,

111330XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

111340XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,

111350XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X26,0XF6,0X67,0XEE,0X28,0XD5,0X88,

111360XAC,0X66,0X5A,0X40,0X52,0X01,0X52,0X23,0X52,0X02,0X4A,0X03,0X41,0XC3,0X52,0X26,

111370XF7,0X5C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XFC,0XEE,0XF5,0XC5,0X6D,

111450XCD,0X8A,0XDD,0XCA,0XDD,0XA8,0XE5,0XC8,0XE5,0XC8,0XE5,0XC8,0XE5,0XE8,0XE5,0XE8,

111460XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

111470XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X08,0XEE,0X28,0XEE,0X48,0XEE,0X47,0XEE,0X47,

111480XEE,0X47,0XE6,0X48,0XE6,0X48,0XEE,0X8A,0XFE,0XEB,0XFF,0XAE,0XEE,0XAB,0XCD,0X87,

111490XAC,0X62,0XA4,0X62,0XAC,0X83,0XAC,0X84,0X9C,0X24,0XA4,0X67,0XC5,0X6D,0XFF,0X56,

111500XFF,0X55,0XFF,0X34,0XEE,0XD0,0XEE,0XCE,0XE6,0X4B,0XE6,0X4A,0XE6,0X49,0XE6,0X28,

111510XEE,0X28,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X08,0XEE,0X28,

111520XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

111530XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

111540XEE,0X28,0XEE,0X28,0XEE,0X47,0XF6,0X68,0XE6,0X08,0XD5,0XA9,0X93,0XC4,0X5A,0X40,

111550X5A,0X22,0X5A,0X42,0X52,0X02,0X4A,0X02,0X41,0XC3,0X62,0XC8,0XFF,0XFE,0XFF,0XFF,

111560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111630XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XFF,0X99,0XDE,0X31,0XC5,0X4A,0XD5,0XCA,

111640XDD,0XC9,0XE5,0XC8,0XE5,0XC8,0XE5,0XC8,0XE5,0XC8,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,

111650XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,

111660XEE,0X08,0XEE,0X28,0XF6,0X48,0XEE,0X07,0XEE,0X47,0XF6,0X67,0XE6,0X26,0XE6,0X27,

111670XEE,0X68,0XE6,0X28,0XEE,0X69,0XEE,0XAA,0XFF,0X2D,0XFF,0X2D,0XFE,0XEC,0XE6,0X49,

111680XC5,0X65,0XCD,0X66,0XD5,0XC9,0XDE,0X0C,0XE6,0X4E,0XFF,0X12,0XF6,0XD0,0XEE,0X8E,

111690XE6,0X4C,0XDD,0XE9,0XE6,0X29,0XE6,0X49,0XE6,0X28,0XE6,0X28,0XEE,0X47,0XEE,0X27,

111700XEE,0X07,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

111710XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

111720XEE,0X27,0XEE,0X27,0XF6,0X27,0XEE,0X27,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

111730XEE,0X26,0XEE,0X47,0XE5,0XE8,0XD5,0XA9,0X83,0X42,0X62,0X61,0X5A,0X42,0X5A,0X43,

111740X52,0X22,0X52,0X02,0X41,0XC3,0X7B,0XAC,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

111750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111820XFF,0XDE,0XFF,0XBC,0XFF,0XFB,0XF7,0X36,0XBD,0X4B,0XD5,0XEB,0XD5,0XC8,0XDD,0XE7,

111830XE5,0XC6,0XE5,0XC6,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE9,0XE5,0XE8,

111840XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X28,

111850XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X28,0XE6,0X48,

111860XE6,0X28,0XE6,0X49,0XEE,0X8A,0XF6,0XAA,0XFF,0X2C,0XFF,0X4C,0XFF,0X6D,0XFF,0X6D,

111870XFF,0X4D,0XFF,0X0D,0XFE,0XEE,0XEE,0X4C,0XE5,0XEA,0XEE,0X2A,0XE6,0X09,0XEE,0X48,

111880XE6,0X28,0XE6,0X28,0XE6,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X26,0XF6,0X47,0XF6,0X27,

111890XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

111900XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

111910XF6,0X27,0XEE,0X27,0XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X48,

111920XE6,0X08,0XD5,0X89,0X7A,0XE1,0X6A,0XA2,0X5A,0X62,0X62,0X83,0X52,0X43,0X52,0X43,

111930X41,0XE3,0XA5,0X11,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

111990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,

112010XFF,0XDC,0XFF,0X99,0XE6,0XB3,0XB5,0X09,0XD6,0X0A,0XD5,0XC7,0XDD,0XE6,0XE5,0XE6,

112020XE5,0XE6,0XED,0XE7,0XED,0XE8,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XEE,0X07,

112030XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X47,

112040XEE,0X27,0XEE,0X26,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X49,0XEE,0X48,0XE6,0X48,

112050XE6,0X28,0XE6,0X48,0XE6,0X48,0XE6,0X48,0XEE,0X68,0XE6,0X48,0XEE,0X28,0XE6,0X28,

112060XEE,0X49,0XEE,0X29,0XEE,0X08,0XF6,0X28,0XEE,0X07,0XEE,0X47,0XEE,0X27,0XEE,0X47,

112070XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X68,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112080XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112090XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XEE,0X27,

112100XF6,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XE6,0X29,0XC5,0X07,

112110X72,0XC1,0X72,0XC2,0X62,0X63,0X62,0XA4,0X5A,0X63,0X52,0X63,0X41,0XC2,0XCE,0X35,

112120XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFD,

112200XF7,0X37,0XDE,0X50,0XBD,0X69,0XD6,0X08,0XDD,0XE6,0XDD,0XE5,0XE5,0XE6,0XE5,0XE6,

112210XED,0XE7,0XED,0XE7,0XED,0XE7,0XE5,0XE7,0XED,0XE8,0XEE,0X08,0XEE,0X08,0XEE,0X07,

112220XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112230XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XE6,0X48,0XEE,0X48,0XEE,0X48,

112240XE6,0X48,0XEE,0X48,0XE6,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X07,0XF6,0X48,

112250XF6,0X27,0XEE,0X07,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X46,

112260XEE,0X46,0XF6,0X47,0XF6,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

112270XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112280XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,

112290XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X48,0XE6,0X2A,0XAC,0X65,0X72,0XE1,0X72,0XE3,

112300X6A,0XA3,0X62,0XA4,0X5A,0X83,0X52,0X64,0X52,0X65,0XE7,0X19,0XFF,0XFE,0XFF,0XFF,

112310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112380XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDD,0XFF,0XDC,0XF7,0X56,

112390XCD,0XCD,0XCD,0XC9,0XD5,0XE7,0XDD,0XE6,0XE5,0XE6,0XE5,0XE6,0XE5,0XE6,0XED,0XE7,

112400XED,0XE7,0XED,0XE7,0XED,0XE8,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,

112410XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112420XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X69,0XEE,0X28,0XEE,0X28,0XEE,0X48,0XE6,0X28,

112430XEE,0X48,0XEE,0X68,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,

112440XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X47,0XEE,0X47,

112450XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

112460XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112470XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X47,

112480XEE,0X47,0XEE,0X69,0XE6,0X4A,0X9C,0X04,0X7A,0XE2,0X72,0XE3,0X72,0XE4,0X62,0XA4,

112490X62,0XC4,0X52,0X64,0X73,0X69,0XF7,0X9B,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112570XFF,0XFE,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XF7,0X35,0XD6,0X0E,

112580XCD,0XCA,0XD5,0XC7,0XDD,0XE7,0XDD,0XA6,0XF6,0X48,0XED,0XE7,0XED,0XE7,0XED,0XE7,

112590XED,0XE8,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XE6,0X07,0XEE,0X28,

112600XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

112610XF6,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,

112620XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XF6,0X47,0XEE,0X27,0XF6,0X27,0XF6,0X27,

112630XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112640XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,

112650XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X47,0XF6,0X27,0XF6,0X27,

112660XEE,0X27,0XF6,0X48,0XEE,0X27,0XF6,0X48,0XEE,0X27,0XEE,0X47,0XF6,0X68,0XEE,0X49,

112670XDD,0XE9,0X93,0XA2,0X7B,0X02,0X7A,0XE3,0X7B,0X25,0X62,0XA4,0X62,0XA4,0X5A,0X84,

112680X9C,0XAE,0XF7,0XBC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

112760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0X9A,0XEE,0XF4,0XD6,0X0D,0XD5,0XCA,

112770XDD,0XE8,0XDD,0XE7,0XE5,0XE7,0XE5,0XE7,0XEE,0X07,0XED,0XE7,0XE5,0XE7,0XEE,0X07,

112780XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X48,0XEE,0X28,0XEE,0X28,

112790XEE,0X27,0XEE,0X27,0XEE,0X26,0XEE,0X26,0XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X47,

112800XF6,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XF6,0X68,0XEE,0X27,

112810XEE,0X47,0XEE,0X47,0XEE,0X27,0XF6,0X47,0XF6,0X48,0XEE,0X28,0XF6,0X27,0XF6,0X27,

112820XF6,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

112830XEE,0X28,0XEE,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

112840XF6,0X27,0XF6,0X27,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X27,0XF6,0X48,

112850XF6,0X27,0XF6,0X47,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X6A,0XCD,0X68,0X8B,0X82,

112860X83,0X23,0X7B,0X03,0X7B,0X05,0X6A,0XC4,0X62,0XE5,0X5A,0XC6,0XB5,0X92,0XFF,0XDD,

112870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

112940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,

112950XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XBA,0XEE,0XD3,0XD6,0X0D,0XD5,0XC9,0XDE,0X08,

112960XDD,0XE7,0XDD,0XE6,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

112970XEE,0X27,0XEE,0X07,0XE6,0X07,0XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

112980XEE,0X26,0XEE,0X46,0XEE,0X46,0XEE,0X46,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

112990XF6,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X47,0XEE,0X48,0XF6,0X68,0XEE,0X47,

113000XEE,0X47,0XEE,0X48,0XEE,0X27,0XF6,0X68,0XEE,0X27,0XF6,0X27,0XEE,0X27,0XEE,0X27,

113010XF6,0X27,0XF6,0X28,0XEE,0X28,0XF6,0X48,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,

113020XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X27,

113030XF6,0X48,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X48,0XEE,0X47,

113040XF6,0X68,0XEE,0X48,0XEE,0X28,0XEE,0X8A,0XB4,0XC6,0X8B,0XA3,0X83,0X63,0X83,0X44,

113050X72,0XE4,0X73,0X05,0X62,0XC5,0X6B,0X27,0XD6,0X97,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

113060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113130XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

113140XFF,0XDE,0XFF,0XDD,0XFF,0XDA,0XEF,0X14,0XCE,0X0C,0XCD,0XC9,0XDE,0X28,0XE6,0X28,

113150XDD,0XE7,0XE6,0X07,0XE6,0X07,0XEE,0X06,0XEE,0X06,0XEE,0X06,0XEE,0X27,0XEE,0X27,

113160XEE,0X28,0XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X26,0XEE,0X46,

113170XEE,0X46,0XEE,0X46,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,

113180XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X68,0XEE,0X48,

113190XEE,0X48,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,

113200XEE,0X28,0XF6,0X48,0XEE,0X28,0XEE,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,

113210XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,

113220XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X48,0XF6,0X47,0XF6,0X68,0XEE,0X48,

113230XEE,0X69,0XEE,0X6A,0XA4,0X44,0X93,0XC3,0X8B,0X84,0X8B,0X85,0X7B,0X04,0X7B,0X26,

113240X62,0XC5,0X83,0XEB,0XEF,0X5A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBF,0XFF,0XDE,

113330XFF,0XFD,0XFF,0XB9,0XF7,0X74,0XDE,0XAE,0XCD,0XE9,0XD5,0XE7,0XE6,0X28,0XE6,0X07,

113340XE6,0X07,0XE6,0X07,0XE6,0X06,0XE6,0X06,0XEE,0X26,0XEE,0X27,0XEE,0X28,0XEE,0X48,

113350XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X67,

113360XEE,0X47,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XF6,0X48,0XF6,0X47,0XEE,0X47,

113370XEE,0X06,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X88,0XFE,0XA9,0XD5,0X84,

113380XEE,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,

113390XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

113400XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,

113410XF6,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X47,0XEE,0X47,0XEE,0X68,0XF6,0X8A,0XDD,0XE9,

113420X9B,0XE3,0X93,0XE4,0X8B,0X84,0X93,0XA6,0X83,0X45,0X83,0X66,0X6B,0X06,0XA4,0XEF,

113430XF7,0X9B,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,

113520XFF,0XD9,0XEF,0X34,0XEF,0X10,0XDE,0X2C,0XD5,0XC9,0XDD,0XC8,0XE5,0XE8,0XE6,0X08,

113530XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XE6,0X07,0XE6,0X07,0XEE,0X28,0XEE,0X28,

113540XF6,0X48,0XF6,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X48,0XEE,0X47,0XEE,0X28,

113550XF6,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X47,0XF6,0X47,0XF6,0X68,0XEE,0X47,

113560XF6,0X68,0XFE,0XA9,0XF6,0X68,0XE5,0XC5,0XDD,0XA4,0XC4,0XC1,0XF6,0X47,0XF6,0X47,

113570XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

113580XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,

113590XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,

113600XF6,0X48,0XF6,0X47,0XEE,0X47,0XF6,0X89,0XF6,0X8A,0XC5,0X27,0X9B,0XE3,0X9C,0X05,

113610X93,0XA5,0X93,0XA6,0X8B,0X86,0X83,0X66,0X7B,0X68,0XC5,0XF3,0XFF,0XDC,0XFF,0XFE,

113620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113700XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFB,

113710XFF,0XB8,0XEE,0XD3,0XE6,0X4F,0XE6,0X0D,0XDD,0XEA,0XE5,0XE9,0XE6,0X08,0XE6,0X07,

113720XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X28,

113730XEE,0X28,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XF6,0X28,

113740XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XFE,0X88,0XEE,0X07,0XE5,0XC5,

113750XE5,0XA5,0XEE,0X06,0XE5,0XC5,0XDD,0XA4,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

113760XF6,0X48,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,

113770XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X27,

113780XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X47,

113790XEE,0X47,0XFE,0XCA,0XEE,0X49,0XB4,0XA5,0X9C,0X24,0X9C,0X05,0X9B,0XE6,0X93,0XA6,

113800X93,0XC7,0X7B,0X46,0X94,0X4B,0XE6,0XD7,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

113880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

113890XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XFF,0XBC,0XFF,0X9A,

113900XFF,0X78,0XF6,0XD3,0XE6,0X4E,0XEE,0X4C,0XE6,0X0A,0XDD,0XE8,0XDD,0XE8,0XE6,0X07,

113910XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X29,

113920XEE,0X29,0XEE,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X29,0XF6,0X69,0XFE,0X69,

113930XFE,0X68,0XF6,0X68,0XF6,0X27,0XE5,0XC6,0XE5,0XA6,0XF6,0X48,0XF6,0X48,0XFE,0X89,

113940XDD,0XA5,0XE5,0XC5,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

113950XF6,0X48,0XF6,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

113960XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X27,

113970XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XFE,0XEB,

113980XDD,0XE8,0XAC,0X43,0XA4,0X64,0X94,0X04,0XA4,0X26,0X93,0XA5,0X9C,0X08,0X83,0X67,

113990XB5,0X2F,0XF7,0X9A,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

114080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XFF,0XBC,0XFF,0XBB,

114090XFF,0X56,0XF7,0X12,0XEE,0XAF,0XE6,0X8D,0XE6,0X6C,0XE6,0X6A,0XE6,0X49,0XE6,0X48,

114100XE6,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XF6,0X49,0XEE,0X48,

114110XEE,0X68,0XF6,0X88,0XF6,0X89,0XFE,0X6A,0XFE,0X4A,0XFE,0X49,0XFE,0X48,0XF6,0X47,

114120XEE,0X27,0XF6,0X68,0XF6,0X69,0XFE,0XAA,0XFE,0XAA,0XEE,0X48,0XD5,0X64,0XF6,0X27,

114130XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X27,

114140XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,

114150XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X48,0XF6,0X48,

114160XF6,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X69,0XF6,0X8A,0XF6,0X8B,0XD5,0X67,0XAC,0X43,

114170XA4,0X64,0X9C,0X44,0XA4,0X66,0X93,0XE6,0X93,0XE7,0X8B,0XE9,0XCE,0X13,0XFF,0XDC,

114180XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114270XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDD,0XFF,0XDB,0XFF,0XB8,

114280XFF,0X96,0XF7,0X54,0XEE,0XF1,0XEE,0XCF,0XEE,0XAE,0XE6,0X8C,0XE6,0X6C,0XEE,0X8B,

114290XEE,0X8B,0XEE,0X6B,0XF6,0X8B,0XEE,0X6A,0XEE,0X4A,0XEE,0X49,0XE6,0X48,0XE6,0X07,

114300XE5,0XC7,0XE5,0XE8,0XEE,0X08,0XF6,0X28,0XFE,0X68,0XFE,0XA9,0XFE,0XA9,0XFE,0XCA,

114310XFE,0XCB,0XF6,0X8A,0XFE,0XAA,0XEE,0X48,0XDD,0X85,0XEE,0X07,0XF6,0X48,0XF6,0X48,

114320XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X27,

114330XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

114340XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XEE,0X28,0XF6,0X48,

114350XF6,0X48,0XEE,0X48,0XFE,0XCC,0XEE,0X4A,0XCD,0X26,0XB4,0X84,0XAC,0X84,0XA4,0X65,

114360XA4,0X66,0X94,0X06,0X93,0XE7,0XA4,0X8C,0XE6,0XF7,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,

114370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114460XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFB,

114470XFF,0XD9,0XFF,0XB8,0XFF,0X76,0XF7,0X14,0XDE,0X50,0XCD,0XAD,0XBD,0X2B,0XB4,0XE8,

114480XAC,0XC7,0XAC,0XE6,0XBD,0X07,0XB5,0X06,0XC5,0X67,0XD5,0XA8,0XE6,0X09,0XEE,0X4A,

114490XFE,0X8A,0XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XF6,0X89,0XEE,0X68,0XF6,0XCA,0XF6,0XAA,

114500XFE,0XCA,0XDD,0XC5,0XDD,0X64,0XFE,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,

114510XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

114520XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

114530XF6,0X47,0XF6,0X47,0XF6,0X48,0XEE,0X28,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XEE,0X48,

114540XFE,0XED,0XE5,0XC9,0XC4,0XE5,0XBC,0XE6,0XB4,0XA5,0XAC,0XA6,0XA4,0X66,0X9C,0X26,

114550X94,0X08,0XBD,0X70,0XFF,0XBB,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XFF,0XFC,

114660XFF,0XFC,0XFF,0XDB,0XFF,0XDB,0XFF,0XBA,0XEF,0X16,0XCD,0XF1,0XB5,0X2C,0X9C,0X68,

114670X94,0X47,0XA4,0X88,0XBD,0X2A,0XCD,0XAB,0XE6,0X2C,0XEE,0X6C,0XF6,0X8B,0XF6,0X8B,

114680XF6,0X8B,0XEE,0X8A,0XF6,0XAB,0XEE,0X8B,0XF6,0XAB,0XEE,0X4A,0XF6,0X8A,0XDD,0X85,

114690XE5,0XA5,0XF6,0X46,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

114700XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

114710XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

114720XF6,0X48,0XEE,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XFE,0X8A,0XFE,0XCC,0XDD,0X88,

114730XBC,0XC5,0XC5,0X07,0XBC,0XC6,0XB4,0XA6,0XAC,0XA7,0XA4,0X47,0X9C,0X6A,0XD6,0X53,

114740XFF,0XFC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

114850XFF,0XFE,0XFF,0XBD,0XFF,0XDD,0XFF,0XFC,0XFF,0XFC,0XFF,0XDA,0XEF,0X57,0XD6,0X53,

114860XBD,0X4F,0XAC,0XCC,0XA4,0X69,0XA4,0X87,0XB4,0XE8,0XC5,0X69,0XD5,0XEB,0XE6,0X4C,

114870XE6,0X6D,0XEE,0X8D,0XEE,0X8D,0XF6,0XAD,0XF6,0X6B,0XD5,0X66,0XEE,0X06,0XFE,0X67,

114880XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

114890XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

114900XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

114910XF6,0X47,0XF6,0X47,0XF6,0X89,0XFE,0XCB,0XEE,0X2A,0XD5,0X47,0XC4,0XC5,0XCD,0X07,

114920XC5,0X07,0XBC,0XA7,0XB4,0XC8,0X9C,0X48,0XB5,0X0D,0XEF,0X38,0XFF,0XFC,0XFF,0XFE,

114930XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

114990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,

115030XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

115040XFF,0XFF,0XFF,0XBE,0XFF,0XDE,0XFF,0XDD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XBB,

115050XFF,0X58,0XE6,0XB4,0XCD,0XF0,0XC5,0X8E,0XC5,0X8E,0XCD,0XCE,0XCD,0XCE,0XE6,0X91,

115060XF6,0XD1,0XF6,0XF0,0XE6,0X0B,0XD5,0X67,0XEE,0X28,0XF6,0X27,0XF6,0X48,0XF6,0X48,

115070XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X27,0XF6,0X27,

115080XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X48,

115090XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X68,

115100XFE,0XA9,0XFE,0XCB,0XDD,0XA8,0XD5,0X47,0XC5,0X06,0XCD,0X27,0XCD,0X28,0XBC,0XC7,

115110XB4,0XC9,0XA4,0X69,0XCD,0XF1,0XFF,0XFB,0XFF,0XFD,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

115120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115220XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

115230XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XBC,

115240XFF,0XBC,0XFF,0XDC,0XFF,0XDB,0XFF,0XBB,0XFF,0X9A,0XFF,0X99,0XFF,0X98,0XFF,0X75,

115250XE6,0X2E,0XD5,0X89,0XEE,0X4A,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115260XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115270XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115280XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XFE,0XA9,0XFE,0XCA,0XF6,0X49,

115290XD5,0X47,0XD5,0X47,0XCD,0X46,0XCD,0X26,0XCD,0X27,0XC4,0XE8,0XB4,0XA9,0XB4,0XEC,

115300XEF,0X17,0XFF,0XFC,0XFF,0XFE,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

115310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

115410XFF,0XFE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

115420XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

115430XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XFF,0XFD,0XFF,0XFB,0XF7,0X36,0XCD,0XCD,0XD5,0XAA,

115440XEE,0X6A,0XE6,0X07,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115450XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115460XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X28,0XF6,0X28,

115470XF6,0X48,0XF6,0X48,0XF6,0X47,0XFE,0XC9,0XFE,0XCA,0XDD,0XC7,0XCD,0X46,0XCD,0X46,

115480XCD,0X67,0XCD,0X46,0XCD,0X07,0XC5,0X08,0XB4,0XA9,0XC5,0X90,0XFF,0XFB,0XFF,0XDD,

115490XFF,0XFE,0XF7,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115610XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

115620XFF,0XDE,0XFF,0XFD,0XFF,0XFB,0XE6,0XD3,0XC5,0XAA,0XDE,0X2A,0XF6,0X8A,0XEE,0X48,

115630XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115640XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115650XEE,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X49,0XF6,0X49,0XF6,0X48,

115660XFE,0X89,0XFE,0XAA,0XFE,0X89,0XDD,0X86,0XD5,0X66,0XD5,0X67,0XCD,0X66,0XCD,0X67,

115670XCD,0X27,0XC5,0X08,0XBD,0X0C,0XEE,0XD6,0XFF,0XFD,0XFF,0XFE,0XF7,0XDE,0XFF,0XFF,

115680XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115800XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,

115810XFF,0X99,0XDE,0X70,0XBD,0X48,0XE6,0X69,0XEE,0X68,0XEE,0X68,0XF6,0X48,0XF6,0X48,

115820XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

115830XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,

115840XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X69,0XF6,0X28,0XF6,0X49,0XFE,0XAA,0XFE,0X89,

115850XEE,0X28,0XDD,0XA6,0XDD,0XA7,0XD5,0X66,0XD5,0X87,0XD5,0X67,0XCD,0X27,0XCD,0X4A,

115860XC5,0X6E,0XFF,0XDB,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

115870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

115990XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XF7,0X37,0XBD,0X4B,

116000XD5,0XE9,0XE6,0X69,0XE6,0X07,0XF6,0X89,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

116010XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

116020XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X67,0XF6,0X47,

116030XF6,0X48,0XF6,0X69,0XEE,0X28,0XF6,0X69,0XFE,0XCB,0XF6,0X69,0XE5,0XE7,0XDD,0XC6,

116040XDD,0XE7,0XD5,0X66,0XD5,0X87,0XD5,0X88,0XCD,0X49,0XBD,0X0A,0XF7,0X36,0XFF,0XFC,

116050XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

116060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

116180XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBC,0XE6,0X93,0XB5,0X09,0XE6,0X6A,0XEE,0X68,

116190XEE,0X68,0XEE,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

116200XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

116210XF6,0X48,0XF6,0X47,0XF6,0X68,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X48,

116220XF6,0X69,0XFE,0XAA,0XFE,0XCB,0XEE,0X49,0XE5,0XE7,0XE5,0XE7,0XDD,0XC6,0XDD,0XC7,

116230XD5,0X67,0XD5,0XA9,0XC5,0X29,0XD6,0X0F,0XFF,0XB9,0XFF,0XDC,0XFF,0XFF,0XFF,0XFF,

116240XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,

116370XFF,0XDE,0XFF,0XBA,0XC5,0X6D,0XC5,0X89,0XE6,0X69,0XEE,0X68,0XEE,0X48,0XEE,0X08,

116380XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

116390XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

116400XF6,0X48,0XF6,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0XA9,0XFE,0XCA,

116410XFE,0X8A,0XEE,0X49,0XEE,0X07,0XE5,0XE7,0XDD,0XC5,0XDE,0X07,0XD5,0XA8,0XCD,0X8A,

116420XC5,0X4C,0XFF,0X56,0XFF,0XBA,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116430XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XF7,0X37,

116560XAC,0XC9,0XDE,0X2A,0XEE,0X68,0XF6,0X67,0XEE,0X07,0XF6,0X48,0XF6,0X48,0XF6,0X47,

116570XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

116580XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X68,

116590XEE,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XFE,0XC9,0XFE,0XCA,0XF6,0X49,0XF6,0X49,

116600XEE,0X28,0XDE,0X06,0XE6,0X26,0XDD,0XE6,0XDD,0XCA,0XCD,0X6B,0XDE,0X31,0XFF,0X78,

116610XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116740XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDD,0XFF,0XBB,0XC5,0X8F,0XBD,0X6A,0XE6,0X8B,

116750XE6,0X47,0XEE,0X46,0XF6,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

116760XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

116770XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,

116780XF6,0X67,0XFE,0X87,0XFE,0XC9,0XFE,0XA9,0XF6,0X48,0XF6,0X49,0XEE,0X48,0XE6,0X26,

116790XE6,0X47,0XDD,0XE6,0XE5,0XEB,0XDD,0XCD,0XF7,0X16,0XFF,0XBB,0XFF,0XFC,0XFF,0XFE,

116800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

116930XFF,0XDF,0XFF,0XDD,0XF7,0X17,0XA4,0X89,0XD5,0XEA,0XE6,0X69,0XEE,0X67,0XEE,0X46,

116940XF6,0X47,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

116950XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

116960XF6,0X48,0XF6,0X48,0XF6,0X48,0XEE,0X48,0XF6,0X68,0XF6,0X87,0XFE,0X88,0XFE,0XC8,

116970XFE,0XC8,0XF6,0X88,0XF6,0X68,0XEE,0X48,0XEE,0X68,0XEE,0X47,0XE6,0X67,0XDE,0X08,

116980XDE,0X0C,0XEE,0XB2,0XFF,0X99,0XFF,0XDC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

116990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0X3A,

117120XD5,0XD1,0XC5,0X4A,0XE6,0X4A,0XEE,0X89,0XE6,0X26,0XF6,0XA7,0XED,0XE5,0XFE,0X68,

117130XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117140XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,

117150XF6,0X47,0XEE,0X47,0XF6,0X68,0XF6,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XA8,0XFE,0X88,

117160XF6,0X68,0XEE,0X28,0XEE,0X48,0XF6,0X89,0XE6,0X49,0XE6,0X4B,0XDE,0X2E,0XFF,0X56,

117170XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117180XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9D,0XFF,0X59,0XA4,0X29,0XE6,0X2C,

117310XEE,0X49,0XEE,0X67,0XEE,0X66,0XEE,0X46,0XFE,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117320XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117330XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

117340XF6,0X68,0XF6,0X88,0XFE,0XC9,0XFE,0XA9,0XFE,0XA8,0XF6,0X88,0XFE,0X68,0XF6,0X48,

117350XF6,0X69,0XEE,0X6A,0XE6,0X4A,0XDE,0X4D,0XEE,0XF3,0XFF,0XB9,0XFF,0XFD,0XFF,0XFF,

117360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFE,

117490XFF,0XFF,0XFF,0XDD,0XFF,0X9A,0XD5,0XD0,0XC5,0X4A,0XEE,0X4B,0XEE,0X48,0XEE,0X26,

117500XEE,0X47,0XF6,0X67,0XEE,0X27,0XF6,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117510XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117520XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X88,0XFE,0XA9,

117530XFE,0XA9,0XFE,0XA9,0XFE,0X88,0XF6,0X68,0XFE,0X69,0XF6,0X6A,0XF6,0X6A,0XEE,0X4B,

117540XDE,0X2C,0XE6,0XB0,0XFF,0X97,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,

117680XEF,0X16,0XB4,0XCA,0XE6,0X0B,0XEE,0X29,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X68,

117690XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117700XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117710XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X67,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

117720XF6,0X88,0XF6,0X88,0XF6,0X69,0XFE,0X8A,0XEE,0X4A,0XEE,0X4C,0XE6,0X6E,0XF7,0X34,

117730XFF,0XD9,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XBA,0XC5,0X8D,0XCD,0XAA,

117870XE6,0X08,0XF6,0X48,0XF6,0X26,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XEE,0X47,

117880XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

117890XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,

117900XF6,0X67,0XFE,0X88,0XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XF6,0X88,0XF6,0X89,0XFE,0X89,

117910XFE,0X8A,0XF6,0X6A,0XEE,0X6B,0XE6,0X6D,0XF7,0X12,0XFF,0XD8,0XFF,0XDB,0XFF,0XFE,

117920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

117990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118050XFF,0XDF,0XFF,0XDD,0XFF,0XDC,0XDE,0X94,0XB5,0X2A,0XE6,0X4B,0XEE,0X48,0XF6,0X26,

118060XF6,0X26,0XF6,0X06,0XF6,0X27,0XF6,0X47,0XEE,0X26,0XF6,0X66,0XF6,0X47,0XF6,0X47,

118070XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

118080XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X68,0XFE,0XA8,

118090XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0X89,0XFE,0X8A,0XF6,0X8A,0XFE,0XAB,0XEE,0X6A,

118100XEE,0XAD,0XEE,0XB0,0XFF,0XB7,0XFF,0XFB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,

118240XF7,0X78,0XC5,0XAE,0XD5,0XCB,0XE6,0X29,0XEE,0X26,0XF6,0X46,0XFE,0X47,0XFE,0X48,

118250XF6,0X28,0XF6,0X27,0XF6,0X87,0XEE,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,

118260XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

118270XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

118280XFE,0XA9,0XFE,0X8A,0XFE,0X8B,0XF6,0X6B,0XF6,0X8B,0XEE,0X6B,0XF6,0XEF,0XF7,0X54,

118290XFF,0XFA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

118300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XDB,0XDE,0X72,0XBD,0X4B,

118430XDE,0X2A,0XEE,0X48,0XF6,0X67,0XF6,0X26,0XF6,0X07,0XF6,0X28,0XF6,0X28,0XF6,0X48,

118440XF6,0X66,0XEE,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

118450XF6,0X47,0XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

118460XF6,0X87,0XFE,0XA8,0XFE,0XC9,0XFE,0XA9,0XFE,0X89,0XFE,0X8A,0XFE,0X8A,0XFE,0XAB,

118470XFE,0X8B,0XF6,0X6B,0XEE,0X6C,0XEE,0X8E,0XF7,0X12,0XFF,0XD8,0XFF,0XFC,0XFF,0XDE,

118480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118600XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118610XFF,0XDE,0XFF,0XFD,0XFF,0XDB,0XEF,0X16,0XBD,0X4C,0XD5,0XCA,0XE6,0X49,0XF6,0X67,

118620XEE,0X45,0XF6,0X46,0XF6,0X48,0XF6,0X28,0XF6,0X29,0XF6,0X28,0XEE,0X47,0XF6,0X66,

118630XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,

118640XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XFE,0X88,0XFE,0XC9,

118650XFE,0XA9,0XFE,0X89,0XFE,0X8A,0XFE,0X6A,0XFE,0X6A,0XFE,0X6A,0XFE,0X8B,0XEE,0X4C,

118660XE6,0X4E,0XFF,0X34,0XFF,0XB8,0XFF,0XDB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118780XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118790XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

118800XFF,0X98,0XC5,0X8E,0XC5,0X6A,0XE6,0X2A,0XEE,0X48,0XF6,0X87,0XF6,0X66,0XF6,0X46,

118810XF6,0X48,0XF6,0X29,0XF6,0X29,0XF6,0X48,0XF6,0X47,0XF6,0X66,0XF6,0X67,0XF6,0X67,

118820XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,

118830XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XFE,0XA8,0XFE,0XC9,0XFE,0XE9,0XFE,0XA9,

118840XFE,0X6A,0XFE,0X8B,0XFE,0X8A,0XFE,0XAB,0XF6,0X8C,0XF6,0X8E,0XF6,0XF3,0XFF,0X98,

118850XFF,0XDB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

118970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

118980XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XBB,0XDE,0X52,0XAC,0XA9,

118990XE6,0X0B,0XEE,0X49,0XF6,0X67,0XEE,0X25,0XF6,0X66,0XF6,0X66,0XF6,0X47,0XF6,0X48,

119000XF6,0X48,0XF6,0X48,0XF6,0X67,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

119010XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,

119020XF6,0X88,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XC9,0XFE,0XC9,0XFE,0X89,0XFE,0XCA,

119030XFE,0XCA,0XF6,0XAB,0XEE,0X8D,0XF6,0XD1,0XFF,0X97,0XFF,0XDB,0XFF,0XFD,0XFF,0XFF,

119040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

119170XFF,0XBD,0XFF,0XFD,0XFF,0XBB,0XE6,0XD5,0XB4,0XEB,0XDD,0XCC,0XEE,0X6B,0XEE,0X28,

119180XFE,0X67,0XE5,0XE4,0XFE,0X66,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X68,

119190XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X67,

119200XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XFE,0X68,0XFE,0X89,0XFE,0XAA,

119210XFE,0XAA,0XFE,0XAA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XF6,0XA8,0XF6,0XA9,0XEE,0X8B,

119220XF6,0XF0,0XFF,0X55,0XFF,0XDA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119350XFF,0XFF,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XFF,0XFB,

119360XEE,0XF6,0XBD,0X2D,0XCD,0XAC,0XF6,0X8C,0XEE,0X28,0XF6,0X47,0XF6,0X46,0XF6,0X66,

119370XF6,0X66,0XF6,0X67,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X67,0XF6,0X66,0XF6,0X66,

119380XF6,0X66,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,

119390XF6,0X67,0XF6,0X68,0XFE,0X68,0XFE,0X89,0XFE,0XAA,0XFE,0XAB,0XFE,0XAB,0XFE,0XAB,

119400XFE,0XAA,0XFE,0XC9,0XFE,0XE9,0XEE,0XC9,0XEE,0XAB,0XEE,0XEF,0XFF,0X75,0XFF,0XB9,

119410XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119530XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

119540XF7,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDD,0XFF,0XFC,0XEE,0XF6,0XD5,0XEF,0XBD,0X29,

119550XF6,0X8C,0XEE,0X49,0XF6,0X48,0XF6,0X46,0XEE,0X05,0XFE,0X87,0XF6,0X46,0XF6,0X47,

119560XFE,0X48,0XFE,0X48,0XF6,0X48,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X47,0XF6,0X47,

119570XF6,0X67,0XF6,0X67,0XF6,0X46,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X68,

119580XFE,0X89,0XFE,0X8A,0XFE,0XAA,0XFE,0X8B,0XFE,0X8B,0XFE,0X8B,0XFE,0X8A,0XF6,0XAA,

119590XF6,0XC9,0XEE,0XEB,0XEE,0XEE,0XFF,0X74,0XFF,0XDA,0XFF,0XDC,0XFF,0XFE,0XFF,0XFE,

119600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

119720XFF,0XBF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFE,0XF7,0XFD,0XFF,0XFE,0XF7,0XFF,0XF7,0XDF,

119730XFF,0XBE,0XFF,0XDD,0XF7,0X58,0XC5,0XAF,0XC5,0X69,0XEE,0XAB,0XE6,0X07,0XF6,0X67,

119740XFE,0X87,0XF6,0X25,0XF6,0X46,0XF6,0X46,0XF6,0X47,0XFE,0X48,0XFE,0X48,0XFE,0X28,

119750XFE,0X48,0XF6,0X48,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

119760XF6,0X46,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X87,0XFE,0X88,0XFE,0XA9,0XFE,0XAA,

119770XFE,0XAB,0XFE,0X8B,0XFE,0X8B,0XFE,0X8B,0XFE,0XAB,0XF6,0XAB,0XEE,0XAB,0XEE,0XEE,

119780XF7,0X34,0XFF,0XDA,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

119790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBF,0XFF,0XBF,

119910XFF,0XDF,0XFF,0XFE,0XF7,0XFD,0XF7,0XFD,0XFF,0XFF,0XF7,0XDE,0XFF,0XDD,0XFF,0X9A,

119920XD6,0X31,0XBD,0X2A,0XDE,0X08,0XF6,0X88,0XF6,0X67,0XF6,0X66,0XF6,0X46,0XF6,0X46,

119930XFE,0X67,0XF6,0X47,0XF6,0X47,0XFE,0X48,0XFE,0X28,0XFE,0X28,0XF6,0X28,0XF6,0X48,

119940XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

119950XF6,0X67,0XF6,0X67,0XFE,0XA8,0XFE,0XA9,0XFE,0XCA,0XFE,0XCB,0XFE,0XAB,0XFE,0X8B,

119960XFE,0X8C,0XFE,0X8C,0XF6,0XAC,0XF6,0XAD,0XF6,0XEF,0XF7,0X54,0XFF,0XFB,0XFF,0XFD,

119970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

119990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,

120100XFF,0XFD,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XF7,0X79,0XD6,0X31,0XBD,0X4A,0XDE,0X29,

120110XEE,0X67,0XF6,0X66,0XF6,0X66,0XF6,0X46,0XF6,0X46,0XFE,0X47,0XFE,0X47,0XF6,0X47,

120120XF6,0X47,0XF6,0X47,0XF6,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X67,

120130XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XFE,0XA8,

120140XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAB,0XFE,0X8B,0XFE,0XAC,0XFE,0XAC,0XF6,0X8C,

120150XEE,0X8E,0XEE,0XF1,0XFF,0X76,0XFF,0XDA,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFD,

120290XFF,0XDB,0XFF,0X78,0XDE,0X30,0XC5,0X6A,0XDE,0X09,0XEE,0X68,0XF6,0X66,0XF6,0X66,

120300XFE,0X66,0XF6,0X46,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,

120310XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X67,0XF6,0X47,

120320XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X88,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XCA,

120330XFE,0XCB,0XFE,0XAB,0XFE,0XAC,0XF6,0XAC,0XF6,0X8C,0XEE,0X8E,0XF7,0X12,0XF7,0X76,

120340XFF,0XDA,0XFF,0XDD,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120470XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XBE,0XFF,0XBE,0XFF,0XBC,0XFF,0X78,0XD6,0X2F,

120480XC5,0X88,0XE6,0X29,0XF6,0X88,0XEE,0X46,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

120490XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X48,

120500XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,

120510XF6,0X88,0XFE,0X88,0XFE,0X89,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,0XFE,0XAC,0XF6,0XAC,

120520XF6,0XAC,0XEE,0X8D,0XEE,0XAE,0XF7,0X11,0XFF,0X96,0XFF,0XDA,0XFF,0XFD,0XFF,0XFE,

120530XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

120540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120660XFF,0XDE,0XFF,0XBE,0XFF,0XBD,0XF7,0X38,0XD5,0XEF,0XC5,0X69,0XE6,0X48,0XEE,0X66,

120670XEE,0X46,0XF6,0X66,0XF6,0X47,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

120680XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,

120690XF6,0X48,0XF6,0X48,0XFE,0X48,0XFE,0X68,0XFE,0X88,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,

120700XFE,0XAA,0XFE,0X8A,0XFE,0XAB,0XFE,0XAC,0XFE,0XAC,0XF6,0X8C,0XEE,0X8D,0XEE,0XAF,

120710XF7,0X32,0XFF,0XB6,0XFF,0XFA,0XFF,0XDC,0XFF,0XDD,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

120720XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFC,

120850XF7,0X17,0XCD,0XCF,0XCD,0X6A,0XE6,0X09,0XF6,0X88,0XEE,0X24,0XF6,0X45,0XFE,0X46,

120860XF6,0X47,0XF6,0X48,0XFE,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

120870XF6,0X87,0XF6,0X86,0XF6,0X86,0XF6,0X86,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,

120880XFE,0X68,0XFE,0X88,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,

120890XFE,0XCC,0XFE,0X8B,0XF6,0X8C,0XF6,0XAE,0XEE,0XD0,0XF7,0X33,0XFF,0XB8,0XFF,0XFB,

120900XFF,0XFC,0XFF,0XDD,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120910XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

120990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121030XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFD,0XFF,0XDA,0XE6,0XD4,0XC5,0XAE,0XCD,0X6A,

121040XEE,0X4B,0XF6,0X89,0XEE,0X26,0XFE,0X86,0XFE,0X87,0XF6,0X26,0XF6,0X47,0XFE,0X48,

121050XFE,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X67,

121060XF6,0X86,0XF6,0X66,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XFE,0X88,0XFE,0X89,

121070XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAB,0XFE,0XAB,0XFE,0XAC,0XEE,0X6C,

121080XEE,0XAE,0XF7,0X12,0XFF,0X75,0XFF,0XD9,0XFF,0XFC,0XFF,0XFD,0XFF,0XDD,0XFF,0XFF,

121090XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

121100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

121220XFF,0XFB,0XFF,0XD8,0XE6,0XD2,0XBD,0X8B,0XCD,0XA9,0XF6,0XAB,0XF6,0X89,0XEE,0X47,

121230XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X47,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XFE,0X67,

121240XFE,0X67,0XFE,0X67,0XFE,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,

121250XF6,0X66,0XF6,0X67,0XFE,0X87,0XFE,0X67,0XFE,0XA9,0XFE,0XA9,0XFE,0XC9,0XFE,0XAA,

121260XFE,0XAA,0XFE,0XCA,0XFE,0XCB,0XFE,0XCC,0XF6,0XAD,0XF6,0XCF,0XF7,0X13,0XFF,0X97,

121270XFF,0XDA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121400XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFD,0XFF,0XDB,0XF7,0X76,0XD6,0X4F,

121410XCD,0XCA,0XDE,0X4A,0XEE,0XA9,0XEE,0X67,0XF6,0X67,0XFE,0X88,0XF6,0X47,0XFE,0X68,

121420XF6,0X47,0XFE,0X47,0XFE,0X67,0XFE,0X66,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

121430XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X87,

121440XFE,0X88,0XFE,0XA8,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,

121450XF6,0X8C,0XEE,0X8D,0XEE,0XD0,0XFF,0X54,0XFF,0XB8,0XFF,0XDB,0XFF,0XFE,0XFF,0XFE,

121460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121570XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

121580XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,

121590XFF,0XFD,0XFF,0XDB,0XFF,0X79,0XEE,0XF4,0XD6,0X0D,0XD5,0XC9,0XDE,0X08,0XEE,0X88,

121600XEE,0X66,0XF6,0X66,0XF6,0X86,0XFE,0X87,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X67,

121610XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X66,0XF6,0X66,

121620XF6,0X66,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X69,0XFE,0X89,0XFE,0XA9,

121630XFE,0XC9,0XFE,0XC9,0XFE,0XAA,0XF6,0XAB,0XF6,0XAC,0XEE,0X8D,0XEE,0X8F,0XF6,0XD2,

121640XFF,0X56,0XFF,0X99,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

121770XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFB,0XFF,0X99,0XF7,0X35,

121780XDE,0X50,0XCD,0X8B,0XCD,0X89,0XEE,0X69,0XFE,0XA9,0XEE,0X46,0XF6,0X86,0XFE,0X86,

121790XFE,0X86,0XF6,0X66,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

121800XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X66,0XF6,0X66,0XFE,0X86,0XFE,0X87,

121810XFE,0X67,0XFE,0X68,0XFE,0X69,0XFE,0X8A,0XFE,0X8A,0XFE,0X8A,0XFE,0XAA,0XFE,0XCA,

121820XF6,0XAB,0XF6,0XAD,0XEE,0XAF,0XF6,0XD1,0XFF,0X35,0XFF,0X98,0XFF,0XBA,0XFF,0XDC,

121830XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

121940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

121950XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

121960XFF,0XFE,0XFF,0XDC,0XFF,0XDA,0XFF,0X77,0XE6,0X91,0XD5,0XEC,0XD5,0XCA,0XE6,0X0A,

121970XF6,0X4B,0XF6,0X49,0XF6,0X48,0XFE,0X47,0XFE,0X46,0XFE,0X66,0XFE,0X67,0XFE,0X67,

121980XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X87,0XF6,0X88,0XF6,0X68,

121990XF6,0X68,0XF6,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X89,

122000XFE,0X89,0XFE,0XA9,0XFE,0X89,0XFE,0XAA,0XF6,0X8A,0XF6,0X8C,0XEE,0XAE,0XF6,0XF0,

122010XF7,0X34,0XFF,0X98,0XFF,0XBB,0XFF,0XFD,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

122020XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

122140XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDD,0XFF,0XBC,0XFF,0X9A,0XFF,0XB8,

122150XEE,0XD3,0XD5,0XEE,0XDE,0X0B,0XE6,0X29,0XF6,0X6A,0XF6,0X49,0XF6,0X49,0XFE,0X29,

122160XFE,0X69,0XFE,0X48,0XFE,0X46,0XFE,0X47,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X68,

122170XFE,0X68,0XF6,0X68,0XF6,0X87,0XF6,0X87,0XF6,0X88,0XF6,0X88,0XF6,0X68,0XF6,0X68,

122180XFE,0X88,0XFE,0XA8,0XFE,0X88,0XFE,0XA9,0XFE,0XC9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,

122190XFE,0XAA,0XFE,0XAB,0XEE,0X8D,0XF6,0XD0,0XF7,0X12,0XFF,0X75,0XFF,0XD9,0XFF,0XFC,

122200XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

122210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDE,

122330XFF,0XFE,0XFF,0XBB,0XFF,0XDA,0XFF,0X97,0XF7,0X14,0XD5,0XED,0XD5,0XCB,0XDE,0X0A,

122340XEE,0X49,0XF6,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X8A,0XFE,0X49,0XFE,0X49,0XFE,0X48,

122350XFE,0X67,0XFE,0X67,0XFE,0X48,0XFE,0X48,0XFE,0X48,0XFE,0X68,0XFE,0X68,0XFE,0X88,

122360XF6,0X68,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XFE,0XA8,0XFE,0XA9,

122370XFE,0XCA,0XFE,0XAA,0XF6,0XAA,0XF6,0XAB,0XFE,0XCC,0XF6,0XCD,0XEE,0X8C,0XEE,0X6E,

122380XFF,0X34,0XFF,0X77,0XFF,0XB8,0XFF,0XDA,0XFF,0XFB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

122390XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

122400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122500XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

122510XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XDB,0XFF,0XBA,0XFF,0X98,

122520XEE,0XD3,0XDE,0X2E,0XD5,0XAA,0XDE,0X0A,0XEE,0X4A,0XF6,0X89,0XFE,0X88,0XFE,0X87,

122530XF6,0X66,0XF6,0X46,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,

122540XFE,0X68,0XFE,0X68,0XFE,0X48,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XF6,0X68,0XF6,0X68,

122550XF6,0X68,0XF6,0X88,0XFE,0X88,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XCB,0XF6,0XCB,

122560XF6,0XAC,0XEE,0X8C,0XE6,0X6D,0XE6,0X8F,0XF7,0X12,0XFF,0X96,0XFF,0XBA,0XFF,0XDC,

122570XFF,0XFC,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122580XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122690XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,

122700XFF,0XFA,0XFF,0XD8,0XFF,0X97,0XF7,0X75,0XE6,0XB1,0XD6,0X2E,0XD6,0X2B,0XE6,0X2A,

122710XEE,0X89,0XEE,0X48,0XF6,0X47,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X87,

122720XF6,0XA6,0XF6,0X86,0XF6,0X86,0XFE,0XA7,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X87,

122730XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,

122740XFE,0X88,0XFE,0XA9,0XFE,0XAA,0XFE,0XAB,0XF6,0X8B,0XEE,0X8C,0XEE,0XAE,0XF7,0X12,

122750XFF,0X75,0XFF,0XB8,0XFF,0XBA,0XFF,0XDC,0XFF,0XFD,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,

122760XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

122880XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XDB,0XFF,0XD9,0XFF,0XB7,0XF7,0X75,0XEF,0X12,

122890XE6,0X8F,0XDE,0X2D,0XDE,0X2C,0XDE,0X2A,0XE6,0X29,0XEE,0X68,0XF6,0X87,0XFE,0X87,

122900XFE,0X87,0XFE,0X87,0XFE,0X47,0XFE,0X68,0XF6,0X48,0XF6,0X67,0XF6,0X86,0XF6,0XC6,

122910XF6,0XA6,0XF6,0XA7,0XFE,0XA8,0XFE,0X88,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X87,

122920XF6,0X87,0XFE,0XA8,0XFE,0X89,0XFE,0X89,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,

122930XF6,0X8C,0XF6,0XAE,0XF6,0XD0,0XF7,0X12,0XFF,0X75,0XFF,0XB8,0XFF,0XFA,0XFF,0XDC,

122940XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122950XFF,0XDE,0XFF,0XFF,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

122990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123060XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XDE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XD8,

123070XFF,0X96,0XFF,0X54,0XF6,0XF2,0XEE,0XD0,0XE6,0X8E,0XE6,0X4C,0XE6,0X2A,0XE6,0X29,

123080XEE,0X49,0XF6,0X69,0XF6,0X88,0XF6,0X87,0XFE,0X66,0XFE,0X86,0XFE,0X86,0XFE,0X66,

123090XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0XA8,0XFE,0X88,0XF6,0X88,

123100XFE,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0XA8,0XF6,0XA8,0XF6,0XA9,

123110XF6,0XCA,0XF6,0XAB,0XF6,0X8B,0XEE,0X8C,0XEE,0XAE,0XF6,0XD0,0XFF,0X13,0XFF,0X55,

123120XFF,0X97,0XFF,0XBA,0XFF,0XDB,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

123130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

123250XFF,0XFE,0XFF,0XFC,0XFF,0XB9,0XFF,0X76,0XF7,0X53,0XF7,0X11,0XEE,0XAF,0XE6,0X6D,

123260XE6,0X2B,0XE6,0X0A,0XEE,0X2A,0XEE,0X4A,0XF6,0X69,0XFE,0X68,0XF6,0X68,0XFE,0X67,

123270XFE,0X67,0XFE,0X67,0XFE,0X86,0XFE,0X86,0XFE,0X87,0XFE,0X87,0XFE,0X68,0XF6,0X68,

123280XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XF6,0X69,0XF6,0X69,

123290XF6,0X89,0XF6,0XAA,0XF6,0XAA,0XF6,0XAA,0XF6,0XCB,0XEE,0XCB,0XEE,0XAD,0XEE,0XCF,

123300XF7,0X11,0XFF,0X33,0XFF,0X55,0XFF,0X77,0XFF,0XB9,0XFF,0XDB,0XFF,0XBC,0XFF,0XDD,

123310XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XDC,0XF7,0X78,

123440XE6,0XF2,0XDE,0X8E,0XE6,0X8C,0XDE,0X4A,0XE6,0X49,0XEE,0X49,0XEE,0X69,0XF6,0X69,

123450XF6,0X69,0XF6,0X68,0XF6,0X48,0XFE,0X47,0XFE,0X68,0XFE,0X68,0XFE,0X87,0XFE,0X88,

123460XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0XA7,0XF6,0XA7,0XFE,0XA7,0XFE,0XA8,

123470XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0XAA,0XFE,0XAB,0XF6,0XAC,0XF6,0XAD,

123480XEE,0XAE,0XEE,0XCF,0XF7,0X11,0XF7,0X53,0XF7,0X35,0XF7,0X57,0XFF,0X99,0XFF,0XBA,

123490XFF,0XDB,0XFF,0XDC,0XFF,0XDD,0XFF,0XBE,0XFF,0XBE,0XFF,0XBE,0XFF,0XDF,0XFF,0XDF,

123500XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123510XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123620XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDD,0XFF,0X99,0XE6,0XD3,0XD6,0X4D,0XDE,0X4A,

123630XEE,0X89,0XEE,0X88,0XF6,0X68,0XF6,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X67,

123640XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,

123650XFE,0X68,0XF6,0X88,0XF6,0X87,0XEE,0X87,0XEE,0X87,0XEE,0X88,0XF6,0X88,0XFE,0X89,

123660XFE,0X8A,0XF6,0X8B,0XFE,0XAD,0XF6,0XCE,0XF6,0XD0,0XF6,0XF2,0XF7,0X14,0XF7,0X35,

123670XF7,0X56,0XF7,0X78,0XFF,0XBB,0XFF,0XBC,0XF7,0X9C,0XF7,0X7C,0XF7,0X7D,0XF7,0X7D,

123680XF7,0X9E,0XF7,0X7E,0XF7,0X9F,0XF7,0X9F,0XF7,0X7E,0XEF,0X7E,0XF7,0X9E,0XF7,0X9E,

123690XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

123700XF7,0XBE,0XFF,0XBE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,

123710XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

123720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

123770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123810XFF,0XFF,0XFF,0XFD,0XFF,0XD9,0XEE,0XD2,0XDE,0X4B,0XEE,0X89,0XEE,0X87,0XF6,0X87,

123820XFE,0XA8,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,

123830XFE,0X87,0XFE,0X87,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X88,0XFE,0X89,0XFE,0XAA,

123840XF6,0XA9,0XF6,0XAA,0XEE,0XAA,0XF6,0XCB,0XF6,0XCC,0XF6,0XED,0XE6,0X8E,0XDE,0X2E,

123850XC5,0XAD,0XBD,0X8E,0XB5,0X4F,0XBD,0X71,0XC5,0XB3,0XCD,0XF5,0XCE,0X16,0XCE,0X37,

123860XCE,0X58,0XCE,0X79,0XD6,0X99,0XD6,0XBA,0XD6,0XDB,0XDE,0XDB,0XDE,0XDB,0XD6,0XBB,

123870XD6,0XBB,0XDE,0XFC,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

123880XE7,0X5C,0XE7,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X7D,

123890XF7,0X7D,0XF7,0X7E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

123900XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

123910XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

123960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

123990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XDF,0XF7,0XBF,0XF7,0X9C,

124000XFF,0XB9,0XEE,0XD1,0XE6,0X6C,0XFE,0XEB,0XF6,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,

124010XFE,0X69,0XFE,0X88,0XFE,0X68,0XF6,0X68,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X89,

124020XF6,0X8A,0XF6,0XAA,0XF6,0XAB,0XF6,0XAB,0XF6,0X8B,0XEE,0X6B,0XEE,0X6C,0XE6,0X6C,

124030XE6,0X4C,0XD5,0XEB,0XBD,0X2A,0X94,0X47,0X6B,0X03,0X4A,0X00,0X31,0X40,0X31,0X81,

124040X39,0XC3,0X4A,0X26,0X52,0X89,0X62,0XCB,0X6B,0X0C,0X6B,0X4D,0X7B,0XCF,0X84,0X0F,

124050X84,0X51,0X8C,0X92,0X94,0XB3,0X9C,0XF4,0XA5,0X55,0XAD,0X76,0XB5,0XB7,0XBD,0XD8,

124060XBD,0XF8,0XBD,0XF8,0XC6,0X38,0XCE,0X59,0XD6,0X9A,0XD6,0XBA,0XD6,0XBA,0XD6,0XBA,

124070XD6,0XDB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,

124080XEF,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

124090XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

124100XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

124110XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124140XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

124180XFF,0XDE,0XF7,0XDE,0XF7,0XBF,0XF7,0XBF,0XF7,0XBF,0XEF,0X5C,0XF7,0X58,0XE6,0XB2,

124190XE6,0X4D,0XF6,0XAC,0XEE,0X4A,0XF6,0X4A,0XF6,0X4B,0XF6,0X6B,0XF6,0X6B,0XF6,0X8B,

124200XF6,0X8B,0XF6,0XAB,0XF6,0XAB,0XF6,0XCC,0XF6,0XAC,0XF6,0XAC,0XEE,0XAD,0XE6,0X6D,

124210XE6,0X4D,0XDE,0X0D,0XCD,0XAB,0XC5,0X4B,0XAC,0X89,0X93,0XE7,0X72,0XE4,0X52,0X21,

124220X41,0XA0,0X39,0X60,0X31,0X60,0X31,0X61,0X39,0X83,0X39,0XA4,0X39,0XA5,0X39,0XA5,

124230X31,0X86,0X31,0X86,0X39,0XC7,0X39,0XE7,0X42,0X28,0X4A,0X48,0X52,0XA9,0X5A,0XEB,

124240X63,0X0C,0X63,0X4D,0X6B,0X8E,0X73,0XAF,0X7B,0XF0,0X84,0X31,0X8C,0X72,0X94,0XB3,

124250X9C,0XD3,0XA5,0X14,0XA5,0X35,0XAD,0X55,0XB5,0XD6,0XBD,0XD7,0XBD,0XF7,0XC6,0X18,

124260XC6,0X38,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XD6,0X9A,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,

124270XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,

124280XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

124290XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

124300XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

124310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124330XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

124360XFF,0XDF,0XFF,0XDF,0XFF,0XBF,0XFF,0XBF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

124370XEF,0X9E,0XEF,0X9E,0XEF,0X5E,0XDE,0XDA,0XDE,0XB7,0XD6,0X32,0XD6,0X0E,0XE6,0X4D,

124380XE6,0X0C,0XE6,0X0D,0XE6,0X0C,0XDD,0XEC,0XD5,0XCB,0XD5,0XAB,0XD5,0XAB,0XCD,0XAB,

124390XC5,0X6A,0XBD,0X4A,0XB4,0XE8,0XAC,0XA8,0X9C,0X47,0X8B,0XA6,0X7B,0X24,0X6A,0XC3,

124400X5A,0X21,0X49,0XC0,0X39,0X60,0X39,0X40,0X39,0X40,0X39,0X61,0X41,0XA2,0X41,0XA3,

124410X41,0XC4,0X41,0XE5,0X41,0XE6,0X41,0XE6,0X42,0X07,0X4A,0X28,0X4A,0X48,0X4A,0X49,

124420X4A,0X48,0X4A,0X48,0X4A,0X48,0X4A,0X48,0X52,0X69,0X52,0XAA,0X5A,0XCA,0X5A,0XEB,

124430X63,0X0C,0X63,0X2C,0X6B,0X4D,0X73,0X8E,0X73,0XCF,0X7B,0XF0,0X84,0X31,0X8C,0X72,

124440X94,0X92,0X9C,0XD3,0X9C,0XF4,0XA5,0X14,0XA5,0X34,0XAD,0X75,0XB5,0X96,0XB5,0XB6,

124450XBD,0XD7,0XC5,0XF8,0XC6,0X18,0XCE,0X38,0XCE,0X59,0XD6,0X79,0XD6,0X9A,0XD6,0XBA,

124460XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

124470XE7,0X3C,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,

124480XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,

124490XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

124500XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,

124520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124540XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

124550XF7,0X9E,0XF7,0X9E,0XFF,0XDF,0XFF,0XDF,0XF7,0XDE,0XF7,0XBE,0XF7,0XBE,0XEF,0X9E,

124560XE7,0X3D,0XE6,0XFB,0XDE,0X98,0XD6,0X54,0XCD,0XF0,0XC5,0X6D,0XB4,0XEC,0XAC,0XAB,

124570XA4,0X69,0X9C,0X29,0X93,0XC7,0X83,0X66,0X7B,0X25,0X73,0X05,0X6A,0XC4,0X5A,0X83,

124580X52,0X22,0X49,0XE2,0X41,0XA1,0X39,0X81,0X39,0X82,0X39,0X62,0X41,0X82,0X41,0XA3,

124590X41,0XC3,0X41,0XE3,0X41,0XE4,0X4A,0X05,0X4A,0X26,0X52,0X26,0X52,0X47,0X52,0X68,

124600X52,0X68,0X5A,0X89,0X5A,0XAA,0X5A,0XCA,0X5A,0XCA,0X5A,0XEB,0X63,0X0B,0X63,0X2C,

124610X6B,0X2C,0X6B,0X0B,0X6B,0X0B,0X63,0X0B,0X63,0X0B,0X63,0X2B,0X6B,0X4C,0X73,0X8D,

124620X7B,0XCE,0X7B,0XCF,0X7B,0XEF,0X84,0X10,0X84,0X31,0X8C,0X51,0X8C,0X72,0X94,0XB2,

124630X9C,0XD3,0X9C,0XF3,0XA5,0X14,0XA5,0X34,0XAD,0X55,0XAD,0X75,0XB5,0X96,0XB5,0XB6,

124640XBD,0XD7,0XBD,0XF7,0XC6,0X18,0XC6,0X38,0XCE,0X59,0XCE,0X79,0XCE,0X79,0XD6,0X9A,

124650XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,

124660XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,

124670XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

124680XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

124690XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

124710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

124730XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,

124740XFF,0XDF,0XFF,0XDF,0XFF,0XDE,0XF7,0XDE,0XF7,0XBE,0XF7,0X9E,0XEF,0X3E,0XEF,0X5D,

124750XEF,0X5B,0XEF,0X5A,0XF7,0X58,0XEF,0X17,0XEE,0XD6,0XE6,0X96,0XE6,0X75,0XDE,0X54,

124760XD6,0X34,0XCD,0XF3,0XC5,0XB2,0XC5,0X92,0XBD,0X72,0XB5,0X51,0XA4,0XD0,0X9C,0X8F,

124770X9C,0X8F,0X9C,0XB0,0X9C,0X90,0X94,0X4F,0X8C,0X0E,0X8C,0X2E,0X84,0X0E,0X84,0X0D,

124780X83,0XED,0X7B,0XCD,0X7B,0XCD,0X7B,0XAD,0X7B,0X8D,0X7B,0X8D,0X7B,0XAE,0X7B,0XCE,

124790X7B,0XCE,0X83,0XEE,0X83,0XEE,0X84,0X0F,0X84,0X2F,0X8C,0X2F,0X84,0X0F,0X8C,0X2F,

124800X8C,0X50,0X8C,0X50,0X84,0X2F,0X84,0X0F,0X84,0X0F,0X84,0X2F,0X8C,0X50,0X8C,0X70,

124810X94,0X91,0X94,0XB2,0X94,0XB2,0X94,0XB3,0X9C,0XD4,0XA5,0X14,0XA5,0X35,0XA5,0X55,

124820XAD,0X55,0XB5,0X96,0XB5,0X96,0XB5,0XB6,0XBD,0XD7,0XBD,0XF7,0XBD,0XF7,0XC6,0X18,

124830XC6,0X38,0XC6,0X38,0XCE,0X59,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XD6,0X9A,0XD6,0XBA,

124840XDE,0XDB,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,

124850XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

124860XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

124870XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

124880XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124890XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

124910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,

124920XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XFF,0XDF,0XFF,0XDF,

124930XFF,0XDE,0XFF,0XDE,0XFF,0XBE,0XF7,0XBF,0XF7,0X9F,0XF7,0X9F,0XF7,0X9D,0XFF,0XBC,

124940XFF,0XDC,0XFF,0XFC,0XFF,0XFD,0XFF,0XFD,0XFF,0XBD,0XFF,0XBD,0XFF,0XBD,0XFF,0X9C,

124950XFF,0X7C,0XF7,0X7C,0XF7,0X7B,0XF7,0X5B,0XEF,0X5B,0XEF,0X3B,0XEF,0X1A,0XE6,0XD9,

124960XE6,0XD9,0XE6,0XFA,0XDE,0XD9,0XD6,0X99,0XD6,0X99,0XD6,0X99,0XCE,0X79,0XCE,0X78,

124970XCE,0X58,0XC6,0X58,0XC6,0X58,0XC6,0X38,0XC6,0X38,0XC6,0X17,0XBD,0XF6,0XBD,0XF6,

124980XBD,0XD5,0XBD,0XD5,0XBD,0XB4,0XBD,0XD4,0XC6,0X16,0XBD,0XF5,0XBD,0XD5,0XBD,0XF5,

124990XBD,0XF6,0XBD,0XD5,0XB5,0XB5,0XAD,0X74,0XAD,0X74,0XAD,0X74,0XAD,0X75,0XB5,0X95,

125000XB5,0X96,0XB5,0XB6,0XB5,0XB7,0XB5,0XB7,0XBD,0XD7,0XBD,0XD7,0XBD,0XD7,0XBD,0XF7,

125010XBD,0XF7,0XBD,0XF7,0XC6,0X18,0XC6,0X38,0XCE,0X59,0XCE,0X59,0XCE,0X79,0XCE,0X79,

125020XCE,0X79,0XD6,0X9A,0XD6,0X9A,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,

125030XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

125040XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,

125050XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

125060XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125080XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,

125110XF7,0XBE,0XF7,0X9E,0XF7,0XBE,0XF7,0X9E,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDE,

125120XFF,0XDF,0XFF,0XDF,0XFF,0XBF,0XFF,0XBF,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,

125130XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

125140XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XDD,0XFF,0XBD,0XFF,0XBD,0XFF,0XDD,0XFF,0XBD,

125150XFF,0XBD,0XF7,0X9D,0XF7,0X9D,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7C,0XE7,0X7C,

125160XEF,0X5C,0XEF,0X5C,0XE7,0X5B,0XE7,0X3B,0XE7,0X3B,0XE7,0X3A,0XEF,0X3B,0XEF,0X3A,

125170XEF,0X3A,0XEF,0X3B,0XE7,0X3A,0XE7,0X3A,0XDF,0X1A,0XDF,0X1A,0XDF,0X1A,0XDE,0XFA,

125180XDE,0XFA,0XDE,0XFA,0XD6,0XD9,0XD6,0X99,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X7A,

125190XCE,0X7A,0XCE,0X7A,0XCE,0X79,0XCE,0X79,0XD6,0X9A,0XD6,0X9A,0XD6,0X9A,0XD6,0X9A,

125200XD6,0XBA,0XD6,0XBA,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,0XDE,0XDB,0XDE,0XFB,

125210XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

125220XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

125230XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

125240XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

125250XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

125260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

125270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125290XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

125300XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

125310XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

125330XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,

125340XFF,0XDE,0XFF,0XDF,0XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XF7,0XDD,0XFF,0XDC,0XFF,0XBC,

125350XFF,0XDC,0XFF,0XBC,0XFF,0XBC,0XFF,0XBC,0XFF,0X9C,0XFF,0X9C,0XF7,0X7C,0XF7,0X7D,

125360XF7,0X9D,0XF7,0X9D,0XF7,0XBD,0XF7,0XBE,0XF7,0XBD,0XEF,0XBD,0XEF,0X9D,0XEF,0XBD,

125370XF7,0XBD,0XEF,0X9D,0XEF,0X5C,0XE7,0X3C,0XDE,0XFB,0XDE,0XDB,0XE6,0XFB,0XE7,0X1C,

125380XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,

125390XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

125400XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

125410XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

125420XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

125430XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125440XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

125450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

125460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

125480XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XDE,0XF7,0XBE,

125490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

125520XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

125530XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XDD,0XFF,0XDD,

125540XFF,0XDD,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

125550XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

125560XFF,0XDF,0XF7,0XBE,0XF7,0X9E,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,

125570XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,

125580XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

125590XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

125600XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

125610XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125620XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125630XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

125640XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125670XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

125680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

125710XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

125720XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

125730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,

125740XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125750XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

125760XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

125770XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

125780XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

125790XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,

125800XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125810XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125820XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

125860XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125900XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

125910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

125930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

125940XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

125950XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

125960XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

125970XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125980XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

125990XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0X9E,

126010XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

126020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126070XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126130XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

126140XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

126150XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

126160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0X9E,

126200XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

126260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

126330XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126380XFF,0XFF,0XFF,0XFF,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

126390XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126570XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

126580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0X9E,0XF7,0XBE,

126760XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

126770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

126950XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

126990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127130XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

127140XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127320XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

127330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127470XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

127480XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

127490XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

127500XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

127510XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

127520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127770XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,};

12791

12792const unsigned char gimage_0[51000] = { /* 0X10,0X10,0X00,0X96,0X00,0XAA,0X01,0X1B, */

127930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

127990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128590XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128820XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

128990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

129010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

129330XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

129340XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129500XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129510XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFC,0XFF,0XFB,0XFF,0XFB,

129520XFF,0XFB,0XFF,0XFB,0XFF,0XFB,0XFF,0XFB,0XFF,0XFB,0XFF,0XFC,0XFF,0XFC,0XFF,0XFC,

129530XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

129550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

129690XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFC,0XFF,0XFB,

129700XFF,0XFB,0XFF,0XFA,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF8,0XFF,0XF8,0XFF,0XF8,

129710XFF,0XF8,0XFF,0XF8,0XFF,0XF8,0XFF,0XF9,0XFF,0XF8,0XFF,0XF9,0XFF,0XFA,0XFF,0XFB,

129720XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129730XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

129740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

129880XFF,0XFD,0XFF,0XFC,0XFF,0XFC,0XFF,0XFA,0XFF,0XF9,0XFF,0XF8,0XFF,0XF7,0XFF,0XF7,

129890XFF,0XF6,0XFF,0XF5,0XFF,0XF5,0XFF,0XF4,0XFF,0XF4,0XFF,0XF4,0XFF,0XF4,0XFF,0XF4,

129900XFF,0XF5,0XFF,0XF5,0XFF,0XD5,0XFF,0XF5,0XFF,0XF6,0XFF,0XF7,0XFF,0XF8,0XFF,0XF9,

129910XFF,0XFB,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129920XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

129930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

129990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XFA,

130070XFF,0XF8,0XFF,0XF7,0XFF,0XF6,0XFF,0XF5,0XFF,0XF4,0XFF,0XF4,0XFF,0XF3,0XFF,0XF3,

130080XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF2,

130090XFF,0XF3,0XFF,0XF3,0XFF,0XF3,0XFF,0XF3,0XFF,0XF4,0XFF,0XF5,0XFF,0XF7,0XFF,0XF9,

130100XFF,0XFA,0XFF,0XFB,0XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

130110XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130250XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF6,0XFF,0XF5,0XFF,0XF3,

130260XFF,0XD2,0XFF,0XF2,0XFF,0XF2,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF0,

130270XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,0XFF,0XF1,

130280XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF3,0XFF,0XF4,0XFF,0XF6,0XFF,0XF8,

130290XFF,0XF9,0XFF,0XFB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,

130440XFF,0XF9,0XFF,0XF7,0XFF,0XF5,0XFF,0XF3,0XFF,0XF2,0XFF,0XF1,0XFF,0XF0,0XFF,0XF0,

130450XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

130460XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

130470XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF1,0XFF,0XF3,0XFF,0XF4,0XFF,0XF6,0XFF,0XD8,

130480XFF,0XDA,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130620XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF7,0XFF,0XF5,0XFF,0XF3,

130630XFF,0XF1,0XFF,0XF1,0XFF,0XF0,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

130640XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

130650XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

130660XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF1,0XFF,0XF3,0XFF,0XF4,0XFF,0XF6,0XFF,0XF8,

130670XFF,0XFA,0XFF,0XFC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130800XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,

130810XFF,0XFB,0XFF,0XF8,0XFF,0XF6,0XFF,0XF3,0XFF,0XD1,0XFF,0XD0,0XFF,0XEF,0XFF,0XEF,

130820XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XCF,0XFF,0XCF,0XFF,0XCF,

130830XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

130840XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

130850XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF1,0XFF,0XF3,0XFF,0XF5,0XFF,0XD7,0XFF,0XD9,

130860XFF,0XFB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

130980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

130990XFF,0XFD,0XFF,0XFD,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XD7,0XFF,0XF5,

131000XFF,0XF3,0XFF,0XD0,0XFF,0XCF,0XFF,0XCE,0XFF,0XCD,0XFF,0XED,0XFF,0XEE,0XFF,0XCE,

131010XFF,0XCE,0XFF,0XAE,0XFF,0X8D,0XFF,0X6C,0XFF,0X4D,0XF7,0X0C,0XF7,0X0C,0XFF,0X6E,

131020XFF,0XAE,0XFF,0XCF,0XFF,0XF0,0XFF,0XF1,0XF7,0XD0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,

131030XFF,0XF0,0XFF,0XF0,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

131040XFF,0XEE,0XFF,0XEF,0XFF,0XF0,0XFF,0XF1,0XFF,0XF3,0XFF,0XD5,0XFF,0XD8,0XFF,0XFA,

131050XFF,0XDC,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131060XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,

131180XFF,0XFC,0XFF,0XFB,0XFF,0XD9,0XFF,0XD6,0XFF,0XF4,0XFF,0XF2,0XFF,0XF0,0XFF,0XEF,

131190XFF,0XEF,0XFF,0XEF,0XFF,0XCD,0XFF,0XEE,0XFF,0XAE,0XFF,0XAD,0XFF,0X4C,0XF7,0X0B,

131200XF6,0XC9,0XEE,0XA9,0XE6,0X48,0XDE,0X07,0XDE,0X07,0XDE,0X28,0XE6,0X69,0XF7,0X2C,

131210XFF,0XAF,0XFF,0XD0,0XFF,0XD0,0XFF,0XF0,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,0XFF,0XF0,

131220XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

131230XFF,0XEE,0XFF,0XEF,0XFF,0XF1,0XFF,0XF3,0XFF,0XD5,0XFF,0XD7,0XFF,0XF9,0XFF,0XFB,

131240XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

131250XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF7,

131370XFF,0XF3,0XFF,0XF1,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XEF,0XFF,0XEF,

131380XFF,0XAF,0XFF,0XAF,0XFF,0X6D,0XF7,0X2B,0XEE,0XA9,0XE6,0X68,0XE6,0X26,0XDD,0XE5,

131390XD5,0X83,0XD5,0X63,0XCD,0X43,0XC5,0X03,0XBC,0XE3,0XC5,0X65,0XEE,0XCB,0XFF,0XAF,

131400XFF,0XF0,0XFF,0XCF,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

131410XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,

131420XFF,0XF0,0XFF,0XF1,0XFF,0XD3,0XFF,0XD4,0XFF,0XF6,0XFF,0XF8,0XFF,0XFB,0XFF,0XFD,

131430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131550XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF9,0XFF,0XF6,0XFF,0XF3,0XFF,0XF0,0XFF,0XEF,

131560XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XCF,0XFF,0XCF,0XFF,0X8F,0XFF,0X2D,

131570XF6,0XEB,0XEE,0X68,0XEE,0X68,0XE6,0X27,0XDE,0X04,0XDD,0XC3,0XDD,0X81,0XDD,0X82,

131580XD5,0X42,0XC4,0XE1,0XAC,0X20,0X93,0X80,0XCD,0X87,0XFF,0X6E,0XFF,0XAF,0XFF,0X8D,

131590XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,

131600XFF,0XEF,0XFF,0XF0,0XFF,0XEF,0XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,

131610XFF,0XD1,0XFF,0XF2,0XFF,0XF3,0XFF,0XF5,0XFF,0XF8,0XFF,0XFB,0XFF,0XFE,0XFF,0XFF,

131620XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,

131740XFF,0XF9,0XFF,0XF6,0XF7,0XD3,0XF7,0XD0,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

131750XFF,0XEE,0XFF,0XEE,0XFF,0XCE,0XFF,0XCE,0XFF,0X4D,0XF6,0XCA,0XEE,0X48,0XE6,0X06,

131760XF6,0X67,0XF6,0X87,0XEE,0X45,0XE5,0XE3,0XE5,0XE1,0XE5,0XE1,0XE5,0X81,0XDD,0X41,

131770XCC,0XE1,0X93,0X40,0X9B,0XC0,0XE6,0X2A,0XFF,0XD0,0XFF,0XAE,0XFF,0XEE,0XF7,0X8C,

131780XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XCF,

131790XFF,0XEF,0XFF,0XEF,0XFF,0XCF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XF0,

131800XFF,0XF0,0XFF,0XF2,0XFF,0XF5,0XFF,0XF9,0XFF,0XFD,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

131810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

131910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

131920XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0XFA,0XFF,0XF6,0XFF,0XF3,

131930XF7,0XD1,0XF7,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XCE,

131940XFF,0XEE,0XFF,0XAD,0XF6,0XCA,0XEE,0X68,0XDD,0XA5,0XED,0XE5,0XF6,0X46,0XFE,0XA7,

131950XFE,0XA6,0XF6,0X44,0XEE,0X22,0XED,0XE1,0XE5,0XC0,0XE5,0XA1,0XDD,0X42,0XC4,0X81,

131960X9B,0X80,0XC5,0X05,0XFF,0X6E,0XFF,0X8E,0XFF,0XCE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

131970XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,

131980XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEF,

131990XFF,0XD2,0XFF,0XD6,0XFF,0XDA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132100XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132110XFF,0XFD,0XFF,0XFB,0XFF,0XF9,0XFF,0XF6,0XFF,0XF3,0XFF,0XF1,0XFF,0XF0,0XFF,0XEF,

132120XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XCE,0XFF,0XCE,0XF7,0X2B,

132130XE6,0X67,0XDD,0XA3,0XDD,0X62,0XED,0XC3,0XF6,0X45,0XFE,0X86,0XFE,0XA7,0XFE,0X86,

132140XF6,0X44,0XF6,0X23,0XF6,0X01,0XED,0XE1,0XED,0XC2,0XE5,0X83,0XBC,0X61,0XB4,0X82,

132150XEE,0XAB,0XFF,0XAE,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

132160XFF,0XEE,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,

132170XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEF,0XFF,0XD1,0XF7,0XB3,

132180XF7,0XB7,0XFF,0XFA,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

132290XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF9,

132300XFF,0XF5,0XF7,0XD2,0XF7,0XD1,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XCE,

132310XFF,0XCE,0XFF,0XEF,0XFF,0XCF,0XFF,0XEF,0XFF,0XAE,0XE6,0X89,0XDE,0X05,0XC4,0XC0,

132320XDD,0X61,0XED,0XA2,0XFE,0X44,0XFE,0X65,0XFE,0XA8,0XFE,0XA8,0XFE,0X67,0XF6,0X45,

132330XF6,0X43,0XF6,0X02,0XED,0XE2,0XE5,0XC2,0XDD,0X83,0XB4,0XA1,0XD5,0XE7,0XFF,0XCE,

132340XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

132350XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

132360XFF,0XED,0XFF,0XED,0XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XF7,0XB1,0XF7,0XB4,0XFF,0XD7,

132370XFF,0XFB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

132480XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XF9,0XFF,0XF6,0XFF,0XF2,0XFF,0XF0,

132490XFF,0XEF,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XF7,0XCD,0XFF,0XEE,0XFF,0XEE,

132500XFF,0XCF,0XFF,0XCF,0XFF,0X6D,0XCD,0XA6,0XC4,0XE2,0XCC,0XE1,0XE5,0X41,0XED,0XA1,

132510XED,0XC1,0XF6,0X44,0XFE,0XA8,0XFE,0X89,0XFE,0X69,0XFE,0X68,0XFE,0X66,0XF6,0X44,

132520XEE,0X02,0XE5,0XE1,0XE6,0X23,0XCD,0X61,0XCD,0XC4,0XF7,0X4C,0XFF,0XEF,0XFF,0XEF,

132530XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

132540XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,

132550XFF,0XEE,0XFF,0XEF,0XFF,0XEF,0XFF,0XF0,0XFF,0XD2,0XEF,0X73,0XFF,0XF8,0XFF,0XFB,

132560XFF,0XFD,0XFF,0XFF,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

132670XFF,0XFD,0XFF,0XFA,0XFF,0XF7,0XFF,0XF3,0XFF,0XF0,0XFF,0XEE,0XFF,0XED,0XFF,0XED,

132680XFF,0XEE,0XFF,0XEE,0XFF,0XED,0XFF,0XCC,0XFF,0XED,0XFF,0XEE,0XFF,0XCF,0XFF,0XAF,

132690XE6,0X8A,0XBD,0X03,0XBC,0XA1,0XD5,0X22,0XDD,0X01,0XE5,0X61,0XED,0XA0,0XEE,0X02,

132700XFE,0X67,0XFE,0X69,0XFE,0X8A,0XFE,0X8A,0XFE,0X67,0XFE,0X65,0XFE,0X84,0XEE,0X22,

132710XEE,0X23,0XDD,0XC2,0XCD,0XA3,0XEF,0X0A,0XFF,0XAE,0XFF,0XEF,0XFF,0XEE,0XFF,0XEE,

132720XFF,0XEE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

132730XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XCE,0XFF,0XCE,

132740XFF,0XEE,0XFF,0XEE,0XF7,0XCF,0XF7,0XB1,0XF7,0XB5,0XFF,0XD9,0XFF,0XFD,0XFF,0XFE,

132750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0XD8,

132860XFF,0XD4,0XFF,0XD1,0XFF,0XEF,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XEE,

132870XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XCD,0XFF,0XEF,0XFF,0X6D,0XCD,0XA6,0X9B,0XE0,

132880XC4,0XE2,0XCC,0XE2,0XDD,0X01,0XDD,0X20,0XED,0XC1,0XED,0XE1,0XF6,0X25,0XFE,0X47,

132890XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0XA8,0XFE,0X65,0XFE,0XA6,0XFE,0XA5,0XE6,0X24,

132900XC5,0X62,0XEE,0XE9,0XFF,0XAE,0XFF,0XAE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

132910XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

132920XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XEC,0XFF,0XCE,0XFF,0XAE,0XFF,0XEE,0XFF,0XCD,

132930XF7,0XCD,0XFF,0XD0,0XF7,0X73,0XF7,0X97,0XFF,0XFC,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

132940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

132990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133040XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF8,0XFF,0XD5,0XFF,0XD2,0XFF,0XCF,

133050XFF,0XCE,0XFF,0XED,0XFF,0XEC,0XFF,0XEC,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

133060XFF,0XED,0XFF,0XCD,0XFF,0XCE,0XFF,0X2C,0XA4,0X61,0XA4,0X00,0XBC,0X81,0XD5,0X02,

133070XCC,0XC1,0XD5,0X21,0XE5,0X81,0XE5,0XA1,0XEE,0X04,0XF6,0X46,0XFE,0X89,0XFE,0X89,

133080XFE,0X88,0XFE,0X88,0XFE,0XA8,0XFE,0X87,0XF6,0X86,0XF6,0XA7,0XD5,0XA4,0XDE,0X47,

133090XFF,0X4C,0XFF,0XCE,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,

133100XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,

133110XFF,0XEC,0XFF,0XEC,0XFF,0XCE,0XFF,0XAE,0XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XEF,

133120XF7,0X71,0XEF,0X54,0XFF,0XFA,0XFF,0XFC,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

133130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,

133230XFF,0XFD,0XFF,0XF9,0XFF,0XD5,0XFF,0XD2,0XFF,0XCF,0XFF,0XCE,0XFF,0XCE,0XFF,0XCD,

133240XFF,0XCD,0XFF,0XCC,0XFF,0XEC,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,

133250XFF,0XAE,0XE6,0X8A,0X93,0XA0,0XAC,0X21,0XBC,0XA2,0XBC,0X81,0XC4,0X80,0XC4,0XA0,

133260XCD,0X21,0XD5,0X41,0XE5,0XE3,0XF6,0X25,0XFE,0X87,0XFE,0XA8,0XFE,0X88,0XFE,0X88,

133270XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XF6,0X89,0XD5,0XC6,0XD6,0X07,0XFF,0X6C,0XFF,0XAD,

133280XFF,0XCD,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XED,0XFF,0XEC,

133290XFF,0XEC,0XFF,0XEC,0XFF,0XCD,0XFF,0XED,0XFF,0XCD,0XFF,0XED,0XFF,0XCD,0XFF,0XCD,

133300XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCE,0XF7,0X70,0XEF,0X32,

133310XF7,0X76,0XFF,0XFB,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0XF7,

133420XFF,0XD2,0XFF,0XCF,0XFF,0XCE,0XFF,0XCD,0XFF,0XAE,0XFF,0XAE,0XFF,0XAD,0XFF,0XCD,

133430XFF,0XCC,0XFF,0XEC,0XFF,0XCC,0XFF,0XCD,0XFF,0XAD,0XFF,0XCE,0XFF,0X8E,0XD5,0XC7,

133440X83,0X20,0XB4,0X62,0XB4,0X61,0XB4,0X40,0XB4,0X20,0XB4,0X20,0XBC,0XA1,0XC4,0XE1,

133450XD5,0X63,0XE5,0XE4,0XF6,0X67,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XFE,0XAA,0XFE,0X8A,

133460XFE,0XAB,0XF6,0X8A,0XE6,0X28,0XCD,0XC6,0XF7,0X4C,0XFF,0XAD,0XFF,0XCC,0XFF,0XCD,

133470XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,0XFF,0XCC,

133480XFF,0XCC,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XCD,0XFF,0XAD,0XFF,0XCD,

133490XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAD,0XFF,0X8F,0XEF,0X30,0XE6,0XF3,0XFF,0X98,

133500XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133600XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XF8,0XFF,0XD4,0XF7,0XAF,0XFF,0XCE,

133610XFF,0XCD,0XFF,0XAD,0XFF,0X8E,0XFF,0X8E,0XFF,0XAE,0XFF,0XAD,0XFF,0XAD,0XFF,0XCC,

133620XF7,0XAC,0XFF,0XCD,0XFF,0XAD,0XFF,0XAE,0XFF,0X6E,0XBD,0X05,0X8B,0X40,0XB4,0X42,

133630XAC,0X02,0XA3,0XC1,0XA3,0XA0,0X9B,0XA0,0X9B,0XE0,0XA4,0X00,0XBC,0XA2,0XCD,0X44,

133640XE6,0X07,0XF6,0X68,0XF6,0X69,0XF6,0X69,0XFE,0XAA,0XF6,0X89,0XFE,0XCB,0XF6,0XAB,

133650XEE,0X8A,0XCD,0XA6,0XEF,0X0B,0XFF,0XAC,0XFF,0XAC,0XFF,0XCC,0XFF,0XAD,0XFF,0XAD,

133660XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAD,

133670XFF,0XAD,0XFF,0XAD,0XFF,0XAD,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAB,0XFF,0X8B,

133680XFF,0X8C,0XFF,0X8D,0XFF,0X8E,0XF7,0X50,0XDE,0XB0,0XEE,0XF4,0XFF,0XDB,0XFF,0XFD,

133690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133790XFF,0XFD,0XFF,0XFA,0XFF,0XD5,0XF7,0XB1,0XF7,0XAE,0XFF,0XAC,0XFF,0XCC,0XFF,0XAC,

133800XFF,0X8D,0XFF,0X8E,0XFF,0X8E,0XFF,0X8D,0XFF,0XAC,0XFF,0XCC,0XFF,0XAC,0XFF,0XCD,

133810XFF,0X8D,0XFF,0XAF,0XFF,0X2D,0XB4,0X83,0X93,0X80,0XAC,0X01,0XAB,0XE2,0X9B,0X60,

133820X93,0X60,0X93,0X40,0X8B,0X40,0X8B,0X40,0X9B,0XC1,0XB4,0X83,0XD5,0X66,0XEE,0X08,

133830XF6,0X69,0XFE,0XA9,0XFE,0XAA,0XF6,0X8A,0XF6,0XCC,0XEE,0X6B,0XE6,0X8C,0XC5,0X87,

133840XEE,0XEB,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0X8D,0XFF,0X8D,

133850XFF,0XAC,0XFF,0X8C,0XFF,0XAC,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8D,0XFF,0X8D,

133860XFF,0X8C,0XFF,0XAC,0XFF,0XAC,0XFF,0X8B,0XFF,0X8B,0XFF,0X6B,0XFF,0X8C,0XFF,0X6D,

133870XFF,0X8D,0XFF,0X6F,0XE6,0XCF,0XD6,0X70,0XFF,0XB8,0XFF,0XBB,0XFF,0XFE,0XFF,0XFF,

133880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

133970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFB,0XFF,0XD7,

133980XF7,0X93,0XF7,0X8F,0XFF,0X8D,0XFF,0XAB,0XFF,0XAB,0XFF,0XAC,0XFF,0X8D,0XFF,0X6D,

133990XFF,0X8C,0XFF,0X8C,0XFF,0XAC,0XFF,0XAC,0XFF,0XAC,0XFF,0XCD,0XFF,0X8D,0XFF,0X8E,

134000XF7,0X0C,0XA4,0X21,0X9B,0XE0,0XA4,0X01,0X93,0X80,0X93,0X41,0X8B,0X01,0X82,0XC1,

134010X7A,0XA0,0X7A,0XA0,0X7A,0XE1,0X93,0X83,0XAC,0X24,0XCD,0X26,0XEE,0X08,0XEE,0X48,

134020XF6,0X8A,0XF6,0XAB,0XEE,0XAC,0XEE,0XCD,0XF7,0X0F,0XCD,0XCA,0XEE,0XCB,0XFF,0X6C,

134030XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,

134040XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8C,

134050XFF,0X8C,0XFF,0X8B,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X8C,0XFF,0X6D,

134060XF7,0X2E,0XD6,0X2D,0XE6,0X92,0XFF,0XDA,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XF9,0XFF,0X95,0XF7,0X51,0XFF,0X6E,

134170XFF,0X6C,0XFF,0X8B,0XFF,0X8B,0XFF,0X8B,0XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XFF,0X8C,

134180XFF,0X8C,0XFF,0X8C,0XFF,0X8C,0XFF,0X8D,0XFF,0X6D,0XFF,0X6D,0XF6,0XEB,0X9C,0X20,

134190X9C,0X00,0X9B,0XE1,0X93,0X60,0X83,0X00,0X82,0XC1,0X72,0X81,0X6A,0X61,0X62,0X20,

134200X62,0X41,0X72,0XC2,0X8B,0X63,0XAC,0X65,0XCD,0X47,0XE6,0X2A,0XEE,0X8C,0XE6,0X4C,

134210XEE,0XCE,0XFF,0X72,0XFF,0X94,0XDE,0X4E,0XEE,0XAC,0XFF,0X4D,0XFF,0X6C,0XFF,0X6C,

134220XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,

134230XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6B,0XFF,0X6B,

134240XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X6B,0XFF,0X6C,0XF7,0X6C,0XF7,0X2D,0XE6,0X8C,

134250XC5,0X8C,0XFF,0X97,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,

134350XFF,0XFF,0XFF,0XFC,0XFF,0XB6,0XFF,0X72,0XF7,0X4F,0XFF,0X4D,0XFF,0X6C,0XFF,0X8C,

134360XFF,0X6B,0XFF,0X6B,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X8C,0XFF,0X6B,0XFF,0X6B,

134370XFF,0X6C,0XFF,0X6C,0XFF,0X6D,0XFF,0X6D,0XEE,0XAA,0X9C,0X00,0X9C,0X01,0X9B,0XC1,

134380X8B,0X40,0X83,0X00,0X7A,0XA0,0X6A,0X60,0X5A,0X21,0X51,0XC1,0X49,0XE1,0X5A,0X21,

134390X6A,0XA2,0X83,0X63,0XA4,0X45,0XCD,0X89,0XDE,0X2D,0XDE,0X6F,0XF7,0X34,0XFF,0XF7,

134400XFF,0XD8,0XDE,0X91,0XDE,0X6D,0XFF,0X2D,0XFF,0X4C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,

134410XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X6C,0XFF,0X4C,0XFF,0X6C,

134420XFF,0X4C,0XFF,0X6C,0XFF,0X4C,0XFF,0X6B,0XFF,0X6B,0XFF,0X6B,0XFF,0X4B,0XFF,0X2B,

134430XFF,0X4B,0XFF,0X4B,0XFF,0X4C,0XFF,0X4C,0XF7,0X2C,0XEE,0XCC,0XCD,0XAB,0XD6,0X10,

134440XFF,0XFB,0XEF,0X5B,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134530XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDB,

134540XF7,0X74,0XF7,0X50,0XF7,0X2E,0XFF,0X4D,0XFF,0X6C,0XFF,0X6C,0XFF,0X6B,0XFF,0X6B,

134550XFF,0X6B,0XFF,0X6B,0XFF,0X4B,0XFF,0X6C,0XFF,0X6B,0XFF,0X4B,0XFF,0X6C,0XFF,0X4C,

134560XFF,0X6D,0XFF,0X4D,0XE6,0X69,0X93,0XE0,0X9C,0X01,0X93,0XA0,0X83,0X60,0X7B,0X00,

134570X72,0XA0,0X6A,0X61,0X52,0X01,0X49,0XC1,0X49,0XE2,0X41,0XC1,0X5A,0X41,0X62,0X81,

134580X83,0X84,0X9C,0X67,0XB5,0X2C,0XE6,0XD4,0XFF,0XB8,0XFF,0XFA,0XFF,0XFA,0XDE,0XB3,

134590XD6,0X2D,0XFF,0X4E,0XFF,0X4C,0XFF,0X4B,0XFF,0X4C,0XFF,0X6C,0XFF,0X4C,0XFF,0X4B,

134600XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,

134610XFF,0X4B,0XFF,0X4B,0XFF,0X4A,0XFF,0X4A,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

134620XFF,0X2C,0XFF,0X2C,0XFF,0X2C,0XFF,0X2D,0XCD,0XA9,0XBD,0X4A,0XEF,0X16,0XFF,0XFD,

134630XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134720XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0X99,0XF7,0X31,0XF7,0X2E,

134730XFF,0X2D,0XFF,0X2C,0XFF,0X4C,0XFF,0X4C,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,

134740XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X6C,0XFF,0X2C,0XFF,0X4C,0XFF,0X2C,

134750XE6,0X29,0X93,0XE0,0X9C,0X01,0X8B,0XA0,0X83,0X61,0X7B,0X00,0X72,0XC1,0X62,0X61,

134760X5A,0X21,0X49,0XE1,0X41,0XC1,0X41,0XA1,0X49,0XE0,0X52,0X00,0X6A,0XE3,0X73,0X44,

134770XAD,0X0D,0XF7,0X78,0XFF,0XFC,0XFF,0XFC,0XFF,0XDC,0XDE,0XD5,0XCE,0X0D,0XFF,0X4E,

134780XFF,0X4C,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,0XFF,0X4B,

134790XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X4B,

134800XFF,0X2A,0XFF,0X2B,0XFF,0X2B,0XFF,0X0C,0XFF,0X0B,0XFF,0X2B,0XFF,0X0B,0XFF,0X2B,

134810XFF,0X2B,0XFF,0X0B,0XDE,0X49,0XB5,0X28,0XC5,0XCF,0XFF,0XBB,0XFF,0XFE,0XFF,0XFF,

134820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

134900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFE,

134910XFF,0XFE,0XFF,0XFD,0XFF,0XBB,0XF7,0X56,0XF7,0X0F,0XF7,0X2C,0XFF,0X2C,0XFF,0X2C,

134920XFF,0X2C,0XFF,0X2C,0XFF,0X2B,0XFF,0X4B,0XFF,0X4B,0XFF,0X2B,0XFF,0X2B,0XFF,0X4B,

134930XFF,0X2B,0XFF,0X4B,0XFF,0X4C,0XFF,0X2C,0XFF,0X4C,0XFF,0X2C,0XDE,0X09,0X9C,0X01,

134940X93,0XE1,0X8B,0XA1,0X83,0X61,0X73,0X01,0X72,0XC1,0X62,0X81,0X5A,0X41,0X52,0X22,

134950X41,0XA1,0X41,0XC1,0X41,0XA0,0X49,0XE0,0X52,0X21,0X5A,0X83,0XD6,0X54,0XFF,0XFC,

134960XFF,0XFE,0XFF,0XFE,0XFF,0XDD,0XE6,0XD6,0XCD,0XED,0XF7,0X0D,0XFF,0X2C,0XFF,0X2B,

134970XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

134980XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2A,0XFF,0X0B,

134990XFF,0X0B,0XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X2B,

135000XF6,0XCB,0XCD,0XC9,0X9C,0X89,0XDE,0XB5,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

135010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFC,

135100XFF,0X98,0XF7,0X13,0XF7,0X0E,0XFF,0X0B,0XFF,0X2C,0XFF,0X0B,0XFF,0X0C,0XFF,0X2B,

135110XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,

135120XFF,0X2B,0XFF,0X2B,0XFF,0X0C,0XFF,0X2C,0XDD,0XE8,0X9B,0XE1,0X8B,0XA0,0X8B,0X81,

135130X83,0X41,0X73,0X01,0X72,0XE2,0X6A,0XA2,0X62,0X61,0X5A,0X21,0X41,0XC1,0X4A,0X02,

135140X41,0X80,0X49,0XA1,0X41,0X81,0X6A,0XE7,0XF7,0X5A,0XFF,0XFD,0XFF,0XDE,0XFF,0XFE,

135150XFF,0XDD,0XE6,0XD6,0XD5,0XCD,0XF7,0X0D,0XFF,0X0C,0XFF,0X2B,0XFF,0X0B,0XFF,0X0B,

135160XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,

135170XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0B,0XFF,0X0B,0XFE,0XEB,0XFE,0XEB,

135180XFE,0XEA,0XFE,0XEA,0XFE,0XEB,0XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFE,0XEB,0XD5,0XE9,

135190XAC,0XC8,0XC5,0XAF,0XFF,0XB9,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFA,0XFF,0X55,0XEE,0XF0,

135290XF7,0X0D,0XFF,0X0B,0XFF,0X2B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,0XFF,0X0A,

135300XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFE,0XEA,0XFF,0X2B,

135310XFE,0XEB,0XFF,0X2C,0XD5,0XA7,0X93,0XC1,0X83,0X60,0X83,0X61,0X7B,0X42,0X73,0X02,

135320X73,0X03,0X6A,0XC2,0X62,0X82,0X5A,0X41,0X4A,0X01,0X4A,0X22,0X41,0XA1,0X41,0X81,

135330X41,0X82,0X94,0X0D,0XFF,0X9D,0XFF,0XFF,0XFF,0XBE,0XFF,0XFF,0XFF,0XFE,0XE6,0XD6,

135340XC5,0X6B,0XF6,0XCD,0XFF,0X0B,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,

135350XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

135360XFE,0XEA,0XFE,0XEA,0XFF,0X0B,0XFE,0XEB,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

135370XFE,0XCA,0XFE,0XCA,0XFE,0XEA,0XFE,0XCA,0XFE,0XEB,0XDD,0XE9,0XBD,0X49,0XA4,0X89,

135380XDE,0XB4,0XFF,0XFB,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135470XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X98,0XEF,0X11,0XF6,0XCE,0XFF,0X0C,0XFE,0XEB,

135480XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0A,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,

135490XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFF,0X0C,0XFE,0XEC,

135500XCD,0X67,0X8B,0X60,0X7B,0X20,0X83,0X42,0X83,0X63,0X7B,0X23,0X7B,0X24,0X73,0X03,

135510X6A,0XC3,0X62,0X83,0X5A,0X83,0X4A,0X01,0X4A,0X02,0X41,0X81,0X41,0XC3,0XC5,0XD5,

135520XFF,0XBE,0XFF,0XFF,0XF7,0XBE,0XFF,0XFF,0XFF,0XDE,0XEE,0XF7,0XC5,0X6B,0XF6,0XCD,

135530XFE,0XEB,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFF,0X0A,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

135540XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

135550XFE,0XCB,0XFE,0XCA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

135560XFE,0XCA,0XFE,0XCA,0XFF,0X0B,0XE6,0X29,0XCD,0XA9,0X94,0X25,0XB5,0X2C,0XFF,0XB9,

135570XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

135580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFE,

135660XFF,0XFC,0XF7,0X56,0XEE,0XEF,0XF6,0XEC,0XFE,0XEB,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,

135670XFE,0XEB,0XFF,0X0B,0XFF,0X0B,0XFF,0X0B,0XFE,0XEB,0XFE,0XEB,0XFF,0X0B,0XFE,0XEA,

135680XFF,0X0B,0XFE,0XEA,0XFE,0XEA,0XFE,0XEB,0XFE,0XEB,0XFE,0XCC,0XCD,0X67,0X83,0X40,

135690X72,0XE0,0X7B,0X01,0X7B,0X23,0X7B,0X03,0X7B,0X24,0X73,0X03,0X6A,0XE4,0X62,0XC3,

135700X62,0XC3,0X52,0X62,0X52,0X22,0X41,0XC2,0X5A,0X87,0XDE,0X99,0XFF,0XDF,0XFF,0XFF,

135710XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XEF,0X37,0XBD,0X6A,0XF6,0XCD,0XFE,0XEB,0XFE,0XEA,

135720XFE,0XCA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

135730XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

135740XFE,0XC9,0XFE,0XC9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XAA,0XFE,0X89,0XFE,0XAA,

135750XFE,0XAA,0XFE,0XEC,0XCD,0X67,0XB4,0XC6,0X94,0X26,0XD6,0X32,0XFF,0XDB,0XFF,0XFE,

135760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDA,0XEE,0XF3,

135850XEE,0XCD,0XF6,0XEB,0XFE,0XCB,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEB,

135860XFE,0XEB,0XFE,0XEB,0XFE,0XEB,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,

135870XFE,0XCA,0XFE,0XCA,0XFE,0XCB,0XFE,0XCC,0XCD,0X47,0X83,0X20,0X72,0XA0,0X72,0XE1,

135880X7B,0X03,0X7B,0X03,0X7B,0X24,0X73,0X04,0X6A,0XE4,0X6A,0XE3,0X62,0XC3,0X5A,0XA2,

135890X52,0X41,0X49,0XE2,0X73,0X29,0XEF,0X1B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135900XFF,0XFD,0XF7,0X78,0XBD,0X4A,0XF6,0XCC,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

135910XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,

135920XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XC9,0XFE,0XA8,

135930XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XFE,0XCA,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,

135940XDD,0XC7,0XBC,0XE6,0X94,0X05,0XAD,0X0C,0XF7,0X79,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

135950XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

135990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136030XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0X98,0XEE,0XB1,0XF6,0XCC,0XF6,0XCA,

136040XFE,0XCA,0XFE,0XCA,0XFE,0XC9,0XFE,0XE9,0XFE,0XCA,0XFE,0XCA,0XFE,0XCB,0XFE,0XCB,

136050XFE,0XCA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XEA,0XFE,0XCA,0XFE,0XCA,0XFE,0XCA,

136060XFE,0XCB,0XFE,0XCC,0XC5,0X27,0X7B,0X00,0X72,0XA0,0X72,0XE2,0X7B,0X03,0X7B,0X04,

136070X7B,0X24,0X73,0X04,0X72,0XE4,0X6A,0XE4,0X62,0XC2,0X62,0XE3,0X5A,0X62,0X52,0X22,

136080X8B,0XEC,0XF7,0X3B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XF7,0X78,

136090XBD,0X4A,0XF6,0XAC,0XFE,0XAA,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XC9,

136100XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

136110XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XA9,0XFE,0XA8,0XFE,0XA9,0XFE,0X89,0XFE,0X8A,

136120XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XFE,0X89,0XF6,0X89,0XE6,0X08,0XBC,0XE5,

136130XA4,0X46,0X9C,0X49,0XD6,0X95,0XFF,0XDC,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

136140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136220XFF,0XFD,0XFF,0XFB,0XF7,0X35,0XEE,0X8F,0XF6,0XAB,0XF6,0XA9,0XFE,0XAA,0XFE,0XAA,

136230XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XAB,0XFE,0XCA,0XFE,0XCA,0XFE,0XC9,

136240XFE,0XC9,0XFE,0XC9,0XFE,0XC9,0XFE,0XCA,0XFE,0XAA,0XFE,0XAA,0XFE,0XAB,0XF6,0XAC,

136250XBD,0X06,0X72,0XE0,0X6A,0XA0,0X72,0XC2,0X72,0XE3,0X72,0XE4,0X73,0X04,0X73,0X04,

136260X73,0X04,0X6A,0XE4,0X62,0XC3,0X6B,0X04,0X62,0X83,0X5A,0X64,0XA4,0XB0,0XFF,0X9C,

136270XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0X79,0XC5,0X4A,0XF6,0X8C,

136280XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

136290XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

136300XFE,0X89,0XFE,0XA9,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0X88,

136310XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XEE,0X28,0XCD,0X46,0XAC,0X66,0X8B,0XC6,

136320XB5,0X6F,0XF7,0XBA,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,

136410XEE,0XD2,0XEE,0X8D,0XF6,0X8A,0XFE,0X88,0XFE,0XA9,0XFE,0X89,0XFE,0XA9,0XFE,0XA8,

136420XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAA,0XFE,0XA9,0XFE,0XA9,0XFE,0XC9,0XFE,0XA9,

136430XFE,0XA9,0XFE,0XA9,0XFE,0XA9,0XFE,0XAA,0XFE,0XAB,0XF6,0X8B,0XB4,0XC6,0X72,0XA0,

136440X6A,0X81,0X72,0XC2,0X72,0XC3,0X72,0XE4,0X73,0X04,0X73,0X04,0X72,0XE3,0X6B,0X03,

136450X6A,0XE3,0X6A,0XE4,0X62,0XA4,0X5A,0X65,0XBD,0X52,0XFF,0X9D,0XFF,0XDF,0XFF,0XFF,

136460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0X59,0XC5,0X4B,0XEE,0X6C,0XFE,0X8A,0XFE,0X89,

136470XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,

136480XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XFE,0X89,0XF6,0X88,0XF6,0X88,

136490XF6,0X88,0XF6,0X88,0XF6,0X88,0XFE,0X68,0XFE,0X68,0XF6,0X87,0XFE,0XA8,0XF6,0X88,

136500XFE,0X88,0XFE,0X68,0XF6,0X48,0XDD,0X87,0XAC,0X86,0X8B,0XC6,0X94,0X6A,0XE7,0X17,

136510XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XFF,0X98,0XE6,0X8F,0XEE,0X6B,

136600XF6,0X69,0XFE,0XA8,0XFE,0X89,0XFE,0X89,0XFE,0X88,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,

136610XFE,0X8A,0XFE,0X8A,0XFE,0X89,0XFE,0XA9,0XFE,0XA8,0XFE,0XA8,0XFE,0XA9,0XFE,0X89,

136620XFE,0X89,0XFE,0X8A,0XF6,0X8B,0XF6,0X8B,0XB4,0XA6,0X6A,0XA0,0X6A,0X81,0X6A,0XC3,

136630X72,0XC4,0X72,0XE4,0X73,0X04,0X73,0X04,0X73,0X03,0X73,0X03,0X6B,0X03,0X6A,0XE4,

136640X6A,0XA5,0X62,0X86,0XC5,0XB4,0XFF,0XBD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136650XFF,0XFF,0XF7,0X7A,0XBD,0X2C,0XEE,0X4C,0XF6,0X8A,0XFE,0X88,0XFE,0X88,0XFE,0X88,

136660XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,

136670XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XFE,0X69,0XF6,0X69,0XF6,0X69,0XF6,0X68,

136680XF6,0X68,0XFE,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XFE,0X68,

136690XF6,0X49,0XE5,0XA8,0XB4,0XA6,0X93,0XC5,0X83,0XC8,0XBD,0XD1,0XFF,0XFC,0XFF,0XFE,

136700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136780XFF,0XFF,0XFF,0XDE,0XFF,0XFC,0XF7,0X56,0XE6,0X4D,0XEE,0X4A,0XF6,0X48,0XFE,0XA9,

136790XFE,0X68,0XFE,0X89,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XFE,0X89,

136800XFE,0X89,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X89,0XF6,0X69,0XF6,0X89,

136810XF6,0X8A,0XF6,0X6B,0XB4,0XA6,0X6A,0XA0,0X6A,0XA1,0X72,0XC3,0X72,0XE4,0X72,0XE4,

136820X72,0XE4,0X72,0XE3,0X72,0XE3,0X6B,0X03,0X6B,0X03,0X62,0XC4,0X6A,0XC5,0X62,0XA6,

136830XCD,0XD5,0XFF,0XBD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7A,

136840XBD,0X2C,0XEE,0X4C,0XF6,0X6A,0XF6,0X68,0XFE,0X68,0XF6,0X88,0XFE,0X68,0XF6,0X88,

136850XFE,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

136860XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X69,0XF6,0X68,0XF6,0X68,0XF6,0X67,

136870XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X88,0XF6,0X68,0XF6,0X48,0XFE,0X69,0XDD,0X67,

136880XC5,0X07,0X9C,0X06,0X7B,0X86,0X94,0X8C,0XFF,0XBB,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,

136890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

136960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,

136970XFF,0XBB,0XF6,0XF3,0XDE,0X0B,0XF6,0X8A,0XF6,0X69,0XF6,0X28,0XFE,0X68,0XF6,0X68,

136980XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XFE,0X89,0XFE,0X88,0XF6,0X88,

136990XF6,0X88,0XF6,0X88,0XFE,0X88,0XFE,0X88,0XF6,0X88,0XF6,0X68,0XF6,0X8A,0XEE,0X6B,

137000XAC,0X65,0X72,0XC0,0X6A,0X81,0X72,0XC3,0X72,0XE4,0X72,0XE4,0X72,0XE4,0X73,0X04,

137010X73,0X03,0X73,0X03,0X6A,0XE3,0X6A,0XA3,0X6A,0XA5,0X72,0XE7,0XD6,0X56,0XFF,0XFE,

137020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XBD,0X2B,0XEE,0X4C,

137030XEE,0X69,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

137040XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

137050XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X47,

137060XF6,0X47,0XF6,0X68,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XE6,0X09,0XC4,0XE6,0XA4,0X45,

137070X83,0X85,0X8B,0XE9,0XDE,0X95,0XFF,0X9B,0XFF,0XFE,0XFF,0XFF,0XF7,0XBE,0XFF,0XFF,

137080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137150XFF,0XFF,0XFF,0XFF,0XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0X99,0XE6,0X71,

137160XDE,0X0B,0XEE,0X49,0XF6,0X49,0XF6,0X28,0XF6,0X68,0XF6,0X67,0XF6,0X88,0XF6,0X88,

137170XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X68,0XF6,0X68,

137180XFE,0X88,0XFE,0X68,0XF6,0X88,0XF6,0X68,0XF6,0X8A,0XEE,0X4B,0XAC,0X44,0X72,0XC0,

137190X6A,0X81,0X72,0XC3,0X72,0XE4,0X72,0XE4,0X72,0XE4,0X72,0XE4,0X72,0XE3,0X73,0X03,

137200X6A,0XE3,0X6A,0XA3,0X6A,0XA4,0X72,0XE7,0XD6,0X57,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137210XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XBA,0XBD,0X2B,0XE6,0X4C,0XEE,0X4A,0XF6,0X68,

137220XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

137230XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

137240XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X68,

137250XF6,0X68,0XF6,0X68,0XF6,0X48,0XE6,0X09,0XC5,0X06,0XAC,0X45,0X8B,0XA5,0X7B,0X66,

137260XAD,0X0F,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

137270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137340XF7,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0X58,0XDE,0X0F,0XE6,0X2B,0XE6,0X08,

137350XEE,0X49,0XF6,0X49,0XF6,0X48,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

137360XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X68,0XF6,0X68,

137370XF6,0X68,0XF6,0X68,0XF6,0X6A,0XEE,0X4A,0XA4,0X44,0X72,0XC0,0X6A,0X81,0X72,0XE3,

137380X72,0XE4,0X72,0XE4,0X72,0XE4,0X72,0XE4,0X72,0XE3,0X73,0X03,0X6A,0XE3,0X6A,0XA3,

137390X6A,0X84,0X73,0X08,0XD6,0X77,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137400XFF,0XFE,0XFF,0XBA,0XB5,0X0B,0XE6,0X2B,0XEE,0X49,0XF6,0X48,0XF6,0X48,0XF6,0X48,

137410XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

137420XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X48,

137430XF6,0X68,0XEE,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XEE,0X47,

137440XEE,0X48,0XEE,0X29,0XCD,0X26,0XAC,0X65,0X8B,0XC5,0X73,0X45,0X83,0XA9,0XFF,0X9A,

137450XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

137530XFF,0XFF,0XFF,0XDD,0XEE,0XF5,0XD5,0XED,0XE6,0X4B,0XE6,0X08,0XEE,0X28,0XF6,0X49,

137540XF6,0X47,0XF6,0X67,0XF6,0X67,0XEE,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

137550XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X68,0XF6,0X48,

137560XF6,0X6A,0XE6,0X4A,0XA4,0X24,0X72,0XC0,0X6A,0XA1,0X72,0XC3,0X72,0XE4,0X72,0XE4,

137570X72,0XE4,0X72,0XE4,0X72,0XE3,0X72,0XE3,0X6A,0XE3,0X6A,0XA3,0X6A,0X84,0X7B,0X28,

137580XDE,0X98,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDA,

137590XB5,0X0B,0XE6,0X0B,0XEE,0X49,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,0XEE,0X48,

137600XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

137610XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X48,0XEE,0X47,0XEE,0X47,

137620XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XE6,0X09,

137630XCD,0X47,0XAC,0X65,0X8B,0XC5,0X7B,0X45,0X7B,0X68,0XD6,0X35,0XFF,0XDD,0XFF,0XBD,

137640XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XBB,

137720XDE,0X72,0XD5,0XCC,0XE6,0X2A,0XE6,0X28,0XEE,0X08,0XF6,0X28,0XEE,0X47,0XEE,0X47,

137730XEE,0X47,0XEE,0X48,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

137740XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X48,0XEE,0X48,0XEE,0X69,0XE6,0X2A,

137750X9C,0X04,0X72,0XC0,0X6A,0XA1,0X6A,0XC3,0X6A,0XC3,0X6A,0XE4,0X72,0XE4,0X72,0XE4,

137760X6A,0XC3,0X72,0XE3,0X6A,0XE3,0X6A,0XA3,0X62,0X64,0X7B,0X48,0XDE,0XB8,0XFF,0XFE,

137770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDA,0XB5,0X0B,0XDE,0X0B,

137780XEE,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

137790XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

137800XEE,0X47,0XEE,0X47,0XEE,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X27,0XEE,0X27,

137810XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X28,0XE6,0X28,0XD5,0X88,0XB4,0X86,

137820X8B,0XA4,0X7B,0X24,0X7B,0X47,0XA4,0XCF,0XFF,0X9B,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,

137830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

137900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0X9A,0XD5,0XEF,0XD5,0XEB,

137910XDE,0X08,0XEE,0X48,0XED,0XE7,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X48,

137920XEE,0X48,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X48,0XEE,0X48,

137930XF6,0X47,0XEE,0X27,0XEE,0X47,0XEE,0X48,0XEE,0X49,0XE6,0X0A,0X9C,0X03,0X72,0XC0,

137940X6A,0XA1,0X6A,0XC3,0X6A,0XC3,0X6A,0XE4,0X72,0XE4,0X72,0XE4,0X6A,0XE3,0X6A,0XE3,

137950X6A,0XC3,0X6A,0XC4,0X62,0X64,0X7B,0X49,0XDE,0XD9,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

137960XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XDB,0XB5,0X0B,0XDD,0XEB,0XEE,0X29,0XEE,0X28,

137970XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

137980XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

137990XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,

138000XEE,0X27,0XEE,0X47,0XEE,0X28,0XEE,0X28,0XDD,0XC8,0XBC,0XC6,0X8B,0XA3,0X7B,0X44,

138010X73,0X05,0X83,0X8A,0XEF,0X3A,0XFF,0XFD,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

138020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138090XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XF7,0X57,0XCD,0XAD,0XDD,0XEB,0XDE,0X08,0XEE,0X48,

138100XEE,0X07,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,

138110XEE,0X28,0XEE,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X48,0XEE,0X48,0XEE,0X47,0XEE,0X27,

138120XEE,0X47,0XEE,0X28,0XEE,0X49,0XDE,0X0A,0X9B,0XE3,0X6A,0XC0,0X6A,0XA2,0X6A,0XC3,

138130X6A,0XC3,0X6A,0XE4,0X72,0XE4,0X6A,0XC4,0X6A,0XC3,0X6A,0XC3,0X6A,0XC3,0X6A,0XA4,

138140X62,0X63,0X7B,0X49,0XE6,0XD9,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138150XFF,0XFE,0XFF,0XDB,0XB5,0X0B,0XDD,0XEB,0XEE,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X28,

138160XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138170XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138180XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,

138190XEE,0X28,0XEE,0X29,0XE5,0XE9,0XC4,0XE7,0X93,0XC4,0X7B,0X44,0X7B,0X26,0X62,0XC6,

138200XD6,0X76,0XFF,0XBC,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

138280XFF,0XDC,0XEE,0XF5,0XCD,0XAB,0XDE,0X0A,0XE6,0X28,0XEE,0X28,0XEE,0X07,0XEE,0X28,

138290XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

138300XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X28,

138310XEE,0X49,0XDE,0X0A,0X93,0XC3,0X6A,0XA0,0X6A,0XA1,0X6A,0XC3,0X62,0XA3,0X6A,0XC3,

138320X6A,0XC3,0X6A,0XA3,0X6A,0XC3,0X6A,0XA3,0X62,0XA3,0X6A,0XA4,0X62,0X43,0X7B,0X49,

138330XDE,0XD9,0XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,

138340XB4,0XEB,0XDD,0XCB,0XEE,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,

138350XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138360XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138370XEE,0X07,0XEE,0X07,0XEE,0X28,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X28,

138380XE6,0X09,0XC5,0X07,0X9B,0XE4,0X7B,0X23,0X73,0X25,0X73,0X07,0XA4,0XCF,0XFF,0XDC,

138390XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138460XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFC,0XDE,0X52,

138470XCD,0XAA,0XDE,0X09,0XE6,0X07,0XE6,0X07,0XE5,0XE7,0XEE,0X08,0XE6,0X07,0XEE,0X27,

138480XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138490XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X49,0XDD,0XEA,

138500X8B,0XA2,0X6A,0XA0,0X6A,0XA2,0X6A,0XC3,0X62,0XA3,0X6A,0XC4,0X6A,0XC3,0X6A,0XC3,

138510X6A,0XC3,0X6A,0XC3,0X62,0X83,0X6A,0XC4,0X62,0X43,0X7B,0X49,0XDE,0XD8,0XFF,0XFE,

138520XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XB4,0XEB,0XD5,0XCA,

138530XEE,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

138540XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138550XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138560XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X07,0XEE,0X07,0XEE,0X28,0XE6,0X09,0XC5,0X27,

138570X9B,0XE4,0X7B,0X43,0X73,0X05,0X6A,0XE6,0X94,0X2D,0XF7,0X5A,0XFF,0XFD,0XFF,0XFE,

138580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138650XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFA,0XCD,0XEF,0XCD,0XAA,0XDE,0X08,

138660XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE5,0XE7,0XEE,0X07,0XEE,0X07,0XE6,0X28,0XEE,0X28,

138670XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,

138680XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X49,0XDD,0XEA,0X8B,0XA2,0X6A,0XA0,

138690X6A,0XA2,0X6A,0XA3,0X62,0XA3,0X6A,0XC4,0X62,0XA3,0X6A,0XC3,0X62,0XA3,0X62,0XA3,

138700X62,0X83,0X6A,0XA4,0X62,0X43,0X83,0X69,0XE6,0XD8,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

138710XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XB4,0XEB,0XD5,0XCB,0XEE,0X29,0XEE,0X28,

138720XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138730XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138740XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X07,

138750XEE,0X27,0XE6,0X07,0XEE,0X27,0XEE,0X28,0XE6,0X08,0XCD,0X47,0X9C,0X04,0X83,0X23,

138760X72,0XE4,0X6A,0XE6,0X7B,0X89,0XDE,0X97,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

138770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

138840XFF,0XFF,0XFF,0XFD,0XFF,0XB9,0XBD,0X6C,0XD5,0XC9,0XDE,0X28,0XDD,0XE7,0XE6,0X07,

138850XEE,0X08,0XE5,0XE7,0XEE,0X07,0XE6,0X07,0XE6,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,

138860XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138870XEE,0X27,0XEE,0X28,0XEE,0X49,0XDD,0XE9,0X8B,0X82,0X6A,0X80,0X6A,0XA2,0X62,0XA3,

138880X62,0XA3,0X62,0XA3,0X62,0XA4,0X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0X83,

138890X62,0X43,0X83,0X69,0XE6,0XD9,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138900XFF,0XFE,0XFF,0XDB,0XB4,0XEB,0XD5,0XAA,0XE6,0X09,0XEE,0X08,0XEE,0X08,0XEE,0X08,

138910XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

138920XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

138930XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X07,

138940XEE,0X27,0XEE,0X28,0XE6,0X08,0XCD,0X47,0XA4,0X24,0X7B,0X22,0X72,0XC3,0X6A,0XE5,

138950X62,0XC6,0XBD,0XD3,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

138990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFC,

139030XF7,0X36,0XB5,0X2A,0XD6,0X09,0XDE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X28,0XE5,0XE7,

139040XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,

139050XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

139060XEE,0X49,0XD5,0XC9,0X8B,0X82,0X6A,0X80,0X6A,0XA2,0X62,0X82,0X62,0XA3,0X62,0XA3,

139070X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0X83,0X62,0XA4,0X5A,0X63,0X5A,0X43,0X83,0X8A,

139080XE6,0XF9,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,

139090XB4,0XEB,0XD5,0XAA,0XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139100XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139110XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

139120XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X27,0XE6,0X28,

139130XE6,0X08,0XD5,0X88,0XAC,0X45,0X7B,0X22,0X72,0XC3,0X72,0XE5,0X62,0XA5,0XA4,0XF0,

139140XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139210XFF,0XFF,0XFF,0XBE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XDC,0XDE,0X93,0XBD,0X4A,

139220XDE,0X29,0XDD,0XE6,0XE6,0X07,0XE5,0XE7,0XEE,0X08,0XE5,0XE8,0XE5,0XE7,0XE6,0X07,

139230XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X27,

139240XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XE6,0X2A,0XD5,0XC9,

139250X8B,0X62,0X62,0X80,0X62,0XA2,0X62,0X82,0X62,0XA3,0X62,0X83,0X62,0XA4,0X62,0XA3,

139260X62,0XA3,0X62,0X83,0X62,0XA4,0X5A,0X63,0X5A,0X23,0X83,0X8A,0XE6,0XF9,0XFF,0XFE,

139270XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDB,0XB4,0XEB,0XCD,0X8A,

139280XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139290XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139300XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

139310XEE,0X08,0XEE,0X08,0XEE,0X07,0XE6,0X07,0XEE,0X27,0XE6,0X27,0XE6,0X08,0XD5,0XA8,

139320XAC,0X65,0X83,0X22,0X72,0XC3,0X6A,0XC5,0X62,0XA6,0X8C,0X2D,0XEF,0X3A,0XFF,0XFD,

139330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBE,

139400XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XDB,0XCD,0XF0,0XC5,0X8B,0XDE,0X08,0XDD,0XE6,

139410XE6,0X07,0XE5,0XE7,0XE5,0XE7,0XE6,0X08,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,

139420XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

139430XEE,0X27,0XEE,0X27,0XE6,0X07,0XEE,0X28,0XE6,0X29,0XD5,0XC9,0X8B,0X62,0X62,0X60,

139440X62,0X82,0X62,0X82,0X62,0X83,0X62,0X83,0X62,0X83,0X62,0X83,0X62,0X83,0X62,0X83,

139450X62,0X83,0X5A,0X63,0X5A,0X23,0X83,0X8A,0XE6,0XF9,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

139460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XAC,0XCB,0XCD,0X8A,0XE6,0X09,0XEE,0X07,

139470XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139480XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139490XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

139500XEE,0X07,0XE6,0X07,0XEE,0X27,0XE6,0X07,0XE6,0X08,0XDD,0XC8,0XAC,0X65,0X83,0X22,

139510X72,0XC3,0X6A,0XA4,0X62,0XA5,0X73,0X6A,0XD6,0X96,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

139520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XDE,

139590XFF,0XFE,0XFF,0XDB,0XBD,0X8E,0XCD,0XEB,0XDE,0X08,0XDD,0XE6,0XE5,0XE7,0XE5,0XE7,

139600XE5,0XC7,0XE6,0X08,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

139610XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

139620XEE,0X07,0XEE,0X28,0XE6,0X29,0XD5,0XA9,0X83,0X42,0X62,0X60,0X62,0X61,0X62,0X83,

139630X62,0X83,0X62,0X84,0X62,0X83,0X62,0X83,0X5A,0X83,0X62,0X83,0X5A,0X63,0X5A,0X63,

139640X5A,0X43,0X83,0XAA,0XEF,0X19,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139650XFF,0XFF,0XFF,0XFC,0XAC,0XCB,0XCD,0X6A,0XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139660XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139670XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139680XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XE6,0X07,

139690XEE,0X27,0XE6,0X07,0XE6,0X08,0XDD,0XE9,0XB4,0X86,0X83,0X22,0X72,0XA2,0X6A,0XA4,

139700X62,0X85,0X62,0XE7,0XBD,0XD4,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139770XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XFE,0XFF,0XBB,

139780XB5,0X4C,0XD5,0XEB,0XDD,0XE7,0XDD,0XE6,0XDD,0XE6,0XE6,0X07,0XE5,0XC7,0XE6,0X08,

139790XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,

139800XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X28,

139810XEE,0X29,0XD5,0XA9,0X83,0X42,0X62,0X60,0X62,0X61,0X62,0X83,0X5A,0X63,0X62,0X83,

139820X5A,0X63,0X5A,0X83,0X5A,0X83,0X62,0XA3,0X5A,0X62,0X5A,0X83,0X5A,0X43,0X83,0XAA,

139830XEF,0X1A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

139840XAC,0XEB,0XCD,0X6A,0XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139850XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

139860XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

139870XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X07,

139880XE6,0X28,0XE5,0XE9,0XBC,0XC6,0X83,0X02,0X6A,0X82,0X6A,0X84,0X5A,0X85,0X5A,0XA6,

139890XB5,0X72,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

139960XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFF,0XFF,0XFE,0XEF,0X17,0XBD,0X4B,0XD5,0XCA,

139970XDD,0XE8,0XDD,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

139980XE6,0X08,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X07,

139990XE6,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XE6,0X06,0XEE,0X28,0XEE,0X29,0XD5,0X89,

140000X83,0X42,0X62,0X60,0X62,0X61,0X62,0X62,0X62,0X83,0X5A,0X83,0X5A,0X83,0X5A,0X83,

140010X5A,0X83,0X5A,0X83,0X5A,0X83,0X52,0X43,0X52,0X43,0X83,0XCA,0XE7,0X3A,0XFF,0XFE,

140020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XB5,0X0C,0XC5,0X6A,

140030XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140040XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140050XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140060XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X27,0XE6,0X08,0XE6,0X09,

140070XBC,0XC6,0X83,0X22,0X6A,0X83,0X62,0X43,0X62,0X85,0X52,0X45,0X9C,0XAF,0XF7,0X9B,

140080XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

140150XFF,0XFF,0XFF,0XDE,0XFF,0XFD,0XDE,0X95,0XBD,0X4A,0XD5,0XC9,0XDD,0XC8,0XE5,0XE7,

140160XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X08,0XE5,0XE8,0XE5,0XE8,0XE6,0X08,

140170XE6,0X08,0XEE,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X27,0XE6,0X27,

140180XEE,0X27,0XEE,0X27,0XE6,0X06,0XEE,0X28,0XEE,0X29,0XD5,0X89,0X83,0X22,0X62,0X40,

140190X62,0X42,0X5A,0X62,0X5A,0X82,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,

140200X5A,0X83,0X52,0X43,0X52,0X63,0X83,0XEB,0XEF,0X3A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

140210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XB5,0X0C,0XC5,0X6A,0XE6,0X09,0XEE,0X07,

140220XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140230XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140240XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140250XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X29,0XBD,0X07,0X83,0X42,

140260X62,0X62,0X62,0X44,0X62,0X65,0X4A,0X24,0X8C,0X0C,0XEF,0X39,0XFF,0XFE,0XFF,0XFF,

140270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,

140340XFF,0XFD,0XD6,0X13,0XBD,0X4A,0XD5,0XE9,0XDD,0XC8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

140350XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XE6,0X08,0XE6,0X07,0XE6,0X07,

140360XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X08,0XE6,0X27,0XE6,0X27,0XEE,0X27,0XEE,0X27,

140370XE6,0X06,0XEE,0X27,0XEE,0X29,0XD5,0X89,0X83,0X01,0X62,0X40,0X5A,0X41,0X5A,0X62,

140380X5A,0X62,0X5A,0X62,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X52,0X43,

140390X52,0X43,0X83,0XEB,0XEF,0X3A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140400XFF,0XFF,0XFF,0XFC,0XB5,0X0C,0XC5,0X6A,0XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140410XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140420XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140430XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140440XE6,0X07,0XE6,0X07,0XEE,0X28,0XE6,0X29,0XC5,0X27,0X83,0X42,0X62,0X42,0X62,0X44,

140450X5A,0X64,0X4A,0X24,0X73,0X69,0XDE,0XB7,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDE,0XFF,0XFE,0XFF,0XFD,0XCD,0XF2,

140530XC5,0X6A,0XD5,0XE9,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

140540XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X08,

140550XE6,0X08,0XE6,0X07,0XE6,0X27,0XE6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X06,0XEE,0X07,

140560XEE,0X29,0XCD,0X69,0X7B,0X02,0X62,0X20,0X5A,0X42,0X5A,0X42,0X5A,0X62,0X5A,0X62,

140570X5A,0X63,0X5A,0X63,0X5A,0X43,0X5A,0X63,0X5A,0X63,0X52,0X43,0X52,0X23,0X8C,0X0B,

140580XEF,0X5A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

140590XB5,0X2D,0XC5,0X49,0XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140600XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140610XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

140620XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

140630XEE,0X28,0XEE,0X49,0XC5,0X47,0X8B,0X63,0X62,0X41,0X5A,0X43,0X5A,0X44,0X52,0X44,

140640X62,0XE7,0XCE,0X56,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140710XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XFF,0XFE,0XFF,0XDC,0XC5,0XB0,0XC5,0X8A,0XD5,0XE8,

140720XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

140730XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

140740XE6,0X27,0XE6,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X06,0XEE,0X07,0XEE,0X4A,0XCD,0X48,

140750X7A,0XE1,0X62,0X20,0X5A,0X41,0X5A,0X42,0X5A,0X42,0X5A,0X42,0X5A,0X43,0X5A,0X43,

140760X5A,0X43,0X5A,0X43,0X5A,0X43,0X52,0X43,0X52,0X23,0X8C,0X0B,0XEF,0X5B,0XFF,0XFE,

140770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XBD,0X4D,0XC5,0X49,

140780XE6,0X09,0XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140790XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140800XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

140810XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X27,0XE6,0X29,

140820XCD,0X68,0X8B,0X63,0X5A,0X21,0X5A,0X23,0X5A,0X44,0X52,0X44,0X5A,0X86,0XC5,0XF4,

140830XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140900XFF,0XFF,0XFF,0XDD,0XFF,0XDB,0XBD,0X4E,0XCD,0XCA,0XD5,0XE8,0XE5,0XC7,0XE5,0XC7,

140910XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,

140920XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X27,0XE6,0X27,

140930XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X07,0XEE,0X4A,0XCD,0X48,0X7A,0XE2,0X62,0X20,

140940X5A,0X21,0X5A,0X42,0X5A,0X42,0X5A,0X42,0X5A,0X43,0X5A,0X43,0X5A,0X43,0X5A,0X43,

140950X52,0X43,0X52,0X43,0X4A,0X03,0X8C,0X0C,0XEF,0X5B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

140960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XBD,0X4D,0XC5,0X49,0XE6,0X09,0XE6,0X08,

140970XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140980XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

140990XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141000XEE,0X27,0XEE,0X27,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X29,0XD5,0XA9,0X83,0X42,

141010X5A,0X00,0X5A,0X23,0X5A,0X23,0X52,0X24,0X4A,0X24,0XB5,0X72,0XFF,0XBD,0XFF,0XFF,

141020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,

141090XFF,0X99,0XB5,0X0C,0XD5,0XCA,0XDD,0XC8,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,

141100XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE6,0X07,

141110XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,

141120XEE,0X27,0XEE,0X07,0XEE,0X6A,0XCD,0X48,0X7A,0XE1,0X62,0X20,0X5A,0X21,0X5A,0X22,

141130X5A,0X42,0X5A,0X42,0X5A,0X43,0X5A,0X23,0X5A,0X22,0X52,0X22,0X52,0X23,0X52,0X43,

141140X4A,0X03,0X8C,0X0C,0XEF,0X5B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141150XFF,0XFF,0XFF,0XDC,0XBD,0X6E,0XC5,0X49,0XE6,0X09,0XE6,0X08,0XEE,0X07,0XEE,0X07,

141160XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141170XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

141180XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X28,

141190XEE,0X27,0XE6,0X07,0XE6,0X07,0XE6,0X29,0XD5,0XC9,0X83,0X42,0X5A,0X21,0X5A,0X02,

141200X52,0X23,0X4A,0X03,0X42,0X03,0X9C,0XCF,0XF7,0X7C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XF7,0X58,0XB5,0X2C,

141280XD5,0XCA,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE8,

141290XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,

141300XE6,0X07,0XE6,0X07,0XE6,0X08,0XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,

141310XF6,0X6A,0XCD,0X48,0X7A,0XE2,0X62,0X20,0X5A,0X21,0X5A,0X22,0X5A,0X42,0X5A,0X42,

141320X5A,0X43,0X5A,0X23,0X5A,0X22,0X52,0X22,0X52,0X22,0X52,0X43,0X52,0X03,0X8C,0X0C,

141330XEF,0X5B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,

141340XBD,0X6E,0XC5,0X49,0XE6,0X09,0XE6,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141350XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141360XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

141370XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XE6,0X27,

141380XE6,0X27,0XE6,0X49,0XD5,0XC9,0X83,0X62,0X62,0X41,0X51,0XE2,0X52,0X03,0X49,0XE3,

141390X41,0XE3,0X8C,0X4E,0XF7,0X7C,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XEE,0XF6,0XBD,0X6C,0XD5,0XC9,0XDD,0XC7,

141470XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

141480XE5,0XE7,0XE5,0XE8,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

141490XE6,0X08,0XE6,0X28,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XCD,0X48,

141500X7A,0XC1,0X62,0X20,0X5A,0X01,0X5A,0X22,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,

141510X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,0X4A,0X03,0X8C,0X2D,0XF7,0X7C,0XFF,0XFF,

141520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XBD,0X4E,0XC5,0X49,

141530XE6,0X09,0XE6,0X08,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141540XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141550XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141560XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X27,0XE6,0X27,0XE6,0X49,

141570XDD,0XE9,0X8B,0X83,0X5A,0X21,0X52,0X02,0X52,0X03,0X4A,0X03,0X41,0XE3,0X7B,0XAB,

141580XEF,0X5B,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141650XFF,0XFF,0XFF,0XFC,0XDE,0X94,0XBD,0X4B,0XD5,0XC9,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,

141660XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,

141670XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X28,

141680XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XCD,0X48,0X7A,0XC1,0X5A,0X20,

141690X5A,0X21,0X52,0X02,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,

141700X52,0X23,0X52,0X23,0X4A,0X03,0X94,0X2D,0XF7,0X5C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XBD,0X4E,0XC5,0X49,0XE6,0X09,0XEE,0X08,

141720XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141730XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

141740XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141750XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XE6,0X27,0XE6,0X29,0XDD,0XEA,0X8B,0X63,

141760X5A,0X20,0X51,0XE2,0X49,0XE2,0X4A,0X03,0X41,0XC3,0X6B,0X29,0XEF,0X3A,0XFF,0XDE,

141770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,

141840XD6,0X32,0XBD,0X2A,0XD5,0XC9,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,

141850XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE6,0X07,0XE6,0X07,

141860XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X27,0XEE,0X07,0XEE,0X07,

141870XEE,0X27,0XE6,0X28,0XEE,0X4A,0XCD,0X48,0X72,0XC1,0X5A,0X00,0X5A,0X01,0X52,0X02,

141880X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,

141890X4A,0X03,0X94,0X4D,0XF7,0X7C,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141900XFF,0XFF,0XFF,0XDC,0XBD,0X4E,0XC5,0X49,0XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141910XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141920XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

141930XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

141940XEE,0X27,0XEE,0X27,0XE6,0X27,0XE6,0X29,0XE6,0X2A,0X8B,0X83,0X5A,0X20,0X51,0XE1,

141950X49,0XC2,0X4A,0X03,0X41,0XE3,0X5A,0XA7,0XE6,0XFA,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

141960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

141990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFB,0XCD,0XF0,0XBD,0X4A,

142030XDD,0XC9,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE8,

142040XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

142050XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,

142060XEE,0X4A,0XC5,0X28,0X72,0XC1,0X5A,0X00,0X52,0X02,0X52,0X02,0X52,0X22,0X52,0X22,

142070X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,0X52,0X22,0X52,0X03,0X4A,0X03,0X94,0X4E,

142080XF7,0X7C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,

142090XBD,0X6E,0XC5,0X29,0XE6,0X09,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142100XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142110XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,

142120XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

142130XEE,0X27,0XE6,0X48,0XE6,0X2B,0X8B,0XA3,0X5A,0X00,0X51,0XE1,0X49,0XE2,0X4A,0X03,

142140X41,0XE3,0X4A,0X46,0XDE,0XD9,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142210XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDB,0XC5,0XAF,0XC5,0X4A,0XDD,0XC8,0XDD,0XC7,

142220XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,

142230XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

142240XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XC5,0X28,

142250X72,0XA1,0X5A,0X00,0X52,0X01,0X52,0X02,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X03,

142260X52,0X02,0X52,0X22,0X52,0X22,0X4A,0X03,0X4A,0X03,0X94,0X4E,0XF7,0X9C,0XFF,0XFF,

142270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X6E,0XBD,0X29,

142280XE6,0X09,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142290XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142300XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142310XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XE6,0X48,

142320XDE,0X2A,0X93,0XC3,0X5A,0X00,0X49,0XC1,0X49,0XE2,0X49,0XE2,0X41,0XE3,0X4A,0X25,

142330XDE,0X98,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142400XFF,0XDE,0XFF,0XDB,0XC5,0XAE,0XC5,0X6A,0XDD,0XC8,0XDD,0XA7,0XE5,0XC7,0XE5,0XC7,

142410XE5,0XC7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

142420XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

142430XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XC5,0X28,0X72,0XA1,0X52,0X00,

142440X52,0X02,0X52,0X02,0X52,0X22,0X52,0X02,0X4A,0X03,0X52,0X03,0X52,0X02,0X52,0X02,

142450X52,0X22,0X4A,0X03,0X4A,0X03,0X94,0X4E,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X8E,0XBD,0X29,0XE6,0X09,0XEE,0X08,

142470XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142480XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142490XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142500XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XE6,0X48,0XDE,0X2A,0X93,0XE4,

142510X5A,0X00,0X49,0XC0,0X49,0XE2,0X41,0XC2,0X41,0XC2,0X4A,0X04,0XCE,0X57,0XFF,0XDE,

142520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDB,

142590XC5,0XAE,0XC5,0X6A,0XDD,0XC8,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,

142600XE5,0XE8,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

142610XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,

142620XEE,0X27,0XEE,0X28,0XEE,0X6A,0XBD,0X08,0X6A,0XA1,0X52,0X00,0X52,0X01,0X52,0X02,

142630X52,0X02,0X4A,0X02,0X4A,0X03,0X4A,0X03,0X52,0X02,0X52,0X02,0X52,0X02,0X4A,0X02,

142640X4A,0X03,0X94,0X6E,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142650XFF,0XFF,0XFF,0XFC,0XC5,0X8F,0XBD,0X29,0XE6,0X09,0XEE,0X27,0XEE,0X07,0XEE,0X07,

142660XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142670XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142680XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,0XEE,0X07,0XEE,0X27,

142690XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XE6,0X2A,0X93,0XE4,0X5A,0X00,0X49,0XA0,

142700X49,0XE2,0X41,0XC2,0X41,0XC2,0X41,0XE4,0XC5,0XF5,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,

142710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XDB,0XC5,0X8E,0XC5,0X6A,

142780XDD,0XC8,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE8,0XE5,0XE8,

142790XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

142800XE6,0X07,0XE6,0X07,0XEE,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

142810XEE,0X6A,0XBD,0X08,0X6A,0XA1,0X52,0X00,0X52,0X02,0X4A,0X02,0X52,0X22,0X4A,0X02,

142820X4A,0X03,0X4A,0X03,0X52,0X02,0X52,0X02,0X52,0X02,0X4A,0X02,0X4A,0X03,0X94,0X6E,

142830XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDC,

142840XC5,0X8F,0XBD,0X29,0XE6,0X29,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

142850XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X07,

142860XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

142870XEE,0X07,0XEE,0X07,0XF6,0X28,0XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

142880XEE,0X27,0XEE,0X28,0XE6,0X2A,0X93,0XE4,0X5A,0X00,0X49,0XA0,0X49,0XC1,0X41,0XC2,

142890X41,0XE3,0X39,0XA3,0XBD,0X94,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

142960XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0X9A,0XC5,0X6D,0XCD,0X8A,0XD5,0XC8,0XDD,0XE7,

142970XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

142980XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

142990XE6,0X07,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBD,0X07,

143000X6A,0X81,0X52,0X01,0X52,0X02,0X4A,0X02,0X52,0X22,0X4A,0X22,0X49,0XE3,0X49,0XE3,

143010X52,0X02,0X4A,0X01,0X4A,0X02,0X49,0XE2,0X4A,0X04,0X94,0X6E,0XF7,0X9D,0XFF,0XFF,

143020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XC5,0X8E,0XBD,0X29,

143030XEE,0X2A,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143040XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143050XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X28,0XEE,0X28,

143060XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X48,

143070XE6,0X2A,0X93,0XE3,0X52,0X00,0X49,0XC1,0X49,0XC2,0X41,0XA2,0X49,0XE3,0X31,0X82,

143080XAD,0X12,0XFF,0XDD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

143150XFF,0XDD,0XF7,0X7A,0XBD,0X4D,0XCD,0X8A,0XD5,0XA7,0XDD,0XC6,0XDD,0XC7,0XE5,0XC7,

143160XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

143170XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,

143180XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X28,0XEE,0X49,0XBD,0X07,0X6A,0X81,0X51,0XE1,

143190X52,0X02,0X4A,0X02,0X52,0X22,0X4A,0X22,0X49,0XE3,0X49,0XE3,0X52,0X02,0X4A,0X01,

143200X4A,0X02,0X49,0XE2,0X4A,0X04,0X94,0X6E,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X8F,0XBD,0X29,0XEE,0X2A,0XEE,0X28,

143220XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143230XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143240XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X27,

143250XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XE6,0X2A,0X93,0XE3,

143260X52,0X00,0X49,0XC1,0X49,0XC2,0X41,0XA2,0X41,0XE3,0X31,0X62,0XA4,0XF1,0XFF,0XDD,

143270XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XF7,0X39,

143340XBD,0X4D,0XCD,0X8A,0XD5,0XC8,0XDD,0XC6,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,

143350XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

143360XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,

143370XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBD,0X07,0X6A,0X81,0X51,0XE1,0X52,0X02,0X4A,0X02,

143380X4A,0X02,0X4A,0X22,0X49,0XE3,0X49,0XE3,0X52,0X02,0X4A,0X01,0X49,0XE2,0X49,0XE2,

143390X4A,0X03,0X94,0X6E,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143400XFF,0XFF,0XFF,0XFC,0XBD,0X8E,0XBD,0X29,0XEE,0X2A,0XEE,0X28,0XEE,0X28,0XEE,0X27,

143410XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

143420XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143430XEE,0X08,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143440XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X48,0XE6,0X2A,0X93,0XE4,0X5A,0X00,0X49,0XC2,

143450X49,0XC2,0X41,0XC2,0X41,0XC3,0X31,0X62,0XA4,0XB0,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,

143460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XEF,0X39,0XBD,0X2C,0XCD,0X8A,

143530XD5,0XC8,0XDD,0XC6,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

143540XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

143550XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X28,

143560XEE,0X4A,0XBD,0X07,0X6A,0X61,0X51,0XE1,0X52,0X02,0X4A,0X02,0X4A,0X02,0X4A,0X02,

143570X49,0XE3,0X49,0XE3,0X52,0X02,0X4A,0X01,0X49,0XE1,0X49,0XE2,0X49,0XE3,0X94,0X6E,

143580XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

143590XBD,0X8E,0XC5,0X49,0XEE,0X2A,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143600XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

143610XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

143620XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143630XEE,0X47,0XEE,0X48,0XE6,0X2A,0X9C,0X04,0X5A,0X20,0X49,0XE2,0X49,0XC2,0X41,0XE3,

143640X41,0XC3,0X31,0X82,0X9C,0X90,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143710XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XEF,0X18,0XB5,0X2C,0XCD,0X8A,0XD5,0XC8,0XDD,0XC6,

143720XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

143730XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

143740XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBD,0X07,

143750X6A,0X61,0X51,0XE1,0X52,0X02,0X4A,0X02,0X4A,0X02,0X4A,0X02,0X49,0XE3,0X49,0XE3,

143760X52,0X02,0X4A,0X01,0X49,0XE1,0X49,0XE2,0X49,0XE3,0X9C,0X6E,0XF7,0X9D,0XFF,0XFF,

143770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X49,

143780XEE,0X2A,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143790XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

143800XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,

143810XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XEE,0X48,

143820XE6,0X2A,0X9C,0X04,0X5A,0X20,0X49,0XC2,0X49,0XC2,0X41,0XE3,0X41,0XC3,0X39,0X82,

143830X9C,0X90,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

143900XFF,0XDE,0XEE,0XF8,0XB5,0X0C,0XCD,0X8A,0XD5,0XC8,0XDD,0XC6,0XDD,0XC7,0XE5,0XC7,

143910XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

143920XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,

143930XEE,0X08,0XEE,0X08,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XE7,0X6A,0X60,0X51,0XE1,

143940X52,0X02,0X4A,0X02,0X4A,0X02,0X4A,0X02,0X49,0XE3,0X4A,0X03,0X52,0X02,0X52,0X01,

143950X49,0XE1,0X49,0XE2,0X49,0XE3,0X9C,0X6F,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

143960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,0XEE,0X2A,0XEE,0X28,

143970XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143980XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

143990XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X27,

144000XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X47,0XEE,0X48,0XEE,0X48,0XE6,0X2A,0X9C,0X04,

144010X5A,0X21,0X49,0XC1,0X49,0XC2,0X49,0XC3,0X41,0XC2,0X39,0X82,0X9C,0X90,0XFF,0XBD,

144020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XEE,0XF8,

144090XB5,0X2C,0XCD,0X8A,0XD5,0XC8,0XDD,0XC6,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,

144100XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

144110XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X08,0XEE,0X07,

144120XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XE7,0X6A,0X60,0X51,0XE0,0X52,0X02,0X4A,0X02,

144130X4A,0X02,0X4A,0X02,0X49,0XE3,0X4A,0X03,0X52,0X01,0X52,0X01,0X49,0XE1,0X49,0XE2,

144140X49,0XE3,0X9C,0X6F,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144150XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,0XEE,0X2A,0XEE,0X28,0XEE,0X28,0XEE,0X28,

144160XEE,0X28,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

144170XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

144180XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X28,

144190XEE,0X47,0XF6,0X48,0XF6,0X48,0XEE,0X49,0XE6,0X0A,0X9B,0XE4,0X62,0X41,0X49,0XC1,

144200X49,0XE2,0X49,0XC3,0X41,0XC2,0X39,0XA3,0X9C,0X90,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,

144210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XEE,0XF8,0XB5,0X2C,0XCD,0X8A,

144280XD5,0XC8,0XDD,0XC6,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

144290XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

144300XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X28,

144310XEE,0X4A,0XBC,0XE7,0X6A,0X60,0X51,0XE0,0X52,0X02,0X4A,0X02,0X52,0X22,0X4A,0X02,

144320X49,0XE3,0X4A,0X02,0X52,0X01,0X52,0X01,0X49,0XE1,0X49,0XE2,0X49,0XC3,0X9C,0X6F,

144330XF7,0X9D,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

144340XBD,0X6E,0XC5,0X4A,0XEE,0X2A,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X47,

144350XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

144360XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

144370XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XEE,0X28,0XEE,0X47,0XF6,0X48,0XF6,0X48,

144380XF6,0X48,0XEE,0X49,0XE6,0X0A,0X9B,0XE4,0X62,0X41,0X49,0XC1,0X49,0XE3,0X49,0XE3,

144390X41,0XC2,0X39,0XA3,0X9C,0X90,0XFF,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144460XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XEE,0XF8,0XB5,0X2C,0XCD,0X8A,0XDD,0XE8,0XDD,0XC7,

144470XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

144480XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

144490XEE,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X2A,0XBC,0XE7,

144500X62,0X60,0X52,0X00,0X52,0X02,0X52,0X22,0X4A,0X02,0X4A,0X02,0X49,0XE2,0X4A,0X02,

144510X52,0X02,0X4A,0X01,0X49,0XE1,0X4A,0X02,0X49,0XE3,0X9C,0X6F,0XF7,0X9D,0XFF,0XFF,

144520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,

144530XEE,0X2A,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X28,0XEE,0X47,0XF6,0X27,0XF6,0X27,

144540XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,

144550XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,

144560XF6,0X48,0XEE,0X27,0XEE,0X47,0XEE,0X47,0XF6,0X48,0XEE,0X47,0XF6,0X68,0XF6,0X69,

144570XE6,0X09,0X9B,0XE4,0X62,0X61,0X51,0XE2,0X49,0XE2,0X4A,0X03,0X41,0XE3,0X39,0XA2,

144580X9C,0XB0,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

144650XFF,0XDE,0XEE,0XF8,0XB5,0X2C,0XCD,0X8A,0XDD,0XC8,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,

144660XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

144670XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,

144680XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X2A,0XBC,0XE7,0X6A,0X60,0X52,0X01,

144690X52,0X02,0X52,0X22,0X4A,0X02,0X4A,0X02,0X49,0XE2,0X4A,0X02,0X52,0X02,0X4A,0X01,

144700X49,0XE1,0X4A,0X02,0X49,0XE3,0X9C,0X6F,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,0XEE,0X2A,0XEE,0X48,

144720XEE,0X28,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

144730XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

144740XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X27,

144750XEE,0X47,0XEE,0X47,0XF6,0X48,0XEE,0X47,0XF6,0X68,0XF6,0X69,0XDD,0XE9,0X9B,0XE4,

144760X62,0X62,0X51,0XE2,0X52,0X03,0X4A,0X03,0X49,0XE3,0X41,0XC3,0X9C,0XB0,0XFF,0XBD,

144770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XEE,0XD8,

144840XB5,0X0C,0XCD,0X8A,0XD5,0XC8,0XDD,0XC7,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,

144850XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

144860XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

144870XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XC7,0X6A,0X60,0X52,0X00,0X51,0XE1,0X4A,0X02,

144880X4A,0X02,0X4A,0X22,0X4A,0X02,0X52,0X02,0X52,0X02,0X4A,0X01,0X4A,0X02,0X4A,0X03,

144890X49,0XE3,0X9C,0X8F,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144900XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,0XEE,0X2A,0XEE,0X48,0XEE,0X28,0XEE,0X28,

144910XEE,0X47,0XEE,0X47,0XF6,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

144920XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

144930XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X27,0XF6,0X48,0XEE,0X47,

144940XF6,0X48,0XF6,0X47,0XF6,0X68,0XF6,0X69,0XDD,0XC8,0X9B,0XE4,0X6A,0X62,0X51,0XE1,

144950X52,0X03,0X4A,0X03,0X4A,0X03,0X41,0XC3,0XA4,0XD0,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,

144960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

144990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145020XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XEE,0XF8,0XB5,0X2C,0XCD,0X8A,

145030XD5,0XA8,0XDD,0XC7,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,

145040XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

145050XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X28,

145060XEE,0X4A,0XBC,0XC7,0X6A,0X80,0X52,0X00,0X51,0XE1,0X4A,0X02,0X4A,0X02,0X4A,0X22,

145070X52,0X02,0X52,0X02,0X52,0X02,0X52,0X01,0X4A,0X02,0X4A,0X03,0X49,0XE3,0X9C,0X8F,

145080XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

145090XBD,0X6E,0XC5,0X4A,0XEE,0X2A,0XEE,0X48,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X47,

145100XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

145110XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

145120XF6,0X27,0XF6,0X27,0XF6,0X48,0XF6,0X27,0XF6,0X47,0XEE,0X47,0XF6,0X48,0XF6,0X47,

145130XF6,0X68,0XF6,0X69,0XD5,0XA8,0X9B,0XE4,0X6A,0X41,0X51,0XE1,0X52,0X02,0X49,0XE2,

145140X4A,0X03,0X41,0XC3,0XA4,0XF1,0XFF,0XBD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145210XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XEF,0X18,0XBD,0X4D,0XCD,0X8A,0XD5,0XA8,0XDD,0XC7,

145220XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

145230XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

145240XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X48,0XEE,0X4A,0XB4,0XC7,

145250X6A,0X80,0X52,0X00,0X51,0XE1,0X4A,0X02,0X4A,0X02,0X4A,0X22,0X52,0X02,0X52,0X02,

145260X52,0X02,0X52,0X01,0X4A,0X02,0X4A,0X03,0X49,0XE3,0X9C,0X8F,0XF7,0X9D,0XFF,0XFF,

145270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,

145280XEE,0X2A,0XEE,0X48,0XEE,0X28,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,

145290XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

145300XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

145310XF6,0X47,0XF6,0X27,0XF6,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X69,

145320XD5,0XA8,0X9B,0XE5,0X6A,0X41,0X51,0XE2,0X52,0X23,0X4A,0X03,0X4A,0X03,0X41,0XC3,

145330XAD,0X32,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

145400XFF,0XDE,0XF7,0X39,0XBD,0X6D,0XCD,0X8A,0XD5,0XA8,0XDD,0XC7,0XDD,0XC7,0XDD,0XC7,

145410XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

145420XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X27,

145430XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X48,0XEE,0X4A,0XB4,0XC7,0X6A,0X80,0X52,0X00,

145440X52,0X01,0X52,0X22,0X4A,0X02,0X4A,0X22,0X52,0X02,0X52,0X22,0X52,0X02,0X52,0X22,

145450X4A,0X02,0X4A,0X03,0X49,0XE3,0X9C,0X8F,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,0XEE,0X2A,0XEE,0X48,

145470XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,

145480XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

145490XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,

145500XF6,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X69,0XD5,0XA8,0X9B,0XE4,

145510X6A,0X62,0X5A,0X22,0X5A,0X43,0X52,0X23,0X4A,0X03,0X4A,0X04,0XB5,0X93,0XFF,0XDD,

145520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDE,0XFF,0X5A,

145590XC5,0X8E,0XC5,0X8A,0XD5,0XC8,0XDD,0XC7,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,

145600XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

145610XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

145620XEE,0X27,0XEE,0X28,0XEE,0X2A,0XB4,0XC7,0X6A,0X60,0X52,0X00,0X52,0X01,0X52,0X22,

145630X52,0X22,0X52,0X22,0X52,0X02,0X52,0X22,0X52,0X22,0X52,0X22,0X52,0X02,0X4A,0X03,

145640X49,0XE3,0X9C,0X8F,0XF7,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145650XFF,0XFF,0XFF,0XFC,0XBD,0X6E,0XC5,0X4A,0XEE,0X29,0XEE,0X48,0XEE,0X47,0XEE,0X47,

145660XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X27,

145670XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X47,

145680XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,

145690XF6,0X67,0XF6,0X47,0XF6,0X67,0XF6,0X69,0XD5,0X88,0X9B,0XE4,0X6A,0X62,0X5A,0X43,

145700X5A,0X43,0X52,0X44,0X4A,0X03,0X52,0X45,0XC5,0XD5,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

145710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0X7A,0XCD,0XAF,0XC5,0X6A,

145780XD5,0XC8,0XDD,0XE7,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,

145790XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

145800XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

145810XEE,0X2A,0XB4,0XC7,0X6A,0X60,0X52,0X00,0X52,0X01,0X52,0X22,0X52,0X22,0X52,0X22,

145820X52,0X02,0X52,0X22,0X52,0X22,0X52,0X22,0X52,0X02,0X4A,0X03,0X49,0XE3,0X9C,0X8F,

145830XFF,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

145840XBD,0X6E,0XC5,0X4A,0XEE,0X29,0XEE,0X48,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

145850XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X47,

145860XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

145870XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,

145880XF6,0X67,0XEE,0X68,0XD5,0X88,0X9B,0XE4,0X6A,0X82,0X62,0X63,0X5A,0X43,0X52,0X63,

145890X4A,0X03,0X52,0X85,0XCE,0X16,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

145960XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0X9B,0XC5,0XAF,0XC5,0X8B,0XD5,0XC8,0XDD,0XC7,

145970XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,

145980XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,

145990XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X28,0XEE,0X4A,0XB4,0XA6,

146000X6A,0X60,0X5A,0X00,0X52,0X01,0X52,0X22,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X22,

146010X52,0X22,0X52,0X22,0X52,0X02,0X49,0XE2,0X4A,0X03,0X9C,0X8F,0XFF,0X9D,0XFF,0XFF,

146020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XC5,0X8E,0XC5,0X49,

146030XEE,0X4A,0XEE,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146040XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,

146050XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146060XF6,0X48,0XF6,0X68,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XEE,0X47,0XF6,0X88,0XEE,0X68,

146070XD5,0X87,0X9C,0X04,0X6A,0X81,0X6A,0X83,0X5A,0X63,0X5A,0X84,0X52,0X64,0X5A,0XA6,

146080XD6,0X97,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146150XFF,0XFF,0XFF,0XBC,0XC5,0XAF,0XC5,0X6B,0XD5,0XC8,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,

146160XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

146170XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,

146180XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X28,0XEE,0X4A,0XB4,0XA6,0X6A,0X60,0X5A,0X00,

146190X52,0X01,0X52,0X22,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,

146200X52,0X02,0X51,0XE2,0X4A,0X03,0X9C,0X8F,0XFF,0X9D,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

146210XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDC,0XC5,0X8E,0XC5,0X49,0XEE,0X4A,0XEE,0X48,

146220XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146230XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,

146240XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,

146250XF6,0X47,0XF6,0X47,0XF6,0X68,0XEE,0X47,0XF6,0X88,0XEE,0X68,0XD5,0X87,0X9B,0XE4,

146260X6A,0X81,0X6A,0XA3,0X62,0X83,0X5A,0X84,0X52,0X64,0X5A,0XC6,0XDE,0XB8,0XFF,0XFE,

146270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBC,

146340XCD,0XCF,0XC5,0X6A,0XDD,0XC9,0XDD,0XA7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,

146350XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

146360XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

146370XEE,0X47,0XEE,0X28,0XEE,0X4A,0XB4,0XA6,0X6A,0X60,0X5A,0X00,0X52,0X01,0X52,0X22,

146380X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,0X52,0X02,0X52,0X02,

146390X4A,0X03,0X9C,0X8F,0XFF,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146400XFF,0XFF,0XFF,0XDC,0XC5,0X8E,0XC5,0X49,0XEE,0X4A,0XEE,0X48,0XF6,0X48,0XF6,0X47,

146410XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146420XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,

146430XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X48,

146440XFE,0X88,0XEE,0X47,0XF6,0X88,0XEE,0X48,0XD5,0X87,0X9B,0XE3,0X72,0XA2,0X6A,0XA3,

146450X62,0XA4,0X62,0XA4,0X52,0X64,0X63,0X07,0XE6,0XF9,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

146460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDC,0XCD,0XF0,0XBD,0X29,

146530XDD,0XC9,0XDD,0XA7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,

146540XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

146550XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X28,

146560XEE,0X4A,0XB4,0XA6,0X6A,0X60,0X5A,0X21,0X52,0X01,0X52,0X22,0X52,0X22,0X52,0X22,

146570X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,0X52,0X22,0X51,0XE2,0X4A,0X03,0X9C,0X8F,

146580XFF,0X9D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,

146590XC5,0X8E,0XC5,0X49,0XEE,0X4A,0XEE,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

146600XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146610XF6,0X47,0XF6,0X47,0XEE,0X47,0XEE,0X47,0XEE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146620XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XFE,0X88,0XEE,0X47,

146630XF6,0X88,0XEE,0X48,0XCD,0X87,0X93,0XC3,0X72,0XA2,0X72,0XC4,0X6A,0XC4,0X62,0XC5,

146640X5A,0X84,0X73,0X89,0XEF,0X3A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146710XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDC,0XD6,0X31,0XBD,0X29,0XD5,0XC9,0XDD,0XC8,

146720XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

146730XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,

146740XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XB4,0XA6,

146750X6A,0X80,0X5A,0X21,0X52,0X02,0X52,0X42,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,

146760X52,0X22,0X52,0X22,0X52,0X22,0X52,0X03,0X52,0X04,0X9C,0X8E,0XFF,0X9D,0XFF,0XDF,

146770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XC5,0X8E,0XC5,0X49,

146780XEE,0X2A,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146790XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146800XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

146810XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X88,0XF6,0X68,0XF6,0X68,0XEE,0X48,

146820XCD,0X87,0X93,0XA2,0X7A,0XE2,0X72,0XC4,0X72,0XE4,0X6A,0XE5,0X5A,0XA5,0X8C,0X2C,

146830XEF,0X3A,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

146890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

146900XFF,0XDE,0XFF,0XDC,0XDE,0X92,0XBD,0X29,0XD5,0XA9,0XDD,0XC8,0XDD,0XC7,0XE5,0XC7,

146910XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

146920XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,

146930XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XB4,0XA6,0X6A,0X80,0X5A,0X21,

146940X52,0X02,0X5A,0X42,0X52,0X22,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,

146950X52,0X23,0X52,0X03,0X52,0X04,0X9C,0X6E,0XFF,0X9D,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

146960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XC5,0X8E,0XC5,0X49,0XEE,0X2A,0XF6,0X48,

146970XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146980XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

146990XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,

147000XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XEE,0X48,0XCD,0X67,0X93,0X82,

147010X7B,0X02,0X72,0XE4,0X72,0XE4,0X6A,0XC4,0X5A,0XA5,0X9C,0XCE,0XF7,0X5B,0XFF,0XFE,

147020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDC,

147090XEE,0XF5,0XBD,0X4A,0XD5,0XA9,0XDD,0XC8,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,

147100XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

147110XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

147120XEE,0X27,0XEE,0X28,0XEE,0X4B,0XB4,0XA6,0X6A,0X81,0X5A,0X21,0X5A,0X22,0X5A,0X43,

147130X52,0X42,0X52,0X22,0X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,0X52,0X43,0X52,0X03,

147140X52,0X04,0X9C,0X6E,0XFF,0X9D,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147150XFF,0XFE,0XFF,0XFC,0XC5,0X8E,0XC5,0X49,0XEE,0X2A,0XF6,0X48,0XF6,0X48,0XF6,0X48,

147160XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X48,

147170XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

147180XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X48,

147190XF6,0X48,0XF6,0X68,0XF6,0X68,0XEE,0X48,0XCD,0X67,0X8B,0X61,0X7B,0X03,0X7B,0X04,

147200X73,0X05,0X6A,0XE4,0X62,0XC5,0XAD,0X30,0XF7,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147270XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XBE,0XFF,0XDD,0XF7,0X37,0XC5,0X6C,

147280XD5,0XA9,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,

147290XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

147300XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,

147310XEE,0X4B,0XB4,0XA6,0X6A,0X81,0X5A,0X21,0X5A,0X22,0X5A,0X43,0X5A,0X42,0X52,0X22,

147320X52,0X23,0X52,0X23,0X52,0X22,0X52,0X23,0X52,0X43,0X52,0X03,0X52,0X04,0X9C,0X6E,

147330XFF,0X9D,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,

147340XC5,0X8E,0XC5,0X49,0XEE,0X2A,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,

147350XF6,0X47,0XF6,0X47,0XF6,0X28,0XF6,0X28,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

147360XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

147370XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X47,0XF6,0X88,

147380XF6,0X47,0XEE,0X48,0XCD,0X67,0X8B,0X61,0X83,0X23,0X7B,0X24,0X7B,0X45,0X73,0X05,

147390X62,0XE5,0XBD,0X92,0XFF,0XBC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147460XFF,0XFF,0XFF,0XFE,0XFF,0XBE,0XFF,0XDD,0XFF,0XB9,0XBD,0X6D,0XCD,0XA9,0XDD,0XC7,

147470XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE8,

147480XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

147490XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XB4,0XC6,

147500X6A,0X80,0X62,0X41,0X5A,0X22,0X5A,0X42,0X5A,0X42,0X52,0X43,0X52,0X43,0X52,0X43,

147510X5A,0X43,0X52,0X43,0X52,0X43,0X52,0X23,0X52,0X04,0X9C,0X4E,0XF7,0X7C,0XFF,0XFF,

147520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XC5,0X8F,0XC5,0X49,

147530XEE,0X4A,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,

147540XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

147550XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,

147560XF6,0X48,0XFE,0X68,0XF6,0X48,0XF6,0X68,0XEE,0X27,0XF6,0X88,0XF6,0X47,0XEE,0X48,

147570XBC,0XE5,0X93,0XC3,0X83,0X43,0X7B,0X24,0X83,0X86,0X73,0X25,0X73,0X27,0XD6,0X55,

147580XFF,0XDD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

147650XFF,0XDF,0XFF,0XDE,0XFF,0XBB,0XC5,0XAE,0XCD,0XA9,0XD5,0XC7,0XDD,0XC7,0XDD,0XC7,

147660XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

147670XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XEE,0X07,

147680XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XC6,0X6A,0X80,0X62,0X41,

147690X5A,0X22,0X5A,0X42,0X5A,0X42,0X5A,0X42,0X52,0X43,0X52,0X43,0X5A,0X42,0X52,0X43,

147700X52,0X43,0X52,0X23,0X52,0X04,0X94,0X2E,0XF7,0X7C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X8F,0XC5,0X49,0XEE,0X4A,0XF6,0X48,

147720XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

147730XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

147740XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,

147750XF6,0X68,0XF6,0X68,0XEE,0X47,0XF6,0X88,0XF6,0X68,0XEE,0X49,0XBC,0XE5,0X93,0XC2,

147760X8B,0X64,0X83,0X24,0X83,0X66,0X73,0X25,0X83,0XA9,0XDE,0X96,0XFF,0XDD,0XFF,0XFF,

147770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,

147840XFF,0XDC,0XD5,0XF1,0XC5,0X89,0XD5,0XC8,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,

147850XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

147860XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

147870XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XC6,0X6A,0X80,0X62,0X41,0X5A,0X42,0X5A,0X43,

147880X5A,0X42,0X5A,0X42,0X5A,0X43,0X52,0X43,0X5A,0X42,0X5A,0X43,0X52,0X43,0X52,0X23,

147890X52,0X03,0X94,0X2D,0XF7,0X5C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147900XFF,0XFF,0XFF,0XFC,0XC5,0X8F,0XC5,0X49,0XEE,0X4A,0XF6,0X48,0XF6,0X48,0XF6,0X48,

147910XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,

147920XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

147930XF6,0X47,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,

147940XF6,0X48,0XF6,0X68,0XF6,0X89,0XEE,0X49,0XB4,0XC4,0X93,0XA2,0X93,0XC5,0X8B,0X65,

147950X83,0X86,0X73,0X26,0X94,0X4B,0XE6,0XD7,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

147990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148020XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XDE,0XFF,0XDD,0XDE,0X53,

148030XC5,0X69,0XD5,0XE8,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,

148040XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

148050XE5,0XE7,0XE6,0X07,0XE6,0X08,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

148060XEE,0X4A,0XBC,0XC6,0X6A,0X80,0X62,0X41,0X5A,0X42,0X5A,0X63,0X5A,0X63,0X5A,0X42,

148070X5A,0X43,0X5A,0X43,0X5A,0X43,0X5A,0X43,0X52,0X43,0X52,0X43,0X52,0X03,0X94,0X0D,

148080XF7,0X5B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

148090XC5,0X8F,0XC5,0X49,0XEE,0X4A,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

148100XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,

148110XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,

148120XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X68,

148130XF6,0X89,0XEE,0X48,0XB4,0X84,0X93,0XC3,0X9C,0X06,0X93,0XC6,0X8B,0X86,0X7B,0X46,

148140XA4,0XCD,0XEF,0X19,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148210XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XE6,0XB4,0XBD,0X4A,0XD5,0XE9,

148220XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

148230XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,

148240XE6,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XC7,

148250X6A,0X80,0X62,0X41,0X5A,0X42,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X43,

148260X5A,0X43,0X5A,0X43,0X52,0X43,0X52,0X43,0X52,0X03,0X8B,0XEC,0XEF,0X5B,0XFF,0XFF,

148270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X8F,0XCD,0X4A,

148280XEE,0X4A,0XF6,0X48,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148290XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148300XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

148310XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X89,0XF6,0X89,0XE6,0X08,

148320XAC,0X63,0X9B,0XE3,0X9C,0X06,0X93,0XE7,0X8B,0XA7,0X83,0X87,0XB5,0X2F,0XF7,0X7A,

148330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

148400XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XEF,0X16,0XBD,0X6A,0XD5,0XC9,0XDD,0XC8,0XDD,0XC7,

148410XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

148420XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XEE,0X07,

148430XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XC7,0X72,0X80,0X62,0X61,

148440X5A,0X42,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X43,0X5A,0X43,

148450X52,0X42,0X52,0X63,0X52,0X03,0X8B,0XEC,0XEF,0X5B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X8E,0XCD,0X4A,0XEE,0X4A,0XF6,0X48,

148470XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148480XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148490XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,

148500XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X89,0XF6,0X89,0XDD,0XE7,0XA4,0X43,0X9C,0X04,

148510X9B,0XE6,0X93,0XE7,0X8B,0XC7,0X8B,0XC8,0XC5,0XB1,0XFF,0XBC,0XFF,0XFF,0XFF,0XFF,

148520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

148590XFF,0XFD,0XFF,0X78,0XC5,0XAC,0XCD,0XC9,0XDD,0XC8,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,

148600XE5,0XC7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

148610XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

148620XEE,0X27,0XEE,0X28,0XEE,0X4A,0XBC,0XE7,0X72,0XA0,0X62,0X61,0X62,0X42,0X5A,0X63,

148630X62,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X5A,0X63,0X52,0X63,0X5A,0X64,

148640X52,0X03,0X8B,0XCB,0XEF,0X3B,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148650XFF,0XFF,0XFF,0XFC,0XC5,0X8E,0XCD,0X4A,0XEE,0X4A,0XF6,0X48,0XF6,0X48,0XF6,0X47,

148660XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148670XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148680XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X48,

148690XF6,0X48,0XF6,0X89,0XF6,0X89,0XD5,0X86,0XA4,0X43,0X9C,0X04,0X9C,0X06,0X93,0XE7,

148700X93,0XE7,0X94,0X29,0XD6,0X54,0XFF,0XDC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFD,0XFF,0XB9,

148780XCD,0XCD,0XCD,0XAA,0XDD,0XC8,0XDD,0XC7,0XDD,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,

148790XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

148800XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,

148810XEE,0X4A,0XBC,0XE6,0X72,0XA0,0X62,0X61,0X62,0X42,0X62,0X63,0X5A,0X83,0X5A,0X63,

148820X5A,0X63,0X5A,0X63,0X62,0X63,0X5A,0X83,0X5A,0X63,0X5A,0X84,0X52,0X03,0X83,0XAB,

148830XEF,0X1A,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

148840XC5,0X8E,0XCD,0X49,0XEE,0X4A,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148850XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

148860XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

148870XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XFE,0X68,0XF6,0X48,0XF6,0X89,0XF6,0X89,

148880XF6,0X6A,0XCD,0X46,0XAC,0X64,0X9C,0X24,0XA4,0X46,0X9C,0X07,0X94,0X08,0X9C,0X6B,

148890XE6,0XD6,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

148960XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XDA,0XDE,0X50,0XC5,0X6A,

148970XD5,0XC9,0XDD,0XE8,0XDD,0XE7,0XE5,0XC6,0XE5,0XC7,0XE5,0XC7,0XE5,0XE7,0XE5,0XE7,

148980XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,

148990XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X48,0XEE,0X4A,0XBC,0XE7,

149000X72,0XA0,0X62,0X40,0X62,0X82,0X62,0X83,0X5A,0X63,0X5A,0X83,0X5A,0X83,0X5A,0X63,

149010X5A,0X63,0X5A,0X83,0X5A,0X83,0X5A,0X63,0X5A,0X23,0X83,0XAA,0XE7,0X1A,0XFF,0XFE,

149020XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X8E,0XCD,0X6A,

149030XEE,0X49,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149040XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149050XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149060XFE,0X68,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X69,0XFE,0X8A,0XF6,0X6B,0XBC,0XE6,

149070XAC,0X84,0XA4,0X65,0XA4,0X46,0X9C,0X27,0X94,0X08,0XB5,0X0E,0XF7,0X59,0XFF,0XFE,

149080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149150XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XE6,0XB3,0XC5,0X6A,0XD5,0XC9,0XDD,0XC7,

149160XDD,0XE7,0XDD,0XC6,0XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,

149170XE5,0XE7,0XED,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,

149180XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X47,0XEE,0X4A,0XC5,0X07,0X72,0XA0,0X62,0X40,

149190X62,0X82,0X62,0X83,0X5A,0X63,0X5A,0X83,0X5A,0X83,0X5A,0X83,0X62,0X83,0X5A,0X83,

149200X5A,0X83,0X5A,0X83,0X5A,0X23,0X83,0X8A,0XE6,0XF9,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

149210XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFC,0XC5,0X8E,0XCD,0X6A,0XEE,0X49,0XF6,0X47,

149220XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149230XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

149240XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X47,0XFE,0X67,0XF6,0X47,

149250XF6,0X67,0XF6,0X68,0XF6,0X69,0XFE,0XAB,0XEE,0X2A,0XBC,0XE6,0XAC,0XA5,0XAC,0XA6,

149260XA4,0X66,0XA4,0X67,0X9C,0X49,0XC5,0X91,0XFF,0X9B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149340XFF,0XDE,0XFF,0XFC,0XF7,0X56,0XC5,0X8B,0XD5,0XA9,0XDD,0XC7,0XDD,0XE7,0XE5,0XE7,

149350XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XE5,0XE7,0XED,0XE7,

149360XE5,0XE7,0XEE,0X07,0XE6,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

149370XEE,0X27,0XEE,0X27,0XEE,0X4A,0XC5,0X07,0X72,0XC1,0X62,0X41,0X62,0X82,0X62,0X83,

149380X62,0X83,0X62,0X83,0X62,0X83,0X62,0X83,0X62,0X83,0X62,0X83,0X5A,0X83,0X5A,0X83,

149390X5A,0X43,0X7B,0X69,0XE6,0XD9,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149400XFF,0XFF,0XFF,0XFC,0XC5,0X8E,0XCD,0X6A,0XEE,0X49,0XF6,0X48,0XF6,0X47,0XF6,0X47,

149410XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149420XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

149430XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X68,

149440XFE,0X89,0XFE,0XAB,0XDD,0XC9,0XBC,0XE6,0XAC,0XA5,0XB5,0X07,0XA4,0X86,0XAC,0XA8,

149450XA4,0X6A,0XD6,0X53,0XFF,0XDC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149520XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

149530XFF,0XD8,0XCD,0XCD,0XD5,0XCA,0XDD,0XC8,0XE5,0XE7,0XE5,0XE7,0XE5,0XC7,0XE5,0XC8,

149540XE5,0XE8,0XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE5,0XE7,0XED,0XE7,0XEE,0X07,0XEE,0X07,

149550XEE,0X07,0XE6,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,

149560XEE,0X4A,0XC5,0X27,0X72,0XC1,0X62,0X61,0X6A,0XA2,0X62,0X83,0X62,0X83,0X62,0X83,

149570X62,0X83,0X62,0XA3,0X62,0X83,0X62,0X83,0X5A,0XA3,0X5A,0X83,0X5A,0X43,0X7B,0X49,

149580XDE,0XB8,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,

149590XC5,0X8E,0XCD,0X6A,0XEE,0X49,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149600XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149610XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,

149620XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XFE,0XAA,0XFE,0XAB,

149630XD5,0X88,0XBC,0XE6,0XB4,0XC7,0XB4,0XE7,0XB4,0XC7,0XA4,0X87,0XAC,0XEB,0XE6,0XD6,

149640XFF,0XFD,0XFF,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149710XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFA,0XD6,0X0F,

149720XD5,0XAA,0XDD,0XC8,0XE5,0XE7,0XE5,0XE7,0XE5,0XC7,0XE5,0XC8,0XE5,0XE8,0XE5,0XE7,

149730XE5,0XE7,0XE6,0X07,0XEE,0X07,0XE5,0XE7,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

149740XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X27,0XEE,0X4A,0XCD,0X48,

149750X72,0XC1,0X62,0X61,0X6A,0XA3,0X62,0XA3,0X62,0X83,0X62,0X83,0X62,0XA3,0X62,0XA3,

149760X62,0X83,0X62,0X83,0X62,0XA3,0X5A,0X83,0X5A,0X43,0X73,0X49,0XDE,0XB8,0XFF,0XDE,

149770XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XC5,0X6E,0XCD,0X6A,

149780XEE,0X4A,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149790XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149800XF6,0X48,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,

149810XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XFE,0XCA,0XF6,0X8A,0XCD,0X67,0XC5,0X07,

149820XBC,0XE8,0XBC,0XE8,0XB4,0XE7,0XAC,0XC8,0XBD,0X4D,0XFF,0X79,0XFF,0XDD,0XFF,0XBF,

149830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

149890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

149900XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XFF,0XFB,0XE6,0XB2,0XD5,0XAA,0XDD,0XA8,

149910XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,

149920XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

149930XEE,0X28,0XEE,0X28,0XEE,0X27,0XEE,0X28,0XEE,0X6A,0XCD,0X48,0X7A,0XE1,0X62,0X61,

149940X6A,0XA3,0X62,0X83,0X62,0X83,0X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0X83,

149950X62,0XA3,0X5A,0X83,0X5A,0X44,0X73,0X08,0XDE,0X98,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

149960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XC5,0X6F,0XCD,0X6A,0XEE,0X4A,0XF6,0X48,

149970XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

149980XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X47,

149990XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

150000XF6,0X67,0XF6,0X88,0XFE,0XCA,0XEE,0X6A,0XCD,0X47,0XC5,0X27,0XC5,0X08,0XBC,0XE8,

150010XB4,0XE7,0XB4,0XE9,0XCD,0XF0,0XFF,0XDB,0XFF,0XBD,0XFF,0XBF,0XFF,0XFF,0XFF,0XFF,

150020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

150090XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0X56,0XD5,0XCB,0XDD,0XC8,0XE5,0XC7,0XE5,0XE7,

150100XED,0XE7,0XE5,0XC7,0XE5,0XE8,0XE5,0XE8,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,

150110XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,

150120XEE,0X27,0XEE,0X28,0XF6,0X6A,0XCD,0X48,0X7A,0XE1,0X6A,0X61,0X6A,0X83,0X62,0X83,

150130X62,0X83,0X62,0XA3,0X62,0XA3,0X62,0XA2,0X6A,0XA3,0X62,0XA3,0X62,0XA3,0X62,0X83,

150140X5A,0X44,0X73,0X08,0XDE,0X77,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

150150XFF,0XFF,0XFF,0XFD,0XC5,0X8F,0XCD,0X8B,0XEE,0X4A,0XF6,0X48,0XF6,0X47,0XF6,0X47,

150160XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

150170XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X67,

150180XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X67,0XF6,0X68,0XFE,0XA9,

150190XFE,0XCA,0XE6,0X08,0XCD,0X26,0XCD,0X47,0XC5,0X28,0XB4,0XC7,0XC5,0X48,0XAC,0XC8,

150200XEE,0XD4,0XFF,0X9A,0XFF,0XDE,0XFF,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,

150280XFF,0XDC,0XFF,0XB9,0XDD,0XED,0XDD,0XE9,0XE5,0XE7,0XE5,0XE7,0XED,0XE7,0XED,0XE7,

150290XE5,0XE7,0XE5,0XE7,0XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

150300XEE,0X27,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XEE,0X28,

150310XF6,0X6A,0XCD,0X68,0X7A,0XE1,0X6A,0X61,0X6A,0X83,0X62,0X83,0X62,0X83,0X62,0XA3,

150320X62,0XA3,0X62,0XA3,0X6A,0XA3,0X62,0X83,0X62,0XA3,0X62,0X63,0X5A,0X44,0X72,0XE8,

150330XD6,0X77,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDC,

150340XC5,0X8F,0XCD,0X8B,0XEE,0X4A,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

150350XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

150360XF6,0X47,0XF6,0X68,0XF6,0X48,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

150370XF6,0X67,0XF6,0X67,0XFE,0X88,0XF6,0X67,0XF6,0X88,0XFE,0XA9,0XFE,0XCA,0XDD,0XE8,

150380XC5,0X26,0XCD,0X47,0XCD,0X69,0XBD,0X28,0XBD,0X28,0XBD,0X4A,0XF7,0X36,0XFF,0XDC,

150390XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XDA,

150470XEE,0XD1,0XDD,0XE9,0XDD,0XE7,0XE6,0X07,0XED,0XE6,0XEE,0X07,0XE5,0XE7,0XE6,0X07,

150480XE6,0X07,0XE6,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,

150490XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,0XEE,0X27,0XEE,0X49,0XEE,0X4A,0XD5,0X88,

150500X83,0X01,0X6A,0X61,0X62,0X82,0X62,0X83,0X62,0X83,0X62,0XA3,0X62,0X82,0X62,0XA3,

150510X62,0XA3,0X62,0X83,0X6A,0XA3,0X62,0X84,0X5A,0X64,0X6A,0XC7,0XD6,0X56,0XFF,0XDE,

150520XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDD,0XC5,0X6F,0XCD,0X8B,

150530XEE,0X4A,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

150540XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

150550XF6,0X48,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

150560XF6,0X68,0XEE,0X47,0XF6,0X88,0XFE,0XEA,0XFE,0XAA,0XD5,0X86,0XCD,0X46,0XCD,0X47,

150570XCD,0X88,0XC5,0X48,0XBD,0X48,0XCD,0XEE,0XFF,0X78,0XFF,0XDD,0XFF,0XBE,0XFF,0XFF,

150580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDB,0XFF,0X33,0XDD,0XEB,

150660XE6,0X08,0XE5,0XE7,0XED,0XE6,0XEE,0X06,0XEE,0X07,0XEE,0X07,0XE6,0X07,0XE6,0X07,

150670XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,

150680XEE,0X27,0XEE,0X28,0XEE,0X28,0XF6,0X49,0XEE,0X49,0XD5,0XA8,0X83,0X21,0X62,0X60,

150690X62,0X62,0X62,0X83,0X62,0X83,0X62,0XA3,0X62,0X82,0X62,0XA3,0X62,0XA3,0X6A,0XA3,

150700X62,0X83,0X62,0XA4,0X62,0X64,0X62,0XA7,0XCE,0X15,0XFF,0XDD,0XFF,0XFF,0XFF,0XFF,

150710XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDC,0XC5,0X6E,0XCD,0X8A,0XEE,0X4A,0XF6,0X48,

150720XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

150730XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X68,0XF6,0X68,0XF6,0X48,0XF6,0X68,

150740XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X67,0XF6,0X47,

150750XFE,0XA9,0XFE,0XEA,0XF6,0X69,0XD5,0X86,0XD5,0X67,0XCD,0X67,0XCD,0X68,0XC5,0X89,

150760XBD,0X49,0XE6,0XB2,0XFF,0XBA,0XFF,0XDE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,

150770XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XFF,0X76,0XDE,0X2D,0XDD,0XE9,0XE5,0XE7,

150850XE5,0XE6,0XEE,0X06,0XEE,0X06,0XEE,0X06,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,

150860XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X28,

150870XEE,0X28,0XF6,0X49,0XEE,0X49,0XDD,0XC8,0X8B,0X41,0X62,0X40,0X62,0X62,0X62,0X63,

150880X62,0X83,0X62,0X83,0X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0XA3,0X62,0X83,0X62,0X83,

150890X62,0X84,0X5A,0X85,0XC5,0XD4,0XFF,0XBD,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,

150900XFF,0XFF,0XFF,0XDC,0XC5,0X8E,0XCD,0X8A,0XEE,0X4A,0XF6,0X48,0XF6,0X48,0XF6,0X68,

150910XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,

150920XF6,0X47,0XF6,0X47,0XF6,0X48,0XF6,0X68,0XF6,0X48,0XF6,0X67,0XF6,0X67,0XF6,0X67,

150930XF6,0X67,0XF6,0X67,0XF6,0X68,0XF6,0X88,0XF6,0X47,0XF6,0X88,0XFE,0XA9,0XFE,0XCA,

150940XEE,0X07,0XD5,0X86,0XD5,0X87,0XD5,0X87,0XCD,0X67,0XCD,0X89,0XBD,0X6B,0XFF,0X76,

150950XFF,0XFC,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

150960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

150990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151030XFF,0XFF,0XFF,0XFD,0XFF,0X99,0XEE,0X91,0XD5,0XEA,0XE6,0X28,0XE5,0XE6,0XEE,0X26,

151040XEE,0X06,0XEE,0X06,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X07,0XEE,0X27,

151050XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,0XEE,0X27,0XEE,0X28,0XEE,0X28,0XF6,0X49,

151060XEE,0X49,0XDD,0XE9,0X8B,0X62,0X62,0X40,0X62,0X42,0X62,0X63,0X62,0X83,0X62,0X83,

151070X62,0XA3,0X62,0X83,0X62,0X83,0X62,0X83,0X62,0X83,0X62,0X63,0X62,0X84,0X5A,0X45,

151080XBD,0XB3,0XFF,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDC,

151090XC5,0X6E,0XCD,0X8A,0XF6,0X4A,0XF6,0X48,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,

151100XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,

151110XF6,0X68,0XF6,0X68,0XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

151120XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0XA9,0XFE,0XC9,0XFE,0XA9,0XE5,0XC7,0XDD,0XC7,

151130XDD,0XA7,0XD5,0XA8,0XCD,0X88,0XCD,0XAA,0XCE,0X0E,0XFF,0XD9,0XFF,0XDC,0XFF,0XDE,

151140XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

151220XFF,0X9B,0XF7,0X35,0XD5,0XEC,0XE6,0X29,0XE6,0X07,0XEE,0X06,0XEE,0X06,0XEE,0X06,

151230XEE,0X07,0XEE,0X27,0XEE,0X07,0XEE,0X07,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,

151240XEE,0X27,0XEE,0X47,0XF6,0X27,0XF6,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XDE,0X09,

151250X8B,0X82,0X5A,0X20,0X62,0X42,0X62,0X63,0X62,0X63,0X62,0X83,0X62,0X83,0X62,0X83,

151260X62,0X84,0X62,0X63,0X62,0X83,0X62,0X83,0X5A,0X63,0X5A,0X64,0XB5,0X72,0XF7,0X9C,

151270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDC,0XBD,0X4D,0XD5,0XAA,

151280XF6,0X49,0XF6,0X47,0XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XFE,0X47,

151290XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,

151300XFE,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X87,0XF6,0X68,0XF6,0X68,

151310XF6,0X68,0XFE,0XA9,0XFE,0XA9,0XFE,0X89,0XE5,0XE6,0XE6,0X08,0XE5,0XE8,0XDD,0XC8,

151320XD5,0XC9,0XCD,0XCC,0XEE,0XF4,0XFF,0XFB,0XFF,0XDD,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

151330XFF,0XDE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBC,0XFF,0X78,

151410XDE,0X4E,0XDD,0XE9,0XEE,0X28,0XE5,0XE5,0XEE,0X26,0XEE,0X06,0XEE,0X07,0XEE,0X27,

151420XEE,0X08,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X47,

151430XF6,0X27,0XF6,0X28,0XEE,0X28,0XEE,0X48,0XEE,0X48,0XE6,0X09,0X93,0XC2,0X5A,0X20,

151440X62,0X42,0X62,0X43,0X5A,0X63,0X62,0X63,0X62,0X83,0X62,0X83,0X62,0X84,0X62,0X84,

151450X5A,0X62,0X62,0XA3,0X52,0X42,0X5A,0X64,0XA4,0XCF,0XF7,0X9B,0XFF,0XDF,0XFF,0XFF,

151460XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0XFF,0XBB,0XBD,0X2C,0XD5,0XEA,0XF6,0X49,0XF6,0X47,

151470XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,

151480XF6,0X67,0XF6,0X67,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,

151490XF6,0X67,0XF6,0X67,0XF6,0X87,0XF6,0X87,0XF6,0X68,0XF6,0X68,0XFE,0X89,0XFE,0XAA,

151500XFE,0X89,0XF6,0X68,0XE5,0XE7,0XEE,0X28,0XE5,0XE8,0XDD,0XC8,0XD5,0XCA,0XD6,0X2E,

151510XFF,0XB8,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0XFF,0XBA,0XEE,0XD1,0XDE,0X0A,

151600XE6,0X28,0XE5,0XE6,0XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XEE,0X08,0XEE,0X27,

151610XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XEE,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X48,

151620XF6,0X48,0XF6,0X48,0XEE,0X68,0XE6,0X29,0X9C,0X03,0X5A,0X20,0X62,0X42,0X5A,0X43,

151630X5A,0X43,0X5A,0X63,0X62,0X83,0X5A,0X63,0X62,0X64,0X5A,0X63,0X5A,0X42,0X62,0X83,

151640X52,0X43,0X52,0X43,0X8C,0X2C,0XF7,0X5B,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

151650XFF,0XBE,0XFF,0X9B,0XB5,0X0B,0XDE,0X0A,0XEE,0X49,0XF6,0X47,0XF6,0X47,0XF6,0X47,

151660XF6,0X47,0XF6,0X67,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,

151670XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

151680XF6,0X67,0XF6,0X87,0XF6,0X68,0XF6,0X68,0XFE,0X89,0XFE,0XAA,0XFE,0X89,0XF6,0X48,

151690XEE,0X07,0XEE,0X48,0XE5,0XE8,0XE5,0XE9,0XDE,0X0B,0XEE,0XD1,0XFF,0XDA,0XFF,0XFE,

151700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDC,0XF7,0X34,0XE6,0X4D,0XE6,0X08,0XEE,0X27,

151790XEE,0X26,0XEE,0X26,0XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

151800XEE,0X27,0XEE,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X48,0XF6,0X48,0XF6,0X48,

151810XF6,0X68,0XEE,0X49,0XA4,0X44,0X62,0X40,0X5A,0X42,0X5A,0X23,0X5A,0X43,0X5A,0X43,

151820X5A,0X63,0X5A,0X63,0X5A,0X64,0X5A,0X43,0X5A,0X42,0X5A,0X42,0X5A,0X63,0X49,0XE2,

151830X7B,0XAA,0XEF,0X3A,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XFF,0XDE,0XFF,0X9A,

151840XB4,0XEA,0XE6,0X2A,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,

151850XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,

151860XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

151870XF6,0X68,0XFE,0X89,0XFE,0XAA,0XFE,0XAA,0XFE,0X89,0XF6,0X48,0XEE,0X28,0XF6,0X49,

151880XEE,0X08,0XE6,0X2B,0XDE,0X4E,0XFF,0X76,0XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

151890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

151970XFF,0XFF,0XFF,0XFD,0XFF,0X78,0XEE,0X6F,0XDD,0XE9,0XEE,0X27,0XEE,0X07,0XF6,0X27,

151980XEE,0X26,0XF6,0X27,0XF6,0X27,0XF6,0X07,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XF6,0X48,

151990XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X47,0XF6,0X68,0XF6,0X48,0XEE,0X49,

152000XAC,0X44,0X6A,0X80,0X5A,0X01,0X5A,0X23,0X5A,0X43,0X5A,0X23,0X5A,0X42,0X5A,0X42,

152010X5A,0X43,0X5A,0X43,0X52,0X23,0X52,0X43,0X52,0X23,0X4A,0X03,0X6B,0X09,0XEF,0X1A,

152020XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XBE,0XF7,0X17,0XBD,0X2A,0XE6,0X29,

152030XF6,0X68,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

152040XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

152050XF6,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X68,0XFE,0X89,

152060XFE,0XAA,0XFE,0XAA,0XFE,0X89,0XF6,0X48,0XF6,0X69,0XEE,0X29,0XEE,0X4A,0XE6,0X0C,

152070XEE,0XF3,0XFF,0XBA,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

152080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XF7,0XFF,0XFF,0XFE,

152160XFF,0XBB,0XF6,0XF3,0XE6,0X2B,0XEE,0X48,0XEE,0X27,0XEE,0X27,0XEE,0X26,0XF6,0X26,

152170XF6,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,0XEE,0X27,0XF6,0X48,0XF6,0X27,0XF6,0X27,

152180XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X67,0XF6,0X48,0XF6,0X4A,0XBC,0XC6,0X7A,0XC1,

152190X5A,0X01,0X52,0X02,0X52,0X23,0X52,0X23,0X5A,0X42,0X5A,0X42,0X52,0X22,0X52,0X23,

152200X52,0X44,0X4A,0X03,0X52,0X23,0X49,0XE3,0X5A,0X87,0XDE,0X98,0XFF,0XDE,0XFF,0XFF,

152210XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XEE,0XB5,0XBD,0X29,0XEE,0X69,0XF6,0X67,0XF6,0X67,

152220XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

152230XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,

152240XFE,0X87,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XFE,0X88,0XFE,0XA9,0XFE,0XAA,0XFE,0X89,

152250XFE,0X89,0XEE,0X28,0XF6,0X8A,0XE6,0X29,0XEE,0X2B,0XEE,0X6E,0XF7,0X56,0XFF,0XDB,

152260XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

152270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152340XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF7,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDC,0XFF,0X57,

152350XEE,0X6E,0XE6,0X29,0XEE,0X47,0XEE,0X26,0XEE,0X27,0XF6,0X27,0XF6,0X27,0XF6,0X27,

152360XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X47,0XF6,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X47,

152370XF6,0X47,0XFE,0X68,0XF6,0X48,0XF6,0X6A,0XC4,0XE6,0X7B,0X01,0X5A,0X00,0X52,0X02,

152380X52,0X23,0X52,0X23,0X52,0X22,0X52,0X22,0X52,0X02,0X52,0X02,0X52,0X24,0X49,0XE2,

152390X52,0X23,0X49,0XE2,0X49,0XE4,0XC5,0XF5,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,

152400XFF,0XDD,0XD6,0X32,0XC5,0X69,0XEE,0X69,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

152410XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

152420XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X87,0XF6,0X87,

152430XF6,0X67,0XF6,0X87,0XFE,0X88,0XFE,0XAA,0XFE,0X8A,0XFE,0X69,0XF6,0X68,0XF6,0X68,

152440XF6,0X89,0XEE,0X6A,0XE6,0X4B,0XF6,0XF1,0XFF,0XB9,0XFF,0XFC,0XFF,0XDE,0XFF,0XFF,

152450XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152530XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDD,0XFF,0XBA,0XEE,0XD1,0XE6,0X4B,

152540XEE,0X27,0XEE,0X46,0XF6,0X27,0XEE,0X27,0XF6,0X28,0XF6,0X48,0XF6,0X27,0XF6,0X27,

152550XF6,0X47,0XF6,0X27,0XF6,0X27,0XF6,0X47,0XF6,0X27,0XF6,0X48,0XF6,0X47,0XFE,0X88,

152560XF6,0X68,0XFE,0X8A,0XCD,0X47,0X8B,0X42,0X62,0X20,0X51,0XE1,0X52,0X03,0X52,0X03,

152570X52,0X02,0X52,0X22,0X52,0X02,0X4A,0X02,0X4A,0X03,0X4A,0X03,0X4A,0X02,0X4A,0X02,

152580X39,0X82,0XAD,0X11,0XFF,0XDD,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFC,0XCD,0XF0,

152590XCD,0X68,0XEE,0X48,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

152600XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

152610XFE,0X67,0XFE,0X87,0XF6,0X86,0XF6,0X86,0XF6,0X86,0XF6,0X86,0XF6,0X87,0XF6,0X88,

152620XFE,0XA9,0XFE,0XAA,0XFE,0X6A,0XFE,0X69,0XF6,0X48,0XFE,0X89,0XEE,0X69,0XEE,0X8B,

152630XE6,0X8E,0XFF,0X75,0XFF,0XFA,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,

152640XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152720XFF,0XFF,0XFF,0XFE,0XFF,0XDD,0XFF,0XFC,0XFF,0X56,0XE6,0X8F,0XE6,0X28,0XF6,0X67,

152730XF6,0X27,0XF6,0X27,0XF6,0X28,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X27,

152740XFE,0X47,0XFE,0X67,0XF6,0X47,0XF6,0X68,0XF6,0X47,0XFE,0X88,0XF6,0X48,0XFE,0X69,

152750XE5,0XC9,0X9B,0XC3,0X62,0X40,0X51,0XE0,0X52,0X02,0X51,0XE2,0X52,0X02,0X52,0X23,

152760X4A,0X02,0X4A,0X02,0X41,0XE2,0X4A,0X03,0X41,0XE2,0X41,0XE2,0X39,0X81,0X83,0XCC,

152770XFF,0XBD,0XF7,0XBE,0XFF,0XFF,0XFF,0XFD,0XFF,0XBA,0XCD,0XCE,0XDD,0XEA,0XE6,0X07,

152780XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

152790XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X87,

152800XFE,0X86,0XF6,0X86,0XF6,0X86,0XF6,0X86,0XF6,0XA7,0XFE,0XA8,0XFE,0XA9,0XFE,0XAA,

152810XFE,0X8A,0XFE,0X69,0XFE,0X69,0XF6,0X8A,0XEE,0X6A,0XE6,0X6D,0XF7,0X12,0XFF,0XB8,

152820XFF,0XDC,0XFF,0XFE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,

152830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

152900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

152910XFF,0XDD,0XFF,0XFC,0XFF,0XDA,0XF7,0X13,0XE6,0X4A,0XEE,0X47,0XEE,0X27,0XF6,0X27,

152920XF6,0X48,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XFE,0X47,0XFE,0X27,0XFE,0X47,0XF6,0X47,

152930XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X68,0XF6,0X47,0XFE,0X69,0XEE,0X09,0XAC,0X44,

152940X72,0X80,0X51,0XE0,0X52,0X01,0X51,0XE2,0X49,0XE2,0X49,0XC2,0X49,0XE2,0X49,0XE2,

152950X4A,0X03,0X41,0XC2,0X4A,0X02,0X41,0XC1,0X41,0XC2,0X5A,0X66,0XF7,0X5B,0XFF,0XFE,

152960XFF,0XFE,0XFF,0XFC,0XF7,0X78,0XBD,0X4C,0XDD,0XC9,0XF6,0X68,0XF6,0X67,0XF6,0X67,

152970XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

152980XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X86,0XF6,0X86,

152990XF6,0X86,0XF6,0XA7,0XF6,0XA8,0XFE,0XA8,0XFE,0X89,0XFE,0X8A,0XFE,0X8A,0XFE,0X8A,

153000XF6,0X69,0XF6,0X8B,0XE6,0X6C,0XEE,0XD0,0XFF,0X97,0XFF,0XDB,0XFF,0XDD,0XFF,0XFF,

153010XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

153020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,

153100XFF,0XFC,0XFF,0X97,0XEE,0XAD,0XE6,0X49,0XEE,0X27,0XF6,0X47,0XF6,0X48,0XF6,0X47,

153110XF6,0X47,0XF6,0X47,0XFE,0X47,0XFE,0X47,0XFE,0X47,0XF6,0X47,0XF6,0X47,0XF6,0X47,

153120XFE,0X67,0XFE,0X67,0XFE,0X47,0XFE,0X68,0XF6,0X29,0XC4,0XE5,0X83,0X41,0X5A,0X20,

153130X52,0X01,0X52,0X01,0X52,0X02,0X49,0XC2,0X49,0XE2,0X4A,0X03,0X52,0X04,0X41,0XA2,

153140X4A,0X22,0X49,0XE1,0X49,0XE3,0X49,0XC3,0XCD,0XF6,0XFF,0XDE,0XFF,0XFE,0XFF,0XFC,

153150XE6,0XD4,0XBD,0X0A,0XE6,0X09,0XFE,0X69,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

153160XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XF6,0X67,

153170XF6,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X86,0XF6,0X86,0XF6,0X87,0XFE,0X87,

153180XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X8A,0XFE,0X8A,0XFE,0X8B,0XF6,0X6A,0XF6,0XAC,

153190XEE,0XAF,0XFF,0X75,0XFF,0XDA,0XFF,0XFD,0XFF,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153200XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XFD,0XFF,0XFD,0XFF,0XFB,

153290XF7,0X12,0XEE,0X8C,0XEE,0X29,0XF6,0X48,0XF6,0X47,0XF6,0X47,0XF6,0X47,0XFE,0X47,

153300XFE,0X27,0XFE,0X47,0XFE,0X47,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,

153310XFE,0X47,0XFE,0X68,0XFE,0X49,0XDD,0X87,0X9C,0X03,0X6A,0X80,0X5A,0X20,0X52,0X21,

153320X5A,0X22,0X52,0X02,0X52,0X23,0X52,0X03,0X52,0X04,0X49,0XC2,0X52,0X23,0X52,0X02,

153330X52,0X02,0X49,0XA3,0X8B,0XED,0XFF,0XBD,0XFF,0XFD,0XFF,0XDA,0XDE,0X71,0XC5,0X4A,

153340XF6,0X4A,0XFE,0X48,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

153350XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XFE,0X87,

153360XFE,0X87,0XFE,0X87,0XF6,0X67,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,

153370XFE,0X89,0XFE,0XAA,0XFE,0X8A,0XF6,0X6B,0XF6,0X8C,0XEE,0X8E,0XF7,0X33,0XFF,0XD8,

153380XFF,0XDC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

153390XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153470XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFC,0XFF,0X97,0XF6,0XF1,

153480XE6,0X4B,0XEE,0X48,0XF6,0X67,0XFE,0X66,0XFE,0X46,0XFE,0X47,0XFE,0X47,0XFE,0X46,

153490XFE,0X67,0XF6,0X46,0XF6,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X68,

153500XFE,0X89,0XE5,0XE8,0XBC,0XC5,0X7B,0X20,0X5A,0X20,0X5A,0X40,0X62,0X62,0X5A,0X22,

153510X5A,0X43,0X5A,0X43,0X5A,0X44,0X5A,0X23,0X5A,0X63,0X5A,0X42,0X5A,0X22,0X62,0X64,

153520X62,0X46,0XE6,0X97,0XFF,0XDB,0XFF,0X77,0XD5,0XEE,0XD5,0X8A,0XFE,0X8B,0XF6,0X27,

153530XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

153540XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X67,0XF6,0X87,0XF6,0X67,

153550XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X89,0XFE,0XA9,0XFE,0XA9,0XFE,0XA9,

153560XF6,0X6A,0XEE,0X8C,0XEE,0XAE,0XEE,0XF1,0XFF,0XD7,0XFF,0XFB,0XFF,0XFD,0XFF,0XDF,

153570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

153580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153660XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XBA,0XFF,0X55,0XEE,0X8E,0XEE,0X6A,

153670XF6,0X67,0XFE,0X86,0XFE,0X46,0XFE,0X46,0XFE,0X46,0XFE,0X26,0XFE,0X67,0XF6,0X67,

153680XFE,0X67,0XF6,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X69,

153690XD5,0X87,0XA4,0X43,0X72,0XC0,0X62,0X80,0X6A,0XA2,0X6A,0XA3,0X6A,0XA3,0X6A,0XA3,

153700X6A,0XC4,0X6A,0XC4,0X6A,0XA2,0X72,0XC3,0X72,0XC3,0X83,0X26,0X6A,0X85,0X9C,0X2B,

153710XFF,0X56,0XF7,0X34,0XC5,0X29,0XE5,0XEA,0XFE,0X6A,0XFE,0X27,0XFE,0X67,0XFE,0X67,

153720XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

153730XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X68,0XFE,0X69,

153740XFE,0X69,0XFE,0X68,0XFE,0X88,0XFE,0X88,0XFE,0XA8,0XFE,0XCA,0XF6,0X8B,0XEE,0XAE,

153750XF7,0X12,0XF7,0X76,0XFF,0XFA,0XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

153760XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153850XFF,0XFF,0XFF,0XFE,0XFF,0XFC,0XFF,0XB9,0XF7,0X13,0XEE,0X8C,0XEE,0X48,0XF6,0X66,

153860XF6,0X45,0XFE,0X45,0XFE,0X67,0XFE,0X47,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XF6,0X67,

153870XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XE5,0XE7,0XC5,0X66,

153880X83,0X60,0X7B,0X21,0X7B,0X63,0X73,0X02,0X83,0X64,0X7B,0X03,0X83,0X44,0X8B,0X85,

153890X7B,0X23,0X8B,0X84,0X93,0X84,0X8B,0X64,0X93,0XA7,0X83,0X45,0XCD,0XAD,0XD5,0XCC,

153900XD5,0X88,0XF6,0X8A,0XEE,0X07,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

153910XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

153920XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X68,0XFE,0X69,0XFE,0X69,0XFE,0X68,

153930XFE,0X87,0XFE,0XA8,0XFE,0XA8,0XF6,0XAA,0XEE,0X8D,0XF6,0XF1,0XFF,0X97,0XFF,0XDA,

153940XFF,0XFC,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

153990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

154040XFF,0XFE,0XFF,0XFB,0XFF,0X97,0XEE,0XD0,0XEE,0X6B,0XF6,0X68,0XF6,0X66,0XFE,0X46,

154050XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XF6,0X67,0XFE,0X87,0XFE,0X67,

154060XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,0XEE,0X68,0XEE,0X49,0XAC,0X84,0X93,0XC2,

154070X93,0XE3,0X93,0XC4,0X93,0XA4,0X93,0XC4,0X93,0XC4,0X9C,0X05,0X9B,0XE4,0X9C,0X04,

154080X9B,0XE4,0X9B,0XE4,0X9B,0XC5,0X9B,0XE5,0X9B,0XE4,0XB4,0XA5,0XE6,0X09,0XF6,0X69,

154090XF6,0X67,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

154100XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,

154110XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X89,0XFE,0XA8,0XFE,0XA9,

154120XF6,0XA9,0XEE,0X8B,0XF6,0XF0,0XFF,0X55,0XFF,0XDB,0XFF,0XFD,0XFF,0XFE,0XFF,0XFF,

154130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,

154230XFF,0XDA,0XFF,0X56,0XEE,0XCF,0XEE,0X6B,0XF6,0X68,0XF6,0X67,0XF6,0X47,0XF6,0X47,

154240XFE,0X67,0XFE,0X67,0XFE,0X88,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X67,

154250XFE,0X67,0XFE,0X87,0XF6,0X68,0XF6,0XAA,0XDE,0X29,0XB5,0X06,0X9C,0X24,0XA4,0X85,

154260XAC,0XA6,0XAC,0X65,0XAC,0X65,0XAC,0X64,0XA4,0X02,0XA4,0X02,0XA4,0X02,0X9B,0XC1,

154270X9B,0XC2,0X8B,0X40,0XA4,0X02,0XC5,0X05,0XF6,0X48,0XFE,0XA8,0XF6,0X87,0XF6,0X86,

154280XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

154290XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,

154300XFE,0X88,0XFE,0X89,0XFE,0XA9,0XFE,0XCA,0XFE,0XAA,0XF6,0XAA,0XEE,0XAC,0XEE,0XD0,

154310XFF,0X55,0XFF,0XBA,0XFF,0XDD,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154410XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0XDA,

154420XF7,0X34,0XE6,0X6D,0XEE,0X49,0XF6,0X68,0XF6,0X68,0XF6,0X68,0XFE,0X48,0XFE,0X68,

154430XFE,0X88,0XF6,0X67,0XF6,0X87,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XF6,0X67,

154440XF6,0X67,0XF6,0X89,0XFF,0X2C,0XEE,0XAB,0XC5,0X67,0XAC,0XC5,0XAC,0X84,0XAC,0X84,

154450XA4,0X22,0XA4,0X01,0XAC,0X42,0XA4,0X21,0X9B,0XE0,0X9B,0XC0,0X93,0XA0,0X9B,0XA0,

154460XC4,0XC3,0XEE,0X07,0XFE,0X88,0XF6,0X67,0XFE,0XA7,0XF6,0X66,0XF6,0X67,0XFE,0X67,

154470XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,

154480XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XFE,0X88,0XFE,0XA9,

154490XFE,0XCA,0XFE,0XAB,0XEE,0X8B,0XEE,0X6D,0XF6,0XF1,0XFF,0X75,0XFF,0XBA,0XFF,0XFD,

154500XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFD,0XFF,0X98,0XEE,0XF2,

154610XEE,0X6D,0XEE,0X6A,0XF6,0X89,0XFE,0X89,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XF6,0X67,

154620XFE,0X88,0XF6,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0XA8,0XF6,0XA8,

154630XFE,0XEB,0XFF,0X4D,0XF6,0XEC,0XD5,0XE9,0XBC,0XC5,0XB4,0X83,0XAC,0X42,0XAC,0X41,

154640XA3,0XE0,0X9B,0XC0,0X9C,0X00,0XA4,0X00,0XAC,0X21,0XC5,0X03,0XEE,0X07,0XF6,0X27,

154650XF6,0X46,0XFE,0X87,0XF6,0XA7,0XF6,0XA7,0XF6,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,

154660XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,

154670XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X89,0XFE,0X8A,0XFE,0XAB,0XF6,0X8C,

154680XEE,0X8E,0XF6,0XF2,0XFF,0X76,0XFF,0XDA,0XFF,0XDD,0XFF,0XFF,0XFF,0XBF,0XFF,0XDF,

154690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154780XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154790XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFC,0XFF,0XB7,0XEE,0XF1,0XE6,0X6C,

154800XEE,0X6A,0XF6,0X89,0XFE,0X88,0XF6,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X68,

154810XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XF6,0X68,0XF6,0X88,0XEE,0X89,0XF6,0XCA,

154820XFF,0X6E,0XFF,0X4D,0XF6,0XAA,0XE6,0X29,0XD5,0X65,0XCD,0X65,0XC5,0X24,0XC5,0X44,

154830XD5,0X85,0XDD,0XC6,0XE6,0X27,0XE5,0XE6,0XF6,0X48,0XFE,0X88,0XFE,0X67,0XF6,0X86,

154840XF6,0X86,0XF6,0X86,0XF6,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,

154850XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,

154860XFE,0X88,0XFE,0X89,0XFE,0XAA,0XF6,0XAB,0XF6,0X6C,0XEE,0X8E,0XF6,0XF3,0XFF,0X97,

154870XFF,0XDB,0XFF,0XFD,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,

154880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154970XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

154980XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XDA,0XFF,0XB7,0XEF,0X10,0XE6,0XAB,0XEE,0XA8,

154990XF6,0X87,0XFE,0X87,0XFE,0X68,0XFE,0X69,0XFE,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X67,

155000XFE,0X67,0XFE,0X68,0XF6,0X68,0XF6,0X89,0XF6,0X69,0XEE,0X69,0XF6,0X8A,0XF6,0XCA,

155010XFF,0X4C,0XFF,0X4B,0XFF,0X2B,0XFF,0X2B,0XFF,0X2B,0XFF,0X0B,0XFE,0XCA,0XF6,0X89,

155020XEE,0X27,0XEE,0X48,0XF6,0X68,0XFE,0X88,0XFE,0X87,0XF6,0X67,0XF6,0X67,0XF6,0X87,

155030XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,

155040XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0XA7,0XFE,0XA7,0XFE,0X88,0XFE,0X89,0XFE,0X8A,

155050XF6,0XCB,0XEE,0XAC,0XEE,0XAF,0XFF,0X34,0XFF,0XB8,0XFF,0XDB,0XFF,0XDE,0XFF,0XDF,

155060XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,

155070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

155170XFF,0XDE,0XFF,0XDD,0XFF,0XFB,0XFF,0X96,0XEF,0X10,0XE6,0XAA,0XF6,0XA8,0XFE,0XA8,

155180XFE,0X89,0XFE,0X69,0XFE,0X49,0XFE,0X48,0XFE,0X48,0XFE,0X67,0XFE,0X87,0XFE,0X67,

155190XF6,0X68,0XF6,0X69,0XF6,0X69,0XF6,0X89,0XF6,0X89,0XF6,0X88,0XEE,0X67,0XEE,0X87,

155200XF6,0XA8,0XEE,0X88,0XEE,0X67,0XEE,0X47,0XEE,0X47,0XF6,0X68,0XFE,0X88,0XFE,0X88,

155210XF6,0X88,0XF6,0X88,0XF6,0X67,0XF6,0X67,0XF6,0X67,0XFE,0XA8,0XF6,0X67,0XFE,0X87,

155220XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X67,0XFE,0X67,

155230XFE,0X87,0XFE,0XA7,0XFE,0XA8,0XFE,0X89,0XFE,0X8B,0XFE,0XAD,0XEE,0X8D,0XEE,0XD0,

155240XFF,0X54,0XFF,0X98,0XFF,0XDB,0XFF,0XDD,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

155250XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

155360XFF,0XFE,0XFF,0XDA,0XFF,0X96,0XF7,0X31,0XEE,0X8C,0XEE,0X8A,0XF6,0X89,0XF6,0X89,

155370XFE,0X89,0XFE,0X88,0XFE,0X68,0XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X87,

155380XF6,0X88,0XF6,0XA8,0XF6,0XA8,0XEE,0X87,0XF6,0X87,0XF6,0XA7,0XF6,0XA7,0XF6,0XA7,

155390XF6,0X87,0XF6,0X87,0XF6,0X88,0XFE,0XA8,0XFE,0XA8,0XFE,0X88,0XFE,0X88,0XFE,0X88,

155400XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X66,

155410XF6,0X66,0XF6,0X66,0XFE,0X67,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0XA8,0XFE,0XA8,

155420XF6,0X89,0XEE,0X6B,0XEE,0X4D,0XEE,0X50,0XFF,0X14,0XFF,0X77,0XFF,0XDB,0XFF,0XFC,

155430XFF,0XDE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,

155440XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

155540XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XDF,0XFF,0XBF,0XFF,0X9F,0XFF,0X9E,0XFF,0XBD,

155550XFF,0XBA,0XFF,0X76,0XF6,0XF1,0XEE,0XAD,0XEE,0X8B,0XEE,0X89,0XF6,0X88,0XF6,0X68,

155560XF6,0X47,0XF6,0X47,0XFE,0X87,0XFE,0X87,0XFE,0XA7,0XF6,0X87,0XF6,0X87,0XF6,0XA7,

155570XF6,0XA7,0XF6,0XA7,0XFE,0XA7,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XFE,0X87,

155580XFE,0X87,0XFE,0X67,0XF6,0X67,0XF6,0X67,0XFE,0X67,0XFE,0X88,0XFE,0X88,0XFE,0X68,

155590XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0XA7,0XFE,0X87,0XF6,0X86,

155600XF6,0X67,0XF6,0X68,0XF6,0X69,0XF6,0X69,0XF6,0X8A,0XF6,0XAB,0XF6,0XAD,0XF6,0XD0,

155610XFF,0X13,0XFF,0X57,0XFF,0X9A,0XFF,0XBC,0XFF,0XDD,0XFF,0XBE,0XFF,0XBE,0XFF,0XDF,

155620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,

155630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

155670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

155710XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

155720XF7,0XBF,0XF7,0XBF,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9D,0XF7,0X9D,

155730XF7,0X9D,0XEF,0X9D,0XEF,0X7E,0XEF,0X5E,0XEF,0X3D,0XF7,0X5C,0XFF,0X7C,0XFF,0X59,

155740XF7,0X15,0XEE,0XF2,0XEE,0XAE,0XEE,0X8B,0XEE,0X89,0XF6,0XA8,0XFE,0XA8,0XFE,0XA8,

155750XFE,0X87,0XFE,0X87,0XFE,0X86,0XFE,0X86,0XF6,0X87,0XF6,0X87,0XF6,0X87,0XFE,0XA8,

155760XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X88,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X88,

155770XFE,0X88,0XFE,0X88,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X88,

155780XFE,0X68,0XFE,0X89,0XFE,0X88,0XF6,0X46,0XF6,0X46,0XFE,0XC8,0XFE,0XE9,0XF6,0X89,

155790XF6,0X8B,0XEE,0X8C,0XEE,0X8D,0XEE,0XAF,0XF6,0XD1,0XF7,0X14,0XFF,0X58,0XFF,0X9A,

155800XFF,0XBC,0XFF,0X9D,0XFF,0X9E,0XFF,0XBE,0XFF,0XBF,0XFF,0XDF,0XFF,0XDF,0XF7,0XDF,

155810XF7,0XDE,0XF7,0XDE,0XF7,0XDE,0XF7,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

155820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155850XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

155860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

155880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

155890XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,

155900XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7E,0XEF,0X7E,

155910XEF,0X5D,0XEF,0X5D,0XEF,0X5C,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3B,0XE7,0X3B,

155920XE7,0X1C,0XE7,0X1C,0XDE,0XDB,0XDE,0XDB,0XE6,0XDA,0XE6,0XD9,0XE6,0XB7,0XE6,0X93,

155930XDE,0X70,0XE6,0X6D,0XEE,0X8B,0XF6,0XAA,0XFE,0X89,0XFE,0X68,0XFE,0X88,0XFE,0X67,

155940XFE,0X66,0XFE,0X86,0XFE,0X87,0XF6,0X87,0XF6,0X87,0XFE,0X88,0XFE,0X68,0XFE,0X68,

155950XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,0XFE,0X88,

155960XFE,0X67,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X88,0XF6,0X47,

155970XF6,0X48,0XFE,0XA9,0XFE,0XA8,0XF6,0X89,0XF6,0XAA,0XF6,0XAC,0XEE,0XAE,0XEE,0XB0,

155980XEE,0XD2,0XF7,0X14,0XF7,0X36,0XF7,0X58,0XF7,0X5A,0XF7,0X7B,0XF7,0X5C,0XEF,0X5C,

155990XEF,0X5C,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7E,0XEF,0X9E,0XEF,0X9D,0XF7,0X9D,

156000XEF,0X9D,0XF7,0X9D,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBF,0XF7,0XBE,0XF7,0XBE,

156010XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

156020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156040XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156070XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,

156080XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

156090XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XE7,0X5D,0XE7,0X3D,0XE7,0X1C,0XE7,0X1B,

156100XE6,0XFB,0XDE,0XDB,0XDE,0XDA,0XDE,0XDA,0XD6,0XD9,0XD6,0XB8,0XCE,0X58,0XCE,0X58,

156110XCE,0X59,0XCE,0X59,0XC5,0XF7,0XBD,0XB5,0XBD,0XB4,0XC5,0X92,0XC5,0X90,0XCD,0XAE,

156120XDE,0X0D,0XEE,0X8C,0XF6,0XAC,0XFE,0XAB,0XF6,0X69,0XFE,0X69,0XFE,0X68,0XFE,0X87,

156130XFE,0X87,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X68,0XFE,0X68,0XFE,0X48,0XFE,0X68,

156140XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X88,

156150XF6,0X88,0XF6,0X87,0XF6,0X87,0XF6,0X67,0XFE,0X88,0XFE,0X68,0XFE,0X89,0XFE,0X8A,

156160XF6,0X8B,0XF6,0XCC,0XEE,0XAE,0XD6,0X2E,0XCD,0XF0,0XCE,0X12,0XCE,0X33,0XCE,0X55,

156170XCE,0X76,0XD6,0X77,0XD6,0X98,0XDE,0XB9,0XDE,0XD9,0XDE,0XFA,0XDE,0XFA,0XDF,0X1B,

156180XDF,0X1B,0XDF,0X1B,0XE7,0X3C,0XE7,0X5D,0XE7,0X5C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,

156190XF7,0X7D,0XF7,0X7D,0XEF,0X7D,0XF7,0X9D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

156200XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

156210XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

156220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156230XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

156260XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

156270XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,

156280XEF,0X5D,0XE7,0X3D,0XE7,0X3D,0XE7,0X1C,0XDE,0XFB,0XDE,0XDA,0XDE,0XBA,0XD6,0X9A,

156290XD6,0X99,0XCE,0X79,0XC6,0X57,0XCE,0X57,0XBE,0X16,0XBD,0XF6,0XB5,0XD6,0XB5,0XB6,

156300XAD,0X55,0XA5,0X34,0XA4,0XF2,0XA4,0XD1,0X9C,0X6E,0X9C,0X2C,0XA4,0X8A,0XBD,0X2B,

156310XDE,0X0D,0XEE,0X8D,0XEE,0X4C,0XF6,0X8B,0XFE,0XAA,0XF6,0X89,0XF6,0X88,0XFE,0X88,

156320XFE,0X68,0XFE,0X68,0XFE,0X68,0XFE,0X67,0XFE,0X67,0XFE,0X67,0XFE,0X68,0XFE,0X68,

156330XFE,0X68,0XFE,0X88,0XFE,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,0XF6,0X88,

156340XF6,0X88,0XF6,0X88,0XFE,0X89,0XEE,0X48,0XFE,0X8A,0XFE,0XEE,0XF6,0X8E,0XC5,0X4A,

156350X8B,0XA6,0X5A,0X83,0X62,0XA6,0X63,0X09,0X6B,0X8B,0X7C,0X0E,0X8C,0X70,0X94,0XD1,

156360XA5,0X13,0XAD,0X74,0XB5,0XB5,0XB5,0XD6,0XBE,0X16,0XC6,0X37,0XC6,0X58,0XCE,0X79,

156370XCE,0X99,0XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFC,0XE6,0XFC,0XE7,0X1C,0XE7,0X1C,

156380XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,

156390XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

156400XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

156410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,

156420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156440XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

156450XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

156460XF7,0X9E,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

156470XE7,0X1C,0XDF,0X1B,0XDE,0XFA,0XDE,0XDA,0XD6,0X9A,0XD6,0X9A,0XCE,0X5A,0XCE,0X59,

156480XC6,0X38,0XBD,0XF7,0XB5,0XD6,0XB5,0XB5,0XAD,0X75,0XA5,0X35,0X9C,0XF4,0X9C,0XD3,

156490X9C,0XB2,0X8C,0X50,0X83,0XCE,0X83,0XCD,0X83,0X8B,0X73,0X07,0X83,0X88,0XB4,0XEB,

156500XEE,0X90,0XF6,0XAF,0XEE,0X6C,0XF6,0X8B,0XF6,0X8A,0XF6,0X68,0XF6,0X88,0XFE,0X88,

156510XFE,0X88,0XFE,0X87,0XFE,0X87,0XFE,0X67,0XFE,0X87,0XFE,0X87,0XFE,0X87,0XF6,0X87,

156520XF6,0X87,0XF6,0X87,0XF6,0XA8,0XF6,0XA8,0XEE,0X68,0XEE,0X88,0XF6,0X89,0XEE,0X89,

156530XF6,0XAB,0XFF,0X0D,0XF6,0X8D,0XBC,0XC9,0X72,0XC3,0X49,0X80,0X39,0X61,0X41,0XC5,

156540X39,0XC6,0X39,0XE6,0X3A,0X06,0X42,0X47,0X4A,0X88,0X52,0XCA,0X63,0X0C,0X6B,0X8E,

156550X7C,0X10,0X84,0X50,0X8C,0X71,0X94,0XD2,0XA5,0X34,0XAD,0X95,0XB5,0XB6,0XBD,0XD7,

156560XBD,0XF8,0XCE,0X39,0XCE,0X59,0XD6,0X7A,0XDE,0XBB,0XDE,0XDB,0XDE,0XDB,0XE6,0XFB,

156570XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

156580XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

156590XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

156600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

156610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

156630XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,

156640XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

156650XEF,0X7D,0XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,

156660XE7,0X1B,0XDE,0XFB,0XDE,0XDB,0XDE,0XDB,0XDE,0XBC,0XD6,0X9B,0XCE,0X7A,0XCE,0X58,

156670XBE,0X17,0XBD,0XF7,0XBD,0XD7,0XAD,0X96,0XA5,0X35,0X9C,0XF4,0X94,0XB2,0X8C,0X50,

156680X7B,0XCF,0X73,0X8E,0X73,0X6D,0X62,0XCA,0X52,0X46,0X52,0X44,0X62,0XA4,0X9C,0X49,

156690XCD,0XED,0XE6,0X8E,0XEE,0X8C,0XF6,0X8B,0XF6,0X8B,0XF6,0X6A,0XF6,0X69,0XF6,0X89,

156700XF6,0X89,0XF6,0X88,0XF6,0X68,0XEE,0X67,0XF6,0X87,0XEE,0X87,0XF6,0XA8,0XEE,0X88,

156710XEE,0X89,0XEE,0X8A,0XEE,0XAB,0XF6,0XCC,0XF6,0XED,0XF6,0XCD,0XE6,0X4C,0XA4,0X87,

156720X62,0X60,0X41,0X60,0X41,0X80,0X49,0XE4,0X4A,0X06,0X4A,0X08,0X52,0X49,0X52,0X8A,

156730X52,0XAA,0X52,0XCA,0X52,0XC9,0X52,0XCA,0X5A,0XEC,0X6B,0X4E,0X6B,0X8E,0X73,0XCF,

156740X7B,0XF0,0X7C,0X30,0X8C,0X71,0X94,0XB2,0X9C,0XD3,0XA5,0X13,0XAD,0X55,0XB5,0X96,

156750XBD,0XB7,0XBD,0XD8,0XC6,0X18,0XCE,0X18,0XCE,0X38,0XCE,0X79,0XD6,0XBA,0XD6,0XBA,

156760XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,

156770XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,

156780XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

156790XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156810XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,

156820XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

156830XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,

156840XEF,0X7D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5C,0XE7,0X5C,0XE7,0X3C,0XE7,0X1C,

156850XE7,0X1C,0XE6,0XFD,0XDE,0XDD,0XDE,0XDC,0XDE,0XDB,0XD6,0XBA,0XD6,0X99,0XCE,0X79,

156860XCE,0X79,0XC6,0X59,0XBE,0X18,0XB5,0XD7,0XB5,0XB5,0XB5,0X95,0XA5,0X54,0X9C,0XD3,

156870X8C,0X72,0X84,0X10,0X73,0X8D,0X6B,0X2A,0X5A,0X86,0X4A,0X22,0X4A,0X20,0X73,0X23,

156880XA4,0XA8,0XCD,0XCC,0XDE,0X2D,0XE6,0X4D,0XEE,0X4C,0XEE,0X6C,0XEE,0X6C,0XEE,0X8C,

156890XEE,0X8B,0XEE,0X8B,0XEE,0XAB,0XEE,0XAB,0XEE,0X8B,0XEE,0X8B,0XE6,0X8C,0XE6,0X6D,

156900XE6,0X4D,0XCD,0XCC,0XA4,0X88,0X7B,0X23,0X49,0XC0,0X39,0XA0,0X39,0X81,0X41,0XC3,

156910X4A,0X05,0X4A,0X26,0X52,0X47,0X5A,0XA9,0X62,0XCB,0X63,0X0B,0X6B,0X4C,0X6B,0X6C,

156920X6B,0X4C,0X6B,0X4D,0X6B,0X6E,0X73,0X8F,0X73,0XAF,0X7C,0X10,0X84,0X31,0X8C,0X71,

156930X94,0X92,0X94,0XB2,0X9C,0XF3,0XA5,0X14,0XA5,0X35,0XB5,0X76,0XBD,0X97,0XBD,0XB7,

156940XC5,0XF8,0XC6,0X18,0XC6,0X18,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XD6,0XBA,0XDE,0XDB,

156950XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,

156960XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

156970XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156980XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

156990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

157010XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

157020XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XEF,0X7D,

157030XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7C,0XEF,0X5C,0XE7,0X3C,0XE7,0X3D,0XE7,0X1D,

157040XE7,0X1D,0XE6,0XFD,0XDE,0XFC,0XDE,0XFB,0XDE,0XFB,0XDE,0XDB,0XDE,0XDB,0XD6,0XBB,

157050XD6,0XBA,0XCE,0X99,0XCE,0X79,0XCE,0X78,0XCE,0X79,0XC6,0X58,0XBD,0XF8,0XBD,0XD8,

157060XB5,0XB7,0XAD,0X75,0XA5,0X32,0XA5,0X10,0X9C,0XCE,0X8C,0X4B,0X8C,0X09,0X94,0X4A,

157070XAC,0XCB,0XC5,0X8E,0XCD,0XAE,0XD5,0XCE,0XD5,0XEE,0XDE,0X0D,0XDE,0X2D,0XDE,0X2D,

157080XD5,0XEC,0XCD,0XCB,0XC5,0X8B,0XBD,0X4A,0XAC,0XC9,0X93,0XE7,0X73,0X04,0X5A,0X42,

157090X51,0XE2,0X49,0XC2,0X4A,0X05,0X4A,0X26,0X52,0X47,0X52,0X88,0X5A,0XC9,0X63,0X0A,

157100X6B,0X2A,0X73,0X6B,0X73,0X6C,0X7B,0X6D,0X83,0XCE,0X8B,0XEF,0X8C,0X0F,0X8C,0X50,

157110X8C,0X52,0X8C,0X51,0X84,0X30,0X8C,0X51,0X94,0X92,0X94,0XD2,0X9C,0XF3,0XA5,0X13,

157120XA5,0X34,0XAD,0X55,0XAD,0X55,0XB5,0X96,0XBD,0XB7,0XBD,0XD7,0XC5,0XF8,0XC6,0X18,

157130XC6,0X38,0XCE,0X59,0XCE,0X79,0XD6,0X9A,0XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XDB,

157140XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,

157150XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

157160XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

157170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157190XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,

157200XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

157210XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

157220XF7,0XBD,0XF7,0X9D,0XF7,0X9D,0XEF,0X7D,0XEF,0X7E,0XEF,0X5E,0XEF,0X5E,0XEF,0X5D,

157230XE7,0X3C,0XEF,0X3C,0XE7,0X3C,0XE7,0X1B,0XE7,0X1C,0XE7,0X1C,0XDE,0XFB,0XDE,0XFB,

157240XDE,0XFB,0XD6,0XDA,0XD6,0XDA,0XD6,0XDA,0XD6,0XBA,0XD6,0XBA,0XD6,0XBA,0XCE,0XB9,

157250XD6,0XD9,0XD6,0XD8,0XDE,0XF8,0XD6,0XB7,0XDE,0XD8,0XE6,0XD7,0XD6,0X55,0XCD,0XF3,

157260XCD,0XF3,0XCD,0XD2,0XCD,0XD2,0XCD,0XD1,0XCD,0XD1,0XC5,0XB0,0XC5,0X8F,0XBD,0X6F,

157270XB5,0X2E,0XB5,0X0E,0XA4,0X8E,0X94,0X2D,0X94,0X0E,0X9C,0X50,0X9C,0X50,0X8B,0XEF,

157280X8C,0X30,0X8C,0X51,0X94,0X71,0X94,0X71,0X94,0X91,0X9C,0XB0,0X9C,0XD0,0XA4,0XD0,

157290XA4,0XF1,0XAC,0XF2,0XAD,0X13,0XB5,0X34,0XB5,0X55,0XB5,0X95,0XB5,0X96,0XB5,0X75,

157300XAD,0X74,0XAD,0X74,0XAD,0X74,0XAD,0X95,0XB5,0X95,0XB5,0XB6,0XBD,0XD7,0XBD,0XD7,

157310XC5,0XF8,0XC6,0X18,0XCE,0X18,0XCE,0X39,0XD6,0X79,0XD6,0X79,0XD6,0X99,0XD6,0X9A,

157320XD6,0XBA,0XD6,0XBA,0XDE,0XDB,0XDE,0XFB,0XDE,0XFB,0XDE,0XFB,0XE7,0X1C,0XE7,0X1C,

157330XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,

157340XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,

157350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

157360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

157380XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

157390XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

157400XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

157410XF7,0XBE,0XF7,0X9E,0XF7,0X9F,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9D,0XF7,0X9D,

157420XEF,0X7C,0XEF,0X5C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5C,0XE7,0X3C,0XEF,0X5C,0XE7,0X5C,

157430XE7,0X5C,0XE7,0X3C,0XE7,0X3B,0XEF,0X5C,0XEF,0X9D,0XEF,0X9D,0XF7,0XBD,0XEF,0XBD,

157440XF7,0X9D,0XF7,0X9D,0XEF,0X7C,0XEF,0X3B,0XEF,0X1A,0XF7,0X5B,0XF7,0X5A,0XF7,0X3A,

157450XEF,0X19,0XEE,0XF9,0XE6,0XF8,0XE6,0XD7,0XE6,0XD7,0XE6,0XD8,0XE6,0XD8,0XE6,0XD8,

157460XE6,0XD9,0XE6,0XB9,0XE6,0XBA,0XDE,0X7A,0XE6,0X9B,0XEE,0XDC,0XDE,0X9A,0XDE,0XBA,

157470XDE,0XBB,0XD6,0X9A,0XD6,0X99,0XD6,0X98,0XD6,0X97,0XDE,0XB7,0XDE,0X98,0XDE,0X99,

157480XDE,0X9A,0XDE,0X9A,0XDE,0X99,0XDE,0XBA,0XDE,0XDA,0XDE,0XD9,0XDE,0XD9,0XD6,0X98,

157490XD6,0X78,0XCE,0X58,0XC6,0X38,0XCE,0X58,0XCE,0X79,0XCE,0X79,0XD6,0X7A,0XD6,0X7A,

157500XD6,0X9A,0XD6,0X9A,0XD6,0XBA,0XDE,0XDA,0XDE,0XDA,0XDE,0XDA,0XDE,0XFB,0XDE,0XFB,

157510XE7,0X1C,0XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,

157520XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,

157530XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,

157540XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

157570XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,

157580XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

157590XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBF,

157600XF7,0XBF,0XF7,0XBF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBD,0XF7,0XBD,0XF7,0X9D,0XF7,0X9E,

157610XF7,0X9E,0XF7,0X7E,0XF7,0X7E,0XF7,0X7E,0XEF,0X5D,0XEF,0X5D,0XF7,0X7D,0XF7,0X9D,

157620XFF,0XBD,0XFF,0XFE,0XFF,0XFE,0XF7,0XDD,0XFF,0XDE,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

157630XFF,0XDE,0XFF,0XDE,0XFF,0XDD,0XFF,0XBC,0XF7,0X7C,0XF7,0X9C,0XFF,0XBD,0XFF,0XBD,

157640XFF,0XBC,0XFF,0X9C,0XF7,0X9B,0XF7,0X9B,0XF7,0X9B,0XF7,0X7B,0XF7,0X5B,0XEF,0X5B,

157650XFF,0X9C,0XFF,0XBD,0XF7,0X7C,0XEF,0X3B,0XF7,0X7C,0XF7,0X5C,0XF7,0X5C,0XF7,0X5C,

157660XF7,0X7C,0XF7,0X7C,0XF7,0X7C,0XF7,0X7C,0XF7,0X5C,0XF7,0X7D,0XF7,0X7D,0XF7,0X7C,

157670XF7,0X7C,0XF7,0X7B,0XF7,0X7B,0XF7,0X7C,0XFF,0X9D,0XF7,0X7C,0XEF,0X5C,0XE7,0X3C,

157680XDE,0XFB,0XDE,0XDB,0XDE,0XFB,0XE7,0X1C,0XE6,0XFC,0XE6,0XFC,0XE7,0X1C,0XE7,0X1C,

157690XE7,0X1C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XEF,0X5D,

157700XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,

157710XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,

157720XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

157730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

157760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

157780XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XBF,0XFF,0XDF,0XFF,0XDF,0XF7,0XDF,0XF7,0XDF,

157790XF7,0XDF,0XFF,0XDE,0XF7,0XDE,0XFF,0XDD,0XFF,0XDE,0XFF,0XDF,0XFF,0XBF,0XF7,0X9F,

157800XF7,0X9F,0XFF,0XBF,0XFF,0XBF,0XFF,0XBF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFE,0XFF,0XFE,

157810XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XF7,0XBF,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,

157820XFF,0XFF,0XFF,0XDE,0XFF,0XFE,0XFF,0XDE,0XFF,0XDE,0XFF,0XDE,0XFF,0XFE,0XFF,0XFE,

157830XFF,0XFE,0XFF,0XFE,0XFF,0XFD,0XFF,0XFE,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,0XFF,0XDD,

157840XFF,0XDC,0XFF,0XFD,0XFF,0XBD,0XFF,0XDE,0XFF,0XDE,0XFF,0XBD,0XFF,0XBD,0XFF,0XBD,

157850XFF,0XBE,0XFF,0XDE,0XFF,0XBE,0XFF,0XDE,0XFF,0XBE,0XFF,0XDE,0XFF,0XDD,0XFF,0XDD,

157860XFF,0XBD,0XFF,0XDD,0XFF,0XBE,0XFF,0XBE,0XFF,0XDE,0XFF,0XBE,0XEF,0X5D,0XE7,0X3C,

157870XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X5D,0XEF,0X7D,0XEF,0X5D,0XEF,0X7D,

157880XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

157890XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,

157900XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

157910XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XF7,0XBE,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

157920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

157980XFF,0XFE,0XFF,0XFE,0XFF,0XFE,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

157990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158040XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0X9E,0XEF,0X7D,

158060XEF,0X7D,0XEF,0X7D,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0X9E,

158070XF7,0X9E,0XF7,0X9E,0XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

158080XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

158090XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

158100XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

158180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XF7,0X9E,0XF7,0X9E,

158250XF7,0X9E,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

158260XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,

158270XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

158280XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,

158290XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XF7,0XBE,0XF7,0XBE,0XFF,0XDF,

158440XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

158450XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,

158460XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,

158480XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158620XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,

158630XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158660XFF,0XFF,0XFF,0XFF,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XF7,0XBE,0XFF,0XFF,0XFF,0XFF,

158670XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158810XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158820XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158830XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158840XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158850XF7,0XBE,0XF7,0XBE,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158860XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158870XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158880XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158890XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158900XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158910XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158920XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158930XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158940XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158950XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158960XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158970XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158980XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

158990XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159000XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159010XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159020XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159030XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,

159040XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159050XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159060XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159070XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159080XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159090XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159100XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159110XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159120XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159130XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159140XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159150XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159160XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159170XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159180XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159190XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159200XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159210XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159220XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XDF,0XFF,0XFF,0XFF,0XDF,

159230XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159240XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159250XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159260XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159270XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159280XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159290XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159300XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159310XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159320XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159330XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159340XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159350XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159360XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159370XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159380XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159390XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159400XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159410XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,

159420XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159430XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159440XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159450XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159460XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159470XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159480XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159490XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159500XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159510XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159520XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159530XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159540XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159550XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159560XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159570XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159580XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159590XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159600XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159610XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159620XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159630XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159640XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159650XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159660XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,

159670XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159680XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159690XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159700XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159710XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159720XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159730XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159740XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159750XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159760XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159770XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159780XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159790XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,

159800XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,};

15981

15982#ifdef __cplusplus

15983}

15984#endif

15985

15986#endif

15987

15988

15989

15990

gimage_9

const unsigned char gimage_9[51000]

Definition: picture.h:9602

gimage_5

const unsigned char gimage_5[51000]

Definition: picture.h:6412

gimage_8

const unsigned char gimage_8[51000]

Definition: picture.h:3222

gimage_3

const unsigned char gimage_3[51000]

Definition: picture.h:31

gimage_0

const unsigned char gimage_0[51000]

Definition: picture.h:12792

Generated by 1.9.2


AT32F403 Firmwary Library: printer_class.c Source File

  • middlewares
  • usbd_class
  • printer
printer_class.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "printer_class.h"
26#include "printer_desc.h"
27
41static usb_sts_type class_init_handler(void *udev);
42static usb_sts_type class_clear_handler(void *udev);
43static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup);
44static usb_sts_type class_ept0_tx_handler(void *udev);
45static usb_sts_type class_ept0_rx_handler(void *udev);
46static usb_sts_type class_in_handler(void *udev, uint8_t ept_num);
47static usb_sts_type class_out_handler(void *udev, uint8_t ept_num);
48static usb_sts_type class_sof_handler(void *udev);
49static usb_sts_type class_event_handler(void *udev, usbd_event_type event);
50
51ALIGNED_HEAD static uint8_t printer_device_id[PRINTER_DEVICE_ID_LEN] ALIGNED_TAIL=
52{
53 0x00, 0x16,
54 'M', 'F', 'G',':','A','r','t','e', 'r', 'y' ,' ',
55 'C','M', 'D', ':', 'E', 'S', 'C', 'P', 'O', 'S',' ',
56};
57
58/* static variable */
59 printer_type printer_struct;
60
61/* usb device class handler */
62 usbd_class_handler printer_class_handler =
63{
64 class_init_handler,
65 class_clear_handler,
66 class_setup_handler,
67 class_ept0_tx_handler,
68 class_ept0_rx_handler,
69 class_in_handler,
70 class_out_handler,
71 class_sof_handler,
72 class_event_handler,
73 &printer_struct
74};
75
81static usb_sts_type class_init_handler(void *udev)
82{
83 usb_sts_type status = USB_OK;
84 usbd_core_type *pudev = (usbd_core_type *)udev;
85 printer_type *pprter = (printer_type *)pudev->class_handler->pdata;
86
87 /* open in endpoint */
88 usbd_ept_open(pudev, USBD_PRINTER_BULK_IN_EPT, EPT_BULK_TYPE, USBD_PRINTER_IN_MAXPACKET_SIZE);
89
90 /* open out endpoint */
91 usbd_ept_open(pudev, USBD_PRINTER_BULK_OUT_EPT, EPT_BULK_TYPE, USBD_PRINTER_OUT_MAXPACKET_SIZE);
92
93 /* set out endpoint to receive status */
94 usbd_ept_recv(pudev, USBD_PRINTER_BULK_OUT_EPT, pprter->g_rx_buff, USBD_PRINTER_OUT_MAXPACKET_SIZE);
95
96 pprter->g_tx_completed = 1;
97 pprter->g_printer_port_status = 0x18;
98
99 return status;
100}
101
107static usb_sts_type class_clear_handler(void *udev)
108{
109 usb_sts_type status = USB_OK;
110 usbd_core_type *pudev = (usbd_core_type *)udev;
111
112 /* close in endpoint */
113 usbd_ept_close(pudev, USBD_PRINTER_BULK_IN_EPT);
114
115 /* close out endpoint */
116 usbd_ept_close(pudev, USBD_PRINTER_BULK_OUT_EPT);
117
118 return status;
119}
120
127static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
128{
129 usb_sts_type status = USB_OK;
130 usbd_core_type *pudev = (usbd_core_type *)udev;
131 printer_type *pprter = (printer_type *)pudev->class_handler->pdata;
132
133 switch(setup->bmRequestType & USB_REQ_TYPE_RESERVED)
134 {
135 /* class request */
136 case USB_REQ_TYPE_CLASS:
137 switch(setup->bRequest)
138 {
139 case PRINTER_REQ_GET_DEVICE_ID:
140 usbd_ctrl_send(pudev, printer_device_id, PRINTER_DEVICE_ID_LEN);
141 break;
142 case PRINTER_REQ_GET_PORT_STATUS:
143 usbd_ctrl_send(pudev, (uint8_t *)&pprter->g_printer_port_status, 1);
144 break;
145 case PRINTER_REQ_GET_SOFT_RESET:
146 usbd_ctrl_recv(pudev, pprter->g_printer_data, USBD_PRINTER_OUT_MAXPACKET_SIZE);
147 break;
148 default:
149 usbd_ctrl_unsupport(pudev);
150 break;
151 }
152 break;
153 /* standard request */
154 case USB_REQ_TYPE_STANDARD:
155 switch(setup->bRequest)
156 {
157 case USB_STD_REQ_GET_DESCRIPTOR:
158 usbd_ctrl_unsupport(pudev);
159 break;
160 case USB_STD_REQ_GET_INTERFACE:
161 usbd_ctrl_send(pudev, (uint8_t *)&pprter->alt_setting, 1);
162 break;
163 case USB_STD_REQ_SET_INTERFACE:
164 pprter->alt_setting = setup->wValue;
165 break;
166 case USB_STD_REQ_CLEAR_FEATURE:
167 break;
168 case USB_STD_REQ_SET_FEATURE:
169 break;
170 default:
171 usbd_ctrl_unsupport(pudev);
172 break;
173 }
174 break;
175 default:
176 usbd_ctrl_unsupport(pudev);
177 break;
178 }
179 return status;
180}
181
187static usb_sts_type class_ept0_tx_handler(void *udev)
188{
189 usb_sts_type status = USB_OK;
190
191 /* ...user code... */
192
193 return status;
194}
195
201static usb_sts_type class_ept0_rx_handler(void *udev)
202{
203 usb_sts_type status = USB_OK;
204
205 /* ...user code... */
206
207 return status;
208}
209
216static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
217{
218 usbd_core_type *pudev = (usbd_core_type *)udev;
219 printer_type *pprter = (printer_type *)pudev->class_handler->pdata;
220 usb_sts_type status = USB_OK;
221
222 /* ...user code...
223 trans next packet data
224 */
225 pprter->g_tx_completed = 1;
226
227 return status;
228}
229
236static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
237{
238 usb_sts_type status = USB_OK;
239 usbd_core_type *pudev = (usbd_core_type *)udev;
240 printer_type *pprter = (printer_type *)pudev->class_handler->pdata;
241 /* get endpoint receive data length */
242 pprter->g_rxlen = usbd_get_recv_len(pudev, ept_num);
243
244 /*set recv flag*/
245 pprter->g_rx_completed = 1;
246
247 return status;
248}
249
255static usb_sts_type class_sof_handler(void *udev)
256{
257 usb_sts_type status = USB_OK;
258
259 /* ...user code... */
260
261 return status;
262}
263
270static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
271{
272 usb_sts_type status = USB_OK;
273 switch(event)
274 {
275 case USBD_RESET_EVENT:
276
277 /* ...user code... */
278
279 break;
280 case USBD_SUSPEND_EVENT:
281
282 /* ...user code... */
283
284 break;
285 case USBD_WAKEUP_EVENT:
286 /* ...user code... */
287
288 break;
289
290 default:
291 break;
292 }
293 return status;
294}
295
302uint16_t usb_printer_get_rxdata(void *udev, uint8_t *recv_data)
303{
304 uint16_t i_index = 0;
305 usbd_core_type *pudev = (usbd_core_type *)udev;
306 printer_type *pprter = (printer_type *)pudev->class_handler->pdata;
307 uint16_t tmp_len = 0;
308
309 if(pprter->g_rx_completed == 0)
310 {
311 return 0;
312 }
313 pprter->g_rx_completed = 0;
314 tmp_len = pprter->g_rxlen;
315 for(i_index = 0; i_index < pprter->g_rxlen; i_index ++)
316 {
317 recv_data[i_index] = pprter->g_rx_buff[i_index];
318 }
319
320 usbd_ept_recv(pudev, USBD_PRINTER_BULK_OUT_EPT, pprter->g_rx_buff, USBD_PRINTER_OUT_MAXPACKET_SIZE);
321
322 return tmp_len;
323}
324
332 error_status usb_printer_send_data(void *udev, uint8_t *send_data, uint16_t len)
333{
334 error_status status = SUCCESS;
335 usbd_core_type *pudev = (usbd_core_type *)udev;
336 printer_type *pprter = (printer_type *)pudev->class_handler->pdata;
337 if(pprter->g_tx_completed)
338 {
339 pprter->g_tx_completed = 0;
340 usbd_ept_send(pudev, USBD_PRINTER_BULK_IN_EPT, send_data, len);
341 }
342 else
343 {
344 status = ERROR;
345 }
346 return status;
347}
348
349
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
EPT_BULK_TYPE
@ EPT_BULK_TYPE
Definition: at32f403_usb.h:203
USBD_PRINTER_OUT_MAXPACKET_SIZE
#define USBD_PRINTER_OUT_MAXPACKET_SIZE
Definition: printer_class.h:53
USBD_PRINTER_IN_MAXPACKET_SIZE
#define USBD_PRINTER_IN_MAXPACKET_SIZE
Definition: printer_class.h:52
PRINTER_DEVICE_ID_LEN
#define PRINTER_DEVICE_ID_LEN
Definition: printer_class.h:55
USBD_PRINTER_BULK_OUT_EPT
#define USBD_PRINTER_BULK_OUT_EPT
Definition: printer_class.h:49
USBD_PRINTER_BULK_IN_EPT
#define USBD_PRINTER_BULK_IN_EPT
Definition: printer_class.h:48
PRINTER_REQ_GET_SOFT_RESET
@ PRINTER_REQ_GET_SOFT_RESET
Definition: printer_class.h:61
PRINTER_REQ_GET_PORT_STATUS
@ PRINTER_REQ_GET_PORT_STATUS
Definition: printer_class.h:60
PRINTER_REQ_GET_DEVICE_ID
@ PRINTER_REQ_GET_DEVICE_ID
Definition: printer_class.h:59
class_sof_handler
static usb_sts_type class_sof_handler(void *udev)
usb device sof handler
Definition: printer_class.c:255
class_in_handler
static usb_sts_type class_in_handler(void *udev, uint8_t ept_num)
usb device transmision complete handler
Definition: printer_class.c:216
class_clear_handler
static usb_sts_type class_clear_handler(void *udev)
clear endpoint or other state
Definition: printer_class.c:107
class_setup_handler
static usb_sts_type class_setup_handler(void *udev, usb_setup_type *setup)
usb device class setup request handler
Definition: printer_class.c:127
usb_printer_get_rxdata
uint16_t usb_printer_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: printer_class.c:302
class_ept0_tx_handler
static usb_sts_type class_ept0_tx_handler(void *udev)
usb device endpoint 0 in status stage complete
Definition: printer_class.c:187
printer_class_handler
usbd_class_handler printer_class_handler
Definition: printer_class.c:62
class_ept0_rx_handler
static usb_sts_type class_ept0_rx_handler(void *udev)
usb device endpoint 0 out status stage complete
Definition: printer_class.c:201
class_event_handler
static usb_sts_type class_event_handler(void *udev, usbd_event_type event)
usb device event handler
Definition: printer_class.c:270
usb_printer_send_data
error_status usb_printer_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: printer_class.c:332
class_init_handler
static usb_sts_type class_init_handler(void *udev)
initialize usb custom hid endpoint
Definition: printer_class.c:81
class_out_handler
static usb_sts_type class_out_handler(void *udev, uint8_t ept_num)
usb device endpoint receive data
Definition: printer_class.c:236
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t printer_device_id[24] ALIGNED_TAIL
Definition: printer_class.c:51
printer_struct
printer_type printer_struct
Definition: printer_class.c:59
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
USB_STD_REQ_SET_INTERFACE
#define USB_STD_REQ_SET_INTERFACE
Definition: usb_std.h:84
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_STD_REQ_GET_INTERFACE
#define USB_STD_REQ_GET_INTERFACE
Definition: usb_std.h:83
USB_REQ_TYPE_CLASS
#define USB_REQ_TYPE_CLASS
Definition: usb_std.h:62
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
printer_class.h
usb printer class file
printer_desc.h
usb printer descriptor header file
printer_type
Definition: printer_class.h:66
printer_type::g_printer_data
uint8_t g_printer_data[0x40]
Definition: printer_class.h:70
printer_type::g_rxlen
uint32_t g_rxlen
Definition: printer_class.h:73
printer_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: printer_class.h:72
printer_type::g_printer_port_status
uint32_t g_printer_port_status
Definition: printer_class.h:68
printer_type::g_rx_buff
uint8_t g_rx_buff[0x40]
Definition: printer_class.h:69
printer_type::g_tx_completed
__IO uint8_t g_tx_completed
Definition: printer_class.h:71
printer_type::alt_setting
uint32_t alt_setting
Definition: printer_class.h:67
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: printer_class.h Source File

  • middlewares
  • usbd_class
  • printer
printer_class.h
Go to the documentation of this file.
1
25 /* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __PRINTER_CLASS_H
27#define __PRINTER_CLASS_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "usb_std.h"
34#include "usbd_core.h"
35
48#define USBD_PRINTER_BULK_IN_EPT 0x81
49#define USBD_PRINTER_BULK_OUT_EPT 0x01
50
51
52#define USBD_PRINTER_IN_MAXPACKET_SIZE 0x40
53#define USBD_PRINTER_OUT_MAXPACKET_SIZE 0x40
54
55#define PRINTER_DEVICE_ID_LEN 24
56
57typedef enum
58{
59 PRINTER_REQ_GET_DEVICE_ID = 0x00,
60 PRINTER_REQ_GET_PORT_STATUS = 0x01,
61 PRINTER_REQ_GET_SOFT_RESET = 0x02
62}printer_req_type;
63
64
65typedef struct
66{
67 uint32_t alt_setting;
68 uint32_t g_printer_port_status;
69 uint8_t g_rx_buff[USBD_PRINTER_OUT_MAXPACKET_SIZE];
70 uint8_t g_printer_data[USBD_PRINTER_OUT_MAXPACKET_SIZE];
71 __IO uint8_t g_tx_completed;
72 __IO uint8_t g_rx_completed;
73 uint32_t g_rxlen;
74}printer_type;
75
76extern usbd_class_handler printer_class_handler;
77uint16_t usb_printer_get_rxdata(void *udev, uint8_t *recv_data);
78 error_status usb_printer_send_data(void *udev, uint8_t *send_data, uint16_t len);
90#ifdef __cplusplus
91}
92#endif
93
94#endif
95
error_status
error_status
error status
Definition: at32f403.h:314
printer_req_type
printer_req_type
Definition: printer_class.h:58
USBD_PRINTER_OUT_MAXPACKET_SIZE
#define USBD_PRINTER_OUT_MAXPACKET_SIZE
Definition: printer_class.h:53
usb_printer_get_rxdata
uint16_t usb_printer_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: printer_class.c:302
printer_class_handler
usbd_class_handler printer_class_handler
Definition: printer_class.c:62
usb_printer_send_data
error_status usb_printer_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: printer_class.c:332
PRINTER_REQ_GET_SOFT_RESET
@ PRINTER_REQ_GET_SOFT_RESET
Definition: printer_class.h:61
PRINTER_REQ_GET_PORT_STATUS
@ PRINTER_REQ_GET_PORT_STATUS
Definition: printer_class.h:60
PRINTER_REQ_GET_DEVICE_ID
@ PRINTER_REQ_GET_DEVICE_ID
Definition: printer_class.h:59
printer_type
Definition: printer_class.h:66
printer_type::g_rxlen
uint32_t g_rxlen
Definition: printer_class.h:73
printer_type::g_rx_completed
__IO uint8_t g_rx_completed
Definition: printer_class.h:72
printer_type::g_printer_port_status
uint32_t g_printer_port_status
Definition: printer_class.h:68
printer_type::g_tx_completed
__IO uint8_t g_tx_completed
Definition: printer_class.h:71
printer_type::alt_setting
uint32_t alt_setting
Definition: printer_class.h:67
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usb_std.h
usb standard header file
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: printer_desc.c Source File

  • middlewares
  • usbd_class
  • printer
printer_desc.c
Go to the documentation of this file.
1
24#include "stdio.h"
25#include "usb_std.h"
26#include "usbd_sdr.h"
27#include "usbd_core.h"
28#include "printer_desc.h"
29
43static usbd_desc_t *get_device_descriptor(void);
44static usbd_desc_t *get_device_qualifier(void);
45static usbd_desc_t *get_device_configuration(void);
46static usbd_desc_t *get_device_other_speed(void);
47static usbd_desc_t *get_device_lang_id(void);
48static usbd_desc_t *get_device_manufacturer_string(void);
49static usbd_desc_t *get_device_product_string(void);
50static usbd_desc_t *get_device_serial_string(void);
51static usbd_desc_t *get_device_interface_string(void);
52static usbd_desc_t *get_device_config_string(void);
53
54static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf);
55static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len);
56static void get_serial_num(void);
57#if defined ( __ICCARM__ ) /* iar compiler */
58 #pragma data_alignment=4
59#endif
60ALIGNED_HEAD static uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL;
61
65 usbd_desc_handler printer_desc_handler =
66{
67 get_device_descriptor,
68 get_device_qualifier,
69 get_device_configuration,
70 get_device_other_speed,
71 get_device_lang_id,
72 get_device_manufacturer_string,
73 get_device_product_string,
74 get_device_serial_string,
75 get_device_interface_string,
76 get_device_config_string,
77};
78
82#if defined ( __ICCARM__ ) /* iar compiler */
83 #pragma data_alignment=4
84#endif
85ALIGNED_HEAD static uint8_t g_usbd_descriptor[USB_DEVICE_DESC_LEN] ALIGNED_TAIL =
86{
87 USB_DEVICE_DESC_LEN, /* bLength */
88 USB_DESCIPTOR_TYPE_DEVICE, /* bDescriptorType */
89 0x00, /* bcdUSB */
90 0x02,
91 0x00, /* bDeviceClass */
92 0x00, /* bDeviceSubClass */
93 0x00, /* bDeviceProtocol */
94 USB_MAX_EP0_SIZE, /* bMaxPacketSize */
95 LBYTE(USBD_PRINTER_VENDOR_ID), /* idVendor */
96 HBYTE(USBD_PRINTER_VENDOR_ID), /* idVendor */
97 LBYTE(USBD_PRINTER_PRODUCT_ID), /* idProduct */
98 HBYTE(USBD_PRINTER_PRODUCT_ID), /* idProduct */
99 0x00, /* bcdDevice rel. 2.00 */
100 0x02,
101 USB_MFC_STRING, /* Index of manufacturer string */
102 USB_PRODUCT_STRING, /* Index of product string */
103 USB_SERIAL_STRING, /* Index of serial number string */
104 1 /* bNumConfigurations */
105};
106
110#if defined ( __ICCARM__ ) /* iar compiler */
111 #pragma data_alignment=4
112#endif
113ALIGNED_HEAD static uint8_t g_usbd_configuration[USBD_PRINTER_CONFIG_DESC_SIZE] ALIGNED_TAIL =
114{
115 USB_DEVICE_CFG_DESC_LEN, /* bLength: configuration descriptor size */
116 USB_DESCIPTOR_TYPE_CONFIGURATION, /* bDescriptorType: configuration */
117 LBYTE(USBD_PRINTER_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
118 HBYTE(USBD_PRINTER_CONFIG_DESC_SIZE), /* wTotalLength: bytes returned */
119 0x01, /* bNumInterfaces: 1 interface */
120 0x01, /* bConfigurationValue: configuration value */
121 0x00, /* iConfiguration: index of string descriptor describing
122 the configuration */
123 0xC0, /* bmAttributes: self powered */
124 0x32, /* MaxPower 100 mA: this current is used for detecting vbus */
125
126 USB_DEVICE_IF_DESC_LEN, /* bLength: interface descriptor size */
127 USB_DESCIPTOR_TYPE_INTERFACE, /* bDescriptorType: interface descriptor type */
128 0x00, /* bInterfaceNumber: number of interface */
129 0x00, /* bAlternateSetting: alternate set */
130 0x02, /* bNumEndpoints: number of endpoints */
131 USB_CLASS_CODE_PRINTER, /* bInterfaceClass: printer class code */
132 0x01, /* bInterfaceSubClass: subclass code*/
133 PRINTER_PROTOCOL_BI_DIRECTIONAL, /* bInterfaceProtocol: printer interface type */
134 0x00, /* iInterface: index of string descriptor */
135
136 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
137 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
138 USBD_PRINTER_BULK_IN_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
139 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
140 LBYTE(USBD_PRINTER_IN_MAXPACKET_SIZE),
141 HBYTE(USBD_PRINTER_IN_MAXPACKET_SIZE), /* wMaxPacketSize: maximum packe size this endpoint */
142 0x00, /* bInterval: interval for polling endpoint for data transfers */
143
144 USB_DEVICE_EPT_LEN, /* bLength: size of endpoint descriptor in bytes */
145 USB_DESCIPTOR_TYPE_ENDPOINT, /* bDescriptorType: endpoint descriptor type */
146 USBD_PRINTER_BULK_OUT_EPT, /* bEndpointAddress: the address of endpoint on usb device described by this descriptor */
147 USB_EPT_DESC_BULK, /* bmAttributes: endpoint attributes */
148 LBYTE(USBD_PRINTER_OUT_MAXPACKET_SIZE),
149 HBYTE(USBD_PRINTER_OUT_MAXPACKET_SIZE),/* wMaxPacketSize: maximum packe size this endpoint */
150 0x00, /* bInterval: interval for polling endpoint for data transfers */
151};
152
156#if defined ( __ICCARM__ ) /* iar compiler */
157 #pragma data_alignment=4
158#endif
159ALIGNED_HEAD static uint8_t g_string_lang_id[USBD_PRINTER_SIZ_STRING_LANGID] ALIGNED_TAIL =
160{
161 USBD_PRINTER_SIZ_STRING_LANGID,
162 USB_DESCIPTOR_TYPE_STRING,
163 0x09,
164 0x04,
165};
166
170#if defined ( __ICCARM__ ) /* iar compiler */
171 #pragma data_alignment=4
172#endif
173ALIGNED_HEAD static uint8_t g_string_serial[USBD_PRINTER_SIZ_STRING_SERIAL] ALIGNED_TAIL =
174{
175 USBD_PRINTER_SIZ_STRING_SERIAL,
176 USB_DESCIPTOR_TYPE_STRING,
177};
178
179
180/* device descriptor */
181static usbd_desc_t device_descriptor =
182{
183 USB_DEVICE_DESC_LEN,
184 g_usbd_descriptor
185};
186
187/* config descriptor */
188static usbd_desc_t config_descriptor =
189{
190 USBD_PRINTER_CONFIG_DESC_SIZE,
191 g_usbd_configuration
192};
193
194/* langid descriptor */
195static usbd_desc_t langid_descriptor =
196{
197 USBD_PRINTER_SIZ_STRING_LANGID,
198 g_string_lang_id
199};
200
201/* serial descriptor */
202static usbd_desc_t serial_descriptor =
203{
204 USBD_PRINTER_SIZ_STRING_SERIAL,
205 g_string_serial
206};
207
208static usbd_desc_t vp_desc;
209
216static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
217{
218 uint16_t str_len = 0, id_pos = 2;
219 uint8_t *tmp_str = string;
220
221 while(*tmp_str != '\0')
222 {
223 str_len ++;
224 unicode_buf[id_pos ++] = *tmp_str ++;
225 unicode_buf[id_pos ++] = 0x00;
226 }
227
228 str_len = str_len * 2 + 2;
229 unicode_buf[0] = (uint8_t)str_len;
230 unicode_buf[1] = USB_DESCIPTOR_TYPE_STRING;
231
232 return str_len;
233}
234
242static void usbd_int_to_unicode (uint32_t value , uint8_t *pbuf , uint8_t len)
243{
244 uint8_t idx = 0;
245
246 for( idx = 0 ; idx < len ; idx ++)
247 {
248 if( ((value >> 28)) < 0xA )
249 {
250 pbuf[ 2 * idx] = (value >> 28) + '0';
251 }
252 else
253 {
254 pbuf[2 * idx] = (value >> 28) + 'A' - 10;
255 }
256
257 value = value << 4;
258
259 pbuf[2 * idx + 1] = 0;
260 }
261}
262
268static void get_serial_num(void)
269{
270 uint32_t serial0, serial1, serial2;
271
272 serial0 = *(uint32_t*)MCU_ID1;
273 serial1 = *(uint32_t*)MCU_ID2;
274 serial2 = *(uint32_t*)MCU_ID3;
275
276 serial0 += serial2;
277
278 if (serial0 != 0)
279 {
280 usbd_int_to_unicode (serial0, &g_string_serial[2] ,8);
281 usbd_int_to_unicode (serial1, &g_string_serial[18] ,4);
282 }
283}
284
290static usbd_desc_t *get_device_descriptor(void)
291{
292 return &device_descriptor;
293}
294
300static usbd_desc_t * get_device_qualifier(void)
301{
302 return NULL;
303}
304
310static usbd_desc_t *get_device_configuration(void)
311{
312 return &config_descriptor;
313}
314
320static usbd_desc_t *get_device_other_speed(void)
321{
322 return NULL;
323}
324
330static usbd_desc_t *get_device_lang_id(void)
331{
332 return &langid_descriptor;
333}
334
335
341static usbd_desc_t *get_device_manufacturer_string(void)
342{
343 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_PRINTER_DESC_MANUFACTURER_STRING, g_usbd_desc_buffer);
344 vp_desc.descriptor = g_usbd_desc_buffer;
345 return &vp_desc;
346}
347
353static usbd_desc_t *get_device_product_string(void)
354{
355 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_PRINTER_DESC_PRODUCT_STRING, g_usbd_desc_buffer);
356 vp_desc.descriptor = g_usbd_desc_buffer;
357 return &vp_desc;
358}
359
365static usbd_desc_t *get_device_serial_string(void)
366{
367 get_serial_num();
368 return &serial_descriptor;
369}
370
376static usbd_desc_t *get_device_interface_string(void)
377{
378 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_PRINTER_DESC_INTERFACE_STRING, g_usbd_desc_buffer);
379 vp_desc.descriptor = g_usbd_desc_buffer;
380 return &vp_desc;
381}
382
388static usbd_desc_t *get_device_config_string(void)
389{
390 vp_desc.length = usbd_unicode_convert((uint8_t *)USBD_PRINTER_DESC_CONFIGURATION_STRING, g_usbd_desc_buffer);
391 vp_desc.descriptor = g_usbd_desc_buffer;
392 return &vp_desc;
393}
394
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
MCU_ID1
#define MCU_ID1
Definition: audio_desc.h:213
MCU_ID2
#define MCU_ID2
Definition: audio_desc.h:214
MCU_ID3
#define MCU_ID3
Definition: audio_desc.h:215
USBD_PRINTER_OUT_MAXPACKET_SIZE
#define USBD_PRINTER_OUT_MAXPACKET_SIZE
Definition: printer_class.h:53
USBD_PRINTER_IN_MAXPACKET_SIZE
#define USBD_PRINTER_IN_MAXPACKET_SIZE
Definition: printer_class.h:52
USBD_PRINTER_BULK_OUT_EPT
#define USBD_PRINTER_BULK_OUT_EPT
Definition: printer_class.h:49
USBD_PRINTER_BULK_IN_EPT
#define USBD_PRINTER_BULK_IN_EPT
Definition: printer_class.h:48
USBD_PRINTER_DESC_PRODUCT_STRING
#define USBD_PRINTER_DESC_PRODUCT_STRING
Definition: printer_desc.h:58
USBD_PRINTER_CONFIG_DESC_SIZE
#define USBD_PRINTER_CONFIG_DESC_SIZE
Definition: printer_desc.h:53
USBD_PRINTER_DESC_CONFIGURATION_STRING
#define USBD_PRINTER_DESC_CONFIGURATION_STRING
Definition: printer_desc.h:59
PRINTER_PROTOCOL_BI_DIRECTIONAL
#define PRINTER_PROTOCOL_BI_DIRECTIONAL
Definition: printer_desc.h:63
USBD_PRINTER_DESC_INTERFACE_STRING
#define USBD_PRINTER_DESC_INTERFACE_STRING
Definition: printer_desc.h:60
USBD_PRINTER_DESC_MANUFACTURER_STRING
#define USBD_PRINTER_DESC_MANUFACTURER_STRING
Definition: printer_desc.h:57
USBD_PRINTER_PRODUCT_ID
#define USBD_PRINTER_PRODUCT_ID
Definition: printer_desc.h:51
USBD_PRINTER_SIZ_STRING_SERIAL
#define USBD_PRINTER_SIZ_STRING_SERIAL
Definition: printer_desc.h:55
USBD_PRINTER_SIZ_STRING_LANGID
#define USBD_PRINTER_SIZ_STRING_LANGID
Definition: printer_desc.h:54
USBD_PRINTER_VENDOR_ID
#define USBD_PRINTER_VENDOR_ID
Definition: printer_desc.h:50
serial_descriptor
static usbd_desc_t serial_descriptor
Definition: printer_desc.c:202
device_descriptor
static usbd_desc_t device_descriptor
Definition: printer_desc.c:181
get_device_configuration
static usbd_desc_t * get_device_configuration(void)
get config descriptor
Definition: printer_desc.c:310
langid_descriptor
static usbd_desc_t langid_descriptor
Definition: printer_desc.c:195
get_device_descriptor
static usbd_desc_t * get_device_descriptor(void)
get device descriptor
Definition: printer_desc.c:290
get_device_manufacturer_string
static usbd_desc_t * get_device_manufacturer_string(void)
get manufacturer descriptor
Definition: printer_desc.c:341
get_device_qualifier
static usbd_desc_t * get_device_qualifier(void)
get device qualifier
Definition: printer_desc.c:300
get_device_interface_string
static usbd_desc_t * get_device_interface_string(void)
get interface descriptor
Definition: printer_desc.c:376
vp_desc
static usbd_desc_t vp_desc
Definition: printer_desc.c:208
get_device_other_speed
static usbd_desc_t * get_device_other_speed(void)
get other speed descriptor
Definition: printer_desc.c:320
ALIGNED_TAIL
static ALIGNED_HEAD uint8_t g_usbd_desc_buffer[256] ALIGNED_TAIL
usb device standard descriptor
Definition: printer_desc.c:60
get_device_product_string
static usbd_desc_t * get_device_product_string(void)
get product descriptor
Definition: printer_desc.c:353
get_device_config_string
static usbd_desc_t * get_device_config_string(void)
get device config descriptor
Definition: printer_desc.c:388
usbd_unicode_convert
static uint16_t usbd_unicode_convert(uint8_t *string, uint8_t *unicode_buf)
standard usb unicode convert
Definition: printer_desc.c:216
printer_desc_handler
usbd_desc_handler printer_desc_handler
device descriptor handler structure
Definition: printer_desc.c:65
get_device_lang_id
static usbd_desc_t * get_device_lang_id(void)
get lang id descriptor
Definition: printer_desc.c:330
get_serial_num
static void get_serial_num(void)
usb get serial number
Definition: printer_desc.c:268
config_descriptor
static usbd_desc_t config_descriptor
Definition: printer_desc.c:188
get_device_serial_string
static usbd_desc_t * get_device_serial_string(void)
get serial descriptor
Definition: printer_desc.c:365
usbd_int_to_unicode
static void usbd_int_to_unicode(uint32_t value, uint8_t *pbuf, uint8_t len)
usb int convert to unicode
Definition: printer_desc.c:242
USB_CLASS_CODE_PRINTER
#define USB_CLASS_CODE_PRINTER
Definition: usb_std.h:162
HBYTE
#define HBYTE(x)
Definition: usb_std.h:264
USB_DEVICE_EPT_LEN
#define USB_DEVICE_EPT_LEN
Definition: usb_std.h:151
USB_MAX_EP0_SIZE
#define USB_MAX_EP0_SIZE
endpoint 0 max size
Definition: usb_std.h:240
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_DESCIPTOR_TYPE_ENDPOINT
#define USB_DESCIPTOR_TYPE_ENDPOINT
Definition: usb_std.h:94
USB_DEVICE_DESC_LEN
#define USB_DEVICE_DESC_LEN
Definition: usb_std.h:148
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_EPT_DESC_BULK
#define USB_EPT_DESC_BULK
Definition: usb_std.h:175
USB_DEVICE_IF_DESC_LEN
#define USB_DEVICE_IF_DESC_LEN
Definition: usb_std.h:150
USB_DEVICE_CFG_DESC_LEN
#define USB_DEVICE_CFG_DESC_LEN
Definition: usb_std.h:149
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_DESCIPTOR_TYPE_INTERFACE
#define USB_DESCIPTOR_TYPE_INTERFACE
Definition: usb_std.h:93
printer_desc.h
usb printer descriptor header file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usb_std.h
usb standard header file
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: printer_desc.h Source File

  • middlewares
  • usbd_class
  • printer
printer_desc.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __PRINTER_DESC_H
27#define __PRINTER_DESC_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "printer_class.h"
34#include "usbd_core.h"
35
48#define PRINTER_BCD_NUM 0x0110
49
50#define USBD_PRINTER_VENDOR_ID 0x2E3C
51#define USBD_PRINTER_PRODUCT_ID 0x57FF
52
53#define USBD_PRINTER_CONFIG_DESC_SIZE 32
54#define USBD_PRINTER_SIZ_STRING_LANGID 4
55#define USBD_PRINTER_SIZ_STRING_SERIAL 0x1A
56
57#define USBD_PRINTER_DESC_MANUFACTURER_STRING "Artery"
58#define USBD_PRINTER_DESC_PRODUCT_STRING "AT32 Printer"
59#define USBD_PRINTER_DESC_CONFIGURATION_STRING "Printer Config"
60#define USBD_PRINTER_DESC_INTERFACE_STRING "Printer Interface"
61
62#define PRINTER_PROTOCOL_UNIDIRECTIONAL 0x01
63#define PRINTER_PROTOCOL_BI_DIRECTIONAL 0x02
64#define PRINTER_PROTOCOL_1284_4 0x03
65#define PRINTER_PROTOCOL_VENDOR_SPECIFIC 0xFF
66
67
68#define MCU_ID1 (0x1FFFF7E8)
69#define MCU_ID2 (0x1FFFF7EC)
70#define MCU_ID3 (0x1FFFF7F0)
71
72
73extern usbd_desc_handler printer_desc_handler;
74
86#ifdef __cplusplus
87}
88#endif
89
90#endif
printer_desc_handler
usbd_desc_handler printer_desc_handler
device descriptor handler structure
Definition: printer_desc.c:65
printer_class.h
usb printer class file
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • combine_mode_ordinary_simult
  • inc
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • combine_mode_ordinary_simult
  • inc
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • combine_mode_ordinary_simult
  • inc
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:111


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • combine_mode_ordinary_simult
  • src
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • combine_mode_ordinary_simult
  • src
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern __IO uint32_t adc1_ordinary_valuetab[5][3];
30extern __IO uint32_t dma1_trans_complete_flag;
31
45void NMI_Handler(void)
46{
47}
48
54void HardFault_Handler(void)
55{
56 /* go to infinite loop when hard fault exception occurs */
57 while(1)
58 {
59 }
60}
61
67void MemManage_Handler(void)
68{
69 /* go to infinite loop when memory manage exception occurs */
70 while(1)
71 {
72 }
73}
74
80void BusFault_Handler(void)
81{
82 /* go to infinite loop when bus fault exception occurs */
83 while(1)
84 {
85 }
86}
87
93void UsageFault_Handler(void)
94{
95 /* go to infinite loop when usage fault exception occurs */
96 while(1)
97 {
98 }
99}
100
106void SVC_Handler(void)
107{
108}
109
115void DebugMon_Handler(void)
116{
117}
118
124void PendSV_Handler(void)
125{
126}
127
133void SysTick_Handler(void)
134{
135}
136
142void DMA1_Channel1_IRQHandler(void)
143{
144 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
145 {
146 dma_flag_clear(DMA1_FDT1_FLAG);
147 dma1_trans_complete_flag = 1;
148 }
149}
150
151
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
adc1_ordinary_valuetab
__IO uint32_t adc1_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:37
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
dma1_trans_complete_flag
__IO uint32_t dma1_trans_complete_flag
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:38
DMA1_Channel1_IRQHandler
void DMA1_Channel1_IRQHandler(void)
this function handles dma1_channel1 handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:142
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • combine_mode_ordinary_simult
  • src
project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
37__IO uint32_t adc1_ordinary_valuetab[5][3];
38__IO uint32_t dma1_trans_complete_flag = 0;
39
40static void gpio_config(void);
41static void dma_config(void);
42static void adc_config(void);
43
49static void gpio_config(void)
50{
51 gpio_init_type gpio_initstructure;
52 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
54
55 gpio_default_para_init(&gpio_initstructure);
56 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
57 gpio_initstructure.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6 | GPIO_PINS_7;
58 gpio_init(GPIOA, &gpio_initstructure);
59
60 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
61 gpio_initstructure.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
62 gpio_init(GPIOB, &gpio_initstructure);
63}
64
70static void dma_config(void)
71{
72 dma_init_type dma_init_struct;
73 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
74 nvic_irq_enable(DMA1_Channel1_IRQn, 0, 0);
75 dma_reset(DMA1_CHANNEL1);
76 dma_default_para_init(&dma_init_struct);
77 dma_init_struct.buffer_size = 15;
78 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
79 dma_init_struct.memory_base_addr = (uint32_t)adc1_ordinary_valuetab;
80 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_WORD;
81 dma_init_struct.memory_inc_enable = TRUE;
82 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
83 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_WORD;
84 dma_init_struct.peripheral_inc_enable = FALSE;
85 dma_init_struct.priority = DMA_PRIORITY_HIGH;
86 dma_init_struct.loop_mode_enable = FALSE;
87 dma_init(DMA1_CHANNEL1, &dma_init_struct);
88
89 dma_interrupt_enable(DMA1_CHANNEL1, DMA_FDT_INT, TRUE);
90 dma_channel_enable(DMA1_CHANNEL1, TRUE);
91}
92
98static void adc_config(void)
99{
100 adc_base_config_type adc_base_struct;
101 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
102 crm_periph_clock_enable(CRM_ADC2_PERIPH_CLOCK, TRUE);
103 crm_adc_clock_div_set(CRM_ADC_DIV_6);
104
105 /* select combine mode */
106 adc_combine_mode_select(ADC_ORDINARY_SMLT_ONLY_MODE);
107 adc_base_default_para_init(&adc_base_struct);
108 adc_base_struct.sequence_mode = TRUE;
109 adc_base_struct.repeat_mode = FALSE;
110 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
111 adc_base_struct.ordinary_channel_length = 3;
112 adc_base_config(ADC1, &adc_base_struct);
113 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_4, 1, ADC_SAMPLETIME_239_5);
114 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_5, 2, ADC_SAMPLETIME_239_5);
115 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_6, 3, ADC_SAMPLETIME_239_5);
116 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
117 adc_dma_mode_enable(ADC1, TRUE);
118
119 adc_base_config(ADC2, &adc_base_struct);
120 adc_ordinary_channel_set(ADC2, ADC_CHANNEL_7, 1, ADC_SAMPLETIME_239_5);
121 adc_ordinary_channel_set(ADC2, ADC_CHANNEL_8, 2, ADC_SAMPLETIME_239_5);
122 adc_ordinary_channel_set(ADC2, ADC_CHANNEL_9, 3, ADC_SAMPLETIME_239_5);
123 adc_ordinary_conversion_trigger_set(ADC2, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
124
125 adc_enable(ADC1, TRUE);
126 adc_enable(ADC2, TRUE);
127 adc_calibration_init(ADC1);
128 while(adc_calibration_init_status_get(ADC1));
129 adc_calibration_start(ADC1);
130 while(adc_calibration_status_get(ADC1));
131 adc_calibration_init(ADC2);
132 while(adc_calibration_init_status_get(ADC2));
133 adc_calibration_start(ADC2);
134 while(adc_calibration_status_get(ADC2));
135}
136
142int main(void)
143{
144 __IO uint32_t index = 0;
145 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
146 system_clock_config();
147 at32_board_init();
148 at32_led_off(LED2);
149 at32_led_off(LED3);
150 at32_led_off(LED4);
151 uart_print_init(115200);
152 gpio_config();
153 dma_config();
154 adc_config();
155 printf("combine_mode_ordinary_simult \r\n");
156 while(dma1_trans_complete_flag == 0)
157 {
158 delay_ms(100);
159 adc_ordinary_software_trigger_enable(ADC1, TRUE);
160 }
161 for(index = 0; index < 5; index++)
162 {
163 printf("adc1_ordinary_channel4[%d] = 0x%x\r\n",index, adc1_ordinary_valuetab[index][0] & 0xFFFF);
164 printf("adc1_ordinary_channel5[%d] = 0x%x\r\n",index, adc1_ordinary_valuetab[index][1] & 0xFFFF);
165 printf("adc1_ordinary_channel6[%d] = 0x%x\r\n",index, adc1_ordinary_valuetab[index][2] & 0xFFFF);
166 printf("adc2_ordinary_channel7[%d] = 0x%x\r\n",index, (adc1_ordinary_valuetab[index][0] >> 16) & 0xFFFF);
167 printf("adc2_ordinary_channel8[%d] = 0x%x\r\n",index, (adc1_ordinary_valuetab[index][1] >> 16) & 0xFFFF);
168 printf("adc2_ordinary_channel9[%d] = 0x%x\r\n",index, (adc1_ordinary_valuetab[index][2] >> 16) & 0xFFFF);
169 printf("\r\n");
170 }
171 at32_led_on(LED2);
172 while(1)
173 {
174 }
175}
176
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:70
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:98
adc1_ordinary_valuetab
__IO uint32_t adc1_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:37
dma1_trans_complete_flag
__IO uint32_t dma1_trans_complete_flag
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:142
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:49
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_9
@ ADC_CHANNEL_9
Definition: at32f403_adc.h:117
ADC_CHANNEL_8
@ ADC_CHANNEL_8
Definition: at32f403_adc.h:116
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_7
@ ADC_CHANNEL_7
Definition: at32f403_adc.h:115
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_ORDINARY_SMLT_ONLY_MODE
@ ADC_ORDINARY_SMLT_ONLY_MODE
Definition: at32f403_adc.h:88
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC1
#define ADC1
Definition: at32f403_adc.h:601
ADC2
#define ADC2
Definition: at32f403_adc.h:602
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_ADC2_PERIPH_CLOCK
@ CRM_ADC2_PERIPH_CLOCK
Definition: at32f403_crm.h:118
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • current_vref_value_check
  • inc
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • current_vref_value_check
  • inc
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • current_vref_value_check
  • inc
project/at_start_f403/examples/adc/current_vref_value_check/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • current_vref_value_check
  • src
project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • current_vref_value_check
  • src
project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
135
136
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • current_vref_value_check
  • src
project/at_start_f403/examples/adc/current_vref_value_check/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36__IO uint16_t adc1_ordinary_value = 0;
37
38static void dma_config(void);
39static void adc_config(void);
40
46static void dma_config(void)
47{
48 dma_init_type dma_init_struct;
49 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
50 dma_reset(DMA1_CHANNEL1);
51 dma_default_para_init(&dma_init_struct);
52 dma_init_struct.buffer_size = 1;
53 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
54 dma_init_struct.memory_base_addr = (uint32_t)&adc1_ordinary_value;
55 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
56 dma_init_struct.memory_inc_enable = FALSE;
57 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
58 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
59 dma_init_struct.peripheral_inc_enable = FALSE;
60 dma_init_struct.priority = DMA_PRIORITY_HIGH;
61 dma_init_struct.loop_mode_enable = TRUE;
62 dma_init(DMA1_CHANNEL1, &dma_init_struct);
63
64 dma_channel_enable(DMA1_CHANNEL1, TRUE);
65}
66
72static void adc_config(void)
73{
74 adc_base_config_type adc_base_struct;
75 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
76 crm_adc_clock_div_set(CRM_ADC_DIV_6);
77
78 /* select combine mode */
79 adc_combine_mode_select(ADC_INDEPENDENT_MODE);
80 adc_base_default_para_init(&adc_base_struct);
81 adc_base_struct.sequence_mode = FALSE;
82 adc_base_struct.repeat_mode = FALSE;
83 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
84 adc_base_struct.ordinary_channel_length = 1;
85 adc_base_config(ADC1, &adc_base_struct);
86 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_17, 1, ADC_SAMPLETIME_239_5);
87 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
88 adc_dma_mode_enable(ADC1, TRUE);
89 adc_tempersensor_vintrv_enable(TRUE);
90
91 adc_enable(ADC1, TRUE);
92 adc_calibration_init(ADC1);
93 while(adc_calibration_init_status_get(ADC1));
94 adc_calibration_start(ADC1);
95 while(adc_calibration_status_get(ADC1));
96}
97
103int main(void)
104{
105 __IO uint32_t index = 0;
106 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
107 system_clock_config();
108 at32_board_init();
109 at32_led_off(LED2);
110 at32_led_off(LED3);
111 at32_led_off(LED4);
112 uart_print_init(115200);
113 dma_config();
114 adc_config();
115 printf("adc1_vref_check \r\n");
116 while(1)
117 {
118 at32_led_on(LED2);
119 delay_sec(1);
120 adc_ordinary_software_trigger_enable(ADC1, TRUE);
121 while(dma_flag_get(DMA1_FDT1_FLAG) == RESET);
122 dma_flag_clear(DMA1_FDT1_FLAG);
123 printf("vref_value = %f V\r\n", ((double)1.2 * 4095) / adc1_ordinary_value);
124 }
125}
126
127
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/main.c:46
adc1_ordinary_value
__IO uint16_t adc1_ordinary_value
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/main.c:36
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/main.c:72
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/current_vref_value_check/src/main.c:103
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_tempersensor_vintrv_enable
void adc_tempersensor_vintrv_enable(confirm_state new_state)
enable or disable the temperature sensor and vintrv channel.
Definition: at32f403_adc.c:645
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_17
@ ADC_CHANNEL_17
Definition: at32f403_adc.h:125
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • exint_trigger_partitioned
  • inc
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • exint_trigger_partitioned
  • inc
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • exint_trigger_partitioned
  • inc
project/at_start_f403/examples/adc/exint_trigger_partitioned/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • exint_trigger_partitioned
  • src
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • exint_trigger_partitioned
  • src
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern __IO uint16_t adc1_preempt_valuetab[3][3];
30extern __IO uint16_t dma_trans_complete_flag;
31extern __IO uint16_t preempt_trigger_count;
32
46void NMI_Handler(void)
47{
48}
49
55void HardFault_Handler(void)
56{
57 /* go to infinite loop when hard fault exception occurs */
58 while(1)
59 {
60 }
61}
62
68void MemManage_Handler(void)
69{
70 /* go to infinite loop when memory manage exception occurs */
71 while(1)
72 {
73 }
74}
75
81void BusFault_Handler(void)
82{
83 /* go to infinite loop when bus fault exception occurs */
84 while(1)
85 {
86 }
87}
88
94void UsageFault_Handler(void)
95{
96 /* go to infinite loop when usage fault exception occurs */
97 while(1)
98 {
99 }
100}
101
107void SVC_Handler(void)
108{
109}
110
116void DebugMon_Handler(void)
117{
118}
119
125void PendSV_Handler(void)
126{
127}
128
134void SysTick_Handler(void)
135{
136}
137
143void DMA1_Channel1_IRQHandler(void)
144{
145 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
146 {
147 dma_flag_clear(DMA1_FDT1_FLAG);
148 dma_trans_complete_flag = 1;
149 }
150}
151
157void ADC1_2_IRQHandler(void)
158{
159 if(adc_flag_get(ADC1, ADC_PCCE_FLAG) != RESET)
160 {
161 adc_flag_clear(ADC1, ADC_PCCE_FLAG);
162 if(preempt_trigger_count < 3)
163 {
164 adc1_preempt_valuetab[preempt_trigger_count][0] = adc_preempt_conversion_data_get(ADC1, ADC_PREEMPT_CHANNEL_1);
165 adc1_preempt_valuetab[preempt_trigger_count][1] = adc_preempt_conversion_data_get(ADC1, ADC_PREEMPT_CHANNEL_2);
166 adc1_preempt_valuetab[preempt_trigger_count][2] = adc_preempt_conversion_data_get(ADC1, ADC_PREEMPT_CHANNEL_3);
167 preempt_trigger_count++;
168 }
169 }
170}
171
172
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
adc1_preempt_valuetab
__IO uint16_t adc1_preempt_valuetab[3][3]
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:38
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:39
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:94
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:55
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:68
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:107
ADC1_2_IRQHandler
void ADC1_2_IRQHandler(void)
this function handles adc1_2 handler.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:157
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:125
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:46
preempt_trigger_count
__IO uint16_t preempt_trigger_count
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:40
DMA1_Channel1_IRQHandler
void DMA1_Channel1_IRQHandler(void)
this function handles dma1_channel1 handler.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:143
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:81
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:134
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/at32f403_int.c:116
adc_preempt_conversion_data_get
uint16_t adc_preempt_conversion_data_get(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral.
Definition: at32f403_adc.c:750
adc_flag_clear
void adc_flag_clear(adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral.
Definition: at32f403_adc.c:857
adc_flag_get
flag_status adc_flag_get(adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral.
Definition: at32f403_adc.c:787
ADC_PREEMPT_CHANNEL_3
@ ADC_PREEMPT_CHANNEL_3
Definition: at32f403_adc.h:232
ADC_PREEMPT_CHANNEL_2
@ ADC_PREEMPT_CHANNEL_2
Definition: at32f403_adc.h:231
ADC_PREEMPT_CHANNEL_1
@ ADC_PREEMPT_CHANNEL_1
Definition: at32f403_adc.h:230
ADC_PCCE_FLAG
#define ADC_PCCE_FLAG
Definition: at32f403_adc.h:65
ADC1
#define ADC1
Definition: at32f403_adc.h:601
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • exint_trigger_partitioned
  • src
project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
37__IO uint16_t adc1_ordinary_valuetab[3][3] = {0};
38__IO uint16_t adc1_preempt_valuetab[3][3] = {0};
39__IO uint16_t dma_trans_complete_flag = 0;
40__IO uint16_t preempt_trigger_count = 0;
41
42static void gpio_config(void);
43static void exint_config(void);
44static void dma_config(void);
45static void adc_config(void);
46
52static void gpio_config(void)
53{
54 gpio_init_type gpio_initstructure;
55 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
56 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
57
58 gpio_default_para_init(&gpio_initstructure);
59 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
60 gpio_initstructure.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6 | GPIO_PINS_7;
61 gpio_init(GPIOA, &gpio_initstructure);
62
63 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
64 gpio_initstructure.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
65 gpio_init(GPIOB, &gpio_initstructure);
66}
67
73static void exint_config(void)
74{
75 gpio_init_type gpio_initstructure;
76 exint_init_type exint_init_struct;
77
78 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
79 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
80 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
81
82 gpio_default_para_init(&gpio_initstructure);
83 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
84 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
85 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
86 gpio_initstructure.gpio_pins = GPIO_PINS_11;
87 gpio_init(GPIOC, &gpio_initstructure);
88 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
89 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
90 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
91 gpio_initstructure.gpio_pins = GPIO_PINS_15;
92 gpio_init(GPIOA, &gpio_initstructure);
93
94 gpio_exint_line_config(GPIO_PORT_SOURCE_GPIOC, GPIO_PINS_SOURCE11);
95 gpio_exint_line_config(GPIO_PORT_SOURCE_GPIOA, GPIO_PINS_SOURCE15);
96
97 exint_default_para_init(&exint_init_struct);
98 exint_init_struct.line_enable = TRUE;
99 exint_init_struct.line_mode = EXINT_LINE_EVENT;
100 exint_init_struct.line_select = EXINT_LINE_11;
101 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
102 exint_init(&exint_init_struct);
103
104 exint_init_struct.line_select = EXINT_LINE_15;
105 exint_init(&exint_init_struct);
106}
107
113static void dma_config(void)
114{
115 dma_init_type dma_init_struct;
116 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
117 nvic_irq_enable(DMA1_Channel1_IRQn, 0, 0);
118 dma_reset(DMA1_CHANNEL1);
119 dma_default_para_init(&dma_init_struct);
120 dma_init_struct.buffer_size = 9;
121 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
122 dma_init_struct.memory_base_addr = (uint32_t)adc1_ordinary_valuetab;
123 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
124 dma_init_struct.memory_inc_enable = TRUE;
125 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
126 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
127 dma_init_struct.peripheral_inc_enable = FALSE;
128 dma_init_struct.priority = DMA_PRIORITY_HIGH;
129 dma_init_struct.loop_mode_enable = FALSE;
130 dma_init(DMA1_CHANNEL1, &dma_init_struct);
131
132 dma_interrupt_enable(DMA1_CHANNEL1, DMA_FDT_INT, TRUE);
133 dma_channel_enable(DMA1_CHANNEL1, TRUE);
134}
135
141static void adc_config(void)
142{
143 adc_base_config_type adc_base_struct;
144 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
145 crm_adc_clock_div_set(CRM_ADC_DIV_6);
146 nvic_irq_enable(ADC1_2_IRQn, 0, 0);
147
148 /* select combine mode */
149 adc_combine_mode_select(ADC_INDEPENDENT_MODE);
150 adc_base_default_para_init(&adc_base_struct);
151 adc_base_struct.sequence_mode = TRUE;
152 adc_base_struct.repeat_mode = FALSE;
153 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
154 adc_base_struct.ordinary_channel_length = 3;
155 adc_base_config(ADC1, &adc_base_struct);
156 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_4, 1, ADC_SAMPLETIME_239_5);
157 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_5, 2, ADC_SAMPLETIME_239_5);
158 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_6, 3, ADC_SAMPLETIME_239_5);
159 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT, TRUE);
160 adc_dma_mode_enable(ADC1, TRUE);
161 adc_ordinary_part_count_set(ADC1, 1);
162 adc_ordinary_part_mode_enable(ADC1, TRUE);
163
164 adc_preempt_channel_length_set(ADC1, 3);
165 adc_preempt_channel_set(ADC1, ADC_CHANNEL_7, 1, ADC_SAMPLETIME_239_5);
166 adc_preempt_channel_set(ADC1, ADC_CHANNEL_8, 2, ADC_SAMPLETIME_239_5);
167 adc_preempt_channel_set(ADC1, ADC_CHANNEL_9, 3, ADC_SAMPLETIME_239_5);
168 adc_preempt_conversion_trigger_set(ADC1, ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4, TRUE);
169 adc_interrupt_enable(ADC1, ADC_PCCE_INT, TRUE);
170
171 adc_enable(ADC1, TRUE);
172 adc_calibration_init(ADC1);
173 while(adc_calibration_init_status_get(ADC1));
174 adc_calibration_start(ADC1);
175 while(adc_calibration_status_get(ADC1));
176}
177
183int main(void)
184{
185 __IO uint32_t index = 0;
186 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
187 system_clock_config();
188 at32_board_init();
189 at32_led_off(LED2);
190 at32_led_off(LED3);
191 at32_led_off(LED4);
192 uart_print_init(115200);
193 gpio_config();
194 exint_config();
195 dma_config();
196 adc_config();
197 printf("exint_trigger_partitioned \r\n");
198 while(dma_trans_complete_flag == 0);
199 while(preempt_trigger_count != 3);
200 for(index = 0; index < 3; index++)
201 {
202 printf("adc1_ordinary_valuetab[%d][0] = 0x%x\r\n",index, adc1_ordinary_valuetab[index][0]);
203 printf("adc1_ordinary_valuetab[%d][1] = 0x%x\r\n",index, adc1_ordinary_valuetab[index][1]);
204 printf("adc1_ordinary_valuetab[%d][2] = 0x%x\r\n",index, adc1_ordinary_valuetab[index][2]);
205 printf("adc1_preempt_valuetab[%d][0] = 0x%x\r\n",index, adc1_preempt_valuetab[index][0]);
206 printf("adc1_preempt_valuetab[%d][1] = 0x%x\r\n",index, adc1_preempt_valuetab[index][1]);
207 printf("adc1_preempt_valuetab[%d][2] = 0x%x\r\n",index, adc1_preempt_valuetab[index][2]);
208 printf("\r\n");
209 }
210 at32_led_on(LED2);
211 while(1)
212 {
213 }
214}
215
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
adc1_preempt_valuetab
__IO uint16_t adc1_preempt_valuetab[3][3]
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:38
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:39
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:113
exint_config
static void exint_config(void)
exint configuration.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:73
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:141
adc1_ordinary_valuetab
__IO uint16_t adc1_ordinary_valuetab[3][3]
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:37
preempt_trigger_count
__IO uint16_t preempt_trigger_count
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:40
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:183
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:52
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_ordinary_part_count_set
void adc_ordinary_part_count_set(adc_type *adc_x, uint8_t adc_channel_count)
set partitioned mode channel count of the specified adc peripheral.
Definition: at32f403_adc.c:590
adc_interrupt_enable
void adc_interrupt_enable(adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts.
Definition: at32f403_adc.c:183
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_preempt_conversion_trigger_set
void adc_preempt_conversion_trigger_set(adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specif...
Definition: at32f403_adc.c:527
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_preempt_channel_set
void adc_preempt_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc ...
Definition: at32f403_adc.c:429
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_ordinary_part_mode_enable
void adc_ordinary_part_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the partitioned mode on ordinary channel of the specified adc peripheral.
Definition: at32f403_adc.c:605
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_preempt_channel_length_set
void adc_preempt_channel_length_set(adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral.
Definition: at32f403_adc.c:397
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_9
@ ADC_CHANNEL_9
Definition: at32f403_adc.h:117
ADC_CHANNEL_8
@ ADC_CHANNEL_8
Definition: at32f403_adc.h:116
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_7
@ ADC_CHANNEL_7
Definition: at32f403_adc.h:115
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4
@ ADC12_PREEMPT_TRIG_EXINT15_TMR8CH4
Definition: at32f403_adc.h:196
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT
@ ADC12_ORDINARY_TRIG_EXINT11_TMR8TRGOUT
Definition: at32f403_adc.h:155
ADC_PCCE_INT
#define ADC_PCCE_INT
Definition: at32f403_adc.h:52
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
ADC1_2_IRQn
@ ADC1_2_IRQn
Definition: at32f403.h:197
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_EVENT
@ EXINT_LINE_EVENT
Definition: at32f403_exint.h:85
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_LINE_15
#define EXINT_LINE_15
Definition: at32f403_exint.h:65
EXINT_LINE_11
#define EXINT_LINE_11
Definition: at32f403_exint.h:61
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PINS_SOURCE11
@ GPIO_PINS_SOURCE11
Definition: at32f403_gpio.h:193
GPIO_PINS_SOURCE15
@ GPIO_PINS_SOURCE15
Definition: at32f403_gpio.h:197
GPIO_PORT_SOURCE_GPIOA
@ GPIO_PORT_SOURCE_GPIOA
Definition: at32f403_gpio.h:205
GPIO_PORT_SOURCE_GPIOC
@ GPIO_PORT_SOURCE_GPIOC
Definition: at32f403_gpio.h:207
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • internal_temperature_sensor
  • inc
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • internal_temperature_sensor
  • inc
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • internal_temperature_sensor
  • inc
project/at_start_f403/examples/adc/internal_temperature_sensor/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • internal_temperature_sensor
  • src
project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • internal_temperature_sensor
  • src
project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
136
137
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:105
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:44
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/at32f403_int.c:114
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • internal_temperature_sensor
  • src
project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
37#define ADC_VREF (3.3)
38#define ADC_TEMP_BASE (1.26)
39#define ADC_TEMP_SLOPE (-0.00423)
40
41__IO uint16_t adc1_ordinary_value = 0;
42
43static void dma_config(void);
44static void adc_config(void);
45
51static void dma_config(void)
52{
53 dma_init_type dma_init_struct;
54 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
55 dma_reset(DMA1_CHANNEL1);
56 dma_default_para_init(&dma_init_struct);
57 dma_init_struct.buffer_size = 1;
58 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
59 dma_init_struct.memory_base_addr = (uint32_t)&adc1_ordinary_value;
60 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
61 dma_init_struct.memory_inc_enable = FALSE;
62 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
63 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
64 dma_init_struct.peripheral_inc_enable = FALSE;
65 dma_init_struct.priority = DMA_PRIORITY_HIGH;
66 dma_init_struct.loop_mode_enable = TRUE;
67 dma_init(DMA1_CHANNEL1, &dma_init_struct);
68
69 dma_channel_enable(DMA1_CHANNEL1, TRUE);
70}
71
77static void adc_config(void)
78{
79 adc_base_config_type adc_base_struct;
80 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
81 crm_adc_clock_div_set(CRM_ADC_DIV_6);
82
83 /* select combine mode */
84 adc_combine_mode_select(ADC_INDEPENDENT_MODE);
85 adc_base_default_para_init(&adc_base_struct);
86 adc_base_struct.sequence_mode = FALSE;
87 adc_base_struct.repeat_mode = TRUE;
88 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
89 adc_base_struct.ordinary_channel_length = 1;
90 adc_base_config(ADC1, &adc_base_struct);
91 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_16, 1, ADC_SAMPLETIME_239_5);
92 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
93 adc_dma_mode_enable(ADC1, TRUE);
94 adc_tempersensor_vintrv_enable(TRUE);
95
96 adc_enable(ADC1, TRUE);
97 adc_calibration_init(ADC1);
98 while(adc_calibration_init_status_get(ADC1));
99 adc_calibration_start(ADC1);
100 while(adc_calibration_status_get(ADC1));
101}
102
108int main(void)
109{
110 __IO uint32_t index = 0;
111 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
112 system_clock_config();
113 at32_board_init();
114 at32_led_off(LED2);
115 at32_led_off(LED3);
116 at32_led_off(LED4);
117 uart_print_init(115200);
118 dma_config();
119 adc_config();
120 printf("internal_temperature_sensor \r\n");
121 adc_ordinary_software_trigger_enable(ADC1, TRUE);
122 while(1)
123 {
124 at32_led_on(LED2);
125 delay_sec(1);
126 while(dma_flag_get(DMA1_FDT1_FLAG) == RESET);
127 dma_flag_clear(DMA1_FDT1_FLAG);
128 printf("internal_temperature = %f deg C\r\n",(ADC_TEMP_BASE - (double)adc1_ordinary_value * ADC_VREF / 4096) / ADC_TEMP_SLOPE + 25);
129 }
130}
131
132
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c:51
adc1_ordinary_value
__IO uint16_t adc1_ordinary_value
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c:41
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c:77
ADC_VREF
#define ADC_VREF
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c:108
ADC_TEMP_SLOPE
#define ADC_TEMP_SLOPE
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c:39
ADC_TEMP_BASE
#define ADC_TEMP_BASE
Definition: project/at_start_f403/examples/adc/internal_temperature_sensor/src/main.c:38
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_tempersensor_vintrv_enable
void adc_tempersensor_vintrv_enable(confirm_state new_state)
enable or disable the temperature sensor and vintrv channel.
Definition: at32f403_adc.c:645
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_16
@ ADC_CHANNEL_16
Definition: at32f403_adc.h:124
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • repeat_conversion_loop_transfer
  • inc
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • repeat_conversion_loop_transfer
  • inc
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • repeat_conversion_loop_transfer
  • inc
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • repeat_conversion_loop_transfer
  • src
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • repeat_conversion_loop_transfer
  • src
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern __IO uint16_t dma_trans_complete_flag;
30
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
141void DMA1_Channel1_IRQHandler(void)
142{
143 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
144 {
145 dma_flag_clear(DMA1_FDT1_FLAG);
146 dma_trans_complete_flag++;
147 }
148}
149
150
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:39
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:105
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:44
DMA1_Channel1_IRQHandler
void DMA1_Channel1_IRQHandler(void)
this function handles dma1_channel1 handler.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:141
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/at32f403_int.c:114
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • repeat_conversion_loop_transfer
  • src
project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36__IO uint16_t adc1_ordinary_valuetab[3] = {0};
37__IO uint16_t dma_trans_complete_flag = 0;
38
39static void gpio_config(void);
40static void dma_config(void);
41static void adc_config(void);
42
48static void gpio_config(void)
49{
50 gpio_init_type gpio_initstructure;
51 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
52
53 gpio_default_para_init(&gpio_initstructure);
54 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
55 gpio_initstructure.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6;
56 gpio_init(GPIOA, &gpio_initstructure);
57}
58
64static void dma_config(void)
65{
66 dma_init_type dma_init_struct;
67 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
68 nvic_irq_enable(DMA1_Channel1_IRQn, 0, 0);
69 dma_reset(DMA1_CHANNEL1);
70 dma_default_para_init(&dma_init_struct);
71 dma_init_struct.buffer_size = 3;
72 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
73 dma_init_struct.memory_base_addr = (uint32_t)adc1_ordinary_valuetab;
74 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
75 dma_init_struct.memory_inc_enable = TRUE;
76 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
77 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
78 dma_init_struct.peripheral_inc_enable = FALSE;
79 dma_init_struct.priority = DMA_PRIORITY_HIGH;
80 dma_init_struct.loop_mode_enable = TRUE;
81 dma_init(DMA1_CHANNEL1, &dma_init_struct);
82
83 dma_interrupt_enable(DMA1_CHANNEL1, DMA_FDT_INT, TRUE);
84 dma_channel_enable(DMA1_CHANNEL1, TRUE);
85}
86
92static void adc_config(void)
93{
94 adc_base_config_type adc_base_struct;
95 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
96 crm_adc_clock_div_set(CRM_ADC_DIV_6);
97
98 /* select combine mode */
99 adc_combine_mode_select(ADC_INDEPENDENT_MODE);
100 adc_base_default_para_init(&adc_base_struct);
101 adc_base_struct.sequence_mode = TRUE;
102 adc_base_struct.repeat_mode = TRUE;
103 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
104 adc_base_struct.ordinary_channel_length = 3;
105 adc_base_config(ADC1, &adc_base_struct);
106 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_4, 1, ADC_SAMPLETIME_239_5);
107 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_5, 2, ADC_SAMPLETIME_239_5);
108 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_6, 3, ADC_SAMPLETIME_239_5);
109 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
110 adc_dma_mode_enable(ADC1, TRUE);
111
112 adc_enable(ADC1, TRUE);
113 adc_calibration_init(ADC1);
114 while(adc_calibration_init_status_get(ADC1));
115 adc_calibration_start(ADC1);
116 while(adc_calibration_status_get(ADC1));
117}
118
124int main(void)
125{
126 __IO uint32_t index = 0;
127 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
128 system_clock_config();
129 at32_board_init();
130 at32_led_off(LED2);
131 at32_led_off(LED3);
132 at32_led_off(LED4);
133 uart_print_init(115200);
134 gpio_config();
135 dma_config();
136 adc_config();
137 printf("repeat_conversion_loop_transfer \r\n");
138 printf("please_debug_check_data_and_conversion_times \r\n");
139 adc_ordinary_software_trigger_enable(ADC1, TRUE);
140 at32_led_on(LED2);
141 while(1)
142 {
143 }
144}
145
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c:37
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c:64
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c:92
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c:124
adc1_ordinary_valuetab
__IO uint16_t adc1_ordinary_valuetab[3]
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c:36
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/adc/repeat_conversion_loop_transfer/src/main.c:48
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • software_trigger_repeat
  • inc
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • software_trigger_repeat
  • inc
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • software_trigger_repeat
  • inc
project/at_start_f403/examples/adc/software_trigger_repeat/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • software_trigger_repeat
  • src
project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • software_trigger_repeat
  • src
project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern __IO uint16_t dma_trans_complete_flag;
30
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
141void DMA1_Channel1_IRQHandler(void)
142{
143 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
144 {
145 dma_flag_clear(DMA1_FDT1_FLAG);
146 dma_trans_complete_flag++;
147 }
148}
149
150
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:39
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:105
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:44
DMA1_Channel1_IRQHandler
void DMA1_Channel1_IRQHandler(void)
this function handles dma1_channel1 handler.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:141
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/at32f403_int.c:114
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • software_trigger_repeat
  • src
project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36__IO uint16_t adc1_ordinary_valuetab[3] = {0};
37__IO uint16_t dma_trans_complete_flag = 0;
38
39static void gpio_config(void);
40static void dma_config(void);
41static void adc_config(void);
42
48static void gpio_config(void)
49{
50 gpio_init_type gpio_initstructure;
51 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
52
53 gpio_default_para_init(&gpio_initstructure);
54 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
55 gpio_initstructure.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6;
56 gpio_init(GPIOA, &gpio_initstructure);
57}
58
64static void dma_config(void)
65{
66 dma_init_type dma_init_struct;
67 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
68 nvic_irq_enable(DMA1_Channel1_IRQn, 0, 0);
69 dma_reset(DMA1_CHANNEL1);
70 dma_default_para_init(&dma_init_struct);
71 dma_init_struct.buffer_size = 3;
72 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
73 dma_init_struct.memory_base_addr = (uint32_t)adc1_ordinary_valuetab;
74 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
75 dma_init_struct.memory_inc_enable = TRUE;
76 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
77 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
78 dma_init_struct.peripheral_inc_enable = FALSE;
79 dma_init_struct.priority = DMA_PRIORITY_HIGH;
80 dma_init_struct.loop_mode_enable = TRUE;
81 dma_init(DMA1_CHANNEL1, &dma_init_struct);
82
83 dma_interrupt_enable(DMA1_CHANNEL1, DMA_FDT_INT, TRUE);
84 dma_channel_enable(DMA1_CHANNEL1, TRUE);
85}
86
92static void adc_config(void)
93{
94 adc_base_config_type adc_base_struct;
95 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
96 crm_adc_clock_div_set(CRM_ADC_DIV_6);
97
98 /* select combine mode */
99 adc_combine_mode_select(ADC_INDEPENDENT_MODE);
100 adc_base_default_para_init(&adc_base_struct);
101 adc_base_struct.sequence_mode = TRUE;
102 adc_base_struct.repeat_mode = TRUE;
103 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
104 adc_base_struct.ordinary_channel_length = 3;
105 adc_base_config(ADC1, &adc_base_struct);
106 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_4, 1, ADC_SAMPLETIME_239_5);
107 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_5, 2, ADC_SAMPLETIME_239_5);
108 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_6, 3, ADC_SAMPLETIME_239_5);
109 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
110 adc_dma_mode_enable(ADC1, TRUE);
111
112 adc_enable(ADC1, TRUE);
113 adc_calibration_init(ADC1);
114 while(adc_calibration_init_status_get(ADC1));
115 adc_calibration_start(ADC1);
116 while(adc_calibration_status_get(ADC1));
117}
118
124int main(void)
125{
126 __IO uint32_t index = 0;
127 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
128 system_clock_config();
129 at32_board_init();
130 at32_led_off(LED2);
131 at32_led_off(LED3);
132 at32_led_off(LED4);
133 uart_print_init(115200);
134 gpio_config();
135 dma_config();
136 adc_config();
137 printf("software_trigger_repeat \r\n");
138 printf("please_debug_check_data_and_conversion_times \r\n");
139 adc_ordinary_software_trigger_enable(ADC1, TRUE);
140 at32_led_on(LED2);
141 while(1)
142 {
143 }
144}
145
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c:37
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c:64
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c:92
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c:124
adc1_ordinary_valuetab
__IO uint16_t adc1_ordinary_valuetab[3]
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c:36
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/adc/software_trigger_repeat/src/main.c:48
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • tmr_trigger_automatic_preempted
  • inc
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • tmr_trigger_automatic_preempted
  • inc
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • tmr_trigger_automatic_preempted
  • inc
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • tmr_trigger_automatic_preempted
  • src
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • tmr_trigger_automatic_preempted
  • src
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern __IO uint16_t adc1_ordinary_valuetab[5][3];
30extern __IO uint16_t adc1_preempt_valuetab[5][3];
31extern __IO uint16_t dma_trans_complete_flag;
32extern __IO uint16_t preempt_conversion_count;
33
47void NMI_Handler(void)
48{
49}
50
56void HardFault_Handler(void)
57{
58 /* go to infinite loop when hard fault exception occurs */
59 while(1)
60 {
61 }
62}
63
69void MemManage_Handler(void)
70{
71 /* go to infinite loop when memory manage exception occurs */
72 while(1)
73 {
74 }
75}
76
82void BusFault_Handler(void)
83{
84 /* go to infinite loop when bus fault exception occurs */
85 while(1)
86 {
87 }
88}
89
95void UsageFault_Handler(void)
96{
97 /* go to infinite loop when usage fault exception occurs */
98 while(1)
99 {
100 }
101}
102
108void SVC_Handler(void)
109{
110}
111
117void DebugMon_Handler(void)
118{
119}
120
126void PendSV_Handler(void)
127{
128}
129
135void SysTick_Handler(void)
136{
137}
138
144void DMA1_Channel1_IRQHandler(void)
145{
146 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
147 {
148 dma_flag_clear(DMA1_FDT1_FLAG);
149 dma_trans_complete_flag = 1;
150 }
151}
152
158void ADC1_2_IRQHandler(void)
159{
160 if(adc_flag_get(ADC1, ADC_PCCE_FLAG) != RESET)
161 {
162 adc_flag_clear(ADC1, ADC_PCCE_FLAG);
163 if(preempt_conversion_count < 5)
164 {
165 adc1_preempt_valuetab[preempt_conversion_count][0] = adc_preempt_conversion_data_get(ADC1, ADC_PREEMPT_CHANNEL_1);
166 adc1_preempt_valuetab[preempt_conversion_count][1] = adc_preempt_conversion_data_get(ADC1, ADC_PREEMPT_CHANNEL_2);
167 adc1_preempt_valuetab[preempt_conversion_count][2] = adc_preempt_conversion_data_get(ADC1, ADC_PREEMPT_CHANNEL_3);
168 preempt_conversion_count++;
169 }
170 at32_led_toggle(LED3);
171 }
172}
173
174
175
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
adc1_ordinary_valuetab
__IO uint16_t adc1_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:37
adc1_preempt_valuetab
__IO uint16_t adc1_preempt_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:38
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/exint_trigger_partitioned/src/main.c:39
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:95
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:56
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:69
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:108
ADC1_2_IRQHandler
void ADC1_2_IRQHandler(void)
this function handles adc1_2 handler.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:158
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:126
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:47
DMA1_Channel1_IRQHandler
void DMA1_Channel1_IRQHandler(void)
this function handles dma1_channel1 handler.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:144
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:82
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:135
preempt_conversion_count
__IO uint16_t preempt_conversion_count
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:40
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/at32f403_int.c:117
adc_preempt_conversion_data_get
uint16_t adc_preempt_conversion_data_get(adc_type *adc_x, adc_preempt_channel_type adc_preempt_channel)
return the conversion data for selection preempt channel of the specified adc peripheral.
Definition: at32f403_adc.c:750
adc_flag_clear
void adc_flag_clear(adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral.
Definition: at32f403_adc.c:857
adc_flag_get
flag_status adc_flag_get(adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral.
Definition: at32f403_adc.c:787
ADC_PREEMPT_CHANNEL_3
@ ADC_PREEMPT_CHANNEL_3
Definition: at32f403_adc.h:232
ADC_PREEMPT_CHANNEL_2
@ ADC_PREEMPT_CHANNEL_2
Definition: at32f403_adc.h:231
ADC_PREEMPT_CHANNEL_1
@ ADC_PREEMPT_CHANNEL_1
Definition: at32f403_adc.h:230
ADC_PCCE_FLAG
#define ADC_PCCE_FLAG
Definition: at32f403_adc.h:65
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • tmr_trigger_automatic_preempted
  • src
project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
37__IO uint16_t adc1_ordinary_valuetab[5][3] = {0};
38__IO uint16_t adc1_preempt_valuetab[5][3] = {0};
39__IO uint16_t dma_trans_complete_flag = 0;
40__IO uint16_t preempt_conversion_count = 0;
41
42static void gpio_config(void);
43static void dma_config(void);
44static void tmr1_config(void);
45static void adc_config(void);
46
52static void gpio_config(void)
53{
54 gpio_init_type gpio_initstructure;
55 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
56 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
57
58 gpio_default_para_init(&gpio_initstructure);
59 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
60 gpio_initstructure.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6 | GPIO_PINS_7;
61 gpio_init(GPIOA, &gpio_initstructure);
62
63 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
64 gpio_initstructure.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
65 gpio_init(GPIOB, &gpio_initstructure);
66}
67
73static void dma_config(void)
74{
75 dma_init_type dma_init_struct;
76 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
77 nvic_irq_enable(DMA1_Channel1_IRQn, 0, 0);
78 dma_reset(DMA1_CHANNEL1);
79 dma_default_para_init(&dma_init_struct);
80 dma_init_struct.buffer_size = 15;
81 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
82 dma_init_struct.memory_base_addr = (uint32_t)adc1_ordinary_valuetab;
83 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
84 dma_init_struct.memory_inc_enable = TRUE;
85 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
86 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
87 dma_init_struct.peripheral_inc_enable = FALSE;
88 dma_init_struct.priority = DMA_PRIORITY_HIGH;
89 dma_init_struct.loop_mode_enable = FALSE;
90 dma_init(DMA1_CHANNEL1, &dma_init_struct);
91
92 dma_interrupt_enable(DMA1_CHANNEL1, DMA_FDT_INT, TRUE);
93 dma_channel_enable(DMA1_CHANNEL1, TRUE);
94}
95
101static void tmr1_config(void)
102{
103 gpio_init_type gpio_initstructure;
104 tmr_output_config_type tmr_oc_init_structure;
105 crm_clocks_freq_type crm_clocks_freq_struct = {0};
106 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
107
108 gpio_default_para_init(&gpio_initstructure);
109 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
110 gpio_initstructure.gpio_pins = GPIO_PINS_8;
111 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
112 gpio_initstructure.gpio_pull = GPIO_PULL_NONE;
113 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
114 gpio_init(GPIOA, &gpio_initstructure);
115
116 /* get system clock */
117 crm_clocks_freq_get(&crm_clocks_freq_struct);
118
119 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
120
121 /* (systemclock/(systemclock/10000))/1000 = 10Hz(100ms) */
122 tmr_base_init(TMR1, 999, (crm_clocks_freq_struct.sclk_freq/10000 - 1));
123 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
124 tmr_clock_source_div_set(TMR1, TMR_CLOCK_DIV1);
125
126 tmr_output_default_para_init(&tmr_oc_init_structure);
127 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
128 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
129 tmr_oc_init_structure.oc_output_state = TRUE;
130 tmr_oc_init_structure.oc_idle_state = FALSE;
131 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
132 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 500);
133}
134
140static void adc_config(void)
141{
142 adc_base_config_type adc_base_struct;
143 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
144 crm_adc_clock_div_set(CRM_ADC_DIV_6);
145 nvic_irq_enable(ADC1_2_IRQn, 0, 0);
146
147 /* select combine mode */
148 adc_combine_mode_select(ADC_INDEPENDENT_MODE);
149 adc_base_default_para_init(&adc_base_struct);
150 adc_base_struct.sequence_mode = TRUE;
151 adc_base_struct.repeat_mode = FALSE;
152 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
153 adc_base_struct.ordinary_channel_length = 3;
154 adc_base_config(ADC1, &adc_base_struct);
155 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_4, 1, ADC_SAMPLETIME_239_5);
156 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_5, 2, ADC_SAMPLETIME_239_5);
157 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_6, 3, ADC_SAMPLETIME_239_5);
158 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_TMR1CH1, TRUE);
159 adc_dma_mode_enable(ADC1, TRUE);
160
161 adc_preempt_channel_length_set(ADC1, 3);
162 adc_preempt_channel_set(ADC1, ADC_CHANNEL_7, 1, ADC_SAMPLETIME_239_5);
163 adc_preempt_channel_set(ADC1, ADC_CHANNEL_8, 2, ADC_SAMPLETIME_239_5);
164 adc_preempt_channel_set(ADC1, ADC_CHANNEL_9, 3, ADC_SAMPLETIME_239_5);
165 adc_preempt_conversion_trigger_set(ADC1, ADC12_PREEMPT_TRIG_SOFTWARE, TRUE);
166 adc_preempt_auto_mode_enable(ADC1, TRUE);
167 adc_interrupt_enable(ADC1, ADC_PCCE_INT, TRUE);
168
169 adc_enable(ADC1, TRUE);
170 adc_calibration_init(ADC1);
171 while(adc_calibration_init_status_get(ADC1));
172 adc_calibration_start(ADC1);
173 while(adc_calibration_status_get(ADC1));
174}
175
176
177
178
184int main(void)
185{
186 __IO uint32_t index = 0;
187 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
188 system_clock_config();
189 at32_board_init();
190 at32_led_off(LED2);
191 at32_led_off(LED3);
192 at32_led_off(LED4);
193 uart_print_init(115200);
194 gpio_config();
195 tmr1_config();
196 dma_config();
197 adc_config();
198 printf("tmr_trigger_automatic_preempted \r\n");
199 tmr_counter_enable(TMR1, TRUE);
200 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1, TRUE);
201 tmr_output_enable(TMR1, TRUE);
202 while(preempt_conversion_count < 5);
203 while(dma_trans_complete_flag == 0);
204 tmr_counter_enable(TMR1, FALSE);
205 for(index = 0; index < 5; index++)
206 {
207 printf("adc1_ordinary_valuetab[%d][0] = 0x%x\r\n", index, adc1_ordinary_valuetab[index][0]);
208 printf("adc1_ordinary_valuetab[%d][1] = 0x%x\r\n", index, adc1_ordinary_valuetab[index][1]);
209 printf("adc1_ordinary_valuetab[%d][2] = 0x%x\r\n", index, adc1_ordinary_valuetab[index][2]);
210 printf("adc1_preempted_valuetab[%d][0] = 0x%x\r\n", index, adc1_preempt_valuetab[index][0]);
211 printf("adc1_preempted_valuetab[%d][1] = 0x%x\r\n", index, adc1_preempt_valuetab[index][1]);
212 printf("adc1_preempted_valuetab[%d][2] = 0x%x\r\n", index, adc1_preempt_valuetab[index][2]);
213 printf("\r\n");
214 }
215 at32_led_on(LED2);
216 while(1)
217 {
218 }
219}
220
221
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_trans_complete_flag
__IO uint16_t dma_trans_complete_flag
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:39
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:73
adc1_preempt_valuetab
__IO uint16_t adc1_preempt_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:38
adc1_ordinary_valuetab
__IO uint16_t adc1_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:37
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:140
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:184
tmr1_config
static void tmr1_config(void)
tmr1 configuration.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:101
preempt_conversion_count
__IO uint16_t preempt_conversion_count
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:40
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/adc/tmr_trigger_automatic_preempted/src/main.c:52
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:36
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_preempt_auto_mode_enable
void adc_preempt_auto_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable automatic preempt group conversion of the specified adc peripheral.
Definition: at32f403_adc.c:633
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_interrupt_enable
void adc_interrupt_enable(adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts.
Definition: at32f403_adc.c:183
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_preempt_conversion_trigger_set
void adc_preempt_conversion_trigger_set(adc_type *adc_x, adc_preempt_trig_select_type adc_preempt_trig, confirm_state new_state)
enable or disable the preempt channel's external trigger and set external trigger event of the specif...
Definition: at32f403_adc.c:527
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_preempt_channel_set
void adc_preempt_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
configure preempt channel's corresponding rank in the sequencer and sample time of the specified adc ...
Definition: at32f403_adc.c:429
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_preempt_channel_length_set
void adc_preempt_channel_length_set(adc_type *adc_x, uint8_t adc_channel_lenght)
set preempt channel lenghth of the specified adc peripheral.
Definition: at32f403_adc.c:397
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_9
@ ADC_CHANNEL_9
Definition: at32f403_adc.h:117
ADC_CHANNEL_8
@ ADC_CHANNEL_8
Definition: at32f403_adc.h:116
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_7
@ ADC_CHANNEL_7
Definition: at32f403_adc.h:115
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC12_PREEMPT_TRIG_SOFTWARE
@ ADC12_PREEMPT_TRIG_SOFTWARE
Definition: at32f403_adc.h:197
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC12_ORDINARY_TRIG_TMR1CH1
@ ADC12_ORDINARY_TRIG_TMR1CH1
Definition: at32f403_adc.h:149
ADC_PCCE_INT
#define ADC_PCCE_INT
Definition: at32f403_adc.h:52
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
ADC1_2_IRQn
@ ADC1_2_IRQn
Definition: at32f403.h:197
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_enable
void tmr_channel_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable
Definition: at32f403_tmr.c:897
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • triple_adc_synchro_trigger
  • inc
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • triple_adc_synchro_trigger
  • inc
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • triple_adc_synchro_trigger
  • inc
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • triple_adc_synchro_trigger
  • src
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • triple_adc_synchro_trigger
  • src
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern __IO uint32_t adc1_ordinary_valuetab[5][3];
30extern __IO uint16_t adc3_ordinary_valuetab[5][3];
31extern __IO uint32_t dma1_trans_complete_flag;
32extern __IO uint32_t dma2_trans_complete_flag;
33
47void NMI_Handler(void)
48{
49}
50
56void HardFault_Handler(void)
57{
58 /* go to infinite loop when hard fault exception occurs */
59 while(1)
60 {
61 }
62}
63
69void MemManage_Handler(void)
70{
71 /* go to infinite loop when memory manage exception occurs */
72 while(1)
73 {
74 }
75}
76
82void BusFault_Handler(void)
83{
84 /* go to infinite loop when bus fault exception occurs */
85 while(1)
86 {
87 }
88}
89
95void UsageFault_Handler(void)
96{
97 /* go to infinite loop when usage fault exception occurs */
98 while(1)
99 {
100 }
101}
102
108void SVC_Handler(void)
109{
110}
111
117void DebugMon_Handler(void)
118{
119}
120
126void PendSV_Handler(void)
127{
128}
129
135void SysTick_Handler(void)
136{
137}
138
144void DMA1_Channel1_IRQHandler(void)
145{
146 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
147 {
148 dma_flag_clear(DMA1_FDT1_FLAG);
149 dma1_trans_complete_flag = 1;
150 }
151}
152
158void DMA2_Channel4_5_IRQHandler(void)
159{
160 if(dma_flag_get(DMA2_FDT5_FLAG) != RESET)
161 {
162 dma_flag_clear(DMA2_FDT5_FLAG);
163 dma2_trans_complete_flag = 1;
164 }
165}
166
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
adc1_ordinary_valuetab
__IO uint32_t adc1_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:37
dma1_trans_complete_flag
__IO uint32_t dma1_trans_complete_flag
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:38
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:95
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:56
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:69
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:108
DMA2_Channel4_5_IRQHandler
void DMA2_Channel4_5_IRQHandler(void)
this function handles dma2_channel4_5 handler.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:158
dma2_trans_complete_flag
__IO uint32_t dma2_trans_complete_flag
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:39
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:126
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:47
DMA1_Channel1_IRQHandler
void DMA1_Channel1_IRQHandler(void)
this function handles dma1_channel1 handler.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:144
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:82
adc3_ordinary_valuetab
__IO uint16_t adc3_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:37
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:135
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/at32f403_int.c:117
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
DMA2_FDT5_FLAG
#define DMA2_FDT5_FLAG
Definition: at32f403_dma.h:109
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • triple_adc_synchro_trigger
  • src
project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36__IO uint32_t adc1_ordinary_valuetab[5][3];
37__IO uint16_t adc3_ordinary_valuetab[5][3];
38__IO uint32_t dma1_trans_complete_flag = 0;
39__IO uint32_t dma2_trans_complete_flag = 0;
40
41static void gpio_config(void);
42static void dma_config(void);
43static void tmr1_config(void);
44static void adc_config(void);
45
51static void gpio_config(void)
52{
53 gpio_init_type gpio_initstructure;
54 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
55 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
56 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
57
58 gpio_default_para_init(&gpio_initstructure);
59 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
60 gpio_initstructure.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6 | GPIO_PINS_7;
61 gpio_init(GPIOA, &gpio_initstructure);
62
63 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
64 gpio_initstructure.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
65 gpio_init(GPIOB, &gpio_initstructure);
66
67 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
68 gpio_initstructure.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_2;
69 gpio_init(GPIOC, &gpio_initstructure);
70}
71
77static void dma_config(void)
78{
79 dma_init_type dma_init_struct;
80 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
81 crm_periph_clock_enable(CRM_DMA2_PERIPH_CLOCK, TRUE);
82 nvic_irq_enable(DMA1_Channel1_IRQn, 0, 0);
83 nvic_irq_enable(DMA2_Channel4_5_IRQn, 0, 0);
84 dma_reset(DMA1_CHANNEL1);
85 dma_reset(DMA2_CHANNEL5);
86 dma_default_para_init(&dma_init_struct);
87 dma_init_struct.buffer_size = 15;
88 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
89 dma_init_struct.memory_base_addr = (uint32_t)adc1_ordinary_valuetab;
90 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_WORD;
91 dma_init_struct.memory_inc_enable = TRUE;
92 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
93 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_WORD;
94 dma_init_struct.peripheral_inc_enable = FALSE;
95 dma_init_struct.priority = DMA_PRIORITY_HIGH;
96 dma_init_struct.loop_mode_enable = FALSE;
97 dma_init(DMA1_CHANNEL1, &dma_init_struct);
98
99 dma_init_struct.memory_base_addr = (uint32_t)adc3_ordinary_valuetab;
100 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
101 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC3->odt);
102 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
103 dma_init(DMA2_CHANNEL5, &dma_init_struct);
104
105 dma_interrupt_enable(DMA1_CHANNEL1, DMA_FDT_INT, TRUE);
106 dma_interrupt_enable(DMA2_CHANNEL5, DMA_FDT_INT, TRUE);
107 dma_channel_enable(DMA1_CHANNEL1, TRUE);
108 dma_channel_enable(DMA2_CHANNEL5, TRUE);
109}
110
116static void tmr1_config(void)
117{
118 crm_clocks_freq_type crm_clocks_freq_struct = {0};
119
120 /* get system clock */
121 crm_clocks_freq_get(&crm_clocks_freq_struct);
122
123 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
124
125 /* (systemclock/(systemclock/10000))/1000 = 10Hz(100ms) */
126 tmr_base_init(TMR1, 999, (crm_clocks_freq_struct.sclk_freq/10000 - 1));
127 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
128 tmr_clock_source_div_set(TMR1, TMR_CLOCK_DIV1);
129 tmr_primary_mode_select(TMR1, TMR_PRIMARY_SEL_OVERFLOW);
130}
131
137static void adc_config(void)
138{
139 adc_base_config_type adc_base_struct;
140 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
141 crm_periph_clock_enable(CRM_ADC2_PERIPH_CLOCK, TRUE);
142 crm_periph_clock_enable(CRM_ADC3_PERIPH_CLOCK, TRUE);
143 crm_adc_clock_div_set(CRM_ADC_DIV_6);
144
145 /* select combine mode */
146 adc_combine_mode_select(ADC_ORDINARY_SMLT_ONLY_MODE);
147 adc_base_default_para_init(&adc_base_struct);
148 adc_base_struct.sequence_mode = TRUE;
149 adc_base_struct.repeat_mode = FALSE;
150 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
151 adc_base_struct.ordinary_channel_length = 3;
152 adc_base_config(ADC1, &adc_base_struct);
153 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_4, 1, ADC_SAMPLETIME_239_5);
154 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_5, 2, ADC_SAMPLETIME_239_5);
155 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_6, 3, ADC_SAMPLETIME_239_5);
156 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_TMR1TRGOUT, TRUE);
157 adc_dma_mode_enable(ADC1, TRUE);
158
159 adc_base_config(ADC2, &adc_base_struct);
160 adc_ordinary_channel_set(ADC2, ADC_CHANNEL_7, 1, ADC_SAMPLETIME_239_5);
161 adc_ordinary_channel_set(ADC2, ADC_CHANNEL_8, 2, ADC_SAMPLETIME_239_5);
162 adc_ordinary_channel_set(ADC2, ADC_CHANNEL_9, 3, ADC_SAMPLETIME_239_5);
163 adc_ordinary_conversion_trigger_set(ADC2, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
164
165 adc_base_config(ADC3, &adc_base_struct);
166 adc_ordinary_channel_set(ADC3, ADC_CHANNEL_10, 1, ADC_SAMPLETIME_239_5);
167 adc_ordinary_channel_set(ADC3, ADC_CHANNEL_11, 2, ADC_SAMPLETIME_239_5);
168 adc_ordinary_channel_set(ADC3, ADC_CHANNEL_12, 3, ADC_SAMPLETIME_239_5);
169 adc_ordinary_conversion_trigger_set(ADC3, ADC3_ORDINARY_TRIG_TMR1TRGOUT, TRUE);
170 adc_dma_mode_enable(ADC3, TRUE);
171
172 adc_enable(ADC1, TRUE);
173 adc_enable(ADC2, TRUE);
174 adc_calibration_init(ADC1);
175 while(adc_calibration_init_status_get(ADC1));
176 adc_calibration_start(ADC1);
177 while(adc_calibration_status_get(ADC1));
178 adc_calibration_init(ADC2);
179 while(adc_calibration_init_status_get(ADC2));
180 adc_calibration_start(ADC2);
181 while(adc_calibration_status_get(ADC2));
182
183 adc_enable(ADC3, TRUE);
184 adc_calibration_init(ADC3);
185 while(adc_calibration_init_status_get(ADC3));
186 adc_calibration_start(ADC3);
187 while(adc_calibration_status_get(ADC3));
188}
189
195int main(void)
196{
197 __IO uint32_t index = 0;
198 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
199 system_clock_config();
200 at32_board_init();
201 at32_led_off(LED2);
202 at32_led_off(LED3);
203 at32_led_off(LED4);
204 uart_print_init(115200);
205 gpio_config();
206 tmr1_config();
207 dma_config();
208 adc_config();
209
210 printf("triple_adc_synchro_trigger \r\n");
211
212 tmr_counter_enable(TMR1, TRUE);
213 while(dma1_trans_complete_flag == 0);
214 while(dma2_trans_complete_flag == 0);
215 tmr_counter_enable(TMR1, FALSE);
216
217 for(index = 0; index < 5; index++)
218 {
219 printf("adc1_ordinary_valuetab[%d][0] = 0x%x\r\n", index, adc1_ordinary_valuetab[index][0]);
220 printf("adc1_ordinary_valuetab[%d][1] = 0x%x\r\n", index, adc1_ordinary_valuetab[index][1]);
221 printf("adc1_ordinary_valuetab[%d][2] = 0x%x\r\n", index, adc1_ordinary_valuetab[index][2]);
222 printf("adc3_ordinary_valuetab[%d][0] = 0x%x\r\n", index, adc3_ordinary_valuetab[index][0]);
223 printf("adc3_ordinary_valuetab[%d][1] = 0x%x\r\n", index, adc3_ordinary_valuetab[index][1]);
224 printf("adc3_ordinary_valuetab[%d][2] = 0x%x\r\n", index, adc3_ordinary_valuetab[index][2]);
225 printf("\r\n");
226 }
227
228 at32_led_on(LED2);
229
230 while(1)
231 {
232 }
233}
234
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:77
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:137
dma2_trans_complete_flag
__IO uint32_t dma2_trans_complete_flag
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:39
adc1_ordinary_valuetab
__IO uint32_t adc1_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:36
dma1_trans_complete_flag
__IO uint32_t dma1_trans_complete_flag
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:195
adc3_ordinary_valuetab
__IO uint16_t adc3_ordinary_valuetab[5][3]
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:37
tmr1_config
static void tmr1_config(void)
tmr1 configuration.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:116
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/adc/triple_adc_synchro_trigger/src/main.c:51
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_9
@ ADC_CHANNEL_9
Definition: at32f403_adc.h:117
ADC_CHANNEL_8
@ ADC_CHANNEL_8
Definition: at32f403_adc.h:116
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_12
@ ADC_CHANNEL_12
Definition: at32f403_adc.h:120
ADC_CHANNEL_10
@ ADC_CHANNEL_10
Definition: at32f403_adc.h:118
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_7
@ ADC_CHANNEL_7
Definition: at32f403_adc.h:115
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_CHANNEL_11
@ ADC_CHANNEL_11
Definition: at32f403_adc.h:119
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_ORDINARY_SMLT_ONLY_MODE
@ ADC_ORDINARY_SMLT_ONLY_MODE
Definition: at32f403_adc.h:88
ADC12_ORDINARY_TRIG_TMR1TRGOUT
@ ADC12_ORDINARY_TRIG_TMR1TRGOUT
Definition: at32f403_adc.h:162
ADC3_ORDINARY_TRIG_TMR1TRGOUT
@ ADC3_ORDINARY_TRIG_TMR1TRGOUT
Definition: at32f403_adc.h:179
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC1
#define ADC1
Definition: at32f403_adc.h:601
ADC2
#define ADC2
Definition: at32f403_adc.h:602
ADC3
#define ADC3
Definition: at32f403_adc.h:603
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_ADC3_PERIPH_CLOCK
@ CRM_ADC3_PERIPH_CLOCK
Definition: at32f403_crm.h:123
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_DMA2_PERIPH_CLOCK
@ CRM_DMA2_PERIPH_CLOCK
Definition: at32f403_crm.h:103
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
CRM_ADC2_PERIPH_CLOCK
@ CRM_ADC2_PERIPH_CLOCK
Definition: at32f403_crm.h:118
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
DMA2_Channel4_5_IRQn
@ DMA2_Channel4_5_IRQn
Definition: at32f403.h:238
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA2_CHANNEL5
#define DMA2_CHANNEL5
Definition: at32f403_dma.h:368
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • adc
  • voltage_monitoring
  • inc
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • adc
  • voltage_monitoring
  • inc
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • adc
  • voltage_monitoring
  • inc
project/at_start_f403/examples/adc/voltage_monitoring/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • adc
  • voltage_monitoring
  • src
project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • adc
  • voltage_monitoring
  • src
project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern __IO uint16_t adc1_ordinary_valuetab[3];
30extern __IO uint16_t vmor_flag_index;
31
46void NMI_Handler(void)
47{
48}
49
55void HardFault_Handler(void)
56{
57 /* go to infinite loop when hard fault exception occurs */
58 while(1)
59 {
60 }
61}
62
68void MemManage_Handler(void)
69{
70 /* go to infinite loop when memory manage exception occurs */
71 while(1)
72 {
73 }
74}
75
81void BusFault_Handler(void)
82{
83 /* go to infinite loop when bus fault exception occurs */
84 while(1)
85 {
86 }
87}
88
94void UsageFault_Handler(void)
95{
96 /* go to infinite loop when usage fault exception occurs */
97 while(1)
98 {
99 }
100}
101
107void SVC_Handler(void)
108{
109}
110
116void DebugMon_Handler(void)
117{
118}
119
125void PendSV_Handler(void)
126{
127}
128
134void SysTick_Handler(void)
135{
136}
137
143void ADC1_2_IRQHandler(void)
144{
145 if(adc_flag_get(ADC1, ADC_VMOR_FLAG) != RESET)
146 {
147 at32_led_toggle(LED3);
148 adc_flag_clear(ADC1, ADC_VMOR_FLAG);
149 vmor_flag_index = 1;
150 }
151}
152
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
adc1_ordinary_valuetab
__IO uint16_t adc1_ordinary_valuetab[3]
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:37
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:94
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:55
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:68
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:107
ADC1_2_IRQHandler
void ADC1_2_IRQHandler(void)
this function handles adc1_2 handler.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:143
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:125
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:46
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:81
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:134
vmor_flag_index
__IO uint16_t vmor_flag_index
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/main.c:37
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/at32f403_int.c:116
adc_flag_clear
void adc_flag_clear(adc_type *adc_x, uint32_t adc_flag)
clear flag of the specified adc peripheral.
Definition: at32f403_adc.c:857
adc_flag_get
flag_status adc_flag_get(adc_type *adc_x, uint8_t adc_flag)
get flag of the specified adc peripheral.
Definition: at32f403_adc.c:787
ADC_VMOR_FLAG
#define ADC_VMOR_FLAG
Definition: at32f403_adc.h:63
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • adc
  • voltage_monitoring
  • src
project/at_start_f403/examples/adc/voltage_monitoring/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36__IO uint16_t adc1_ordinary_valuetab[3] = {0};
37__IO uint16_t vmor_flag_index = 0;
38
39static void gpio_config(void);
40static void dma_config(void);
41static void adc_config(void);
42
48static void gpio_config(void)
49{
50 gpio_init_type gpio_initstructure;
51 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
52
53 gpio_default_para_init(&gpio_initstructure);
54 gpio_initstructure.gpio_mode = GPIO_MODE_ANALOG;
55 gpio_initstructure.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6;
56 gpio_init(GPIOA, &gpio_initstructure);
57}
58
64static void dma_config(void)
65{
66 dma_init_type dma_init_struct;
67 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
68 dma_reset(DMA1_CHANNEL1);
69 dma_default_para_init(&dma_init_struct);
70 dma_init_struct.buffer_size = 3;
71 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
72 dma_init_struct.memory_base_addr = (uint32_t)adc1_ordinary_valuetab;
73 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
74 dma_init_struct.memory_inc_enable = TRUE;
75 dma_init_struct.peripheral_base_addr = (uint32_t)&(ADC1->odt);
76 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
77 dma_init_struct.peripheral_inc_enable = FALSE;
78 dma_init_struct.priority = DMA_PRIORITY_HIGH;
79 dma_init_struct.loop_mode_enable = TRUE;
80 dma_init(DMA1_CHANNEL1, &dma_init_struct);
81
82 dma_channel_enable(DMA1_CHANNEL1, TRUE);
83}
84
90static void adc_config(void)
91{
92 adc_base_config_type adc_base_struct;
93 crm_periph_clock_enable(CRM_ADC1_PERIPH_CLOCK, TRUE);
94 crm_adc_clock_div_set(CRM_ADC_DIV_6);
95 nvic_irq_enable(ADC1_2_IRQn, 0, 0);
96
97 /* select combine mode */
98 adc_combine_mode_select(ADC_INDEPENDENT_MODE);
99 adc_base_default_para_init(&adc_base_struct);
100 adc_base_struct.sequence_mode = TRUE;
101 adc_base_struct.repeat_mode = FALSE;
102 adc_base_struct.data_align = ADC_RIGHT_ALIGNMENT;
103 adc_base_struct.ordinary_channel_length = 3;
104 adc_base_config(ADC1, &adc_base_struct);
105 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_4, 1, ADC_SAMPLETIME_239_5);
106 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_5, 2, ADC_SAMPLETIME_239_5);
107 adc_ordinary_channel_set(ADC1, ADC_CHANNEL_6, 3, ADC_SAMPLETIME_239_5);
108 adc_ordinary_conversion_trigger_set(ADC1, ADC12_ORDINARY_TRIG_SOFTWARE, TRUE);
109 adc_dma_mode_enable(ADC1, TRUE);
110 adc_voltage_monitor_enable(ADC1, ADC_VMONITOR_SINGLE_ORDINARY);
111 adc_voltage_monitor_threshold_value_set(ADC1, 0xBBB, 0xAAA);
112 adc_voltage_monitor_single_channel_select(ADC1, ADC_CHANNEL_5);
113 adc_interrupt_enable(ADC1, ADC_VMOR_INT, TRUE);
114
115 adc_enable(ADC1, TRUE);
116 adc_calibration_init(ADC1);
117 while(adc_calibration_init_status_get(ADC1));
118 adc_calibration_start(ADC1);
119 while(adc_calibration_status_get(ADC1));
120}
121
127int main(void)
128{
129 __IO uint32_t index = 0;
130 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
131 system_clock_config();
132 at32_board_init();
133 at32_led_off(LED2);
134 at32_led_off(LED3);
135 at32_led_off(LED4);
136 uart_print_init(115200);
137 gpio_config();
138 dma_config();
139 adc_config();
140 printf("voltage_monitoring \r\n");
141 while(1)
142 {
143 at32_led_toggle(LED2);
144 delay_sec(1);
145 if(vmor_flag_index == 1)
146 {
147 vmor_flag_index = 0;
148 printf("out of range:adc1_channel_5 value is = %x!\r\n", adc1_ordinary_valuetab[1]);
149 }
150 adc_ordinary_software_trigger_enable(ADC1, TRUE);
151 }
152}
153
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_config
static void dma_config(void)
dma configuration.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/main.c:64
adc_config
static void adc_config(void)
adc configuration.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/main.c:90
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/main.c:127
adc1_ordinary_valuetab
__IO uint16_t adc1_ordinary_valuetab[3]
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/main.c:36
vmor_flag_index
__IO uint16_t vmor_flag_index
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/main.c:37
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/adc/voltage_monitoring/src/main.c:48
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
adc_ordinary_software_trigger_enable
void adc_ordinary_software_trigger_enable(adc_type *adc_x, confirm_state new_state)
enable or disable ordinary software start conversion of the specified adc peripheral.
Definition: at32f403_adc.c:659
adc_voltage_monitor_enable
void adc_voltage_monitor_enable(adc_type *adc_x, adc_voltage_monitoring_type adc_voltage_monitoring)
enable or disable the voltage monitoring on single/all ordinary or preempt channels of the specified ...
Definition: at32f403_adc.c:273
adc_voltage_monitor_single_channel_select
void adc_voltage_monitor_single_channel_select(adc_type *adc_x, adc_channel_select_type adc_channel)
select the voltage monitoring's channel of the specified adc peripheral.
Definition: at32f403_adc.c:314
adc_base_config
void adc_base_config(adc_type *adc_x, adc_base_config_type *adc_base_struct)
initialize the adc peripheral according to the specified parameters.
Definition: at32f403_adc.c:146
adc_enable
void adc_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the specified adc peripheral.
Definition: at32f403_adc.c:78
adc_interrupt_enable
void adc_interrupt_enable(adc_type *adc_x, uint32_t adc_int, confirm_state new_state)
enable or disable the specified adc interrupts.
Definition: at32f403_adc.c:183
adc_base_default_para_init
void adc_base_default_para_init(adc_base_config_type *adc_base_struct)
adc base default para init.
Definition: at32f403_adc.c:120
adc_calibration_start
void adc_calibration_start(adc_type *adc_x)
start calibration process of the specified adc peripheral.
Definition: at32f403_adc.c:233
adc_calibration_status_get
flag_status adc_calibration_status_get(adc_type *adc_x)
get calibration status of the specified adc peripheral.
Definition: at32f403_adc.c:245
adc_voltage_monitor_threshold_value_set
void adc_voltage_monitor_threshold_value_set(adc_type *adc_x, uint16_t adc_high_threshold, uint16_t adc_low_threshold)
set voltage monitoring's high and low thresholds value of the specified adc peripheral.
Definition: at32f403_adc.c:294
adc_ordinary_conversion_trigger_set
void adc_ordinary_conversion_trigger_set(adc_type *adc_x, adc_ordinary_trig_select_type adc_ordinary_trig, confirm_state new_state)
enable or disable the ordinary channel's external trigger and set external trigger event of the speci...
Definition: at32f403_adc.c:490
adc_calibration_init
void adc_calibration_init(adc_type *adc_x)
initialize calibration register of the specified adc peripheral.
Definition: at32f403_adc.c:202
adc_calibration_init_status_get
flag_status adc_calibration_init_status_get(adc_type *adc_x)
get calibration register's initialize status of the specified adc peripheral.
Definition: at32f403_adc.c:214
adc_dma_mode_enable
void adc_dma_mode_enable(adc_type *adc_x, confirm_state new_state)
enable or disable the adc dma transfer.
Definition: at32f403_adc.c:164
adc_combine_mode_select
void adc_combine_mode_select(adc_combine_mode_type combine_mode)
select combine mode of the specified adc peripheral.
Definition: at32f403_adc.c:100
adc_ordinary_channel_set
void adc_ordinary_channel_set(adc_type *adc_x, adc_channel_select_type adc_channel, uint8_t adc_sequence, adc_sampletime_select_type adc_sampletime)
set ordinary channel's corresponding rank in the sequencer and sample time of the specified adc perip...
Definition: at32f403_adc.c:346
ADC_VMONITOR_SINGLE_ORDINARY
@ ADC_VMONITOR_SINGLE_ORDINARY
Definition: at32f403_adc.h:241
ADC_RIGHT_ALIGNMENT
@ ADC_RIGHT_ALIGNMENT
Definition: at32f403_adc.h:99
ADC_CHANNEL_4
@ ADC_CHANNEL_4
Definition: at32f403_adc.h:112
ADC_CHANNEL_6
@ ADC_CHANNEL_6
Definition: at32f403_adc.h:114
ADC_CHANNEL_5
@ ADC_CHANNEL_5
Definition: at32f403_adc.h:113
ADC_SAMPLETIME_239_5
@ ADC_SAMPLETIME_239_5
Definition: at32f403_adc.h:140
ADC_INDEPENDENT_MODE
@ ADC_INDEPENDENT_MODE
Definition: at32f403_adc.h:82
ADC12_ORDINARY_TRIG_SOFTWARE
@ ADC12_ORDINARY_TRIG_SOFTWARE
Definition: at32f403_adc.h:156
ADC_VMOR_INT
#define ADC_VMOR_INT
Definition: at32f403_adc.h:51
ADC1
#define ADC1
Definition: at32f403_adc.h:601
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_adc_clock_div_set
void crm_adc_clock_div_set(crm_adc_div_type div_value)
set crm adc division
Definition: at32f403_crm.c:525
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_ADC1_PERIPH_CLOCK
@ CRM_ADC1_PERIPH_CLOCK
Definition: at32f403_crm.h:117
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_ADC_DIV_6
@ CRM_ADC_DIV_6
Definition: at32f403_crm.h:370
ADC1_2_IRQn
@ ADC1_2_IRQn
Definition: at32f403.h:197
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
adc_base_config_type
adc base config type
Definition: at32f403_adc.h:254
adc_base_config_type::data_align
adc_data_align_type data_align
Definition: at32f403_adc.h:257
adc_base_config_type::repeat_mode
confirm_state repeat_mode
Definition: at32f403_adc.h:256
adc_base_config_type::sequence_mode
confirm_state sequence_mode
Definition: at32f403_adc.h:255
adc_base_config_type::ordinary_channel_length
uint8_t ordinary_channel_length
Definition: at32f403_adc.h:258
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • bpr
  • bpr_data
  • inc
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • bpr
  • bpr_data
  • inc
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • bpr
  • bpr_data
  • inc
project/at_start_f403/examples/bpr/bpr_data/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • bpr
  • bpr_data
  • src
project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • bpr
  • bpr_data
  • src
project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • bpr
  • bpr_data
  • src
project/at_start_f403/examples/bpr/bpr_data/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BPR_DR_NUMBER 42
37
38 bpr_data_type bpr_addr_tab[BPR_DR_NUMBER] =
39{
40 BPR_DATA1, BPR_DATA2, BPR_DATA3, BPR_DATA4, BPR_DATA5,
41 BPR_DATA6, BPR_DATA7, BPR_DATA8, BPR_DATA9, BPR_DATA10,
42 BPR_DATA11, BPR_DATA12, BPR_DATA13, BPR_DATA14, BPR_DATA15,
43 BPR_DATA16, BPR_DATA17, BPR_DATA18, BPR_DATA19, BPR_DATA20,
44 BPR_DATA21, BPR_DATA22, BPR_DATA23, BPR_DATA24, BPR_DATA25,
45 BPR_DATA26, BPR_DATA27, BPR_DATA28, BPR_DATA29, BPR_DATA30,
46 BPR_DATA31, BPR_DATA32, BPR_DATA33, BPR_DATA34, BPR_DATA35,
47 BPR_DATA36, BPR_DATA37, BPR_DATA38, BPR_DATA39, BPR_DATA40,
48 BPR_DATA41, BPR_DATA42
49};
50
51void bpr_reg_write(void);
52uint8_t bpr_reg_check(void);
53void uart_init(uint32_t baudrate);
54
60void bpr_reg_write(void)
61{
62 uint32_t index = 0;
63
64 for(index = 0; index < BPR_DR_NUMBER; index++)
65 {
66 bpr_data_write(bpr_addr_tab[index], 0x5A00 | bpr_addr_tab[index]);
67 }
68}
69
78uint8_t bpr_reg_check(void)
79{
80 uint32_t index = 0;
81
82 for(index = 0; index < BPR_DR_NUMBER; index++)
83 {
84 if(bpr_data_read(bpr_addr_tab[index]) != (0x5A00 | bpr_addr_tab[index]))
85 {
86 return FALSE;
87 }
88 }
89
90 return TRUE;
91}
92
98int main(void)
99{
100 system_clock_config();
101
102 uart_print_init(115200);
103
104 /* enable pwc and bpr clock */
105 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
106 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
107
108 /* enable write access to bpr domain */
109 pwc_battery_powered_domain_access(TRUE);
110
111 /* clear tamper pin event pending flag */
112 bpr_flag_clear(BPR_TAMPER_EVENT_FLAG);
113
114 /* check data from bpr dt register */
115 if(bpr_reg_check() == TRUE)
116 {
117 printf("bpr reg => none reset\r\n");
118 }
119 else
120 {
121 printf("bpr reg => reset\r\n");
122 }
123
124 /* reset bpr domain */
125 bpr_reset();
126
127 /* write data to bpr dt register */
128 bpr_reg_write();
129
130 /* check if the written data are correct */
131 if(bpr_reg_check() == TRUE)
132 {
133 printf("write bpr reg ok\r\n");
134 }
135 else
136 {
137 printf("write bpr reg fail\r\n");
138 }
139
140 while(1)
141 {
142 }
143}
144
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
bpr_addr_tab
bpr_data_type bpr_addr_tab[42]
Definition: project/at_start_f403/examples/bpr/bpr_data/src/main.c:38
BPR_DR_NUMBER
#define BPR_DR_NUMBER
Definition: project/at_start_f403/examples/bpr/bpr_data/src/main.c:36
bpr_reg_write
void bpr_reg_write(void)
write data to bpr dt register.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/main.c:60
main
int main(void)
main function.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/main.c:98
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
bpr_reg_check
uint8_t bpr_reg_check(void)
checks if the bpr dt register values are correct or not.
Definition: project/at_start_f403/examples/bpr/bpr_data/src/main.c:78
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
bpr_data_read
uint16_t bpr_data_read(bpr_data_type bpr_data)
read bpr bpr data
Definition: at32f403_bpr.c:134
bpr_flag_clear
void bpr_flag_clear(uint32_t flag)
clear bpr tamper flag
Definition: at32f403_bpr.c:101
bpr_data_write
void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value)
write bpr data
Definition: at32f403_bpr.c:151
bpr_data_type
bpr_data_type
battery powered register data type
Definition: at32f403_bpr.h:65
BPR_DATA26
@ BPR_DATA26
Definition: at32f403_bpr.h:91
BPR_DATA28
@ BPR_DATA28
Definition: at32f403_bpr.h:93
BPR_DATA31
@ BPR_DATA31
Definition: at32f403_bpr.h:96
BPR_DATA8
@ BPR_DATA8
Definition: at32f403_bpr.h:73
BPR_DATA25
@ BPR_DATA25
Definition: at32f403_bpr.h:90
BPR_DATA39
@ BPR_DATA39
Definition: at32f403_bpr.h:104
BPR_DATA7
@ BPR_DATA7
Definition: at32f403_bpr.h:72
BPR_DATA12
@ BPR_DATA12
Definition: at32f403_bpr.h:77
BPR_DATA29
@ BPR_DATA29
Definition: at32f403_bpr.h:94
BPR_DATA19
@ BPR_DATA19
Definition: at32f403_bpr.h:84
BPR_DATA1
@ BPR_DATA1
Definition: at32f403_bpr.h:66
BPR_DATA36
@ BPR_DATA36
Definition: at32f403_bpr.h:101
BPR_DATA9
@ BPR_DATA9
Definition: at32f403_bpr.h:74
BPR_DATA10
@ BPR_DATA10
Definition: at32f403_bpr.h:75
BPR_DATA27
@ BPR_DATA27
Definition: at32f403_bpr.h:92
BPR_DATA20
@ BPR_DATA20
Definition: at32f403_bpr.h:85
BPR_DATA38
@ BPR_DATA38
Definition: at32f403_bpr.h:103
BPR_DATA37
@ BPR_DATA37
Definition: at32f403_bpr.h:102
BPR_DATA41
@ BPR_DATA41
Definition: at32f403_bpr.h:106
BPR_DATA13
@ BPR_DATA13
Definition: at32f403_bpr.h:78
BPR_DATA4
@ BPR_DATA4
Definition: at32f403_bpr.h:69
BPR_DATA32
@ BPR_DATA32
Definition: at32f403_bpr.h:97
BPR_DATA16
@ BPR_DATA16
Definition: at32f403_bpr.h:81
BPR_DATA11
@ BPR_DATA11
Definition: at32f403_bpr.h:76
BPR_DATA24
@ BPR_DATA24
Definition: at32f403_bpr.h:89
BPR_DATA23
@ BPR_DATA23
Definition: at32f403_bpr.h:88
BPR_DATA5
@ BPR_DATA5
Definition: at32f403_bpr.h:70
BPR_DATA18
@ BPR_DATA18
Definition: at32f403_bpr.h:83
BPR_DATA17
@ BPR_DATA17
Definition: at32f403_bpr.h:82
BPR_DATA42
@ BPR_DATA42
Definition: at32f403_bpr.h:107
BPR_DATA21
@ BPR_DATA21
Definition: at32f403_bpr.h:86
BPR_DATA33
@ BPR_DATA33
Definition: at32f403_bpr.h:98
BPR_DATA40
@ BPR_DATA40
Definition: at32f403_bpr.h:105
BPR_DATA30
@ BPR_DATA30
Definition: at32f403_bpr.h:95
BPR_DATA2
@ BPR_DATA2
Definition: at32f403_bpr.h:67
BPR_DATA14
@ BPR_DATA14
Definition: at32f403_bpr.h:79
BPR_DATA15
@ BPR_DATA15
Definition: at32f403_bpr.h:80
BPR_DATA3
@ BPR_DATA3
Definition: at32f403_bpr.h:68
BPR_DATA22
@ BPR_DATA22
Definition: at32f403_bpr.h:87
BPR_DATA34
@ BPR_DATA34
Definition: at32f403_bpr.h:99
BPR_DATA35
@ BPR_DATA35
Definition: at32f403_bpr.h:100
BPR_DATA6
@ BPR_DATA6
Definition: at32f403_bpr.h:71
BPR_TAMPER_EVENT_FLAG
#define BPR_TAMPER_EVENT_FLAG
Definition: at32f403_bpr.h:51
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • bpr
  • tamper
  • inc
project/at_start_f403/examples/bpr/tamper/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • bpr
  • tamper
  • inc
project/at_start_f403/examples/bpr/tamper/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • bpr
  • tamper
  • inc
project/at_start_f403/examples/bpr/tamper/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • bpr
  • tamper
  • src
project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • bpr
  • tamper
  • src
project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern uint32_t bpr_reg_judge(void);
30
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
141void TAMPER_IRQHandler(void)
142{
143 if(bpr_flag_get(BPR_TAMPER_INTERRUPT_FLAG) != RESET)
144 {
145 /* check if bpr registers are cleared */
146 if(bpr_reg_judge() == 0)
147 {
148 /* ok, bpr registers are reset as expected */
149 at32_led_on(LED3);
150 }
151 else
152 {
153 /* bpr registers are not reset */
154 at32_led_off(LED3);
155 }
156
157 /* clear tamper pin interrupt pending bit */
158 bpr_flag_clear(BPR_TAMPER_INTERRUPT_FLAG);
159
160 /* clear tamper pin event(te) pending flag */
161 bpr_flag_clear(BPR_TAMPER_EVENT_FLAG);
162
163 /* disable tamper pin */
164 bpr_tamper_pin_enable(FALSE);
165
166 /* enable tamper pin */
167 bpr_tamper_pin_enable(TRUE);
168 }
169}
170
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:105
bpr_reg_judge
uint32_t bpr_reg_judge(void)
checks if the bpr dt registers are reset or not.
Definition: project/at_start_f403/examples/bpr/tamper/src/main.c:101
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:44
TAMPER_IRQHandler
void TAMPER_IRQHandler(void)
this function handles tamper interrupt request.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:141
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/bpr/tamper/src/at32f403_int.c:114
LED3
@ LED3
Definition: at32f403_board.h:62
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
bpr_tamper_pin_enable
void bpr_tamper_pin_enable(confirm_state new_state)
enable or disable bpr tamper pin
Definition: at32f403_bpr.c:192
bpr_flag_clear
void bpr_flag_clear(uint32_t flag)
clear bpr tamper flag
Definition: at32f403_bpr.c:101
bpr_flag_get
flag_status bpr_flag_get(uint32_t flag)
bpr event flag get, for tamper event flag
Definition: at32f403_bpr.c:61
BPR_TAMPER_EVENT_FLAG
#define BPR_TAMPER_EVENT_FLAG
Definition: at32f403_bpr.h:51
BPR_TAMPER_INTERRUPT_FLAG
#define BPR_TAMPER_INTERRUPT_FLAG
Definition: at32f403_bpr.h:50
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • bpr
  • tamper
  • src
project/at_start_f403/examples/bpr/tamper/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BPR_DR_NUMBER 42
37
38 bpr_data_type bpr_addr_tab[BPR_DR_NUMBER] =
39{
40 BPR_DATA1, BPR_DATA2, BPR_DATA3, BPR_DATA4, BPR_DATA5,
41 BPR_DATA6, BPR_DATA7, BPR_DATA8, BPR_DATA9, BPR_DATA10,
42 BPR_DATA11, BPR_DATA12, BPR_DATA13, BPR_DATA14, BPR_DATA15,
43 BPR_DATA16, BPR_DATA17, BPR_DATA18, BPR_DATA19, BPR_DATA20,
44 BPR_DATA21, BPR_DATA22, BPR_DATA23, BPR_DATA24, BPR_DATA25,
45 BPR_DATA26, BPR_DATA27, BPR_DATA28, BPR_DATA29, BPR_DATA30,
46 BPR_DATA31, BPR_DATA32, BPR_DATA33, BPR_DATA34, BPR_DATA35,
47 BPR_DATA36, BPR_DATA37, BPR_DATA38, BPR_DATA39, BPR_DATA40,
48 BPR_DATA41, BPR_DATA42
49};
50
51void bpr_reg_write(void);
52uint8_t bpr_reg_check(void);
53uint32_t bpr_reg_judge(void);
54
60void bpr_reg_write(void)
61{
62 uint32_t index = 0;
63
64 for(index = 0; index < BPR_DR_NUMBER; index++)
65 {
66 bpr_data_write(bpr_addr_tab[index], 0x5A00 | bpr_addr_tab[index]);
67 }
68}
69
78uint8_t bpr_reg_check(void)
79{
80 uint32_t index = 0;
81
82 for(index = 0; index < BPR_DR_NUMBER; index++)
83 {
84 if(bpr_data_read(bpr_addr_tab[index]) != (0x5A00 | bpr_addr_tab[index]))
85 {
86 return FALSE;
87 }
88 }
89
90 return TRUE;
91}
92
101uint32_t bpr_reg_judge(void)
102{
103 uint32_t index = 0;
104
105 for(index = 0; index < BPR_DR_NUMBER; index++)
106 {
107 if(bpr_data_read(bpr_addr_tab[index]) != 0x0000)
108 {
109 return (index + 1);
110 }
111 }
112
113 return 0;
114}
115
121int main(void)
122{
123 /* config nvic priority group */
124 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
125
126 system_clock_config();
127
128 at32_board_init();
129
130 /* nvic configuration */
131 nvic_irq_enable(TAMPER_IRQn, 0, 0);
132
133 /* enable pwc and bpr clock */
134 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
135 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
136
137 /* enable write access to bpr domain */
138 pwc_battery_powered_domain_access(TRUE);
139
140 /* disable tamper pin */
141 bpr_tamper_pin_enable(FALSE);
142
143 /* disable tamper interrupt */
144 bpr_interrupt_enable(FALSE);
145
146 /* tamper pin active on low level */
147 bpr_tamper_pin_active_level_set(BPR_TAMPER_PIN_ACTIVE_LOW);
148
149 /* clear tamper pin event pending flag */
150 bpr_flag_clear(BPR_TAMPER_EVENT_FLAG);
151
152 /* write data to bpr dt registers */
153 bpr_reg_write();
154
155 /* enable tamper interrupt */
156 bpr_interrupt_enable(TRUE);
157
158 /* enable tamper pin */
159 bpr_tamper_pin_enable(TRUE);
160
161 /* check if the written data are correct */
162 if(bpr_reg_check() == TRUE)
163 {
164 at32_led_on(LED2);
165 }
166 else
167 {
168 at32_led_off(LED2);
169 }
170
171 while(1)
172 {
173 }
174}
175
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
bpr_addr_tab
bpr_data_type bpr_addr_tab[42]
Definition: project/at_start_f403/examples/bpr/tamper/src/main.c:38
BPR_DR_NUMBER
#define BPR_DR_NUMBER
Definition: project/at_start_f403/examples/bpr/tamper/src/main.c:36
bpr_reg_judge
uint32_t bpr_reg_judge(void)
checks if the bpr dt registers are reset or not.
Definition: project/at_start_f403/examples/bpr/tamper/src/main.c:101
bpr_reg_write
void bpr_reg_write(void)
write data to bpr dt registers.
Definition: project/at_start_f403/examples/bpr/tamper/src/main.c:60
main
int main(void)
main function.
Definition: project/at_start_f403/examples/bpr/tamper/src/main.c:121
bpr_reg_check
uint8_t bpr_reg_check(void)
checks if the bpr dt registers values are correct or not.
Definition: project/at_start_f403/examples/bpr/tamper/src/main.c:78
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
bpr_tamper_pin_enable
void bpr_tamper_pin_enable(confirm_state new_state)
enable or disable bpr tamper pin
Definition: at32f403_bpr.c:192
bpr_interrupt_enable
void bpr_interrupt_enable(confirm_state new_state)
enable or disable bpr tamper interrupt
Definition: at32f403_bpr.c:118
bpr_tamper_pin_active_level_set
void bpr_tamper_pin_active_level_set(bpr_tamper_pin_active_level_type active_level)
set bpr tamper pin active level
Definition: at32f403_bpr.c:205
bpr_data_read
uint16_t bpr_data_read(bpr_data_type bpr_data)
read bpr bpr data
Definition: at32f403_bpr.c:134
bpr_flag_clear
void bpr_flag_clear(uint32_t flag)
clear bpr tamper flag
Definition: at32f403_bpr.c:101
bpr_data_write
void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value)
write bpr data
Definition: at32f403_bpr.c:151
bpr_data_type
bpr_data_type
battery powered register data type
Definition: at32f403_bpr.h:65
BPR_DATA26
@ BPR_DATA26
Definition: at32f403_bpr.h:91
BPR_DATA28
@ BPR_DATA28
Definition: at32f403_bpr.h:93
BPR_DATA31
@ BPR_DATA31
Definition: at32f403_bpr.h:96
BPR_DATA8
@ BPR_DATA8
Definition: at32f403_bpr.h:73
BPR_DATA25
@ BPR_DATA25
Definition: at32f403_bpr.h:90
BPR_DATA39
@ BPR_DATA39
Definition: at32f403_bpr.h:104
BPR_DATA7
@ BPR_DATA7
Definition: at32f403_bpr.h:72
BPR_DATA12
@ BPR_DATA12
Definition: at32f403_bpr.h:77
BPR_DATA29
@ BPR_DATA29
Definition: at32f403_bpr.h:94
BPR_DATA19
@ BPR_DATA19
Definition: at32f403_bpr.h:84
BPR_DATA1
@ BPR_DATA1
Definition: at32f403_bpr.h:66
BPR_DATA36
@ BPR_DATA36
Definition: at32f403_bpr.h:101
BPR_DATA9
@ BPR_DATA9
Definition: at32f403_bpr.h:74
BPR_DATA10
@ BPR_DATA10
Definition: at32f403_bpr.h:75
BPR_DATA27
@ BPR_DATA27
Definition: at32f403_bpr.h:92
BPR_DATA20
@ BPR_DATA20
Definition: at32f403_bpr.h:85
BPR_DATA38
@ BPR_DATA38
Definition: at32f403_bpr.h:103
BPR_DATA37
@ BPR_DATA37
Definition: at32f403_bpr.h:102
BPR_DATA41
@ BPR_DATA41
Definition: at32f403_bpr.h:106
BPR_DATA13
@ BPR_DATA13
Definition: at32f403_bpr.h:78
BPR_DATA4
@ BPR_DATA4
Definition: at32f403_bpr.h:69
BPR_DATA32
@ BPR_DATA32
Definition: at32f403_bpr.h:97
BPR_DATA16
@ BPR_DATA16
Definition: at32f403_bpr.h:81
BPR_DATA11
@ BPR_DATA11
Definition: at32f403_bpr.h:76
BPR_DATA24
@ BPR_DATA24
Definition: at32f403_bpr.h:89
BPR_DATA23
@ BPR_DATA23
Definition: at32f403_bpr.h:88
BPR_DATA5
@ BPR_DATA5
Definition: at32f403_bpr.h:70
BPR_DATA18
@ BPR_DATA18
Definition: at32f403_bpr.h:83
BPR_DATA17
@ BPR_DATA17
Definition: at32f403_bpr.h:82
BPR_DATA42
@ BPR_DATA42
Definition: at32f403_bpr.h:107
BPR_DATA21
@ BPR_DATA21
Definition: at32f403_bpr.h:86
BPR_DATA33
@ BPR_DATA33
Definition: at32f403_bpr.h:98
BPR_DATA40
@ BPR_DATA40
Definition: at32f403_bpr.h:105
BPR_DATA30
@ BPR_DATA30
Definition: at32f403_bpr.h:95
BPR_DATA2
@ BPR_DATA2
Definition: at32f403_bpr.h:67
BPR_DATA14
@ BPR_DATA14
Definition: at32f403_bpr.h:79
BPR_DATA15
@ BPR_DATA15
Definition: at32f403_bpr.h:80
BPR_DATA3
@ BPR_DATA3
Definition: at32f403_bpr.h:68
BPR_DATA22
@ BPR_DATA22
Definition: at32f403_bpr.h:87
BPR_DATA34
@ BPR_DATA34
Definition: at32f403_bpr.h:99
BPR_DATA35
@ BPR_DATA35
Definition: at32f403_bpr.h:100
BPR_DATA6
@ BPR_DATA6
Definition: at32f403_bpr.h:71
BPR_TAMPER_PIN_ACTIVE_LOW
@ BPR_TAMPER_PIN_ACTIVE_LOW
Definition: at32f403_bpr.h:128
BPR_TAMPER_EVENT_FLAG
#define BPR_TAMPER_EVENT_FLAG
Definition: at32f403_bpr.h:51
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
TAMPER_IRQn
@ TAMPER_IRQn
Definition: at32f403.h:180
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • can
  • communication_mode
  • inc
project/at_start_f403/examples/can/communication_mode/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • can
  • communication_mode
  • inc
project/at_start_f403/examples/can/communication_mode/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • can
  • communication_mode
  • inc
project/at_start_f403/examples/can/communication_mode/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • can
  • communication_mode
  • src
project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • can
  • communication_mode
  • src
project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/can/communication_mode/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • can
  • communication_mode
  • src
project/at_start_f403/examples/can/communication_mode/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41static void can_gpio_config(void)
42{
43 gpio_init_type gpio_init_struct;
44
45 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
46 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
47 gpio_pin_remap_config(CAN_MUX_10,TRUE);
48
49 gpio_default_para_init(&gpio_init_struct);
50 /* can tx pin */
51 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
52 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
53 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
54 gpio_init_struct.gpio_pins = GPIO_PINS_9;
55 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
56 gpio_init(GPIOB, &gpio_init_struct);
57 /* can rx pin */
58 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
59 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
60 gpio_init_struct.gpio_pins = GPIO_PINS_8;
61 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
62 gpio_init(GPIOB, &gpio_init_struct);
63}
64
70static void can_configuration(void)
71{
72 can_base_type can_base_struct;
73 can_baudrate_type can_baudrate_struct;
74 can_filter_init_type can_filter_init_struct;
75
76 crm_periph_clock_enable(CRM_CAN1_PERIPH_CLOCK, TRUE);
77 /* can base init */
78 can_default_para_init(&can_base_struct);
79 can_base_struct.mode_selection = CAN_MODE_COMMUNICATE;
80 can_base_struct.ttc_enable = FALSE;
81 can_base_struct.aebo_enable = TRUE;
82 can_base_struct.aed_enable = TRUE;
83 can_base_struct.prsf_enable = FALSE;
84 can_base_struct.mdrsel_selection = CAN_DISCARDING_FIRST_RECEIVED;
85 can_base_struct.mmssr_selection = CAN_SENDING_BY_ID;
86 can_base_init(CAN1, &can_base_struct);
87
88 /* can baudrate, set baudrate = pclk/(baudrate_div *(1 + bts1_size + bts2_size)) */
89 can_baudrate_struct.baudrate_div = 8;
90 can_baudrate_struct.rsaw_size = CAN_RSAW_3TQ;
91 can_baudrate_struct.bts1_size = CAN_BTS1_8TQ;
92 can_baudrate_struct.bts2_size = CAN_BTS2_3TQ;
93 can_baudrate_set(CAN1, &can_baudrate_struct);
94
95 /* can filter init */
96 can_filter_init_struct.filter_activate_enable = TRUE;
97 can_filter_init_struct.filter_mode = CAN_FILTER_MODE_ID_MASK;
98 can_filter_init_struct.filter_fifo = CAN_FILTER_FIFO0;
99 can_filter_init_struct.filter_number = 0;
100 can_filter_init_struct.filter_bit = CAN_FILTER_32BIT;
101 can_filter_init_struct.filter_id_high = 0;
102 can_filter_init_struct.filter_id_low = 0;
103 can_filter_init_struct.filter_mask_high = 0;
104 can_filter_init_struct.filter_mask_low = 0;
105 can_filter_init(CAN1, &can_filter_init_struct);
106
107 /* can interrupt config */
108 nvic_irq_enable(CAN1_SE_IRQn, 0x00, 0x00);
109 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0x00, 0x00);
110 can_interrupt_enable(CAN1, CAN_RF0MIEN_INT, TRUE);
111
112 /* error interrupt enable */
113 can_interrupt_enable(CAN1, CAN_ETRIEN_INT, TRUE);
114 can_interrupt_enable(CAN1, CAN_EOIEN_INT, TRUE);
115}
116
122static void can_transmit_data(void)
123{
124 uint8_t transmit_mailbox;
125 can_tx_message_type tx_message_struct;
126 tx_message_struct.standard_id = 0x400;
127 tx_message_struct.extended_id = 0;
128 tx_message_struct.id_type = CAN_ID_STANDARD;
129 tx_message_struct.frame_type = CAN_TFT_DATA;
130 tx_message_struct.dlc = 8;
131 tx_message_struct.data[0] = 0x11;
132 tx_message_struct.data[1] = 0x22;
133 tx_message_struct.data[2] = 0x33;
134 tx_message_struct.data[3] = 0x44;
135 tx_message_struct.data[4] = 0x55;
136 tx_message_struct.data[5] = 0x66;
137 tx_message_struct.data[6] = 0x77;
138 tx_message_struct.data[7] = 0x88;
139 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
140 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
141}
142
148void USBFS_L_CAN1_RX0_IRQHandler (void)
149{
150 can_rx_message_type rx_message_struct;
151 if(can_flag_get(CAN1,CAN_RF0MN_FLAG) != RESET)
152 {
153 can_message_receive(CAN1, CAN_RX_FIFO0, &rx_message_struct);
154 if(rx_message_struct.standard_id == 0x400)
155 at32_led_toggle(LED2);
156 else
157 at32_led_toggle(LED3);
158 }
159}
160
166void CAN1_SE_IRQHandler(void)
167{
168 __IO uint32_t err_index = 0;
169 if(can_flag_get(CAN1,CAN_ETR_FLAG) != RESET)
170 {
171 err_index = CAN1->ests & 0x70;
172 can_flag_clear(CAN1, CAN_ETR_FLAG);
173 /* error type is stuff error */
174 if(err_index == 0x00000010)
175 {
176 /* when stuff error occur: in order to ensure communication normally,
177 user must restart can or send a frame of highest priority message here */
178 }
179 }
180}
181
187int main(void)
188{
189 system_clock_config();
190 at32_board_init();
191 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
192 can_gpio_config();
193 can_configuration();
194 while(1)
195 {
196 can_transmit_data();
197 at32_led_toggle(LED4);
198 delay_sec(1);
199 }
200}
201
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
CAN1_SE_IRQHandler
void CAN1_SE_IRQHandler(void)
can1 interrupt function se
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:166
can_transmit_data
static void can_transmit_data(void)
can transmit data
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:122
main
int main(void)
main function.
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:187
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
can1 interrupt function rx0
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:148
can_gpio_config
static void can_gpio_config(void)
can gpio config
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:41
can_configuration
static void can_configuration(void)
can configiguration.
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:70
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
can_base_init
error_status can_base_init(can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct.
Definition: at32f403_can.c:187
can_transmit_status_get
can_transmit_status_type can_transmit_status_get(can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral.
Definition: at32f403_can.c:505
can_message_transmit
uint8_t can_message_transmit(can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral.
Definition: at32f403_can.c:431
can_message_receive
void can_message_receive(can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral.
Definition: at32f403_can.c:610
can_interrupt_enable
void can_interrupt_enable(can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral.
Definition: at32f403_can.c:915
can_flag_get
flag_status can_flag_get(can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral.
Definition: at32f403_can.c:1051
can_flag_clear
void can_flag_clear(can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral.
Definition: at32f403_can.c:1174
can_baudrate_set
error_status can_baudrate_set(can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral
Definition: at32f403_can.c:92
can_filter_init
void can_filter_init(can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct.
Definition: at32f403_can.c:297
can_default_para_init
void can_default_para_init(can_base_type *can_base_struct)
fill each can_init_struct member with its default value.
Definition: at32f403_can.c:150
can_tx_mailbox_num_type
can_tx_mailbox_num_type
can tx mailboxes
Definition: at32f403_can.h:250
CAN_FILTER_FIFO0
@ CAN_FILTER_FIFO0
Definition: at32f403_can.h:136
CAN_TX_STATUS_SUCCESSFUL
@ CAN_TX_STATUS_SUCCESSFUL
Definition: at32f403_can.h:271
CAN_DISCARDING_FIRST_RECEIVED
@ CAN_DISCARDING_FIRST_RECEIVED
Definition: at32f403_can.h:299
CAN_BTS2_3TQ
@ CAN_BTS2_3TQ
Definition: at32f403_can.h:220
CAN_TFT_DATA
@ CAN_TFT_DATA
Definition: at32f403_can.h:242
CAN_BTS1_8TQ
@ CAN_BTS1_8TQ
Definition: at32f403_can.h:202
CAN_FILTER_MODE_ID_MASK
@ CAN_FILTER_MODE_ID_MASK
Definition: at32f403_can.h:145
CAN_SENDING_BY_ID
@ CAN_SENDING_BY_ID
Definition: at32f403_can.h:308
CAN_FILTER_32BIT
@ CAN_FILTER_32BIT
Definition: at32f403_can.h:155
CAN_RX_FIFO0
@ CAN_RX_FIFO0
Definition: at32f403_can.h:261
CAN_ID_STANDARD
@ CAN_ID_STANDARD
Definition: at32f403_can.h:233
CAN_MODE_COMMUNICATE
@ CAN_MODE_COMMUNICATE
Definition: at32f403_can.h:163
CAN_RSAW_3TQ
@ CAN_RSAW_3TQ
Definition: at32f403_can.h:186
CAN_RF0MN_FLAG
#define CAN_RF0MN_FLAG
Definition: at32f403_can.h:70
CAN_ETR_FLAG
#define CAN_ETR_FLAG
Definition: at32f403_can.h:65
CAN_RF0MIEN_INT
#define CAN_RF0MIEN_INT
Definition: at32f403_can.h:90
CAN_EOIEN_INT
#define CAN_EOIEN_INT
Definition: at32f403_can.h:100
CAN_ETRIEN_INT
#define CAN_ETRIEN_INT
Definition: at32f403_can.h:99
CAN1
#define CAN1
Definition: at32f403_can.h:936
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_CAN1_PERIPH_CLOCK
@ CRM_CAN1_PERIPH_CLOCK
Definition: at32f403_crm.h:149
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
CAN1_SE_IRQn
@ CAN1_SE_IRQn
Definition: at32f403.h:201
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
CAN_MUX_10
#define CAN_MUX_10
Definition: at32f403_gpio.h:94
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
can_base_type
can init structure definition
Definition: at32f403_can.h:331
can_base_type::prsf_enable
confirm_state prsf_enable
Definition: at32f403_can.h:340
can_base_type::mdrsel_selection
can_msg_discarding_rule_type mdrsel_selection
Definition: at32f403_can.h:342
can_base_type::aed_enable
confirm_state aed_enable
Definition: at32f403_can.h:338
can_base_type::mmssr_selection
can_msg_sending_rule_type mmssr_selection
Definition: at32f403_can.h:344
can_base_type::ttc_enable
confirm_state ttc_enable
Definition: at32f403_can.h:334
can_base_type::mode_selection
can_mode_type mode_selection
Definition: at32f403_can.h:332
can_base_type::aebo_enable
confirm_state aebo_enable
Definition: at32f403_can.h:336
can_baudrate_type
can baudrate structure definition
Definition: at32f403_can.h:352
can_baudrate_type::baudrate_div
uint16_t baudrate_div
Definition: at32f403_can.h:353
can_baudrate_type::rsaw_size
can_rsaw_type rsaw_size
Definition: at32f403_can.h:355
can_baudrate_type::bts2_size
can_bts2_type bts2_size
Definition: at32f403_can.h:359
can_baudrate_type::bts1_size
can_bts1_type bts1_size
Definition: at32f403_can.h:357
can_filter_init_type
can filter init structure definition
Definition: at32f403_can.h:367
can_filter_init_type::filter_mask_low
uint16_t filter_mask_low
Definition: at32f403_can.h:387
can_filter_init_type::filter_number
uint8_t filter_number
Definition: at32f403_can.h:374
can_filter_init_type::filter_fifo
can_filter_fifo_type filter_fifo
Definition: at32f403_can.h:372
can_filter_init_type::filter_bit
can_filter_bit_width_type filter_bit
Definition: at32f403_can.h:376
can_filter_init_type::filter_mode
can_filter_mode_type filter_mode
Definition: at32f403_can.h:370
can_filter_init_type::filter_activate_enable
confirm_state filter_activate_enable
Definition: at32f403_can.h:368
can_filter_init_type::filter_mask_high
uint16_t filter_mask_high
Definition: at32f403_can.h:384
can_filter_init_type::filter_id_high
uint16_t filter_id_high
Definition: at32f403_can.h:378
can_filter_init_type::filter_id_low
uint16_t filter_id_low
Definition: at32f403_can.h:381
can_rx_message_type
can rx message structure definition
Definition: at32f403_can.h:417
can_rx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:418
can_tx_message_type
can tx message structure definition
Definition: at32f403_can.h:395
can_tx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:399
can_tx_message_type::frame_type
can_trans_frame_type frame_type
Definition: at32f403_can.h:404
can_tx_message_type::data
uint8_t data[8]
Definition: at32f403_can.h:409
can_tx_message_type::dlc
uint8_t dlc
Definition: at32f403_can.h:406
can_tx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:402
can_tx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:396
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • can
  • filter
  • inc
project/at_start_f403/examples/can/filter/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • can
  • filter
  • inc
project/at_start_f403/examples/can/filter/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • can
  • filter
  • inc
project/at_start_f403/examples/can/filter/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • can
  • filter
  • src
project/at_start_f403/examples/can/filter/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/can/filter/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • can
  • filter
  • src
project/at_start_f403/examples/can/filter/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/can/filter/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • can
  • filter
  • src
project/at_start_f403/examples/can/filter/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36/* extended identifier */
37#define FILTER_EXT_ID1 ((uint32_t)0x18F5F100)
38#define FILTER_EXT_ID2 ((uint32_t)0x18F5F200)
39#define FILTER_EXT_ID3 ((uint32_t)0x18F5F300)
40
41/* standard identifier */
42#define FILTER_STD_ID1 ((uint16_t)0x04F6)
43#define FILTER_STD_ID2 ((uint16_t)0x04F7)
44#define FILTER_STD_ID3 ((uint16_t)0x04F8)
45
46uint8_t test_result = 0;
52static void can_gpio_config(void)
53{
54 gpio_init_type gpio_init_struct;
55
56 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
57 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
58 gpio_pin_remap_config(CAN_MUX_10,TRUE);
59
60 gpio_default_para_init(&gpio_init_struct);
61
62 /* can tx pin */
63 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
64 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
65 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
66 gpio_init_struct.gpio_pins = GPIO_PINS_9;
67 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
68 gpio_init(GPIOB, &gpio_init_struct);
69
70 /* can rx pin */
71 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
72 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
73 gpio_init_struct.gpio_pins = GPIO_PINS_8;
74 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
75 gpio_init(GPIOB, &gpio_init_struct);
76}
77
83static void can_configuration(void)
84{
85 can_base_type can_base_struct;
86 can_baudrate_type can_baudrate_struct;
87 can_filter_init_type can_filter_init_struct;
88
89 crm_periph_clock_enable(CRM_CAN1_PERIPH_CLOCK, TRUE);
90 /* can base init */
91 can_default_para_init(&can_base_struct);
92 can_base_struct.mode_selection = CAN_MODE_COMMUNICATE;
93 can_base_struct.ttc_enable = FALSE;
94 can_base_struct.aebo_enable = TRUE;
95 can_base_struct.aed_enable = TRUE;
96 can_base_struct.prsf_enable = FALSE;
97 can_base_struct.mdrsel_selection = CAN_DISCARDING_FIRST_RECEIVED;
98 can_base_struct.mmssr_selection = CAN_SENDING_BY_ID;
99 can_base_init(CAN1, &can_base_struct);
100
101 /* can baudrate, set baudrate = pclk/(baudrate_div *(1 + bts1_size + bts2_size)) */
102 can_baudrate_struct.baudrate_div = 8;
103 can_baudrate_struct.rsaw_size = CAN_RSAW_3TQ;
104 can_baudrate_struct.bts1_size = CAN_BTS1_8TQ;
105 can_baudrate_struct.bts2_size = CAN_BTS2_3TQ;
106 can_baudrate_set(CAN1, &can_baudrate_struct);
107
108 /* can filter 0 config */
109 can_filter_init_struct.filter_activate_enable = TRUE;
110 can_filter_init_struct.filter_mode = CAN_FILTER_MODE_ID_LIST;
111 can_filter_init_struct.filter_fifo = CAN_FILTER_FIFO0;
112 can_filter_init_struct.filter_number = 0;
113 can_filter_init_struct.filter_bit = CAN_FILTER_32BIT;
114 can_filter_init_struct.filter_id_high = (((FILTER_EXT_ID1 << 3) >> 16) & 0xFFFF); /* extended identifier is 29 bit */
115 can_filter_init_struct.filter_id_low = ((FILTER_EXT_ID1 << 3) & 0xFFFF) | 0x04;
116 can_filter_init_struct.filter_mask_high = ((FILTER_EXT_ID2 << 3) >> 16) & 0xFFFF; /* extended identifier is 29 bit */
117 can_filter_init_struct.filter_mask_low = ((FILTER_EXT_ID2 << 3) & 0xFFFF) | 0x04;
118 can_filter_init(CAN1, &can_filter_init_struct);
119
120 /* can filter 1 config */
121 can_filter_init_struct.filter_activate_enable = TRUE;
122 can_filter_init_struct.filter_mode = CAN_FILTER_MODE_ID_LIST;
123 can_filter_init_struct.filter_fifo = CAN_FILTER_FIFO0;
124 can_filter_init_struct.filter_number = 1;
125 can_filter_init_struct.filter_bit = CAN_FILTER_32BIT;
126 can_filter_init_struct.filter_id_high = FILTER_STD_ID1 << 5; /* standard identifier is 11 bit */
127 can_filter_init_struct.filter_id_low = 0;
128 can_filter_init_struct.filter_mask_high = FILTER_STD_ID2 << 5;/* standard identifier is 11 bit */
129 can_filter_init_struct.filter_mask_low = 0;
130 can_filter_init(CAN1, &can_filter_init_struct);
131
132 /* can interrupt config */
133 nvic_irq_enable(CAN1_SE_IRQn, 0x00, 0x00);
134 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0x00, 0x00);
135 can_interrupt_enable(CAN1, CAN_RF0MIEN_INT, TRUE);
136
137 /* error interrupt enable */
138 can_interrupt_enable(CAN1, CAN_ETRIEN_INT, TRUE);
139 can_interrupt_enable(CAN1, CAN_EOIEN_INT, TRUE);
140}
141
147static void can_transmit_data(void)
148{
149 uint8_t transmit_mailbox;
150 can_tx_message_type tx_message_struct;
151
152 /* transmit FILTER_STD_ID1 */
153 tx_message_struct.standard_id = FILTER_STD_ID1;
154 tx_message_struct.extended_id = 0;
155 tx_message_struct.id_type = CAN_ID_STANDARD;
156 tx_message_struct.frame_type = CAN_TFT_DATA;
157 tx_message_struct.dlc = 8;
158 tx_message_struct.data[0] = 0x11;
159 tx_message_struct.data[1] = 0x22;
160 tx_message_struct.data[2] = 0x33;
161 tx_message_struct.data[3] = 0x44;
162 tx_message_struct.data[4] = 0x55;
163 tx_message_struct.data[5] = 0x66;
164 tx_message_struct.data[6] = 0x77;
165 tx_message_struct.data[7] = 0x88;
166 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
167 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
168
169 /* transmit FILTER_STD_ID2 */
170 tx_message_struct.standard_id = FILTER_STD_ID2;
171 tx_message_struct.extended_id = 0;
172 tx_message_struct.id_type = CAN_ID_STANDARD;
173 tx_message_struct.frame_type = CAN_TFT_DATA;
174 tx_message_struct.dlc = 8;
175 tx_message_struct.data[0] = 0x11;
176 tx_message_struct.data[1] = 0x22;
177 tx_message_struct.data[2] = 0x33;
178 tx_message_struct.data[3] = 0x44;
179 tx_message_struct.data[4] = 0x55;
180 tx_message_struct.data[5] = 0x66;
181 tx_message_struct.data[6] = 0x77;
182 tx_message_struct.data[7] = 0x88;
183 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
184 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
185
186 /* transmit FILTER_STD_ID3 */
187 tx_message_struct.standard_id = FILTER_STD_ID3;
188 tx_message_struct.extended_id = 0;
189 tx_message_struct.id_type = CAN_ID_STANDARD;
190 tx_message_struct.frame_type = CAN_TFT_DATA;
191 tx_message_struct.dlc = 8;
192 tx_message_struct.data[0] = 0x11;
193 tx_message_struct.data[1] = 0x22;
194 tx_message_struct.data[2] = 0x33;
195 tx_message_struct.data[3] = 0x44;
196 tx_message_struct.data[4] = 0x55;
197 tx_message_struct.data[5] = 0x66;
198 tx_message_struct.data[6] = 0x77;
199 tx_message_struct.data[7] = 0x88;
200 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
201 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
202
203 /* transmit FILTER_EXT_ID1 */
204 tx_message_struct.standard_id = 0;
205 tx_message_struct.extended_id = FILTER_EXT_ID1;
206 tx_message_struct.id_type = CAN_ID_EXTENDED;
207 tx_message_struct.frame_type = CAN_TFT_DATA;
208 tx_message_struct.dlc = 8;
209 tx_message_struct.data[0] = 0x11;
210 tx_message_struct.data[1] = 0x22;
211 tx_message_struct.data[2] = 0x33;
212 tx_message_struct.data[3] = 0x44;
213 tx_message_struct.data[4] = 0x55;
214 tx_message_struct.data[5] = 0x66;
215 tx_message_struct.data[6] = 0x77;
216 tx_message_struct.data[7] = 0x88;
217 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
218 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
219
220 /* transmit FILTER_EXT_ID2 */
221 tx_message_struct.standard_id = 0;
222 tx_message_struct.extended_id = FILTER_EXT_ID2;
223 tx_message_struct.id_type = CAN_ID_EXTENDED;
224 tx_message_struct.frame_type = CAN_TFT_DATA;
225 tx_message_struct.dlc = 8;
226 tx_message_struct.data[0] = 0x11;
227 tx_message_struct.data[1] = 0x22;
228 tx_message_struct.data[2] = 0x33;
229 tx_message_struct.data[3] = 0x44;
230 tx_message_struct.data[4] = 0x55;
231 tx_message_struct.data[5] = 0x66;
232 tx_message_struct.data[6] = 0x77;
233 tx_message_struct.data[7] = 0x88;
234 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
235 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
236
237 /* transmit FILTER_EXT_ID3 */
238 tx_message_struct.standard_id = 0;
239 tx_message_struct.extended_id = FILTER_EXT_ID3;
240 tx_message_struct.id_type = CAN_ID_EXTENDED;
241 tx_message_struct.frame_type = CAN_TFT_DATA;
242 tx_message_struct.dlc = 8;
243 tx_message_struct.data[0] = 0x11;
244 tx_message_struct.data[1] = 0x22;
245 tx_message_struct.data[2] = 0x33;
246 tx_message_struct.data[3] = 0x44;
247 tx_message_struct.data[4] = 0x55;
248 tx_message_struct.data[5] = 0x66;
249 tx_message_struct.data[6] = 0x77;
250 tx_message_struct.data[7] = 0x88;
251 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
252 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
253}
254
260void USBFS_L_CAN1_RX0_IRQHandler (void)
261{
262 can_rx_message_type rx_message_struct;
263 if(can_flag_get(CAN1,CAN_RF0MN_FLAG) != RESET)
264 {
265 if(test_result == 4)
266 {
267 test_result = 0;
268 }
269
270 can_message_receive(CAN1, CAN_RX_FIFO0, &rx_message_struct);
271
272 if((rx_message_struct.id_type == CAN_ID_STANDARD) && (rx_message_struct.standard_id == FILTER_STD_ID1))
273 test_result++;
274 else if((rx_message_struct.id_type == CAN_ID_STANDARD) && (rx_message_struct.standard_id == FILTER_STD_ID2))
275 test_result++;
276 else if((rx_message_struct.id_type == CAN_ID_EXTENDED) && (rx_message_struct.extended_id == FILTER_EXT_ID1))
277 test_result++;
278 else if((rx_message_struct.id_type == CAN_ID_EXTENDED) && (rx_message_struct.extended_id == FILTER_EXT_ID2))
279 test_result++;
280 }
281}
282
288void CAN1_SE_IRQHandler(void)
289{
290 __IO uint32_t err_index = 0;
291 if(can_flag_get(CAN1,CAN_ETR_FLAG) != RESET)
292 {
293 err_index = CAN1->ests & 0x70;
294 can_flag_clear(CAN1, CAN_ETR_FLAG);
295 /* error type is stuff error */
296 if(err_index == 0x00000010)
297 {
298 /* when stuff error occur: in order to ensure communication normally,
299 user must restart can or send a frame of highest priority message here */
300 }
301 }
302}
303
309int main(void)
310{
311 system_clock_config();
312 at32_board_init();
313 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
314 can_gpio_config();
315 can_configuration();
316 can_transmit_data();
317 while(1)
318 {
319 if(test_result == 4)
320 {
321 at32_led_toggle(LED2);
322 at32_led_toggle(LED3);
323 at32_led_toggle(LED4);
324 delay_sec(1);
325 }
326 }
327}
328
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
CAN1_SE_IRQHandler
void CAN1_SE_IRQHandler(void)
can1 interrupt function se
Definition: project/at_start_f403/examples/can/filter/src/main.c:288
FILTER_EXT_ID3
#define FILTER_EXT_ID3
Definition: project/at_start_f403/examples/can/filter/src/main.c:39
FILTER_EXT_ID1
#define FILTER_EXT_ID1
Definition: project/at_start_f403/examples/can/filter/src/main.c:37
FILTER_STD_ID2
#define FILTER_STD_ID2
Definition: project/at_start_f403/examples/can/filter/src/main.c:43
can_transmit_data
static void can_transmit_data(void)
can transmit data
Definition: project/at_start_f403/examples/can/filter/src/main.c:147
main
int main(void)
main function.
Definition: project/at_start_f403/examples/can/filter/src/main.c:309
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
can1 interrupt function rx0
Definition: project/at_start_f403/examples/can/filter/src/main.c:260
FILTER_EXT_ID2
#define FILTER_EXT_ID2
Definition: project/at_start_f403/examples/can/filter/src/main.c:38
FILTER_STD_ID3
#define FILTER_STD_ID3
Definition: project/at_start_f403/examples/can/filter/src/main.c:44
FILTER_STD_ID1
#define FILTER_STD_ID1
Definition: project/at_start_f403/examples/can/filter/src/main.c:42
can_gpio_config
static void can_gpio_config(void)
can gpio config
Definition: project/at_start_f403/examples/can/filter/src/main.c:52
can_configuration
static void can_configuration(void)
can configiguration.
Definition: project/at_start_f403/examples/can/filter/src/main.c:83
test_result
uint8_t test_result
Definition: project/at_start_f403/examples/can/filter/src/main.c:46
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
can_base_init
error_status can_base_init(can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct.
Definition: at32f403_can.c:187
can_transmit_status_get
can_transmit_status_type can_transmit_status_get(can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral.
Definition: at32f403_can.c:505
can_message_transmit
uint8_t can_message_transmit(can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral.
Definition: at32f403_can.c:431
can_message_receive
void can_message_receive(can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral.
Definition: at32f403_can.c:610
can_interrupt_enable
void can_interrupt_enable(can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral.
Definition: at32f403_can.c:915
can_flag_get
flag_status can_flag_get(can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral.
Definition: at32f403_can.c:1051
can_flag_clear
void can_flag_clear(can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral.
Definition: at32f403_can.c:1174
can_baudrate_set
error_status can_baudrate_set(can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral
Definition: at32f403_can.c:92
can_filter_init
void can_filter_init(can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct.
Definition: at32f403_can.c:297
can_default_para_init
void can_default_para_init(can_base_type *can_base_struct)
fill each can_init_struct member with its default value.
Definition: at32f403_can.c:150
can_tx_mailbox_num_type
can_tx_mailbox_num_type
can tx mailboxes
Definition: at32f403_can.h:250
CAN_FILTER_FIFO0
@ CAN_FILTER_FIFO0
Definition: at32f403_can.h:136
CAN_TX_STATUS_SUCCESSFUL
@ CAN_TX_STATUS_SUCCESSFUL
Definition: at32f403_can.h:271
CAN_DISCARDING_FIRST_RECEIVED
@ CAN_DISCARDING_FIRST_RECEIVED
Definition: at32f403_can.h:299
CAN_BTS2_3TQ
@ CAN_BTS2_3TQ
Definition: at32f403_can.h:220
CAN_TFT_DATA
@ CAN_TFT_DATA
Definition: at32f403_can.h:242
CAN_BTS1_8TQ
@ CAN_BTS1_8TQ
Definition: at32f403_can.h:202
CAN_FILTER_MODE_ID_LIST
@ CAN_FILTER_MODE_ID_LIST
Definition: at32f403_can.h:146
CAN_SENDING_BY_ID
@ CAN_SENDING_BY_ID
Definition: at32f403_can.h:308
CAN_FILTER_32BIT
@ CAN_FILTER_32BIT
Definition: at32f403_can.h:155
CAN_RX_FIFO0
@ CAN_RX_FIFO0
Definition: at32f403_can.h:261
CAN_ID_STANDARD
@ CAN_ID_STANDARD
Definition: at32f403_can.h:233
CAN_ID_EXTENDED
@ CAN_ID_EXTENDED
Definition: at32f403_can.h:234
CAN_MODE_COMMUNICATE
@ CAN_MODE_COMMUNICATE
Definition: at32f403_can.h:163
CAN_RSAW_3TQ
@ CAN_RSAW_3TQ
Definition: at32f403_can.h:186
CAN_RF0MN_FLAG
#define CAN_RF0MN_FLAG
Definition: at32f403_can.h:70
CAN_ETR_FLAG
#define CAN_ETR_FLAG
Definition: at32f403_can.h:65
CAN_RF0MIEN_INT
#define CAN_RF0MIEN_INT
Definition: at32f403_can.h:90
CAN_EOIEN_INT
#define CAN_EOIEN_INT
Definition: at32f403_can.h:100
CAN_ETRIEN_INT
#define CAN_ETRIEN_INT
Definition: at32f403_can.h:99
CAN1
#define CAN1
Definition: at32f403_can.h:936
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_CAN1_PERIPH_CLOCK
@ CRM_CAN1_PERIPH_CLOCK
Definition: at32f403_crm.h:149
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
CAN1_SE_IRQn
@ CAN1_SE_IRQn
Definition: at32f403.h:201
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
CAN_MUX_10
#define CAN_MUX_10
Definition: at32f403_gpio.h:94
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
can_base_type
can init structure definition
Definition: at32f403_can.h:331
can_base_type::prsf_enable
confirm_state prsf_enable
Definition: at32f403_can.h:340
can_base_type::mdrsel_selection
can_msg_discarding_rule_type mdrsel_selection
Definition: at32f403_can.h:342
can_base_type::aed_enable
confirm_state aed_enable
Definition: at32f403_can.h:338
can_base_type::mmssr_selection
can_msg_sending_rule_type mmssr_selection
Definition: at32f403_can.h:344
can_base_type::ttc_enable
confirm_state ttc_enable
Definition: at32f403_can.h:334
can_base_type::mode_selection
can_mode_type mode_selection
Definition: at32f403_can.h:332
can_base_type::aebo_enable
confirm_state aebo_enable
Definition: at32f403_can.h:336
can_baudrate_type
can baudrate structure definition
Definition: at32f403_can.h:352
can_baudrate_type::baudrate_div
uint16_t baudrate_div
Definition: at32f403_can.h:353
can_baudrate_type::rsaw_size
can_rsaw_type rsaw_size
Definition: at32f403_can.h:355
can_baudrate_type::bts2_size
can_bts2_type bts2_size
Definition: at32f403_can.h:359
can_baudrate_type::bts1_size
can_bts1_type bts1_size
Definition: at32f403_can.h:357
can_filter_init_type
can filter init structure definition
Definition: at32f403_can.h:367
can_filter_init_type::filter_mask_low
uint16_t filter_mask_low
Definition: at32f403_can.h:387
can_filter_init_type::filter_number
uint8_t filter_number
Definition: at32f403_can.h:374
can_filter_init_type::filter_fifo
can_filter_fifo_type filter_fifo
Definition: at32f403_can.h:372
can_filter_init_type::filter_bit
can_filter_bit_width_type filter_bit
Definition: at32f403_can.h:376
can_filter_init_type::filter_mode
can_filter_mode_type filter_mode
Definition: at32f403_can.h:370
can_filter_init_type::filter_activate_enable
confirm_state filter_activate_enable
Definition: at32f403_can.h:368
can_filter_init_type::filter_mask_high
uint16_t filter_mask_high
Definition: at32f403_can.h:384
can_filter_init_type::filter_id_high
uint16_t filter_id_high
Definition: at32f403_can.h:378
can_filter_init_type::filter_id_low
uint16_t filter_id_low
Definition: at32f403_can.h:381
can_rx_message_type
can rx message structure definition
Definition: at32f403_can.h:417
can_rx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:418
can_rx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:424
can_rx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:421
can_tx_message_type
can tx message structure definition
Definition: at32f403_can.h:395
can_tx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:399
can_tx_message_type::frame_type
can_trans_frame_type frame_type
Definition: at32f403_can.h:404
can_tx_message_type::data
uint8_t data[8]
Definition: at32f403_can.h:409
can_tx_message_type::dlc
uint8_t dlc
Definition: at32f403_can.h:406
can_tx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:402
can_tx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:396
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • can
  • loopback_mode
  • inc
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • can
  • loopback_mode
  • inc
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • can
  • loopback_mode
  • inc
project/at_start_f403/examples/can/loopback_mode/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • can
  • loopback_mode
  • src
project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • can
  • loopback_mode
  • src
project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/can/loopback_mode/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • can
  • loopback_mode
  • src
project/at_start_f403/examples/can/loopback_mode/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41static void can_gpio_config(void)
42{
43 gpio_init_type gpio_init_struct;
44
45 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
46 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
47 gpio_pin_remap_config(CAN_MUX_10,TRUE);
48
49 gpio_default_para_init(&gpio_init_struct);
50 /* can tx pin */
51 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
52 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
53 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
54 gpio_init_struct.gpio_pins = GPIO_PINS_9;
55 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
56 gpio_init(GPIOB, &gpio_init_struct);
57 /* can rx pin */
58 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
59 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
60 gpio_init_struct.gpio_pins = GPIO_PINS_8;
61 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
62 gpio_init(GPIOB, &gpio_init_struct);
63}
64
70static void can_configuration(void)
71{
72 can_base_type can_base_struct;
73 can_baudrate_type can_baudrate_struct;
74 can_filter_init_type can_filter_init_struct;
75
76 crm_periph_clock_enable(CRM_CAN1_PERIPH_CLOCK, TRUE);
77 /* can base init */
78 can_default_para_init(&can_base_struct);
79 can_base_struct.mode_selection = CAN_MODE_LOOPBACK;
80 can_base_struct.ttc_enable = FALSE;
81 can_base_struct.aebo_enable = TRUE;
82 can_base_struct.aed_enable = TRUE;
83 can_base_struct.prsf_enable = FALSE;
84 can_base_struct.mdrsel_selection = CAN_DISCARDING_FIRST_RECEIVED;
85 can_base_struct.mmssr_selection = CAN_SENDING_BY_ID;
86 can_base_init(CAN1, &can_base_struct);
87
88 /* can baudrate, set baudrate = pclk/(baudrate_div *(1 + bts1_size + bts2_size)) */
89 can_baudrate_struct.baudrate_div = 8;
90 can_baudrate_struct.rsaw_size = CAN_RSAW_3TQ;
91 can_baudrate_struct.bts1_size = CAN_BTS1_8TQ;
92 can_baudrate_struct.bts2_size = CAN_BTS2_3TQ;
93 can_baudrate_set(CAN1, &can_baudrate_struct);
94
95 /* can filter init */
96 can_filter_init_struct.filter_activate_enable = TRUE;
97 can_filter_init_struct.filter_mode = CAN_FILTER_MODE_ID_MASK;
98 can_filter_init_struct.filter_fifo = CAN_FILTER_FIFO0;
99 can_filter_init_struct.filter_number = 0;
100 can_filter_init_struct.filter_bit = CAN_FILTER_32BIT;
101 can_filter_init_struct.filter_id_high = 0;
102 can_filter_init_struct.filter_id_low = 0;
103 can_filter_init_struct.filter_mask_high = 0;
104 can_filter_init_struct.filter_mask_low = 0;
105 can_filter_init(CAN1, &can_filter_init_struct);
106
107 /* can interrupt config */
108 nvic_irq_enable(CAN1_SE_IRQn, 0x00, 0x00);
109 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0x00, 0x00);
110 can_interrupt_enable(CAN1, CAN_RF0MIEN_INT, TRUE);
111
112 /* error interrupt enable */
113 can_interrupt_enable(CAN1, CAN_ETRIEN_INT, TRUE);
114 can_interrupt_enable(CAN1, CAN_EOIEN_INT, TRUE);
115}
116
122static void can_transmit_data(void)
123{
124 uint8_t transmit_mailbox;
125 can_tx_message_type tx_message_struct;
126 tx_message_struct.standard_id = 0x400;
127 tx_message_struct.extended_id = 0;
128 tx_message_struct.id_type = CAN_ID_STANDARD;
129 tx_message_struct.frame_type = CAN_TFT_DATA;
130 tx_message_struct.dlc = 8;
131 tx_message_struct.data[0] = 0x11;
132 tx_message_struct.data[1] = 0x22;
133 tx_message_struct.data[2] = 0x33;
134 tx_message_struct.data[3] = 0x44;
135 tx_message_struct.data[4] = 0x55;
136 tx_message_struct.data[5] = 0x66;
137 tx_message_struct.data[6] = 0x77;
138 tx_message_struct.data[7] = 0x88;
139 transmit_mailbox = can_message_transmit(CAN1, &tx_message_struct);
140 while(can_transmit_status_get(CAN1, (can_tx_mailbox_num_type)transmit_mailbox) != CAN_TX_STATUS_SUCCESSFUL);
141}
142
148void USBFS_L_CAN1_RX0_IRQHandler (void)
149{
150 can_rx_message_type rx_message_struct;
151 if(can_flag_get(CAN1,CAN_RF0MN_FLAG) != RESET)
152 {
153 can_message_receive(CAN1, CAN_RX_FIFO0, &rx_message_struct);
154 if(rx_message_struct.standard_id == 0x400)
155 at32_led_toggle(LED2);
156 }
157}
158
164void CAN1_SE_IRQHandler(void)
165{
166 __IO uint32_t err_index = 0;
167 if(can_flag_get(CAN1,CAN_ETR_FLAG) != RESET)
168 {
169 err_index = CAN1->ests & 0x70;
170 can_flag_clear(CAN1, CAN_ETR_FLAG);
171 /* error type is stuff error */
172 if(err_index == 0x00000010)
173 {
174 /* when stuff error occur: in order to ensure communication normally,
175 user must restart can or send a frame of highest priority message here */
176 }
177 }
178}
179
185int main(void)
186{
187 system_clock_config();
188 at32_board_init();
189 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
190 can_gpio_config();
191 can_configuration();
192 while(1)
193 {
194 can_transmit_data();
195 at32_led_toggle(LED4);
196 delay_sec(1);
197 }
198}
199
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
CAN1_SE_IRQHandler
void CAN1_SE_IRQHandler(void)
can1 interrupt function se
Definition: project/at_start_f403/examples/can/loopback_mode/src/main.c:164
can_transmit_data
static void can_transmit_data(void)
can transmit data
Definition: project/at_start_f403/examples/can/loopback_mode/src/main.c:122
main
int main(void)
main function.
Definition: project/at_start_f403/examples/can/loopback_mode/src/main.c:185
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
can1 interrupt function rx0
Definition: project/at_start_f403/examples/can/loopback_mode/src/main.c:148
can_gpio_config
static void can_gpio_config(void)
can gpio config
Definition: project/at_start_f403/examples/can/loopback_mode/src/main.c:41
can_configuration
static void can_configuration(void)
can configiguration.
Definition: project/at_start_f403/examples/can/loopback_mode/src/main.c:70
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
can_base_init
error_status can_base_init(can_type *can_x, can_base_type *can_base_struct)
initialize the can peripheral according to the specified parameters in the can_init_struct.
Definition: at32f403_can.c:187
can_transmit_status_get
can_transmit_status_type can_transmit_status_get(can_type *can_x, can_tx_mailbox_num_type transmit_mailbox)
check the transmission state of the specified can peripheral.
Definition: at32f403_can.c:505
can_message_transmit
uint8_t can_message_transmit(can_type *can_x, can_tx_message_type *tx_message_struct)
fill the transmission message and transmit of the specified can peripheral.
Definition: at32f403_can.c:431
can_message_receive
void can_message_receive(can_type *can_x, can_rx_fifo_num_type fifo_number, can_rx_message_type *rx_message_struct)
receive message of the specified can peripheral.
Definition: at32f403_can.c:610
can_interrupt_enable
void can_interrupt_enable(can_type *can_x, uint32_t can_int, confirm_state new_state)
enable or disable the interrupt of the specified can peripheral.
Definition: at32f403_can.c:915
can_flag_get
flag_status can_flag_get(can_type *can_x, uint32_t can_flag)
get flag of the specified can peripheral.
Definition: at32f403_can.c:1051
can_flag_clear
void can_flag_clear(can_type *can_x, uint32_t can_flag)
clear flag of the specified can peripheral.
Definition: at32f403_can.c:1174
can_baudrate_set
error_status can_baudrate_set(can_type *can_x, can_baudrate_type *can_baudrate_struct)
set the baudrate of the can peripheral
Definition: at32f403_can.c:92
can_filter_init
void can_filter_init(can_type *can_x, can_filter_init_type *can_filter_init_struct)
initialize the can peripheral according to the specified parameters in the can_filter_init_struct.
Definition: at32f403_can.c:297
can_default_para_init
void can_default_para_init(can_base_type *can_base_struct)
fill each can_init_struct member with its default value.
Definition: at32f403_can.c:150
can_tx_mailbox_num_type
can_tx_mailbox_num_type
can tx mailboxes
Definition: at32f403_can.h:250
CAN_FILTER_FIFO0
@ CAN_FILTER_FIFO0
Definition: at32f403_can.h:136
CAN_TX_STATUS_SUCCESSFUL
@ CAN_TX_STATUS_SUCCESSFUL
Definition: at32f403_can.h:271
CAN_DISCARDING_FIRST_RECEIVED
@ CAN_DISCARDING_FIRST_RECEIVED
Definition: at32f403_can.h:299
CAN_BTS2_3TQ
@ CAN_BTS2_3TQ
Definition: at32f403_can.h:220
CAN_TFT_DATA
@ CAN_TFT_DATA
Definition: at32f403_can.h:242
CAN_BTS1_8TQ
@ CAN_BTS1_8TQ
Definition: at32f403_can.h:202
CAN_FILTER_MODE_ID_MASK
@ CAN_FILTER_MODE_ID_MASK
Definition: at32f403_can.h:145
CAN_SENDING_BY_ID
@ CAN_SENDING_BY_ID
Definition: at32f403_can.h:308
CAN_FILTER_32BIT
@ CAN_FILTER_32BIT
Definition: at32f403_can.h:155
CAN_RX_FIFO0
@ CAN_RX_FIFO0
Definition: at32f403_can.h:261
CAN_ID_STANDARD
@ CAN_ID_STANDARD
Definition: at32f403_can.h:233
CAN_MODE_LOOPBACK
@ CAN_MODE_LOOPBACK
Definition: at32f403_can.h:164
CAN_RSAW_3TQ
@ CAN_RSAW_3TQ
Definition: at32f403_can.h:186
CAN_RF0MN_FLAG
#define CAN_RF0MN_FLAG
Definition: at32f403_can.h:70
CAN_ETR_FLAG
#define CAN_ETR_FLAG
Definition: at32f403_can.h:65
CAN_RF0MIEN_INT
#define CAN_RF0MIEN_INT
Definition: at32f403_can.h:90
CAN_EOIEN_INT
#define CAN_EOIEN_INT
Definition: at32f403_can.h:100
CAN_ETRIEN_INT
#define CAN_ETRIEN_INT
Definition: at32f403_can.h:99
CAN1
#define CAN1
Definition: at32f403_can.h:936
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_CAN1_PERIPH_CLOCK
@ CRM_CAN1_PERIPH_CLOCK
Definition: at32f403_crm.h:149
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
CAN1_SE_IRQn
@ CAN1_SE_IRQn
Definition: at32f403.h:201
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
CAN_MUX_10
#define CAN_MUX_10
Definition: at32f403_gpio.h:94
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
can_base_type
can init structure definition
Definition: at32f403_can.h:331
can_base_type::prsf_enable
confirm_state prsf_enable
Definition: at32f403_can.h:340
can_base_type::mdrsel_selection
can_msg_discarding_rule_type mdrsel_selection
Definition: at32f403_can.h:342
can_base_type::aed_enable
confirm_state aed_enable
Definition: at32f403_can.h:338
can_base_type::mmssr_selection
can_msg_sending_rule_type mmssr_selection
Definition: at32f403_can.h:344
can_base_type::ttc_enable
confirm_state ttc_enable
Definition: at32f403_can.h:334
can_base_type::mode_selection
can_mode_type mode_selection
Definition: at32f403_can.h:332
can_base_type::aebo_enable
confirm_state aebo_enable
Definition: at32f403_can.h:336
can_baudrate_type
can baudrate structure definition
Definition: at32f403_can.h:352
can_baudrate_type::baudrate_div
uint16_t baudrate_div
Definition: at32f403_can.h:353
can_baudrate_type::rsaw_size
can_rsaw_type rsaw_size
Definition: at32f403_can.h:355
can_baudrate_type::bts2_size
can_bts2_type bts2_size
Definition: at32f403_can.h:359
can_baudrate_type::bts1_size
can_bts1_type bts1_size
Definition: at32f403_can.h:357
can_filter_init_type
can filter init structure definition
Definition: at32f403_can.h:367
can_filter_init_type::filter_mask_low
uint16_t filter_mask_low
Definition: at32f403_can.h:387
can_filter_init_type::filter_number
uint8_t filter_number
Definition: at32f403_can.h:374
can_filter_init_type::filter_fifo
can_filter_fifo_type filter_fifo
Definition: at32f403_can.h:372
can_filter_init_type::filter_bit
can_filter_bit_width_type filter_bit
Definition: at32f403_can.h:376
can_filter_init_type::filter_mode
can_filter_mode_type filter_mode
Definition: at32f403_can.h:370
can_filter_init_type::filter_activate_enable
confirm_state filter_activate_enable
Definition: at32f403_can.h:368
can_filter_init_type::filter_mask_high
uint16_t filter_mask_high
Definition: at32f403_can.h:384
can_filter_init_type::filter_id_high
uint16_t filter_id_high
Definition: at32f403_can.h:378
can_filter_init_type::filter_id_low
uint16_t filter_id_low
Definition: at32f403_can.h:381
can_rx_message_type
can rx message structure definition
Definition: at32f403_can.h:417
can_rx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:418
can_tx_message_type
can tx message structure definition
Definition: at32f403_can.h:395
can_tx_message_type::extended_id
uint32_t extended_id
Definition: at32f403_can.h:399
can_tx_message_type::frame_type
can_trans_frame_type frame_type
Definition: at32f403_can.h:404
can_tx_message_type::data
uint8_t data[8]
Definition: at32f403_can.h:409
can_tx_message_type::dlc
uint8_t dlc
Definition: at32f403_can.h:406
can_tx_message_type::id_type
can_identifier_type id_type
Definition: at32f403_can.h:402
can_tx_message_type::standard_id
uint32_t standard_id
Definition: at32f403_can.h:396
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • cortex_m4
  • bit_band
  • inc
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • cortex_m4
  • bit_band
  • inc
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • cortex_m4
  • bit_band
  • inc
project/at_start_f403/examples/cortex_m4/bit_band/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • cortex_m4
  • bit_band
  • src
project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • cortex_m4
  • bit_band
  • src
project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • cortex_m4
  • bit_band
  • src
project/at_start_f403/examples/cortex_m4/bit_band/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
37/* bit band for sram */
38#define RAM_BASE 0x20000000
39#define RAM_BITBAND_BASE 0x22000000
40
41#define VARIABLES_RESET_BIT(variables_addr, bit_number) \
42 (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 0)
43
44#define VARIABLES_SET_BIT(variables_addr, bit_number) \
45 (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)) = 1)
46
47#define VARIABLES_GET_BIT(variables_addr, bit_number) \
48 (*(uint32_t *)(RAM_BITBAND_BASE + ((variables_addr - RAM_BASE) * 32) + ((bit_number) * 4)))
49
50/* bit band for peripheral */
51#define PERIPHERAL_BASE 0x40000000
52#define PERIPHERAL_BITBAND_BASE 0x42000000
53
54#define PERIPHERAL_RESET_BIT(peripheral_addr, bit_number) \
55 (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 0)
56
57#define PERIPHERAL_SET_BIT(peripheral_addr, bit_number) \
58 (*(uint32_t *)(PERIPHERAL_BITBAND_BASE + ((peripheral_addr - PERIPHERAL_BASE) * 32) + ((bit_number) * 4)) = 1)
59
60__IO uint32_t variables, variables_addr = 0, variables_bit_val = 0;
61
67void result_error(void)
68{
69 while(1)
70 {
71 at32_led_toggle(LED4);
72 delay_sec(1);
73 }
74}
75
81int main(void)
82{
83 system_clock_config();
84 at32_board_init();
85 variables = 0xA5A5A5A5;
86
87 /* get the variables address */
88 variables_addr = (uint32_t)&variables;
89
90 /* modify variables bit0 and check result */
91 VARIABLES_RESET_BIT(variables_addr, 0);
92 if((variables != 0xA5A5A5A4) || (VARIABLES_GET_BIT(variables_addr, 0) != 0))
93 {
94 result_error();
95 }
96
97 /* modify variables bit0 and check result */
98 VARIABLES_SET_BIT(variables_addr, 0);
99 if((variables != 0xA5A5A5A5) || (VARIABLES_GET_BIT(variables_addr, 0) != 1))
100 {
101 result_error();
102 }
103
104 /* modify variables bit16 and check result */
105 VARIABLES_RESET_BIT(variables_addr, 16);
106 if((variables != 0xA5A4A5A5) || (VARIABLES_GET_BIT(variables_addr, 16) != 0))
107 {
108 result_error();
109 }
110
111 /* modify variables bit16 and check result */
112 VARIABLES_SET_BIT(variables_addr, 16);
113 if((variables != 0xA5A5A5A5) || (VARIABLES_GET_BIT(variables_addr, 16) != 1))
114 {
115 result_error();
116 }
117
118 /* modify variables bit31 and check result */
119 VARIABLES_RESET_BIT(variables_addr, 31);
120 if((variables != 0x25A5A5A5) || (VARIABLES_GET_BIT(variables_addr, 31) != 0))
121 {
122 result_error();
123 }
124
125 /* modify variables bit31 and check result */
126 VARIABLES_SET_BIT(variables_addr, 31);
127 if((variables != 0xA5A5A5A5) || (VARIABLES_GET_BIT(variables_addr, 31) != 1))
128 {
129 result_error();
130 }
131
132 while(1)
133 {
134 /* led2 toggle */
135 PERIPHERAL_RESET_BIT((uint32_t)&LED2_GPIO->odt, 13);
136 delay_ms(500);
137 PERIPHERAL_SET_BIT((uint32_t)&LED2_GPIO->odt, 13);
138 delay_ms(500);
139 }
140}
141
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
variables
__IO uint32_t variables
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:60
variables_addr
__IO uint32_t variables_addr
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:60
variables_bit_val
__IO uint32_t variables_bit_val
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:60
PERIPHERAL_SET_BIT
#define PERIPHERAL_SET_BIT(peripheral_addr, bit_number)
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:57
main
int main(void)
main function.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:81
result_error
void result_error(void)
led4 flick for error.
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:67
VARIABLES_SET_BIT
#define VARIABLES_SET_BIT(variables_addr, bit_number)
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:44
PERIPHERAL_RESET_BIT
#define PERIPHERAL_RESET_BIT(peripheral_addr, bit_number)
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:54
VARIABLES_RESET_BIT
#define VARIABLES_RESET_BIT(variables_addr, bit_number)
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:41
VARIABLES_GET_BIT
#define VARIABLES_GET_BIT(variables_addr, bit_number)
Definition: project/at_start_f403/examples/cortex_m4/bit_band/src/main.c:47
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED4
@ LED4
Definition: at32f403_board.h:63
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • cortex_m4
  • cmsis_dsp
  • inc
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • cortex_m4
  • cmsis_dsp
  • inc
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • cortex_m4
  • cmsis_dsp
  • inc
project/at_start_f403/examples/cortex_m4/cmsis_dsp/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • cortex_m4
  • cmsis_dsp
  • src
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • cortex_m4
  • cmsis_dsp
  • src
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • cortex_m4
  • cmsis_dsp
  • src
project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "arm_math.h"
28
37#define USE_STATIC_INIT
38
39 /* Global defines */
40
41#define TEST_LENGTH_SAMPLES (20*4)
42
43/* List of Marks scored by 20 students for 4 subjects */
44const float32_t testMarks_f32[TEST_LENGTH_SAMPLES] =
45{
46 42.000000, 37.000000, 81.000000, 28.000000,
47 83.000000, 72.000000, 36.000000, 38.000000,
48 32.000000, 51.000000, 63.000000, 64.000000,
49 97.000000, 82.000000, 95.000000, 90.000000,
50 66.000000, 51.000000, 54.000000, 42.000000,
51 67.000000, 56.000000, 45.000000, 57.000000,
52 67.000000, 69.000000, 35.000000, 52.000000,
53 29.000000, 81.000000, 58.000000, 47.000000,
54 38.000000, 76.000000, 100.000000, 29.000000,
55 33.000000, 47.000000, 29.000000, 50.000000,
56 34.000000, 41.000000, 61.000000, 46.000000,
57 52.000000, 50.000000, 48.000000, 36.000000,
58 47.000000, 55.000000, 44.000000, 40.000000,
59 100.000000, 94.000000, 84.000000, 37.000000,
60 32.000000, 71.000000, 47.000000, 77.000000,
61 31.000000, 50.000000, 49.000000, 35.000000,
62 63.000000, 67.000000, 40.000000, 31.000000,
63 29.000000, 68.000000, 61.000000, 38.000000,
64 31.000000, 28.000000, 28.000000, 76.000000,
65 55.000000, 33.000000, 29.000000, 39.000000
66};
67
68
69/* Number of subjects X 1 */
70const float32_t testUnity_f32[4] =
71{
72 1.000, 1.000, 1.000, 1.000
73};
74
75
76/* f32 Output buffer */
77static float32_t testOutput[TEST_LENGTH_SAMPLES];
78
79
80/* Global defines */
81#define NUMSTUDENTS 20
82#define NUMSUBJECTS 4
83
84/* Global variables */
85
86uint32_t numStudents = 20;
87uint32_t numSubjects = 4;
88float32_t max_marks, min_marks, mean, std, var;
89uint32_t student_num;
90
96int32_t main()
97{
98 system_clock_config();
99
100 uart_print_init(115200);
101
102#ifndef USE_STATIC_INIT
103
104 arm_matrix_instance_f32 srcA;
105 arm_matrix_instance_f32 srcB;
106 arm_matrix_instance_f32 dstC;
107
108 /* Input and output matrices initializations */
109 arm_mat_init_f32(&srcA, numStudents, numSubjects, (float32_t *)testMarks_f32);
110 arm_mat_init_f32(&srcB, numSubjects, 1, (float32_t *)testUnity_f32);
111 arm_mat_init_f32(&dstC, numStudents, 1, testOutput);
112
113#else
114
115 /* Static Initializations of Input and output matrix sizes and array */
116 arm_matrix_instance_f32 srcA = {NUMSTUDENTS, NUMSUBJECTS, (float32_t *)testMarks_f32};
117 arm_matrix_instance_f32 srcB = {NUMSUBJECTS, 1, (float32_t *)testUnity_f32};
118 arm_matrix_instance_f32 dstC = {NUMSTUDENTS, 1, testOutput};
119
120#endif
121
122 /* Call the Matrix multiplication process function */
123 arm_mat_mult_f32(&srcA, &srcB, &dstC);
124
125 /* Call the Max function to calculate max marks among numStudents */
126 arm_max_f32(testOutput, numStudents, &max_marks, &student_num);
127
128 /* Call the Min function to calculate min marks among numStudents */
129 arm_min_f32(testOutput, numStudents, &min_marks, &student_num);
130
131 /* Call the Mean function to calculate mean */
132 arm_mean_f32(testOutput, numStudents, &mean);
133
134 /* Call the std function to calculate standard deviation */
135 arm_std_f32(testOutput, numStudents, &std);
136
137 /* Call the var function to calculate variance */
138 arm_var_f32(testOutput, numStudents, &var);
139
140 printf("max_marks = %f, min_marks = %f, mean = %f, std = %f, var = %f\n", max_marks, min_marks, mean, std, var);
141
142 while (1);
143}
144
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
testMarks_f32
const float32_t testMarks_f32[(20 *4)]
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:44
std
float32_t std
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:88
main
int32_t main()
main function.
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:96
var
float32_t var
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:88
numSubjects
uint32_t numSubjects
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:87
student_num
uint32_t student_num
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:89
NUMSUBJECTS
#define NUMSUBJECTS
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:82
testUnity_f32
const float32_t testUnity_f32[4]
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:70
NUMSTUDENTS
#define NUMSTUDENTS
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:81
max_marks
float32_t max_marks
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:88
numStudents
uint32_t numStudents
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:86
min_marks
float32_t min_marks
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:88
TEST_LENGTH_SAMPLES
#define TEST_LENGTH_SAMPLES
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:41
mean
float32_t mean
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:88
testOutput
static float32_t testOutput[(20 *4)]
Definition: project/at_start_f403/examples/cortex_m4/cmsis_dsp/src/main.c:77
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • cortex_m4
  • fpu
  • inc
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • cortex_m4
  • fpu
  • inc
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • cortex_m4
  • fpu
  • inc
project/at_start_f403/examples/cortex_m4/fpu/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • cortex_m4
  • fpu
  • src
project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • cortex_m4
  • fpu
  • src
project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • cortex_m4
  • fpu
  • src
project/at_start_f403/examples/cortex_m4/fpu/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "julia_fpu.h"
28
37#define SCREEN_X_SIZE ((uint16_t)320)
38#define SCREEN_Y_SIZE ((uint16_t)240)
39#define ZOOM ((uint16_t)100)
40
41uint8_t buffer[SCREEN_X_SIZE * SCREEN_Y_SIZE];
42
48int main(void)
49{
50 system_clock_config();
51
52 at32_board_init();
53
54 while(1)
55 {
56 at32_led_toggle(LED4);
57
58 generate_julia_fpu(SCREEN_X_SIZE, SCREEN_Y_SIZE, SCREEN_X_SIZE / 2, SCREEN_Y_SIZE / 2, ZOOM, buffer);
59 }
60}
61
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
SCREEN_X_SIZE
#define SCREEN_X_SIZE
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:48
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
ZOOM
#define ZOOM
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:39
SCREEN_Y_SIZE
#define SCREEN_Y_SIZE
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
generate_julia_fpu
void generate_julia_fpu(uint16_t size_x, uint16_t size_y, uint16_t offset_x, uint16_t offset_y, uint16_t zoom, uint8_t *buffer)
julia calculation test with fpu option enable or disable
Definition: julia_fpu.c:46
julia_fpu.h
julia_fpu header file
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • cortex_m4
  • systick_interrupt
  • inc
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • cortex_m4
  • systick_interrupt
  • inc
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • cortex_m4
  • systick_interrupt
  • inc
project/at_start_f403/examples/cortex_m4/systick_interrupt/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • cortex_m4
  • systick_interrupt
  • src
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • cortex_m4
  • systick_interrupt
  • src
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern void systick_handler(void);
29
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133 systick_handler();
134}
135
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:78
systick_handler
void systick_handler(void)
systick interrupt handler.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c:44
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • cortex_m4
  • systick_interrupt
  • src
project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define MS_TICK (system_core_clock / 1000U)
37#define DELAY 200 /* 200 ms ticks */
38
44void systick_handler(void)
45{
46 static uint32_t ticks = 0;
47
48 ticks ++;
49
50 /* toggle led */
51 if(ticks > DELAY)
52 {
53 at32_led_toggle(LED2);
54 ticks = 0;
55 }
56}
57
63int main(void)
64{
65 system_clock_config();
66
67 /* config systick clock source */
68 systick_clock_source_config(SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV);
69
70 /* config systick reload value and enable interrupt */
71 SysTick_Config(MS_TICK);
72
73 /* configure led */
74 at32_led_init(LED2);
75
76 while(1)
77 {
78 }
79}
80
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
MS_TICK
#define MS_TICK
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c:36
DELAY
#define DELAY
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c:63
systick_handler
void systick_handler(void)
systick interrupt handler.
Definition: project/at_start_f403/examples/cortex_m4/systick_interrupt/src/main.c:44
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_init
void at32_led_init(led_type led)
configure led gpio
Definition: at32f403_board.c:238
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
systick_clock_source_config
void systick_clock_source_config(systick_clock_source_type source)
config systick clock source
Definition: at32f403_misc.c:145
SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
@ SYSTICK_CLOCK_SOURCE_AHBCLK_NODIV
Definition: at32f403_misc.h:88
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • crc
  • calculation
  • inc
project/at_start_f403/examples/crc/calculation/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • crc
  • calculation
  • inc
project/at_start_f403/examples/crc/calculation/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • crc
  • calculation
  • inc
project/at_start_f403/examples/crc/calculation/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • crc
  • calculation
  • src
project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • crc
  • calculation
  • src
project/at_start_f403/examples/crc/calculation/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/crc/calculation/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • crc
  • calculation
  • src
project/at_start_f403/examples/crc/calculation/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 120
37
38static const uint32_t data_buffer[BUFFER_SIZE] =
39{
40 0xc33dd31c, 0xe37ff35e, 0x129022f3, 0x32d24235, 0x52146277, 0x7256b5ea,
41 0x4a755a54, 0x6a377a16, 0x0af11ad0, 0x2ab33a92, 0xed0fdd6c, 0xcd4dbdaa,
42 0xbb3bab1a, 0x6ca67c87, 0x5cc52c22, 0x3c030c60, 0x1c41edae, 0xfd8fcdec,
43 0xad8b9de8, 0x8dc97c26, 0x5c644c45, 0x3ca22c83, 0x1ce00cc1, 0xef1fff3e,
44 0x95a88589, 0xf56ee54f, 0xd52cc50d, 0x34e224c3, 0x04817466, 0x64475424,
45 0x78066827, 0x18c008e1, 0x28a3cb7d, 0xdb5ceb3f, 0xfb1e8bf9, 0x9bd8abbb,
46 0xdf7caf9b, 0xbfba8fd9, 0x9ff86e17, 0x7e364e55, 0x2e933eb2, 0x0ed11ef0,
47 0xa35ad3bd, 0xc39cf3ff, 0xe3de2462, 0x34430420, 0x64e674c7, 0x44a45485,
48 0xad2abd0b, 0x8d689d49, 0x7e976eb6, 0x5ed54ef4, 0x2e321e51, 0x0e70ff9f,
49 0xefbedfdd, 0xcffcbf1b, 0x9f598f78, 0x918881a9, 0xb1caa1eb, 0xd10cc12d,
50 0xe16f1080, 0x00a130c2, 0x20e35004, 0x40257046, 0x83b99398, 0xa3fbb3da,
51 0x00001021, 0x20423063, 0x408450a5, 0x60c670e7, 0x9129a14a, 0xb16bc18c,
52 0x569546b4, 0xb75ba77a, 0x97198738, 0xf7dfe7fe, 0xc7bc48c4, 0x58e56886,
53 0x4405a7db, 0xb7fa8799, 0xe75ff77e, 0xc71dd73c, 0x26d336f2, 0x069116b0,
54 0x76764615, 0x5634d94c, 0xc96df90e, 0xe92f99c8, 0xb98aa9ab, 0x58444865,
55 0x78a70840, 0x18612802, 0xc9ccd9ed, 0xe98ef9af, 0x89489969, 0xa90ab92b,
56 0xd1ade1ce, 0xf1ef1231, 0x32732252, 0x52b54294, 0x72f762d6, 0x93398318,
57 0xa56ab54b, 0x85289509, 0xf5cfc5ac, 0xd58d3653, 0x26721611, 0x063076d7,
58 0x8d689d49, 0xf7dfe7fe, 0xe98ef9af, 0x063076d7, 0x93398318, 0xb98aa9ab,
59 0x4ad47ab7, 0x6a961a71, 0x0a503a33, 0x2a12dbfd, 0xfbbfeb9e, 0x9b798b58
60};
61
62__IO uint32_t crc_value = 0;
63
69int main(void)
70{
71 system_clock_config();
72
73 at32_board_init();
74
75 /* enable crc clock */
76 crm_periph_clock_enable(CRM_CRC_PERIPH_CLOCK, TRUE);
77
78 crc_data_reset();
79
80 /* compute the crc of "data_buffer" */
81 crc_value = crc_block_calculate((uint32_t *)data_buffer, BUFFER_SIZE);
82
83 if(crc_value == 0xE5DFCF6D)
84 {
85 /* turn on led3 */
86 at32_led_on(LED3);
87 }
88 else
89 {
90 /* turn on led4 */
91 at32_led_on(LED4);
92 }
93
94 while(1)
95 {
96 }
97}
98
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/crc/calculation/src/main.c:36
data_buffer
static const uint32_t data_buffer[120]
Definition: project/at_start_f403/examples/crc/calculation/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/crc/calculation/src/main.c:69
crc_value
__IO uint32_t crc_value
Definition: project/at_start_f403/examples/crc/calculation/src/main.c:62
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crc_block_calculate
uint32_t crc_block_calculate(uint32_t *pbuffer, uint32_t length)
compute the 32-bit crc of a given buffer of data word(32-bit).
Definition: at32f403_crc.c:70
crc_data_reset
void crc_data_reset(void)
reset the crc data register.
Definition: at32f403_crc.c:47
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_CRC_PERIPH_CLOCK
@ CRM_CRC_PERIPH_CLOCK
Definition: at32f403_crm.h:104
TRUE
@ TRUE
Definition: at32f403.h:309
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • crm
  • clock_failure_detection
  • inc
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • crm
  • clock_failure_detection
  • inc
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • crm
  • clock_failure_detection
  • inc
project/at_start_f403/examples/crm/clock_failure_detection/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • crm
  • clock_failure_detection
  • src
project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • crm
  • clock_failure_detection
  • src
project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern void clock_failure_detection_handler(void);
29
43void NMI_Handler(void)
44{
45 clock_failure_detection_handler();
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:105
clock_failure_detection_handler
void clock_failure_detection_handler(void)
clock failure detection handler.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/main.c:85
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/at32f403_int.c:114
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • crm
  • clock_failure_detection
  • src
project/at_start_f403/examples/crm/clock_failure_detection/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36static void clkout_config(void);
37static void sclk_192m_hick_config(void);
38static void wait_stbl(uint32_t delay);
39void clock_failure_detection_handler(void);
40
47static void wait_stbl(uint32_t delay)
48{
49 volatile uint32_t i;
50
51 for(i = 0; i < delay; i++);
52}
53
59static void clkout_config(void)
60{
61 gpio_init_type gpio_init_struct;
62
63 /* enable gpio port clock */
64 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
65
66 /* set default parameter */
67 gpio_default_para_init(&gpio_init_struct);
68
69 /* clkout gpio init */
70 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
71 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
72 gpio_init_struct.gpio_pins = GPIO_PINS_8;
73 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
74 gpio_init(GPIOA, &gpio_init_struct);
75
76 /* config clkout clock */
77 crm_clock_out_set(CRM_CLKOUT_PLL_DIV_4);
78}
79
85void clock_failure_detection_handler(void)
86{
87 /* check clock failure detection flag */
88 if(crm_flag_get(CRM_CLOCK_FAILURE_INT_FLAG) != RESET)
89 {
90 /* disable clock failure detection */
91 crm_clock_failure_detection_enable(FALSE);
92
93 /* config system clock */
94 sclk_192m_hick_config();
95
96 /* clear clock failure detection flag */
97 crm_flag_clear(CRM_CLOCK_FAILURE_INT_FLAG);
98 }
99}
100
119static void sclk_192m_hick_config(void)
120{
121 /* reset crm */
122 crm_reset();
123
124 crm_clock_source_enable(CRM_CLOCK_SOURCE_HICK, TRUE);
125
126 /* wait till hick is ready */
127 while(crm_flag_get(CRM_HICK_STABLE_FLAG) != SET)
128 {
129 }
130
131 /* config pll clock resource */
132 crm_pll_config(CRM_PLL_SOURCE_HICK, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
133
134 /* enable pll */
135 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
136
137 /* wait till pll is ready */
138 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
139 {
140 }
141
142 /* 1step: config ahbclk div8 */
143 crm_ahb_div_set(CRM_AHB_DIV_8);
144
145 crm_apb2_div_set(CRM_APB2_DIV_2);
146
147 crm_apb1_div_set(CRM_APB1_DIV_2);
148
149 /* select pll as system clock source */
150 crm_sysclk_switch(CRM_SCLK_PLL);
151
152 /* wait till pll is used as system clock source */
153 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
154 {
155 }
156
157 /* delay */
158 wait_stbl(PLL_STABLE_DELAY);
159
160 /* 2step: config ahbclk div2 */
161 crm_ahb_div_set(CRM_AHB_DIV_2);
162
163 /* delay */
164 wait_stbl(PLL_STABLE_DELAY);
165
166 /* 3step: config ahbclk to target div */
167 crm_ahb_div_set(CRM_AHB_DIV_1);
168
169 /* update system_core_clock global variable */
170 system_core_clock_update();
171
172 /* config systick delay */
173 delay_init();
174
175 /* config clkout */
176 clkout_config();
177}
178
184int main(void)
185{
186 system_clock_config();
187
188 at32_board_init();
189
190 /* clkout config */
191 clkout_config();
192
193 /* enable clock failure detection */
194 crm_clock_failure_detection_enable(TRUE);
195
196 while(1)
197 {
198 at32_led_toggle(LED2);
199 delay_ms(200);
200 }
201}
202
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
clkout_config
static void clkout_config(void)
clkout configuration.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/main.c:59
clock_failure_detection_handler
void clock_failure_detection_handler(void)
clock failure detection handler.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/main.c:85
main
int main(void)
main function.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/main.c:184
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/main.c:47
sclk_192m_hick_config
static void sclk_192m_hick_config(void)
config sclk 192 mhz with hick clock source.
Definition: project/at_start_f403/examples/crm/clock_failure_detection/src/main.c:119
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
LED2
@ LED2
Definition: at32f403_board.h:61
delay_init
void delay_init()
initialize delay function
Definition: at32f403_board.c:313
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_flag_clear
void crm_flag_clear(uint32_t flag)
clear the crm reset flags
Definition: at32f403_crm.c:398
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_clock_out_set
void crm_clock_out_set(crm_clkout_select_type clkout)
set crm clkout
Definition: at32f403_crm.c:750
crm_clock_failure_detection_enable
void crm_clock_failure_detection_enable(confirm_state new_state)
enable or disable clock failure detection
Definition: at32f403_crm.c:555
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_HICK
@ CRM_CLOCK_SOURCE_HICK
Definition: at32f403_crm.h:316
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_PLL_SOURCE_HICK
@ CRM_PLL_SOURCE_HICK
Definition: at32f403_crm.h:297
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_CLKOUT_PLL_DIV_4
@ CRM_CLKOUT_PLL_DIV_4
Definition: at32f403_crm.h:423
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
CRM_CLOCK_FAILURE_INT_FLAG
#define CRM_CLOCK_FAILURE_INT_FLAG
Definition: at32f403_crm.h:70
CRM_HICK_STABLE_FLAG
#define CRM_HICK_STABLE_FLAG
Definition: at32f403_crm.h:53
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • crm
  • sysclk_switch
  • inc
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • crm
  • sysclk_switch
  • inc
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • crm
  • sysclk_switch
  • inc
project/at_start_f403/examples/crm/sysclk_switch/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • crm
  • sysclk_switch
  • src
project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • crm
  • sysclk_switch
  • src
project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • crm
  • sysclk_switch
  • src
project/at_start_f403/examples/crm/sysclk_switch/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36static void clkout_config(void);
37static void sclk_64m_hick_config(void);
38static void wait_stbl(uint32_t delay);
39static void sclk_96m_hext_config(void);
40static void switch_system_clock(void);
41
48static void wait_stbl(uint32_t delay)
49{
50 volatile uint32_t i;
51
52 for(i = 0; i < delay; i++);
53}
54
60void clkout_config(void)
61{
62 gpio_init_type gpio_init_struct;
63
64 /* enable gpio port clock */
65 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
66
67 /* set default parameter */
68 gpio_default_para_init(&gpio_init_struct);
69
70 /* clkout gpio init */
71 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
72 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
73 gpio_init_struct.gpio_pins = GPIO_PINS_8;
74 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
75 gpio_init(GPIOA, &gpio_init_struct);
76
77 /* config clkout clock */
78 crm_clock_out_set(CRM_CLKOUT_PLL_DIV_4);
79}
80
86static void switch_system_clock(void)
87{
88 if(CRM->cfg_bit.pllrcs == RESET)
89 {
90 sclk_96m_hext_config();
91 }
92 else
93 {
94 sclk_64m_hick_config();
95 }
96}
97
116static void sclk_64m_hick_config(void)
117{
118 /* reset crm */
119 crm_reset();
120
121 crm_clock_source_enable(CRM_CLOCK_SOURCE_HICK, TRUE);
122
123 /* wait till hick is ready */
124 while(crm_flag_get(CRM_HICK_STABLE_FLAG) != SET)
125 {
126 }
127
128 /* config pll clock resource */
129 crm_pll_config(CRM_PLL_SOURCE_HICK, CRM_PLL_MULT_16, CRM_PLL_OUTPUT_RANGE_LE72MHZ);
130
131 /* enable pll */
132 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
133
134 /* wait till pll is ready */
135 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
136 {
137 }
138
139 /* config ahbclk */
140 crm_ahb_div_set(CRM_AHB_DIV_1);
141
142 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
143 crm_apb2_div_set(CRM_APB2_DIV_2);
144
145 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
146 crm_apb1_div_set(CRM_APB1_DIV_2);
147
148 /* select pll as system clock source */
149 crm_sysclk_switch(CRM_SCLK_PLL);
150
151 /* wait till pll is used as system clock source */
152 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
153 {
154 }
155
156 /* delay */
157 wait_stbl(PLL_STABLE_DELAY);
158
159 /* update system_core_clock global variable */
160 system_core_clock_update();
161
162 /* config systick delay */
163 delay_init();
164
165 /* config clkout */
166 clkout_config();
167}
168
187static void sclk_96m_hext_config(void)
188{
189 /* reset crm */
190 crm_reset();
191
192 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
193
194 /* wait for hext stable */
195 wait_stbl(HEXT_STABLE_DELAY);
196
197 /* wait till hext is ready */
198 while(crm_hext_stable_wait() == ERROR)
199 {
200 }
201
202 /* config pll clock resource */
203 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_24, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
204
205 /* enable pll */
206 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
207
208 /* wait till pll is ready */
209 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
210 {
211 }
212
213 /* config ahbclk */
214 crm_ahb_div_set(CRM_AHB_DIV_1);
215
216 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
217 crm_apb2_div_set(CRM_APB2_DIV_2);
218
219 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
220 crm_apb1_div_set(CRM_APB1_DIV_2);
221
222 /* select pll as system clock source */
223 crm_sysclk_switch(CRM_SCLK_PLL);
224
225 /* wait till pll is used as system clock source */
226 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
227 {
228 }
229
230 /* delay */
231 wait_stbl(PLL_STABLE_DELAY);
232
233 /* update system_core_clock global variable */
234 system_core_clock_update();
235
236 /* config systick delay */
237 delay_init();
238
239 /* config clkout */
240 clkout_config();
241}
242
248int main(void)
249{
250 system_clock_config();
251
252 at32_board_init();
253
254 clkout_config();
255
256 while(1)
257 {
258 if(at32_button_press() == USER_BUTTON)
259 {
260 switch_system_clock();
261 at32_led_toggle(LED4);
262 }
263 at32_led_toggle(LED2);
264 delay_ms(100);
265 }
266}
267
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
clkout_config
static void clkout_config(void)
clkout configuration.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/main.c:60
sclk_96m_hext_config
static void sclk_96m_hext_config(void)
config sclk 96 mhz with hext clock source.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/main.c:187
main
int main(void)
main function.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/main.c:248
sclk_64m_hick_config
static void sclk_64m_hick_config(void)
config sclk 64 mhz with hick clock source.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/main.c:116
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/main.c:48
switch_system_clock
static void switch_system_clock(void)
sclk switch function.
Definition: project/at_start_f403/examples/crm/sysclk_switch/src/main.c:86
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
delay_init
void delay_init()
initialize delay function
Definition: at32f403_board.c:313
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_clock_out_set
void crm_clock_out_set(crm_clkout_select_type clkout)
set crm clkout
Definition: at32f403_crm.c:750
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_HICK
@ CRM_CLOCK_SOURCE_HICK
Definition: at32f403_crm.h:316
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_SOURCE_HICK
@ CRM_PLL_SOURCE_HICK
Definition: at32f403_crm.h:297
CRM_PLL_MULT_24
@ CRM_PLL_MULT_24
Definition: at32f403_crm.h:249
CRM_PLL_MULT_16
@ CRM_PLL_MULT_16
Definition: at32f403_crm.h:241
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_CLKOUT_PLL_DIV_4
@ CRM_CLKOUT_PLL_DIV_4
Definition: at32f403_crm.h:423
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_LE72MHZ
@ CRM_PLL_OUTPUT_RANGE_LE72MHZ
Definition: at32f403_crm.h:307
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
CRM_HICK_STABLE_FLAG
#define CRM_HICK_STABLE_FLAG
Definition: at32f403_crm.h:53
CRM
#define CRM
Definition: at32f403_crm.h:785
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • dac
  • double_mode_dma_sinewave
  • inc
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • dac
  • double_mode_dma_sinewave
  • inc
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • dac
  • double_mode_dma_sinewave
  • inc
project/at_start_f403/examples/dac/double_mode_dma_sinewave/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • dac
  • double_mode_dma_sinewave
  • src
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • dac
  • double_mode_dma_sinewave
  • src
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • dac
  • double_mode_dma_sinewave
  • src
project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 dma_init_type dma_init_struct = {0};
38 crm_clocks_freq_type crm_clocks_freq_struct = {0};
39const uint16_t sine12bit[32] = {2047, 2447, 2831, 3185, 3498, 3750, 3939, 4056,
40 4095, 4056, 3939, 3750, 3495, 3185, 2831, 2447,
41 2047, 1647, 1263, 909, 599, 344, 155, 38,
42 0, 38, 155, 344, 599, 909, 1263, 1647};
43uint32_t dualsine12bit[32];
44uint32_t idx = 0;
45
51int main(void)
52{
53 system_clock_config();
54
55 at32_board_init();
56
57 /* turn led2/led3/led4 on */
58 at32_led_on(LED2);
59 at32_led_on(LED3);
60 at32_led_on(LED4);
61
62 /* enable dac/tmr2/gpioa clock */
63 crm_periph_clock_enable(CRM_DMA2_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_DAC_PERIPH_CLOCK, TRUE);
65 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
66 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
67
68 /* once the dac is enabled, the corresponding gpio pin is automatically
69 connected to the dac converter. in order to avoid parasitic consumption,
70 the gpio pin should be configured in analog */
71 gpio_init_struct.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5;
72 gpio_init_struct.gpio_mode = GPIO_MODE_ANALOG;
73 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
74 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
75 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
76 gpio_init(GPIOA, &gpio_init_struct);
77
78 /* get system clock */
79 crm_clocks_freq_get(&crm_clocks_freq_struct);
80
81 /* (systemclock/(systemclock/1000000))/100 = 10KHz */
82 tmr_base_init(TMR2, 99, (crm_clocks_freq_struct.sclk_freq/1000000 - 1));
83 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
84
85 /* primary tmr2 output selection */
86 tmr_primary_mode_select(TMR2, TMR_PRIMARY_SEL_OVERFLOW);
87
88 /* dac1 and dac2 configuration */
89 dac_trigger_select(DAC1_SELECT, DAC_TMR2_TRGOUT_EVENT);
90 dac_trigger_select(DAC2_SELECT, DAC_TMR2_TRGOUT_EVENT);
91
92 dac_trigger_enable(DAC1_SELECT, TRUE);
93 dac_trigger_enable(DAC2_SELECT, TRUE);
94
95 dac_wave_generate(DAC1_SELECT, DAC_WAVE_GENERATE_NONE);
96 dac_wave_generate(DAC2_SELECT, DAC_WAVE_GENERATE_NONE);
97
98 dac_output_buffer_enable(DAC1_SELECT, TRUE);
99 dac_output_buffer_enable(DAC2_SELECT, TRUE);
100
101 dac_dma_enable(DAC1_SELECT, TRUE);
102 dac_dma_enable(DAC2_SELECT, TRUE);
103
104 /* fill sine32bit table */
105 for(idx = 0; idx < 32; idx++)
106 {
107 dualsine12bit[idx] = (sine12bit[idx] << 16) + (sine12bit[idx]);
108 }
109
110 /* dma1 channel1 configuration */
111 dma_reset(DMA2_CHANNEL4);
112 dma_init_struct.buffer_size = 32;
113 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
114 dma_init_struct.memory_base_addr = (uint32_t)dualsine12bit;
115 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_WORD;
116 dma_init_struct.memory_inc_enable = TRUE;
117 dma_init_struct.peripheral_base_addr = (uint32_t)0x40007420;
118 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_WORD;
119 dma_init_struct.peripheral_inc_enable = FALSE;
120 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
121 dma_init_struct.loop_mode_enable = TRUE;
122 dma_init(DMA2_CHANNEL4, &dma_init_struct);
123
124 dma_channel_enable(DMA2_CHANNEL4, TRUE);
125
126 /* enable dac1: once the dac1 is enabled, pa.04 is
127 automatically connected to the dac converter. */
128 dac_enable(DAC1_SELECT, TRUE);
129
130 /* enable dac2: once the dac2 is enabled, pa.05 is
131 automatically connected to the dac converter. */
132 dac_enable(DAC2_SELECT, TRUE);
133
134 /* enable tmr2 */
135 tmr_counter_enable(TMR2, TRUE);
136
137 while(1)
138 {
139 }
140}
141
142
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
idx
uint32_t idx
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:44
sine12bit
const uint16_t sine12bit[32]
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:39
main
int main(void)
main function.
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:51
dualsine12bit
uint32_t dualsine12bit[32]
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:43
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_DAC_PERIPH_CLOCK
@ CRM_DAC_PERIPH_CLOCK
Definition: at32f403_crm.h:153
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_DMA2_PERIPH_CLOCK
@ CRM_DMA2_PERIPH_CLOCK
Definition: at32f403_crm.h:103
dac_output_buffer_enable
void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer
Definition: at32f403_dac.c:86
dac_dma_enable
void dac_dma_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma
Definition: at32f403_dac.c:266
dac_wave_generate
void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave
Definition: at32f403_dac.c:205
dac_trigger_select
void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger
Definition: at32f403_dac.c:144
dac_enable
void dac_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac
Definition: at32f403_dac.c:62
dac_trigger_enable
void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger
Definition: at32f403_dac.c:111
DAC2_SELECT
@ DAC2_SELECT
Definition: at32f403_dac.h:58
DAC1_SELECT
@ DAC1_SELECT
Definition: at32f403_dac.h:57
DAC_WAVE_GENERATE_NONE
@ DAC_WAVE_GENERATE_NONE
Definition: at32f403_dac.h:81
DAC_TMR2_TRGOUT_EVENT
@ DAC_TMR2_TRGOUT_EVENT
Definition: at32f403_dac.h:70
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA2_CHANNEL4
#define DMA2_CHANNEL4
Definition: at32f403_dma.h:367
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • dac
  • double_mode_dma_squarewave
  • inc
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • dac
  • double_mode_dma_squarewave
  • inc
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • dac
  • double_mode_dma_squarewave
  • inc
project/at_start_f403/examples/dac/double_mode_dma_squarewave/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • dac
  • double_mode_dma_squarewave
  • src
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • dac
  • double_mode_dma_squarewave
  • src
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
135
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • dac
  • double_mode_dma_squarewave
  • src
project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
38 gpio_init_type gpio_init_struct = {0};
39 dma_init_type dma_init_struct = {0};
40
41uint32_t dualsquare12bit[2] = {(0xfff | (0xfff << 16)), 0};
42
48int main(void)
49{
50 system_clock_config();
51
52 at32_board_init();
53
54 /* turn led2/led3/led4 on */
55 at32_led_on(LED2);
56 at32_led_on(LED3);
57 at32_led_on(LED4);
58
59 /* enable dac/dma1/gpioa clock */
60 crm_periph_clock_enable(CRM_DMA2_PERIPH_CLOCK, TRUE);
61 crm_periph_clock_enable(CRM_DAC_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
63
64 /* once the dac is enabled, the corresponding gpio pin is automatically
65 connected to the dac converter. in order to avoid parasitic consumption,
66 the gpio pin should be configured in analog */
67 gpio_init_struct.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5;
68 gpio_init_struct.gpio_mode = GPIO_MODE_ANALOG;
69 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
70 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
71 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
72 gpio_init(GPIOA, &gpio_init_struct);
73
74 /* dac1 and dac2 configuration */
75 dac_trigger_select(DAC1_SELECT, DAC_SOFTWARE_TRIGGER);
76 dac_trigger_select(DAC2_SELECT, DAC_SOFTWARE_TRIGGER);
77
78 dac_trigger_enable(DAC1_SELECT, TRUE);
79 dac_trigger_enable(DAC2_SELECT, TRUE);
80
81 dac_wave_generate(DAC1_SELECT, DAC_WAVE_GENERATE_NONE);
82 dac_wave_generate(DAC2_SELECT, DAC_WAVE_GENERATE_NONE);
83
84 dac_output_buffer_enable(DAC1_SELECT, TRUE);
85 dac_output_buffer_enable(DAC2_SELECT, TRUE);
86
87 dac_dma_enable(DAC1_SELECT, TRUE);
88 dac_dma_enable(DAC2_SELECT, TRUE);
89
90 /* dma1 channel1 configuration */
91 dma_reset(DMA2_CHANNEL4);
92 dma_init_struct.buffer_size = 2;
93 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
94 dma_init_struct.memory_base_addr = (uint32_t)dualsquare12bit;
95 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_WORD;
96 dma_init_struct.memory_inc_enable = TRUE;
97 dma_init_struct.peripheral_base_addr = (uint32_t)0x40007420;
98 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_WORD;
99 dma_init_struct.peripheral_inc_enable = FALSE;
100 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
101 dma_init_struct.loop_mode_enable = TRUE;
102 dma_init(DMA2_CHANNEL4, &dma_init_struct);
103
104 dma_channel_enable(DMA2_CHANNEL4, TRUE);
105
106 /* enable dac1: once the dac1 is enabled, pa.04 is
107 automatically connected to the dac converter. */
108 dac_enable(DAC1_SELECT, TRUE);
109
110 /* enable dac2: once the dac2 is enabled, pa.05 is
111 automatically connected to the dac converter. */
112 dac_enable(DAC2_SELECT, TRUE);
113
114 while(1)
115 {
116 delay_us(1000);
117 dac_software_trigger_generate(DAC1_SELECT);
118 dac_software_trigger_generate(DAC2_SELECT);
119 }
120}
121
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c:38
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c:39
main
int main(void)
main function.
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c:48
dualsquare12bit
uint32_t dualsquare12bit[2]
Definition: project/at_start_f403/examples/dac/double_mode_dma_squarewave/src/main.c:41
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_DAC_PERIPH_CLOCK
@ CRM_DAC_PERIPH_CLOCK
Definition: at32f403_crm.h:153
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_DMA2_PERIPH_CLOCK
@ CRM_DMA2_PERIPH_CLOCK
Definition: at32f403_crm.h:103
dac_output_buffer_enable
void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer
Definition: at32f403_dac.c:86
dac_dma_enable
void dac_dma_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma
Definition: at32f403_dac.c:266
dac_wave_generate
void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave
Definition: at32f403_dac.c:205
dac_software_trigger_generate
void dac_software_trigger_generate(dac_select_type dac_select)
generate dac software trigger
Definition: at32f403_dac.c:167
dac_trigger_select
void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger
Definition: at32f403_dac.c:144
dac_enable
void dac_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac
Definition: at32f403_dac.c:62
dac_trigger_enable
void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger
Definition: at32f403_dac.c:111
DAC2_SELECT
@ DAC2_SELECT
Definition: at32f403_dac.h:58
DAC1_SELECT
@ DAC1_SELECT
Definition: at32f403_dac.h:57
DAC_WAVE_GENERATE_NONE
@ DAC_WAVE_GENERATE_NONE
Definition: at32f403_dac.h:81
DAC_SOFTWARE_TRIGGER
@ DAC_SOFTWARE_TRIGGER
Definition: at32f403_dac.h:73
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA2_CHANNEL4
#define DMA2_CHANNEL4
Definition: at32f403_dma.h:367
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • dac
  • one_dac_dma_escalator
  • inc
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • dac
  • one_dac_dma_escalator
  • inc
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • dac
  • one_dac_dma_escalator
  • inc
project/at_start_f403/examples/dac/one_dac_dma_escalator/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • dac
  • one_dac_dma_escalator
  • src
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • dac
  • one_dac_dma_escalator
  • src
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
135
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • dac
  • one_dac_dma_escalator
  • src
project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
37 gpio_init_type gpio_init_struct = {0};
38 dma_init_type dma_init_struct = {0};
39 crm_clocks_freq_type crm_clocks_freq_struct = {0};
40const uint8_t escalator8bit[6] = {0x0, 0x33, 0x66, 0x99, 0xCC, 0xFF};
41
47int main(void)
48{
49 system_clock_config();
50
51 at32_board_init();
52
53 /* turn led2/led3/led4 on */
54 at32_led_on(LED2);
55 at32_led_on(LED3);
56 at32_led_on(LED4);
57
58 /* enable dac/dma1/gpioa/tmr2 clock */
59 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
60 crm_periph_clock_enable(CRM_DMA2_PERIPH_CLOCK, TRUE);
61 crm_periph_clock_enable(CRM_DAC_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
63
64 /* once the dac is enabled, the corresponding gpio pin is automatically
65 connected to the dac converter. in order to avoid parasitic consumption,
66 the gpio pin should be configured in analog */
67 gpio_init_struct.gpio_pins = GPIO_PINS_4;
68 gpio_init_struct.gpio_mode = GPIO_MODE_ANALOG;
69 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
70 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
71 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
72 gpio_init(GPIOA, &gpio_init_struct);
73
74 /* get system clock */
75 crm_clocks_freq_get(&crm_clocks_freq_struct);
76
77 /* (systemclock/(systemclock/1000000))/1000 = 1KHz */
78 tmr_base_init(TMR2, 999, (crm_clocks_freq_struct.sclk_freq/1000000 - 1));
79 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
80
81 /* primary tmr2 output selection */
82 tmr_primary_mode_select(TMR2, TMR_PRIMARY_SEL_OVERFLOW);
83
84 /* dac1 configuration */
85 dac_trigger_select(DAC1_SELECT, DAC_TMR2_TRGOUT_EVENT);
86
87 dac_trigger_enable(DAC1_SELECT, TRUE);
88
89 dac_wave_generate(DAC1_SELECT, DAC_WAVE_GENERATE_NONE);
90
91 dac_output_buffer_enable(DAC1_SELECT, FALSE);
92
93 dac_dma_enable(DAC1_SELECT, TRUE);
94
95 /* dma1 channel2 configuration */
96 dma_reset(DMA2_CHANNEL3);
97 dma_init_struct.buffer_size = 6;
98 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
99 dma_init_struct.memory_base_addr = (uint32_t)escalator8bit;
100 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
101 dma_init_struct.memory_inc_enable = TRUE;
102 dma_init_struct.peripheral_base_addr = (uint32_t)0x40007410;
103 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
104 dma_init_struct.peripheral_inc_enable = FALSE;
105 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
106 dma_init_struct.loop_mode_enable = TRUE;
107 dma_init(DMA2_CHANNEL3, &dma_init_struct);
108
109
110 dma_channel_enable(DMA2_CHANNEL3, TRUE);
111
112 /* enable dac1: once the dac1 is enabled, pa.04 is
113 automatically connected to the dac converter. */
114 dac_enable(DAC1_SELECT, TRUE);
115
116 /* enable tmr2 */
117 tmr_counter_enable(TMR2, TRUE);
118 while(1)
119 {
120 }
121}
122
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c:37
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c:38
escalator8bit
const uint8_t escalator8bit[6]
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c:40
main
int main(void)
main function.
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c:47
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/one_dac_dma_escalator/src/main.c:39
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_DAC_PERIPH_CLOCK
@ CRM_DAC_PERIPH_CLOCK
Definition: at32f403_crm.h:153
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_DMA2_PERIPH_CLOCK
@ CRM_DMA2_PERIPH_CLOCK
Definition: at32f403_crm.h:103
dac_output_buffer_enable
void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer
Definition: at32f403_dac.c:86
dac_dma_enable
void dac_dma_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma
Definition: at32f403_dac.c:266
dac_wave_generate
void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave
Definition: at32f403_dac.c:205
dac_trigger_select
void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger
Definition: at32f403_dac.c:144
dac_enable
void dac_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac
Definition: at32f403_dac.c:62
dac_trigger_enable
void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger
Definition: at32f403_dac.c:111
DAC1_SELECT
@ DAC1_SELECT
Definition: at32f403_dac.h:57
DAC_WAVE_GENERATE_NONE
@ DAC_WAVE_GENERATE_NONE
Definition: at32f403_dac.h:81
DAC_TMR2_TRGOUT_EVENT
@ DAC_TMR2_TRGOUT_EVENT
Definition: at32f403_dac.h:70
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA2_CHANNEL3
#define DMA2_CHANNEL3
Definition: at32f403_dma.h:366
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • dac
  • one_dac_noisewave
  • inc
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • dac
  • one_dac_noisewave
  • inc
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • dac
  • one_dac_noisewave
  • inc
project/at_start_f403/examples/dac/one_dac_noisewave/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • dac
  • one_dac_noisewave
  • src
project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • dac
  • one_dac_noisewave
  • src
project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
135
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • dac
  • one_dac_noisewave
  • src
project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
37 gpio_init_type gpio_init_struct = {0};
38
44int main(void)
45{
46 system_clock_config();
47
48 at32_board_init();
49
50 /* turn led2/led3/led4 on */
51 at32_led_on(LED2);
52 at32_led_on(LED3);
53 at32_led_on(LED4);
54
55 /* enable dac/gpioa clock */
56 crm_periph_clock_enable(CRM_DAC_PERIPH_CLOCK, TRUE);
57 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
58
59 /* once the dac is enabled, the corresponding gpio pin is automatically
60 connected to the dac converter. in order to avoid parasitic consumption,
61 the gpio pin should be configured in analog */
62 gpio_init_struct.gpio_pins = GPIO_PINS_4;
63 gpio_init_struct.gpio_mode = GPIO_MODE_ANALOG;
64 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
65 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
66 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
67 gpio_init(GPIOA, &gpio_init_struct);
68
69 /* dac1 configuration */
70 dac_trigger_select(DAC1_SELECT, DAC_SOFTWARE_TRIGGER);
71
72 dac_trigger_enable(DAC1_SELECT, TRUE);
73
74 dac_wave_generate(DAC1_SELECT, DAC_WAVE_GENERATE_NOISE);
75
76 dac_mask_amplitude_select(DAC1_SELECT, DAC_LSFR_BITB0_AMPLITUDE_4095);
77
78 dac_output_buffer_enable(DAC1_SELECT, TRUE);
79
80 /* enable dac1: once the dac1 is enabled, pa.04 is
81 automatically connected to the dac converter. */
82 dac_enable(DAC1_SELECT, TRUE);
83
84 while(1)
85 {
86 dac_software_trigger_generate(DAC1_SELECT);
87 delay_us(1);
88 }
89}
90
91
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/dac/one_dac_noisewave/src/main.c:44
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_DAC_PERIPH_CLOCK
@ CRM_DAC_PERIPH_CLOCK
Definition: at32f403_crm.h:153
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
dac_output_buffer_enable
void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer
Definition: at32f403_dac.c:86
dac_wave_generate
void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave
Definition: at32f403_dac.c:205
dac_software_trigger_generate
void dac_software_trigger_generate(dac_select_type dac_select)
generate dac software trigger
Definition: at32f403_dac.c:167
dac_mask_amplitude_select
void dac_mask_amplitude_select(dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude
Definition: at32f403_dac.c:242
dac_trigger_select
void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger
Definition: at32f403_dac.c:144
dac_enable
void dac_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac
Definition: at32f403_dac.c:62
dac_trigger_enable
void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger
Definition: at32f403_dac.c:111
DAC1_SELECT
@ DAC1_SELECT
Definition: at32f403_dac.h:57
DAC_WAVE_GENERATE_NOISE
@ DAC_WAVE_GENERATE_NOISE
Definition: at32f403_dac.h:82
DAC_LSFR_BITB0_AMPLITUDE_4095
@ DAC_LSFR_BITB0_AMPLITUDE_4095
Definition: at32f403_dac.h:102
DAC_SOFTWARE_TRIGGER
@ DAC_SOFTWARE_TRIGGER
Definition: at32f403_dac.h:73
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • dac
  • two_dac_trianglewave
  • inc
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • dac
  • two_dac_trianglewave
  • inc
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • dac
  • two_dac_trianglewave
  • inc
project/at_start_f403/examples/dac/two_dac_trianglewave/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • dac
  • two_dac_trianglewave
  • src
project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • dac
  • two_dac_trianglewave
  • src
project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • dac
  • two_dac_trianglewave
  • src
project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
37 gpio_init_type gpio_init_struct = {0};
38 crm_clocks_freq_type crm_clocks_freq_struct = {0};
44int main(void)
45{
46 system_clock_config();
47
48 at32_board_init();
49
50 /* turn led2/led3/led4 on */
51 at32_led_on(LED2);
52 at32_led_on(LED3);
53 at32_led_on(LED4);
54
55 /* enable dac/tmr2/gpioa clock */
56 crm_periph_clock_enable(CRM_DAC_PERIPH_CLOCK, TRUE);
57 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
58 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
59
60 /* once the dac is enabled, the corresponding gpio pin is automatically
61 connected to the dac converter. in order to avoid parasitic consumption,
62 the gpio pin should be configured in analog */
63 gpio_init_struct.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5;
64 gpio_init_struct.gpio_mode = GPIO_MODE_ANALOG;
65 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
66 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
67 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
68 gpio_init(GPIOA, &gpio_init_struct);
69
70 /* get system clock */
71 crm_clocks_freq_get(&crm_clocks_freq_struct);
72
73 /* (systemclock/(systemclock/1000000))/100 = 10KHz */
74 tmr_base_init(TMR2, 99, (crm_clocks_freq_struct.sclk_freq/1000000 - 1));
75 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
76
77 /* primary tmr2 output selection */
78 tmr_primary_mode_select(TMR2, TMR_PRIMARY_SEL_OVERFLOW);
79
80 /* dac1 and dac2 configuration */
81 dac_trigger_select(DAC1_SELECT, DAC_TMR2_TRGOUT_EVENT);
82 dac_trigger_select(DAC2_SELECT, DAC_TMR2_TRGOUT_EVENT);
83
84 dac_trigger_enable(DAC1_SELECT, TRUE);
85 dac_trigger_enable(DAC2_SELECT, TRUE);
86
87 dac_wave_generate(DAC1_SELECT, DAC_WAVE_GENERATE_TRIANGLE);
88 dac_wave_generate(DAC2_SELECT, DAC_WAVE_GENERATE_TRIANGLE);
89
90 dac_mask_amplitude_select(DAC1_SELECT, DAC_LSFR_BIT90_AMPLITUDE_1023);
91 dac_mask_amplitude_select(DAC2_SELECT, DAC_LSFR_BITA0_AMPLITUDE_2047);
92
93 dac_output_buffer_enable(DAC1_SELECT, TRUE);
94 dac_output_buffer_enable(DAC2_SELECT, TRUE);
95
96 dac_dma_enable(DAC1_SELECT, TRUE);
97 dac_dma_enable(DAC2_SELECT, TRUE);
98
99 /* enable dac1: once the dac1 is enabled, pa.04 is
100 automatically connected to the dac converter. */
101 dac_enable(DAC1_SELECT, TRUE);
102
103 /* enable dac2: once the dac2 is enabled, pa.05 is
104 automatically connected to the dac converter. */
105 dac_enable(DAC2_SELECT, TRUE);
106
107 dac_dual_data_set(DAC_DUAL_12BIT_RIGHT, 0x100, 0x100);
108
109 /* enable tmr2 */
110 tmr_counter_enable(TMR2, TRUE);
111
112 while(1)
113 {
114 }
115}
116
117
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c:44
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/two_dac_trianglewave/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_DAC_PERIPH_CLOCK
@ CRM_DAC_PERIPH_CLOCK
Definition: at32f403_crm.h:153
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
dac_output_buffer_enable
void dac_output_buffer_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac output buffer
Definition: at32f403_dac.c:86
dac_dma_enable
void dac_dma_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac dma
Definition: at32f403_dac.c:266
dac_wave_generate
void dac_wave_generate(dac_select_type dac_select, dac_wave_type dac_wave)
generate dac wave
Definition: at32f403_dac.c:205
dac_mask_amplitude_select
void dac_mask_amplitude_select(dac_select_type dac_select, dac_mask_amplitude_type dac_mask_amplitude)
select dac mask amplitude
Definition: at32f403_dac.c:242
dac_trigger_select
void dac_trigger_select(dac_select_type dac_select, dac_trigger_type dac_trigger_source)
select dac trigger
Definition: at32f403_dac.c:144
dac_enable
void dac_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac
Definition: at32f403_dac.c:62
dac_dual_data_set
void dac_dual_data_set(dac_dual_data_type dac_dual, uint16_t data1, uint16_t data2)
set dac dual data
Definition: at32f403_dac.c:347
dac_trigger_enable
void dac_trigger_enable(dac_select_type dac_select, confirm_state new_state)
enable or disable dac trigger
Definition: at32f403_dac.c:111
DAC2_SELECT
@ DAC2_SELECT
Definition: at32f403_dac.h:58
DAC1_SELECT
@ DAC1_SELECT
Definition: at32f403_dac.h:57
DAC_WAVE_GENERATE_TRIANGLE
@ DAC_WAVE_GENERATE_TRIANGLE
Definition: at32f403_dac.h:83
DAC_LSFR_BIT90_AMPLITUDE_1023
@ DAC_LSFR_BIT90_AMPLITUDE_1023
Definition: at32f403_dac.h:100
DAC_LSFR_BITA0_AMPLITUDE_2047
@ DAC_LSFR_BITA0_AMPLITUDE_2047
Definition: at32f403_dac.h:101
DAC_TMR2_TRGOUT_EVENT
@ DAC_TMR2_TRGOUT_EVENT
Definition: at32f403_dac.h:70
DAC_DUAL_12BIT_RIGHT
@ DAC_DUAL_12BIT_RIGHT
Definition: at32f403_dac.h:130
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_ANALOG
@ GPIO_MODE_ANALOG
Definition: at32f403_gpio.h:145
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • debug
  • tmr1
  • inc
project/at_start_f403/examples/debug/tmr1/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • debug
  • tmr1
  • inc
project/at_start_f403/examples/debug/tmr1/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • debug
  • tmr1
  • inc
project/at_start_f403/examples/debug/tmr1/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • debug
  • tmr1
  • src
project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • debug
  • tmr1
  • src
project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
133
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/debug/tmr1/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • debug
  • tmr1
  • src
project/at_start_f403/examples/debug/tmr1/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38uint16_t counter = 0;
39
45void TMR1_OVF_TMR10_IRQHandler(void)
46{
47 if(tmr_flag_get(TMR1, TMR_OVF_FLAG) != RESET)
48 {
49 /* add user code... */
50 at32_led_toggle(LED3);
51 tmr_flag_clear(TMR1, TMR_OVF_FLAG);
52 }
53}
54
60int main(void)
61{
62 system_clock_config();
63
64 at32_board_init();
65
66 /* get system clock */
67 crm_clocks_freq_get(&crm_clocks_freq_struct);
68
69 /* turn led2/led3/led4 on */
70 at32_led_on(LED2);
71 at32_led_on(LED3);
72 at32_led_on(LED4);
73
74 /* enable tmr1 clock */
75 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
76
77 /* enable tmr1 debug mode */
78 debug_periph_mode_set(DEBUG_TMR1_PAUSE, TRUE);
79
80 /* tmr1 configuration */
81 tmr_base_init(TMR1, 10000, 0);
82 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
83
84 /* overflow interrupt enable */
85 tmr_interrupt_enable(TMR1, TMR_OVF_INT, TRUE);
86
87 /* tmr1 interrupt nvic init */
88 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
89 nvic_irq_enable(TMR1_OVF_TMR10_IRQn, 1, 0);
90
91 /* enable tmr1 */
92 tmr_counter_enable(TMR1, TRUE);
93
94 while(1)
95 {
96 /* in debug mode,tmr1 counter will pause */
97 counter = tmr_counter_value_get(TMR1);
98 counter = tmr_counter_value_get(TMR1);
99 counter = tmr_counter_value_get(TMR1);
100 counter = tmr_counter_value_get(TMR1);
101 counter = tmr_counter_value_get(TMR1);
102 }
103}
104
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
main
int main(void)
main function.
Definition: project/at_start_f403/examples/debug/tmr1/src/main.c:60
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/debug/tmr1/src/main.c:37
TMR1_OVF_TMR10_IRQHandler
void TMR1_OVF_TMR10_IRQHandler(void)
this function handles tmr1 overflow handler.
Definition: project/at_start_f403/examples/debug/tmr1/src/main.c:45
counter
uint16_t counter
Definition: project/at_start_f403/examples/debug/tmr1/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
TMR1_OVF_TMR10_IRQn
@ TMR1_OVF_TMR10_IRQn
Definition: at32f403.h:204
debug_periph_mode_set
void debug_periph_mode_set(uint32_t periph_debug_mode, confirm_state new_state)
set periph debug mode
Definition: at32f403_debug.c:71
DEBUG_TMR1_PAUSE
#define DEBUG_TMR1_PAUSE
Definition: at32f403_debug.h:54
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_counter_value_get
uint32_t tmr_counter_value_get(tmr_type *tmr_x)
get tmr counter value
Definition: at32f403_tmr.c:288
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_OVF_FLAG
#define TMR_OVF_FLAG
Definition: at32f403_tmr.h:50
TMR_OVF_INT
#define TMR_OVF_INT
Definition: at32f403_tmr.h:72
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • dma
  • data_to_gpio
  • inc
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • dma
  • data_to_gpio
  • inc
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • dma
  • data_to_gpio
  • inc
project/at_start_f403/examples/dma/data_to_gpio/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • dma
  • data_to_gpio
  • src
project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • dma
  • data_to_gpio
  • src
project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • dma
  • data_to_gpio
  • src
project/at_start_f403/examples/dma/data_to_gpio/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 dma_init_type dma_init_struct = {0};
38
39#define BUFFER_SIZE 16
40uint16_t src_buffer[BUFFER_SIZE] = {0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008,
41 0x0009, 0x000A, 0x000B, 0x000C, 0x000D, 0x000E, 0x000F, 0x0010};
42
48void DMA1_Channel2_IRQHandler(void)
49{
50 if(dma_flag_get(DMA1_FDT2_FLAG) != RESET)
51 {
52 /* turn led2/led3/led4 on */
53 at32_led_on(LED2);
54 at32_led_on(LED3);
55 at32_led_on(LED4);
56 dma_flag_clear(DMA1_FDT2_FLAG);
57 }
58}
59
65int main(void)
66{
67 system_clock_config();
68
69 at32_board_init();
70
71 /* enable dma1/gpioc/tmr2 clock */
72 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
73 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
74 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
75
76 /* config gpioc pin for output mode */
77 gpio_init_struct.gpio_pins = GPIO_PINS_ALL;
78 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
79 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
80 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
81 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
82 gpio_init(GPIOC, &gpio_init_struct);
83
84 tmr_base_init(TMR2, 0xFF, 0);
85 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
86
87 /* enable tmr2 overflow dma request */
88 tmr_dma_request_enable(TMR2, TMR_OVERFLOW_DMA_REQUEST, TRUE);
89
90 /* dma2 channel1 configuration */
91 dma_reset(DMA1_CHANNEL2);
92 dma_init_struct.buffer_size = BUFFER_SIZE;
93 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
94 dma_init_struct.memory_base_addr = (uint32_t)src_buffer;
95 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
96 dma_init_struct.memory_inc_enable = TRUE;
97 dma_init_struct.peripheral_base_addr = (uint32_t)0x4001100C;
98 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
99 dma_init_struct.peripheral_inc_enable = FALSE;
100 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
101 dma_init_struct.loop_mode_enable = FALSE;
102 dma_init(DMA1_CHANNEL2, &dma_init_struct);
103
104 /* enable transfer full data interrupt */
105 dma_interrupt_enable(DMA1_CHANNEL2, DMA_FDT_INT, TRUE);
106
107 /* dma2 channel1 interrupt nvic init */
108 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
109 nvic_irq_enable(DMA1_Channel2_IRQn, 1, 0);
110
111
112 /* enable dma channel */
113 dma_channel_enable(DMA1_CHANNEL2, TRUE);
114
115 /* enable tmr2 */
116 tmr_counter_enable(TMR2, TRUE);
117
118 while(1)
119 {
120 }
121}
122
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/main.c:36
DMA1_Channel2_IRQHandler
void DMA1_Channel2_IRQHandler(void)
this function handles DMA2 channel1 handler.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/main.c:48
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/main.c:37
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/main.c:39
main
int main(void)
main function.
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/main.c:65
src_buffer
uint16_t src_buffer[16]
Definition: project/at_start_f403/examples/dma/data_to_gpio/src/main.c:40
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
DMA1_Channel2_IRQn
@ DMA1_Channel2_IRQn
Definition: at32f403.h:190
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA1_FDT2_FLAG
#define DMA1_FDT2_FLAG
Definition: at32f403_dma.h:68
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL2
#define DMA1_CHANNEL2
Definition: at32f403_dma.h:356
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_ALL
#define GPIO_PINS_ALL
Definition: at32f403_gpio.h:65
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_dma_request_enable
void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request
Definition: at32f403_tmr.c:1301
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_OVERFLOW_DMA_REQUEST
@ TMR_OVERFLOW_DMA_REQUEST
Definition: at32f403_tmr.h:267
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • dma
  • flash_to_sram
  • inc
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • dma
  • flash_to_sram
  • inc
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • dma
  • flash_to_sram
  • inc
project/at_start_f403/examples/dma/flash_to_sram/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • dma
  • flash_to_sram
  • src
project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • dma
  • flash_to_sram
  • src
project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
135
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • dma
  • flash_to_sram
  • src
project/at_start_f403/examples/dma/flash_to_sram/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
37#define BUFFER_SIZE 32
38
39const uint32_t src_const_buffer[BUFFER_SIZE]= {0x01020304, 0x05060708, 0x090A0B0C, 0x0D0E0F10,
40 0x11121314, 0x15161718, 0x191A1B1C, 0x1D1E1F20,
41 0x21222324, 0x25262728, 0x292A2B2C, 0x2D2E2F30,
42 0x31323334, 0x35363738, 0x393A3B3C, 0x3D3E3F40,
43 0x41424344, 0x45464748, 0x494A4B4C, 0x4D4E4F50,
44 0x51525354, 0x55565758, 0x595A5B5C, 0x5D5E5F60,
45 0x61626364, 0x65666768, 0x696A6B6C, 0x6D6E6F70,
46 0x71727374, 0x75767778, 0x797A7B7C, 0x7D7E7F80};
47uint32_t dst_buffer[BUFFER_SIZE];
48 gpio_init_type gpio_init_struct = {0};
49 dma_init_type dma_init_struct = {0};
50__IO uint32_t data_counter_end = 0x01; /* this variable should not be initialized to 0 */
51 error_status transfer_status = ERROR;
52
53 error_status buffer_compare(const uint32_t* pbuffer, uint32_t* pbuffer1, uint16_t buffer_length);
54
60void DMA1_Channel1_IRQHandler(void)
61{
62 if(dma_flag_get(DMA1_FDT1_FLAG) != RESET)
63 {
64 data_counter_end = 0;
65 dma_flag_clear(DMA1_FDT1_FLAG);
66 }
67}
68
76 error_status buffer_compare(const uint32_t* pbuffer, uint32_t* pbuffer1, uint16_t buffer_length)
77{
78 while(buffer_length--)
79 {
80 if(*pbuffer != *pbuffer1)
81 {
82 return ERROR;
83 }
84
85 pbuffer++;
86 pbuffer1++;
87 }
88
89 return SUCCESS;
90}
91
97int main(void)
98{
99 system_clock_config();
100
101 at32_board_init();
102
103 /* enable dma1 clock */
104 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
105
106 /* dma1 channel1 configuration */
107 dma_reset(DMA1_CHANNEL1);
108 dma_init_struct.buffer_size = BUFFER_SIZE;
109 dma_init_struct.direction = DMA_DIR_MEMORY_TO_MEMORY;
110 dma_init_struct.memory_base_addr = (uint32_t)dst_buffer;
111 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_WORD;
112 dma_init_struct.memory_inc_enable = TRUE;
113 dma_init_struct.peripheral_base_addr = (uint32_t)src_const_buffer;
114 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_WORD;
115 dma_init_struct.peripheral_inc_enable = TRUE;
116 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
117 dma_init_struct.loop_mode_enable = FALSE;
118 dma_init(DMA1_CHANNEL1, &dma_init_struct);
119
120 /* enable transfer full data interrupt */
121 dma_interrupt_enable(DMA1_CHANNEL1, DMA_FDT_INT, TRUE);
122
123 /* dma1 channel1 interrupt nvic init */
124 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
125 nvic_irq_enable(DMA1_Channel1_IRQn, 1, 0);
126
127 dma_channel_enable(DMA1_CHANNEL1, TRUE);
128
129 /* wait the end of transmission */
130 while(data_counter_end != 0)
131 {
132 }
133
134 /* check if the transmitted and received data are equal */
135 transfer_status = buffer_compare(src_const_buffer, dst_buffer, BUFFER_SIZE);
136
137 /* transfer_status = passed, if the transmitted and received data are the same
138 transfer_status = failed, if the transmitted and received data are different */
139 if(transfer_status == SUCCESS)
140 {
141 /* turn led2/led3/led4 on */
142 at32_led_on(LED2);
143 at32_led_on(LED3);
144 at32_led_on(LED4);
145 }
146
147 while(1)
148 {
149 }
150}
151
152
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:48
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:49
src_const_buffer
const uint32_t src_const_buffer[32]
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:39
data_counter_end
__IO uint32_t data_counter_end
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:50
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:37
DMA1_Channel1_IRQHandler
void DMA1_Channel1_IRQHandler(void)
this function handles dma1 channel1 handler.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:60
main
int main(void)
main function.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:97
dst_buffer
uint32_t dst_buffer[32]
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:47
buffer_compare
error_status buffer_compare(const uint32_t *pbuffer, uint32_t *pbuffer1, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:76
transfer_status
error_status transfer_status
Definition: project/at_start_f403/examples/dma/flash_to_sram/src/main.c:51
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
DMA1_Channel1_IRQn
@ DMA1_Channel1_IRQn
Definition: at32f403.h:189
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_DIR_MEMORY_TO_MEMORY
@ DMA_DIR_MEMORY_TO_MEMORY
Definition: at32f403_dma.h:128
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA1_FDT1_FLAG
#define DMA1_FDT1_FLAG
Definition: at32f403_dma.h:64
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL1
#define DMA1_CHANNEL1
Definition: at32f403_dma.h:355
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • exint
  • exint_config
  • inc
project/at_start_f403/examples/exint/exint_config/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • exint
  • exint_config
  • inc
project/at_start_f403/examples/exint/exint_config/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • exint
  • exint_config
  • inc
project/at_start_f403/examples/exint/exint_config/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • exint
  • exint_config
  • src
project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • exint
  • exint_config
  • src
project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/exint/exint_config/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • exint
  • exint_config
  • src
project/at_start_f403/examples/exint/exint_config/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
38void exint_line0_config(void);
39
45int main(void)
46{
47 system_clock_config();
48
49 at32_board_init();
50
51 /* turn led2/led3/led4 on */
52 at32_led_on(LED2);
53 at32_led_on(LED3);
54 at32_led_on(LED4);
55
56 /* configure pa0 in interrupt mode */
57 exint_line0_config();
58
59 while(1)
60 {
61 }
62}
63
69void exint_line0_config(void)
70{
71 exint_init_type exint_init_struct;
72
73 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
74 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
75
76 gpio_exint_line_config(GPIO_PORT_SOURCE_GPIOA, GPIO_PINS_SOURCE0);
77
78 exint_default_para_init(&exint_init_struct);
79 exint_init_struct.line_enable = TRUE;
80 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
81 exint_init_struct.line_select = EXINT_LINE_0;
82 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
83 exint_init(&exint_init_struct);
84
85 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
86 nvic_irq_enable(EXINT0_IRQn, 1, 0);
87}
88
94void EXINT0_IRQHandler(void)
95{
96 if(exint_flag_get(EXINT_LINE_0) != RESET)
97 {
98 at32_led_toggle(LED2);
99 at32_led_toggle(LED3);
100 at32_led_toggle(LED4);
101 exint_flag_clear(EXINT_LINE_0);
102 }
103}
104
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
main
int main(void)
main function.
Definition: project/at_start_f403/examples/exint/exint_config/src/main.c:45
EXINT0_IRQHandler
void EXINT0_IRQHandler(void)
exint0 interrupt handler
Definition: project/at_start_f403/examples/exint/exint_config/src/main.c:94
exint_line0_config
void exint_line0_config(void)
exint line0 config. configure pa0 in interrupt mode
Definition: project/at_start_f403/examples/exint/exint_config/src/main.c:69
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
EXINT0_IRQn
@ EXINT0_IRQn
Definition: at32f403.h:184
exint_flag_get
flag_status exint_flag_get(uint32_t exint_line)
get exint flag
Definition: at32f403_exint.c:140
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_LINE_0
#define EXINT_LINE_0
Definition: at32f403_exint.h:50
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
GPIO_PINS_SOURCE0
@ GPIO_PINS_SOURCE0
Definition: at32f403_gpio.h:182
GPIO_PORT_SOURCE_GPIOA
@ GPIO_PORT_SOURCE_GPIOA
Definition: at32f403_gpio.h:205
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • exint
  • exint_software_trigger
  • inc
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • exint
  • exint_software_trigger
  • inc
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • exint
  • exint_software_trigger
  • inc
project/at_start_f403/examples/exint/exint_software_trigger/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • exint
  • exint_software_trigger
  • src
project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • exint
  • exint_software_trigger
  • src
project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • exint
  • exint_software_trigger
  • src
project/at_start_f403/examples/exint/exint_software_trigger/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
38void exint_line4_config(void);
39static void tmr1_config(void);
40
46void exint_line4_config(void)
47{
48 exint_init_type exint_init_struct;
49
50 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
51
52 exint_default_para_init(&exint_init_struct);
53 exint_init_struct.line_enable = TRUE;
54 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
55 exint_init_struct.line_select = EXINT_LINE_4;
56 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
57 exint_init(&exint_init_struct);
58
59 nvic_irq_enable(EXINT4_IRQn, 1, 0);
60}
61
67static void tmr1_config(void)
68{
69 crm_clocks_freq_type crm_clocks_freq_struct = {0};
70
71 /* get system clock */
72 crm_clocks_freq_get(&crm_clocks_freq_struct);
73
74 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
75
76 /* (systemclock / (system_core_clock/10000)) / 10000 = 1Hz(1s) */
77 tmr_base_init(TMR1, 10000-1, system_core_clock/10000-1);
78 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
79 tmr_clock_source_div_set(TMR1, TMR_CLOCK_DIV1);
80 tmr_interrupt_enable(TMR1, TMR_OVF_INT, TRUE);
81 nvic_irq_enable(TMR1_OVF_TMR10_IRQn, 0, 0);
82}
83
89void TMR1_OVF_TMR10_IRQHandler(void)
90{
91 if(tmr_flag_get(TMR1,TMR_OVF_FLAG) != RESET)
92 {
93 at32_led_toggle(LED2);
94 exint_software_interrupt_event_generate(EXINT_LINE_4);
95 tmr_flag_clear(TMR1,TMR_OVF_FLAG);
96 }
97}
98
104void EXINT4_IRQHandler(void)
105{
106 if(exint_flag_get(EXINT_LINE_4) != RESET)
107 {
108 at32_led_toggle(LED3);
109 at32_led_toggle(LED4);
110 exint_flag_clear(EXINT_LINE_4);
111 }
112}
113
119int main(void)
120{
121 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
122 system_clock_config();
123
124 at32_board_init();
125
126 /* turn led2/led3/led4 on */
127 at32_led_on(LED2);
128 at32_led_on(LED3);
129 at32_led_on(LED4);
130 tmr1_config();
131 exint_line4_config();
132 tmr_counter_enable(TMR1, TRUE);
133 while(1)
134 {
135 }
136}
137
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
exint_line4_config
void exint_line4_config(void)
exint line4 config. configure pa0 in interrupt mode
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/main.c:46
main
int main(void)
main function.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/main.c:119
tmr1_config
static void tmr1_config(void)
tmr1 configuration.
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/main.c:67
EXINT4_IRQHandler
void EXINT4_IRQHandler(void)
exint4 interrupt handler
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/main.c:104
TMR1_OVF_TMR10_IRQHandler
void TMR1_OVF_TMR10_IRQHandler(void)
tmr1 interrupt handler
Definition: project/at_start_f403/examples/exint/exint_software_trigger/src/main.c:89
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
TMR1_OVF_TMR10_IRQn
@ TMR1_OVF_TMR10_IRQn
Definition: at32f403.h:204
EXINT4_IRQn
@ EXINT4_IRQn
Definition: at32f403.h:188
exint_flag_get
flag_status exint_flag_get(uint32_t exint_line)
get exint flag
Definition: at32f403_exint.c:140
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_software_interrupt_event_generate
void exint_software_interrupt_event_generate(uint32_t exint_line)
generate exint software interrupt event
Definition: at32f403_exint.c:194
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_LINE_4
#define EXINT_LINE_4
Definition: at32f403_exint.h:54
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OVF_FLAG
#define TMR_OVF_FLAG
Definition: at32f403_tmr.h:50
TMR_OVF_INT
#define TMR_OVF_INT
Definition: at32f403_tmr.h:72
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • flash
  • fap_enable
  • inc
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • flash
  • fap_enable
  • inc
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • flash
  • fap_enable
  • inc
project/at_start_f403/examples/flash/fap_enable/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • flash
  • fap_enable
  • src
project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • flash
  • fap_enable
  • src
project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/flash/fap_enable/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • flash
  • fap_enable
  • src
project/at_start_f403/examples/flash/fap_enable/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41int main(void)
42{
43 flash_status_type status = FLASH_OPERATE_DONE;
44 system_clock_config();
45 at32_board_init();
46 if(flash_fap_status_get() == RESET)
47 {
48 flash_unlock();
49 /* wait for operation to be completed */
50 status = flash_operation_wait_for(OPERATION_TIMEOUT);
51
52 if(status != FLASH_OPERATE_TIMEOUT)
53 {
54 if((status == FLASH_PROGRAM_ERROR) || (status == FLASH_EPP_ERROR))
55 flash_flag_clear(FLASH_PRGMERR_FLAG | FLASH_EPPERR_FLAG);
56
57 status = flash_fap_enable(TRUE);
58 if(status == FLASH_OPERATE_DONE)
59 nvic_system_reset();
60 }
61 }else
62 {
63 at32_led_on(LED2);
64 at32_led_on(LED3);
65 at32_led_on(LED4);
66 }
67 while(1)
68 {
69 }
70}
71
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
main
int main(void)
main function.
Definition: project/at_start_f403/examples/flash/fap_enable/src/main.c:41
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
flash_fap_status_get
flag_status flash_fap_status_get(void)
check the flash access protection status.
Definition: at32f403_flash.c:930
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_fap_enable
flash_status_type flash_fap_enable(confirm_state new_state)
enable or disable the flash access protection.
Definition: at32f403_flash.c:888
flash_operation_wait_for
flash_status_type flash_operation_wait_for(uint32_t time_out)
wait for flash operation complete or timeout.
Definition: at32f403_flash.c:257
flash_flag_clear
void flash_flag_clear(uint32_t flash_flag)
clear the flash flag.
Definition: at32f403_flash.c:114
flash_status_type
flash_status_type
flash status type
Definition: at32f403_flash.h:163
FLASH_OPERATE_DONE
@ FLASH_OPERATE_DONE
Definition: at32f403_flash.h:167
FLASH_OPERATE_TIMEOUT
@ FLASH_OPERATE_TIMEOUT
Definition: at32f403_flash.h:168
FLASH_PROGRAM_ERROR
@ FLASH_PROGRAM_ERROR
Definition: at32f403_flash.h:165
FLASH_EPP_ERROR
@ FLASH_EPP_ERROR
Definition: at32f403_flash.h:166
FLASH_PRGMERR_FLAG
#define FLASH_PRGMERR_FLAG
Definition: at32f403_flash.h:81
FLASH_EPPERR_FLAG
#define FLASH_EPPERR_FLAG
Definition: at32f403_flash.h:82
OPERATION_TIMEOUT
#define OPERATION_TIMEOUT
Definition: at32f403_flash.h:149
nvic_system_reset
void nvic_system_reset(void)
system reset
Definition: at32f403_misc.c:50
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • flash
  • flash_write_read
  • inc
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • flash
  • flash_write_read
  • inc
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • flash
  • flash_write_read
  • inc
project/at_start_f403/examples/flash/flash_write_read/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: flash.h Source File

  • flash
  • flash_write_read
  • inc
project/at_start_f403/examples/flash/flash_write_read/inc/flash.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __FLASH_H__
27#define __FLASH_H__
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403_board.h"
34
48void flash_read(uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read);
49 error_status flash_write_nocheck(uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write);
50 error_status flash_write(uint32_t write_addr,uint16_t *p_Buffer, uint16_t num_write);
51
64#ifdef __cplusplus
65}
66#endif
67
68#endif
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
error_status
error_status
error status
Definition: at32f403.h:314
flash_write
error_status flash_write(uint32_t write_addr, uint16_t *p_Buffer, uint16_t num_write)
write data using halfword mode with checking
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:85
flash_read
void flash_read(uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
read data using halfword mode
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:47
flash_write_nocheck
error_status flash_write_nocheck(uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode without checking
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:64


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • flash
  • flash_write_read
  • src
project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • flash
  • flash_write_read
  • src
project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: flash.c Source File

  • flash
  • flash_write_read
  • src
project/at_start_f403/examples/flash/flash_write_read/src/flash.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "flash.h"
27
36#define SECTOR_SIZE 2048 /* this parameter depends on the specific model of the chip */
37
38uint16_t flash_buf[SECTOR_SIZE / 2];
39
47void flash_read(uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
48{
49 uint16_t i;
50 for(i = 0; i < num_read; i++)
51 {
52 p_buffer[i] = *(uint16_t*)(read_addr);
53 read_addr += 2;
54 }
55}
56
64 error_status flash_write_nocheck(uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
65{
66 uint16_t i;
67 flash_status_type status = FLASH_OPERATE_DONE;
68 for(i = 0; i < num_write; i++)
69 {
70 status = flash_halfword_program(write_addr, p_buffer[i]);
71 if(status != FLASH_OPERATE_DONE)
72 return ERROR;
73 write_addr += 2;
74 }
75 return SUCCESS;
76}
77
85 error_status flash_write(uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
86{
87 uint32_t offset_addr;
88 uint32_t sector_position;
89 uint16_t sector_offset;
90 uint16_t sector_remain;
91 uint16_t i;
92 flash_status_type status = FLASH_OPERATE_DONE;
93
94 flash_unlock();
95 offset_addr = write_addr - FLASH_BASE;
96 sector_position = offset_addr / SECTOR_SIZE;
97 sector_offset = (offset_addr % SECTOR_SIZE) / 2;
98 sector_remain = SECTOR_SIZE / 2 - sector_offset;
99 if(num_write <= sector_remain)
100 sector_remain = num_write;
101 while(1)
102 {
103 flash_read(sector_position * SECTOR_SIZE + FLASH_BASE, flash_buf, SECTOR_SIZE / 2);
104 for(i = 0; i < sector_remain; i++)
105 {
106 if(flash_buf[sector_offset + i] != 0xFFFF)
107 break;
108 }
109 if(i < sector_remain)
110 {
111 /* wait for operation to be completed */
112 status = flash_operation_wait_for(ERASE_TIMEOUT);
113
114 if((status == FLASH_PROGRAM_ERROR) || (status == FLASH_EPP_ERROR))
115 flash_flag_clear(FLASH_PRGMERR_FLAG | FLASH_EPPERR_FLAG);
116 else if(status == FLASH_OPERATE_TIMEOUT)
117 return ERROR;
118 status = flash_sector_erase(sector_position * SECTOR_SIZE + FLASH_BASE);
119 if(status != FLASH_OPERATE_DONE)
120 return ERROR;
121 for(i = 0; i < sector_remain; i++)
122 {
123 flash_buf[i + sector_offset] = p_buffer[i];
124 }
125 if(flash_write_nocheck(sector_position * SECTOR_SIZE + FLASH_BASE, flash_buf, SECTOR_SIZE / 2) != SUCCESS)
126 return ERROR;
127 }
128 else
129 {
130 if(flash_write_nocheck(write_addr, p_buffer, sector_remain) != SUCCESS)
131 return ERROR;
132 }
133 if(num_write == sector_remain)
134 break;
135 else
136 {
137 sector_position++;
138 sector_offset = 0;
139 p_buffer += sector_remain;
140 write_addr += (sector_remain * 2);
141 num_write -= sector_remain;
142 if(num_write > (SECTOR_SIZE / 2))
143 sector_remain = SECTOR_SIZE / 2;
144 else
145 sector_remain = num_write;
146 }
147 }
148 flash_lock();
149 return SUCCESS;
150}
151
152
153
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
flash_buf
uint16_t flash_buf[2048/2]
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:38
flash_write
error_status flash_write(uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode with checking
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:85
SECTOR_SIZE
#define SECTOR_SIZE
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:36
flash_read
void flash_read(uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
read data using halfword mode
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:47
flash_write_nocheck
error_status flash_write_nocheck(uint32_t write_addr, uint16_t *p_buffer, uint16_t num_write)
write data using halfword mode without checking
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:64
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_halfword_program
flash_status_type flash_halfword_program(uint32_t address, uint16_t data)
program a halfword at a specified address.
Definition: at32f403_flash.c:707
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
flash_operation_wait_for
flash_status_type flash_operation_wait_for(uint32_t time_out)
wait for flash operation complete or timeout.
Definition: at32f403_flash.c:257
flash_flag_clear
void flash_flag_clear(uint32_t flash_flag)
clear the flash flag.
Definition: at32f403_flash.c:114
flash_status_type
flash_status_type
flash status type
Definition: at32f403_flash.h:163
FLASH_OPERATE_DONE
@ FLASH_OPERATE_DONE
Definition: at32f403_flash.h:167
FLASH_OPERATE_TIMEOUT
@ FLASH_OPERATE_TIMEOUT
Definition: at32f403_flash.h:168
FLASH_PROGRAM_ERROR
@ FLASH_PROGRAM_ERROR
Definition: at32f403_flash.h:165
FLASH_EPP_ERROR
@ FLASH_EPP_ERROR
Definition: at32f403_flash.h:166
FLASH_PRGMERR_FLAG
#define FLASH_PRGMERR_FLAG
Definition: at32f403_flash.h:81
FLASH_EPPERR_FLAG
#define FLASH_EPPERR_FLAG
Definition: at32f403_flash.h:82
ERASE_TIMEOUT
#define ERASE_TIMEOUT
Definition: at32f403_flash.h:145
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341


AT32F403 Firmwary Library: main.c Source File

  • flash
  • flash_write_read
  • src
project/at_start_f403/examples/flash/flash_write_read/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "flash.h"
28
37#define TEST_BUFEER_SIZE 3000
38#define TEST_FLASH_ADDRESS_START (0x08000000 + 1024 * 10)
39
40uint16_t buffer_write[TEST_BUFEER_SIZE];
41uint16_t buffer_read[TEST_BUFEER_SIZE];
42
43 error_status buffer_compare(uint16_t* p_buffer1, uint16_t* p_buffer2, uint16_t buffer_length);
44
52 error_status buffer_compare(uint16_t* p_buffer1, uint16_t* p_buffer2, uint16_t buffer_length)
53{
54 while(buffer_length--)
55 {
56 if(*p_buffer1 != *p_buffer2)
57 {
58 return ERROR;
59 }
60 p_buffer1++;
61 p_buffer2++;
62 }
63 return SUCCESS;
64}
65
71int main(void)
72{
73 uint32_t index=0;
74 error_status err_status;
75 system_clock_config();
76 at32_board_init();
77 /* fill buffer_write data to test */
78 for(index = 0; index < TEST_BUFEER_SIZE; index++)
79 {
80 buffer_write[index] = index;
81 }
82
83 /* write data to flash */
84 err_status = flash_write(TEST_FLASH_ADDRESS_START, buffer_write, TEST_BUFEER_SIZE);
85
86 /* read data from flash */
87 flash_read(TEST_FLASH_ADDRESS_START, buffer_read, TEST_BUFEER_SIZE);
88
89 /* compare the buffer */
90 if((buffer_compare(buffer_write, buffer_read, TEST_BUFEER_SIZE) == SUCCESS) && (err_status == SUCCESS))
91 {
92 at32_led_on(LED2);
93 at32_led_on(LED3);
94 at32_led_on(LED4);
95 }
96
97 while(1)
98 {
99 }
100}
101
102
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
TEST_BUFEER_SIZE
#define TEST_BUFEER_SIZE
Definition: project/at_start_f403/examples/flash/flash_write_read/src/main.c:37
buffer_compare
error_status buffer_compare(uint16_t *p_buffer1, uint16_t *p_buffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/main.c:52
buffer_read
uint16_t buffer_read[3000]
Definition: project/at_start_f403/examples/flash/flash_write_read/src/main.c:41
TEST_FLASH_ADDRESS_START
#define TEST_FLASH_ADDRESS_START
Definition: project/at_start_f403/examples/flash/flash_write_read/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/flash/flash_write_read/src/main.c:71
buffer_write
uint16_t buffer_write[3000]
Definition: project/at_start_f403/examples/flash/flash_write_read/src/main.c:40
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
flash_write
error_status flash_write(uint32_t write_addr, uint16_t *p_Buffer, uint16_t num_write)
write data using halfword mode with checking
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:85
flash_read
void flash_read(uint32_t read_addr, uint16_t *p_buffer, uint16_t num_read)
read data using halfword mode
Definition: project/at_start_f403/examples/flash/flash_write_read/src/flash.c:47
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • flash
  • operate_spim
  • inc
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • flash
  • operate_spim
  • inc
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • flash
  • operate_spim
  • inc
project/at_start_f403/examples/flash/operate_spim/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • flash
  • operate_spim
  • src
project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_30, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_30
@ CRM_PLL_MULT_30
Definition: at32f403_crm.h:255
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • flash
  • operate_spim
  • src
project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
135
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/flash/operate_spim/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • flash
  • operate_spim
  • src
project/at_start_f403/examples/flash/operate_spim/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "operate_spim.h"
28
29
43int main(void)
44{
45 system_clock_config();
46
47 at32_board_init();
48
49 /* operate spim flash */
50 spim_operate();
51
52 while(1)
53 {
54
55 }
56}
57
58
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
main
int main(void)
main function.
Definition: project/at_start_f403/examples/flash/operate_spim/src/main.c:43
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
spim_operate
void spim_operate(void)
operate spim flash
Definition: operate_spim.c:107
operate_spim.h
operate_spim header file
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • flash
  • run_in_spim
  • inc
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • flash
  • run_in_spim
  • inc
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • flash
  • run_in_spim
  • inc
project/at_start_f403/examples/flash/run_in_spim/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • flash
  • run_in_spim
  • src
project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_30, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_30
@ CRM_PLL_MULT_30
Definition: at32f403_crm.h:255
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • flash
  • run_in_spim
  • src
project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:104
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/at32f403_int.c:113
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • flash
  • run_in_spim
  • src
project/at_start_f403/examples/flash/run_in_spim/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "run_in_spim.h"
28
29
43void spim_init(void)
44{
45 gpio_init_type gpio_init_struct;
46
47 /* enable the clock */
48 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
49 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
50 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
51
52 /* init spim io */
53 gpio_default_para_init(&gpio_init_struct);
54 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
55 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
56 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
57 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
58 gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_11 | GPIO_PINS_12;
59 gpio_init(GPIOA, &gpio_init_struct);
60 gpio_init_struct.gpio_pins = GPIO_PINS_1 | GPIO_PINS_6 | GPIO_PINS_7;
61 gpio_init(GPIOB, &gpio_init_struct);
62
63 /* enable spim */
64 gpio_pin_remap_config(EXT_SPIM_EN_MUX, TRUE);
65
66 /* in this example, use on-board en25qh128a as spim flash */
67 flash_spim_model_select(FLASH_SPIM_MODEL2);
68
69 /* unlock the spim flash program erase controller */
70 while(flash_flag_get(FLASH_SPIM_OBF_FLAG));
71 flash_spim_unlock();
72 while(FLASH->ctrl3_bit.oplk);
73
74 /* if the data written to spim flash need to be scrambled, please specify the scrambled range */
75 flash_spim_encryption_range_set(0);
76
77 return;
78}
79
85int main(void)
86{
87 system_clock_config();
88 at32_board_init();
89
90 /* configures the spim flash */
91 spim_init();
92
93 /* check the led toggle in spim */
94 spim_run();
95
96 while(1)
97 {
98 }
99}
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
spim_run
void spim_run(void)
check the led toggle in spim
Definition: run_in_spim.c:43
main
int main(void)
main function.
Definition: project/at_start_f403/examples/flash/run_in_spim/src/main.c:85
spim_init
void spim_init(void)
init the spim flash
Definition: project/at_start_f403/examples/flash/run_in_spim/src/main.c:43
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
TRUE
@ TRUE
Definition: at32f403.h:309
flash_spim_unlock
void flash_spim_unlock(void)
unlock the flash spim controller.
Definition: at32f403_flash.c:391
flash_spim_model_select
void flash_spim_model_select(flash_spim_model_type mode)
select spim supports extended spi flash chip model.
Definition: at32f403_flash.c:1030
flash_spim_encryption_range_set
void flash_spim_encryption_range_set(uint32_t decode_address)
set the range of encryption in spim flash. when the address is larger than this value,...
Definition: at32f403_flash.c:1045
flash_flag_get
flag_status flash_flag_get(uint32_t flash_flag)
check whether the specified flash flag is set or not.
Definition: at32f403_flash.c:65
FLASH_SPIM_MODEL2
@ FLASH_SPIM_MODEL2
Definition: at32f403_flash.h:177
FLASH_SPIM_OBF_FLAG
#define FLASH_SPIM_OBF_FLAG
Definition: at32f403_flash.h:91
FLASH
#define FLASH
Definition: at32f403_flash.h:511
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
EXT_SPIM_EN_MUX
#define EXT_SPIM_EN_MUX
Definition: at32f403_gpio.h:127
run_in_spim.h
run_in_spim header file
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • gpio
  • io_toggle
  • inc
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • gpio
  • io_toggle
  • inc
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • gpio
  • io_toggle
  • inc
project/at_start_f403/examples/gpio/io_toggle/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • gpio
  • io_toggle
  • src
project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • gpio
  • io_toggle
  • src
project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
133
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • gpio
  • io_toggle
  • src
project/at_start_f403/examples/gpio/io_toggle/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
42void gpio_config(void)
43{
44 gpio_init_type gpio_init_struct;
45
46 /* enable the gpioa clock */
47 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
48
49 /* set default parameter */
50 gpio_default_para_init(&gpio_init_struct);
51
52 /* configure the gpio */
53 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
54 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
55 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
56 gpio_init_struct.gpio_pins = GPIO_PINS_1;
57 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
58 gpio_init(GPIOA, &gpio_init_struct);
59}
60
66int main(void)
67{
68 system_clock_config();
69
70 gpio_config();
71
72 while(1)
73 {
74 /* set pa.01 */
75 GPIOA->scr = GPIO_PINS_1;
76 /* reset pa.01 */
77 GPIOA->clr = GPIO_PINS_1;
78
79 /* set pa.01 */
80 GPIOA->scr = GPIO_PINS_1;
81 /* reset pa.01 */
82 GPIOA->clr = GPIO_PINS_1;
83
84 /* set pa.01 */
85 GPIOA->scr = GPIO_PINS_1;
86 /* reset pa.01 */
87 GPIOA->clr = GPIO_PINS_1;
88
89 /* set pa.01 */
90 GPIOA->scr = GPIO_PINS_1;
91 /* reset pa.01 */
92 GPIOA->clr = GPIO_PINS_1;
93
94 /* set pa.01 */
95 GPIOA->scr = GPIO_PINS_1;
96 /* reset pa.01 */
97 GPIOA->clr = GPIO_PINS_1;
98
99 /* set pa.01 */
100 GPIOA->scr = GPIO_PINS_1;
101 /* reset pa.01 */
102 GPIOA->clr = GPIO_PINS_1;
103 }
104}
105
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
main
int main(void)
main function.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/main.c:66
gpio_config
void gpio_config(void)
pa.01 gpio configuration.
Definition: project/at_start_f403/examples/gpio/io_toggle/src/main.c:42
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • gpio
  • led_toggle
  • inc
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • gpio
  • led_toggle
  • inc
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • gpio
  • led_toggle
  • inc
project/at_start_f403/examples/gpio/led_toggle/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • gpio
  • led_toggle
  • src
project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • gpio
  • led_toggle
  • src
project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
133
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • gpio
  • led_toggle
  • src
project/at_start_f403/examples/gpio/led_toggle/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
42int main(void)
43{
44 system_clock_config();
45
46 at32_board_init();
47
48 while(1)
49 {
50 at32_led_toggle(LED2);
51 delay_ms(200);
52 at32_led_toggle(LED3);
53 delay_ms(200);
54 at32_led_toggle(LED4);
55 delay_ms(200);
56 }
57}
58
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
main
int main(void)
main function.
Definition: project/at_start_f403/examples/gpio/led_toggle/src/main.c:42
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • gpio
  • swjtag_remap
  • inc
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • gpio
  • swjtag_remap
  • inc
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • gpio
  • swjtag_remap
  • inc
project/at_start_f403/examples/gpio/swjtag_remap/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • gpio
  • swjtag_remap
  • src
project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • gpio
  • swjtag_remap
  • src
project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • gpio
  • swjtag_remap
  • src
project/at_start_f403/examples/gpio/swjtag_remap/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
28
37void swj_dp_config(void);
38void gpio_pins_toggle(gpio_type* gpio_x, uint16_t gpio_pin);
39
45void swj_dp_config(void)
46{
47 gpio_init_type gpio_init_struct;
48
49 /* configure pa13 (jtms/swdat), pa14 (jtck/swclk) and pa15 (jtdi) as output push-pull */
50 gpio_init_struct.gpio_pins = GPIO_PINS_13 | GPIO_PINS_14 | GPIO_PINS_15;
51 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
52 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
53 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
54 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
55 gpio_init(GPIOA, &gpio_init_struct);
56
57 /* configure pb3 (jtdo) and pb4 (jtrst) as output push-pull */
58 gpio_init_struct.gpio_pins = GPIO_PINS_3 | GPIO_PINS_4;
59 gpio_init(GPIOB, &gpio_init_struct);
60}
61
68void gpio_pins_toggle(gpio_type* gpio_x, uint16_t gpio_pin)
69{
70 gpio_x->odt ^= gpio_pin;
71}
72
78int main(void)
79{
80 system_clock_config();
81
82 at32_board_init();
83
84 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
85 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
86 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
87
88 swj_dp_config();
89
90 while(1)
91 {
92 if(USER_BUTTON == at32_button_press())
93 {
94 /* disable the serial wire jtag debug port swj-dp */
95 gpio_pin_remap_config(SWJTAG_MUX_100, TRUE);
96
97 /* turn on led3 */
98 at32_led_on(LED3);
99 }
100
101 /* toggle jtms/swdat pin */
102 gpio_pins_toggle(GPIOA, GPIO_PINS_13);
103 delay_us(200);
104
105 /* toggle jtck/swclk pin */
106 gpio_pins_toggle(GPIOA, GPIO_PINS_14);
107 delay_us(200);
108
109 /* toggle jtdi pin */
110 gpio_pins_toggle(GPIOA, GPIO_PINS_15);
111 delay_us(200);
112
113 /* toggle jtdo pin */
114 gpio_pins_toggle(GPIOB, GPIO_PINS_3);
115 delay_us(200);
116
117 /* toggle jtrst pin */
118 gpio_pins_toggle(GPIOB, GPIO_PINS_4);
119 delay_us(200);
120 }
121}
122
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
gpio_pins_toggle
void gpio_pins_toggle(gpio_type *gpio_x, uint16_t gpio_pin)
toggles the specified gpio pin
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/main.c:68
main
int main(void)
main function.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/main.c:78
swj_dp_config
void swj_dp_config(void)
configure the gpio of swj-dp.
Definition: project/at_start_f403/examples/gpio/swjtag_remap/src/main.c:45
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SWJTAG_MUX_100
#define SWJTAG_MUX_100
Definition: at32f403_gpio.h:104
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
gpio_type
type define gpio register all
Definition: at32f403_gpio.h:230
gpio_type::odt
__IO uint32_t odt
Definition: at32f403_gpio.h:318
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • i2c
  • communication_dma
  • inc
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • i2c
  • communication_dma
  • inc
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • i2c
  • communication_dma
  • inc
project/at_start_f403/examples/i2c/communication_dma/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • i2c
  • communication_dma
  • src
project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • i2c
  • communication_dma
  • src
project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "i2c_application.h"
28
29extern i2c_handle_type hi2cx;
30
31#define I2Cx_DMA_TX_IRQHandler DMA1_Channel6_IRQHandler
32#define I2Cx_DMA_RX_IRQHandler DMA1_Channel7_IRQHandler
33#define I2Cx_EVT_IRQHandler I2C1_EVT_IRQHandler
34#define I2Cx_ERR_IRQHandler I2C1_ERR_IRQHandler
35
49void NMI_Handler(void)
50{
51}
52
58void HardFault_Handler(void)
59{
60 /* go to infinite loop when hard fault exception occurs */
61 while(1)
62 {
63 }
64}
65
71void MemManage_Handler(void)
72{
73 /* go to infinite loop when memory manage exception occurs */
74 while(1)
75 {
76 }
77}
78
84void BusFault_Handler(void)
85{
86 /* go to infinite loop when bus fault exception occurs */
87 while(1)
88 {
89 }
90}
91
97void UsageFault_Handler(void)
98{
99 /* go to infinite loop when usage fault exception occurs */
100 while(1)
101 {
102 }
103}
104
110void SVC_Handler(void)
111{
112}
113
119void DebugMon_Handler(void)
120{
121}
122
128void PendSV_Handler(void)
129{
130}
131
137void SysTick_Handler(void)
138{
139}
140
146void I2Cx_DMA_RX_IRQHandler(void)
147{
148 i2c_dma_rx_irq_handler(&hi2cx);
149}
150
156void I2Cx_DMA_TX_IRQHandler(void)
157{
158 i2c_dma_tx_irq_handler(&hi2cx);
159}
160
166void I2Cx_EVT_IRQHandler(void)
167{
168 i2c_evt_irq_handler(&hi2cx);
169}
170
176void I2Cx_ERR_IRQHandler(void)
177{
178 i2c_err_irq_handler(&hi2cx);
179}
180
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:97
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:58
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:71
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:110
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:128
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:49
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:84
hi2cx
i2c_handle_type hi2cx
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:69
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:137
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:119
i2c_evt_irq_handler
void i2c_evt_irq_handler(i2c_handle_type *hi2c)
interrupt procession function.
Definition: i2c_application.c:2216
i2c_err_irq_handler
void i2c_err_irq_handler(i2c_handle_type *hi2c)
i2c error interrupt function.
Definition: i2c_application.c:2332
i2c_dma_rx_irq_handler
void i2c_dma_rx_irq_handler(i2c_handle_type *hi2c)
dma reveive complete interrupt function.
Definition: i2c_application.c:2286
i2c_dma_tx_irq_handler
void i2c_dma_tx_irq_handler(i2c_handle_type *hi2c)
dma transmission complete interrupt function.
Definition: i2c_application.c:2249
i2c_application.h
i2c application libray header file
I2Cx_EVT_IRQHandler
#define I2Cx_EVT_IRQHandler
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:33
I2Cx_ERR_IRQHandler
#define I2Cx_ERR_IRQHandler
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:34
I2Cx_DMA_TX_IRQHandler
#define I2Cx_DMA_TX_IRQHandler
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:31
I2Cx_DMA_RX_IRQHandler
#define I2Cx_DMA_RX_IRQHandler
Definition: project/at_start_f403/examples/i2c/communication_dma/src/at32f403_int.c:32
i2c_handle_type
Definition: i2c_application.h:126
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • i2c
  • communication_dma
  • src
project/at_start_f403/examples/i2c/communication_dma/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "i2c_application.h"
28
37#define I2C_TIMEOUT 0xFFFFFFFF
38
39#define I2Cx_SPEED 100000
40#define I2Cx_ADDRESS 0xA0
41
42#define I2Cx_PORT I2C1
43#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
44
45#define I2Cx_SCL_PIN GPIO_PINS_6
46#define I2Cx_SCL_GPIO_PORT GPIOB
47#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
48
49#define I2Cx_SDA_PIN GPIO_PINS_7
50#define I2Cx_SDA_GPIO_PORT GPIOB
51#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
52
53#define I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK
54#define I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL6
55#define I2Cx_DMA_TX_IRQn DMA1_Channel6_IRQn
56
57#define I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL7
58#define I2Cx_DMA_RX_IRQn DMA1_Channel7_IRQn
59
60#define I2Cx_EVT_IRQn I2C1_EVT_IRQn
61#define I2Cx_ERR_IRQn I2C1_ERR_IRQn
62
63#define BUF_SIZE 8
64#define MASTER_BOARD
65
66uint8_t tx_buf[BUF_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08};
67uint8_t rx_buf[BUF_SIZE] = {0};
68
69 i2c_handle_type hi2cx;
70
71uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len);
72void i2c_lowlevel_init(i2c_handle_type* hi2c);
73
79void error_handler(uint32_t error_code)
80{
81 while(1)
82 {
83 at32_led_toggle(LED2);
84 delay_ms(500);
85 }
86}
87
95uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len)
96{
97 uint32_t i;
98
99 for(i = 0; i < len; i++)
100 {
101 if(buffer1[i] != buffer2[i])
102 {
103 return 1;
104 }
105 }
106
107 return 0;
108}
109
115void i2c_lowlevel_init(i2c_handle_type* hi2c)
116{
117 gpio_init_type gpio_initstructure;
118
119 if(hi2c->i2cx == I2Cx_PORT)
120 {
121 /* i2c periph clock enable */
122 crm_periph_clock_enable(I2Cx_CLK, TRUE);
123 crm_periph_clock_enable(I2Cx_SCL_GPIO_CLK, TRUE);
124 crm_periph_clock_enable(I2Cx_SDA_GPIO_CLK, TRUE);
125
126 /* gpio configuration */
127 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
128 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
129 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
130 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
131
132 /* configure i2c pins: scl */
133 gpio_initstructure.gpio_pins = I2Cx_SCL_PIN;
134 gpio_init(I2Cx_SCL_GPIO_PORT, &gpio_initstructure);
135
136 /* configure i2c pins: sda */
137 gpio_initstructure.gpio_pins = I2Cx_SDA_PIN;
138 gpio_init(I2Cx_SDA_GPIO_PORT, &gpio_initstructure);
139
140 /* configure and enable i2c dma channel interrupt */
141 nvic_irq_enable(I2Cx_DMA_TX_IRQn, 0, 0);
142 nvic_irq_enable(I2Cx_DMA_RX_IRQn, 0, 0);
143
144 /* configure and enable i2c interrupt */
145 nvic_irq_enable(I2Cx_EVT_IRQn, 0, 0);
146 nvic_irq_enable(I2Cx_ERR_IRQn, 0, 0);
147
148 /* i2c dma tx and rx channels configuration */
149 /* enable the dma clock */
150 crm_periph_clock_enable(I2Cx_DMA_CLK, TRUE);
151
152 /* i2c dma channel configuration */
153 dma_reset(hi2c->dma_tx_channel);
154 dma_reset(hi2c->dma_rx_channel);
155
156 hi2c->dma_tx_channel = I2Cx_DMA_TX_CHANNEL;
157 hi2c->dma_rx_channel = I2Cx_DMA_RX_CHANNEL;
158
159 dma_default_para_init(&hi2c->dma_init_struct);
160 hi2c->dma_init_struct.peripheral_inc_enable = FALSE;
161 hi2c->dma_init_struct.memory_inc_enable = TRUE;
162 hi2c->dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
163 hi2c->dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
164 hi2c->dma_init_struct.loop_mode_enable = FALSE;
165 hi2c->dma_init_struct.priority = DMA_PRIORITY_LOW;
166 hi2c->dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
167
168 dma_init(hi2c->dma_tx_channel, &hi2c->dma_init_struct);
169 dma_init(hi2c->dma_rx_channel, &hi2c->dma_init_struct);
170
171 i2c_init(hi2c->i2cx, I2C_FSMODE_DUTY_2_1, I2Cx_SPEED);
172
173 i2c_own_address1_set(hi2c->i2cx, I2C_ADDRESS_MODE_7BIT, I2Cx_ADDRESS);
174 }
175}
176
182int main(void)
183{
184 i2c_status_type i2c_status;
185
186 /* config nvic priority group */
187 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
188
189 system_clock_config();
190
191 at32_board_init();
192
193 hi2cx.i2cx = I2Cx_PORT;
194
195 i2c_config(&hi2cx);
196
197 while(1)
198 {
199
200#if defined (MASTER_BOARD)
201
202 /* wait for key USER_BUTTON press before starting the communication */
203 while(at32_button_press() != USER_BUTTON)
204 {
205 }
206
207 /* start the request reception process */
208 if((i2c_status = i2c_master_transmit_dma(&hi2cx, I2Cx_ADDRESS, tx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
209 {
210 error_handler(i2c_status);
211 }
212
213 /* wait for the communication to end */
214 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
215 {
216 error_handler(i2c_status);
217 }
218
219 delay_ms(10);
220
221 /* start the request reception process */
222 if((i2c_status = i2c_master_receive_dma(&hi2cx, I2Cx_ADDRESS, rx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
223 {
224 error_handler(i2c_status);
225 }
226
227 /* wait for the communication to end */
228 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
229 {
230 error_handler(i2c_status);
231 }
232
233 if(buffer_compare(tx_buf, rx_buf, BUF_SIZE) == 0)
234 {
235 at32_led_on(LED3);
236 }
237 else
238 {
239 error_handler(i2c_status);
240 }
241
242#else
243
244 /* wait for key USER_BUTTON press before starting the communication */
245 while(at32_button_press() != USER_BUTTON)
246 {
247 }
248
249 /* start the transmission process */
250 if((i2c_status = i2c_slave_receive_dma(&hi2cx, rx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
251 {
252 error_handler(i2c_status);
253 }
254
255 /* wait for the communication to end */
256 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
257 {
258 error_handler(i2c_status);
259 }
260
261 if((i2c_status = i2c_slave_transmit_dma(&hi2cx, tx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
262 {
263 error_handler(i2c_status);
264 }
265
266 /* wait for the communication to end */
267 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
268 {
269 error_handler(i2c_status);
270 }
271
272 if(buffer_compare(tx_buf, rx_buf, BUF_SIZE) == 0)
273 {
274 at32_led_on(LED3);
275 }
276 else
277 {
278 error_handler(i2c_status);
279 }
280
281#endif
282
283 }
284}
285
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
rx_buf
uint8_t rx_buf[8]
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:67
tx_buf
uint8_t tx_buf[8]
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:66
I2Cx_ADDRESS
#define I2Cx_ADDRESS
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:40
I2Cx_DMA_RX_IRQn
#define I2Cx_DMA_RX_IRQn
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:58
I2Cx_CLK
#define I2Cx_CLK
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:43
I2Cx_DMA_TX_CHANNEL
#define I2Cx_DMA_TX_CHANNEL
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:54
BUF_SIZE
#define BUF_SIZE
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:63
I2Cx_SDA_PIN
#define I2Cx_SDA_PIN
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:182
I2Cx_SCL_PIN
#define I2Cx_SCL_PIN
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:45
hi2cx
i2c_handle_type hi2cx
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:69
I2Cx_SDA_GPIO_PORT
#define I2Cx_SDA_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:50
buffer_compare
uint32_t buffer_compare(uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:95
I2Cx_DMA_CLK
#define I2Cx_DMA_CLK
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:53
I2Cx_SDA_GPIO_CLK
#define I2Cx_SDA_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:51
I2Cx_ERR_IRQn
#define I2Cx_ERR_IRQn
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:61
error_handler
void error_handler(uint32_t error_code)
error handler program
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:79
i2c_lowlevel_init
void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:115
I2Cx_SPEED
#define I2Cx_SPEED
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:39
I2Cx_PORT
#define I2Cx_PORT
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:42
I2Cx_SCL_GPIO_CLK
#define I2Cx_SCL_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:47
I2Cx_DMA_RX_CHANNEL
#define I2Cx_DMA_RX_CHANNEL
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:57
I2Cx_DMA_TX_IRQn
#define I2Cx_DMA_TX_IRQn
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:55
I2Cx_EVT_IRQn
#define I2Cx_EVT_IRQn
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:60
I2Cx_SCL_GPIO_PORT
#define I2Cx_SCL_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:46
I2C_TIMEOUT
#define I2C_TIMEOUT
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
i2c_wait_end
i2c_status_type i2c_wait_end(i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end.
Definition: i2c_application.c:122
i2c_slave_transmit_dma
i2c_status_type i2c_slave_transmit_dma(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through dma mode.
Definition: i2c_application.c:1195
i2c_master_transmit_dma
i2c_status_type i2c_master_transmit_dma(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through dma mode.
Definition: i2c_application.c:1018
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_slave_receive_dma
i2c_status_type i2c_slave_receive_dma(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through dma mode.
Definition: i2c_application.c:1071
i2c_master_receive_dma
i2c_status_type i2c_master_receive_dma(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through dma mode.
Definition: i2c_application.c:1119
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_LOW
@ DMA_PRIORITY_LOW
Definition: at32f403_dma.h:174
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
i2c_status_type
i2c_status_type
Definition: i2c_application.h:93
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
i2c_application.h
i2c application libray header file
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::dma_rx_channel
dma_channel_type * dma_rx_channel
Definition: i2c_application.h:135
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
i2c_handle_type::dma_init_struct
dma_init_type dma_init_struct
Definition: i2c_application.h:136
i2c_handle_type::dma_tx_channel
dma_channel_type * dma_tx_channel
Definition: i2c_application.h:134
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • i2c
  • communication_int
  • inc
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • i2c
  • communication_int
  • inc
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • i2c
  • communication_int
  • inc
project/at_start_f403/examples/i2c/communication_int/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • i2c
  • communication_int
  • src
project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • i2c
  • communication_int
  • src
project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "i2c_application.h"
28
29extern i2c_handle_type hi2cx;
30
31#define I2Cx_EVT_IRQHandler I2C1_EVT_IRQHandler
32#define I2Cx_ERR_IRQHandler I2C1_ERR_IRQHandler
33
47void NMI_Handler(void)
48{
49}
50
56void HardFault_Handler(void)
57{
58 /* go to infinite loop when hard fault exception occurs */
59 while(1)
60 {
61 }
62}
63
69void MemManage_Handler(void)
70{
71 /* go to infinite loop when memory manage exception occurs */
72 while(1)
73 {
74 }
75}
76
82void BusFault_Handler(void)
83{
84 /* go to infinite loop when bus fault exception occurs */
85 while(1)
86 {
87 }
88}
89
95void UsageFault_Handler(void)
96{
97 /* go to infinite loop when usage fault exception occurs */
98 while(1)
99 {
100 }
101}
102
108void SVC_Handler(void)
109{
110}
111
117void DebugMon_Handler(void)
118{
119}
120
126void PendSV_Handler(void)
127{
128}
129
135void SysTick_Handler(void)
136{
137}
138
144void I2Cx_EVT_IRQHandler(void)
145{
146 i2c_evt_irq_handler(&hi2cx);
147}
148
154void I2Cx_ERR_IRQHandler(void)
155{
156 i2c_err_irq_handler(&hi2cx);
157}
158
hi2cx
i2c_handle_type hi2cx
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:69
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:95
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:56
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:69
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:108
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:126
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:47
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:82
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:135
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:117
i2c_evt_irq_handler
void i2c_evt_irq_handler(i2c_handle_type *hi2c)
interrupt procession function.
Definition: i2c_application.c:2216
i2c_err_irq_handler
void i2c_err_irq_handler(i2c_handle_type *hi2c)
i2c error interrupt function.
Definition: i2c_application.c:2332
i2c_application.h
i2c application libray header file
I2Cx_EVT_IRQHandler
#define I2Cx_EVT_IRQHandler
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:31
I2Cx_ERR_IRQHandler
#define I2Cx_ERR_IRQHandler
Definition: project/at_start_f403/examples/i2c/communication_int/src/at32f403_int.c:32
i2c_handle_type
Definition: i2c_application.h:126
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • i2c
  • communication_int
  • src
project/at_start_f403/examples/i2c/communication_int/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "i2c_application.h"
28
37#define I2C_TIMEOUT 0xFFFFFFFF
38
39#define I2Cx_SPEED 100000
40#define I2Cx_ADDRESS 0xA0
41
42#define I2Cx_PORT I2C1
43#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
44
45#define I2Cx_SCL_PIN GPIO_PINS_6
46#define I2Cx_SCL_GPIO_PORT GPIOB
47#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
48
49#define I2Cx_SDA_PIN GPIO_PINS_7
50#define I2Cx_SDA_GPIO_PORT GPIOB
51#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
52
53#define I2Cx_EVT_IRQn I2C1_EVT_IRQn
54#define I2Cx_ERR_IRQn I2C1_ERR_IRQn
55
56#define BUF_SIZE 8
57#define MASTER_BOARD
58
59uint8_t tx_buf[BUF_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08};
60uint8_t rx_buf[BUF_SIZE] = {0};
61
62 i2c_handle_type hi2cx;
63
64uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len);
65void error_handler(uint32_t error_code);
66void i2c_lowlevel_init(i2c_handle_type* hi2c);
67
73void error_handler(uint32_t error_code)
74{
75 while(1)
76 {
77 at32_led_toggle(LED2);
78 delay_ms(500);
79 }
80}
81
89uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len)
90{
91 uint32_t i;
92
93 for(i = 0; i < len; i++)
94 {
95 if(buffer1[i] != buffer2[i])
96 {
97 return 1;
98 }
99 }
100
101 return 0;
102}
103
109void i2c_lowlevel_init(i2c_handle_type* hi2c)
110{
111 gpio_init_type gpio_initstructure;
112
113 if(hi2c->i2cx == I2Cx_PORT)
114 {
115 /* i2c periph clock enable */
116 crm_periph_clock_enable(I2Cx_CLK, TRUE);
117 crm_periph_clock_enable(I2Cx_SCL_GPIO_CLK, TRUE);
118 crm_periph_clock_enable(I2Cx_SDA_GPIO_CLK, TRUE);
119
120 /* gpio configuration */
121 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
122 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
123 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
124 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
125
126 /* configure i2c pins: scl */
127 gpio_initstructure.gpio_pins = I2Cx_SCL_PIN;
128 gpio_init(I2Cx_SCL_GPIO_PORT, &gpio_initstructure);
129
130 /* configure i2c pins: sda */
131 gpio_initstructure.gpio_pins = I2Cx_SDA_PIN;
132 gpio_init(I2Cx_SDA_GPIO_PORT, &gpio_initstructure);
133
134 /* configure and enable i2c interrupt */
135 nvic_irq_enable(I2Cx_EVT_IRQn, 0, 0);
136 nvic_irq_enable(I2Cx_ERR_IRQn, 0, 0);
137
138 i2c_init(hi2c->i2cx, I2C_FSMODE_DUTY_2_1, I2Cx_SPEED);
139
140 i2c_own_address1_set(hi2c->i2cx, I2C_ADDRESS_MODE_7BIT, I2Cx_ADDRESS);
141 }
142}
143
149int main(void)
150{
151 i2c_status_type i2c_status;
152
153 /* config nvic priority group */
154 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
155
156 system_clock_config();
157
158 at32_board_init();
159
160 hi2cx.i2cx = I2Cx_PORT;
161
162 i2c_config(&hi2cx);
163
164 while(1)
165 {
166
167#if defined (MASTER_BOARD)
168
169 /* wait for key USER_BUTTON press before starting the communication */
170 while(at32_button_press() != USER_BUTTON)
171 {
172 }
173
174 /* start the request reception process */
175 if((i2c_status = i2c_master_transmit_int(&hi2cx, I2Cx_ADDRESS, tx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
176 {
177 error_handler(i2c_status);
178 }
179
180 /* wait for the communication to end */
181 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
182 {
183 error_handler(i2c_status);
184 }
185
186 delay_ms(10);
187
188 /* start the request reception process */
189 if((i2c_status = i2c_master_receive_int(&hi2cx, I2Cx_ADDRESS, rx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
190 {
191 error_handler(i2c_status);
192 }
193
194 /* wait for the communication to end */
195 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
196 {
197 error_handler(i2c_status);
198 }
199
200 if(buffer_compare(tx_buf, rx_buf, BUF_SIZE) == 0)
201 {
202 at32_led_on(LED3);
203 }
204 else
205 {
206 error_handler(i2c_status);
207 }
208
209#else
210
211 /* wait for key USER_BUTTON press before starting the communication */
212 while(at32_button_press() != USER_BUTTON)
213 {
214 }
215
216 /* start the transmission process */
217 if((i2c_status = i2c_slave_receive_int(&hi2cx, rx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
218 {
219 error_handler(i2c_status);
220 }
221
222 /* wait for the communication to end */
223 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
224 {
225 error_handler(i2c_status);
226 }
227
228 if((i2c_status = i2c_slave_transmit_int(&hi2cx, tx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
229 {
230 error_handler(i2c_status);
231 }
232
233 /* wait for the communication to end */
234 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
235 {
236 error_handler(i2c_status);
237 }
238
239 if(buffer_compare(tx_buf, rx_buf, BUF_SIZE) == 0)
240 {
241 at32_led_on(LED3);
242 }
243 else
244 {
245 error_handler(i2c_status);
246 }
247#endif
248
249 }
250}
251
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
rx_buf
uint8_t rx_buf[8]
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:60
tx_buf
uint8_t tx_buf[8]
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:59
I2Cx_ADDRESS
#define I2Cx_ADDRESS
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:40
I2Cx_CLK
#define I2Cx_CLK
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:43
BUF_SIZE
#define BUF_SIZE
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:56
I2Cx_SDA_PIN
#define I2Cx_SDA_PIN
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:149
I2Cx_SCL_PIN
#define I2Cx_SCL_PIN
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:45
hi2cx
i2c_handle_type hi2cx
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:62
I2Cx_SDA_GPIO_PORT
#define I2Cx_SDA_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:50
buffer_compare
uint32_t buffer_compare(uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal.
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:89
I2Cx_SDA_GPIO_CLK
#define I2Cx_SDA_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:51
I2Cx_ERR_IRQn
#define I2Cx_ERR_IRQn
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:54
error_handler
void error_handler(uint32_t error_code)
error handler program
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:73
i2c_lowlevel_init
void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:109
I2Cx_SPEED
#define I2Cx_SPEED
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:39
I2Cx_PORT
#define I2Cx_PORT
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:42
I2Cx_SCL_GPIO_CLK
#define I2Cx_SCL_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:47
I2Cx_EVT_IRQn
#define I2Cx_EVT_IRQn
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:53
I2Cx_SCL_GPIO_PORT
#define I2Cx_SCL_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:46
I2C_TIMEOUT
#define I2C_TIMEOUT
Definition: project/at_start_f403/examples/i2c/communication_int/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
i2c_wait_end
i2c_status_type i2c_wait_end(i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end.
Definition: i2c_application.c:122
i2c_slave_transmit_int
i2c_status_type i2c_slave_transmit_int(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through interrupt mode.
Definition: i2c_application.c:979
i2c_master_receive_int
i2c_status_type i2c_master_receive_int(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through interrupt mode.
Definition: i2c_application.c:901
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_master_transmit_int
i2c_status_type i2c_master_transmit_int(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through interrupt mode.
Definition: i2c_application.c:815
i2c_slave_receive_int
i2c_status_type i2c_slave_receive_int(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through interrupt mode.
Definition: i2c_application.c:862
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
i2c_status_type
i2c_status_type
Definition: i2c_application.h:93
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
i2c_application.h
i2c application libray header file
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • i2c
  • communication_poll
  • inc
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • i2c
  • communication_poll
  • inc
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • i2c
  • communication_poll
  • inc
project/at_start_f403/examples/i2c/communication_poll/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • i2c
  • communication_poll
  • src
project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • i2c
  • communication_poll
  • src
project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • i2c
  • communication_poll
  • src
project/at_start_f403/examples/i2c/communication_poll/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "i2c_application.h"
28
37#define I2C_TIMEOUT 0xFFFFFFFF
38
39#define I2Cx_SPEED 100000
40#define I2Cx_ADDRESS 0xA0
41
42#define I2Cx_PORT I2C1
43#define I2Cx_CLK CRM_I2C1_PERIPH_CLOCK
44
45#define I2Cx_SCL_PIN GPIO_PINS_6
46#define I2Cx_SCL_GPIO_PORT GPIOB
47#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
48
49#define I2Cx_SDA_PIN GPIO_PINS_7
50#define I2Cx_SDA_GPIO_PORT GPIOB
51#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
52
53#define BUF_SIZE 8
54#define MASTER_BOARD
55
56uint8_t tx_buf[BUF_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08};
57uint8_t rx_buf[BUF_SIZE] = {0};
58
59 i2c_handle_type hi2cx;
60
61void error_handler(uint32_t error_code);
62uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len);
63void i2c_lowlevel_init(i2c_handle_type* hi2c);
64
70void error_handler(uint32_t error_code)
71{
72 while(1)
73 {
74 at32_led_toggle(LED2);
75 delay_ms(500);
76 }
77}
78
86uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len)
87{
88 uint32_t i;
89
90 for(i = 0; i < len; i++)
91 {
92 if(buffer1[i] != buffer2[i])
93 {
94 return 1;
95 }
96 }
97
98 return 0;
99}
100
106void i2c_lowlevel_init(i2c_handle_type* hi2c)
107{
108 gpio_init_type gpio_initstructure;
109
110 if(hi2c->i2cx == I2Cx_PORT)
111 {
112 /* i2c periph clock enable */
113 crm_periph_clock_enable(I2Cx_CLK, TRUE);
114 crm_periph_clock_enable(I2Cx_SCL_GPIO_CLK, TRUE);
115 crm_periph_clock_enable(I2Cx_SDA_GPIO_CLK, TRUE);
116
117 /* gpio configuration */
118 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
119 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
120 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
121 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
122
123 /* configure i2c pins: scl */
124 gpio_initstructure.gpio_pins = I2Cx_SCL_PIN;
125 gpio_init(I2Cx_SCL_GPIO_PORT, &gpio_initstructure);
126
127 /* configure i2c pins: sda */
128 gpio_initstructure.gpio_pins = I2Cx_SDA_PIN;
129 gpio_init(I2Cx_SDA_GPIO_PORT, &gpio_initstructure);
130
131 i2c_init(hi2c->i2cx, I2C_FSMODE_DUTY_2_1, I2Cx_SPEED);
132
133 i2c_own_address1_set(hi2c->i2cx, I2C_ADDRESS_MODE_7BIT, I2Cx_ADDRESS);
134 }
135}
136
142int main(void)
143{
144 i2c_status_type i2c_status;
145
146 system_clock_config();
147
148 at32_board_init();
149
150 hi2cx.i2cx = I2Cx_PORT;
151
152 i2c_config(&hi2cx);
153
154 while(1)
155 {
156
157#if defined (MASTER_BOARD)
158
159 /* wait for key USER_BUTTON press before starting the communication */
160 while(at32_button_press() != USER_BUTTON)
161 {
162 }
163
164 /* start the request reception process */
165 if((i2c_status = i2c_master_transmit(&hi2cx, I2Cx_ADDRESS, tx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
166 {
167 error_handler(i2c_status);
168 }
169
170 delay_ms(10);
171
172 /* start the request reception process */
173 if((i2c_status = i2c_master_receive(&hi2cx, I2Cx_ADDRESS, rx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
174 {
175 error_handler(i2c_status);
176 }
177
178 if(buffer_compare(tx_buf, rx_buf, BUF_SIZE) == 0)
179 {
180 at32_led_on(LED3);
181 }
182 else
183 {
184 error_handler(i2c_status);
185 }
186#else
187
188 /* wait for key USER_BUTTON press before starting the communication */
189 while(at32_button_press() != USER_BUTTON)
190 {
191 }
192
193 /* start the transmission process */
194 if((i2c_status = i2c_slave_receive(&hi2cx, rx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
195 {
196 error_handler(i2c_status);
197 }
198
199 if((i2c_status = i2c_slave_transmit(&hi2cx, tx_buf, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
200 {
201 error_handler(i2c_status);
202 }
203
204 if(buffer_compare(tx_buf, rx_buf, BUF_SIZE) == 0)
205 {
206 at32_led_on(LED3);
207 }
208 else
209 {
210 error_handler(i2c_status);
211 }
212#endif
213
214 }
215}
216
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
rx_buf
uint8_t rx_buf[8]
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:57
tx_buf
uint8_t tx_buf[8]
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:56
I2Cx_ADDRESS
#define I2Cx_ADDRESS
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:40
I2Cx_CLK
#define I2Cx_CLK
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:43
BUF_SIZE
#define BUF_SIZE
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:53
I2Cx_SDA_PIN
#define I2Cx_SDA_PIN
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:142
I2Cx_SCL_PIN
#define I2Cx_SCL_PIN
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:45
hi2cx
i2c_handle_type hi2cx
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:59
I2Cx_SDA_GPIO_PORT
#define I2Cx_SDA_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:50
buffer_compare
uint32_t buffer_compare(uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:86
I2Cx_SDA_GPIO_CLK
#define I2Cx_SDA_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:51
error_handler
void error_handler(uint32_t error_code)
error handler program
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:70
i2c_lowlevel_init
void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:106
I2Cx_SPEED
#define I2Cx_SPEED
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:39
I2Cx_PORT
#define I2Cx_PORT
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:42
I2Cx_SCL_GPIO_CLK
#define I2Cx_SCL_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:47
I2Cx_SCL_GPIO_PORT
#define I2Cx_SCL_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:46
I2C_TIMEOUT
#define I2C_TIMEOUT
Definition: project/at_start_f403/examples/i2c/communication_poll/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
i2c_slave_receive
i2c_status_type i2c_slave_receive(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave receive data through polling mode.
Definition: i2c_application.c:482
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_master_receive
i2c_status_type i2c_master_receive(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master receive data through polling mode.
Definition: i2c_application.c:557
i2c_master_transmit
i2c_status_type i2c_master_transmit(i2c_handle_type *hi2c, uint16_t address, uint8_t *pdata, uint16_t size, uint32_t timeout)
the master transmits data through polling mode.
Definition: i2c_application.c:414
i2c_slave_transmit
i2c_status_type i2c_slave_transmit(i2c_handle_type *hi2c, uint8_t *pdata, uint16_t size, uint32_t timeout)
the slave transmits data through polling mode.
Definition: i2c_application.c:728
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
i2c_status_type
i2c_status_type
Definition: i2c_application.h:93
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
i2c_application.h
i2c application libray header file
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • i2c
  • eeprom
  • inc
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • i2c
  • eeprom
  • inc
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • i2c
  • eeprom
  • inc
project/at_start_f403/examples/i2c/eeprom/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • i2c
  • eeprom
  • src
project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • i2c
  • eeprom
  • src
project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "i2c_application.h"
28
29extern i2c_handle_type hi2cx;
30
31#define I2Cx_DMA_TX_IRQHandler DMA1_Channel4_IRQHandler
32#define I2Cx_DMA_RX_IRQHandler DMA1_Channel5_IRQHandler
33#define I2Cx_EVT_IRQHandler I2C2_EVT_IRQHandler
34#define I2Cx_ERR_IRQHandler I2C2_ERR_IRQHandler
35
49void NMI_Handler(void)
50{
51}
52
58void HardFault_Handler(void)
59{
60 /* go to infinite loop when hard fault exception occurs */
61 while(1)
62 {
63 }
64}
65
71void MemManage_Handler(void)
72{
73 /* go to infinite loop when memory manage exception occurs */
74 while(1)
75 {
76 }
77}
78
84void BusFault_Handler(void)
85{
86 /* go to infinite loop when bus fault exception occurs */
87 while(1)
88 {
89 }
90}
91
97void UsageFault_Handler(void)
98{
99 /* go to infinite loop when usage fault exception occurs */
100 while(1)
101 {
102 }
103}
104
110void SVC_Handler(void)
111{
112}
113
119void DebugMon_Handler(void)
120{
121}
122
128void PendSV_Handler(void)
129{
130}
131
137void SysTick_Handler(void)
138{
139}
140
146void I2Cx_DMA_RX_IRQHandler(void)
147{
148 i2c_dma_rx_irq_handler(&hi2cx);
149}
150
156void I2Cx_DMA_TX_IRQHandler(void)
157{
158 i2c_dma_tx_irq_handler(&hi2cx);
159}
160
166void I2Cx_EVT_IRQHandler(void)
167{
168 i2c_evt_irq_handler(&hi2cx);
169}
170
176void I2Cx_ERR_IRQHandler(void)
177{
178 i2c_err_irq_handler(&hi2cx);
179}
180
hi2cx
i2c_handle_type hi2cx
Definition: project/at_start_f403/examples/i2c/communication_dma/src/main.c:69
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:97
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:58
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:71
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:110
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:128
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:49
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:84
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:137
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:119
i2c_evt_irq_handler
void i2c_evt_irq_handler(i2c_handle_type *hi2c)
interrupt procession function.
Definition: i2c_application.c:2216
i2c_err_irq_handler
void i2c_err_irq_handler(i2c_handle_type *hi2c)
i2c error interrupt function.
Definition: i2c_application.c:2332
i2c_dma_rx_irq_handler
void i2c_dma_rx_irq_handler(i2c_handle_type *hi2c)
dma reveive complete interrupt function.
Definition: i2c_application.c:2286
i2c_dma_tx_irq_handler
void i2c_dma_tx_irq_handler(i2c_handle_type *hi2c)
dma transmission complete interrupt function.
Definition: i2c_application.c:2249
i2c_application.h
i2c application libray header file
I2Cx_EVT_IRQHandler
#define I2Cx_EVT_IRQHandler
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:33
I2Cx_ERR_IRQHandler
#define I2Cx_ERR_IRQHandler
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:34
I2Cx_DMA_TX_IRQHandler
#define I2Cx_DMA_TX_IRQHandler
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:31
I2Cx_DMA_RX_IRQHandler
#define I2Cx_DMA_RX_IRQHandler
Definition: project/at_start_f403/examples/i2c/eeprom/src/at32f403_int.c:32
i2c_handle_type
Definition: i2c_application.h:126
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • i2c
  • eeprom
  • src
project/at_start_f403/examples/i2c/eeprom/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "i2c_application.h"
28
37#define I2C_TIMEOUT 0xFFFFFFFF
38
39#define I2Cx_SPEED 100000
40#define I2Cx_ADDRESS 0xA0
41
42#define I2Cx_PORT I2C2
43#define I2Cx_CLK CRM_I2C2_PERIPH_CLOCK
44
45#define I2Cx_SCL_PIN GPIO_PINS_10
46#define I2Cx_SCL_GPIO_PORT GPIOB
47#define I2Cx_SCL_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
48
49#define I2Cx_SDA_PIN GPIO_PINS_11
50#define I2Cx_SDA_GPIO_PORT GPIOB
51#define I2Cx_SDA_GPIO_CLK CRM_GPIOB_PERIPH_CLOCK
52
53#define I2Cx_DMA_CLK CRM_DMA1_PERIPH_CLOCK
54#define I2Cx_DMA_TX_CHANNEL DMA1_CHANNEL4
55#define I2Cx_DMA_TX_IRQn DMA1_Channel4_IRQn
56
57#define I2Cx_DMA_RX_CHANNEL DMA1_CHANNEL5
58#define I2Cx_DMA_RX_IRQn DMA1_Channel5_IRQn
59
60#define I2Cx_EVT_IRQn I2C2_EVT_IRQn
61#define I2Cx_ERR_IRQn I2C2_ERR_IRQn
62
63#define BUF_SIZE 8
64
65uint8_t tx_buf1[BUF_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08};
66uint8_t tx_buf2[BUF_SIZE] = {0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80};
67uint8_t tx_buf3[BUF_SIZE] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88};
68uint8_t rx_buf1[BUF_SIZE] = {0};
69uint8_t rx_buf2[BUF_SIZE] = {0};
70uint8_t rx_buf3[BUF_SIZE] = {0};
71
72 i2c_handle_type hi2cx;
73
74void error_handler(uint32_t error_code);
75uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len);
76void i2c_lowlevel_init(i2c_handle_type* hi2c);
77
83void error_handler(uint32_t error_code)
84{
85 while(1)
86 {
87 at32_led_toggle(LED2);
88 delay_ms(500);
89 }
90}
91
99uint32_t buffer_compare(uint8_t* buffer1, uint8_t* buffer2, uint32_t len)
100{
101 uint32_t i;
102
103 for(i = 0; i < len; i++)
104 {
105 if(buffer1[i] != buffer2[i])
106 {
107 return 1;
108 }
109 }
110
111 return 0;
112}
113
119void i2c_lowlevel_init(i2c_handle_type* hi2c)
120{
121 gpio_init_type gpio_initstructure;
122
123 if(hi2c->i2cx == I2Cx_PORT)
124 {
125 /* i2c periph clock enable */
126 crm_periph_clock_enable(I2Cx_CLK, TRUE);
127 crm_periph_clock_enable(I2Cx_SCL_GPIO_CLK, TRUE);
128 crm_periph_clock_enable(I2Cx_SDA_GPIO_CLK, TRUE);
129
130 /* gpio configuration */
131 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
132 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
133 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
134 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
135
136 /* configure i2c pins: scl */
137 gpio_initstructure.gpio_pins = I2Cx_SCL_PIN;
138 gpio_init(I2Cx_SCL_GPIO_PORT, &gpio_initstructure);
139
140 /* configure i2c pins: sda */
141 gpio_initstructure.gpio_pins = I2Cx_SDA_PIN;
142 gpio_init(I2Cx_SDA_GPIO_PORT, &gpio_initstructure);
143
144 /* configure and enable i2c dma channel interrupt */
145 nvic_irq_enable(I2Cx_DMA_TX_IRQn, 0, 0);
146 nvic_irq_enable(I2Cx_DMA_RX_IRQn, 0, 0);
147
148 /* configure and enable i2c interrupt */
149 nvic_irq_enable(I2Cx_EVT_IRQn, 0, 0);
150 nvic_irq_enable(I2Cx_ERR_IRQn, 0, 0);
151
152 /* i2c dma tx and rx channels configuration */
153 /* enable the dma clock */
154 crm_periph_clock_enable(I2Cx_DMA_CLK, TRUE);
155
156 /* i2c dma channel configuration */
157 dma_reset(hi2c->dma_tx_channel);
158 dma_reset(hi2c->dma_rx_channel);
159
160 hi2c->dma_tx_channel = I2Cx_DMA_TX_CHANNEL;
161 hi2c->dma_rx_channel = I2Cx_DMA_RX_CHANNEL;
162
163 dma_default_para_init(&hi2c->dma_init_struct);
164 hi2c->dma_init_struct.peripheral_inc_enable = FALSE;
165 hi2c->dma_init_struct.memory_inc_enable = TRUE;
166 hi2c->dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
167 hi2c->dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
168 hi2c->dma_init_struct.loop_mode_enable = FALSE;
169 hi2c->dma_init_struct.priority = DMA_PRIORITY_LOW;
170 hi2c->dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
171
172 dma_init(hi2c->dma_tx_channel, &hi2c->dma_init_struct);
173 dma_init(hi2c->dma_rx_channel, &hi2c->dma_init_struct);
174
175 i2c_init(hi2c->i2cx, I2C_FSMODE_DUTY_2_1, I2Cx_SPEED);
176
177 i2c_own_address1_set(hi2c->i2cx, I2C_ADDRESS_MODE_7BIT, I2Cx_ADDRESS);
178 }
179}
180
186int main(void)
187{
188 i2c_status_type i2c_status;
189
190 /* config nvic priority group */
191 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
192
193 system_clock_config();
194
195 at32_board_init();
196
197 hi2cx.i2cx = I2Cx_PORT;
198
199 i2c_config(&hi2cx);
200
201 while(1)
202 {
203 /* wait for key USER_BUTTON press before starting the communication */
204 while(at32_button_press() != USER_BUTTON)
205 {
206 }
207
208 /* write data to memory device */
209 if((i2c_status = i2c_memory_write(&hi2cx, I2C_MEM_ADDR_WIDIH_8, I2Cx_ADDRESS, 0x00, tx_buf1, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
210 {
211 error_handler(i2c_status);
212 }
213
214 delay_ms(5);
215
216 /* read data from memory device */
217 if((i2c_status = i2c_memory_read(&hi2cx, I2C_MEM_ADDR_WIDIH_8, I2Cx_ADDRESS, 0x00, rx_buf1, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
218 {
219 error_handler(i2c_status);
220 }
221
222 /* write data to memory device */
223 if((i2c_status = i2c_memory_write_int(&hi2cx, I2C_MEM_ADDR_WIDIH_8, I2Cx_ADDRESS, 0x00, tx_buf2, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
224 {
225 error_handler(i2c_status);
226 }
227
228 /* wait for the communication to end */
229 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
230 {
231 error_handler(i2c_status);
232 }
233
234 delay_ms(5);
235
236 /* read data from memory device */
237 if((i2c_status = i2c_memory_read_int(&hi2cx, I2C_MEM_ADDR_WIDIH_8, I2Cx_ADDRESS, 0x00, rx_buf2, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
238 {
239 error_handler(i2c_status);
240 }
241
242 /* wait for the communication to end */
243 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
244 {
245 error_handler(i2c_status);
246 }
247
248 /* write data to memory device */
249 if((i2c_status = i2c_memory_write_dma(&hi2cx, I2C_MEM_ADDR_WIDIH_8, I2Cx_ADDRESS, 0x00, tx_buf3, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
250 {
251 error_handler(i2c_status);
252 }
253
254 /* wait for the communication to end */
255 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
256 {
257 error_handler(i2c_status);
258 }
259
260 delay_ms(5);
261
262 /* read data from memory device */
263 if((i2c_status = i2c_memory_read_dma(&hi2cx, I2C_MEM_ADDR_WIDIH_8, I2Cx_ADDRESS, 0x00, rx_buf3, BUF_SIZE, I2C_TIMEOUT)) != I2C_OK)
264 {
265 error_handler(i2c_status);
266 }
267
268 /* wait for the communication to end */
269 if(i2c_wait_end(&hi2cx, I2C_TIMEOUT) != I2C_OK)
270 {
271 error_handler(i2c_status);
272 }
273
274 if((buffer_compare(tx_buf1, rx_buf1, BUF_SIZE) == 0) &&
275 (buffer_compare(tx_buf2, rx_buf2, BUF_SIZE) == 0) &&
276 (buffer_compare(tx_buf3, rx_buf3, BUF_SIZE) == 0))
277 {
278 at32_led_on(LED3);
279 }
280 else
281 {
282 error_handler(i2c_status);
283 }
284
285 }
286}
287
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
I2Cx_ADDRESS
#define I2Cx_ADDRESS
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:40
I2Cx_DMA_RX_IRQn
#define I2Cx_DMA_RX_IRQn
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:58
I2Cx_CLK
#define I2Cx_CLK
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:43
tx_buf3
uint8_t tx_buf3[8]
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:67
I2Cx_DMA_TX_CHANNEL
#define I2Cx_DMA_TX_CHANNEL
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:54
BUF_SIZE
#define BUF_SIZE
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:63
rx_buf1
uint8_t rx_buf1[8]
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:68
I2Cx_SDA_PIN
#define I2Cx_SDA_PIN
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:186
I2Cx_SCL_PIN
#define I2Cx_SCL_PIN
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:45
hi2cx
i2c_handle_type hi2cx
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:72
I2Cx_SDA_GPIO_PORT
#define I2Cx_SDA_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:50
buffer_compare
uint32_t buffer_compare(uint8_t *buffer1, uint8_t *buffer2, uint32_t len)
compare whether the valus of buffer 1 and buffer 2 are equal.
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:99
I2Cx_DMA_CLK
#define I2Cx_DMA_CLK
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:53
I2Cx_SDA_GPIO_CLK
#define I2Cx_SDA_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:51
rx_buf2
uint8_t rx_buf2[8]
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:69
I2Cx_ERR_IRQn
#define I2Cx_ERR_IRQn
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:61
error_handler
void error_handler(uint32_t error_code)
error handler program
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:83
i2c_lowlevel_init
void i2c_lowlevel_init(i2c_handle_type *hi2c)
initializes peripherals used by the i2c.
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:119
I2Cx_SPEED
#define I2Cx_SPEED
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:39
I2Cx_PORT
#define I2Cx_PORT
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:42
rx_buf3
uint8_t rx_buf3[8]
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:70
tx_buf2
uint8_t tx_buf2[8]
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:66
I2Cx_SCL_GPIO_CLK
#define I2Cx_SCL_GPIO_CLK
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:47
I2Cx_DMA_RX_CHANNEL
#define I2Cx_DMA_RX_CHANNEL
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:57
I2Cx_DMA_TX_IRQn
#define I2Cx_DMA_TX_IRQn
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:55
tx_buf1
uint8_t tx_buf1[8]
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:65
I2Cx_EVT_IRQn
#define I2Cx_EVT_IRQn
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:60
I2Cx_SCL_GPIO_PORT
#define I2Cx_SCL_GPIO_PORT
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:46
I2C_TIMEOUT
#define I2C_TIMEOUT
Definition: project/at_start_f403/examples/i2c/eeprom/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
i2c_memory_read_dma
i2c_status_type i2c_memory_read_dma(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode.
Definition: i2c_application.c:1871
i2c_wait_end
i2c_status_type i2c_wait_end(i2c_handle_type *hi2c, uint32_t timeout)
wait for the transfer to end.
Definition: i2c_application.c:122
i2c_memory_write_dma
i2c_status_type i2c_memory_write_dma(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through dma mode.
Definition: i2c_application.c:1788
i2c_memory_write_int
i2c_status_type i2c_memory_write_int(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through interrupt mode.
Definition: i2c_application.c:1594
i2c_memory_write
i2c_status_type i2c_memory_write(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
write data to the memory device through polling mode.
Definition: i2c_application.c:1292
i2c_config
void i2c_config(i2c_handle_type *hi2c)
i2c peripheral initialization.
Definition: i2c_application.c:104
i2c_memory_read
i2c_status_type i2c_memory_read(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through polling mode.
Definition: i2c_application.c:1381
i2c_memory_read_int
i2c_status_type i2c_memory_read_int(i2c_handle_type *hi2c, i2c_mem_address_width_type mem_address_width, uint16_t address, uint16_t mem_address, uint8_t *pdata, uint16_t size, uint32_t timeout)
read data from memory device through interrupt mode.
Definition: i2c_application.c:1671
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_LOW
@ DMA_PRIORITY_LOW
Definition: at32f403_dma.h:174
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
i2c_own_address1_set
void i2c_own_address1_set(i2c_type *i2c_x, i2c_address_mode_type mode, uint16_t address)
config own address1.
Definition: at32f403_i2c.c:192
i2c_init
void i2c_init(i2c_type *i2c_x, i2c_fsmode_duty_cycle_type duty, uint32_t speed)
init i2c speed and duty cycle.
Definition: at32f403_i2c.c:93
I2C_FSMODE_DUTY_2_1
@ I2C_FSMODE_DUTY_2_1
Definition: at32f403_i2c.h:146
I2C_ADDRESS_MODE_7BIT
@ I2C_ADDRESS_MODE_7BIT
Definition: at32f403_i2c.h:155
I2C_MEM_ADDR_WIDIH_8
@ I2C_MEM_ADDR_WIDIH_8
Definition: i2c_application.h:59
i2c_status_type
i2c_status_type
Definition: i2c_application.h:93
I2C_OK
@ I2C_OK
Definition: i2c_application.h:94
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
i2c_application.h
i2c application libray header file
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2c_handle_type
Definition: i2c_application.h:126
i2c_handle_type::dma_rx_channel
dma_channel_type * dma_rx_channel
Definition: i2c_application.h:135
i2c_handle_type::i2cx
i2c_type * i2cx
Definition: i2c_application.h:127
i2c_handle_type::dma_init_struct
dma_init_type dma_init_struct
Definition: i2c_application.h:136
i2c_handle_type::dma_tx_channel
dma_channel_type * dma_tx_channel
Definition: i2c_application.h:134
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • i2s
  • halfduplex_dma
  • inc
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • i2s
  • halfduplex_dma
  • inc
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • i2s
  • halfduplex_dma
  • inc
project/at_start_f403/examples/i2s/halfduplex_dma/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • i2s
  • halfduplex_dma
  • src
project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • i2s
  • halfduplex_dma
  • src
project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • i2s
  • halfduplex_dma
  • src
project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include <stdio.h>
28
29
38uint16_t i2s1_buffer_tx[32] = {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C,
39 0x0D0E, 0x0F10, 0x1112, 0x1314, 0x1516, 0x1718,
40 0x191A, 0x1B1C, 0x1D1E, 0x1F20, 0x2122, 0x2324,
41 0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
42 0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C,
43 0x3D3E, 0x3F40};
44uint16_t i2s2_buffer_rx[32];
45volatile error_status transfer_status = ERROR;
46
47static void gpio_config(void);
48static void i2s_config(void);
49 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length);
50
56 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length)
57{
58 while(buffer_length--)
59 {
60 if(*pbuffer1 != *pbuffer2)
61 {
62 return ERROR;
63 }
64
65 pbuffer1++;
66 pbuffer2++;
67 }
68 return SUCCESS;
69}
70
76static void i2s_config(void)
77{
78 dma_init_type dma_init_struct;
79 i2s_init_type i2s_init_struct;
80
81 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
82 dma_reset(DMA1_CHANNEL4);
83 dma_reset(DMA1_CHANNEL3);
84 dma_default_para_init(&dma_init_struct);
85 dma_init_struct.buffer_size = 32;
86 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
87 dma_init_struct.memory_base_addr = (uint32_t)i2s1_buffer_tx;
88 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
89 dma_init_struct.memory_inc_enable = TRUE;
90 dma_init_struct.peripheral_base_addr = (uint32_t)0x4001300C;
91 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
92 dma_init_struct.peripheral_inc_enable = FALSE;
93 dma_init_struct.priority = DMA_PRIORITY_HIGH;
94 dma_init_struct.loop_mode_enable = FALSE;
95 dma_init(DMA1_CHANNEL3, &dma_init_struct);
96
97 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
98 dma_init_struct.memory_base_addr = (uint32_t)i2s2_buffer_rx;
99 dma_init_struct.peripheral_base_addr = (uint32_t)0x4000380C;
100 dma_init(DMA1_CHANNEL4, &dma_init_struct);
101
102 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
103 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
104 i2s_default_para_init(&i2s_init_struct);
105 i2s_init_struct.audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
106 i2s_init_struct.data_channel_format = I2S_DATA_16BIT_CHANNEL_32BIT;
107 i2s_init_struct.mclk_output_enable = TRUE;
108 i2s_init_struct.audio_sampling_freq = I2S_AUDIO_FREQUENCY_48K;
109 i2s_init_struct.clock_polarity = I2S_CLOCK_POLARITY_LOW;
110 i2s_init_struct.operation_mode = I2S_MODE_MASTER_TX;
111 i2s_init(SPI1, &i2s_init_struct);
112
113 i2s_init_struct.operation_mode =I2S_MODE_SLAVE_RX;
114 i2s_init(SPI2, &i2s_init_struct);
115
116 dma_channel_enable(DMA1_CHANNEL3, TRUE);
117 dma_channel_enable(DMA1_CHANNEL4, TRUE);
118 spi_i2s_dma_receiver_enable(SPI2, TRUE);
119 i2s_enable(SPI1, TRUE);
120 i2s_enable(SPI2, TRUE);
121}
122
128static void gpio_config(void)
129{
130 gpio_init_type gpio_initstructure;
131 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
132 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
133 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
134 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
135 gpio_pin_remap_config(SWJTAG_MUX_010, TRUE);
136 gpio_pin_remap_config(SPI1_MUX_01, TRUE);
137
138 /* master ws pin */
139 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
140 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
141 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
142 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
143 gpio_initstructure.gpio_pins = GPIO_PINS_15;
144 gpio_init(GPIOA, &gpio_initstructure);
145
146 /* master ck pin */
147 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
148 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
149 gpio_initstructure.gpio_pins = GPIO_PINS_3;
150 gpio_init(GPIOB, &gpio_initstructure);
151
152 /* master sd pin */
153 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
154 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
155 gpio_initstructure.gpio_pins = GPIO_PINS_5;
156 gpio_init(GPIOB, &gpio_initstructure);
157
158 /* master mck pin */
159 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
160 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
161 gpio_initstructure.gpio_pins = GPIO_PINS_7;
162 gpio_init(GPIOC, &gpio_initstructure);
163
164 /* slave ws pin */
165 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
166 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
167 gpio_initstructure.gpio_pins = GPIO_PINS_12;
168 gpio_init(GPIOB, &gpio_initstructure);
169
170 /* slave ck pin */
171 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
172 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
173 gpio_initstructure.gpio_pins = GPIO_PINS_13;
174 gpio_init(GPIOB, &gpio_initstructure);
175
176 /* slave sd pin */
177 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
178 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
179 gpio_initstructure.gpio_pins = GPIO_PINS_15;
180 gpio_init(GPIOB, &gpio_initstructure);
181}
182
188int main(void)
189{
190 system_clock_config();
191 at32_board_init();
192 at32_led_off(LED2);
193 at32_led_off(LED3);
194 at32_led_off(LED4);
195 gpio_config();
196 i2s_config();
197 spi_i2s_dma_transmitter_enable(SPI1, TRUE);
198
199 while(dma_flag_get(DMA1_FDT4_FLAG) == RESET);
200
201 /* test result:the data check */
202 transfer_status = buffer_compare(i2s2_buffer_rx, i2s1_buffer_tx, 32);
203
204 /* test result indicate:if passed ,led2 lights */
205 if(transfer_status==SUCCESS)
206 {
207 at32_led_on(LED2);
208 }
209 else
210 {
211 at32_led_off(LED2);
212 }
213 while(1)
214 {
215 }
216}
217
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
buffer_compare
error_status buffer_compare(uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:56
i2s_config
static void i2s_config(void)
i2s configuration.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:76
i2s1_buffer_tx
uint16_t i2s1_buffer_tx[32]
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:188
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:128
transfer_status
volatile error_status transfer_status
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:45
i2s2_buffer_rx
uint16_t i2s2_buffer_rx[32]
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:44
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA1_FDT4_FLAG
#define DMA1_FDT4_FLAG
Definition: at32f403_dma.h:76
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL4
#define DMA1_CHANNEL4
Definition: at32f403_dma.h:358
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SWJTAG_MUX_010
#define SWJTAG_MUX_010
Definition: at32f403_gpio.h:103
SPI1_MUX_01
#define SPI1_MUX_01
Definition: at32f403_gpio.h:79
i2s_init
void i2s_init(spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value.
Definition: at32f403_spi.c:326
spi_i2s_dma_receiver_enable
void spi_i2s_dma_receiver_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode.
Definition: at32f403_spi.c:509
i2s_enable
void i2s_enable(spi_type *spi_x, confirm_state new_state)
enable or disable i2s.
Definition: at32f403_spi.c:455
i2s_default_para_init
void i2s_default_para_init(i2s_init_type *i2s_init_struct)
i2s init config with its default value.
Definition: at32f403_spi.c:308
spi_i2s_dma_transmitter_enable
void spi_i2s_dma_transmitter_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode.
Definition: at32f403_spi.c:495
I2S_CLOCK_POLARITY_LOW
@ I2S_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:247
I2S_DATA_16BIT_CHANNEL_32BIT
@ I2S_DATA_16BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:226
I2S_AUDIO_FREQUENCY_48K
@ I2S_AUDIO_FREQUENCY_48K
Definition: at32f403_spi.h:215
I2S_AUDIO_PROTOCOL_PHILLIPS
@ I2S_AUDIO_PROTOCOL_PHILLIPS
Definition: at32f403_spi.h:196
I2S_MODE_MASTER_TX
@ I2S_MODE_MASTER_TX
Definition: at32f403_spi.h:238
I2S_MODE_SLAVE_RX
@ I2S_MODE_SLAVE_RX
Definition: at32f403_spi.h:237
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2s_init_type
i2s init type
Definition: at32f403_spi.h:270
i2s_init_type::audio_sampling_freq
i2s_audio_sampling_freq_type audio_sampling_freq
Definition: at32f403_spi.h:273
i2s_init_type::data_channel_format
i2s_data_channel_format_type data_channel_format
Definition: at32f403_spi.h:274
i2s_init_type::mclk_output_enable
confirm_state mclk_output_enable
Definition: at32f403_spi.h:276
i2s_init_type::audio_protocol
i2s_audio_protocol_type audio_protocol
Definition: at32f403_spi.h:272
i2s_init_type::operation_mode
i2s_operation_mode_type operation_mode
Definition: at32f403_spi.h:271
i2s_init_type::clock_polarity
i2s_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:275
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • i2s
  • halfduplex_interrupt
  • inc
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • i2s
  • halfduplex_interrupt
  • inc
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • i2s
  • halfduplex_interrupt
  • inc
project/at_start_f403/examples/i2s/halfduplex_interrupt/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • i2s
  • halfduplex_interrupt
  • src
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • i2s
  • halfduplex_interrupt
  • src
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern uint16_t i2s1_buffer_tx[];
30extern uint16_t i2s2_buffer_rx[];
31extern __IO uint32_t tx_index, rx_index;
32
46void NMI_Handler(void)
47{
48}
49
55void HardFault_Handler(void)
56{
57 /* go to infinite loop when hard fault exception occurs */
58 while(1)
59 {
60 }
61}
62
68void MemManage_Handler(void)
69{
70 /* go to infinite loop when memory manage exception occurs */
71 while(1)
72 {
73 }
74}
75
81void BusFault_Handler(void)
82{
83 /* go to infinite loop when bus fault exception occurs */
84 while(1)
85 {
86 }
87}
88
94void UsageFault_Handler(void)
95{
96 /* go to infinite loop when usage fault exception occurs */
97 while(1)
98 {
99 }
100}
101
107void SVC_Handler(void)
108{
109}
110
116void DebugMon_Handler(void)
117{
118}
119
125void PendSV_Handler(void)
126{
127}
128
134void SysTick_Handler(void)
135{
136}
137
138
144 void SPI2_IRQHandler(void)
145{
146 if(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) != RESET)
147 {
148 i2s2_buffer_rx[rx_index++] = spi_i2s_data_receive(SPI2);
149 }
150}
151
157void SPI1_IRQHandler(void)
158{
159 if(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) != RESET)
160 {
161 spi_i2s_data_transmit(SPI1, i2s1_buffer_tx[tx_index++]);
162 if(tx_index == 32)
163 {
164 spi_i2s_interrupt_enable(SPI1, SPI_I2S_TDBE_INT, FALSE);
165 }
166 }
167}
168
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
i2s1_buffer_tx
uint16_t i2s1_buffer_tx[]
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:38
i2s2_buffer_rx
uint16_t i2s2_buffer_rx[]
Definition: project/at_start_f403/examples/i2s/halfduplex_dma/src/main.c:44
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:94
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:55
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:68
tx_index
__IO uint32_t tx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:44
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:107
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:125
SPI2_IRQHandler
void SPI2_IRQHandler(void)
This function handles the spi2 interrupt request.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:144
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:46
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:81
SPI1_IRQHandler
void SPI1_IRQHandler(void)
This function handles the spi1 interrupt request.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:157
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:134
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:116
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
SPI_I2S_TDBE_INT
#define SPI_I2S_TDBE_INT
Definition: at32f403_spi.h:72
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
rx_index
__IO uint32_t rx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:31
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • i2s
  • halfduplex_interrupt
  • src
project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include <stdio.h>
28
37uint16_t i2s1_buffer_tx[32] = {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C,
38 0x0D0E, 0x0F10, 0x1112, 0x1314, 0x1516, 0x1718,
39 0x191A, 0x1B1C, 0x1D1E, 0x1F20, 0x2122, 0x2324,
40 0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
41 0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C,
42 0x3D3E, 0x3F40};
43uint16_t i2s2_buffer_rx[32];
44__IO uint32_t tx_index = 0, rx_index = 0;
45volatile error_status transfer_status1 = ERROR, transfer_status2 = ERROR;
46
47static void gpio_config(void);
48static void i2s_config(i2s_data_channel_format_type format, i2s_audio_sampling_freq_type freq);
49 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length);
50 error_status buffer_compare_24bits(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length);
51
57 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length)
58{
59 while(buffer_length--)
60 {
61 if(*pbuffer1 != *pbuffer2)
62 {
63 return ERROR;
64 }
65
66 pbuffer1++;
67 pbuffer2++;
68 }
69 return SUCCESS;
70}
71
77 error_status buffer_compare_24bits(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length)
78{
79 while(buffer_length--)
80 {
81 if(*pbuffer1 != *pbuffer2)
82 {
83 if(*pbuffer1 != (*pbuffer2 & 0xFF00))
84 {
85 return ERROR;
86 }
87 }
88
89 pbuffer1++;
90 pbuffer2++;
91 }
92 return SUCCESS;
93}
94
100static void i2s_config(i2s_data_channel_format_type format, i2s_audio_sampling_freq_type freq)
101{
102 i2s_init_type i2s_init_struct;
103
104 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
105 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
106
107 nvic_irq_enable(SPI1_IRQn, 0, 0);
108 nvic_irq_enable(SPI2_IRQn, 0, 0);
109 spi_i2s_reset(SPI1);
110 spi_i2s_reset(SPI2);
111 i2s_default_para_init(&i2s_init_struct);
112 i2s_init_struct.audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
113 i2s_init_struct.data_channel_format = format;
114 i2s_init_struct.mclk_output_enable = TRUE;
115 i2s_init_struct.audio_sampling_freq = freq;
116 i2s_init_struct.clock_polarity = I2S_CLOCK_POLARITY_LOW;
117 i2s_init_struct.operation_mode = I2S_MODE_MASTER_TX;
118 i2s_init(SPI1, &i2s_init_struct);
119
120 i2s_init_struct.operation_mode =I2S_MODE_SLAVE_RX;
121 i2s_init(SPI2, &i2s_init_struct);
122
123 spi_i2s_interrupt_enable(SPI2, SPI_I2S_RDBF_INT, TRUE);
124 spi_i2s_interrupt_enable(SPI1, SPI_I2S_TDBE_INT, TRUE);
125 i2s_enable(SPI2, TRUE);
126 i2s_enable(SPI1, TRUE);
127}
128
134static void gpio_config(void)
135{
136 gpio_init_type gpio_initstructure;
137 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
138 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
139 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
140 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
141 gpio_pin_remap_config(SWJTAG_MUX_010, TRUE);
142 gpio_pin_remap_config(SPI1_MUX_01, TRUE);
143
144 /* master ws pin */
145 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
146 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
147 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
148 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
149 gpio_initstructure.gpio_pins = GPIO_PINS_15;
150 gpio_init(GPIOA, &gpio_initstructure);
151
152 /* master ck pin */
153 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
154 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
155 gpio_initstructure.gpio_pins = GPIO_PINS_3;
156 gpio_init(GPIOB, &gpio_initstructure);
157
158 /* master sd pin */
159 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
160 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
161 gpio_initstructure.gpio_pins = GPIO_PINS_5;
162 gpio_init(GPIOB, &gpio_initstructure);
163
164 /* master mck pin */
165 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
166 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
167 gpio_initstructure.gpio_pins = GPIO_PINS_7;
168 gpio_init(GPIOC, &gpio_initstructure);
169
170 /* slave ws pin */
171 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
172 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
173 gpio_initstructure.gpio_pins = GPIO_PINS_12;
174 gpio_init(GPIOB, &gpio_initstructure);
175
176 /* slave ck pin */
177 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
178 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
179 gpio_initstructure.gpio_pins = GPIO_PINS_13;
180 gpio_init(GPIOB, &gpio_initstructure);
181
182 /* slave sd pin */
183 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
184 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
185 gpio_initstructure.gpio_pins = GPIO_PINS_15;
186 gpio_init(GPIOB, &gpio_initstructure);
187}
188
194int main(void)
195{
196 __IO uint32_t index = 0;
197 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
198 system_clock_config();
199 at32_board_init();
200 at32_led_off(LED2);
201 at32_led_off(LED3);
202 at32_led_off(LED4);
203 gpio_config();
204 i2s_config(I2S_DATA_16BIT_CHANNEL_32BIT, I2S_AUDIO_FREQUENCY_48K);
205 while(rx_index < 32);
206
207 /* test result:the data check */
208 transfer_status1 = buffer_compare(i2s2_buffer_rx, i2s1_buffer_tx, 32);
209
210 for(index = 0; index < 32; index++) i2s2_buffer_rx[index] = 0;
211 tx_index = 0;
212 rx_index = 0;
213
214 i2s_config(I2S_DATA_24BIT_CHANNEL_32BIT, I2S_AUDIO_FREQUENCY_16K);
215 while(rx_index < 32);
216
217 /* test result:the data check */
218 transfer_status2 = buffer_compare_24bits(i2s2_buffer_rx, i2s1_buffer_tx, 32);
219
220 /* test result indicate:if passed ,led2 lights */
221 if((transfer_status1 == SUCCESS) && (transfer_status2 == SUCCESS))
222 {
223 at32_led_on(LED2);
224 }
225 else
226 {
227 at32_led_off(LED2);
228 }
229
230 while(1)
231 {
232 }
233}
234
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
buffer_compare
error_status buffer_compare(uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:57
tx_index
__IO uint32_t tx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:44
transfer_status1
volatile error_status transfer_status1
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:45
i2s1_buffer_tx
uint16_t i2s1_buffer_tx[32]
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:37
i2s_config
static void i2s_config(i2s_data_channel_format_type format, i2s_audio_sampling_freq_type freq)
i2s configuration.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:100
transfer_status2
volatile error_status transfer_status2
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:45
main
int main(void)
main function.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:194
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:134
buffer_compare_24bits
error_status buffer_compare_24bits(uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare_24bits function.
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:77
rx_index
__IO uint32_t rx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:44
i2s2_buffer_rx
uint16_t i2s2_buffer_rx[32]
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:43
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
SPI2_IRQn
@ SPI2_IRQn
Definition: at32f403.h:215
SPI1_IRQn
@ SPI1_IRQn
Definition: at32f403.h:214
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SWJTAG_MUX_010
#define SWJTAG_MUX_010
Definition: at32f403_gpio.h:103
SPI1_MUX_01
#define SPI1_MUX_01
Definition: at32f403_gpio.h:79
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
SPI_I2S_TDBE_INT
#define SPI_I2S_TDBE_INT
Definition: at32f403_spi.h:72
SPI_I2S_RDBF_INT
#define SPI_I2S_RDBF_INT
Definition: at32f403_spi.h:71
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
i2s_init
void i2s_init(spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value.
Definition: at32f403_spi.c:326
i2s_enable
void i2s_enable(spi_type *spi_x, confirm_state new_state)
enable or disable i2s.
Definition: at32f403_spi.c:455
spi_i2s_reset
void spi_i2s_reset(spi_type *spi_x)
spi reset by crm reset register
Definition: at32f403_spi.c:49
i2s_default_para_init
void i2s_default_para_init(i2s_init_type *i2s_init_struct)
i2s init config with its default value.
Definition: at32f403_spi.c:308
i2s_data_channel_format_type
i2s_data_channel_format_type
i2s data bit num and channel bit num type
Definition: at32f403_spi.h:224
i2s_audio_sampling_freq_type
i2s_audio_sampling_freq_type
i2s audio frequency type
Definition: at32f403_spi.h:207
I2S_CLOCK_POLARITY_LOW
@ I2S_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:247
I2S_DATA_24BIT_CHANNEL_32BIT
@ I2S_DATA_24BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:227
I2S_DATA_16BIT_CHANNEL_32BIT
@ I2S_DATA_16BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:226
I2S_AUDIO_FREQUENCY_48K
@ I2S_AUDIO_FREQUENCY_48K
Definition: at32f403_spi.h:215
I2S_AUDIO_FREQUENCY_16K
@ I2S_AUDIO_FREQUENCY_16K
Definition: at32f403_spi.h:211
I2S_AUDIO_PROTOCOL_PHILLIPS
@ I2S_AUDIO_PROTOCOL_PHILLIPS
Definition: at32f403_spi.h:196
I2S_MODE_MASTER_TX
@ I2S_MODE_MASTER_TX
Definition: at32f403_spi.h:238
I2S_MODE_SLAVE_RX
@ I2S_MODE_SLAVE_RX
Definition: at32f403_spi.h:237
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2s_init_type
i2s init type
Definition: at32f403_spi.h:270
i2s_init_type::audio_sampling_freq
i2s_audio_sampling_freq_type audio_sampling_freq
Definition: at32f403_spi.h:273
i2s_init_type::data_channel_format
i2s_data_channel_format_type data_channel_format
Definition: at32f403_spi.h:274
i2s_init_type::mclk_output_enable
confirm_state mclk_output_enable
Definition: at32f403_spi.h:276
i2s_init_type::audio_protocol
i2s_audio_protocol_type audio_protocol
Definition: at32f403_spi.h:272
i2s_init_type::operation_mode
i2s_operation_mode_type operation_mode
Definition: at32f403_spi.h:271
i2s_init_type::clock_polarity
i2s_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:275
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • i2s
  • spii2s_switch_halfduplex_polling
  • inc
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • i2s
  • spii2s_switch_halfduplex_polling
  • inc
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • i2s
  • spii2s_switch_halfduplex_polling
  • inc
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • i2s
  • spii2s_switch_halfduplex_polling
  • src
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • i2s
  • spii2s_switch_halfduplex_polling
  • src
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • i2s
  • spii2s_switch_halfduplex_polling
  • src
project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include <stdio.h>
28
37uint16_t i2s1_buffer_tx[32] = {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C,
38 0x0D0E, 0x0F10, 0x1112, 0x1314, 0x1516, 0x1718,
39 0x191A, 0x1B1C, 0x1D1E, 0x1F20, 0x2122, 0x2324,
40 0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
41 0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C,
42 0x3D3E, 0x3F40
43 };
44uint16_t spi1_buffer_tx[32] = {0x5152, 0x5354, 0x5556, 0x5758, 0x595A, 0x5B5C,
45 0x5D5E, 0x5F60, 0x6162, 0x6364, 0x6566, 0x6768,
46 0x696A, 0x6B6C, 0x6D6E, 0x6F70, 0x7172, 0x7374,
47 0x7576, 0x7778, 0x797A, 0x7B7C, 0x7D7E, 0x7F80,
48 0x8182, 0x8384, 0x8586, 0x8788, 0x898A, 0x8B8C,
49 0x8D8E, 0x8F90
50 };
51uint16_t i2s2_buffer_rx[32];
52uint16_t spi2_buffer_rx[32];
53__IO uint32_t tx_index = 0, rx_index = 0;
54volatile error_status transfer_status1 = ERROR, transfer_status2 = ERROR, transfer_status3 = ERROR;
55
56static void gpio_config(void);
57static void spi_config(void);
58static void i2s_config(i2s_operation_mode_type i2s3_mode, i2s_operation_mode_type i2s2_mode);
59 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length);
60
66 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length)
67{
68 while(buffer_length--)
69 {
70 if(*pbuffer1 != *pbuffer2)
71 {
72 return ERROR;
73 }
74
75 pbuffer1++;
76 pbuffer2++;
77 }
78 return SUCCESS;
79}
80
86static void i2s_config(i2s_operation_mode_type i2s1_mode, i2s_operation_mode_type i2s2_mode)
87{
88 i2s_init_type i2s_init_struct;
89
90 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
91 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
92
93 spi_i2s_reset(SPI1);
94 spi_i2s_reset(SPI2);
95 i2s_default_para_init(&i2s_init_struct);
96 i2s_init_struct.audio_protocol = I2S_AUDIO_PROTOCOL_PHILLIPS;
97 i2s_init_struct.data_channel_format = I2S_DATA_16BIT_CHANNEL_32BIT;
98 i2s_init_struct.mclk_output_enable = FALSE;
99 i2s_init_struct.audio_sampling_freq = I2S_AUDIO_FREQUENCY_8K;
100 i2s_init_struct.clock_polarity = I2S_CLOCK_POLARITY_LOW;
101 i2s_init_struct.operation_mode = i2s1_mode;
102 i2s_init(SPI1, &i2s_init_struct);
103
104 i2s_init_struct.operation_mode =i2s2_mode;
105 i2s_init(SPI2, &i2s_init_struct);
106}
107
113static void spi_config(void)
114{
115 spi_init_type spi_init_struct;
116 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
117 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
118
119 spi_i2s_reset(SPI2);
120 spi_i2s_reset(SPI1);
121 spi_default_para_init(&spi_init_struct);
122 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_TX;
123 spi_init_struct.master_slave_mode =SPI_MODE_MASTER;
124 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_64;
125 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_MSB;
126 spi_init_struct.frame_bit_num = SPI_FRAME_16BIT;
127 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_LOW;
128 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
129 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
130 spi_init(SPI1, &spi_init_struct);
131
132 spi_init_struct.transmission_mode = SPI_TRANSMIT_SIMPLEX_RX;
133 spi_init_struct.master_slave_mode =SPI_MODE_SLAVE;
134 spi_init(SPI2, &spi_init_struct);
135
136 spi_enable(SPI2, TRUE);
137 spi_enable(SPI1, TRUE);
138}
139
145static void gpio_config(void)
146{
147 gpio_init_type gpio_initstructure;
148 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
149 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
150 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
151 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
152 gpio_pin_remap_config(SWJTAG_MUX_010, TRUE);
153 gpio_pin_remap_config(SPI1_MUX_01, TRUE);
154
155 /* master ws pin */
156 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
157 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
158 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
159 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
160 gpio_initstructure.gpio_pins = GPIO_PINS_15;
161 gpio_init(GPIOA, &gpio_initstructure);
162
163 /* master ck pin */
164 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
165 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
166 gpio_initstructure.gpio_pins = GPIO_PINS_3;
167 gpio_init(GPIOB, &gpio_initstructure);
168
169 /* master sd pin */
170 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
171 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
172 gpio_initstructure.gpio_pins = GPIO_PINS_5;
173 gpio_init(GPIOB, &gpio_initstructure);
174
175 /* master mck pin */
176 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
177 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
178 gpio_initstructure.gpio_pins = GPIO_PINS_7;
179 gpio_init(GPIOC, &gpio_initstructure);
180
181 /* slave ws pin */
182 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
183 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
184 gpio_initstructure.gpio_pins = GPIO_PINS_12;
185 gpio_init(GPIOB, &gpio_initstructure);
186
187 /* slave ck pin */
188 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
189 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
190 gpio_initstructure.gpio_pins = GPIO_PINS_13;
191 gpio_init(GPIOB, &gpio_initstructure);
192
193 /* slave sd pin */
194 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
195 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
196 gpio_initstructure.gpio_pins = GPIO_PINS_15;
197 gpio_init(GPIOB, &gpio_initstructure);
198}
199
205int main(void)
206{
207 __IO uint32_t index = 0;
208 system_clock_config();
209 at32_board_init();
210 at32_led_off(LED2);
211 at32_led_off(LED3);
212 at32_led_off(LED4);
213 gpio_config();
214 i2s_config(I2S_MODE_MASTER_TX, I2S_MODE_SLAVE_RX);
215 i2s_enable(SPI2, TRUE);
216 i2s_enable(SPI1, TRUE);
217 while(rx_index < 32)
218 {
219 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
220 spi_i2s_data_transmit(SPI1, i2s1_buffer_tx[tx_index++]);
221 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
222 i2s2_buffer_rx[rx_index++] = spi_i2s_data_receive(SPI2);
223 }
224 while(spi_i2s_flag_get(SPI1, SPI_I2S_BF_FLAG) != RESET);
225 /* test result:the data check */
226 transfer_status1 = buffer_compare(i2s2_buffer_rx, i2s1_buffer_tx, 32);
227
228 tx_index = 0;
229 rx_index = 0;
230 spi_config();
231 while(rx_index < 32)
232 {
233 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
234 spi_i2s_data_transmit(SPI1, spi1_buffer_tx[tx_index++]);
235 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
236 spi2_buffer_rx[rx_index++] = spi_i2s_data_receive(SPI2);
237 }
238 while(spi_i2s_flag_get(SPI2, SPI_I2S_BF_FLAG) != RESET);
239 /* test result:the data check */
240 transfer_status2 = buffer_compare(spi2_buffer_rx, spi1_buffer_tx, 32);
241
242 for(index = 0; index < 32; index++) i2s2_buffer_rx[index] = 0;
243 tx_index = 0;
244 rx_index = 0;
245 i2s_config(I2S_MODE_SLAVE_TX, I2S_MODE_MASTER_RX);
246 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
247 spi_i2s_data_transmit(SPI1, i2s1_buffer_tx[tx_index++]);
248 i2s_enable(SPI1, TRUE);
249 i2s_enable(SPI2, TRUE);
250 while(rx_index < 32)
251 {
252 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
253 i2s2_buffer_rx[rx_index++] = spi_i2s_data_receive(SPI2);
254 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
255 spi_i2s_data_transmit(SPI1, i2s1_buffer_tx[tx_index++]);
256 }
257 while(spi_i2s_flag_get(SPI2, SPI_I2S_BF_FLAG) != RESET);
258 i2s_enable(SPI2, FALSE);
259
260 /* test result:the data check */
261 transfer_status3 = buffer_compare(i2s2_buffer_rx, i2s1_buffer_tx, 32);
262
263 /* test result indicate:if passed ,led2 lights */
264 if((transfer_status1 == SUCCESS) && (transfer_status2 == SUCCESS) && (transfer_status3 == SUCCESS))
265 {
266 at32_led_on(LED2);
267 }
268 else
269 {
270 at32_led_off(LED2);
271 }
272 while(1)
273 {
274 }
275}
276
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
buffer_compare
error_status buffer_compare(uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer_compare function.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:66
tx_index
__IO uint32_t tx_index
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:53
transfer_status3
volatile error_status transfer_status3
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:54
spi_config
static void spi_config(void)
spi configuration.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:113
transfer_status1
volatile error_status transfer_status1
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:54
i2s1_buffer_tx
uint16_t i2s1_buffer_tx[32]
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:37
transfer_status2
volatile error_status transfer_status2
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:54
main
int main(void)
main function.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:205
i2s_config
static void i2s_config(i2s_operation_mode_type i2s3_mode, i2s_operation_mode_type i2s2_mode)
i2s configuration.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:86
spi2_buffer_rx
uint16_t spi2_buffer_rx[32]
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:52
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:145
spi1_buffer_tx
uint16_t spi1_buffer_tx[32]
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:44
rx_index
__IO uint32_t rx_index
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:53
i2s2_buffer_rx
uint16_t i2s2_buffer_rx[32]
Definition: project/at_start_f403/examples/i2s/spii2s_switch_halfduplex_polling/src/main.c:51
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SWJTAG_MUX_010
#define SWJTAG_MUX_010
Definition: at32f403_gpio.h:103
SPI1_MUX_01
#define SPI1_MUX_01
Definition: at32f403_gpio.h:79
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
SPI_I2S_BF_FLAG
#define SPI_I2S_BF_FLAG
Definition: at32f403_spi.h:58
i2s_init
void i2s_init(spi_type *spi_x, i2s_init_type *i2s_init_struct)
i2s init config with its setting value.
Definition: at32f403_spi.c:326
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
i2s_enable
void i2s_enable(spi_type *spi_x, confirm_state new_state)
enable or disable i2s.
Definition: at32f403_spi.c:455
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_i2s_reset
void spi_i2s_reset(spi_type *spi_x)
spi reset by crm reset register
Definition: at32f403_spi.c:49
i2s_default_para_init
void i2s_default_para_init(i2s_init_type *i2s_init_struct)
i2s init config with its default value.
Definition: at32f403_spi.c:308
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
i2s_operation_mode_type
i2s_operation_mode_type
i2s operation mode type
Definition: at32f403_spi.h:235
I2S_CLOCK_POLARITY_LOW
@ I2S_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:247
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
I2S_DATA_16BIT_CHANNEL_32BIT
@ I2S_DATA_16BIT_CHANNEL_32BIT
Definition: at32f403_spi.h:226
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
I2S_AUDIO_FREQUENCY_8K
@ I2S_AUDIO_FREQUENCY_8K
Definition: at32f403_spi.h:209
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_HALF_DUPLEX_TX
@ SPI_TRANSMIT_HALF_DUPLEX_TX
Definition: at32f403_spi.h:161
SPI_TRANSMIT_SIMPLEX_RX
@ SPI_TRANSMIT_SIMPLEX_RX
Definition: at32f403_spi.h:159
I2S_AUDIO_PROTOCOL_PHILLIPS
@ I2S_AUDIO_PROTOCOL_PHILLIPS
Definition: at32f403_spi.h:196
SPI_MCLK_DIV_64
@ SPI_MCLK_DIV_64
Definition: at32f403_spi.h:137
SPI_FRAME_16BIT
@ SPI_FRAME_16BIT
Definition: at32f403_spi.h:88
I2S_MODE_MASTER_TX
@ I2S_MODE_MASTER_TX
Definition: at32f403_spi.h:238
I2S_MODE_MASTER_RX
@ I2S_MODE_MASTER_RX
Definition: at32f403_spi.h:239
I2S_MODE_SLAVE_RX
@ I2S_MODE_SLAVE_RX
Definition: at32f403_spi.h:237
I2S_MODE_SLAVE_TX
@ I2S_MODE_SLAVE_TX
Definition: at32f403_spi.h:236
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
i2s_init_type
i2s init type
Definition: at32f403_spi.h:270
i2s_init_type::audio_sampling_freq
i2s_audio_sampling_freq_type audio_sampling_freq
Definition: at32f403_spi.h:273
i2s_init_type::data_channel_format
i2s_data_channel_format_type data_channel_format
Definition: at32f403_spi.h:274
i2s_init_type::mclk_output_enable
confirm_state mclk_output_enable
Definition: at32f403_spi.h:276
i2s_init_type::audio_protocol
i2s_audio_protocol_type audio_protocol
Definition: at32f403_spi.h:272
i2s_init_type::operation_mode
i2s_operation_mode_type operation_mode
Definition: at32f403_spi.h:271
i2s_init_type::clock_polarity
i2s_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:275
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • pwc
  • deepsleep_rtc
  • inc
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • pwc
  • deepsleep_rtc
  • inc
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • pwc
  • deepsleep_rtc
  • inc
project/at_start_f403/examples/pwc/deepsleep_rtc/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • pwc
  • deepsleep_rtc
  • src
project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • pwc
  • deepsleep_rtc
  • src
project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
141void RTCAlarm_IRQHandler(void)
142{
143 if(rtc_flag_get(RTC_TA_FLAG) != RESET)
144 {
145 /* clear exint line flag */
146 exint_flag_clear(EXINT_LINE_17);
147
148 /* toggle led */
149 at32_led_toggle(LED4);
150
151 /* wait for the register write to complete */
152 rtc_wait_config_finish();
153
154 /* clear alarm flag */
155 rtc_flag_clear(RTC_TA_FLAG);
156
157 /* wait for the register write to complete */
158 rtc_wait_config_finish();
159 }
160}
161
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:105
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:44
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:114
RTCAlarm_IRQHandler
void RTCAlarm_IRQHandler(void)
this function handles the rtc alarm through exint line interrupt request.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/at32f403_int.c:141
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
EXINT_LINE_17
#define EXINT_LINE_17
Definition: at32f403_exint.h:67
RESET
@ RESET
Definition: at32f403.h:304
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
RTC_TA_FLAG
#define RTC_TA_FLAG
Definition: at32f403_rtc.h:64
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • pwc
  • deepsleep_rtc
  • src
project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41void rtc_config(void)
42{
43 exint_init_type exint_init_struct;
44
45 /* config the exint line of the rtc alarm */
46 exint_init_struct.line_select = EXINT_LINE_17;
47 exint_init_struct.line_enable = TRUE;
48 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
49 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
50 exint_init(&exint_init_struct);
51
52 /* enable the battery-powered domain write operations */
53 pwc_battery_powered_domain_access(TRUE);
54
55 /* reset battery-powered domain register */
56 bpr_reset();
57
58 /* enable the lick */
59 crm_clock_source_enable(CRM_CLOCK_SOURCE_LICK, TRUE);
60
61 /* wait lick is ready */
62 while(crm_flag_get(CRM_LICK_STABLE_FLAG) == RESET);
63
64 /* select the rtc clock source */
65 crm_rtc_clock_select(CRM_RTC_CLOCK_LICK);
66
67 /* enable rtc clock */
68 crm_rtc_clock_enable(TRUE);
69
70 /* wait for rtc registers update */
71 rtc_wait_update_finish();
72
73 /* set rtc divider: set rtc period to 1sec */
74 rtc_divider_set(32767);
75
76 /* wait for the register write to complete */
77 rtc_wait_config_finish();
78
79 /* enable alarm interrupt */
80 rtc_interrupt_enable(RTC_TA_INT, TRUE);
81
82 /* wait for the register write to complete */
83 rtc_wait_config_finish();
84
85 /* configure and enable rtc alarm interrupt */
86 nvic_irq_enable(RTCAlarm_IRQn, 0, 0);
87}
88
94void system_clock_recover(void)
95{
96 /* enable external high-speed crystal oscillator - hext */
97 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
98
99 /* wait till hext is ready */
100 while(crm_hext_stable_wait() == ERROR);
101
102 /* enable pll */
103 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
104
105 /* wait till pll is ready */
106 while(crm_flag_get(CRM_PLL_STABLE_FLAG) == RESET);
107
108 /* select pll as system clock source */
109 crm_sysclk_switch(CRM_SCLK_PLL);
110
111 /* wait till pll is used as system clock source */
112 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL);
113}
114
120int main(void)
121{
122 __IO uint32_t index = 0;
123 __IO uint32_t systick_index = 0;
124
125 /* congfig the system clock */
126 system_clock_config();
127
128 /* init at start board */
129 at32_board_init();
130
131 /* config priority group */
132 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
133
134 /* turn on the led light */
135 at32_led_on(LED2);
136 at32_led_on(LED3);
137 at32_led_on(LED4);
138
139 /* enable pwc and bpr clock */
140 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
141 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
142
143 /* config rtc */
144 rtc_config();
145
146 while(1)
147 {
148 /* clear second flag */
149 rtc_flag_clear(RTC_TS_FLAG);
150
151 /* wait for the second flag to be set */
152 while(rtc_flag_get(RTC_TS_FLAG) == RESET);
153
154 /* set the wakeup time to 3 seconds */
155 rtc_alarm_set(rtc_counter_get() + 3);
156
157 /* wait for the register write to complete */
158 rtc_wait_config_finish();
159
160 at32_led_off(LED2);
161
162 /* save systick register configuration */
163 systick_index = SysTick->CTRL;
164 systick_index &= ~((uint32_t)0xFFFFFFFE);
165
166 /* disable systick */
167 SysTick->CTRL &= (uint32_t)0xFFFFFFFE;
168
169 /* enter deep sleep mode */
170 pwc_deep_sleep_mode_enter(PWC_DEEP_SLEEP_ENTER_WFI);
171
172 /* restore systick register configuration */
173 SysTick->CTRL |= systick_index;
174
175 at32_led_on(LED2);
176
177 /* wait clock stable */
178 delay_us(120);
179
180 /* wake up from deep sleep mode, congfig the system clock */
181 system_clock_recover();
182
183 delay_ms(500);
184 }
185}
186
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
rtc_config
void rtc_config(void)
rtc configuration.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c:41
main
int main(void)
main function.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c:120
system_clock_recover
void system_clock_recover(void)
systemclock recover.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c:94
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_rtc_clock_select
void crm_rtc_clock_select(crm_rtc_clock_type value)
select rtc clock
Definition: at32f403_crm.c:444
crm_rtc_clock_enable
void crm_rtc_clock_enable(confirm_state new_state)
enable or disable rtc
Definition: at32f403_crm.c:454
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_LICK
@ CRM_CLOCK_SOURCE_LICK
Definition: at32f403_crm.h:320
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_RTC_CLOCK_LICK
@ CRM_RTC_CLOCK_LICK
Definition: at32f403_crm.h:397
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_LICK_STABLE_FLAG
#define CRM_LICK_STABLE_FLAG
Definition: at32f403_crm.h:57
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
RTCAlarm_IRQn
@ RTCAlarm_IRQn
Definition: at32f403.h:220
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_LINE_17
#define EXINT_LINE_17
Definition: at32f403_exint.h:67
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
pwc_deep_sleep_mode_enter
void pwc_deep_sleep_mode_enter(pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode
Definition: at32f403_pwc.c:187
PWC_DEEP_SLEEP_ENTER_WFI
@ PWC_DEEP_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:95
rtc_alarm_set
void rtc_alarm_set(uint32_t alarm_value)
rtc alarm value set
Definition: at32f403_rtc.c:113
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_counter_get
uint32_t rtc_counter_get(void)
rtc counter get
Definition: at32f403_rtc.c:65
rtc_wait_update_finish
void rtc_wait_update_finish(void)
rtc wait update finish
Definition: at32f403_rtc.c:230
rtc_interrupt_enable
void rtc_interrupt_enable(uint16_t source, confirm_state new_state)
rtc interrupt enable
Definition: at32f403_rtc.c:136
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
rtc_divider_set
void rtc_divider_set(uint32_t div_value)
rtc divider set
Definition: at32f403_rtc.c:80
RTC_TS_FLAG
#define RTC_TS_FLAG
Definition: at32f403_rtc.h:63
RTC_TA_INT
#define RTC_TA_INT
Definition: at32f403_rtc.h:51
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • pwc
  • power_voltage_monitor
  • inc
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • pwc
  • power_voltage_monitor
  • inc
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • pwc
  • power_voltage_monitor
  • inc
project/at_start_f403/examples/pwc/power_voltage_monitor/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • pwc
  • power_voltage_monitor
  • src
project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • pwc
  • power_voltage_monitor
  • src
project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
141void PVM_IRQHandler(void)
142{
143 if(exint_flag_get(EXINT_LINE_16) != RESET)
144 {
145 /* clear exint line flag */
146 exint_flag_clear(EXINT_LINE_16);
147
148 /* toggle led */
149 at32_led_toggle(LED2);
150 at32_led_toggle(LED3);
151 at32_led_toggle(LED4);
152 }
153}
154
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:105
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:44
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:132
PVM_IRQHandler
void PVM_IRQHandler(void)
this function handles the power voltage monitoring output interrupt request.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:141
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/at32f403_int.c:114
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
exint_flag_get
flag_status exint_flag_get(uint32_t exint_line)
get exint flag
Definition: at32f403_exint.c:140
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
EXINT_LINE_16
#define EXINT_LINE_16
Definition: at32f403_exint.h:66
RESET
@ RESET
Definition: at32f403.h:304
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • pwc
  • power_voltage_monitor
  • src
project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
42void pvm_exint_config(void)
43{
44 exint_init_type exint_init_struct;
45
46 /* config the exint line of the power voltage monitor */
47 exint_init_struct.line_select = EXINT_LINE_16;
48 exint_init_struct.line_enable = TRUE;
49 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
50 exint_init_struct.line_polarity = EXINT_TRIGGER_BOTH_EDGE;
51 exint_init(&exint_init_struct);
52}
53
59int main(void)
60{
61 __IO uint32_t index = 0;
62
63 /* congfig the system clock */
64 system_clock_config();
65
66 /* init at start board */
67 at32_board_init();
68
69 /* config priority group */
70 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
71
72 /* turn on the led light */
73 at32_led_on(LED2);
74 at32_led_on(LED3);
75 at32_led_on(LED4);
76
77 /* enable pwc clock */
78 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
79
80 /* set the threshold voltage to 2.9v */
81 pwc_pvm_level_select(PWC_PVM_VOLTAGE_2V9);
82
83 /* enable power voltage monitor */
84 pwc_power_voltage_monitor_enable(TRUE);
85
86 /* config the exint line of the power voltage monitor */
87 pvm_exint_config();
88
89 /* when power voltage monitor enable,exint line16 flag will be set */
90 while(exint_flag_get(EXINT_LINE_16) == RESET);
91
92 /* clear the unexpected exint line flag */
93 exint_flag_clear(EXINT_LINE_16);
94
95 /* clear the unexpected nvic pending flag */
96 NVIC_ClearPendingIRQ(PVM_IRQn);
97
98 /* enable power voltage monitor interrupt */
99 nvic_irq_enable(PVM_IRQn, 0, 0);
100
101 while(1)
102 {
103 }
104}
105
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
pvm_exint_config
void pvm_exint_config(void)
power voltage monitor exint configuration.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c:42
main
int main(void)
main function.
Definition: project/at_start_f403/examples/pwc/power_voltage_monitor/src/main.c:59
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
PVM_IRQn
@ PVM_IRQn
Definition: at32f403.h:179
exint_flag_get
flag_status exint_flag_get(uint32_t exint_line)
get exint flag
Definition: at32f403_exint.c:140
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_BOTH_EDGE
@ EXINT_TRIGGER_BOTH_EDGE
Definition: at32f403_exint.h:95
EXINT_LINE_16
#define EXINT_LINE_16
Definition: at32f403_exint.h:66
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_power_voltage_monitor_enable
void pwc_power_voltage_monitor_enable(confirm_state new_state)
enable or disable pwc power voltage monitor (pvm)
Definition: at32f403_pwc.c:88
pwc_pvm_level_select
void pwc_pvm_level_select(pwc_pvm_voltage_type pvm_voltage)
select the voltage threshold detected by the power voltage detector.
Definition: at32f403_pwc.c:77
PWC_PVM_VOLTAGE_2V9
@ PWC_PVM_VOLTAGE_2V9
Definition: at32f403_pwc.h:78
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • pwc
  • sleep_tmr2
  • inc
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • pwc
  • sleep_tmr2
  • inc
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • pwc
  • sleep_tmr2
  • inc
project/at_start_f403/examples/pwc/sleep_tmr2/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • pwc
  • sleep_tmr2
  • src
project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • pwc
  • sleep_tmr2
  • src
project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
43void NMI_Handler(void)
44{
45}
46
52void HardFault_Handler(void)
53{
54 /* go to infinite loop when hard fault exception occurs */
55 while(1)
56 {
57 }
58}
59
65void MemManage_Handler(void)
66{
67 /* go to infinite loop when memory manage exception occurs */
68 while(1)
69 {
70 }
71}
72
78void BusFault_Handler(void)
79{
80 /* go to infinite loop when bus fault exception occurs */
81 while(1)
82 {
83 }
84}
85
91void UsageFault_Handler(void)
92{
93 /* go to infinite loop when usage fault exception occurs */
94 while(1)
95 {
96 }
97}
98
104void SVC_Handler(void)
105{
106}
107
113void DebugMon_Handler(void)
114{
115}
116
122void PendSV_Handler(void)
123{
124}
125
131void SysTick_Handler(void)
132{
133}
134
140void TMR2_GLOBAL_IRQHandler(void)
141{
142 if(tmr_flag_get(TMR2, TMR_OVF_FLAG) != RESET)
143 {
144 /* clear timer 2 ovf flag */
145 tmr_flag_clear(TMR2, TMR_OVF_FLAG);
146
147 /* toggle led */
148 at32_led_toggle(LED4);
149 }
150}
151
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:91
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:52
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:65
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:104
TMR2_GLOBAL_IRQHandler
void TMR2_GLOBAL_IRQHandler(void)
this function handles the timer interrupt request.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:140
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:122
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:43
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:78
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:131
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/at32f403_int.c:113
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
RESET
@ RESET
Definition: at32f403.h:304
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
TMR_OVF_FLAG
#define TMR_OVF_FLAG
Definition: at32f403_tmr.h:50
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • pwc
  • sleep_tmr2
  • src
project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
42void tmr2_config(void)
43{
44 crm_clocks_freq_type crm_clocks_freq_struct = {0};
45
46 /* enable tmr 2 clock */
47 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
48
49 /* get system clock */
50 crm_clocks_freq_get(&crm_clocks_freq_struct);
51
52 /* (systemclock/(systemclock/10000))/10000 = 1Hz(1s) */
53 tmr_base_init(TMR2, 9999, (crm_clocks_freq_struct.sclk_freq/10000 - 1));
54
55 /* config the counting direction */
56 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
57
58 /* config the clock divider value */
59 tmr_clock_source_div_set(TMR2, TMR_CLOCK_DIV1);
60
61 /* enable tmr 2 interrupt */
62 tmr_interrupt_enable(TMR2, TMR_OVF_INT, TRUE);
63
64 /* config tmr 2 nvic */
65 nvic_irq_enable(TMR2_GLOBAL_IRQn, 0, 0);
66
67 /* enable tmr 2 */
68 tmr_counter_enable(TMR2, TRUE);
69}
70
76int main(void)
77{
78 __IO uint32_t index = 0;
79 __IO uint32_t systick_index = 0;
80
81 /* congfig the system clock */
82 system_clock_config();
83
84 /* init at start board */
85 at32_board_init();
86
87 /* config priority group */
88 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
89
90 /* turn on the led light */
91 at32_led_on(LED2);
92 at32_led_on(LED3);
93 at32_led_on(LED4);
94
95 /* enable pwc clock */
96 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
97
98 /* config tmr 2 */
99 tmr2_config();
100
101 while(1)
102 {
103 at32_led_off(LED2);
104
105 /* save systick register configuration */
106 systick_index = SysTick->CTRL;
107 systick_index &= ~((uint32_t)0xFFFFFFFE);
108
109 /* disable systick */
110 SysTick->CTRL &= (uint32_t)0xFFFFFFFE;
111
112 /* enter sleep mode */
113 pwc_sleep_mode_enter(PWC_SLEEP_ENTER_WFI);
114
115 /* restore systick register configuration */
116 SysTick->CTRL |= systick_index;
117
118 /* wake up from sleep mode */
119 at32_led_on(LED2);
120 delay_ms(500);
121 }
122}
123
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:38
tmr2_config
void tmr2_config(void)
tmr2 configuration.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c:42
main
int main(void)
main function.
Definition: project/at_start_f403/examples/pwc/sleep_tmr2/src/main.c:76
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
TMR2_GLOBAL_IRQn
@ TMR2_GLOBAL_IRQn
Definition: at32f403.h:207
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_sleep_mode_enter
void pwc_sleep_mode_enter(pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode
Definition: at32f403_pwc.c:164
PWC_SLEEP_ENTER_WFI
@ PWC_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:86
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OVF_INT
#define TMR_OVF_INT
Definition: at32f403_tmr.h:72
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • pwc
  • sleep_usart1
  • inc
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • pwc
  • sleep_usart1
  • inc
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • pwc
  • sleep_usart1
  • inc
project/at_start_f403/examples/pwc/sleep_usart1/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • pwc
  • sleep_usart1
  • src
project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • pwc
  • sleep_usart1
  • src
project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29
39uint16_t usart1_index = 0;
45void NMI_Handler(void)
46{
47}
48
54void HardFault_Handler(void)
55{
56 /* go to infinite loop when hard fault exception occurs */
57 while(1)
58 {
59 }
60}
61
67void MemManage_Handler(void)
68{
69 /* go to infinite loop when memory manage exception occurs */
70 while(1)
71 {
72 }
73}
74
80void BusFault_Handler(void)
81{
82 /* go to infinite loop when bus fault exception occurs */
83 while(1)
84 {
85 }
86}
87
93void UsageFault_Handler(void)
94{
95 /* go to infinite loop when usage fault exception occurs */
96 while(1)
97 {
98 }
99}
100
106void SVC_Handler(void)
107{
108}
109
115void DebugMon_Handler(void)
116{
117}
118
124void PendSV_Handler(void)
125{
126}
127
133void SysTick_Handler(void)
134{
135}
136
142void USART1_IRQHandler(void)
143{
144 if(usart_flag_get(USART1, USART_RDBF_FLAG) != RESET)
145 {
146 /* clear rdbf flag */
147 usart1_index = usart_data_receive(USART1);
148
149 /* toggle led */
150 at32_led_toggle(LED4);
151 }
152}
153
154
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:45
USART1_IRQHandler
void USART1_IRQHandler(void)
this function handles the usatt interrupt request.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:142
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:80
usart1_index
uint16_t usart1_index
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:39
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/at32f403_int.c:115
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
RESET
@ RESET
Definition: at32f403.h:304
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART1
#define USART1
Definition: at32f403_usart.h:317
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • pwc
  • sleep_usart1
  • src
project/at_start_f403/examples/pwc/sleep_usart1/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41void usart1_config(uint32_t baudrate)
42{
43 gpio_init_type gpio_init_struct;
44
45 /* enable the uart1 and gpio clock */
46 crm_periph_clock_enable(CRM_USART1_PERIPH_CLOCK, TRUE);
47 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
48
49 gpio_default_para_init(&gpio_init_struct);
50
51 /* configure the uart1 tx pin */
52 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
53 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
54 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
55 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
56 gpio_init_struct.gpio_pins = GPIO_PINS_9;
57 gpio_init(GPIOA, &gpio_init_struct);
58
59 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
60 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
61 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
62 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
63 gpio_init_struct.gpio_pins = GPIO_PINS_10;
64 gpio_init(GPIOA, &gpio_init_struct);
65
66 /* configure uart param */
67 nvic_irq_enable(USART1_IRQn, 0, 0);
68
69 usart_init(USART1, baudrate, USART_DATA_8BITS, USART_STOP_1_BIT);
70 usart_parity_selection_config(USART1, USART_PARITY_NONE);
71 usart_transmitter_enable(USART1, TRUE);
72 usart_receiver_enable(USART1, TRUE);
73 usart_hardware_flow_control_set(USART1,USART_HARDWARE_FLOW_NONE);
74 usart_interrupt_enable(USART1, USART_RDBF_INT, TRUE);
75 usart_enable(USART1, TRUE);
76}
77
83int main(void)
84{
85 __IO uint32_t index = 0;
86 __IO uint32_t systick_index = 0;
87
88 /* congfig the system clock */
89 system_clock_config();
90
91 /* init at start board */
92 at32_board_init();
93
94 /* config priority group */
95 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
96
97 /* turn on the led light */
98 at32_led_on(LED2);
99 at32_led_on(LED3);
100 at32_led_on(LED4);
101
102 /* enable pwc clock */
103 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
104
105 /* config usart1 */
106 usart1_config(115200);
107
108 printf("exit sleep mode by usart1 rdbf interrupt \r\n");
109
110 while(1)
111 {
112 at32_led_off(LED2);
113 at32_led_off(LED3);
114 printf("now enter sleep mode \r\n");
115
116 /* save systick register configuration */
117 systick_index = SysTick->CTRL;
118 systick_index &= ~((uint32_t)0xFFFFFFFE);
119
120 /* disable systick */
121 SysTick->CTRL &= (uint32_t)0xFFFFFFFE;
122
123 /* enter sleep mode */
124 pwc_sleep_mode_enter(PWC_SLEEP_ENTER_WFI);
125
126 /* restore systick register configuration */
127 SysTick->CTRL |= systick_index;
128
129 /* wake up from sleep mode */
130 printf("now exit sleep mode by usart1 rdbf interrupt \r\n");
131
132 at32_led_on(LED2);
133 delay_ms(500);
134 }
135}
136
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
main
int main(void)
main function.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/main.c:83
usart1_config
void usart1_config(uint32_t baudrate)
usart1 configuration.
Definition: project/at_start_f403/examples/pwc/sleep_usart1/src/main.c:41
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART1_PERIPH_CLOCK
@ CRM_USART1_PERIPH_CLOCK
Definition: at32f403_crm.h:122
USART1_IRQn
@ USART1_IRQn
Definition: at32f403.h:216
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_sleep_mode_enter
void pwc_sleep_mode_enter(pwc_sleep_enter_type pwc_sleep_enter)
enter pwc sleep mode
Definition: at32f403_pwc.c:164
PWC_SLEEP_ENTER_WFI
@ PWC_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:86
usart_parity_selection_config
void usart_parity_selection_config(usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config.
Definition: at32f403_usart.c:141
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_hardware_flow_control_set
void usart_hardware_flow_control_set(usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control.
Definition: at32f403_usart.c:519
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
USART_HARDWARE_FLOW_NONE
@ USART_HARDWARE_FLOW_NONE
Definition: at32f403_usart.h:167
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_PARITY_NONE
@ USART_PARITY_NONE
Definition: at32f403_usart.h:92
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART1
#define USART1
Definition: at32f403_usart.h:317
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • pwc
  • standby_rtc
  • inc
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • pwc
  • standby_rtc
  • inc
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • pwc
  • standby_rtc
  • inc
project/at_start_f403/examples/pwc/standby_rtc/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • pwc
  • standby_rtc
  • src
project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • pwc
  • standby_rtc
  • src
project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:105
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:44
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/at32f403_int.c:114
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • pwc
  • standby_rtc
  • src
project/at_start_f403/examples/pwc/standby_rtc/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
42void rtc_config(void)
43{
44 /* enable the battery-powered domain write operations */
45 pwc_battery_powered_domain_access(TRUE);
46
47 /* reset battery-powered domain register */
48 bpr_reset();
49
50 /* enable the lick */
51 crm_clock_source_enable(CRM_CLOCK_SOURCE_LICK, TRUE);
52
53 /* wait lick is ready */
54 while(crm_flag_get(CRM_LICK_STABLE_FLAG) == RESET);
55
56 /* select the rtc clock source */
57 crm_rtc_clock_select(CRM_RTC_CLOCK_LICK);
58
59 /* enable rtc clock */
60 crm_rtc_clock_enable(TRUE);
61
62 /* wait for rtc registers update */
63 rtc_wait_update_finish();
64
65 /* set rtc divider: set rtc period to 1sec */
66 rtc_divider_set(32767);
67
68 /* wait for the register write to complete */
69 rtc_wait_config_finish();
70}
71
77void rtc_alarm_config(uint8_t alarm_time)
78{
79 /* clear second flag */
80 rtc_flag_clear(RTC_TS_FLAG);
81
82 /* wait for the second flag to be set */
83 while(rtc_flag_get(RTC_TS_FLAG) == RESET);
84
85 /* config the wakeup time */
86 rtc_alarm_set(rtc_counter_get() + alarm_time);
87
88 /* wait for the register write to complete */
89 rtc_wait_config_finish();
90}
91
97int main(void)
98{
99 __IO uint32_t index = 0;
100
101 /* congfig the system clock */
102 system_clock_config();
103
104 /* init at start board */
105 at32_board_init();
106
107 /* config priority group */
108 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
109
110 /* turn on the led light */
111 at32_led_off(LED2);
112 at32_led_off(LED3);
113 at32_led_off(LED4);
114
115 /* enable pwc and bpr clock */
116 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
117 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
118
119 if(pwc_flag_get(PWC_STANDBY_FLAG) != RESET)
120 {
121 /* wakeup from standby */
122 pwc_flag_clear(PWC_STANDBY_FLAG);
123 at32_led_on(LED2);
124 }
125
126 if(pwc_flag_get(PWC_WAKEUP_FLAG) != RESET)
127 {
128 /* wakeup event occurs */
129 pwc_flag_clear(PWC_WAKEUP_FLAG);
130 at32_led_on(LED3);
131 }
132
133 /* config rtc */
134 rtc_config();
135
136 at32_led_on(LED4);
137
138 delay_ms(1000);
139
140 /* set the wakeup time to 10 seconds */
141 rtc_alarm_config(10);
142
143 /* enter standby mode */
144 pwc_standby_mode_enter();
145
146 while(1)
147 {
148 }
149}
150
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
rtc_config
void rtc_config(void)
rtc configuration.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/main.c:42
main
int main(void)
main function.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/main.c:97
rtc_alarm_config
void rtc_alarm_config(uint8_t alarm_time)
rtc alarm set.
Definition: project/at_start_f403/examples/pwc/standby_rtc/src/main.c:77
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_rtc_clock_select
void crm_rtc_clock_select(crm_rtc_clock_type value)
select rtc clock
Definition: at32f403_crm.c:444
crm_rtc_clock_enable
void crm_rtc_clock_enable(confirm_state new_state)
enable or disable rtc
Definition: at32f403_crm.c:454
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
CRM_CLOCK_SOURCE_LICK
@ CRM_CLOCK_SOURCE_LICK
Definition: at32f403_crm.h:320
CRM_RTC_CLOCK_LICK
@ CRM_RTC_CLOCK_LICK
Definition: at32f403_crm.h:397
CRM_LICK_STABLE_FLAG
#define CRM_LICK_STABLE_FLAG
Definition: at32f403_crm.h:57
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
pwc_standby_mode_enter
void pwc_standby_mode_enter(void)
enter pwc standby mode
Definition: at32f403_pwc.c:208
pwc_flag_get
flag_status pwc_flag_get(uint32_t pwc_flag)
get flag of pwc
Definition: at32f403_pwc.c:142
pwc_flag_clear
void pwc_flag_clear(uint32_t pwc_flag)
clear flag of pwc
Definition: at32f403_pwc.c:125
PWC_STANDBY_FLAG
#define PWC_STANDBY_FLAG
Definition: at32f403_pwc.h:51
PWC_WAKEUP_FLAG
#define PWC_WAKEUP_FLAG
Definition: at32f403_pwc.h:50
rtc_alarm_set
void rtc_alarm_set(uint32_t alarm_value)
rtc alarm value set
Definition: at32f403_rtc.c:113
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_counter_get
uint32_t rtc_counter_get(void)
rtc counter get
Definition: at32f403_rtc.c:65
rtc_wait_update_finish
void rtc_wait_update_finish(void)
rtc wait update finish
Definition: at32f403_rtc.c:230
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
rtc_divider_set
void rtc_divider_set(uint32_t div_value)
rtc divider set
Definition: at32f403_rtc.c:80
RTC_TS_FLAG
#define RTC_TS_FLAG
Definition: at32f403_rtc.h:63
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • pwc
  • standby_wakeup_pin
  • inc
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • pwc
  • standby_wakeup_pin
  • inc
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • pwc
  • standby_wakeup_pin
  • inc
project/at_start_f403/examples/pwc/standby_wakeup_pin/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • pwc
  • standby_wakeup_pin
  • src
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • pwc
  • standby_wakeup_pin
  • src
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • pwc
  • standby_wakeup_pin
  • src
project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41int main(void)
42{
43 __IO uint32_t index = 0;
44
45 /* congfig the system clock */
46 system_clock_config();
47
48 /* init at start board */
49 at32_board_init();
50
51 /* config priority group */
52 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
53
54 /* turn on the led light */
55 at32_led_off(LED2);
56 at32_led_off(LED3);
57 at32_led_off(LED4);
58
59 /* enable pwc clock */
60 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
61
62 if(pwc_flag_get(PWC_STANDBY_FLAG) != RESET)
63 {
64 /* wakeup from standby */
65 pwc_flag_clear(PWC_STANDBY_FLAG);
66 at32_led_on(LED2);
67 }
68
69 if(pwc_flag_get(PWC_WAKEUP_FLAG) != RESET)
70 {
71 /* wakeup event occurs */
72 pwc_flag_clear(PWC_WAKEUP_FLAG);
73 at32_led_on(LED3);
74 }
75
76 at32_led_on(LED4);
77
78 /*delay to check led status*/
79 delay_ms(1000);
80
81 /* enable wakeup pin */
82 pwc_wakeup_pin_enable(PWC_WAKEUP_PIN_1, TRUE);
83
84 /* enter standby mode */
85 pwc_standby_mode_enter();
86 while(1)
87 {
88 }
89}
90
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
main
int main(void)
main function.
Definition: project/at_start_f403/examples/pwc/standby_wakeup_pin/src/main.c:41
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_standby_mode_enter
void pwc_standby_mode_enter(void)
enter pwc standby mode
Definition: at32f403_pwc.c:208
pwc_flag_get
flag_status pwc_flag_get(uint32_t pwc_flag)
get flag of pwc
Definition: at32f403_pwc.c:142
pwc_flag_clear
void pwc_flag_clear(uint32_t pwc_flag)
clear flag of pwc
Definition: at32f403_pwc.c:125
pwc_wakeup_pin_enable
void pwc_wakeup_pin_enable(uint32_t pin_num, confirm_state new_state)
enable or disable pwc standby wakeup pin
Definition: at32f403_pwc.c:104
PWC_STANDBY_FLAG
#define PWC_STANDBY_FLAG
Definition: at32f403_pwc.h:51
PWC_WAKEUP_FLAG
#define PWC_WAKEUP_FLAG
Definition: at32f403_pwc.h:50
PWC_WAKEUP_PIN_1
#define PWC_WAKEUP_PIN_1
pwc wakeup pin num definition
Definition: at32f403_pwc.h:61
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • rtc
  • calendar
  • inc
project/at_start_f403/examples/rtc/calendar/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • rtc
  • calendar
  • inc
project/at_start_f403/examples/rtc/calendar/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • rtc
  • calendar
  • inc
project/at_start_f403/examples/rtc/calendar/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • rtc
  • calendar
  • src
project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • rtc
  • calendar
  • src
project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
134
140void RTC_IRQHandler(void)
141{
142 if(rtc_flag_get(RTC_TA_FLAG) != RESET)
143 {
144 at32_led_toggle(LED4);
145
146 /* clear the rtc second flag */
147 rtc_flag_clear(RTC_TA_FLAG);
148 }
149}
150
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:130
RTC_IRQHandler
void RTC_IRQHandler(void)
this function handles rtc handler.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:140
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/rtc/calendar/src/at32f403_int.c:112
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
RESET
@ RESET
Definition: at32f403.h:304
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
RTC_TA_FLAG
#define RTC_TA_FLAG
Definition: at32f403_rtc.h:64
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • rtc
  • calendar
  • src
project/at_start_f403/examples/rtc/calendar/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "rtc.h"
28
37char const weekday_table[7][10] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
38
44void alarm_init(void)
45{
46 calendar_type alarm_struct;
47
48 /* clear alarm flag */
49 rtc_flag_clear(RTC_TA_FLAG);
50
51 /* wait for the register write to complete */
52 rtc_wait_config_finish();
53
54 /* configure and enable rtc interrupt */
55 nvic_irq_enable(RTC_IRQn, 0, 0);
56
57 /* enable alarm interrupt */
58 rtc_interrupt_enable(RTC_TA_INT, TRUE);
59
60 /* wait for the register write to complete */
61 rtc_wait_config_finish();
62
63 /* config alarm */
64
65 alarm_struct.year = 2021;
66 alarm_struct.month = 5;
67 alarm_struct.date = 1;
68 alarm_struct.hour = 12;
69 alarm_struct.min = 0;
70 alarm_struct.sec = 5;
71
72 rtc_alarm_clock_set(&alarm_struct);
73}
74
80int main(void)
81{
82 calendar_type time_struct;
83
84 /* config nvic priority group */
85 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
86
87 system_clock_config();
88
89 at32_board_init();
90
91 uart_print_init(115200);
92
93 /* config calendar */
94 time_struct.year = 2021;
95 time_struct.month = 5;
96 time_struct.date = 1;
97 time_struct.hour = 12;
98 time_struct.min = 0;
99 time_struct.sec = 0;
100 rtc_init(&time_struct);
101
102 /* config alarm */
103 alarm_init();
104
105 printf("initial ok\r\n");
106
107 while(1)
108 {
109 if(rtc_flag_get(RTC_TS_FLAG) != RESET)
110 {
111 at32_led_toggle(LED3);
112
113 /* get time */
114 rtc_time_get();
115
116 /* print time */
117 printf("%d/%d/%d ", calendar.year, calendar.month, calendar.date);
118 printf("%02d:%02d:%02d %s\r\n", calendar.hour, calendar.min, calendar.sec, weekday_table[calendar.week]);
119
120 /* wait for the register write to complete */
121 rtc_wait_config_finish();
122
123 /* clear the rtc second flag */
124 rtc_flag_clear(RTC_TS_FLAG);
125
126 /* wait for the register write to complete */
127 rtc_wait_config_finish();
128 }
129 }
130}
131
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
calendar
calendar_type calendar
Definition: rtc.c:35
main
int main(void)
main function.
Definition: project/at_start_f403/examples/rtc/calendar/src/main.c:80
weekday_table
char const weekday_table[7][10]
Definition: project/at_start_f403/examples/rtc/calendar/src/main.c:37
alarm_init
void alarm_init(void)
init alarm.
Definition: project/at_start_f403/examples/rtc/calendar/src/main.c:44
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
RTC_IRQn
@ RTC_IRQn
Definition: at32f403.h:181
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
rtc_time_get
void rtc_time_get(void)
get current time.
Definition: rtc.c:307
rtc_init
uint8_t rtc_init(calendar_type *calendar)
rtc peripheral initialization.
Definition: rtc.c:49
rtc_alarm_clock_set
uint8_t rtc_alarm_clock_set(calendar_type *calendar)
set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099
Definition: rtc.c:215
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_interrupt_enable
void rtc_interrupt_enable(uint16_t source, confirm_state new_state)
rtc interrupt enable
Definition: at32f403_rtc.c:136
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
RTC_TA_FLAG
#define RTC_TA_FLAG
Definition: at32f403_rtc.h:64
RTC_TS_FLAG
#define RTC_TS_FLAG
Definition: at32f403_rtc.h:63
RTC_TA_INT
#define RTC_TA_INT
Definition: at32f403_rtc.h:51
rtc.h
this file provides template for calendar api.
calendar_type
Definition: rtc.h:47
calendar_type::hour
__IO uint8_t hour
Definition: rtc.h:51
calendar_type::month
__IO uint8_t month
Definition: rtc.h:49
calendar_type::sec
__IO uint8_t sec
Definition: rtc.h:53
calendar_type::week
__IO uint8_t week
Definition: rtc.h:54
calendar_type::year
__IO uint16_t year
Definition: rtc.h:48
calendar_type::min
__IO uint8_t min
Definition: rtc.h:52
calendar_type::date
__IO uint8_t date
Definition: rtc.h:50
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • rtc
  • lick_calibration
  • inc
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • rtc
  • lick_calibration
  • inc
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • rtc
  • lick_calibration
  • inc
project/at_start_f403/examples/rtc/lick_calibration/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • rtc
  • lick_calibration
  • src
project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • rtc
  • lick_calibration
  • src
project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28#include "stdio.h"
29
30extern uint32_t incrementvar_operationcomplete(void);
31extern uint32_t getvar_operationcomplete(void);
32extern void setvar_periodvalue(uint32_t Value);
33
34extern __IO uint32_t periodvalue;
35extern __IO uint32_t operationcomplete;
36
45uint16_t tmpCC4[2] = {0, 0};
46
52void NMI_Handler(void)
53{
54}
55
61void HardFault_Handler(void)
62{
63 /* go to infinite loop when hard fault exception occurs */
64 while(1)
65 {
66 }
67}
68
74void MemManage_Handler(void)
75{
76 /* go to infinite loop when memory manage exception occurs */
77 while(1)
78 {
79 }
80}
81
87void BusFault_Handler(void)
88{
89 /* go to infinite loop when bus fault exception occurs */
90 while(1)
91 {
92 }
93}
94
100void UsageFault_Handler(void)
101{
102 /* go to infinite loop when usage fault exception occurs */
103 while(1)
104 {
105 }
106}
107
113void SVC_Handler(void)
114{
115}
116
122void DebugMon_Handler(void)
123{
124}
125
131void PendSV_Handler(void)
132{
133}
134
140void SysTick_Handler(void)
141{
142}
143
149void RTC_IRQHandler(void)
150{
151 if(rtc_flag_get(RTC_TS_FLAG) != RESET)
152 {
153 /* toggle led3 */
154 at32_led_toggle(LED3);
155
156 /* clear interrupt pending bit */
157 rtc_flag_clear(RTC_TS_FLAG);
158
159 printf("%d\r\n", rtc_counter_get());
160 }
161}
162
168void TMR5_GLOBAL_IRQHandler(void)
169{
170 uint32_t tmp = 0;
171
172 if(tmr_flag_get(TMR5, TMR_C4_FLAG) == SET)
173 {
174 tmpCC4[incrementvar_operationcomplete()] = (uint16_t)(TMR5->c4dt);
175
176 tmr_flag_get(TMR5, TMR_C4_FLAG);
177
178 if(getvar_operationcomplete() >= 2)
179 {
180 /* compute the period length */
181 tmp = (uint16_t)(tmpCC4[1] - tmpCC4[0] + 1);
182 setvar_periodvalue(tmp);
183
184 /* disable the interrupt */
185 tmr_interrupt_enable(TMR5, TMR_C4_INT, FALSE);
186 tmr_counter_enable(TMR5, FALSE);
187 }
188 }
189}
190
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
operationcomplete
__IO uint32_t operationcomplete
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:39
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:100
setvar_periodvalue
void setvar_periodvalue(uint32_t Value)
sets the periodvalue variable with input parameter.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:138
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:61
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:74
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:113
incrementvar_operationcomplete
uint32_t incrementvar_operationcomplete(void)
increments operationcomplete variable and return its value before increment operation.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:116
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:131
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:52
periodvalue
__IO uint32_t periodvalue
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:37
tmpCC4
uint16_t tmpCC4[2]
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:45
getvar_operationcomplete
uint32_t getvar_operationcomplete(void)
returns operationcomplete value.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:128
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:87
TMR5_GLOBAL_IRQHandler
void TMR5_GLOBAL_IRQHandler(void)
this function handles tmr5 global interrupt request.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:168
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:140
RTC_IRQHandler
void RTC_IRQHandler(void)
this function handles rtc global interrupt request.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:149
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/at32f403_int.c:122
LED3
@ LED3
Definition: at32f403_board.h:62
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
rtc_flag_get
flag_status rtc_flag_get(uint16_t flag)
rtc flag get
Definition: at32f403_rtc.c:159
rtc_counter_get
uint32_t rtc_counter_get(void)
rtc counter get
Definition: at32f403_rtc.c:65
rtc_flag_clear
void rtc_flag_clear(uint16_t flag)
rtc flag clear
Definition: at32f403_rtc.c:210
RTC_TS_FLAG
#define RTC_TS_FLAG
Definition: at32f403_rtc.h:63
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
TMR_C4_FLAG
#define TMR_C4_FLAG
Definition: at32f403_tmr.h:54
TMR_C4_INT
#define TMR_C4_INT
Definition: at32f403_tmr.h:76
TMR5
#define TMR5
Definition: at32f403_tmr.h:834
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • rtc
  • lick_calibration
  • src
project/at_start_f403/examples/rtc/lick_calibration/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 crm_clocks_freq_type crm_clocks;
37__IO uint32_t periodvalue = 0;
38__IO uint32_t lickfreq = 0;
39__IO uint32_t operationcomplete = 0;
40
46void nvic_configuration(void)
47{
48 /* configure one bit for preemption priority */
49 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
50
51 /* enable the rtc interrupt */
52 nvic_irq_enable(RTC_IRQn, 0, 0);
53
54 /* enable the tmr5 interrupt */
55 nvic_irq_enable(TMR5_GLOBAL_IRQn, 0, 0);
56}
57
63void rtc_configuration(void)
64{
65 /* enable pwc and bpr clocks */
66 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
67 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
68
69 /* allow access to bpr domain */
70 pwc_battery_powered_domain_access(TRUE);
71
72 /* reset backup domain */
73 bpr_reset();
74
75 /* enable the lick osc */
76 crm_clock_source_enable(CRM_CLOCK_SOURCE_LICK, TRUE);
77 /* wait till lick is ready */
78 while(crm_flag_get(CRM_LICK_STABLE_FLAG) == RESET);
79 /* select the rtc clock source */
80 crm_rtc_clock_select(CRM_RTC_CLOCK_LICK);
81
82 /* enable rtc clock */
83 crm_rtc_clock_enable(TRUE);
84
85 /* wait for rtc registers update */
86 rtc_wait_update_finish();
87
88 /* wait for the register write to complete */
89 rtc_wait_config_finish();
90
91 /* enable the rtc second */
92 rtc_interrupt_enable(RTC_TS_INT, TRUE);
93
94 /* wait for the register write to complete */
95 rtc_wait_config_finish();
96
97 /* set rtc divider: set rtc period to 1sec */
98 rtc_divider_set(40000);
99
100 /* wait for the register write to complete */
101 rtc_wait_config_finish();
102
103 /* tamper pin disabled */
104 bpr_tamper_pin_enable(FALSE);
105
106 /* enable the rtc second output on tamper pin */
107 bpr_rtc_output_select(BPR_RTC_OUTPUT_SECOND);
108}
109
116uint32_t incrementvar_operationcomplete(void)
117{
118 operationcomplete++;
119
120 return (uint32_t)(operationcomplete - 1);
121}
122
128uint32_t getvar_operationcomplete(void)
129{
130 return (uint32_t)operationcomplete;
131}
132
138void setvar_periodvalue(uint32_t value)
139{
140 periodvalue = (uint32_t)(value);
141}
142
148int main(void)
149{
150 tmr_input_config_type tmr_ic_init_structure;
151
152 system_clock_config();
153
154 at32_board_init();
155
156 uart_print_init(115200);
157
158 /* rtc configuration */
159 rtc_configuration();
160
161 printf("\r\n\nstart calib\r\n\r\n");
162
163 /* get the frequency value */
164 crm_clocks_freq_get(&crm_clocks);
165
166 /* enable tmr5 apb1 clocks */
167 crm_periph_clock_enable(CRM_TMR5_PERIPH_CLOCK, TRUE);
168 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
169
170 /* connect internally the tm5_ch4 input capture to the lick clock output */
171 gpio_pin_remap_config(TMR5CH4_MUX, TRUE);
172
173 /* tmr5 time base configuration */
174 tmr_base_init(TMR5, 0xFFFF, 0);
175 tmr_cnt_dir_set(TMR5, TMR_COUNT_UP);
176 tmr_clock_source_div_set(TMR5, TMR_CLOCK_DIV1);
177
178 /* tmr5 channel4 input capture mode configuration */
179 tmr_input_default_para_init(&tmr_ic_init_structure);
180 tmr_ic_init_structure.input_channel_select = TMR_SELECT_CHANNEL_4;
181 tmr_ic_init_structure.input_polarity_select = TMR_INPUT_RISING_EDGE;
182 tmr_ic_init_structure.input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
183 tmr_ic_init_structure.input_filter_value = 0;
184 tmr_input_channel_init(TMR5, &tmr_ic_init_structure, TMR_CHANNEL_INPUT_DIV_1);
185
186 /* reinitialize the index for the interrupt */
187 operationcomplete = 0;
188
189 /* enable the tmr5 input capture counter */
190 tmr_counter_enable(TMR5, TRUE);
191
192 /* Reset all tmr5 flags */
193 tmr_flag_get(TMR5, TMR_C4_FLAG);
194
195 /* enable the tmr5 channel 4 */
196 tmr_interrupt_enable(TMR5, TMR_C4_INT, TRUE);
197
198 /* nvic configuration */
199 nvic_configuration();
200
201 /* wait the tmr5 measuring operation to be completed */
202 while(operationcomplete != 2);
203
204 /* compute the actual frequency of the lick. (tim5_clk = 1 * pclk1) */
205 if(periodvalue != 0)
206 {
207 lickfreq = (uint32_t)((uint32_t)(crm_clocks.apb1_freq * 2) / (uint32_t)periodvalue);
208 }
209
210 printf("apb1_freq = %d\r\n", crm_clocks.apb1_freq);
211 printf("period_value = %d\r\n", periodvalue);
212 printf("lick_freq = %d\r\n", lickfreq);
213
214 /* adjust the rtc prescaler value */
215 rtc_divider_set((lickfreq - 1));
216
217 /* wait for the register write to complete */
218 rtc_wait_config_finish();
219
220 /* turn on led2 */
221 at32_led_on(LED2);
222
223 while(1)
224 {
225 }
226}
227
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
operationcomplete
__IO uint32_t operationcomplete
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:39
setvar_periodvalue
void setvar_periodvalue(uint32_t value)
sets the periodvalue variable with input parameter.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:138
incrementvar_operationcomplete
uint32_t incrementvar_operationcomplete(void)
increments operationcomplete variable and return its value before increment operation.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:116
lickfreq
__IO uint32_t lickfreq
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:38
periodvalue
__IO uint32_t periodvalue
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:37
nvic_configuration
void nvic_configuration(void)
configures the nested vectored interrupt controller.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:46
getvar_operationcomplete
uint32_t getvar_operationcomplete(void)
returns operationcomplete value.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:128
main
int main(void)
main function.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:148
crm_clocks
crm_clocks_freq_type crm_clocks
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:36
rtc_configuration
void rtc_configuration(void)
configures the rtc.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:63
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
tmr_ic_init_structure
tmr_input_config_type tmr_ic_init_structure
Definition: project/at_start_f403/examples/tmr/one_cycle/src/main.c:37
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
bpr_tamper_pin_enable
void bpr_tamper_pin_enable(confirm_state new_state)
enable or disable bpr tamper pin
Definition: at32f403_bpr.c:192
bpr_rtc_output_select
void bpr_rtc_output_select(bpr_rtc_output_type output_source)
select bpr rtc output
Definition: at32f403_bpr.c:167
BPR_RTC_OUTPUT_SECOND
@ BPR_RTC_OUTPUT_SECOND
Definition: at32f403_bpr.h:118
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_rtc_clock_select
void crm_rtc_clock_select(crm_rtc_clock_type value)
select rtc clock
Definition: at32f403_crm.c:444
crm_rtc_clock_enable
void crm_rtc_clock_enable(confirm_state new_state)
enable or disable rtc
Definition: at32f403_crm.c:454
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_TMR5_PERIPH_CLOCK
@ CRM_TMR5_PERIPH_CLOCK
Definition: at32f403_crm.h:132
CRM_CLOCK_SOURCE_LICK
@ CRM_CLOCK_SOURCE_LICK
Definition: at32f403_crm.h:320
CRM_RTC_CLOCK_LICK
@ CRM_RTC_CLOCK_LICK
Definition: at32f403_crm.h:397
CRM_LICK_STABLE_FLAG
#define CRM_LICK_STABLE_FLAG
Definition: at32f403_crm.h:57
TMR5_GLOBAL_IRQn
@ TMR5_GLOBAL_IRQn
Definition: at32f403.h:229
RTC_IRQn
@ RTC_IRQn
Definition: at32f403.h:181
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
TMR5CH4_MUX
#define TMR5CH4_MUX
Definition: at32f403_gpio.h:97
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_wait_update_finish
void rtc_wait_update_finish(void)
rtc wait update finish
Definition: at32f403_rtc.c:230
rtc_interrupt_enable
void rtc_interrupt_enable(uint16_t source, confirm_state new_state)
rtc interrupt enable
Definition: at32f403_rtc.c:136
rtc_divider_set
void rtc_divider_set(uint32_t div_value)
rtc divider set
Definition: at32f403_rtc.c:80
RTC_TS_INT
#define RTC_TS_INT
Definition: at32f403_rtc.h:50
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_input_default_para_init
void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
init tmr input default para
Definition: at32f403_tmr.c:162
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR_C4_FLAG
#define TMR_C4_FLAG
Definition: at32f403_tmr.h:54
TMR_C4_INT
#define TMR_C4_INT
Definition: at32f403_tmr.h:76
TMR5
#define TMR5
Definition: at32f403_tmr.h:834
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::apb1_freq
uint32_t apb1_freq
Definition: at32f403_crm.h:454
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_filter_value
uint8_t input_filter_value
Definition: at32f403_tmr.h:414
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • sdio
  • sd_mmc_card
  • inc
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • sdio
  • sd_mmc_card
  • inc
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • sdio
  • sd_mmc_card
  • inc
project/at_start_f403/examples/sdio/sd_mmc_card/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • sdio
  • sd_mmc_card
  • src
project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • sdio
  • sd_mmc_card
  • src
project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • sdio
  • sd_mmc_card
  • src
project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c
Go to the documentation of this file.
1
25#include <stdbool.h>
26#include <string.h>
27#include "at32_sdio.h"
28#include "at32f403_board.h"
29#include "at32f403_clock.h"
30
39#define BLOCK_SIZE (512)
40#define BLOCKS_NUMBER (64)
41#define MULTI_BUFFER_SIZE (BLOCK_SIZE * BLOCKS_NUMBER)
42#define STREAM_BUFFER_SIZE (4096)
43
44static uint8_t sblock_tbuffer[BLOCK_SIZE], sblock_rbuffer[BLOCK_SIZE];
45static uint8_t mblock_tbuffer[MULTI_BUFFER_SIZE], mblock_rbuffer[MULTI_BUFFER_SIZE];
46static uint8_t stream_tbuffer[STREAM_BUFFER_SIZE], stream_rbuffer[STREAM_BUFFER_SIZE];
47
48static error_status sd_single_block_test(void);
49static error_status sd_multiple_blocks_test(void);
50uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length);
51static void sd_test_error(void);
52static void nvic_configuration(void);
53
60static error_status sd_single_block_test(void)
61{
62 sd_error_status_type status = SD_OK;
63 uint8_t bus_width;
64
65 /* test 1-bit and 4-bit width */
66 for(bus_width = 0; bus_width < 2; bus_width++)
67 {
68 memset(sblock_tbuffer, bus_width + 0xAB, BLOCK_SIZE);
69 memset(sblock_rbuffer, 0, BLOCK_SIZE);
70
71 /* set data width */
72 status = sd_wide_bus_operation_config((sdio_bus_width_type)bus_width);
73 if(status != SD_OK)
74 {
75 return ERROR;
76 }
77
78 /* write block of 512 bytes on address 0 */
79 status = sd_block_write(sblock_tbuffer, 0x00, BLOCK_SIZE);
80 if(status != SD_OK)
81 {
82 return ERROR;
83 }
84
85 /* read block of 512 bytes from address 0 */
86 status = sd_block_read(sblock_rbuffer, 0x00, BLOCK_SIZE);
87 if(status != SD_OK)
88 {
89 return ERROR;
90 }
91
92 if(!buffer_compare(sblock_tbuffer, sblock_rbuffer, BLOCK_SIZE))
93 {
94 return ERROR;
95 }
96 }
97
98 return SUCCESS;
99}
100
107static error_status sd_multiple_blocks_test(void)
108{
109 sd_error_status_type status = SD_OK;
110 uint8_t bus_width;
111
112 /* test 1-bit and 4-bit width */
113 for(bus_width = 0; bus_width < 2; bus_width++)
114 {
115 memset(mblock_tbuffer, bus_width + 0x3C, MULTI_BUFFER_SIZE);
116 memset(mblock_rbuffer, 0, MULTI_BUFFER_SIZE);
117
118 /* set data width */
119 status = sd_wide_bus_operation_config((sdio_bus_width_type)bus_width);
120 if(status != SD_OK)
121 {
122 return ERROR;
123 }
124
125 /* write multiple block of many bytes on address 0 */
126 status = sd_mult_blocks_write(mblock_tbuffer, 0x00, BLOCK_SIZE, BLOCKS_NUMBER);
127 if(status != SD_OK)
128 {
129 return ERROR;
130 }
131
132 /* read block of many bytes from address 0 */
133 status = sd_mult_blocks_read(mblock_rbuffer, 0x00, BLOCK_SIZE, BLOCKS_NUMBER);
134 if(status != SD_OK)
135 {
136 return ERROR;
137 }
138
139 /* check the correctness of written data */
140 if(!buffer_compare(mblock_tbuffer, mblock_rbuffer, MULTI_BUFFER_SIZE))
141 {
142 return ERROR;
143 }
144 }
145
146 return SUCCESS;
147}
148
155static error_status mmc_stream_test(void)
156{
157 sd_error_status_type status = SD_OK;
158 uint8_t bus_width;
159
160 /* only test 1-bit width */
161 for(bus_width = 0; bus_width < 1; bus_width++)
162 {
163 memset(stream_tbuffer, bus_width+0x5A, STREAM_BUFFER_SIZE);
164 memset(stream_rbuffer, 0, STREAM_BUFFER_SIZE);
165
166 /* set data width */
167 status = sd_wide_bus_operation_config((sdio_bus_width_type)bus_width);
168 if(status != SD_OK)
169 {
170 return ERROR;
171 }
172
173 /* write stream of many bytes on address 0 */
174 status = mmc_stream_write(stream_tbuffer, 0x00, STREAM_BUFFER_SIZE);
175 if (status != SD_OK)
176 {
177 return ERROR;
178 }
179
180 /* read stream of many bytes from address 0 */
181 status = mmc_stream_read(stream_rbuffer, 0x00, STREAM_BUFFER_SIZE);
182 if (status != SD_OK)
183 {
184 return ERROR;
185 }
186
187 /* check the correctness of written data */
188 if(!buffer_compare(stream_tbuffer, stream_rbuffer, STREAM_BUFFER_SIZE))
189 {
190 return ERROR;
191 }
192 }
193
194 return SUCCESS;
195}
196
204uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
205{
206 while(buffer_length--)
207 {
208 if(*pbuffer1 != *pbuffer2)
209 {
210 return 0;
211 }
212 pbuffer1++;
213 pbuffer2++;
214 }
215 return 1;
216}
217
223static void sd_test_error(void)
224{
225 at32_led_on(LED2);
226 delay_ms(300);
227 at32_led_off(LED2);
228 delay_ms(300);
229}
230
236static void nvic_configuration(void)
237{
238 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
239 nvic_irq_enable(SDIO1_IRQn, 0, 0);
240}
241
247void show_card_info(void)
248{
249 printf("---------------------\r\n");
250 switch(sd_card_info.card_type)
251 {
252 case SDIO_STD_CAPACITY_SD_CARD_V1_1: printf("card type: SDSC V1.1\r\n");break;
253 case SDIO_STD_CAPACITY_SD_CARD_V2_0: printf("card type: SDSC V2.0\r\n");break;
254 case SDIO_HIGH_CAPACITY_SD_CARD: printf("card type: SDHC V2.0\r\n");break;
255 case SDIO_MULTIMEDIA_CARD: printf("card type: MMC Card\r\n");break;
256 }
257 printf("card manufacturer_id: %d\r\n", sd_card_info.sd_cid_reg.manufacturer_id);
258 printf("card rca: 0x%X\r\n", sd_card_info.rca);
259 printf("card c_size = %u\r\n", sd_card_info.sd_csd_reg.device_size);
260 printf("card capacity: %uMB %uKB\r\n", (uint32_t)(sd_card_info.card_capacity>>20), (uint32_t)(sd_card_info.card_capacity>>10));
261 printf("card block_size: %d\r\n", sd_card_info.card_blk_size);
262 printf("---------------------\r\n");
263}
264
265/* gloable functions ---------------------------------------------------------*/
271int main(void)
272{
273 system_clock_config();
274
275 at32_board_init();
276
277 nvic_configuration();
278
279 uart_print_init(115200);
280 printf("start test..\r\n");
281
282 /* sdio init */
283 if(SD_OK != sd_init())
284 {
285 printf("sdio init fail\r\n");
286 while(1)
287 {
288 sd_test_error();
289 }
290 }
291 printf("sdio init ok\r\n");
292 show_card_info();
293
294 /* sd card single block test */
295 if(SUCCESS != sd_single_block_test())
296 {
297 printf("sd card single block test fail\r\n");
298 /* single block test fail, led2 fresh */
299 while(1)
300 {
301 sd_test_error();
302 }
303 }
304 printf("sd card single block test ok\r\n");
305
306 /* sd card multiple blocks test */
307 if(SUCCESS != sd_multiple_blocks_test())
308 {
309 printf("sd card multiple blocks test fail\r\n");
310 /* multiple blocks test fail, led2 fresh */
311 while(1)
312 {
313 sd_test_error();
314 }
315 }
316 printf("sd card multiple blocks test ok\r\n");
317
318 /* mmc card stream data transfer test */
319 if(sd_card_info.card_type == SDIO_MULTIMEDIA_CARD)
320 {
321 if(SUCCESS != mmc_stream_test())
322 {
323 printf("mmc card stream data test fail\r\n");
324 /* mmc card stream data test fail, led2 fresh */
325 while(1)
326 {
327 sd_test_error();
328 }
329 }
330 printf("mmc card stream data test ok\r\n");
331 }
332
333 /* all tests pass, led3 and led4 fresh */
334 while(1)
335 {
336 at32_led_toggle(LED3);
337 at32_led_toggle(LED4);
338 delay_ms(300);
339 }
340}
341
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
sd_card_info
sd_card_info_struct_type sd_card_info
Definition: sd_mmc_card/src/at32_sdio.c:46
STREAM_BUFFER_SIZE
#define STREAM_BUFFER_SIZE
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:42
mblock_rbuffer
static uint8_t mblock_rbuffer[((512) *(64))]
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:45
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:204
stream_tbuffer
static uint8_t stream_tbuffer[(4096)]
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:46
sd_test_error
static void sd_test_error(void)
LED2 on off every 300ms for sd test failed.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:223
mmc_stream_test
static error_status mmc_stream_test(void)
mmc card data stream read/write test.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:155
BLOCKS_NUMBER
#define BLOCKS_NUMBER
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:40
sd_single_block_test
static error_status sd_single_block_test(void)
sd card single block read/write test.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:60
mblock_tbuffer
static uint8_t mblock_tbuffer[((512) *(64))]
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:45
sblock_rbuffer
static uint8_t sblock_rbuffer[(512)]
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:44
stream_rbuffer
static uint8_t stream_rbuffer[(4096)]
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:46
sd_multiple_blocks_test
static error_status sd_multiple_blocks_test(void)
sd card multiple blocks read/write test.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:107
show_card_info
void show_card_info(void)
show sd/mmc card info.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:247
sblock_tbuffer
static uint8_t sblock_tbuffer[(512)]
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:44
MULTI_BUFFER_SIZE
#define MULTI_BUFFER_SIZE
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:41
nvic_configuration
static void nvic_configuration(void)
configures sdio1 irq channel.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:236
main
int main(void)
main function.
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:271
BLOCK_SIZE
#define BLOCK_SIZE
Definition: project/at_start_f403/examples/sdio/sd_mmc_card/src/main.c:39
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
SDIO1_IRQn
@ SDIO1_IRQn
Definition: at32f403.h:228
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
sdio_bus_width_type
sdio_bus_width_type
sdio bus width
Definition: at32f403_sdio.h:137
mmc_stream_write
sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1691
sd_block_read
sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma ...
Definition: sd_mmc_card/src/at32_sdio.c:1179
sd_mult_blocks_write
sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed ...
Definition: sd_mmc_card/src/at32_sdio.c:1480
sd_block_write
sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be manag...
Definition: sd_mmc_card/src/at32_sdio.c:1358
sd_init
sd_error_status_type sd_init(void)
initializes the sd card and put it into standby state (ready for data transfer).
Definition: sd_mmc_card/src/at32_sdio.c:70
mmc_stream_read
sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1644
sd_mult_blocks_read
sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mod...
Definition: sd_mmc_card/src/at32_sdio.c:1268
sd_wide_bus_operation_config
sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card.
Definition: sd_mmc_card/src/at32_sdio.c:734
sd_error_status_type
sd_error_status_type
Definition: sd_mmc_card/inc/at32_sdio.h:72
SD_OK
@ SD_OK
Definition: sd_mmc_card/inc/at32_sdio.h:117
SDIO_HIGH_CAPACITY_SD_CARD
@ SDIO_HIGH_CAPACITY_SD_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:204
SDIO_STD_CAPACITY_SD_CARD_V1_1
@ SDIO_STD_CAPACITY_SD_CARD_V1_1
Definition: sd_mmc_card/inc/at32_sdio.h:202
SDIO_STD_CAPACITY_SD_CARD_V2_0
@ SDIO_STD_CAPACITY_SD_CARD_V2_0
Definition: sd_mmc_card/inc/at32_sdio.h:203
SDIO_MULTIMEDIA_CARD
@ SDIO_MULTIMEDIA_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:205
sd_card_info_struct_type::card_capacity
long long card_capacity
Definition: sd_mmc_card/inc/at32_sdio.h:239
sd_card_info_struct_type::sd_cid_reg
sd_cid_struct_type sd_cid_reg
Definition: sd_mmc_card/inc/at32_sdio.h:237
sd_card_info_struct_type::sd_csd_reg
sd_csd_struct_type sd_csd_reg
Definition: sd_mmc_card/inc/at32_sdio.h:236
sd_card_info_struct_type::card_blk_size
uint32_t card_blk_size
Definition: sd_mmc_card/inc/at32_sdio.h:240
sd_card_info_struct_type::rca
uint16_t rca
Definition: sd_mmc_card/inc/at32_sdio.h:241
sd_card_info_struct_type::card_type
uint8_t card_type
Definition: sd_mmc_card/inc/at32_sdio.h:242
sd_cid_struct_type::manufacturer_id
uint8_t manufacturer_id
Definition: sd_mmc_card/inc/at32_sdio.h:169
sd_csd_struct_type::device_size
uint32_t device_size
Definition: sd_mmc_card/inc/at32_sdio.h:138
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • sdio
  • sdio_fatfs
  • inc
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • sdio
  • sdio_fatfs
  • inc
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • sdio
  • sdio_fatfs
  • inc
project/at_start_f403/examples/sdio/sdio_fatfs/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • sdio
  • sdio_fatfs
  • src
project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • sdio
  • sdio_fatfs
  • src
project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • sdio
  • sdio_fatfs
  • src
project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c
Go to the documentation of this file.
1
25#include <stdbool.h>
26#include <string.h>
27#include "at32_sdio.h"
28#include "at32f403_board.h"
29#include "at32f403_clock.h"
30#include "ff.h"
31
40FATFS fs;
41FIL file;
42BYTE work[FF_MAX_SS];
43
44uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length);
45static void sd_test_error(void);
46static void nvic_configuration(void);
47
55uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
56{
57 while(buffer_length--)
58 {
59 if(*pbuffer1 != *pbuffer2)
60 {
61 return 0;
62 }
63 pbuffer1++;
64 pbuffer2++;
65 }
66 return 1;
67}
68
74static void sd_test_error(void)
75{
76 at32_led_on(LED2);
77 delay_ms(300);
78 at32_led_off(LED2);
79 delay_ms(300);
80}
81
87static void nvic_configuration(void)
88{
89 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
90 nvic_irq_enable(SDIO1_IRQn, 0, 0);
91}
92
99static error_status fatfs_test(void)
100{
101 FRESULT ret;
102 char filename[] = "1:/test1.txt";
103 const char wbuf[] = "this is my file for test fatfs!\r\n";
104 char rbuf[50];
105 UINT bytes_written = 0;
106 UINT bytes_read = 0;
107 DWORD fre_clust, fre_sect, tot_sect;
108 FATFS* pt_fs;
109
110 ret = f_mount(&fs, "1:", 1);
111 if(ret){
112 printf("fs mount err:%d.\r\n", ret);
113 if(ret == FR_NO_FILESYSTEM){
114 printf("create fatfs..\r\n");
115 ret = f_mkfs("1:", 0, work, sizeof(work));
116 if(ret){
117 printf("creates fatfs err:%d.\r\n", ret);
118 return ERROR;
119 }
120 else{
121 printf("creates fatfs ok.\r\n");
122 }
123 ret = f_mount(NULL, "1:", 1);
124 ret = f_mount(&fs, "1:", 1);
125 if(ret){
126 printf("fs mount err:%d.\r\n", ret);
127 return ERROR;
128 }
129 else{
130 printf("fs mount ok.\r\n");
131 }
132 }
133 else{
134 return ERROR;
135 }
136 }
137 else{
138 printf("fs mount ok.\r\n");
139 }
140
141 ret = f_open(&file, filename, FA_READ | FA_WRITE | FA_CREATE_ALWAYS);
142 if(ret){
143 printf("open file err:%d.\r\n", ret);
144 }
145 else{
146 printf("open file ok.\r\n");
147 }
148 ret = f_write(&file, wbuf, sizeof(wbuf), &bytes_written);
149 if(ret){
150 printf("write file err:%d.\r\n", ret);
151 }
152 else{
153 printf("write file ok, byte:%u.\r\n", bytes_written);
154 }
155 f_lseek(&file, 0);
156 ret = f_read(&file, rbuf, sizeof(rbuf), &bytes_read);
157 if(ret){
158 printf("read file err:%d.\r\n", ret);
159 }
160 else{
161 printf("read file ok, byte:%u.\r\n", bytes_read);
162 }
163 ret = f_close(&file);
164 if(ret){
165 printf("close file err:%d.\r\n", ret);
166 }
167 else{
168 printf("close file ok.\r\n");
169 }
170
171 pt_fs = &fs;
172 /* get volume information and free clusters of drive 1 */
173 ret = f_getfree("1:", &fre_clust, &pt_fs);
174 if(ret == FR_OK)
175 {
176 /* get total sectors and free sectors */
177 tot_sect = (pt_fs->n_fatent - 2) * pt_fs->csize;
178 fre_sect = fre_clust * pt_fs->csize;
179
180 /* print the free space (assuming 512 bytes/sector) */
181 printf("%10u KiB total drive space.\r\n%10u KiB available.\r\n", tot_sect / 2, fre_sect / 2);
182 }
183
184 ret = f_mount(NULL, "1:", 1);
185
186 if(1 == buffer_compare((uint8_t*)rbuf, (uint8_t*)wbuf, sizeof(wbuf))){
187 printf("r/w file data test ok.\r\n");
188 }
189 else{
190 printf("r/w file data test fail.\r\n");
191 return ERROR;
192 }
193
194 return SUCCESS;
195}
196
197/* gloable functions ---------------------------------------------------------*/
203int main(void)
204{
205 system_clock_config();
206
207 at32_board_init();
208
209 nvic_configuration();
210
211 uart_print_init(115200);
212 printf("start test fatfs r0.14b..\r\n");
213
214 if(SUCCESS != fatfs_test())
215 {
216 while(1)
217 {
218 sd_test_error();
219 }
220 }
221
222 /* all tests pass, led3 and led4 fresh */
223 while(1)
224 {
225 at32_led_toggle(LED3);
226 at32_led_toggle(LED4);
227 delay_ms(300);
228 }
229}
230
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
FF_MAX_SS
#define FF_MAX_SS
Definition: ffconf.h:197
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:55
file
FIL file
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:41
sd_test_error
static void sd_test_error(void)
led2 on off every 300ms for sd test failed.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:74
work
BYTE work[FF_MAX_SS]
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:42
nvic_configuration
static void nvic_configuration(void)
configures sdio1 irq channel.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:87
main
int main(void)
main function.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:203
fatfs_test
static error_status fatfs_test(void)
fatfs file read/write test.
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:99
fs
FATFS fs
Definition: project/at_start_f403/examples/sdio/sdio_fatfs/src/main.c:40
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
SDIO1_IRQn
@ SDIO1_IRQn
Definition: at32f403.h:228
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • spi
  • crc_transfer_polling
  • inc
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • spi
  • crc_transfer_polling
  • inc
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • spi
  • crc_transfer_polling
  • inc
project/at_start_f403/examples/spi/crc_transfer_polling/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • spi
  • crc_transfer_polling
  • src
project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • spi
  • crc_transfer_polling
  • src
project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • spi
  • crc_transfer_polling
  • src
project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 32
37
38uint16_t spi1_tx_buffer[BUFFER_SIZE] = {0x0102, 0x0304, 0x0506, 0x0708, 0x090A, 0x0B0C, 0x0D0E, 0x0F10,
39 0x1112, 0x1314, 0x1516, 0x1718, 0x191A, 0x1B1C, 0x1D1E, 0x1F20,
40 0x2122, 0x2324, 0x2526, 0x2728, 0x292A, 0x2B2C, 0x2D2E, 0x2F30,
41 0x3132, 0x3334, 0x3536, 0x3738, 0x393A, 0x3B3C, 0x3D3E, 0x3F40};
42uint16_t spi2_tx_buffer[BUFFER_SIZE] = {0x5152, 0x5354, 0x5556, 0x5758, 0x595A, 0x5B5C, 0x5D5E, 0x5F60,
43 0x6162, 0x6364, 0x6566, 0x6768, 0x696A, 0x6B6C, 0x6D6E, 0x6F70,
44 0x7172, 0x7374, 0x7576, 0x7778, 0x797A, 0x7B7C, 0x7D7E, 0x7F80,
45 0x8182, 0x8384, 0x8586, 0x8788, 0x898A, 0x8B8C, 0x8D8E, 0x8F90};
46uint16_t spi1_rx_buffer[BUFFER_SIZE], spi2_rx_buffer[BUFFER_SIZE];
47uint32_t tx_index = 0, rx_index = 0;
48__IO uint16_t crc1_value = 0, crc2_value = 0;
49volatile error_status transfer_status1 = ERROR, transfer_status2 = ERROR;
50
51static void gpio_config(void);
52static void spi_config(void);
53 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length);
54
61 error_status buffer_compare(uint16_t* pbuffer1, uint16_t* pbuffer2, uint16_t buffer_length)
62{
63 while(buffer_length--)
64 {
65 if(*pbuffer1 != *pbuffer2)
66 {
67 return ERROR;
68 }
69 pbuffer1++;
70 pbuffer2++;
71 }
72 return SUCCESS;
73}
74
80static void spi_config(void)
81{
82 spi_init_type spi_init_struct;
83 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
84 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
85 spi_default_para_init(&spi_init_struct);
86 spi_init_struct.transmission_mode = SPI_TRANSMIT_FULL_DUPLEX;
87 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
88 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_8;
89 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_MSB;
90 spi_init_struct.frame_bit_num = SPI_FRAME_16BIT;
91 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_LOW;
92 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
93 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
94 spi_init(SPI1, &spi_init_struct);
95
96 spi_init_struct.master_slave_mode = SPI_MODE_SLAVE;
97 spi_init(SPI2, &spi_init_struct);
98
99 spi_crc_polynomial_set(SPI1, 7);
100 spi_crc_polynomial_set(SPI2, 7);
101 spi_crc_enable(SPI1, TRUE);
102 spi_crc_enable(SPI2, TRUE);
103 spi_enable(SPI1, TRUE);
104 spi_enable(SPI2, TRUE);
105}
106
112static void gpio_config(void)
113{
114 gpio_init_type gpio_initstructure;
115 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
116 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
117
118 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
119 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
120 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
121 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
122 gpio_initstructure.gpio_pins = GPIO_PINS_5;
123 gpio_init(GPIOA, &gpio_initstructure);
124
125 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
126 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
127 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
128 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
129 gpio_initstructure.gpio_pins = GPIO_PINS_6;
130 gpio_init(GPIOA, &gpio_initstructure);
131
132 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
133 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
134 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
135 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
136 gpio_initstructure.gpio_pins = GPIO_PINS_7;
137 gpio_init(GPIOA, &gpio_initstructure);
138
139 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
140 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
141 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
142 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
143 gpio_initstructure.gpio_pins = GPIO_PINS_13;
144 gpio_init(GPIOB, &gpio_initstructure);
145
146 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
147 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
148 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
149 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
150 gpio_initstructure.gpio_pins = GPIO_PINS_14;
151 gpio_init(GPIOB, &gpio_initstructure);
152
153 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
154 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
155 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
156 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
157 gpio_initstructure.gpio_pins = GPIO_PINS_15;
158 gpio_init(GPIOB, &gpio_initstructure);
159}
160
166int main(void)
167{
168 system_clock_config();
169 at32_board_init();
170 gpio_config();
171 spi_config();
172
173 /* transfer procedure:the "BUFFER_SIZE-1" data transfer */
174 while(tx_index < BUFFER_SIZE - 1)
175 {
176 while(spi_i2s_flag_get(SPI2, SPI_I2S_TDBE_FLAG) == RESET);
177 spi_i2s_data_transmit(SPI2, spi2_tx_buffer[tx_index]);
178 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
179 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index++]);
180 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
181 spi2_rx_buffer[rx_index] = spi_i2s_data_receive(SPI2);
182 while(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) == RESET);
183 spi1_rx_buffer[rx_index++] = spi_i2s_data_receive(SPI1);
184 }
185 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
186 while(spi_i2s_flag_get(SPI2, SPI_I2S_TDBE_FLAG) == RESET);
187
188 /* transfer procedure:the last data and crc transfer */
189 spi_i2s_data_transmit(SPI2, spi2_tx_buffer[tx_index]);
190 spi_crc_next_transmit(SPI2);
191 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index]);
192 spi_crc_next_transmit(SPI1);
193 while(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) == RESET);
194 spi1_rx_buffer[rx_index] = spi_i2s_data_receive(SPI1);
195 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
196 spi2_rx_buffer[rx_index] = spi_i2s_data_receive(SPI2);
197 while(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) == RESET);
198 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
199
200 /* test result:the data and crc check */
201 transfer_status1 = buffer_compare(spi2_rx_buffer, spi1_tx_buffer, BUFFER_SIZE);
202 transfer_status2 = buffer_compare(spi1_rx_buffer, spi2_tx_buffer, BUFFER_SIZE);
203 if((spi_i2s_flag_get(SPI1, SPI_CCERR_FLAG)) != RESET)
204 {
205 spi_i2s_flag_clear(SPI1, SPI_CCERR_FLAG);
206 transfer_status2 = ERROR;
207 }
208 if((spi_i2s_flag_get(SPI2, SPI_CCERR_FLAG)) != RESET)
209 {
210 spi_i2s_flag_clear(SPI2, SPI_CCERR_FLAG);
211 transfer_status1 = ERROR;
212 }
213 crc1_value = spi_i2s_data_receive(SPI1);
214 crc2_value = spi_i2s_data_receive(SPI2);
215
216 /* test result indicate:if SUCCESS ,led2 lights */
217 if((transfer_status1 == SUCCESS) && (transfer_status2 == SUCCESS))
218 {
219 at32_led_on(LED2);
220 }
221 else
222 {
223 at32_led_off(LED2);
224 }
225 while(1)
226 {
227 }
228}
229
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
spi1_tx_buffer
uint16_t spi1_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:38
buffer_compare
error_status buffer_compare(uint16_t *pbuffer1, uint16_t *pbuffer2, uint16_t buffer_length)
buffer compare function.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:61
spi_config
static void spi_config(void)
spi configuration.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:80
transfer_status1
volatile error_status transfer_status1
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:49
spi2_tx_buffer
uint16_t spi2_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:42
spi1_rx_buffer
uint16_t spi1_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:46
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:36
crc2_value
__IO uint16_t crc2_value
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:48
transfer_status2
volatile error_status transfer_status2
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:166
rx_index
uint32_t rx_index
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:47
tx_index
uint32_t tx_index
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:47
spi2_rx_buffer
uint16_t spi2_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:46
crc1_value
__IO uint16_t crc1_value
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:48
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:112
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SPI_CCERR_FLAG
#define SPI_CCERR_FLAG
Definition: at32f403_spi.h:55
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_crc_enable
void spi_crc_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the hardware crc calculation for the spi peripheral.
Definition: at32f403_spi.c:201
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_crc_next_transmit
void spi_crc_next_transmit(spi_type *spi_x)
spi next transmit crc for the spi peripheral.
Definition: at32f403_spi.c:162
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_crc_polynomial_set
void spi_crc_polynomial_set(spi_type *spi_x, uint16_t crc_poly)
set the crc polynomial value for the spi peripheral.
Definition: at32f403_spi.c:175
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_i2s_flag_clear
void spi_i2s_flag_clear(spi_type *spi_x, uint32_t spi_i2s_flag)
clear flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:653
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_MCLK_DIV_8
@ SPI_MCLK_DIV_8
Definition: at32f403_spi.h:134
SPI_FRAME_16BIT
@ SPI_FRAME_16BIT
Definition: at32f403_spi.h:88
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • spi
  • fullduplex_polling
  • inc
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • spi
  • fullduplex_polling
  • inc
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • spi
  • fullduplex_polling
  • inc
project/at_start_f403/examples/spi/fullduplex_polling/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • spi
  • fullduplex_polling
  • src
project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • spi
  • fullduplex_polling
  • src
project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • spi
  • fullduplex_polling
  • src
project/at_start_f403/examples/spi/fullduplex_polling/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 32
37
38 spi_init_type spi_init_struct;
39uint8_t spi1_tx_buffer[BUFFER_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
40 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
41 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
42 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20};
43uint8_t spi2_tx_buffer[BUFFER_SIZE] = {0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
44 0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F, 0x60,
45 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
46 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70};
47uint8_t spi1_rx_buffer[BUFFER_SIZE], spi2_rx_buffer[BUFFER_SIZE];
48uint32_t tx_index = 0, rx_index = 0;
49volatile error_status transfer_status1 = ERROR, transfer_status2 = ERROR;
50volatile error_status transfer_status3 = ERROR, transfer_status4 = ERROR;
51
52static void gpio_config(uint16_t spi1_mode, uint16_t spi2_mode);
53static void spi_config(void);
54 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t bufferlength);
55
62 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t bufferlength)
63{
64 while(bufferlength--)
65 {
66 if(*pbuffer1 != *pbuffer2)
67 {
68 return ERROR;
69 }
70
71 pbuffer1++;
72 pbuffer2++;
73 }
74 return SUCCESS;
75}
76
82static void spi_config(void)
83{
84 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
85 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
86 spi_default_para_init(&spi_init_struct);
87 spi_init_struct.transmission_mode = SPI_TRANSMIT_FULL_DUPLEX;
88 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
89 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_8;
90 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_LSB;
91 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
92 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_LOW;
93 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
94 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
95 spi_init(SPI1, &spi_init_struct);
96
97 spi_init_struct.master_slave_mode = SPI_MODE_SLAVE;
98 spi_init(SPI2, &spi_init_struct);
99
100 spi_enable(SPI1, TRUE);
101 spi_enable(SPI2, TRUE);
102}
103
109static void gpio_config(uint16_t spi1_mode, uint16_t spi2_mode)
110{
111 gpio_init_type gpio_initstructure;
112 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
113 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
114 gpio_default_para_init(&gpio_initstructure);
115 /* spi1 sck pin */
116 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
117 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
118 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
119 if(spi1_mode == SPI_MODE_MASTER)
120 {
121 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
122 }
123 else
124 {
125 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
126 }
127 gpio_initstructure.gpio_pins = GPIO_PINS_5;
128 gpio_init(GPIOA, &gpio_initstructure);
129
130 /* spi1 miso pin */
131 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
132 if(spi1_mode == SPI_MODE_MASTER)
133 {
134 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
135 }
136 else
137 {
138 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
139 }
140 gpio_initstructure.gpio_pins = GPIO_PINS_6;
141 gpio_init(GPIOA, &gpio_initstructure);
142
143 /* spi1 mosi pin */
144 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
145 if(spi1_mode == SPI_MODE_MASTER)
146 {
147 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
148 }
149 else
150 {
151 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
152 }
153 gpio_initstructure.gpio_pins = GPIO_PINS_7;
154 gpio_init(GPIOA, &gpio_initstructure);
155
156 /* spi2 sck pin */
157 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
158 if(spi2_mode == SPI_MODE_SLAVE)
159 {
160 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
161 }
162 else
163 {
164 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
165 }
166 gpio_initstructure.gpio_pins = GPIO_PINS_13;
167 gpio_init(GPIOB, &gpio_initstructure);
168
169 /* spi2 miso pin */
170 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
171 if(spi2_mode == SPI_MODE_SLAVE)
172 {
173 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
174 }
175 else
176 {
177 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
178 }
179 gpio_initstructure.gpio_pins = GPIO_PINS_14;
180 gpio_init(GPIOB, &gpio_initstructure);
181
182 /* spi2 mosi pin */
183 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
184 if(spi2_mode == SPI_MODE_SLAVE)
185 {
186 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
187 }
188 else
189 {
190 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
191 }
192 gpio_initstructure.gpio_pins = GPIO_PINS_15;
193 gpio_init(GPIOB, &gpio_initstructure);
194}
195
201int main(void)
202{
203 __IO uint32_t index = 0;
204 system_clock_config();
205 at32_board_init();
206 gpio_config(SPI_MODE_MASTER, SPI_MODE_SLAVE);
207 spi_config();
208
209 /* transfer procedure:the "BUFFER_SIZE" data transfer */
210 while(tx_index < BUFFER_SIZE)
211 {
212 while(spi_i2s_flag_get(SPI2, SPI_I2S_TDBE_FLAG) == RESET);
213 spi_i2s_data_transmit(SPI2, spi2_tx_buffer[tx_index]);
214 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
215 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index++]);
216 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
217 spi2_rx_buffer[rx_index] = spi_i2s_data_receive(SPI2);
218 while(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) == RESET);
219 spi1_rx_buffer[rx_index++] = spi_i2s_data_receive(SPI1);
220 }
221
222 /* test result:the data check */
223 transfer_status1 = buffer_compare(spi2_rx_buffer, spi1_tx_buffer, BUFFER_SIZE);
224 transfer_status2 = buffer_compare(spi1_rx_buffer, spi2_tx_buffer, BUFFER_SIZE);
225
226 /* master &slave mode switch */
227 spi_enable(SPI1, FALSE);
228 spi_enable(SPI2, FALSE);
229 gpio_config(SPI_MODE_SLAVE, SPI_MODE_MASTER);
230 spi_init_struct.master_slave_mode =SPI_MODE_SLAVE;
231 spi_init(SPI1, &spi_init_struct);
232
233 spi_init_struct.master_slave_mode =SPI_MODE_MASTER;
234 spi_init(SPI2, &spi_init_struct);
235
236 tx_index = 0;
237 rx_index = 0;
238 for(index = 0; index < BUFFER_SIZE; index++)
239 spi1_rx_buffer[index] = 0;
240 for(index = 0; index < BUFFER_SIZE; index++)
241 spi2_rx_buffer[index] = 0;
242
243 spi_enable(SPI2, TRUE);
244 spi_enable(SPI1, TRUE);
245
246 /* transfer procedure:the "BUFFER_SIZE" data transfer */
247 while(tx_index < BUFFER_SIZE)
248 {
249 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
250 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index]);
251 while(spi_i2s_flag_get(SPI2, SPI_I2S_TDBE_FLAG) == RESET);
252 spi_i2s_data_transmit(SPI2, spi2_tx_buffer[tx_index++]);
253 while(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) == RESET);
254 spi1_rx_buffer[rx_index] = spi_i2s_data_receive(SPI1);
255 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
256 spi2_rx_buffer[rx_index++] = spi_i2s_data_receive(SPI2);
257 }
258
259 /* test result:the data check */
260 transfer_status3 = buffer_compare(spi2_rx_buffer, spi1_tx_buffer, BUFFER_SIZE);
261 transfer_status4 = buffer_compare(spi1_rx_buffer, spi2_tx_buffer, BUFFER_SIZE);
262
263 /* test result indicate:if SUCCESS ,led2 lights */
264 if((transfer_status1 == SUCCESS) && (transfer_status2 == SUCCESS) && \
265 (transfer_status3 == SUCCESS) && (transfer_status4 == SUCCESS))
266 {
267 at32_led_on(LED2);
268 }
269 else
270 {
271 at32_led_off(LED2);
272 }
273 while(1)
274 {
275 }
276}
277
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
buffer_compare
error_status buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t bufferlength)
buffer compare function.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:62
transfer_status3
volatile error_status transfer_status3
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:50
spi_config
static void spi_config(void)
spi configuration.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:82
transfer_status1
volatile error_status transfer_status1
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:49
transfer_status4
volatile error_status transfer_status4
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:50
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:36
transfer_status2
volatile error_status transfer_status2
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:201
gpio_config
static void gpio_config(uint16_t spi1_mode, uint16_t spi2_mode)
gpio configuration.
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:109
spi2_rx_buffer
uint8_t spi2_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:47
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
spi1_rx_buffer
uint8_t spi1_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:47
spi2_tx_buffer
uint8_t spi2_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:43
rx_index
uint32_t rx_index
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:48
tx_index
uint32_t tx_index
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:48
spi1_tx_buffer
uint8_t spi1_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:39
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_LSB
@ SPI_FIRST_BIT_LSB
Definition: at32f403_spi.h:150
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_MCLK_DIV_8
@ SPI_MCLK_DIV_8
Definition: at32f403_spi.h:134
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • spi
  • halfduplex_interrupt
  • inc
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • spi
  • halfduplex_interrupt
  • inc
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • spi
  • halfduplex_interrupt
  • inc
project/at_start_f403/examples/spi/halfduplex_interrupt/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • spi
  • halfduplex_interrupt
  • src
project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • spi
  • halfduplex_interrupt
  • src
project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern uint8_t spi1_tx_buffer[];
30extern uint8_t spi2_rx_buffer[];
31extern uint32_t tx_index;
32extern uint32_t rx_index;
33
42#define BUFFERSIZE 32
43
49void NMI_Handler(void)
50{
51}
52
58void HardFault_Handler(void)
59{
60 /* go to infinite loop when hard fault exception occurs */
61 while(1)
62 {
63 }
64}
65
71void MemManage_Handler(void)
72{
73 /* go to infinite loop when memory manage exception occurs */
74 while(1)
75 {
76 }
77}
78
84void BusFault_Handler(void)
85{
86 /* go to infinite loop when bus fault exception occurs */
87 while(1)
88 {
89 }
90}
91
97void UsageFault_Handler(void)
98{
99 /* go to infinite loop when usage fault exception occurs */
100 while(1)
101 {
102 }
103}
104
110void SVC_Handler(void)
111{
112}
113
119void DebugMon_Handler(void)
120{
121}
122
128void PendSV_Handler(void)
129{
130}
131
137void SysTick_Handler(void)
138{
139}
140
146 void SPI1_IRQHandler(void)
147{
148 if(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) != RESET)
149 {
150 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index++]);
151 if(tx_index == BUFFERSIZE)
152 {
153 spi_i2s_interrupt_enable(SPI1, SPI_I2S_TDBE_INT, FALSE);
154 }
155 }
156}
157
163 void SPI2_IRQHandler(void)
164{
165 if(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) != RESET)
166 {
167 spi2_rx_buffer[rx_index++] = spi_i2s_data_receive(SPI2);
168 }
169}
170
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
tx_index
uint32_t tx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:44
rx_index
uint32_t rx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:31
spi1_tx_buffer
uint8_t spi1_tx_buffer[]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:38
spi2_rx_buffer
uint8_t spi2_rx_buffer[]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:46
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:97
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:58
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:71
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:110
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:128
SPI2_IRQHandler
void SPI2_IRQHandler(void)
This function handles the spi2 interrupt request.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:163
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:49
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:84
SPI1_IRQHandler
void SPI1_IRQHandler(void)
This function handles the spi1 interrupt request.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:146
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:137
BUFFERSIZE
#define BUFFERSIZE
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:42
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/at32f403_int.c:119
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
SPI_I2S_TDBE_INT
#define SPI_I2S_TDBE_INT
Definition: at32f403_spi.h:72
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • spi
  • halfduplex_interrupt
  • src
project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 32
37
38 spi_init_type spi_init_struct;
39
40uint8_t spi1_tx_buffer[BUFFER_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
41 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
42 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
43 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20};
44uint8_t spi2_rx_buffer[BUFFER_SIZE];
45volatile uint32_t tx_index = 0, rx_index = 0;
46volatile error_status transfer_status = ERROR;
47
48static void gpio_config(void);
49static void spi_config(void);
50 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length);
51
58 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
59{
60 while(buffer_length--)
61 {
62 if(*pbuffer1 != *pbuffer2)
63 {
64 return ERROR;
65 }
66
67 pbuffer1++;
68 pbuffer2++;
69 }
70 return SUCCESS;
71}
72
78static void spi_config(void)
79{
80 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
81 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
82 spi_default_para_init(&spi_init_struct);
83 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_TX;
84 spi_init_struct.master_slave_mode =SPI_MODE_MASTER;
85 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_8;
86 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_MSB;
87 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
88 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_LOW;
89 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
90 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
91 spi_init(SPI1, &spi_init_struct);
92
93 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_RX;
94 spi_init_struct.master_slave_mode =SPI_MODE_SLAVE;
95 spi_init(SPI2, &spi_init_struct);
96
97 nvic_irq_enable(SPI1_IRQn, 0, 0);
98 nvic_irq_enable(SPI2_IRQn, 0, 0);
99 spi_i2s_interrupt_enable(SPI1, SPI_I2S_TDBE_INT, TRUE);
100 spi_i2s_interrupt_enable(SPI2, SPI_I2S_RDBF_INT, TRUE);
101
102 spi_enable(SPI2, TRUE);
103 spi_enable(SPI1, TRUE);
104}
105
111static void gpio_config(void)
112{
113 gpio_init_type gpio_initstructure;
114 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
115 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
116 gpio_default_para_init(&gpio_initstructure);
117
118 /* spi1 sck pin */
119 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
120 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
121 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
122 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
123 gpio_initstructure.gpio_pins = GPIO_PINS_5;
124 gpio_init(GPIOA, &gpio_initstructure);
125
126 /* spi1 mosi pin */
127 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
128 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
129 gpio_initstructure.gpio_pins = GPIO_PINS_7;
130 gpio_init(GPIOA, &gpio_initstructure);
131
132 /* spi2 sck pin */
133 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
134 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
135 gpio_initstructure.gpio_pins = GPIO_PINS_13;
136 gpio_init(GPIOB, &gpio_initstructure);
137
138 /* spi2 miso pin */
139 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
140 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
141 gpio_initstructure.gpio_pins = GPIO_PINS_14;
142 gpio_init(GPIOB, &gpio_initstructure);
143
144 while(gpio_input_data_bit_read(GPIOB, GPIO_PINS_13)!=RESET);
145}
146
152int main(void)
153{
154 system_clock_config();
155 at32_board_init();
156 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
157 gpio_config();
158 /* config spi1 send spi2 receive */
159 spi_config();
160 while(rx_index < BUFFER_SIZE);
161
162 /* test result:the data check */
163 transfer_status = buffer_compare(spi2_rx_buffer, spi1_tx_buffer, BUFFER_SIZE);
164
165 /* test result indicate:if SUCCESS ,led2 lights */
166 if(transfer_status==SUCCESS)
167 {
168 at32_led_on(LED2);
169 }
170 else
171 {
172 at32_led_off(LED2);
173 }
174 while(1)
175 {
176 }
177}
178
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
buffer_compare
error_status buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:58
tx_index
volatile uint32_t tx_index
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:45
spi_config
static void spi_config(void)
spi configuration.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:78
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:36
main
int main(void)
main function.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:152
spi2_rx_buffer
uint8_t spi2_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:44
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:38
rx_index
volatile uint32_t rx_index
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:45
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:111
transfer_status
volatile error_status transfer_status
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:46
spi1_tx_buffer
uint8_t spi1_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/halfduplex_interrupt/src/main.c:40
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
SPI2_IRQn
@ SPI2_IRQn
Definition: at32f403.h:215
SPI1_IRQn
@ SPI1_IRQn
Definition: at32f403.h:214
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
SPI_I2S_TDBE_INT
#define SPI_I2S_TDBE_INT
Definition: at32f403_spi.h:72
SPI_I2S_RDBF_INT
#define SPI_I2S_RDBF_INT
Definition: at32f403_spi.h:71
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_HALF_DUPLEX_RX
@ SPI_TRANSMIT_HALF_DUPLEX_RX
Definition: at32f403_spi.h:160
SPI_TRANSMIT_HALF_DUPLEX_TX
@ SPI_TRANSMIT_HALF_DUPLEX_TX
Definition: at32f403_spi.h:161
SPI_MCLK_DIV_8
@ SPI_MCLK_DIV_8
Definition: at32f403_spi.h:134
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • spi
  • halfduplex_transceiver_switch
  • inc
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • spi
  • halfduplex_transceiver_switch
  • inc
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • spi
  • halfduplex_transceiver_switch
  • inc
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • spi
  • halfduplex_transceiver_switch
  • src
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • spi
  • halfduplex_transceiver_switch
  • src
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
29extern uint8_t spi1_tx_buffer[];
30extern uint8_t spi2_tx_buffer[];
31extern uint8_t spi1_rx_buffer[];
32extern uint8_t spi2_rx_buffer[];
33extern uint32_t tx_index;
34extern uint32_t rx_index;
35
44#define BUFFERSIZE 32
45
51void NMI_Handler(void)
52{
53}
54
60void HardFault_Handler(void)
61{
62 /* go to infinite loop when hard fault exception occurs */
63 while(1)
64 {
65 }
66}
67
73void MemManage_Handler(void)
74{
75 /* go to infinite loop when memory manage exception occurs */
76 while(1)
77 {
78 }
79}
80
86void BusFault_Handler(void)
87{
88 /* go to infinite loop when bus fault exception occurs */
89 while(1)
90 {
91 }
92}
93
99void UsageFault_Handler(void)
100{
101 /* go to infinite loop when usage fault exception occurs */
102 while(1)
103 {
104 }
105}
106
112void SVC_Handler(void)
113{
114}
115
121void DebugMon_Handler(void)
122{
123}
124
130void PendSV_Handler(void)
131{
132}
133
139void SysTick_Handler(void)
140{
141}
142
148 void SPI1_IRQHandler(void)
149{
150 if(SPI1->ctrl2_bit.tdbeie != RESET)
151 {
152 if(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) != RESET)
153 {
154 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index++]);
155 if(tx_index == BUFFERSIZE)
156 {
157 spi_i2s_interrupt_enable(SPI1, SPI_I2S_TDBE_INT, FALSE);
158 }
159 }
160 }
161 if(SPI1->ctrl2_bit.rdbfie != RESET)
162 {
163 if(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) != RESET)
164 {
165 spi_enable(SPI1, FALSE);
166 spi1_rx_buffer[rx_index++] = spi_i2s_data_receive(SPI1);
167 spi_enable(SPI1, TRUE);
168 if(rx_index == BUFFERSIZE)
169 {
170 spi_i2s_interrupt_enable(SPI1, SPI_I2S_RDBF_INT, FALSE);
171 }
172 }
173 }
174}
175
181 void SPI2_IRQHandler(void)
182{
183 if(SPI2->ctrl2_bit.tdbeie != RESET)
184 {
185 if(spi_i2s_flag_get(SPI2, SPI_I2S_TDBE_FLAG) != RESET)
186 {
187 spi_i2s_data_transmit(SPI2, spi2_tx_buffer[tx_index++]);
188 if(tx_index == BUFFERSIZE)
189 {
190 spi_i2s_interrupt_enable(SPI2, SPI_I2S_TDBE_INT, FALSE);
191 }
192 }
193 }
194 if(SPI2->ctrl2_bit.rdbfie != RESET)
195 {
196 if(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) != RESET)
197 {
198 spi2_rx_buffer[rx_index++] = spi_i2s_data_receive(SPI2);
199 }
200 }
201}
202
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
tx_index
uint32_t tx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/main.c:44
rx_index
uint32_t rx_index
Definition: project/at_start_f403/examples/i2s/halfduplex_interrupt/src/at32f403_int.c:31
spi1_tx_buffer
uint8_t spi1_tx_buffer[]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:38
spi2_tx_buffer
uint8_t spi2_tx_buffer[]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:42
spi1_rx_buffer
uint8_t spi1_rx_buffer[]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:46
spi2_rx_buffer
uint8_t spi2_rx_buffer[]
Definition: project/at_start_f403/examples/spi/crc_transfer_polling/src/main.c:46
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:99
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:60
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:73
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:112
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:130
SPI2_IRQHandler
void SPI2_IRQHandler(void)
This function handles the spi2 interrupt request.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:181
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:51
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:86
SPI1_IRQHandler
void SPI1_IRQHandler(void)
This function handles the spi1 interrupt request.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:148
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:139
BUFFERSIZE
#define BUFFERSIZE
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:44
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/at32f403_int.c:121
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
SPI_I2S_TDBE_INT
#define SPI_I2S_TDBE_INT
Definition: at32f403_spi.h:72
SPI_I2S_RDBF_INT
#define SPI_I2S_RDBF_INT
Definition: at32f403_spi.h:71
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • spi
  • halfduplex_transceiver_switch
  • src
project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 32
37
38
39 spi_init_type spi_init_struct;
40uint8_t spi1_tx_buffer[BUFFER_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
41 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
42 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
43 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20};
44uint8_t spi2_tx_buffer[BUFFER_SIZE] = {0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
45 0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F, 0x60,
46 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
47 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70};
48uint8_t spi1_rx_buffer[BUFFER_SIZE], spi2_rx_buffer[BUFFER_SIZE];
49volatile uint32_t tx_index = 0, rx_index = 0;
50volatile error_status transfer_status1 = ERROR, transfer_status2 = ERROR;
51
52static void gpio_config(void);
53static void spi_config(void);
54 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length);
55
62 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
63{
64 while(buffer_length--)
65 {
66 if(*pbuffer1 != *pbuffer2)
67 {
68 return ERROR;
69 }
70
71 pbuffer1++;
72 pbuffer2++;
73 }
74 return SUCCESS;
75}
76
82static void spi_config(void)
83{
84 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
85 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
86 spi_default_para_init(&spi_init_struct);
87 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_TX;
88 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
89 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_256;
90 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_MSB;
91 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
92 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_LOW;
93 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
94 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
95 spi_init(SPI1, &spi_init_struct);
96
97 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_RX;
98 spi_init_struct.master_slave_mode = SPI_MODE_SLAVE;
99 spi_init(SPI2, &spi_init_struct);
100
101 nvic_irq_enable(SPI1_IRQn, 0, 0);
102 nvic_irq_enable(SPI2_IRQn, 0, 0);
103 spi_i2s_interrupt_enable(SPI1, SPI_I2S_TDBE_INT, TRUE);
104 spi_i2s_interrupt_enable(SPI2, SPI_I2S_RDBF_INT, TRUE);
105
106 spi_enable(SPI1, TRUE);
107 spi_enable(SPI2, TRUE);
108}
109
115static void gpio_config(void)
116{
117 gpio_init_type gpio_initstructure;
118 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
119 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
120 gpio_default_para_init(&gpio_initstructure);
121
122 /* spi1 sck pin */
123 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
124 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
125 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
126 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
127 gpio_initstructure.gpio_pins = GPIO_PINS_5;
128 gpio_init(GPIOA, &gpio_initstructure);
129
130 /* spi1 mosi pin */
131 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
132 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
133 gpio_initstructure.gpio_pins = GPIO_PINS_7;
134 gpio_init(GPIOA, &gpio_initstructure);
135
136 /* spi2 sck pin */
137 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
138 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
139 gpio_initstructure.gpio_pins = GPIO_PINS_13;
140 gpio_init(GPIOB, &gpio_initstructure);
141
142 /* spi2 miso pin */
143 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
144 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
145 gpio_initstructure.gpio_pins = GPIO_PINS_14;
146 gpio_init(GPIOB, &gpio_initstructure);
147
148 while(gpio_input_data_bit_read(GPIOB, GPIO_PINS_13)!=RESET);
149}
150
156int main(void)
157{
158 system_clock_config();
159 at32_board_init();
160 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
161 gpio_config();
162 /* config spi1 send spi2 receive */
163 spi_config();
164 while(rx_index < BUFFER_SIZE);
165
166 /* test result:the data check */
167 transfer_status1 = buffer_compare(spi2_rx_buffer, spi1_tx_buffer, BUFFER_SIZE);
168
169 /* config spi2 send spi1 receive */
170 spi_enable(SPI1, FALSE);
171 spi_enable(SPI2, FALSE);
172 rx_index = 0;
173 tx_index = 0;
174 spi_i2s_interrupt_enable(SPI1, SPI_I2S_TDBE_INT, FALSE);
175 spi_i2s_interrupt_enable(SPI2, SPI_I2S_RDBF_INT, FALSE);
176
177 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_RX;
178 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
179 spi_init(SPI1, &spi_init_struct);
180
181 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_TX;
182 spi_init_struct.master_slave_mode = SPI_MODE_SLAVE;
183 spi_init(SPI2, &spi_init_struct);
184
185 spi_i2s_interrupt_enable(SPI1, SPI_I2S_RDBF_INT, TRUE);
186 spi_i2s_interrupt_enable(SPI2, SPI_I2S_TDBE_INT, TRUE);
187 spi_enable(SPI2, TRUE);
188 spi_enable(SPI1, TRUE);
189 while(rx_index < BUFFER_SIZE);
190 while(spi_i2s_flag_get(SPI1, SPI_I2S_BF_FLAG) != RESET);
191 spi_enable(SPI1, FALSE);
192
193 /* test result:the data check */
194 transfer_status2 = buffer_compare(spi1_rx_buffer, spi2_tx_buffer, BUFFER_SIZE);
195
196 /* test result indicate:if passed ,led2 lights */
197 if((transfer_status1 == SUCCESS) && (transfer_status2 == SUCCESS))
198 {
199 at32_led_on(LED2);
200 }
201 else
202 {
203 at32_led_off(LED2);
204 }
205 while(1)
206 {
207 }
208}
209
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
buffer_compare
error_status buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:62
tx_index
volatile uint32_t tx_index
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:49
spi_config
static void spi_config(void)
spi configuration.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:82
transfer_status1
volatile error_status transfer_status1
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:50
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:36
transfer_status2
volatile error_status transfer_status2
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:50
main
int main(void)
main function.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:156
spi2_rx_buffer
uint8_t spi2_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:48
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:39
spi1_rx_buffer
uint8_t spi1_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:48
spi2_tx_buffer
uint8_t spi2_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:44
rx_index
volatile uint32_t rx_index
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:49
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:115
spi1_tx_buffer
uint8_t spi1_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/halfduplex_transceiver_switch/src/main.c:40
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
SPI2_IRQn
@ SPI2_IRQn
Definition: at32f403.h:215
SPI1_IRQn
@ SPI1_IRQn
Definition: at32f403.h:214
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
SPI_I2S_BF_FLAG
#define SPI_I2S_BF_FLAG
Definition: at32f403_spi.h:58
SPI_I2S_TDBE_INT
#define SPI_I2S_TDBE_INT
Definition: at32f403_spi.h:72
SPI_I2S_RDBF_INT
#define SPI_I2S_RDBF_INT
Definition: at32f403_spi.h:71
spi_i2s_interrupt_enable
void spi_i2s_interrupt_enable(spi_type *spi_x, uint32_t spi_i2s_int, confirm_state new_state)
enable or disable the specified spi/i2s interrupts.
Definition: at32f403_spi.c:474
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_HALF_DUPLEX_RX
@ SPI_TRANSMIT_HALF_DUPLEX_RX
Definition: at32f403_spi.h:160
SPI_TRANSMIT_HALF_DUPLEX_TX
@ SPI_TRANSMIT_HALF_DUPLEX_TX
Definition: at32f403_spi.h:161
SPI_MCLK_DIV_256
@ SPI_MCLK_DIV_256
Definition: at32f403_spi.h:139
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • spi
  • only_receive_mode_polling
  • inc
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • spi
  • only_receive_mode_polling
  • inc
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • spi
  • only_receive_mode_polling
  • inc
project/at_start_f403/examples/spi/only_receive_mode_polling/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • spi
  • only_receive_mode_polling
  • src
project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • spi
  • only_receive_mode_polling
  • src
project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • spi
  • only_receive_mode_polling
  • src
project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 32
37
38 spi_init_type spi_init_struct;
39uint8_t spi1_tx_buffer[BUFFER_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
40 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
41 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
42 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20};
43uint8_t spi2_rx_buffer[BUFFER_SIZE];
44uint32_t tx_index = 0, rx_index = 0;
45volatile error_status transfer_status = ERROR;
46
47static void gpio_config(void);
48static void spi_config(void);
49 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length);
50
57 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
58{
59 while(buffer_length--)
60 {
61 if(*pbuffer1 != *pbuffer2)
62 {
63 return ERROR;
64 }
65
66 pbuffer1++;
67 pbuffer2++;
68 }
69 return SUCCESS;
70}
71
77static void spi_config(void)
78{
79 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
80 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
81 spi_default_para_init(&spi_init_struct);
82 spi_init_struct.transmission_mode = SPI_TRANSMIT_FULL_DUPLEX;
83 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
84 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_8;
85 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_LSB;
86 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
87 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_LOW;
88 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
89 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
90 spi_init(SPI1, &spi_init_struct);
91
92 spi_init_struct.transmission_mode = SPI_TRANSMIT_SIMPLEX_RX;
93 spi_init_struct.master_slave_mode = SPI_MODE_SLAVE;
94 spi_init(SPI2, &spi_init_struct);
95
96 spi_enable(SPI1, TRUE);
97 spi_enable(SPI2, TRUE);
98}
99
105static void gpio_config(void)
106{
107 gpio_init_type gpio_initstructure;
108 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
109 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
110 gpio_default_para_init(&gpio_initstructure);
111
112 /* spi1 sck pin */
113 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
114 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
115 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
116 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
117 gpio_initstructure.gpio_pins = GPIO_PINS_5;
118 gpio_init(GPIOA, &gpio_initstructure);
119
120 /* spi1 mosi pin */
121 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
122 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
123 gpio_initstructure.gpio_pins = GPIO_PINS_7;
124 gpio_init(GPIOA, &gpio_initstructure);
125
126 /* spi2 sck pin */
127 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
128 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
129 gpio_initstructure.gpio_pins = GPIO_PINS_13;
130 gpio_init(GPIOB, &gpio_initstructure);
131
132 /* spi2 mosi pin */
133 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
134 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
135 gpio_initstructure.gpio_pins = GPIO_PINS_15;
136 gpio_init(GPIOB, &gpio_initstructure);
137
138 while(gpio_input_data_bit_read(GPIOB, GPIO_PINS_13) != RESET);
139}
140
146int main(void)
147{
148 system_clock_config();
149 at32_board_init();
150 gpio_config();
151 spi_config();
152
153 /* transfer procedure:the "BUFFER_SIZE" data transfer */
154 while(tx_index < BUFFER_SIZE)
155 {
156 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
157 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index++]);
158 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
159 spi2_rx_buffer[rx_index++] = spi_i2s_data_receive(SPI2);
160 }
161
162 /* test result:the data check */
163 transfer_status = buffer_compare(spi2_rx_buffer, spi1_tx_buffer, BUFFER_SIZE);
164
165 /* test result indicate:if SUCCESS ,led2 lights */
166 if(transfer_status == SUCCESS)
167 {
168 at32_led_on(LED2);
169 }
170 else
171 {
172 at32_led_off(LED2);
173 }
174 while(1)
175 {
176 }
177}
178
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
buffer_compare
error_status buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:57
spi_config
static void spi_config(void)
spi configuration.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:77
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:36
main
int main(void)
main function.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:146
spi2_rx_buffer
uint8_t spi2_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:43
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:38
rx_index
uint32_t rx_index
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:44
tx_index
uint32_t tx_index
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:44
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:105
transfer_status
volatile error_status transfer_status
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:45
spi1_tx_buffer
uint8_t spi1_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/only_receive_mode_polling/src/main.c:39
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_LSB
@ SPI_FIRST_BIT_LSB
Definition: at32f403_spi.h:150
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_TRANSMIT_SIMPLEX_RX
@ SPI_TRANSMIT_SIMPLEX_RX
Definition: at32f403_spi.h:159
SPI_MCLK_DIV_8
@ SPI_MCLK_DIV_8
Definition: at32f403_spi.h:134
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • spi
  • use_jtagpin_hardwarecs_dma
  • inc
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • spi
  • use_jtagpin_hardwarecs_dma
  • inc
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • spi
  • use_jtagpin_hardwarecs_dma
  • inc
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • spi
  • use_jtagpin_hardwarecs_dma
  • src
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • spi
  • use_jtagpin_hardwarecs_dma
  • src
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • spi
  • use_jtagpin_hardwarecs_dma
  • src
project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 32
37
38uint8_t spi1_tx_buffer[BUFFER_SIZE] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08,
39 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10,
40 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
41 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20};
42uint8_t spi2_rx_buffer[BUFFER_SIZE];
43__IO uint8_t tx_index = 0;
44volatile error_status transfer_status = ERROR;
45
46static void gpio_config(void);
47static void spi_config(void);
48 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length);
49
56 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
57{
58 while(buffer_length--)
59 {
60 if(*pbuffer1 != *pbuffer2)
61 {
62 return ERROR;
63 }
64
65 pbuffer1++;
66 pbuffer2++;
67 }
68 return SUCCESS;
69}
70
76static void spi_config(void)
77{
78 dma_init_type dma_init_struct;
79 spi_init_type spi_init_struct;
80
81 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
82 dma_reset(DMA1_CHANNEL4);
83 dma_default_para_init(&dma_init_struct);
84 dma_init_struct.buffer_size = BUFFER_SIZE;
85 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
86 dma_init_struct.memory_base_addr = (uint32_t)spi2_rx_buffer;
87 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
88 dma_init_struct.memory_inc_enable = TRUE;
89 dma_init_struct.peripheral_base_addr = (uint32_t)0x4000380C;
90 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
91 dma_init_struct.peripheral_inc_enable = FALSE;
92 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
93 dma_init_struct.loop_mode_enable = FALSE;
94 dma_init(DMA1_CHANNEL4, &dma_init_struct);
95
96 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
97 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
98 spi_default_para_init(&spi_init_struct);
99 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_TX;
100 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
101 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_8;
102 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_MSB;
103 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
104 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_LOW;
105 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
106 spi_init_struct.cs_mode_selection = SPI_CS_HARDWARE_MODE;
107 spi_init(SPI1, &spi_init_struct);
108
109 spi_init_struct.master_slave_mode = SPI_MODE_SLAVE;
110 spi_init_struct.transmission_mode = SPI_TRANSMIT_HALF_DUPLEX_RX;
111 spi_init(SPI2, &spi_init_struct);
112
113 spi_hardware_cs_output_enable(SPI1, TRUE);
114 spi_i2s_dma_receiver_enable(SPI2, TRUE);
115 spi_enable(SPI1, TRUE);
116 spi_enable(SPI2, TRUE);
117}
118
124static void gpio_config(void)
125{
126 gpio_init_type gpio_initstructure;
127 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
128 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
129 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
130 gpio_pin_remap_config(SWJTAG_MUX_010, TRUE);
131 gpio_pin_remap_config(SPI1_MUX_01, TRUE);
132
133 /* master sck pin */
134 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
135 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
136 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
137 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
138 gpio_initstructure.gpio_pins = GPIO_PINS_3;
139 gpio_init(GPIOB, &gpio_initstructure);
140
141 /* master mosi pin */
142 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
143 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
144 gpio_initstructure.gpio_pins = GPIO_PINS_5;
145 gpio_init(GPIOB, &gpio_initstructure);
146
147 /* master cs pin */
148 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
149 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
150 gpio_initstructure.gpio_pins = GPIO_PINS_15;
151 gpio_init(GPIOA, &gpio_initstructure);
152
153 /* slave sck pin */
154 gpio_initstructure.gpio_pull = GPIO_PULL_DOWN;
155 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
156 gpio_initstructure.gpio_pins = GPIO_PINS_13;
157 gpio_init(GPIOB, &gpio_initstructure);
158
159 /* slave miso pin */
160 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
161 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
162 gpio_initstructure.gpio_pins = GPIO_PINS_14;
163 gpio_init(GPIOB, &gpio_initstructure);
164
165 /* slave cs pin */
166 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
167 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
168 gpio_initstructure.gpio_pins = GPIO_PINS_12;
169 gpio_init(GPIOB, &gpio_initstructure);
170}
171
177int main(void)
178{
179 system_clock_config();
180 at32_board_init();
181
182 /* button press:ensure code canbe download normally */
183 while(at32_button_press() == NO_BUTTON);
184
185 gpio_config();
186 spi_config();
187 dma_channel_enable(DMA1_CHANNEL4, TRUE);
188
189 /* transfer procedure:the "BUFFER_SIZE" data transfer */
190 while(tx_index < BUFFER_SIZE)
191 {
192 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
193 spi_i2s_data_transmit(SPI1, spi1_tx_buffer[tx_index++]);
194 }
195 while(!dma_flag_get(DMA1_FDT4_FLAG));
196
197 /* test result:the data check */
198 transfer_status = buffer_compare(spi2_rx_buffer, spi1_tx_buffer, BUFFER_SIZE);
199
200 /* test result indicate:if SUCCESS ,led2 lights */
201 if(transfer_status == SUCCESS)
202 {
203 at32_led_on(LED2);
204 }
205 else
206 {
207 at32_led_off(LED2);
208 }
209 while(1)
210 {
211 }
212}
213
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
buffer_compare
error_status buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:56
spi_config
static void spi_config(void)
spi configuration.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:76
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:36
tx_index
__IO uint8_t tx_index
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:43
main
int main(void)
main function.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:177
spi2_rx_buffer
uint8_t spi2_rx_buffer[32]
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:42
gpio_config
static void gpio_config(void)
gpio configuration.
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:124
transfer_status
volatile error_status transfer_status
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:44
spi1_tx_buffer
uint8_t spi1_tx_buffer[32]
Definition: project/at_start_f403/examples/spi/use_jtagpin_hardwarecs_dma/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED2
@ LED2
Definition: at32f403_board.h:61
NO_BUTTON
@ NO_BUTTON
Definition: at32f403_board.h:93
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA1_FDT4_FLAG
#define DMA1_FDT4_FLAG
Definition: at32f403_dma.h:76
DMA1_CHANNEL4
#define DMA1_CHANNEL4
Definition: at32f403_dma.h:358
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SWJTAG_MUX_010
#define SWJTAG_MUX_010
Definition: at32f403_gpio.h:103
SPI1_MUX_01
#define SPI1_MUX_01
Definition: at32f403_gpio.h:79
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_dma_receiver_enable
void spi_i2s_dma_receiver_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode.
Definition: at32f403_spi.c:509
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_hardware_cs_output_enable
void spi_hardware_cs_output_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the hardware cs output for the spi peripheral.
Definition: at32f403_spi.c:234
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_HARDWARE_MODE
@ SPI_CS_HARDWARE_MODE
Definition: at32f403_spi.h:123
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_LOW
@ SPI_CLOCK_POLARITY_LOW
Definition: at32f403_spi.h:105
SPI_TRANSMIT_HALF_DUPLEX_RX
@ SPI_TRANSMIT_HALF_DUPLEX_RX
Definition: at32f403_spi.h:160
SPI_TRANSMIT_HALF_DUPLEX_TX
@ SPI_TRANSMIT_HALF_DUPLEX_TX
Definition: at32f403_spi.h:161
SPI_MCLK_DIV_8
@ SPI_MCLK_DIV_8
Definition: at32f403_spi.h:134
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI1
#define SPI1
Definition: at32f403_spi.h:446
SPI2
#define SPI2
Definition: at32f403_spi.h:447
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • spi
  • w25q_flash
  • inc
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • spi
  • w25q_flash
  • inc
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • spi
  • w25q_flash
  • inc
project/at_start_f403/examples/spi/w25q_flash/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • spi
  • w25q_flash
  • src
project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • spi
  • w25q_flash
  • src
project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • spi
  • w25q_flash
  • src
project/at_start_f403/examples/spi/w25q_flash/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "spi_flash.h"
28
37#define FLASH_TEST_ADDR 0x1000
38#define BUF_SIZE 0x256
39
40uint8_t tx_buffer[BUF_SIZE];
41uint8_t rx_buffer[BUF_SIZE];
42volatile error_status transfer_status = ERROR;
43
44void tx_data_fill(void);
45 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length);
46
52void tx_data_fill(void)
53{
54 uint32_t data_index = 0;
55 for(data_index = 0; data_index < BUF_SIZE; data_index++)
56 {
57 tx_buffer[data_index] = data_index;
58 }
59}
60
67 error_status buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
68{
69 while(buffer_length--)
70 {
71 if(*pbuffer1 != *pbuffer2)
72 {
73 return ERROR;
74 }
75
76 pbuffer1++;
77 pbuffer2++;
78 }
79 return SUCCESS;
80}
81
87int main(void)
88{
89 __IO uint32_t index = 0;
90 __IO uint32_t flash_id_index = 0;
91 system_clock_config();
92 at32_board_init();
93 tx_data_fill();
94 uart_print_init(115200);
95 spiflash_init();
96 flash_id_index = spiflash_read_id();
97 if((flash_id_index != W25Q128)&&(flash_id_index != W25Q80)&&(flash_id_index != W25Q16)&&(flash_id_index != W25Q32)&&(flash_id_index != W25Q64))
98 {
99 printf("flash id check error!\r\n");
100 for(index = 0; index < 50; index++)
101 {
102 at32_led_toggle(LED2);
103 at32_led_toggle(LED3);
104 delay_ms(200);
105 }
106 return 1;
107 }
108 else
109 {
110 printf("flash id check success! id: %x\r\n", flash_id_index);
111 }
112
113 /* erase sector */
114 spiflash_sector_erase(FLASH_TEST_ADDR / SPIF_SECTOR_SIZE);
115
116 /* write data */
117 spiflash_write(tx_buffer, FLASH_TEST_ADDR, BUF_SIZE);
118
119 /* read data */
120 spiflash_read(rx_buffer, FLASH_TEST_ADDR, BUF_SIZE);
121
122 /* printf read data */
123 printf("Read Data: ");
124 for(index = 0; index < BUF_SIZE; index++)
125 {
126 printf("%x ", rx_buffer[index]);
127 }
128
129 /* test result:the data check */
130 transfer_status = buffer_compare(rx_buffer, tx_buffer, BUF_SIZE);
131
132 /* test result indicate:if SUCCESS ,led2 lights */
133 if(transfer_status == SUCCESS)
134 {
135 printf("\r\nflash data read write success!\r\n");
136 at32_led_on(LED2);
137 }
138 else
139 {
140 printf("\r\nflash data read write ERROR!\r\n");
141 at32_led_off(LED2);
142 }
143
144 while(1)
145 {
146 }
147}
148
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
buffer_compare
error_status buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
buffer compare function.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:67
FLASH_TEST_ADDR
#define FLASH_TEST_ADDR
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:37
BUF_SIZE
#define BUF_SIZE
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:87
rx_buffer
uint8_t rx_buffer[0x256]
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:41
tx_data_fill
void tx_data_fill(void)
transfer data fill.
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:52
tx_buffer
uint8_t tx_buffer[0x256]
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:40
transfer_status
volatile error_status transfer_status
Definition: project/at_start_f403/examples/spi/w25q_flash/src/main.c:42
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
spiflash_init
void spiflash_init(void)
spi configuration.
Definition: spi_flash.c:42
spiflash_write
void spiflash_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data to flash
Definition: spi_flash.c:97
spiflash_sector_erase
void spiflash_sector_erase(uint32_t erase_addr)
erase a sector data
Definition: spi_flash.c:201
spiflash_read
void spiflash_read(uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
read data from flash
Definition: spi_flash.c:185
spiflash_read_id
uint16_t spiflash_read_id(void)
read device id
Definition: spi_flash.c:466
W25Q128
#define W25Q128
Definition: spi_flash.h:69
W25Q16
#define W25Q16
Definition: spi_flash.h:65
W25Q32
#define W25Q32
Definition: spi_flash.h:66
W25Q80
#define W25Q80
Definition: spi_flash.h:64
W25Q64
#define W25Q64
Definition: spi_flash.h:67
SPIF_SECTOR_SIZE
#define SPIF_SECTOR_SIZE
Definition: spi_flash.h:80
spi_flash.h
header file of spi_flash
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • cascade_synchro
  • inc
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • cascade_synchro
  • inc
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • cascade_synchro
  • inc
project/at_start_f403/examples/tmr/cascade_synchro/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • cascade_synchro
  • src
project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • cascade_synchro
  • src
project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • cascade_synchro
  • src
project/at_start_f403/examples/tmr/cascade_synchro/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 tmr_output_config_type tmr_output_struct;
38
44int main(void)
45{
46 system_clock_config();
47
48 at32_board_init();
49
50 /* turn led2/led3/led4 on */
51 at32_led_on(LED2);
52 at32_led_on(LED3);
53 at32_led_on(LED4);
54
55 /* enable tmr2/tmr3/tmr4/gpioa/gpiob clock */
56 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
57 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
58 crm_periph_clock_enable(CRM_TMR4_PERIPH_CLOCK, TRUE);
59 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
60 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
61
62 /* timer1 output pin Configuration */
63 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_0;
64 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
65 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
66 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
67 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
68 gpio_init(GPIOA, &gpio_init_struct);
69
70 gpio_init_struct.gpio_pins = GPIO_PINS_6;
71 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
72 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
73 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
74 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
75 gpio_init(GPIOB, &gpio_init_struct);
76
77
78 /* timers synchronisation in cascade mode
79 1/tmr2 is configured as primary timer:
80 - pwm mode is used
81 - the tmr2 update event is used as trigger output
82
83 2/tmr3 is sub for tmr2 and primary for tmr4,
84 - pwm mode is used
85 - the itr1(tmr2) is used as input trigger
86 - gated mode is used, so start and stop of sub counter
87 are controlled by the master trigger output signal(tmr2 update event).
88 - the tmr3 update event is used as trigger output.
89
90 3/tmr4 is slave for tmr3,
91 - pwm mode is used
92 - the itr2(tmr3) is used as input trigger
93 - gated mode is used, so start and stop of sub counter are controlled by the
94 master trigger output signal(tmr3 overflow event).
95
96 the timxclk is fixed to 192 mhz, the tmr2 counter clock is 192 mhz.
97
98 the primary timer tmr2 is running at tmr2 frequency :
99 tim2 frequency = (tmr2 counter clock)/ (tmr2 period + 1) = 1 mhz
100 and the duty cycle = tmr2_ccr1/(tmr2_arr + 1) = 25%.
101
102 the tmr3 is running at:
103 (tmr2 frequency)/ (tmr3 period + 1) = 100 khz and a duty cycle equal to
104 tmr3_ccr1/(tmr3_arr + 1) = 25%
105
106 the tmr4 is running at:
107 (tmr3 frequency)/ (tmr4 period + 1) = 100 khz and a duty cycle equal to
108 tmr4_ccr1/(tmr4_arr + 1) = 25%
109
110 the timxclk is fixed to 192 mhz, the tmr2 counter clock is 192 mhz.
111 so tmr2 frequency = 1mhz,
112 tmr3 is running at 41.67 khz,
113 and tmr4 is running at 1.74 khz */
114
115 tmr_base_init(TMR2, 191, 0);
116 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
117
118 tmr_base_init(TMR3, 23, 0);
119 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
120
121 tmr_base_init(TMR4, 23, 0);
122 tmr_cnt_dir_set(TMR4, TMR_COUNT_UP);
123
124 /* channelx Configuration in output mode */
125 tmr_output_default_para_init(&tmr_output_struct);
126 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
127 tmr_output_struct.oc_output_state = TRUE;
128 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
129 tmr_output_struct.oc_idle_state = TRUE;
130 tmr_output_struct.occ_output_state = FALSE;
131 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_HIGH;
132 tmr_output_struct.occ_idle_state = FALSE;
133
134 /* timer2 channel 1 */
135 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
136 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, 48);
137
138 /* timer2 select enable signal to sub timer */
139 tmr_primary_mode_select(TMR2, TMR_PRIMARY_SEL_OVERFLOW);
140 tmr_sub_sync_mode_set(TMR2, TRUE);
141
142 /* timer3 channel 1 */
143 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
144 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_1, 6);
145
146 /* sub mode selection: tmr3 */
147 tmr_sub_mode_select(TMR3, TMR_SUB_HANG_MODE);
148 tmr_trigger_input_select(TMR3, TMR_SUB_INPUT_SEL_IS1);
149
150 /* timer3 select enable signal to sub timer */
151 tmr_primary_mode_select(TMR3, TMR_PRIMARY_SEL_OVERFLOW);
152 tmr_sub_sync_mode_set(TMR3, TRUE);
153
154 /* timer4 channel 1 */
155 tmr_output_channel_config(TMR4, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
156 tmr_channel_value_set(TMR4, TMR_SELECT_CHANNEL_1, 6);
157
158 /* sub mode selection: tmr4 */
159 tmr_sub_mode_select(TMR4, TMR_SUB_HANG_MODE);
160 tmr_trigger_input_select(TMR4, TMR_SUB_INPUT_SEL_IS2);
161
162 /* enable tmr2/tmr3/tmr4 */
163 tmr_counter_enable(TMR2, TRUE);
164 tmr_counter_enable(TMR3, TRUE);
165 tmr_counter_enable(TMR4, TRUE);
166
167 while(1)
168 {
169 }
170}
171
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/main.c:36
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/cascade_synchro/src/main.c:44
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_TMR4_PERIPH_CLOCK
@ CRM_TMR4_PERIPH_CLOCK
Definition: at32f403_crm.h:131
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_sub_sync_mode_set
void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode
Definition: at32f403_tmr.c:1278
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR_SUB_INPUT_SEL_IS2
@ TMR_SUB_INPUT_SEL_IS2
Definition: at32f403_tmr.h:133
TMR_SUB_INPUT_SEL_IS1
@ TMR_SUB_INPUT_SEL_IS1
Definition: at32f403_tmr.h:132
TMR_SUB_HANG_MODE
@ TMR_SUB_HANG_MODE
Definition: at32f403_tmr.h:151
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
TMR4
#define TMR4
Definition: at32f403_tmr.h:833
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • complementary_signals
  • inc
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • complementary_signals
  • inc
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • complementary_signals
  • inc
project/at_start_f403/examples/tmr/complementary_signals/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • complementary_signals
  • src
project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • complementary_signals
  • src
project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • complementary_signals
  • src
project/at_start_f403/examples/tmr/complementary_signals/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 tmr_output_config_type tmr_output_struct;
38 crm_clocks_freq_type crm_clocks_freq_struct = {0};
39 tmr_brkdt_config_type tmr_brkdt_config_struct = {0};
40
41uint16_t timer_period = 0;
42uint16_t channel1_pulse = 0, channel2_pulse = 0, channel3_pulse = 0;
43
49int main(void)
50{
51 system_clock_config();
52
53 at32_board_init();
54
55 /* get system clock */
56 crm_clocks_freq_get(&crm_clocks_freq_struct);
57
58 /* turn led2/led3/led4 on */
59 at32_led_on(LED2);
60 at32_led_on(LED3);
61 at32_led_on(LED4);
62
63 /* enable tmr1/gpioa/gpiob clock */
64 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
65 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
66 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
67
68 /* timer1 output pin configuration */
69 gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10;
70 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
71 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
72 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
73 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
74 gpio_init(GPIOA, &gpio_init_struct);
75
76 gpio_init_struct.gpio_pins = GPIO_PINS_13 | GPIO_PINS_14 | GPIO_PINS_15;
77 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
78 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
79 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
80 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
81 gpio_init(GPIOB, &gpio_init_struct);
82
83 gpio_init_struct.gpio_pins = GPIO_PINS_12;
84 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
85 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
86 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
87 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
88 gpio_init(GPIOB, &gpio_init_struct);
89
90 /* tmr1 configuration to:
91
92 1/ generate 3 complementary pwm signals with 3 different duty cycles:
93 tmr1clk is fixed to system_core_clock, the tmr1 prescaler is equal to 0 so the
94 tmr1 counter clock used is system_core_clock.
95 * system_core_clock is set to 192 mhz .
96
97 the objective is to generate pwm signal at 17.57 khz:
98 - tmr1_period = (system_core_clock / 17570) - 1
99
100 the three duty cycles are computed as the following description:
101
102 the channel 1 duty cycle is set to 50% so channel 1n is set to 50%.
103 the channel 2 duty cycle is set to 25% so channel 2n is set to 75%.
104 the channel 3 duty cycle is set to 12.5% so channel 3n is set to 87.5%.
105 the timer pulse is calculated as follows:
106 - channelxpulse = duty_cycle * (tmr1_period - 1) / 100
107
108 2/ insert a dead time equal to 11/system_core_clock ns
109 3/ configure the brake feature, active at high level, and using the automatic
110 output enable feature
111 4/ use the locking parameters level1. */
112
113 /* compute the value to be set in arr regiter to generate signal frequency at 17.57 khz */
114 timer_period = (crm_clocks_freq_struct.sclk_freq / 17570 ) - 1;
115
116 /* compute ccr1 value to generate a duty cycle at 50% for channel 1 and 1n */
117 channel1_pulse = (uint16_t) (((uint32_t) 5 * (timer_period - 1)) / 10);
118
119 /* compute ccr2 value to generate a duty cycle at 25% for channel 2 and 2n */
120 channel2_pulse = (uint16_t) (((uint32_t) 25 * (timer_period - 1)) / 100);
121
122 /* compute ccr3 value to generate a duty cycle at 12.5% for channel 3 and 3n */
123 channel3_pulse = (uint16_t) (((uint32_t) 125 * (timer_period - 1)) / 1000);
124
125 tmr_base_init(TMR1, timer_period, 0);
126 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
127
128 /* channel 1, 2, 3 and 4 Configuration in output mode */
129 tmr_output_default_para_init(&tmr_output_struct);
130 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
131 tmr_output_struct.oc_output_state = TRUE;
132 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
133 tmr_output_struct.oc_idle_state = TRUE;
134 tmr_output_struct.occ_output_state = TRUE;
135 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_LOW;
136 tmr_output_struct.occ_idle_state = FALSE;
137
138 /* channel 1 */
139 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
140 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, channel1_pulse);
141
142 /* channel 2 */
143 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_2, &tmr_output_struct);
144 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_2, channel2_pulse);
145
146 /* channel 3 */
147 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_3, &tmr_output_struct);
148 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, channel3_pulse);
149
150 /* automatic output enable, stop, dead time and lock configuration */
151 tmr_brkdt_default_para_init(&tmr_brkdt_config_struct);
152 tmr_brkdt_config_struct.brk_enable = TRUE;
153 tmr_brkdt_config_struct.auto_output_enable = TRUE;
154 tmr_brkdt_config_struct.deadtime = 11;
155 tmr_brkdt_config_struct.fcsodis_state = TRUE;
156 tmr_brkdt_config_struct.fcsoen_state = TRUE;
157 tmr_brkdt_config_struct.brk_polarity = TMR_BRK_INPUT_ACTIVE_HIGH;
158 tmr_brkdt_config_struct.wp_level = TMR_WP_LEVEL_3;
159 tmr_brkdt_config(TMR1, &tmr_brkdt_config_struct);
160
161 /* output enable */
162 tmr_output_enable(TMR1, TRUE);
163
164 /* enable tmr1 */
165 tmr_counter_enable(TMR1, TRUE);
166
167 while(1)
168 {
169 }
170}
171
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:36
channel1_pulse
uint16_t channel1_pulse
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:42
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:37
timer_period
uint16_t timer_period
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:41
channel2_pulse
uint16_t channel2_pulse
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:42
channel3_pulse
uint16_t channel3_pulse
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:42
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:49
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:38
tmr_brkdt_config_struct
tmr_brkdt_config_type tmr_brkdt_config_struct
Definition: project/at_start_f403/examples/tmr/complementary_signals/src/main.c:39
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_brkdt_default_para_init
void tmr_brkdt_default_para_init(tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para
Definition: at32f403_tmr.c:176
tmr_brkdt_config
void tmr_brkdt_config(tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time
Definition: at32f403_tmr.c:1771
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_WP_LEVEL_3
@ TMR_WP_LEVEL_3
Definition: at32f403_tmr.h:387
TMR_BRK_INPUT_ACTIVE_HIGH
@ TMR_BRK_INPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:378
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_brkdt_config_type
tmr brkdt config type
Definition: at32f403_tmr.h:421
tmr_brkdt_config_type::brk_enable
confirm_state brk_enable
Definition: at32f403_tmr.h:428
tmr_brkdt_config_type::deadtime
uint8_t deadtime
Definition: at32f403_tmr.h:422
tmr_brkdt_config_type::auto_output_enable
confirm_state auto_output_enable
Definition: at32f403_tmr.h:425
tmr_brkdt_config_type::wp_level
tmr_wp_level_type wp_level
Definition: at32f403_tmr.h:424
tmr_brkdt_config_type::fcsoen_state
confirm_state fcsoen_state
Definition: at32f403_tmr.h:426
tmr_brkdt_config_type::fcsodis_state
confirm_state fcsodis_state
Definition: at32f403_tmr.h:427
tmr_brkdt_config_type::brk_polarity
tmr_brk_polarity_type brk_polarity
Definition: at32f403_tmr.h:423
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • dma
  • inc
project/at_start_f403/examples/tmr/dma/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • dma
  • inc
project/at_start_f403/examples/tmr/dma/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • dma
  • inc
project/at_start_f403/examples/tmr/dma/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • dma
  • src
project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • dma
  • src
project/at_start_f403/examples/tmr/dma/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/dma/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • dma
  • src
project/at_start_f403/examples/tmr/dma/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 tmr_output_config_type tmr_output_struct;
38 dma_init_type dma_init_struct = {0};
39 crm_clocks_freq_type crm_clocks_freq_struct = {0};
40
41uint16_t timer_period = 0;
42uint16_t src_buffer[3] = {0, 0, 0};
43
49int main(void)
50{
51 system_clock_config();
52
53 at32_board_init();
54
55 /* get system clock */
56 crm_clocks_freq_get(&crm_clocks_freq_struct);
57
58 /* turn led2/led3/led4 on */
59 at32_led_on(LED2);
60 at32_led_on(LED3);
61 at32_led_on(LED4);
62
63 /* enable tmr1/gpioa/gpiob/dma clock */
64 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
65 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
66 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
67 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
68
69 /* timer1 output pin Configuration */
70 gpio_init_struct.gpio_pins = GPIO_PINS_10;
71 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
72 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
73 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
74 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
75 gpio_init(GPIOA, &gpio_init_struct);
76
77 gpio_init_struct.gpio_pins = GPIO_PINS_15;
78 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
79 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
80 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
81 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
82 gpio_init(GPIOB, &gpio_init_struct);
83
84 /* tmr1 dma transfer example
85 tmr1clk = system_core_clock, prescaler = 0, tmr1 counter clock = system_core_clock
86 system_core_clock is set to 240 mhz.
87
88 the objective is to configure tmr1 channel 3 to generate complementary pwm
89 signal with a frequency equal to 17.57 khz:
90 - tmr1_period = (system_core_clock / 17570) - 1
91 and a variable duty cycle that is changed by the dma after a specific number of
92 update dma request.
93
94 the number of this repetitive requests is defined by the tmr1 repetition counter,
95 each 3 update requests, the tmr1 channel 3 duty cycle changes to the next new
96 value defined by the src_buffer. */
97 /* compute the value to be set in arr regiter to generate signal frequency at 17.57 khz */
98 timer_period = (crm_clocks_freq_struct.sclk_freq / 17570 ) - 1;
99 /* compute c1dt value to generate a duty cycle at 50% */
100 src_buffer[0] = (uint16_t) (((uint32_t) 5 * (timer_period - 1)) / 10);
101 /* compute c1dt value to generate a duty cycle at 37.5% */
102 src_buffer[1] = (uint16_t) (((uint32_t) 375 * (timer_period - 1)) / 1000);
103 /* compute c1dt value to generate a duty cycle at 25% */
104 src_buffer[2] = (uint16_t) (((uint32_t) 25 * (timer_period - 1)) / 100);
105
106 tmr_base_init(TMR1, timer_period, 0);
107 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
108
109 /* channel 3 configuration in output mode */
110 tmr_output_default_para_init(&tmr_output_struct);
111 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
112 tmr_output_struct.oc_output_state = TRUE;
113 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
114 tmr_output_struct.oc_idle_state = TRUE;
115 tmr_output_struct.occ_output_state = TRUE;
116 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_LOW;
117 tmr_output_struct.occ_idle_state = FALSE;
118 /* channel 3 */
119 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_3, &tmr_output_struct);
120 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, src_buffer[0]);
121
122 /* enable tmr1 overflow dma request */
123 tmr_dma_request_enable(TMR1, TMR_OVERFLOW_DMA_REQUEST, TRUE);
124
125 /* dma config for tmr1 overflow dma request */
126 /* dma1 channel5 configuration */
127 dma_reset(DMA1_CHANNEL5);
128 dma_init_struct.buffer_size = 3;
129 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
130 dma_init_struct.memory_base_addr = (uint32_t)src_buffer;
131 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
132 dma_init_struct.memory_inc_enable = TRUE;
133 dma_init_struct.peripheral_base_addr = (uint32_t)0x40012C3C;
134 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
135 dma_init_struct.peripheral_inc_enable = FALSE;
136 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
137 dma_init_struct.loop_mode_enable = TRUE;
138 dma_init(DMA1_CHANNEL5, &dma_init_struct);
139
140 dma_channel_enable(DMA1_CHANNEL5, TRUE);
141
142 /* output enable */
143 tmr_output_enable(TMR1, TRUE);
144 /* enable tmr1 */
145 tmr_counter_enable(TMR1, TRUE);
146
147 while(1)
148 {
149 }
150}
151
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/dma/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/tmr/dma/src/main.c:38
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/dma/src/main.c:37
src_buffer
uint16_t src_buffer[3]
Definition: project/at_start_f403/examples/tmr/dma/src/main.c:42
timer_period
uint16_t timer_period
Definition: project/at_start_f403/examples/tmr/dma/src/main.c:41
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/dma/src/main.c:49
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/dma/src/main.c:39
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA1_CHANNEL5
#define DMA1_CHANNEL5
Definition: at32f403_dma.h:359
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_dma_request_enable
void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request
Definition: at32f403_tmr.c:1301
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_OVERFLOW_DMA_REQUEST
@ TMR_OVERFLOW_DMA_REQUEST
Definition: at32f403_tmr.h:267
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • dma_burst
  • inc
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • dma_burst
  • inc
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • dma_burst
  • inc
project/at_start_f403/examples/tmr/dma_burst/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • dma_burst
  • src
project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • dma_burst
  • src
project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • dma_burst
  • src
project/at_start_f403/examples/tmr/dma_burst/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 tmr_output_config_type tmr_output_struct;
38 dma_init_type dma_init_struct = {0};
39 crm_clocks_freq_type crm_clocks_freq_struct = {0};
40
41uint16_t timer_period = 0;
42uint16_t src_buffer[3] = {0x0FFF, 0x0000, 0x0555};
43
49int main(void)
50{
51 system_clock_config();
52
53 at32_board_init();
54
55 /* get system clock */
56 crm_clocks_freq_get(&crm_clocks_freq_struct);
57
58 /* turn led2/led3/led4 on */
59 at32_led_on(LED2);
60 at32_led_on(LED3);
61 at32_led_on(LED4);
62
63 /* enable tmr1/gpioa/gpiob/dma clock */
64 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
65 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
66 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
67 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
68
69 /* timer1 output pin Configuration */
70 gpio_init_struct.gpio_pins = GPIO_PINS_8;
71 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
72 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
73 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
74 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
75 gpio_init(GPIOA, &gpio_init_struct);
76
77 /* tmr1 configuration: generate 1 pwm signal using the dma burst mode:
78 the tmr1clk frequency is set to system_core_clock (hz), to get tmr1 counter
79 clock at 24 mhz the prescaler is computed as following:
80 - prescaler = (tim1clk / tmr1 counter clock) - 1
81 system_core_clock is set to 192 mhz .
82 the tmr1 period is 5.86 khz: tmr1 frequency = tmr1 counter clock/(arr + 1)
83 = 24 mhz / 4096 = 5.86khz khz
84 tmr1 channel1 duty cycle = (tim1_ccr1/ tmr1_arr)* 100 = 33.33% */
85
86 tmr_base_init(TMR1, 0xFFFF, (crm_clocks_freq_struct.sclk_freq/24000000)-1);
87 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
88
89 /* channel 3 configuration in output mode */
90 tmr_output_default_para_init(&tmr_output_struct);
91 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
92 tmr_output_struct.oc_output_state = TRUE;
93 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
94 tmr_output_struct.oc_idle_state = TRUE;
95 tmr_output_struct.occ_output_state = FALSE;
96 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_LOW;
97 tmr_output_struct.occ_idle_state = FALSE;
98 /* channel 3 */
99 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
100 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 0xFFF);
101
102 /* enable tmr1 overflow dma request */
103 tmr_dma_request_enable(TMR1, TMR_OVERFLOW_DMA_REQUEST, TRUE);
104 tmr_dma_control_config(TMR1, TMR_DMA_TRANSFER_3BYTES, TMR_PR_ADDRESS);
105
106 /* dma config for tmr1 overflow dma request */
107 /* dma1 channel5 configuration */
108 dma_reset(DMA1_CHANNEL5);
109 dma_init_struct.buffer_size = 3;
110 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
111 dma_init_struct.memory_base_addr = (uint32_t)src_buffer;
112 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
113 dma_init_struct.memory_inc_enable = TRUE;
114 dma_init_struct.peripheral_base_addr = (uint32_t)0x40012C4C;
115 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
116 dma_init_struct.peripheral_inc_enable = FALSE;
117 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
118 dma_init_struct.loop_mode_enable = TRUE;
119 dma_init(DMA1_CHANNEL5, &dma_init_struct);
120
121 dma_channel_enable(DMA1_CHANNEL5, TRUE);
122
123 /* output enable */
124 tmr_output_enable(TMR1, TRUE);
125 /* enable tmr1 */
126 tmr_counter_enable(TMR1, TRUE);
127
128 while(1)
129 {
130 }
131}
132
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/dma_burst/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/tmr/dma_burst/src/main.c:38
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/dma_burst/src/main.c:37
src_buffer
uint16_t src_buffer[3]
Definition: project/at_start_f403/examples/tmr/dma_burst/src/main.c:42
timer_period
uint16_t timer_period
Definition: project/at_start_f403/examples/tmr/dma_burst/src/main.c:41
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/dma_burst/src/main.c:49
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/dma_burst/src/main.c:39
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA1_CHANNEL5
#define DMA1_CHANNEL5
Definition: at32f403_dma.h:359
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_dma_control_config
void tmr_dma_control_config(tmr_type *tmr_x, tmr_dma_transfer_length_type dma_length, tmr_dma_address_type dma_base_address)
config tmr dma control
Definition: at32f403_tmr.c:1755
tmr_dma_request_enable
void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request
Definition: at32f403_tmr.c:1301
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_OVERFLOW_DMA_REQUEST
@ TMR_OVERFLOW_DMA_REQUEST
Definition: at32f403_tmr.h:267
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_PR_ADDRESS
@ TMR_PR_ADDRESS
Definition: at32f403_tmr.h:362
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR_DMA_TRANSFER_3BYTES
@ TMR_DMA_TRANSFER_3BYTES
Definition: at32f403_tmr.h:328
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • encoder_tmr2
  • inc
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • encoder_tmr2
  • inc
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • encoder_tmr2
  • inc
project/at_start_f403/examples/tmr/encoder_tmr2/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • encoder_tmr2
  • src
project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • encoder_tmr2
  • src
project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • encoder_tmr2
  • src
project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38
39void delay(uint32_t time);
40uint32_t counter;
41
47int main(void)
48{
49 system_clock_config();
50
51 at32_board_init();
52
53 /* get system clock */
54 crm_clocks_freq_get(&crm_clocks_freq_struct);
55
56 /* turn led2/led3/led4 on */
57 at32_led_on(LED2);
58 at32_led_on(LED3);
59 at32_led_on(LED4);
60
61 /* enable tmr2/gpioa clock */
62 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
63 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
64
65 /* timer1 output pin Configuration */
66 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
67 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
68 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
69 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
70 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
71 gpio_init(GPIOA, &gpio_init_struct);
72
73 gpio_init_struct.gpio_pins = GPIO_PINS_2 | GPIO_PINS_3;
74 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
75 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
76 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
77 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
78 gpio_init(GPIOA, &gpio_init_struct);
79
80 /* tmr2 encoder mode configuration
81 tmr2 ti1pf1 ,ti2fp2 as encoder input pin, tmr2 counter
82 changed each signal edge. */
83
84 /* enable tmr2 32bit function */
85 tmr_32_bit_function_enable(TMR2, TRUE);
86
87 tmr_base_init(TMR2, 0xFFFFFFFF, 0);
88 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
89
90 /* config encoder mode */
91 tmr_encoder_mode_config(TMR2, TMR_ENCODER_MODE_C, TMR_INPUT_RISING_EDGE, TMR_INPUT_RISING_EDGE);
92
93 /* enable tmr2 */
94 tmr_counter_enable(TMR2, TRUE);
95
96 while(1)
97 {
98 /* generate encoder signal */
99 gpio_bits_set(GPIOA, GPIO_PINS_2);
100 delay(150);
101 gpio_bits_set(GPIOA, GPIO_PINS_3);
102 delay(150);
103 gpio_bits_reset(GPIOA, GPIO_PINS_2);
104 delay(150);
105 gpio_bits_reset(GPIOA, GPIO_PINS_3);
106 delay(150);
107
108 /* get current counter value */
109 counter = tmr_counter_value_get(TMR2);
110 }
111}
112
118void delay(uint32_t time)
119{
120 uint32_t i;
121
122 for(i = 0; i < time; i++);
123}
124
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:36
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
counter
uint32_t counter
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:40
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:47
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:37
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_counter_value_get
uint32_t tmr_counter_value_get(tmr_type *tmr_x)
get tmr counter value
Definition: at32f403_tmr.c:288
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_32_bit_function_enable
void tmr_32_bit_function_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode)
Definition: at32f403_tmr.c:772
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_encoder_mode_config
void tmr_encoder_mode_config(tmr_type *tmr_x, tmr_encoder_mode_type encoder_mode, tmr_input_polarity_type ic1_polarity, tmr_input_polarity_type ic2_polarity)
config tmr encoder mode
Definition: at32f403_tmr.c:1653
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_ENCODER_MODE_C
@ TMR_ENCODER_MODE_C
Definition: at32f403_tmr.h:163
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • external_clock
  • inc
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • external_clock
  • inc
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • external_clock
  • inc
project/at_start_f403/examples/tmr/external_clock/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • external_clock
  • src
project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • external_clock
  • src
project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/external_clock/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • external_clock
  • src
project/at_start_f403/examples/tmr/external_clock/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38 tmr_output_config_type tmr_output_struct;
39 tmr_input_config_type tmr_input_config_struct;
40
46int main(void)
47{
48 system_clock_config();
49
50 at32_board_init();
51
52 /* get system clock */
53 crm_clocks_freq_get(&crm_clocks_freq_struct);
54
55 /* turn led2/led3/led4 on */
56 at32_led_on(LED2);
57 at32_led_on(LED3);
58 at32_led_on(LED4);
59
60 /* enable tmr2/tmr3/gpioa/gpiob clock */
61 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
63 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
65
66 /* timer2 and timer3 output pin Configuration */
67 gpio_init_struct.gpio_pins = GPIO_PINS_0;
68 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
69 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
70 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
71 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
72 gpio_init(GPIOA, &gpio_init_struct);
73 gpio_init(GPIOB, &gpio_init_struct);
74
75 gpio_init_struct.gpio_pins = GPIO_PINS_7;
76 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
77 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
78 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
79 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
80 gpio_init(GPIOA, &gpio_init_struct);
81
82 /* use tmr2 generate clock to drive tmr3
83 tmr2 pwm frequency = 240000000(systemclock)/240(period+1)/1000(div+1) = 1 khz
84 tmr3 pwm frequency = 1000(tmr2 pwm frequency)/240(period+1)/1(div+1) = 4.16 hz */
85
86 /* tmr2 and tmr3 counter mode configuration */
87 tmr_base_init(TMR2, 191, 999);
88 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
89
90 tmr_base_init(TMR3, 239, 0);
91 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
92
93 /* tmr2 and tmr3 output mode configuration */
94 tmr_output_default_para_init(&tmr_output_struct);
95 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
96 tmr_output_struct.oc_output_state = TRUE;
97 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
98 tmr_output_struct.oc_idle_state = TRUE;
99 tmr_output_struct.occ_output_state = FALSE;
100 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_HIGH;
101 tmr_output_struct.occ_idle_state = FALSE;
102 /* tmr2 channel 1 */
103 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
104 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, 95);
105 /* tmr3 channel 3 */
106 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_3, &tmr_output_struct);
107 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_3, 95);
108
109 /* configure tmr3 channel2 to get clock signal */
110 tmr_input_config_struct.input_channel_select = TMR_SELECT_CHANNEL_2;
111 tmr_input_config_struct.input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
112 tmr_input_config_struct.input_polarity_select = TMR_INPUT_RISING_EDGE;
113 tmr_input_channel_init(TMR3, &tmr_input_config_struct, TMR_CHANNEL_INPUT_DIV_1);
114
115 /* select the tmr3 input trigger: C2IF2 */
116 tmr_trigger_input_select(TMR3, TMR_SUB_INPUT_SEL_C2DF2);
117
118 /* select the slave mode: external mode a */
119 tmr_sub_mode_select(TMR3, TMR_SUB_EXTERNAL_CLOCK_MODE_A);
120
121 /* enable tmr2 */
122 tmr_counter_enable(TMR2, TRUE);
123
124 /* enable tmr3 */
125 tmr_counter_enable(TMR3, TRUE);
126
127 while(1)
128 {
129 }
130}
131
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/external_clock/src/main.c:36
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/external_clock/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/external_clock/src/main.c:46
tmr_input_config_struct
tmr_input_config_type tmr_input_config_struct
Definition: project/at_start_f403/examples/tmr/external_clock/src/main.c:39
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/external_clock/src/main.c:37
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_SUB_INPUT_SEL_C2DF2
@ TMR_SUB_INPUT_SEL_C2DF2
Definition: at32f403_tmr.h:137
TMR_SUB_EXTERNAL_CLOCK_MODE_A
@ TMR_SUB_EXTERNAL_CLOCK_MODE_A
Definition: at32f403_tmr.h:153
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • hall_xor_tmr2
  • inc
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • hall_xor_tmr2
  • inc
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • hall_xor_tmr2
  • inc
project/at_start_f403/examples/tmr/hall_xor_tmr2/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • hall_xor_tmr2
  • src
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • hall_xor_tmr2
  • src
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • hall_xor_tmr2
  • src
project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38 tmr_output_config_type tmr_output_struct;
39 tmr_input_config_type tmr_input_config_struct;
40
46int main(void)
47{
48 system_clock_config();
49
50 at32_board_init();
51
52 /* get system clock */
53 crm_clocks_freq_get(&crm_clocks_freq_struct);
54
55 /* turn led2/led3/led4 on */
56 at32_led_on(LED2);
57 at32_led_on(LED3);
58 at32_led_on(LED4);
59
60 /* enable tmr2/tmr3/gpioa/gpiob clock */
61 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
63
64 /* tmr2 channel1 ,channel2 and channel3 configuration */
65 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_2;
66 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
67 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
68 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
69 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
70 gpio_init(GPIOA, &gpio_init_struct);
71
72 /* hall signal (pa3 ,pa6 ,pa7) and trigger flag signal(pa8) configuration */
73 gpio_init_struct.gpio_pins = GPIO_PINS_3 | GPIO_PINS_6 | GPIO_PINS_7 | GPIO_PINS_8;
74 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
75 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
76 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
77 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
78 gpio_init(GPIOA, &gpio_init_struct);
79
80 /* tmr2 xor mode configuration
81 tmr2 channel1 ,channel2 and channel3 as hall signal input channel, trigger
82 generated each signal edge. */
83
84 /* tmr2 and tmr3 counter mode configuration */
85 tmr_32_bit_function_enable(TMR2, TRUE);
86
87 tmr_base_init(TMR2, 0xFFFFFFFF, 0);
88 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
89
90 /* config ti1 trc as input source */
91 tmr_input_config_struct.input_channel_select = TMR_SELECT_CHANNEL_1;
92 tmr_input_config_struct.input_mapped_select = TMR_CC_CHANNEL_MAPPED_STI;
93 tmr_input_config_struct.input_polarity_select = TMR_INPUT_RISING_EDGE;
94 tmr_input_channel_init(TMR2, &tmr_input_config_struct, TMR_CHANNEL_INPUT_DIV_1);
95
96 /* xor funtion enable */
97 tmr_channel1_input_select(TMR2, TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR);
98
99 /* select the tmr2 input trigger: C1INC */
100 tmr_trigger_input_select(TMR2, TMR_SUB_INPUT_SEL_C1INC);
101
102 /* select the slave mode: reset mode */
103 tmr_sub_mode_select(TMR2, TMR_SUB_RESET_MODE);
104
105 tmr_interrupt_enable(TMR2, TMR_TRIGGER_INT, TRUE);
106
107 /* tmr2 trigger interrupt nvic init */
108 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
109 nvic_irq_enable(TMR2_GLOBAL_IRQn, 0, 0);
110
111 /* enable tmr2 */
112 tmr_counter_enable(TMR2, TRUE);
113
114 while(1)
115 {
116 /* generate hall signal */
117 gpio_bits_set(GPIOA, GPIO_PINS_3);
118 delay_us(10);
119 gpio_bits_set(GPIOA, GPIO_PINS_6);
120 delay_us(10);
121 gpio_bits_set(GPIOA, GPIO_PINS_7);
122 delay_us(10);
123 gpio_bits_reset(GPIOA, GPIO_PINS_3);
124 delay_us(10);
125 gpio_bits_reset(GPIOA, GPIO_PINS_6);
126 delay_us(10);
127 gpio_bits_reset(GPIOA, GPIO_PINS_7);
128 delay_us(10);
129 }
130}
131
137void TMR2_GLOBAL_IRQHandler(void)
138{
139 if(tmr_flag_get(TMR2, TMR_TRIGGER_FLAG) != RESET)
140 {
141 GPIOA->odt ^= GPIO_PINS_8;
142 tmr_flag_clear(TMR2, TMR_TRIGGER_FLAG);
143 }
144}
145
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c:36
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c:38
TMR2_GLOBAL_IRQHandler
void TMR2_GLOBAL_IRQHandler(void)
this function handles TMR2 trigger exception.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c:137
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c:46
tmr_input_config_struct
tmr_input_config_type tmr_input_config_struct
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c:39
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/hall_xor_tmr2/src/main.c:37
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
TMR2_GLOBAL_IRQn
@ TMR2_GLOBAL_IRQn
Definition: at32f403.h:207
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_channel1_input_select
void tmr_channel1_input_select(tmr_type *tmr_x, tmr_channel1_input_connected_type ch1_connect)
select tmr channel1 input
Definition: at32f403_tmr.c:1107
tmr_32_bit_function_enable
void tmr_32_bit_function_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode)
Definition: at32f403_tmr.c:772
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR
@ TMR_CHANEL1_2_3_CONNECTED_C1IRAW_XOR
Definition: at32f403_tmr.h:229
TMR_CC_CHANNEL_MAPPED_STI
@ TMR_CC_CHANNEL_MAPPED_STI
Definition: at32f403_tmr.h:239
TMR_SUB_INPUT_SEL_C1INC
@ TMR_SUB_INPUT_SEL_C1INC
Definition: at32f403_tmr.h:135
TMR_SUB_RESET_MODE
@ TMR_SUB_RESET_MODE
Definition: at32f403_tmr.h:150
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR_TRIGGER_FLAG
#define TMR_TRIGGER_FLAG
Definition: at32f403_tmr.h:56
TMR_TRIGGER_INT
#define TMR_TRIGGER_INT
Definition: at32f403_tmr.h:78
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • hang_mode
  • inc
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • hang_mode
  • inc
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • hang_mode
  • inc
project/at_start_f403/examples/tmr/hang_mode/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • hang_mode
  • src
project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • hang_mode
  • src
project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • hang_mode
  • src
project/at_start_f403/examples/tmr/hang_mode/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38 tmr_output_config_type tmr_output_struct;
39 tmr_input_config_type tmr_input_config_struct;
40
46int main(void)
47{
48 system_clock_config();
49
50 at32_board_init();
51
52 /* get system clock */
53 crm_clocks_freq_get(&crm_clocks_freq_struct);
54
55 /* turn led2/led3/led4 on */
56 at32_led_on(LED2);
57 at32_led_on(LED3);
58 at32_led_on(LED4);
59
60 /* enable tmr1/gpioa clock */
61 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
63
64 /* timer1 output pin configuration */
65 gpio_init_struct.gpio_pins = GPIO_PINS_8;
66 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
67 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
68 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
69 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
70 gpio_init(GPIOA, &gpio_init_struct);
71
72 gpio_init_struct.gpio_pins = GPIO_PINS_9;
73 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
74 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
75 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
76 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
77 gpio_init(GPIOA, &gpio_init_struct);
78
79 /* hang mode test
80 1/tmr1 is configured as master timer:
81 - toggle mode is used
82
83 2/tmr1 is configured as slave timer for an external trigger connected
84 to tmr1 ti2 pin (tmr1 ch2 configured as input pin):
85 - the tmr1 ti2fp2 is used as trigger input
86 - rising edge is used to start and stop the tmr1: hang mode.
87
88 * the timxclk is fixed to 192 mhz, the prescaler is equal to 2 so the tmrx clock
89 counter is equal to 64 mhz.
90 the three timers are running at:
91 tmrx frequency = tmrx clock counter/ 2*(timx_period + 1) = 500 khz.
92 */
93
94 /* tmr2 and tmr3 counter mode configuration */
95 tmr_base_init(TMR1, 63, 2);
96 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
97
98 /* tmr1 output mode configuration */
99 tmr_output_default_para_init(&tmr_output_struct);
100 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_SWITCH;
101 tmr_output_struct.oc_output_state = TRUE;
102 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
103 tmr_output_struct.oc_idle_state = TRUE;
104 tmr_output_struct.occ_output_state = FALSE;
105 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_HIGH;
106 tmr_output_struct.occ_idle_state = FALSE;
107 /* tmr1 channel 1 */
108 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
109 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 32);
110
111 /* configure tmr1 channel2 to get hang signal */
112 tmr_input_default_para_init(&tmr_input_config_struct);
113 tmr_input_config_struct.input_channel_select = TMR_SELECT_CHANNEL_2;
114 tmr_input_config_struct.input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
115 tmr_input_config_struct.input_polarity_select = TMR_INPUT_RISING_EDGE;
116 tmr_input_channel_init(TMR1, &tmr_input_config_struct, TMR_CHANNEL_INPUT_DIV_1);
117
118 /* select the tmr1 input trigger: C2IF2 */
119 tmr_trigger_input_select(TMR1, TMR_SUB_INPUT_SEL_C2DF2);
120
121 /* select the slave mode: hang mode */
122 tmr_sub_mode_select(TMR1, TMR_SUB_HANG_MODE);
123
124 /* output enable */
125 tmr_output_enable(TMR1, TRUE);
126
127 /* enable tmr1 */
128 tmr_counter_enable(TMR1, TRUE);
129
130 while(1)
131 {
132 }
133}
134
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/hang_mode/src/main.c:36
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/hang_mode/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/hang_mode/src/main.c:46
tmr_input_config_struct
tmr_input_config_type tmr_input_config_struct
Definition: project/at_start_f403/examples/tmr/hang_mode/src/main.c:39
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/hang_mode/src/main.c:37
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_input_default_para_init
void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
init tmr input default para
Definition: at32f403_tmr.c:162
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_OUTPUT_CONTROL_SWITCH
@ TMR_OUTPUT_CONTROL_SWITCH
Definition: at32f403_tmr.h:174
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_SUB_INPUT_SEL_C2DF2
@ TMR_SUB_INPUT_SEL_C2DF2
Definition: at32f403_tmr.h:137
TMR_SUB_HANG_MODE
@ TMR_SUB_HANG_MODE
Definition: at32f403_tmr.h:151
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • input_capture
  • inc
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • input_capture
  • inc
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • input_capture
  • inc
project/at_start_f403/examples/tmr/input_capture/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • input_capture
  • src
project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • input_capture
  • src
project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • input_capture
  • src
project/at_start_f403/examples/tmr/input_capture/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38 tmr_input_config_type tmr_input_config_struct;
39void delay(uint32_t time);
40void uart_init(uint32_t baudrate);
41__IO uint32_t tmr3freq = 0;
42__IO uint32_t sys_counter = 0;
43__IO uint16_t capturenumber = 0;
44__IO uint16_t ic3readvalue1 = 0, ic3readvalue2 = 0;
45__IO uint32_t capture = 0;
46
52void delay(uint32_t time)
53{
54 uint32_t i;
55
56 for(i = 0; i < time; i++);
57}
58
64void TMR3_GLOBAL_IRQHandler(void)
65{
66 if(tmr_flag_get(TMR3, TMR_C2_FLAG) != RESET)
67 {
68 tmr_flag_clear(TMR3, TMR_C2_FLAG);
69 if(capturenumber == 0)
70 {
71 /* get the Input Capture value */
72 ic3readvalue1 = tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_2);
73 capturenumber = 1;
74 }
75 else if(capturenumber == 1)
76 {
77 /* get the Input Capture value */
78 ic3readvalue2 = tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_2);
79
80 /* capture computation */
81 if(ic3readvalue2 > ic3readvalue1)
82 {
83 capture = (ic3readvalue2 - ic3readvalue1);
84 }
85 else
86 {
87 capture = ((0xFFFF - ic3readvalue1) + ic3readvalue2);
88 }
89
90 /* frequency computation */
91 tmr3freq = (uint32_t) crm_clocks_freq_struct.sclk_freq / capture;
92 capturenumber = 0;
93 }
94 }
95}
96
102int main(void)
103{
104 system_clock_config();
105
106 at32_board_init();
107
108 uart_print_init(115200);
109
110 /* get system clock */
111 crm_clocks_freq_get(&crm_clocks_freq_struct);
112
113 /* turn led2/led3/led4 on */
114 at32_led_on(LED2);
115 at32_led_on(LED3);
116 at32_led_on(LED4);
117
118 /* enable tmr3/gpioa clock */
119 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
120 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
121
122 /* timer3 input pin Configuration */
123 gpio_init_struct.gpio_pins = GPIO_PINS_7;
124 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
125 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
126 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
127 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
128 gpio_init(GPIOA, &gpio_init_struct);
129
130 /* tmr3 configuration: input capture mode
131 the external signal is connected to tmr3 ch2 pin (pa.07)
132 the rising edge is used as active edge,
133 the tmr3 c2dt is used to compute the frequency value */
134
135 /* tmr3 counter mode configuration */
136 tmr_base_init(TMR3, 0xFFFF, 0);
137 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
138
139 /* configure tmr3 channel2 to get clock signal */
140 tmr_input_config_struct.input_channel_select = TMR_SELECT_CHANNEL_2;
141 tmr_input_config_struct.input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
142 tmr_input_config_struct.input_polarity_select = TMR_INPUT_RISING_EDGE;
143 tmr_input_channel_init(TMR3, &tmr_input_config_struct, TMR_CHANNEL_INPUT_DIV_1);
144
145 tmr_interrupt_enable(TMR3, TMR_C2_INT, TRUE);
146
147 /* tmr2 trigger interrupt nvic init */
148 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
149 nvic_irq_enable(TMR3_GLOBAL_IRQn, 0, 0);
150
151 /* enable tmr3 */
152 tmr_counter_enable(TMR3, TRUE);
153
154 while(1)
155 {
156 delay(10000);
157 printf("The external signal frequece is : %d\r\n",tmr3freq);
158 tmr3freq = 0;
159 }
160}
161
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:36
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:52
ic3readvalue2
__IO uint16_t ic3readvalue2
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:44
tmr3freq
__IO uint32_t tmr3freq
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:41
capturenumber
__IO uint16_t capturenumber
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:43
TMR3_GLOBAL_IRQHandler
void TMR3_GLOBAL_IRQHandler(void)
this function handles tmr3 trigger exception.
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:64
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:102
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
tmr_input_config_struct
tmr_input_config_type tmr_input_config_struct
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:38
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:37
ic3readvalue1
__IO uint16_t ic3readvalue1
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:44
sys_counter
__IO uint32_t sys_counter
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:42
capture
__IO uint32_t capture
Definition: project/at_start_f403/examples/tmr/input_capture/src/main.c:45
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_channel_value_get
uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value
Definition: at32f403_tmr.c:565
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR_C2_FLAG
#define TMR_C2_FLAG
Definition: at32f403_tmr.h:52
TMR_C2_INT
#define TMR_C2_INT
Definition: at32f403_tmr.h:74
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • oc_high
  • inc
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • oc_high
  • inc
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • oc_high
  • inc
project/at_start_f403/examples/tmr/oc_high/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • oc_high
  • src
project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • oc_high
  • src
project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
138void TMR2_GLOBAL_IRQHandler(void)
139{
140 if(tmr_flag_get(TMR2, TMR_C1_FLAG) != RESET)
141 {
142 /* clear tmr2 channel1 interrupt pending bit */
143 tmr_flag_clear(TMR2, TMR_C1_FLAG);
144
145 /* pc.06 turnoff after 1000 ms */
146 gpio_bits_reset(GPIOC, GPIO_PINS_6);
147 }
148 else if(tmr_flag_get(TMR2, TMR_C2_FLAG) != RESET)
149 {
150 /* clear tmr2 channel2 interrupt pending bit */
151 tmr_flag_clear(TMR2, TMR_C2_FLAG);
152
153 /* pc.07 turnoff after 500 ms */
154 gpio_bits_reset(GPIOC, GPIO_PINS_7);
155 }
156 else if(tmr_flag_get(TMR2, TMR_C3_FLAG) != RESET)
157 {
158 /* clear tmr2 channel3 interrupt pending bit */
159 tmr_flag_clear(TMR2, TMR_C3_FLAG);
160
161 /* pc.08 turnoff after 250 ms */
162 gpio_bits_reset(GPIOC, GPIO_PINS_8);
163 }
164 else
165 {
166 /* clear tmr2 channel4 interrupt pending bit */
167 tmr_flag_clear(TMR2, TMR_C4_FLAG);
168
169 /* pc.09 turnoff after 125 ms */
170 gpio_bits_reset(GPIOC, GPIO_PINS_9);
171 }
172}
173
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:102
TMR2_GLOBAL_IRQHandler
void TMR2_GLOBAL_IRQHandler(void)
this function handles tmr2 global interrupt request.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:138
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/oc_high/src/at32f403_int.c:111
RESET
@ RESET
Definition: at32f403.h:304
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
TMR_C1_FLAG
#define TMR_C1_FLAG
Definition: at32f403_tmr.h:51
TMR_C2_FLAG
#define TMR_C2_FLAG
Definition: at32f403_tmr.h:52
TMR_C3_FLAG
#define TMR_C3_FLAG
Definition: at32f403_tmr.h:53
TMR_C4_FLAG
#define TMR_C4_FLAG
Definition: at32f403_tmr.h:54
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • oc_high
  • src
project/at_start_f403/examples/tmr/oc_high/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38uint16_t ccr1_val = 1000;
39uint16_t ccr2_val = 500;
40uint16_t ccr3_val = 250;
41uint16_t ccr4_val = 125;
42uint16_t prescaler_value = 0;
43
44void gpio_configuration(void);
45
51void gpio_configuration(void)
52{
53 gpio_init_type gpio_init_struct;
54
55 gpio_default_para_init(&gpio_init_struct);
56
57 /* gpioc configuration: pin6, 7, 8 and 9 as output push-pull */
58 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9;
59 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
60 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
61 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
62 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
63
64 gpio_init(GPIOC, &gpio_init_struct);
65}
66
72int main(void)
73{
74 /* config nvic priority group */
75 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
76
77 system_clock_config();
78
79 at32_board_init();
80
81 /* get system clock */
82 crm_clocks_freq_get(&crm_clocks_freq_struct);
83
84 crm_apb1_div_set(CRM_APB1_DIV_8);
85 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
86 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
87
88 nvic_irq_enable(TMR2_GLOBAL_IRQn, 0, 0);
89
90 gpio_configuration();
91
92 /* compute the prescaler value */
93 prescaler_value = (uint16_t)(crm_clocks_freq_struct.sclk_freq / 4000) - 1;
94
95 /* tmr2 time base configuration */
96 tmr_base_init(TMR2, 0xFFFF, prescaler_value);
97 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
98 tmr_clock_source_div_set(TMR2, TMR_CLOCK_DIV1);
99
100 tmr_output_default_para_init(&tmr_oc_init_structure);
101 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_HIGH;
102 tmr_oc_init_structure.oc_idle_state = FALSE;
103 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
104 tmr_oc_init_structure.oc_output_state = TRUE;
105 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
106 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, ccr1_val);
107
108 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_2, &tmr_oc_init_structure);
109 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_2, ccr2_val);
110
111 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_3, &tmr_oc_init_structure);
112 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_3, ccr3_val);
113
114 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_4, &tmr_oc_init_structure);
115 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_4, ccr4_val);
116
117 tmr_period_buffer_enable(TMR2, TRUE);
118
119 /* tmr2 int enable */
120 tmr_interrupt_enable(TMR2, TMR_C1_INT | TMR_C2_INT | TMR_C3_INT | TMR_C4_INT, TRUE);
121
122 /* set pc.06, pc.07, pc.08 and pc.09 pins */
123 gpio_bits_set(GPIOC, GPIO_PINS_6 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9);
124
125 /* tmr2 enable counter */
126 tmr_counter_enable(TMR2, TRUE);
127
128 while(1)
129 {
130 }
131}
132
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:42
ccr1_val
uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:38
ccr2_val
uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:39
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:72
gpio_configuration
void gpio_configuration(void)
configure the gpioc pins.
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:51
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:36
ccr4_val
uint16_t ccr4_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:41
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:37
ccr3_val
uint16_t ccr3_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:40
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_APB1_DIV_8
@ CRM_APB1_DIV_8
Definition: at32f403_crm.h:347
TMR2_GLOBAL_IRQn
@ TMR2_GLOBAL_IRQn
Definition: at32f403.h:207
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_period_buffer_enable
void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer
Definition: at32f403_tmr.c:606
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_HIGH
@ TMR_OUTPUT_CONTROL_HIGH
Definition: at32f403_tmr.h:172
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_C3_INT
#define TMR_C3_INT
Definition: at32f403_tmr.h:75
TMR_C4_INT
#define TMR_C4_INT
Definition: at32f403_tmr.h:76
TMR_C1_INT
#define TMR_C1_INT
Definition: at32f403_tmr.h:73
TMR_C2_INT
#define TMR_C2_INT
Definition: at32f403_tmr.h:74
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • oc_low
  • inc
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • oc_low
  • inc
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • oc_low
  • inc
project/at_start_f403/examples/tmr/oc_low/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • oc_low
  • src
project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • oc_low
  • src
project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
138void TMR2_GLOBAL_IRQHandler(void)
139{
140 if(tmr_flag_get(TMR2, TMR_C1_FLAG) != RESET)
141 {
142 /* clear tmr2 channel1 interrupt pending bit */
143 tmr_flag_clear(TMR2, TMR_C1_FLAG);
144
145 /* pc.06 turnoff after 1000 ms */
146 gpio_bits_reset(GPIOC, GPIO_PINS_6);
147 }
148 else if(tmr_flag_get(TMR2, TMR_C2_FLAG) != RESET)
149 {
150 /* clear tmr2 channel2 interrupt pending bit */
151 tmr_flag_clear(TMR2, TMR_C2_FLAG);
152
153 /* pc.07 turnoff after 500 ms */
154 gpio_bits_reset(GPIOC, GPIO_PINS_7);
155 }
156 else if(tmr_flag_get(TMR2, TMR_C3_FLAG) != RESET)
157 {
158 /* clear tmr2 channel3 interrupt pending bit */
159 tmr_flag_clear(TMR2, TMR_C3_FLAG);
160
161 /* pc.08 turnoff after 250 ms */
162 gpio_bits_reset(GPIOC, GPIO_PINS_8);
163 }
164 else
165 {
166 /* clear tmr2 channel4 interrupt pending bit */
167 tmr_flag_clear(TMR2, TMR_C4_FLAG);
168
169 /* pc.09 turnoff after 125 ms */
170 gpio_bits_reset(GPIOC, GPIO_PINS_9);
171 }
172}
173
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:102
TMR2_GLOBAL_IRQHandler
void TMR2_GLOBAL_IRQHandler(void)
this function handles tmr2 global interrupt request.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:138
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/oc_low/src/at32f403_int.c:111
RESET
@ RESET
Definition: at32f403.h:304
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
TMR_C1_FLAG
#define TMR_C1_FLAG
Definition: at32f403_tmr.h:51
TMR_C2_FLAG
#define TMR_C2_FLAG
Definition: at32f403_tmr.h:52
TMR_C3_FLAG
#define TMR_C3_FLAG
Definition: at32f403_tmr.h:53
TMR_C4_FLAG
#define TMR_C4_FLAG
Definition: at32f403_tmr.h:54
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • oc_low
  • src
project/at_start_f403/examples/tmr/oc_low/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37uint16_t ccr1_val = 1000;
38uint16_t ccr2_val = 500;
39uint16_t ccr3_val = 250;
40uint16_t ccr4_val = 125;
41uint16_t prescaler_value = 0;
42
43void gpio_configuration(void);
44
50void gpio_configuration(void)
51{
52 gpio_init_type gpio_init_struct;
53
54 /* gpioc configuration: pin6, 7, 8 and 9 as output push-pull */
55 gpio_default_para_init(&gpio_init_struct);
56 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9;
57 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
58 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
59 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
60 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
61
62 gpio_init(GPIOC, &gpio_init_struct);
63}
64
70int main(void)
71{
72 /* config nvic priority group */
73 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
74
75 system_clock_config();
76
77 at32_board_init();
78
79 crm_apb1_div_set(CRM_APB1_DIV_8);
80 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
81 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
82
83 nvic_irq_enable(TMR2_GLOBAL_IRQn, 0, 0);
84
85 gpio_configuration();
86
87 /* compute the prescaler value */
88 prescaler_value = (uint16_t)(system_core_clock / 4000) - 1;
89
90 /* tmr2 time base configuration */
91 tmr_base_init(TMR2, 65535, prescaler_value);
92 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
93 tmr_clock_source_div_set(TMR2, TMR_CLOCK_DIV1);
94
95 tmr_output_default_para_init(&tmr_oc_init_structure);
96 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_LOW;
97 tmr_oc_init_structure.oc_idle_state = FALSE;
98 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
99 tmr_oc_init_structure.oc_output_state = TRUE;
100 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
101 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, ccr1_val);
102
103 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_2, &tmr_oc_init_structure);
104 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_2, ccr2_val);
105
106 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_3, &tmr_oc_init_structure);
107 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_3, ccr3_val);
108
109 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_4, &tmr_oc_init_structure);
110 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_4, ccr4_val);
111
112 tmr_period_buffer_enable(TMR2, TRUE);
113
114 /* tmr2 int enable */
115 tmr_interrupt_enable(TMR2, TMR_C1_INT | TMR_C2_INT | TMR_C3_INT | TMR_C4_INT, TRUE);
116
117 /* set pc.06, pc.07, pc.08 and pc.09 pins */
118 gpio_bits_set(GPIOC, GPIO_PINS_6 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9);
119
120 /* tmr2 enable counter */
121 tmr_counter_enable(TMR2, TRUE);
122
123 while(1)
124 {
125 }
126}
127
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:41
ccr1_val
uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:37
ccr2_val
uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:70
gpio_configuration
void gpio_configuration(void)
configure the gpioc pins.
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:50
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:36
ccr4_val
uint16_t ccr4_val
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:40
ccr3_val
uint16_t ccr3_val
Definition: project/at_start_f403/examples/tmr/oc_low/src/main.c:39
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_APB1_DIV_8
@ CRM_APB1_DIV_8
Definition: at32f403_crm.h:347
TMR2_GLOBAL_IRQn
@ TMR2_GLOBAL_IRQn
Definition: at32f403.h:207
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_period_buffer_enable
void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer
Definition: at32f403_tmr.c:606
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_LOW
@ TMR_OUTPUT_CONTROL_LOW
Definition: at32f403_tmr.h:173
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_C3_INT
#define TMR_C3_INT
Definition: at32f403_tmr.h:75
TMR_C4_INT
#define TMR_C4_INT
Definition: at32f403_tmr.h:76
TMR_C1_INT
#define TMR_C1_INT
Definition: at32f403_tmr.h:73
TMR_C2_INT
#define TMR_C2_INT
Definition: at32f403_tmr.h:74
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • oc_toggle_tmr3
  • inc
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • oc_toggle_tmr3
  • inc
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • oc_toggle_tmr3
  • inc
project/at_start_f403/examples/tmr/oc_toggle_tmr3/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • oc_toggle_tmr3
  • src
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • oc_toggle_tmr3
  • src
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern __IO uint16_t ccr1_val;
29extern __IO uint16_t ccr2_val;
30extern __IO uint16_t ccr3_val;
31extern __IO uint16_t ccr4_val;
32
41uint32_t capture = 0;
42
48void NMI_Handler(void)
49{
50}
51
57void HardFault_Handler(void)
58{
59 /* go to infinite loop when hard fault exception occurs */
60 while(1)
61 {
62 }
63}
64
70void MemManage_Handler(void)
71{
72 /* go to infinite loop when memory manage exception occurs */
73 while(1)
74 {
75 }
76}
77
83void BusFault_Handler(void)
84{
85 /* go to infinite loop when bus fault exception occurs */
86 while(1)
87 {
88 }
89}
90
96void UsageFault_Handler(void)
97{
98 /* go to infinite loop when usage fault exception occurs */
99 while(1)
100 {
101 }
102}
103
109void SVC_Handler(void)
110{
111}
112
118void DebugMon_Handler(void)
119{
120}
121
127void PendSV_Handler(void)
128{
129}
130
136void SysTick_Handler(void)
137{
138}
139
145void TMR3_GLOBAL_IRQHandler(void)
146{
147 /* TMR3_CH1 toggling with frequency = 183.1 Hz */
148 if(tmr_flag_get(TMR3, TMR_C1_FLAG) != RESET)
149 {
150 tmr_flag_clear(TMR3, TMR_C1_FLAG );
151 capture = tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_1);
152 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_1, capture + ccr1_val);
153 }
154
155 /* TMR3_CH2 toggling with frequency = 366.2 Hz */
156 if(tmr_flag_get(TMR3, TMR_C2_FLAG) != RESET)
157 {
158 tmr_flag_clear(TMR3, TMR_C2_FLAG);
159 capture = tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_2);
160 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_2, capture + ccr2_val);
161 }
162
163 /* TMR3_CH3 toggling with frequency = 732.4 Hz */
164 if(tmr_flag_get(TMR3, TMR_C3_FLAG) != RESET)
165 {
166 tmr_flag_clear(TMR3, TMR_C3_FLAG);
167 capture = tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_3);
168 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_3, capture + ccr3_val);
169 }
170
171 /* TMR3_CH4 toggling with frequency = 1464.8 Hz */
172 if(tmr_flag_get(TMR3, TMR_C4_FLAG) != RESET)
173 {
174 tmr_flag_clear(TMR3, TMR_C4_FLAG);
175 capture = tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_4);
176 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_4, capture + ccr4_val);
177 }
178}
179
ccr1_val
__IO uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:38
ccr2_val
__IO uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:39
ccr4_val
__IO uint16_t ccr4_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:41
ccr3_val
__IO uint16_t ccr3_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:40
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:96
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:57
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:70
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:109
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:127
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:48
TMR3_GLOBAL_IRQHandler
void TMR3_GLOBAL_IRQHandler(void)
this function handles tmr3 global interrupt request.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:145
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:83
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:136
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:118
capture
uint32_t capture
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/at32f403_int.c:41
RESET
@ RESET
Definition: at32f403.h:304
tmr_channel_value_get
uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value
Definition: at32f403_tmr.c:565
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_C1_FLAG
#define TMR_C1_FLAG
Definition: at32f403_tmr.h:51
TMR_C2_FLAG
#define TMR_C2_FLAG
Definition: at32f403_tmr.h:52
TMR_C3_FLAG
#define TMR_C3_FLAG
Definition: at32f403_tmr.h:53
TMR_C4_FLAG
#define TMR_C4_FLAG
Definition: at32f403_tmr.h:54
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • oc_toggle_tmr3
  • src
project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37__IO uint16_t ccr1_val = 32768;
38__IO uint16_t ccr2_val = 16384;
39__IO uint16_t ccr3_val = 8192;
40__IO uint16_t ccr4_val = 4096;
41uint16_t prescaler_value = 0;
42
43void crm_configuration(void);
44void gpio_configuration(void);
45void nvic_configuration(void);
46
52void gpio_configuration(void)
53{
54 gpio_init_type gpio_init_struct;
55
56 /* gpioa configuration:tmr3 channel1, 2, 3 and 4 as alternate function push-pull */
57 gpio_default_para_init(&gpio_init_struct);
58 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_7;
59 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
60 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
61 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
62 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
63
64 gpio_init(GPIOA, &gpio_init_struct);
65
66 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
67 gpio_init(GPIOB, &gpio_init_struct);
68
69}
70
76void crm_configuration(void)
77{
78 /* tmr3 clock enable */
79 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
80
81 /* gpioa clock enable */
82 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
83 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
84}
85
91int main(void)
92{
93 system_clock_config();
94
95 /* peripheral clocks configuration */
96 crm_configuration();
97
98 /* nvic configuration */
99 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
100 nvic_irq_enable(TMR3_GLOBAL_IRQn, 0, 0);
101
102 /* gpio configuration */
103 gpio_configuration();
104
105 /* tmr3 configuration: output compare toggle mode:
106 tmr3clk = system_core_clock / 2,
107 the objective is to get tmr3 counter clock at 12 mhz:
108 - prescaler = (tmr3clk / tmr3 counter clock) - 1
109 cc1 update rate = tmr3 counter clock / ccr1_val = 366.2 hz
110 cc2 update rate = tmr3 counter clock / ccr2_val = 732.4 hz
111 cc3 update rate = tmr3 counter clock / ccr3_val = 1464.8 hz
112 cc4 update rate = tmr3 counter clock / ccr4_val = 2929.6 hz */
113
114 /* compute the prescaler value */
115 prescaler_value = (uint16_t)(system_core_clock / 24000000) - 1;
116
117 /* tmre base configuration */
118 tmr_base_init(TMR3, 65535, prescaler_value);
119 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
120 tmr_clock_source_div_set(TMR3, TMR_CLOCK_DIV1);
121
122 /* output compare toggle mode configuration: channel1 */
123 tmr_output_default_para_init(&tmr_oc_init_structure);
124 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_SWITCH;
125 tmr_oc_init_structure.oc_idle_state = FALSE;
126 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
127 tmr_oc_init_structure.oc_output_state = TRUE;
128 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
129 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_1, ccr1_val);
130
131 /* output compare toggle mode configuration: channel2 */
132 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_2, &tmr_oc_init_structure);
133 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_2, ccr2_val);
134
135 /* output compare toggle mode configuration: channel3 */
136 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_3, &tmr_oc_init_structure);
137 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_3, ccr3_val);
138
139 /* output compare toggle mode configuration: channel4 */
140 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_4, &tmr_oc_init_structure);
141 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_4, ccr4_val);
142
143 /* tmr enable counter */
144 tmr_counter_enable(TMR3, TRUE);
145
146 /* tmr it enable */
147 tmr_interrupt_enable(TMR3, TMR_C1_INT | TMR_C2_INT | TMR_C3_INT | TMR_C4_INT, TRUE);
148
149 while(1)
150 {
151 }
152}
153
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:41
ccr2_val
__IO uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:38
ccr3_val
__IO uint16_t ccr3_val
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:39
ccr1_val
__IO uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:91
gpio_configuration
void gpio_configuration(void)
configure the tmr3 pins.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:52
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:36
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:76
ccr4_val
__IO uint16_t ccr4_val
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr3/src/main.c:40
nvic_configuration
void nvic_configuration(void)
configures the nested vectored interrupt controller.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:46
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_SWITCH
@ TMR_OUTPUT_CONTROL_SWITCH
Definition: at32f403_tmr.h:174
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR_C3_INT
#define TMR_C3_INT
Definition: at32f403_tmr.h:75
TMR_C4_INT
#define TMR_C4_INT
Definition: at32f403_tmr.h:76
TMR_C1_INT
#define TMR_C1_INT
Definition: at32f403_tmr.h:73
TMR_C2_INT
#define TMR_C2_INT
Definition: at32f403_tmr.h:74
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • oc_toggle_tmr9
  • inc
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • oc_toggle_tmr9
  • inc
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • oc_toggle_tmr9
  • inc
project/at_start_f403/examples/tmr/oc_toggle_tmr9/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • oc_toggle_tmr9
  • src
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • oc_toggle_tmr9
  • src
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern __IO uint16_t ccr1_val;
29extern __IO uint16_t ccr2_val;
30
39uint16_t capture = 0;
40
46void NMI_Handler(void)
47{
48}
49
55void HardFault_Handler(void)
56{
57 /* go to infinite loop when hard fault exception occurs */
58 while(1)
59 {
60 }
61}
62
68void MemManage_Handler(void)
69{
70 /* go to infinite loop when memory manage exception occurs */
71 while(1)
72 {
73 }
74}
75
81void BusFault_Handler(void)
82{
83 /* go to infinite loop when bus fault exception occurs */
84 while(1)
85 {
86 }
87}
88
94void UsageFault_Handler(void)
95{
96 /* go to infinite loop when usage fault exception occurs */
97 while(1)
98 {
99 }
100}
101
107void SVC_Handler(void)
108{
109}
110
116void DebugMon_Handler(void)
117{
118}
119
125void PendSV_Handler(void)
126{
127}
128
134void SysTick_Handler(void)
135{
136}
137
143void TMR1_BRK_TMR9_IRQHandler(void)
144{
145 /* TMR9_CH1 toggling with frequency = 366.2 Hz */
146 if(tmr_flag_get(TMR9, TMR_C1_FLAG) != RESET)
147 {
148 tmr_flag_clear(TMR9, TMR_C1_FLAG );
149 capture = tmr_channel_value_get(TMR9, TMR_SELECT_CHANNEL_1);
150 tmr_channel_value_set(TMR9, TMR_SELECT_CHANNEL_1, capture + ccr1_val);
151 }
152
153 /* TMR9_CH2 toggling with frequency = 732.4 Hz */
154 if(tmr_flag_get(TMR9, TMR_C2_FLAG) != RESET)
155 {
156 tmr_flag_clear(TMR9, TMR_C2_FLAG);
157 capture = tmr_channel_value_get(TMR9, TMR_SELECT_CHANNEL_2);
158 tmr_channel_value_set(TMR9, TMR_SELECT_CHANNEL_2, capture + ccr2_val);
159 }
160}
161
ccr1_val
__IO uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:38
ccr2_val
__IO uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:39
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:94
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:55
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:68
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:107
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:125
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:46
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:81
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:134
TMR1_BRK_TMR9_IRQHandler
void TMR1_BRK_TMR9_IRQHandler(void)
this function handles TMR9 global interrupt request.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:143
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:116
capture
uint16_t capture
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/at32f403_int.c:39
RESET
@ RESET
Definition: at32f403.h:304
tmr_channel_value_get
uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value
Definition: at32f403_tmr.c:565
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_C1_FLAG
#define TMR_C1_FLAG
Definition: at32f403_tmr.h:51
TMR_C2_FLAG
#define TMR_C2_FLAG
Definition: at32f403_tmr.h:52
TMR9
#define TMR9
Definition: at32f403_tmr.h:838
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • oc_toggle_tmr9
  • src
project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37__IO uint16_t ccr1_val = 32768;
38__IO uint16_t ccr2_val = 16384;
39uint16_t prescaler_value = 0;
40
41void crm_configuration(void);
42void gpio_configuration(void);
43void nvic_configuration(void);
44
50void gpio_configuration(void)
51{
52 gpio_init_type gpio_init_struct;
53
54 /* gpioa configuration:tmr9 channel1 and 2 as alternate function push-pull */
55 gpio_default_para_init(&gpio_init_struct);
56 gpio_init_struct.gpio_pins = GPIO_PINS_2 | GPIO_PINS_3;
57 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
58 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
59 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
60 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
61
62 gpio_init(GPIOA, &gpio_init_struct);
63}
64
70void crm_configuration(void)
71{
72 /* tmr9 clock enable */
73 crm_periph_clock_enable(CRM_TMR9_PERIPH_CLOCK, TRUE);
74
75 /* gpioa clock enable */
76 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
77}
78
84int main(void)
85{
86 system_clock_config();
87
88 /* peripheral clocks configuration */
89 crm_configuration();
90
91 /* nvic configuration */
92 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
93 nvic_irq_enable(TMR1_BRK_TMR9_IRQn, 0, 0);
94
95 /* gpio configuration */
96 gpio_configuration();
97
98 /* tmr9 configuration: output compare toggle mode:
99 tmr9clk = system_core_clock (240mhz),
100 the objective is to get tmr9 counter clock at 24 mhz:
101 - prescaler_value = (tmr9clk / tmr9 counter clock) - 1
102 cc1 update rate = tmr9 counter clock / ccr1val = 732.4 hz
103 cc2 update rate = tmr9 counter clock / ccr2val = 1464.8 hz */
104
105 /* compute the prescaler value */
106 prescaler_value = (uint16_t) (system_core_clock / 24000000) - 1;
107
108 /* tmr base configuration */
109 tmr_base_init(TMR9, 65535, prescaler_value);
110 tmr_cnt_dir_set(TMR9, TMR_COUNT_UP);
111 tmr_clock_source_div_set(TMR9, TMR_CLOCK_DIV1);
112
113 /* output compare toggle mode configuration: channel1 */
114 tmr_output_default_para_init(&tmr_oc_init_structure);
115 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_SWITCH;
116 tmr_oc_init_structure.oc_idle_state = FALSE;
117 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
118 tmr_oc_init_structure.oc_output_state = TRUE;
119 tmr_output_channel_config(TMR9, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
120 tmr_channel_value_set(TMR9, TMR_SELECT_CHANNEL_1, ccr1_val);
121
122 /* output toggle mode configuration: channel2 */
123 tmr_output_channel_config(TMR9, TMR_SELECT_CHANNEL_2, &tmr_oc_init_structure);
124 tmr_channel_value_set(TMR9, TMR_SELECT_CHANNEL_2, ccr2_val);
125
126 /* tmr enable counter */
127 tmr_counter_enable(TMR9, TRUE);
128
129 /* tmr interrupt enable */
130 tmr_interrupt_enable(TMR9, TMR_C1_INT | TMR_C2_INT | TMR_C3_INT | TMR_C4_INT, TRUE);
131
132 while(1)
133 {
134 }
135}
136
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c:39
ccr2_val
__IO uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c:38
ccr1_val
__IO uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c:84
gpio_configuration
void gpio_configuration(void)
configure the tmr9 pins.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c:50
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c:36
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/oc_toggle_tmr9/src/main.c:70
nvic_configuration
void nvic_configuration(void)
configures the nested vectored interrupt controller.
Definition: project/at_start_f403/examples/rtc/lick_calibration/src/main.c:46
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR9_PERIPH_CLOCK
@ CRM_TMR9_PERIPH_CLOCK
Definition: at32f403_crm.h:125
TMR1_BRK_TMR9_IRQn
@ TMR1_BRK_TMR9_IRQn
Definition: at32f403.h:203
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_SWITCH
@ TMR_OUTPUT_CONTROL_SWITCH
Definition: at32f403_tmr.h:174
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR_C3_INT
#define TMR_C3_INT
Definition: at32f403_tmr.h:75
TMR_C4_INT
#define TMR_C4_INT
Definition: at32f403_tmr.h:76
TMR_C1_INT
#define TMR_C1_INT
Definition: at32f403_tmr.h:73
TMR_C2_INT
#define TMR_C2_INT
Definition: at32f403_tmr.h:74
TMR9
#define TMR9
Definition: at32f403_tmr.h:838
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • one_cycle
  • inc
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • one_cycle
  • inc
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • one_cycle
  • inc
project/at_start_f403/examples/tmr/one_cycle/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • one_cycle
  • src
project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • one_cycle
  • src
project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • one_cycle
  • src
project/at_start_f403/examples/tmr/one_cycle/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37 tmr_input_config_type tmr_ic_init_structure;
38uint16_t prescaler_value = 0;
39
40void crm_configuration(void);
41void gpio_configuration(void);
42
48void gpio_configuration(void)
49{
50 gpio_init_type gpio_init_struct;
51
52 gpio_default_para_init(&gpio_init_struct);
53
54 /* tmr4_ch2 pin (pb.07) configuration */
55 gpio_init_struct.gpio_pins = GPIO_PINS_7;
56 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
57 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
58 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
59 gpio_init(GPIOB, &gpio_init_struct);
60
61 /* tmr4_ch1 pin (pb.06) configuration */
62 gpio_init_struct.gpio_pins = GPIO_PINS_6;
63 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
64 gpio_init(GPIOB, &gpio_init_struct);
65}
66
72void crm_configuration(void)
73{
74 /* tmr3 clock enable */
75 crm_periph_clock_enable(CRM_TMR4_PERIPH_CLOCK, TRUE);
76
77 /* gpioa clock enable */
78 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
79}
80
86int main(void)
87{
88 system_clock_config();
89
90 /* peripheral clocks configuration */
91 crm_configuration();
92
93 /* gpio configuration */
94 gpio_configuration();
95
96 /* compute the prescaler value */
97 prescaler_value = (uint16_t)(system_core_clock / 24000000) - 1;
98
99 /* tmr base configuration */
100 tmr_base_init(TMR4, 65535, prescaler_value);
101 tmr_cnt_dir_set(TMR4, TMR_COUNT_UP);
102 tmr_clock_source_div_set(TMR4, TMR_CLOCK_DIV1);
103
104 /* output compare toggle mode configuration: channel1 */
105 tmr_output_default_para_init(&tmr_oc_init_structure);
106 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
107 tmr_oc_init_structure.oc_idle_state = FALSE;
108 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
109 tmr_oc_init_structure.oc_output_state = TRUE;
110 tmr_output_channel_config(TMR4, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
111 tmr_channel_value_set(TMR4, TMR_SELECT_CHANNEL_1, 16383);
112
113 tmr_input_default_para_init(&tmr_ic_init_structure);
114 tmr_ic_init_structure.input_filter_value = 0;
115 tmr_ic_init_structure.input_channel_select = TMR_SELECT_CHANNEL_2;
116 tmr_ic_init_structure.input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
117 tmr_ic_init_structure.input_polarity_select = TMR_INPUT_RISING_EDGE;
118 tmr_input_channel_init(TMR4, &tmr_ic_init_structure, TMR_CHANNEL_INPUT_DIV_1);
119
120 /* one cycle mode selection */
121 tmr_one_cycle_mode_enable(TMR4, TRUE);
122
123 /* input trigger selection */
124 tmr_trigger_input_select(TMR4, TMR_SUB_INPUT_SEL_C2DF2);
125
126 /* slave mode selection: trigger mode */
127 tmr_sub_mode_select(TMR4, TMR_SUB_TRIGGER_MODE);
128
129 while(1)
130 {
131 }
132}
133
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/one_cycle/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/main.c:86
gpio_configuration
void gpio_configuration(void)
configure the tmr3 pins.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/main.c:48
tmr_ic_init_structure
tmr_input_config_type tmr_ic_init_structure
Definition: project/at_start_f403/examples/tmr/one_cycle/src/main.c:37
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/one_cycle/src/main.c:36
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/one_cycle/src/main.c:72
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_TMR4_PERIPH_CLOCK
@ CRM_TMR4_PERIPH_CLOCK
Definition: at32f403_crm.h:131
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_input_channel_init
void tmr_input_channel_init(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
init tmr input channel
Definition: at32f403_tmr.c:825
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_input_default_para_init
void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
init tmr input default para
Definition: at32f403_tmr.c:162
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_one_cycle_mode_enable
void tmr_one_cycle_mode_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr one cycle mode
Definition: at32f403_tmr.c:758
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_SUB_INPUT_SEL_C2DF2
@ TMR_SUB_INPUT_SEL_C2DF2
Definition: at32f403_tmr.h:137
TMR_SUB_TRIGGER_MODE
@ TMR_SUB_TRIGGER_MODE
Definition: at32f403_tmr.h:152
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR4
#define TMR4
Definition: at32f403_tmr.h:833
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_filter_value
uint8_t input_filter_value
Definition: at32f403_tmr.h:414
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • parallel_synchro
  • inc
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • parallel_synchro
  • inc
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • parallel_synchro
  • inc
project/at_start_f403/examples/tmr/parallel_synchro/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • parallel_synchro
  • src
project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • parallel_synchro
  • src
project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • parallel_synchro
  • src
project/at_start_f403/examples/tmr/parallel_synchro/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37
38void crm_configuration(void);
39void gpio_configuration(void);
40
46void gpio_configuration(void)
47{
48 gpio_init_type gpio_init_struct;
49
50 gpio_default_para_init(&gpio_init_struct);
51
52 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_0;
53 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
54 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
55 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
56 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
57 gpio_init(GPIOA, &gpio_init_struct);
58
59 gpio_init_struct.gpio_pins = GPIO_PINS_6;
60 gpio_init(GPIOB, &gpio_init_struct);
61
62}
63
69void crm_configuration(void)
70{
71 /* tmr3 clock enable */
72 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
73 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
74 crm_periph_clock_enable(CRM_TMR4_PERIPH_CLOCK, TRUE);
75
76 /* gpios clock enable */
77 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
78 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
79 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
80 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
81}
82
88int main(void)
89{
90 system_clock_config();
91
92 /* peripheral clocks configuration */
93 crm_configuration();
94
95 /* gpio configuration */
96 gpio_configuration();
97
98 /* tmr base configuration */
99 tmr_base_init(TMR2, 254, 0);
100 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
101 tmr_clock_source_div_set(TMR2, TMR_CLOCK_DIV1);
102 tmr_base_init(TMR3, 9, 0);
103 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
104 tmr_clock_source_div_set(TMR3, TMR_CLOCK_DIV1);
105 tmr_base_init(TMR4, 4, 0);
106 tmr_cnt_dir_set(TMR4, TMR_COUNT_UP);
107 tmr_clock_source_div_set(TMR4, TMR_CLOCK_DIV1);
108
109 /* output compare toggle mode configuration: channel1 */
110 tmr_output_default_para_init(&tmr_oc_init_structure);
111 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
112 tmr_oc_init_structure.oc_idle_state = FALSE;
113 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
114 tmr_oc_init_structure.oc_output_state = TRUE;
115 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
116 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, 51);
117
118 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
119 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_1, 3);
120
121 tmr_output_channel_config(TMR4, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
122 tmr_channel_value_set(TMR4, TMR_SELECT_CHANNEL_1, 3);
123
124 /* primary mode selection: TMR2 */
125 tmr_sub_sync_mode_set(TMR2, TRUE);
126 tmr_primary_mode_select(TMR2, TMR_PRIMARY_SEL_OVERFLOW);
127
128 /* subordinate mode selection: TMR3 */
129 tmr_sub_mode_select(TMR3, TMR_SUB_HANG_MODE);
130 tmr_trigger_input_select(TMR3, TMR_SUB_INPUT_SEL_IS1);
131
132 /* subordinate mode selection: TMR4 */
133 tmr_sub_mode_select(TMR4, TMR_SUB_HANG_MODE);
134 tmr_trigger_input_select(TMR4, TMR_SUB_INPUT_SEL_IS1);
135
136 /* tmr enable counter */
137 tmr_counter_enable(TMR2, TRUE);
138 tmr_counter_enable(TMR3, TRUE);
139 tmr_counter_enable(TMR4, TRUE);
140
141 while(1)
142 {
143 }
144}
145
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/main.c:88
gpio_configuration
void gpio_configuration(void)
configure the tmr3 pins.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/main.c:46
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/main.c:36
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/parallel_synchro/src/main.c:69
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
CRM_TMR4_PERIPH_CLOCK
@ CRM_TMR4_PERIPH_CLOCK
Definition: at32f403_crm.h:131
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_sub_sync_mode_set
void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode
Definition: at32f403_tmr.c:1278
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_SUB_INPUT_SEL_IS1
@ TMR_SUB_INPUT_SEL_IS1
Definition: at32f403_tmr.h:132
TMR_SUB_HANG_MODE
@ TMR_SUB_HANG_MODE
Definition: at32f403_tmr.h:151
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
TMR4
#define TMR4
Definition: at32f403_tmr.h:833
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • pwm_input
  • inc
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • pwm_input
  • inc
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • pwm_input
  • inc
project/at_start_f403/examples/tmr/pwm_input/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • pwm_input
  • src
project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • pwm_input
  • src
project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern uint16_t duty_cycle;
29extern uint32_t frequency;
30
39__IO uint16_t ic2value = 0;
40
46void NMI_Handler(void)
47{
48}
49
55void HardFault_Handler(void)
56{
57 /* go to infinite loop when hard fault exception occurs */
58 while(1)
59 {
60 }
61}
62
68void MemManage_Handler(void)
69{
70 /* go to infinite loop when memory manage exception occurs */
71 while(1)
72 {
73 }
74}
75
81void BusFault_Handler(void)
82{
83 /* go to infinite loop when bus fault exception occurs */
84 while(1)
85 {
86 }
87}
88
94void UsageFault_Handler(void)
95{
96 /* go to infinite loop when usage fault exception occurs */
97 while(1)
98 {
99 }
100}
101
107void SVC_Handler(void)
108{
109}
110
116void DebugMon_Handler(void)
117{
118}
119
125void PendSV_Handler(void)
126{
127}
128
134void SysTick_Handler(void)
135{
136}
137
143void TMR3_GLOBAL_IRQHandler(void)
144{
145 /* clear tmr3 channel interrupt pending bit */
146 tmr_flag_clear(TMR3, TMR_C2_FLAG);
147
148 /* get the input channel data value */
149 ic2value = tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_2);
150
151 if(ic2value != 0)
152 {
153 /* duty cycle computation */
154 duty_cycle = (tmr_channel_value_get(TMR3, TMR_SELECT_CHANNEL_1) * 100) / ic2value;
155
156 /* frequency computation */
157 frequency = system_core_clock / ic2value;
158 }
159 else
160 {
161 duty_cycle = 0;
162 frequency = 0;
163 }
164}
165
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:94
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:55
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:68
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:107
ic2value
__IO uint16_t ic2value
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:39
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:125
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:46
TMR3_GLOBAL_IRQHandler
void TMR3_GLOBAL_IRQHandler(void)
this function handles tmr3 global interrupt request.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:143
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:81
frequency
uint32_t frequency
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:40
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:134
duty_cycle
uint16_t duty_cycle
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:39
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/at32f403_int.c:116
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
tmr_channel_value_get
uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value
Definition: at32f403_tmr.c:565
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_C2_FLAG
#define TMR_C2_FLAG
Definition: at32f403_tmr.h:52
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • pwm_input
  • src
project/at_start_f403/examples/tmr/pwm_input/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "stdio.h"
28
37 tmr_input_config_type tmr_ic_init_structure;
38
39__IO uint16_t duty_cycle = 0;
40__IO uint32_t frequency = 0;
41
42void crm_configuration(void);
43void gpio_configuration(void);
44
50void gpio_configuration(void)
51{
52 gpio_init_type gpio_init_struct;
53
54 gpio_default_para_init(&gpio_init_struct);
55
56 gpio_init_struct.gpio_pins = GPIO_PINS_7;
57 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
58 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
59 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
60 gpio_init(GPIOA, &gpio_init_struct);
61}
62
68void crm_configuration(void)
69{
70 /* tmr3 clock enable */
71 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
72
73 /* gpioa clock enable */
74 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
75}
76
82int main(void)
83{
84 system_clock_config();
85
86 /* peripheral clocks configuration */
87 crm_configuration();
88
89 /* nvic configuration */
90 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
91 nvic_irq_enable(TMR3_GLOBAL_IRQn, 0, 0);
92
93 /* gpio configuration */
94 gpio_configuration();
95
96 uart_print_init(115200);
97
98 tmr_input_default_para_init(&tmr_ic_init_structure);
99 tmr_ic_init_structure.input_filter_value = 0;
100 tmr_ic_init_structure.input_channel_select = TMR_SELECT_CHANNEL_2;
101 tmr_ic_init_structure.input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
102 tmr_ic_init_structure.input_polarity_select = TMR_INPUT_RISING_EDGE;
103
104 tmr_pwm_input_config(TMR3, &tmr_ic_init_structure, TMR_CHANNEL_INPUT_DIV_1);
105
106 /* select the tmr3 input trigger: C2IF2 */
107 tmr_trigger_input_select(TMR3, TMR_SUB_INPUT_SEL_C2DF2);
108
109 /* select the sub mode: reset mode */
110 tmr_sub_mode_select(TMR3, TMR_SUB_RESET_MODE);
111
112 /* enable the sub sync mode */
113 tmr_sub_sync_mode_set(TMR3, TRUE);
114
115 /* tmr enable counter */
116 tmr_counter_enable(TMR3, TRUE);
117
118 /* enable the c2 interrupt request */
119 tmr_interrupt_enable(TMR3, TMR_C2_INT, TRUE);
120
121 while(1)
122 {
123 printf("Frequency = %dHZ,Dutycycle = %d%%\r\n", frequency, duty_cycle);
124 }
125}
126
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:82
gpio_configuration
void gpio_configuration(void)
configure the tmr3 pins.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:50
tmr_ic_init_structure
tmr_input_config_type tmr_ic_init_structure
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:37
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:68
frequency
__IO uint32_t frequency
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:40
duty_cycle
__IO uint16_t duty_cycle
Definition: project/at_start_f403/examples/tmr/pwm_input/src/main.c:39
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
TMR3_GLOBAL_IRQn
@ TMR3_GLOBAL_IRQn
Definition: at32f403.h:208
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_input_default_para_init
void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
init tmr input default para
Definition: at32f403_tmr.c:162
tmr_sub_sync_mode_set
void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode
Definition: at32f403_tmr.c:1278
tmr_pwm_input_config
void tmr_pwm_input_config(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input
Definition: at32f403_tmr.c:999
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_SUB_INPUT_SEL_C2DF2
@ TMR_SUB_INPUT_SEL_C2DF2
Definition: at32f403_tmr.h:137
TMR_SUB_RESET_MODE
@ TMR_SUB_RESET_MODE
Definition: at32f403_tmr.h:150
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR_C2_INT
#define TMR_C2_INT
Definition: at32f403_tmr.h:74
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_filter_value
uint8_t input_filter_value
Definition: at32f403_tmr.h:414
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • pwm_input_dma
  • inc
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • pwm_input_dma
  • inc
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • pwm_input_dma
  • inc
project/at_start_f403/examples/tmr/pwm_input_dma/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • pwm_input_dma
  • src
project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • pwm_input_dma
  • src
project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • pwm_input_dma
  • src
project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define TMR1_C1DT_ADDRESS 0x40012C34
37#define TMR1_C2DT_ADDRESS 0x40012C38
38
39#define SAMPLING_NUM 1000
40
41 tmr_input_config_type tmr_ic_init_structure;
42 dma_init_type dma_init_structure;
43
44__IO uint16_t buffer_cc1[1000];
45__IO uint16_t buffer_cc2[1000];
46
47__IO uint32_t frequency = 0;
48__IO float duty_cycle = 0;
49
50uint32_t freq_result;
51float duty_result;
52
53void crm_configuration(void);
54void gpio_configuration(void);
55
56void DMA1_Channel2_IRQHandler(void)
57{
58 uint16_t i;
59
60 dma_flag_clear(DMA1_FDT2_FLAG);
61
62 duty_result = 0;
63 freq_result = 0.0;
64
65 for(i = 0; i < SAMPLING_NUM; i++)
66 {
67 duty_result += ((buffer_cc2[i] * 100.0) / buffer_cc1[i]);
68 freq_result += (system_core_clock / buffer_cc1[i]);
69 }
70
71 duty_cycle = duty_result / SAMPLING_NUM;
72 frequency = freq_result / SAMPLING_NUM;
73 printf("\r\nFreq=%dHZ, Duty=%.2f%%\r\n", frequency, duty_cycle);
74}
75
81void gpio_configuration(void)
82{
83 gpio_init_type gpio_init_struct;
84
85 gpio_default_para_init(&gpio_init_struct);
86
87 gpio_init_struct.gpio_pins = GPIO_PINS_8;
88 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
89 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
90 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
91 gpio_init(GPIOA, &gpio_init_struct);
92}
93
99void crm_configuration(void)
100{
101 /* tmr1 clock enable */
102 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
103
104 /* gpioa clock enable */
105 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
106
107 /* dma clock enable */
108 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
109}
110
116int main(void)
117{
118 system_clock_config();
119
120 /* peripheral clocks configuration */
121 crm_configuration();
122
123 /* nvic configuration */
124 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
125 nvic_irq_enable(DMA1_Channel2_IRQn, 0, 0);
126
127 /* gpio configuration */
128 gpio_configuration();
129
130 uart_print_init(115200);
131
132 dma_reset(DMA1_CHANNEL2);
133 dma_default_para_init(&dma_init_structure);
134 dma_init_structure.peripheral_base_addr = (uint32_t)TMR1_C1DT_ADDRESS;
135 dma_init_structure.memory_base_addr = (uint32_t)buffer_cc1;
136 dma_init_structure.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
137 dma_init_structure.buffer_size = SAMPLING_NUM;
138 dma_init_structure.peripheral_inc_enable = FALSE;
139 dma_init_structure.memory_inc_enable = TRUE;
140 dma_init_structure.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_HALFWORD;
141 dma_init_structure.memory_data_width = DMA_MEMORY_DATA_WIDTH_HALFWORD;
142 dma_init_structure.loop_mode_enable = TRUE;
143 dma_init_structure.priority = DMA_PRIORITY_HIGH;
144 dma_init(DMA1_CHANNEL2, &dma_init_structure);
145
146 dma_reset(DMA1_CHANNEL3);
147 dma_init_structure.peripheral_base_addr = (uint32_t)TMR1_C2DT_ADDRESS;
148 dma_init_structure.memory_base_addr = (uint32_t)buffer_cc2;
149 dma_init(DMA1_CHANNEL3, &dma_init_structure);
150
151 dma_interrupt_enable(DMA1_CHANNEL2, DMA_FDT_INT, TRUE);
152
153 dma_channel_enable(DMA1_CHANNEL2, TRUE);
154 dma_channel_enable(DMA1_CHANNEL3, TRUE);
155
156 tmr_input_default_para_init(&tmr_ic_init_structure);
157 tmr_ic_init_structure.input_filter_value = 0;
158 tmr_ic_init_structure.input_channel_select = TMR_SELECT_CHANNEL_1;
159 tmr_ic_init_structure.input_mapped_select = TMR_CC_CHANNEL_MAPPED_DIRECT;
160 tmr_ic_init_structure.input_polarity_select = TMR_INPUT_RISING_EDGE;
161
162 tmr_pwm_input_config(TMR1, &tmr_ic_init_structure, TMR_CHANNEL_INPUT_DIV_1);
163
164 /* select the TMR1 input trigger: C2IF2 */
165 tmr_trigger_input_select(TMR1, TMR_SUB_INPUT_SEL_C1DF1);
166
167 /* select the sub mode: reset mode */
168 tmr_sub_mode_select(TMR1, TMR_SUB_RESET_MODE);
169
170 /* enable the sub sync mode */
171 tmr_sub_sync_mode_set(TMR1, TRUE);
172
173 /* enable the c1/c2 dma */
174 tmr_dma_request_enable(TMR1, TMR_C1_DMA_REQUEST, TRUE);
175 tmr_dma_request_enable(TMR1, TMR_C2_DMA_REQUEST, TRUE);
176
177 /* tmr enable counter */
178 tmr_counter_enable(TMR1, TRUE);
179
180 while(1)
181 {
182 }
183}
184
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
duty_cycle
__IO float duty_cycle
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:48
DMA1_Channel2_IRQHandler
void DMA1_Channel2_IRQHandler(void)
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:56
dma_init_structure
dma_init_type dma_init_structure
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:42
freq_result
uint32_t freq_result
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:50
duty_result
float duty_result
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:51
TMR1_C1DT_ADDRESS
#define TMR1_C1DT_ADDRESS
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:36
buffer_cc1
__IO uint16_t buffer_cc1[1000]
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:44
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:116
gpio_configuration
void gpio_configuration(void)
configure the tmr1 pins.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:81
SAMPLING_NUM
#define SAMPLING_NUM
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:39
tmr_ic_init_structure
tmr_input_config_type tmr_ic_init_structure
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:41
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:99
frequency
__IO uint32_t frequency
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:47
buffer_cc2
__IO uint16_t buffer_cc2[1000]
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:45
TMR1_C2DT_ADDRESS
#define TMR1_C2DT_ADDRESS
Definition: project/at_start_f403/examples/tmr/pwm_input_dma/src/main.c:37
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
DMA1_Channel2_IRQn
@ DMA1_Channel2_IRQn
Definition: at32f403.h:190
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
@ DMA_PERIPHERAL_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:155
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_HALFWORD
@ DMA_MEMORY_DATA_WIDTH_HALFWORD
Definition: at32f403_dma.h:165
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA1_FDT2_FLAG
#define DMA1_FDT2_FLAG
Definition: at32f403_dma.h:68
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL2
#define DMA1_CHANNEL2
Definition: at32f403_dma.h:356
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_dma_request_enable
void tmr_dma_request_enable(tmr_type *tmr_x, tmr_dma_request_type dma_request, confirm_state new_state)
enable or disable tmr dma request
Definition: at32f403_tmr.c:1301
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_input_default_para_init
void tmr_input_default_para_init(tmr_input_config_type *tmr_input_struct)
init tmr input default para
Definition: at32f403_tmr.c:162
tmr_sub_sync_mode_set
void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode
Definition: at32f403_tmr.c:1278
tmr_pwm_input_config
void tmr_pwm_input_config(tmr_type *tmr_x, tmr_input_config_type *input_struct, tmr_channel_input_divider_type divider_factor)
config tmr pwm input
Definition: at32f403_tmr.c:999
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
TMR_C1_DMA_REQUEST
@ TMR_C1_DMA_REQUEST
Definition: at32f403_tmr.h:268
TMR_C2_DMA_REQUEST
@ TMR_C2_DMA_REQUEST
Definition: at32f403_tmr.h:269
TMR_INPUT_RISING_EDGE
@ TMR_INPUT_RISING_EDGE
Definition: at32f403_tmr.h:204
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CC_CHANNEL_MAPPED_DIRECT
@ TMR_CC_CHANNEL_MAPPED_DIRECT
Definition: at32f403_tmr.h:237
TMR_SUB_INPUT_SEL_C1DF1
@ TMR_SUB_INPUT_SEL_C1DF1
Definition: at32f403_tmr.h:136
TMR_SUB_RESET_MODE
@ TMR_SUB_RESET_MODE
Definition: at32f403_tmr.h:150
TMR_CHANNEL_INPUT_DIV_1
@ TMR_CHANNEL_INPUT_DIV_1
Definition: at32f403_tmr.h:247
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_input_config_type
tmr input capture config type
Definition: at32f403_tmr.h:410
tmr_input_config_type::input_mapped_select
tmr_input_direction_mapped_type input_mapped_select
Definition: at32f403_tmr.h:413
tmr_input_config_type::input_filter_value
uint8_t input_filter_value
Definition: at32f403_tmr.h:414
tmr_input_config_type::input_polarity_select
tmr_input_polarity_type input_polarity_select
Definition: at32f403_tmr.h:412
tmr_input_config_type::input_channel_select
tmr_channel_select_type input_channel_select
Definition: at32f403_tmr.h:411
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • pwm_output_simulate
  • inc
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • pwm_output_simulate
  • inc
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • pwm_output_simulate
  • inc
project/at_start_f403/examples/tmr/pwm_output_simulate/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • pwm_output_simulate
  • src
project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • pwm_output_simulate
  • src
project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern __IO uint16_t ccr1_val;
29extern __IO uint16_t ccr2_val;
30extern __IO uint16_t ccr3_val;
31extern __IO uint16_t ccr4_val;
32
41uint16_t capture = 0;
42
48void NMI_Handler(void)
49{
50}
51
57void HardFault_Handler(void)
58{
59 /* go to infinite loop when hard fault exception occurs */
60 while(1)
61 {
62 }
63}
64
70void MemManage_Handler(void)
71{
72 /* go to infinite loop when memory manage exception occurs */
73 while(1)
74 {
75 }
76}
77
83void BusFault_Handler(void)
84{
85 /* go to infinite loop when bus fault exception occurs */
86 while(1)
87 {
88 }
89}
90
96void UsageFault_Handler(void)
97{
98 /* go to infinite loop when usage fault exception occurs */
99 while(1)
100 {
101 }
102}
103
109void SVC_Handler(void)
110{
111}
112
118void DebugMon_Handler(void)
119{
120}
121
127void PendSV_Handler(void)
128{
129}
130
136void SysTick_Handler(void)
137{
138}
139
140void TMR2_GLOBAL_IRQHandler(void)
141{
142 if(tmr_flag_get(TMR2, TMR_C1_FLAG) != RESET)
143 {
144 tmr_flag_clear(TMR2, TMR_C1_FLAG );
145
146 /* Pin PC.06 toggling with frequency = 73.24 Hz */
147 gpio_bits_write(GPIOC, GPIO_PINS_6, (confirm_state)(1 - gpio_output_data_bit_read(GPIOC, GPIO_PINS_6)));
148 capture = tmr_channel_value_get(TMR2, TMR_SELECT_CHANNEL_1);
149 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, capture + ccr1_val);
150 }
151 else if(tmr_flag_get(TMR2, TMR_C2_FLAG) != RESET)
152 {
153 tmr_flag_clear(TMR2, TMR_C2_FLAG);
154
155 /* Pin PC.06 toggling with frequency = 73.24 Hz */
156 gpio_bits_write(GPIOC, GPIO_PINS_7, (confirm_state)(1 - gpio_output_data_bit_read(GPIOC, GPIO_PINS_7)));
157 capture = tmr_channel_value_get(TMR2, TMR_SELECT_CHANNEL_2);
158 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_2, capture + ccr2_val);
159 }
160 else if(tmr_flag_get(TMR2, TMR_C3_FLAG) != RESET)
161 {
162 tmr_flag_clear(TMR2, TMR_C3_FLAG);
163
164 /* Pin PC.06 toggling with frequency = 73.24 Hz */
165 gpio_bits_write(GPIOC, GPIO_PINS_8, (confirm_state)(1 - gpio_output_data_bit_read(GPIOC, GPIO_PINS_8)));
166 capture = tmr_channel_value_get(TMR2, TMR_SELECT_CHANNEL_3);
167 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_3, capture + ccr3_val);
168 }
169 else
170 {
171 tmr_flag_clear(TMR2, TMR_C4_FLAG);
172
173 /* Pin PC.06 toggling with frequency = 73.24 Hz */
174 gpio_bits_write(GPIOC, GPIO_PINS_9, (confirm_state)(1 - gpio_output_data_bit_read(GPIOC, GPIO_PINS_9)));
175 capture = tmr_channel_value_get(TMR2, TMR_SELECT_CHANNEL_4);
176 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_4, capture + ccr4_val);
177 }
178}
179
ccr1_val
__IO uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:38
ccr2_val
__IO uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:39
ccr4_val
__IO uint16_t ccr4_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:41
ccr3_val
__IO uint16_t ccr3_val
Definition: project/at_start_f403/examples/tmr/oc_high/src/main.c:40
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:96
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:57
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:70
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:109
TMR2_GLOBAL_IRQHandler
void TMR2_GLOBAL_IRQHandler(void)
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:140
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:127
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:48
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:83
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:136
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:118
capture
uint16_t capture
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/at32f403_int.c:41
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_output_data_bit_read
flag_status gpio_output_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified output port pin.
Definition: at32f403_gpio.c:264
gpio_bits_write
void gpio_bits_write(gpio_type *gpio_x, uint16_t pins, confirm_state bit_state)
set or clear the selected data port bit.
Definition: at32f403_gpio.c:381
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
tmr_channel_value_get
uint32_t tmr_channel_value_get(tmr_type *tmr_x, tmr_channel_select_type tmr_channel)
get tmr channel value
Definition: at32f403_tmr.c:565
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_C1_FLAG
#define TMR_C1_FLAG
Definition: at32f403_tmr.h:51
TMR_C2_FLAG
#define TMR_C2_FLAG
Definition: at32f403_tmr.h:52
TMR_C3_FLAG
#define TMR_C3_FLAG
Definition: at32f403_tmr.h:53
TMR_C4_FLAG
#define TMR_C4_FLAG
Definition: at32f403_tmr.h:54
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • pwm_output_simulate
  • src
project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37
38uint16_t ccr1_val = 40961;
39uint16_t ccr2_val = 27309;
40uint16_t ccr3_val = 13654;
41uint16_t ccr4_val = 6826;
42uint16_t prescaler_value = 0;
43
44void crm_configuration(void);
45void gpio_configuration(void);
46
52void gpio_configuration(void)
53{
54 gpio_init_type gpio_init_struct;
55
56 gpio_default_para_init(&gpio_init_struct);
57
58 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9;
59 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
60 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
61 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
62 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
63 gpio_init(GPIOC, &gpio_init_struct);
64}
65
71void crm_configuration(void)
72{
73 /* tmr2 clock enable */
74 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
75
76 /* gpioa gpiob clock enable */
77 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
78}
79
85int main(void)
86{
87 /* config nvic priority group */
88 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
89
90 system_clock_config();
91
92 /* peripheral clocks configuration */
93 crm_configuration();
94
95 /* nvic Configuration */
96 nvic_irq_enable(TMR2_GLOBAL_IRQn, 0, 0);
97
98 /* gpio configuration */
99 gpio_configuration();
100
101 /* compute the prescaler value */
102 prescaler_value = (uint16_t)(system_core_clock / 12000000) - 1;
103
104 /* tmr2 time base configuration */
105 tmr_base_init(TMR2, 65535, prescaler_value);
106 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
107 tmr_clock_source_div_set(TMR2, TMR_CLOCK_DIV1);
108
109 tmr_output_default_para_init(&tmr_oc_init_structure);
110 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_OFF;
111 tmr_oc_init_structure.oc_idle_state = FALSE;
112 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
113 tmr_oc_init_structure.oc_output_state = TRUE;
114 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
115 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, ccr1_val);
116
117 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_2, &tmr_oc_init_structure);
118 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_2, ccr2_val);
119
120 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_3, &tmr_oc_init_structure);
121 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_3, ccr3_val);
122
123 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_4, &tmr_oc_init_structure);
124 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_4, ccr4_val);
125
126 /* tmr2 int enable */
127 tmr_interrupt_enable(TMR2, TMR_C1_INT | TMR_C2_INT | TMR_C3_INT | TMR_C4_INT, TRUE);
128
129 /* tmr enable counter */
130 tmr_counter_enable(TMR2, TRUE);
131
132 while(1)
133 {
134 }
135}
136
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:42
ccr1_val
uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:38
ccr2_val
uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:39
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:85
gpio_configuration
void gpio_configuration(void)
configure the tmr1 pins.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:52
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:36
ccr4_val
uint16_t ccr4_val
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:41
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:71
ccr3_val
uint16_t ccr3_val
Definition: project/at_start_f403/examples/tmr/pwm_output_simulate/src/main.c:40
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
TMR2_GLOBAL_IRQn
@ TMR2_GLOBAL_IRQn
Definition: at32f403.h:207
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_OFF
@ TMR_OUTPUT_CONTROL_OFF
Definition: at32f403_tmr.h:171
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_C3_INT
#define TMR_C3_INT
Definition: at32f403_tmr.h:75
TMR_C4_INT
#define TMR_C4_INT
Definition: at32f403_tmr.h:76
TMR_C1_INT
#define TMR_C1_INT
Definition: at32f403_tmr.h:73
TMR_C2_INT
#define TMR_C2_INT
Definition: at32f403_tmr.h:74
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • pwm_output_tmr3
  • inc
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • pwm_output_tmr3
  • inc
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • pwm_output_tmr3
  • inc
project/at_start_f403/examples/tmr/pwm_output_tmr3/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • pwm_output_tmr3
  • src
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • pwm_output_tmr3
  • src
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • pwm_output_tmr3
  • src
project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37
38uint16_t ccr1_val = 333;
39uint16_t ccr2_val = 249;
40uint16_t ccr3_val = 166;
41uint16_t ccr4_val = 83;
42uint16_t prescaler_value = 0;
43
44void crm_configuration(void);
45void gpio_configuration(void);
46
52void gpio_configuration(void)
53{
54 gpio_init_type gpio_init_struct;
55
56 gpio_default_para_init(&gpio_init_struct);
57
58 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_7;
59 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
60 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
61 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
62 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
63 gpio_init(GPIOA, &gpio_init_struct);
64
65 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
66 gpio_init(GPIOB, &gpio_init_struct);
67}
68
74void crm_configuration(void)
75{
76 /* tmr3 clock enable */
77 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
78
79 /* gpioa gpiob clock enable */
80 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
81 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
82}
83
89int main(void)
90{
91 system_clock_config();
92
93 /* peripheral clocks configuration */
94 crm_configuration();
95
96 /* gpio configuration */
97 gpio_configuration();
98
99 /* compute the prescaler value */
100 prescaler_value = (uint16_t)(system_core_clock / 24000000) - 1;
101
102 /* tmr3 time base configuration */
103 tmr_base_init(TMR3, 665, prescaler_value);
104 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
105 tmr_clock_source_div_set(TMR3, TMR_CLOCK_DIV1);
106
107 tmr_output_default_para_init(&tmr_oc_init_structure);
108 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
109 tmr_oc_init_structure.oc_idle_state = FALSE;
110 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
111 tmr_oc_init_structure.oc_output_state = TRUE;
112 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
113 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_1, ccr1_val);
114 tmr_output_channel_buffer_enable(TMR3, TMR_SELECT_CHANNEL_1, TRUE);
115
116 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_2, &tmr_oc_init_structure);
117 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_2, ccr2_val);
118 tmr_output_channel_buffer_enable(TMR3, TMR_SELECT_CHANNEL_2, TRUE);
119
120 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_3, &tmr_oc_init_structure);
121 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_3, ccr3_val);
122 tmr_output_channel_buffer_enable(TMR3, TMR_SELECT_CHANNEL_3, TRUE);
123
124 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_4, &tmr_oc_init_structure);
125 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_4, ccr4_val);
126 tmr_output_channel_buffer_enable(TMR3, TMR_SELECT_CHANNEL_4, TRUE);
127
128 tmr_period_buffer_enable(TMR3, TRUE);
129
130 /* tmr enable counter */
131 tmr_counter_enable(TMR3, TRUE);
132
133 while(1)
134 {
135 }
136}
137
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:42
ccr1_val
uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:38
ccr2_val
uint16_t ccr2_val
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:39
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:89
gpio_configuration
void gpio_configuration(void)
configure the tmr1 pins.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:52
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:36
ccr4_val
uint16_t ccr4_val
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:41
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:74
ccr3_val
uint16_t ccr3_val
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr3/src/main.c:40
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_period_buffer_enable
void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer
Definition: at32f403_tmr.c:606
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_output_channel_buffer_enable
void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer
Definition: at32f403_tmr.c:627
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • pwm_output_tmr10
  • inc
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • pwm_output_tmr10
  • inc
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • pwm_output_tmr10
  • inc
project/at_start_f403/examples/tmr/pwm_output_tmr10/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • pwm_output_tmr10
  • src
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • pwm_output_tmr10
  • src
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • pwm_output_tmr10
  • src
project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37
38uint16_t ccr1_val = 249;
39uint16_t prescaler_value = 0;
40
41void crm_configuration(void);
42void gpio_configuration(void);
43
49void gpio_configuration(void)
50{
51 gpio_init_type gpio_init_struct;
52
53 gpio_default_para_init(&gpio_init_struct);
54
55 gpio_init_struct.gpio_pins = GPIO_PINS_8;
56 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
57 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
58 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
59 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
60 gpio_init(GPIOB, &gpio_init_struct);
61}
62
68void crm_configuration(void)
69{
70 /* tmr10 clock enable */
71 crm_periph_clock_enable(CRM_TMR10_PERIPH_CLOCK, TRUE);
72
73 /* gpioa gpiob clock enable */
74 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
75}
76
82int main(void)
83{
84 system_clock_config();
85
86 /* peripheral clocks configuration */
87 crm_configuration();
88
89 /* gpio configuration */
90 gpio_configuration();
91
92 /* compute the prescaler value */
93 prescaler_value = (uint16_t)(system_core_clock / 24000000) - 1;
94
95 /* tmr10 time base configuration */
96 tmr_base_init(TMR10, 665, prescaler_value);
97 tmr_cnt_dir_set(TMR10, TMR_COUNT_UP);
98 tmr_clock_source_div_set(TMR10, TMR_CLOCK_DIV1);
99
100 tmr_output_default_para_init(&tmr_oc_init_structure);
101 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
102 tmr_oc_init_structure.oc_idle_state = FALSE;
103 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
104 tmr_oc_init_structure.oc_output_state = TRUE;
105 tmr_output_channel_config(TMR10, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
106 tmr_channel_value_set(TMR10, TMR_SELECT_CHANNEL_1, ccr1_val);
107 tmr_output_channel_buffer_enable(TMR10, TMR_SELECT_CHANNEL_1, TRUE);
108
109 tmr_period_buffer_enable(TMR10, TRUE);
110
111 /* tmr enable counter */
112 tmr_counter_enable(TMR10, TRUE);
113
114 while(1)
115 {
116 }
117}
118
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
prescaler_value
uint16_t prescaler_value
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c:39
ccr1_val
uint16_t ccr1_val
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c:82
gpio_configuration
void gpio_configuration(void)
configure the tmr1 pins.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c:49
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c:36
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/pwm_output_tmr10/src/main.c:68
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_TMR10_PERIPH_CLOCK
@ CRM_TMR10_PERIPH_CLOCK
Definition: at32f403_crm.h:126
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
tmr_period_buffer_enable
void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer
Definition: at32f403_tmr.c:606
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_output_channel_buffer_enable
void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer
Definition: at32f403_tmr.c:627
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR10
#define TMR10
Definition: at32f403_tmr.h:839
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • timer_base
  • inc
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • timer_base
  • inc
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • timer_base
  • inc
project/at_start_f403/examples/tmr/timer_base/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • timer_base
  • src
project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • timer_base
  • src
project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/timer_base/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • timer_base
  • src
project/at_start_f403/examples/tmr/timer_base/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 crm_clocks_freq_type crm_clocks_freq_struct = {0};
37
38void clkout_config(void)
39{
40 gpio_init_type gpio_init_struct;
41
42 /* enable gpio port clock */
43 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
44
45 /* set default parameter */
46 gpio_default_para_init(&gpio_init_struct);
47
48 /* clkout gpio init */
49 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
50 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
51 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
52 gpio_init_struct.gpio_pins = GPIO_PINS_8;
53 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
54 gpio_init(GPIOA, &gpio_init_struct);
55
56 /* config clkout clock */
57 crm_clock_out_set(CRM_CLKOUT_PLL_DIV_4);
58}
59
65void TMR1_OVF_TMR10_IRQHandler(void)
66{
67 if(tmr_flag_get(TMR1, TMR_OVF_FLAG) != RESET)
68 {
69 /* add user code... */
70 at32_led_toggle(LED3);
71 tmr_flag_clear(TMR1, TMR_OVF_FLAG);
72 }
73}
74
80int main(void)
81{
82 system_clock_config();
83
84 at32_board_init();
85
86 /* get system clock */
87 crm_clocks_freq_get(&crm_clocks_freq_struct);
88
89 /* turn led2/led3/led4 on */
90 at32_led_on(LED2);
91 at32_led_on(LED3);
92 at32_led_on(LED4);
93
94 /* enable tmr1 clock */
95 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
96
97 /* tmr1 configuration */
98 /* time base configuration */
99 /* systemclock/19200/10000 = 1hz */
100 tmr_base_init(TMR1, 9999, (crm_clocks_freq_struct.ahb_freq / 10000) - 1);
101 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
102
103 /* overflow interrupt enable */
104 tmr_interrupt_enable(TMR1, TMR_OVF_INT, TRUE);
105
106 /* tmr1 overflow interrupt nvic init */
107 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
108 nvic_irq_enable(TMR1_OVF_TMR10_IRQn, 0, 0);
109
110 /* enable tmr1 */
111 tmr_counter_enable(TMR1, TRUE);
112 clkout_config();
113
114 while(1)
115 {
116 }
117}
118
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
clkout_config
void clkout_config(void)
Definition: project/at_start_f403/examples/tmr/timer_base/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/timer_base/src/main.c:80
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/timer_base/src/main.c:36
TMR1_OVF_TMR10_IRQHandler
void TMR1_OVF_TMR10_IRQHandler(void)
this function handles timer1 overflow handler.
Definition: project/at_start_f403/examples/tmr/timer_base/src/main.c:65
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_clock_out_set
void crm_clock_out_set(crm_clkout_select_type clkout)
set crm clkout
Definition: at32f403_crm.c:750
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
CRM_CLKOUT_PLL_DIV_4
@ CRM_CLKOUT_PLL_DIV_4
Definition: at32f403_crm.h:423
TMR1_OVF_TMR10_IRQn
@ TMR1_OVF_TMR10_IRQn
Definition: at32f403.h:204
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_flag_get
flag_status tmr_flag_get(tmr_type *tmr_x, uint32_t tmr_flag)
get tmr flag
Definition: at32f403_tmr.c:1400
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_OVF_FLAG
#define TMR_OVF_FLAG
Definition: at32f403_tmr.h:50
TMR_OVF_INT
#define TMR_OVF_INT
Definition: at32f403_tmr.h:72
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::ahb_freq
uint32_t ahb_freq
Definition: at32f403_crm.h:452
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • tmr1_synchro
  • inc
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • tmr1_synchro
  • inc
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • tmr1_synchro
  • inc
project/at_start_f403/examples/tmr/tmr1_synchro/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • tmr1_synchro
  • src
project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • tmr1_synchro
  • src
project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • tmr1_synchro
  • src
project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37
38void crm_configuration(void);
39void gpio_configuration(void);
40
46void gpio_configuration(void)
47{
48 gpio_init_type gpio_init_struct;
49
50 gpio_default_para_init(&gpio_init_struct);
51
52 gpio_init_struct.gpio_pins = GPIO_PINS_6 | GPIO_PINS_8;
53 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
54 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
55 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
56 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
57 gpio_init(GPIOA, &gpio_init_struct);
58
59 gpio_init_struct.gpio_pins = GPIO_PINS_6;
60 gpio_init(GPIOB, &gpio_init_struct);
61}
62
68void crm_configuration(void)
69{
70 /* tmr clock enable */
71 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
72 crm_periph_clock_enable(CRM_TMR3_PERIPH_CLOCK, TRUE);
73 crm_periph_clock_enable(CRM_TMR4_PERIPH_CLOCK, TRUE);
74
75 /* gpio clock enable */
76 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
77 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
78}
79
85int main(void)
86{
87 system_clock_config();
88
89 /* peripheral clocks configuration */
90 crm_configuration();
91
92 /* gpio configuration */
93 gpio_configuration();
94
95 /* tmr3 time base configuration */
96 tmr_base_init(TMR3, 2, 0);
97 tmr_cnt_dir_set(TMR3, TMR_COUNT_UP);
98 tmr_clock_source_div_set(TMR3, TMR_CLOCK_DIV1);
99
100 tmr_output_default_para_init(&tmr_oc_init_structure);
101 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
102 tmr_oc_init_structure.oc_idle_state = FALSE;
103 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
104 tmr_oc_init_structure.oc_output_state = TRUE;
105 tmr_output_channel_config(TMR3, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
106 tmr_channel_value_set(TMR3, TMR_SELECT_CHANNEL_1, 1);
107
108 /* input trigger selection */
109 tmr_trigger_input_select(TMR3, TMR_SUB_INPUT_SEL_IS0);
110
111 /* slave mode selection: hang mode */
112 tmr_sub_mode_select(TMR3, TMR_SUB_HANG_MODE);
113
114 /* tmr4 time base configuration */
115 tmr_base_init(TMR4, 1, 0);
116 tmr_cnt_dir_set(TMR4, TMR_COUNT_UP);
117 tmr_clock_source_div_set(TMR4, TMR_CLOCK_DIV1);
118
119 tmr_output_default_para_init(&tmr_oc_init_structure);
120 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
121 tmr_oc_init_structure.oc_idle_state = FALSE;
122 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
123 tmr_oc_init_structure.oc_output_state = TRUE;
124 tmr_output_channel_config(TMR4, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
125 tmr_channel_value_set(TMR4, TMR_SELECT_CHANNEL_1, 1);
126
127 /* input trigger selection */
128 tmr_trigger_input_select(TMR4, TMR_SUB_INPUT_SEL_IS0);
129
130 /* slave mode selection: hang mode */
131 tmr_sub_mode_select(TMR4, TMR_SUB_HANG_MODE);
132
133 /* tmr1 time base configuration */
134 tmr_repetition_counter_set(TMR1, 4);
135 tmr_base_init(TMR1, 255, 0);
136 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
137 tmr_clock_source_div_set(TMR1, TMR_CLOCK_DIV1);
138
139 tmr_output_default_para_init(&tmr_oc_init_structure);
140 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
141 tmr_oc_init_structure.oc_idle_state = TRUE;
142 tmr_oc_init_structure.occ_idle_state = FALSE;
143 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
144 tmr_oc_init_structure.occ_polarity = TMR_OUTPUT_ACTIVE_LOW;
145 tmr_oc_init_structure.oc_output_state = TRUE;
146 tmr_oc_init_structure.occ_output_state = TRUE;
147 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
148 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 128);
149
150 tmr_primary_mode_select(TMR1, TMR_PRIMARY_SEL_OVERFLOW);
151 tmr_sub_sync_mode_set(TMR1, TRUE);
152
153 tmr_output_enable(TMR1, TRUE);
154
155 /* tmr enable counter */
156 tmr_counter_enable(TMR1, TRUE);
157 tmr_counter_enable(TMR3, TRUE);
158 tmr_counter_enable(TMR4, TRUE);
159
160 while(1)
161 {
162 }
163}
164
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c:85
gpio_configuration
void gpio_configuration(void)
configure the tmr1 pins.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c:46
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c:36
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/tmr1_synchro/src/main.c:68
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR4_PERIPH_CLOCK
@ CRM_TMR4_PERIPH_CLOCK
Definition: at32f403_crm.h:131
CRM_TMR3_PERIPH_CLOCK
@ CRM_TMR3_PERIPH_CLOCK
Definition: at32f403_crm.h:130
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_repetition_counter_set
void tmr_repetition_counter_set(tmr_type *tmr_x, uint8_t tmr_rpr_value)
set the repetition counter register(rpr) value
Definition: at32f403_tmr.c:258
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_sub_mode_select
void tmr_sub_mode_select(tmr_type *tmr_x, tmr_sub_mode_select_type sub_mode)
select tmr subordinate mode
Definition: at32f403_tmr.c:1201
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_sub_sync_mode_set
void tmr_sub_sync_mode_set(tmr_type *tmr_x, confirm_state new_state)
set tmr subordinate synchronization mode
Definition: at32f403_tmr.c:1278
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_trigger_input_select
void tmr_trigger_input_select(tmr_type *tmr_x, sub_tmr_input_sel_type trigger_select)
select tmr sub-trigger
Definition: at32f403_tmr.c:1265
tmr_primary_mode_select
void tmr_primary_mode_select(tmr_type *tmr_x, tmr_primary_select_type primary_mode)
select tmr primary mode
Definition: at32f403_tmr.c:1179
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR_SUB_INPUT_SEL_IS0
@ TMR_SUB_INPUT_SEL_IS0
Definition: at32f403_tmr.h:131
TMR_SUB_HANG_MODE
@ TMR_SUB_HANG_MODE
Definition: at32f403_tmr.h:151
TMR_PRIMARY_SEL_OVERFLOW
@ TMR_PRIMARY_SEL_OVERFLOW
Definition: at32f403_tmr.h:118
TMR3
#define TMR3
Definition: at32f403_tmr.h:832
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
TMR4
#define TMR4
Definition: at32f403_tmr.h:833
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • tmr2_32bit
  • inc
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • tmr2_32bit
  • inc
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • tmr2_32bit
  • inc
project/at_start_f403/examples/tmr/tmr2_32bit/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • tmr2_32bit
  • src
project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • tmr2_32bit
  • src
project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • tmr2_32bit
  • src
project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 tmr_output_config_type tmr_oc_init_structure;
37
38uint32_t ccr1_val = 0x7FFFF;
39uint32_t ccr2_val = 0x3FFFF;
40uint32_t ccr3_val = 0x1FFFF;
41uint32_t ccr4_val = 0xFFFF;
42
43void crm_configuration(void);
44void gpio_configuration(void);
45
51void gpio_configuration(void)
52{
53 gpio_init_type gpio_init_struct;
54
55 gpio_default_para_init(&gpio_init_struct);
56
57 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_2 | GPIO_PINS_3;
58 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
59 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
60 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
61 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
62 gpio_init(GPIOA, &gpio_init_struct);
63}
64
70void crm_configuration(void)
71{
72 /* tmr clock enable */
73 crm_periph_clock_enable(CRM_TMR2_PERIPH_CLOCK, TRUE);
74
75 /* gpio clock enable */
76 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
77}
78
84int main(void)
85{
86 system_clock_config();
87
88 /* peripheral clocks configuration */
89 crm_configuration();
90
91 /* gpio configuration */
92 gpio_configuration();
93
94 tmr_32_bit_function_enable(TMR2, TRUE);
95
96 /* tmr2 time base configuration */
97 tmr_base_init(TMR2, 0xFFFFF, 0);
98 tmr_cnt_dir_set(TMR2, TMR_COUNT_UP);
99 tmr_clock_source_div_set(TMR2, TMR_CLOCK_DIV1);
100
101 tmr_output_default_para_init(&tmr_oc_init_structure);
102 tmr_oc_init_structure.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_A;
103 tmr_oc_init_structure.oc_idle_state = FALSE;
104 tmr_oc_init_structure.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
105 tmr_oc_init_structure.oc_output_state = TRUE;
106 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_1, &tmr_oc_init_structure);
107 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_1, ccr1_val);
108 tmr_output_channel_buffer_enable(TMR2, TMR_SELECT_CHANNEL_1, TRUE);
109
110 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_2, &tmr_oc_init_structure);
111 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_2, ccr2_val);
112 tmr_output_channel_buffer_enable(TMR2, TMR_SELECT_CHANNEL_2, TRUE);
113
114 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_3, &tmr_oc_init_structure);
115 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_3, ccr3_val);
116 tmr_output_channel_buffer_enable(TMR2, TMR_SELECT_CHANNEL_3, TRUE);
117
118 tmr_output_channel_config(TMR2, TMR_SELECT_CHANNEL_4, &tmr_oc_init_structure);
119 tmr_channel_value_set(TMR2, TMR_SELECT_CHANNEL_4, ccr4_val);
120 tmr_output_channel_buffer_enable(TMR2, TMR_SELECT_CHANNEL_4, TRUE);
121
122 tmr_period_buffer_enable(TMR2, TRUE);
123
124 /* tmr2 enable counter */
125 tmr_counter_enable(TMR2, TRUE);
126
127 while(1)
128 {
129 }
130}
131
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
ccr2_val
uint32_t ccr2_val
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:39
ccr4_val
uint32_t ccr4_val
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:41
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:84
gpio_configuration
void gpio_configuration(void)
configure the tmr1 pins.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:51
tmr_oc_init_structure
tmr_output_config_type tmr_oc_init_structure
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:36
crm_configuration
void crm_configuration(void)
configures the different peripheral clocks.
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:70
ccr1_val
uint32_t ccr1_val
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:38
ccr3_val
uint32_t ccr3_val
Definition: project/at_start_f403/examples/tmr/tmr2_32bit/src/main.c:40
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_TMR2_PERIPH_CLOCK
@ CRM_TMR2_PERIPH_CLOCK
Definition: at32f403_crm.h:129
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_period_buffer_enable
void tmr_period_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr period buffer
Definition: at32f403_tmr.c:606
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_clock_source_div_set
void tmr_clock_source_div_set(tmr_type *tmr_x, tmr_clock_division_type tmr_clock_div)
set tmr clock source division
Definition: at32f403_tmr.c:223
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_32_bit_function_enable
void tmr_32_bit_function_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr 32 bit function(plus mode)
Definition: at32f403_tmr.c:772
tmr_output_channel_buffer_enable
void tmr_output_channel_buffer_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
enable tmr output channel buffer
Definition: at32f403_tmr.c:627
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_CLOCK_DIV1
@ TMR_CLOCK_DIV1
Definition: at32f403_tmr.h:94
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR2
#define TMR2
Definition: at32f403_tmr.h:831
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • 6_steps
  • inc
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • 6_steps
  • inc
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • 6_steps
  • inc
project/at_start_f403/examples/tmr/6_steps/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • 6_steps
  • src
project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • 6_steps
  • src
project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/6_steps/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • 6_steps
  • src
project/at_start_f403/examples/tmr/6_steps/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 tmr_output_config_type tmr_output_struct;
38 tmr_brkdt_config_type tmr_brkdt_config_struct = {0};
39 crm_clocks_freq_type crm_clocks_freq_struct = {0};
40
41__IO uint32_t step = 1;
42
43/* systick configuration */
44void systick_configuration(void);
45
51int main(void)
52{
53 system_clock_config();
54
55 at32_board_init();
56
57 /* get system clock */
58 crm_clocks_freq_get(&crm_clocks_freq_struct);
59
60 systick_configuration();
61
62 /* turn led2/led3/led4 on */
63 at32_led_on(LED2);
64 at32_led_on(LED3);
65 at32_led_on(LED4);
66
67 /* enable tmr1/gpioa/gpiob clock */
68 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
69 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
70 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
71
72 /* timer2 output pin Configuration */
73 gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10;
74 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
75 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
76 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
77 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
78 gpio_init(GPIOA, &gpio_init_struct);
79
80 gpio_init_struct.gpio_pins = GPIO_PINS_13 | GPIO_PINS_14 | GPIO_PINS_15;
81 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
82 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
83 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
84 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
85 gpio_init(GPIOB, &gpio_init_struct);
86
87 gpio_init_struct.gpio_pins = GPIO_PINS_12;
88 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
89 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
90 gpio_init_struct.gpio_pull = GPIO_PULL_DOWN;
91 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
92 gpio_init(GPIOB, &gpio_init_struct);
93
94 /*
95 the tmr1 peripheral offers the possibility to program in advance the
96 configuration for the next tmr1 outputs behaviour (step) and change the configuration
97 of all the channels at the same time. this operation is possible when the hall
98 event is used.
99 the hall event can be generated by software by setting the hall bit in the tmr1_swevt
100 register or by hardware (on trc rising edge).
101 in this example, a software hall event is generated each 100 ms: using the systick
102 interrupt.
103 the tmr1 is configured in timing mode, each time a hall event occurs,
104 a new tmr1 configuration will be set in advance.
105 the following table describes the tmr1 channels states:
106 -----------------------------------------------
107 | step1 | step2 | step3 | step4 | step5 | step6 |
108 ----------------------------------------------------------
109 |channel1 | 1 | 0 | 0 | 0 | 0 | 1 |
110 ----------------------------------------------------------
111 |channel1n | 0 | 0 | 1 | 1 | 0 | 0 |
112 ----------------------------------------------------------
113 |channel2 | 0 | 0 | 0 | 1 | 1 | 0 |
114 ----------------------------------------------------------
115 |channel2n | 1 | 1 | 0 | 0 | 0 | 0 |
116 ----------------------------------------------------------
117 |channel3 | 0 | 1 | 1 | 0 | 0 | 0 |
118 ----------------------------------------------------------
119 |channel3n | 0 | 0 | 0 | 0 | 1 | 1 |
120 ----------------------------------------------------------
121 */
122 /* tmr1 configuration */
123 /* time base configuration */
124 tmr_base_init(TMR1, 4095, 0);
125 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
126
127 /* channel 1, 2 and 3 configuration in output mode */
128 tmr_output_default_para_init(&tmr_output_struct);
129 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_OFF;
130 tmr_output_struct.oc_output_state = TRUE;
131 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_HIGH;
132 tmr_output_struct.oc_idle_state = TRUE;
133 tmr_output_struct.occ_output_state = TRUE;
134 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_HIGH;
135 tmr_output_struct.occ_idle_state = TRUE;
136
137 /* channel 1 */
138 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
139 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, 2047);
140
141 /* channel 2 */
142 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_2, &tmr_output_struct);
143 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_2, 1023);
144
145 /* channel 3 */
146 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_3, &tmr_output_struct);
147 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, 511);
148
149 /* automatic output enable, brake, dead time and lock configuration */
150 tmr_brkdt_default_para_init(&tmr_brkdt_config_struct);
151 tmr_brkdt_config_struct.brk_enable = TRUE;
152 tmr_brkdt_config_struct.auto_output_enable = TRUE;
153 tmr_brkdt_config_struct.deadtime = 0;
154 tmr_brkdt_config_struct.fcsodis_state = TRUE;
155 tmr_brkdt_config_struct.fcsoen_state = TRUE;
156 tmr_brkdt_config_struct.brk_polarity = TMR_BRK_INPUT_ACTIVE_HIGH;
157 tmr_brkdt_config_struct.wp_level = TMR_WP_OFF;
158 tmr_brkdt_config(TMR1, &tmr_brkdt_config_struct);
159 tmr_channel_buffer_enable(TMR1, TRUE);
160
161 /* hall interrupt enable */
162 tmr_interrupt_enable(TMR1, TMR_HALL_INT, TRUE);
163
164 /* tmr1 hall interrupt nvic init */
165 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
166 nvic_irq_enable(TMR1_TRG_HALL_TMR11_IRQn, 0, 0);
167
168 /* tmr1 output enable */
169 tmr_output_enable(TMR1, TRUE);
170
171 /* enable tmr1 */
172 tmr_counter_enable(TMR1, TRUE);
173
174 while(1)
175 {
176 }
177}
183void systick_configuration(void)
184{
185 /* setup systick timer for 20 msec interrupts */
186 if(SysTick_Config((crm_clocks_freq_struct.sclk_freq) / 50))
187 {
188 /* capture error */
189 while(1);
190 }
191 NVIC_SetPriority(SysTick_IRQn, 0x0);
192}
193
200void TMR1_TRG_HALL_TMR11_IRQHandler(void)
201{
202 /* clear tmr1 com pending bit */
203 tmr_flag_clear(TMR1, TMR_HALL_FLAG);
204 if(step == 1)
205 {
206 /* next step: step 2 configuration ---------------------------- */
207 /* channel3 configuration */
208 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3, FALSE);
209 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3C, FALSE);
210
211 /* channel1 configuration */
212 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_1, TMR_OUTPUT_CONTROL_PWM_MODE_A);
213 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1, TRUE);
214 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1C, FALSE);
215
216 /* channel2 configuration */
217 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_2, TMR_OUTPUT_CONTROL_PWM_MODE_A);
218 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2, FALSE);
219 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2C, TRUE);
220 step++;
221 }
222 else if(step == 2)
223 {
224 /* next step: step 3 configuration ---------------------------- */
225 /* channel2 configuration */
226 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_2, TMR_OUTPUT_CONTROL_PWM_MODE_A);
227 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2, FALSE);
228 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2C, TRUE);
229
230 /* channel3 configuration */
231 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_3, TMR_OUTPUT_CONTROL_PWM_MODE_A);
232 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3, TRUE);
233 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3C, FALSE);
234
235 /* channel1 configuration */
236 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1, FALSE);
237 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1C, FALSE);
238 step++;
239 }
240 else if(step == 3)
241 {
242 /* next step: step 4 configuration ---------------------------- */
243 /* channel3 configuration */
244 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_3, TMR_OUTPUT_CONTROL_PWM_MODE_A);
245 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3, TRUE);
246 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3C, FALSE);
247
248 /* channel2 configuration */
249 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2, FALSE);
250 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2C, FALSE);
251
252 /* channel1 configuration */
253 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_1, TMR_OUTPUT_CONTROL_PWM_MODE_A);
254 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1, FALSE);
255 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1C, TRUE);
256 step++;
257 }
258 else if(step == 4)
259 {
260 /* next step: step 5 configuration ---------------------------- */
261 /* channel3 configuration */
262 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3, FALSE);
263 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3C, FALSE);
264
265 /* channel1 configuration */
266 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_1, TMR_OUTPUT_CONTROL_PWM_MODE_A);
267 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1, FALSE);
268 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1C, TRUE);
269
270 /* channel2 configuration */
271 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_2, TMR_OUTPUT_CONTROL_PWM_MODE_A);
272 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2, TRUE);
273 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2C, FALSE);
274 step++;
275 }
276 else if(step == 5)
277 {
278 /* next step: step 6 configuration ---------------------------- */
279 /* channel3 configuration */
280 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_3, TMR_OUTPUT_CONTROL_PWM_MODE_A);
281 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3, FALSE);
282 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3C, TRUE);
283
284 /* channel1 configuration */
285 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1, FALSE);
286 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1C, FALSE);
287
288 /* channel2 configuration */
289 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_2, TMR_OUTPUT_CONTROL_PWM_MODE_A);
290 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2, TRUE);
291 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2C, FALSE);
292 step++;
293 }
294 else
295 {
296 /* next step: step 1 configuration ---------------------------- */
297 /* channel1 configuration */
298 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_1, TMR_OUTPUT_CONTROL_PWM_MODE_A);
299 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1, TRUE);
300 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_1C, FALSE);
301
302 /* channel3 configuration */
303 tmr_output_channel_mode_select(TMR1, TMR_SELECT_CHANNEL_3, TMR_OUTPUT_CONTROL_PWM_MODE_A);
304 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3, FALSE);
305 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_3C, TRUE);
306
307 /* channel2 configuration */
308 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2, FALSE);
309 tmr_channel_enable(TMR1, TMR_SELECT_CHANNEL_2C, FALSE);
310 step = 1;
311 }
312}
313
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:36
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:37
systick_configuration
void systick_configuration(void)
configures the systick.
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:183
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:51
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:39
step
__IO uint32_t step
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:41
TMR1_TRG_HALL_TMR11_IRQHandler
void TMR1_TRG_HALL_TMR11_IRQHandler(void)
this function handles tmr1 trigger and hall interrupts requests.
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:200
tmr_brkdt_config_struct
tmr_brkdt_config_type tmr_brkdt_config_struct
Definition: project/at_start_f403/examples/tmr/6_steps/src/main.c:38
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
SysTick_IRQn
@ SysTick_IRQn
Definition: at32f403.h:175
TMR1_TRG_HALL_TMR11_IRQn
@ TMR1_TRG_HALL_TMR11_IRQn
Definition: at32f403.h:205
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_DOWN
@ GPIO_PULL_DOWN
Definition: at32f403_gpio.h:174
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
tmr_flag_clear
void tmr_flag_clear(tmr_type *tmr_x, uint32_t tmr_flag)
clear tmr flag
Definition: at32f403_tmr.c:1438
tmr_channel_buffer_enable
void tmr_channel_buffer_enable(tmr_type *tmr_x, confirm_state new_state)
enable tmr channel buffer
Definition: at32f403_tmr.c:1243
tmr_output_channel_mode_select
void tmr_output_channel_mode_select(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_control_mode_type oc_mode)
select tmr output channel mode
Definition: at32f403_tmr.c:443
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_brkdt_default_para_init
void tmr_brkdt_default_para_init(tmr_brkdt_config_type *tmr_brkdt_struct)
init tmr brkdt default para
Definition: at32f403_tmr.c:176
tmr_brkdt_config
void tmr_brkdt_config(tmr_type *tmr_x, tmr_brkdt_config_type *brkdt_struct)
config tmr brake mode and dead-time
Definition: at32f403_tmr.c:1771
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_interrupt_enable
void tmr_interrupt_enable(tmr_type *tmr_x, uint32_t tmr_interrupt, confirm_state new_state)
enable or disable tmr interrupt
Definition: at32f403_tmr.c:1332
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_enable
void tmr_channel_enable(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, confirm_state new_state)
tmr channel enable
Definition: at32f403_tmr.c:897
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_1C
@ TMR_SELECT_CHANNEL_1C
Definition: at32f403_tmr.h:215
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_2C
@ TMR_SELECT_CHANNEL_2C
Definition: at32f403_tmr.h:217
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_SELECT_CHANNEL_3C
@ TMR_SELECT_CHANNEL_3C
Definition: at32f403_tmr.h:219
TMR_WP_OFF
@ TMR_WP_OFF
Definition: at32f403_tmr.h:386
TMR_BRK_INPUT_ACTIVE_HIGH
@ TMR_BRK_INPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:378
TMR_OUTPUT_CONTROL_OFF
@ TMR_OUTPUT_CONTROL_OFF
Definition: at32f403_tmr.h:171
TMR_OUTPUT_CONTROL_PWM_MODE_A
@ TMR_OUTPUT_CONTROL_PWM_MODE_A
Definition: at32f403_tmr.h:177
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_HALL_FLAG
#define TMR_HALL_FLAG
Definition: at32f403_tmr.h:55
TMR_HALL_INT
#define TMR_HALL_INT
Definition: at32f403_tmr.h:77
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_brkdt_config_type
tmr brkdt config type
Definition: at32f403_tmr.h:421
tmr_brkdt_config_type::brk_enable
confirm_state brk_enable
Definition: at32f403_tmr.h:428
tmr_brkdt_config_type::deadtime
uint8_t deadtime
Definition: at32f403_tmr.h:422
tmr_brkdt_config_type::auto_output_enable
confirm_state auto_output_enable
Definition: at32f403_tmr.h:425
tmr_brkdt_config_type::wp_level
tmr_wp_level_type wp_level
Definition: at32f403_tmr.h:424
tmr_brkdt_config_type::fcsoen_state
confirm_state fcsoen_state
Definition: at32f403_tmr.h:426
tmr_brkdt_config_type::fcsodis_state
confirm_state fcsodis_state
Definition: at32f403_tmr.h:427
tmr_brkdt_config_type::brk_polarity
tmr_brk_polarity_type brk_polarity
Definition: at32f403_tmr.h:423
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • tmr
  • 7_pwm_output
  • inc
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • tmr
  • 7_pwm_output
  • inc
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • tmr
  • 7_pwm_output
  • inc
project/at_start_f403/examples/tmr/7_pwm_output/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • tmr
  • 7_pwm_output
  • src
project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • tmr
  • 7_pwm_output
  • src
project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131 /* trigger TMR1 hall event */
132 tmr_event_sw_trigger(TMR1, TMR_HALL_SWTRIG);
133}
134
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/at32f403_int.c:111
tmr_event_sw_trigger
void tmr_event_sw_trigger(tmr_type *tmr_x, tmr_event_trigger_type tmr_event)
generate tmr event
Definition: at32f403_tmr.c:1461
TMR_HALL_SWTRIG
@ TMR_HALL_SWTRIG
Definition: at32f403_tmr.h:286
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • tmr
  • 7_pwm_output
  • src
project/at_start_f403/examples/tmr/7_pwm_output/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36 gpio_init_type gpio_init_struct = {0};
37 tmr_output_config_type tmr_output_struct;
38 crm_clocks_freq_type crm_clocks_freq_struct = {0};
39
40uint16_t timer_period = 0;
41uint16_t channel1_pulse = 0, channel2_pulse = 0, channel3_pulse = 0, channel4_pulse = 0;
42
48int main(void)
49{
50 system_clock_config();
51
52 at32_board_init();
53
54 /* get system clock */
55 crm_clocks_freq_get(&crm_clocks_freq_struct);
56
57 /* turn led2/led3/led4 on */
58 at32_led_on(LED2);
59 at32_led_on(LED3);
60 at32_led_on(LED4);
61
62 /* enable tmr1/gpioa/gpiob clock */
63 crm_periph_clock_enable(CRM_TMR1_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
65 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
66
67 /* timer1 output pin Configuration */
68 gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10 | GPIO_PINS_11;
69 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
70 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
71 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
72 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
73 gpio_init(GPIOA, &gpio_init_struct);
74
75 gpio_init_struct.gpio_pins = GPIO_PINS_13 | GPIO_PINS_14 | GPIO_PINS_15;
76 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
77 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
78 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
79 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
80 gpio_init(GPIOB, &gpio_init_struct);
81
82 gpio_init_struct.gpio_pins = GPIO_PINS_12;
83 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
84 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
85 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
86 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
87 gpio_init(GPIOB, &gpio_init_struct);
88
89
90 /* tmr1 configuration generate 7 pwm signals with 4 different duty cycles:
91 prescaler = 0, tmr1 counter clock = system_core_clock
92
93 the objective is to generate 7 pwm signal at 17.57 khz:
94 - tim1_period = (system_core_clock / 17570) - 1
95 the channel 1 and channel 1n duty cycle is set to 50%
96 the channel 2 and channel 2n duty cycle is set to 37.5%
97 the channel 3 and channel 3n duty cycle is set to 25%
98 the channel 4 duty cycle is set to 12.5%
99 the timer pulse is calculated as follows:
100 - channelxpulse = duty_cycle * (tim1_period - 1) / 100 */
101
102 /* compute the value to be set in arr regiter to generate signal frequency at 17.57 khz */
103 timer_period = (crm_clocks_freq_struct.sclk_freq / 17570 ) - 1;
104
105 /* compute ccr1 value to generate a duty cycle at 50% for channel 1 and 1n */
106 channel1_pulse = (uint16_t)(((uint32_t) 5 * (timer_period - 1)) / 10);
107
108 /* compute ccr2 value to generate a duty cycle at 37.5% for channel 2 and 2n */
109 channel2_pulse = (uint16_t)(((uint32_t) 375 * (timer_period - 1)) / 1000);
110
111 /* compute ccr3 value to generate a duty cycle at 25% for channel 3 and 3n */
112 channel3_pulse = (uint16_t)(((uint32_t) 25 * (timer_period - 1)) / 100);
113
114 /* compute ccr4 value to generate a duty cycle at 12.5% for channel 4 */
115 channel4_pulse = (uint16_t)(((uint32_t) 125 * (timer_period- 1)) / 1000);
116
117 tmr_base_init(TMR1, timer_period, 0);
118 tmr_cnt_dir_set(TMR1, TMR_COUNT_UP);
119
120 /* channel 1, 2, 3 and 4 configuration in output mode */
121 tmr_output_default_para_init(&tmr_output_struct);
122 tmr_output_struct.oc_mode = TMR_OUTPUT_CONTROL_PWM_MODE_B;
123 tmr_output_struct.oc_output_state = TRUE;
124 tmr_output_struct.oc_polarity = TMR_OUTPUT_ACTIVE_LOW;
125 tmr_output_struct.oc_idle_state = TRUE;
126 tmr_output_struct.occ_output_state = TRUE;
127 tmr_output_struct.occ_polarity = TMR_OUTPUT_ACTIVE_HIGH;
128 tmr_output_struct.occ_idle_state = FALSE;
129
130 /* channel 1 */
131 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_1, &tmr_output_struct);
132 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_1, channel1_pulse);
133
134 /* channel 2 */
135 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_2, &tmr_output_struct);
136 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_2, channel2_pulse);
137
138 /* channel 3 */
139 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_3, &tmr_output_struct);
140 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, channel3_pulse);
141
142 /* channel 4 */
143 tmr_output_channel_config(TMR1, TMR_SELECT_CHANNEL_4, &tmr_output_struct);
144 tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, channel4_pulse);
145
146 /* output enable */
147 tmr_output_enable(TMR1, TRUE);
148
149 /* enable tmr1 */
150 tmr_counter_enable(TMR1, TRUE);
151
152 while(1)
153 {
154 }
155}
156
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:36
channel1_pulse
uint16_t channel1_pulse
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:41
tmr_output_struct
tmr_output_config_type tmr_output_struct
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:37
timer_period
uint16_t timer_period
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:40
channel2_pulse
uint16_t channel2_pulse
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:41
channel3_pulse
uint16_t channel3_pulse
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:41
main
int main(void)
main function.
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:48
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:38
channel4_pulse
uint16_t channel4_pulse
Definition: project/at_start_f403/examples/tmr/7_pwm_output/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_TMR1_PERIPH_CLOCK
@ CRM_TMR1_PERIPH_CLOCK
Definition: at32f403_crm.h:119
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
tmr_counter_enable
void tmr_counter_enable(tmr_type *tmr_x, confirm_state new_state)
enable or disable tmr counter
Definition: at32f403_tmr.c:133
tmr_output_channel_config
void tmr_output_channel_config(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, tmr_output_config_type *tmr_output_struct)
config tmr output channel
Definition: at32f403_tmr.c:337
tmr_output_default_para_init
void tmr_output_default_para_init(tmr_output_config_type *tmr_output_struct)
init tmr output default para
Definition: at32f403_tmr.c:145
tmr_output_enable
void tmr_output_enable(tmr_type *tmr_x, confirm_state new_state)
tmr output enable(oen),this function is important for advtm output enable
Definition: at32f403_tmr.c:1474
tmr_base_init
void tmr_base_init(tmr_type *tmr_x, uint32_t tmr_pr, uint32_t tmr_div)
init tmr base
Definition: at32f403_tmr.c:198
tmr_cnt_dir_set
void tmr_cnt_dir_set(tmr_type *tmr_x, tmr_count_mode_type tmr_cnt_dir)
set tmr counter count direction
Definition: at32f403_tmr.c:244
tmr_channel_value_set
void tmr_channel_value_set(tmr_type *tmr_x, tmr_channel_select_type tmr_channel, uint32_t tmr_channel_value)
set tmr channel value
Definition: at32f403_tmr.c:520
TMR_COUNT_UP
@ TMR_COUNT_UP
Definition: at32f403_tmr.h:104
TMR_SELECT_CHANNEL_3
@ TMR_SELECT_CHANNEL_3
Definition: at32f403_tmr.h:218
TMR_SELECT_CHANNEL_1
@ TMR_SELECT_CHANNEL_1
Definition: at32f403_tmr.h:214
TMR_SELECT_CHANNEL_4
@ TMR_SELECT_CHANNEL_4
Definition: at32f403_tmr.h:220
TMR_SELECT_CHANNEL_2
@ TMR_SELECT_CHANNEL_2
Definition: at32f403_tmr.h:216
TMR_OUTPUT_CONTROL_PWM_MODE_B
@ TMR_OUTPUT_CONTROL_PWM_MODE_B
Definition: at32f403_tmr.h:178
TMR_OUTPUT_ACTIVE_HIGH
@ TMR_OUTPUT_ACTIVE_HIGH
Definition: at32f403_tmr.h:195
TMR_OUTPUT_ACTIVE_LOW
@ TMR_OUTPUT_ACTIVE_LOW
Definition: at32f403_tmr.h:196
TMR1
#define TMR1
Definition: at32f403_tmr.h:830
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::sclk_freq
uint32_t sclk_freq
Definition: at32f403_crm.h:451
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
tmr_output_config_type
tmr output config type
Definition: at32f403_tmr.h:396
tmr_output_config_type::occ_output_state
confirm_state occ_output_state
Definition: at32f403_tmr.h:403
tmr_output_config_type::oc_idle_state
confirm_state oc_idle_state
Definition: at32f403_tmr.h:398
tmr_output_config_type::oc_output_state
confirm_state oc_output_state
Definition: at32f403_tmr.h:402
tmr_output_config_type::oc_mode
tmr_output_control_mode_type oc_mode
Definition: at32f403_tmr.h:397
tmr_output_config_type::occ_polarity
tmr_output_polarity_type occ_polarity
Definition: at32f403_tmr.h:401
tmr_output_config_type::occ_idle_state
confirm_state occ_idle_state
Definition: at32f403_tmr.h:399
tmr_output_config_type::oc_polarity
tmr_output_polarity_type oc_polarity
Definition: at32f403_tmr.h:400
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • half_duplex
  • inc
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • half_duplex
  • inc
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • half_duplex
  • inc
project/at_start_f403/examples/usart/half_duplex/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • half_duplex
  • src
project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • half_duplex
  • src
project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/half_duplex/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • half_duplex
  • src
project/at_start_f403/examples/usart/half_duplex/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define COUNTOF(a) (sizeof(a) / sizeof(*(a)))
37#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
38#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)
39
40uint8_t usart2_tx_buffer[] = "usart half-duplex transfer: usart2 -> usart3";
41uint8_t usart3_tx_buffer[] = "usart half-duplex transfer: usart3 -> usart2";
42uint8_t usart2_rx_buffer[USART3_TX_BUFFER_SIZE];
43uint8_t usart3_rx_buffer[USART2_TX_BUFFER_SIZE];
44uint8_t data_count;
45
51void usart_configuration(void)
52{
53 gpio_init_type gpio_init_struct;
54
55 /* enable the usart2 and gpio clock */
56 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
57 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
58
59 /* enable the usart3 and gpio clock */
60 crm_periph_clock_enable(CRM_USART3_PERIPH_CLOCK, TRUE);
61 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
62
63 gpio_default_para_init(&gpio_init_struct);
64
65 /* configure the usart2 tx pin */
66 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
67 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
68 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
69 gpio_init_struct.gpio_pins = GPIO_PINS_2;
70 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
71 gpio_init(GPIOA, &gpio_init_struct);
72
73 /* configure the usart3 tx pin */
74 gpio_init_struct.gpio_pins = GPIO_PINS_10;
75 gpio_init(GPIOB, &gpio_init_struct);
76
77 /* configure usart2 param */
78 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
79 usart_transmitter_enable(USART2, TRUE);
80 usart_receiver_enable(USART2, TRUE);
81 usart_single_line_halfduplex_select(USART2, TRUE);
82 usart_enable(USART2, TRUE);
83
84 /* configure usart3 param */
85 usart_init(USART3, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
86 usart_transmitter_enable(USART3, TRUE);
87 usart_receiver_enable(USART3, TRUE);
88 usart_single_line_halfduplex_select(USART3, TRUE);
89 usart_enable(USART3, TRUE);
90}
91
99uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
100{
101 while(buffer_length--)
102 {
103 if(*pbuffer1 != *pbuffer2)
104 {
105 return 0;
106 }
107 pbuffer1++;
108 pbuffer2++;
109 }
110 return 1;
111}
112
118int main(void)
119{
120 system_clock_config();
121 at32_board_init();
122 usart_configuration();
123
124 /* waiting for sending idle frame */
125 delay_ms(10);
126
127 /* usart2 transmit and usart3 receive */
128 data_count = USART2_TX_BUFFER_SIZE;
129 while(data_count)
130 {
131 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
132 usart_data_transmit(USART2, usart2_tx_buffer[USART2_TX_BUFFER_SIZE-data_count]);
133 while(usart_flag_get(USART3, USART_RDBF_FLAG) == RESET);
134 usart3_rx_buffer[USART2_TX_BUFFER_SIZE-data_count] = usart_data_receive(USART3);
135 data_count--;
136 }
137
138 /* usart3 transmit and usart2 receive */
139 data_count = USART3_TX_BUFFER_SIZE;
140 while(data_count)
141 {
142 while(usart_flag_get(USART3, USART_TDBE_FLAG) == RESET);
143 usart_data_transmit(USART3, usart3_tx_buffer[USART3_TX_BUFFER_SIZE-data_count]);
144 while(usart_flag_get(USART2, USART_RDBF_FLAG) == RESET);
145 usart2_rx_buffer[USART3_TX_BUFFER_SIZE-data_count] = usart_data_receive(USART2);
146 data_count--;
147 }
148
149 while(1)
150 {
151 /* compare data buffer */
152 if(buffer_compare(usart2_tx_buffer, usart3_rx_buffer, USART2_TX_BUFFER_SIZE) && \
153 buffer_compare(usart3_tx_buffer, usart2_rx_buffer, USART3_TX_BUFFER_SIZE))
154 {
155 at32_led_toggle(LED2);
156 at32_led_toggle(LED3);
157 at32_led_toggle(LED4);
158 delay_sec(1);
159 }
160 }
161}
162
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:51
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:99
usart3_rx_buffer
uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:43
USART2_TX_BUFFER_SIZE
#define USART2_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:118
usart2_tx_buffer
uint8_t usart2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:40
USART3_TX_BUFFER_SIZE
#define USART3_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:38
data_count
uint8_t data_count
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:44
usart3_tx_buffer
uint8_t usart3_tx_buffer[]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:41
usart2_rx_buffer
uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:42
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART3_PERIPH_CLOCK
@ CRM_USART3_PERIPH_CLOCK
Definition: at32f403_crm.h:143
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
usart_single_line_halfduplex_select
void usart_single_line_halfduplex_select(usart_type *usart_x, confirm_state new_state)
enable or disable the usart single line bidirectional half-duplex communication.
Definition: at32f403_usart.c:473
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART3
#define USART3
Definition: at32f403_usart.h:319
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • hw_flow_control
  • inc
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • hw_flow_control
  • inc
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • hw_flow_control
  • inc
project/at_start_f403/examples/usart/hw_flow_control/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • hw_flow_control
  • src
project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • hw_flow_control
  • src
project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • hw_flow_control
  • src
project/at_start_f403/examples/usart/hw_flow_control/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 16
37
38uint8_t rx_buffer[BUFFER_SIZE];
39uint8_t data_count;
40
46void usart_configuration(void)
47{
48 gpio_init_type gpio_init_struct;
49
50 /* enable the usart2 and gpio clock */
51 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
52 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
54
55 gpio_default_para_init(&gpio_init_struct);
56
57 /* configure the usart2 tx and rts pin */
58 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
59 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
60 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
61 gpio_init_struct.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5;
62 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
63 gpio_init(GPIOD, &gpio_init_struct);
64
65 /* configure the usart2 rx and cts pin */
66 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
67 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
68 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
69 gpio_init_struct.gpio_pins = GPIO_PINS_3 | GPIO_PINS_6;
70 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
71 gpio_init(GPIOD, &gpio_init_struct);
72
73 /* config usart2 iomux */
74 gpio_pin_remap_config(USART2_MUX, TRUE);
75
76 /* configure usart2 param */
77 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
78 usart_hardware_flow_control_set(USART2, USART_HARDWARE_FLOW_RTS_CTS);
79 usart_transmitter_enable(USART2, TRUE);
80 usart_receiver_enable(USART2, TRUE);
81 usart_enable(USART2, TRUE);
82}
83
89int main(void)
90{
91 system_clock_config();
92 at32_board_init();
93 usart_configuration();
94
95 /* receive a string (BUFFER_SIZE bytes) from the hyperterminal */
96 data_count = BUFFER_SIZE;
97 while(data_count)
98 {
99 while(usart_flag_get(USART2, USART_RDBF_FLAG) == RESET);
100 rx_buffer[BUFFER_SIZE-data_count] = usart_data_receive(USART2);
101 data_count--;
102 }
103
104 /* send a buffer from usart to hyperterminal */
105 data_count = BUFFER_SIZE;
106 while(data_count)
107 {
108 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
109 usart_data_transmit(USART2, rx_buffer[BUFFER_SIZE-data_count]);
110 data_count--;
111 }
112
113 while(1)
114 {
115 at32_led_toggle(LED2);
116 at32_led_toggle(LED3);
117 at32_led_toggle(LED4);
118 delay_sec(1);
119 }
120}
121
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
rx_buffer
uint8_t rx_buffer[16]
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/main.c:38
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/main.c:46
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/main.c:36
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/main.c:89
data_count
uint8_t data_count
Definition: project/at_start_f403/examples/usart/hw_flow_control/src/main.c:39
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_pin_remap_config
void gpio_pin_remap_config(uint32_t gpio_remap, confirm_state new_state)
iomux remap and debug i/o configuration.
Definition: at32f403_gpio.c:521
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
USART2_MUX
#define USART2_MUX
Definition: at32f403_gpio.h:83
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_hardware_flow_control_set
void usart_hardware_flow_control_set(usart_type *usart_x, usart_hardware_flow_control_type flow_state)
configure the usart's hardware flow control.
Definition: at32f403_usart.c:519
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_HARDWARE_FLOW_RTS_CTS
@ USART_HARDWARE_FLOW_RTS_CTS
Definition: at32f403_usart.h:170
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • idle_detection
  • inc
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • idle_detection
  • inc
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • idle_detection
  • inc
project/at_start_f403/examples/usart/idle_detection/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • idle_detection
  • src
project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • idle_detection
  • src
project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "at32f403_board.h"
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
139void USART2_IRQHandler(void)
140{
141 if(usart_flag_get(USART2, USART_IDLEF_FLAG))
142 {
143 usart_data_receive(USART2);
144 at32_led_on(LED2);
145 at32_led_on(LED3);
146 at32_led_on(LED4);
147 }
148}
149
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
USART2_IRQHandler
void USART2_IRQHandler(void)
this function handles usart2 handler.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:139
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/idle_detection/src/at32f403_int.c:112
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_IDLEF_FLAG
#define USART_IDLEF_FLAG
Definition: at32f403_usart.h:54
USART2
#define USART2
Definition: at32f403_usart.h:318
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • idle_detection
  • src
project/at_start_f403/examples/usart/idle_detection/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41void usart_configuration(void)
42{
43 gpio_init_type gpio_init_struct;
44
45 /* enable the usart2 and gpio clock */
46 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
47 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
48
49 gpio_default_para_init(&gpio_init_struct);
50
51 /* configure the usart2 tx pin */
52 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
53 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
54 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
55 gpio_init_struct.gpio_pins = GPIO_PINS_2;
56 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
57 gpio_init(GPIOA, &gpio_init_struct);
58
59 /* configure the usart2 rx pin */
60 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
61 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
62 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
63 gpio_init_struct.gpio_pins = GPIO_PINS_3;
64 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
65 gpio_init(GPIOA, &gpio_init_struct);
66
67 /* config usart nvic interrupt */
68 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
69 nvic_irq_enable(USART2_IRQn, 0, 0);
70
71 /* configure usart2 param */
72 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
73 usart_transmitter_enable(USART2, TRUE);
74 usart_receiver_enable(USART2, TRUE);
75 usart_interrupt_enable(USART2, USART_IDLE_INT, TRUE);
76 usart_enable(USART2, TRUE);
77}
78
84int main(void)
85{
86 system_clock_config();
87 at32_board_init();
88 at32_led_off(LED2);
89 at32_led_off(LED3);
90 at32_led_off(LED4);
91 usart_configuration();
92
93 /* transmit a data */
94 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
95 usart_data_transmit(USART2, 0x55);
96
97 /* receive a data from the tx pin */
98 while(usart_flag_get(USART2, USART_RDBF_FLAG) == RESET);
99 usart_data_receive(USART2);
100
101 while(1)
102 {
103 }
104}
105
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/idle_detection/src/main.c:41
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/idle_detection/src/main.c:84
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
USART2_IRQn
@ USART2_IRQn
Definition: at32f403.h:217
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART_IDLE_INT
#define USART_IDLE_INT
Definition: at32f403_usart.h:70
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • interrupt
  • inc
project/at_start_f403/examples/usart/interrupt/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • interrupt
  • inc
project/at_start_f403/examples/usart/interrupt/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • interrupt
  • inc
project/at_start_f403/examples/usart/interrupt/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • interrupt
  • src
project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • interrupt
  • src
project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern uint8_t usart2_tx_buffer[];
29extern uint8_t usart3_tx_buffer[];
30extern uint8_t usart2_rx_buffer[];
31extern uint8_t usart3_rx_buffer[];
32extern uint8_t usart2_tx_counter;
33extern uint8_t usart3_tx_counter;
34extern uint8_t usart2_rx_counter;
35extern uint8_t usart3_rx_counter;
36extern uint8_t usart2_tx_buffer_size;
37extern uint8_t usart3_tx_buffer_size;
38
52void NMI_Handler(void)
53{
54}
55
61void HardFault_Handler(void)
62{
63 /* go to infinite loop when hard fault exception occurs */
64 while(1)
65 {
66 }
67}
68
74void MemManage_Handler(void)
75{
76 /* go to infinite loop when memory manage exception occurs */
77 while(1)
78 {
79 }
80}
81
87void BusFault_Handler(void)
88{
89 /* go to infinite loop when bus fault exception occurs */
90 while(1)
91 {
92 }
93}
94
100void UsageFault_Handler(void)
101{
102 /* go to infinite loop when usage fault exception occurs */
103 while(1)
104 {
105 }
106}
107
113void SVC_Handler(void)
114{
115}
116
122void DebugMon_Handler(void)
123{
124}
125
131void PendSV_Handler(void)
132{
133}
134
140void SysTick_Handler(void)
141{
142}
143
149void USART2_IRQHandler(void)
150{
151 if(USART2->ctrl1_bit.rdbfien != RESET)
152 {
153 if(usart_flag_get(USART2, USART_RDBF_FLAG) != RESET)
154 {
155 /* read one byte from the receive data register */
156 usart2_rx_buffer[usart2_rx_counter++] = usart_data_receive(USART2);
157
158 if(usart2_rx_counter == usart3_tx_buffer_size)
159 {
160 /* disable the usart2 receive interrupt */
161 usart_interrupt_enable(USART2, USART_RDBF_INT, FALSE);
162 }
163 }
164 }
165
166 if(USART2->ctrl1_bit.tdbeien != RESET)
167 {
168 if(usart_flag_get(USART2, USART_TDBE_FLAG) != RESET)
169 {
170 /* write one byte to the transmit data register */
171 usart_data_transmit(USART2, usart2_tx_buffer[usart2_tx_counter++]);
172
173 if(usart2_tx_counter == usart2_tx_buffer_size)
174 {
175 /* disable the usart2 transmit interrupt */
176 usart_interrupt_enable(USART2, USART_TDBE_INT, FALSE);
177 }
178 }
179 }
180}
181
187void USART3_IRQHandler(void)
188{
189 if(USART3->ctrl1_bit.rdbfien != RESET)
190 {
191 if(usart_flag_get(USART3, USART_RDBF_FLAG) != RESET)
192 {
193 /* read one byte from the receive data register */
194 usart3_rx_buffer[usart3_rx_counter++] = usart_data_receive(USART3);
195
196 if(usart3_rx_counter == usart2_tx_buffer_size)
197 {
198 /* disable the usart3 receive interrupt */
199 usart_interrupt_enable(USART3, USART_RDBF_INT, FALSE);
200 }
201 }
202 }
203
204 if(USART3->ctrl1_bit.tdbeien != RESET)
205 {
206 if(usart_flag_get(USART3, USART_TDBE_FLAG) != RESET)
207 {
208 /* write one byte to the transmit data register */
209 usart_data_transmit(USART3, usart3_tx_buffer[usart3_tx_counter++]);
210
211 if(usart3_tx_counter == usart3_tx_buffer_size)
212 {
213 /* disable the usart3 transmit interrupt */
214 usart_interrupt_enable(USART3, USART_TDBE_INT, FALSE);
215 }
216 }
217 }
218}
219
usart3_rx_buffer
uint8_t usart3_rx_buffer[]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:43
usart2_tx_buffer
uint8_t usart2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:40
usart3_tx_buffer
uint8_t usart3_tx_buffer[]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:41
usart2_rx_buffer
uint8_t usart2_rx_buffer[]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:42
USART2_IRQHandler
void USART2_IRQHandler(void)
this function handles usart2 handler.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:149
USART3_IRQHandler
void USART3_IRQHandler(void)
this function handles usart3 handler.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:187
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:100
usart3_rx_counter
uint8_t usart3_rx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:47
usart2_rx_counter
uint8_t usart2_rx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:46
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:61
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:74
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:113
usart2_tx_counter
uint8_t usart2_tx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:44
usart3_tx_counter
uint8_t usart3_tx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:45
usart2_tx_buffer_size
uint8_t usart2_tx_buffer_size
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:48
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:131
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:52
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:87
usart3_tx_buffer_size
uint8_t usart3_tx_buffer_size
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:49
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:140
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/interrupt/src/at32f403_int.c:122
FALSE
@ FALSE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART_TDBE_INT
#define USART_TDBE_INT
Definition: at32f403_usart.h:73
USART3
#define USART3
Definition: at32f403_usart.h:319
USART2
#define USART2
Definition: at32f403_usart.h:318
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • interrupt
  • src
project/at_start_f403/examples/usart/interrupt/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define COUNTOF(a) (sizeof(a) / sizeof(*(a)))
37#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
38#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)
39
40uint8_t usart2_tx_buffer[] = "usart transfer by interrupt: usart2 -> usart3 using interrupt";
41uint8_t usart3_tx_buffer[] = "usart transfer by interrupt: usart3 -> usart2 using interrupt";
42uint8_t usart2_rx_buffer[USART3_TX_BUFFER_SIZE];
43uint8_t usart3_rx_buffer[USART2_TX_BUFFER_SIZE];
44volatile uint8_t usart2_tx_counter = 0x00;
45volatile uint8_t usart3_tx_counter = 0x00;
46volatile uint8_t usart2_rx_counter = 0x00;
47volatile uint8_t usart3_rx_counter = 0x00;
48uint8_t usart2_tx_buffer_size = USART2_TX_BUFFER_SIZE;
49uint8_t usart3_tx_buffer_size = USART3_TX_BUFFER_SIZE;
50
56void usart_configuration(void)
57{
58 gpio_init_type gpio_init_struct;
59
60 /* enable the usart2 and gpio clock */
61 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
63
64 /* enable the usart3 and gpio clock */
65 crm_periph_clock_enable(CRM_USART3_PERIPH_CLOCK, TRUE);
66 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
67
68 gpio_default_para_init(&gpio_init_struct);
69
70 /* configure the usart2 tx pin */
71 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
72 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
73 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
74 gpio_init_struct.gpio_pins = GPIO_PINS_2;
75 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
76 gpio_init(GPIOA, &gpio_init_struct);
77
78 /* configure the usart3 tx pin */
79 gpio_init_struct.gpio_pins = GPIO_PINS_10;
80 gpio_init(GPIOB, &gpio_init_struct);
81
82 /* configure the usart2 rx pin */
83 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
84 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
85 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
86 gpio_init_struct.gpio_pins = GPIO_PINS_3;
87 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
88 gpio_init(GPIOA, &gpio_init_struct);
89
90 /* configure the usart3 rx pin */
91 gpio_init_struct.gpio_pins = GPIO_PINS_11;
92 gpio_init(GPIOB, &gpio_init_struct);
93
94 /* config usart nvic interrupt */
95 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
96 nvic_irq_enable(USART2_IRQn, 0, 0);
97 nvic_irq_enable(USART3_IRQn, 0, 0);
98
99 /* configure usart2 param */
100 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
101 usart_transmitter_enable(USART2, TRUE);
102 usart_receiver_enable(USART2, TRUE);
103
104 /* configure usart3 param */
105 usart_init(USART3, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
106 usart_transmitter_enable(USART3, TRUE);
107 usart_receiver_enable(USART3, TRUE);
108
109 /* enable usart2 and usart3 interrupt */
110 usart_interrupt_enable(USART2, USART_RDBF_INT, TRUE);
111 usart_enable(USART2, TRUE);
112
113 usart_interrupt_enable(USART3, USART_RDBF_INT, TRUE);
114 usart_enable(USART3, TRUE);
115
116 usart_interrupt_enable(USART2, USART_TDBE_INT, TRUE);
117 usart_interrupt_enable(USART3, USART_TDBE_INT, TRUE);
118}
119
127uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
128{
129 while(buffer_length--)
130 {
131 if(*pbuffer1 != *pbuffer2)
132 {
133 return 0;
134 }
135 pbuffer1++;
136 pbuffer2++;
137 }
138 return 1;
139}
140
146int main(void)
147{
148 system_clock_config();
149 at32_board_init();
150 usart_configuration();
151
152 /* wait until end of transmission from usart2 to usart3 */
153 while(usart3_rx_counter < usart2_tx_buffer_size);
154
155 /* wait until end of transmission from usart3 to usart2 */
156 while(usart2_rx_counter < usart3_tx_buffer_size);
157
158 while(1)
159 {
160 /* compare data buffer */
161 if(buffer_compare(usart2_tx_buffer, usart3_rx_buffer, USART2_TX_BUFFER_SIZE) && \
162 buffer_compare(usart3_tx_buffer, usart2_rx_buffer, USART3_TX_BUFFER_SIZE))
163 {
164 at32_led_toggle(LED2);
165 at32_led_toggle(LED3);
166 at32_led_toggle(LED4);
167 delay_sec(1);
168 }
169 }
170}
171
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:56
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:127
usart3_rx_counter
volatile uint8_t usart3_rx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:47
usart2_rx_counter
volatile uint8_t usart2_rx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:46
usart2_tx_counter
volatile uint8_t usart2_tx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:44
usart3_tx_counter
volatile uint8_t usart3_tx_counter
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:45
usart2_tx_buffer_size
uint8_t usart2_tx_buffer_size
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:48
usart3_rx_buffer
uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:43
USART2_TX_BUFFER_SIZE
#define USART2_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:146
usart3_tx_buffer_size
uint8_t usart3_tx_buffer_size
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:49
usart2_tx_buffer
uint8_t usart2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:40
USART3_TX_BUFFER_SIZE
#define USART3_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:38
usart3_tx_buffer
uint8_t usart3_tx_buffer[]
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:41
usart2_rx_buffer
uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/interrupt/src/main.c:42
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART3_PERIPH_CLOCK
@ CRM_USART3_PERIPH_CLOCK
Definition: at32f403_crm.h:143
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
USART2_IRQn
@ USART2_IRQn
Definition: at32f403.h:217
USART3_IRQn
@ USART3_IRQn
Definition: at32f403.h:218
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART_TDBE_INT
#define USART_TDBE_INT
Definition: at32f403_usart.h:73
USART3
#define USART3
Definition: at32f403_usart.h:319
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • irda
  • inc
project/at_start_f403/examples/usart/irda/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • irda
  • inc
project/at_start_f403/examples/usart/irda/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • irda
  • inc
project/at_start_f403/examples/usart/irda/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • irda
  • src
project/at_start_f403/examples/usart/irda/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • irda
  • src
project/at_start_f403/examples/usart/irda/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/irda/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • irda
  • src
project/at_start_f403/examples/usart/irda/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41void usart_configuration(void)
42{
43 gpio_init_type gpio_init_struct;
44
45 /* enable the usart2 and gpio clock */
46 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
47 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
48
49 gpio_default_para_init(&gpio_init_struct);
50
51 /* configure the usart2 tx pin */
52 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
53 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
54 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
55 gpio_init_struct.gpio_pins = GPIO_PINS_2;
56 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
57 gpio_init(GPIOA, &gpio_init_struct);
58
59 /* configure the usart2 rx pin */
60 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
61 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
62 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
63 gpio_init_struct.gpio_pins = GPIO_PINS_3;
64 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
65 gpio_init(GPIOA, &gpio_init_struct);
66
67 /* configure usart2 param */
68 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
69 usart_transmitter_enable(USART2, TRUE);
70 usart_receiver_enable(USART2, TRUE);
71 usart_irda_smartcard_division_set(USART2, 0x01);
72 usart_irda_mode_enable(USART2, TRUE);
73 usart_enable(USART2, TRUE);
74}
75
81int main(void)
82{
83 system_clock_config();
84 at32_board_init();
85 at32_led_off(LED2);
86 at32_led_off(LED3);
87 at32_led_off(LED4);
88 usart_configuration();
89
90#if defined(TRANSMIT)
91 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
92 usart_data_transmit(USART2, 0x55);
93 at32_led_on(LED4);
94#endif
95
96#if defined(RECEIVE)
97 while(usart_flag_get(USART2, USART_RDBF_FLAG) == RESET);
98 if(usart_data_receive(USART2) == 0x55)
99 {
100 at32_led_on(LED4);
101 }
102#endif
103
104 while(1)
105 {
106 }
107}
108
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/irda/src/main.c:41
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/irda/src/main.c:81
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_irda_smartcard_division_set
void usart_irda_smartcard_division_set(usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division.
Definition: at32f403_usart.c:429
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_irda_mode_enable
void usart_irda_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's irda interface.
Definition: at32f403_usart.c:487
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • polling
  • inc
project/at_start_f403/examples/usart/polling/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • polling
  • inc
project/at_start_f403/examples/usart/polling/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • polling
  • inc
project/at_start_f403/examples/usart/polling/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • polling
  • src
project/at_start_f403/examples/usart/polling/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • polling
  • src
project/at_start_f403/examples/usart/polling/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/polling/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • polling
  • src
project/at_start_f403/examples/usart/polling/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define COUNTOF(a) (sizeof(a) / sizeof(*(a)))
37#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
38#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)
39
40uint8_t usart2_tx_buffer[] = "usart transfer by interrupt: usart2 -> usart3 using interrupt";
41uint8_t usart3_tx_buffer[] = "usart transfer by interrupt: usart3 -> usart2 using interrupt";
42uint8_t usart2_rx_buffer[USART3_TX_BUFFER_SIZE];
43uint8_t usart3_rx_buffer[USART2_TX_BUFFER_SIZE];
44uint8_t usart2_tx_counter = 0x00;
45uint8_t usart3_tx_counter = 0x00;
46uint8_t usart2_rx_counter = 0x00;
47uint8_t usart3_rx_counter = 0x00;
48uint8_t usart2_tx_buffer_size = USART2_TX_BUFFER_SIZE;
49uint8_t usart3_tx_buffer_size = USART3_TX_BUFFER_SIZE;
50
56void usart_configuration(void)
57{
58 gpio_init_type gpio_init_struct;
59
60 /* enable the usart2 and gpio clock */
61 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
63
64 /* enable the usart3 and gpio clock */
65 crm_periph_clock_enable(CRM_USART3_PERIPH_CLOCK, TRUE);
66 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
67
68 gpio_default_para_init(&gpio_init_struct);
69
70 /* configure the usart2 tx pin */
71 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
72 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
73 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
74 gpio_init_struct.gpio_pins = GPIO_PINS_2;
75 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
76 gpio_init(GPIOA, &gpio_init_struct);
77
78 /* configure the usart3 tx pin */
79 gpio_init_struct.gpio_pins = GPIO_PINS_10;
80 gpio_init(GPIOB, &gpio_init_struct);
81
82 /* configure the usart2 rx pin */
83 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
84 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
85 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
86 gpio_init_struct.gpio_pins = GPIO_PINS_3;
87 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
88 gpio_init(GPIOA, &gpio_init_struct);
89
90 /* configure the usart3 rx pin */
91 gpio_init_struct.gpio_pins = GPIO_PINS_11;
92 gpio_init(GPIOB, &gpio_init_struct);
93
94 /* configure usart2 param */
95 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
96 usart_parity_selection_config(USART2, USART_PARITY_NONE);
97 usart_transmitter_enable(USART2, TRUE);
98 usart_receiver_enable(USART2, TRUE);
99 usart_enable(USART2, TRUE);
100
101 /* configure usart3 param */
102 usart_init(USART3, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
103 usart_parity_selection_config(USART3, USART_PARITY_NONE);
104 usart_transmitter_enable(USART3, TRUE);
105 usart_receiver_enable(USART3, TRUE);
106 usart_enable(USART3, TRUE);
107}
108
116uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
117{
118 while(buffer_length--)
119 {
120 if(*pbuffer1 != *pbuffer2)
121 {
122 return 0;
123 }
124 pbuffer1++;
125 pbuffer2++;
126 }
127 return 1;
128}
129
135int main(void)
136{
137 system_clock_config();
138 at32_board_init();
139 usart_configuration();
140
141 /* wait until end of transmission from usart2 to usart3 */
142 while(usart3_rx_counter < usart2_tx_buffer_size)
143 {
144 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
145 usart_data_transmit(USART2, usart2_tx_buffer[usart2_tx_counter++]);
146
147 while(usart_flag_get(USART3, USART_RDBF_FLAG) == RESET);
148 usart3_rx_buffer[usart3_rx_counter++] = usart_data_receive(USART3);
149 }
150
151 /* wait until end of transmission from usart3 to usart2 */
152 while(usart2_rx_counter < usart3_tx_buffer_size)
153 {
154 while(usart_flag_get(USART3, USART_TDBE_FLAG) == RESET);
155 usart_data_transmit(USART3, usart3_tx_buffer[usart3_tx_counter++]);
156
157 while(usart_flag_get(USART2, USART_RDBF_FLAG) == RESET);
158 usart2_rx_buffer[usart2_rx_counter++] = usart_data_receive(USART2);
159 }
160
161 while(1)
162 {
163 /* compare data buffer */
164 if(buffer_compare(usart2_tx_buffer, usart3_rx_buffer, USART2_TX_BUFFER_SIZE) && \
165 buffer_compare(usart3_tx_buffer, usart2_rx_buffer, USART3_TX_BUFFER_SIZE))
166 {
167 at32_led_toggle(LED2);
168 at32_led_toggle(LED3);
169 at32_led_toggle(LED4);
170 delay_sec(1);
171 }
172 }
173}
174
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/polling/src/main.c:56
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/usart/polling/src/main.c:116
usart3_tx_counter
uint8_t usart3_tx_counter
Definition: project/at_start_f403/examples/usart/polling/src/main.c:45
usart2_tx_counter
uint8_t usart2_tx_counter
Definition: project/at_start_f403/examples/usart/polling/src/main.c:44
usart2_tx_buffer_size
uint8_t usart2_tx_buffer_size
Definition: project/at_start_f403/examples/usart/polling/src/main.c:48
usart3_rx_buffer
uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/polling/src/main.c:43
usart2_rx_counter
uint8_t usart2_rx_counter
Definition: project/at_start_f403/examples/usart/polling/src/main.c:46
USART2_TX_BUFFER_SIZE
#define USART2_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/polling/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/polling/src/main.c:135
usart3_tx_buffer_size
uint8_t usart3_tx_buffer_size
Definition: project/at_start_f403/examples/usart/polling/src/main.c:49
usart2_tx_buffer
uint8_t usart2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/polling/src/main.c:40
USART3_TX_BUFFER_SIZE
#define USART3_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/polling/src/main.c:38
usart3_tx_buffer
uint8_t usart3_tx_buffer[]
Definition: project/at_start_f403/examples/usart/polling/src/main.c:41
usart3_rx_counter
uint8_t usart3_rx_counter
Definition: project/at_start_f403/examples/usart/polling/src/main.c:47
usart2_rx_buffer
uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/polling/src/main.c:42
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART3_PERIPH_CLOCK
@ CRM_USART3_PERIPH_CLOCK
Definition: at32f403_crm.h:143
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_parity_selection_config
void usart_parity_selection_config(usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config.
Definition: at32f403_usart.c:141
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_PARITY_NONE
@ USART_PARITY_NONE
Definition: at32f403_usart.h:92
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART3
#define USART3
Definition: at32f403_usart.h:319
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • printf
  • inc
project/at_start_f403/examples/usart/printf/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • printf
  • inc
project/at_start_f403/examples/usart/printf/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • printf
  • inc
project/at_start_f403/examples/usart/printf/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • printf
  • src
project/at_start_f403/examples/usart/printf/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • printf
  • src
project/at_start_f403/examples/usart/printf/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/printf/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • printf
  • src
project/at_start_f403/examples/usart/printf/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36__IO uint32_t time_cnt = 0;
37
43int main(void)
44{
45 system_clock_config();
46 at32_board_init();
47 uart_print_init(115200);
48
49 /* output a message on hyperterminal using printf function */
50 printf("usart printf example: retarget the c library printf function to the usart\r\n");
51
52 while(1)
53 {
54 printf("usart printf counter: %u\r\n",time_cnt++);
55 delay_sec(1);
56 }
57}
58
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/printf/src/main.c:43
time_cnt
__IO uint32_t time_cnt
Definition: project/at_start_f403/examples/usart/printf/src/main.c:36
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • receiver_mute
  • inc
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • receiver_mute
  • inc
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • receiver_mute
  • inc
project/at_start_f403/examples/usart/receiver_mute/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • receiver_mute
  • src
project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • receiver_mute
  • src
project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern uint8_t usart3_rx_buffer[];
29extern uint8_t rx_counter;
30
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
141void USART3_IRQHandler(void)
142{
143 if(usart_flag_get(USART3, USART_RDBF_FLAG) != RESET)
144 {
145 usart3_rx_buffer[rx_counter++] = usart_data_receive(USART3);
146 }
147}
148
usart3_rx_buffer
uint8_t usart3_rx_buffer[]
Definition: project/at_start_f403/examples/usart/half_duplex/src/main.c:43
USART3_IRQHandler
void USART3_IRQHandler(void)
this function handles usart3 handler.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:141
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:105
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:44
rx_counter
uint8_t rx_counter
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:47
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:79
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/at32f403_int.c:114
RESET
@ RESET
Definition: at32f403.h:304
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART3
#define USART3
Definition: at32f403_usart.h:319
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • receiver_mute
  • src
project/at_start_f403/examples/usart/receiver_mute/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define BUFFER_SIZE 7
37#define MATCH_ID_VAL 0x81
38#define ERROR_ID_VAL 0x82
39#define DATA1_VAL 0x7F
40#define DATA2_VAL 0x7A
41#define DATA3_VAL 0x7B
42#define DATA4_VAL 0x7C
43
44uint8_t usart2_tx_buffer[BUFFER_SIZE] = {DATA1_VAL, MATCH_ID_VAL, DATA2_VAL, ERROR_ID_VAL, DATA3_VAL, MATCH_ID_VAL, DATA4_VAL};
45uint8_t usart3_rx_buffer[BUFFER_SIZE];
46uint8_t tx_counter = 0;
47uint8_t rx_counter = 0;
48
54void usart_configuration(void)
55{
56 gpio_init_type gpio_init_struct;
57
58 /* enable the usart2 and gpio clock */
59 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
60 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
61
62 /* enable the usart3 and gpio clock */
63 crm_periph_clock_enable(CRM_USART3_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
65
66 gpio_default_para_init(&gpio_init_struct);
67
68 /* configure the usart2 tx pin */
69 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
70 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
71 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
72 gpio_init_struct.gpio_pins = GPIO_PINS_2;
73 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
74 gpio_init(GPIOA, &gpio_init_struct);
75
76 /* configure the usart3 rx pin */
77 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
78 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
79 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
80 gpio_init_struct.gpio_pins = GPIO_PINS_11;
81 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
82 gpio_init(GPIOB, &gpio_init_struct);
83
84 /* configure usart2 param */
85 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
86 usart_transmitter_enable(USART2, TRUE);
87 usart_enable(USART2, TRUE);
88
89 /* config usart3 nvic interrupt */
90 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
91 nvic_irq_enable(USART3_IRQn, 0 ,0);
92
93 /* configure usart3 param */
94 usart_init(USART3, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
95 usart_receiver_enable(USART3, TRUE);
96 usart_interrupt_enable(USART3, USART_RDBF_INT, TRUE);
97 usart_wakeup_id_set(USART3, 0x01);
98 usart_wakeup_mode_set(USART3, USART_WAKEUP_BY_MATCHING_ID);
99 usart_receiver_mute_enable(USART3, TRUE);
100 usart_enable(USART3, TRUE);
101}
102
108int main(void)
109{
110 system_clock_config();
111 at32_board_init();
112 usart_configuration();
113
114 /* usart2 transmit data */
115 while(tx_counter < BUFFER_SIZE)
116 {
117 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
118 usart_data_transmit(USART2, usart2_tx_buffer[tx_counter++]);
119 }
120
121 /* wait usart2 data transmission complete */
122 while(usart_flag_get(USART2, USART_TDC_FLAG) == RESET);
123
124 while(1)
125 {
126 if((usart3_rx_buffer[0] == MATCH_ID_VAL) && (usart3_rx_buffer[1] == DATA2_VAL) && \
127 (usart3_rx_buffer[2] == MATCH_ID_VAL) && (usart3_rx_buffer[3] == DATA4_VAL))
128 {
129 at32_led_toggle(LED2);
130 at32_led_toggle(LED3);
131 at32_led_toggle(LED4);
132 delay_sec(1);
133 }
134 }
135}
136
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
DATA4_VAL
#define DATA4_VAL
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:42
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:54
usart2_tx_buffer
uint8_t usart2_tx_buffer[7]
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:44
ERROR_ID_VAL
#define ERROR_ID_VAL
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:38
tx_counter
uint8_t tx_counter
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:46
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:36
rx_counter
uint8_t rx_counter
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:47
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:108
DATA2_VAL
#define DATA2_VAL
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:40
DATA3_VAL
#define DATA3_VAL
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:41
MATCH_ID_VAL
#define MATCH_ID_VAL
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:37
usart3_rx_buffer
uint8_t usart3_rx_buffer[7]
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:45
DATA1_VAL
#define DATA1_VAL
Definition: project/at_start_f403/examples/usart/receiver_mute/src/main.c:39
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART3_PERIPH_CLOCK
@ CRM_USART3_PERIPH_CLOCK
Definition: at32f403_crm.h:143
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
USART3_IRQn
@ USART3_IRQn
Definition: at32f403.h:218
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_wakeup_id_set
void usart_wakeup_id_set(usart_type *usart_x, uint8_t usart_id)
set the wakeup id of the usart.
Definition: at32f403_usart.c:304
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_wakeup_mode_set
void usart_wakeup_mode_set(usart_type *usart_x, usart_wakeup_mode_type wakeup_mode)
select the usart wakeup method in multi-processor communication.
Definition: at32f403_usart.c:320
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_receiver_mute_enable
void usart_receiver_mute_enable(usart_type *usart_x, confirm_state new_state)
config the usart in mute mode in multi-processor communication.
Definition: at32f403_usart.c:334
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_WAKEUP_BY_MATCHING_ID
@ USART_WAKEUP_BY_MATCHING_ID
Definition: at32f403_usart.h:103
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_TDC_FLAG
#define USART_TDC_FLAG
Definition: at32f403_usart.h:56
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART3
#define USART3
Definition: at32f403_usart.h:319
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • rs485
  • inc
project/at_start_f403/examples/usart/rs485/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • rs485
  • inc
project/at_start_f403/examples/usart/rs485/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • rs485
  • inc
project/at_start_f403/examples/usart/rs485/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • rs485
  • src
project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • rs485
  • src
project/at_start_f403/examples/usart/rs485/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/rs485/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • rs485
  • src
project/at_start_f403/examples/usart/rs485/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define RS485_BAUDRATE 9600
37#define RS485_BUFFER_SIZE 128
38
39uint8_t rs485_buffer_rx[RS485_BUFFER_SIZE];
40uint8_t rs485_buffer_rx_cnt = 0;
41
47static void rs485_config(void)
48{
49 gpio_init_type gpio_init_struct;
50
51 /* enable the uart2 and gpio clock */
52 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
54
55 gpio_default_para_init(&gpio_init_struct);
56
57 /* configure the uart2 tx,rx,de pin */
58 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
59 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
60 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
61 gpio_init_struct.gpio_pins = GPIO_PINS_2;
62 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
63 gpio_init(GPIOA, &gpio_init_struct);
64
65 gpio_init_struct.gpio_pins = GPIO_PINS_3;
66 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
67 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
68 gpio_init(GPIOA, &gpio_init_struct);
69
70 gpio_init_struct.gpio_pins = GPIO_PINS_1;
71 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
72 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
73 gpio_init(GPIOA, &gpio_init_struct);
74
75 gpio_bits_reset(GPIOA, GPIO_PINS_1);
76
77 /* configure uart2 param */
78 usart_init(USART2, RS485_BAUDRATE, USART_DATA_8BITS, USART_STOP_1_BIT);
79
80 usart_flag_clear(USART2, USART_RDBF_FLAG);
81 usart_interrupt_enable(USART2, USART_RDBF_INT, TRUE);
82
83 usart_receiver_enable(USART2, TRUE);
84 usart_transmitter_enable(USART2, TRUE);
85 usart_enable(USART2, TRUE);
86
87 nvic_irq_enable(USART2_IRQn, 1, 0);
88}
89
96static void rs485_send_data(u8* buf, u8 cnt)
97{
98 gpio_bits_set(GPIOA, GPIO_PINS_1);
99 while(cnt--){
100 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
101 usart_data_transmit(USART2, *buf++);
102 }
103 while(usart_flag_get(USART2, USART_TDC_FLAG) == RESET);
104 gpio_bits_reset(GPIOA, GPIO_PINS_1);
105}
106
112int main(void)
113{
114 char str[]="start test..\r\n";
115 u8 len = 0;
116
117 system_clock_config();
118 at32_board_init();
119 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
120
121 rs485_config();
122
123 len = sizeof(str);
124 rs485_send_data((u8*)str, len);
125 while(1)
126 {
127 if(usart_flag_get(USART2, USART_IDLEF_FLAG) != RESET)
128 {
129 usart_data_receive(USART2);
130 usart_interrupt_enable(USART2, USART_RDBF_INT, FALSE);
131 rs485_send_data(rs485_buffer_rx, rs485_buffer_rx_cnt);
132 rs485_buffer_rx_cnt = 0;
133 usart_interrupt_enable(USART2, USART_RDBF_INT, TRUE);
134 }
135 }
136}
137
143void USART2_IRQHandler(void)
144{
145 uint16_t tmp;
146
147 if(usart_flag_get(USART2, USART_RDBF_FLAG) != RESET)
148 {
149 tmp = usart_data_receive(USART2);
150 if(rs485_buffer_rx_cnt < RS485_BUFFER_SIZE)
151 {
152 rs485_buffer_rx[rs485_buffer_rx_cnt++] = tmp;
153 }
154 }
155}
156
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
USART2_IRQn
@ USART2_IRQn
Definition: at32f403.h:217
u8
uint8_t u8
Definition: at32f403.h:287
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
USART2_IRQHandler
void USART2_IRQHandler(void)
usart2 interrupt handler
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:143
rs485_send_data
static void rs485_send_data(u8 *buf, u8 cnt)
rs485 send data
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:96
RS485_BAUDRATE
#define RS485_BAUDRATE
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:36
rs485_config
static void rs485_config(void)
rs485 configiguration.
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:47
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:112
rs485_buffer_rx
uint8_t rs485_buffer_rx[128]
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:39
RS485_BUFFER_SIZE
#define RS485_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:37
rs485_buffer_rx_cnt
uint8_t rs485_buffer_rx_cnt
Definition: project/at_start_f403/examples/usart/rs485/src/main.c:40
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_flag_clear
void usart_flag_clear(usart_type *usart_x, uint32_t flag)
clear the usart's pending flags.
Definition: at32f403_usart.c:673
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_IDLEF_FLAG
#define USART_IDLEF_FLAG
Definition: at32f403_usart.h:54
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_TDC_FLAG
#define USART_TDC_FLAG
Definition: at32f403_usart.h:56
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • smartcard
  • inc
project/at_start_f403/examples/usart/smartcard/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • smartcard
  • inc
project/at_start_f403/examples/usart/smartcard/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • smartcard
  • inc
project/at_start_f403/examples/usart/smartcard/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • smartcard
  • src
project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • smartcard
  • src
project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27#include "smartcard_config.h"
28
29extern uint32_t card_inserted;
30
44void NMI_Handler(void)
45{
46}
47
53void HardFault_Handler(void)
54{
55 /* go to infinite loop when hard fault exception occurs */
56 while(1)
57 {
58 }
59}
60
66void MemManage_Handler(void)
67{
68 /* go to infinite loop when memory manage exception occurs */
69 while(1)
70 {
71 }
72}
73
79void BusFault_Handler(void)
80{
81 /* go to infinite loop when bus fault exception occurs */
82 while(1)
83 {
84 }
85}
86
92void UsageFault_Handler(void)
93{
94 /* go to infinite loop when usage fault exception occurs */
95 while(1)
96 {
97 }
98}
99
105void SVC_Handler(void)
106{
107}
108
114void DebugMon_Handler(void)
115{
116}
117
123void PendSV_Handler(void)
124{
125}
126
132void SysTick_Handler(void)
133{
134}
135
141void EXINT9_5_IRQHandler(void)
142{
143 /* reset smart card cmdvcc */
144 gpio_bits_reset(SC_CMDVCC_PORT, SC_CMDVCC_PIN);
145
146 /* rst low */
147 gpio_bits_reset(SC_RESET_PORT, SC_RESET_PIN);
148
149 /* rst high */
150 gpio_bits_set(SC_RESET_PORT, SC_RESET_PIN);
151
152 /* clear sc exint line pending bit */
153 exint_flag_clear(SC_OFF_EXINT);
154
155 /* smart card detected */
156 card_inserted = 1;
157}
158
164void SC_USART_IRQHandler(void)
165{
166 /* if the sc_usart detects a parity error */
167 if(usart_flag_get(SC_USART, USART_PERR_FLAG) != RESET)
168 {
169 /* enable sc_usart rdbf interrupt (until receiving the corrupted byte) */
170 usart_interrupt_enable(SC_USART, USART_RDBF_INT, TRUE);
171 /* flush the sc_usart dr register */
172 usart_data_receive(SC_USART);
173 }
174
175 if(usart_flag_get(SC_USART, USART_RDBF_FLAG) != RESET)
176 {
177 /* disable sc_usart rdbf interrupt */
178 usart_interrupt_enable(SC_USART, USART_RDBF_INT, FALSE);
179 usart_data_receive(SC_USART);
180 }
181}
182
EXINT9_5_IRQHandler
void EXINT9_5_IRQHandler(void)
this function handles external lines 9 to 5 interrupt request.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:141
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:92
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:53
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:66
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:105
SC_USART_IRQHandler
void SC_USART_IRQHandler(void)
this function handles sc_usart global interrupt request.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:164
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:123
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:44
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:79
card_inserted
uint32_t card_inserted
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:61
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:132
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/smartcard/src/at32f403_int.c:114
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_bits_reset
void gpio_bits_reset(gpio_type *gpio_x, uint16_t pins)
clear the selected data port bits.
Definition: at32f403_gpio.c:349
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_PERR_FLAG
#define USART_PERR_FLAG
Definition: at32f403_usart.h:50
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
smartcard_config.h
header file of clock program
SC_RESET_PIN
#define SC_RESET_PIN
Definition: smartcard_config.h:46
SC_RESET_PORT
#define SC_RESET_PORT
Definition: smartcard_config.h:50
SC_OFF_EXINT
#define SC_OFF_EXINT
Definition: smartcard_config.h:57
SC_USART
#define SC_USART
Definition: smartcard_config.h:34
SC_CMDVCC_PORT
#define SC_CMDVCC_PORT
Definition: smartcard_config.h:51
SC_CMDVCC_PIN
#define SC_CMDVCC_PIN
Definition: smartcard_config.h:47
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • smartcard
  • src
project/at_start_f403/examples/usart/smartcard/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "smartcard_config.h"
28
37#define T0_PROTOCOL 0x00 /* t0 protocol */
38#define SETUP_LENGTH 20
39#define HIST_LENGTH 20
40#define SC_RECEIVE_TIMEOUT 0xA000 /* direction to reader */
41
42#define SC_USART_DIV_VAL 20 /* ISO 7816-3 protocol: SC_CLOCK_FREQ(PCLK/(2*USART_DIV_VAL)) is between 1 and 5 MHz */
43#define SC_F_DIV_D 372 /* ISO 7816-3 protocol: F/D = 372 */
44
45/* atr structure - answer to reset */
46typedef struct
47{
48 uint8_t ts; /* bit convention */
49 uint8_t t0; /* high nibble = n. of setup byte; low nibble = n. of historical byte */
50 uint8_t t[SETUP_LENGTH]; /* setup array */
51 uint8_t h[HIST_LENGTH]; /* historical array */
52 uint8_t tlength; /* setup array dimension */
53 uint8_t hlength; /* historical array dimension */
54} sc_atr_type;
55
56 sc_atr_type sc_a2r_struct;
57uint32_t sc_baud_rate = 0;
58uint32_t sc_clock_freq = 0;
59uint32_t counter = 0;
60 error_status atr_decode_status = ERROR;
61uint32_t card_inserted = 0, card_protocol = 1;
62uint8_t dst_buffer[50]= {
63 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
64 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
65 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
66 };
67
73void usart_configuration(void)
74{
75 gpio_init_type gpio_init_struct;
76 exint_init_type exint_init_struct;
77 crm_clocks_freq_type crm_clocks_struct;
78
79 /* enable gpio_3_5v, sc_usart_gpio_clk, gpio_reset, gpio_cmdvcc, gpio_off and iomux clocks */
80 crm_periph_clock_enable(SC_3_5V_CLK, TRUE);
81 crm_periph_clock_enable(SC_USART_GPIO_CLK, TRUE);
82 crm_periph_clock_enable(SC_RESET_CLK, TRUE);
83 crm_periph_clock_enable(SC_CMDVCC_CLK, TRUE);
84 crm_periph_clock_enable(SC_OFF_CLK, TRUE);
85 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
86
87 /* enable sc_usart clocks */
88 crm_periph_clock_enable(SC_USART_CLK, TRUE);
89
90 gpio_default_para_init(&gpio_init_struct);
91 /* configure sc_usart ck pin */
92 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
93 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
94 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
95 gpio_init_struct.gpio_pins = SC_USART_CLK_PIN;
96 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
97 gpio_init(SC_USART_CLK_PORT, &gpio_init_struct);
98
99 /* configure sc_usart tx pin */
100 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
101 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_OPEN_DRAIN;
102 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
103 gpio_init_struct.gpio_pins = SC_USART_TX_PIN;
104 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
105 gpio_init(SC_USART_TX_PORT, &gpio_init_struct);
106
107 /* configure smartcard reset pin */
108 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
109 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
110 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
111 gpio_init_struct.gpio_pins = SC_RESET_PIN;
112 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
113 gpio_init(SC_RESET_PORT, &gpio_init_struct);
114
115 /* set reset pin high */
116 gpio_bits_set(SC_RESET_PORT, SC_RESET_PIN);
117
118 /* configure smartcard 3/5v pin */
119 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
120 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
121 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
122 gpio_init_struct.gpio_pins = SC_3_5V_PIN;
123 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
124 gpio_init(SC_3_5V_PORT, &gpio_init_struct);
125
126 /* select 5 v */
127 gpio_bits_set(SC_3_5V_PORT, SC_3_5V_PIN);
128
129 /* configure smartcard cmdvcc pin */
130 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
131 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
132 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
133 gpio_init_struct.gpio_pins = SC_CMDVCC_PIN;
134 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
135 gpio_init(SC_CMDVCC_PORT, &gpio_init_struct);
136
137 /* set smartcard cmdvcc */
138 gpio_bits_set(SC_CMDVCC_PORT, SC_CMDVCC_PIN);
139
140 /* configure smartcard off pin */
141 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
142 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
143 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
144 gpio_init_struct.gpio_pins = SC_OFF_PIN;
145 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
146 gpio_init(SC_OFF_PORT, &gpio_init_struct);
147
148 /* nvic interrupt init */
149 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
150 NVIC_ClearPendingIRQ(SC_OFF_EXINT_IRQ);
151 nvic_irq_enable(SC_OFF_EXINT_IRQ, 0, 0);
152 nvic_irq_enable(SC_USART_IRQn, 1, 0);
153
154 /* configure smartcard off exint */
155 gpio_exint_line_config(SC_OFF_PORTSOURCE, SC_OFF_PINSOURCE);
156
157 exint_default_para_init(&exint_init_struct);
158 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
159 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
160 exint_init_struct.line_select = SC_OFF_EXINT;
161 exint_init_struct.line_enable = TRUE;
162 exint_init(&exint_init_struct);
163
164 /* clear sc exint line pending bit */
165 exint_flag_clear(SC_OFF_EXINT);
166
167 /* sc_usart clock set to (apbclk / (2 * SC_USART_DIV_VAL)) */
168 usart_irda_smartcard_division_set(SC_USART, SC_USART_DIV_VAL);
169 /* sc_usart guard time set to 2 bit */
170 usart_smartcard_guard_time_set(SC_USART, 0x2);
171
172 /* configure sc usart clk */
173 usart_clock_enable(SC_USART, TRUE);
174
175 crm_clocks_freq_get(&crm_clocks_struct);
176 sc_clock_freq = crm_clocks_struct.apb1_freq / (2 * SC_USART_DIV_VAL); /* ISO 7816-3 protocol: the CLK frequency is between 1 and 5 MHz */
177 sc_baud_rate = sc_clock_freq / SC_F_DIV_D;
178 /* configure sc usart param */
179 usart_init(SC_USART, sc_baud_rate, USART_DATA_9BITS, USART_STOP_1_5_BIT);
180 usart_parity_selection_config(SC_USART, USART_PARITY_EVEN);
181 usart_transmitter_enable(SC_USART, TRUE);
182 usart_receiver_enable(SC_USART, TRUE);
183
184 /* enable the sc_usart parity error interrupt */
185 usart_interrupt_enable(SC_USART, USART_PERR_INT, TRUE);
186 usart_enable(SC_USART, TRUE);
187
188 /* enable the nack transmission */
189 usart_smartcard_nack_set(SC_USART, TRUE);
190
191 /* enable the smartcard mode */
192 usart_smartcard_mode_enable(SC_USART, TRUE);
193}
194
200uint8_t sc_response_decode(__IO uint8_t *card)
201{
202 uint32_t i = 0, flag = 0, buf = 0, protocol = 0;
203
204 sc_a2r_struct.ts = 0;
205 sc_a2r_struct.t0 = 0;
206 for(i = 0; i < SETUP_LENGTH; i++)
207 {
208 sc_a2r_struct.t[i] = 0;
209 }
210 for(i = 0;i < HIST_LENGTH; i++)
211 {
212 sc_a2r_struct.h[i] = 0;
213 }
214 sc_a2r_struct.tlength = 0;
215 sc_a2r_struct.hlength = 0;
216
217 /* initial character */
218 sc_a2r_struct.ts = card[0];
219
220 /* format character */
221 sc_a2r_struct.t0 = card[1];
222
223 sc_a2r_struct.hlength = sc_a2r_struct.t0 & 0x0F;
224
225 if((sc_a2r_struct.t0 & 0x80) == 0x80) flag = 1;
226
227 for(i = 0; i < 4; i++)
228 {
229 sc_a2r_struct.tlength = sc_a2r_struct.tlength + (((sc_a2r_struct.t0 & 0xF0) >> (4 + i)) & 0x1);
230 }
231
232 for(i = 0; i < sc_a2r_struct.tlength; i++)
233 {
234 sc_a2r_struct.t[i] = card[i + 2];
235 }
236
237 protocol = sc_a2r_struct.t[sc_a2r_struct.tlength - 1] & 0x0F;
238
239 while(flag)
240 {
241 if((sc_a2r_struct.t[sc_a2r_struct.tlength - 1] & 0x80)== 0x80)
242 {
243 flag = 1;
244 }
245 else
246 {
247 flag = 0;
248 }
249 buf = sc_a2r_struct.tlength;
250 sc_a2r_struct.tlength = 0;
251
252 for(i = 0; i < 4; i++)
253 {
254 sc_a2r_struct.tlength = sc_a2r_struct.tlength + (((sc_a2r_struct.t[buf - 1] & 0xF0) >> (4 + i)) & 0x1);
255 }
256 for(i = 0; i < sc_a2r_struct.tlength; i++)
257 {
258 sc_a2r_struct.t[buf + i] = card[i + 2 + buf];
259 }
260 sc_a2r_struct.tlength += buf;
261 }
262
263 for(i = 0;i < sc_a2r_struct.hlength; i++)
264 {
265 sc_a2r_struct.h[i] = card[i + 2 + sc_a2r_struct.tlength];
266 }
267
268 return ((uint8_t)protocol);
269}
270
276int main(void)
277{
278 uint32_t index = 0;
279 system_clock_config();
280 at32_board_init();
281 usart_configuration();
282
283 /* loop while no smartcard is detected */
284 while(card_inserted == 0)
285 {
286 }
287
288 /* read smartcard atr response */
289 for(index = 0; index < 40; index++, counter = 0)
290 {
291 while((usart_flag_get(SC_USART, USART_RDBF_FLAG) == RESET) && (counter != SC_RECEIVE_TIMEOUT))
292 {
293 counter++;
294 }
295
296 if(counter != SC_RECEIVE_TIMEOUT)
297 {
298 dst_buffer[index] = usart_data_receive(SC_USART);
299 }
300 }
301
302 /* decode atr */
303 card_protocol = sc_response_decode(dst_buffer);
304
305 /* test if the inserted card is iso7816-3 t=0 compatible */
306 if(card_protocol == 0)
307 {
308 /* inserted card is iso7816-3 t=0 compatible */
309 atr_decode_status = SUCCESS;
310 }
311 else
312 {
313 /* inserted smartcard is not iso7816-3 t=0 compatible */
314 atr_decode_status = ERROR;
315 }
316
317 /* judge whether the result is correct */
318 if(atr_decode_status == SUCCESS)
319 {
320 /* trun on the led */
321 at32_led_on(LED2);
322 at32_led_on(LED3);
323 at32_led_on(LED4);
324 }
325
326 while(1)
327 {
328 }
329}
330
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
sc_baud_rate
uint32_t sc_baud_rate
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:57
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:73
sc_response_decode
uint8_t sc_response_decode(__IO uint8_t *card)
decode the card atr response.
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:200
card_protocol
uint32_t card_protocol
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:61
counter
uint32_t counter
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:59
SETUP_LENGTH
#define SETUP_LENGTH
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:38
SC_USART_DIV_VAL
#define SC_USART_DIV_VAL
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:42
sc_a2r_struct
sc_atr_type sc_a2r_struct
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:56
SC_F_DIV_D
#define SC_F_DIV_D
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:43
atr_decode_status
error_status atr_decode_status
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:60
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:276
card_inserted
uint32_t card_inserted
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:61
dst_buffer
uint8_t dst_buffer[50]
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:62
SC_RECEIVE_TIMEOUT
#define SC_RECEIVE_TIMEOUT
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:40
sc_clock_freq
uint32_t sc_clock_freq
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:58
HIST_LENGTH
#define HIST_LENGTH
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:39
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
error_status
error_status
error status
Definition: at32f403.h:314
ERROR
@ ERROR
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_OPEN_DRAIN
@ GPIO_OUTPUT_OPEN_DRAIN
Definition: at32f403_gpio.h:164
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usart_clock_enable
void usart_clock_enable(usart_type *usart_x, confirm_state new_state)
usart enable the ck pin.
Definition: at32f403_usart.c:236
usart_smartcard_nack_set
void usart_smartcard_nack_set(usart_type *usart_x, confirm_state new_state)
enable or disable nack transmission in smartcard mode.
Definition: at32f403_usart.c:459
usart_parity_selection_config
void usart_parity_selection_config(usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config.
Definition: at32f403_usart.c:141
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_irda_smartcard_division_set
void usart_irda_smartcard_division_set(usart_type *usart_x, uint8_t div_val)
config the irda/smartcard division.
Definition: at32f403_usart.c:429
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_smartcard_guard_time_set
void usart_smartcard_guard_time_set(usart_type *usart_x, uint8_t guard_time_val)
config the specified usart smartcard guard time.
Definition: at32f403_usart.c:415
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
usart_smartcard_mode_enable
void usart_smartcard_mode_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart smart card mode.
Definition: at32f403_usart.c:444
USART_STOP_1_5_BIT
@ USART_STOP_1_5_BIT
Definition: at32f403_usart.h:159
USART_DATA_9BITS
@ USART_DATA_9BITS
Definition: at32f403_usart.h:112
USART_PARITY_EVEN
@ USART_PARITY_EVEN
Definition: at32f403_usart.h:93
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART_PERR_INT
#define USART_PERR_INT
Definition: at32f403_usart.h:74
smartcard_config.h
header file of clock program
SC_RESET_PIN
#define SC_RESET_PIN
Definition: smartcard_config.h:46
SC_USART_TX_PIN
#define SC_USART_TX_PIN
Definition: smartcard_config.h:37
SC_RESET_PORT
#define SC_RESET_PORT
Definition: smartcard_config.h:50
SC_3_5V_PORT
#define SC_3_5V_PORT
Definition: smartcard_config.h:49
SC_RESET_CLK
#define SC_RESET_CLK
Definition: smartcard_config.h:54
SC_USART_CLK_PIN
#define SC_USART_CLK_PIN
Definition: smartcard_config.h:39
SC_OFF_EXINT
#define SC_OFF_EXINT
Definition: smartcard_config.h:57
SC_USART
#define SC_USART
Definition: smartcard_config.h:34
SC_OFF_CLK
#define SC_OFF_CLK
Definition: smartcard_config.h:56
SC_CMDVCC_CLK
#define SC_CMDVCC_CLK
Definition: smartcard_config.h:55
SC_USART_GPIO_CLK
#define SC_USART_GPIO_CLK
Definition: smartcard_config.h:36
SC_3_5V_PIN
#define SC_3_5V_PIN
Definition: smartcard_config.h:45
SC_OFF_PIN
#define SC_OFF_PIN
Definition: smartcard_config.h:48
SC_CMDVCC_PORT
#define SC_CMDVCC_PORT
Definition: smartcard_config.h:51
SC_USART_IRQn
#define SC_USART_IRQn
Definition: smartcard_config.h:41
SC_USART_CLK_PORT
#define SC_USART_CLK_PORT
Definition: smartcard_config.h:40
SC_3_5V_CLK
#define SC_3_5V_CLK
Definition: smartcard_config.h:53
SC_USART_TX_PORT
#define SC_USART_TX_PORT
Definition: smartcard_config.h:38
SC_OFF_PORTSOURCE
#define SC_OFF_PORTSOURCE
Definition: smartcard_config.h:58
SC_OFF_EXINT_IRQ
#define SC_OFF_EXINT_IRQ
Definition: smartcard_config.h:60
SC_USART_CLK
#define SC_USART_CLK
Definition: smartcard_config.h:35
SC_CMDVCC_PIN
#define SC_CMDVCC_PIN
Definition: smartcard_config.h:47
SC_OFF_PORT
#define SC_OFF_PORT
Definition: smartcard_config.h:52
SC_OFF_PINSOURCE
#define SC_OFF_PINSOURCE
Definition: smartcard_config.h:59
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
crm_clocks_freq_type::apb1_freq
uint32_t apb1_freq
Definition: at32f403_crm.h:454
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
sc_atr_type
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:47
sc_atr_type::t
uint8_t t[20]
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:50
sc_atr_type::h
uint8_t h[20]
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:51
sc_atr_type::ts
uint8_t ts
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:48
sc_atr_type::tlength
uint8_t tlength
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:52
sc_atr_type::hlength
uint8_t hlength
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:53
sc_atr_type::t0
uint8_t t0
Definition: project/at_start_f403/examples/usart/smartcard/src/main.c:49
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • synchronous
  • inc
project/at_start_f403/examples/usart/synchronous/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • synchronous
  • inc
project/at_start_f403/examples/usart/synchronous/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • synchronous
  • inc
project/at_start_f403/examples/usart/synchronous/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • synchronous
  • src
project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • synchronous
  • src
project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/synchronous/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • synchronous
  • src
project/at_start_f403/examples/usart/synchronous/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define COUNTOF(a) (sizeof(a) / sizeof(*(a)))
37#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
38#define SPI2_TX_BUFFER_SIZE (COUNTOF(spi2_tx_buffer) - 1)
39#define DYMMY_BYTE 0x00
40
41uint8_t usart2_tx_buffer[] = "usart synchronous example: usart2 -> spi2";
42uint8_t spi2_tx_buffer[] = "usart synchronous example: spi2 -> usart2";
43uint8_t usart2_rx_buffer[SPI2_TX_BUFFER_SIZE];
44uint8_t spi2_rx_buffer[USART2_TX_BUFFER_SIZE];
45uint8_t usart2_tx_counter = 0x00;
46uint8_t spi2_tx_counter = 0x00;
47uint8_t usart2_rx_counter = 0x00;
48uint8_t spi2_rx_counter = 0x00;
49uint8_t usart2_tx_buffer_size = USART2_TX_BUFFER_SIZE;
50uint8_t spi2_tx_buffer_size = SPI2_TX_BUFFER_SIZE;
51
57void usart_spi_configuration(void)
58{
59 gpio_init_type gpio_init_struct;
60 spi_init_type spi_init_struct;
61
62 /* enable the usart2 and gpio clock */
63 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
65
66 /* enable the spi2 and gpio clock */
67 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
68 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
69
70 gpio_default_para_init(&gpio_init_struct);
71
72 /* configure the usart2 tx and ck pin */
73 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
74 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
75 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
76 gpio_init_struct.gpio_pins = GPIO_PINS_2 | GPIO_PINS_4;
77 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
78 gpio_init(GPIOA, &gpio_init_struct);
79
80 /* configure the usart2 rx pin */
81 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
82 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
83 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
84 gpio_init_struct.gpio_pins = GPIO_PINS_3;
85 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
86 gpio_init(GPIOA, &gpio_init_struct);
87
88 /* configure the spi2 mosi and ck pin */
89 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
90 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
91 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
92 gpio_init_struct.gpio_pins = GPIO_PINS_15 | GPIO_PINS_13;
93 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
94 gpio_init(GPIOB, &gpio_init_struct);
95
96 /* configure the spi2 miso pin */
97 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
98 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
99 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
100 gpio_init_struct.gpio_pins = GPIO_PINS_14;
101 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
102 gpio_init(GPIOB, &gpio_init_struct);
103
104 /* configure usart2 param */
105 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
106 usart_clock_config(USART2, USART_CLOCK_POLARITY_HIGH, USART_CLOCK_PHASE_2EDGE, USART_CLOCK_LAST_BIT_OUTPUT);
107 usart_clock_enable(USART2, TRUE);
108 usart_transmitter_enable(USART2, TRUE);
109 usart_receiver_enable(USART2, TRUE);
110 usart_enable(USART2, TRUE);
111
112 /* configure spi2 param */
113 spi_default_para_init(&spi_init_struct);
114 spi_init_struct.transmission_mode = SPI_TRANSMIT_FULL_DUPLEX;
115 spi_init_struct.master_slave_mode =SPI_MODE_SLAVE;
116 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_LSB;
117 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
118 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_HIGH;
119 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
120 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
121 spi_init(SPI2, &spi_init_struct);
122 spi_enable(SPI2, TRUE);
123}
124
132uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
133{
134 while(buffer_length--)
135 {
136 if(*pbuffer1 != *pbuffer2)
137 {
138 return 0;
139 }
140 pbuffer1++;
141 pbuffer2++;
142 }
143 return 1;
144}
145
151int main(void)
152{
153 system_clock_config();
154 at32_board_init();
155 usart_spi_configuration();
156
157 /* wait until end of transmission from usart2 to spi2 */
158 while(spi2_rx_counter < usart2_tx_buffer_size)
159 {
160 /* usart transmit data */
161 while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
162 usart_data_transmit(USART2, usart2_tx_buffer[usart2_tx_counter++]);
163
164 /* wait until spi receive data */
165 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
166 spi2_rx_buffer[spi2_rx_counter++] = spi_i2s_data_receive(SPI2);
167
168 /* wait until usart receive data, and clear dummy byte in data register */
169 while(usart_flag_get(USART2, USART_RDBF_FLAG) == RESET);
170 usart_data_receive(USART2);
171 }
172
173 while(1)
174 {
175 /* compare data buffer */
176 if(buffer_compare(usart2_tx_buffer, spi2_rx_buffer, USART2_TX_BUFFER_SIZE))
177 {
178 at32_led_toggle(LED2);
179 at32_led_toggle(LED3);
180 at32_led_toggle(LED4);
181 delay_sec(1);
182 }
183 }
184}
185
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
spi2_tx_buffer
uint8_t spi2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:42
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:132
usart2_tx_counter
uint8_t usart2_tx_counter
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:45
usart_spi_configuration
void usart_spi_configuration(void)
config usart and spi
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:57
usart2_rx_buffer
uint8_t usart2_rx_buffer[((sizeof(spi2_tx_buffer)/sizeof(*(spi2_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:43
spi2_rx_counter
uint8_t spi2_rx_counter
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:48
SPI2_TX_BUFFER_SIZE
#define SPI2_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:38
usart2_tx_buffer_size
uint8_t usart2_tx_buffer_size
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:49
usart2_rx_counter
uint8_t usart2_rx_counter
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:47
USART2_TX_BUFFER_SIZE
#define USART2_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:151
spi2_tx_buffer_size
uint8_t spi2_tx_buffer_size
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:50
spi2_rx_buffer
uint8_t spi2_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:44
spi2_tx_counter
uint8_t spi2_tx_counter
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:46
usart2_tx_buffer
uint8_t usart2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/synchronous/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_SLAVE
@ SPI_MODE_SLAVE
Definition: at32f403_spi.h:96
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_LSB
@ SPI_FIRST_BIT_LSB
Definition: at32f403_spi.h:150
SPI_CLOCK_POLARITY_HIGH
@ SPI_CLOCK_POLARITY_HIGH
Definition: at32f403_spi.h:106
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI2
#define SPI2
Definition: at32f403_spi.h:447
usart_clock_enable
void usart_clock_enable(usart_type *usart_x, confirm_state new_state)
usart enable the ck pin.
Definition: at32f403_usart.c:236
usart_clock_config
void usart_clock_config(usart_type *usart_x, usart_clock_polarity_type clk_pol, usart_clock_phase_type clk_pha, usart_lbcp_type clk_lb)
usart clock config.
Definition: at32f403_usart.c:220
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
USART_CLOCK_POLARITY_HIGH
@ USART_CLOCK_POLARITY_HIGH
Definition: at32f403_usart.h:139
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_CLOCK_LAST_BIT_OUTPUT
@ USART_CLOCK_LAST_BIT_OUTPUT
Definition: at32f403_usart.h:148
USART_CLOCK_PHASE_2EDGE
@ USART_CLOCK_PHASE_2EDGE
Definition: at32f403_usart.h:130
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART2
#define USART2
Definition: at32f403_usart.h:318
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • transfer_by_dma_interrupt
  • inc
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • transfer_by_dma_interrupt
  • inc
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • transfer_by_dma_interrupt
  • inc
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • transfer_by_dma_interrupt
  • src
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • transfer_by_dma_interrupt
  • src
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28extern uint8_t usart2_tx_dma_status;
29extern uint8_t usart2_rx_dma_status;
30extern uint8_t usart3_tx_dma_status;
31extern uint8_t usart3_rx_dma_status;
32
46void NMI_Handler(void)
47{
48}
49
55void HardFault_Handler(void)
56{
57 /* go to infinite loop when hard fault exception occurs */
58 while(1)
59 {
60 }
61}
62
68void MemManage_Handler(void)
69{
70 /* go to infinite loop when memory manage exception occurs */
71 while(1)
72 {
73 }
74}
75
81void BusFault_Handler(void)
82{
83 /* go to infinite loop when bus fault exception occurs */
84 while(1)
85 {
86 }
87}
88
94void UsageFault_Handler(void)
95{
96 /* go to infinite loop when usage fault exception occurs */
97 while(1)
98 {
99 }
100}
101
107void SVC_Handler(void)
108{
109}
110
116void DebugMon_Handler(void)
117{
118}
119
125void PendSV_Handler(void)
126{
127}
128
134void SysTick_Handler(void)
135{
136}
137
143void DMA1_Channel7_IRQHandler(void)
144{
145 if(dma_flag_get(DMA1_FDT7_FLAG))
146 {
147 usart2_tx_dma_status = 1;
148 dma_flag_clear(DMA1_FDT7_FLAG);
149 dma_channel_enable(DMA1_CHANNEL7, FALSE);
150 }
151}
152
158void DMA1_Channel6_IRQHandler(void)
159{
160 if(dma_flag_get(DMA1_FDT6_FLAG))
161 {
162 usart2_rx_dma_status = 1;
163 dma_flag_clear(DMA1_FDT6_FLAG);
164 dma_channel_enable(DMA1_CHANNEL6, FALSE);
165 }
166}
167
173void DMA1_Channel2_IRQHandler(void)
174{
175 if(dma_flag_get(DMA1_FDT2_FLAG))
176 {
177 usart3_tx_dma_status = 1;
178 dma_flag_clear(DMA1_FDT2_FLAG);
179 dma_channel_enable(DMA1_CHANNEL2, FALSE);
180 }
181}
182
188void DMA1_Channel3_IRQHandler(void)
189{
190 if(dma_flag_get(DMA1_FDT3_FLAG))
191 {
192 usart3_rx_dma_status = 1;
193 dma_flag_clear(DMA1_FDT3_FLAG);
194 dma_channel_enable(DMA1_CHANNEL3, FALSE);
195 }
196}
197
DMA1_Channel2_IRQHandler
void DMA1_Channel2_IRQHandler(void)
this function handles dma1 channel2 handler.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:173
usart3_tx_dma_status
uint8_t usart3_tx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:46
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:94
usart2_tx_dma_status
uint8_t usart2_tx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:44
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:55
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:68
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:107
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:125
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:46
DMA1_Channel7_IRQHandler
void DMA1_Channel7_IRQHandler(void)
this function handles dma1 channel7 handler.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:143
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:81
usart2_rx_dma_status
uint8_t usart2_rx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:45
usart3_rx_dma_status
uint8_t usart3_rx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:47
DMA1_Channel3_IRQHandler
void DMA1_Channel3_IRQHandler(void)
this function handles dma1 channel3 handler.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:188
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:134
DMA1_Channel6_IRQHandler
void DMA1_Channel6_IRQHandler(void)
this function handles dma1 channel6 handler.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:158
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/at32f403_int.c:116
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
DMA1_FDT7_FLAG
#define DMA1_FDT7_FLAG
Definition: at32f403_dma.h:88
DMA1_FDT6_FLAG
#define DMA1_FDT6_FLAG
Definition: at32f403_dma.h:84
DMA1_FDT2_FLAG
#define DMA1_FDT2_FLAG
Definition: at32f403_dma.h:68
DMA1_FDT3_FLAG
#define DMA1_FDT3_FLAG
Definition: at32f403_dma.h:72
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL2
#define DMA1_CHANNEL2
Definition: at32f403_dma.h:356
DMA1_CHANNEL6
#define DMA1_CHANNEL6
Definition: at32f403_dma.h:360
DMA1_CHANNEL7
#define DMA1_CHANNEL7
Definition: at32f403_dma.h:361
FALSE
@ FALSE
Definition: at32f403.h:309
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • transfer_by_dma_interrupt
  • src
project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define COUNTOF(a) (sizeof(a) / sizeof(*(a)))
37#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
38#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)
39
40uint8_t usart2_tx_buffer[] = "usart transfer by dma interrupt: usart2 -> usart3 using dma";
41uint8_t usart3_tx_buffer[] = "usart transfer by dma interrupt: usart3 -> usart2 using dma";
42uint8_t usart2_rx_buffer[USART3_TX_BUFFER_SIZE];
43uint8_t usart3_rx_buffer[USART2_TX_BUFFER_SIZE];
44volatile uint8_t usart2_tx_dma_status = 0;
45volatile uint8_t usart2_rx_dma_status = 0;
46volatile uint8_t usart3_tx_dma_status = 0;
47volatile uint8_t usart3_rx_dma_status = 0;
48
54void usart_configuration(void)
55{
56 gpio_init_type gpio_init_struct;
57
58 /* enable the usart2 and gpio clock */
59 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
60 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
61
62 /* enable the usart3 and gpio clock */
63 crm_periph_clock_enable(CRM_USART3_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
65
66 gpio_default_para_init(&gpio_init_struct);
67 /* configure the usart2 tx pin */
68 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
69 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
70 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
71 gpio_init_struct.gpio_pins = GPIO_PINS_2;
72 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
73 gpio_init(GPIOA, &gpio_init_struct);
74
75 /* configure the usart3 tx pin */
76 gpio_init_struct.gpio_pins = GPIO_PINS_10;
77 gpio_init(GPIOB, &gpio_init_struct);
78
79 /* configure the usart2 rx pin */
80 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
81 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
82 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
83 gpio_init_struct.gpio_pins = GPIO_PINS_3;
84 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
85 gpio_init(GPIOA, &gpio_init_struct);
86
87 /* configure the usart3 rx pin */
88 gpio_init_struct.gpio_pins = GPIO_PINS_11;
89 gpio_init(GPIOB, &gpio_init_struct);
90
91 /* configure usart2 param */
92 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
93 usart_transmitter_enable(USART2, TRUE);
94 usart_receiver_enable(USART2, TRUE);
95 usart_dma_transmitter_enable(USART2, TRUE);
96 usart_dma_receiver_enable(USART2, TRUE);
97 usart_enable(USART2, TRUE);
98
99 /* configure usart3 param */
100 usart_init(USART3, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
101 usart_transmitter_enable(USART3, TRUE);
102 usart_receiver_enable(USART3, TRUE);
103 usart_dma_transmitter_enable(USART3, TRUE);
104 usart_dma_receiver_enable(USART3, TRUE);
105 usart_enable(USART3, TRUE);
106}
107
113void dma_configuration(void)
114{
115 dma_init_type dma_init_struct;
116
117 /* enable dma1 clock */
118 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
119
120 /* dma1 channel7 for usart2 tx configuration */
121 dma_reset(DMA1_CHANNEL7);
122 dma_default_para_init(&dma_init_struct);
123 dma_init_struct.buffer_size = USART2_TX_BUFFER_SIZE;
124 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
125 dma_init_struct.memory_base_addr = (uint32_t)usart2_tx_buffer;
126 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
127 dma_init_struct.memory_inc_enable = TRUE;
128 dma_init_struct.peripheral_base_addr = (uint32_t)&USART2->dt;
129 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
130 dma_init_struct.peripheral_inc_enable = FALSE;
131 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
132 dma_init_struct.loop_mode_enable = FALSE;
133 dma_init(DMA1_CHANNEL7, &dma_init_struct);
134
135 /* enable transfer full data interrupt */
136 dma_interrupt_enable(DMA1_CHANNEL7, DMA_FDT_INT, TRUE);
137
138 /* dma1 channel1 interrupt nvic init */
139 nvic_irq_enable(DMA1_Channel7_IRQn, 0, 0);
140
141 /* dma1 channel6 for usart2 rx configuration */
142 dma_reset(DMA1_CHANNEL6);
143 dma_default_para_init(&dma_init_struct);
144 dma_init_struct.buffer_size = USART3_TX_BUFFER_SIZE;
145 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
146 dma_init_struct.memory_base_addr = (uint32_t)usart2_rx_buffer;
147 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
148 dma_init_struct.memory_inc_enable = TRUE;
149 dma_init_struct.peripheral_base_addr = (uint32_t)&USART2->dt;
150 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
151 dma_init_struct.peripheral_inc_enable = FALSE;
152 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
153 dma_init_struct.loop_mode_enable = FALSE;
154 dma_init(DMA1_CHANNEL6, &dma_init_struct);
155
156 /* enable transfer full data interrupt */
157 dma_interrupt_enable(DMA1_CHANNEL6, DMA_FDT_INT, TRUE);
158
159 /* dma1 channel6 interrupt nvic init */
160 nvic_irq_enable(DMA1_Channel6_IRQn, 0, 0);
161
162 /* dma1 channel2 for usart3 tx configuration */
163 dma_reset(DMA1_CHANNEL2);
164 dma_default_para_init(&dma_init_struct);
165 dma_init_struct.buffer_size = USART3_TX_BUFFER_SIZE;
166 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
167 dma_init_struct.memory_base_addr = (uint32_t)usart3_tx_buffer;
168 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
169 dma_init_struct.memory_inc_enable = TRUE;
170 dma_init_struct.peripheral_base_addr = (uint32_t)&USART3->dt;
171 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
172 dma_init_struct.peripheral_inc_enable = FALSE;
173 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
174 dma_init_struct.loop_mode_enable = FALSE;
175 dma_init(DMA1_CHANNEL2, &dma_init_struct);
176
177 /* enable transfer full data interrupt */
178 dma_interrupt_enable(DMA1_CHANNEL2, DMA_FDT_INT, TRUE);
179
180 /* dma1 channel2 interrupt nvic init */
181 nvic_irq_enable(DMA1_Channel2_IRQn, 0, 0);
182
183 /* dma1 channel3 for usart3 rx configuration */
184 dma_reset(DMA1_CHANNEL3);
185 dma_default_para_init(&dma_init_struct);
186 dma_init_struct.buffer_size = USART2_TX_BUFFER_SIZE;
187 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
188 dma_init_struct.memory_base_addr = (uint32_t)usart3_rx_buffer;
189 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
190 dma_init_struct.memory_inc_enable = TRUE;
191 dma_init_struct.peripheral_base_addr = (uint32_t)&USART3->dt;
192 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
193 dma_init_struct.peripheral_inc_enable = FALSE;
194 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
195 dma_init_struct.loop_mode_enable = FALSE;
196 dma_init(DMA1_CHANNEL3, &dma_init_struct);
197
198 /* enable transfer full data interrupt */
199 dma_interrupt_enable(DMA1_CHANNEL3, DMA_FDT_INT, TRUE);
200
201 /* dma1 channel3 interrupt nvic init */
202 nvic_irq_enable(DMA1_Channel3_IRQn, 0, 0);
203
204 dma_channel_enable(DMA1_CHANNEL6, TRUE); /* usart2 rx begin dma receiving */
205 dma_channel_enable(DMA1_CHANNEL3, TRUE); /* usart3 rx begin dma receiving */
206 dma_channel_enable(DMA1_CHANNEL7, TRUE); /* usart2 tx begin dma transmitting */
207 dma_channel_enable(DMA1_CHANNEL2, TRUE); /* usart3 tx begin dma transmitting */
208}
209
217uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
218{
219 while(buffer_length--)
220 {
221 if(*pbuffer1 != *pbuffer2)
222 {
223 return 0;
224 }
225 pbuffer1++;
226 pbuffer2++;
227 }
228 return 1;
229}
230
236int main(void)
237{
238 system_clock_config();
239 at32_board_init();
240 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
241 usart_configuration();
242 dma_configuration();
243
244 /* wait dma transmission complete */
245 while((usart2_tx_dma_status == 0) || (usart2_rx_dma_status == 0) || (usart3_tx_dma_status == 0) || (usart3_rx_dma_status == 0));
246
247 while(1)
248 {
249 /* compare data buffer */
250 if(buffer_compare(usart2_tx_buffer, usart3_rx_buffer, USART2_TX_BUFFER_SIZE) && \
251 buffer_compare(usart3_tx_buffer, usart2_rx_buffer, USART3_TX_BUFFER_SIZE))
252 {
253 at32_led_toggle(LED2);
254 at32_led_toggle(LED3);
255 at32_led_toggle(LED4);
256 delay_sec(1);
257 }
258 }
259}
260
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:54
usart3_tx_dma_status
volatile uint8_t usart3_tx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:46
usart2_tx_dma_status
volatile uint8_t usart2_tx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:44
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:217
usart3_rx_buffer
uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:43
dma_configuration
void dma_configuration(void)
config dma for usart2 and usart3
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:113
USART2_TX_BUFFER_SIZE
#define USART2_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:236
usart2_rx_dma_status
volatile uint8_t usart2_rx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:45
usart3_rx_dma_status
volatile uint8_t usart3_rx_dma_status
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:47
usart2_tx_buffer
uint8_t usart2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:40
USART3_TX_BUFFER_SIZE
#define USART3_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:38
usart3_tx_buffer
uint8_t usart3_tx_buffer[]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:41
usart2_rx_buffer
uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_interrupt/src/main.c:42
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART3_PERIPH_CLOCK
@ CRM_USART3_PERIPH_CLOCK
Definition: at32f403_crm.h:143
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
DMA1_Channel2_IRQn
@ DMA1_Channel2_IRQn
Definition: at32f403.h:190
DMA1_Channel3_IRQn
@ DMA1_Channel3_IRQn
Definition: at32f403.h:191
DMA1_Channel7_IRQn
@ DMA1_Channel7_IRQn
Definition: at32f403.h:195
DMA1_Channel6_IRQn
@ DMA1_Channel6_IRQn
Definition: at32f403.h:194
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_interrupt_enable
void dma_interrupt_enable(dma_channel_type *dmax_channely, uint32_t dma_int, confirm_state new_state)
enable or disable dma interrupt
Definition: at32f403_dma.c:155
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA_FDT_INT
#define DMA_FDT_INT
Definition: at32f403_dma.h:50
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL2
#define DMA1_CHANNEL2
Definition: at32f403_dma.h:356
DMA1_CHANNEL6
#define DMA1_CHANNEL6
Definition: at32f403_dma.h:360
DMA1_CHANNEL7
#define DMA1_CHANNEL7
Definition: at32f403_dma.h:361
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_dma_receiver_enable
void usart_dma_receiver_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface.
Definition: at32f403_usart.c:291
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_dma_transmitter_enable
void usart_dma_transmitter_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface.
Definition: at32f403_usart.c:277
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART3
#define USART3
Definition: at32f403_usart.h:319
USART2
#define USART2
Definition: at32f403_usart.h:318
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usart
  • transfer_by_dma_polling
  • inc
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usart
  • transfer_by_dma_polling
  • inc
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usart
  • transfer_by_dma_polling
  • inc
project/at_start_f403/examples/usart/transfer_by_dma_polling/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usart
  • transfer_by_dma_polling
  • src
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usart
  • transfer_by_dma_polling
  • src
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usart
  • transfer_by_dma_polling
  • src
project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define COUNTOF(a) (sizeof(a) / sizeof(*(a)))
37#define USART2_TX_BUFFER_SIZE (COUNTOF(usart2_tx_buffer) - 1)
38#define USART3_TX_BUFFER_SIZE (COUNTOF(usart3_tx_buffer) - 1)
39
40uint8_t usart2_tx_buffer[] = "usart transfer by dma interrupt: usart2 -> usart3 using dma";
41uint8_t usart3_tx_buffer[] = "usart transfer by dma interrupt: usart3 -> usart2 using dma";
42uint8_t usart2_rx_buffer[USART3_TX_BUFFER_SIZE];
43uint8_t usart3_rx_buffer[USART2_TX_BUFFER_SIZE];
44
50void usart_configuration(void)
51{
52 gpio_init_type gpio_init_struct;
53
54 /* enable the usart2 and gpio clock */
55 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
56 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
57
58 /* enable the usart3 and gpio clock */
59 crm_periph_clock_enable(CRM_USART3_PERIPH_CLOCK, TRUE);
60 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
61
62 gpio_default_para_init(&gpio_init_struct);
63 /* configure the usart2 tx pin */
64 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
65 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
66 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
67 gpio_init_struct.gpio_pins = GPIO_PINS_2;
68 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
69 gpio_init(GPIOA, &gpio_init_struct);
70
71 /* configure the usart3 tx pin */
72 gpio_init_struct.gpio_pins = GPIO_PINS_10;
73 gpio_init(GPIOB, &gpio_init_struct);
74
75 /* configure the usart2 rx pin */
76 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
77 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
78 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
79 gpio_init_struct.gpio_pins = GPIO_PINS_3;
80 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
81 gpio_init(GPIOA, &gpio_init_struct);
82
83 /* configure the usart3 rx pin */
84 gpio_init_struct.gpio_pins = GPIO_PINS_11;
85 gpio_init(GPIOB, &gpio_init_struct);
86
87 /* configure usart2 param */
88 usart_init(USART2, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
89 usart_transmitter_enable(USART2, TRUE);
90 usart_receiver_enable(USART2, TRUE);
91 usart_dma_transmitter_enable(USART2, TRUE);
92 usart_dma_receiver_enable(USART2, TRUE);
93 usart_enable(USART2, TRUE);
94
95 /* configure usart3 param */
96 usart_init(USART3, 115200, USART_DATA_8BITS, USART_STOP_1_BIT);
97 usart_transmitter_enable(USART3, TRUE);
98 usart_receiver_enable(USART3, TRUE);
99 usart_dma_transmitter_enable(USART3, TRUE);
100 usart_dma_receiver_enable(USART3, TRUE);
101 usart_enable(USART3, TRUE);
102}
103
109void dma_configuration(void)
110{
111 dma_init_type dma_init_struct;
112
113 /* enable dma1 clock */
114 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
115
116 /* dma1 channel7 for usart2 tx configuration */
117 dma_reset(DMA1_CHANNEL7);
118 dma_default_para_init(&dma_init_struct);
119 dma_init_struct.buffer_size = USART2_TX_BUFFER_SIZE;
120 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
121 dma_init_struct.memory_base_addr = (uint32_t)usart2_tx_buffer;
122 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
123 dma_init_struct.memory_inc_enable = TRUE;
124 dma_init_struct.peripheral_base_addr = (uint32_t)&USART2->dt;
125 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
126 dma_init_struct.peripheral_inc_enable = FALSE;
127 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
128 dma_init_struct.loop_mode_enable = FALSE;
129 dma_init(DMA1_CHANNEL7, &dma_init_struct);
130
131 /* dma1 channel6 for usart2 rx configuration */
132 dma_reset(DMA1_CHANNEL6);
133 dma_default_para_init(&dma_init_struct);
134 dma_init_struct.buffer_size = USART3_TX_BUFFER_SIZE;
135 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
136 dma_init_struct.memory_base_addr = (uint32_t)usart2_rx_buffer;
137 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
138 dma_init_struct.memory_inc_enable = TRUE;
139 dma_init_struct.peripheral_base_addr = (uint32_t)&USART2->dt;
140 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
141 dma_init_struct.peripheral_inc_enable = FALSE;
142 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
143 dma_init_struct.loop_mode_enable = FALSE;
144 dma_init(DMA1_CHANNEL6, &dma_init_struct);
145
146 /* dma1 channel2 for usart3 tx configuration */
147 dma_reset(DMA1_CHANNEL2);
148 dma_default_para_init(&dma_init_struct);
149 dma_init_struct.buffer_size = USART3_TX_BUFFER_SIZE;
150 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
151 dma_init_struct.memory_base_addr = (uint32_t)usart3_tx_buffer;
152 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
153 dma_init_struct.memory_inc_enable = TRUE;
154 dma_init_struct.peripheral_base_addr = (uint32_t)&USART3->dt;
155 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
156 dma_init_struct.peripheral_inc_enable = FALSE;
157 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
158 dma_init_struct.loop_mode_enable = FALSE;
159 dma_init(DMA1_CHANNEL2, &dma_init_struct);
160
161 /* dma1 channel3 for usart3 rx configuration */
162 dma_reset(DMA1_CHANNEL3);
163 dma_default_para_init(&dma_init_struct);
164 dma_init_struct.buffer_size = USART2_TX_BUFFER_SIZE;
165 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
166 dma_init_struct.memory_base_addr = (uint32_t)usart3_rx_buffer;
167 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
168 dma_init_struct.memory_inc_enable = TRUE;
169 dma_init_struct.peripheral_base_addr = (uint32_t)&USART3->dt;
170 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
171 dma_init_struct.peripheral_inc_enable = FALSE;
172 dma_init_struct.priority = DMA_PRIORITY_MEDIUM;
173 dma_init_struct.loop_mode_enable = FALSE;
174 dma_init(DMA1_CHANNEL3, &dma_init_struct);
175
176 dma_channel_enable(DMA1_CHANNEL6, TRUE); /* usart2 rx begin dma receiving */
177 dma_channel_enable(DMA1_CHANNEL3, TRUE); /* usart3 rx begin dma receiving */
178 dma_channel_enable(DMA1_CHANNEL7, TRUE); /* usart2 tx begin dma transmitting */
179 dma_channel_enable(DMA1_CHANNEL2, TRUE); /* usart3 tx begin dma transmitting */
180}
181
189uint8_t buffer_compare(uint8_t* pbuffer1, uint8_t* pbuffer2, uint16_t buffer_length)
190{
191 while(buffer_length--)
192 {
193 if(*pbuffer1 != *pbuffer2)
194 {
195 return 0;
196 }
197 pbuffer1++;
198 pbuffer2++;
199 }
200 return 1;
201}
202
208int main(void)
209{
210 system_clock_config();
211 at32_board_init();
212 usart_configuration();
213 dma_configuration();
214
215 /* wait dma transmission complete */
216 while((dma_flag_get(DMA1_FDT2_FLAG) == RESET) || (dma_flag_get(DMA1_FDT3_FLAG) == RESET) || \
217 (dma_flag_get(DMA1_FDT6_FLAG) == RESET) || (dma_flag_get(DMA1_FDT7_FLAG) == RESET));
218
219 while(1)
220 {
221 /* compare data buffer */
222 if(buffer_compare(usart2_tx_buffer, usart3_rx_buffer, USART2_TX_BUFFER_SIZE) && \
223 buffer_compare(usart3_tx_buffer, usart2_rx_buffer, USART3_TX_BUFFER_SIZE))
224 {
225 at32_led_toggle(LED2);
226 at32_led_toggle(LED3);
227 at32_led_toggle(LED4);
228 delay_sec(1);
229 }
230 }
231}
232
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usart_configuration
void usart_configuration(void)
config usart
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:50
buffer_compare
uint8_t buffer_compare(uint8_t *pbuffer1, uint8_t *pbuffer2, uint16_t buffer_length)
compares two buffers.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:189
usart3_rx_buffer
uint8_t usart3_rx_buffer[((sizeof(usart2_tx_buffer)/sizeof(*(usart2_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:43
dma_configuration
void dma_configuration(void)
config dma for usart2 and usart3
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:109
USART2_TX_BUFFER_SIZE
#define USART2_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:208
usart2_tx_buffer
uint8_t usart2_tx_buffer[]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:40
USART3_TX_BUFFER_SIZE
#define USART3_TX_BUFFER_SIZE
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:38
usart3_tx_buffer
uint8_t usart3_tx_buffer[]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:41
usart2_rx_buffer
uint8_t usart2_rx_buffer[((sizeof(usart3_tx_buffer)/sizeof(*(usart3_tx_buffer))) - 1)]
Definition: project/at_start_f403/examples/usart/transfer_by_dma_polling/src/main.c:42
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_sec
void delay_sec(uint16_t sec)
inserts a delay time.
Definition: at32f403_board.c:378
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART3_PERIPH_CLOCK
@ CRM_USART3_PERIPH_CLOCK
Definition: at32f403_crm.h:143
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_MEDIUM
@ DMA_PRIORITY_MEDIUM
Definition: at32f403_dma.h:175
DMA1_FDT7_FLAG
#define DMA1_FDT7_FLAG
Definition: at32f403_dma.h:88
DMA1_FDT6_FLAG
#define DMA1_FDT6_FLAG
Definition: at32f403_dma.h:84
DMA1_FDT2_FLAG
#define DMA1_FDT2_FLAG
Definition: at32f403_dma.h:68
DMA1_FDT3_FLAG
#define DMA1_FDT3_FLAG
Definition: at32f403_dma.h:72
DMA1_CHANNEL3
#define DMA1_CHANNEL3
Definition: at32f403_dma.h:357
DMA1_CHANNEL2
#define DMA1_CHANNEL2
Definition: at32f403_dma.h:356
DMA1_CHANNEL6
#define DMA1_CHANNEL6
Definition: at32f403_dma.h:360
DMA1_CHANNEL7
#define DMA1_CHANNEL7
Definition: at32f403_dma.h:361
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_dma_receiver_enable
void usart_dma_receiver_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma receiver interface.
Definition: at32f403_usart.c:291
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_dma_transmitter_enable
void usart_dma_transmitter_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the usart's dma transmitter interface.
Definition: at32f403_usart.c:277
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART3
#define USART3
Definition: at32f403_usart.h:319
USART2
#define USART2
Definition: at32f403_usart.h:318
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • audio
  • inc
project/at_start_f403/examples/usb_device/audio/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • audio
  • inc
project/at_start_f403/examples/usb_device/audio/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • audio
  • inc
project/at_start_f403/examples/usb_device/audio/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • audio
  • inc
project/at_start_f403/examples/usb_device/audio/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55#define USB_BUFFER_SIZE_EX
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
98void usb_delay_ms(uint32_t ms);
99void usb_delay_us(uint32_t us);
100
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • audio
  • src
project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • audio
  • src
project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/audio/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • audio
  • src
project/at_start_f403/examples/usb_device/audio/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "audio_class.h"
29#include "audio_desc.h"
30#include "usbd_int.h"
31#include "audio_codec.h"
32
41 usbd_core_type usb_core_dev;
42
48void usb_clock48m_select(usb_clk48_s clk_s)
49{
50 switch(system_core_clock)
51 {
52 /* 48MHz */
53 case 48000000:
54 crm_usb_clock_div_set(CRM_USB_DIV_1);
55 break;
56
57 /* 72MHz */
58 case 72000000:
59 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
60 break;
61
62 /* 96MHz */
63 case 96000000:
64 crm_usb_clock_div_set(CRM_USB_DIV_2);
65 break;
66
67 /* 120MHz */
68 case 120000000:
69 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
70 break;
71
72 /* 144MHz */
73 case 144000000:
74 crm_usb_clock_div_set(CRM_USB_DIV_3);
75 break;
76
77 /* 168MHz */
78 case 168000000:
79 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
80 break;
81
82 /* 192MHz */
83 case 192000000:
84 crm_usb_clock_div_set(CRM_USB_DIV_4);
85 break;
86
87 default:
88 break;
89
90 }
91}
92
98int main(void)
99{
100 /* config nvic priority group */
101 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
102
103 /* system clock config */
104 system_clock_config();
105
106 /* audio codec init */
107 audio_codec_init();
108
109 /* at32 board init */
110 at32_board_init();
111
112 /* select usb 48m clcok source */
113 usb_clock48m_select(USB_CLK_HEXT);
114
115 /* enable usb clock */
116 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
117
118 /* enable usb interrupt */
119 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
120
121 /* usb core init */
122 usbd_core_init(&usb_core_dev, USB, &audio_class_handler, &audio_desc_handler, 0);
123
124 /* enable usb pull-up */
125 usbd_connect(&usb_core_dev);
126
127 while(1)
128 {
129 audio_codec_loop();
130 delay_ms(100);
131 }
132}
133
139void USBFS_L_CAN1_RX0_IRQHandler(void)
140{
141 usbd_irq_handler(&usb_core_dev);
142}
143
149void usb_delay_ms(uint32_t ms)
150{
151 /* user can define self delay function */
152 delay_ms(ms);
153}
154
160void usb_delay_us(uint32_t us)
161{
162 delay_us(us);
163}
164
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
audio_class.h
usb audio class file
audio_desc.h
usb audio descriptor header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:48
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:98
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:139
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:41
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
audio_class_handler
usbd_class_handler audio_class_handler
Definition: audio_class.c:63
audio_desc_handler
usbd_desc_handler audio_desc_handler
device descriptor handler structure
Definition: audio_desc.c:63
audio_codec_loop
error_status audio_codec_loop(void)
audio codec loop
Definition: audio/src/audio_codec.c:851
audio_codec_init
error_status audio_codec_init(void)
audio codec init
Definition: audio/src/audio_codec.c:792
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • composite_audio_hid
  • inc
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • composite_audio_hid
  • inc
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • composite_audio_hid
  • inc
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • composite_audio_hid
  • inc
project/at_start_f403/examples/usb_device/composite_audio_hid/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55#define USB_BUFFER_SIZE_EX
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
98void usb_delay_ms(uint32_t ms);
99void usb_delay_us(uint32_t us);
100
108#ifdef __cplusplus
109}
110#endif
111
112#endif
113
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • composite_audio_hid
  • src
project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • composite_audio_hid
  • src
project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • composite_audio_hid
  • src
project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "usbd_int.h"
29#include "audio_hid_class.h"
30#include "audio_hid_desc.h"
31#include "audio_codec.h"
32
41/* usb global struct define */
42 usbd_core_type usb_core_dev;
43
44uint8_t report_buf[USBD_AUHID_IN_MAXPACKET_SIZE];
45
51void usb_clock48m_select(usb_clk48_s clk_s)
52{
53 switch(system_core_clock)
54 {
55 /* 48MHz */
56 case 48000000:
57 crm_usb_clock_div_set(CRM_USB_DIV_1);
58 break;
59
60 /* 72MHz */
61 case 72000000:
62 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
63 break;
64
65 /* 96MHz */
66 case 96000000:
67 crm_usb_clock_div_set(CRM_USB_DIV_2);
68 break;
69
70 /* 120MHz */
71 case 120000000:
72 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
73 break;
74
75 /* 144MHz */
76 case 144000000:
77 crm_usb_clock_div_set(CRM_USB_DIV_3);
78 break;
79
80 /* 168MHz */
81 case 168000000:
82 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
83 break;
84
85 /* 192MHz */
86 case 192000000:
87 crm_usb_clock_div_set(CRM_USB_DIV_4);
88 break;
89
90 default:
91 break;
92
93 }
94}
95
101int main(void)
102{
103 /* config nvic priority group */
104 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
105
106 /* system clock config */
107 system_clock_config();
108
109 /* audio codec init */
110 audio_codec_init();
111
112 /* at32 board init */
113 at32_board_init();
114
115 /* select usb 48m clcok source */
116 usb_clock48m_select(USB_CLK_HEXT);
117
118 /* enable usb clock */
119 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
120
121 /* enable usb interrupt */
122 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
123
124 /* usb core init */
125 usbd_core_init(&usb_core_dev, USB, &audio_hid_class_handler, &audio_hid_desc_handler, 0);
126
127 /* enable usb pull-up */
128 usbd_connect(&usb_core_dev);
129
130 while(1)
131 {
132 audio_codec_loop();
133 if(at32_button_press() == USER_BUTTON)
134 {
135 report_buf[0] = HID_REPORT_ID_5;
136 report_buf[1] = (~report_buf[1]) & 0x1;
137 audio_hid_class_send_report(&usb_core_dev, report_buf, USBD_AUHID_IN_MAXPACKET_SIZE);
138 }
139 delay_ms(100);
140 }
141}
142
148void USBFS_L_CAN1_RX0_IRQHandler(void)
149{
150 usbd_irq_handler(&usb_core_dev);
151}
152
158void usb_delay_ms(uint32_t ms)
159{
160 /* user can define self delay function */
161 delay_ms(ms);
162}
163
169void usb_delay_us(uint32_t us)
170{
171 delay_us(us);
172}
173
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
audio_hid_class.h
audio_hid_desc.h
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:142
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
can1 interrupt function rx0
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:148
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
report_buf
uint8_t report_buf[USBD_AUHID_IN_MAXPACKET_SIZE]
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c:44
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:48
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/composite_audio_hid/src/main.c:42
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
USBD_AUHID_IN_MAXPACKET_SIZE
#define USBD_AUHID_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: audio_hid_class.h:65
audio_hid_class_send_report
usb_sts_type audio_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: audio_hid_class.c:778
audio_hid_class_handler
usbd_class_handler audio_hid_class_handler
Definition: audio_hid_class.c:62
HID_REPORT_ID_5
#define HID_REPORT_ID_5
Definition: audio_hid_desc.h:224
audio_hid_desc_handler
usbd_desc_handler audio_hid_desc_handler
device descriptor handler structure
Definition: audio_hid_desc.c:65
audio_codec_loop
error_status audio_codec_loop(void)
audio codec loop
Definition: audio/src/audio_codec.c:851
audio_codec_init
error_status audio_codec_init(void)
audio codec init
Definition: audio/src/audio_codec.c:792
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • composite_vcp_keyboard
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • composite_vcp_keyboard
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • composite_vcp_keyboard
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • composite_vcp_keyboard
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97void usb_delay_ms(uint32_t ms);
98void usb_delay_us(uint32_t us);
99
108#ifdef __cplusplus
109}
110#endif
111
112#endif
113
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:216
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:227


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • composite_vcp_keyboard
  • src
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • composite_vcp_keyboard
  • src
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • composite_vcp_keyboard
  • src
project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "cdc_keyboard_class.h"
29#include "cdc_keyboard_desc.h"
30#include "usbd_int.h"
31
40 usbd_core_type usb_core_dev;
41uint8_t usb_buffer[256];
42
43void keyboard_send_string(void *udev, uint8_t *string, uint8_t len);
44
50void usb_clock48m_select(usb_clk48_s clk_s)
51{
52 switch(system_core_clock)
53 {
54 /* 48MHz */
55 case 48000000:
56 crm_usb_clock_div_set(CRM_USB_DIV_1);
57 break;
58
59 /* 72MHz */
60 case 72000000:
61 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
62 break;
63
64 /* 96MHz */
65 case 96000000:
66 crm_usb_clock_div_set(CRM_USB_DIV_2);
67 break;
68
69 /* 120MHz */
70 case 120000000:
71 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
72 break;
73
74 /* 144MHz */
75 case 144000000:
76 crm_usb_clock_div_set(CRM_USB_DIV_3);
77 break;
78
79 /* 168MHz */
80 case 168000000:
81 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
82 break;
83
84 /* 192MHz */
85 case 192000000:
86 crm_usb_clock_div_set(CRM_USB_DIV_4);
87 break;
88
89 default:
90 break;
91
92 }
93}
94
101void keyboard_send_string(void *udev, uint8_t *string, uint8_t len)
102{
103 uint8_t index = 0;
104 usbd_core_type *pudev = (usbd_core_type *)udev;
105 vcp_keyboard_type *vcpkybrd = (vcp_keyboard_type *)pudev->class_handler->pdata;
106 for(index = 0; index < len; index ++)
107 {
108 while(1)
109 {
110 if(vcpkybrd->g_keyboard_tx_completed == 1)
111 {
112 vcpkybrd->g_keyboard_tx_completed = 0;
113 usb_vcpkybrd_keyboard_send_char(&usb_core_dev, string[index]);
114 break;
115 }
116 }
117 /* send 0x00 */
118 while(1)
119 {
120 if(vcpkybrd->g_keyboard_tx_completed == 1)
121 {
122 vcpkybrd->g_keyboard_tx_completed = 0;
123 usb_vcpkybrd_keyboard_send_char(&usb_core_dev, 0x00);
124 break;
125 }
126 }
127 }
128
129}
130
136int main(void)
137{
138 uint16_t data_len;
139
140 uint32_t timeout;
141
142 uint8_t send_zero_packet = 0;
143
144 /* config nvic priority group */
145 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
146
147 system_clock_config();
148
149 at32_board_init();
150
151 /* select usb 48m clcok source */
152 usb_clock48m_select(USB_CLK_HEXT);
153
154 /* enable usb clock */
155 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
156
157 /* enable usb interrupt */
158 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
159
160 /* usb core init */
161 usbd_core_init(&usb_core_dev, USB, &cdc_keyboard_class_handler, &cdc_keyboard_desc_handler, 0);
162
163 /* enable usb pull-up */
164 usbd_connect(&usb_core_dev);
165
166 while(1)
167 {
168 /* get usb vcp receive data */
169 data_len = usb_vcpkybrd_vcp_get_rxdata(&usb_core_dev, usb_buffer);
170
171 if(data_len > 0 || send_zero_packet == 1)
172 {
173 /* bulk transfer is complete when the endpoint does one of the following
174 1 has transferred exactly the amount of data expected
175 2 transfers a packet with a payload size less than wMaxPacketSize or transfers a zero-length packet
176 */
177 if(data_len > 0)
178 send_zero_packet = 1;
179
180 if(data_len == 0)
181 send_zero_packet = 0;
182
183 timeout = 5000000;
184 do
185 {
186 /* send data to host */
187 if(usb_vcpkybrd_vcp_send_data(&usb_core_dev, usb_buffer, data_len) == SUCCESS)
188 {
189 break;
190 }
191 }while(timeout --);
192 }
193
194 if(at32_button_press() == USER_BUTTON)
195 {
196 keyboard_send_string(&usb_core_dev, (uint8_t *)" Keyboard Demo\r\n", 16);
197 }
198 }
199}
200
206void USBFS_L_CAN1_RX0_IRQHandler(void)
207{
208 usbd_irq_handler(&usb_core_dev);
209}
210
216void usb_delay_ms(uint32_t ms)
217{
218 /* user can define self delay function */
219 delay_ms(ms);
220}
221
227void usb_delay_us(uint32_t us)
228{
229 delay_us(us);
230}
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
cdc_keyboard_class.h
usb cdc and keyboard class file
cdc_keyboard_desc.h
usb cdc and keyboard descriptor header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:50
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:136
keyboard_send_string
void keyboard_send_string(void *udev, uint8_t *string, uint8_t len)
keyboard send string
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:101
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:206
usb_buffer
uint8_t usb_buffer[256]
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:41
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/composite_vcp_keyboard/src/main.c:40
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usb_vcpkybrd_vcp_send_data
error_status usb_vcpkybrd_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_keyboard_class.c:626
usb_vcpkybrd_keyboard_send_char
void usb_vcpkybrd_keyboard_send_char(void *udev, uint8_t ascii_code)
usb keyoard send char
Definition: cdc_keyboard_class.c:705
cdc_keyboard_class_handler
usbd_class_handler cdc_keyboard_class_handler
Definition: cdc_keyboard_class.c:203
usb_vcpkybrd_vcp_get_rxdata
uint16_t usb_vcpkybrd_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_keyboard_class.c:595
cdc_keyboard_desc_handler
usbd_desc_handler cdc_keyboard_desc_handler
device descriptor handler structure
Definition: cdc_keyboard_desc.c:63
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
vcp_keyboard_type
Definition: cdc_keyboard_class.h:73
vcp_keyboard_type::g_keyboard_tx_completed
__IO uint8_t g_keyboard_tx_completed
Definition: cdc_keyboard_class.h:86
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • composite_vcp_msc
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • composite_vcp_msc
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • composite_vcp_msc
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • composite_vcp_msc
  • inc
project/at_start_f403/examples/usb_device/composite_vcp_msc/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97void usb_delay_ms(uint32_t ms);
98void usb_delay_us(uint32_t us);
99
108#ifdef __cplusplus
109}
110#endif
111
112#endif
113
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c:173
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c:184


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • composite_vcp_msc
  • src
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • composite_vcp_msc
  • src
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • composite_vcp_msc
  • src
project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "cdc_msc_class.h"
29#include "cdc_msc_desc.h"
30#include "usbd_int.h"
31
40 usbd_core_type usb_core_dev;
41uint8_t usb_buffer[256];
42
48void usb_clock48m_select(usb_clk48_s clk_s)
49{
50 switch(system_core_clock)
51 {
52 /* 48MHz */
53 case 48000000:
54 crm_usb_clock_div_set(CRM_USB_DIV_1);
55 break;
56
57 /* 72MHz */
58 case 72000000:
59 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
60 break;
61
62 /* 96MHz */
63 case 96000000:
64 crm_usb_clock_div_set(CRM_USB_DIV_2);
65 break;
66
67 /* 120MHz */
68 case 120000000:
69 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
70 break;
71
72 /* 144MHz */
73 case 144000000:
74 crm_usb_clock_div_set(CRM_USB_DIV_3);
75 break;
76
77 /* 168MHz */
78 case 168000000:
79 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
80 break;
81
82 /* 192MHz */
83 case 192000000:
84 crm_usb_clock_div_set(CRM_USB_DIV_4);
85 break;
86
87 default:
88 break;
89
90 }
91}
92
98int main(void)
99{
100 uint16_t data_len;
101
102 uint32_t timeout;
103
104 uint8_t send_zero_packet = 0;
105
106 /* config nvic priority group */
107 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
108
109 system_clock_config();
110
111 at32_board_init();
112
113 /* select usb 48m clcok source */
114 usb_clock48m_select(USB_CLK_HEXT);
115
116 /* enable usb clock */
117 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
118
119 /* enable usb interrupt */
120 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
121
122 /* usb core init */
123 usbd_core_init(&usb_core_dev, USB, &cdc_msc_class_handler, &cdc_msc_desc_handler, 0);
124
125 /* enable usb pull-up */
126 usbd_connect(&usb_core_dev);
127
128 while(1)
129 {
130 /* get usb vcp receive data */
131 data_len = usb_vcp_get_rxdata(&usb_core_dev, usb_buffer);
132
133 if(data_len > 0 || send_zero_packet == 1)
134 {
135 /* bulk transfer is complete when the endpoint does one of the following
136 1 has transferred exactly the amount of data expected
137 2 transfers a packet with a payload size less than wMaxPacketSize or transfers a zero-length packet
138 */
139 if(data_len > 0)
140 send_zero_packet = 1;
141
142 if(data_len == 0)
143 send_zero_packet = 0;
144
145 timeout = 5000000;
146 do
147 {
148 /* send data to host */
149 if(usb_vcp_send_data(&usb_core_dev, usb_buffer, data_len) == SUCCESS)
150 {
151 break;
152 }
153 }while(timeout --);
154 }
155 }
156}
157
163void USBFS_L_CAN1_RX0_IRQHandler(void)
164{
165 usbd_irq_handler(&usb_core_dev);
166}
167
173void usb_delay_ms(uint32_t ms)
174{
175 /* user can define self delay function */
176 delay_ms(ms);
177}
178
184void usb_delay_us(uint32_t us)
185{
186 delay_us(us);
187}
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
cdc_msc_class.h
usb cdc class file
cdc_msc_desc.h
usb cdc descriptor header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c:48
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c:98
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c:163
usb_buffer
uint8_t usb_buffer[256]
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c:41
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/composite_vcp_msc/src/main.c:40
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usb_vcp_get_rxdata
uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_class.c:343
usb_vcp_send_data
error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_class.c:373
cdc_msc_class_handler
usbd_class_handler cdc_msc_class_handler
Definition: cdc_msc_class.c:70
cdc_msc_desc_handler
usbd_desc_handler cdc_msc_desc_handler
device descriptor handler structure
Definition: cdc_msc_desc.c:67
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • custom_hid
  • inc
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • custom_hid
  • inc
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • custom_hid
  • inc
project/at_start_f403/examples/usb_device/custom_hid/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • custom_hid
  • inc
project/at_start_f403/examples/usb_device/custom_hid/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
98void usb_delay_ms(uint32_t ms);
99void usb_delay_us(uint32_t us);
100
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/main.c:150
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/main.c:161


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • custom_hid
  • src
project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • custom_hid
  • src
project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • custom_hid
  • src
project/at_start_f403/examples/usb_device/custom_hid/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "custom_hid_class.h"
29#include "custom_hid_desc.h"
30#include "usbd_int.h"
31
40 usbd_core_type usb_core_dev;
41uint8_t report_buf[USBD_CUSTOM_IN_MAXPACKET_SIZE];
42
48void usb_clock48m_select(usb_clk48_s clk_s)
49{
50 switch(system_core_clock)
51 {
52 /* 48MHz */
53 case 48000000:
54 crm_usb_clock_div_set(CRM_USB_DIV_1);
55 break;
56
57 /* 72MHz */
58 case 72000000:
59 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
60 break;
61
62 /* 96MHz */
63 case 96000000:
64 crm_usb_clock_div_set(CRM_USB_DIV_2);
65 break;
66
67 /* 120MHz */
68 case 120000000:
69 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
70 break;
71
72 /* 144MHz */
73 case 144000000:
74 crm_usb_clock_div_set(CRM_USB_DIV_3);
75 break;
76
77 /* 168MHz */
78 case 168000000:
79 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
80 break;
81
82 /* 192MHz */
83 case 192000000:
84 crm_usb_clock_div_set(CRM_USB_DIV_4);
85 break;
86
87 default:
88 break;
89
90 }
91}
92
98int main(void)
99{
100 /* config nvic priority group */
101 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
102
103 system_clock_config();
104
105 at32_board_init();
106
107 /* select usb 48m clcok source */
108 usb_clock48m_select(USB_CLK_HEXT);
109
110 /* enable usb clock */
111 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
112
113 /* enable usb interrupt */
114 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
115
116 /* usb core init */
117 usbd_core_init(&usb_core_dev, USB, &custom_hid_class_handler, &custom_hid_desc_handler, 0);
118
119 /* enable usb pull-up */
120 usbd_connect(&usb_core_dev);
121
122 while(1)
123 {
124 if(at32_button_press() == USER_BUTTON)
125 {
126 report_buf[1] = (~report_buf[1]) & 0x1;
127 report_buf[0] = HID_REPORT_ID_5;
128 custom_hid_class_send_report(&usb_core_dev, report_buf, USBD_CUSTOM_IN_MAXPACKET_SIZE);
129
130 }
131 }
132}
133
134
140void USBFS_L_CAN1_RX0_IRQHandler(void)
141{
142 usbd_irq_handler(&usb_core_dev);
143}
144
150void usb_delay_ms(uint32_t ms)
151{
152 /* user can define self delay function */
153 delay_ms(ms);
154}
155
161void usb_delay_us(uint32_t us)
162{
163 delay_us(us);
164}
165
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
custom_hid_class.h
usb custom hid header file
custom_hid_desc.h
usb custom hid descriptor header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
report_buf
uint8_t report_buf[USBD_CUSTOM_IN_MAXPACKET_SIZE]
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/main.c:41
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/main.c:48
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/main.c:98
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/main.c:140
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/custom_hid/src/main.c:40
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
HID_REPORT_ID_5
#define HID_REPORT_ID_5
Definition: audio_hid_desc.h:224
USBD_CUSTOM_IN_MAXPACKET_SIZE
#define USBD_CUSTOM_IN_MAXPACKET_SIZE
usb custom hid in and out max packet size define
Definition: custom_hid_class.h:57
custom_hid_class_send_report
usb_sts_type custom_hid_class_send_report(void *udev, uint8_t *report, uint16_t len)
usb device class send report
Definition: custom_hid_class.c:328
custom_hid_class_handler
usbd_class_handler custom_hid_class_handler
Definition: custom_hid_class.c:55
custom_hid_desc_handler
usbd_desc_handler custom_hid_desc_handler
custom hid device descriptor handler structure
Definition: custom_hid_desc.c:63
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • keyboard
  • inc
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • keyboard
  • inc
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • keyboard
  • inc
project/at_start_f403/examples/usb_device/keyboard/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • keyboard
  • inc
project/at_start_f403/examples/usb_device/keyboard/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
101#define USB_LOW_POWER_WAKUP
102
103void usb_delay_ms(uint32_t ms);
104void usb_delay_us(uint32_t us);
105
114#ifdef __cplusplus
115}
116#endif
117
118#endif
119
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/main.c:315
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/main.c:326


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • keyboard
  • src
project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • keyboard
  • src
project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • keyboard
  • src
project/at_start_f403/examples/usb_device/keyboard/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "keyboard_class.h"
29#include "keyboard_desc.h"
30#include "usbd_int.h"
31
40 usbd_core_type usb_core_dev;
41void keyboard_send_string(void *udev, uint8_t *string, uint8_t len);
42void system_clock_recover(void);
43void button_exint_init(void);
44void usb_low_power_wakeup_config(void);
45
52void keyboard_send_string(void *udev, uint8_t *string, uint8_t len)
53{
54 uint8_t index = 0;
55 usbd_core_type *pudev = (usbd_core_type *)udev;
56 keyboard_type *pkeyboard = (keyboard_type *)pudev->class_handler->pdata;
57 for(index = 0; index < len; index ++)
58 {
59 while(1)
60 {
61 if(pkeyboard->g_u8tx_completed == 1)
62 {
63 pkeyboard->g_u8tx_completed = 0;
64 usb_hid_keyboard_send_char(udev, string[index]);
65 break;
66 }
67 }
68 /* send 0x00 */
69 while(1)
70 {
71 if(pkeyboard->g_u8tx_completed == 1)
72 {
73 pkeyboard->g_u8tx_completed = 0;
74 usb_hid_keyboard_send_char(udev, 0x00);
75 break;
76 }
77 }
78 }
79}
80
86void usb_clock48m_select(usb_clk48_s clk_s)
87{
88 switch(system_core_clock)
89 {
90 /* 48MHz */
91 case 48000000:
92 crm_usb_clock_div_set(CRM_USB_DIV_1);
93 break;
94
95 /* 72MHz */
96 case 72000000:
97 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
98 break;
99
100 /* 96MHz */
101 case 96000000:
102 crm_usb_clock_div_set(CRM_USB_DIV_2);
103 break;
104
105 /* 120MHz */
106 case 120000000:
107 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
108 break;
109
110 /* 144MHz */
111 case 144000000:
112 crm_usb_clock_div_set(CRM_USB_DIV_3);
113 break;
114
115 /* 168MHz */
116 case 168000000:
117 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
118 break;
119
120 /* 192MHz */
121 case 192000000:
122 crm_usb_clock_div_set(CRM_USB_DIV_4);
123 break;
124
125 default:
126 break;
127
128 }
129}
130
136int main(void)
137{
138 __IO uint32_t index = 0;
139 /* config nvic priority group */
140 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
141
142 system_clock_config();
143
144 at32_board_init();
145
146 /* select usb 48m clcok source */
147 usb_clock48m_select(USB_CLK_HEXT);
148
149#ifdef USB_LOW_POWER_WAKUP
150 /* enable pwc and bpr clock */
151 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
152 button_exint_init();
153 usb_low_power_wakeup_config();
154#endif
155
156 /* enable usb clock */
157 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
158
159 /* enable usb interrupt */
160 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
161
162 /* usb core init */
163 usbd_core_init(&usb_core_dev, USB, &keyboard_class_handler, &keyboard_desc_handler, 0);
164
165 /* enable usb pull-up */
166 usbd_connect(&usb_core_dev);
167
168 while(1)
169 {
170 if(at32_button_press() == USER_BUTTON)
171 {
172 if(usbd_connect_state_get(&usb_core_dev) == USB_CONN_STATE_CONFIGURED)
173 {
174 keyboard_send_string(&usb_core_dev, (uint8_t *)" Keyboard Demo\r\n", 16);
175 }
176 /* remote wakeup */
177 if(usbd_connect_state_get(&usb_core_dev) == USB_CONN_STATE_SUSPENDED
178 &&(usb_core_dev.remote_wakup == 1))
179 {
180 usbd_remote_wakeup(&usb_core_dev);
181 }
182 }
183#ifdef USB_LOW_POWER_WAKUP
184 /* enter deep sleep */
185 if(((keyboard_type *)(usb_core_dev.class_handler->pdata))->hid_suspend_flag == 1)
186 {
187 at32_led_off(LED2);
188 at32_led_off(LED3);
189 at32_led_off(LED4);
190
191 /* enter deep sleep mode */
192 pwc_deep_sleep_mode_enter(PWC_DEEP_SLEEP_ENTER_WFI);
193 /* wait clock stable */
194 for(index = 0; index < 600; index++)
195 {
196 __NOP();
197 }
198 system_clock_recover();
199 ((keyboard_type *)(usb_core_dev.class_handler->pdata))->hid_suspend_flag = 0;
200 at32_led_on(LED2);
201 at32_led_on(LED3);
202 at32_led_on(LED4);
203 }
204#endif
205 }
206}
207
208#ifdef USB_LOW_POWER_WAKUP
214void button_exint_init(void)
215{
216 exint_init_type exint_init_struct;
217
218 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
219 gpio_exint_line_config(GPIO_PORT_SOURCE_GPIOA, GPIO_PINS_SOURCE0);
220
221 exint_default_para_init(&exint_init_struct);
222 exint_init_struct.line_enable = TRUE;
223 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
224 exint_init_struct.line_select = EXINT_LINE_0;
225 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
226 exint_init(&exint_init_struct);
227
228 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
229 nvic_irq_enable(EXINT0_IRQn, 0, 0);
230}
231
237void EXINT0_IRQHandler(void)
238{
239 /* clear interrupt pending bit */
240 exint_flag_clear(EXINT_LINE_0);
241}
242
248void usb_low_power_wakeup_config(void)
249{
250 exint_init_type exint_init_struct;
251
252 exint_default_para_init(&exint_init_struct);
253
254 exint_init_struct.line_enable = TRUE;
255 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
256 exint_init_struct.line_select = EXINT_LINE_18;
257 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
258 exint_init(&exint_init_struct);
259
260 nvic_irq_enable(USBFSWakeUp_IRQn, 0, 0);
261}
262
268void USBFSWakeUp_IRQHandler(void)
269{
270 exint_flag_clear(EXINT_LINE_18);
271}
272
278void system_clock_recover(void)
279{
280 /* enable external high-speed crystal oscillator - hext */
281 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
282
283 /* wait till hext is ready */
284 while(crm_hext_stable_wait() == ERROR);
285
286 /* enable pll */
287 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
288
289 /* wait till pll is ready */
290 while(crm_flag_get(CRM_PLL_STABLE_FLAG) == RESET);
291
292 /* select pll as system clock source */
293 crm_sysclk_switch(CRM_SCLK_PLL);
294
295 /* wait till pll is used as system clock source */
296 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL);
297}
298
299#endif
305void USBFS_L_CAN1_RX0_IRQHandler(void)
306{
307 usbd_irq_handler(&usb_core_dev);
308}
309
315void usb_delay_ms(uint32_t ms)
316{
317 /* user can define self delay function */
318 delay_ms(ms);
319}
320
326void usb_delay_us(uint32_t us)
327{
328 delay_us(us);
329}
330
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
EXINT0_IRQHandler
void EXINT0_IRQHandler(void)
exint0 interrupt handler
Definition: project/at_start_f403/examples/exint/exint_config/src/main.c:94
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
button_exint_init
void button_exint_init(void)
configure button exint
Definition: project/at_start_f403/templates/src/main.c:50
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/keyboard/src/main.c:86
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/main.c:136
usb_low_power_wakeup_config
void usb_low_power_wakeup_config(void)
keyboard_send_string
void keyboard_send_string(void *udev, uint8_t *string, uint8_t len)
keyboard send string
Definition: project/at_start_f403/examples/usb_device/keyboard/src/main.c:52
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/keyboard/src/main.c:305
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/keyboard/src/main.c:40
system_clock_recover
void system_clock_recover(void)
systemclock recover.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c:94
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
USBFSWakeUp_IRQn
@ USBFSWakeUp_IRQn
Definition: at32f403.h:221
EXINT0_IRQn
@ EXINT0_IRQn
Definition: at32f403.h:184
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_LINE_18
#define EXINT_LINE_18
Definition: at32f403_exint.h:68
EXINT_LINE_0
#define EXINT_LINE_0
Definition: at32f403_exint.h:50
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
GPIO_PINS_SOURCE0
@ GPIO_PINS_SOURCE0
Definition: at32f403_gpio.h:182
GPIO_PORT_SOURCE_GPIOA
@ GPIO_PORT_SOURCE_GPIOA
Definition: at32f403_gpio.h:205
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_deep_sleep_mode_enter
void pwc_deep_sleep_mode_enter(pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode
Definition: at32f403_pwc.c:187
PWC_DEEP_SLEEP_ENTER_WFI
@ PWC_DEEP_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:95
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usb_hid_keyboard_send_char
void usb_hid_keyboard_send_char(void *udev, uint8_t ascii_code)
usb device class report function
Definition: keyboard_class.c:460
keyboard_class_handler
usbd_class_handler keyboard_class_handler
Definition: keyboard_class.c:187
keyboard_desc_handler
usbd_desc_handler keyboard_desc_handler
keyboard device descriptor handler structure
Definition: keyboard_desc.c:64
USB_CONN_STATE_SUSPENDED
@ USB_CONN_STATE_SUSPENDED
Definition: usb_std.h:130
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_remote_wakeup
void usbd_remote_wakeup(usbd_core_type *udev)
usb device remote wakeup
Definition: usbd_core.c:600
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
keyboard_class.h
usb hid keyboard header file
keyboard_desc.h
usb keyboard descriptor header file
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
keyboard_type
Definition: keyboard_class.h:65
keyboard_type::g_u8tx_completed
__IO uint8_t g_u8tx_completed
Definition: keyboard_class.h:73
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::remote_wakup
uint8_t remote_wakup
Definition: usbd_core.h:128
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • mouse
  • inc
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • mouse
  • inc
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • mouse
  • inc
project/at_start_f403/examples/usb_device/mouse/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • mouse
  • inc
project/at_start_f403/examples/usb_device/mouse/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
101#define USB_LOW_POWER_WAKUP
102
103void usb_delay_ms(uint32_t ms);
104void usb_delay_us(uint32_t us);
113#ifdef __cplusplus
114}
115#endif
116
117#endif
118
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:290
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:301


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • mouse
  • src
project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • mouse
  • src
project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/mouse/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • mouse
  • src
project/at_start_f403/examples/usb_device/mouse/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "mouse_class.h"
29#include "mouse_desc.h"
30#include "usbd_int.h"
31
40 usbd_core_type usb_core_dev;
41__IO uint8_t press_mouse = 0;
42uint8_t report_buf[USBD_MOUSE_IN_MAXPACKET_SIZE];
43void system_clock_recover(void);
44void button_exint_init(void);
45void usb_low_power_wakeup_config(void);
51void usb_clock48m_select(usb_clk48_s clk_s)
52{
53 switch(system_core_clock)
54 {
55 /* 48MHz */
56 case 48000000:
57 crm_usb_clock_div_set(CRM_USB_DIV_1);
58 break;
59
60 /* 72MHz */
61 case 72000000:
62 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
63 break;
64
65 /* 96MHz */
66 case 96000000:
67 crm_usb_clock_div_set(CRM_USB_DIV_2);
68 break;
69
70 /* 120MHz */
71 case 120000000:
72 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
73 break;
74
75 /* 144MHz */
76 case 144000000:
77 crm_usb_clock_div_set(CRM_USB_DIV_3);
78 break;
79
80 /* 168MHz */
81 case 168000000:
82 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
83 break;
84
85 /* 192MHz */
86 case 192000000:
87 crm_usb_clock_div_set(CRM_USB_DIV_4);
88 break;
89
90 default:
91 break;
92
93 }
94}
95
101int main(void)
102{
103 __IO uint32_t index = 0;
104 /* config nvic priority group */
105 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
106
107 system_clock_config();
108
109 at32_board_init();
110
111 /* select usb 48m clcok source */
112 usb_clock48m_select(USB_CLK_HEXT);
113
114#ifdef USB_LOW_POWER_WAKUP
115 /* enable pwc and bpr clock */
116 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
117 button_exint_init();
118 usb_low_power_wakeup_config();
119#endif
120
121 /* enable usb clock */
122 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
123
124 /* enable usb interrupt */
125 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
126
127 /* usb core init */
128 usbd_core_init(&usb_core_dev, USB, &mouse_class_handler, &mouse_desc_handler, 0);
129
130 /* enable usb pull-up */
131 usbd_connect(&usb_core_dev);
132
133 while(1)
134 {
135 if(at32_button_press() == USER_BUTTON)
136 {
137 if(usbd_connect_state_get(&usb_core_dev) == USB_CONN_STATE_CONFIGURED)
138 {
139 usb_hid_mouse_send(&usb_core_dev, RIGHT_BUTTON);
140 press_mouse = 1;
141 }
142 /* remote wakeup */
143 if(usbd_connect_state_get(&usb_core_dev) == USB_CONN_STATE_SUSPENDED
144 &&(usb_core_dev.remote_wakup == 1))
145 {
146 usbd_remote_wakeup(&usb_core_dev);
147 }
148 }
149 else if(press_mouse == 1)
150 {
151 delay_ms(10);
152 usb_hid_mouse_send(&usb_core_dev, BUTTON_RELEASE);
153 press_mouse = 0;
154 }
155 #ifdef USB_LOW_POWER_WAKUP
156 /* enter deep sleep */
157 if(((mouse_type *)(usb_core_dev.class_handler->pdata))->hid_suspend_flag == 1)
158 {
159 at32_led_off(LED2);
160 at32_led_off(LED3);
161 at32_led_off(LED4);
162
163 /* enter deep sleep mode */
164 pwc_deep_sleep_mode_enter(PWC_DEEP_SLEEP_ENTER_WFI);
165 /* wait clock stable */
166 for(index = 0; index < 600; index++)
167 {
168 __NOP();
169 }
170 system_clock_recover();
171 ((mouse_type *)(usb_core_dev.class_handler->pdata))->hid_suspend_flag = 0;
172 at32_led_on(LED2);
173 at32_led_on(LED3);
174 at32_led_on(LED4);
175 }
176#endif
177
178 }
179}
180
181#ifdef USB_LOW_POWER_WAKUP
187void button_exint_init(void)
188{
189 exint_init_type exint_init_struct;
190
191 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
192 gpio_exint_line_config(GPIO_PORT_SOURCE_GPIOA, GPIO_PINS_SOURCE0);
193
194 exint_default_para_init(&exint_init_struct);
195 exint_init_struct.line_enable = TRUE;
196 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
197 exint_init_struct.line_select = EXINT_LINE_0;
198 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
199 exint_init(&exint_init_struct);
200
201 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
202 nvic_irq_enable(EXINT0_IRQn, 0, 0);
203}
204
210void EXINT0_IRQHandler(void)
211{
212 /* clear interrupt pending bit */
213 exint_flag_clear(EXINT_LINE_0);
214}
215
221void usb_low_power_wakeup_config(void)
222{
223 exint_init_type exint_init_struct;
224
225 exint_default_para_init(&exint_init_struct);
226
227 exint_init_struct.line_enable = TRUE;
228 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
229 exint_init_struct.line_select = EXINT_LINE_18;
230 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
231 exint_init(&exint_init_struct);
232
233 nvic_irq_enable(USBFSWakeUp_IRQn, 0, 0);
234}
235
241void USBFSWakeUp_IRQHandler(void)
242{
243 exint_flag_clear(EXINT_LINE_18);
244}
245
251void system_clock_recover(void)
252{
253 /* enable external high-speed crystal oscillator - hext */
254 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
255
256 /* wait till hext is ready */
257 while(crm_hext_stable_wait() == ERROR);
258
259 /* enable pll */
260 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
261
262 /* wait till pll is ready */
263 while(crm_flag_get(CRM_PLL_STABLE_FLAG) == RESET);
264
265 /* select pll as system clock source */
266 crm_sysclk_switch(CRM_SCLK_PLL);
267
268 /* wait till pll is used as system clock source */
269 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL);
270}
271
272#endif
273
279void USBFS_L_CAN1_RX0_IRQHandler(void)
280{
281 usbd_irq_handler(&usb_core_dev);
282}
283
284
290void usb_delay_ms(uint32_t ms)
291{
292 /* user can define self delay function */
293 delay_ms(ms);
294}
295
301void usb_delay_us(uint32_t us)
302{
303 delay_us(us);
304}
305
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
EXINT0_IRQHandler
void EXINT0_IRQHandler(void)
exint0 interrupt handler
Definition: project/at_start_f403/examples/exint/exint_config/src/main.c:94
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
button_exint_init
void button_exint_init(void)
configure button exint
Definition: project/at_start_f403/templates/src/main.c:50
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:51
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:101
usb_low_power_wakeup_config
void usb_low_power_wakeup_config(void)
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:279
report_buf
uint8_t report_buf[USBD_MOUSE_IN_MAXPACKET_SIZE]
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:42
press_mouse
__IO uint8_t press_mouse
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:41
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/mouse/src/main.c:40
system_clock_recover
void system_clock_recover(void)
systemclock recover.
Definition: project/at_start_f403/examples/pwc/deepsleep_rtc/src/main.c:94
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
USBFSWakeUp_IRQn
@ USBFSWakeUp_IRQn
Definition: at32f403.h:221
EXINT0_IRQn
@ EXINT0_IRQn
Definition: at32f403.h:184
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_LINE_18
#define EXINT_LINE_18
Definition: at32f403_exint.h:68
EXINT_LINE_0
#define EXINT_LINE_0
Definition: at32f403_exint.h:50
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
GPIO_PINS_SOURCE0
@ GPIO_PINS_SOURCE0
Definition: at32f403_gpio.h:182
GPIO_PORT_SOURCE_GPIOA
@ GPIO_PORT_SOURCE_GPIOA
Definition: at32f403_gpio.h:205
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
pwc_deep_sleep_mode_enter
void pwc_deep_sleep_mode_enter(pwc_deep_sleep_enter_type pwc_deep_sleep_enter)
enter pwc deep-sleep mode
Definition: at32f403_pwc.c:187
PWC_DEEP_SLEEP_ENTER_WFI
@ PWC_DEEP_SLEEP_ENTER_WFI
Definition: at32f403_pwc.h:95
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
USBD_MOUSE_IN_MAXPACKET_SIZE
#define USBD_MOUSE_IN_MAXPACKET_SIZE
usb hid in and out max packet size define
Definition: mouse_class.h:56
mouse_class_handler
usbd_class_handler mouse_class_handler
Definition: mouse_class.c:54
usb_hid_mouse_send
void usb_hid_mouse_send(void *udev, uint8_t op)
usb device class report function
Definition: mouse_class.c:321
BUTTON_RELEASE
#define BUTTON_RELEASE
Definition: mouse_class.h:72
RIGHT_BUTTON
#define RIGHT_BUTTON
Definition: mouse_class.h:74
mouse_desc_handler
usbd_desc_handler mouse_desc_handler
mouse device descriptor handler structure
Definition: mouse_desc.c:64
USB_CONN_STATE_SUSPENDED
@ USB_CONN_STATE_SUSPENDED
Definition: usb_std.h:130
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_remote_wakeup
void usbd_remote_wakeup(usbd_core_type *udev)
usb device remote wakeup
Definition: usbd_core.c:600
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
mouse_class.h
usb hid mouse header file
mouse_desc.h
usb mouse descriptor header file
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
mouse_type
Definition: mouse_class.h:81
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::remote_wakup
uint8_t remote_wakup
Definition: usbd_core.h:128
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • msc
  • inc
project/at_start_f403/examples/usb_device/msc/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • msc
  • inc
project/at_start_f403/examples/usb_device/msc/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • msc
  • inc
project/at_start_f403/examples/usb_device/msc/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • msc
  • inc
project/at_start_f403/examples/usb_device/msc/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
98void usb_delay_ms(uint32_t ms);
99void usb_delay_us(uint32_t us);
100
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/msc/src/main.c:143
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/msc/src/main.c:154


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • msc
  • src
project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • msc
  • src
project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/msc/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • msc
  • src
project/at_start_f403/examples/usb_device/msc/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "msc_class.h"
29#include "msc_desc.h"
30#include "usbd_int.h"
31
32
41 usbd_core_type usb_core_dev;
42
43
49void usb_clock48m_select(usb_clk48_s clk_s)
50{
51 switch(system_core_clock)
52 {
53 /* 48MHz */
54 case 48000000:
55 crm_usb_clock_div_set(CRM_USB_DIV_1);
56 break;
57
58 /* 72MHz */
59 case 72000000:
60 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
61 break;
62
63 /* 96MHz */
64 case 96000000:
65 crm_usb_clock_div_set(CRM_USB_DIV_2);
66 break;
67
68 /* 120MHz */
69 case 120000000:
70 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
71 break;
72
73 /* 144MHz */
74 case 144000000:
75 crm_usb_clock_div_set(CRM_USB_DIV_3);
76 break;
77
78 /* 168MHz */
79 case 168000000:
80 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
81 break;
82
83 /* 192MHz */
84 case 192000000:
85 crm_usb_clock_div_set(CRM_USB_DIV_4);
86 break;
87
88 default:
89 break;
90
91 }
92}
93
99int main(void)
100{
101 /* config nvic priority group */
102 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
103
104 system_clock_config();
105
106 at32_board_init();
107
108 /* select usb 48m clcok source */
109 usb_clock48m_select(USB_CLK_HEXT);
110
111 /* enable usb clock */
112 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
113
114 /* enable usb interrupt */
115 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
116
117 /* usb core init */
118 usbd_core_init(&usb_core_dev, USB, &msc_class_handler, &msc_desc_handler, 0);
119
120 /* enable usb pull-up */
121 usbd_connect(&usb_core_dev);
122
123 while(1)
124 {
125 }
126}
127
133void USBFS_L_CAN1_RX0_IRQHandler(void)
134{
135 usbd_irq_handler(&usb_core_dev);
136}
137
143void usb_delay_ms(uint32_t ms)
144{
145 /* user can define self delay function */
146 delay_ms(ms);
147}
148
154void usb_delay_us(uint32_t us)
155{
156 delay_us(us);
157}
158
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/msc/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/msc/src/main.c:99
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/msc/src/main.c:133
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/msc/src/main.c:41
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
msc_class_handler
usbd_class_handler msc_class_handler
Definition: msc_class.c:55
msc_desc_handler
usbd_desc_handler msc_desc_handler
device descriptor handler structure
Definition: msc_desc.c:65
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
msc_class.h
usb msc class file
msc_desc.h
usb msc descriptor header file
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • printer
  • inc
project/at_start_f403/examples/usb_device/printer/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • printer
  • inc
project/at_start_f403/examples/usb_device/printer/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • printer
  • inc
project/at_start_f403/examples/usb_device/printer/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • printer
  • inc
project/at_start_f403/examples/usb_device/printer/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
98void usb_delay_ms(uint32_t ms);
99void usb_delay_us(uint32_t us);
100
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/printer/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/printer/src/main.c:160


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • printer
  • src
project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • printer
  • src
project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/printer/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • printer
  • src
project/at_start_f403/examples/usb_device/printer/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "printer_class.h"
29#include "printer_desc.h"
30#include "usbd_int.h"
31
40uint8_t usb_buffer[256];
41 usbd_core_type usb_core_dev;
42
48void usb_clock48m_select(usb_clk48_s clk_s)
49{
50 switch(system_core_clock)
51 {
52 /* 48MHz */
53 case 48000000:
54 crm_usb_clock_div_set(CRM_USB_DIV_1);
55 break;
56
57 /* 72MHz */
58 case 72000000:
59 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
60 break;
61
62 /* 96MHz */
63 case 96000000:
64 crm_usb_clock_div_set(CRM_USB_DIV_2);
65 break;
66
67 /* 120MHz */
68 case 120000000:
69 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
70 break;
71
72 /* 144MHz */
73 case 144000000:
74 crm_usb_clock_div_set(CRM_USB_DIV_3);
75 break;
76
77 /* 168MHz */
78 case 168000000:
79 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
80 break;
81
82 /* 192MHz */
83 case 192000000:
84 crm_usb_clock_div_set(CRM_USB_DIV_4);
85 break;
86
87 default:
88 break;
89
90 }
91}
92
98int main(void)
99{
100 uint32_t rx_len = 0;
101
102 /* config nvic priority group */
103 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
104
105 system_clock_config();
106
107 at32_board_init();
108
109 /* select usb 48m clcok source */
110 usb_clock48m_select(USB_CLK_HEXT);
111
112 /* enable usb clock */
113 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
114
115 /* enable usb interrupt */
116 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
117
118 /* usb core init */
119 usbd_core_init(&usb_core_dev, USB, &printer_class_handler, &printer_desc_handler, 0);
120
121 /* enable usb pull-up */
122 usbd_connect(&usb_core_dev);
123
124 while(1)
125 {
126 /* get usb printer receive data */
127 rx_len = usb_printer_get_rxdata(&usb_core_dev, usb_buffer);
128 UNUSED(rx_len);
129
130 /* user code ...*/
131 }
132}
133
139void USBFS_L_CAN1_RX0_IRQHandler(void)
140{
141 usbd_irq_handler(&usb_core_dev);
142}
143
149void usb_delay_ms(uint32_t ms)
150{
151 /* user can define self delay function */
152 delay_ms(ms);
153}
154
160void usb_delay_us(uint32_t us)
161{
162 delay_us(us);
163}
164
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
UNUSED
#define UNUSED(x)
Definition: at32f403_def.h:63
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/printer/src/main.c:48
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/printer/src/main.c:98
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/printer/src/main.c:139
usb_buffer
uint8_t usb_buffer[256]
Definition: project/at_start_f403/examples/usb_device/printer/src/main.c:40
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/printer/src/main.c:41
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usb_printer_get_rxdata
uint16_t usb_printer_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: printer_class.c:302
printer_class_handler
usbd_class_handler printer_class_handler
Definition: printer_class.c:62
printer_desc_handler
usbd_desc_handler printer_desc_handler
device descriptor handler structure
Definition: printer_desc.c:65
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
printer_class.h
usb printer class file
printer_desc.h
usb printer descriptor header file
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • vcp_loopback
  • inc
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • vcp_loopback
  • inc
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • vcp_loopback
  • inc
project/at_start_f403/examples/usb_device/vcp_loopback/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • vcp_loopback
  • inc
project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61//#define USB_EPT_AUTO_MALLOC_BUFFER /*!< usb auto malloc endpoint tx and rx buffer */
62
63
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
98void usb_delay_ms(uint32_t ms);
99void usb_delay_us(uint32_t us);
100
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c:175
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c:186


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • vcp_loopback
  • src
project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • vcp_loopback
  • src
project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • vcp_loopback
  • src
project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "cdc_class.h"
29#include "cdc_desc.h"
30#include "usbd_int.h"
31
40 usbd_core_type usb_core_dev;
41uint8_t usb_buffer[256];
42
48void usb_clock48m_select(usb_clk48_s clk_s)
49{
50 switch(system_core_clock)
51 {
52 /* 48MHz */
53 case 48000000:
54 crm_usb_clock_div_set(CRM_USB_DIV_1);
55 break;
56
57 /* 72MHz */
58 case 72000000:
59 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
60 break;
61
62 /* 96MHz */
63 case 96000000:
64 crm_usb_clock_div_set(CRM_USB_DIV_2);
65 break;
66
67 /* 120MHz */
68 case 120000000:
69 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
70 break;
71
72 /* 144MHz */
73 case 144000000:
74 crm_usb_clock_div_set(CRM_USB_DIV_3);
75 break;
76
77 /* 168MHz */
78 case 168000000:
79 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
80 break;
81
82 /* 192MHz */
83 case 192000000:
84 crm_usb_clock_div_set(CRM_USB_DIV_4);
85 break;
86
87 default:
88 break;
89
90 }
91}
92
98int main(void)
99{
100 uint16_t data_len;
101
102 uint32_t timeout;
103
104 uint8_t send_zero_packet = 0;
105
106 /* config nvic priority group */
107 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
108
109 system_clock_config();
110
111 at32_board_init();
112
113 /* select usb 48m clcok source */
114 usb_clock48m_select(USB_CLK_HEXT);
115
116 /* enable usb clock */
117 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
118
119 /* enable usb interrupt */
120 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
121
122 /* usb core init */
123 usbd_core_init(&usb_core_dev, USB, &cdc_class_handler, &cdc_desc_handler, 0);
124
125 /* enable usb pull-up */
126 usbd_connect(&usb_core_dev);
127
128 while(1)
129 {
130 /* get usb vcp receive data */
131 data_len = usb_vcp_get_rxdata(&usb_core_dev, usb_buffer);
132
133 if(data_len > 0 || send_zero_packet == 1)
134 {
135
136 /* bulk transfer is complete when the endpoint does one of the following
137 1 has transferred exactly the amount of data expected
138 2 transfers a packet with a payload size less than wMaxPacketSize or transfers a zero-length packet
139 */
140 if(data_len > 0)
141 send_zero_packet = 1;
142
143 if(data_len == 0)
144 send_zero_packet = 0;
145
146 timeout = 50000;
147 do
148 {
149 /* send data to host */
150 if(usb_vcp_send_data(&usb_core_dev, usb_buffer, data_len) == SUCCESS)
151 {
152 break;
153 }
154 }while(timeout --);
155 }
156 }
157}
158
159
165void USBFS_L_CAN1_RX0_IRQHandler(void)
166{
167 usbd_irq_handler(&usb_core_dev);
168}
169
175void usb_delay_ms(uint32_t ms)
176{
177 /* user can define self delay function */
178 delay_ms(ms);
179}
180
186void usb_delay_us(uint32_t us)
187{
188 delay_us(us);
189}
190
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
cdc_class.h
usb cdc class file
cdc_desc.h
usb cdc descriptor header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c:48
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c:98
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c:165
usb_buffer
uint8_t usb_buffer[256]
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c:41
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/src/main.c:40
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usb_vcp_get_rxdata
uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_class.c:343
usb_vcp_send_data
error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_class.c:373
cdc_class_handler
usbd_class_handler cdc_class_handler
Definition: cdc_class.c:67
cdc_desc_handler
usbd_desc_handler cdc_desc_handler
device descriptor handler structure
Definition: cdc_desc.c:64
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • virtual_comport
  • inc
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • virtual_comport
  • inc
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • virtual_comport
  • inc
project/at_start_f403/examples/usb_device/virtual_comport/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • virtual_comport
  • inc
project/at_start_f403/examples/usb_device/virtual_comport/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61//#define USB_EPT_AUTO_MALLOC_BUFFER /*!< usb auto malloc endpoint tx and rx buffer */
62
66#define USB_VIRTUAL_COMPORT
67
68
69#ifndef USB_EPT_AUTO_MALLOC_BUFFER
75/* ept0 tx start address 0x40, size 0x40,
76 so rx start address is 0x40 + 0x40 = 0x80 */
77#define EPT0_TX_ADDR 0x40
78#define EPT0_RX_ADDR 0x80
80#define EPT1_TX_ADDR 0xC0
81#define EPT1_RX_ADDR 0x100
83#define EPT2_TX_ADDR 0x140
84#define EPT2_RX_ADDR 0x180
86#define EPT3_TX_ADDR 0x00
87#define EPT3_RX_ADDR 0x00
89#define EPT4_TX_ADDR 0x00
90#define EPT4_RX_ADDR 0x00
92#define EPT5_TX_ADDR 0x00
93#define EPT5_RX_ADDR 0x00
95#define EPT6_TX_ADDR 0x00
96#define EPT6_RX_ADDR 0x00
98#define EPT7_TX_ADDR 0x00
99#define EPT7_RX_ADDR 0x00
101#endif
102
103void usb_delay_ms(uint32_t ms);
104void usb_delay_us(uint32_t us);
105
114#ifdef __cplusplus
115}
116#endif
117
118#endif
119
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • virtual_comport
  • src
project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • virtual_comport
  • src
project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • virtual_comport
  • src
project/at_start_f403/examples/usb_device/virtual_comport/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "cdc_class.h"
29#include "cdc_desc.h"
30#include "usbd_int.h"
31
40 usbd_core_type usb_core_dev;
41uint8_t usb_buffer[256];
42
43/* usart global struct define */
44extern linecoding_type linecoding;
45void usb_usart_config(linecoding_type linecoding);
46void usart_gpio_config(void);
47#define usart_buffer_size 2048
48uint8_t usart_rx_buffer[usart_buffer_size];
49uint16_t hw_usart_rx_index = 0;
50uint16_t hw_usart_read_index = 0;
51uint16_t usart_rx_data_len = 0;
52uint16_t ov_cnt = 0;
53void usart_send_data(uint8_t *send_data, uint16_t len);
54uint16_t usart_receive_data(void);
55
61void usb_clock48m_select(usb_clk48_s clk_s)
62{
63 switch(system_core_clock)
64 {
65 /* 48MHz */
66 case 48000000:
67 crm_usb_clock_div_set(CRM_USB_DIV_1);
68 break;
69
70 /* 72MHz */
71 case 72000000:
72 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
73 break;
74
75 /* 96MHz */
76 case 96000000:
77 crm_usb_clock_div_set(CRM_USB_DIV_2);
78 break;
79
80 /* 120MHz */
81 case 120000000:
82 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
83 break;
84
85 /* 144MHz */
86 case 144000000:
87 crm_usb_clock_div_set(CRM_USB_DIV_3);
88 break;
89
90 /* 168MHz */
91 case 168000000:
92 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
93 break;
94
95 /* 192MHz */
96 case 192000000:
97 crm_usb_clock_div_set(CRM_USB_DIV_4);
98 break;
99
100 default:
101 break;
102
103 }
104}
105
111int main(void)
112{
113 uint16_t data_len;
114
115 uint32_t timeout;
116
117 uint8_t send_zero_packet = 0;
118
119 /* config nvic priority group */
120 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
121
122 system_clock_config();
123
124 at32_board_init();
125
126 /* usart gpio config */
127 usart_gpio_config();
128
129 /* hardware usart config: usart2 */
130 usb_usart_config(linecoding);
131
132 /* select usb 48m clcok source */
133 usb_clock48m_select(USB_CLK_HEXT);
134
135 /* enable usb clock */
136 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
137
138 /* enable usb interrupt */
139 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
140
141 /* usb core init */
142 usbd_core_init(&usb_core_dev, USB, &cdc_class_handler, &cdc_desc_handler, 0);
143
144 /* enable usb pull-up */
145 usbd_connect(&usb_core_dev);
146
147 while(1)
148 {
149 /* get usb vcp receive data */
150 data_len = usb_vcp_get_rxdata(&usb_core_dev, usb_buffer);
151
152 /* send data to hardware usart */
153 if(data_len > 0)
154 {
155 usart_send_data(usb_buffer, data_len);
156 }
157
158 /* if hardware usart received data,usb send data to host */
159 usart_rx_data_len = usart_receive_data();
160 if(usart_rx_data_len || send_zero_packet == 1)
161 {
162 if(usart_rx_data_len > 0)
163 send_zero_packet = 1;
164
165 if(usart_rx_data_len == 0)
166 send_zero_packet = 0;
167
168 timeout = 50000;
169
170 if((hw_usart_read_index + usart_rx_data_len) < usart_buffer_size)
171 {
172 do
173 {
174 /* send data to host */
175 if(usb_vcp_send_data(&usb_core_dev, &usart_rx_buffer[hw_usart_read_index], usart_rx_data_len) == SUCCESS)
176 {
177 hw_usart_read_index = hw_usart_read_index + usart_rx_data_len;
178
179 break;
180 }
181 }while(timeout --);
182
183 }
184 /* process the fifo overflow */
185 else
186 {
187 do
188 {
189 /* send data to host */
190 if(usb_vcp_send_data(&usb_core_dev, &usart_rx_buffer[hw_usart_read_index], usart_buffer_size - hw_usart_read_index) == SUCCESS)
191 {
192 /* get fifo overflow data count */
193 ov_cnt = usart_rx_data_len - (usart_buffer_size - hw_usart_read_index);
194 hw_usart_read_index = 0;
195 break;
196 }
197 }while(timeout --);
198 timeout = 50000;
199 do
200 {
201 /* send data to host */
202 if(usb_vcp_send_data(&usb_core_dev, &usart_rx_buffer[hw_usart_read_index], ov_cnt) == SUCCESS)
203 {
204 hw_usart_read_index = ov_cnt;
205 break;
206 }
207 }while(timeout --);
208 }
209 }
210 }
211}
212
219void usart_send_data(uint8_t *send_data, uint16_t len)
220{
221 uint16_t index = 0;
222 for(index = 0; index < len; index++ )
223 {
224 do
225 {
226 ;
227 }while(usart_flag_get(USART2, USART_TDBE_FLAG) == RESET);
228
229 usart_data_transmit(USART2, send_data[index]);
230 }
231}
232
238uint16_t usart_receive_data(void)
239{
240 uint16_t usart_data_len;
241 if(hw_usart_read_index == hw_usart_rx_index)
242 {
243 usart_data_len = 0;
244 }
245 else
246 {
247 /* whether to process the fifo overflow or not */
248 if(hw_usart_rx_index > hw_usart_read_index)
249 usart_data_len = hw_usart_rx_index - hw_usart_read_index;
250 else if(hw_usart_rx_index == 0 && hw_usart_rx_index != hw_usart_read_index)
251 usart_data_len = usart_buffer_size - hw_usart_read_index;
252 else
253 usart_data_len = (usart_buffer_size-1) + hw_usart_rx_index - hw_usart_read_index;
254 }
255
256 return usart_data_len;
257}
258
264void USART2_IRQHandler(void)
265{
266 if(usart_flag_get(USART2, USART_RDBF_FLAG) != RESET)
267 {
268 /* read one byte from the receive data register */
269 usart_rx_buffer[hw_usart_rx_index] = usart_data_receive(USART2);
270 hw_usart_rx_index = ( (hw_usart_rx_index+1) & (usart_buffer_size-1) );
271 }
272}
273
279void usb_usart_config( linecoding_type linecoding)
280{
281 usart_stop_bit_num_type usart_stop_bit;
282 usart_data_bit_num_type usart_data_bit;
283 usart_parity_selection_type usart_parity_select;
284
285 /* enable the usart2 and gpio clock */
286 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, FALSE);
287 crm_periph_clock_enable(CRM_USART2_PERIPH_CLOCK, TRUE);
288
289 /* stop bit */
290 switch(linecoding.format)
291 {
292 case 0x0:
293 usart_stop_bit = USART_STOP_1_BIT;
294 break;
295 /* to be used when transmitting and receiving data in smartcard mode */
296 case 0x1:
297 usart_stop_bit = USART_STOP_1_5_BIT;
298 break;
299 case 0x2:
300 usart_stop_bit = USART_STOP_2_BIT;
301 break;
302 default :
303 break;
304 }
305
306 /* parity */
307 switch(linecoding.parity)
308 {
309 case 0x0:
310 usart_parity_select = USART_PARITY_NONE;
311 break;
312 case 0x1:
313 usart_parity_select = USART_PARITY_ODD;
314 break;
315 case 0x2:
316 usart_parity_select = USART_PARITY_EVEN;
317 break;
318 /* hardware usart not support partiy for mark and space */
319 case 0x3:
320 case 0x4:
321 break;
322 default :
323 break;
324 }
325
326 if(USART_PARITY_NONE == usart_parity_select)
327 {
328 /* data bits */
329 switch(linecoding.data)
330 {
331 /* hardware usart not support data bits for 5/6/7 */
332 case 0x5:
333 case 0x6:
334 case 0x7:
335 break;
336 case 0x8:
337 usart_data_bit = USART_DATA_8BITS;
338 break;
339 /* hardware usart not support data bits for 16 */
340 case 0x10:
341 break;
342 default :
343 break;
344 }
345 }
346 else
347 {
348 /* data bits */
349 switch(linecoding.data)
350 {
351 /* hardware usart not support data bits for 5/6 */
352 case 0x5:
353 case 0x6:
354 break;
355 case 0x7:
356 usart_data_bit = USART_DATA_8BITS;
357 break;
358 case 0x8:
359 usart_data_bit = USART_DATA_9BITS;
360 break;
361 /* hardware usart not support data bits for 16 */
362 case 0x10:
363 break;
364 default :
365 break;
366 }
367 }
368
369 nvic_irq_enable(USART2_IRQn, 0, 0);
370
371 /* configure usart2 param */
372 usart_init(USART2, linecoding.bitrate, usart_data_bit, usart_stop_bit);
373 usart_parity_selection_config(USART2, usart_parity_select);
374 usart_transmitter_enable(USART2, TRUE);
375 usart_receiver_enable(USART2, TRUE);
376
377 /* enable usart2 interrupt */
378 usart_interrupt_enable(USART2, USART_RDBF_INT, TRUE);
379 usart_enable(USART2, TRUE);
380}
381
387void usart_gpio_config(void)
388{
389 gpio_init_type gpio_init_struct;
390 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
391
392 /* configure the usart2 tx pin */
393 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
394 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
395 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
396 gpio_init_struct.gpio_pins = GPIO_PINS_2;
397 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
398 gpio_init(GPIOA, &gpio_init_struct);
399
400 /* configure the usart2 rx pin */
401 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
402 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
403 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
404 gpio_init_struct.gpio_pins = GPIO_PINS_3;
405 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
406 gpio_init(GPIOA, &gpio_init_struct);
407}
408
414void USBFS_L_CAN1_RX0_IRQHandler(void)
415{
416 usbd_irq_handler(&usb_core_dev);
417}
418
424void usb_delay_ms(uint32_t ms)
425{
426 /* user can define self delay function */
427 delay_ms(ms);
428}
429
435void usb_delay_us(uint32_t us)
436{
437 delay_us(us);
438}
439
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
cdc_class.h
usb cdc class file
cdc_desc.h
usb cdc descriptor header file
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:142
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
can1 interrupt function rx0
Definition: project/at_start_f403/examples/can/communication_mode/src/main.c:148
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:48
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usart_buffer_size
#define usart_buffer_size
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:47
USART2_IRQHandler
void USART2_IRQHandler(void)
this function handles usart2 handler.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:264
hw_usart_read_index
uint16_t hw_usart_read_index
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:50
usb_usart_config
void usb_usart_config(linecoding_type linecoding)
this function handles usart2 and linecoding config.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:279
usart_rx_data_len
uint16_t usart_rx_data_len
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:51
linecoding
linecoding_type linecoding
Definition: cdc_class.c:55
ov_cnt
uint16_t ov_cnt
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:52
usart_gpio_config
void usart_gpio_config(void)
this function handles usart2 gpio config.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:387
usart_rx_buffer
uint8_t usart_rx_buffer[2048]
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:48
usart_send_data
void usart_send_data(uint8_t *send_data, uint16_t len)
this function handles usart2 send data.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:219
usb_buffer
uint8_t usb_buffer[256]
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:41
usart_receive_data
uint16_t usart_receive_data(void)
this function handles usart2 receive data.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:238
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:40
hw_usart_rx_index
uint16_t hw_usart_rx_index
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/main.c:49
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_USART2_PERIPH_CLOCK
@ CRM_USART2_PERIPH_CLOCK
Definition: at32f403_crm.h:142
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USART2_IRQn
@ USART2_IRQn
Definition: at32f403.h:217
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usart_data_transmit
void usart_data_transmit(usart_type *usart_x, uint16_t data)
transmit single data through the usart peripheral.
Definition: at32f403_usart.c:377
usart_parity_selection_config
void usart_parity_selection_config(usart_type *usart_x, usart_parity_selection_type parity)
usart parity selection config.
Definition: at32f403_usart.c:141
usart_flag_get
flag_status usart_flag_get(usart_type *usart_x, uint32_t flag)
check whether the specified usart flag is set or not.
Definition: at32f403_usart.c:562
usart_transmitter_enable
void usart_transmitter_enable(usart_type *usart_x, confirm_state new_state)
usart transmitter enable.
Definition: at32f403_usart.c:182
usart_init
void usart_init(usart_type *usart_x, uint32_t baud_rate, usart_data_bit_num_type data_bit, usart_stop_bit_num_type stop_bit)
initialize the usart peripheral according to the specified parameters.
Definition: at32f403_usart.c:102
usart_enable
void usart_enable(usart_type *usart_x, confirm_state new_state)
enable or disable the specified usart peripheral.
Definition: at32f403_usart.c:169
usart_receiver_enable
void usart_receiver_enable(usart_type *usart_x, confirm_state new_state)
usart receiver enable.
Definition: at32f403_usart.c:195
usart_interrupt_enable
void usart_interrupt_enable(usart_type *usart_x, uint32_t usart_int, confirm_state new_state)
enable or disable the specified usart interrupts.
Definition: at32f403_usart.c:260
usart_data_receive
uint16_t usart_data_receive(usart_type *usart_x)
return the most recent received data by the usart peripheral.
Definition: at32f403_usart.c:389
usart_stop_bit_num_type
usart_stop_bit_num_type
usart stop bit num type
Definition: at32f403_usart.h:155
usart_data_bit_num_type
usart_data_bit_num_type
usart data bit num type
Definition: at32f403_usart.h:110
usart_parity_selection_type
usart_parity_selection_type
usart parity selection type
Definition: at32f403_usart.h:91
USART_STOP_1_5_BIT
@ USART_STOP_1_5_BIT
Definition: at32f403_usart.h:159
USART_STOP_1_BIT
@ USART_STOP_1_BIT
Definition: at32f403_usart.h:156
USART_STOP_2_BIT
@ USART_STOP_2_BIT
Definition: at32f403_usart.h:158
USART_DATA_9BITS
@ USART_DATA_9BITS
Definition: at32f403_usart.h:112
USART_DATA_8BITS
@ USART_DATA_8BITS
Definition: at32f403_usart.h:111
USART_PARITY_ODD
@ USART_PARITY_ODD
Definition: at32f403_usart.h:94
USART_PARITY_EVEN
@ USART_PARITY_EVEN
Definition: at32f403_usart.h:93
USART_PARITY_NONE
@ USART_PARITY_NONE
Definition: at32f403_usart.h:92
USART_TDBE_FLAG
#define USART_TDBE_FLAG
Definition: at32f403_usart.h:57
USART_RDBF_FLAG
#define USART_RDBF_FLAG
Definition: at32f403_usart.h:55
USART_RDBF_INT
#define USART_RDBF_INT
Definition: at32f403_usart.h:71
USART2
#define USART2
Definition: at32f403_usart.h:318
usb_vcp_get_rxdata
uint16_t usb_vcp_get_rxdata(void *udev, uint8_t *recv_data)
usb device class rx data process
Definition: cdc_class.c:343
usb_vcp_send_data
error_status usb_vcp_send_data(void *udev, uint8_t *send_data, uint16_t len)
usb device class send data
Definition: cdc_class.c:373
cdc_class_handler
usbd_class_handler cdc_class_handler
Definition: cdc_class.c:67
cdc_desc_handler
usbd_desc_handler cdc_desc_handler
device descriptor handler structure
Definition: cdc_desc.c:64
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
linecoding_type::bitrate
uint32_t bitrate
Definition: usb_std.h:212
linecoding_type::data
uint8_t data
Definition: usb_std.h:215
linecoding_type::parity
uint8_t parity
Definition: usb_std.h:214
linecoding_type::format
uint8_t format
Definition: usb_std.h:213
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • usb_device
  • virtual_msc_iap
  • inc
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • usb_device
  • virtual_msc_iap
  • inc
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • usb_device
  • virtual_msc_iap
  • inc
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • usb_device
  • virtual_msc_iap
  • inc
project/at_start_f403/examples/usb_device/virtual_msc_iap/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97
98void usb_delay_ms(uint32_t ms);
99void usb_delay_us(uint32_t us);
100
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:247
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:258


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • usb_device
  • virtual_msc_iap
  • src
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • usb_device
  • virtual_msc_iap
  • src
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • usb_device
  • virtual_msc_iap
  • src
project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "msc_class.h"
29#include "msc_desc.h"
30#include "usbd_int.h"
31#include "flash_fat16.h"
32
41 usbd_core_type usb_core_dev;
42
43void (*pftarget)(void);
44
45void jump_to_app(uint32_t address);
46
47
53void usb_clock48m_select(usb_clk48_s clk_s)
54{
55 switch(system_core_clock)
56 {
57 /* 48MHz */
58 case 48000000:
59 crm_usb_clock_div_set(CRM_USB_DIV_1);
60 break;
61
62 /* 72MHz */
63 case 72000000:
64 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
65 break;
66
67 /* 96MHz */
68 case 96000000:
69 crm_usb_clock_div_set(CRM_USB_DIV_2);
70 break;
71
72 /* 120MHz */
73 case 120000000:
74 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
75 break;
76
77 /* 144MHz */
78 case 144000000:
79 crm_usb_clock_div_set(CRM_USB_DIV_3);
80 break;
81
82 /* 168MHz */
83 case 168000000:
84 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
85 break;
86
87 /* 192MHz */
88 case 192000000:
89 crm_usb_clock_div_set(CRM_USB_DIV_4);
90 break;
91
92 default:
93 break;
94
95 }
96}
97
103int main(void)
104{
105 /* config nvic priority group */
106 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
107
108 system_clock_config();
109
110 flash_fat16_init();
111
112 at32_board_init();
113
114 if(flash_fat16_get_upgrade_flag() == IAP_SUCCESS &&
115 (at32_button_press() == NO_BUTTON))
116 {
117 jump_to_app(flash_iap.flash_app_addr);
118 }
119
120 /* select usb 48m clcok source */
121 usb_clock48m_select(USB_CLK_HEXT);
122
123 /* enable usb clock */
124 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
125
126 /* enable usb interrupt */
127 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
128
129 /* usb core init */
130 usbd_core_init(&usb_core_dev, USB, &msc_class_handler, &msc_desc_handler, 0);
131
132 /* enable usb pull-up */
133 usbd_connect(&usb_core_dev);
134
135 while(1)
136 {
137 flash_fat16_loop_status();
138 }
139}
140
146void usb_reset()
147{
148 delay_ms(1000);
149 usbd_disconnect(&usb_core_dev);
150 delay_ms(1000);
151 usbd_connect(&usb_core_dev);
152}
153
159void flash_fat16_loop_status(void)
160{
161 static uint8_t status = UPGRADE_READY;
162 if(status == flash_iap.msc_up_status)
163 {
164 return;
165 }
166 else
167 {
168 status = flash_iap.msc_up_status;
169 }
170
171 switch(flash_iap.msc_up_status)
172 {
173 case UPGRADE_READY:
174 flash_fat16_set_name((const uint8_t *)"Ready", 5);
175 break;
176 case UPGRAGE_ONGOING:
177 break;
178 case UPGRADE_SUCCESS:
179 flash_fat16_set_name((const uint8_t *)"Success", 7);
180 flash_iap.msc_up_status = UPGRADE_DONE;
181 usb_reset();
182 break;
183 case UPGRADE_FAILED:
184 flash_fat16_set_name((const uint8_t *)"Failed", 6);
185 flash_iap.msc_up_status = UPGRADE_DONE;
186 usb_reset();
187 break;
188 case UPGRADE_LARGE:
189 flash_fat16_set_name((const uint8_t *)"Large", 5);
190 flash_iap.msc_up_status = UPGRADE_DONE;
191 usb_reset();
192 break;
193 case UPGRADE_UNKNOWN:
194 flash_fat16_set_name((const uint8_t *)"Unkown", 6);
195 break;
196 case UPGRADE_DONE:
197 break;
198 case UPGRADE_JUMP:
199 flash_fat16_set_name((const uint8_t *)"Jump", 6);
200 delay_ms(1000);
201 jump_to_app(flash_iap.write_addr);
202 break;
203 default:
204 break;
205 }
206
207}
208
214void jump_to_app(uint32_t address)
215{
216 uint32_t stkptr, jumpaddr;
217 stkptr = *(uint32_t *)address;
218 jumpaddr = *(uint32_t *)(address + sizeof(uint32_t));
219
220 /* clear usb crm */
221 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, FALSE);
222 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, FALSE);
223
224 crm_periph_reset(CRM_USB_PERIPH_RESET, TRUE);
225 crm_periph_reset(CRM_USB_PERIPH_RESET, FALSE);
226
227 __set_MSP(stkptr);
228 pftarget = (void (*) (void))jumpaddr;
229 pftarget();
230}
231
237void USBFS_L_CAN1_RX0_IRQHandler(void)
238{
239 usbd_irq_handler(&usb_core_dev);
240}
241
247void usb_delay_ms(uint32_t ms)
248{
249 /* user can define self delay function */
250 delay_ms(ms);
251}
252
258void usb_delay_us(uint32_t us)
259{
260 delay_us(us);
261}
262
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
flash_fat16.h
fat16 file system header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
usb_reset
void usb_reset()
usb re-connect
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:146
jump_to_app
void jump_to_app(uint32_t address)
jump to app
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:214
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:53
main
int main(void)
main function.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:103
flash_fat16_loop_status
void flash_fat16_loop_status(void)
loop status
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:159
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:237
pftarget
void(* pftarget)(void)
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:43
usb_core_dev
usbd_core_type usb_core_dev
Definition: project/at_start_f403/examples/usb_device/virtual_msc_iap/src/main.c:41
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
NO_BUTTON
@ NO_BUTTON
Definition: at32f403_board.h:93
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_periph_reset
void crm_periph_reset(crm_periph_reset_type value, confirm_state new_state)
enable or disable the peripheral reset
Definition: at32f403_crm.c:303
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
CRM_USB_PERIPH_RESET
@ CRM_USB_PERIPH_RESET
Definition: at32f403_crm.h:203
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
flash_fat16_set_name
uint32_t flash_fat16_set_name(const uint8_t *file_name, uint8_t len)
set file name
Definition: flash_fat16.c:357
flash_fat16_get_upgrade_flag
uint8_t flash_fat16_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: flash_fat16.c:268
flash_iap
flash_iap_type flash_iap
Definition: flash_fat16.c:171
flash_fat16_init
void flash_fat16_init(void)
flash fat16 iap init
Definition: flash_fat16.c:720
UPGRADE_LARGE
@ UPGRADE_LARGE
Definition: flash_fat16.h:84
UPGRADE_UNKNOWN
@ UPGRADE_UNKNOWN
Definition: flash_fat16.h:85
UPGRADE_JUMP
@ UPGRADE_JUMP
Definition: flash_fat16.h:87
UPGRADE_FAILED
@ UPGRADE_FAILED
Definition: flash_fat16.h:83
UPGRADE_SUCCESS
@ UPGRADE_SUCCESS
Definition: flash_fat16.h:82
UPGRADE_READY
@ UPGRADE_READY
Definition: flash_fat16.h:80
UPGRAGE_ONGOING
@ UPGRAGE_ONGOING
Definition: flash_fat16.h:81
UPGRADE_DONE
@ UPGRADE_DONE
Definition: flash_fat16.h:86
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
IAP_SUCCESS
@ IAP_SUCCESS
Definition: hid_iap_class.h:85
msc_class_handler
usbd_class_handler msc_class_handler
Definition: msc_class.c:55
msc_desc_handler
usbd_desc_handler msc_desc_handler
device descriptor handler structure
Definition: msc_desc.c:65
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_disconnect
void usbd_disconnect(usbd_core_type *udev)
usb device disconnect to host
Definition: usbd_core.c:569
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
msc_class.h
usb msc class file
msc_desc.h
usb msc descriptor header file
flash_iap_type::msc_up_status
upgrade_status_type msc_up_status
Definition: flash_fat16.h:120
flash_iap_type::write_addr
uint32_t write_addr
Definition: flash_fat16.h:118
flash_iap_type::flash_app_addr
uint32_t flash_app_addr
Definition: flash_fat16.h:109
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • wdt
  • wdt_reset
  • inc
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • wdt
  • wdt_reset
  • inc
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • wdt
  • wdt_reset
  • inc
project/at_start_f403/examples/wdt/wdt_reset/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • wdt
  • wdt_reset
  • src
project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • wdt
  • wdt_reset
  • src
project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
133
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • wdt
  • wdt_reset
  • src
project/at_start_f403/examples/wdt/wdt_reset/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
42int main(void)
43{
44 system_clock_config();
45
46 at32_board_init();
47
48 if(crm_flag_get(CRM_WDT_RESET_FLAG) != RESET)
49 {
50 /* reset from wdt */
51 crm_flag_clear(CRM_WDT_RESET_FLAG);
52
53 at32_led_on(LED4);
54 }
55 else
56 {
57 /* reset from other mode */
58 at32_led_off(LED4);
59 }
60
61 /* disable register write protection */
62 wdt_register_write_enable(TRUE);
63
64 /* set the wdt divider value */
65 wdt_divider_set(WDT_CLK_DIV_4);
66
67 /* set reload value
68
69 timeout = reload_value * (divider / lick_freq ) (s)
70
71 lick_freq = 40000 Hz
72 divider = 4
73 reload_value = 3000
74
75 timeout = 3000 * (4 / 40000 ) = 0.3s = 300ms
76 */
77 wdt_reload_value_set(3000 - 1);
78
79 /* reload wdt counter */
80 wdt_counter_reload();
81
82 /* enable wdt */
83 wdt_enable();
84
85 while(1)
86 {
87 /* reload wdt counter */
88 wdt_counter_reload();
89
90 at32_led_toggle(LED3);
91
92 delay_ms(200);
93
94 if(at32_button_press() == USER_BUTTON)
95 {
96 while(1);
97 }
98 }
99}
100
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/wdt/wdt_reset/src/main.c:42
LED3
@ LED3
Definition: at32f403_board.h:62
LED4
@ LED4
Definition: at32f403_board.h:63
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_flag_clear
void crm_flag_clear(uint32_t flag)
clear the crm reset flags
Definition: at32f403_crm.c:398
CRM_WDT_RESET_FLAG
#define CRM_WDT_RESET_FLAG
Definition: at32f403_crm.h:62
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
wdt_register_write_enable
void wdt_register_write_enable(confirm_state new_state)
enable or disable wdt cmd register write
Definition: at32f403_wdt.c:95
wdt_enable
void wdt_enable(void)
wdt enable ,the reload value will be sent to the counter
Definition: at32f403_wdt.c:47
wdt_counter_reload
void wdt_counter_reload(void)
reload wdt counter
Definition: at32f403_wdt.c:57
wdt_reload_value_set
void wdt_reload_value_set(uint16_t reload_value)
set wdt counter reload value
Definition: at32f403_wdt.c:67
wdt_divider_set
void wdt_divider_set(wdt_division_type division)
set wdt division divider
Definition: at32f403_wdt.c:85
WDT_CLK_DIV_4
@ WDT_CLK_DIV_4
Definition: at32f403_wdt.h:67
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • wdt
  • wdt_standby
  • inc
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • wdt
  • wdt_standby
  • inc
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • wdt
  • wdt_standby
  • inc
project/at_start_f403/examples/wdt/wdt_standby/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • wdt
  • wdt_standby
  • src
project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • wdt
  • wdt_standby
  • src
project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
133
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • wdt
  • wdt_standby
  • src
project/at_start_f403/examples/wdt/wdt_standby/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
42int main(void)
43{
44 system_clock_config();
45
46 at32_board_init();
47
48 /* enable the pwc clock */
49 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
50
51 if(crm_flag_get(CRM_WDT_RESET_FLAG) != RESET)
52 {
53 /* reset from wdt */
54 crm_flag_clear(CRM_WDT_RESET_FLAG);
55
56 at32_led_on(LED4);
57 }
58 else
59 {
60 /* reset from other mode */
61 at32_led_off(LED4);
62 }
63
64 delay_ms(100);
65
66 /* disable register write protection */
67 wdt_register_write_enable(TRUE);
68
69 /* set the wdt divider value */
70 wdt_divider_set(WDT_CLK_DIV_4);
71
72 /* set reload value
73
74 timeout = reload_value * (divider / lick_freq ) (s)
75
76 lick_freq = 40000 Hz
77 divider = 4
78 reload_value = 3000
79
80 timeout = 3000 * (4 / 40000 ) = 0.3s = 300ms
81 */
82 wdt_reload_value_set(3000 - 1);
83
84 /* reload wdt counter */
85 wdt_counter_reload();
86
87 /* enable wdt */
88 wdt_enable();
89
90 /* delay 100us wait for iwdg enable successfully */
91 delay_us(100);
92
93 /* enter standby mode */
94 pwc_standby_mode_enter();
95
96 while(1)
97 {
98
99 }
100}
101
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/wdt/wdt_standby/src/main.c:42
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_flag_clear
void crm_flag_clear(uint32_t flag)
clear the crm reset flags
Definition: at32f403_crm.c:398
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_WDT_RESET_FLAG
#define CRM_WDT_RESET_FLAG
Definition: at32f403_crm.h:62
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
pwc_standby_mode_enter
void pwc_standby_mode_enter(void)
enter pwc standby mode
Definition: at32f403_pwc.c:208
wdt_register_write_enable
void wdt_register_write_enable(confirm_state new_state)
enable or disable wdt cmd register write
Definition: at32f403_wdt.c:95
wdt_enable
void wdt_enable(void)
wdt enable ,the reload value will be sent to the counter
Definition: at32f403_wdt.c:47
wdt_counter_reload
void wdt_counter_reload(void)
reload wdt counter
Definition: at32f403_wdt.c:57
wdt_reload_value_set
void wdt_reload_value_set(uint16_t reload_value)
set wdt counter reload value
Definition: at32f403_wdt.c:67
wdt_divider_set
void wdt_divider_set(wdt_division_type division)
set wdt division divider
Definition: at32f403_wdt.c:85
WDT_CLK_DIV_4
@ WDT_CLK_DIV_4
Definition: at32f403_wdt.h:67
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • wwdt
  • wwdt_reset
  • inc
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • wwdt
  • wwdt_reset
  • inc
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • wwdt
  • wwdt_reset
  • inc
project/at_start_f403/examples/wwdt/wwdt_reset/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • wwdt
  • wwdt_reset
  • src
project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • wwdt
  • wwdt_reset
  • src
project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
28
42void NMI_Handler(void)
43{
44}
45
51void HardFault_Handler(void)
52{
53 /* go to infinite loop when hard fault exception occurs */
54 while(1)
55 {
56 }
57}
58
64void MemManage_Handler(void)
65{
66 /* go to infinite loop when memory manage exception occurs */
67 while(1)
68 {
69 }
70}
71
77void BusFault_Handler(void)
78{
79 /* go to infinite loop when bus fault exception occurs */
80 while(1)
81 {
82 }
83}
84
90void UsageFault_Handler(void)
91{
92 /* go to infinite loop when usage fault exception occurs */
93 while(1)
94 {
95 }
96}
97
103void SVC_Handler(void)
104{
105}
106
112void DebugMon_Handler(void)
113{
114}
115
121void PendSV_Handler(void)
122{
123}
124
130void SysTick_Handler(void)
131{
132}
133
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:90
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:51
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:64
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:103
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:121
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:42
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:77
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:130
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/at32f403_int.c:112
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • wwdt
  • wwdt_reset
  • src
project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
41int main(void)
42{
43 system_clock_config();
44
45 at32_board_init();
46
47 if(crm_flag_get(CRM_WWDT_RESET_FLAG) != RESET)
48 {
49 /* reset from wwdt */
50 crm_flag_clear(CRM_WWDT_RESET_FLAG);
51
52 at32_led_on(LED4);
53 }
54 else
55 {
56 /* reset from other mode */
57 at32_led_off(LED4);
58 }
59
60 /* enable the wwdt clock */
61 crm_periph_clock_enable(CRM_WWDT_PERIPH_CLOCK, TRUE);
62
63 /* set the wwdt divider value */
64 wwdt_divider_set(WWDT_PCLK1_DIV_32768);
65
66 /* set the wwdt window counter value */
67 wwdt_window_counter_set(0x6F);
68
69 /* enable wwdt
70
71 window_value: (0x7F - 0x6F)
72 timeout_value: (0x7F - 0x40) + 1
73
74 timeout = timeout_value * (divider / pclk1_freq ) (s)
75 window = window_value * (divider / pclk1_freq ) (s)
76
77 pclk1_freq = 96 MHz
78 divider = 32768
79 reload_value = 0x40 = 64
80 window_value = 0x10 = 16
81
82 timeout = 64 * (32768 / 120000000 ) = 0.0218s = 21.8ms
83 window = 16 * (32768 / 120000000 ) = 0.0055s = 5.5ms
84
85 */
86 wwdt_enable(0x7F);
87
88 while(1)
89 {
90 at32_led_toggle(LED3);
91
92 /* the reload time must within the window (7ms > 5.5ms) */
93 delay_ms(7);
94
95 /* update the wwdt window counter */
96 wwdt_counter_set(0x7F);
97
98 if(at32_button_press() == USER_BUTTON)
99 {
100 while(1);
101 }
102 }
103}
104
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/wwdt/wwdt_reset/src/main.c:41
LED3
@ LED3
Definition: at32f403_board.h:62
LED4
@ LED4
Definition: at32f403_board.h:63
USER_BUTTON
@ USER_BUTTON
Definition: at32f403_board.h:92
at32_button_press
button_type at32_button_press()
returns which button have press down
Definition: at32f403_board.c:214
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_led_off
void at32_led_off(led_type led)
turns selected led off.
Definition: at32f403_board.c:283
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_flag_clear
void crm_flag_clear(uint32_t flag)
clear the crm reset flags
Definition: at32f403_crm.c:398
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_WWDT_PERIPH_CLOCK
@ CRM_WWDT_PERIPH_CLOCK
Definition: at32f403_crm.h:138
CRM_WWDT_RESET_FLAG
#define CRM_WWDT_RESET_FLAG
Definition: at32f403_crm.h:63
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
wwdt_counter_set
void wwdt_counter_set(uint8_t wwdt_cnt)
wwdt counter value set
Definition: at32f403_wwdt.c:122
wwdt_divider_set
void wwdt_divider_set(wwdt_division_type division)
wwdt division set
Definition: at32f403_wwdt.c:62
wwdt_window_counter_set
void wwdt_window_counter_set(uint8_t window_cnt)
wwdt window counter value set
Definition: at32f403_wwdt.c:132
wwdt_enable
void wwdt_enable(uint8_t wwdt_cnt)
wwdt enable and the counter value load
Definition: at32f403_wwdt.c:82
WWDT_PCLK1_DIV_32768
@ WWDT_PCLK1_DIV_32768
Definition: at32f403_wwdt.h:68
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • lcd_8bit
  • inc
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • lcd_8bit
  • inc
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • lcd_8bit
  • inc
project/at_start_f403/examples/xmc/lcd_8bit/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • lcd_8bit
  • src
project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • lcd_8bit
  • src
project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
33void NMI_Handler(void)
34{
35}
36
42void HardFault_Handler(void)
43{
44 /* go to infinite loop when hard fault exception occurs */
45 while(1)
46 {
47 }
48}
49
55void MemManage_Handler(void)
56{
57 /* go to infinite loop when memory manage exception occurs */
58 while(1)
59 {
60 }
61}
62
68void BusFault_Handler(void)
69{
70 /* go to infinite loop when bus fault exception occurs */
71 while(1)
72 {
73 }
74}
75
81void UsageFault_Handler(void)
82{
83 /* go to infinite loop when usage fault exception occurs */
84 while(1)
85 {
86 }
87}
88
94void SVC_Handler(void)
95{
96}
97
103void DebugMon_Handler(void)
104{
105}
106
112void PendSV_Handler(void)
113{
114}
115
121void SysTick_Handler(void)
122{
123}
124
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:81
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:42
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:55
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:94
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:112
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:33
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:68
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:121
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/at32f403_int.c:103
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • lcd_8bit
  • src
project/at_start_f403/examples/xmc/lcd_8bit/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "xmc_lcd.h"
28
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38uint16_t point_color;
39
45int main(void)
46{
47 system_clock_config();
48
49 at32_board_init();
50
51 /* get system clock */
52 crm_clocks_freq_get(&crm_clocks_freq_struct);
53
54 /* turn led2/led3/led4 on */
55 at32_led_on(LED2);
56 at32_led_on(LED3);
57 at32_led_on(LED4);
58
59 /* configures xmc&lcd */
60 lcd_init();
61
62 /* clear the lcd */
63 point_color = WHITE;
64 lcd_clear(point_color);
65
66 while(1)
67 {
68 /* display number on lcd */
69 lcd_display_number();
70 }
71}
72
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
main
int main(void)
main function.
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/main.c:45
WHITE
#define WHITE
Definition: lcd_8bit/inc/xmc_lcd.h:66
point_color
uint16_t point_color
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/main.c:38
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/xmc/lcd_8bit/src/main.c:37
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
lcd_init
void lcd_init(void)
configures the lcd. this function must be called before any write/read operation on the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:152
lcd_clear
void lcd_clear(uint16_t color)
this function is clear the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:314
lcd_display_number
void lcd_display_number(void)
this function is display number on the lcd.
Definition: lcd_8bit/src/xmc_lcd.c:331
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • lcd_touch_16bit
  • inc
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • lcd_touch_16bit
  • inc
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • lcd_touch_16bit
  • inc
project/at_start_f403/examples/xmc/lcd_touch_16bit/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • lcd_touch_16bit
  • src
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • lcd_touch_16bit
  • src
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • lcd_touch_16bit
  • src
project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "xmc_lcd.h"
28#include "touch.h"
29
39 crm_clocks_freq_type crm_clocks_freq_struct = {0};
40uint16_t point_color;
41
47int main(void)
48{
49 touch_struct = &touch_dev_struct;
50 lcd_struct = &lcd_dev_struct;
51 system_clock_config();
52
53 at32_board_init();
54
55 /* get system clock */
56 crm_clocks_freq_get(&crm_clocks_freq_struct);
57
58 /* turn led2/led3/led4 on */
59 at32_led_on(LED2);
60 at32_led_on(LED3);
61 at32_led_on(LED4);
62
63 lcd_struct->lcd_init();
64 point_color = GREEN;
65 lcd_struct->lcd_clear(point_color);
66
67 touch_struct->init();
68
69 while(1)
70 {
71 touch_struct->touch_scan();
72 }
73}
74
75
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
GREEN
#define GREEN
Definition: lcd_8bit/inc/xmc_lcd.h:74
lcd_dev_struct
lcd_dev_type lcd_dev_struct
Definition: lcd_touch_16bit/src/xmc_lcd.c:35
main
int main(void)
main function.
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c:47
touch_struct
touch_dev_type * touch_struct
Definition: touch.c:49
touch_dev_struct
touch_dev_type touch_dev_struct
Definition: touch.c:36
point_color
uint16_t point_color
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c:40
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/xmc/lcd_touch_16bit/src/main.c:39
lcd_struct
lcd_dev_type * lcd_struct
Definition: lcd_touch_16bit/src/xmc_lcd.c:45
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
at32_led_on
void at32_led_on(led_type led)
turns selected led on.
Definition: at32f403_board.c:266
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
lcd_dev_type::lcd_clear
void(* lcd_clear)(uint16_t color)
Definition: lcd_touch_16bit/inc/xmc_lcd.h:52
lcd_dev_type::lcd_init
void(* lcd_init)(void)
Definition: lcd_touch_16bit/inc/xmc_lcd.h:49
touch_dev_type::touch_scan
void(* touch_scan)(void)
Definition: touch.h:51
touch_dev_type::init
void(* init)(void)
Definition: touch.h:49
touch.h
this file contains all the functions prototypes for the touch firmware driver.
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • nand
  • ecc
  • inc
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • nand
  • ecc
  • inc
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • nand
  • ecc
  • inc
project/at_start_f403/examples/xmc/nand/ecc/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • nand
  • ecc
  • src
project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • nand
  • ecc
  • src
project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • nand
  • ecc
  • src
project/at_start_f403/examples/xmc/nand/ecc/src/main.c
Go to the documentation of this file.
1
25#include "xmc_ecc.h"
26#include "at32f403_board.h"
27#include "at32f403_clock.h"
28
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38 nand_id_type nand_id_struct;
39 nand_address_type write_read_addr_struct;
40uint8_t tx_buffer[BUFFER_SIZE], rx_buffer[BUFFER_SIZE];
41uint32_t page_number = 1, status = 0;
42uint32_t j = 0, ecc_value_write = 0, ecc_value_read = 0, ecc_value_write_last = 0;
43
44void fill_buffer(uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset);
45void nand_ecc_correction(uint8_t *pbuffer, uint32_t tx_ecc_value, uint32_t rx_ecc_value);
46
53void fill_buffer(uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
54{
55 uint16_t indextmp = 0;
56
57 /* Put in global buffer same values */
58 for(indextmp = 0; indextmp < bufferlenght; indextmp++ )
59 {
60 pbuffer[indextmp] = indextmp + offset;
61 }
62}
63
70void nand_ecc_correction(uint8_t *pbuffer,uint32_t tx_ecc_value ,uint32_t rx_ecc_value)
71{
72 uint32_t ecc_value=0, position=0 ,byte_position=0;
73 uint8_t i,compare_data;
74
75 /* check ecc value */
76 if(tx_ecc_value!=rx_ecc_value)
77 {
78 /* 2048 byte -- 28bit ecc valid value; 8192 byte -- 32bit ecc valid value */
79#ifdef H27U1G8F2CTR
80 ecc_value =(tx_ecc_value^rx_ecc_value)&0x0FFFFFFF;
81#elif defined K9GAG08U0E
82 ecc_value =(tx_ecc_value^rx_ecc_value)&0xFFFFFFFF;
83#endif
84 /* 1 bit error correction */
85#ifdef H27U1G8F2CTR
86 for(i=0;i<(28/2);i++)
87#elif defined K9GAG08U0E
88 for(i=0;i<(32/2);i++)
89#endif
90 {
91 compare_data = (ecc_value>>(i*2))&0x3;
92
93 /* find position */
94 if(compare_data==0x2)
95 {
96 position |= (1<<i);
97 }
98
99 /* more than 1 bit erroc */
100 else if(compare_data!=0x1)
101 {
102 return;
103 }
104 }
105
106 /* correct receive value */
107 byte_position = position/8;
108 pbuffer[byte_position] ^= 1 << (position % 8);
109 }
110}
111
117int main(void)
118{
119 /* configure the system clock */
120 system_clock_config();
121
122 /* led initalization */
123 at32_board_init();
124
125 /* usart initalization */
126 uart_print_init(115200);
127
128 /* get system clock */
129 crm_clocks_freq_get(&crm_clocks_freq_struct);
130
131 /* xmc initialization */
132 nand_init();
133
134 /* nand reset command */
135 nand_reset();
136 delay_us(10);
137
138 /* nand read id command */
139 nand_read_id(&nand_id_struct);
140
141 /* verify the nand id */
142 /* nand support:spansion:s34ml01g100tfi003 micron:mt29f16g08cbaca sandisk:sdtnqgama-008g toshiba:tc58teg6ddkta00 samsung:k9gag08u0e-scb0 hynix:h27u1g8f2ctr
143 id :0x01f1001d id :0x2c48044a id :0x45de9493 id :0x98de9493 id :0xecd58472 id :0xadf1801d
144 */
145 if((nand_id_struct.maker_id == NAND_AT_MakerID) && (nand_id_struct.device_id == NAND_AT_DeviceID))
146 {
147 /* nand memory address to write to */
148 write_read_addr_struct.zone = 0x00;
149 write_read_addr_struct.block = 0x00;
150 write_read_addr_struct.page = 0x00;
151 write_read_addr_struct.byte = 0x00;
152
153 /* erase the nand first block */
154 status = nand_erase_block(write_read_addr_struct);
155
156 /* write data to xmc nand memory */
157 /* fill the buffer to send */
158 fill_buffer(tx_buffer, BUFFER_SIZE , 0x0);
159
160 /* change the regular to make ecc value isn't 0 */
161 tx_buffer[10]=0x03;
162
163 /* calculate ecc value while transmiting */
164 xmc_nand_ecc_enable(XMC_BANK2_NAND, TRUE);
165 status = nand_write_small_page(tx_buffer, write_read_addr_struct, page_number);
166
167 /* save the right ecc_value (in this case ,we suppose it as the true value) */
168 ecc_value_write_last = ecc_value_write;
169
170 /* change the 85 data like there is a 1 bit error happened */
171 status = nand_erase_block(write_read_addr_struct);
172 tx_buffer[10]=0x23;
173 status = nand_write_small_page(tx_buffer, write_read_addr_struct, page_number);
174
175 /* calculate ecc value while transmiting */
176 xmc_nand_ecc_enable(XMC_BANK2_NAND, TRUE);
177
178 /* read back the written data */
179 status = nand_read_small_page (rx_buffer, write_read_addr_struct, page_number);
180
181 /* ecc check and correct 1 bit error */
182 nand_ecc_correction(rx_buffer ,ecc_value_write_last ,ecc_value_read);
183
184 if(rx_buffer[10]==0x03)
185 {
186 printf("ecc is work\r\n");
187 }
188 else
189 {
190 printf("ecc is not work\r\n");
191 }
192 }
193 else
194 {
195 printf("the id is error\r\n");
196 }
197
198 while(1)
199 {
200 }
201}
202
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/crc/calculation/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
write_read_addr_struct
nand_address_type write_read_addr_struct
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:39
j
uint32_t j
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
nand_ecc_correction
void nand_ecc_correction(uint8_t *pbuffer, uint32_t tx_ecc_value, uint32_t rx_ecc_value)
ecc correct 1 bit error
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:70
rx_buffer
uint8_t rx_buffer[BUFFER_SIZE]
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:40
main
int main(void)
main function.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:117
page_number
uint32_t page_number
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
ecc_value_read
uint32_t ecc_value_read
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
ecc_value_write_last
uint32_t ecc_value_write_last
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:37
fill_buffer
void fill_buffer(uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
Fill the global buffer.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:53
nand_id_struct
nand_id_type nand_id_struct
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:38
ecc_value_write
uint32_t ecc_value_write
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
tx_buffer
uint8_t tx_buffer[BUFFER_SIZE]
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:40
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
TRUE
@ TRUE
Definition: at32f403.h:309
xmc_nand_ecc_enable
void xmc_nand_ecc_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature.
Definition: at32f403_xmc.c:373
XMC_BANK2_NAND
@ XMC_BANK2_NAND
Definition: at32f403_xmc.h:155
nand_read_small_page
uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size.
Definition: xmc_ecc.c:217
nand_read_id
void nand_read_id(nand_id_type *nand_id_struct)
reads nand memory's id.
Definition: xmc_ecc.c:109
nand_init
void nand_init(void)
configures the xmc and gpios to interface with the nand memory. this function must be called before a...
Definition: xmc_ecc.c:42
nand_reset
uint32_t nand_reset(void)
this routine reset the nand flash.
Definition: xmc_ecc.c:415
nand_erase_block
uint32_t nand_erase_block(nand_address_type address_struct)
this routine erase complete block from nand flash
Definition: xmc_ecc.c:392
nand_write_small_page
uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size.
Definition: xmc_ecc.c:150
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
nand_address_type
Definition: xmc_ecc.h:65
nand_address_type::byte
uint16_t byte
Definition: xmc_ecc.h:69
nand_address_type::page
uint16_t page
Definition: xmc_ecc.h:68
nand_address_type::block
uint16_t block
Definition: xmc_ecc.h:67
nand_address_type::zone
uint16_t zone
Definition: xmc_ecc.h:66
nand_id_type
Definition: xmc_ecc.h:47
nand_id_type::device_id
uint8_t device_id
Definition: xmc_ecc.h:49
nand_id_type::maker_id
uint8_t maker_id
Definition: xmc_ecc.h:48
at32f403_clock.h
header file of clock program
xmc_ecc.h
header file for the nand ecc configuration.


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • nand
  • nand
  • inc
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • nand
  • nand
  • inc
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • nand
  • nand
  • inc
project/at_start_f403/examples/xmc/nand/nand/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • nand
  • nand
  • src
project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • nand
  • nand
  • src
project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • nand
  • nand
  • src
project/at_start_f403/examples/xmc/nand/nand/src/main.c
Go to the documentation of this file.
1
25#include "xmc_nand.h"
26#include "at32f403_board.h"
27#include "at32f403_clock.h"
28
37 crm_clocks_freq_type crm_clocks_freq_struct = {0};
38 nand_id_type nand_id_struct = {0};
39 nand_address_type write_read_addr_struct;
40uint8_t txbuffer[BUFFER_SIZE], rxbuffer[BUFFER_SIZE + NAND_SPARE_AREA_SIZE];
41uint32_t pagenumber = BUFFER_SIZE / NAND_PAGE_SIZE, writereadstatus = 0, status= 0;
42uint32_t j = 0;
43
44void fill_buffer(uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset);
45
51int main(void)
52{
53 /* configure the system clock */
54 system_clock_config();
55
56 /* led initalization */
57 at32_board_init();
58
59 /* usart initalization */
60 uart_print_init(115200);
61
62 /* get system clock */
63 crm_clocks_freq_get(&crm_clocks_freq_struct);
64
65 /* xmc initialization */
66 nand_init();
67
68 /* nand reset command */
69 nand_reset();
70 delay_ms(1);
71
72 /* nand read id command */
73 nand_read_id(&nand_id_struct);
74
75 /* verify the nand id */
76 /* nand support:samsung:k9gag08u0e hynix:h27u1g8f2ctr
77 id :0xecd58472 id :0xadf1801d
78 */
79 if((nand_id_struct.maker_id == NAND_AT_MakerID) && (nand_id_struct.device_id == NAND_AT_DeviceID))
80 {
81
82 /* nand memory address to write to */
83 write_read_addr_struct.zone = 0x00;
84 write_read_addr_struct.block = 0x00;
85 write_read_addr_struct.page = 0x00;
86 write_read_addr_struct.byte = 0x00;
87
88 /* erase the nand first block */
89 status = nand_erase_block(write_read_addr_struct);
90
91 /* fill the buffer to send */
92 fill_buffer(txbuffer, BUFFER_SIZE , 0x66);
93
94 /* write data to xmc nand memory */
95 status = nand_write_small_page(txbuffer, write_read_addr_struct, pagenumber);
96
97 /* read back the written data */
98 status = nand_read_small_page (rxbuffer, write_read_addr_struct, pagenumber);
99
100 /* verify the written data */
101 for(j = 0; j < BUFFER_SIZE; j++)
102 {
103 if(txbuffer[j] != rxbuffer[j])
104 {
105 writereadstatus++;
106 }
107 }
108
109 if(writereadstatus == 0)
110 {
111 printf("data is right\r\n");
112 }
113 else
114 {
115 printf("data is error\r\n");
116 }
117 }
118 else
119 {
120 printf("the id is error\r\n");
121 }
122
123 while(1)
124 {
125 }
126}
127
134void fill_buffer(uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
135{
136 uint16_t indextmp = 0;
137
138 /* put in global buffer same values */
139 for(indextmp = 0; indextmp < bufferlenght; indextmp++ )
140 {
141 pbuffer[indextmp] = indextmp + offset;
142 }
143}
144
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/crc/calculation/src/main.c:36
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
write_read_addr_struct
nand_address_type write_read_addr_struct
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:39
txbuffer
uint8_t txbuffer[BUFFER_SIZE]
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:40
j
uint32_t j
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:42
main
int main(void)
main function.
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:51
rxbuffer
uint8_t rxbuffer[BUFFER_SIZE+NAND_SPARE_AREA_SIZE]
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:40
crm_clocks_freq_struct
crm_clocks_freq_type crm_clocks_freq_struct
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:37
fill_buffer
void fill_buffer(uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:134
nand_id_struct
nand_id_type nand_id_struct
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:38
writereadstatus
uint32_t writereadstatus
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:41
pagenumber
uint32_t pagenumber
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:41
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/nand/src/main.c:41
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_clocks_freq_get
void crm_clocks_freq_get(crm_clocks_freq_type *clocks_struct)
get crm clocks freqency
Definition: at32f403_crm.c:646
nand_read_small_page
uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size.
Definition: xmc_ecc.c:217
nand_read_id
void nand_read_id(nand_id_type *nand_id_struct)
reads nand memory's id.
Definition: xmc_ecc.c:109
nand_init
void nand_init(void)
configures the xmc and gpios to interface with the nand memory. this function must be called before a...
Definition: xmc_ecc.c:42
nand_reset
uint32_t nand_reset(void)
this routine reset the nand flash.
Definition: xmc_ecc.c:415
nand_erase_block
uint32_t nand_erase_block(nand_address_type address_struct)
this routine erase complete block from nand flash
Definition: xmc_ecc.c:392
nand_write_small_page
uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size.
Definition: xmc_ecc.c:150
crm_clocks_freq_type
crm clocks freqency structure
Definition: at32f403_crm.h:450
nand_address_type
Definition: xmc_ecc.h:65
nand_address_type::byte
uint16_t byte
Definition: xmc_ecc.h:69
nand_address_type::page
uint16_t page
Definition: xmc_ecc.h:68
nand_address_type::block
uint16_t block
Definition: xmc_ecc.h:67
nand_address_type::zone
uint16_t zone
Definition: xmc_ecc.h:66
nand_id_type
Definition: xmc_ecc.h:47
nand_id_type::device_id
uint8_t device_id
Definition: xmc_ecc.h:49
nand_id_type::maker_id
uint8_t maker_id
Definition: xmc_ecc.h:48
at32f403_clock.h
header file of clock program
xmc_nand.h
header file for the nand configuration.


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • nor
  • inc
project/at_start_f403/examples/xmc/nor/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • nor
  • inc
project/at_start_f403/examples/xmc/nor/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • nor
  • inc
project/at_start_f403/examples/xmc/nor/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • nor
  • src
project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • nor
  • src
project/at_start_f403/examples/xmc/nor/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/xmc/nor/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • nor
  • src
project/at_start_f403/examples/xmc/nor/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "xmc_nor.h"
28
37#define buffer_size 0x400
38#define write_read_addr 0x8000
39
40uint16_t txbuffer[buffer_size];
41uint16_t rxbuffer[buffer_size];
42uint32_t writereadstatus = 0, number = 0;
43 nor_idtype nor_id;
44
45
51int main(void)
52{
53 /* configure the system clock */
54 system_clock_config();
55
56 /* initialize leds */
57 at32_board_init();
58
59 /* initialize usart */
60 uart_print_init(115200);
61
62 /* nor flash interface confoig */
63 nor_init();
64
65 /* read nor memory id */
66 nor_readid(&nor_id);
67
68 nor_returntoreadmode();
69
70 /* erase the nor memory block to write on */
71 nor_eraseblock(write_read_addr);
72
73 /* write data to xmc nor memory */
74 /* fill the buffer to send */
75 fill_buffer(txbuffer, buffer_size, 0x3210);
76 nor_writebuffer(txbuffer, write_read_addr, buffer_size);
77
78 /* read data from xmc nor memory */
79 nor_readbuffer(rxbuffer, write_read_addr, buffer_size);
80
81 /* read back sram memory and check content correctness */
82 for(number = 0x00; (number < buffer_size) && (writereadstatus == 0); number++)
83 {
84 if (rxbuffer[number] != txbuffer[number])
85 {
86 writereadstatus = number + 1;
87 }
88 }
89
90 if(writereadstatus == 0)
91 {
92 /* pass : printf "data is right" */
93 printf("data is right\r\n");
94 }
95 else
96 {
97 /* fail: printf "data is error" */
98 printf("data is error\r\n");
99 }
100 while(1)
101 {
102 }
103}
104
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
fill_buffer
void fill_buffer(uint8_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
Fill the global buffer.
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:53
rxbuffer
uint16_t rxbuffer[0x400]
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:41
nor_id
nor_idtype nor_id
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:43
write_read_addr
#define write_read_addr
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:38
main
int main(void)
main function.
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:51
buffer_size
#define buffer_size
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:37
writereadstatus
uint32_t writereadstatus
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:42
number
uint32_t number
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:42
txbuffer
uint16_t txbuffer[0x400]
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:40
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
nor_eraseblock
nor_status nor_eraseblock(uint32_t blockaddr)
erases the specified nor memory block.
Definition: xmc_nor.c:172
nor_writebuffer
nor_status nor_writebuffer(uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory.
Definition: xmc_nor.c:228
nor_readid
void nor_readid(nor_idtype *nor_id)
reads nor memory's manufacturer and device code.
Definition: xmc_nor.c:154
nor_init
void nor_init(void)
configures the xmc and gpios to interface with the nor memory. this function must be called before an...
Definition: xmc_nor.c:52
nor_returntoreadmode
nor_status nor_returntoreadmode(void)
returns the nor memory to read mode.
Definition: xmc_nor.c:331
nor_readbuffer
void nor_readbuffer(uint16_t *pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
reads a block of data from the xmc nor memory.
Definition: xmc_nor.c:312
nor_idtype
Definition: xmc_nor.h:48
at32f403_clock.h
header file of clock program
xmc_nor.h


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • pc_card
  • inc
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • pc_card
  • inc
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • pc_card
  • inc
project/at_start_f403/examples/xmc/pc_card/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • pc_card
  • src
project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • pc_card
  • src
project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/xmc/pc_card/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • pc_card
  • src
project/at_start_f403/examples/xmc/pc_card/src/main.c
Go to the documentation of this file.
1
24#include <stdlib.h>
25#include <string.h>
26#include <stdio.h>
27#include "at32f403_board.h"
28#include "at32f403_clock.h"
29#include "cf.h"
30
39typedef enum
40{
41 FAILED = 0,
42 PASSED = 1
43} TestStatus;
44
45/* Private define ------------------------------------------------------------*/
46#define Start_Sector 0
47
48/* Private variables ---------------------------------------------------------*/
49 PCCARD_HandleType pccardHandle;
50 xmc_nand_pccard_timinginit_type PCCARD_PMEM4_Timing;
51 xmc_nand_pccard_timinginit_type PCCARD_PATT4_Timing;
52 xmc_nand_pccard_timinginit_type PCCARD_PIO4_Timing;
53 verification_result_struct verification_result;
54/* 0 -> Memory/PIO mode, 1 -> IO/PIO mode, 2 -> Memory/DMA mode, 3 -> IO/DMA mode */
55uint8_t Test_Mode = 0;
56uint8_t pccard_TxBuffer[PCCARD_SECTOR_SIZE * sizeof(uint8_t)] __attribute__ ((aligned (4)));
57uint8_t pccard_RxBuffer[PCCARD_SECTOR_SIZE * sizeof(uint8_t)] __attribute__ ((aligned (4)));
58uint8_t pccard_25_Sectors_TxBuffer[PCCARD_25_SECTORS_SIZES * sizeof(uint8_t)] __attribute__ ((aligned (4)));
59uint8_t pccard_25_Sectors_RxBuffer[PCCARD_25_SECTORS_SIZES * sizeof(uint8_t)] __attribute__ ((aligned (4)));
60uint8_t orig_default_Sector;
61uint8_t orig_default_head;
62uint32_t u32i;
63/* Private function prototypes -----------------------------------------------*/
64static void Fill_Buffer(uint8_t *pBuffer, uint32_t BufferLenght, uint32_t Offset);
65static TestStatus Buffercmp(uint8_t* pBuffer, uint8_t* pBuffer1, uint32_t BufferLength);
66
72int main(void)
73{
74 system_clock_config();
75
76 at32_board_init();
77
78 uart_print_init(115200);
79
80 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
81
82 pccardHandle.Instance = XMC_BANK4;
83 PCCARD_PMEM4_Timing.mem_setup_time = 12;
84 PCCARD_PMEM4_Timing.mem_waite_time = 61;
85 PCCARD_PMEM4_Timing.mem_hold_time = 14 ;
86 PCCARD_PMEM4_Timing.mem_hiz_time = 0;
87
88 PCCARD_PATT4_Timing.mem_setup_time = 12;
89 PCCARD_PATT4_Timing.mem_waite_time = 99;
90 PCCARD_PATT4_Timing.mem_hold_time = 12;
91 PCCARD_PATT4_Timing.mem_hiz_time = 1;
92
93 PCCARD_PIO4_Timing.mem_setup_time = 24;
94 PCCARD_PIO4_Timing.mem_waite_time = 61;
95 PCCARD_PIO4_Timing.mem_hold_time = 8;
96 PCCARD_PIO4_Timing.mem_hiz_time = 1;
97
98
99 pccardHandle.Init.enable_wait = 1;
100 pccardHandle.Init.delay_time_cr = 0;
101 pccardHandle.Init.delay_time_ar = 0;
102 memset(&verification_result, 0, sizeof(verification_result));
103
104
105 while(Test_Mode < 4)
106 {
107 /* 0 -> 16-bit Memory/PIO mode
108 * 2 -> 16-bit IO/PIO mode
109 * 4 -> 16-bit Memory/DMA mode
110 * 6 -> 16-bit IO/DMA mode
111 */
112 switch(Test_Mode)
113 {
114 case 0:
115 pccardHandle.CF.Protocol = CF_MEM_MAP_MODE;
116 pccardHandle.CF.IOAddr = PCCARD_COMMON_SPACE_ADDRESS;
117 pccardHandle.CF.DMAEnable = FALSE;
118 pccardHandle.CF.Enable_8_bit_mode = FALSE;
119 printf("\r\n16-bit Memory/PIO mode Start... ");
120 break;
121
122 case 1:
123 pccardHandle.CF.Protocol = CF_IO_16_MODE;
124 pccardHandle.CF.IOAddr = PCCARD_IO_SPACE_ADDRESS;
125 pccardHandle.CF.DMAEnable = FALSE;
126 pccardHandle.CF.Enable_8_bit_mode = FALSE;
127 printf("\r\n16-bit IO/PIO mode Start... ");
128 break;
129
130 case 2:
131 pccardHandle.CF.Protocol = CF_MEM_MAP_MODE;
132 pccardHandle.CF.IOAddr = PCCARD_COMMON_SPACE_ADDRESS;
133 pccardHandle.CF.DMAEnable = TRUE;
134 pccardHandle.CF.Enable_8_bit_mode = FALSE;
135 printf("\r\n16-bit Memory/DMA mode Start... ");
136 break;
137
138 case 3:
139 pccardHandle.CF.Protocol = CF_IO_16_MODE;
140 pccardHandle.CF.IOAddr = PCCARD_IO_SPACE_ADDRESS;
141 pccardHandle.CF.DMAEnable = TRUE;
142 pccardHandle.CF.Enable_8_bit_mode = FALSE;
143 printf("\r\n16-bit IO/DMA mode Start... ");
144 break;
145
146
147 default:
148 printf("\r\nSelect Test Mode Failed");
149 break;
150 }
151
152 pccardHandle.CF.Drive = 0;
153
154 /* Init Compact Flash Controller */
155 CF_print(PRT_INIT_INFO, ("\r\nInit Compact Flash Card..."));
156
157 if(PCCARD_Init(&pccardHandle, &PCCARD_PMEM4_Timing, &PCCARD_PATT4_Timing, &PCCARD_PIO4_Timing) != STATUS_OK)
158 {
159 printf("\r\nCompact Flash card Init Failed");
160 break;
161 }
162
163 /* Reset Compact Flash card */
164 CF_print(PRT_INIT_INFO, ("\r\nReset Compact Flash Card..."));
165
166 if(PCCARD_Reset(&pccardHandle))
167 {
168 verification_result.ATTRIBUTE_RW_PASS = TRUE;
169 }
170
171 CF_print(PRT_INIT_INFO, ("\r\nSet Wait Feature..."));
172
173 if(Enable_Wait_Feature(&pccardHandle) != STATUS_OK)
174 {
175 printf("\r\nCompact Flash card Set Wait Feature Failed");
176 break;
177 }
178
179 /* Read CF Card CIS from CF card's attribute memory */
180 if(ReadCFCardCISInformation(&pccardHandle))
181 {
182 verification_result.CIS_READ_PASS = TRUE;
183 }
184
185 /* CF-ATA Command Set Test Started */
186 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_IDENTIFY_DRIVE..."));
187
188 /* Read Compact Flash Card ID (CF_ATA_IDENTIFY_DRIVE) */
189 if(PCCARD_Read_ID(&pccardHandle))
190 {
191 verification_result.ATA_IDENTIFY_DRIVE_PASS = TRUE;
192 }
193
194 /* Execute Drive Diagnostic */
195 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_EXECUTE_DRIVE_DIAG..."));
196
197 if(PCCARD_Diagnostic(&pccardHandle))
198 {
199 verification_result.ATA_EXECUTE_DRIVE_DIAG_PASS = TRUE;
200 }
201
202 /* Write Compact Flash Card Sector */
203 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_WRITE_SECTOR..."));
204 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
205 /* Fill the buffer to write */
206 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00);
207 if(!PCCARD_Write_Sector(&pccardHandle, pccard_TxBuffer, Start_Sector, 1))
208 {
209 printf("\r\nCompact Flash card Write Secor Failed");
210 break;
211 }
212
213 /* Read Compact Flash Card Sector */
214 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_READ_SECTOR..."));
215 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
216
217 if(!PCCARD_Read_Sector(&pccardHandle, pccard_RxBuffer, Start_Sector, 1))
218 {
219 printf("\r\nCompact Flash card Read Secor Failed");
220 break;
221 }
222 /* Checking data integrity */
223 if(Buffercmp(pccard_TxBuffer, pccard_RxBuffer, PCCARD_SECTOR_SIZE) == PASSED)
224 {
225 verification_result.ATA_READ_SECTOR_PASS = TRUE;
226 verification_result.ATA_WRITE_SECTOR_PASS = TRUE;
227 }
228 else
229 {
230 verification_result.ATA_READ_SECTOR_PASS = FALSE;
231 verification_result.ATA_WRITE_SECTOR_PASS = FALSE;
232 }
233
234
235 /* Write Compact Flash Card Buffer */
236 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_WRITE_BUFFER..."));
237 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
238 /* Fill the buffer to write */
239 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00);
240
241 if(!PCCARD_Write_Buffer(&pccardHandle, pccard_TxBuffer))
242 {
243 printf("\r\nCompact Flash card Write Buffer Failed");
244 break;
245 }
246
247 /* Read Compact Flash Card Buffer */
248 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_READ_BUFFER..."));
249 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
250
251 if(!PCCARD_Read_Buffer(&pccardHandle, pccard_RxBuffer))
252 {
253 printf("\r\nCompact Flash card Read Buffer Failed");
254 break;
255 }
256 /* Checking data integrity */
257 if(Buffercmp(pccard_TxBuffer, pccard_RxBuffer, PCCARD_SECTOR_SIZE) == PASSED)
258 {
259 verification_result.ATA_READ_BUFFER_PASS = TRUE;
260 verification_result.ATA_WRITE_BUFFER_PASS = TRUE;
261 }
262 else
263 {
264 verification_result.ATA_READ_BUFFER_PASS = FALSE;
265 verification_result.ATA_WRITE_BUFFER_PASS = FALSE;
266 }
267
268 /* Recalibrate */
269 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_RECALIBRATE..."));
270
271 if(PCCARD_Recalibrate(&pccardHandle))
272 {
273 verification_result.ATA_RECALIBRATE_PASS = TRUE;
274 }
275
276 /* Initialize Drive Parameters */
277 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_Init_Drive_Para..."));
278 orig_default_Sector = pccardHandle.CF.CFCardInfo.Current_Sector;
279 orig_default_head = pccardHandle.CF.CFCardInfo.Current_Head;
280
281
282 pccardHandle.CF.CFCardInfo.Current_Sector -= 1;
283 pccardHandle.CF.CFCardInfo.Current_Head -= 1;
284
285 if(!PCCARD_Init_Drive_Para(&pccardHandle, pccardHandle.CF.CFCardInfo.Current_Sector, pccardHandle.CF.CFCardInfo.Current_Head - 1))
286 {
287 printf("\r\nInit Drive Para fail");
288 break;
289 }
290 /* check the command is vailded */
291 if(Vaild_Init_Drive_Para(&pccardHandle, pccardHandle.CF.CFCardInfo.Current_Sector, pccardHandle.CF.CFCardInfo.Current_Head))
292 {
293 verification_result.ATA_INIT_DRIVE_PARA_PASS = TRUE;
294 }
295
296 pccardHandle.CF.CFCardInfo.Current_Sector = orig_default_Sector;
297 pccardHandle.CF.CFCardInfo.Current_Head = orig_default_head;
298
299 if(!PCCARD_Init_Drive_Para(&pccardHandle, orig_default_Sector, orig_default_head - 1))
300 {
301 printf("\r\nInit Drive Para fail");
302 break;
303 }
304 /* check restore is vailded */
305 if(!Vaild_Init_Drive_Para(&pccardHandle, pccardHandle.CF.CFCardInfo.Current_Sector, pccardHandle.CF.CFCardInfo.Current_Head))
306 {
307 verification_result.ATA_INIT_DRIVE_PARA_PASS = FALSE;
308 }
309
310 /* Seek */
311 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_SEEK..."));
312
313 if(PCCARD_Seek(&pccardHandle, pccardHandle.CF.CFCardInfo.Default_Head - 1, pccardHandle.CF.CFCardInfo.Default_Cylinder + 1))
314 {
315 verification_result.ATA_SEEK_PASS = TRUE;
316 }
317
318 /* Erase Compact Flash Card Sector */
319 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_ERASE_SECTOR..."));
320 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
321 /* Fill the buffer to write */
322 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00);
323
324 if(!PCCARD_Write_Sector(&pccardHandle, pccard_TxBuffer, Start_Sector, 1))
325 {
326 printf("\r\nCompact Flash card Write Secor Failed");
327 break;
328 }
329
330 if(!PCCARD_Erase_Sector(&pccardHandle, Start_Sector, 1))
331 {
332 printf("\r\nCompact Flash card Erase Secor Failed");
333 break;
334 }
335
336 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
337
338 if(!PCCARD_Read_Sector(&pccardHandle, pccard_RxBuffer, Start_Sector, 1))
339 {
340 printf("\r\nCompact Flash card Read Secor Failed");
341 break;
342 }
343 else
344 {
345 verification_result.ATA_ERASE_SECTOR_PASS = TRUE;
346
347 for(u32i = 0; u32i < PCCARD_SECTOR_SIZE; u32i++)
348 {
349 if(*(pccard_RxBuffer + u32i) != 0x0)
350 {
351 verification_result.ATA_ERASE_SECTOR_PASS = FALSE;
352 CF_print(PRT_ERR_INFO, ("\r\nErase sector error at address offset 0x%0.2x:(0x%0.2x)", u32i, *(pccard_RxBuffer + u32i)));
353 break;
354 }
355 }
356 }
357
358 /* Write Compact Flash Card Write Sector Without Erase */
359 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_WRITE_SECTOR_WO_ERASE..."));
360
361 if(!PCCARD_Erase_Sector(&pccardHandle, Start_Sector, 1))
362 {
363 printf("\r\nCompact Flash card Erase Secor Failed");
364 break;
365 }
366
367 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
368 /* Fill the buffer to write */
369 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00);
370
371 if(!PCCARD_Write_Sector_WO_ERASE(&pccardHandle, pccard_TxBuffer, Start_Sector, 1))
372 {
373 printf("\r\nCompact Flash card Write Secor Without Erase Failed");
374 break;
375 }
376
377 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
378
379 if(!PCCARD_Read_Sector(&pccardHandle, pccard_RxBuffer, Start_Sector, 1))
380 {
381 printf("\r\nCompact Flash card Read Secor Failed");
382 break;
383 }
384 /* Checking data integrity */
385 if(Buffercmp(pccard_TxBuffer, pccard_RxBuffer, PCCARD_SECTOR_SIZE) == PASSED)
386 {
387 verification_result.ATA_WRITE_SECTOR_WO_ERASE_PASS = TRUE;
388 }
389 else
390 {
391 verification_result.ATA_WRITE_SECTOR_WO_ERASE_PASS = FALSE;
392 }
393
394 /* Format Track */
395 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_FORMAT_TRACK..."));
396 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
397 /* Fill the buffer to write */
398 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00);
399
400 if(!PCCARD_Write_Sector(&pccardHandle, pccard_TxBuffer, Start_Sector, 1))
401 {
402 printf("\r\nCompact Flash card Write Secor Failed");
403 break;
404 }
405
406
407 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
408
409 if(!PCCARD_Read_Sector(&pccardHandle, pccard_RxBuffer, Start_Sector, 1))
410 {
411 printf("\r\nCompact Flash card Read Secor Failed");
412 break;
413 }
414 else
415 {
416 verification_result.ATA_FORMAT_TRACK_PASS = TRUE;
417
418 for(u32i = 0; u32i < PCCARD_SECTOR_SIZE; u32i++)
419 {
420 if(!(*(pccard_RxBuffer + u32i) == 0xff || *(pccard_RxBuffer + u32i) == 0x0))
421 {
422 verification_result.ATA_FORMAT_TRACK_PASS = FALSE;
423 CF_print(PRT_ERR_INFO, ("\r\nFormat track error at address offset 0x%0.2x:(0x%0.2x)", u32i, *(pccard_RxBuffer + u32i)));
424 break;
425 }
426 }
427 }
428
429 /* Read Verify Sector */
430 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_READ_VERIFY_SECTOR..."));
431
432 if(PCCARD_Read_Verify_Sector(&pccardHandle, Start_Sector, 1))
433 {
434 verification_result.ATA_READ_VERIFY_SECTOR_PASS = TRUE;
435 }
436
437 /* Write verify */
438 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_WRITE_VERIFY..."));
439 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
440
441 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00); // Fill the buffer to write
442
443 if(!PCCARD_Write_Verify(&pccardHandle, pccard_TxBuffer, Start_Sector, 1))
444 {
445 printf("\r\nCompact Flash card Write Verify Failed");
446 break;
447 }
448
449 /* Read Compact Flash Card Sector */
450 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
451
452 if(!PCCARD_Read_Sector(&pccardHandle, pccard_RxBuffer, Start_Sector, 1))
453 {
454 printf("\r\nCompact Flash card Read Secor Failed");
455 break;
456 }
457 /* Checking data integrity */
458 if(Buffercmp(pccard_TxBuffer, pccard_RxBuffer, PCCARD_SECTOR_SIZE) == PASSED)
459 {
460 verification_result.ATA_WRITE_VERIFY_PASS = TRUE;
461 }
462 else
463 {
464 verification_result.ATA_WRITE_VERIFY_PASS = FALSE;
465 }
466
467 /* Translate Sector */
468 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_TRANSLATE_SECTOR..."));
469
470 if(!PCCARD_Translate_Sector(&pccardHandle, Start_Sector))
471 {
472 printf("\r\nCompact Flash card Translate Sector Failed");
473 break;
474 }
475
476 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
477
478 if(!PCCARD_Read_Buffer(&pccardHandle, pccard_RxBuffer))
479 {
480 printf("\r\nCompact Flash card Read Buffer Failed");
481 break;
482 }
483
484 if((pccard_RxBuffer[1]) == pccardHandle.CF.CFAddr.Cylinder &&
485 (pccard_RxBuffer[2]) == pccardHandle.CF.CFAddr.Head &&
486 (pccard_RxBuffer[3]) == pccardHandle.CF.CFAddr.Sector)
487 {
488 verification_result.ATA_TRANSLATE_SECTOR_PASS = TRUE;
489 }
490
491 /* Set Multiple Mode */
492 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_SET_MULTIPLE_MODE..."));
493 PCCARD_Set_Multiple_Mode(&pccardHandle, pccardHandle.CF.CFCardInfo.Max_Mutiple_Sector + 1);
494
495 if(PCCARD_Read_ERROR_REG(&pccardHandle) & ABRT_BIT)
496 {
497 verification_result.ATA_SET_MULTIPLE_MODE_PASS = TRUE;
498 }
499
500 PCCARD_Set_Multiple_Mode(&pccardHandle, pccardHandle.CF.CFCardInfo.Max_Mutiple_Sector);
501
502 if(PCCARD_Read_ERROR_REG(&pccardHandle))
503 {
504 verification_result.ATA_SET_MULTIPLE_MODE_PASS = FALSE;
505 }
506
507 /* Set Feature */
508 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_SET_FEATURE..."));
509
510 // send a valid feature to CF card, we expect there are no bit will be assert in Error register .
511 PCCARD_Set_Features(&pccardHandle, 0, NOP);
512
513 if(PCCARD_Read_ERROR_REG(&pccardHandle))
514 {
515 verification_result.ATA_SET_FEATURE_PASS = FALSE;
516 }
517 else
518 {
519 verification_result.ATA_SET_FEATURE_PASS = TRUE;
520 }
521
522 /* Write Multiple */
523 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_WRITE_MULTIPLE..."));
524 /* Note that the maximun number of sectors on Read/Write Multiple command in our CF test card is 1,
525 so it will work same as Read/Write Sector command. */
526 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
527
528 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00); // Fill the buffer to write
529
530 if(!PCCARD_Write_Multiple(&pccardHandle, pccard_TxBuffer, Start_Sector, 1))
531 {
532 printf("\r\nCompact Flash card Write Multiple Secors Failed");
533 break;
534 }
535
536 /* Read Multiple */
537 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_READ_MULTIPLE..."));
538 /* Note that the maximun number of sectors on Read/Write Multiple command in our CF test card is 1,
539 so it will work same as Read/Write Sector command. */
540 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
541
542 if(!PCCARD_Read_Multiple(&pccardHandle, pccard_RxBuffer, Start_Sector, 1))
543 {
544 printf("\r\nCompact Flash card Read Multiple Secors Failed");
545 break;
546 }
547 /* Checking data integrity */
548 if(Buffercmp(pccard_TxBuffer, pccard_RxBuffer, PCCARD_SECTOR_SIZE) == PASSED)
549 {
550 verification_result.ATA_READ_MULTIPLE_PASS = TRUE;
551 verification_result.ATA_WRITE_MULTIPLE_PASS = TRUE;
552 }
553 else
554 {
555 verification_result.ATA_READ_MULTIPLE_PASS = FALSE;
556 verification_result.ATA_WRITE_MULTIPLE_PASS = FALSE;
557 }
558
559 /* Write Multiple Without Erase */
560 CF_print(PRT_CMD_INFO, ("\r\nVerifying CF_ATA_WRITE_MULTIPLE_WO_ERASE..."));
561
562 /* Note that the maximun number of sectors on Read/Write Multiple command in our CF test card is 1,
563 so it will work same as Read/Write Sector command. */
564 if(!PCCARD_Erase_Sector(&pccardHandle, Start_Sector, 1))
565 {
566 printf("\r\nCompact Flash card Erase Secor Failed");
567 break;
568 }
569
570 memset(pccard_TxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
571 /* Fill the buffer to write */
572 Fill_Buffer(pccard_TxBuffer, PCCARD_SECTOR_SIZE, 0x00);
573
574 if(!PCCARD_Write_Multiple_WO_ERASE(&pccardHandle, pccard_TxBuffer, Start_Sector, 1))
575 {
576 printf("\r\nCompact Flash card Write Multiple Secors Without Erase Failed");
577 break;
578 }
579
580 memset(pccard_RxBuffer, 0, PCCARD_SECTOR_SIZE * sizeof(uint8_t));
581
582 if(!PCCARD_Read_Multiple(&pccardHandle, pccard_RxBuffer, Start_Sector, 1))
583 {
584 printf("\r\nCompact Flash card Read Multiple Secors Failed");
585 break;
586 }
587
588 if(Buffercmp(pccard_TxBuffer, pccard_RxBuffer, PCCARD_SECTOR_SIZE) == PASSED) // Checking data integrity
589 {
590 verification_result.ATA_WRITE_MULTIPLE_WO_ERASE_PASS = TRUE;
591 }
592 else
593 {
594 verification_result.ATA_WRITE_MULTIPLE_WO_ERASE_PASS = FALSE;
595 }
596
597
598 /* disable the Read/Write Multiple command, we expect Abort bit in Error register will be assert. */
599 if(!PCCARD_Set_Multiple_Mode(&pccardHandle, 0))
600 {
601 printf("\r\nSet multiple mode to 0 Failed");
602 break;
603 }
604
605 /* Test Read/Write 50 sectors */
606 CF_print(PRT_CMD_INFO, ("\r\nVerifying Test Read/Write 50 sectors..."));
607
608 memset(pccard_25_Sectors_TxBuffer, 0, PCCARD_25_SECTORS_SIZES * sizeof(uint8_t));
609 /* Fill the buffer to write */
610 Fill_Buffer(pccard_25_Sectors_TxBuffer, PCCARD_25_SECTORS_SIZES, 0x78);
611
612
613
614 if(!PCCARD_Write_Sector(&pccardHandle, pccard_25_Sectors_TxBuffer, Start_Sector, 25))
615 {
616 printf("\r\nCompact Flash card Write 50 Secors Failed");
617 break;
618 }
619
620 memset(pccard_25_Sectors_RxBuffer, 0, PCCARD_25_SECTORS_SIZES * sizeof(uint8_t));
621
622 if(!PCCARD_Read_Sector(&pccardHandle, pccard_25_Sectors_RxBuffer, Start_Sector, 25))
623 {
624 printf("\r\nCompact Flash card Read 50 Secors Failed");
625 break;
626 }
627 /* Checking data integrity */
628 if(Buffercmp(pccard_25_Sectors_TxBuffer, pccard_25_Sectors_RxBuffer, PCCARD_25_SECTORS_SIZES) == PASSED)
629 {
630 verification_result.ACESS_25_SECTORS_PASS = TRUE;
631 }
632 else
633 {
634 verification_result.ACESS_25_SECTORS_PASS = FALSE;
635 }
636
637 /* Show the Compact Flash Storage Card Test results */
638 show_verification_result(&verification_result);
639
640 Test_Mode++;
641 }
642
643 printf("\r\nCompact Flash Storage Card Test End");
644
645 /* Infinite loop */
646 while(1)
647 {
648 }
649
650
651}
652
653
661static void Fill_Buffer(uint8_t *pBuffer, uint32_t uwBufferLenght, uint32_t uwOffset)
662{
663 uint32_t index = 0;
664
665 /* Put in global buffer same values */
666 for (index = 0; index < uwBufferLenght; index++ )
667 {
668 pBuffer[index] = index + uwOffset;
669 }
670}
671
680static TestStatus Buffercmp(uint8_t* pBuffer, uint8_t* pBuffer1, uint32_t uwBufferLenght)
681{
682 uint32_t counter = 0;
683
684 while(uwBufferLenght--)
685 {
686 if(*pBuffer != *pBuffer1)
687 {
688 printf("\r\nFormat track error at address offset 0x%0.2x:(0x%0.2x) <-> (0x%0.2x)", counter, *(pBuffer), *(pBuffer1));
689 return FAILED;
690 }
691
692 pBuffer++;
693 pBuffer1++;
694 counter++;
695 }
696 return PASSED;
697}
698
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
cf.h
header file for the cf configuration.
counter
uint16_t counter
Definition: project/at_start_f403/examples/debug/tmr1/src/main.c:38
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
Start_Sector
#define Start_Sector
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:46
PCCARD_PIO4_Timing
xmc_nand_pccard_timinginit_type PCCARD_PIO4_Timing
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:52
u32i
uint32_t u32i
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:62
__attribute__
uint8_t pccard_TxBuffer[PCCARD_SECTOR_SIZE *sizeof(uint8_t)] __attribute__((aligned(4)))
pccardHandle
PCCARD_HandleType pccardHandle
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:49
main
int main(void)
main function.
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:72
Fill_Buffer
static void Fill_Buffer(uint8_t *pBuffer, uint32_t BufferLenght, uint32_t Offset)
Fills buffer with user predefined data.
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:661
PCCARD_PMEM4_Timing
xmc_nand_pccard_timinginit_type PCCARD_PMEM4_Timing
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:50
Test_Mode
uint8_t Test_Mode
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:55
verification_result
verification_result_struct verification_result
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:53
orig_default_Sector
uint8_t orig_default_Sector
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:60
Buffercmp
static TestStatus Buffercmp(uint8_t *pBuffer, uint8_t *pBuffer1, uint32_t BufferLength)
Compares two buffers.
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:680
PCCARD_PATT4_Timing
xmc_nand_pccard_timinginit_type PCCARD_PATT4_Timing
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:51
orig_default_head
uint8_t orig_default_head
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:61
TestStatus
TestStatus
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:40
PASSED
@ PASSED
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:42
FAILED
@ FAILED
Definition: project/at_start_f403/examples/xmc/pc_card/src/main.c:41
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
PCCARD_IO_SPACE_ADDRESS
#define PCCARD_IO_SPACE_ADDRESS
Definition: cf.h:53
PCCARD_COMMON_SPACE_ADDRESS
#define PCCARD_COMMON_SPACE_ADDRESS
Definition: cf.h:51
NOP
#define NOP
Definition: cf.h:142
PRT_ERR_INFO
#define PRT_ERR_INFO
Definition: cf.h:219
CF_print
#define CF_print(cond, _x_)
Definition: cf.h:209
PCCARD_25_SECTORS_SIZES
#define PCCARD_25_SECTORS_SIZES
Definition: cf.h:174
PRT_INIT_INFO
#define PRT_INIT_INFO
Definition: cf.h:217
CF_IO_16_MODE
#define CF_IO_16_MODE
Definition: cf.h:95
PCCARD_SECTOR_SIZE
#define PCCARD_SECTOR_SIZE
Definition: cf.h:172
PRT_CMD_INFO
#define PRT_CMD_INFO
Definition: cf.h:218
ABRT_BIT
#define ABRT_BIT
Definition: cf.h:162
CF_MEM_MAP_MODE
#define CF_MEM_MAP_MODE
Definition: cf.h:94
PCCARD_Init
StatusType PCCARD_Init(PCCARD_HandleType *hpccard, xmc_nand_pccard_timinginit_type *ComSpaceTiming, xmc_nand_pccard_timinginit_type *AttSpaceTiming, xmc_nand_pccard_timinginit_type *IOSpaceTiming)
Perform the PCCARD memory Initialization sequence.
Definition: cf.c:249
Enable_Wait_Feature
StatusType Enable_Wait_Feature(PCCARD_HandleType *hpccard)
Enable Wait Feature.
Definition: cf.c:379
PCCARD_Diagnostic
BOOL PCCARD_Diagnostic(PCCARD_HandleType *hpccard)
Diagnostic.
Definition: cf.c:796
PCCARD_Write_Verify
BOOL PCCARD_Write_Verify(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Verify
Definition: cf.c:1342
PCCARD_Reset
BOOL PCCARD_Reset(PCCARD_HandleType *hpccard)
Reset the PCCARD memory.
Definition: cf.c:2205
PCCARD_Write_Multiple
BOOL PCCARD_Write_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple
Definition: cf.c:1667
ReadCFCardCISInformation
BOOL ReadCFCardCISInformation(PCCARD_HandleType *hpccard)
Read CIS Information.
Definition: cf.c:2276
PCCARD_Read_Multiple
BOOL PCCARD_Read_Multiple(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
read Multiple
Definition: cf.c:1748
PCCARD_Read_Sector
BOOL PCCARD_Read_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Read sector from PCCARD memory.
Definition: cf.c:583
PCCARD_Set_Features
BOOL PCCARD_Set_Features(PCCARD_HandleType *hpccard, uint32_t Sector_Count, uint8_t Feature)
set features
Definition: cf.c:1443
PCCARD_Write_Multiple_WO_ERASE
BOOL PCCARD_Write_Multiple_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write Multiple WO_ERASE
Definition: cf.c:1829
PCCARD_Read_Verify_Sector
BOOL PCCARD_Read_Verify_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint16_t Sector_Count)
read Verify Sector
Definition: cf.c:1256
Vaild_Init_Drive_Para
BOOL Vaild_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Check the PCCARD info valid.
Definition: cf.c:2349
PCCARD_Write_Sector
BOOL PCCARD_Write_Sector(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
Write sector to PCCARD memory.
Definition: cf.c:666
PCCARD_Read_ID
BOOL PCCARD_Read_ID(PCCARD_HandleType *hpccard)
Read Compact Flash's ID.
Definition: cf.c:468
PCCARD_Translate_Sector
BOOL PCCARD_Translate_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address)
Translate sector.
Definition: cf.c:1551
PCCARD_Seek
BOOL PCCARD_Seek(PCCARD_HandleType *hpccard, uint8_t Head_Count, uint16_t Cylinder_Count)
seek pccard
Definition: cf.c:1137
PCCARD_Erase_Sector
BOOL PCCARD_Erase_Sector(PCCARD_HandleType *hpccard, uint32_t Sector_Address, uint32_t Sector_Count)
Erase sector from PCCARD memory.
Definition: cf.c:749
PCCARD_Init_Drive_Para
BOOL PCCARD_Init_Drive_Para(PCCARD_HandleType *hpccard, uint16_t Sector_Count, uint8_t Head_Count)
Init drive para.
Definition: cf.c:1110
show_verification_result
void show_verification_result(verification_result_struct *result)
printf the verification result.
Definition: cf.c:2412
PCCARD_Recalibrate
BOOL PCCARD_Recalibrate(PCCARD_HandleType *hpccard)
Recalibrate the pccard.
Definition: cf.c:1078
PCCARD_Write_Buffer
BOOL PCCARD_Write_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
write buffer
Definition: cf.c:1508
PCCARD_Set_Multiple_Mode
BOOL PCCARD_Set_Multiple_Mode(PCCARD_HandleType *hpccard, uint32_t Sector_Count)
set multiple mode
Definition: cf.c:1421
PCCARD_Read_Buffer
BOOL PCCARD_Read_Buffer(PCCARD_HandleType *hpccard, uint8_t *pBuffer)
read buffer
Definition: cf.c:1465
PCCARD_Write_Sector_WO_ERASE
BOOL PCCARD_Write_Sector_WO_ERASE(PCCARD_HandleType *hpccard, uint8_t *pBuffer, uint32_t Sector_Address, uint32_t Sector_Count)
write sector WO_ERASE
Definition: cf.c:1586
PCCARD_Read_ERROR_REG
uint8_t PCCARD_Read_ERROR_REG(PCCARD_HandleType *hpccard)
Get the PCCARD error reg value.
Definition: cf.c:2474
STATUS_OK
@ STATUS_OK
Definition: cf.h:238
XMC_BANK4
#define XMC_BANK4
Definition: at32f403_xmc.h:725
CFCardAddrStruct::Cylinder
uint16_t Cylinder
Definition: cf.h:273
CFCardAddrStruct::Sector
uint8_t Sector
Definition: cf.h:275
CFCardAddrStruct::Head
uint8_t Head
Definition: cf.h:274
CFCardInfoStruct::Max_Mutiple_Sector
uint16_t Max_Mutiple_Sector
Definition: cf.h:265
CFCardInfoStruct::Default_Head
uint8_t Default_Head
Definition: cf.h:258
CFCardInfoStruct::Current_Head
uint8_t Current_Head
Definition: cf.h:261
CFCardInfoStruct::Current_Sector
uint16_t Current_Sector
Definition: cf.h:262
CFCardInfoStruct::Default_Cylinder
uint16_t Default_Cylinder
Definition: cf.h:257
CFCardStruct::CFCardInfo
CFCardInfoStruct CFCardInfo
Definition: cf.h:286
CFCardStruct::IOAddr
uint32_t IOAddr
Definition: cf.h:283
CFCardStruct::DMAEnable
BOOL DMAEnable
Definition: cf.h:284
CFCardStruct::Drive
uint32_t Drive
Definition: cf.h:291
CFCardStruct::Protocol
uint16_t Protocol
Definition: cf.h:288
CFCardStruct::Enable_8_bit_mode
BOOL Enable_8_bit_mode
Definition: cf.h:285
CFCardStruct::CFAddr
CFCardAddrStruct CFAddr
Definition: cf.h:287
PCCARD_HandleType
XMC_PCCARD handle Structure definition.
Definition: cf.h:344
PCCARD_HandleType::CF
CFCardStruct CF
Definition: cf.h:353
PCCARD_HandleType::Instance
xmc_bank4_type * Instance
Definition: cf.h:345
PCCARD_HandleType::Init
xmc_pccard_init_type Init
Definition: cf.h:347
verification_result_struct
Definition: cf.h:297
verification_result_struct::CIS_READ_PASS
BOOL CIS_READ_PASS
Definition: cf.h:335
verification_result_struct::ATA_WRITE_MULTIPLE_WO_ERASE_PASS
BOOL ATA_WRITE_MULTIPLE_WO_ERASE_PASS
Definition: cf.h:330
verification_result_struct::ATA_TRANSLATE_SECTOR_PASS
BOOL ATA_TRANSLATE_SECTOR_PASS
Definition: cf.h:325
verification_result_struct::ATA_SET_MULTIPLE_MODE_PASS
BOOL ATA_SET_MULTIPLE_MODE_PASS
Definition: cf.h:321
verification_result_struct::ATA_WRITE_MULTIPLE_PASS
BOOL ATA_WRITE_MULTIPLE_PASS
Definition: cf.h:329
verification_result_struct::ATA_INIT_DRIVE_PARA_PASS
BOOL ATA_INIT_DRIVE_PARA_PASS
Definition: cf.h:305
verification_result_struct::ATA_WRITE_SECTOR_PASS
BOOL ATA_WRITE_SECTOR_PASS
Definition: cf.h:331
verification_result_struct::ATA_SET_FEATURE_PASS
BOOL ATA_SET_FEATURE_PASS
Definition: cf.h:320
verification_result_struct::ATA_FORMAT_TRACK_PASS
BOOL ATA_FORMAT_TRACK_PASS
Definition: cf.h:301
verification_result_struct::ACESS_25_SECTORS_PASS
BOOL ACESS_25_SECTORS_PASS
Definition: cf.h:334
verification_result_struct::ATA_SEEK_PASS
BOOL ATA_SEEK_PASS
Definition: cf.h:319
verification_result_struct::ATTRIBUTE_RW_PASS
BOOL ATTRIBUTE_RW_PASS
Definition: cf.h:336
verification_result_struct::ATA_ERASE_SECTOR_PASS
BOOL ATA_ERASE_SECTOR_PASS
Definition: cf.h:300
verification_result_struct::ATA_READ_SECTOR_PASS
BOOL ATA_READ_SECTOR_PASS
Definition: cf.h:309
verification_result_struct::ATA_IDENTIFY_DRIVE_PASS
BOOL ATA_IDENTIFY_DRIVE_PASS
Definition: cf.h:302
verification_result_struct::ATA_WRITE_SECTOR_WO_ERASE_PASS
BOOL ATA_WRITE_SECTOR_WO_ERASE_PASS
Definition: cf.h:332
verification_result_struct::ATA_EXECUTE_DRIVE_DIAG_PASS
BOOL ATA_EXECUTE_DRIVE_DIAG_PASS
Definition: cf.h:299
verification_result_struct::ATA_RECALIBRATE_PASS
BOOL ATA_RECALIBRATE_PASS
Definition: cf.h:311
verification_result_struct::ATA_WRITE_BUFFER_PASS
BOOL ATA_WRITE_BUFFER_PASS
Definition: cf.h:327
verification_result_struct::ATA_READ_VERIFY_SECTOR_PASS
BOOL ATA_READ_VERIFY_SECTOR_PASS
Definition: cf.h:310
verification_result_struct::ATA_READ_MULTIPLE_PASS
BOOL ATA_READ_MULTIPLE_PASS
Definition: cf.h:308
verification_result_struct::ATA_READ_BUFFER_PASS
BOOL ATA_READ_BUFFER_PASS
Definition: cf.h:306
verification_result_struct::ATA_WRITE_VERIFY_PASS
BOOL ATA_WRITE_VERIFY_PASS
Definition: cf.h:333
xmc_nand_pccard_timinginit_type
nand timing parameters xmc
Definition: at32f403_xmc.h:283
xmc_nand_pccard_timinginit_type::mem_waite_time
uint32_t mem_waite_time
Definition: at32f403_xmc.h:286
xmc_nand_pccard_timinginit_type::mem_hold_time
uint32_t mem_hold_time
Definition: at32f403_xmc.h:287
xmc_nand_pccard_timinginit_type::mem_hiz_time
uint32_t mem_hiz_time
Definition: at32f403_xmc.h:288
xmc_nand_pccard_timinginit_type::mem_setup_time
uint32_t mem_setup_time
Definition: at32f403_xmc.h:285
xmc_pccard_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:314
xmc_pccard_init_type::enable_wait
xmc_nand_pccard_wait_type enable_wait
Definition: at32f403_xmc.h:312
xmc_pccard_init_type::delay_time_cr
uint32_t delay_time_cr
Definition: at32f403_xmc.h:313
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • psram
  • inc
project/at_start_f403/examples/xmc/psram/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • psram
  • inc
project/at_start_f403/examples/xmc/psram/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • psram
  • inc
project/at_start_f403/examples/xmc/psram/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • psram
  • src
project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • psram
  • src
project/at_start_f403/examples/xmc/psram/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/xmc/psram/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • psram
  • src
project/at_start_f403/examples/xmc/psram/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "xmc_psram.h"
28
37#define BUFFER_SIZE 0x400
38#define WRITE_READ_ADDR 0x8000
39
40uint16_t txbuffer[BUFFER_SIZE];
41uint16_t rxbuffer[BUFFER_SIZE];
42uint32_t writereadstatus = 0;
43uint16_t index_cnt = 0;
44
45void fill_buffer(uint16_t *pBuffer, uint16_t BufferLenght, uint32_t Offset);
46
52int main(void)
53{
54 /* configure the system clock */
55 system_clock_config();
56
57 /* initialize leds */
58 at32_board_init();
59
60 /* initialize usart */
61 uart_print_init(115200);
62
63 /* configure xmc bank1 nor/sram1 */
64 psram_init();
65
66 /* fill the buffer to send */
67 fill_buffer(txbuffer, BUFFER_SIZE, 0x3212);
68
69 /* write data to xmc sram memory */
70 psram_writebuffer(txbuffer, WRITE_READ_ADDR, BUFFER_SIZE);
71
72 /* read data from xmc sram memory */
73 psram_readbuffer(rxbuffer, WRITE_READ_ADDR, BUFFER_SIZE);
74
75 /* read back sram memory and check content correctness */
76 for(index_cnt = 0x00; (index_cnt < BUFFER_SIZE) && (writereadstatus == 0); index_cnt++)
77 {
78 if(rxbuffer[index_cnt] != txbuffer[index_cnt])
79 {
80 writereadstatus = index_cnt + 1;
81 }
82 }
83
84 if(writereadstatus == 0)
85 {
86 /* pass */
87 printf("data is right\r\n");
88 }
89 else
90 {
91 /* fail */
92 printf("data is error\r\n");
93 }
94
95 while(1)
96 {
97 }
98}
99
106void fill_buffer(uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
107{
108 uint16_t indextmp = 0;
109
110 /* put in global buffer same values */
111 for(indextmp = 0; indextmp < bufferlenght; indextmp++ )
112 {
113 pbuffer[indextmp] = indextmp + offset;
114 }
115}
116
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
rxbuffer
uint16_t rxbuffer[0x400]
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:41
WRITE_READ_ADDR
#define WRITE_READ_ADDR
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:38
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:52
fill_buffer
void fill_buffer(uint16_t *pBuffer, uint16_t BufferLenght, uint32_t Offset)
fill the global buffer
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:106
writereadstatus
uint32_t writereadstatus
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:42
index_cnt
uint16_t index_cnt
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:43
txbuffer
uint16_t txbuffer[0x400]
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:40
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
psram_init
void psram_init(void)
configures the xmc and gpios to interface with the sram memory. this function must be called before a...
Definition: xmc_psram.c:44
psram_readbuffer
void psram_readbuffer(uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc psram memory.
Definition: xmc_psram.c:160
psram_writebuffer
void psram_writebuffer(uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc psram memory.
Definition: xmc_psram.c:139
at32f403_clock.h
header file of clock program
xmc_psram.h
header file for the psram configuration.


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • xmc
  • sram
  • inc
project/at_start_f403/examples/xmc/sram/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • xmc
  • sram
  • inc
project/at_start_f403/examples/xmc/sram/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • xmc
  • sram
  • inc
project/at_start_f403/examples/xmc/sram/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • xmc
  • sram
  • src
project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c:59
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/examples/xmc/sram/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • xmc
  • sram
  • src
project/at_start_f403/examples/xmc/sram/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/usb_device/virtual_comport/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • xmc
  • sram
  • src
project/at_start_f403/examples/xmc/sram/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "xmc_sram.h"
28
37#define BUFFER_SIZE 0x400
38#define WRITE_READ_ADDR 0x8000
39
40uint16_t txbuffer[BUFFER_SIZE];
41uint16_t rxbuffer[BUFFER_SIZE];
42uint32_t writereadstatus = 0;
43uint16_t index_cnt = 0;
44
45void fill_buffer(uint16_t *pBuffer, uint16_t BufferLenght, uint32_t Offset);
46
52int main(void)
53{
54 /* configure the system clock */
55 system_clock_config();
56
57 /* initialize leds */
58 at32_board_init();
59
60 /* initialize usart */
61 uart_print_init(115200);
62
63 /* configure xmc bank1 nor/sram1 */
64 sram_init();
65
66 /* fill the buffer to send */
67 fill_buffer(txbuffer, BUFFER_SIZE, 0x3212);
68
69 /* write data to xmc sram memory */
70 sram_writebuffer(txbuffer, WRITE_READ_ADDR, BUFFER_SIZE);
71
72 /* read data from xmc sram memory */
73 sram_readbuffer(rxbuffer, WRITE_READ_ADDR, BUFFER_SIZE);
74
75 /* read back sram memory and check content correctness */
76 for(index_cnt = 0x00; (index_cnt < BUFFER_SIZE) && (writereadstatus == 0); index_cnt++)
77 {
78 if(rxbuffer[index_cnt] != txbuffer[index_cnt])
79 {
80 writereadstatus = index_cnt + 1;
81 }
82 }
83
84 if(writereadstatus == 0)
85 {
86 /* pass */
87 printf("data is right\r\n");
88 }
89 else
90 {
91 /* fail */
92 printf("data is error\r\n");
93 }
94
95 while(1)
96 {
97 }
98}
99
106void fill_buffer(uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
107{
108 uint16_t indextmp = 0;
109
110 /* put in global buffer same values */
111 for(indextmp = 0; indextmp < bufferlenght; indextmp++ )
112 {
113 pbuffer[indextmp] = indextmp + offset;
114 }
115}
116
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
main
int main(void)
main function.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/main.c:142
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
rxbuffer
uint16_t rxbuffer[0x400]
Definition: project/at_start_f403/examples/xmc/sram/src/main.c:41
WRITE_READ_ADDR
#define WRITE_READ_ADDR
Definition: project/at_start_f403/examples/xmc/sram/src/main.c:38
BUFFER_SIZE
#define BUFFER_SIZE
Definition: project/at_start_f403/examples/xmc/sram/src/main.c:37
fill_buffer
void fill_buffer(uint16_t *pBuffer, uint16_t BufferLenght, uint32_t Offset)
fill the global buffer
Definition: project/at_start_f403/examples/xmc/sram/src/main.c:106
writereadstatus
uint32_t writereadstatus
Definition: project/at_start_f403/examples/xmc/sram/src/main.c:42
index_cnt
uint16_t index_cnt
Definition: project/at_start_f403/examples/xmc/sram/src/main.c:43
txbuffer
uint16_t txbuffer[0x400]
Definition: project/at_start_f403/examples/xmc/sram/src/main.c:40
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
sram_readbuffer
void sram_readbuffer(uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc sram memory.
Definition: xmc_sram.c:172
sram_init
void sram_init(void)
configures the xmc and gpios to interface with the sram memory. this function must be called before a...
Definition: xmc_sram.c:44
sram_writebuffer
void sram_writebuffer(uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc sram memory.
Definition: xmc_sram.c:151
at32f403_clock.h
header file of clock program
xmc_sram.h


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • templates
  • inc
project/at_start_f403/templates/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • templates
  • inc
project/at_start_f403/templates/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
50#if !defined HEXT_VALUE
51#define HEXT_VALUE ((uint32_t)8000000)
52#endif
53
58#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
59#define HICK_VALUE ((uint32_t)8000000)
60#define LEXT_VALUE ((uint32_t)32768)
62/* module define -------------------------------------------------------------*/
63#define CRM_MODULE_ENABLED
64#define TMR_MODULE_ENABLED
65#define RTC_MODULE_ENABLED
66#define BPR_MODULE_ENABLED
67#define GPIO_MODULE_ENABLED
68#define I2C_MODULE_ENABLED
69#define USART_MODULE_ENABLED
70#define PWC_MODULE_ENABLED
71#define CAN_MODULE_ENABLED
72#define ADC_MODULE_ENABLED
73#define DAC_MODULE_ENABLED
74#define SPI_MODULE_ENABLED
75#define DMA_MODULE_ENABLED
76#define DEBUG_MODULE_ENABLED
77#define FLASH_MODULE_ENABLED
78#define CRC_MODULE_ENABLED
79#define WWDT_MODULE_ENABLED
80#define WDT_MODULE_ENABLED
81#define EXINT_MODULE_ENABLED
82#define SDIO_MODULE_ENABLED
83#define XMC_MODULE_ENABLED
84#define USB_MODULE_ENABLED
85#define MISC_MODULE_ENABLED
86
87/* includes ------------------------------------------------------------------*/
88#ifdef CRM_MODULE_ENABLED
89#include "at32f403_crm.h"
90#endif
91#ifdef TMR_MODULE_ENABLED
92#include "at32f403_tmr.h"
93#endif
94#ifdef RTC_MODULE_ENABLED
95#include "at32f403_rtc.h"
96#endif
97#ifdef BPR_MODULE_ENABLED
98#include "at32f403_bpr.h"
99#endif
100#ifdef GPIO_MODULE_ENABLED
101#include "at32f403_gpio.h"
102#endif
103#ifdef I2C_MODULE_ENABLED
104#include "at32f403_i2c.h"
105#endif
106#ifdef USART_MODULE_ENABLED
107#include "at32f403_usart.h"
108#endif
109#ifdef PWC_MODULE_ENABLED
110#include "at32f403_pwc.h"
111#endif
112#ifdef CAN_MODULE_ENABLED
113#include "at32f403_can.h"
114#endif
115#ifdef ADC_MODULE_ENABLED
116#include "at32f403_adc.h"
117#endif
118#ifdef DAC_MODULE_ENABLED
119#include "at32f403_dac.h"
120#endif
121#ifdef SPI_MODULE_ENABLED
122#include "at32f403_spi.h"
123#endif
124#ifdef DMA_MODULE_ENABLED
125#include "at32f403_dma.h"
126#endif
127#ifdef DEBUG_MODULE_ENABLED
128#include "at32f403_debug.h"
129#endif
130#ifdef FLASH_MODULE_ENABLED
131#include "at32f403_flash.h"
132#endif
133#ifdef CRC_MODULE_ENABLED
134#include "at32f403_crc.h"
135#endif
136#ifdef WWDT_MODULE_ENABLED
137#include "at32f403_wwdt.h"
138#endif
139#ifdef WDT_MODULE_ENABLED
140#include "at32f403_wdt.h"
141#endif
142#ifdef EXINT_MODULE_ENABLED
143#include "at32f403_exint.h"
144#endif
145#ifdef SDIO_MODULE_ENABLED
146#include "at32f403_sdio.h"
147#endif
148#ifdef XMC_MODULE_ENABLED
149#include "at32f403_xmc.h"
150#endif
151#ifdef MISC_MODULE_ENABLED
152#include "at32f403_misc.h"
153#endif
154#ifdef USB_MODULE_ENABLED
155#include "at32f403_usb.h"
156#endif
157
166#ifdef __cplusplus
167}
168#endif
169
170#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • templates
  • inc
project/at_start_f403/templates/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • templates
  • src
project/at_start_f403/templates/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
42static void wait_stbl(uint32_t delay)
43{
44 volatile uint32_t i;
45
46 for(i = 0; i < delay; i++);
47}
48
67void system_clock_config(void)
68{
69 /* reset crm */
70 crm_reset();
71
72 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
73
74 /* wait for hext stable */
75 wait_stbl(HEXT_STABLE_DELAY);
76
77 /* wait till hext is ready */
78 while(crm_hext_stable_wait() == ERROR)
79 {
80 }
81
82 /* config pll clock resource */
83 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
84
85 /* enable pll */
86 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
87
88 /* wait till pll is ready */
89 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
90 {
91 }
92
93 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
94 crm_apb2_div_set(CRM_APB2_DIV_2);
95
96 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
97 crm_apb1_div_set(CRM_APB1_DIV_2);
98
99 /* 1step: config ahbclk div8 */
100 crm_ahb_div_set(CRM_AHB_DIV_8);
101
102 /* select pll as system clock source */
103 crm_sysclk_switch(CRM_SCLK_PLL);
104
105 /* wait till pll is used as system clock source */
106 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
107 {
108 }
109
110 /* delay */
111 wait_stbl(PLL_STABLE_DELAY);
112
113 /* 2step: config ahbclk div2 */
114 crm_ahb_div_set(CRM_AHB_DIV_2);
115
116 /* delay */
117 wait_stbl(PLL_STABLE_DELAY);
118
119 /* 3step: config ahbclk to target div */
120 crm_ahb_div_set(CRM_AHB_DIV_1);
121
122 /* update system_core_clock global variable */
123 system_core_clock_update();
124}
125
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/templates/src/at32f403_clock.c:67
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: project/at_start_f403/templates/src/at32f403_clock.c:42
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • templates
  • src
project/at_start_f403/templates/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/templates/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/templates/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • templates
  • src
project/at_start_f403/templates/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27
36#define DELAY 100
37#define FAST 1
38#define SLOW 4
39
40uint8_t g_speed = FAST;
41
42void button_exint_init(void);
43void button_isr(void);
44
50void button_exint_init(void)
51{
52 exint_init_type exint_init_struct;
53
54 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
55 gpio_exint_line_config(GPIO_PORT_SOURCE_GPIOA, GPIO_PINS_SOURCE0);
56
57 exint_default_para_init(&exint_init_struct);
58 exint_init_struct.line_enable = TRUE;
59 exint_init_struct.line_mode = EXINT_LINE_INTERRUPUT;
60 exint_init_struct.line_select = EXINT_LINE_0;
61 exint_init_struct.line_polarity = EXINT_TRIGGER_RISING_EDGE;
62 exint_init(&exint_init_struct);
63
64 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
65 nvic_irq_enable(EXINT0_IRQn, 0, 0);
66}
67
73void button_isr(void)
74{
75 /* delay 5ms */
76 delay_ms(5);
77
78 /* clear interrupt pending bit */
79 exint_flag_clear(EXINT_LINE_0);
80
81 /* check input pin state */
82 if(SET == gpio_input_data_bit_read(USER_BUTTON_PORT, USER_BUTTON_PIN))
83 {
84 if(g_speed == SLOW)
85 g_speed = FAST;
86 else
87 g_speed = SLOW;
88 }
89}
90
96void EXINT0_IRQHandler(void)
97{
98 button_isr();
99}
100
106int main(void)
107{
108 system_clock_config();
109
110 at32_board_init();
111
112 button_exint_init();
113
114 while(1)
115 {
116 at32_led_toggle(LED2);
117 delay_ms(g_speed * DELAY);
118 at32_led_toggle(LED3);
119 delay_ms(g_speed * DELAY);
120 at32_led_toggle(LED4);
121 delay_ms(g_speed * DELAY);
122 }
123}
124
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
SLOW
#define SLOW
Definition: project/at_start_f403/templates/src/main.c:38
button_exint_init
void button_exint_init(void)
configure button exint
Definition: project/at_start_f403/templates/src/main.c:50
DELAY
#define DELAY
Definition: project/at_start_f403/templates/src/main.c:36
FAST
#define FAST
Definition: project/at_start_f403/templates/src/main.c:37
main
int main(void)
main function.
Definition: project/at_start_f403/templates/src/main.c:106
EXINT0_IRQHandler
void EXINT0_IRQHandler(void)
exint0 interrupt handler
Definition: project/at_start_f403/templates/src/main.c:96
g_speed
uint8_t g_speed
Definition: project/at_start_f403/templates/src/main.c:40
button_isr
void button_isr(void)
button handler function
Definition: project/at_start_f403/templates/src/main.c:73
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
USER_BUTTON_PORT
#define USER_BUTTON_PORT
Definition: at32f403_board.h:97
USER_BUTTON_PIN
#define USER_BUTTON_PIN
Definition: at32f403_board.h:96
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
EXINT0_IRQn
@ EXINT0_IRQn
Definition: at32f403.h:184
exint_flag_clear
void exint_flag_clear(uint32_t exint_line)
clear exint flag
Definition: at32f403_exint.c:124
exint_default_para_init
void exint_default_para_init(exint_init_type *exint_struct)
exint default para init
Definition: at32f403_exint.c:62
exint_init
void exint_init(exint_init_type *exint_struct)
exint init
Definition: at32f403_exint.c:76
EXINT_LINE_INTERRUPUT
@ EXINT_LINE_INTERRUPUT
Definition: at32f403_exint.h:84
EXINT_TRIGGER_RISING_EDGE
@ EXINT_TRIGGER_RISING_EDGE
Definition: at32f403_exint.h:93
EXINT_LINE_0
#define EXINT_LINE_0
Definition: at32f403_exint.h:50
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_exint_line_config
void gpio_exint_line_config(gpio_port_source_type gpio_port_source, gpio_pins_source_type gpio_pin_source)
select the gpio pin used as exint line.
Definition: at32f403_gpio.c:587
GPIO_PINS_SOURCE0
@ GPIO_PINS_SOURCE0
Definition: at32f403_gpio.h:182
GPIO_PORT_SOURCE_GPIOA
@ GPIO_PORT_SOURCE_GPIOA
Definition: at32f403_gpio.h:205
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
exint_init_type
exint init type
Definition: at32f403_exint.h:102
exint_init_type::line_select
uint32_t line_select
Definition: at32f403_exint.h:104
exint_init_type::line_enable
confirm_state line_enable
Definition: at32f403_exint.h:106
exint_init_type::line_mode
exint_line_mode_type line_mode
Definition: at32f403_exint.h:103
exint_init_type::line_polarity
exint_polarity_config_type line_polarity
Definition: at32f403_exint.h:105
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: random.c Source File

  • utilities
  • at32f403_gen_random_number_demo
  • src
random.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "random.h"
27#include "stdio.h"
28#include <stdlib.h>
29
38/* define at32 mcu uid address */
39#define DEVICE_ID_ADDR1 0x1FFFF7E8
40
46int get_uid_for_seed (void)
47{
48 uint32_t id[3] = {0};
49 uint32_t uid_one_word;
50
51 /* get uid */
52 id[0] = *(int*)DEVICE_ID_ADDR1;
53 id[2] = *(int*)(DEVICE_ID_ADDR1+8);
54 uid_one_word=id[0]&0x7fffffff+((id[2]&(~0x7fffffff))<<16);
55 return uid_one_word;
56}
57
63#if ENABLE_RTC_ASSEED
64void rtc_init_for_seed (void)
65{
66 /* enable pwc and bpr clocks */
67 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
68 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
69
70 /* allow access to bpr domain */
71 pwc_battery_powered_domain_access(TRUE);
72
73 if (bpr_data_read(BPR_DATA1) != 0x5051)
74 {
75 /* reset bpr domain */
76 bpr_reset();
77
78 /* enable the lext osc */
79 crm_clock_source_enable(CRM_CLOCK_SOURCE_LEXT, TRUE);
80 /* wait lext is ready */
81 while(crm_flag_get(CRM_LEXT_STABLE_FLAG) == RESET);
82 /* select the rtc clock source */
83 crm_rtc_clock_select(CRM_RTC_CLOCK_LEXT);
84
85 /* enable rtc clock */
86 crm_rtc_clock_enable(TRUE);
87
88 /* wait for rtc registers update */
89 rtc_wait_update_finish();
90
91 /* wait for the register write to complete */
92 rtc_wait_config_finish();
93
94 /* set rtc divider: set rtc period to 1sec */
95 rtc_divider_set(32767);
96
97 /* wait for the register write to complete */
98 rtc_wait_config_finish();
99
100 /* writes data to bpr register */
101 bpr_data_write(BPR_DATA1, 0x5051);
102 }
103 else
104 {
105 /* wait for rtc registers update */
106 rtc_wait_update_finish();
107
108 /* wait for the register write to complete */
109 rtc_wait_config_finish();
110 }
111}
112
113#endif
114
120void randnum_test( void)
121{
122#if ENABLE_RTC_ASSEED
123 rtc_init_for_seed();
124
125 /* set uid and rtc as seed for random */
126 srand(rtc_counter_get()+get_uid_for_seed());
127#else
128 /* set only uid as seed for random */
129 srand(get_uid_for_seed());
130#endif
131
132 while(1)
133 {
134 delay_ms(500);
135 printf("%d\r\n",rand());
136 }
137}
138
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
bpr_data_read
uint16_t bpr_data_read(bpr_data_type bpr_data)
read bpr bpr data
Definition: at32f403_bpr.c:134
bpr_data_write
void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value)
write bpr data
Definition: at32f403_bpr.c:151
BPR_DATA1
@ BPR_DATA1
Definition: at32f403_bpr.h:66
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_rtc_clock_select
void crm_rtc_clock_select(crm_rtc_clock_type value)
select rtc clock
Definition: at32f403_crm.c:444
crm_rtc_clock_enable
void crm_rtc_clock_enable(confirm_state new_state)
enable or disable rtc
Definition: at32f403_crm.c:454
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
CRM_CLOCK_SOURCE_LEXT
@ CRM_CLOCK_SOURCE_LEXT
Definition: at32f403_crm.h:319
CRM_RTC_CLOCK_LEXT
@ CRM_RTC_CLOCK_LEXT
Definition: at32f403_crm.h:396
CRM_LEXT_STABLE_FLAG
#define CRM_LEXT_STABLE_FLAG
Definition: at32f403_crm.h:56
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
get_uid_for_seed
int get_uid_for_seed(void)
get uid value as seed
Definition: random.c:46
DEVICE_ID_ADDR1
#define DEVICE_ID_ADDR1
Definition: random.c:39
randnum_test
void randnum_test(void)
enable rtc as seed
Definition: random.c:120
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_counter_get
uint32_t rtc_counter_get(void)
rtc counter get
Definition: at32f403_rtc.c:65
rtc_wait_update_finish
void rtc_wait_update_finish(void)
rtc wait update finish
Definition: at32f403_rtc.c:230
rtc_divider_set
void rtc_divider_set(uint32_t div_value)
rtc divider set
Definition: at32f403_rtc.c:80
random.h
at32f403 random header file


AT32F403 Firmwary Library: random.h Source File

  • utilities
  • at32f403_gen_random_number_demo
  • inc
random.h
Go to the documentation of this file.
1
25#ifndef __RANDOM_H
26#define __RANDOM_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403.h"
33
46/* this define rtc seed for random number gen,*/
47#define ENABLE_RTC_ASSEED (1)
48
57void randnum_test( void);
58
71#ifdef __cplusplus
72}
73#endif
74
75#endif
at32f403.h
at32f403 header file
randnum_test
void randnum_test(void)
enable rtc as seed
Definition: random.c:120


AT32F403 Firmwary Library: rtc.c Source File

  • rtc
  • calendar
  • src
rtc.c
Go to the documentation of this file.
1
25#include "rtc.h"
26
35 calendar_type calendar;
36
37/* monthly correction data sheet */
38const uint8_t table_week[12] = {0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5};
39
40/* monmonth data table of common year */
41const uint8_t mon_table[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
42
49uint8_t rtc_init(calendar_type *calendar)
50{
51 /* enable pwc and bpr clocks */
52 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
54
55 /* enable the battery-powered domain write operations */
56 pwc_battery_powered_domain_access(TRUE);
57
58 /* check if rtc is initialized */
59 if(bpr_data_read(BPR_DATA1) != 0x1234)
60 {
61 /* reset battery-powered domain register */
62 bpr_reset();
63
64 /* enable the lext osc */
65 crm_clock_source_enable(CRM_CLOCK_SOURCE_LEXT, TRUE);
66 /* wait lext is ready */
67 while(crm_flag_get(CRM_LEXT_STABLE_FLAG) == RESET);
68 /* select the rtc clock source */
69 crm_rtc_clock_select(CRM_RTC_CLOCK_LEXT);
70
71 /* enable rtc clock */
72 crm_rtc_clock_enable(TRUE);
73
74 /* wait for rtc registers update */
75 rtc_wait_update_finish();
76
77 /* wait for the register write to complete */
78 rtc_wait_config_finish();
79
80 /* set rtc divider: set rtc period to 1sec */
81 rtc_divider_set(32767);
82
83 /* wait for the register write to complete */
84 rtc_wait_config_finish();
85
86 /* set time */
87 rtc_time_set(calendar);
88
89 /* writes data to bpr register */
90 bpr_data_write(BPR_DATA1, 0x1234);
91
92 return 1;
93 }
94 else
95 {
96 /* wait for rtc registers update */
97 rtc_wait_update_finish();
98
99 /* wait for the register write to complete */
100 rtc_wait_config_finish();
101
102 return 0;
103 }
104}
105
115uint8_t is_leap_year(uint16_t year)
116{
117 if(year % 4 == 0)
118 {
119 if(year % 100 == 0)
120 {
121 if(year % 400 == 0)
122 {
123 return 1;
124 }
125 else
126 {
127 return 0;
128 }
129 }
130 else
131 {
132 return 1;
133 }
134 }
135 else
136 {
137 return 0;
138 }
139}
140
149uint8_t rtc_time_set(calendar_type *calendar)
150{
151 uint32_t t;
152 uint32_t seccount = 0;
153
154 if(calendar->year < 1970 || calendar->year > 2099)
155 {
156 return 1;
157 }
158
159 for(t = 1970; t < calendar->year; t++)
160 {
161 if(is_leap_year(t))
162 {
163 seccount += 31622400;
164 }
165 else
166 {
167 seccount += 31536000;
168 }
169 }
170
171 calendar->month -= 1;
172
173 for(t = 0; t < calendar->month; t++)
174 {
175 seccount += (uint8_t)mon_table[t] * 86400;
176
177 if(is_leap_year(calendar->year) && t == 1)
178 {
179 seccount += 86400;
180 }
181 }
182
183 seccount += (uint8_t)(calendar->date - 1) * 86400;
184
185 seccount += (uint8_t)calendar->hour * 3600;
186
187 seccount += (uint8_t)calendar->min * 60;
188
189 seccount += calendar->sec;
190
191 /* enable pwc and bpr clocks */
192 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
193 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
194
195 /* enable write access to bpr domain */
196 pwc_battery_powered_domain_access(TRUE);
197
198 /* set the rtc counter value */
199 rtc_counter_set(seccount);
200
201 /* wait for the register write to complete */
202 rtc_wait_config_finish();
203
204 return 0;
205}
206
215uint8_t rtc_alarm_clock_set(calendar_type *calendar)
216{
217 uint16_t t;
218 uint32_t seccount = 0;
219
220 if(calendar->year < 1970 || calendar->year > 2099)
221 {
222 return 1;
223 }
224
225 for(t = 1970; t < calendar->year; t++)
226 {
227 if(is_leap_year(t))
228 {
229 seccount += 31622400;
230 }
231 else
232 {
233 seccount += 31536000;
234 }
235 }
236
237 calendar->month -= 1;
238
239 for(t = 0; t < calendar->month; t++)
240 {
241 seccount += (uint8_t)mon_table[t] * 86400;
242
243 if(is_leap_year(calendar->year) && t == 1)
244 {
245 seccount += 86400;
246 }
247 }
248
249 seccount += (uint8_t)(calendar->date - 1) * 86400;
250 seccount += (uint8_t)calendar->hour * 3600;
251 seccount += (uint8_t)calendar->min * 60;
252 seccount += calendar->sec;
253
254 /* enable pwc and bpr clocks */
255 crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
256 crm_periph_clock_enable(CRM_BPR_PERIPH_CLOCK, TRUE);
257
258 /* enable write access to bpr domain */
259 pwc_battery_powered_domain_access(TRUE);
260
261 /* set the rtc counter value */
262 rtc_alarm_set(seccount);
263
264 /* wait for the register write to complete */
265 rtc_wait_config_finish();
266
267 return 0;
268}
269
277uint8_t rtc_week_get(uint16_t year, uint8_t month, uint8_t day)
278{
279 uint16_t temp2;
280 uint8_t yearh, yearl;
281
282 yearh = year / 100;
283 yearl = year % 100;
284
285 if(yearh > 19)
286 {
287 yearl += 100;
288 }
289
290 temp2 = yearl + yearl / 4;
291 temp2 = temp2 % 7;
292 temp2 = temp2 + day + table_week[month - 1];
293
294 if(yearl % 4 == 0 && month < 3)
295 {
296 temp2--;
297 }
298
299 return(temp2 % 7);
300}
301
307void rtc_time_get(void)
308{
309 static uint16_t daycnt = 0;
310 uint32_t timecount = 0;
311 uint32_t temp = 0;
312 uint32_t temp1 = 0;
313
314 timecount = rtc_counter_get();
315 temp = timecount / 86400;
316
317 if(daycnt != temp)
318 {
319 daycnt = temp;
320 temp1 = 1970;
321
322 while(temp >= 365)
323 {
324 if(is_leap_year(temp1))
325 {
326 if(temp >= 366)
327 {
328 temp -= 366;
329 }
330 else
331 {
332 temp1++;
333 break;
334 }
335 }
336 else
337 {
338 temp -= 365;
339 }
340
341 temp1++;
342 }
343
344 calendar.year = temp1;
345 temp1 = 0;
346
347 while(temp >= 28)
348 {
349 if(is_leap_year(calendar.year) && temp1 == 1)
350 {
351 if(temp >= 29)
352 {
353 temp -= 29;
354 }
355 else
356 {
357 break;
358 }
359 }
360 else
361 {
362 if(temp >= mon_table[temp1])
363 {
364 temp -= mon_table[temp1];
365 }
366 else
367 {
368 break;
369 }
370 }
371
372 temp1++;
373 }
374
375 calendar.month = temp1 + 1;
376 calendar.date = temp + 1;
377 }
378
379 temp = timecount % 86400;
380 calendar.hour = temp / 3600;
381 calendar.min = (temp % 3600) / 60;
382 calendar.sec = (temp % 3600) % 60;
383 calendar.week = rtc_week_get(calendar.year, calendar.month, calendar.date);
384}
385
rtc_time_get
void rtc_time_get(void)
get current time.
Definition: rtc.c:307
rtc_init
uint8_t rtc_init(calendar_type *calendar)
rtc peripheral initialization.
Definition: rtc.c:49
calendar
calendar_type calendar
Definition: rtc.c:35
mon_table
const uint8_t mon_table[12]
Definition: rtc.c:41
rtc_week_get
uint8_t rtc_week_get(uint16_t year, uint8_t month, uint8_t day)
get current week by input leap year\mouth\day.
Definition: rtc.c:277
rtc_time_set
uint8_t rtc_time_set(calendar_type *calendar)
set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099
Definition: rtc.c:149
rtc_alarm_clock_set
uint8_t rtc_alarm_clock_set(calendar_type *calendar)
set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099
Definition: rtc.c:215
table_week
const uint8_t table_week[12]
Definition: rtc.c:38
is_leap_year
uint8_t is_leap_year(uint16_t year)
judeg the leap year or common year.
Definition: rtc.c:115
bpr_reset
void bpr_reset(void)
bpr reset by crm reset register
Definition: at32f403_bpr.c:47
bpr_data_read
uint16_t bpr_data_read(bpr_data_type bpr_data)
read bpr bpr data
Definition: at32f403_bpr.c:134
bpr_data_write
void bpr_data_write(bpr_data_type bpr_data, uint16_t data_value)
write bpr data
Definition: at32f403_bpr.c:151
BPR_DATA1
@ BPR_DATA1
Definition: at32f403_bpr.h:66
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_rtc_clock_select
void crm_rtc_clock_select(crm_rtc_clock_type value)
select rtc clock
Definition: at32f403_crm.c:444
crm_rtc_clock_enable
void crm_rtc_clock_enable(confirm_state new_state)
enable or disable rtc
Definition: at32f403_crm.c:454
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_PWC_PERIPH_CLOCK
@ CRM_PWC_PERIPH_CLOCK
Definition: at32f403_crm.h:152
CRM_BPR_PERIPH_CLOCK
@ CRM_BPR_PERIPH_CLOCK
Definition: at32f403_crm.h:151
CRM_CLOCK_SOURCE_LEXT
@ CRM_CLOCK_SOURCE_LEXT
Definition: at32f403_crm.h:319
CRM_RTC_CLOCK_LEXT
@ CRM_RTC_CLOCK_LEXT
Definition: at32f403_crm.h:396
CRM_LEXT_STABLE_FLAG
#define CRM_LEXT_STABLE_FLAG
Definition: at32f403_crm.h:56
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
pwc_battery_powered_domain_access
void pwc_battery_powered_domain_access(confirm_state new_state)
enable or disable access to the battery powered domain.
Definition: at32f403_pwc.c:59
rtc_alarm_set
void rtc_alarm_set(uint32_t alarm_value)
rtc alarm value set
Definition: at32f403_rtc.c:113
rtc_wait_config_finish
void rtc_wait_config_finish(void)
rtc wait configuration finish
Definition: at32f403_rtc.c:220
rtc_counter_get
uint32_t rtc_counter_get(void)
rtc counter get
Definition: at32f403_rtc.c:65
rtc_wait_update_finish
void rtc_wait_update_finish(void)
rtc wait update finish
Definition: at32f403_rtc.c:230
rtc_counter_set
void rtc_counter_set(uint32_t counter_value)
rtc counter set
Definition: at32f403_rtc.c:47
rtc_divider_set
void rtc_divider_set(uint32_t div_value)
rtc divider set
Definition: at32f403_rtc.c:80
rtc.h
this file provides template for calendar api.
calendar_type
Definition: rtc.h:47
calendar_type::hour
__IO uint8_t hour
Definition: rtc.h:51
calendar_type::month
__IO uint8_t month
Definition: rtc.h:49
calendar_type::sec
__IO uint8_t sec
Definition: rtc.h:53
calendar_type::week
__IO uint8_t week
Definition: rtc.h:54
calendar_type::year
__IO uint16_t year
Definition: rtc.h:48
calendar_type::min
__IO uint8_t min
Definition: rtc.h:52
calendar_type::date
__IO uint8_t date
Definition: rtc.h:50


AT32F403 Firmwary Library: rtc.h Source File

  • rtc
  • calendar
  • inc
rtc.h
Go to the documentation of this file.
1
25#ifndef __RTC_H
26#define __RTC_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403.h"
33
46typedef struct
47{
48 __IO uint16_t year;
49 __IO uint8_t month;
50 __IO uint8_t date;
51 __IO uint8_t hour;
52 __IO uint8_t min;
53 __IO uint8_t sec;
54 __IO uint8_t week;
55} calendar_type;
56
61extern calendar_type calendar;
62
67uint8_t rtc_init (calendar_type *calendar);
68uint8_t rtc_time_set (calendar_type *calendar);
69uint8_t rtc_alarm_clock_set (calendar_type *calendar);
70void rtc_time_get (void);
71
84#ifdef __cplusplus
85}
86#endif
87
88#endif
at32f403.h
at32f403 header file
calendar
calendar_type calendar
Definition: rtc.c:35
rtc_time_get
void rtc_time_get(void)
get current time.
Definition: rtc.c:307
rtc_init
uint8_t rtc_init(calendar_type *calendar)
rtc peripheral initialization.
Definition: rtc.c:49
rtc_time_set
uint8_t rtc_time_set(calendar_type *calendar)
set time. convert the input clock to a second. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099
Definition: rtc.c:149
rtc_alarm_clock_set
uint8_t rtc_alarm_clock_set(calendar_type *calendar)
set rtc alarm clock. the time basic : 1970.1.1 legitimate year: 1970 ~ 2099
Definition: rtc.c:215
calendar_type
Definition: rtc.h:47
calendar_type::hour
__IO uint8_t hour
Definition: rtc.h:51
calendar_type::month
__IO uint8_t month
Definition: rtc.h:49
calendar_type::sec
__IO uint8_t sec
Definition: rtc.h:53
calendar_type::week
__IO uint8_t week
Definition: rtc.h:54
calendar_type::year
__IO uint16_t year
Definition: rtc.h:48
calendar_type::min
__IO uint8_t min
Definition: rtc.h:52
calendar_type::date
__IO uint8_t date
Definition: rtc.h:50


AT32F403 Firmwary Library: run_in_spim.c Source File

  • flash
  • run_in_spim
  • src
run_in_spim.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "run_in_spim.h"
27
28
43void spim_run(void)
44{
45 while(1)
46 {
47 /* toggle led */
48 at32_led_toggle(LED2);
49 delay_ms(100);
50 at32_led_toggle(LED3);
51 delay_ms(100);
52 at32_led_toggle(LED4);
53 delay_ms(100);
54 }
55}
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
spim_run
void spim_run(void)
check the led toggle in spim
Definition: run_in_spim.c:43
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
LED4
@ LED4
Definition: at32f403_board.h:63
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
run_in_spim.h
run_in_spim header file


AT32F403 Firmwary Library: run_in_spim.h Source File

  • flash
  • run_in_spim
  • inc
run_in_spim.h
Go to the documentation of this file.
1
25/* Define to prevent recursive inclusion -------------------------------------*/
26#ifndef __RUN_IN_SPIM_H
27#define __RUN_IN_SPIM_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
42void spim_run(void);
43
56#ifdef __cplusplus
57}
58#endif
59
60#endif /* __RUN_IN_SPIM_H */
61
spim_run
void spim_run(void)
check the led toggle in spim
Definition: run_in_spim.c:43


AT32F403 Firmwary Library: at32_sdio.h Source File

  • sdio
  • sd_mmc_card
  • inc
sd_mmc_card/inc/at32_sdio.h
Go to the documentation of this file.
1
26/* define to prevent recursive inclusion -------------------------------------*/
27#ifndef __AT32_SDIO_H
28#define __AT32_SDIO_H
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
49#define SDIOx SDIO1
50
62typedef enum
63{
64 SD_TRANSFER_POLLING_MODE = 0,
65 SD_TRANSFER_DMA_MODE = 1
66} sd_data_transfer_mode_type;
67
71typedef enum
72{
73 /* sdio specific error defines ------------------------------------------*/
74 SD_CMD_FAIL = 1,
75 SD_DATA_FAIL = 2,
76 SD_CMD_RSP_TIMEOUT = 3,
77 SD_DATA_TIMEOUT = 4,
78 SD_TX_UNDERRUN = 5,
79 SD_RX_OVERRUN = 6,
80 SD_START_BIT_ERR = 7,
81 SD_CMD_OUT_OF_RANGE = 8,
82 SD_ADDR_MISALIGNED = 9,
83 SD_BLK_LEN_ERR = 10,
84 SD_ERASE_SEQ_ERR = 11,
85 SD_INVALID_ERASE_PARAM = 12,
86 SD_WR_PROTECT_VIOLATION = 13,
87 SD_LOCK_UNLOCK_ERROR = 14,
88 SD_CMD_CRC_ERROR = 15,
89 SD_ILLEGAL_CMD = 16,
90 SD_CARD_ECC_ERROR = 17,
91 SD_CARD_CONTROLLER_ERR = 18,
92 SD_GENERAL_UNKNOWN_ERROR = 19,
93 SD_STREAM_RD_UNDERRUN = 20,
94 SD_STREAM_WR_OVERRUN = 21,
95 SD_CID_CSD_OVERWRITE = 22,
96 SD_WP_ERASE_SKIP = 23,
97 SD_CARD_ECC_DISABLED = 24,
98 SD_ERASE_RESET = 25,
99 SD_AKE_SEQ_ERROR = 26,
100 SD_INVALID_VOLTRANGE = 27,
101 SD_ADDR_OUT_OF_RANGE = 28,
102 SD_SWITCH_ERROR = 29,
103 SD_SDIO_DISABLED = 30,
104 SD_SDIO_FUNC_BUSY = 31,
105 SD_SDIO_FUNC_ERROR = 32,
106 SD_SDIO_UNKNOWN_FUNC = 33,
108 /* standard error defines --------------------------------------------*/
109 SD_INTERNAL_ERROR,
110 SD_NOT_CONFIGURED,
111 SD_REQ_PENDING,
112 SD_REQ_NOT_APPLICABLE,
113 SD_INVALID_PARAMETER,
114 SD_UNSUPPORTED_FEATURE,
115 SD_UNSUPPORTED_HW,
116 SD_ERROR,
117 SD_OK = 0
118} sd_error_status_type;
119
123typedef struct
124{
125 uint8_t csd_struct;
126 uint8_t spec_version;
127 uint8_t reserved1;
128 uint8_t taac;
129 uint8_t nsac;
130 uint8_t max_bus_clk_freq;
131 uint16_t card_cmd_classes;
132 uint8_t max_read_blk_length;
133 uint8_t part_blk_read;
134 uint8_t write_blk_misalign;
135 uint8_t read_blk_misalign;
136 uint8_t dsr_implemented;
137 uint8_t reserved2;
138 uint32_t device_size;
139 uint8_t max_read_current_vdd_min;
140 uint8_t max_read_current_vdd_max;
141 uint8_t max_write_current_vdd_min;
142 uint8_t max_write_current_vdd_max;
143 uint8_t device_size_mult;
144 uint8_t erase_group_size;
145 uint8_t erase_group_size_mult;
146 uint8_t write_protect_group_size;
147 uint8_t write_protect_group_enable;
148 uint8_t manufacturer_default_ecc;
149 uint8_t write_speed_factor;
150 uint8_t max_write_blk_length;
151 uint8_t part_blk_write;
152 uint8_t reserved3;
153 uint8_t content_protect_app;
154 uint8_t file_format_group;
155 uint8_t copy_flag;
156 uint8_t permanent_write_protect;
157 uint8_t temp_write_protect;
158 uint8_t file_formart;
159 uint8_t ecc_code;
160 uint8_t csd_crc;
161 uint8_t reserved4;
162} sd_csd_struct_type;
163
167typedef struct
168{
169 uint8_t manufacturer_id;
170 uint16_t oem_app_id;
171 uint32_t product_name1;
172 uint8_t product_name2;
173 uint8_t product_reversion;
174 uint32_t product_sn;
175 uint8_t reserved1;
176 uint16_t manufact_date;
177 uint8_t cid_crc;
178 uint8_t reserved2;
179} sd_cid_struct_type;
180
184typedef enum
185{
186 SD_CARD_READY = ((uint32_t)0x00000001),
187 SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002),
188 SD_CARD_STANDBY = ((uint32_t)0x00000003),
189 SD_CARD_TRANSFER = ((uint32_t)0x00000004),
190 SD_CARD_SENDING = ((uint32_t)0x00000005),
191 SD_CARD_RECEIVING = ((uint32_t)0x00000006),
192 SD_CARD_PROGRAMMING = ((uint32_t)0x00000007),
193 SD_CARD_DISCONNECTED = ((uint32_t)0x00000008),
194 SD_CARD_ERROR = ((uint32_t)0x000000FF)
195} sd_card_state_type;
196
200typedef enum
201{
202 SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0,
203 SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1,
204 SDIO_HIGH_CAPACITY_SD_CARD = 2,
205 SDIO_MULTIMEDIA_CARD = 3,
206 SDIO_SECURE_DIGITAL_IO_CARD = 4,
207 SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5,
208 SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6,
209 SDIO_HIGH_CAPACITY_MMC_CARD = 7,
210 SDIO_SDIO_CARD = 8
211} sd_memory_card_type;
212
216typedef struct
217{
218 uint32_t sd_spec :4; /* [59:56] */
219 uint32_t scr_structure :4; /* [60:63] */
220 uint32_t sd_bus_width :4; /* [51:48] */
221 uint32_t sd_security :3; /* [52:54] */
222 uint32_t data_stat_after_erase :1; /* [55:55] */
223 uint32_t reserved1 :7; /* [46:40] */
224 uint32_t sd_spec3 :1; /* [47:47] */
225 uint32_t cmd20_support :1; /* [32:32] */
226 uint32_t cmd23_support :1; /* [33:33] */
227 uint32_t reserverd2 :6; /* [34:39] */
228 uint32_t reserverd3; /* [31:0] */
229} sd_scr_struct_type;
230
234typedef struct
235{
236 sd_csd_struct_type sd_csd_reg;
237 sd_cid_struct_type sd_cid_reg;
238 sd_scr_struct_type sd_scr_reg;
239 long long card_capacity;
240 uint32_t card_blk_size;
241 uint16_t rca;
242 uint8_t card_type;
243} sd_card_info_struct_type;
244
256#define SD_CMD_GO_IDLE_STATE ((uint8_t)0)
257#define SD_CMD_SEND_OP_COND ((uint8_t)1)
258#define SD_CMD_ALL_SEND_CID ((uint8_t)2)
259#define SD_CMD_SET_REL_ADDR ((uint8_t)3)
260#define SD_CMD_SET_DSR ((uint8_t)4)
261#define SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)
262#define SD_CMD_HS_SWITCH ((uint8_t)6)
263#define SD_CMD_SEL_DESEL_CARD ((uint8_t)7)
264#define SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)
265#define SD_CMD_SEND_CSD ((uint8_t)9)
266#define SD_CMD_SEND_CID ((uint8_t)10)
267#define SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)
268#define SD_CMD_STOP_TRANSMISSION ((uint8_t)12)
269#define SD_CMD_SEND_STATUS ((uint8_t)13)
270#define SD_CMD_HS_BUSTEST_READ ((uint8_t)14)
271#define SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)
272#define SD_CMD_SET_BLOCKLEN ((uint8_t)16)
273#define SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)
274#define SD_CMD_READ_MULT_BLOCK ((uint8_t)18)
275#define SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)
276#define SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)
277#define SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)
278#define SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)
279#define SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)
280#define SD_CMD_PROG_CID ((uint8_t)26)
281#define SD_CMD_PROG_CSD ((uint8_t)27)
282#define SD_CMD_SET_WRITE_PROT ((uint8_t)28)
283#define SD_CMD_CLR_WRITE_PROT ((uint8_t)29)
284#define SD_CMD_SEND_WRITE_PROT ((uint8_t)30)
285#define SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)
286#define SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)
287#define SD_CMD_ERASE_GRP_START ((uint8_t)35)
288#define SD_CMD_ERASE_GRP_END ((uint8_t)36)
289#define SD_CMD_ERASE ((uint8_t)38)
290#define SD_CMD_FAST_IO ((uint8_t)39)
291#define SD_CMD_GO_IRQ_STATE ((uint8_t)40)
292#define SD_CMD_LOCK_UNLOCK ((uint8_t)42)
293#define SD_CMD_APP_CMD ((uint8_t)55)
294#define SD_CMD_GEN_CMD ((uint8_t)56)
295#define SD_CMD_NO_CMD ((uint8_t)64)
296
301#define SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)
302#define SD_CMD_SD_APP_STAUS ((uint8_t)13)
303#define SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)
304#define SD_CMD_SD_APP_OP_COND ((uint8_t)41)
305#define SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)
306#define SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)
307#define SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)
308#define SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)
309
314#define SD_CMD_SD_APP_GET_MKB ((uint8_t)43)
315#define SD_CMD_SD_APP_GET_MID ((uint8_t)44)
316#define SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)
317#define SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)
318#define SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)
319#define SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)
320#define SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)
321#define SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)
322#define SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)
323#define SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)
324#define SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)
325
337#define NULL 0
338#define SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)
339#define SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)
340#define SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
341#define SDIO_FIFO_Address ((uint32_t)0x40018080)
342
354#define SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)
355#define SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)
356#define SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)
357#define SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)
358#define SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)
359#define SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)
360#define SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)
361#define SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)
362#define SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)
363#define SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)
364#define SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)
365#define SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)
366#define SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)
367#define SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)
368#define SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)
369#define SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)
370#define SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)
371#define SD_OCR_ERASE_RESET ((uint32_t)0x00002000)
372#define MMC_SWITCH_ERROR ((uint32_t)0x00000080)
373#define SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)
374#define SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)
375
379#define SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)
380#define SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)
381#define SD_R5_ERROR ((uint32_t)0x00000800)
382
386#define SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)
387#define SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)
388#define SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)
389#define SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)
390#define SD_HIGH_CAPACITY ((uint32_t)0x40000000)
391#define SD_STD_CAPACITY ((uint32_t)0x00000000)
392#define SD_CHECK_PATTERN ((uint32_t)0x000001AA)
393#define SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)
394#define SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)
395#define SD_ALLZERO ((uint32_t)0x00000000)
396#define SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)
397#define SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)
398#define SD_CARD_LOCKED ((uint32_t)0x02000000)
399#define SD_CARD_PROGRAMMING ((uint32_t)0x00000007)
400#define SD_CARD_RECEIVING ((uint32_t)0x00000006)
401#define SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
402#define SD_0TO7BITS ((uint32_t)0x000000FF)
403#define SD_8TO15BITS ((uint32_t)0x0000FF00)
404#define SD_16TO23BITS ((uint32_t)0x00FF0000)
405#define SD_24TO31BITS ((uint32_t)0xFF000000)
406#define SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)
407#define SD_HALFFIFO ((uint32_t)0x00000008)
408#define SD_HALFFIFOBYTES ((uint32_t)0x00000020)
409
421#define SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)
422#define SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)
423#define SD_CCCC_ERASE ((uint32_t)0x00000020)
424
436#define SDIO_SEND_IF_COND ((uint32_t)0x00000008)
437
449#define EXT_CSD_Command_set 0x0
450#define EXT_CSD_Set_bit 0x1
451#define EXT_CSD_Clear_byte 0x2
452#define EXT_CSD_Write_byte 0x3
453
454#define EXT_CSD_CMD_SET_NORMAL (1<<0)
455#define EXT_CSD_CMD_SET_SECURE (1<<1)
456#define EXT_CSD_CMD_SET_CPSECURE (1<<2)
457
461#define EXT_CSD_BUS_WIDTH 183
462#define EXT_CSD_HS_TIMING 185
463
472#define SDIO_INTR_STS_WRITE_MASK (SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_TXERRU_FLAG | \
473 SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
474#define SDIO_INTR_STS_READ_MASK (SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_RXERRO_FLAG | \
475 SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
480extern sd_card_info_struct_type sd_card_info;
481
486/* sd exported functions ----------------------------------------*/
487 sd_error_status_type sd_init(void);
488void sdio_clock_set(uint32_t clkdiv);
489 sd_error_status_type sd_power_on(void);
490 sd_error_status_type sd_power_off(void);
491 sd_error_status_type sd_card_init(void);
492 sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info);
493 sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode);
494 sd_error_status_type sd_device_mode_set(uint32_t mode);
495 sd_error_status_type sd_deselect_select(uint32_t addr);
496 sd_error_status_type sd_status_send(uint32_t *p_card_status);
497 sd_card_state_type sd_state_get(void);
498 sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks);
499 sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size);
500 sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks);
501 sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size);
502 sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks);
503 sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len);
504 sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len);
505 sd_error_status_type sd_irq_service(void);
506void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir);
507
520#ifdef __cplusplus
521}
522#endif
523
524#endif /* __AT32_SDIO_H */
at32f403.h
at32f403 header file
sd_card_info
sd_card_info_struct_type sd_card_info
Definition: sd_mmc_card/src/at32_sdio.c:46
dma_dir_type
dma_dir_type
dma direction type
Definition: at32f403_dma.h:125
sdio_bus_width_type
sdio_bus_width_type
sdio bus width
Definition: at32f403_sdio.h:137
sd_power_off
sd_error_status_type sd_power_off(void)
turns the sdio output signals off.
Definition: sd_mmc_card/src/at32_sdio.c:394
sd_irq_service
sd_error_status_type sd_irq_service(void)
allows to process all the interrupts that are high.
Definition: sd_mmc_card/src/at32_sdio.c:1780
sd_device_mode_set
sd_error_status_type sd_device_mode_set(uint32_t mode)
set sdio work mode.
Definition: sd_mmc_card/src/at32_sdio.c:777
sd_card_info_get
sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info)
returns information about specific card.
Definition: sd_mmc_card/src/at32_sdio.c:523
mmc_stream_write
sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1691
sd_card_init
sd_error_status_type sd_card_init(void)
intialises all cards or single card as the case may be card(s) come into standby state.
Definition: sd_mmc_card/src/at32_sdio.c:408
sd_block_read
sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma ...
Definition: sd_mmc_card/src/at32_sdio.c:1179
sd_deselect_select
sd_error_status_type sd_deselect_select(uint32_t addr)
selects od deselects the corresponding card.
Definition: sd_mmc_card/src/at32_sdio.c:798
sdio_clock_set
void sdio_clock_set(uint32_t clkdiv)
set sdio clock devision factor.
Definition: sd_mmc_card/src/at32_sdio.c:179
sd_blocks_erase
sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks)
erase continuous data block
Definition: sd_mmc_card/src/at32_sdio.c:1021
sd_mult_blocks_write
sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed ...
Definition: sd_mmc_card/src/at32_sdio.c:1480
sd_state_get
sd_card_state_type sd_state_get(void)
returns information about sd card.
Definition: sd_mmc_card/src/at32_sdio.c:2480
sd_dma_config
void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio
Definition: sd_mmc_card/src/at32_sdio.c:2697
sd_block_write
sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be manag...
Definition: sd_mmc_card/src/at32_sdio.c:1358
sd_status_send
sd_error_status_type sd_status_send(uint32_t *p_card_status)
read current card status.
Definition: sd_mmc_card/src/at32_sdio.c:2443
sd_init
sd_error_status_type sd_init(void)
initializes the sd card and put it into standby state (ready for data transfer).
Definition: sd_mmc_card/src/at32_sdio.c:70
mmc_stream_read
sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1644
sd_power_on
sd_error_status_type sd_power_on(void)
enquires cards about their operating voltage and configures clock controls.
Definition: sd_mmc_card/src/at32_sdio.c:194
sd_mult_blocks_read
sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mod...
Definition: sd_mmc_card/src/at32_sdio.c:1268
sd_wide_bus_operation_config
sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card.
Definition: sd_mmc_card/src/at32_sdio.c:734
sd_data_transfer_mode_type
sd_data_transfer_mode_type
Definition: sd_mmc_card/inc/at32_sdio.h:63
sd_error_status_type
sd_error_status_type
Definition: sd_mmc_card/inc/at32_sdio.h:72
sd_card_state_type
sd_card_state_type
Definition: sd_mmc_card/inc/at32_sdio.h:185
sd_memory_card_type
sd_memory_card_type
Definition: sd_mmc_card/inc/at32_sdio.h:201
SD_CARD_RECEIVING
#define SD_CARD_RECEIVING
Definition: sd_mmc_card/inc/at32_sdio.h:400
SD_CARD_PROGRAMMING
#define SD_CARD_PROGRAMMING
Definition: sd_mmc_card/inc/at32_sdio.h:399
SD_TRANSFER_DMA_MODE
@ SD_TRANSFER_DMA_MODE
Definition: sd_mmc_card/inc/at32_sdio.h:65
SD_TRANSFER_POLLING_MODE
@ SD_TRANSFER_POLLING_MODE
Definition: sd_mmc_card/inc/at32_sdio.h:64
SD_ERROR
@ SD_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:116
SD_WP_ERASE_SKIP
@ SD_WP_ERASE_SKIP
Definition: sd_mmc_card/inc/at32_sdio.h:96
SD_SDIO_UNKNOWN_FUNC
@ SD_SDIO_UNKNOWN_FUNC
Definition: sd_mmc_card/inc/at32_sdio.h:106
SD_DATA_FAIL
@ SD_DATA_FAIL
Definition: sd_mmc_card/inc/at32_sdio.h:75
SD_STREAM_WR_OVERRUN
@ SD_STREAM_WR_OVERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:94
SD_INVALID_PARAMETER
@ SD_INVALID_PARAMETER
Definition: sd_mmc_card/inc/at32_sdio.h:113
SD_CMD_FAIL
@ SD_CMD_FAIL
Definition: sd_mmc_card/inc/at32_sdio.h:74
SD_CMD_OUT_OF_RANGE
@ SD_CMD_OUT_OF_RANGE
Definition: sd_mmc_card/inc/at32_sdio.h:81
SD_UNSUPPORTED_HW
@ SD_UNSUPPORTED_HW
Definition: sd_mmc_card/inc/at32_sdio.h:115
SD_SDIO_FUNC_ERROR
@ SD_SDIO_FUNC_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:105
SD_INTERNAL_ERROR
@ SD_INTERNAL_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:109
SD_INVALID_ERASE_PARAM
@ SD_INVALID_ERASE_PARAM
Definition: sd_mmc_card/inc/at32_sdio.h:85
SD_GENERAL_UNKNOWN_ERROR
@ SD_GENERAL_UNKNOWN_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:92
SD_CARD_ECC_DISABLED
@ SD_CARD_ECC_DISABLED
Definition: sd_mmc_card/inc/at32_sdio.h:97
SD_CARD_CONTROLLER_ERR
@ SD_CARD_CONTROLLER_ERR
Definition: sd_mmc_card/inc/at32_sdio.h:91
SD_ERASE_RESET
@ SD_ERASE_RESET
Definition: sd_mmc_card/inc/at32_sdio.h:98
SD_CARD_ECC_ERROR
@ SD_CARD_ECC_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:90
SD_STREAM_RD_UNDERRUN
@ SD_STREAM_RD_UNDERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:93
SD_UNSUPPORTED_FEATURE
@ SD_UNSUPPORTED_FEATURE
Definition: sd_mmc_card/inc/at32_sdio.h:114
SD_TX_UNDERRUN
@ SD_TX_UNDERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:78
SD_ILLEGAL_CMD
@ SD_ILLEGAL_CMD
Definition: sd_mmc_card/inc/at32_sdio.h:89
SD_SDIO_FUNC_BUSY
@ SD_SDIO_FUNC_BUSY
Definition: sd_mmc_card/inc/at32_sdio.h:104
SD_CMD_CRC_ERROR
@ SD_CMD_CRC_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:88
SD_ADDR_OUT_OF_RANGE
@ SD_ADDR_OUT_OF_RANGE
Definition: sd_mmc_card/inc/at32_sdio.h:101
SD_RX_OVERRUN
@ SD_RX_OVERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:79
SD_REQ_PENDING
@ SD_REQ_PENDING
Definition: sd_mmc_card/inc/at32_sdio.h:111
SD_REQ_NOT_APPLICABLE
@ SD_REQ_NOT_APPLICABLE
Definition: sd_mmc_card/inc/at32_sdio.h:112
SD_SWITCH_ERROR
@ SD_SWITCH_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:102
SD_INVALID_VOLTRANGE
@ SD_INVALID_VOLTRANGE
Definition: sd_mmc_card/inc/at32_sdio.h:100
SD_SDIO_DISABLED
@ SD_SDIO_DISABLED
Definition: sd_mmc_card/inc/at32_sdio.h:103
SD_DATA_TIMEOUT
@ SD_DATA_TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:77
SD_ADDR_MISALIGNED
@ SD_ADDR_MISALIGNED
Definition: sd_mmc_card/inc/at32_sdio.h:82
SD_START_BIT_ERR
@ SD_START_BIT_ERR
Definition: sd_mmc_card/inc/at32_sdio.h:80
SD_LOCK_UNLOCK_ERROR
@ SD_LOCK_UNLOCK_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:87
SD_NOT_CONFIGURED
@ SD_NOT_CONFIGURED
Definition: sd_mmc_card/inc/at32_sdio.h:110
SD_CID_CSD_OVERWRITE
@ SD_CID_CSD_OVERWRITE
Definition: sd_mmc_card/inc/at32_sdio.h:95
SD_WR_PROTECT_VIOLATION
@ SD_WR_PROTECT_VIOLATION
Definition: sd_mmc_card/inc/at32_sdio.h:86
SD_CMD_RSP_TIMEOUT
@ SD_CMD_RSP_TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:76
SD_BLK_LEN_ERR
@ SD_BLK_LEN_ERR
Definition: sd_mmc_card/inc/at32_sdio.h:83
SD_OK
@ SD_OK
Definition: sd_mmc_card/inc/at32_sdio.h:117
SD_ERASE_SEQ_ERR
@ SD_ERASE_SEQ_ERR
Definition: sd_mmc_card/inc/at32_sdio.h:84
SD_AKE_SEQ_ERROR
@ SD_AKE_SEQ_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:99
SD_CARD_TRANSFER
@ SD_CARD_TRANSFER
Definition: sd_mmc_card/inc/at32_sdio.h:189
SD_CARD_IDENTIFICATION
@ SD_CARD_IDENTIFICATION
Definition: sd_mmc_card/inc/at32_sdio.h:187
SD_CARD_SENDING
@ SD_CARD_SENDING
Definition: sd_mmc_card/inc/at32_sdio.h:190
SD_CARD_STANDBY
@ SD_CARD_STANDBY
Definition: sd_mmc_card/inc/at32_sdio.h:188
SD_CARD_READY
@ SD_CARD_READY
Definition: sd_mmc_card/inc/at32_sdio.h:186
SD_CARD_DISCONNECTED
@ SD_CARD_DISCONNECTED
Definition: sd_mmc_card/inc/at32_sdio.h:193
SD_CARD_ERROR
@ SD_CARD_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:194
SDIO_SDIO_CARD
@ SDIO_SDIO_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:210
SDIO_HIGH_CAPACITY_SD_CARD
@ SDIO_HIGH_CAPACITY_SD_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:204
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
@ SDIO_SECURE_DIGITAL_IO_COMBO_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:208
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
@ SDIO_HIGH_SPEED_MULTIMEDIA_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:207
SDIO_STD_CAPACITY_SD_CARD_V1_1
@ SDIO_STD_CAPACITY_SD_CARD_V1_1
Definition: sd_mmc_card/inc/at32_sdio.h:202
SDIO_SECURE_DIGITAL_IO_CARD
@ SDIO_SECURE_DIGITAL_IO_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:206
SDIO_STD_CAPACITY_SD_CARD_V2_0
@ SDIO_STD_CAPACITY_SD_CARD_V2_0
Definition: sd_mmc_card/inc/at32_sdio.h:203
SDIO_MULTIMEDIA_CARD
@ SDIO_MULTIMEDIA_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:205
SDIO_HIGH_CAPACITY_MMC_CARD
@ SDIO_HIGH_CAPACITY_MMC_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:209
sd_card_info_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:235
sd_card_info_struct_type::sd_scr_reg
sd_scr_struct_type sd_scr_reg
Definition: sd_mmc_card/inc/at32_sdio.h:238
sd_card_info_struct_type::card_capacity
long long card_capacity
Definition: sd_mmc_card/inc/at32_sdio.h:239
sd_card_info_struct_type::sd_cid_reg
sd_cid_struct_type sd_cid_reg
Definition: sd_mmc_card/inc/at32_sdio.h:237
sd_card_info_struct_type::sd_csd_reg
sd_csd_struct_type sd_csd_reg
Definition: sd_mmc_card/inc/at32_sdio.h:236
sd_card_info_struct_type::card_blk_size
uint32_t card_blk_size
Definition: sd_mmc_card/inc/at32_sdio.h:240
sd_card_info_struct_type::rca
uint16_t rca
Definition: sd_mmc_card/inc/at32_sdio.h:241
sd_card_info_struct_type::card_type
uint8_t card_type
Definition: sd_mmc_card/inc/at32_sdio.h:242
sd_cid_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:168
sd_cid_struct_type::reserved1
uint8_t reserved1
Definition: sd_mmc_card/inc/at32_sdio.h:175
sd_cid_struct_type::product_name2
uint8_t product_name2
Definition: sd_mmc_card/inc/at32_sdio.h:172
sd_cid_struct_type::manufact_date
uint16_t manufact_date
Definition: sd_mmc_card/inc/at32_sdio.h:176
sd_cid_struct_type::cid_crc
uint8_t cid_crc
Definition: sd_mmc_card/inc/at32_sdio.h:177
sd_cid_struct_type::product_reversion
uint8_t product_reversion
Definition: sd_mmc_card/inc/at32_sdio.h:173
sd_cid_struct_type::manufacturer_id
uint8_t manufacturer_id
Definition: sd_mmc_card/inc/at32_sdio.h:169
sd_cid_struct_type::product_sn
uint32_t product_sn
Definition: sd_mmc_card/inc/at32_sdio.h:174
sd_cid_struct_type::product_name1
uint32_t product_name1
Definition: sd_mmc_card/inc/at32_sdio.h:171
sd_cid_struct_type::reserved2
uint8_t reserved2
Definition: sd_mmc_card/inc/at32_sdio.h:178
sd_cid_struct_type::oem_app_id
uint16_t oem_app_id
Definition: sd_mmc_card/inc/at32_sdio.h:170
sd_csd_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:124
sd_csd_struct_type::spec_version
uint8_t spec_version
Definition: sd_mmc_card/inc/at32_sdio.h:126
sd_csd_struct_type::max_write_current_vdd_max
uint8_t max_write_current_vdd_max
Definition: sd_mmc_card/inc/at32_sdio.h:142
sd_csd_struct_type::nsac
uint8_t nsac
Definition: sd_mmc_card/inc/at32_sdio.h:129
sd_csd_struct_type::card_cmd_classes
uint16_t card_cmd_classes
Definition: sd_mmc_card/inc/at32_sdio.h:131
sd_csd_struct_type::part_blk_read
uint8_t part_blk_read
Definition: sd_mmc_card/inc/at32_sdio.h:133
sd_csd_struct_type::read_blk_misalign
uint8_t read_blk_misalign
Definition: sd_mmc_card/inc/at32_sdio.h:135
sd_csd_struct_type::content_protect_app
uint8_t content_protect_app
Definition: sd_mmc_card/inc/at32_sdio.h:153
sd_csd_struct_type::write_speed_factor
uint8_t write_speed_factor
Definition: sd_mmc_card/inc/at32_sdio.h:149
sd_csd_struct_type::max_read_blk_length
uint8_t max_read_blk_length
Definition: sd_mmc_card/inc/at32_sdio.h:132
sd_csd_struct_type::max_bus_clk_freq
uint8_t max_bus_clk_freq
Definition: sd_mmc_card/inc/at32_sdio.h:130
sd_csd_struct_type::ecc_code
uint8_t ecc_code
Definition: sd_mmc_card/inc/at32_sdio.h:159
sd_csd_struct_type::reserved4
uint8_t reserved4
Definition: sd_mmc_card/inc/at32_sdio.h:161
sd_csd_struct_type::dsr_implemented
uint8_t dsr_implemented
Definition: sd_mmc_card/inc/at32_sdio.h:136
sd_csd_struct_type::max_read_current_vdd_min
uint8_t max_read_current_vdd_min
Definition: sd_mmc_card/inc/at32_sdio.h:139
sd_csd_struct_type::reserved2
uint8_t reserved2
Definition: sd_mmc_card/inc/at32_sdio.h:137
sd_csd_struct_type::erase_group_size_mult
uint8_t erase_group_size_mult
Definition: sd_mmc_card/inc/at32_sdio.h:145
sd_csd_struct_type::file_formart
uint8_t file_formart
Definition: sd_mmc_card/inc/at32_sdio.h:158
sd_csd_struct_type::temp_write_protect
uint8_t temp_write_protect
Definition: sd_mmc_card/inc/at32_sdio.h:157
sd_csd_struct_type::permanent_write_protect
uint8_t permanent_write_protect
Definition: sd_mmc_card/inc/at32_sdio.h:156
sd_csd_struct_type::max_read_current_vdd_max
uint8_t max_read_current_vdd_max
Definition: sd_mmc_card/inc/at32_sdio.h:140
sd_csd_struct_type::file_format_group
uint8_t file_format_group
Definition: sd_mmc_card/inc/at32_sdio.h:154
sd_csd_struct_type::device_size
uint32_t device_size
Definition: sd_mmc_card/inc/at32_sdio.h:138
sd_csd_struct_type::write_blk_misalign
uint8_t write_blk_misalign
Definition: sd_mmc_card/inc/at32_sdio.h:134
sd_csd_struct_type::csd_struct
uint8_t csd_struct
Definition: sd_mmc_card/inc/at32_sdio.h:125
sd_csd_struct_type::write_protect_group_enable
uint8_t write_protect_group_enable
Definition: sd_mmc_card/inc/at32_sdio.h:147
sd_csd_struct_type::max_write_current_vdd_min
uint8_t max_write_current_vdd_min
Definition: sd_mmc_card/inc/at32_sdio.h:141
sd_csd_struct_type::reserved1
uint8_t reserved1
Definition: sd_mmc_card/inc/at32_sdio.h:127
sd_csd_struct_type::max_write_blk_length
uint8_t max_write_blk_length
Definition: sd_mmc_card/inc/at32_sdio.h:150
sd_csd_struct_type::csd_crc
uint8_t csd_crc
Definition: sd_mmc_card/inc/at32_sdio.h:160
sd_csd_struct_type::write_protect_group_size
uint8_t write_protect_group_size
Definition: sd_mmc_card/inc/at32_sdio.h:146
sd_csd_struct_type::reserved3
uint8_t reserved3
Definition: sd_mmc_card/inc/at32_sdio.h:152
sd_csd_struct_type::taac
uint8_t taac
Definition: sd_mmc_card/inc/at32_sdio.h:128
sd_csd_struct_type::manufacturer_default_ecc
uint8_t manufacturer_default_ecc
Definition: sd_mmc_card/inc/at32_sdio.h:148
sd_csd_struct_type::part_blk_write
uint8_t part_blk_write
Definition: sd_mmc_card/inc/at32_sdio.h:151
sd_csd_struct_type::copy_flag
uint8_t copy_flag
Definition: sd_mmc_card/inc/at32_sdio.h:155
sd_csd_struct_type::erase_group_size
uint8_t erase_group_size
Definition: sd_mmc_card/inc/at32_sdio.h:144
sd_csd_struct_type::device_size_mult
uint8_t device_size_mult
Definition: sd_mmc_card/inc/at32_sdio.h:143
sd_scr_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:217
sd_scr_struct_type::cmd20_support
uint32_t cmd20_support
Definition: sd_mmc_card/inc/at32_sdio.h:225
sd_scr_struct_type::sd_bus_width
uint32_t sd_bus_width
Definition: sd_mmc_card/inc/at32_sdio.h:220
sd_scr_struct_type::reserverd3
uint32_t reserverd3
Definition: sd_mmc_card/inc/at32_sdio.h:228
sd_scr_struct_type::cmd23_support
uint32_t cmd23_support
Definition: sd_mmc_card/inc/at32_sdio.h:226
sd_scr_struct_type::sd_spec3
uint32_t sd_spec3
Definition: sd_mmc_card/inc/at32_sdio.h:224
sd_scr_struct_type::data_stat_after_erase
uint32_t data_stat_after_erase
Definition: sd_mmc_card/inc/at32_sdio.h:222
sd_scr_struct_type::reserved1
uint32_t reserved1
Definition: sd_mmc_card/inc/at32_sdio.h:223
sd_scr_struct_type::scr_structure
uint32_t scr_structure
Definition: sd_mmc_card/inc/at32_sdio.h:219
sd_scr_struct_type::sd_security
uint32_t sd_security
Definition: sd_mmc_card/inc/at32_sdio.h:221
sd_scr_struct_type::sd_spec
uint32_t sd_spec
Definition: sd_mmc_card/inc/at32_sdio.h:218
sd_scr_struct_type::reserverd2
uint32_t reserverd2
Definition: sd_mmc_card/inc/at32_sdio.h:227


AT32F403 Firmwary Library: at32_sdio.c Source File

  • sdio
  • sd_mmc_card
  • src
sd_mmc_card/src/at32_sdio.c
Go to the documentation of this file.
1
26#include "at32_sdio.h"
27#include "at32f403_board.h"
28
37 sdio_command_struct_type sdio_command_init_struct;
38 sdio_data_struct_type sdio_data_init_struct;
39
40static sd_memory_card_type card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1; /* sd card type */
41static uint32_t csd_table[4], cid_table[4], rca = 0; /* csd, sid, rca */
42static sd_data_transfer_mode_type device_mode = SD_TRANSFER_POLLING_MODE; /* working mode */
43static uint8_t stop_flag = 0; /* transmit stop flag */
44volatile sd_error_status_type transfer_error = SD_OK; /* transmit error flag */
45volatile uint8_t transfer_end = 0; /* transmit end flag */
46 sd_card_info_struct_type sd_card_info; /* sd card information */
47
48 sd_error_status_type command_error(void);
49 sd_error_status_type command_rsp1_error(uint8_t cmd);
50 sd_error_status_type command_rsp2_error(void);
51 sd_error_status_type command_rsp3_error(void);
52 sd_error_status_type command_rsp4_error(uint8_t cmd);
53 sd_error_status_type command_rsp5_error(uint8_t cmd);
54 sd_error_status_type command_rsp6_error(uint8_t cmd, uint16_t *p_rca);
55 sd_error_status_type command_rsp7_error(void);
56 sd_error_status_type sd_bus_wide_enable(confirm_state new_state);
57 sd_error_status_type mmc_switch(uint8_t set, uint8_t index, uint8_t value);
58 sd_error_status_type sd_switch(uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp);
59 sd_error_status_type check_card_programming(uint8_t *p_status);
60 sd_error_status_type speed_change(uint8_t speed);
61 sd_error_status_type scr_find(void);
62uint8_t convert_from_bytes_to_power_of_two(uint16_t number_of_bytes);
63
70 sd_error_status_type sd_init(void)
71{
72 uint16_t clkdiv = 0;
73 sd_error_status_type status = SD_OK;
74 gpio_init_type gpio_init_struct = {0};
75 uint8_t retry = 0;
76
77 /* gpioc and gpiod periph clock enable */
78 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
79 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
80
81 /* sdio periph clock enable */
82 crm_periph_clock_enable(CRM_SDIO1_PERIPH_CLOCK, TRUE);
83
84 /* configure pc.08, pc.09, pc.10, pc.11, pc.12 pin: d0, d1, d2, d3, clk pin */
85 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
86 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
87 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
88 gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10 | GPIO_PINS_11 | GPIO_PINS_12;
89 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
90 gpio_init(GPIOC, &gpio_init_struct);
91
92 /* configure pd.02 cmd line */
93 gpio_init_struct.gpio_pins = GPIO_PINS_2;
94 gpio_init(GPIOD, &gpio_init_struct);
95
96 retry = 3;
97 while(retry--){
98 /* reset sdio */
99 sdio_reset(SDIOx);
100 /* power on */
101 status = sd_power_on();
102
103 if(status == SD_OK)
104 break;
105 }
106
107 if(status == SD_OK)
108 {
109 /* sdio card initialize */
110 status = sd_card_init();
111 }
112
113 if(status == SD_OK)
114 {
115 /* get card information*/
116 status = sd_card_info_get(&sd_card_info);
117 }
118
119 if((SDIO_MULTIMEDIA_CARD == card_type) && (sd_card_info.sd_csd_reg.spec_version >= 4))
120 {
121 card_type = SDIO_HIGH_SPEED_MULTIMEDIA_CARD;
122 }
123
124 if(status == SD_OK)
125 {
126 /* select card */
127 status = sd_deselect_select((uint32_t)(sd_card_info.rca << 16));
128 }
129
130 if(status == SD_OK && ((SDIO_STD_CAPACITY_SD_CARD_V1_1 == card_type) || (SDIO_STD_CAPACITY_SD_CARD_V2_0 == card_type) || \
131 (SDIO_SECURE_DIGITAL_IO_COMBO_CARD == card_type) || (SDIO_HIGH_CAPACITY_SD_CARD == card_type)))
132 {
133 status = scr_find();
134 }
135
136 if(status == SD_OK)
137 {
138 /* set normal speed */
139 status = speed_change(0);
140 }
141
142 if((status == SD_OK) || (card_type == SDIO_MULTIMEDIA_CARD))
143 {
144 if(sd_card_info.card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1 || sd_card_info.card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0)
145 {
146 /* set sdio_ck to 4mhz */
147 clkdiv = system_core_clock / 4000000;
148
149 if(clkdiv >= 2)
150 {
151 clkdiv -= 2;
152 }
153 }
154 else
155 {
156 /* set sdio_ck to 4mhz */
157 clkdiv = system_core_clock / 4000000;
158
159 if(clkdiv >= 2)
160 {
161 clkdiv -= 2;
162 }
163 }
164 /* set sdio clock divider */
165 sdio_clock_set(clkdiv);
166
167 /* set transfer mode */
168 status = sd_device_mode_set(SD_TRANSFER_DMA_MODE);
169 }
170
171 return status;
172}
173
179void sdio_clock_set(uint32_t clk_div)
180{
181 /* config clock divide [7:0] */
182 SDIOx->clkctrl_bit.clkdiv_l = (clk_div & 0xFF);
183
184 /* config clock divide [9:8] */
185 SDIOx->clkctrl_bit.clkdiv_h = ((clk_div & 0x300) >> 8);
186}
187
194 sd_error_status_type sd_power_on(void)
195{
196 uint8_t retry = 0;
197 sd_error_status_type status = SD_OK;
198 uint32_t response = 0, count = 0, valid_voltage = 0, clk_psc;
199 uint32_t sd_type = SD_STD_CAPACITY;
200
201 /* sdio_ck is less than 400KHz in initialization stage, set to 200KHz */
202 clk_psc = (system_core_clock / 200000) - 2;
203
204 if(clk_psc > 0x3FF)
205 {
206 clk_psc = 0x3FF;
207 }
208
209 /* config sdio clock divide and edge phase */
210 sdio_clock_config(SDIOx, clk_psc, SDIO_CLOCK_EDGE_FALLING);
211 /* config sdio bus width */
212 sdio_bus_width_config(SDIOx, SDIO_BUS_WIDTH_D1);
213 /* disable flow control */
214 sdio_flow_control_enable(SDIOx, FALSE);
215 /* disable clock bypass */
216 sdio_clock_bypass(SDIOx, FALSE);
217 /* disable power saving mode */
218 sdio_power_saving_mode_enable(SDIOx, FALSE);
219
220 /* sdio power on */
221 sdio_power_set(SDIOx, SDIO_POWER_ON);
222 /* enable to output sdio_ck */
223 sdio_clock_enable(SDIOx, TRUE);
224
225 for(retry = 0; retry < 5; retry++)
226 {
227 /* send cmd0, get in idle stage */
228 sdio_command_init_struct.argument = 0x0;
229 sdio_command_init_struct.cmd_index = SD_CMD_GO_IDLE_STATE;
230 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_NO;
231 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
232
233 /* sdio command config */
234 sdio_command_config(SDIOx, &sdio_command_init_struct);
235 /* enable ccsm */
236 sdio_command_state_machine_enable(SDIOx, TRUE);
237
238 /* get command status */
239 status = command_error();
240 }
241
242 /* send cmd8, check card interface feature */
243 sdio_command_init_struct.argument = SD_CHECK_PATTERN;
244 sdio_command_init_struct.cmd_index = SDIO_SEND_IF_COND;
245 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
246 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
247
248 /* sdio command config */
249 sdio_command_config(SDIOx, &sdio_command_init_struct);
250 /* enable ccsm */
251 sdio_command_state_machine_enable(SDIOx, TRUE);
252
253 /* waiting R7 */
254 status = command_rsp7_error();
255
256 if(status == SD_OK)
257 {
258 /* set card type and sd type */
259 card_type = SDIO_STD_CAPACITY_SD_CARD_V2_0;
260 sd_type = SD_HIGH_CAPACITY;
261 }
262
263 /* send cmd55, check sd version */
264 sdio_command_init_struct.argument = 0x00;
265 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
266 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
267 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
268
269 /* sdio command config */
270 sdio_command_config(SDIOx, &sdio_command_init_struct);
271 /* enable ccsm */
272 sdio_command_state_machine_enable(SDIOx, TRUE);
273
274 /* waiting R1 */
275 status = command_rsp1_error(SD_CMD_APP_CMD);
276
277 /* check sd card or mmc card */
278 if(SD_OK == status)
279 {
280 /* send acmd41, check voltage operation range */
281 while((!valid_voltage) && (count < SD_MAX_VOLT_TRIAL))
282 {
283 delay_ms(10);
284
285 /* send cmd55 before acmd41 */
286 sdio_command_init_struct.argument = 0x00;
287 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
288 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
289 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
290
291 /* sdio command config */
292 sdio_command_config(SDIOx, &sdio_command_init_struct);
293 /* enable ccsm */
294 sdio_command_state_machine_enable(SDIOx, TRUE);
295
296 /* waiting R1 */
297 status = command_rsp1_error(SD_CMD_APP_CMD);
298
299 /* if any errors occured, return status */
300 if(status != SD_OK)
301 {
302 return status;
303 }
304
305 /* send acmd41 */
306 sdio_command_init_struct.argument = SD_VOLTAGE_WINDOW_SD | sd_type;
307 sdio_command_init_struct.cmd_index = SD_CMD_SD_APP_OP_COND;
308 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
309 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
310
311 /* sdio command config */
312 sdio_command_config(SDIOx, &sdio_command_init_struct);
313 /* enable ccsm */
314 sdio_command_state_machine_enable(SDIOx, TRUE);
315
316 /* waiting R3 */
317 status = command_rsp3_error();
318
319 /* if any errors occured, return status */
320 if(status != SD_OK)
321 {
322 return status;
323 }
324
325 /* get response1 */
326 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
327
328 /* check sd card power on stage is success or not */
329 valid_voltage = (((response >> 31) == 1) ? 1 : 0);
330 count++;
331 }
332
333 if(count >= SD_MAX_VOLT_TRIAL)
334 {
335 status = SD_INVALID_VOLTRANGE;
336 return status;
337 }
338
339 if(response &= SD_HIGH_CAPACITY)
340 {
341 card_type = SDIO_HIGH_CAPACITY_SD_CARD;
342 }
343 }
344 /* mmc card */
345 else
346 {
347 /* send cmd1 */
348 while((!valid_voltage) && (count < SD_MAX_VOLT_TRIAL))
349 {
350 delay_ms(10);
351
352 sdio_command_init_struct.argument = SD_VOLTAGE_WINDOW_MMC;
353 sdio_command_init_struct.cmd_index = SD_CMD_SEND_OP_COND;
354 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
355 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
356
357 /* sdio command config */
358 sdio_command_config(SDIOx, &sdio_command_init_struct);
359 /* enable ccsm */
360 sdio_command_state_machine_enable(SDIOx, TRUE);
361
362 /* waiting R3 */
363 status = command_rsp3_error();
364
365 if(status != SD_OK)
366 {
367 return status;
368 }
369
370 /* get response1 */
371 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
372
373 valid_voltage = (((response >> 31) == 1) ? 1 : 0);
374 count++;
375 }
376
377 if(count >= SD_MAX_VOLT_TRIAL)
378 {
379 status = SD_INVALID_VOLTRANGE;
380 return status;
381 }
382
383 card_type = SDIO_MULTIMEDIA_CARD;
384 }
385
386 return(status);
387}
388
394 sd_error_status_type sd_power_off(void)
395{
396 /* sdio power off */
397 sdio_power_set(SDIOx, SDIO_POWER_OFF);
398
399 return SD_OK;
400}
401
408 sd_error_status_type sd_card_init(void)
409{
410 sd_error_status_type status = SD_OK;
411 uint16_t rca_temp = 0x01;
412
413 /* check power status */
414 if(SDIO_POWER_OFF == sdio_power_status_get(SDIOx))
415 {
416 return SD_REQ_NOT_APPLICABLE;
417 }
418
419 /* check is secure_digital_io_card or not */
420 if(SDIO_SECURE_DIGITAL_IO_CARD != card_type)
421 {
422 /* send cmd2, get cid register */
423 sdio_command_init_struct.argument = 0x0;
424 sdio_command_init_struct.cmd_index = SD_CMD_ALL_SEND_CID;
425 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_LONG;
426 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
427
428 /* sdio command config */
429 sdio_command_config(SDIOx, &sdio_command_init_struct);
430 /* enable ccsm */
431 sdio_command_state_machine_enable(SDIOx, TRUE);
432
433 status = command_rsp2_error();
434 if(status != SD_OK)
435 {
436 return status;
437 }
438
439 cid_table[0] = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
440 cid_table[1] = sdio_response_get(SDIOx, SDIO_RSP2_INDEX);
441 cid_table[2] = sdio_response_get(SDIOx, SDIO_RSP3_INDEX);
442 cid_table[3] = sdio_response_get(SDIOx, SDIO_RSP4_INDEX);
443 }
444
445 /* check card type */
446 if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || \
447 (card_type == SDIO_SECURE_DIGITAL_IO_COMBO_CARD) || (card_type == SDIO_HIGH_CAPACITY_SD_CARD))
448 {
449 /* send cmd3, get rca */
450 sdio_command_init_struct.argument = 0x00;
451 sdio_command_init_struct.cmd_index = SD_CMD_SET_REL_ADDR;
452 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
453 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
454
455 /* sdio command config */
456 sdio_command_config(SDIOx, &sdio_command_init_struct);
457 /* enable ccsm */
458 sdio_command_state_machine_enable(SDIOx, TRUE);
459
460 status = command_rsp6_error(SD_CMD_SET_REL_ADDR, &rca_temp);
461 if(status != SD_OK)
462 {
463 return status;
464 }
465 }
466
467 /* mmc card */
468 if(card_type == SDIO_MULTIMEDIA_CARD)
469 {
470 /* send cmd3 */
471 sdio_command_init_struct.argument = (uint32_t)(rca_temp << 16);
472 sdio_command_init_struct.cmd_index = SD_CMD_SET_REL_ADDR;
473 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
474 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
475
476 /* sdio command config */
477 sdio_command_config(SDIOx, &sdio_command_init_struct);
478 /* enable ccsm */
479 sdio_command_state_machine_enable(SDIOx, TRUE);
480
481 status = command_rsp2_error();
482 if(status != SD_OK)
483 {
484 return status;
485 }
486 }
487
488 /* check is secure_digital_io_card or not */
489 if(card_type != SDIO_SECURE_DIGITAL_IO_CARD)
490 {
491 rca = rca_temp;
492 sdio_command_init_struct.argument = (uint32_t)(rca << 16);
493 sdio_command_init_struct.cmd_index = SD_CMD_SEND_CSD;
494 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_LONG;
495 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
496
497 /* sdio command config */
498 sdio_command_config(SDIOx, &sdio_command_init_struct);
499 /* enable ccsm */
500 sdio_command_state_machine_enable(SDIOx, TRUE);
501
502 status = command_rsp2_error();
503 if(status != SD_OK)
504 {
505 return status;
506 }
507
508 csd_table[0] = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
509 csd_table[1] = sdio_response_get(SDIOx, SDIO_RSP2_INDEX);
510 csd_table[2] = sdio_response_get(SDIOx, SDIO_RSP3_INDEX);
511 csd_table[3] = sdio_response_get(SDIOx, SDIO_RSP4_INDEX);
512 }
513
514 return SD_OK;
515}
516
523 sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info)
524{
525 sd_error_status_type status = SD_OK;
526 uint8_t tmp = 0;
527
528 card_info->card_type = (uint8_t)card_type;
529 card_info->rca = (uint16_t)rca;
530
531 /* byte 0 */
532 tmp = (uint8_t)((csd_table[0] & 0xFF000000) >> 24);
533 card_info->sd_csd_reg.csd_struct = (tmp & 0xC0) >> 6;
534 card_info->sd_csd_reg.spec_version = (tmp & 0x3C) >> 2;
535 card_info->sd_csd_reg.reserved1 = tmp & 0x03;
536
537 /* byte 1 */
538 tmp = (uint8_t)((csd_table[0] & 0x00FF0000) >> 16);
539 card_info->sd_csd_reg.taac = tmp;
540
541 /* byte 2 */
542 tmp = (uint8_t)((csd_table[0] & 0x0000FF00) >> 8);
543 card_info->sd_csd_reg.nsac = tmp;
544
545 /* byte 3 */
546 tmp = (uint8_t)(csd_table[0] & 0x000000FF);
547 card_info->sd_csd_reg.max_bus_clk_freq = tmp;
548
549 /* byte 4 */
550 tmp = (uint8_t)((csd_table[1] & 0xFF000000) >> 24);
551 card_info->sd_csd_reg.card_cmd_classes = tmp << 4;
552
553 /* byte 5 */
554 tmp = (uint8_t)((csd_table[1] & 0x00FF0000) >> 16);
555 card_info->sd_csd_reg.card_cmd_classes |= (tmp & 0xF0) >> 4;
556 card_info->sd_csd_reg.max_read_blk_length = tmp & 0x0F;
557
558 /* byte 6 */
559 tmp = (uint8_t)((csd_table[1] & 0x0000FF00) >> 8);
560 card_info->sd_csd_reg.part_blk_read = (tmp & 0x80) >> 7;
561 card_info->sd_csd_reg.write_blk_misalign = (tmp & 0x40) >> 6;
562 card_info->sd_csd_reg.read_blk_misalign = (tmp & 0x20) >> 5;
563 card_info->sd_csd_reg.dsr_implemented = (tmp & 0x10) >> 4;
564 card_info->sd_csd_reg.reserved2 = 0; /* reserved */
565
566 if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || (card_type == SDIO_MULTIMEDIA_CARD))
567 {
568 card_info->sd_csd_reg.device_size = (tmp & 0x03) << 10;
569
570 /* byte 7 */
571 tmp = (uint8_t)(csd_table[1] & 0x000000FF);
572 card_info->sd_csd_reg.device_size |= (tmp) << 2;
573
574 /* byte 8 */
575 tmp = (uint8_t)((csd_table[2] & 0xFF000000) >> 24);
576 card_info->sd_csd_reg.device_size |= (tmp & 0xC0) >> 6;
577
578 card_info->sd_csd_reg.max_read_current_vdd_min = (tmp & 0x38) >> 3;
579 card_info->sd_csd_reg.max_read_current_vdd_max = (tmp & 0x07);
580
581 /* byte 9 */
582 tmp = (uint8_t)((csd_table[2] & 0x00FF0000) >> 16);
583 card_info->sd_csd_reg.max_write_current_vdd_min = (tmp & 0xE0) >> 5;
584 card_info->sd_csd_reg.max_write_current_vdd_max = (tmp & 0x1C) >> 2;
585 card_info->sd_csd_reg.device_size_mult = (tmp & 0x03) << 1;
586 /* byte 10 */
587 tmp = (uint8_t)((csd_table[2] & 0x0000FF00) >> 8);
588 card_info->sd_csd_reg.device_size_mult |= (tmp & 0x80) >> 7;
589
590 card_info->card_capacity = (card_info->sd_csd_reg.device_size + 1) ;
591 card_info->card_capacity *= (1 << (card_info->sd_csd_reg.device_size_mult + 2));
592 card_info->card_blk_size = 1 << (card_info->sd_csd_reg.max_read_blk_length);
593 card_info->card_capacity *= card_info->card_blk_size;
594 }
595 else if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
596 {
597 /* byte 7 */
598 tmp = (uint8_t)(csd_table[1] & 0x000000FF);
599 card_info->sd_csd_reg.device_size = (tmp & 0x3F) << 16;
600
601 /* byte 8 */
602 tmp = (uint8_t)((csd_table[2] & 0xFF000000) >> 24);
603
604 card_info->sd_csd_reg.device_size |= (tmp << 8);
605
606 /* byte 9 */
607 tmp = (uint8_t)((csd_table[2] & 0x00FF0000) >> 16);
608
609 card_info->sd_csd_reg.device_size |= (tmp);
610
611 /* byte 10 */
612 tmp = (uint8_t)((csd_table[2] & 0x0000FF00) >> 8);
613
614 card_info->card_capacity = (uint64_t)(card_info->sd_csd_reg.device_size + 1) * 512 * 1024;
615 card_info->card_blk_size = 512;
616 }
617
618
619 card_info->sd_csd_reg.erase_group_size = (tmp & 0x40) >> 6;
620 card_info->sd_csd_reg.erase_group_size_mult = (tmp & 0x3F) << 1;
621
622 /* byte 11 */
623 tmp = (uint8_t)(csd_table[2] & 0x000000FF);
624 card_info->sd_csd_reg.erase_group_size_mult |= (tmp & 0x80) >> 7;
625 card_info->sd_csd_reg.write_protect_group_size = (tmp & 0x7F);
626
627 /* byte 12 */
628 tmp = (uint8_t)((csd_table[3] & 0xFF000000) >> 24);
629 card_info->sd_csd_reg.write_protect_group_enable = (tmp & 0x80) >> 7;
630 card_info->sd_csd_reg.manufacturer_default_ecc = (tmp & 0x60) >> 5;
631 card_info->sd_csd_reg.write_speed_factor = (tmp & 0x1C) >> 2;
632 card_info->sd_csd_reg.max_write_blk_length = (tmp & 0x03) << 2;
633
634 /* byte 13 */
635 tmp = (uint8_t)((csd_table[3] & 0x00FF0000) >> 16);
636 card_info->sd_csd_reg.max_write_blk_length |= (tmp & 0xC0) >> 6;
637 card_info->sd_csd_reg.part_blk_write = (tmp & 0x20) >> 5;
638 card_info->sd_csd_reg.reserved3 = 0;
639 card_info->sd_csd_reg.content_protect_app = (tmp & 0x01);
640
641 /* byte 14 */
642 tmp = (uint8_t)((csd_table[3] & 0x0000FF00) >> 8);
643 card_info->sd_csd_reg.file_format_group = (tmp & 0x80) >> 7;
644 card_info->sd_csd_reg.copy_flag = (tmp & 0x40) >> 6;
645 card_info->sd_csd_reg.permanent_write_protect = (tmp & 0x20) >> 5;
646 card_info->sd_csd_reg.temp_write_protect = (tmp & 0x10) >> 4;
647 card_info->sd_csd_reg.file_formart = (tmp & 0x0C) >> 2;
648 card_info->sd_csd_reg.ecc_code = (tmp & 0x03);
649
650 /* byte 15 */
651 tmp = (uint8_t)(csd_table[3] & 0x000000FF);
652 card_info->sd_csd_reg.csd_crc = (tmp & 0xFE) >> 1;
653 card_info->sd_csd_reg.reserved4 = 1;
654
655 /* byte 0 */
656 tmp = (uint8_t)((cid_table[0] & 0xFF000000) >> 24);
657 card_info->sd_cid_reg.manufacturer_id = tmp;
658
659 /* byte 1 */
660 tmp = (uint8_t)((cid_table[0] & 0x00FF0000) >> 16);
661 card_info->sd_cid_reg.oem_app_id = tmp << 8;
662
663 /* byte 2 */
664 tmp = (uint8_t)((cid_table[0] & 0x000000FF00) >> 8);
665 card_info->sd_cid_reg.oem_app_id |= tmp;
666
667 /* byte 3 */
668 tmp = (uint8_t)(cid_table[0] & 0x000000FF);
669 card_info->sd_cid_reg.product_name1 = tmp << 24;
670
671 /* byte 4 */
672 tmp = (uint8_t)((cid_table[1] & 0xFF000000) >> 24);
673 card_info->sd_cid_reg.product_name1 |= tmp << 16;
674
675 /* byte 5 */
676 tmp = (uint8_t)((cid_table[1] & 0x00FF0000) >> 16);
677 card_info->sd_cid_reg.product_name1 |= tmp << 8;
678
679 /* byte 6 */
680 tmp = (uint8_t)((cid_table[1] & 0x0000FF00) >> 8);
681 card_info->sd_cid_reg.product_name1 |= tmp;
682
683 /* byte 7 */
684 tmp = (uint8_t)(cid_table[1] & 0x000000FF);
685 card_info->sd_cid_reg.product_name2 = tmp;
686
687 /* byte 8 */
688 tmp = (uint8_t)((cid_table[2] & 0xFF000000) >> 24);
689 card_info->sd_cid_reg.product_reversion = tmp;
690
691 /* byte 9 */
692 tmp = (uint8_t)((cid_table[2] & 0x00FF0000) >> 16);
693 card_info->sd_cid_reg.product_sn = tmp << 24;
694
695 /* byte 10 */
696 tmp = (uint8_t)((cid_table[2] & 0x0000FF00) >> 8);
697 card_info->sd_cid_reg.product_sn |= tmp << 16;
698
699 /* byte 11 */
700 tmp = (uint8_t)(cid_table[2] & 0x000000FF);
701 card_info->sd_cid_reg.product_sn |= tmp << 8;
702
703 /* byte 12 */
704 tmp = (uint8_t)((cid_table[3] & 0xFF000000) >> 24);
705 card_info->sd_cid_reg.product_sn |= tmp;
706
707 /* byte 13 */
708 tmp = (uint8_t)((cid_table[3] & 0x00FF0000) >> 16);
709 card_info->sd_cid_reg.reserved1 |= (tmp & 0xF0) >> 4;
710 card_info->sd_cid_reg.manufact_date = (tmp & 0x0F) << 8;
711
712 /* byte 14 */
713 tmp = (uint8_t)((cid_table[3] & 0x0000FF00) >> 8);
714 card_info->sd_cid_reg.manufact_date |= tmp;
715
716 /* byte 15 */
717 tmp = (uint8_t)(cid_table[3] & 0x000000FF);
718 card_info->sd_cid_reg.cid_crc = (tmp & 0xFE) >> 1;
719 card_info->sd_cid_reg.reserved2 = 1;
720
721 return(status);
722}
723
734 sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode)
735{
736 sd_error_status_type status = SD_OK;
737
738 if((card_type == SDIO_MULTIMEDIA_CARD) || (card_type == SDIO_HIGH_SPEED_MULTIMEDIA_CARD))
739 {
740 status = mmc_switch(EXT_CSD_CMD_SET_NORMAL, EXT_CSD_BUS_WIDTH, (uint8_t)mode);
741 }
742 else if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || \
743 (card_type == SDIO_HIGH_CAPACITY_SD_CARD))
744 {
745 if(mode >= 2)
746 {
747 /* not support D8 mode */
748 return SD_UNSUPPORTED_FEATURE;
749 }
750
751 if(SDIO_BUS_WIDTH_D4 == mode)
752 {
753 status = sd_bus_wide_enable(TRUE);
754 }
755 else
756 {
757 status = sd_bus_wide_enable(FALSE);
758 }
759 }
760
761 if(status == SD_OK)
762 {
763 sdio_bus_width_config(SDIOx, mode);
764 }
765
766 return status;
767}
768
777 sd_error_status_type sd_device_mode_set(uint32_t mode)
778{
779 sd_error_status_type status = SD_OK;
780
781 if((mode == SD_TRANSFER_DMA_MODE) || (mode == SD_TRANSFER_POLLING_MODE))
782 {
783 device_mode = (sd_data_transfer_mode_type)mode;
784 }
785 else
786 {
787 status = SD_INVALID_PARAMETER;
788 }
789
790 return status;
791}
792
798 sd_error_status_type sd_deselect_select(uint32_t addr)
799{
800 /* send cmd7, select card */
801 sdio_command_init_struct.argument = addr;
802 sdio_command_init_struct.cmd_index = SD_CMD_SEL_DESEL_CARD;
803 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
804 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_INT;
805
806 /* sdio command config */
807 sdio_command_config(SDIOx, &sdio_command_init_struct);
808 /* enable ccsm */
809 sdio_command_state_machine_enable(SDIOx, TRUE);
810
811 return command_rsp1_error(SD_CMD_SEL_DESEL_CARD);
812}
813
821 sd_error_status_type sdio_command_data_send(sdio_command_struct_type *sdio_cmd_init_t, \
822 sdio_data_struct_type* sdio_data_init_t, uint32_t *buf)
823{
824 sd_error_status_type status = SD_OK;
825 uint32_t count = 0;
826 uint32_t timeout = SDIO_DATATIMEOUT;
827 uint32_t length = 0;
828
829 if(buf == NULL)
830 {
831 return SD_INVALID_PARAMETER;
832 }
833 /* clear dtctrl register */
834 SDIOx->dtcnt = 0x0;
835
836 /* sdio command config */
837 sdio_data_config(SDIOx, sdio_data_init_t);
838 /* enable dcsm */
839 sdio_data_state_machine_enable(SDIOx, TRUE);
840
841 length = sdio_data_init_t->data_length;
842
843 if(device_mode == SD_TRANSFER_DMA_MODE)
844 {
845 if(sdio_data_init_t->transfer_direction == SDIO_DATA_TRANSFER_TO_CONTROLLER)
846 {
847 sd_dma_config(buf, length, DMA_DIR_PERIPHERAL_TO_MEMORY);
848 SDIOx->inten |= SDIO_INTR_STS_READ_MASK;
849 transfer_error = SD_OK;
850 transfer_end = 0;
851 sdio_dma_enable(SDIOx, TRUE);
852 }
853 }
854
855 /* sdio command config */
856 sdio_command_config(SDIOx, sdio_cmd_init_t);
857 /* enable ccsm */
858 sdio_command_state_machine_enable(SDIOx, TRUE);
859
860 status = command_rsp1_error(sdio_cmd_init_t->cmd_index);
861 if(status != SD_OK)
862 {
863 return status;
864 }
865
866 /* polling mode */
867 if(device_mode == SD_TRANSFER_POLLING_MODE)
868 {
869 if(SDIO_DATA_TRANSFER_TO_CONTROLLER == sdio_data_init_t->transfer_direction)
870 {
871 while(!(SDIOx->sts & (SDIO_INTR_STS_READ_MASK)))
872 {
873 if(sdio_flag_get(SDIOx, SDIO_RXBUFH_FLAG) != RESET)
874 {
875 for(count = 0; count < 8; count++, buf++)
876 {
877 *buf = sdio_data_read(SDIOx);
878 }
879
880 timeout = 0x7FFFFF;
881 }
882 else
883 {
884 if(0 == timeout)
885 {
886 sd_init();
887 return SD_DATA_TIMEOUT;
888 }
889
890 timeout--;
891 }
892 }
893
894 while(sdio_flag_get(SDIOx, SDIO_RXBUF_FLAG) != RESET)
895 {
896 *buf = sdio_data_read(SDIOx);
897 buf++;
898 }
899 }
900 else
901 {
902 while(!(SDIOx->sts & SDIO_INTR_STS_WRITE_MASK))
903 {
904 if(sdio_flag_get(SDIOx, SDIO_TXBUFH_FLAG) != RESET)
905 {
906 for(count = 0; count < 8 && length > 0; count++, buf++, length -= 4)
907 {
908 sdio_data_write(SDIOx, *buf);
909 }
910
911 timeout = 0x3FFFFFFF;
912 }
913 else
914 {
915 if(timeout == 0)
916 {
917 sd_init();
918 return SD_DATA_TIMEOUT;
919 }
920
921 timeout--;
922 }
923 }
924 }
925 /* data timeout */
926 if(sdio_flag_get(SDIOx, SDIO_DTTIMEOUT_FLAG) != RESET)
927 {
928 sdio_flag_clear(SDIOx, SDIO_DTTIMEOUT_FLAG);
929 return SD_DATA_TIMEOUT;
930 }
931 /* crc error */
932 else if(sdio_flag_get(SDIOx, SDIO_DTFAIL_FLAG) != RESET)
933 {
934 sdio_flag_clear(SDIOx, SDIO_DTFAIL_FLAG);
935 return SD_DATA_FAIL;
936 }
937 /* over run error */
938 else if(sdio_flag_get(SDIOx, SDIO_RXERRO_FLAG) != RESET)
939 {
940 sdio_flag_clear(SDIOx, SDIO_RXERRO_FLAG);
941 return SD_RX_OVERRUN;
942 }
943 /* under run error */
944 else if(sdio_flag_get(SDIOx, SDIO_TXERRU_FLAG) != RESET)
945 {
946 sdio_flag_clear(SDIOx, SDIO_TXERRU_FLAG);
947 return SD_TX_UNDERRUN;
948 }
949 /* start bit error */
950 else if(sdio_flag_get(SDIOx, SDIO_SBITERR_FLAG) != RESET)
951 {
952 sdio_flag_clear(SDIOx, SDIO_SBITERR_FLAG);
953 return SD_START_BIT_ERR;
954 }
955 /* data transfer complete */
956 if((stop_flag == 1) && (sdio_flag_get(SDIOx, SDIO_DTCMPL_FLAG) != RESET))
957 {
958 /* send cmd12, stop transmission */
959 sdio_cmd_init_t->argument = 0;
960 sdio_cmd_init_t->cmd_index = SD_CMD_STOP_TRANSMISSION;
961 sdio_cmd_init_t->rsp_type = SDIO_RESPONSE_SHORT;
962 sdio_cmd_init_t->wait_type = SDIO_WAIT_FOR_NO;
963
964 /* sdio command config */
965 sdio_command_config(SDIOx, sdio_cmd_init_t);
966 /* enable ccsm */
967 sdio_command_state_machine_enable(SDIOx, TRUE);
968
969 status = command_rsp1_error(SD_CMD_STOP_TRANSMISSION);
970
971 if(status != SD_OK)
972 {
973 return status;
974 }
975 }
976
977 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
978 }
979 else if(device_mode == SD_TRANSFER_DMA_MODE)
980 {
981 if(sdio_data_init_t->transfer_direction == SDIO_DATA_TRANSFER_TO_CARD)
982 {
983 sd_dma_config(buf, length, DMA_DIR_MEMORY_TO_PERIPHERAL);
984 SDIOx->inten |= SDIO_INTR_STS_WRITE_MASK;
985 transfer_error = SD_OK;
986 transfer_end = 0;
987 sdio_dma_enable(SDIOx, TRUE);
988 }
989
990 while(!(SDIOx->sts & SDIOx->inten) && timeout)
991 {
992 timeout--;
993
994 if(transfer_end)
995 {
996 break;
997 }
998 }
999
1000 if(timeout == 0)
1001 {
1002 sd_init();
1003 return SD_DATA_TIMEOUT;
1004 }
1005
1006 if(transfer_error != SD_OK)
1007 {
1008 status = transfer_error;
1009 }
1010 }
1011
1012 return status;
1013}
1014
1021 sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks)
1022{
1023 sd_error_status_type status = SD_OK;
1024 uint32_t start_addr = 0, end_addr = 0, response = 0;
1025 uint8_t card_state;
1026
1027 /* high capacity sd card */
1028 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1029 {
1030 start_addr = addr >> 9;
1031 end_addr = start_addr + nblks - 1;
1032 }
1033 else
1034 {
1035 start_addr = addr;
1036 end_addr = start_addr + (nblks - 1) * 512;
1037 }
1038
1039 /* clear dcsm configuration */
1040 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1041 sdio_data_init_struct.data_length = 0 ;
1042 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1043 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1044 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1045
1046 sdio_data_config(SDIOx, &sdio_data_init_struct);
1047 sdio_data_state_machine_enable(SDIOx, FALSE);
1048
1049 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1050
1051 /* check card locked */
1052 if(response & SD_CARD_LOCKED)
1053 {
1054 return SD_LOCK_UNLOCK_ERROR;
1055 }
1056
1057 if(card_type == SDIO_MULTIMEDIA_CARD || card_type == SDIO_HIGH_SPEED_MULTIMEDIA_CARD)
1058 {
1059 /* send cmd35, set erase group start */
1060 sdio_command_init_struct.argument = start_addr;
1061 sdio_command_init_struct.cmd_index = SD_CMD_ERASE_GRP_START;
1062 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1063 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1064
1065 /* sdio command config */
1066 sdio_command_config(SDIOx, &sdio_command_init_struct);
1067 /* enable ccsm */
1068 sdio_command_state_machine_enable(SDIOx, TRUE);
1069
1070 status = command_rsp1_error(SD_CMD_ERASE_GRP_START);
1071
1072 if(status != SD_OK)
1073 {
1074 return status;
1075 }
1076
1077 /* send cmd36, set erase group end */
1078 sdio_command_init_struct.argument = end_addr;
1079 sdio_command_init_struct.cmd_index = SD_CMD_ERASE_GRP_END;
1080
1081 /* sdio command config */
1082 sdio_command_config(SDIOx, &sdio_command_init_struct);
1083 /* enable ccsm */
1084 sdio_command_state_machine_enable(SDIOx, TRUE);
1085
1086 status = command_rsp1_error(SD_CMD_ERASE_GRP_END);
1087
1088 if(status != SD_OK)
1089 {
1090 return status;
1091 }
1092
1093 /* send cmd38, start erase gourp */
1094 sdio_command_init_struct.argument = 0;
1095 sdio_command_init_struct.cmd_index = SD_CMD_ERASE;
1096
1097 /* sdio command config */
1098 sdio_command_config(SDIOx, &sdio_command_init_struct);
1099 /* enable ccsm */
1100 sdio_command_state_machine_enable(SDIOx, TRUE);
1101
1102 status = command_rsp1_error(SD_CMD_ERASE);
1103
1104 if(status != SD_OK)
1105 {
1106 return status;
1107 }
1108 }
1109 else
1110 {
1111 /* send cmd32, set erase block start */
1112 sdio_command_init_struct.argument = start_addr;
1113 sdio_command_init_struct.cmd_index = SD_CMD_SD_ERASE_GRP_START;
1114 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1115 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1116
1117 /* sdio command config */
1118 sdio_command_config(SDIOx, &sdio_command_init_struct);
1119 /* enable ccsm */
1120 sdio_command_state_machine_enable(SDIOx, TRUE);
1121
1122 status = command_rsp1_error(SD_CMD_SD_ERASE_GRP_START);
1123
1124 if(status != SD_OK)
1125 {
1126 return status;
1127 }
1128
1129 /* send cmd33, set erase block end */
1130 sdio_command_init_struct.argument = end_addr;
1131 sdio_command_init_struct.cmd_index = SD_CMD_SD_ERASE_GRP_END;
1132
1133 /* sdio command config */
1134 sdio_command_config(SDIOx, &sdio_command_init_struct);
1135 /* enable ccsm */
1136 sdio_command_state_machine_enable(SDIOx, TRUE);
1137
1138 if(status != SD_OK)
1139 {
1140 return status;
1141 }
1142
1143 /* send cmd38, start erase block */
1144 sdio_command_init_struct.argument = 0;
1145 sdio_command_init_struct.cmd_index = SD_CMD_ERASE;
1146
1147 /* sdio command config */
1148 sdio_command_config(SDIOx, &sdio_command_init_struct);
1149 /* enable ccsm */
1150 sdio_command_state_machine_enable(SDIOx, TRUE);
1151
1152 status = command_rsp1_error(SD_CMD_ERASE);
1153
1154 if(status != SD_OK)
1155 {
1156 return status;
1157 }
1158 }
1159
1160 status = check_card_programming(&card_state);
1161
1162 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || \
1163 (card_state == SD_CARD_RECEIVING)))
1164 {
1165 status = check_card_programming(&card_state);
1166 }
1167
1168 return status;
1169}
1170
1179 sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
1180{
1181 sd_error_status_type status = SD_OK;
1182 uint32_t response = 0;
1183 uint8_t power;
1184
1185 if(NULL == buf)
1186 {
1187 return SD_INVALID_PARAMETER;
1188 }
1189
1190 SDIOx->dtctrl = 0x0;
1191
1192 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1193 {
1194 blk_size = 512;
1195 addr >>= 9;
1196 }
1197
1198 /* clear dcsm configuration */
1199 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1200 sdio_data_init_struct.data_length = 0;
1201 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1202 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1203 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1204
1205 sdio_data_config(SDIOx, &sdio_data_init_struct);
1206 sdio_data_state_machine_enable(SDIOx, FALSE);
1207
1208 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1209
1210 /* check card locked */
1211 if(response & SD_CARD_LOCKED)
1212 {
1213 return SD_LOCK_UNLOCK_ERROR;
1214 }
1215
1216 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1217 {
1218 power = convert_from_bytes_to_power_of_two(blk_size);
1219
1220 /* send cmd16, set block size */
1221 sdio_command_init_struct.argument = blk_size;
1222 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1223 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1224 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1225
1226 /* sdio command config */
1227 sdio_command_config(SDIOx, &sdio_command_init_struct);
1228 /* enable ccsm */
1229 sdio_command_state_machine_enable(SDIOx, TRUE);
1230
1231 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1232
1233 if(status != SD_OK)
1234 {
1235 return status;
1236 }
1237 }
1238 else
1239 {
1240 return SD_INVALID_PARAMETER;
1241 }
1242
1243 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1244 sdio_data_init_struct.data_length = blk_size ;
1245 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1246 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
1247 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1248
1249 sdio_command_init_struct.argument = addr;
1250 sdio_command_init_struct.cmd_index = SD_CMD_READ_SINGLE_BLOCK;
1251 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1252 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1253
1254 stop_flag = 0;
1255
1256 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1257}
1258
1268 sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
1269{
1270 sd_error_status_type status = SD_OK;
1271 uint32_t response = 0;
1272 uint8_t power;
1273
1274 SDIOx->dtctrl = 0x0;
1275
1276 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1277 {
1278 blk_size = 512;
1279 addr >>= 9;
1280 }
1281
1282 /* clear dcsm configuration */
1283 sdio_data_init_struct.block_size = (sdio_block_size_type)0;
1284 sdio_data_init_struct.data_length = 0;
1285 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1286 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1287 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1288
1289 sdio_data_config(SDIOx, &sdio_data_init_struct);
1290 sdio_data_state_machine_enable(SDIOx, FALSE);
1291
1292 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1293
1294 /* check card locked */
1295 if(response & SD_CARD_LOCKED)
1296 {
1297 return SD_LOCK_UNLOCK_ERROR;
1298 }
1299
1300 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1301 {
1302 power = convert_from_bytes_to_power_of_two(blk_size);
1303
1304 /* send cmd16, set block size */
1305 sdio_command_init_struct.argument = blk_size;
1306 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1307 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1308 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1309
1310 /* sdio command config */
1311 sdio_command_config(SDIOx, &sdio_command_init_struct);
1312 /* enable ccsm */
1313 sdio_command_state_machine_enable(SDIOx, TRUE);
1314
1315 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1316
1317 if(status != SD_OK)
1318 {
1319 return status;
1320 }
1321 }
1322 else
1323 {
1324 return SD_INVALID_PARAMETER;
1325 }
1326
1327 /* check max receive length */
1328 if(nblks * blk_size > SD_MAX_DATA_LENGTH)
1329 {
1330 return SD_INVALID_PARAMETER;
1331 }
1332
1333 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1334 sdio_data_init_struct.data_length = nblks * blk_size ;
1335 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1336 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
1337 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1338
1339 /* send cmd18, read block data */
1340 sdio_command_init_struct.argument = addr;
1341 sdio_command_init_struct.cmd_index = SD_CMD_READ_MULT_BLOCK;
1342 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1343 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1344
1345 stop_flag = 1;
1346
1347 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1348}
1349
1358 sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
1359{
1360 sd_error_status_type status = SD_OK;
1361 uint8_t power = 0, card_state = 0;
1362 uint32_t timeout = 0, card_status = 0, response = 0;
1363
1364 if(buf == NULL)
1365 {
1366 return SD_INVALID_PARAMETER;
1367 }
1368
1369 SDIOx->dtctrl = 0x0;
1370
1371 /* clear dcsm configuration */
1372 sdio_data_init_struct.block_size = (sdio_block_size_type)0;
1373 sdio_data_init_struct.data_length = 0;
1374 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1375 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1376 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1377
1378 sdio_data_config(SDIOx, &sdio_data_init_struct);
1379 sdio_data_state_machine_enable(SDIOx, FALSE);
1380
1381 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1382
1383 /* check card locked */
1384 if(response & SD_CARD_LOCKED)
1385 {
1386 return SD_LOCK_UNLOCK_ERROR;
1387 }
1388
1389 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1390 {
1391 blk_size = 512;
1392 addr >>= 9;
1393 }
1394
1395 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1396 {
1397 power = convert_from_bytes_to_power_of_two(blk_size);
1398
1399 /* send cmd16, set block size */
1400 sdio_command_init_struct.argument = blk_size;
1401 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1402 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1403 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1404
1405 /* sdio command config */
1406 sdio_command_config(SDIOx, &sdio_command_init_struct);
1407 /* enable ccsm */
1408 sdio_command_state_machine_enable(SDIOx, TRUE);
1409
1410 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1411
1412 if(status != SD_OK)
1413 {
1414 return status;
1415 }
1416 }
1417 else
1418 {
1419 return SD_INVALID_PARAMETER;
1420 }
1421
1422 timeout = SD_DATATIMEOUT;
1423
1424 do
1425 {
1426 timeout--;
1427 status = sd_status_send(&card_status);
1428 }
1429 /* check ready_for_data flag */
1430 while(((card_status & 0x00000100) == 0) && (timeout > 0));
1431
1432 if(timeout == 0)
1433 {
1434 return SD_ERROR;
1435 }
1436
1437 /* send cmd24, write single block */
1438 sdio_command_init_struct.argument = addr;
1439 sdio_command_init_struct.cmd_index = SD_CMD_WRITE_SINGLE_BLOCK;
1440 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1441 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1442
1443 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1444 sdio_data_init_struct.data_length = blk_size;
1445 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1446 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1447 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1448
1449 stop_flag = 0;
1450
1451 /* single block, stop command is unnecessary */
1452 status = sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1453
1454 if(status != SD_OK)
1455 {
1456 return status;
1457 }
1458
1459 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1460
1461 status = check_card_programming(&card_state);
1462
1463 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || (card_state == SD_CARD_RECEIVING)))
1464 {
1465 status = check_card_programming(&card_state);
1466 }
1467
1468 return status;
1469}
1470
1480 sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
1481{
1482 sd_error_status_type status = SD_OK;
1483 uint8_t power = 0, card_state = 0;
1484 uint32_t timeout = 0, card_status = 0, response = 0;;
1485
1486 if(buf == NULL)
1487 {
1488 return SD_INVALID_PARAMETER;
1489 }
1490
1491 SDIOx->dtctrl = 0x0;
1492
1493 /* clear dcsm configuration */
1494 sdio_data_init_struct.block_size = (sdio_block_size_type)0;
1495 sdio_data_init_struct.data_length = 0;
1496 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1497 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1498 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1499
1500 sdio_data_config(SDIOx, &sdio_data_init_struct);
1501 sdio_data_state_machine_enable(SDIOx, FALSE);
1502
1503 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1504
1505 /* check card locked */
1506 if(response & SD_CARD_LOCKED)
1507 {
1508 return SD_LOCK_UNLOCK_ERROR;
1509 }
1510
1511 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1512 {
1513 blk_size = 512;
1514 addr >>= 9;
1515 }
1516
1517 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1518 {
1519 power = convert_from_bytes_to_power_of_two(blk_size);
1520
1521 /* send cmd16, set block size */
1522 sdio_command_init_struct.argument = blk_size;
1523 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1524 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1525 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1526
1527 /* sdio command config */
1528 sdio_command_config(SDIOx, &sdio_command_init_struct);
1529 /* enable ccsm */
1530 sdio_command_state_machine_enable(SDIOx, TRUE);
1531
1532 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1533
1534 if(status != SD_OK)
1535 {
1536 return status;
1537 }
1538 }
1539 else
1540 {
1541 return SD_INVALID_PARAMETER;
1542 }
1543
1544 if((nblks * blk_size) > SD_MAX_DATA_LENGTH)
1545 {
1546 return SD_INVALID_PARAMETER;
1547 }
1548
1549 timeout = SD_DATATIMEOUT;
1550
1551 do
1552 {
1553 timeout--;
1554 status = sd_status_send(&card_status);
1555 }
1556 /* check ready_for_data flag */
1557 while(((card_status & 0x00000100) == 0) && (timeout > 0));
1558
1559 if(timeout == 0)
1560 {
1561 return SD_ERROR;
1562 }
1563
1564 if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || \
1565 (card_type == SDIO_HIGH_CAPACITY_SD_CARD))
1566 {
1567 /* send cmd55 */
1568 sdio_command_init_struct.argument = (uint32_t)rca << 16;
1569 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
1570 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1571 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1572
1573 /* sdio command config */
1574 sdio_command_config(SDIOx, &sdio_command_init_struct);
1575 /* enable ccsm */
1576 sdio_command_state_machine_enable(SDIOx, TRUE);
1577
1578 status = command_rsp1_error(SD_CMD_APP_CMD);
1579
1580 if(status != SD_OK)
1581 {
1582 return status;
1583 }
1584
1585 /* send cmd23, set block count */
1586 sdio_command_init_struct.argument = blk_size;
1587 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCK_COUNT;
1588 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1589 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1590
1591 /* sdio command config */
1592 sdio_command_config(SDIOx, &sdio_command_init_struct);
1593 /* enable ccsm */
1594 sdio_command_state_machine_enable(SDIOx, TRUE);
1595
1596 status = command_rsp1_error(SD_CMD_SET_BLOCK_COUNT);
1597
1598 if(status != SD_OK)
1599 {
1600 return status;
1601 }
1602 }
1603
1604 /* send cmd25, write mult blocks */
1605 sdio_command_init_struct.argument = addr;
1606 sdio_command_init_struct.cmd_index = SD_CMD_WRITE_MULT_BLOCK;
1607 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1608 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1609
1610 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1611 sdio_data_init_struct.data_length = nblks * blk_size ;
1612 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1613 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1614 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1615
1616 stop_flag = 1;
1617 /* cmd12 is needed */
1618 status = sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1619
1620 if(status != SD_OK)
1621 {
1622 return status;
1623 }
1624
1625 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1626
1627 status = check_card_programming(&card_state);
1628
1629 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || (card_state == SD_CARD_RECEIVING)))
1630 {
1631 status = check_card_programming(&card_state);
1632 }
1633
1634 return status;
1635}
1636
1644 sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len)
1645{
1646 uint32_t response = 0;
1647
1648 SDIOx->dtctrl = 0x0;
1649
1650 /* clear dcsm configuration */
1651 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1652 sdio_data_init_struct.data_length = 0 ;
1653 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1654 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1655 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1656
1657 sdio_data_config(SDIOx, &sdio_data_init_struct);
1658 sdio_data_state_machine_enable(SDIOx, FALSE);
1659
1660 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1661
1662 /* check card locked */
1663 if(response & SD_CARD_LOCKED)
1664 {
1665 return SD_LOCK_UNLOCK_ERROR;
1666 }
1667 /* send cmd11, read data */
1668 sdio_command_init_struct.argument = addr;
1669 sdio_command_init_struct.cmd_index = SD_CMD_READ_DAT_UNTIL_STOP;
1670 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1671 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1672
1673 sdio_data_init_struct.block_size = (sdio_block_size_type)(5 << 4);
1674 sdio_data_init_struct.data_length = len;
1675 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1676 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
1677 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1678
1679 stop_flag = 1;
1680 /* cmd12 is needed */
1681 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1682}
1683
1691 sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len)
1692{
1693 sd_error_status_type status = SD_OK;
1694 uint32_t response = 0;
1695 uint8_t card_state = 0;
1696
1697 if(buf == NULL)
1698 {
1699 return SD_INVALID_PARAMETER;
1700 }
1701
1702 SDIOx->dtctrl = 0x0;
1703
1704 /* clear dcsm configuration */
1705 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1706 sdio_data_init_struct.data_length = 0;
1707 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1708 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1709 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1710
1711 sdio_data_config(SDIOx, &sdio_data_init_struct);
1712 sdio_data_state_machine_enable(SDIOx, FALSE);
1713
1714 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1715
1716 /* check card locked */
1717 if(response & SD_CARD_LOCKED)
1718 {
1719 return SD_LOCK_UNLOCK_ERROR;
1720 }
1721 /* send cmd20, write data */
1722 sdio_command_init_struct.argument = addr;
1723 sdio_command_init_struct.cmd_index = SD_CMD_WRITE_DAT_UNTIL_STOP;
1724 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1725 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1726
1727
1728 sdio_data_init_struct.block_size = (sdio_block_size_type)(15 << 4);
1729 sdio_data_init_struct.data_length = len;
1730 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1731 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1732 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1733
1734 stop_flag = 1;
1735 /* cmd12 is needed */
1736 status = sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1737
1738 if(status != SD_OK)
1739 {
1740 return status;
1741 }
1742
1743 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1744
1745 status = check_card_programming(&card_state);
1746
1747 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || (card_state == SD_CARD_RECEIVING)))
1748 {
1749 status = check_card_programming(&card_state);
1750 }
1751
1752 return status;
1753}
1754
1760void SDIO1_IRQHandler(void)
1761{
1762 sd_irq_service();
1763}
1764
1770void SDIO2_IRQHandler(void)
1771{
1772 sd_irq_service();
1773}
1774
1780 sd_error_status_type sd_irq_service(void)
1781{
1782 if(sdio_flag_get(SDIOx, SDIO_DTCMPL_FLAG) != RESET)
1783 {
1784 if(stop_flag == 1)
1785 {
1786 /* send cmd12, stop transmission */
1787 sdio_command_init_struct.argument = 0;
1788 sdio_command_init_struct.cmd_index = SD_CMD_STOP_TRANSMISSION;
1789 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1790 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1791 /* sdio command config */
1792 sdio_command_config(SDIOx, &sdio_command_init_struct);
1793 /* enable ccsm */
1794 sdio_command_state_machine_enable(SDIOx, TRUE);
1795 transfer_error = command_rsp1_error(SD_CMD_STOP_TRANSMISSION);
1796 }
1797 else
1798 {
1799 transfer_error = SD_OK;
1800 }
1801 /* clear flag */
1802 sdio_flag_clear(SDIOx, SDIO_DTCMPL_FLAG);
1803 transfer_end = 1;
1804 return transfer_error;
1805 }
1806
1807 if(sdio_flag_get(SDIOx, SDIO_DTFAIL_FLAG) != RESET)
1808 {
1809 /* clear flag */
1810 sdio_flag_clear(SDIOx, SDIO_DTFAIL_FLAG);
1811 transfer_error = SD_DATA_FAIL;
1812 transfer_end = 1;
1813 return transfer_error;
1814 }
1815
1816 if(sdio_flag_get(SDIOx, SDIO_DTTIMEOUT_FLAG) != RESET)
1817 {
1818 /* clear flag */
1819 sdio_flag_clear(SDIOx, SDIO_DTTIMEOUT_FLAG);
1820 transfer_error = SD_DATA_TIMEOUT;
1821 transfer_end = 1;
1822 return transfer_error;
1823 }
1824
1825 if(sdio_flag_get(SDIOx, SDIO_RXERRO_FLAG) != RESET)
1826 {
1827 /* clear flag */
1828 sdio_flag_clear(SDIOx, SDIO_RXERRO_FLAG);
1829 transfer_error = SD_RX_OVERRUN;
1830 transfer_end = 1;
1831 return(SD_RX_OVERRUN);
1832 }
1833
1834 if(sdio_flag_get(SDIOx, SDIO_TXERRU_FLAG) != RESET)
1835 {
1836 /* clear flag */
1837 sdio_flag_clear(SDIOx, SDIO_TXERRU_FLAG);
1838 transfer_error = SD_TX_UNDERRUN;
1839 transfer_end = 1;
1840 return(SD_TX_UNDERRUN);
1841 }
1842
1843 if(sdio_flag_get(SDIOx, SDIO_SBITERR_FLAG) != RESET)
1844 {
1845 /* clear flag */
1846 sdio_flag_clear(SDIOx, SDIO_SBITERR_FLAG);
1847 transfer_error = SD_START_BIT_ERR;
1848 transfer_end = 1;
1849 return(SD_START_BIT_ERR);
1850 }
1851
1852 /* disable interrupt */
1853 sdio_interrupt_enable(SDIOx, (SDIO_DTFAIL_INT | SDIO_DTTIMEOUT_INT | \
1854 SDIO_DTCMP_INT | SDIO_TXBUFH_INT | SDIO_RXBUFH_INT | \
1855 SDIO_TXERRU_INT| SDIO_RXERRO_INT | SDIO_SBITERR_INT), FALSE);
1856 return(SD_OK);
1857}
1858
1864 sd_error_status_type command_error(void)
1865{
1866 sd_error_status_type status = SD_OK;
1867 uint32_t timeout = SDIO_CMD0TIMEOUT;
1868
1869 while(timeout--)
1870 {
1871 if(sdio_flag_get(SDIOx, SDIO_CMDCMPL_FLAG) != RESET)
1872 {
1873 break;
1874 }
1875 }
1876
1877 if(timeout == 0)
1878 {
1879 return SD_CMD_RSP_TIMEOUT;
1880 }
1881
1882 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1883 return status;
1884}
1885
1891 sd_error_status_type command_rsp7_error(void)
1892{
1893 sd_error_status_type status = SD_OK;
1894 uint32_t sts_reg = 0;
1895 uint32_t timeout = SDIO_CMD0TIMEOUT;
1896
1897 while(timeout--)
1898 {
1899 sts_reg = SDIOx->sts;
1900
1901 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
1902 {
1903 break;
1904 }
1905 }
1906
1907 if((timeout == 0) || (sts_reg & SDIO_CMDTIMEOUT_FLAG))
1908 {
1909 status = SD_CMD_RSP_TIMEOUT;
1910 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
1911 return status;
1912 }
1913
1914 if(sts_reg & SDIO_CMDRSPCMPL_FLAG)
1915 {
1916 status = SD_OK;
1917 sdio_flag_clear(SDIOx, SDIO_CMDRSPCMPL_FLAG);
1918 }
1919
1920 return status;
1921}
1922
1928 sd_error_status_type command_rsp1_error(uint8_t cmd)
1929{
1930 uint32_t sts_reg = 0;
1931 uint32_t rsp_cmd = 0;
1932
1933 while(1)
1934 {
1935 sts_reg = SDIOx->sts;
1936
1937 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
1938 {
1939 break;
1940 }
1941 }
1942
1943 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
1944 {
1945 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
1946 return SD_CMD_RSP_TIMEOUT;
1947 }
1948
1949 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
1950 {
1951 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
1952 return SD_CMD_FAIL;
1953 }
1954
1955 rsp_cmd = sdio_command_response_get(SDIOx);
1956 if(rsp_cmd != cmd)
1957 {
1958 return SD_ILLEGAL_CMD;
1959 }
1960
1961 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1962
1963 return (sd_error_status_type)(sdio_response_get(SDIOx, SDIO_RSP1_INDEX) & SD_OCR_ERRORBITS);
1964}
1965
1971 sd_error_status_type command_rsp3_error(void)
1972{
1973 uint32_t sts_reg = 0;;
1974
1975 while(1)
1976 {
1977 sts_reg = SDIOx->sts;
1978
1979 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
1980 {
1981 break;
1982 }
1983 }
1984
1985 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
1986 {
1987 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
1988 return SD_CMD_RSP_TIMEOUT;
1989 }
1990
1991 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1992
1993 return SD_OK;
1994}
1995
2001 sd_error_status_type command_rsp2_error(void)
2002{
2003 sd_error_status_type status = SD_OK;
2004 uint32_t sts_reg;
2005 uint32_t timeout = SDIO_CMD0TIMEOUT;
2006
2007 while(timeout--)
2008 {
2009 sts_reg = SDIOx->sts;
2010
2011 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2012 {
2013 break;
2014 }
2015 }
2016
2017 if((timeout == 0) || sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2018 {
2019 status = SD_CMD_RSP_TIMEOUT;
2020 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2021
2022 return status;
2023 }
2024
2025 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2026 {
2027 status = SD_CMD_FAIL;
2028 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2029 }
2030
2031 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2032
2033 return status;
2034}
2035
2041 sd_error_status_type command_rsp4_error(uint8_t cmd)
2042{
2043 uint32_t sts_reg = 0, rsp_cmd = 0;
2044
2045 while(1)
2046 {
2047 sts_reg = SDIOx->sts;
2048
2049 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2050 {
2051 break;
2052 }
2053 }
2054
2055 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2056 {
2057 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2058 return SD_CMD_RSP_TIMEOUT;
2059 }
2060
2061 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2062 {
2063 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2064
2065 return SD_CMD_FAIL;
2066 }
2067
2068 rsp_cmd = sdio_command_response_get(SDIOx);
2069 if(rsp_cmd != cmd)
2070 {
2071 return SD_ILLEGAL_CMD;
2072 }
2073
2074 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2075
2076 return SD_OK;
2077}
2078
2084 sd_error_status_type command_rsp5_error(uint8_t cmd)
2085{
2086 uint32_t sts_reg = 0, rsp_cmd = 0, response = 0;
2087
2088 while(1)
2089 {
2090 sts_reg = SDIOx->sts;
2091
2092 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2093 {
2094 break;
2095 }
2096 }
2097
2098 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2099 {
2100 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2101
2102 return SD_CMD_RSP_TIMEOUT;
2103 }
2104
2105 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2106 {
2107 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2108
2109 return SD_CMD_FAIL;
2110 }
2111
2112 rsp_cmd = sdio_command_response_get(SDIOx);
2113 if(rsp_cmd != cmd)
2114 {
2115 return SD_ILLEGAL_CMD;
2116 }
2117
2118 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2119
2120 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2121
2122 if(response & SD_R5_OUT_OF_RANGE)
2123 {
2124 return SD_CMD_OUT_OF_RANGE;
2125 }
2126
2127 if(response & SD_R5_FUNCTION_NUMBER)
2128 {
2129 return SD_SDIO_UNKNOWN_FUNC;
2130 }
2131
2132 if(response & SD_R5_ERROR)
2133 {
2134 return SD_GENERAL_UNKNOWN_ERROR;
2135 }
2136
2137 return SD_OK;
2138}
2139
2147 sd_error_status_type command_rsp6_error(uint8_t cmd, uint16_t *prca)
2148{
2149 sd_error_status_type status = SD_OK;
2150 uint32_t sts_reg, rsp_cmd = 0, response = 0;
2151
2152 while(1)
2153 {
2154 sts_reg = SDIOx->sts;
2155
2156 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2157 {
2158 break;
2159 }
2160 }
2161
2162 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2163 {
2164 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2165 return SD_CMD_RSP_TIMEOUT;
2166 }
2167
2168 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2169 {
2170 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2171 return SD_CMD_FAIL;
2172 }
2173
2174 rsp_cmd = sdio_command_response_get(SDIOx);
2175 if(rsp_cmd != cmd)
2176 {
2177 return SD_ILLEGAL_CMD;
2178 }
2179
2180 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2181
2182 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2183
2184 if(SD_ALLZERO == (response & (SD_R6_GENERAL_UNKNOWN_ERROR | SD_R6_ILLEGAL_CMD | SD_R6_CMD_CRC_ERROR)))
2185 {
2186 *prca = (uint16_t)(response >> 16);
2187 return status;
2188 }
2189
2190 if(response & SD_R6_GENERAL_UNKNOWN_ERROR)
2191 {
2192 return SD_GENERAL_UNKNOWN_ERROR;
2193 }
2194
2195 if(response & SD_R6_ILLEGAL_CMD)
2196 {
2197 return SD_ILLEGAL_CMD;
2198 }
2199
2200 if(response & SD_R6_CMD_CRC_ERROR)
2201 {
2202 return SD_CMD_CRC_ERROR;
2203 }
2204
2205 return status;
2206}
2207
2213 sd_error_status_type sd_bus_wide_enable(confirm_state new_state)
2214{
2215 sd_error_status_type status = SD_OK;
2216 uint32_t response = 0;
2217 uint8_t arg = 0x00;
2218
2219 if(new_state == TRUE)
2220 {
2221 arg = 0x02;
2222 }
2223 else
2224 {
2225 arg = 0x00;
2226 }
2227
2228 /* get response1 */
2229 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2230
2231 /* check card locked or not */
2232 if(response & SD_CARD_LOCKED)
2233 {
2234 return SD_LOCK_UNLOCK_ERROR;
2235 }
2236
2237 if(sd_card_info.sd_scr_reg.sd_bus_width)
2238 {
2239 sdio_command_init_struct.argument = (uint32_t)(sd_card_info.rca << 16);
2240 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
2241 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2242 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2243
2244 /* sdio command config */
2245 sdio_command_config(SDIOx, &sdio_command_init_struct);
2246 /* enable ccsm */
2247 sdio_command_state_machine_enable(SDIOx, TRUE);
2248
2249 status = command_rsp1_error(SD_CMD_APP_CMD);
2250
2251 if(status != SD_OK)
2252 {
2253 return status;
2254 }
2255
2256 sdio_command_init_struct.argument = arg;
2257 sdio_command_init_struct.cmd_index = SD_CMD_APP_SD_SET_BUSWIDTH;
2258 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2259 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2260
2261 /* sdio command config */
2262 sdio_command_config(SDIOx, &sdio_command_init_struct);
2263 /* enable ccsm */
2264 sdio_command_state_machine_enable(SDIOx, TRUE);
2265
2266 status = command_rsp1_error(SD_CMD_APP_SD_SET_BUSWIDTH);
2267 return status;
2268 }
2269 else
2270 {
2271 return SD_REQ_NOT_APPLICABLE;
2272 }
2273}
2274
2282 sd_error_status_type mmc_switch(uint8_t set, uint8_t index, uint8_t value)
2283{
2284 sd_error_status_type status = SD_OK;
2285 uint32_t card_status = 0, timeout = 0;
2286
2287 sdio_command_init_struct.argument = (EXT_CSD_Write_byte << 24) | (index << 16) | (value << 8) | set;
2288 sdio_command_init_struct.cmd_index = SD_CMD_HS_SWITCH;
2289 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2290 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2291
2292 /* sdio command config */
2293 sdio_command_config(SDIOx, &sdio_command_init_struct);
2294 /* enable ccsm */
2295 sdio_command_state_machine_enable(SDIOx, TRUE);
2296
2297 status = command_rsp1_error(SD_CMD_HS_SWITCH);
2298 if(status != SD_OK)
2299 {
2300 return status;
2301 }
2302
2303 card_status = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2304 if(card_status & MMC_SWITCH_ERROR)
2305 {
2306 return SD_SWITCH_ERROR;
2307 }
2308
2309 timeout = SD_DATATIMEOUT;
2310 do
2311 {
2312 timeout--;
2313 status = sd_status_send(&card_status);
2314 } /* check ready_for_data flag */
2315 while(((card_status & 0x00000100) == 0) && (timeout > 0));
2316
2317 if(timeout == 0)
2318 {
2319 return SD_ERROR;
2320 }
2321
2322 return status;
2323}
2324
2333 sd_error_status_type sd_switch(uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp)
2334{
2335 sd_error_status_type status = SD_OK;
2336 uint8_t power;
2337 uint16_t blk_size;
2338
2339 if(rsp == NULL)
2340 {
2341 return SD_INVALID_PARAMETER;
2342 }
2343
2344 SDIOx->dtctrl = 0x0;
2345
2346 blk_size = 64;
2347 power = convert_from_bytes_to_power_of_two(blk_size);
2348
2349 sdio_command_init_struct.argument = blk_size;
2350 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
2351 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2352 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2353
2354 /* sdio command config */
2355 sdio_command_config(SDIOx, &sdio_command_init_struct);
2356 /* enable ccsm */
2357 sdio_command_state_machine_enable(SDIOx, TRUE);
2358
2359 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
2360
2361 if(status != SD_OK)
2362 {
2363 return status;
2364 }
2365
2366 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
2367 sdio_data_init_struct.data_length = blk_size ;
2368 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
2369 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
2370 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
2371
2372 sdio_command_init_struct.argument = (mode << 31) | 0x00FFFFFF;
2373 sdio_command_init_struct.argument &= ~(0xF << (group * 4));
2374 sdio_command_init_struct.argument |= value << (group * 4);
2375 sdio_command_init_struct.cmd_index = SD_CMD_HS_SWITCH;
2376 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2377 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2378
2379 stop_flag = 0;
2380
2381 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)rsp);
2382}
2383
2389 sd_error_status_type check_card_programming(uint8_t *p_status)
2390{
2391 volatile uint32_t response = 0, sts_reg = 0, rsp_cmd = 0;
2392
2393 /* send cmd13 */
2394 sdio_command_init_struct.argument = (uint32_t)(rca << 16);
2395 sdio_command_init_struct.cmd_index = SD_CMD_SEND_STATUS;
2396 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2397 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2398
2399 /* sdio command config */
2400 sdio_command_config(SDIOx, &sdio_command_init_struct);
2401 /* enable ccsm */
2402 sdio_command_state_machine_enable(SDIOx, TRUE);
2403
2404 sts_reg = SDIOx->sts;
2405
2406 while(!(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG)))
2407 {
2408 sts_reg = SDIOx->sts;
2409 }
2410
2411 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2412 {
2413 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2414 return SD_CMD_FAIL;
2415 }
2416
2417 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2418 {
2419 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2420 return SD_CMD_RSP_TIMEOUT;
2421 }
2422
2423 rsp_cmd = sdio_command_response_get(SDIOx);
2424 if(rsp_cmd!= SD_CMD_SEND_STATUS)
2425 {
2426 return SD_ILLEGAL_CMD;
2427 }
2428
2429 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2430
2431 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2432
2433 *p_status = (uint8_t)((response >> 9) & 0x0000000F);
2434
2435 return SD_OK;
2436}
2437
2443 sd_error_status_type sd_status_send(uint32_t *p_card_status)
2444{
2445 sd_error_status_type status = SD_OK;
2446
2447 if(p_card_status == NULL)
2448 {
2449 status = SD_INVALID_PARAMETER;
2450 return status;
2451 }
2452
2453 sdio_command_init_struct.argument = (uint32_t)(rca << 16);
2454 sdio_command_init_struct.cmd_index = SD_CMD_SEND_STATUS;
2455 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2456 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2457
2458 /* sdio command config */
2459 sdio_command_config(SDIOx, &sdio_command_init_struct);
2460 /* enable ccsm */
2461 sdio_command_state_machine_enable(SDIOx, TRUE);
2462
2463 status = command_rsp1_error(SD_CMD_SEND_STATUS);
2464
2465 if(status != SD_OK)
2466 {
2467 return status;
2468 }
2469
2470 *p_card_status = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2471
2472 return status;
2473}
2474
2480 sd_card_state_type sd_state_get(void)
2481{
2482 uint32_t response = 0;
2483
2484 if(sd_status_send(&response) != SD_OK)
2485 {
2486 return SD_CARD_ERROR;
2487 }
2488 else
2489 {
2490 return (sd_card_state_type)((response >> 9) & 0x0F);
2491 }
2492}
2493
2498 sd_error_status_type scr_find(void)
2499{
2500 uint32_t index = 0, sts_reg = 0;
2501 sd_error_status_type status = SD_OK;
2502 uint32_t *tempscr;
2503
2504 tempscr = (uint32_t *) &(sd_card_info.sd_scr_reg);
2505
2506 /* send cmd16, set block length */
2507 sdio_command_init_struct.argument = (uint32_t)8;
2508 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
2509 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2510 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2511
2512 /* sdio command config */
2513 sdio_command_config(SDIOx, &sdio_command_init_struct);
2514 /* enable ccsm */
2515 sdio_command_state_machine_enable(SDIOx, TRUE);
2516
2517 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
2518
2519 if(status != SD_OK)
2520 {
2521 return status;
2522 }
2523
2524 /* send cmd55 */
2525 sdio_command_init_struct.argument = (uint32_t)(sd_card_info.rca << 16);
2526 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
2527 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2528 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2529
2530 /* sdio command config */
2531 sdio_command_config(SDIOx, &sdio_command_init_struct);
2532 /* enable ccsm */
2533 sdio_command_state_machine_enable(SDIOx, TRUE);
2534
2535 status = command_rsp1_error(SD_CMD_APP_CMD);
2536
2537 if(status != SD_OK)
2538 {
2539 return status;
2540 }
2541
2542 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_8B;
2543 sdio_data_init_struct.data_length = 8;
2544 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
2545 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
2546 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
2547
2548 sdio_data_config(SDIOx, &sdio_data_init_struct);
2549 sdio_data_state_machine_enable(SDIOx, TRUE);
2550
2551 /* send cmd51 */
2552 sdio_command_init_struct.argument = 0x0;
2553 sdio_command_init_struct.cmd_index = SD_CMD_SD_APP_SEND_SCR;
2554 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2555 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2556
2557 /* sdio command config */
2558 sdio_command_config(SDIOx, &sdio_command_init_struct);
2559 /* enable ccsm */
2560 sdio_command_state_machine_enable(SDIOx, TRUE);
2561
2562 status = command_rsp1_error(SD_CMD_SD_APP_SEND_SCR);
2563
2564 if(status != SD_OK)
2565 {
2566 return status;
2567 }
2568
2569 sts_reg = SDIOx->sts;
2570
2571 while(!(sts_reg & (SDIO_RXERRO_FLAG | SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_DTBLKCMPL_FLAG | SDIO_SBITERR_FLAG)))
2572 {
2573 if(sdio_flag_get(SDIOx, SDIO_RXBUF_FLAG) != RESET)
2574 {
2575 *(tempscr + index) = sdio_data_read(SDIOx);
2576 index++;
2577 }
2578 sts_reg = SDIOx->sts;
2579 }
2580
2581 if(sdio_flag_get(SDIOx, SDIO_DTTIMEOUT_FLAG) != RESET)
2582 {
2583 sdio_flag_clear(SDIOx, SDIO_DTTIMEOUT_FLAG);
2584 return SD_DATA_TIMEOUT;
2585 }
2586 else if(sdio_flag_get(SDIOx, SDIO_DTFAIL_FLAG) != RESET)
2587 {
2588 sdio_flag_clear(SDIOx, SDIO_DTFAIL_FLAG);
2589 return SD_DATA_FAIL;
2590 }
2591 else if(sdio_flag_get(SDIOx, SDIO_RXERRO_FLAG) != RESET)
2592 {
2593 sdio_flag_clear(SDIOx, SDIO_RXERRO_FLAG);
2594 return SD_RX_OVERRUN;
2595 }
2596 else if(sdio_flag_get(SDIOx, SDIO_SBITERR_FLAG) != RESET)
2597 {
2598 sdio_flag_clear(SDIOx, SDIO_SBITERR_FLAG);
2599 return SD_START_BIT_ERR;
2600 }
2601
2602 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2603
2604 return status;
2605}
2606
2612 sd_error_status_type speed_change(uint8_t speed)
2613{
2614 sd_error_status_type status = SD_OK;
2615 uint8_t switch_sts[64];
2616
2617 if(speed > 1)
2618 {
2619 return SD_ERROR;
2620 }
2621
2622 /* check card type */
2623 if((SDIO_STD_CAPACITY_SD_CARD_V1_1 == card_type) || (SDIO_STD_CAPACITY_SD_CARD_V2_0 == card_type) || \
2624 (SDIO_HIGH_CAPACITY_SD_CARD == card_type))
2625 {
2626 /* version 1.01 card does not support cmd6 */
2627 if(sd_card_info.sd_scr_reg.sd_spec == 0)
2628 {
2629 return SD_ERROR;
2630 }
2631
2632 /* check group 1 function support speed */
2633 status = sd_switch(0, 0, speed, switch_sts);
2634
2635 if(status != 0)
2636 {
2637 return status;
2638 }
2639
2640 if((switch_sts[13] & (1 << speed)) == 0)
2641 {
2642 return SD_ERROR;
2643 }
2644
2645 status = sd_switch(1, 0, speed, switch_sts);
2646
2647 if(status != 0)
2648 {
2649 return status;
2650 }
2651
2652 /* read it back for confirmation */
2653 if((switch_sts[16] & 0xF) != speed)
2654 {
2655 return SD_ERROR;
2656 }
2657 }
2658 else if(card_type == SDIO_HIGH_SPEED_MULTIMEDIA_CARD)
2659 {
2660 status = mmc_switch(EXT_CSD_CMD_SET_NORMAL, EXT_CSD_BUS_WIDTH, (uint8_t)speed);
2661
2662 if(status != 0)
2663 {
2664 return status;
2665 }
2666 }
2667
2668 return status;
2669}
2670
2676uint8_t convert_from_bytes_to_power_of_two(uint16_t number_of_bytes)
2677{
2678 uint8_t count = 0;
2679
2680 while(number_of_bytes != 1)
2681 {
2682 number_of_bytes >>= 1;
2683 count++;
2684 }
2685
2686 return count;
2687}
2688
2697void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
2698{
2699 dma_init_type dma_init_struct;
2700 dma_default_para_init(&dma_init_struct);
2701
2702 crm_periph_clock_enable(CRM_DMA2_PERIPH_CLOCK, TRUE);
2703
2704 dma_reset(DMA2_CHANNEL4);
2705 dma_channel_enable(DMA2_CHANNEL4, FALSE);
2706
2707 dma_init_struct.peripheral_base_addr = (uint32_t)&SDIOx->buf;
2708 dma_init_struct.memory_base_addr = (uint32_t)mbuf;
2709 dma_init_struct.direction = dir;
2710 dma_init_struct.buffer_size = buf_size / 4;
2711 dma_init_struct.peripheral_inc_enable = FALSE;
2712 dma_init_struct.memory_inc_enable = TRUE;
2713 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_WORD;
2714 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_WORD;
2715 dma_init_struct.loop_mode_enable = FALSE;
2716 dma_init_struct.priority = DMA_PRIORITY_HIGH;
2717 dma_init(DMA2_CHANNEL4, &dma_init_struct);
2718
2719 dma_channel_enable(DMA2_CHANNEL4, TRUE);
2720}
2721
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
sd_card_info
sd_card_info_struct_type sd_card_info
Definition: sd_mmc_card/src/at32_sdio.c:46
sd_switch
sd_error_status_type sd_switch(uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp)
switch sd card speed to high speed
Definition: sd_mmc_card/src/at32_sdio.c:2333
command_rsp5_error
sd_error_status_type command_rsp5_error(uint8_t cmd)
checks for error conditions for r5 response.
Definition: sd_mmc_card/src/at32_sdio.c:2084
speed_change
sd_error_status_type speed_change(uint8_t speed)
set bus speed
Definition: sd_mmc_card/src/at32_sdio.c:2612
sd_power_off
sd_error_status_type sd_power_off(void)
turns the sdio output signals off.
Definition: sd_mmc_card/src/at32_sdio.c:394
sdio_data_init_struct
sdio_data_struct_type sdio_data_init_struct
Definition: sd_mmc_card/src/at32_sdio.c:38
sd_irq_service
sd_error_status_type sd_irq_service(void)
allows to process all the interrupts that are high.
Definition: sd_mmc_card/src/at32_sdio.c:1780
transfer_end
volatile uint8_t transfer_end
Definition: sd_mmc_card/src/at32_sdio.c:45
command_rsp7_error
sd_error_status_type command_rsp7_error(void)
checks for error conditions for R7 response.
Definition: sd_mmc_card/src/at32_sdio.c:1891
sd_device_mode_set
sd_error_status_type sd_device_mode_set(uint32_t mode)
set sdio work mode.
Definition: sd_mmc_card/src/at32_sdio.c:777
card_type
static sd_memory_card_type card_type
Definition: sd_mmc_card/src/at32_sdio.c:40
convert_from_bytes_to_power_of_two
uint8_t convert_from_bytes_to_power_of_two(uint16_t number_of_bytes)
converts the number of bytes in power of two and returns the power.
Definition: sd_mmc_card/src/at32_sdio.c:2676
sd_card_info_get
sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info)
returns information about specific card.
Definition: sd_mmc_card/src/at32_sdio.c:523
sdio_command_init_struct
sdio_command_struct_type sdio_command_init_struct
Definition: sd_mmc_card/src/at32_sdio.c:37
mmc_stream_write
sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1691
sd_card_init
sd_error_status_type sd_card_init(void)
intialises all cards or single card as the case may be card(s) come into standby state.
Definition: sd_mmc_card/src/at32_sdio.c:408
sd_block_read
sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma ...
Definition: sd_mmc_card/src/at32_sdio.c:1179
sd_deselect_select
sd_error_status_type sd_deselect_select(uint32_t addr)
selects od deselects the corresponding card.
Definition: sd_mmc_card/src/at32_sdio.c:798
command_rsp6_error
sd_error_status_type command_rsp6_error(uint8_t cmd, uint16_t *p_rca)
checks for error conditions for r6 (rca) response.
Definition: sd_mmc_card/src/at32_sdio.c:2147
SDIO1_IRQHandler
void SDIO1_IRQHandler(void)
sdio1 isr.
Definition: sd_mmc_card/src/at32_sdio.c:1760
stop_flag
static uint8_t stop_flag
Definition: sd_mmc_card/src/at32_sdio.c:43
mmc_switch
sd_error_status_type mmc_switch(uint8_t set, uint8_t index, uint8_t value)
switch mmc card speed to high speed
Definition: sd_mmc_card/src/at32_sdio.c:2282
sd_blocks_erase
sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks)
erase continuous data block
Definition: sd_mmc_card/src/at32_sdio.c:1021
check_card_programming
sd_error_status_type check_card_programming(uint8_t *p_status)
checks if the sd card is in programming state.
Definition: sd_mmc_card/src/at32_sdio.c:2389
transfer_error
volatile sd_error_status_type transfer_error
Definition: sd_mmc_card/src/at32_sdio.c:44
sd_bus_wide_enable
sd_error_status_type sd_bus_wide_enable(confirm_state new_state)
enable or disable the sdio wide bus mode.
Definition: sd_mmc_card/src/at32_sdio.c:2213
command_rsp1_error
sd_error_status_type command_rsp1_error(uint8_t cmd)
checks for error conditions for R1 response.
Definition: sd_mmc_card/src/at32_sdio.c:1928
SDIO2_IRQHandler
void SDIO2_IRQHandler(void)
sdio2 isr.
Definition: sd_mmc_card/src/at32_sdio.c:1770
sd_mult_blocks_write
sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed ...
Definition: sd_mmc_card/src/at32_sdio.c:1480
csd_table
static uint32_t csd_table[4]
Definition: sd_mmc_card/src/at32_sdio.c:41
sdio_clock_set
void sdio_clock_set(uint32_t clk_div)
set sdio clock devision factor.
Definition: sd_mmc_card/src/at32_sdio.c:179
sd_state_get
sd_card_state_type sd_state_get(void)
returns information about sd card.
Definition: sd_mmc_card/src/at32_sdio.c:2480
cid_table
static uint32_t cid_table[4]
Definition: sd_mmc_card/src/at32_sdio.c:41
sd_dma_config
void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio
Definition: sd_mmc_card/src/at32_sdio.c:2697
sd_block_write
sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be manag...
Definition: sd_mmc_card/src/at32_sdio.c:1358
device_mode
static sd_data_transfer_mode_type device_mode
Definition: sd_mmc_card/src/at32_sdio.c:42
sd_status_send
sd_error_status_type sd_status_send(uint32_t *p_card_status)
read current card status.
Definition: sd_mmc_card/src/at32_sdio.c:2443
sdio_command_data_send
sd_error_status_type sdio_command_data_send(sdio_command_struct_type *sdio_cmd_init_t, sdio_data_struct_type *sdio_data_init_t, uint32_t *buf)
read data from or write data to sd card.
Definition: sd_mmc_card/src/at32_sdio.c:821
command_rsp2_error
sd_error_status_type command_rsp2_error(void)
checks for error conditions for R2 (cid or csd) response.
Definition: sd_mmc_card/src/at32_sdio.c:2001
sd_init
sd_error_status_type sd_init(void)
initializes the sd card and put it into standby state (ready for data transfer).
Definition: sd_mmc_card/src/at32_sdio.c:70
mmc_stream_read
sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1644
scr_find
sd_error_status_type scr_find(void)
find the sd card scr register value.
Definition: sd_mmc_card/src/at32_sdio.c:2498
sd_power_on
sd_error_status_type sd_power_on(void)
enquires cards about their operating voltage and configures clock controls.
Definition: sd_mmc_card/src/at32_sdio.c:194
command_rsp4_error
sd_error_status_type command_rsp4_error(uint8_t cmd)
checks for error conditions for r4 response.
Definition: sd_mmc_card/src/at32_sdio.c:2041
sd_mult_blocks_read
sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mod...
Definition: sd_mmc_card/src/at32_sdio.c:1268
sd_wide_bus_operation_config
sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card.
Definition: sd_mmc_card/src/at32_sdio.c:734
rca
static uint32_t rca
Definition: sd_mmc_card/src/at32_sdio.c:41
command_rsp3_error
sd_error_status_type command_rsp3_error(void)
checks for error conditions for R3 (ocr) response.
Definition: sd_mmc_card/src/at32_sdio.c:1971
command_error
sd_error_status_type command_error(void)
checks for error conditions for cmd0.
Definition: sd_mmc_card/src/at32_sdio.c:1864
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_SDIO1_PERIPH_CLOCK
@ CRM_SDIO1_PERIPH_CLOCK
Definition: at32f403_crm.h:106
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_DMA2_PERIPH_CLOCK
@ CRM_DMA2_PERIPH_CLOCK
Definition: at32f403_crm.h:103
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
dma_dir_type
dma_dir_type
dma direction type
Definition: at32f403_dma.h:125
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA2_CHANNEL4
#define DMA2_CHANNEL4
Definition: at32f403_dma.h:367
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
sdio_command_config
void sdio_command_config(sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command.
Definition: at32f403_sdio.c:371
sdio_data_write
void sdio_data_write(sdio_type *sdio_x, uint32_t data)
write one word data to fifo.
Definition: at32f403_sdio.c:532
sdio_data_config
void sdio_data_config(sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data.
Definition: at32f403_sdio.c:458
sdio_data_read
uint32_t sdio_data_read(sdio_type *sdio_x)
read a word data from sdio fifo.
Definition: at32f403_sdio.c:507
sdio_command_state_machine_enable
void sdio_command_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM).
Definition: at32f403_sdio.c:394
sdio_clock_bypass
void sdio_clock_bypass(sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss
Definition: at32f403_sdio.c:139
sdio_flow_control_enable
void sdio_flow_control_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control.
Definition: at32f403_sdio.c:166
sdio_power_set
void sdio_power_set(sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller
Definition: at32f403_sdio.c:73
sdio_clock_config
void sdio_clock_config(sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock
Definition: at32f403_sdio.c:102
sdio_bus_width_config
void sdio_bus_width_config(sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width
Definition: at32f403_sdio.c:126
sdio_interrupt_enable
void sdio_interrupt_enable(sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt.
Definition: at32f403_sdio.c:230
sdio_flag_clear
void sdio_flag_clear(sdio_type *sdio_x, uint32_t flag)
clear sdio flag.
Definition: at32f403_sdio.c:357
sdio_power_status_get
sdio_power_state_type sdio_power_status_get(sdio_type *sdio_x)
get power status.
Definition: at32f403_sdio.c:85
sdio_response_get
uint32_t sdio_response_get(sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command.
Definition: at32f403_sdio.c:425
sdio_data_state_machine_enable
void sdio_data_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM).
Definition: at32f403_sdio.c:483
sdio_power_saving_mode_enable
void sdio_power_saving_mode_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle.
Definition: at32f403_sdio.c:153
sdio_flag_get
flag_status sdio_flag_get(sdio_type *sdio_x, uint32_t flag)
get sdio flag.
Definition: at32f403_sdio.c:320
sdio_dma_enable
void sdio_dma_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable dma.
Definition: at32f403_sdio.c:192
sdio_reset
void sdio_reset(sdio_type *sdio_x)
reset the sdio register
Definition: at32f403_sdio.c:49
sdio_clock_enable
void sdio_clock_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output.
Definition: at32f403_sdio.c:179
sdio_command_response_get
uint8_t sdio_command_response_get(sdio_type *sdio_x)
get command index of last command for which response received.
Definition: at32f403_sdio.c:407
sdio_bus_width_type
sdio_bus_width_type
sdio bus width
Definition: at32f403_sdio.h:137
sdio_block_size_type
sdio_block_size_type
sdio data block size
Definition: at32f403_sdio.h:178
SDIO_WAIT_FOR_NO
@ SDIO_WAIT_FOR_NO
Definition: at32f403_sdio.h:158
SDIO_WAIT_FOR_INT
@ SDIO_WAIT_FOR_INT
Definition: at32f403_sdio.h:159
SDIO_RESPONSE_LONG
@ SDIO_RESPONSE_LONG
Definition: at32f403_sdio.h:150
SDIO_RESPONSE_SHORT
@ SDIO_RESPONSE_SHORT
Definition: at32f403_sdio.h:149
SDIO_RESPONSE_NO
@ SDIO_RESPONSE_NO
Definition: at32f403_sdio.h:148
SDIO_CLOCK_EDGE_FALLING
@ SDIO_CLOCK_EDGE_FALLING
Definition: at32f403_sdio.h:130
SDIO_DATA_TRANSFER_TO_CARD
@ SDIO_DATA_TRANSFER_TO_CARD
Definition: at32f403_sdio.h:210
SDIO_DATA_TRANSFER_TO_CONTROLLER
@ SDIO_DATA_TRANSFER_TO_CONTROLLER
Definition: at32f403_sdio.h:211
SDIO_POWER_OFF
@ SDIO_POWER_OFF
Definition: at32f403_sdio.h:120
SDIO_POWER_ON
@ SDIO_POWER_ON
Definition: at32f403_sdio.h:121
SDIO_DATA_BLOCK_TRANSFER
@ SDIO_DATA_BLOCK_TRANSFER
Definition: at32f403_sdio.h:201
SDIO_DATA_STREAM_TRANSFER
@ SDIO_DATA_STREAM_TRANSFER
Definition: at32f403_sdio.h:202
SDIO_BUS_WIDTH_D1
@ SDIO_BUS_WIDTH_D1
Definition: at32f403_sdio.h:138
SDIO_BUS_WIDTH_D4
@ SDIO_BUS_WIDTH_D4
Definition: at32f403_sdio.h:139
SDIO_RSP3_INDEX
@ SDIO_RSP3_INDEX
Definition: at32f403_sdio.h:170
SDIO_RSP2_INDEX
@ SDIO_RSP2_INDEX
Definition: at32f403_sdio.h:169
SDIO_RSP4_INDEX
@ SDIO_RSP4_INDEX
Definition: at32f403_sdio.h:171
SDIO_RSP1_INDEX
@ SDIO_RSP1_INDEX
Definition: at32f403_sdio.h:168
SDIO_DATA_BLOCK_SIZE_8B
@ SDIO_DATA_BLOCK_SIZE_8B
Definition: at32f403_sdio.h:182
SDIO_DATA_BLOCK_SIZE_1B
@ SDIO_DATA_BLOCK_SIZE_1B
Definition: at32f403_sdio.h:179
SDIO_CMDTIMEOUT_FLAG
#define SDIO_CMDTIMEOUT_FLAG
Definition: at32f403_sdio.h:85
SDIO_TXBUFH_FLAG
#define SDIO_TXBUFH_FLAG
Definition: at32f403_sdio.h:97
SDIO_CMDCMPL_FLAG
#define SDIO_CMDCMPL_FLAG
Definition: at32f403_sdio.h:90
SDIO_DTFAIL_FLAG
#define SDIO_DTFAIL_FLAG
Definition: at32f403_sdio.h:84
SDIO_RXERRO_FLAG
#define SDIO_RXERRO_FLAG
Definition: at32f403_sdio.h:88
SDIO_RXBUFH_FLAG
#define SDIO_RXBUFH_FLAG
Definition: at32f403_sdio.h:98
SDIO_RXBUF_FLAG
#define SDIO_RXBUF_FLAG
Definition: at32f403_sdio.h:104
SDIO_CMDFAIL_FLAG
#define SDIO_CMDFAIL_FLAG
Definition: at32f403_sdio.h:83
SDIO_CMDRSPCMPL_FLAG
#define SDIO_CMDRSPCMPL_FLAG
Definition: at32f403_sdio.h:89
SDIO_DTBLKCMPL_FLAG
#define SDIO_DTBLKCMPL_FLAG
Definition: at32f403_sdio.h:93
SDIO_DTTIMEOUT_FLAG
#define SDIO_DTTIMEOUT_FLAG
Definition: at32f403_sdio.h:86
SDIO_SBITERR_FLAG
#define SDIO_SBITERR_FLAG
Definition: at32f403_sdio.h:92
SDIO_DTCMPL_FLAG
#define SDIO_DTCMPL_FLAG
Definition: at32f403_sdio.h:91
SDIO_TXERRU_FLAG
#define SDIO_TXERRU_FLAG
Definition: at32f403_sdio.h:87
SDIO_SBITERR_INT
#define SDIO_SBITERR_INT
Definition: at32f403_sdio.h:59
SDIO_RXBUFH_INT
#define SDIO_RXBUFH_INT
Definition: at32f403_sdio.h:65
SDIO_DTTIMEOUT_INT
#define SDIO_DTTIMEOUT_INT
Definition: at32f403_sdio.h:53
SDIO_TXERRU_INT
#define SDIO_TXERRU_INT
Definition: at32f403_sdio.h:54
SDIO_RXERRO_INT
#define SDIO_RXERRO_INT
Definition: at32f403_sdio.h:55
SDIO_DTFAIL_INT
#define SDIO_DTFAIL_INT
Definition: at32f403_sdio.h:51
SDIO_TXBUFH_INT
#define SDIO_TXBUFH_INT
Definition: at32f403_sdio.h:64
SDIO_DTCMP_INT
#define SDIO_DTCMP_INT
Definition: at32f403_sdio.h:58
SDIO_SEND_IF_COND
#define SDIO_SEND_IF_COND
Definition: sd_mmc_card/inc/at32_sdio.h:436
SD_CMD_SD_APP_SEND_SCR
#define SD_CMD_SD_APP_SEND_SCR
Definition: sd_mmc_card/inc/at32_sdio.h:306
SD_CMD_ERASE
#define SD_CMD_ERASE
Definition: sd_mmc_card/inc/at32_sdio.h:289
SD_CMD_APP_SD_SET_BUSWIDTH
#define SD_CMD_APP_SD_SET_BUSWIDTH
Definition: sd_mmc_card/inc/at32_sdio.h:301
SD_CMD_WRITE_SINGLE_BLOCK
#define SD_CMD_WRITE_SINGLE_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:278
SD_CMD_SD_ERASE_GRP_START
#define SD_CMD_SD_ERASE_GRP_START
Definition: sd_mmc_card/inc/at32_sdio.h:285
SD_CMD_APP_CMD
#define SD_CMD_APP_CMD
Definition: sd_mmc_card/inc/at32_sdio.h:293
SD_CMD_ALL_SEND_CID
#define SD_CMD_ALL_SEND_CID
Definition: sd_mmc_card/inc/at32_sdio.h:258
SD_CMD_STOP_TRANSMISSION
#define SD_CMD_STOP_TRANSMISSION
Definition: sd_mmc_card/inc/at32_sdio.h:268
SD_CMD_SEND_STATUS
#define SD_CMD_SEND_STATUS
Definition: sd_mmc_card/inc/at32_sdio.h:269
SD_CMD_SET_BLOCK_COUNT
#define SD_CMD_SET_BLOCK_COUNT
Definition: sd_mmc_card/inc/at32_sdio.h:277
SD_CMD_WRITE_DAT_UNTIL_STOP
#define SD_CMD_WRITE_DAT_UNTIL_STOP
Definition: sd_mmc_card/inc/at32_sdio.h:276
SD_CMD_SEND_OP_COND
#define SD_CMD_SEND_OP_COND
Definition: sd_mmc_card/inc/at32_sdio.h:257
SD_CMD_SET_BLOCKLEN
#define SD_CMD_SET_BLOCKLEN
Definition: sd_mmc_card/inc/at32_sdio.h:272
SD_CMD_HS_SWITCH
#define SD_CMD_HS_SWITCH
Definition: sd_mmc_card/inc/at32_sdio.h:262
SD_CMD_READ_SINGLE_BLOCK
#define SD_CMD_READ_SINGLE_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:273
SD_CMD_SD_APP_OP_COND
#define SD_CMD_SD_APP_OP_COND
Definition: sd_mmc_card/inc/at32_sdio.h:304
SD_CMD_GO_IDLE_STATE
#define SD_CMD_GO_IDLE_STATE
Definition: sd_mmc_card/inc/at32_sdio.h:256
SD_CMD_SET_REL_ADDR
#define SD_CMD_SET_REL_ADDR
Definition: sd_mmc_card/inc/at32_sdio.h:259
SD_CMD_ERASE_GRP_END
#define SD_CMD_ERASE_GRP_END
Definition: sd_mmc_card/inc/at32_sdio.h:288
SD_CMD_READ_DAT_UNTIL_STOP
#define SD_CMD_READ_DAT_UNTIL_STOP
Definition: sd_mmc_card/inc/at32_sdio.h:267
SD_CMD_SD_ERASE_GRP_END
#define SD_CMD_SD_ERASE_GRP_END
Definition: sd_mmc_card/inc/at32_sdio.h:286
SD_CMD_ERASE_GRP_START
#define SD_CMD_ERASE_GRP_START
Definition: sd_mmc_card/inc/at32_sdio.h:287
SD_CMD_SEL_DESEL_CARD
#define SD_CMD_SEL_DESEL_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:263
SD_CMD_WRITE_MULT_BLOCK
#define SD_CMD_WRITE_MULT_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:279
SD_CMD_READ_MULT_BLOCK
#define SD_CMD_READ_MULT_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:274
SD_CMD_SEND_CSD
#define SD_CMD_SEND_CSD
Definition: sd_mmc_card/inc/at32_sdio.h:265
sd_data_transfer_mode_type
sd_data_transfer_mode_type
Definition: sd_mmc_card/inc/at32_sdio.h:63
sd_error_status_type
sd_error_status_type
Definition: sd_mmc_card/inc/at32_sdio.h:72
sd_card_state_type
sd_card_state_type
Definition: sd_mmc_card/inc/at32_sdio.h:185
sd_memory_card_type
sd_memory_card_type
Definition: sd_mmc_card/inc/at32_sdio.h:201
SDIOx
#define SDIOx
Definition: sd_mmc_card/inc/at32_sdio.h:49
SDIO_INTR_STS_WRITE_MASK
#define SDIO_INTR_STS_WRITE_MASK
Definition: sd_mmc_card/inc/at32_sdio.h:472
SDIO_INTR_STS_READ_MASK
#define SDIO_INTR_STS_READ_MASK
Definition: sd_mmc_card/inc/at32_sdio.h:474
EXT_CSD_BUS_WIDTH
#define EXT_CSD_BUS_WIDTH
Definition: sd_mmc_card/inc/at32_sdio.h:461
EXT_CSD_CMD_SET_NORMAL
#define EXT_CSD_CMD_SET_NORMAL
Definition: sd_mmc_card/inc/at32_sdio.h:454
EXT_CSD_Write_byte
#define EXT_CSD_Write_byte
Definition: sd_mmc_card/inc/at32_sdio.h:452
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
SDIO_DATATIMEOUT
#define SDIO_DATATIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:340
SDIO_CMD0TIMEOUT
#define SDIO_CMD0TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:339
SDIO_STATIC_FLAGS
#define SDIO_STATIC_FLAGS
Definition: sd_mmc_card/inc/at32_sdio.h:338
SD_CARD_LOCKED
#define SD_CARD_LOCKED
Definition: sd_mmc_card/inc/at32_sdio.h:398
SD_VOLTAGE_WINDOW_SD
#define SD_VOLTAGE_WINDOW_SD
Definition: sd_mmc_card/inc/at32_sdio.h:389
SD_R5_ERROR
#define SD_R5_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:381
SD_CARD_RECEIVING
#define SD_CARD_RECEIVING
Definition: sd_mmc_card/inc/at32_sdio.h:400
SD_R5_OUT_OF_RANGE
#define SD_R5_OUT_OF_RANGE
Definition: sd_mmc_card/inc/at32_sdio.h:379
SD_MAX_DATA_LENGTH
#define SD_MAX_DATA_LENGTH
Definition: sd_mmc_card/inc/at32_sdio.h:406
SD_STD_CAPACITY
#define SD_STD_CAPACITY
Definition: sd_mmc_card/inc/at32_sdio.h:391
SD_R5_FUNCTION_NUMBER
#define SD_R5_FUNCTION_NUMBER
Definition: sd_mmc_card/inc/at32_sdio.h:380
SD_R6_ILLEGAL_CMD
#define SD_R6_ILLEGAL_CMD
Definition: sd_mmc_card/inc/at32_sdio.h:387
SD_R6_GENERAL_UNKNOWN_ERROR
#define SD_R6_GENERAL_UNKNOWN_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:386
SD_MAX_VOLT_TRIAL
#define SD_MAX_VOLT_TRIAL
Definition: sd_mmc_card/inc/at32_sdio.h:394
SD_DATATIMEOUT
#define SD_DATATIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:401
SD_ALLZERO
#define SD_ALLZERO
Definition: sd_mmc_card/inc/at32_sdio.h:395
SD_R6_CMD_CRC_ERROR
#define SD_R6_CMD_CRC_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:388
MMC_SWITCH_ERROR
#define MMC_SWITCH_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:372
SD_VOLTAGE_WINDOW_MMC
#define SD_VOLTAGE_WINDOW_MMC
Definition: sd_mmc_card/inc/at32_sdio.h:393
SD_CHECK_PATTERN
#define SD_CHECK_PATTERN
Definition: sd_mmc_card/inc/at32_sdio.h:392
SD_OCR_ERRORBITS
#define SD_OCR_ERRORBITS
Definition: sd_mmc_card/inc/at32_sdio.h:374
SD_CARD_PROGRAMMING
#define SD_CARD_PROGRAMMING
Definition: sd_mmc_card/inc/at32_sdio.h:399
SD_HIGH_CAPACITY
#define SD_HIGH_CAPACITY
Definition: sd_mmc_card/inc/at32_sdio.h:390
SD_TRANSFER_DMA_MODE
@ SD_TRANSFER_DMA_MODE
Definition: sd_mmc_card/inc/at32_sdio.h:65
SD_TRANSFER_POLLING_MODE
@ SD_TRANSFER_POLLING_MODE
Definition: sd_mmc_card/inc/at32_sdio.h:64
SD_ERROR
@ SD_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:116
SD_SDIO_UNKNOWN_FUNC
@ SD_SDIO_UNKNOWN_FUNC
Definition: sd_mmc_card/inc/at32_sdio.h:106
SD_DATA_FAIL
@ SD_DATA_FAIL
Definition: sd_mmc_card/inc/at32_sdio.h:75
SD_INVALID_PARAMETER
@ SD_INVALID_PARAMETER
Definition: sd_mmc_card/inc/at32_sdio.h:113
SD_CMD_FAIL
@ SD_CMD_FAIL
Definition: sd_mmc_card/inc/at32_sdio.h:74
SD_CMD_OUT_OF_RANGE
@ SD_CMD_OUT_OF_RANGE
Definition: sd_mmc_card/inc/at32_sdio.h:81
SD_GENERAL_UNKNOWN_ERROR
@ SD_GENERAL_UNKNOWN_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:92
SD_UNSUPPORTED_FEATURE
@ SD_UNSUPPORTED_FEATURE
Definition: sd_mmc_card/inc/at32_sdio.h:114
SD_TX_UNDERRUN
@ SD_TX_UNDERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:78
SD_ILLEGAL_CMD
@ SD_ILLEGAL_CMD
Definition: sd_mmc_card/inc/at32_sdio.h:89
SD_CMD_CRC_ERROR
@ SD_CMD_CRC_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:88
SD_RX_OVERRUN
@ SD_RX_OVERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:79
SD_REQ_NOT_APPLICABLE
@ SD_REQ_NOT_APPLICABLE
Definition: sd_mmc_card/inc/at32_sdio.h:112
SD_SWITCH_ERROR
@ SD_SWITCH_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:102
SD_INVALID_VOLTRANGE
@ SD_INVALID_VOLTRANGE
Definition: sd_mmc_card/inc/at32_sdio.h:100
SD_DATA_TIMEOUT
@ SD_DATA_TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:77
SD_START_BIT_ERR
@ SD_START_BIT_ERR
Definition: sd_mmc_card/inc/at32_sdio.h:80
SD_LOCK_UNLOCK_ERROR
@ SD_LOCK_UNLOCK_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:87
SD_CMD_RSP_TIMEOUT
@ SD_CMD_RSP_TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:76
SD_OK
@ SD_OK
Definition: sd_mmc_card/inc/at32_sdio.h:117
SD_CARD_ERROR
@ SD_CARD_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:194
SDIO_HIGH_CAPACITY_SD_CARD
@ SDIO_HIGH_CAPACITY_SD_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:204
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
@ SDIO_SECURE_DIGITAL_IO_COMBO_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:208
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
@ SDIO_HIGH_SPEED_MULTIMEDIA_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:207
SDIO_STD_CAPACITY_SD_CARD_V1_1
@ SDIO_STD_CAPACITY_SD_CARD_V1_1
Definition: sd_mmc_card/inc/at32_sdio.h:202
SDIO_SECURE_DIGITAL_IO_CARD
@ SDIO_SECURE_DIGITAL_IO_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:206
SDIO_STD_CAPACITY_SD_CARD_V2_0
@ SDIO_STD_CAPACITY_SD_CARD_V2_0
Definition: sd_mmc_card/inc/at32_sdio.h:203
SDIO_MULTIMEDIA_CARD
@ SDIO_MULTIMEDIA_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:205
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
sd_card_info_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:235
sd_card_info_struct_type::sd_scr_reg
sd_scr_struct_type sd_scr_reg
Definition: sd_mmc_card/inc/at32_sdio.h:238
sd_card_info_struct_type::card_capacity
long long card_capacity
Definition: sd_mmc_card/inc/at32_sdio.h:239
sd_card_info_struct_type::sd_cid_reg
sd_cid_struct_type sd_cid_reg
Definition: sd_mmc_card/inc/at32_sdio.h:237
sd_card_info_struct_type::sd_csd_reg
sd_csd_struct_type sd_csd_reg
Definition: sd_mmc_card/inc/at32_sdio.h:236
sd_card_info_struct_type::card_blk_size
uint32_t card_blk_size
Definition: sd_mmc_card/inc/at32_sdio.h:240
sd_card_info_struct_type::rca
uint16_t rca
Definition: sd_mmc_card/inc/at32_sdio.h:241
sd_card_info_struct_type::card_type
uint8_t card_type
Definition: sd_mmc_card/inc/at32_sdio.h:242
sd_cid_struct_type::reserved1
uint8_t reserved1
Definition: sd_mmc_card/inc/at32_sdio.h:175
sd_cid_struct_type::product_name2
uint8_t product_name2
Definition: sd_mmc_card/inc/at32_sdio.h:172
sd_cid_struct_type::manufact_date
uint16_t manufact_date
Definition: sd_mmc_card/inc/at32_sdio.h:176
sd_cid_struct_type::cid_crc
uint8_t cid_crc
Definition: sd_mmc_card/inc/at32_sdio.h:177
sd_cid_struct_type::product_reversion
uint8_t product_reversion
Definition: sd_mmc_card/inc/at32_sdio.h:173
sd_cid_struct_type::manufacturer_id
uint8_t manufacturer_id
Definition: sd_mmc_card/inc/at32_sdio.h:169
sd_cid_struct_type::product_sn
uint32_t product_sn
Definition: sd_mmc_card/inc/at32_sdio.h:174
sd_cid_struct_type::product_name1
uint32_t product_name1
Definition: sd_mmc_card/inc/at32_sdio.h:171
sd_cid_struct_type::reserved2
uint8_t reserved2
Definition: sd_mmc_card/inc/at32_sdio.h:178
sd_cid_struct_type::oem_app_id
uint16_t oem_app_id
Definition: sd_mmc_card/inc/at32_sdio.h:170
sd_csd_struct_type::spec_version
uint8_t spec_version
Definition: sd_mmc_card/inc/at32_sdio.h:126
sd_csd_struct_type::max_write_current_vdd_max
uint8_t max_write_current_vdd_max
Definition: sd_mmc_card/inc/at32_sdio.h:142
sd_csd_struct_type::nsac
uint8_t nsac
Definition: sd_mmc_card/inc/at32_sdio.h:129
sd_csd_struct_type::card_cmd_classes
uint16_t card_cmd_classes
Definition: sd_mmc_card/inc/at32_sdio.h:131
sd_csd_struct_type::part_blk_read
uint8_t part_blk_read
Definition: sd_mmc_card/inc/at32_sdio.h:133
sd_csd_struct_type::read_blk_misalign
uint8_t read_blk_misalign
Definition: sd_mmc_card/inc/at32_sdio.h:135
sd_csd_struct_type::content_protect_app
uint8_t content_protect_app
Definition: sd_mmc_card/inc/at32_sdio.h:153
sd_csd_struct_type::write_speed_factor
uint8_t write_speed_factor
Definition: sd_mmc_card/inc/at32_sdio.h:149
sd_csd_struct_type::max_read_blk_length
uint8_t max_read_blk_length
Definition: sd_mmc_card/inc/at32_sdio.h:132
sd_csd_struct_type::max_bus_clk_freq
uint8_t max_bus_clk_freq
Definition: sd_mmc_card/inc/at32_sdio.h:130
sd_csd_struct_type::ecc_code
uint8_t ecc_code
Definition: sd_mmc_card/inc/at32_sdio.h:159
sd_csd_struct_type::reserved4
uint8_t reserved4
Definition: sd_mmc_card/inc/at32_sdio.h:161
sd_csd_struct_type::dsr_implemented
uint8_t dsr_implemented
Definition: sd_mmc_card/inc/at32_sdio.h:136
sd_csd_struct_type::max_read_current_vdd_min
uint8_t max_read_current_vdd_min
Definition: sd_mmc_card/inc/at32_sdio.h:139
sd_csd_struct_type::reserved2
uint8_t reserved2
Definition: sd_mmc_card/inc/at32_sdio.h:137
sd_csd_struct_type::erase_group_size_mult
uint8_t erase_group_size_mult
Definition: sd_mmc_card/inc/at32_sdio.h:145
sd_csd_struct_type::file_formart
uint8_t file_formart
Definition: sd_mmc_card/inc/at32_sdio.h:158
sd_csd_struct_type::temp_write_protect
uint8_t temp_write_protect
Definition: sd_mmc_card/inc/at32_sdio.h:157
sd_csd_struct_type::permanent_write_protect
uint8_t permanent_write_protect
Definition: sd_mmc_card/inc/at32_sdio.h:156
sd_csd_struct_type::max_read_current_vdd_max
uint8_t max_read_current_vdd_max
Definition: sd_mmc_card/inc/at32_sdio.h:140
sd_csd_struct_type::file_format_group
uint8_t file_format_group
Definition: sd_mmc_card/inc/at32_sdio.h:154
sd_csd_struct_type::device_size
uint32_t device_size
Definition: sd_mmc_card/inc/at32_sdio.h:138
sd_csd_struct_type::write_blk_misalign
uint8_t write_blk_misalign
Definition: sd_mmc_card/inc/at32_sdio.h:134
sd_csd_struct_type::csd_struct
uint8_t csd_struct
Definition: sd_mmc_card/inc/at32_sdio.h:125
sd_csd_struct_type::write_protect_group_enable
uint8_t write_protect_group_enable
Definition: sd_mmc_card/inc/at32_sdio.h:147
sd_csd_struct_type::max_write_current_vdd_min
uint8_t max_write_current_vdd_min
Definition: sd_mmc_card/inc/at32_sdio.h:141
sd_csd_struct_type::reserved1
uint8_t reserved1
Definition: sd_mmc_card/inc/at32_sdio.h:127
sd_csd_struct_type::max_write_blk_length
uint8_t max_write_blk_length
Definition: sd_mmc_card/inc/at32_sdio.h:150
sd_csd_struct_type::csd_crc
uint8_t csd_crc
Definition: sd_mmc_card/inc/at32_sdio.h:160
sd_csd_struct_type::write_protect_group_size
uint8_t write_protect_group_size
Definition: sd_mmc_card/inc/at32_sdio.h:146
sd_csd_struct_type::reserved3
uint8_t reserved3
Definition: sd_mmc_card/inc/at32_sdio.h:152
sd_csd_struct_type::taac
uint8_t taac
Definition: sd_mmc_card/inc/at32_sdio.h:128
sd_csd_struct_type::manufacturer_default_ecc
uint8_t manufacturer_default_ecc
Definition: sd_mmc_card/inc/at32_sdio.h:148
sd_csd_struct_type::part_blk_write
uint8_t part_blk_write
Definition: sd_mmc_card/inc/at32_sdio.h:151
sd_csd_struct_type::copy_flag
uint8_t copy_flag
Definition: sd_mmc_card/inc/at32_sdio.h:155
sd_csd_struct_type::erase_group_size
uint8_t erase_group_size
Definition: sd_mmc_card/inc/at32_sdio.h:144
sd_csd_struct_type::device_size_mult
uint8_t device_size_mult
Definition: sd_mmc_card/inc/at32_sdio.h:143
sd_scr_struct_type::sd_bus_width
uint32_t sd_bus_width
Definition: sd_mmc_card/inc/at32_sdio.h:220
sd_scr_struct_type::sd_spec
uint32_t sd_spec
Definition: sd_mmc_card/inc/at32_sdio.h:218
sdio_command_struct_type
sdio command structure
Definition: at32f403_sdio.h:227
sdio_command_struct_type::cmd_index
uint8_t cmd_index
Definition: at32f403_sdio.h:229
sdio_command_struct_type::argument
uint32_t argument
Definition: at32f403_sdio.h:228
sdio_command_struct_type::wait_type
sdio_wait_type wait_type
Definition: at32f403_sdio.h:231
sdio_command_struct_type::rsp_type
sdio_reponse_type rsp_type
Definition: at32f403_sdio.h:230
sdio_data_struct_type
sdio data structure
Definition: at32f403_sdio.h:238
sdio_data_struct_type::block_size
sdio_block_size_type block_size
Definition: at32f403_sdio.h:241
sdio_data_struct_type::transfer_direction
sdio_transfer_direction_type transfer_direction
Definition: at32f403_sdio.h:243
sdio_data_struct_type::timeout
uint32_t timeout
Definition: at32f403_sdio.h:239
sdio_data_struct_type::transfer_mode
sdio_transfer_mode_type transfer_mode
Definition: at32f403_sdio.h:242
sdio_data_struct_type::data_length
uint32_t data_length
Definition: at32f403_sdio.h:240


AT32F403 Firmwary Library: at32_sdio.h Source File

  • sdio
  • sdio_fatfs
  • inc
sdio_fatfs/inc/at32_sdio.h
Go to the documentation of this file.
1
26/* define to prevent recursive inclusion -------------------------------------*/
27#ifndef __AT32_SDIO_H
28#define __AT32_SDIO_H
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34/* includes ------------------------------------------------------------------*/
35#include "at32f403.h"
36
49#define SDIOx SDIO1
50
62typedef enum
63{
64 SD_TRANSFER_POLLING_MODE = 0,
65 SD_TRANSFER_DMA_MODE = 1
66} sd_data_transfer_mode_type;
67
71typedef enum
72{
73 /* sdio specific error defines ------------------------------------------*/
74 SD_CMD_FAIL = 1,
75 SD_DATA_FAIL = 2,
76 SD_CMD_RSP_TIMEOUT = 3,
77 SD_DATA_TIMEOUT = 4,
78 SD_TX_UNDERRUN = 5,
79 SD_RX_OVERRUN = 6,
80 SD_START_BIT_ERR = 7,
81 SD_CMD_OUT_OF_RANGE = 8,
82 SD_ADDR_MISALIGNED = 9,
83 SD_BLK_LEN_ERR = 10,
84 SD_ERASE_SEQ_ERR = 11,
85 SD_INVALID_ERASE_PARAM = 12,
86 SD_WR_PROTECT_VIOLATION = 13,
87 SD_LOCK_UNLOCK_ERROR = 14,
88 SD_CMD_CRC_ERROR = 15,
89 SD_ILLEGAL_CMD = 16,
90 SD_CARD_ECC_ERROR = 17,
91 SD_CARD_CONTROLLER_ERR = 18,
92 SD_GENERAL_UNKNOWN_ERROR = 19,
93 SD_STREAM_RD_UNDERRUN = 20,
94 SD_STREAM_WR_OVERRUN = 21,
95 SD_CID_CSD_OVERWRITE = 22,
96 SD_WP_ERASE_SKIP = 23,
97 SD_CARD_ECC_DISABLED = 24,
98 SD_ERASE_RESET = 25,
99 SD_AKE_SEQ_ERROR = 26,
100 SD_INVALID_VOLTRANGE = 27,
101 SD_ADDR_OUT_OF_RANGE = 28,
102 SD_SWITCH_ERROR = 29,
103 SD_SDIO_DISABLED = 30,
104 SD_SDIO_FUNC_BUSY = 31,
105 SD_SDIO_FUNC_ERROR = 32,
106 SD_SDIO_UNKNOWN_FUNC = 33,
108 /* standard error defines --------------------------------------------*/
109 SD_INTERNAL_ERROR,
110 SD_NOT_CONFIGURED,
111 SD_REQ_PENDING,
112 SD_REQ_NOT_APPLICABLE,
113 SD_INVALID_PARAMETER,
114 SD_UNSUPPORTED_FEATURE,
115 SD_UNSUPPORTED_HW,
116 SD_ERROR,
117 SD_OK = 0
118} sd_error_status_type;
119
123typedef struct
124{
125 uint8_t csd_struct;
126 uint8_t spec_version;
127 uint8_t reserved1;
128 uint8_t taac;
129 uint8_t nsac;
130 uint8_t max_bus_clk_freq;
131 uint16_t card_cmd_classes;
132 uint8_t max_read_blk_length;
133 uint8_t part_blk_read;
134 uint8_t write_blk_misalign;
135 uint8_t read_blk_misalign;
136 uint8_t dsr_implemented;
137 uint8_t reserved2;
138 uint32_t device_size;
139 uint8_t max_read_current_vdd_min;
140 uint8_t max_read_current_vdd_max;
141 uint8_t max_write_current_vdd_min;
142 uint8_t max_write_current_vdd_max;
143 uint8_t device_size_mult;
144 uint8_t erase_group_size;
145 uint8_t erase_group_size_mult;
146 uint8_t write_protect_group_size;
147 uint8_t write_protect_group_enable;
148 uint8_t manufacturer_default_ecc;
149 uint8_t write_speed_factor;
150 uint8_t max_write_blk_length;
151 uint8_t part_blk_write;
152 uint8_t reserved3;
153 uint8_t content_protect_app;
154 uint8_t file_format_group;
155 uint8_t copy_flag;
156 uint8_t permanent_write_protect;
157 uint8_t temp_write_protect;
158 uint8_t file_formart;
159 uint8_t ecc_code;
160 uint8_t csd_crc;
161 uint8_t reserved4;
162} sd_csd_struct_type;
163
167typedef struct
168{
169 uint8_t manufacturer_id;
170 uint16_t oem_app_id;
171 uint32_t product_name1;
172 uint8_t product_name2;
173 uint8_t product_reversion;
174 uint32_t product_sn;
175 uint8_t reserved1;
176 uint16_t manufact_date;
177 uint8_t cid_crc;
178 uint8_t reserved2;
179} sd_cid_struct_type;
180
184typedef enum
185{
186 SD_CARD_READY = ((uint32_t)0x00000001),
187 SD_CARD_IDENTIFICATION = ((uint32_t)0x00000002),
188 SD_CARD_STANDBY = ((uint32_t)0x00000003),
189 SD_CARD_TRANSFER = ((uint32_t)0x00000004),
190 SD_CARD_SENDING = ((uint32_t)0x00000005),
191 SD_CARD_RECEIVING = ((uint32_t)0x00000006),
192 SD_CARD_PROGRAMMING = ((uint32_t)0x00000007),
193 SD_CARD_DISCONNECTED = ((uint32_t)0x00000008),
194 SD_CARD_ERROR = ((uint32_t)0x000000FF)
195} sd_card_state_type;
196
200typedef enum
201{
202 SDIO_STD_CAPACITY_SD_CARD_V1_1 = 0,
203 SDIO_STD_CAPACITY_SD_CARD_V2_0 = 1,
204 SDIO_HIGH_CAPACITY_SD_CARD = 2,
205 SDIO_MULTIMEDIA_CARD = 3,
206 SDIO_SECURE_DIGITAL_IO_CARD = 4,
207 SDIO_HIGH_SPEED_MULTIMEDIA_CARD = 5,
208 SDIO_SECURE_DIGITAL_IO_COMBO_CARD = 6,
209 SDIO_HIGH_CAPACITY_MMC_CARD = 7,
210 SDIO_SDIO_CARD = 8
211} sd_memory_card_type;
212
216typedef struct
217{
218 uint32_t sd_spec :4; /* [59:56] */
219 uint32_t scr_structure :4; /* [60:63] */
220 uint32_t sd_bus_width :4; /* [51:48] */
221 uint32_t sd_security :3; /* [52:54] */
222 uint32_t data_stat_after_erase :1; /* [55:55] */
223 uint32_t reserved1 :7; /* [46:40] */
224 uint32_t sd_spec3 :1; /* [47:47] */
225 uint32_t cmd20_support :1; /* [32:32] */
226 uint32_t cmd23_support :1; /* [33:33] */
227 uint32_t reserverd2 :6; /* [34:39] */
228 uint32_t reserverd3; /* [31:0] */
229} sd_scr_struct_type;
230
234typedef struct
235{
236 sd_csd_struct_type sd_csd_reg;
237 sd_cid_struct_type sd_cid_reg;
238 sd_scr_struct_type sd_scr_reg;
239 long long card_capacity;
240 uint32_t card_blk_size;
241 uint16_t rca;
242 uint8_t card_type;
243} sd_card_info_struct_type;
244
256#define SD_CMD_GO_IDLE_STATE ((uint8_t)0)
257#define SD_CMD_SEND_OP_COND ((uint8_t)1)
258#define SD_CMD_ALL_SEND_CID ((uint8_t)2)
259#define SD_CMD_SET_REL_ADDR ((uint8_t)3)
260#define SD_CMD_SET_DSR ((uint8_t)4)
261#define SD_CMD_SDIO_SEN_OP_COND ((uint8_t)5)
262#define SD_CMD_HS_SWITCH ((uint8_t)6)
263#define SD_CMD_SEL_DESEL_CARD ((uint8_t)7)
264#define SD_CMD_HS_SEND_EXT_CSD ((uint8_t)8)
265#define SD_CMD_SEND_CSD ((uint8_t)9)
266#define SD_CMD_SEND_CID ((uint8_t)10)
267#define SD_CMD_READ_DAT_UNTIL_STOP ((uint8_t)11)
268#define SD_CMD_STOP_TRANSMISSION ((uint8_t)12)
269#define SD_CMD_SEND_STATUS ((uint8_t)13)
270#define SD_CMD_HS_BUSTEST_READ ((uint8_t)14)
271#define SD_CMD_GO_INACTIVE_STATE ((uint8_t)15)
272#define SD_CMD_SET_BLOCKLEN ((uint8_t)16)
273#define SD_CMD_READ_SINGLE_BLOCK ((uint8_t)17)
274#define SD_CMD_READ_MULT_BLOCK ((uint8_t)18)
275#define SD_CMD_HS_BUSTEST_WRITE ((uint8_t)19)
276#define SD_CMD_WRITE_DAT_UNTIL_STOP ((uint8_t)20)
277#define SD_CMD_SET_BLOCK_COUNT ((uint8_t)23)
278#define SD_CMD_WRITE_SINGLE_BLOCK ((uint8_t)24)
279#define SD_CMD_WRITE_MULT_BLOCK ((uint8_t)25)
280#define SD_CMD_PROG_CID ((uint8_t)26)
281#define SD_CMD_PROG_CSD ((uint8_t)27)
282#define SD_CMD_SET_WRITE_PROT ((uint8_t)28)
283#define SD_CMD_CLR_WRITE_PROT ((uint8_t)29)
284#define SD_CMD_SEND_WRITE_PROT ((uint8_t)30)
285#define SD_CMD_SD_ERASE_GRP_START ((uint8_t)32)
286#define SD_CMD_SD_ERASE_GRP_END ((uint8_t)33)
287#define SD_CMD_ERASE_GRP_START ((uint8_t)35)
288#define SD_CMD_ERASE_GRP_END ((uint8_t)36)
289#define SD_CMD_ERASE ((uint8_t)38)
290#define SD_CMD_FAST_IO ((uint8_t)39)
291#define SD_CMD_GO_IRQ_STATE ((uint8_t)40)
292#define SD_CMD_LOCK_UNLOCK ((uint8_t)42)
293#define SD_CMD_APP_CMD ((uint8_t)55)
294#define SD_CMD_GEN_CMD ((uint8_t)56)
295#define SD_CMD_NO_CMD ((uint8_t)64)
296
301#define SD_CMD_APP_SD_SET_BUSWIDTH ((uint8_t)6)
302#define SD_CMD_SD_APP_STAUS ((uint8_t)13)
303#define SD_CMD_SD_APP_SEND_NUM_WRITE_BLOCKS ((uint8_t)22)
304#define SD_CMD_SD_APP_OP_COND ((uint8_t)41)
305#define SD_CMD_SD_APP_SET_CLR_CARD_DETECT ((uint8_t)42)
306#define SD_CMD_SD_APP_SEND_SCR ((uint8_t)51)
307#define SD_CMD_SDIO_RW_DIRECT ((uint8_t)52)
308#define SD_CMD_SDIO_RW_EXTENDED ((uint8_t)53)
309
314#define SD_CMD_SD_APP_GET_MKB ((uint8_t)43)
315#define SD_CMD_SD_APP_GET_MID ((uint8_t)44)
316#define SD_CMD_SD_APP_SET_CER_RN1 ((uint8_t)45)
317#define SD_CMD_SD_APP_GET_CER_RN2 ((uint8_t)46)
318#define SD_CMD_SD_APP_SET_CER_RES2 ((uint8_t)47)
319#define SD_CMD_SD_APP_GET_CER_RES1 ((uint8_t)48)
320#define SD_CMD_SD_APP_SECURE_READ_MULTIPLE_BLOCK ((uint8_t)18)
321#define SD_CMD_SD_APP_SECURE_WRITE_MULTIPLE_BLOCK ((uint8_t)25)
322#define SD_CMD_SD_APP_SECURE_ERASE ((uint8_t)38)
323#define SD_CMD_SD_APP_CHANGE_SECURE_AREA ((uint8_t)49)
324#define SD_CMD_SD_APP_SECURE_WRITE_MKB ((uint8_t)48)
325
337#define NULL 0
338#define SDIO_STATIC_FLAGS ((uint32_t)0x000005FF)
339#define SDIO_CMD0TIMEOUT ((uint32_t)0x00010000)
340#define SDIO_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
341#define SDIO_FIFO_Address ((uint32_t)0x40018080)
342
354#define SD_OCR_ADDR_OUT_OF_RANGE ((uint32_t)0x80000000)
355#define SD_OCR_ADDR_MISALIGNED ((uint32_t)0x40000000)
356#define SD_OCR_BLK_LEN_ERR ((uint32_t)0x20000000)
357#define SD_OCR_ERASE_SEQ_ERR ((uint32_t)0x10000000)
358#define SD_OCR_INVALID_ERASE_PARAM ((uint32_t)0x08000000)
359#define SD_OCR_WR_PROTECT_VIOLATION ((uint32_t)0x04000000)
360#define SD_OCR_LOCK_UNLOCK_ERROR ((uint32_t)0x01000000)
361#define SD_OCR_CMD_CRC_ERROR ((uint32_t)0x00800000)
362#define SD_OCR_ILLEGAL_CMD ((uint32_t)0x00400000)
363#define SD_OCR_CARD_ECC_ERROR ((uint32_t)0x00200000)
364#define SD_OCR_CARD_CONTROLLER_ERR ((uint32_t)0x00100000)
365#define SD_OCR_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00080000)
366#define SD_OCR_STREAM_RD_UNDERRUN ((uint32_t)0x00040000)
367#define SD_OCR_STREAM_WR_OVERRUN ((uint32_t)0x00020000)
368#define SD_OCR_CID_CSD_OVERWRIETE ((uint32_t)0x00010000)
369#define SD_OCR_WP_ERASE_SKIP ((uint32_t)0x00008000)
370#define SD_OCR_CARD_ECC_DISABLED ((uint32_t)0x00004000)
371#define SD_OCR_ERASE_RESET ((uint32_t)0x00002000)
372#define MMC_SWITCH_ERROR ((uint32_t)0x00000080)
373#define SD_OCR_AKE_SEQ_ERROR ((uint32_t)0x00000008)
374#define SD_OCR_ERRORBITS ((uint32_t)0xFDFFE008)
375
379#define SD_R5_OUT_OF_RANGE ((uint32_t)0x00000100)
380#define SD_R5_FUNCTION_NUMBER ((uint32_t)0x00000200)
381#define SD_R5_ERROR ((uint32_t)0x00000800)
382
386#define SD_R6_GENERAL_UNKNOWN_ERROR ((uint32_t)0x00002000)
387#define SD_R6_ILLEGAL_CMD ((uint32_t)0x00004000)
388#define SD_R6_CMD_CRC_ERROR ((uint32_t)0x00008000)
389#define SD_VOLTAGE_WINDOW_SD ((uint32_t)0x80100000)
390#define SD_HIGH_CAPACITY ((uint32_t)0x40000000)
391#define SD_STD_CAPACITY ((uint32_t)0x00000000)
392#define SD_CHECK_PATTERN ((uint32_t)0x000001AA)
393#define SD_VOLTAGE_WINDOW_MMC ((uint32_t)0x80FF8000)
394#define SD_MAX_VOLT_TRIAL ((uint32_t)0x000000FF)
395#define SD_ALLZERO ((uint32_t)0x00000000)
396#define SD_WIDE_BUS_SUPPORT ((uint32_t)0x00040000)
397#define SD_SINGLE_BUS_SUPPORT ((uint32_t)0x00010000)
398#define SD_CARD_LOCKED ((uint32_t)0x02000000)
399#define SD_CARD_PROGRAMMING ((uint32_t)0x00000007)
400#define SD_CARD_RECEIVING ((uint32_t)0x00000006)
401#define SD_DATATIMEOUT ((uint32_t)0xFFFFFFFF)
402#define SD_0TO7BITS ((uint32_t)0x000000FF)
403#define SD_8TO15BITS ((uint32_t)0x0000FF00)
404#define SD_16TO23BITS ((uint32_t)0x00FF0000)
405#define SD_24TO31BITS ((uint32_t)0xFF000000)
406#define SD_MAX_DATA_LENGTH ((uint32_t)0x01FFFFFF)
407#define SD_HALFFIFO ((uint32_t)0x00000008)
408#define SD_HALFFIFOBYTES ((uint32_t)0x00000020)
409
421#define SD_CCCC_LOCK_UNLOCK ((uint32_t)0x00000080)
422#define SD_CCCC_WRITE_PROT ((uint32_t)0x00000040)
423#define SD_CCCC_ERASE ((uint32_t)0x00000020)
424
436#define SDIO_SEND_IF_COND ((uint32_t)0x00000008)
437
449#define EXT_CSD_Command_set 0x0
450#define EXT_CSD_Set_bit 0x1
451#define EXT_CSD_Clear_byte 0x2
452#define EXT_CSD_Write_byte 0x3
453
454#define EXT_CSD_CMD_SET_NORMAL (1<<0)
455#define EXT_CSD_CMD_SET_SECURE (1<<1)
456#define EXT_CSD_CMD_SET_CPSECURE (1<<2)
457
461#define EXT_CSD_BUS_WIDTH 183
462#define EXT_CSD_HS_TIMING 185
463
472#define SDIO_INTR_STS_WRITE_MASK (SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_TXERRU_FLAG | \
473 SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
474#define SDIO_INTR_STS_READ_MASK (SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_RXERRO_FLAG | \
475 SDIO_DTCMPL_FLAG | SDIO_SBITERR_FLAG)
480extern sd_card_info_struct_type sd_card_info;
481
486/* sd exported functions ----------------------------------------*/
487 sd_error_status_type sd_init(void);
488void sdio_clock_set(uint32_t clkdiv);
489 sd_error_status_type sd_power_on(void);
490 sd_error_status_type sd_power_off(void);
491 sd_error_status_type sd_card_init(void);
492 sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info);
493 sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode);
494 sd_error_status_type sd_device_mode_set(uint32_t mode);
495 sd_error_status_type sd_deselect_select(uint32_t addr);
496 sd_error_status_type sd_status_send(uint32_t *p_card_status);
497 sd_card_state_type sd_state_get(void);
498 sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks);
499 sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size);
500 sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks);
501 sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size);
502 sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks);
503 sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len);
504 sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len);
505 sd_error_status_type sd_irq_service(void);
506void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir);
507
520#ifdef __cplusplus
521}
522#endif
523
524#endif /* __AT32_SDIO_H */
at32f403.h
at32f403 header file
card_type
static sd_memory_card_type card_type
Definition: sd_mmc_card/src/at32_sdio.c:40
rca
static uint32_t rca
Definition: sd_mmc_card/src/at32_sdio.c:41
sd_card_info
sd_card_info_struct_type sd_card_info
Definition: sd_mmc_card/src/at32_sdio.c:46
dma_dir_type
dma_dir_type
dma direction type
Definition: at32f403_dma.h:125
sdio_bus_width_type
sdio_bus_width_type
sdio bus width
Definition: at32f403_sdio.h:137
sd_error_status_type
sd_error_status_type
Definition: sd_mmc_card/inc/at32_sdio.h:72
sd_card_state_type
sd_card_state_type
Definition: sd_mmc_card/inc/at32_sdio.h:185
sd_power_off
sd_error_status_type sd_power_off(void)
turns the sdio output signals off.
Definition: sd_mmc_card/src/at32_sdio.c:394
sd_irq_service
sd_error_status_type sd_irq_service(void)
allows to process all the interrupts that are high.
Definition: sd_mmc_card/src/at32_sdio.c:1780
sd_device_mode_set
sd_error_status_type sd_device_mode_set(uint32_t mode)
set sdio work mode.
Definition: sd_mmc_card/src/at32_sdio.c:777
sd_card_info_get
sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info)
returns information about specific card.
Definition: sd_mmc_card/src/at32_sdio.c:523
mmc_stream_write
sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1691
sd_card_init
sd_error_status_type sd_card_init(void)
intialises all cards or single card as the case may be card(s) come into standby state.
Definition: sd_mmc_card/src/at32_sdio.c:408
sd_block_read
sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma ...
Definition: sd_mmc_card/src/at32_sdio.c:1179
sd_deselect_select
sd_error_status_type sd_deselect_select(uint32_t addr)
selects od deselects the corresponding card.
Definition: sd_mmc_card/src/at32_sdio.c:798
sdio_clock_set
void sdio_clock_set(uint32_t clkdiv)
set sdio clock devision factor.
Definition: sd_mmc_card/src/at32_sdio.c:179
sd_blocks_erase
sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks)
erase continuous data block
Definition: sd_mmc_card/src/at32_sdio.c:1021
sd_mult_blocks_write
sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed ...
Definition: sd_mmc_card/src/at32_sdio.c:1480
sd_state_get
sd_card_state_type sd_state_get(void)
returns information about sd card.
Definition: sd_mmc_card/src/at32_sdio.c:2480
sd_dma_config
void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio
Definition: sd_mmc_card/src/at32_sdio.c:2697
sd_block_write
sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be manag...
Definition: sd_mmc_card/src/at32_sdio.c:1358
sd_status_send
sd_error_status_type sd_status_send(uint32_t *p_card_status)
read current card status.
Definition: sd_mmc_card/src/at32_sdio.c:2443
sd_init
sd_error_status_type sd_init(void)
initializes the sd card and put it into standby state (ready for data transfer).
Definition: sd_mmc_card/src/at32_sdio.c:70
mmc_stream_read
sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream.
Definition: sd_mmc_card/src/at32_sdio.c:1644
sd_power_on
sd_error_status_type sd_power_on(void)
enquires cards about their operating voltage and configures clock controls.
Definition: sd_mmc_card/src/at32_sdio.c:194
sd_mult_blocks_read
sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mod...
Definition: sd_mmc_card/src/at32_sdio.c:1268
sd_wide_bus_operation_config
sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card.
Definition: sd_mmc_card/src/at32_sdio.c:734
sd_data_transfer_mode_type
sd_data_transfer_mode_type
Definition: sdio_fatfs/inc/at32_sdio.h:63
sd_error_status_type
sd_error_status_type
Definition: sdio_fatfs/inc/at32_sdio.h:72
sd_card_state_type
sd_card_state_type
Definition: sdio_fatfs/inc/at32_sdio.h:185
sd_memory_card_type
sd_memory_card_type
Definition: sdio_fatfs/inc/at32_sdio.h:201
SD_TRANSFER_DMA_MODE
@ SD_TRANSFER_DMA_MODE
Definition: sdio_fatfs/inc/at32_sdio.h:65
SD_TRANSFER_POLLING_MODE
@ SD_TRANSFER_POLLING_MODE
Definition: sdio_fatfs/inc/at32_sdio.h:64
SD_ERROR
@ SD_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:116
SD_WP_ERASE_SKIP
@ SD_WP_ERASE_SKIP
Definition: sdio_fatfs/inc/at32_sdio.h:96
SD_SDIO_UNKNOWN_FUNC
@ SD_SDIO_UNKNOWN_FUNC
Definition: sdio_fatfs/inc/at32_sdio.h:106
SD_DATA_FAIL
@ SD_DATA_FAIL
Definition: sdio_fatfs/inc/at32_sdio.h:75
SD_STREAM_WR_OVERRUN
@ SD_STREAM_WR_OVERRUN
Definition: sdio_fatfs/inc/at32_sdio.h:94
SD_INVALID_PARAMETER
@ SD_INVALID_PARAMETER
Definition: sdio_fatfs/inc/at32_sdio.h:113
SD_CMD_FAIL
@ SD_CMD_FAIL
Definition: sdio_fatfs/inc/at32_sdio.h:74
SD_CMD_OUT_OF_RANGE
@ SD_CMD_OUT_OF_RANGE
Definition: sdio_fatfs/inc/at32_sdio.h:81
SD_UNSUPPORTED_HW
@ SD_UNSUPPORTED_HW
Definition: sdio_fatfs/inc/at32_sdio.h:115
SD_SDIO_FUNC_ERROR
@ SD_SDIO_FUNC_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:105
SD_INTERNAL_ERROR
@ SD_INTERNAL_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:109
SD_INVALID_ERASE_PARAM
@ SD_INVALID_ERASE_PARAM
Definition: sdio_fatfs/inc/at32_sdio.h:85
SD_GENERAL_UNKNOWN_ERROR
@ SD_GENERAL_UNKNOWN_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:92
SD_CARD_ECC_DISABLED
@ SD_CARD_ECC_DISABLED
Definition: sdio_fatfs/inc/at32_sdio.h:97
SD_CARD_CONTROLLER_ERR
@ SD_CARD_CONTROLLER_ERR
Definition: sdio_fatfs/inc/at32_sdio.h:91
SD_ERASE_RESET
@ SD_ERASE_RESET
Definition: sdio_fatfs/inc/at32_sdio.h:98
SD_CARD_ECC_ERROR
@ SD_CARD_ECC_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:90
SD_STREAM_RD_UNDERRUN
@ SD_STREAM_RD_UNDERRUN
Definition: sdio_fatfs/inc/at32_sdio.h:93
SD_UNSUPPORTED_FEATURE
@ SD_UNSUPPORTED_FEATURE
Definition: sdio_fatfs/inc/at32_sdio.h:114
SD_TX_UNDERRUN
@ SD_TX_UNDERRUN
Definition: sdio_fatfs/inc/at32_sdio.h:78
SD_ILLEGAL_CMD
@ SD_ILLEGAL_CMD
Definition: sdio_fatfs/inc/at32_sdio.h:89
SD_SDIO_FUNC_BUSY
@ SD_SDIO_FUNC_BUSY
Definition: sdio_fatfs/inc/at32_sdio.h:104
SD_CMD_CRC_ERROR
@ SD_CMD_CRC_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:88
SD_ADDR_OUT_OF_RANGE
@ SD_ADDR_OUT_OF_RANGE
Definition: sdio_fatfs/inc/at32_sdio.h:101
SD_RX_OVERRUN
@ SD_RX_OVERRUN
Definition: sdio_fatfs/inc/at32_sdio.h:79
SD_REQ_PENDING
@ SD_REQ_PENDING
Definition: sdio_fatfs/inc/at32_sdio.h:111
SD_REQ_NOT_APPLICABLE
@ SD_REQ_NOT_APPLICABLE
Definition: sdio_fatfs/inc/at32_sdio.h:112
SD_SWITCH_ERROR
@ SD_SWITCH_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:102
SD_INVALID_VOLTRANGE
@ SD_INVALID_VOLTRANGE
Definition: sdio_fatfs/inc/at32_sdio.h:100
SD_SDIO_DISABLED
@ SD_SDIO_DISABLED
Definition: sdio_fatfs/inc/at32_sdio.h:103
SD_DATA_TIMEOUT
@ SD_DATA_TIMEOUT
Definition: sdio_fatfs/inc/at32_sdio.h:77
SD_ADDR_MISALIGNED
@ SD_ADDR_MISALIGNED
Definition: sdio_fatfs/inc/at32_sdio.h:82
SD_START_BIT_ERR
@ SD_START_BIT_ERR
Definition: sdio_fatfs/inc/at32_sdio.h:80
SD_LOCK_UNLOCK_ERROR
@ SD_LOCK_UNLOCK_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:87
SD_NOT_CONFIGURED
@ SD_NOT_CONFIGURED
Definition: sdio_fatfs/inc/at32_sdio.h:110
SD_CID_CSD_OVERWRITE
@ SD_CID_CSD_OVERWRITE
Definition: sdio_fatfs/inc/at32_sdio.h:95
SD_WR_PROTECT_VIOLATION
@ SD_WR_PROTECT_VIOLATION
Definition: sdio_fatfs/inc/at32_sdio.h:86
SD_CMD_RSP_TIMEOUT
@ SD_CMD_RSP_TIMEOUT
Definition: sdio_fatfs/inc/at32_sdio.h:76
SD_BLK_LEN_ERR
@ SD_BLK_LEN_ERR
Definition: sdio_fatfs/inc/at32_sdio.h:83
SD_OK
@ SD_OK
Definition: sdio_fatfs/inc/at32_sdio.h:117
SD_ERASE_SEQ_ERR
@ SD_ERASE_SEQ_ERR
Definition: sdio_fatfs/inc/at32_sdio.h:84
SD_AKE_SEQ_ERROR
@ SD_AKE_SEQ_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:99
SD_CARD_TRANSFER
@ SD_CARD_TRANSFER
Definition: sdio_fatfs/inc/at32_sdio.h:189
SD_CARD_IDENTIFICATION
@ SD_CARD_IDENTIFICATION
Definition: sdio_fatfs/inc/at32_sdio.h:187
SD_CARD_SENDING
@ SD_CARD_SENDING
Definition: sdio_fatfs/inc/at32_sdio.h:190
SD_CARD_STANDBY
@ SD_CARD_STANDBY
Definition: sdio_fatfs/inc/at32_sdio.h:188
SD_CARD_READY
@ SD_CARD_READY
Definition: sdio_fatfs/inc/at32_sdio.h:186
SD_CARD_DISCONNECTED
@ SD_CARD_DISCONNECTED
Definition: sdio_fatfs/inc/at32_sdio.h:193
SD_CARD_ERROR
@ SD_CARD_ERROR
Definition: sdio_fatfs/inc/at32_sdio.h:194
SDIO_SDIO_CARD
@ SDIO_SDIO_CARD
Definition: sdio_fatfs/inc/at32_sdio.h:210
SDIO_HIGH_CAPACITY_SD_CARD
@ SDIO_HIGH_CAPACITY_SD_CARD
Definition: sdio_fatfs/inc/at32_sdio.h:204
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
@ SDIO_SECURE_DIGITAL_IO_COMBO_CARD
Definition: sdio_fatfs/inc/at32_sdio.h:208
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
@ SDIO_HIGH_SPEED_MULTIMEDIA_CARD
Definition: sdio_fatfs/inc/at32_sdio.h:207
SDIO_STD_CAPACITY_SD_CARD_V1_1
@ SDIO_STD_CAPACITY_SD_CARD_V1_1
Definition: sdio_fatfs/inc/at32_sdio.h:202
SDIO_SECURE_DIGITAL_IO_CARD
@ SDIO_SECURE_DIGITAL_IO_CARD
Definition: sdio_fatfs/inc/at32_sdio.h:206
SDIO_STD_CAPACITY_SD_CARD_V2_0
@ SDIO_STD_CAPACITY_SD_CARD_V2_0
Definition: sdio_fatfs/inc/at32_sdio.h:203
SDIO_MULTIMEDIA_CARD
@ SDIO_MULTIMEDIA_CARD
Definition: sdio_fatfs/inc/at32_sdio.h:205
SDIO_HIGH_CAPACITY_MMC_CARD
@ SDIO_HIGH_CAPACITY_MMC_CARD
Definition: sdio_fatfs/inc/at32_sdio.h:209
SD_CARD_RECEIVING
#define SD_CARD_RECEIVING
Definition: sdio_fatfs/inc/at32_sdio.h:400
SD_CARD_PROGRAMMING
#define SD_CARD_PROGRAMMING
Definition: sdio_fatfs/inc/at32_sdio.h:399
sd_card_info_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:235
sd_cid_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:168
sd_csd_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:124
sd_scr_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:217


AT32F403 Firmwary Library: at32_sdio.c Source File

  • sdio
  • sdio_fatfs
  • src
sdio_fatfs/src/at32_sdio.c
Go to the documentation of this file.
1
26#include <string.h>
27#include "at32_sdio.h"
28#include "at32f403_board.h"
29
38 sdio_command_struct_type sdio_command_init_struct;
39 sdio_data_struct_type sdio_data_init_struct;
40
41static sd_memory_card_type card_type = SDIO_STD_CAPACITY_SD_CARD_V1_1; /* sd card type */
42static uint32_t csd_table[4], cid_table[4], rca = 0; /* csd, sid, rca */
43static sd_data_transfer_mode_type device_mode = SD_TRANSFER_POLLING_MODE; /* working mode */
44static uint8_t stop_flag = 0; /* transmit stop flag */
45volatile sd_error_status_type transfer_error = SD_OK; /* transmit error flag */
46volatile uint8_t transfer_end = 0; /* transmit end flag */
47 sd_card_info_struct_type sd_card_info; /* sd card information */
48
49 sd_error_status_type command_error(void);
50 sd_error_status_type command_rsp1_error(uint8_t cmd);
51 sd_error_status_type command_rsp2_error(void);
52 sd_error_status_type command_rsp3_error(void);
53 sd_error_status_type command_rsp4_error(uint8_t cmd);
54 sd_error_status_type command_rsp5_error(uint8_t cmd);
55 sd_error_status_type command_rsp6_error(uint8_t cmd, uint16_t *p_rca);
56 sd_error_status_type command_rsp7_error(void);
57 sd_error_status_type sd_bus_wide_enable(confirm_state new_state);
58 sd_error_status_type mmc_switch(uint8_t set, uint8_t index, uint8_t value);
59 sd_error_status_type sd_switch(uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp);
60 sd_error_status_type check_card_programming(uint8_t *p_status);
61 sd_error_status_type speed_change(uint8_t speed);
62 sd_error_status_type scr_find(void);
63uint8_t convert_from_bytes_to_power_of_two(uint16_t number_of_bytes);
64
71 sd_error_status_type sd_init(void)
72{
73 uint16_t clkdiv = 0;
74 sd_error_status_type status = SD_OK;
75 gpio_init_type gpio_init_struct = {0};
76 uint8_t retry = 0;
77
78 /* gpioc and gpiod periph clock enable */
79 crm_periph_clock_enable(CRM_GPIOC_PERIPH_CLOCK, TRUE);
80 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
81
82 /* sdio periph clock enable */
83 crm_periph_clock_enable(CRM_SDIO1_PERIPH_CLOCK, TRUE);
84
85 /* configure pc.08, pc.09, pc.10, pc.11, pc.12 pin: d0, d1, d2, d3, clk pin */
86 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
87 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
88 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
89 gpio_init_struct.gpio_pins = GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10 | GPIO_PINS_11 | GPIO_PINS_12;
90 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
91 gpio_init(GPIOC, &gpio_init_struct);
92
93 /* configure pd.02 cmd line */
94 gpio_init_struct.gpio_pins = GPIO_PINS_2;
95 gpio_init(GPIOD, &gpio_init_struct);
96
97 retry = 3;
98 while(retry--){
99 /* reset sdio */
100 sdio_reset(SDIOx);
101 /* power on */
102 status = sd_power_on();
103
104 if(status == SD_OK)
105 break;
106 }
107
108 if(status == SD_OK)
109 {
110 /* sdio card initialize */
111 status = sd_card_init();
112 }
113
114 if(status == SD_OK)
115 {
116 /* get card information*/
117 status = sd_card_info_get(&sd_card_info);
118 }
119
120 if((SDIO_MULTIMEDIA_CARD == card_type) && (sd_card_info.sd_csd_reg.spec_version >= 4))
121 {
122 card_type = SDIO_HIGH_SPEED_MULTIMEDIA_CARD;
123 }
124
125 if(status == SD_OK)
126 {
127 /* select card */
128 status = sd_deselect_select((uint32_t)(sd_card_info.rca << 16));
129 }
130
131 if(status == SD_OK && ((SDIO_STD_CAPACITY_SD_CARD_V1_1 == card_type) || (SDIO_STD_CAPACITY_SD_CARD_V2_0 == card_type) || \
132 (SDIO_SECURE_DIGITAL_IO_COMBO_CARD == card_type) || (SDIO_HIGH_CAPACITY_SD_CARD == card_type)))
133 {
134 status = scr_find();
135 }
136
137 if(status == SD_OK)
138 {
139 /* set normal speed */
140 status = speed_change(0);
141 }
142
143 if((status == SD_OK) || (card_type == SDIO_MULTIMEDIA_CARD))
144 {
145 if(sd_card_info.card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1 || sd_card_info.card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0)
146 {
147 /* set sdio_ck to 4mhz */
148 clkdiv = system_core_clock / 4000000;
149
150 if(clkdiv >= 2)
151 {
152 clkdiv -= 2;
153 }
154 }
155 else
156 {
157 /* set sdio_ck to 4mhz */
158 clkdiv = system_core_clock / 4000000;
159
160 if(clkdiv >= 2)
161 {
162 clkdiv -= 2;
163 }
164 }
165 /* set sdio clock divider */
166 sdio_clock_set(clkdiv);
167
168 /* set transfer mode */
169 status = sd_device_mode_set(SD_TRANSFER_DMA_MODE);
170 }
171
172 if(status == SD_OK)
173 {
174 /* Set data width */
175 status = sd_wide_bus_operation_config(SDIO_BUS_WIDTH_D4);
176 }
177
178 return status;
179}
180
186void sdio_clock_set(uint32_t clk_div)
187{
188 /* config clock divide [7:0] */
189 SDIOx->clkctrl_bit.clkdiv_l = (clk_div & 0xFF);
190
191 /* config clock divide [9:8] */
192 SDIOx->clkctrl_bit.clkdiv_h = ((clk_div & 0x300) >> 8);
193}
194
201 sd_error_status_type sd_power_on(void)
202{
203 uint8_t retry = 0;
204 sd_error_status_type status = SD_OK;
205 uint32_t response = 0, count = 0, valid_voltage = 0, clk_psc;
206 uint32_t sd_type = SD_STD_CAPACITY;
207
208 /* sdio_ck is less than 400KHz in initialization stage, set to 200KHz */
209 clk_psc = (system_core_clock / 200000) - 2;
210
211 if(clk_psc > 0x3FF)
212 {
213 clk_psc = 0x3FF;
214 }
215
216 /* config sdio clock divide and edge phase */
217 sdio_clock_config(SDIOx, clk_psc, SDIO_CLOCK_EDGE_FALLING);
218 /* config sdio bus width */
219 sdio_bus_width_config(SDIOx, SDIO_BUS_WIDTH_D1);
220 /* disable flow control */
221 sdio_flow_control_enable(SDIOx, FALSE);
222 /* disable clock bypass */
223 sdio_clock_bypass(SDIOx, FALSE);
224 /* disable power saving mode */
225 sdio_power_saving_mode_enable(SDIOx, FALSE);
226
227 /* sdio power on */
228 sdio_power_set(SDIOx, SDIO_POWER_ON);
229 /* enable to output sdio_ck */
230 sdio_clock_enable(SDIOx, TRUE);
231
232 for(retry = 0; retry < 5; retry++)
233 {
234 /* send cmd0, get in idle stage */
235 sdio_command_init_struct.argument = 0x0;
236 sdio_command_init_struct.cmd_index = SD_CMD_GO_IDLE_STATE;
237 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_NO;
238 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
239
240 /* sdio command config */
241 sdio_command_config(SDIOx, &sdio_command_init_struct);
242 /* enable ccsm */
243 sdio_command_state_machine_enable(SDIOx, TRUE);
244
245 /* get command status */
246 status = command_error();
247 }
248
249 /* send cmd8, check card interface feature */
250 sdio_command_init_struct.argument = SD_CHECK_PATTERN;
251 sdio_command_init_struct.cmd_index = SDIO_SEND_IF_COND;
252 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
253 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
254
255 /* sdio command config */
256 sdio_command_config(SDIOx, &sdio_command_init_struct);
257 /* enable ccsm */
258 sdio_command_state_machine_enable(SDIOx, TRUE);
259
260 /* waiting R7 */
261 status = command_rsp7_error();
262
263 if(status == SD_OK)
264 {
265 /* set card type and sd type */
266 card_type = SDIO_STD_CAPACITY_SD_CARD_V2_0;
267 sd_type = SD_HIGH_CAPACITY;
268 }
269
270 /* send cmd55, check sd version */
271 sdio_command_init_struct.argument = 0x00;
272 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
273 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
274 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
275
276 /* sdio command config */
277 sdio_command_config(SDIOx, &sdio_command_init_struct);
278 /* enable ccsm */
279 sdio_command_state_machine_enable(SDIOx, TRUE);
280
281 /* waiting R1 */
282 status = command_rsp1_error(SD_CMD_APP_CMD);
283
284 /* check sd card or mmc card */
285 if(SD_OK == status)
286 {
287 /* send acmd41, check voltage operation range */
288 while((!valid_voltage) && (count < SD_MAX_VOLT_TRIAL))
289 {
290 delay_ms(10);
291
292 /* send cmd55 before acmd41 */
293 sdio_command_init_struct.argument = 0x00;
294 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
295 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
296 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
297
298 /* sdio command config */
299 sdio_command_config(SDIOx, &sdio_command_init_struct);
300 /* enable ccsm */
301 sdio_command_state_machine_enable(SDIOx, TRUE);
302
303 /* waiting R1 */
304 status = command_rsp1_error(SD_CMD_APP_CMD);
305
306 /* if any errors occured, return status */
307 if(status != SD_OK)
308 {
309 return status;
310 }
311
312 /* send acmd41 */
313 sdio_command_init_struct.argument = SD_VOLTAGE_WINDOW_SD | sd_type;
314 sdio_command_init_struct.cmd_index = SD_CMD_SD_APP_OP_COND;
315 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
316 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
317
318 /* sdio command config */
319 sdio_command_config(SDIOx, &sdio_command_init_struct);
320 /* enable ccsm */
321 sdio_command_state_machine_enable(SDIOx, TRUE);
322
323 /* waiting R3 */
324 status = command_rsp3_error();
325
326 /* if any errors occured, return status */
327 if(status != SD_OK)
328 {
329 return status;
330 }
331
332 /* get response1 */
333 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
334
335 /* check sd card power on stage is success or not */
336 valid_voltage = (((response >> 31) == 1) ? 1 : 0);
337 count++;
338 }
339
340 if(count >= SD_MAX_VOLT_TRIAL)
341 {
342 status = SD_INVALID_VOLTRANGE;
343 return status;
344 }
345
346 if(response &= SD_HIGH_CAPACITY)
347 {
348 card_type = SDIO_HIGH_CAPACITY_SD_CARD;
349 }
350 }
351 /* mmc card */
352 else
353 {
354 /* send cmd1 */
355 while((!valid_voltage) && (count < SD_MAX_VOLT_TRIAL))
356 {
357 delay_ms(10);
358
359 sdio_command_init_struct.argument = SD_VOLTAGE_WINDOW_MMC;
360 sdio_command_init_struct.cmd_index = SD_CMD_SEND_OP_COND;
361 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
362 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
363
364 /* sdio command config */
365 sdio_command_config(SDIOx, &sdio_command_init_struct);
366 /* enable ccsm */
367 sdio_command_state_machine_enable(SDIOx, TRUE);
368
369 /* waiting R3 */
370 status = command_rsp3_error();
371
372 if(status != SD_OK)
373 {
374 return status;
375 }
376
377 /* get response1 */
378 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
379
380 valid_voltage = (((response >> 31) == 1) ? 1 : 0);
381 count++;
382 }
383
384 if(count >= SD_MAX_VOLT_TRIAL)
385 {
386 status = SD_INVALID_VOLTRANGE;
387 return status;
388 }
389
390 card_type = SDIO_MULTIMEDIA_CARD;
391 }
392
393 return(status);
394}
395
401 sd_error_status_type sd_power_off(void)
402{
403 /* sdio power off */
404 sdio_power_set(SDIOx, SDIO_POWER_OFF);
405
406 return SD_OK;
407}
408
415 sd_error_status_type sd_card_init(void)
416{
417 sd_error_status_type status = SD_OK;
418 uint16_t rca_temp = 0x01;
419
420 /* check power status */
421 if(SDIO_POWER_OFF == sdio_power_status_get(SDIOx))
422 {
423 return SD_REQ_NOT_APPLICABLE;
424 }
425
426 /* check is secure_digital_io_card or not */
427 if(SDIO_SECURE_DIGITAL_IO_CARD != card_type)
428 {
429 /* send cmd2, get cid register */
430 sdio_command_init_struct.argument = 0x0;
431 sdio_command_init_struct.cmd_index = SD_CMD_ALL_SEND_CID;
432 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_LONG;
433 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
434
435 /* sdio command config */
436 sdio_command_config(SDIOx, &sdio_command_init_struct);
437 /* enable ccsm */
438 sdio_command_state_machine_enable(SDIOx, TRUE);
439
440 status = command_rsp2_error();
441 if(status != SD_OK)
442 {
443 return status;
444 }
445
446 cid_table[0] = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
447 cid_table[1] = sdio_response_get(SDIOx, SDIO_RSP2_INDEX);
448 cid_table[2] = sdio_response_get(SDIOx, SDIO_RSP3_INDEX);
449 cid_table[3] = sdio_response_get(SDIOx, SDIO_RSP4_INDEX);
450 }
451
452 /* check card type */
453 if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || \
454 (card_type == SDIO_SECURE_DIGITAL_IO_COMBO_CARD) || (card_type == SDIO_HIGH_CAPACITY_SD_CARD))
455 {
456 /* send cmd3, get rca */
457 sdio_command_init_struct.argument = 0x00;
458 sdio_command_init_struct.cmd_index = SD_CMD_SET_REL_ADDR;
459 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
460 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
461
462 /* sdio command config */
463 sdio_command_config(SDIOx, &sdio_command_init_struct);
464 /* enable ccsm */
465 sdio_command_state_machine_enable(SDIOx, TRUE);
466
467 status = command_rsp6_error(SD_CMD_SET_REL_ADDR, &rca_temp);
468 if(status != SD_OK)
469 {
470 return status;
471 }
472 }
473
474 /* mmc card */
475 if(card_type == SDIO_MULTIMEDIA_CARD)
476 {
477 /* send cmd3 */
478 sdio_command_init_struct.argument = (uint32_t)(rca_temp << 16);
479 sdio_command_init_struct.cmd_index = SD_CMD_SET_REL_ADDR;
480 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
481 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
482
483 /* sdio command config */
484 sdio_command_config(SDIOx, &sdio_command_init_struct);
485 /* enable ccsm */
486 sdio_command_state_machine_enable(SDIOx, TRUE);
487
488 status = command_rsp2_error();
489 if(status != SD_OK)
490 {
491 return status;
492 }
493 }
494
495 /* check is secure_digital_io_card or not */
496 if(card_type != SDIO_SECURE_DIGITAL_IO_CARD)
497 {
498 rca = rca_temp;
499 sdio_command_init_struct.argument = (uint32_t)(rca << 16);
500 sdio_command_init_struct.cmd_index = SD_CMD_SEND_CSD;
501 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_LONG;
502 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
503
504 /* sdio command config */
505 sdio_command_config(SDIOx, &sdio_command_init_struct);
506 /* enable ccsm */
507 sdio_command_state_machine_enable(SDIOx, TRUE);
508
509 status = command_rsp2_error();
510 if(status != SD_OK)
511 {
512 return status;
513 }
514
515 csd_table[0] = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
516 csd_table[1] = sdio_response_get(SDIOx, SDIO_RSP2_INDEX);
517 csd_table[2] = sdio_response_get(SDIOx, SDIO_RSP3_INDEX);
518 csd_table[3] = sdio_response_get(SDIOx, SDIO_RSP4_INDEX);
519 }
520
521 return SD_OK;
522}
523
530 sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info)
531{
532 sd_error_status_type status = SD_OK;
533 uint8_t tmp = 0;
534
535 card_info->card_type = (uint8_t)card_type;
536 card_info->rca = (uint16_t)rca;
537
538 /* byte 0 */
539 tmp = (uint8_t)((csd_table[0] & 0xFF000000) >> 24);
540 card_info->sd_csd_reg.csd_struct = (tmp & 0xC0) >> 6;
541 card_info->sd_csd_reg.spec_version = (tmp & 0x3C) >> 2;
542 card_info->sd_csd_reg.reserved1 = tmp & 0x03;
543
544 /* byte 1 */
545 tmp = (uint8_t)((csd_table[0] & 0x00FF0000) >> 16);
546 card_info->sd_csd_reg.taac = tmp;
547
548 /* byte 2 */
549 tmp = (uint8_t)((csd_table[0] & 0x0000FF00) >> 8);
550 card_info->sd_csd_reg.nsac = tmp;
551
552 /* byte 3 */
553 tmp = (uint8_t)(csd_table[0] & 0x000000FF);
554 card_info->sd_csd_reg.max_bus_clk_freq = tmp;
555
556 /* byte 4 */
557 tmp = (uint8_t)((csd_table[1] & 0xFF000000) >> 24);
558 card_info->sd_csd_reg.card_cmd_classes = tmp << 4;
559
560 /* byte 5 */
561 tmp = (uint8_t)((csd_table[1] & 0x00FF0000) >> 16);
562 card_info->sd_csd_reg.card_cmd_classes |= (tmp & 0xF0) >> 4;
563 card_info->sd_csd_reg.max_read_blk_length = tmp & 0x0F;
564
565 /* byte 6 */
566 tmp = (uint8_t)((csd_table[1] & 0x0000FF00) >> 8);
567 card_info->sd_csd_reg.part_blk_read = (tmp & 0x80) >> 7;
568 card_info->sd_csd_reg.write_blk_misalign = (tmp & 0x40) >> 6;
569 card_info->sd_csd_reg.read_blk_misalign = (tmp & 0x20) >> 5;
570 card_info->sd_csd_reg.dsr_implemented = (tmp & 0x10) >> 4;
571 card_info->sd_csd_reg.reserved2 = 0; /* reserved */
572
573 if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || (card_type == SDIO_MULTIMEDIA_CARD))
574 {
575 card_info->sd_csd_reg.device_size = (tmp & 0x03) << 10;
576
577 /* byte 7 */
578 tmp = (uint8_t)(csd_table[1] & 0x000000FF);
579 card_info->sd_csd_reg.device_size |= (tmp) << 2;
580
581 /* byte 8 */
582 tmp = (uint8_t)((csd_table[2] & 0xFF000000) >> 24);
583 card_info->sd_csd_reg.device_size |= (tmp & 0xC0) >> 6;
584
585 card_info->sd_csd_reg.max_read_current_vdd_min = (tmp & 0x38) >> 3;
586 card_info->sd_csd_reg.max_read_current_vdd_max = (tmp & 0x07);
587
588 /* byte 9 */
589 tmp = (uint8_t)((csd_table[2] & 0x00FF0000) >> 16);
590 card_info->sd_csd_reg.max_write_current_vdd_min = (tmp & 0xE0) >> 5;
591 card_info->sd_csd_reg.max_write_current_vdd_max = (tmp & 0x1C) >> 2;
592 card_info->sd_csd_reg.device_size_mult = (tmp & 0x03) << 1;
593 /* byte 10 */
594 tmp = (uint8_t)((csd_table[2] & 0x0000FF00) >> 8);
595 card_info->sd_csd_reg.device_size_mult |= (tmp & 0x80) >> 7;
596
597 card_info->card_capacity = (card_info->sd_csd_reg.device_size + 1) ;
598 card_info->card_capacity *= (1 << (card_info->sd_csd_reg.device_size_mult + 2));
599 card_info->card_blk_size = 1 << (card_info->sd_csd_reg.max_read_blk_length);
600 card_info->card_capacity *= card_info->card_blk_size;
601 }
602 else if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
603 {
604 /* byte 7 */
605 tmp = (uint8_t)(csd_table[1] & 0x000000FF);
606 card_info->sd_csd_reg.device_size = (tmp & 0x3F) << 16;
607
608 /* byte 8 */
609 tmp = (uint8_t)((csd_table[2] & 0xFF000000) >> 24);
610
611 card_info->sd_csd_reg.device_size |= (tmp << 8);
612
613 /* byte 9 */
614 tmp = (uint8_t)((csd_table[2] & 0x00FF0000) >> 16);
615
616 card_info->sd_csd_reg.device_size |= (tmp);
617
618 /* byte 10 */
619 tmp = (uint8_t)((csd_table[2] & 0x0000FF00) >> 8);
620
621 card_info->card_capacity = (uint64_t)(card_info->sd_csd_reg.device_size + 1) * 512 * 1024;
622 card_info->card_blk_size = 512;
623 }
624
625
626 card_info->sd_csd_reg.erase_group_size = (tmp & 0x40) >> 6;
627 card_info->sd_csd_reg.erase_group_size_mult = (tmp & 0x3F) << 1;
628
629 /* byte 11 */
630 tmp = (uint8_t)(csd_table[2] & 0x000000FF);
631 card_info->sd_csd_reg.erase_group_size_mult |= (tmp & 0x80) >> 7;
632 card_info->sd_csd_reg.write_protect_group_size = (tmp & 0x7F);
633
634 /* byte 12 */
635 tmp = (uint8_t)((csd_table[3] & 0xFF000000) >> 24);
636 card_info->sd_csd_reg.write_protect_group_enable = (tmp & 0x80) >> 7;
637 card_info->sd_csd_reg.manufacturer_default_ecc = (tmp & 0x60) >> 5;
638 card_info->sd_csd_reg.write_speed_factor = (tmp & 0x1C) >> 2;
639 card_info->sd_csd_reg.max_write_blk_length = (tmp & 0x03) << 2;
640
641 /* byte 13 */
642 tmp = (uint8_t)((csd_table[3] & 0x00FF0000) >> 16);
643 card_info->sd_csd_reg.max_write_blk_length |= (tmp & 0xC0) >> 6;
644 card_info->sd_csd_reg.part_blk_write = (tmp & 0x20) >> 5;
645 card_info->sd_csd_reg.reserved3 = 0;
646 card_info->sd_csd_reg.content_protect_app = (tmp & 0x01);
647
648 /* byte 14 */
649 tmp = (uint8_t)((csd_table[3] & 0x0000FF00) >> 8);
650 card_info->sd_csd_reg.file_format_group = (tmp & 0x80) >> 7;
651 card_info->sd_csd_reg.copy_flag = (tmp & 0x40) >> 6;
652 card_info->sd_csd_reg.permanent_write_protect = (tmp & 0x20) >> 5;
653 card_info->sd_csd_reg.temp_write_protect = (tmp & 0x10) >> 4;
654 card_info->sd_csd_reg.file_formart = (tmp & 0x0C) >> 2;
655 card_info->sd_csd_reg.ecc_code = (tmp & 0x03);
656
657 /* byte 15 */
658 tmp = (uint8_t)(csd_table[3] & 0x000000FF);
659 card_info->sd_csd_reg.csd_crc = (tmp & 0xFE) >> 1;
660 card_info->sd_csd_reg.reserved4 = 1;
661
662 /* byte 0 */
663 tmp = (uint8_t)((cid_table[0] & 0xFF000000) >> 24);
664 card_info->sd_cid_reg.manufacturer_id = tmp;
665
666 /* byte 1 */
667 tmp = (uint8_t)((cid_table[0] & 0x00FF0000) >> 16);
668 card_info->sd_cid_reg.oem_app_id = tmp << 8;
669
670 /* byte 2 */
671 tmp = (uint8_t)((cid_table[0] & 0x000000FF00) >> 8);
672 card_info->sd_cid_reg.oem_app_id |= tmp;
673
674 /* byte 3 */
675 tmp = (uint8_t)(cid_table[0] & 0x000000FF);
676 card_info->sd_cid_reg.product_name1 = tmp << 24;
677
678 /* byte 4 */
679 tmp = (uint8_t)((cid_table[1] & 0xFF000000) >> 24);
680 card_info->sd_cid_reg.product_name1 |= tmp << 16;
681
682 /* byte 5 */
683 tmp = (uint8_t)((cid_table[1] & 0x00FF0000) >> 16);
684 card_info->sd_cid_reg.product_name1 |= tmp << 8;
685
686 /* byte 6 */
687 tmp = (uint8_t)((cid_table[1] & 0x0000FF00) >> 8);
688 card_info->sd_cid_reg.product_name1 |= tmp;
689
690 /* byte 7 */
691 tmp = (uint8_t)(cid_table[1] & 0x000000FF);
692 card_info->sd_cid_reg.product_name2 = tmp;
693
694 /* byte 8 */
695 tmp = (uint8_t)((cid_table[2] & 0xFF000000) >> 24);
696 card_info->sd_cid_reg.product_reversion = tmp;
697
698 /* byte 9 */
699 tmp = (uint8_t)((cid_table[2] & 0x00FF0000) >> 16);
700 card_info->sd_cid_reg.product_sn = tmp << 24;
701
702 /* byte 10 */
703 tmp = (uint8_t)((cid_table[2] & 0x0000FF00) >> 8);
704 card_info->sd_cid_reg.product_sn |= tmp << 16;
705
706 /* byte 11 */
707 tmp = (uint8_t)(cid_table[2] & 0x000000FF);
708 card_info->sd_cid_reg.product_sn |= tmp << 8;
709
710 /* byte 12 */
711 tmp = (uint8_t)((cid_table[3] & 0xFF000000) >> 24);
712 card_info->sd_cid_reg.product_sn |= tmp;
713
714 /* byte 13 */
715 tmp = (uint8_t)((cid_table[3] & 0x00FF0000) >> 16);
716 card_info->sd_cid_reg.reserved1 |= (tmp & 0xF0) >> 4;
717 card_info->sd_cid_reg.manufact_date = (tmp & 0x0F) << 8;
718
719 /* byte 14 */
720 tmp = (uint8_t)((cid_table[3] & 0x0000FF00) >> 8);
721 card_info->sd_cid_reg.manufact_date |= tmp;
722
723 /* byte 15 */
724 tmp = (uint8_t)(cid_table[3] & 0x000000FF);
725 card_info->sd_cid_reg.cid_crc = (tmp & 0xFE) >> 1;
726 card_info->sd_cid_reg.reserved2 = 1;
727
728 return(status);
729}
730
741 sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode)
742{
743 sd_error_status_type status = SD_OK;
744
745 if((card_type == SDIO_MULTIMEDIA_CARD) || (card_type == SDIO_HIGH_SPEED_MULTIMEDIA_CARD))
746 {
747 status = mmc_switch(EXT_CSD_CMD_SET_NORMAL, EXT_CSD_BUS_WIDTH, (uint8_t)mode);
748 }
749 else if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || \
750 (card_type == SDIO_HIGH_CAPACITY_SD_CARD))
751 {
752 if(mode >= 2)
753 {
754 /* not support D8 mode */
755 return SD_UNSUPPORTED_FEATURE;
756 }
757
758 if(SDIO_BUS_WIDTH_D4 == mode)
759 {
760 status = sd_bus_wide_enable(TRUE);
761 }
762 else
763 {
764 status = sd_bus_wide_enable(FALSE);
765 }
766 }
767
768 if(status == SD_OK)
769 {
770 sdio_bus_width_config(SDIOx, mode);
771 }
772
773 return status;
774}
775
784 sd_error_status_type sd_device_mode_set(uint32_t mode)
785{
786 sd_error_status_type status = SD_OK;
787
788 if((mode == SD_TRANSFER_DMA_MODE) || (mode == SD_TRANSFER_POLLING_MODE))
789 {
790 device_mode = (sd_data_transfer_mode_type)mode;
791 }
792 else
793 {
794 status = SD_INVALID_PARAMETER;
795 }
796
797 return status;
798}
799
805 sd_error_status_type sd_deselect_select(uint32_t addr)
806{
807 /* send cmd7, select card */
808 sdio_command_init_struct.argument = addr;
809 sdio_command_init_struct.cmd_index = SD_CMD_SEL_DESEL_CARD;
810 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
811 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_INT;
812
813 /* sdio command config */
814 sdio_command_config(SDIOx, &sdio_command_init_struct);
815 /* enable ccsm */
816 sdio_command_state_machine_enable(SDIOx, TRUE);
817
818 return command_rsp1_error(SD_CMD_SEL_DESEL_CARD);
819}
820
828 sd_error_status_type sdio_command_data_send(sdio_command_struct_type *sdio_cmd_init_t, \
829 sdio_data_struct_type* sdio_data_init_t, uint32_t *buf)
830{
831 sd_error_status_type status = SD_OK;
832 uint32_t count = 0;
833 uint32_t timeout = SDIO_DATATIMEOUT;
834 uint32_t length = 0;
835
836 if(buf == NULL)
837 {
838 return SD_INVALID_PARAMETER;
839 }
840 /* clear dtctrl register */
841 SDIOx->dtcnt = 0x0;
842
843 /* sdio command config */
844 sdio_data_config(SDIOx, sdio_data_init_t);
845 /* enable dcsm */
846 sdio_data_state_machine_enable(SDIOx, TRUE);
847
848 length = sdio_data_init_t->data_length;
849
850 if(device_mode == SD_TRANSFER_DMA_MODE)
851 {
852 if(sdio_data_init_t->transfer_direction == SDIO_DATA_TRANSFER_TO_CONTROLLER)
853 {
854 sd_dma_config(buf, length, DMA_DIR_PERIPHERAL_TO_MEMORY);
855 SDIOx->inten |= SDIO_INTR_STS_READ_MASK;
856 transfer_error = SD_OK;
857 transfer_end = 0;
858 sdio_dma_enable(SDIOx, TRUE);
859 }
860 }
861
862 /* sdio command config */
863 sdio_command_config(SDIOx, sdio_cmd_init_t);
864 /* enable ccsm */
865 sdio_command_state_machine_enable(SDIOx, TRUE);
866
867 status = command_rsp1_error(sdio_cmd_init_t->cmd_index);
868 if(status != SD_OK)
869 {
870 return status;
871 }
872
873 /* polling mode */
874 if(device_mode == SD_TRANSFER_POLLING_MODE)
875 {
876 if(SDIO_DATA_TRANSFER_TO_CONTROLLER == sdio_data_init_t->transfer_direction)
877 {
878 while(!(SDIOx->sts & (SDIO_INTR_STS_READ_MASK)))
879 {
880 if(sdio_flag_get(SDIOx, SDIO_RXBUFH_FLAG) != RESET)
881 {
882 for(count = 0; count < 8; count++, buf++)
883 {
884 *buf = sdio_data_read(SDIOx);
885 }
886
887 timeout = 0x7FFFFF;
888 }
889 else
890 {
891 if(0 == timeout)
892 {
893 sd_init();
894 return SD_DATA_TIMEOUT;
895 }
896
897 timeout--;
898 }
899 }
900
901 while(sdio_flag_get(SDIOx, SDIO_RXBUF_FLAG) != RESET)
902 {
903 *buf = sdio_data_read(SDIOx);
904 buf++;
905 }
906 }
907 else
908 {
909 while(!(SDIOx->sts & SDIO_INTR_STS_WRITE_MASK))
910 {
911 if(sdio_flag_get(SDIOx, SDIO_TXBUFH_FLAG) != RESET)
912 {
913 for(count = 0; count < 8 && length > 0; count++, buf++, length -= 4)
914 {
915 sdio_data_write(SDIOx, *buf);
916 }
917
918 timeout = 0x3FFFFFFF;
919 }
920 else
921 {
922 if(timeout == 0)
923 {
924 sd_init();
925 return SD_DATA_TIMEOUT;
926 }
927
928 timeout--;
929 }
930 }
931 }
932 /* data timeout */
933 if(sdio_flag_get(SDIOx, SDIO_DTTIMEOUT_FLAG) != RESET)
934 {
935 sdio_flag_clear(SDIOx, SDIO_DTTIMEOUT_FLAG);
936 return SD_DATA_TIMEOUT;
937 }
938 /* crc error */
939 else if(sdio_flag_get(SDIOx, SDIO_DTFAIL_FLAG) != RESET)
940 {
941 sdio_flag_clear(SDIOx, SDIO_DTFAIL_FLAG);
942 return SD_DATA_FAIL;
943 }
944 /* over run error */
945 else if(sdio_flag_get(SDIOx, SDIO_RXERRO_FLAG) != RESET)
946 {
947 sdio_flag_clear(SDIOx, SDIO_RXERRO_FLAG);
948 return SD_RX_OVERRUN;
949 }
950 /* under run error */
951 else if(sdio_flag_get(SDIOx, SDIO_TXERRU_FLAG) != RESET)
952 {
953 sdio_flag_clear(SDIOx, SDIO_TXERRU_FLAG);
954 return SD_TX_UNDERRUN;
955 }
956 /* start bit error */
957 else if(sdio_flag_get(SDIOx, SDIO_SBITERR_FLAG) != RESET)
958 {
959 sdio_flag_clear(SDIOx, SDIO_SBITERR_FLAG);
960 return SD_START_BIT_ERR;
961 }
962 /* data transfer complete */
963 if((stop_flag == 1) && (sdio_flag_get(SDIOx, SDIO_DTCMPL_FLAG) != RESET))
964 {
965 /* send cmd12, stop transmission */
966 sdio_cmd_init_t->argument = 0;
967 sdio_cmd_init_t->cmd_index = SD_CMD_STOP_TRANSMISSION;
968 sdio_cmd_init_t->rsp_type = SDIO_RESPONSE_SHORT;
969 sdio_cmd_init_t->wait_type = SDIO_WAIT_FOR_NO;
970
971 /* sdio command config */
972 sdio_command_config(SDIOx, sdio_cmd_init_t);
973 /* enable ccsm */
974 sdio_command_state_machine_enable(SDIOx, TRUE);
975
976 status = command_rsp1_error(SD_CMD_STOP_TRANSMISSION);
977
978 if(status != SD_OK)
979 {
980 return status;
981 }
982 }
983
984 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
985 }
986 else if(device_mode == SD_TRANSFER_DMA_MODE)
987 {
988 if(sdio_data_init_t->transfer_direction == SDIO_DATA_TRANSFER_TO_CARD)
989 {
990 sd_dma_config(buf, length, DMA_DIR_MEMORY_TO_PERIPHERAL);
991 SDIOx->inten |= SDIO_INTR_STS_WRITE_MASK;
992 transfer_error = SD_OK;
993 transfer_end = 0;
994 sdio_dma_enable(SDIOx, TRUE);
995 }
996
997 while(!(SDIOx->sts & SDIOx->inten) && timeout)
998 {
999 timeout--;
1000
1001 if(transfer_end)
1002 {
1003 break;
1004 }
1005 }
1006
1007 if(timeout == 0)
1008 {
1009 sd_init();
1010 return SD_DATA_TIMEOUT;
1011 }
1012
1013 if(transfer_error != SD_OK)
1014 {
1015 status = transfer_error;
1016 }
1017 }
1018
1019 return status;
1020}
1021
1028 sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks)
1029{
1030 sd_error_status_type status = SD_OK;
1031 uint32_t start_addr = 0, end_addr = 0, response = 0;
1032 uint8_t card_state;
1033
1034 /* high capacity sd card */
1035 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1036 {
1037 start_addr = addr >> 9;
1038 end_addr = start_addr + nblks - 1;
1039 }
1040 else
1041 {
1042 start_addr = addr;
1043 end_addr = start_addr + (nblks - 1) * 512;
1044 }
1045
1046 /* clear dcsm configuration */
1047 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1048 sdio_data_init_struct.data_length = 0 ;
1049 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1050 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1051 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1052
1053 sdio_data_config(SDIOx, &sdio_data_init_struct);
1054 sdio_data_state_machine_enable(SDIOx, FALSE);
1055
1056 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1057
1058 /* check card locked */
1059 if(response & SD_CARD_LOCKED)
1060 {
1061 return SD_LOCK_UNLOCK_ERROR;
1062 }
1063
1064 if(card_type == SDIO_MULTIMEDIA_CARD || card_type == SDIO_HIGH_SPEED_MULTIMEDIA_CARD)
1065 {
1066 /* send cmd35, set erase group start */
1067 sdio_command_init_struct.argument = start_addr;
1068 sdio_command_init_struct.cmd_index = SD_CMD_ERASE_GRP_START;
1069 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1070 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1071
1072 /* sdio command config */
1073 sdio_command_config(SDIOx, &sdio_command_init_struct);
1074 /* enable ccsm */
1075 sdio_command_state_machine_enable(SDIOx, TRUE);
1076
1077 status = command_rsp1_error(SD_CMD_ERASE_GRP_START);
1078
1079 if(status != SD_OK)
1080 {
1081 return status;
1082 }
1083
1084 /* send cmd36, set erase group end */
1085 sdio_command_init_struct.argument = end_addr;
1086 sdio_command_init_struct.cmd_index = SD_CMD_ERASE_GRP_END;
1087
1088 /* sdio command config */
1089 sdio_command_config(SDIOx, &sdio_command_init_struct);
1090 /* enable ccsm */
1091 sdio_command_state_machine_enable(SDIOx, TRUE);
1092
1093 status = command_rsp1_error(SD_CMD_ERASE_GRP_END);
1094
1095 if(status != SD_OK)
1096 {
1097 return status;
1098 }
1099
1100 /* send cmd38, start erase gourp */
1101 sdio_command_init_struct.argument = 0;
1102 sdio_command_init_struct.cmd_index = SD_CMD_ERASE;
1103
1104 /* sdio command config */
1105 sdio_command_config(SDIOx, &sdio_command_init_struct);
1106 /* enable ccsm */
1107 sdio_command_state_machine_enable(SDIOx, TRUE);
1108
1109 status = command_rsp1_error(SD_CMD_ERASE);
1110
1111 if(status != SD_OK)
1112 {
1113 return status;
1114 }
1115 }
1116 else
1117 {
1118 /* send cmd32, set erase block start */
1119 sdio_command_init_struct.argument = start_addr;
1120 sdio_command_init_struct.cmd_index = SD_CMD_SD_ERASE_GRP_START;
1121 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1122 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1123
1124 /* sdio command config */
1125 sdio_command_config(SDIOx, &sdio_command_init_struct);
1126 /* enable ccsm */
1127 sdio_command_state_machine_enable(SDIOx, TRUE);
1128
1129 status = command_rsp1_error(SD_CMD_SD_ERASE_GRP_START);
1130
1131 if(status != SD_OK)
1132 {
1133 return status;
1134 }
1135
1136 /* send cmd33, set erase block end */
1137 sdio_command_init_struct.argument = end_addr;
1138 sdio_command_init_struct.cmd_index = SD_CMD_SD_ERASE_GRP_END;
1139
1140 /* sdio command config */
1141 sdio_command_config(SDIOx, &sdio_command_init_struct);
1142 /* enable ccsm */
1143 sdio_command_state_machine_enable(SDIOx, TRUE);
1144
1145 if(status != SD_OK)
1146 {
1147 return status;
1148 }
1149
1150 /* send cmd38, start erase block */
1151 sdio_command_init_struct.argument = 0;
1152 sdio_command_init_struct.cmd_index = SD_CMD_ERASE;
1153
1154 /* sdio command config */
1155 sdio_command_config(SDIOx, &sdio_command_init_struct);
1156 /* enable ccsm */
1157 sdio_command_state_machine_enable(SDIOx, TRUE);
1158
1159 status = command_rsp1_error(SD_CMD_ERASE);
1160
1161 if(status != SD_OK)
1162 {
1163 return status;
1164 }
1165 }
1166
1167 status = check_card_programming(&card_state);
1168
1169 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || \
1170 (card_state == SD_CARD_RECEIVING)))
1171 {
1172 status = check_card_programming(&card_state);
1173 }
1174
1175 return status;
1176}
1177
1186 sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
1187{
1188 sd_error_status_type status = SD_OK;
1189 uint32_t response = 0;
1190 uint8_t power;
1191
1192 if(NULL == buf)
1193 {
1194 return SD_INVALID_PARAMETER;
1195 }
1196
1197 SDIOx->dtctrl = 0x0;
1198
1199 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1200 {
1201 blk_size = 512;
1202 addr >>= 9;
1203 }
1204
1205 /* clear dcsm configuration */
1206 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1207 sdio_data_init_struct.data_length = 0;
1208 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1209 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1210 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1211
1212 sdio_data_config(SDIOx, &sdio_data_init_struct);
1213 sdio_data_state_machine_enable(SDIOx, FALSE);
1214
1215 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1216
1217 /* check card locked */
1218 if(response & SD_CARD_LOCKED)
1219 {
1220 return SD_LOCK_UNLOCK_ERROR;
1221 }
1222
1223 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1224 {
1225 power = convert_from_bytes_to_power_of_two(blk_size);
1226
1227 /* send cmd16, set block size */
1228 sdio_command_init_struct.argument = blk_size;
1229 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1230 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1231 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1232
1233 /* sdio command config */
1234 sdio_command_config(SDIOx, &sdio_command_init_struct);
1235 /* enable ccsm */
1236 sdio_command_state_machine_enable(SDIOx, TRUE);
1237
1238 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1239
1240 if(status != SD_OK)
1241 {
1242 return status;
1243 }
1244 }
1245 else
1246 {
1247 return SD_INVALID_PARAMETER;
1248 }
1249
1250 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1251 sdio_data_init_struct.data_length = blk_size ;
1252 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1253 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
1254 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1255
1256 sdio_command_init_struct.argument = addr;
1257 sdio_command_init_struct.cmd_index = SD_CMD_READ_SINGLE_BLOCK;
1258 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1259 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1260
1261 stop_flag = 0;
1262
1263 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1264}
1265
1275 sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
1276{
1277 sd_error_status_type status = SD_OK;
1278 uint32_t response = 0;
1279 uint8_t power;
1280
1281 SDIOx->dtctrl = 0x0;
1282
1283 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1284 {
1285 blk_size = 512;
1286 addr >>= 9;
1287 }
1288
1289 /* clear dcsm configuration */
1290 sdio_data_init_struct.block_size = (sdio_block_size_type)0;
1291 sdio_data_init_struct.data_length = 0;
1292 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1293 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1294 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1295
1296 sdio_data_config(SDIOx, &sdio_data_init_struct);
1297 sdio_data_state_machine_enable(SDIOx, FALSE);
1298
1299 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1300
1301 /* check card locked */
1302 if(response & SD_CARD_LOCKED)
1303 {
1304 return SD_LOCK_UNLOCK_ERROR;
1305 }
1306
1307 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1308 {
1309 power = convert_from_bytes_to_power_of_two(blk_size);
1310
1311 /* send cmd16, set block size */
1312 sdio_command_init_struct.argument = blk_size;
1313 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1314 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1315 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1316
1317 /* sdio command config */
1318 sdio_command_config(SDIOx, &sdio_command_init_struct);
1319 /* enable ccsm */
1320 sdio_command_state_machine_enable(SDIOx, TRUE);
1321
1322 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1323
1324 if(status != SD_OK)
1325 {
1326 return status;
1327 }
1328 }
1329 else
1330 {
1331 return SD_INVALID_PARAMETER;
1332 }
1333
1334 /* check max receive length */
1335 if(nblks * blk_size > SD_MAX_DATA_LENGTH)
1336 {
1337 return SD_INVALID_PARAMETER;
1338 }
1339
1340 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1341 sdio_data_init_struct.data_length = nblks * blk_size ;
1342 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1343 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
1344 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1345
1346 /* send cmd18, read block data */
1347 sdio_command_init_struct.argument = addr;
1348 sdio_command_init_struct.cmd_index = SD_CMD_READ_MULT_BLOCK;
1349 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1350 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1351
1352 stop_flag = 1;
1353
1354 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1355}
1356
1365 sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
1366{
1367 sd_error_status_type status = SD_OK;
1368 uint8_t power = 0, card_state = 0;
1369 uint32_t timeout = 0, card_status = 0, response = 0;
1370
1371 if(buf == NULL)
1372 {
1373 return SD_INVALID_PARAMETER;
1374 }
1375
1376 SDIOx->dtctrl = 0x0;
1377
1378 /* clear dcsm configuration */
1379 sdio_data_init_struct.block_size = (sdio_block_size_type)0;
1380 sdio_data_init_struct.data_length = 0;
1381 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1382 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1383 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1384
1385 sdio_data_config(SDIOx, &sdio_data_init_struct);
1386 sdio_data_state_machine_enable(SDIOx, FALSE);
1387
1388 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1389
1390 /* check card locked */
1391 if(response & SD_CARD_LOCKED)
1392 {
1393 return SD_LOCK_UNLOCK_ERROR;
1394 }
1395
1396 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1397 {
1398 blk_size = 512;
1399 addr >>= 9;
1400 }
1401
1402 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1403 {
1404 power = convert_from_bytes_to_power_of_two(blk_size);
1405
1406 /* send cmd16, set block size */
1407 sdio_command_init_struct.argument = blk_size;
1408 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1409 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1410 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1411
1412 /* sdio command config */
1413 sdio_command_config(SDIOx, &sdio_command_init_struct);
1414 /* enable ccsm */
1415 sdio_command_state_machine_enable(SDIOx, TRUE);
1416
1417 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1418
1419 if(status != SD_OK)
1420 {
1421 return status;
1422 }
1423 }
1424 else
1425 {
1426 return SD_INVALID_PARAMETER;
1427 }
1428
1429 timeout = SD_DATATIMEOUT;
1430
1431 do
1432 {
1433 timeout--;
1434 status = sd_status_send(&card_status);
1435 }
1436 /* check ready_for_data flag */
1437 while(((card_status & 0x00000100) == 0) && (timeout > 0));
1438
1439 if(timeout == 0)
1440 {
1441 return SD_ERROR;
1442 }
1443
1444 /* send cmd24, write single block */
1445 sdio_command_init_struct.argument = addr;
1446 sdio_command_init_struct.cmd_index = SD_CMD_WRITE_SINGLE_BLOCK;
1447 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1448 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1449
1450 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1451 sdio_data_init_struct.data_length = blk_size;
1452 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1453 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1454 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1455
1456 stop_flag = 0;
1457
1458 /* single block, stop command is unnecessary */
1459 status = sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1460
1461 if(status != SD_OK)
1462 {
1463 return status;
1464 }
1465
1466 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1467
1468 status = check_card_programming(&card_state);
1469
1470 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || (card_state == SD_CARD_RECEIVING)))
1471 {
1472 status = check_card_programming(&card_state);
1473 }
1474
1475 return status;
1476}
1477
1487 sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
1488{
1489 sd_error_status_type status = SD_OK;
1490 uint8_t power = 0, card_state = 0;
1491 uint32_t timeout = 0, card_status = 0, response = 0;;
1492
1493 if(buf == NULL)
1494 {
1495 return SD_INVALID_PARAMETER;
1496 }
1497
1498 SDIOx->dtctrl = 0x0;
1499
1500 /* clear dcsm configuration */
1501 sdio_data_init_struct.block_size = (sdio_block_size_type)0;
1502 sdio_data_init_struct.data_length = 0;
1503 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1504 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1505 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1506
1507 sdio_data_config(SDIOx, &sdio_data_init_struct);
1508 sdio_data_state_machine_enable(SDIOx, FALSE);
1509
1510 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1511
1512 /* check card locked */
1513 if(response & SD_CARD_LOCKED)
1514 {
1515 return SD_LOCK_UNLOCK_ERROR;
1516 }
1517
1518 if(card_type == SDIO_HIGH_CAPACITY_SD_CARD)
1519 {
1520 blk_size = 512;
1521 addr >>= 9;
1522 }
1523
1524 if((blk_size > 0) && (blk_size <= 2048) && ((blk_size & (blk_size - 1)) == 0))
1525 {
1526 power = convert_from_bytes_to_power_of_two(blk_size);
1527
1528 /* send cmd16, set block size */
1529 sdio_command_init_struct.argument = blk_size;
1530 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
1531 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1532 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1533
1534 /* sdio command config */
1535 sdio_command_config(SDIOx, &sdio_command_init_struct);
1536 /* enable ccsm */
1537 sdio_command_state_machine_enable(SDIOx, TRUE);
1538
1539 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
1540
1541 if(status != SD_OK)
1542 {
1543 return status;
1544 }
1545 }
1546 else
1547 {
1548 return SD_INVALID_PARAMETER;
1549 }
1550
1551 if((nblks * blk_size) > SD_MAX_DATA_LENGTH)
1552 {
1553 return SD_INVALID_PARAMETER;
1554 }
1555
1556 timeout = SD_DATATIMEOUT;
1557
1558 do
1559 {
1560 timeout--;
1561 status = sd_status_send(&card_status);
1562 }
1563 /* check ready_for_data flag */
1564 while(((card_status & 0x00000100) == 0) && (timeout > 0));
1565
1566 if(timeout == 0)
1567 {
1568 return SD_ERROR;
1569 }
1570
1571 if((card_type == SDIO_STD_CAPACITY_SD_CARD_V1_1) || (card_type == SDIO_STD_CAPACITY_SD_CARD_V2_0) || \
1572 (card_type == SDIO_HIGH_CAPACITY_SD_CARD))
1573 {
1574 /* send cmd55 */
1575 sdio_command_init_struct.argument = (uint32_t)rca << 16;
1576 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
1577 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1578 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1579
1580 /* sdio command config */
1581 sdio_command_config(SDIOx, &sdio_command_init_struct);
1582 /* enable ccsm */
1583 sdio_command_state_machine_enable(SDIOx, TRUE);
1584
1585 status = command_rsp1_error(SD_CMD_APP_CMD);
1586
1587 if(status != SD_OK)
1588 {
1589 return status;
1590 }
1591
1592 /* send cmd23, set block count */
1593 sdio_command_init_struct.argument = blk_size;
1594 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCK_COUNT;
1595 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1596 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1597
1598 /* sdio command config */
1599 sdio_command_config(SDIOx, &sdio_command_init_struct);
1600 /* enable ccsm */
1601 sdio_command_state_machine_enable(SDIOx, TRUE);
1602
1603 status = command_rsp1_error(SD_CMD_SET_BLOCK_COUNT);
1604
1605 if(status != SD_OK)
1606 {
1607 return status;
1608 }
1609 }
1610
1611 /* send cmd25, write mult blocks */
1612 sdio_command_init_struct.argument = addr;
1613 sdio_command_init_struct.cmd_index = SD_CMD_WRITE_MULT_BLOCK;
1614 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1615 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1616
1617 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
1618 sdio_data_init_struct.data_length = nblks * blk_size ;
1619 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1620 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1621 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
1622
1623 stop_flag = 1;
1624 /* cmd12 is needed */
1625 status = sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1626
1627 if(status != SD_OK)
1628 {
1629 return status;
1630 }
1631
1632 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1633
1634 status = check_card_programming(&card_state);
1635
1636 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || (card_state == SD_CARD_RECEIVING)))
1637 {
1638 status = check_card_programming(&card_state);
1639 }
1640
1641 return status;
1642}
1643
1651 sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len)
1652{
1653 uint32_t response = 0;
1654
1655 SDIOx->dtctrl = 0x0;
1656
1657 /* clear dcsm configuration */
1658 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1659 sdio_data_init_struct.data_length = 0 ;
1660 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1661 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1662 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1663
1664 sdio_data_config(SDIOx, &sdio_data_init_struct);
1665 sdio_data_state_machine_enable(SDIOx, FALSE);
1666
1667 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1668
1669 /* check card locked */
1670 if(response & SD_CARD_LOCKED)
1671 {
1672 return SD_LOCK_UNLOCK_ERROR;
1673 }
1674 /* send cmd11, read data */
1675 sdio_command_init_struct.argument = addr;
1676 sdio_command_init_struct.cmd_index = SD_CMD_READ_DAT_UNTIL_STOP;
1677 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1678 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1679
1680 sdio_data_init_struct.block_size = (sdio_block_size_type)(5 << 4);
1681 sdio_data_init_struct.data_length = len;
1682 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1683 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
1684 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1685
1686 stop_flag = 1;
1687 /* cmd12 is needed */
1688 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1689}
1690
1698 sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len)
1699{
1700 sd_error_status_type status = SD_OK;
1701 uint32_t response = 0;
1702 uint8_t card_state = 0;
1703
1704 if(buf == NULL)
1705 {
1706 return SD_INVALID_PARAMETER;
1707 }
1708
1709 SDIOx->dtctrl = 0x0;
1710
1711 /* clear dcsm configuration */
1712 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_1B;
1713 sdio_data_init_struct.data_length = 0;
1714 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
1715 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1716 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1717
1718 sdio_data_config(SDIOx, &sdio_data_init_struct);
1719 sdio_data_state_machine_enable(SDIOx, FALSE);
1720
1721 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
1722
1723 /* check card locked */
1724 if(response & SD_CARD_LOCKED)
1725 {
1726 return SD_LOCK_UNLOCK_ERROR;
1727 }
1728 /* send cmd20, write data */
1729 sdio_command_init_struct.argument = addr;
1730 sdio_command_init_struct.cmd_index = SD_CMD_WRITE_DAT_UNTIL_STOP;
1731 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1732 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1733
1734
1735 sdio_data_init_struct.block_size = (sdio_block_size_type)(15 << 4);
1736 sdio_data_init_struct.data_length = len;
1737 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
1738 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CARD;
1739 sdio_data_init_struct.transfer_mode = SDIO_DATA_STREAM_TRANSFER;
1740
1741 stop_flag = 1;
1742 /* cmd12 is needed */
1743 status = sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)buf);
1744
1745 if(status != SD_OK)
1746 {
1747 return status;
1748 }
1749
1750 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1751
1752 status = check_card_programming(&card_state);
1753
1754 while((status == SD_OK) && ((card_state == SD_CARD_PROGRAMMING) || (card_state == SD_CARD_RECEIVING)))
1755 {
1756 status = check_card_programming(&card_state);
1757 }
1758
1759 return status;
1760}
1761
1767void SDIO1_IRQHandler(void)
1768{
1769 sd_irq_service();
1770}
1771
1777void SDIO2_IRQHandler(void)
1778{
1779 sd_irq_service();
1780}
1781
1787 sd_error_status_type sd_irq_service(void)
1788{
1789 if(sdio_flag_get(SDIOx, SDIO_DTCMPL_FLAG) != RESET)
1790 {
1791 if(stop_flag == 1)
1792 {
1793 /* send cmd12, stop transmission */
1794 sdio_command_init_struct.argument = 0;
1795 sdio_command_init_struct.cmd_index = SD_CMD_STOP_TRANSMISSION;
1796 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
1797 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
1798 /* sdio command config */
1799 sdio_command_config(SDIOx, &sdio_command_init_struct);
1800 /* enable ccsm */
1801 sdio_command_state_machine_enable(SDIOx, TRUE);
1802 transfer_error = command_rsp1_error(SD_CMD_STOP_TRANSMISSION);
1803 }
1804 else
1805 {
1806 transfer_error = SD_OK;
1807 }
1808 /* clear flag */
1809 sdio_flag_clear(SDIOx, SDIO_DTCMPL_FLAG);
1810 transfer_end = 1;
1811 return transfer_error;
1812 }
1813
1814 if(sdio_flag_get(SDIOx, SDIO_DTFAIL_FLAG) != RESET)
1815 {
1816 /* clear flag */
1817 sdio_flag_clear(SDIOx, SDIO_DTFAIL_FLAG);
1818 transfer_error = SD_DATA_FAIL;
1819 transfer_end = 1;
1820 return transfer_error;
1821 }
1822
1823 if(sdio_flag_get(SDIOx, SDIO_DTTIMEOUT_FLAG) != RESET)
1824 {
1825 /* clear flag */
1826 sdio_flag_clear(SDIOx, SDIO_DTTIMEOUT_FLAG);
1827 transfer_error = SD_DATA_TIMEOUT;
1828 transfer_end = 1;
1829 return transfer_error;
1830 }
1831
1832 if(sdio_flag_get(SDIOx, SDIO_RXERRO_FLAG) != RESET)
1833 {
1834 /* clear flag */
1835 sdio_flag_clear(SDIOx, SDIO_RXERRO_FLAG);
1836 transfer_error = SD_RX_OVERRUN;
1837 transfer_end = 1;
1838 return(SD_RX_OVERRUN);
1839 }
1840
1841 if(sdio_flag_get(SDIOx, SDIO_TXERRU_FLAG) != RESET)
1842 {
1843 /* clear flag */
1844 sdio_flag_clear(SDIOx, SDIO_TXERRU_FLAG);
1845 transfer_error = SD_TX_UNDERRUN;
1846 transfer_end = 1;
1847 return(SD_TX_UNDERRUN);
1848 }
1849
1850 if(sdio_flag_get(SDIOx, SDIO_SBITERR_FLAG) != RESET)
1851 {
1852 /* clear flag */
1853 sdio_flag_clear(SDIOx, SDIO_SBITERR_FLAG);
1854 transfer_error = SD_START_BIT_ERR;
1855 transfer_end = 1;
1856 return(SD_START_BIT_ERR);
1857 }
1858
1859 /* disable interrupt */
1860 sdio_interrupt_enable(SDIOx, (SDIO_DTFAIL_INT | SDIO_DTTIMEOUT_INT | \
1861 SDIO_DTCMP_INT | SDIO_TXBUFH_INT | SDIO_RXBUFH_INT | \
1862 SDIO_TXERRU_INT| SDIO_RXERRO_INT | SDIO_SBITERR_INT), FALSE);
1863 return(SD_OK);
1864}
1865
1871 sd_error_status_type command_error(void)
1872{
1873 sd_error_status_type status = SD_OK;
1874 uint32_t timeout = SDIO_CMD0TIMEOUT;
1875
1876 while(timeout--)
1877 {
1878 if(sdio_flag_get(SDIOx, SDIO_CMDCMPL_FLAG) != RESET)
1879 {
1880 break;
1881 }
1882 }
1883
1884 if(timeout == 0)
1885 {
1886 return SD_CMD_RSP_TIMEOUT;
1887 }
1888
1889 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1890 return status;
1891}
1892
1898 sd_error_status_type command_rsp7_error(void)
1899{
1900 sd_error_status_type status = SD_OK;
1901 uint32_t sts_reg = 0;
1902 uint32_t timeout = SDIO_CMD0TIMEOUT;
1903
1904 while(timeout--)
1905 {
1906 sts_reg = SDIOx->sts;
1907
1908 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
1909 {
1910 break;
1911 }
1912 }
1913
1914 if((timeout == 0) || (sts_reg & SDIO_CMDTIMEOUT_FLAG))
1915 {
1916 status = SD_CMD_RSP_TIMEOUT;
1917 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
1918 return status;
1919 }
1920
1921 if(sts_reg & SDIO_CMDRSPCMPL_FLAG)
1922 {
1923 status = SD_OK;
1924 sdio_flag_clear(SDIOx, SDIO_CMDRSPCMPL_FLAG);
1925 }
1926
1927 return status;
1928}
1929
1935 sd_error_status_type command_rsp1_error(uint8_t cmd)
1936{
1937 uint32_t sts_reg = 0;
1938 uint32_t rsp_cmd = 0;
1939
1940 while(1)
1941 {
1942 sts_reg = SDIOx->sts;
1943
1944 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
1945 {
1946 break;
1947 }
1948 }
1949
1950 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
1951 {
1952 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
1953 return SD_CMD_RSP_TIMEOUT;
1954 }
1955
1956 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
1957 {
1958 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
1959 return SD_CMD_FAIL;
1960 }
1961
1962 rsp_cmd = sdio_command_response_get(SDIOx);
1963 if(rsp_cmd != cmd)
1964 {
1965 return SD_ILLEGAL_CMD;
1966 }
1967
1968 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1969
1970 return (sd_error_status_type)(sdio_response_get(SDIOx, SDIO_RSP1_INDEX) & SD_OCR_ERRORBITS);
1971}
1972
1978 sd_error_status_type command_rsp3_error(void)
1979{
1980 uint32_t sts_reg = 0;;
1981
1982 while(1)
1983 {
1984 sts_reg = SDIOx->sts;
1985
1986 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
1987 {
1988 break;
1989 }
1990 }
1991
1992 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
1993 {
1994 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
1995 return SD_CMD_RSP_TIMEOUT;
1996 }
1997
1998 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
1999
2000 return SD_OK;
2001}
2002
2008 sd_error_status_type command_rsp2_error(void)
2009{
2010 sd_error_status_type status = SD_OK;
2011 uint32_t sts_reg;
2012 uint32_t timeout = SDIO_CMD0TIMEOUT;
2013
2014 while(timeout--)
2015 {
2016 sts_reg = SDIOx->sts;
2017
2018 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2019 {
2020 break;
2021 }
2022 }
2023
2024 if((timeout == 0) || sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2025 {
2026 status = SD_CMD_RSP_TIMEOUT;
2027 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2028
2029 return status;
2030 }
2031
2032 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2033 {
2034 status = SD_CMD_FAIL;
2035 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2036 }
2037
2038 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2039
2040 return status;
2041}
2042
2048 sd_error_status_type command_rsp4_error(uint8_t cmd)
2049{
2050 uint32_t sts_reg = 0, rsp_cmd = 0;
2051
2052 while(1)
2053 {
2054 sts_reg = SDIOx->sts;
2055
2056 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2057 {
2058 break;
2059 }
2060 }
2061
2062 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2063 {
2064 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2065 return SD_CMD_RSP_TIMEOUT;
2066 }
2067
2068 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2069 {
2070 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2071
2072 return SD_CMD_FAIL;
2073 }
2074
2075 rsp_cmd = sdio_command_response_get(SDIOx);
2076 if(rsp_cmd != cmd)
2077 {
2078 return SD_ILLEGAL_CMD;
2079 }
2080
2081 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2082
2083 return SD_OK;
2084}
2085
2091 sd_error_status_type command_rsp5_error(uint8_t cmd)
2092{
2093 uint32_t sts_reg = 0, rsp_cmd = 0, response = 0;
2094
2095 while(1)
2096 {
2097 sts_reg = SDIOx->sts;
2098
2099 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2100 {
2101 break;
2102 }
2103 }
2104
2105 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2106 {
2107 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2108
2109 return SD_CMD_RSP_TIMEOUT;
2110 }
2111
2112 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2113 {
2114 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2115
2116 return SD_CMD_FAIL;
2117 }
2118
2119 rsp_cmd = sdio_command_response_get(SDIOx);
2120 if(rsp_cmd != cmd)
2121 {
2122 return SD_ILLEGAL_CMD;
2123 }
2124
2125 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2126
2127 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2128
2129 if(response & SD_R5_OUT_OF_RANGE)
2130 {
2131 return SD_CMD_OUT_OF_RANGE;
2132 }
2133
2134 if(response & SD_R5_FUNCTION_NUMBER)
2135 {
2136 return SD_SDIO_UNKNOWN_FUNC;
2137 }
2138
2139 if(response & SD_R5_ERROR)
2140 {
2141 return SD_GENERAL_UNKNOWN_ERROR;
2142 }
2143
2144 return SD_OK;
2145}
2146
2154 sd_error_status_type command_rsp6_error(uint8_t cmd, uint16_t *prca)
2155{
2156 sd_error_status_type status = SD_OK;
2157 uint32_t sts_reg, rsp_cmd = 0, response = 0;
2158
2159 while(1)
2160 {
2161 sts_reg = SDIOx->sts;
2162
2163 if(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG))
2164 {
2165 break;
2166 }
2167 }
2168
2169 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2170 {
2171 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2172 return SD_CMD_RSP_TIMEOUT;
2173 }
2174
2175 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2176 {
2177 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2178 return SD_CMD_FAIL;
2179 }
2180
2181 rsp_cmd = sdio_command_response_get(SDIOx);
2182 if(rsp_cmd != cmd)
2183 {
2184 return SD_ILLEGAL_CMD;
2185 }
2186
2187 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2188
2189 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2190
2191 if(SD_ALLZERO == (response & (SD_R6_GENERAL_UNKNOWN_ERROR | SD_R6_ILLEGAL_CMD | SD_R6_CMD_CRC_ERROR)))
2192 {
2193 *prca = (uint16_t)(response >> 16);
2194 return status;
2195 }
2196
2197 if(response & SD_R6_GENERAL_UNKNOWN_ERROR)
2198 {
2199 return SD_GENERAL_UNKNOWN_ERROR;
2200 }
2201
2202 if(response & SD_R6_ILLEGAL_CMD)
2203 {
2204 return SD_ILLEGAL_CMD;
2205 }
2206
2207 if(response & SD_R6_CMD_CRC_ERROR)
2208 {
2209 return SD_CMD_CRC_ERROR;
2210 }
2211
2212 return status;
2213}
2214
2220 sd_error_status_type sd_bus_wide_enable(confirm_state new_state)
2221{
2222 sd_error_status_type status = SD_OK;
2223 uint32_t response = 0;
2224 uint8_t arg = 0x00;
2225
2226 if(new_state == TRUE)
2227 {
2228 arg = 0x02;
2229 }
2230 else
2231 {
2232 arg = 0x00;
2233 }
2234
2235 /* get response1 */
2236 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2237
2238 /* check card locked or not */
2239 if(response & SD_CARD_LOCKED)
2240 {
2241 return SD_LOCK_UNLOCK_ERROR;
2242 }
2243
2244 if(sd_card_info.sd_scr_reg.sd_bus_width)
2245 {
2246 sdio_command_init_struct.argument = (uint32_t)(sd_card_info.rca << 16);
2247 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
2248 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2249 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2250
2251 /* sdio command config */
2252 sdio_command_config(SDIOx, &sdio_command_init_struct);
2253 /* enable ccsm */
2254 sdio_command_state_machine_enable(SDIOx, TRUE);
2255
2256 status = command_rsp1_error(SD_CMD_APP_CMD);
2257
2258 if(status != SD_OK)
2259 {
2260 return status;
2261 }
2262
2263 sdio_command_init_struct.argument = arg;
2264 sdio_command_init_struct.cmd_index = SD_CMD_APP_SD_SET_BUSWIDTH;
2265 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2266 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2267
2268 /* sdio command config */
2269 sdio_command_config(SDIOx, &sdio_command_init_struct);
2270 /* enable ccsm */
2271 sdio_command_state_machine_enable(SDIOx, TRUE);
2272
2273 status = command_rsp1_error(SD_CMD_APP_SD_SET_BUSWIDTH);
2274 return status;
2275 }
2276 else
2277 {
2278 return SD_REQ_NOT_APPLICABLE;
2279 }
2280}
2281
2289 sd_error_status_type mmc_switch(uint8_t set, uint8_t index, uint8_t value)
2290{
2291 sd_error_status_type status = SD_OK;
2292 uint32_t card_status = 0, timeout = 0;
2293
2294 sdio_command_init_struct.argument = (EXT_CSD_Write_byte << 24) | (index << 16) | (value << 8) | set;
2295 sdio_command_init_struct.cmd_index = SD_CMD_HS_SWITCH;
2296 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2297 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2298
2299 /* sdio command config */
2300 sdio_command_config(SDIOx, &sdio_command_init_struct);
2301 /* enable ccsm */
2302 sdio_command_state_machine_enable(SDIOx, TRUE);
2303
2304 status = command_rsp1_error(SD_CMD_HS_SWITCH);
2305 if(status != SD_OK)
2306 {
2307 return status;
2308 }
2309
2310 card_status = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2311 if(card_status & MMC_SWITCH_ERROR)
2312 {
2313 return SD_SWITCH_ERROR;
2314 }
2315
2316 timeout = SD_DATATIMEOUT;
2317 do
2318 {
2319 timeout--;
2320 status = sd_status_send(&card_status);
2321 } /* check ready_for_data flag */
2322 while(((card_status & 0x00000100) == 0) && (timeout > 0));
2323
2324 if(timeout == 0)
2325 {
2326 return SD_ERROR;
2327 }
2328
2329 return status;
2330}
2331
2340 sd_error_status_type sd_switch(uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp)
2341{
2342 sd_error_status_type status = SD_OK;
2343 uint8_t power;
2344 uint16_t blk_size;
2345
2346 if(rsp == NULL)
2347 {
2348 return SD_INVALID_PARAMETER;
2349 }
2350
2351 SDIOx->dtctrl = 0x0;
2352
2353 blk_size = 64;
2354 power = convert_from_bytes_to_power_of_two(blk_size);
2355
2356 sdio_command_init_struct.argument = blk_size;
2357 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
2358 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2359 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2360
2361 /* sdio command config */
2362 sdio_command_config(SDIOx, &sdio_command_init_struct);
2363 /* enable ccsm */
2364 sdio_command_state_machine_enable(SDIOx, TRUE);
2365
2366 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
2367
2368 if(status != SD_OK)
2369 {
2370 return status;
2371 }
2372
2373 sdio_data_init_struct.block_size = (sdio_block_size_type)(power);
2374 sdio_data_init_struct.data_length = blk_size ;
2375 sdio_data_init_struct.timeout = SD_DATATIMEOUT ;
2376 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
2377 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
2378
2379 sdio_command_init_struct.argument = (mode << 31) | 0x00FFFFFF;
2380 sdio_command_init_struct.argument &= ~(0xF << (group * 4));
2381 sdio_command_init_struct.argument |= value << (group * 4);
2382 sdio_command_init_struct.cmd_index = SD_CMD_HS_SWITCH;
2383 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2384 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2385
2386 stop_flag = 0;
2387
2388 return sdio_command_data_send(&sdio_command_init_struct, &sdio_data_init_struct, (uint32_t *)rsp);
2389}
2390
2396 sd_error_status_type check_card_programming(uint8_t *p_status)
2397{
2398 volatile uint32_t response = 0, sts_reg = 0, rsp_cmd = 0;
2399
2400 /* send cmd13 */
2401 sdio_command_init_struct.argument = (uint32_t)(rca << 16);
2402 sdio_command_init_struct.cmd_index = SD_CMD_SEND_STATUS;
2403 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2404 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2405
2406 /* sdio command config */
2407 sdio_command_config(SDIOx, &sdio_command_init_struct);
2408 /* enable ccsm */
2409 sdio_command_state_machine_enable(SDIOx, TRUE);
2410
2411 sts_reg = SDIOx->sts;
2412
2413 while(!(sts_reg & (SDIO_CMDFAIL_FLAG | SDIO_CMDTIMEOUT_FLAG | SDIO_CMDRSPCMPL_FLAG)))
2414 {
2415 sts_reg = SDIOx->sts;
2416 }
2417
2418 if(sdio_flag_get(SDIOx, SDIO_CMDFAIL_FLAG) != RESET)
2419 {
2420 sdio_flag_clear(SDIOx, SDIO_CMDFAIL_FLAG);
2421 return SD_CMD_FAIL;
2422 }
2423
2424 if(sdio_flag_get(SDIOx, SDIO_CMDTIMEOUT_FLAG) != RESET)
2425 {
2426 sdio_flag_clear(SDIOx, SDIO_CMDTIMEOUT_FLAG);
2427 return SD_CMD_RSP_TIMEOUT;
2428 }
2429
2430 rsp_cmd = sdio_command_response_get(SDIOx);
2431 if(rsp_cmd!= SD_CMD_SEND_STATUS)
2432 {
2433 return SD_ILLEGAL_CMD;
2434 }
2435
2436 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2437
2438 response = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2439
2440 *p_status = (uint8_t)((response >> 9) & 0x0000000F);
2441
2442 return SD_OK;
2443}
2444
2450 sd_error_status_type sd_status_send(uint32_t *p_card_status)
2451{
2452 sd_error_status_type status = SD_OK;
2453
2454 if(p_card_status == NULL)
2455 {
2456 status = SD_INVALID_PARAMETER;
2457 return status;
2458 }
2459
2460 sdio_command_init_struct.argument = (uint32_t)(rca << 16);
2461 sdio_command_init_struct.cmd_index = SD_CMD_SEND_STATUS;
2462 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2463 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2464
2465 /* sdio command config */
2466 sdio_command_config(SDIOx, &sdio_command_init_struct);
2467 /* enable ccsm */
2468 sdio_command_state_machine_enable(SDIOx, TRUE);
2469
2470 status = command_rsp1_error(SD_CMD_SEND_STATUS);
2471
2472 if(status != SD_OK)
2473 {
2474 return status;
2475 }
2476
2477 *p_card_status = sdio_response_get(SDIOx, SDIO_RSP1_INDEX);
2478
2479 return status;
2480}
2481
2487 sd_card_state_type sd_state_get(void)
2488{
2489 uint32_t response = 0;
2490
2491 if(sd_status_send(&response) != SD_OK)
2492 {
2493 return SD_CARD_ERROR;
2494 }
2495 else
2496 {
2497 return (sd_card_state_type)((response >> 9) & 0x0F);
2498 }
2499}
2500
2505 sd_error_status_type scr_find(void)
2506{
2507 uint32_t index = 0, sts_reg = 0;
2508 sd_error_status_type status = SD_OK;
2509 uint32_t *tempscr;
2510
2511 tempscr = (uint32_t *) &(sd_card_info.sd_scr_reg);
2512
2513 /* send cmd16, set block length */
2514 sdio_command_init_struct.argument = (uint32_t)8;
2515 sdio_command_init_struct.cmd_index = SD_CMD_SET_BLOCKLEN;
2516 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2517 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2518
2519 /* sdio command config */
2520 sdio_command_config(SDIOx, &sdio_command_init_struct);
2521 /* enable ccsm */
2522 sdio_command_state_machine_enable(SDIOx, TRUE);
2523
2524 status = command_rsp1_error(SD_CMD_SET_BLOCKLEN);
2525
2526 if(status != SD_OK)
2527 {
2528 return status;
2529 }
2530
2531 /* send cmd55 */
2532 sdio_command_init_struct.argument = (uint32_t)(sd_card_info.rca << 16);
2533 sdio_command_init_struct.cmd_index = SD_CMD_APP_CMD;
2534 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2535 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2536
2537 /* sdio command config */
2538 sdio_command_config(SDIOx, &sdio_command_init_struct);
2539 /* enable ccsm */
2540 sdio_command_state_machine_enable(SDIOx, TRUE);
2541
2542 status = command_rsp1_error(SD_CMD_APP_CMD);
2543
2544 if(status != SD_OK)
2545 {
2546 return status;
2547 }
2548
2549 sdio_data_init_struct.block_size = SDIO_DATA_BLOCK_SIZE_8B;
2550 sdio_data_init_struct.data_length = 8;
2551 sdio_data_init_struct.timeout = SD_DATATIMEOUT;
2552 sdio_data_init_struct.transfer_direction = SDIO_DATA_TRANSFER_TO_CONTROLLER;
2553 sdio_data_init_struct.transfer_mode = SDIO_DATA_BLOCK_TRANSFER;
2554
2555 sdio_data_config(SDIOx, &sdio_data_init_struct);
2556 sdio_data_state_machine_enable(SDIOx, TRUE);
2557
2558 /* send cmd51 */
2559 sdio_command_init_struct.argument = 0x0;
2560 sdio_command_init_struct.cmd_index = SD_CMD_SD_APP_SEND_SCR;
2561 sdio_command_init_struct.rsp_type = SDIO_RESPONSE_SHORT;
2562 sdio_command_init_struct.wait_type = SDIO_WAIT_FOR_NO;
2563
2564 /* sdio command config */
2565 sdio_command_config(SDIOx, &sdio_command_init_struct);
2566 /* enable ccsm */
2567 sdio_command_state_machine_enable(SDIOx, TRUE);
2568
2569 status = command_rsp1_error(SD_CMD_SD_APP_SEND_SCR);
2570
2571 if(status != SD_OK)
2572 {
2573 return status;
2574 }
2575
2576 sts_reg = SDIOx->sts;
2577
2578 while(!(sts_reg & (SDIO_RXERRO_FLAG | SDIO_DTFAIL_FLAG | SDIO_DTTIMEOUT_FLAG | SDIO_DTBLKCMPL_FLAG | SDIO_SBITERR_FLAG)))
2579 {
2580 if(sdio_flag_get(SDIOx, SDIO_RXBUF_FLAG) != RESET)
2581 {
2582 *(tempscr + index) = sdio_data_read(SDIOx);
2583 index++;
2584 }
2585 sts_reg = SDIOx->sts;
2586 }
2587
2588 if(sdio_flag_get(SDIOx, SDIO_DTTIMEOUT_FLAG) != RESET)
2589 {
2590 sdio_flag_clear(SDIOx, SDIO_DTTIMEOUT_FLAG);
2591 return SD_DATA_TIMEOUT;
2592 }
2593 else if(sdio_flag_get(SDIOx, SDIO_DTFAIL_FLAG) != RESET)
2594 {
2595 sdio_flag_clear(SDIOx, SDIO_DTFAIL_FLAG);
2596 return SD_DATA_FAIL;
2597 }
2598 else if(sdio_flag_get(SDIOx, SDIO_RXERRO_FLAG) != RESET)
2599 {
2600 sdio_flag_clear(SDIOx, SDIO_RXERRO_FLAG);
2601 return SD_RX_OVERRUN;
2602 }
2603 else if(sdio_flag_get(SDIOx, SDIO_SBITERR_FLAG) != RESET)
2604 {
2605 sdio_flag_clear(SDIOx, SDIO_SBITERR_FLAG);
2606 return SD_START_BIT_ERR;
2607 }
2608
2609 sdio_flag_clear(SDIOx, SDIO_STATIC_FLAGS);
2610
2611 return status;
2612}
2613
2619 sd_error_status_type speed_change(uint8_t speed)
2620{
2621 sd_error_status_type status = SD_OK;
2622 uint8_t switch_sts[64];
2623
2624 if(speed > 1)
2625 {
2626 return SD_ERROR;
2627 }
2628
2629 /* check card type */
2630 if((SDIO_STD_CAPACITY_SD_CARD_V1_1 == card_type) || (SDIO_STD_CAPACITY_SD_CARD_V2_0 == card_type) || \
2631 (SDIO_HIGH_CAPACITY_SD_CARD == card_type))
2632 {
2633 /* version 1.01 card does not support cmd6 */
2634 if(sd_card_info.sd_scr_reg.sd_spec == 0)
2635 {
2636 return SD_ERROR;
2637 }
2638
2639 /* check group 1 function support speed */
2640 status = sd_switch(0, 0, speed, switch_sts);
2641
2642 if(status != 0)
2643 {
2644 return status;
2645 }
2646
2647 if((switch_sts[13] & (1 << speed)) == 0)
2648 {
2649 return SD_ERROR;
2650 }
2651
2652 status = sd_switch(1, 0, speed, switch_sts);
2653
2654 if(status != 0)
2655 {
2656 return status;
2657 }
2658
2659 /* read it back for confirmation */
2660 if((switch_sts[16] & 0xF) != speed)
2661 {
2662 return SD_ERROR;
2663 }
2664 }
2665 else if(card_type == SDIO_HIGH_SPEED_MULTIMEDIA_CARD)
2666 {
2667 status = mmc_switch(EXT_CSD_CMD_SET_NORMAL, EXT_CSD_BUS_WIDTH, (uint8_t)speed);
2668
2669 if(status != 0)
2670 {
2671 return status;
2672 }
2673 }
2674
2675 return status;
2676}
2677
2683uint8_t convert_from_bytes_to_power_of_two(uint16_t number_of_bytes)
2684{
2685 uint8_t count = 0;
2686
2687 while(number_of_bytes != 1)
2688 {
2689 number_of_bytes >>= 1;
2690 count++;
2691 }
2692
2693 return count;
2694}
2695
2704void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
2705{
2706 dma_init_type dma_init_struct;
2707 dma_default_para_init(&dma_init_struct);
2708
2709 crm_periph_clock_enable(CRM_DMA2_PERIPH_CLOCK, TRUE);
2710
2711 dma_reset(DMA2_CHANNEL4);
2712 dma_channel_enable(DMA2_CHANNEL4, FALSE);
2713
2714 dma_init_struct.peripheral_base_addr = (uint32_t)&SDIOx->buf;
2715 dma_init_struct.memory_base_addr = (uint32_t)mbuf;
2716 dma_init_struct.direction = dir;
2717 dma_init_struct.buffer_size = buf_size / 4;
2718 dma_init_struct.peripheral_inc_enable = FALSE;
2719 dma_init_struct.memory_inc_enable = TRUE;
2720 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_WORD;
2721 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_WORD;
2722 dma_init_struct.loop_mode_enable = FALSE;
2723 dma_init_struct.priority = DMA_PRIORITY_HIGH;
2724 dma_init(DMA2_CHANNEL4, &dma_init_struct);
2725
2726 dma_channel_enable(DMA2_CHANNEL4, TRUE);
2727}
2728
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
sd_card_info
sd_card_info_struct_type sd_card_info
Definition: sdio_fatfs/src/at32_sdio.c:47
sd_switch
sd_error_status_type sd_switch(uint32_t mode, uint32_t group, uint8_t value, uint8_t *rsp)
switch sd card speed to high speed
Definition: sdio_fatfs/src/at32_sdio.c:2340
command_rsp5_error
sd_error_status_type command_rsp5_error(uint8_t cmd)
checks for error conditions for r5 response.
Definition: sdio_fatfs/src/at32_sdio.c:2091
speed_change
sd_error_status_type speed_change(uint8_t speed)
set bus speed
Definition: sdio_fatfs/src/at32_sdio.c:2619
sd_power_off
sd_error_status_type sd_power_off(void)
turns the sdio output signals off.
Definition: sdio_fatfs/src/at32_sdio.c:401
sdio_data_init_struct
sdio_data_struct_type sdio_data_init_struct
Definition: sdio_fatfs/src/at32_sdio.c:39
sd_irq_service
sd_error_status_type sd_irq_service(void)
allows to process all the interrupts that are high.
Definition: sdio_fatfs/src/at32_sdio.c:1787
transfer_end
volatile uint8_t transfer_end
Definition: sdio_fatfs/src/at32_sdio.c:46
command_rsp7_error
sd_error_status_type command_rsp7_error(void)
checks for error conditions for R7 response.
Definition: sdio_fatfs/src/at32_sdio.c:1898
sd_device_mode_set
sd_error_status_type sd_device_mode_set(uint32_t mode)
set sdio work mode.
Definition: sdio_fatfs/src/at32_sdio.c:784
card_type
static sd_memory_card_type card_type
Definition: sdio_fatfs/src/at32_sdio.c:41
convert_from_bytes_to_power_of_two
uint8_t convert_from_bytes_to_power_of_two(uint16_t number_of_bytes)
converts the number of bytes in power of two and returns the power.
Definition: sdio_fatfs/src/at32_sdio.c:2683
sd_card_info_get
sd_error_status_type sd_card_info_get(sd_card_info_struct_type *card_info)
returns information about specific card.
Definition: sdio_fatfs/src/at32_sdio.c:530
sdio_command_init_struct
sdio_command_struct_type sdio_command_init_struct
Definition: sdio_fatfs/src/at32_sdio.c:38
mmc_stream_write
sd_error_status_type mmc_stream_write(uint8_t *buf, long long addr, uint32_t len)
write mmc card data stream.
Definition: sdio_fatfs/src/at32_sdio.c:1698
sd_card_init
sd_error_status_type sd_card_init(void)
intialises all cards or single card as the case may be card(s) come into standby state.
Definition: sdio_fatfs/src/at32_sdio.c:415
sd_block_read
sd_error_status_type sd_block_read(uint8_t *buf, long long addr, uint16_t blk_size)
allows to read one block from a specified address in a card. the data transfer can be managed by dma ...
Definition: sdio_fatfs/src/at32_sdio.c:1186
sd_deselect_select
sd_error_status_type sd_deselect_select(uint32_t addr)
selects od deselects the corresponding card.
Definition: sdio_fatfs/src/at32_sdio.c:805
command_rsp6_error
sd_error_status_type command_rsp6_error(uint8_t cmd, uint16_t *p_rca)
checks for error conditions for r6 (rca) response.
Definition: sdio_fatfs/src/at32_sdio.c:2154
SDIO1_IRQHandler
void SDIO1_IRQHandler(void)
sdio1 isr.
Definition: sdio_fatfs/src/at32_sdio.c:1767
stop_flag
static uint8_t stop_flag
Definition: sdio_fatfs/src/at32_sdio.c:44
mmc_switch
sd_error_status_type mmc_switch(uint8_t set, uint8_t index, uint8_t value)
switch mmc card speed to high speed
Definition: sdio_fatfs/src/at32_sdio.c:2289
sd_blocks_erase
sd_error_status_type sd_blocks_erase(long long addr, uint32_t nblks)
erase continuous data block
Definition: sdio_fatfs/src/at32_sdio.c:1028
check_card_programming
sd_error_status_type check_card_programming(uint8_t *p_status)
checks if the sd card is in programming state.
Definition: sdio_fatfs/src/at32_sdio.c:2396
transfer_error
volatile sd_error_status_type transfer_error
Definition: sdio_fatfs/src/at32_sdio.c:45
sd_bus_wide_enable
sd_error_status_type sd_bus_wide_enable(confirm_state new_state)
enable or disable the sdio wide bus mode.
Definition: sdio_fatfs/src/at32_sdio.c:2220
command_rsp1_error
sd_error_status_type command_rsp1_error(uint8_t cmd)
checks for error conditions for R1 response.
Definition: sdio_fatfs/src/at32_sdio.c:1935
SDIO2_IRQHandler
void SDIO2_IRQHandler(void)
sdio2 isr.
Definition: sdio_fatfs/src/at32_sdio.c:1777
sd_mult_blocks_write
sd_error_status_type sd_mult_blocks_write(const uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to write blocks starting from a specified address in a card. the data transfer can be managed ...
Definition: sdio_fatfs/src/at32_sdio.c:1487
csd_table
static uint32_t csd_table[4]
Definition: sdio_fatfs/src/at32_sdio.c:42
sdio_clock_set
void sdio_clock_set(uint32_t clk_div)
set sdio clock devision factor.
Definition: sdio_fatfs/src/at32_sdio.c:186
sd_state_get
sd_card_state_type sd_state_get(void)
returns information about sd card.
Definition: sdio_fatfs/src/at32_sdio.c:2487
cid_table
static uint32_t cid_table[4]
Definition: sdio_fatfs/src/at32_sdio.c:42
sd_dma_config
void sd_dma_config(uint32_t *mbuf, uint32_t buf_size, dma_dir_type dir)
set dma configuation for sdio
Definition: sdio_fatfs/src/at32_sdio.c:2704
sd_block_write
sd_error_status_type sd_block_write(const uint8_t *buf, long long addr, uint16_t blk_size)
allows to write one block starting from a specified address in a card. the data transfer can be manag...
Definition: sdio_fatfs/src/at32_sdio.c:1365
device_mode
static sd_data_transfer_mode_type device_mode
Definition: sdio_fatfs/src/at32_sdio.c:43
sd_status_send
sd_error_status_type sd_status_send(uint32_t *p_card_status)
read current card status.
Definition: sdio_fatfs/src/at32_sdio.c:2450
sdio_command_data_send
sd_error_status_type sdio_command_data_send(sdio_command_struct_type *sdio_cmd_init_t, sdio_data_struct_type *sdio_data_init_t, uint32_t *buf)
read data from or write data to sd card.
Definition: sdio_fatfs/src/at32_sdio.c:828
command_rsp2_error
sd_error_status_type command_rsp2_error(void)
checks for error conditions for R2 (cid or csd) response.
Definition: sdio_fatfs/src/at32_sdio.c:2008
sd_init
sd_error_status_type sd_init(void)
initializes the sd card and put it into standby state (ready for data transfer).
Definition: sdio_fatfs/src/at32_sdio.c:71
mmc_stream_read
sd_error_status_type mmc_stream_read(uint8_t *buf, long long addr, uint32_t len)
read mmc card data stream.
Definition: sdio_fatfs/src/at32_sdio.c:1651
scr_find
sd_error_status_type scr_find(void)
find the sd card scr register value.
Definition: sdio_fatfs/src/at32_sdio.c:2505
sd_power_on
sd_error_status_type sd_power_on(void)
enquires cards about their operating voltage and configures clock controls.
Definition: sdio_fatfs/src/at32_sdio.c:201
command_rsp4_error
sd_error_status_type command_rsp4_error(uint8_t cmd)
checks for error conditions for r4 response.
Definition: sdio_fatfs/src/at32_sdio.c:2048
sd_mult_blocks_read
sd_error_status_type sd_mult_blocks_read(uint8_t *buf, long long addr, uint16_t blk_size, uint32_t nblks)
allows to read blocks from a specified address in a card. the data transfer can be managed by dma mod...
Definition: sdio_fatfs/src/at32_sdio.c:1275
sd_wide_bus_operation_config
sd_error_status_type sd_wide_bus_operation_config(sdio_bus_width_type mode)
enable wide bus opeartion for the requeseted card if supported by card.
Definition: sdio_fatfs/src/at32_sdio.c:741
rca
static uint32_t rca
Definition: sdio_fatfs/src/at32_sdio.c:42
command_rsp3_error
sd_error_status_type command_rsp3_error(void)
checks for error conditions for R3 (ocr) response.
Definition: sdio_fatfs/src/at32_sdio.c:1978
command_error
sd_error_status_type command_error(void)
checks for error conditions for cmd0.
Definition: sdio_fatfs/src/at32_sdio.c:1871
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_SDIO1_PERIPH_CLOCK
@ CRM_SDIO1_PERIPH_CLOCK
Definition: at32f403_crm.h:106
CRM_GPIOC_PERIPH_CLOCK
@ CRM_GPIOC_PERIPH_CLOCK
Definition: at32f403_crm.h:112
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_DMA2_PERIPH_CLOCK
@ CRM_DMA2_PERIPH_CLOCK
Definition: at32f403_crm.h:103
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
dma_dir_type
dma_dir_type
dma direction type
Definition: at32f403_dma.h:125
DMA_PERIPHERAL_DATA_WIDTH_WORD
@ DMA_PERIPHERAL_DATA_WIDTH_WORD
Definition: at32f403_dma.h:156
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_WORD
@ DMA_MEMORY_DATA_WIDTH_WORD
Definition: at32f403_dma.h:166
DMA_PRIORITY_HIGH
@ DMA_PRIORITY_HIGH
Definition: at32f403_dma.h:176
DMA2_CHANNEL4
#define DMA2_CHANNEL4
Definition: at32f403_dma.h:367
confirm_state
confirm_state
confirm state
Definition: at32f403.h:309
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIOC
#define GPIOC
Definition: at32f403_gpio.h:596
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
sdio_command_config
void sdio_command_config(sdio_type *sdio_x, sdio_command_struct_type *command_struct)
config sdio command.
Definition: at32f403_sdio.c:371
sdio_data_write
void sdio_data_write(sdio_type *sdio_x, uint32_t data)
write one word data to fifo.
Definition: at32f403_sdio.c:532
sdio_data_config
void sdio_data_config(sdio_type *sdio_x, sdio_data_struct_type *data_struct)
config sdio data.
Definition: at32f403_sdio.c:458
sdio_data_read
uint32_t sdio_data_read(sdio_type *sdio_x)
read a word data from sdio fifo.
Definition: at32f403_sdio.c:507
sdio_command_state_machine_enable
void sdio_command_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable command path state machine(CPSM).
Definition: at32f403_sdio.c:394
sdio_clock_bypass
void sdio_clock_bypass(sdio_type *sdio_x, confirm_state new_state)
enable or disable clock divider bypss
Definition: at32f403_sdio.c:139
sdio_flow_control_enable
void sdio_flow_control_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable hardware flow control.
Definition: at32f403_sdio.c:166
sdio_power_set
void sdio_power_set(sdio_type *sdio_x, sdio_power_state_type power_state)
set the power status of the controller
Definition: at32f403_sdio.c:73
sdio_clock_config
void sdio_clock_config(sdio_type *sdio_x, uint16_t clk_div, sdio_edge_phase_type clk_edg)
config sdio clock
Definition: at32f403_sdio.c:102
sdio_bus_width_config
void sdio_bus_width_config(sdio_type *sdio_x, sdio_bus_width_type width)
config sdio bus width
Definition: at32f403_sdio.c:126
sdio_interrupt_enable
void sdio_interrupt_enable(sdio_type *sdio_x, uint32_t int_opt, confirm_state new_state)
config corresponding interrupt.
Definition: at32f403_sdio.c:230
sdio_flag_clear
void sdio_flag_clear(sdio_type *sdio_x, uint32_t flag)
clear sdio flag.
Definition: at32f403_sdio.c:357
sdio_power_status_get
sdio_power_state_type sdio_power_status_get(sdio_type *sdio_x)
get power status.
Definition: at32f403_sdio.c:85
sdio_response_get
uint32_t sdio_response_get(sdio_type *sdio_x, sdio_rsp_index_type reg_index)
get response received from the card for the last command.
Definition: at32f403_sdio.c:425
sdio_data_state_machine_enable
void sdio_data_state_machine_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable data path state machine(DPSM).
Definition: at32f403_sdio.c:483
sdio_power_saving_mode_enable
void sdio_power_saving_mode_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable power saving mode, config sdio_ck clock output when the bus is idle.
Definition: at32f403_sdio.c:153
sdio_flag_get
flag_status sdio_flag_get(sdio_type *sdio_x, uint32_t flag)
get sdio flag.
Definition: at32f403_sdio.c:320
sdio_dma_enable
void sdio_dma_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable dma.
Definition: at32f403_sdio.c:192
sdio_reset
void sdio_reset(sdio_type *sdio_x)
reset the sdio register
Definition: at32f403_sdio.c:49
sdio_clock_enable
void sdio_clock_enable(sdio_type *sdio_x, confirm_state new_state)
enable or disable sdio_ck output.
Definition: at32f403_sdio.c:179
sdio_command_response_get
uint8_t sdio_command_response_get(sdio_type *sdio_x)
get command index of last command for which response received.
Definition: at32f403_sdio.c:407
sdio_bus_width_type
sdio_bus_width_type
sdio bus width
Definition: at32f403_sdio.h:137
sdio_block_size_type
sdio_block_size_type
sdio data block size
Definition: at32f403_sdio.h:178
SDIO_WAIT_FOR_NO
@ SDIO_WAIT_FOR_NO
Definition: at32f403_sdio.h:158
SDIO_WAIT_FOR_INT
@ SDIO_WAIT_FOR_INT
Definition: at32f403_sdio.h:159
SDIO_RESPONSE_LONG
@ SDIO_RESPONSE_LONG
Definition: at32f403_sdio.h:150
SDIO_RESPONSE_SHORT
@ SDIO_RESPONSE_SHORT
Definition: at32f403_sdio.h:149
SDIO_RESPONSE_NO
@ SDIO_RESPONSE_NO
Definition: at32f403_sdio.h:148
SDIO_CLOCK_EDGE_FALLING
@ SDIO_CLOCK_EDGE_FALLING
Definition: at32f403_sdio.h:130
SDIO_DATA_TRANSFER_TO_CARD
@ SDIO_DATA_TRANSFER_TO_CARD
Definition: at32f403_sdio.h:210
SDIO_DATA_TRANSFER_TO_CONTROLLER
@ SDIO_DATA_TRANSFER_TO_CONTROLLER
Definition: at32f403_sdio.h:211
SDIO_POWER_OFF
@ SDIO_POWER_OFF
Definition: at32f403_sdio.h:120
SDIO_POWER_ON
@ SDIO_POWER_ON
Definition: at32f403_sdio.h:121
SDIO_DATA_BLOCK_TRANSFER
@ SDIO_DATA_BLOCK_TRANSFER
Definition: at32f403_sdio.h:201
SDIO_DATA_STREAM_TRANSFER
@ SDIO_DATA_STREAM_TRANSFER
Definition: at32f403_sdio.h:202
SDIO_BUS_WIDTH_D1
@ SDIO_BUS_WIDTH_D1
Definition: at32f403_sdio.h:138
SDIO_BUS_WIDTH_D4
@ SDIO_BUS_WIDTH_D4
Definition: at32f403_sdio.h:139
SDIO_RSP3_INDEX
@ SDIO_RSP3_INDEX
Definition: at32f403_sdio.h:170
SDIO_RSP2_INDEX
@ SDIO_RSP2_INDEX
Definition: at32f403_sdio.h:169
SDIO_RSP4_INDEX
@ SDIO_RSP4_INDEX
Definition: at32f403_sdio.h:171
SDIO_RSP1_INDEX
@ SDIO_RSP1_INDEX
Definition: at32f403_sdio.h:168
SDIO_DATA_BLOCK_SIZE_8B
@ SDIO_DATA_BLOCK_SIZE_8B
Definition: at32f403_sdio.h:182
SDIO_DATA_BLOCK_SIZE_1B
@ SDIO_DATA_BLOCK_SIZE_1B
Definition: at32f403_sdio.h:179
SDIO_CMDTIMEOUT_FLAG
#define SDIO_CMDTIMEOUT_FLAG
Definition: at32f403_sdio.h:85
SDIO_TXBUFH_FLAG
#define SDIO_TXBUFH_FLAG
Definition: at32f403_sdio.h:97
SDIO_CMDCMPL_FLAG
#define SDIO_CMDCMPL_FLAG
Definition: at32f403_sdio.h:90
SDIO_DTFAIL_FLAG
#define SDIO_DTFAIL_FLAG
Definition: at32f403_sdio.h:84
SDIO_RXERRO_FLAG
#define SDIO_RXERRO_FLAG
Definition: at32f403_sdio.h:88
SDIO_RXBUFH_FLAG
#define SDIO_RXBUFH_FLAG
Definition: at32f403_sdio.h:98
SDIO_RXBUF_FLAG
#define SDIO_RXBUF_FLAG
Definition: at32f403_sdio.h:104
SDIO_CMDFAIL_FLAG
#define SDIO_CMDFAIL_FLAG
Definition: at32f403_sdio.h:83
SDIO_CMDRSPCMPL_FLAG
#define SDIO_CMDRSPCMPL_FLAG
Definition: at32f403_sdio.h:89
SDIO_DTBLKCMPL_FLAG
#define SDIO_DTBLKCMPL_FLAG
Definition: at32f403_sdio.h:93
SDIO_DTTIMEOUT_FLAG
#define SDIO_DTTIMEOUT_FLAG
Definition: at32f403_sdio.h:86
SDIO_SBITERR_FLAG
#define SDIO_SBITERR_FLAG
Definition: at32f403_sdio.h:92
SDIO_DTCMPL_FLAG
#define SDIO_DTCMPL_FLAG
Definition: at32f403_sdio.h:91
SDIO_TXERRU_FLAG
#define SDIO_TXERRU_FLAG
Definition: at32f403_sdio.h:87
SDIO_SBITERR_INT
#define SDIO_SBITERR_INT
Definition: at32f403_sdio.h:59
SDIO_RXBUFH_INT
#define SDIO_RXBUFH_INT
Definition: at32f403_sdio.h:65
SDIO_DTTIMEOUT_INT
#define SDIO_DTTIMEOUT_INT
Definition: at32f403_sdio.h:53
SDIO_TXERRU_INT
#define SDIO_TXERRU_INT
Definition: at32f403_sdio.h:54
SDIO_RXERRO_INT
#define SDIO_RXERRO_INT
Definition: at32f403_sdio.h:55
SDIO_DTFAIL_INT
#define SDIO_DTFAIL_INT
Definition: at32f403_sdio.h:51
SDIO_TXBUFH_INT
#define SDIO_TXBUFH_INT
Definition: at32f403_sdio.h:64
SDIO_DTCMP_INT
#define SDIO_DTCMP_INT
Definition: at32f403_sdio.h:58
SDIO_SEND_IF_COND
#define SDIO_SEND_IF_COND
Definition: sd_mmc_card/inc/at32_sdio.h:436
SD_CMD_SD_APP_SEND_SCR
#define SD_CMD_SD_APP_SEND_SCR
Definition: sd_mmc_card/inc/at32_sdio.h:306
SD_CMD_ERASE
#define SD_CMD_ERASE
Definition: sd_mmc_card/inc/at32_sdio.h:289
SD_CMD_APP_SD_SET_BUSWIDTH
#define SD_CMD_APP_SD_SET_BUSWIDTH
Definition: sd_mmc_card/inc/at32_sdio.h:301
SD_CMD_WRITE_SINGLE_BLOCK
#define SD_CMD_WRITE_SINGLE_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:278
SD_CMD_SD_ERASE_GRP_START
#define SD_CMD_SD_ERASE_GRP_START
Definition: sd_mmc_card/inc/at32_sdio.h:285
SD_CMD_APP_CMD
#define SD_CMD_APP_CMD
Definition: sd_mmc_card/inc/at32_sdio.h:293
SD_CMD_ALL_SEND_CID
#define SD_CMD_ALL_SEND_CID
Definition: sd_mmc_card/inc/at32_sdio.h:258
SD_CMD_STOP_TRANSMISSION
#define SD_CMD_STOP_TRANSMISSION
Definition: sd_mmc_card/inc/at32_sdio.h:268
SD_CMD_SEND_STATUS
#define SD_CMD_SEND_STATUS
Definition: sd_mmc_card/inc/at32_sdio.h:269
SD_CMD_SET_BLOCK_COUNT
#define SD_CMD_SET_BLOCK_COUNT
Definition: sd_mmc_card/inc/at32_sdio.h:277
SD_CMD_WRITE_DAT_UNTIL_STOP
#define SD_CMD_WRITE_DAT_UNTIL_STOP
Definition: sd_mmc_card/inc/at32_sdio.h:276
SD_CMD_SEND_OP_COND
#define SD_CMD_SEND_OP_COND
Definition: sd_mmc_card/inc/at32_sdio.h:257
SD_CMD_SET_BLOCKLEN
#define SD_CMD_SET_BLOCKLEN
Definition: sd_mmc_card/inc/at32_sdio.h:272
SD_CMD_HS_SWITCH
#define SD_CMD_HS_SWITCH
Definition: sd_mmc_card/inc/at32_sdio.h:262
SD_CMD_READ_SINGLE_BLOCK
#define SD_CMD_READ_SINGLE_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:273
SD_CMD_SD_APP_OP_COND
#define SD_CMD_SD_APP_OP_COND
Definition: sd_mmc_card/inc/at32_sdio.h:304
SD_CMD_GO_IDLE_STATE
#define SD_CMD_GO_IDLE_STATE
Definition: sd_mmc_card/inc/at32_sdio.h:256
SD_CMD_SET_REL_ADDR
#define SD_CMD_SET_REL_ADDR
Definition: sd_mmc_card/inc/at32_sdio.h:259
SD_CMD_ERASE_GRP_END
#define SD_CMD_ERASE_GRP_END
Definition: sd_mmc_card/inc/at32_sdio.h:288
SD_CMD_READ_DAT_UNTIL_STOP
#define SD_CMD_READ_DAT_UNTIL_STOP
Definition: sd_mmc_card/inc/at32_sdio.h:267
SD_CMD_SD_ERASE_GRP_END
#define SD_CMD_SD_ERASE_GRP_END
Definition: sd_mmc_card/inc/at32_sdio.h:286
SD_CMD_ERASE_GRP_START
#define SD_CMD_ERASE_GRP_START
Definition: sd_mmc_card/inc/at32_sdio.h:287
SD_CMD_SEL_DESEL_CARD
#define SD_CMD_SEL_DESEL_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:263
SD_CMD_WRITE_MULT_BLOCK
#define SD_CMD_WRITE_MULT_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:279
SD_CMD_READ_MULT_BLOCK
#define SD_CMD_READ_MULT_BLOCK
Definition: sd_mmc_card/inc/at32_sdio.h:274
SD_CMD_SEND_CSD
#define SD_CMD_SEND_CSD
Definition: sd_mmc_card/inc/at32_sdio.h:265
sd_data_transfer_mode_type
sd_data_transfer_mode_type
Definition: sd_mmc_card/inc/at32_sdio.h:63
sd_error_status_type
sd_error_status_type
Definition: sd_mmc_card/inc/at32_sdio.h:72
sd_card_state_type
sd_card_state_type
Definition: sd_mmc_card/inc/at32_sdio.h:185
sd_memory_card_type
sd_memory_card_type
Definition: sd_mmc_card/inc/at32_sdio.h:201
SDIOx
#define SDIOx
Definition: sd_mmc_card/inc/at32_sdio.h:49
SDIO_INTR_STS_WRITE_MASK
#define SDIO_INTR_STS_WRITE_MASK
Definition: sd_mmc_card/inc/at32_sdio.h:472
SDIO_INTR_STS_READ_MASK
#define SDIO_INTR_STS_READ_MASK
Definition: sd_mmc_card/inc/at32_sdio.h:474
EXT_CSD_BUS_WIDTH
#define EXT_CSD_BUS_WIDTH
Definition: sd_mmc_card/inc/at32_sdio.h:461
EXT_CSD_CMD_SET_NORMAL
#define EXT_CSD_CMD_SET_NORMAL
Definition: sd_mmc_card/inc/at32_sdio.h:454
EXT_CSD_Write_byte
#define EXT_CSD_Write_byte
Definition: sd_mmc_card/inc/at32_sdio.h:452
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
SDIO_DATATIMEOUT
#define SDIO_DATATIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:340
SDIO_CMD0TIMEOUT
#define SDIO_CMD0TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:339
SDIO_STATIC_FLAGS
#define SDIO_STATIC_FLAGS
Definition: sd_mmc_card/inc/at32_sdio.h:338
SD_CARD_LOCKED
#define SD_CARD_LOCKED
Definition: sd_mmc_card/inc/at32_sdio.h:398
SD_VOLTAGE_WINDOW_SD
#define SD_VOLTAGE_WINDOW_SD
Definition: sd_mmc_card/inc/at32_sdio.h:389
SD_R5_ERROR
#define SD_R5_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:381
SD_CARD_RECEIVING
#define SD_CARD_RECEIVING
Definition: sd_mmc_card/inc/at32_sdio.h:400
SD_R5_OUT_OF_RANGE
#define SD_R5_OUT_OF_RANGE
Definition: sd_mmc_card/inc/at32_sdio.h:379
SD_MAX_DATA_LENGTH
#define SD_MAX_DATA_LENGTH
Definition: sd_mmc_card/inc/at32_sdio.h:406
SD_STD_CAPACITY
#define SD_STD_CAPACITY
Definition: sd_mmc_card/inc/at32_sdio.h:391
SD_R5_FUNCTION_NUMBER
#define SD_R5_FUNCTION_NUMBER
Definition: sd_mmc_card/inc/at32_sdio.h:380
SD_R6_ILLEGAL_CMD
#define SD_R6_ILLEGAL_CMD
Definition: sd_mmc_card/inc/at32_sdio.h:387
SD_R6_GENERAL_UNKNOWN_ERROR
#define SD_R6_GENERAL_UNKNOWN_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:386
SD_MAX_VOLT_TRIAL
#define SD_MAX_VOLT_TRIAL
Definition: sd_mmc_card/inc/at32_sdio.h:394
SD_DATATIMEOUT
#define SD_DATATIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:401
SD_ALLZERO
#define SD_ALLZERO
Definition: sd_mmc_card/inc/at32_sdio.h:395
SD_R6_CMD_CRC_ERROR
#define SD_R6_CMD_CRC_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:388
MMC_SWITCH_ERROR
#define MMC_SWITCH_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:372
SD_VOLTAGE_WINDOW_MMC
#define SD_VOLTAGE_WINDOW_MMC
Definition: sd_mmc_card/inc/at32_sdio.h:393
SD_CHECK_PATTERN
#define SD_CHECK_PATTERN
Definition: sd_mmc_card/inc/at32_sdio.h:392
SD_OCR_ERRORBITS
#define SD_OCR_ERRORBITS
Definition: sd_mmc_card/inc/at32_sdio.h:374
SD_CARD_PROGRAMMING
#define SD_CARD_PROGRAMMING
Definition: sd_mmc_card/inc/at32_sdio.h:399
SD_HIGH_CAPACITY
#define SD_HIGH_CAPACITY
Definition: sd_mmc_card/inc/at32_sdio.h:390
SD_TRANSFER_DMA_MODE
@ SD_TRANSFER_DMA_MODE
Definition: sd_mmc_card/inc/at32_sdio.h:65
SD_TRANSFER_POLLING_MODE
@ SD_TRANSFER_POLLING_MODE
Definition: sd_mmc_card/inc/at32_sdio.h:64
SD_ERROR
@ SD_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:116
SD_SDIO_UNKNOWN_FUNC
@ SD_SDIO_UNKNOWN_FUNC
Definition: sd_mmc_card/inc/at32_sdio.h:106
SD_DATA_FAIL
@ SD_DATA_FAIL
Definition: sd_mmc_card/inc/at32_sdio.h:75
SD_INVALID_PARAMETER
@ SD_INVALID_PARAMETER
Definition: sd_mmc_card/inc/at32_sdio.h:113
SD_CMD_FAIL
@ SD_CMD_FAIL
Definition: sd_mmc_card/inc/at32_sdio.h:74
SD_CMD_OUT_OF_RANGE
@ SD_CMD_OUT_OF_RANGE
Definition: sd_mmc_card/inc/at32_sdio.h:81
SD_GENERAL_UNKNOWN_ERROR
@ SD_GENERAL_UNKNOWN_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:92
SD_UNSUPPORTED_FEATURE
@ SD_UNSUPPORTED_FEATURE
Definition: sd_mmc_card/inc/at32_sdio.h:114
SD_TX_UNDERRUN
@ SD_TX_UNDERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:78
SD_ILLEGAL_CMD
@ SD_ILLEGAL_CMD
Definition: sd_mmc_card/inc/at32_sdio.h:89
SD_CMD_CRC_ERROR
@ SD_CMD_CRC_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:88
SD_RX_OVERRUN
@ SD_RX_OVERRUN
Definition: sd_mmc_card/inc/at32_sdio.h:79
SD_REQ_NOT_APPLICABLE
@ SD_REQ_NOT_APPLICABLE
Definition: sd_mmc_card/inc/at32_sdio.h:112
SD_SWITCH_ERROR
@ SD_SWITCH_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:102
SD_INVALID_VOLTRANGE
@ SD_INVALID_VOLTRANGE
Definition: sd_mmc_card/inc/at32_sdio.h:100
SD_DATA_TIMEOUT
@ SD_DATA_TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:77
SD_START_BIT_ERR
@ SD_START_BIT_ERR
Definition: sd_mmc_card/inc/at32_sdio.h:80
SD_LOCK_UNLOCK_ERROR
@ SD_LOCK_UNLOCK_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:87
SD_CMD_RSP_TIMEOUT
@ SD_CMD_RSP_TIMEOUT
Definition: sd_mmc_card/inc/at32_sdio.h:76
SD_OK
@ SD_OK
Definition: sd_mmc_card/inc/at32_sdio.h:117
SD_CARD_ERROR
@ SD_CARD_ERROR
Definition: sd_mmc_card/inc/at32_sdio.h:194
SDIO_HIGH_CAPACITY_SD_CARD
@ SDIO_HIGH_CAPACITY_SD_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:204
SDIO_SECURE_DIGITAL_IO_COMBO_CARD
@ SDIO_SECURE_DIGITAL_IO_COMBO_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:208
SDIO_HIGH_SPEED_MULTIMEDIA_CARD
@ SDIO_HIGH_SPEED_MULTIMEDIA_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:207
SDIO_STD_CAPACITY_SD_CARD_V1_1
@ SDIO_STD_CAPACITY_SD_CARD_V1_1
Definition: sd_mmc_card/inc/at32_sdio.h:202
SDIO_SECURE_DIGITAL_IO_CARD
@ SDIO_SECURE_DIGITAL_IO_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:206
SDIO_STD_CAPACITY_SD_CARD_V2_0
@ SDIO_STD_CAPACITY_SD_CARD_V2_0
Definition: sd_mmc_card/inc/at32_sdio.h:203
SDIO_MULTIMEDIA_CARD
@ SDIO_MULTIMEDIA_CARD
Definition: sd_mmc_card/inc/at32_sdio.h:205
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
sd_card_info_struct_type
Definition: sd_mmc_card/inc/at32_sdio.h:235
sd_card_info_struct_type::sd_scr_reg
sd_scr_struct_type sd_scr_reg
Definition: sd_mmc_card/inc/at32_sdio.h:238
sd_card_info_struct_type::card_capacity
long long card_capacity
Definition: sd_mmc_card/inc/at32_sdio.h:239
sd_card_info_struct_type::sd_cid_reg
sd_cid_struct_type sd_cid_reg
Definition: sd_mmc_card/inc/at32_sdio.h:237
sd_card_info_struct_type::sd_csd_reg
sd_csd_struct_type sd_csd_reg
Definition: sd_mmc_card/inc/at32_sdio.h:236
sd_card_info_struct_type::card_blk_size
uint32_t card_blk_size
Definition: sd_mmc_card/inc/at32_sdio.h:240
sd_card_info_struct_type::rca
uint16_t rca
Definition: sd_mmc_card/inc/at32_sdio.h:241
sd_card_info_struct_type::card_type
uint8_t card_type
Definition: sd_mmc_card/inc/at32_sdio.h:242
sd_cid_struct_type::reserved1
uint8_t reserved1
Definition: sd_mmc_card/inc/at32_sdio.h:175
sd_cid_struct_type::product_name2
uint8_t product_name2
Definition: sd_mmc_card/inc/at32_sdio.h:172
sd_cid_struct_type::manufact_date
uint16_t manufact_date
Definition: sd_mmc_card/inc/at32_sdio.h:176
sd_cid_struct_type::cid_crc
uint8_t cid_crc
Definition: sd_mmc_card/inc/at32_sdio.h:177
sd_cid_struct_type::product_reversion
uint8_t product_reversion
Definition: sd_mmc_card/inc/at32_sdio.h:173
sd_cid_struct_type::manufacturer_id
uint8_t manufacturer_id
Definition: sd_mmc_card/inc/at32_sdio.h:169
sd_cid_struct_type::product_sn
uint32_t product_sn
Definition: sd_mmc_card/inc/at32_sdio.h:174
sd_cid_struct_type::product_name1
uint32_t product_name1
Definition: sd_mmc_card/inc/at32_sdio.h:171
sd_cid_struct_type::reserved2
uint8_t reserved2
Definition: sd_mmc_card/inc/at32_sdio.h:178
sd_cid_struct_type::oem_app_id
uint16_t oem_app_id
Definition: sd_mmc_card/inc/at32_sdio.h:170
sd_csd_struct_type::spec_version
uint8_t spec_version
Definition: sd_mmc_card/inc/at32_sdio.h:126
sd_csd_struct_type::max_write_current_vdd_max
uint8_t max_write_current_vdd_max
Definition: sd_mmc_card/inc/at32_sdio.h:142
sd_csd_struct_type::nsac
uint8_t nsac
Definition: sd_mmc_card/inc/at32_sdio.h:129
sd_csd_struct_type::card_cmd_classes
uint16_t card_cmd_classes
Definition: sd_mmc_card/inc/at32_sdio.h:131
sd_csd_struct_type::part_blk_read
uint8_t part_blk_read
Definition: sd_mmc_card/inc/at32_sdio.h:133
sd_csd_struct_type::read_blk_misalign
uint8_t read_blk_misalign
Definition: sd_mmc_card/inc/at32_sdio.h:135
sd_csd_struct_type::content_protect_app
uint8_t content_protect_app
Definition: sd_mmc_card/inc/at32_sdio.h:153
sd_csd_struct_type::write_speed_factor
uint8_t write_speed_factor
Definition: sd_mmc_card/inc/at32_sdio.h:149
sd_csd_struct_type::max_read_blk_length
uint8_t max_read_blk_length
Definition: sd_mmc_card/inc/at32_sdio.h:132
sd_csd_struct_type::max_bus_clk_freq
uint8_t max_bus_clk_freq
Definition: sd_mmc_card/inc/at32_sdio.h:130
sd_csd_struct_type::ecc_code
uint8_t ecc_code
Definition: sd_mmc_card/inc/at32_sdio.h:159
sd_csd_struct_type::reserved4
uint8_t reserved4
Definition: sd_mmc_card/inc/at32_sdio.h:161
sd_csd_struct_type::dsr_implemented
uint8_t dsr_implemented
Definition: sd_mmc_card/inc/at32_sdio.h:136
sd_csd_struct_type::max_read_current_vdd_min
uint8_t max_read_current_vdd_min
Definition: sd_mmc_card/inc/at32_sdio.h:139
sd_csd_struct_type::reserved2
uint8_t reserved2
Definition: sd_mmc_card/inc/at32_sdio.h:137
sd_csd_struct_type::erase_group_size_mult
uint8_t erase_group_size_mult
Definition: sd_mmc_card/inc/at32_sdio.h:145
sd_csd_struct_type::file_formart
uint8_t file_formart
Definition: sd_mmc_card/inc/at32_sdio.h:158
sd_csd_struct_type::temp_write_protect
uint8_t temp_write_protect
Definition: sd_mmc_card/inc/at32_sdio.h:157
sd_csd_struct_type::permanent_write_protect
uint8_t permanent_write_protect
Definition: sd_mmc_card/inc/at32_sdio.h:156
sd_csd_struct_type::max_read_current_vdd_max
uint8_t max_read_current_vdd_max
Definition: sd_mmc_card/inc/at32_sdio.h:140
sd_csd_struct_type::file_format_group
uint8_t file_format_group
Definition: sd_mmc_card/inc/at32_sdio.h:154
sd_csd_struct_type::device_size
uint32_t device_size
Definition: sd_mmc_card/inc/at32_sdio.h:138
sd_csd_struct_type::write_blk_misalign
uint8_t write_blk_misalign
Definition: sd_mmc_card/inc/at32_sdio.h:134
sd_csd_struct_type::csd_struct
uint8_t csd_struct
Definition: sd_mmc_card/inc/at32_sdio.h:125
sd_csd_struct_type::write_protect_group_enable
uint8_t write_protect_group_enable
Definition: sd_mmc_card/inc/at32_sdio.h:147
sd_csd_struct_type::max_write_current_vdd_min
uint8_t max_write_current_vdd_min
Definition: sd_mmc_card/inc/at32_sdio.h:141
sd_csd_struct_type::reserved1
uint8_t reserved1
Definition: sd_mmc_card/inc/at32_sdio.h:127
sd_csd_struct_type::max_write_blk_length
uint8_t max_write_blk_length
Definition: sd_mmc_card/inc/at32_sdio.h:150
sd_csd_struct_type::csd_crc
uint8_t csd_crc
Definition: sd_mmc_card/inc/at32_sdio.h:160
sd_csd_struct_type::write_protect_group_size
uint8_t write_protect_group_size
Definition: sd_mmc_card/inc/at32_sdio.h:146
sd_csd_struct_type::reserved3
uint8_t reserved3
Definition: sd_mmc_card/inc/at32_sdio.h:152
sd_csd_struct_type::taac
uint8_t taac
Definition: sd_mmc_card/inc/at32_sdio.h:128
sd_csd_struct_type::manufacturer_default_ecc
uint8_t manufacturer_default_ecc
Definition: sd_mmc_card/inc/at32_sdio.h:148
sd_csd_struct_type::part_blk_write
uint8_t part_blk_write
Definition: sd_mmc_card/inc/at32_sdio.h:151
sd_csd_struct_type::copy_flag
uint8_t copy_flag
Definition: sd_mmc_card/inc/at32_sdio.h:155
sd_csd_struct_type::erase_group_size
uint8_t erase_group_size
Definition: sd_mmc_card/inc/at32_sdio.h:144
sd_csd_struct_type::device_size_mult
uint8_t device_size_mult
Definition: sd_mmc_card/inc/at32_sdio.h:143
sd_scr_struct_type::sd_bus_width
uint32_t sd_bus_width
Definition: sd_mmc_card/inc/at32_sdio.h:220
sd_scr_struct_type::sd_spec
uint32_t sd_spec
Definition: sd_mmc_card/inc/at32_sdio.h:218
sdio_command_struct_type
sdio command structure
Definition: at32f403_sdio.h:227
sdio_command_struct_type::cmd_index
uint8_t cmd_index
Definition: at32f403_sdio.h:229
sdio_command_struct_type::argument
uint32_t argument
Definition: at32f403_sdio.h:228
sdio_command_struct_type::wait_type
sdio_wait_type wait_type
Definition: at32f403_sdio.h:231
sdio_command_struct_type::rsp_type
sdio_reponse_type rsp_type
Definition: at32f403_sdio.h:230
sdio_data_struct_type
sdio data structure
Definition: at32f403_sdio.h:238
sdio_data_struct_type::block_size
sdio_block_size_type block_size
Definition: at32f403_sdio.h:241
sdio_data_struct_type::transfer_direction
sdio_transfer_direction_type transfer_direction
Definition: at32f403_sdio.h:243
sdio_data_struct_type::timeout
uint32_t timeout
Definition: at32f403_sdio.h:239
sdio_data_struct_type::transfer_mode
sdio_transfer_mode_type transfer_mode
Definition: at32f403_sdio.h:242
sdio_data_struct_type::data_length
uint32_t data_length
Definition: at32f403_sdio.h:240


AT32F403 Firmwary Library: smartcard_config.h Source File

  • usart
  • smartcard
  • inc
smartcard_config.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __SMARTCARD_CONFIG_H
27#define __SMARTCARD_CONFIG_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* smartcard inteface usart pins */
34#define SC_USART USART2
35#define SC_USART_CLK CRM_USART2_PERIPH_CLOCK
36#define SC_USART_GPIO_CLK CRM_GPIOA_PERIPH_CLOCK
37#define SC_USART_TX_PIN GPIO_PINS_2
38#define SC_USART_TX_PORT GPIOA
39#define SC_USART_CLK_PIN GPIO_PINS_4
40#define SC_USART_CLK_PORT GPIOA
41#define SC_USART_IRQn USART2_IRQn
42#define SC_USART_IRQHandler USART2_IRQHandler
43
44/* smartcard inteface gpio pins */
45#define SC_3_5V_PIN GPIO_PINS_5
46#define SC_RESET_PIN GPIO_PINS_6
47#define SC_CMDVCC_PIN GPIO_PINS_7
48#define SC_OFF_PIN GPIO_PINS_8
49#define SC_3_5V_PORT GPIOA
50#define SC_RESET_PORT GPIOA
51#define SC_CMDVCC_PORT GPIOA
52#define SC_OFF_PORT GPIOA
53#define SC_3_5V_CLK CRM_GPIOA_PERIPH_CLOCK
54#define SC_RESET_CLK CRM_GPIOA_PERIPH_CLOCK
55#define SC_CMDVCC_CLK CRM_GPIOA_PERIPH_CLOCK
56#define SC_OFF_CLK CRM_GPIOA_PERIPH_CLOCK
57#define SC_OFF_EXINT EXINT_LINE_8
58#define SC_OFF_PORTSOURCE GPIO_PORT_SOURCE_GPIOA
59#define SC_OFF_PINSOURCE GPIO_PINS_SOURCE8
60#define SC_OFF_EXINT_IRQ EXINT9_5_IRQn
61
62#ifdef __cplusplus
63}
64#endif
65
66#endif /* __SMARTCARD_CONFIG_H */
67


AT32F403 Firmwary Library: spi_flash.c Source File

  • spi
  • w25q_flash
  • src
spi_flash.c
Go to the documentation of this file.
1
25#include "spi_flash.h"
26
35uint8_t spiflash_sector_buf[SPIF_SECTOR_SIZE];
36
42void spiflash_init(void)
43{
44 gpio_init_type gpio_initstructure;
45 spi_init_type spi_init_struct;
46
47 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
48 crm_periph_clock_enable(CRM_DMA1_PERIPH_CLOCK, TRUE);
49 /* software cs, pa4 as a general io to control flash cs */
50 gpio_initstructure.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
51 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
52 gpio_initstructure.gpio_mode = GPIO_MODE_OUTPUT;
53 gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
54 gpio_initstructure.gpio_pins = GPIO_PINS_12;
55 gpio_init(GPIOB, &gpio_initstructure);
56
57 /* sck */
58 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
59 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
60 gpio_initstructure.gpio_pins = GPIO_PINS_13;
61 gpio_init(GPIOB, &gpio_initstructure);
62
63 /* miso */
64 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
65 gpio_initstructure.gpio_mode = GPIO_MODE_INPUT;
66 gpio_initstructure.gpio_pins = GPIO_PINS_14;
67 gpio_init(GPIOB, &gpio_initstructure);
68
69 /* mosi */
70 gpio_initstructure.gpio_pull = GPIO_PULL_UP;
71 gpio_initstructure.gpio_mode = GPIO_MODE_MUX;
72 gpio_initstructure.gpio_pins = GPIO_PINS_15;
73 gpio_init(GPIOB, &gpio_initstructure);
74
75 FLASH_CS_HIGH();
76 crm_periph_clock_enable(CRM_SPI2_PERIPH_CLOCK, TRUE);
77 spi_default_para_init(&spi_init_struct);
78 spi_init_struct.transmission_mode = SPI_TRANSMIT_FULL_DUPLEX;
79 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
80 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_8;
81 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_MSB;
82 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
83 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_HIGH;
84 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
85 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
86 spi_init(SPI2, &spi_init_struct);
87 spi_enable(SPI2, TRUE);
88}
89
97void spiflash_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
98{
99 uint32_t sector_pos;
100 uint16_t sector_offset;
101 uint16_t sector_remain;
102 uint16_t index;
103 uint8_t *spiflash_buf;
104 spiflash_buf = spiflash_sector_buf;
105
106 /* sector address */
107 sector_pos = write_addr / SPIF_SECTOR_SIZE;
108
109 /* address offset in a sector */
110 sector_offset = write_addr % SPIF_SECTOR_SIZE;
111
112 /* the remain in a sector */
113 sector_remain = SPIF_SECTOR_SIZE - sector_offset;
114 if(length <= sector_remain)
115 {
116 /* smaller than a sector size */
117 sector_remain = length;
118 }
119 while(1)
120 {
121 /* read a sector */
122 spiflash_read(spiflash_buf, sector_pos * SPIF_SECTOR_SIZE, SPIF_SECTOR_SIZE);
123
124 /* validate the read erea */
125 for(index = 0; index < sector_remain; index++)
126 {
127 if(spiflash_buf[sector_offset + index] != 0xFF)
128 {
129 /* there are some data not equal 0xff, so this secotr needs erased */
130 break;
131 }
132 }
133 if(index < sector_remain)
134 {
135 /* erase the sector */
136 spiflash_sector_erase(sector_pos);
137
138 /* copy the write data */
139 for(index = 0; index < sector_remain; index++)
140 {
141 spiflash_buf[index + sector_offset] = pbuffer[index];
142 }
143 spiflash_write_nocheck(spiflash_buf, sector_pos * SPIF_SECTOR_SIZE, SPIF_SECTOR_SIZE); /* program the sector */
144 }
145 else
146 {
147 /* write directly in the erased area */
148 spiflash_write_nocheck(pbuffer, write_addr, sector_remain);
149 }
150 if(length == sector_remain)
151 {
152 /* write end */
153 break;
154 }
155 else
156 {
157 /* go on writing */
158 sector_pos++;
159 sector_offset = 0;
160
161 pbuffer += sector_remain;
162 write_addr += sector_remain;
163 length -= sector_remain;
164 if(length > SPIF_SECTOR_SIZE)
165 {
166 /* could not write the remain data in the next sector */
167 sector_remain = SPIF_SECTOR_SIZE;
168 }
169 else
170 {
171 /* could write the remain data in the next sector */
172 sector_remain = length;
173 }
174 }
175 }
176}
177
185void spiflash_read(uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
186{
187 FLASH_CS_LOW();
188 spi_byte_write(SPIF_READDATA); /* send instruction */
189 spi_byte_write((uint8_t)((read_addr) >> 16)); /* send 24-bit address */
190 spi_byte_write((uint8_t)((read_addr) >> 8));
191 spi_byte_write((uint8_t)read_addr);
192 spi_bytes_read(pbuffer, length);
193 FLASH_CS_HIGH();
194}
195
201void spiflash_sector_erase(uint32_t erase_addr)
202{
203 erase_addr *= SPIF_SECTOR_SIZE; /* translate sector address to byte address */
204 spiflash_write_enable();
205 spiflash_wait_busy();
206 FLASH_CS_LOW();
207 spi_byte_write(SPIF_SECTORERASE);
208 spi_byte_write((uint8_t)((erase_addr) >> 16));
209 spi_byte_write((uint8_t)((erase_addr) >> 8));
210 spi_byte_write((uint8_t)erase_addr);
211 FLASH_CS_HIGH();
212 spiflash_wait_busy();
213}
214
222void spiflash_write_nocheck(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
223{
224 uint16_t page_remain;
225
226 /* remain bytes in a page */
227 page_remain = SPIF_PAGE_SIZE - write_addr % SPIF_PAGE_SIZE;
228 if(length <= page_remain)
229 {
230 /* smaller than a page size */
231 page_remain = length;
232 }
233 while(1)
234 {
235 spiflash_page_write(pbuffer, write_addr, page_remain);
236 if(length == page_remain)
237 {
238 /* all data are programmed */
239 break;
240 }
241 else
242 {
243 /* length > page_remain */
244 pbuffer += page_remain;
245 write_addr += page_remain;
246
247 /* the remain bytes to be prorammed */
248 length -= page_remain;
249 if(length > SPIF_PAGE_SIZE)
250 {
251 /* can be progrmmed a page at a time */
252 page_remain = SPIF_PAGE_SIZE;
253 }
254 else
255 {
256 /* smaller than a page size */
257 page_remain = length;
258 }
259 }
260 }
261}
262
270void spiflash_page_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
271{
272 if((0 < length) && (length <= SPIF_PAGE_SIZE))
273 {
274 /* set write enable */
275 spiflash_write_enable();
276
277 FLASH_CS_LOW();
278
279 /* send instruction */
280 spi_byte_write(SPIF_PAGEPROGRAM);
281
282 /* send 24-bit address */
283 spi_byte_write((uint8_t)((write_addr) >> 16));
284 spi_byte_write((uint8_t)((write_addr) >> 8));
285 spi_byte_write((uint8_t)write_addr);
286 spi_bytes_write(pbuffer,length);
287
288 FLASH_CS_HIGH();
289
290 /* wait for program end */
291 spiflash_wait_busy();
292 }
293}
294
301void spi_bytes_write(uint8_t *pbuffer, uint32_t length)
302{
303 volatile uint8_t dummy_data;
304
305#if defined(SPI_TRANS_DMA)
306 dma_init_type dma_init_struct;
307 dma_reset(DMA1_CHANNEL4);
308 dma_reset(DMA1_CHANNEL5);
309 dma_default_para_init(&dma_init_struct);
310 dma_init_struct.buffer_size = length;
311 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
312 dma_init_struct.memory_base_addr = (uint32_t)&dummy_data;
313 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
314 dma_init_struct.memory_inc_enable = FALSE;
315 dma_init_struct.peripheral_base_addr = (uint32_t)(&SPI2->dt);
316 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
317 dma_init_struct.peripheral_inc_enable = FALSE;
318 dma_init_struct.priority = DMA_PRIORITY_VERY_HIGH;
319 dma_init_struct.loop_mode_enable = FALSE;
320 dma_init(DMA1_CHANNEL4, &dma_init_struct);
321
322 dma_init_struct.buffer_size = length;
323 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
324 dma_init_struct.memory_base_addr = (uint32_t)pbuffer;
325 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
326 dma_init_struct.memory_inc_enable = TRUE;
327 dma_init_struct.peripheral_base_addr = (uint32_t)(&SPI2->dt);
328 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
329 dma_init_struct.peripheral_inc_enable = FALSE;
330 dma_init_struct.priority = DMA_PRIORITY_VERY_HIGH;
331 dma_init_struct.loop_mode_enable = FALSE;
332 dma_init(DMA1_CHANNEL5, &dma_init_struct);
333
334 spi_i2s_dma_transmitter_enable(SPI2, TRUE);
335 spi_i2s_dma_receiver_enable(SPI2, TRUE);
336
337 dma_channel_enable(DMA1_CHANNEL4, TRUE);
338 dma_channel_enable(DMA1_CHANNEL5, TRUE);
339
340 while(dma_flag_get(DMA1_FDT4_FLAG) == RESET);
341 dma_flag_clear(DMA1_FDT4_FLAG);
342
343 dma_channel_enable(DMA1_CHANNEL4, FALSE);
344 dma_channel_enable(DMA1_CHANNEL5, FALSE);
345
346 spi_i2s_dma_transmitter_enable(SPI2, FALSE);
347 spi_i2s_dma_receiver_enable(SPI2, FALSE);
348#else
349 while(length--)
350 {
351 while(spi_i2s_flag_get(SPI2, SPI_I2S_TDBE_FLAG) == RESET);
352 spi_i2s_data_transmit(SPI2, *pbuffer);
353 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
354 dummy_data = spi_i2s_data_receive(SPI2);
355 pbuffer++;
356 }
357#endif
358}
359
366void spi_bytes_read(uint8_t *pbuffer, uint32_t length)
367{
368 uint8_t write_value = FLASH_SPI_DUMMY_BYTE;
369
370#if defined(SPI_TRANS_DMA)
371 dma_init_type dma_init_struct;
372 dma_reset(DMA1_CHANNEL4);
373 dma_reset(DMA1_CHANNEL5);
374 dma_default_para_init(&dma_init_struct);
375 dma_init_struct.buffer_size = length;
376 dma_init_struct.direction = DMA_DIR_MEMORY_TO_PERIPHERAL;
377 dma_init_struct.memory_base_addr = (uint32_t)&write_value;
378 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
379 dma_init_struct.memory_inc_enable = FALSE;
380 dma_init_struct.peripheral_base_addr = (uint32_t)(&SPI2->dt);
381 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
382 dma_init_struct.peripheral_inc_enable = FALSE;
383 dma_init_struct.priority = DMA_PRIORITY_VERY_HIGH;
384 dma_init_struct.loop_mode_enable = FALSE;
385 dma_init(DMA1_CHANNEL5, &dma_init_struct);
386
387 dma_init_struct.buffer_size = length;
388 dma_init_struct.direction = DMA_DIR_PERIPHERAL_TO_MEMORY;
389 dma_init_struct.memory_base_addr = (uint32_t)pbuffer;
390 dma_init_struct.memory_data_width = DMA_MEMORY_DATA_WIDTH_BYTE;
391 dma_init_struct.memory_inc_enable = TRUE;
392 dma_init_struct.peripheral_base_addr = (uint32_t)(&SPI2->dt);
393 dma_init_struct.peripheral_data_width = DMA_PERIPHERAL_DATA_WIDTH_BYTE;
394 dma_init_struct.peripheral_inc_enable = FALSE;
395 dma_init_struct.priority = DMA_PRIORITY_VERY_HIGH;
396 dma_init_struct.loop_mode_enable = FALSE;
397 dma_init(DMA1_CHANNEL4, &dma_init_struct);
398
399 spi_i2s_dma_transmitter_enable(SPI2, TRUE);
400 spi_i2s_dma_receiver_enable(SPI2, TRUE);
401 dma_channel_enable(DMA1_CHANNEL4, TRUE);
402 dma_channel_enable(DMA1_CHANNEL5, TRUE);
403
404 while(dma_flag_get(DMA1_FDT4_FLAG) == RESET);
405 dma_flag_clear(DMA1_FDT4_FLAG);
406
407 dma_channel_enable(DMA1_CHANNEL4, FALSE);
408 dma_channel_enable(DMA1_CHANNEL5, FALSE);
409
410 spi_i2s_dma_transmitter_enable(SPI2, FALSE);
411 spi_i2s_dma_receiver_enable(SPI2, FALSE);
412#else
413 while(length--)
414 {
415 while(spi_i2s_flag_get(SPI2, SPI_I2S_TDBE_FLAG) == RESET);
416 spi_i2s_data_transmit(SPI2, write_value);
417 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
418 *pbuffer = spi_i2s_data_receive(SPI2);
419 pbuffer++;
420 }
421#endif
422}
423
429void spiflash_wait_busy(void)
430{
431 while((spiflash_read_sr1() & 0x01) == 0x01);
432}
433
439uint8_t spiflash_read_sr1(void)
440{
441 uint8_t breadbyte = 0;
442 FLASH_CS_LOW();
443 spi_byte_write(SPIF_READSTATUSREG1);
444 breadbyte = (uint8_t)spi_byte_read();
445 FLASH_CS_HIGH();
446 return (breadbyte);
447}
448
454void spiflash_write_enable(void)
455{
456 FLASH_CS_LOW();
457 spi_byte_write(SPIF_WRITEENABLE);
458 FLASH_CS_HIGH();
459}
460
466uint16_t spiflash_read_id(void)
467{
468 uint16_t wreceivedata = 0;
469 FLASH_CS_LOW();
470 spi_byte_write(SPIF_MANUFACTDEVICEID);
471 spi_byte_write(0x00);
472 spi_byte_write(0x00);
473 spi_byte_write(0x00);
474 wreceivedata |= spi_byte_read() << 8;
475 wreceivedata |= spi_byte_read();
476 FLASH_CS_HIGH();
477 return wreceivedata;
478}
479
485uint8_t spi_byte_write(uint8_t data)
486{
487 uint8_t brxbuff;
488 spi_i2s_dma_transmitter_enable(SPI2, FALSE);
489 spi_i2s_dma_receiver_enable(SPI2, FALSE);
490 spi_i2s_data_transmit(SPI2, data);
491 while(spi_i2s_flag_get(SPI2, SPI_I2S_RDBF_FLAG) == RESET);
492 brxbuff = spi_i2s_data_receive(SPI2);
493 while(spi_i2s_flag_get(SPI2, SPI_I2S_BF_FLAG) != RESET);
494 return brxbuff;
495}
496
502uint8_t spi_byte_read(void)
503{
504 return (spi_byte_write(FLASH_SPI_DUMMY_BYTE));
505}
506
dma_init_struct
dma_init_type dma_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:37
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
spiflash_init
void spiflash_init(void)
spi configuration.
Definition: spi_flash.c:42
spiflash_write
void spiflash_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data to flash
Definition: spi_flash.c:97
spiflash_wait_busy
void spiflash_wait_busy(void)
wait program done
Definition: spi_flash.c:429
spiflash_write_enable
void spiflash_write_enable(void)
enable write operation
Definition: spi_flash.c:454
spiflash_read_sr1
uint8_t spiflash_read_sr1(void)
read sr1 register
Definition: spi_flash.c:439
spiflash_write_nocheck
void spiflash_write_nocheck(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data without check
Definition: spi_flash.c:222
spiflash_sector_erase
void spiflash_sector_erase(uint32_t erase_addr)
erase a sector data
Definition: spi_flash.c:201
spi_byte_write
uint8_t spi_byte_write(uint8_t data)
write a byte to flash
Definition: spi_flash.c:485
spiflash_read
void spiflash_read(uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
read data from flash
Definition: spi_flash.c:185
spiflash_read_id
uint16_t spiflash_read_id(void)
read device id
Definition: spi_flash.c:466
spi_bytes_read
void spi_bytes_read(uint8_t *pbuffer, uint32_t length)
read data continuously
Definition: spi_flash.c:366
spi_bytes_write
void spi_bytes_write(uint8_t *pbuffer, uint32_t length)
write data continuously
Definition: spi_flash.c:301
spiflash_sector_buf
uint8_t spiflash_sector_buf[SPIF_SECTOR_SIZE]
Definition: spi_flash.c:35
spiflash_page_write
void spiflash_page_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write a page data
Definition: spi_flash.c:270
spi_byte_read
uint8_t spi_byte_read(void)
read a byte to flash
Definition: spi_flash.c:502
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_SPI2_PERIPH_CLOCK
@ CRM_SPI2_PERIPH_CLOCK
Definition: at32f403_crm.h:139
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_DMA1_PERIPH_CLOCK
@ CRM_DMA1_PERIPH_CLOCK
Definition: at32f403_crm.h:102
dma_channel_enable
void dma_channel_enable(dma_channel_type *dmax_channely, confirm_state new_state)
enable or disable dma channely
Definition: at32f403_dma.c:186
dma_default_para_init
void dma_default_para_init(dma_init_type *dma_init_struct)
dma init config with its default value.
Definition: at32f403_dma.c:271
dma_flag_get
flag_status dma_flag_get(uint32_t dmax_flag)
get dma flag
Definition: at32f403_dma.c:209
dma_flag_clear
void dma_flag_clear(uint32_t dmax_flag)
clear dma flag
Definition: at32f403_dma.c:253
dma_reset
void dma_reset(dma_channel_type *dmax_channely)
reset the dmax channely registers.
Definition: at32f403_dma.c:60
dma_init
void dma_init(dma_channel_type *dmax_channely, dma_init_type *dma_init_struct)
dma init
Definition: at32f403_dma.c:304
DMA_PERIPHERAL_DATA_WIDTH_BYTE
@ DMA_PERIPHERAL_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:154
DMA_DIR_MEMORY_TO_PERIPHERAL
@ DMA_DIR_MEMORY_TO_PERIPHERAL
Definition: at32f403_dma.h:127
DMA_DIR_PERIPHERAL_TO_MEMORY
@ DMA_DIR_PERIPHERAL_TO_MEMORY
Definition: at32f403_dma.h:126
DMA_MEMORY_DATA_WIDTH_BYTE
@ DMA_MEMORY_DATA_WIDTH_BYTE
Definition: at32f403_dma.h:164
DMA_PRIORITY_VERY_HIGH
@ DMA_PRIORITY_VERY_HIGH
Definition: at32f403_dma.h:177
DMA1_FDT4_FLAG
#define DMA1_FDT4_FLAG
Definition: at32f403_dma.h:76
DMA1_CHANNEL5
#define DMA1_CHANNEL5
Definition: at32f403_dma.h:359
DMA1_CHANNEL4
#define DMA1_CHANNEL4
Definition: at32f403_dma.h:358
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
SPI_I2S_BF_FLAG
#define SPI_I2S_BF_FLAG
Definition: at32f403_spi.h:58
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_dma_receiver_enable
void spi_i2s_dma_receiver_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma receiver mode.
Definition: at32f403_spi.c:509
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
spi_i2s_dma_transmitter_enable
void spi_i2s_dma_transmitter_enable(spi_type *spi_x, confirm_state new_state)
enable or disable the spi/i2s dma transmitter mode.
Definition: at32f403_spi.c:495
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_HIGH
@ SPI_CLOCK_POLARITY_HIGH
Definition: at32f403_spi.h:106
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_MCLK_DIV_8
@ SPI_MCLK_DIV_8
Definition: at32f403_spi.h:134
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
FLASH_CS_LOW
#define FLASH_CS_LOW()
Definition: spi_flash.h:51
FLASH_CS_HIGH
#define FLASH_CS_HIGH()
Definition: spi_flash.h:50
SPIF_READDATA
#define SPIF_READDATA
Definition: spi_flash.h:94
SPIF_PAGE_SIZE
#define SPIF_PAGE_SIZE
Definition: spi_flash.h:81
SPIF_SECTORERASE
#define SPIF_SECTORERASE
Definition: spi_flash.h:100
SPIF_MANUFACTDEVICEID
#define SPIF_MANUFACTDEVICEID
Definition: spi_flash.h:105
FLASH_SPI_DUMMY_BYTE
#define FLASH_SPI_DUMMY_BYTE
Definition: spi_flash.h:107
SPIF_SECTOR_SIZE
#define SPIF_SECTOR_SIZE
Definition: spi_flash.h:80
SPIF_READSTATUSREG1
#define SPIF_READSTATUSREG1
Definition: spi_flash.h:86
SPIF_PAGEPROGRAM
#define SPIF_PAGEPROGRAM
Definition: spi_flash.h:97
SPIF_WRITEENABLE
#define SPIF_WRITEENABLE
Definition: spi_flash.h:83
SPI2
#define SPI2
Definition: at32f403_spi.h:447
spi_flash.h
header file of spi_flash
dma_init_type
dma init type
Definition: at32f403_dma.h:184
dma_init_type::loop_mode_enable
confirm_state loop_mode_enable
Definition: at32f403_dma.h:193
dma_init_type::buffer_size
uint16_t buffer_size
Definition: at32f403_dma.h:188
dma_init_type::memory_data_width
dma_memory_data_size_type memory_data_width
Definition: at32f403_dma.h:192
dma_init_type::priority
dma_priority_level_type priority
Definition: at32f403_dma.h:194
dma_init_type::peripheral_inc_enable
confirm_state peripheral_inc_enable
Definition: at32f403_dma.h:189
dma_init_type::memory_inc_enable
confirm_state memory_inc_enable
Definition: at32f403_dma.h:190
dma_init_type::direction
dma_dir_type direction
Definition: at32f403_dma.h:187
dma_init_type::peripheral_base_addr
uint32_t peripheral_base_addr
Definition: at32f403_dma.h:185
dma_init_type::memory_base_addr
uint32_t memory_base_addr
Definition: at32f403_dma.h:186
dma_init_type::peripheral_data_width
dma_peripheral_data_size_type peripheral_data_width
Definition: at32f403_dma.h:191
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262


AT32F403 Firmwary Library: spi_flash.h Source File

  • spi
  • w25q_flash
  • inc
spi_flash.h
Go to the documentation of this file.
1
25#ifndef __SPI_FLASH_H
26#define __SPI_FLASH_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403.h"
33
43 /* use dma transfer spi data */
44#define SPI_TRANS_DMA
45
50#define FLASH_CS_HIGH() gpio_bits_set(GPIOB, GPIO_PINS_12)
51#define FLASH_CS_LOW() gpio_bits_reset(GPIOB, GPIO_PINS_12)
52
61/*
62 * flash define
63 */
64#define W25Q80 0xEF13
65#define W25Q16 0xEF14
66#define W25Q32 0xEF15
67#define W25Q64 0xEF16
68/* 16mb, the range of address:0~0xFFFFFF */
69#define W25Q128 0xEF17
70
79#define SPIF_CHIP_SIZE 0x1000000
80#define SPIF_SECTOR_SIZE 4096
81#define SPIF_PAGE_SIZE 256
82
83#define SPIF_WRITEENABLE 0x06
84#define SPIF_WRITEDISABLE 0x04
85/* s7-s0 */
86#define SPIF_READSTATUSREG1 0x05
87#define SPIF_WRITESTATUSREG1 0x01
88/* s15-s8 */
89#define SPIF_READSTATUSREG2 0x35
90#define SPIF_WRITESTATUSREG2 0x31
91/* s23-s16 */
92#define SPIF_READSTATUSREG3 0x15
93#define SPIF_WRITESTATUSREG3 0x11
94#define SPIF_READDATA 0x03
95#define SPIF_FASTREADDATA 0x0B
96#define SPIF_FASTREADDUAL 0x3B
97#define SPIF_PAGEPROGRAM 0x02
98/* block size:64kb */
99#define SPIF_BLOCKERASE 0xD8
100#define SPIF_SECTORERASE 0x20
101#define SPIF_CHIPERASE 0xC7
102#define SPIF_POWERDOWN 0xB9
103#define SPIF_RELEASEPOWERDOWN 0xAB
104#define SPIF_DEVICEID 0xAB
105#define SPIF_MANUFACTDEVICEID 0x90
106#define SPIF_JEDECDEVICEID 0x9F
107#define FLASH_SPI_DUMMY_BYTE 0xA5
108
117void spiflash_init(void);
118void spiflash_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length);
119void spiflash_read(uint8_t *pbuffer, uint32_t read_addr, uint32_t length);
120void spiflash_sector_erase(uint32_t erase_addr);
121void spiflash_write_nocheck(uint8_t *pbuffer, uint32_t write_addr, uint32_t length);
122void spiflash_page_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length);
123void spi_bytes_write(uint8_t *pbuffer, uint32_t length);
124void spi_bytes_read(uint8_t *pbuffer, uint32_t length);
125void spiflash_wait_busy(void);
126uint8_t spiflash_read_sr1(void);
127void spiflash_write_enable(void);
128uint16_t spiflash_read_id(void);
129uint8_t spi_byte_write(uint8_t data);
130uint8_t spi_byte_read(void);
131
144#ifdef __cplusplus
145}
146#endif
147
148#endif
149
at32f403.h
at32f403 header file
spiflash_init
void spiflash_init(void)
spi configuration.
Definition: spi_flash.c:42
spiflash_write
void spiflash_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data to flash
Definition: spi_flash.c:97
spiflash_wait_busy
void spiflash_wait_busy(void)
wait program done
Definition: spi_flash.c:429
spiflash_write_enable
void spiflash_write_enable(void)
enable write operation
Definition: spi_flash.c:454
spiflash_read_sr1
uint8_t spiflash_read_sr1(void)
read sr1 register
Definition: spi_flash.c:439
spiflash_write_nocheck
void spiflash_write_nocheck(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write data without check
Definition: spi_flash.c:222
spiflash_sector_erase
void spiflash_sector_erase(uint32_t erase_addr)
erase a sector data
Definition: spi_flash.c:201
spi_byte_write
uint8_t spi_byte_write(uint8_t data)
write a byte to flash
Definition: spi_flash.c:485
spiflash_read
void spiflash_read(uint8_t *pbuffer, uint32_t read_addr, uint32_t length)
read data from flash
Definition: spi_flash.c:185
spiflash_read_id
uint16_t spiflash_read_id(void)
read device id
Definition: spi_flash.c:466
spi_bytes_read
void spi_bytes_read(uint8_t *pbuffer, uint32_t length)
read data continuously
Definition: spi_flash.c:366
spi_bytes_write
void spi_bytes_write(uint8_t *pbuffer, uint32_t length)
write data continuously
Definition: spi_flash.c:301
spiflash_page_write
void spiflash_page_write(uint8_t *pbuffer, uint32_t write_addr, uint32_t length)
write a page data
Definition: spi_flash.c:270
spi_byte_read
uint8_t spi_byte_read(void)
read a byte to flash
Definition: spi_flash.c:502


AT32F403 Firmwary Library: system_at32f403.c Source File

  • libraries
  • cmsis
  • cm4
  • device_support
system_at32f403.c
Go to the documentation of this file.
1
33#include "at32f403.h"
34
38#define VECT_TAB_OFFSET 0x0
46unsigned int system_core_clock = HICK_VALUE;
62void SystemInit (void)
63{
64#if defined (__FPU_USED) && (__FPU_USED == 1U)
65 SCB->CPACR |= ((3U << 10U * 2U) | /* set cp10 full access */
66 (3U << 11U * 2U) ); /* set cp11 full access */
67#endif
68
69 /* reset the crm clock configuration to the default reset state(for debug purpose) */
70 /* set hicken bit */
71 CRM->ctrl_bit.hicken = TRUE;
72
73 /* wait hick stable */
74 while(CRM->ctrl_bit.hickstbl != SET);
75
76 /* switch system clock(high to low) in smooth going */
77 CRM->cfg_bit.ahbdiv = CRM_AHB_DIV_512;
78
79 /* hick used as system clock */
80 CRM->cfg_bit.sclksel = CRM_SCLK_HICK;
81
82 /* wait sclk switch status */
83 while(CRM->cfg_bit.sclksts != CRM_SCLK_HICK);
84
85 /* reset hexten, hextbyps, cfden and pllen bits */
86 CRM->ctrl &= ~(0x010D0000U);
87
88 /* reset cfg register, include sclk switch, ahbdiv, apb1div, apb2div, adcdiv,
89 clkout pllrcs, pllhextdiv, pllmult, usbdiv and pllrange bits */
90 CRM->cfg = 0;
91
92 /* reset clkout[3], usbbufs, hickdiv, clkoutdiv */
93 CRM->misc1 = 0;
94
95 /* disable all interrupts enable and clear pending bits */
96 CRM->clkint = 0x009F0000;
97
98#ifdef VECT_TAB_SRAM
99 SCB->VTOR = SRAM_BASE | VECT_TAB_OFFSET; /* vector table relocation in internal sram. */
100#else
101 SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* vector table relocation in internal flash. */
102#endif
103}
104
113void system_core_clock_update(void)
114{
115 uint32_t pll_mult = 0, pll_mult_h = 0, pll_clock_source = 0, temp = 0, div_value = 0;
116 crm_sclk_type sclk_source;
117
118 static const uint8_t sys_ahb_div_table[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9};
119
120 /* get sclk source */
121 sclk_source = crm_sysclk_switch_status_get();
122
123 switch(sclk_source)
124 {
125 case CRM_SCLK_HICK:
126 system_core_clock = HICK_VALUE;
127 break;
128 case CRM_SCLK_HEXT:
129 system_core_clock = HEXT_VALUE;
130 break;
131 case CRM_SCLK_PLL:
132 pll_clock_source = CRM->cfg_bit.pllrcs;
133 {
134 /* get multiplication factor */
135 pll_mult = CRM->cfg_bit.pllmult_l;
136 pll_mult_h = CRM->cfg_bit.pllmult_h;
137 /* process high bits */
138 if((pll_mult_h != 0U) || (pll_mult == 15U)){
139 pll_mult += ((16U * pll_mult_h) + 1U);
140 }
141 else
142 {
143 pll_mult += 2U;
144 }
145
146 if (pll_clock_source == 0x00)
147 {
148 /* hick divided by 2 selected as pll clock entry */
149 system_core_clock = (HICK_VALUE >> 1) * pll_mult;
150 }
151 else
152 {
153 /* hext selected as pll clock entry */
154 if (CRM->cfg_bit.pllhextdiv != RESET)
155 {
156 /* hext clock divided by 2 */
157 system_core_clock = (HEXT_VALUE / 2) * pll_mult;
158 }
159 else
160 {
161 system_core_clock = HEXT_VALUE * pll_mult;
162 }
163 }
164 }
165 break;
166 default:
167 system_core_clock = HICK_VALUE;
168 break;
169 }
170
171 /* compute sclk, ahbclk frequency */
172 /* get ahb division */
173 temp = CRM->cfg_bit.ahbdiv;
174 div_value = sys_ahb_div_table[temp];
175 /* ahbclk frequency */
176 system_core_clock = system_core_clock >> div_value;
177}
at32f403.h
at32f403 header file
VECT_TAB_OFFSET
#define VECT_TAB_OFFSET
Definition: system_at32f403.c:38
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
SystemInit
void SystemInit(void)
setup the microcontroller system initialize the flash interface.
Definition: system_at32f403.c:62
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_sclk_type
crm_sclk_type
crm sclk select
Definition: at32f403_crm.h:405
CRM_AHB_DIV_512
@ CRM_AHB_DIV_512
Definition: at32f403_crm.h:336
CRM_SCLK_HICK
@ CRM_SCLK_HICK
Definition: at32f403_crm.h:406
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_SCLK_HEXT
@ CRM_SCLK_HEXT
Definition: at32f403_crm.h:407
CRM
#define CRM
Definition: at32f403_crm.h:785
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
SRAM_BASE
#define SRAM_BASE
Definition: at32f403.h:344
FLASH_BASE
#define FLASH_BASE
Definition: at32f403.h:341
HEXT_VALUE
#define HEXT_VALUE
in the following line adjust the value of high speed external crystal (hext) used in your application
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h:42
HICK_VALUE
#define HICK_VALUE
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/inc/at32f403_conf.h:50


AT32F403 Firmwary Library: system_at32f403.h Source File

  • libraries
  • cmsis
  • cm4
  • device_support
system_at32f403.h
Go to the documentation of this file.
1
25#ifndef __SYSTEM_AT32F403_H
26#define __SYSTEM_AT32F403_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
44#define HEXT_STABLE_DELAY (5000u)
45#define PLL_STABLE_DELAY (500u)
46#define SystemCoreClock system_core_clock
47
56extern unsigned int system_core_clock;
66extern void SystemInit(void);
67extern void system_core_clock_update(void);
68
81#ifdef __cplusplus
82}
83#endif
84
85#endif
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
SystemInit
void SystemInit(void)
setup the microcontroller system initialize the flash interface.
Definition: system_at32f403.c:62
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46


AT32F403 Firmwary Library: touch.c Source File

  • xmc
  • lcd_touch_16bit
  • src
touch.c
Go to the documentation of this file.
1
25#include "touch.h"
26#include "xmc_lcd.h"
27
36 touch_dev_type touch_dev_struct =
37{
38 touch_pin_init,
39 touch_read_xy,
40 touch_scan,
41 touch_adjust,
42 0,
43 0,
44};
45
46uint8_t cmd_rdx = 0xd0;
47uint8_t cmd_rdy = 0x90;
48
49 touch_dev_type *touch_struct;
50
56void touch_pin_init(void)
57{
58 gpio_init_type gpio_init_struct = {0};
59 spi_init_type spi_init_struct;
60
61 /* enable the gpio clock */
62 crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE);
63 crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_SPI1_PERIPH_CLOCK, TRUE);
65
66 gpio_init_struct.gpio_pins = GPIO_PINS_7 | GPIO_PINS_5;
67 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
68 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
69 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
70 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
71 gpio_init(GPIOA, &gpio_init_struct);
72
73 gpio_init_struct.gpio_pins = GPIO_PINS_6;
74 gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
75 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
76 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
77 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
78 gpio_init(GPIOB, &gpio_init_struct);
79
80 gpio_bits_set(GPIOA, GPIO_PINS_5);
81 gpio_bits_set(GPIOA, GPIO_PINS_7);
82 gpio_bits_set(GPIOA, GPIO_PINS_6);
83
84 gpio_init_struct.gpio_pins = GPIO_PINS_6;
85 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
86 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
87 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
88 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
89 gpio_init(GPIOA, &gpio_init_struct);
90
91 gpio_init_struct.gpio_pins = GPIO_PINS_11;
92 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
93 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
94 gpio_init_struct.gpio_pull = GPIO_PULL_UP;
95 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
96 gpio_init(GPIOB, &gpio_init_struct);
97
98 gpio_bits_set(GPIOB, GPIO_PINS_11);
99
100 spi_default_para_init(&spi_init_struct);
101 spi_init_struct.transmission_mode = SPI_TRANSMIT_FULL_DUPLEX;
102 spi_init_struct.master_slave_mode = SPI_MODE_MASTER;
103 spi_init_struct.mclk_freq_division = SPI_MCLK_DIV_256;
104 spi_init_struct.first_bit_transmission = SPI_FIRST_BIT_MSB;
105 spi_init_struct.frame_bit_num = SPI_FRAME_8BIT;
106 spi_init_struct.clock_polarity = SPI_CLOCK_POLARITY_HIGH;
107 spi_init_struct.clock_phase = SPI_CLOCK_PHASE_2EDGE;
108 spi_init_struct.cs_mode_selection = SPI_CS_SOFTWARE_MODE;
109 spi_init(SPI1, &spi_init_struct);
110 spi_enable(SPI1, TRUE);
111}
112
118void touch_read_xy(uint16_t *x, uint16_t *y)
119{
120 uint16_t xtemp, ytemp;
121 xtemp = touch_read_x_or_y(cmd_rdx);
122 ytemp = touch_read_x_or_y(cmd_rdy);
123
124 *x = xtemp;
125 *y = ytemp;
126}
127
133/* read five times, remove max and min, and then take the average */
134#define READ_TIMES 5
135#define LOST_VAL 1
136uint16_t touch_read_x_or_y(uint8_t xy)
137{
138 uint16_t i, j;
139 uint16_t buf[READ_TIMES];
140 uint16_t sum = 0;
141 uint16_t temp;
142
143 for(i = 0; i < READ_TIMES; i++)
144 {
145 buf[i] = touch_read_ad(xy);
146 }
147
148 for(i = 0; i < READ_TIMES - 1; i++)
149 {
150 for(j = i + 1; j < READ_TIMES; j++)
151 {
152 /* increase the sorting */
153 if(buf[i] > buf[j])
154 {
155 temp = buf[i];
156 buf[i] = buf[j];
157 buf[j] = temp;
158 }
159 }
160 }
161
162 sum = 0;
163
164 for(i = LOST_VAL; i < READ_TIMES - LOST_VAL; i++)
165 {
166 sum += buf[i];
167 }
168
169 temp = sum/(READ_TIMES - 2 * LOST_VAL);
170
171 return temp;
172}
173
179uint16_t touch_read_ad(uint8_t xy)
180{
181 uint16_t num = 0;
182
183 /* enable touch ic */
184 TCS_LOW;
185
186 /* send command */
187 touch_write_1byte(xy);
188
189 /* touch ic conversion timer */
190 delay_us(6);
191 num = touch_read_1byte();
192 num = num << 8;
193 num |= touch_read_1byte();
194 num >>= 3;
195
196 /* disable touch ic */
197 TCS_HIGH;
198 return(num);
199}
200
206void touch_write_1byte(uint8_t cmd)
207{
208 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
209 spi_i2s_data_transmit(SPI1, cmd);
210
211 while(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) == RESET);
212 SPI1->dt;
213}
214
220uint8_t touch_read_1byte(void)
221{
222 uint8_t touch;
223
224 while(spi_i2s_flag_get(SPI1, SPI_I2S_TDBE_FLAG) == RESET);
225 spi_i2s_data_transmit(SPI1, 0xFF);
226
227 while(spi_i2s_flag_get(SPI1, SPI_I2S_RDBF_FLAG) == RESET);
228 touch = spi_i2s_data_receive(SPI1);
229
230 return touch;
231}
232
238void touch_scan(void)
239{
240 uint16_t x, y;
241
242 if(gpio_input_data_bit_read(GPIOB, GPIO_PINS_11) == 0)
243 {
244 touch_dev_struct.touch_read_xy(&touch_dev_struct.x_p[1], &touch_dev_struct.y_p[1]);
245 x = (240 * touch_dev_struct.x_p[1]) / (0xed0);
246 y = (320 * touch_dev_struct.y_p[1]) / (0xe60);
247
248 lcd_draw_point(x, y, RED);
249 lcd_draw_point(x - 1, y, RED);
250 lcd_draw_point(x + 1, y, RED);
251 lcd_draw_point(x, y + 1, RED);
252 lcd_draw_point(x, y - 1, RED);
253 }
254}
255
261 error_status touch_adjust(void)
262{
263 /* touch adjust code */
264 return SUCCESS;
265}
266
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
spi_init_struct
spi_init_type spi_init_struct
Definition: project/at_start_f403/examples/spi/fullduplex_polling/src/main.c:38
RED
#define RED
Definition: lcd_8bit/inc/xmc_lcd.h:72
cmd_rdy
uint8_t cmd_rdy
Definition: touch.c:47
LOST_VAL
#define LOST_VAL
Definition: touch.c:135
cmd_rdx
uint8_t cmd_rdx
Definition: touch.c:46
touch_read_ad
uint16_t touch_read_ad(uint8_t xy)
this function is read data from touch.
Definition: touch.c:179
touch_scan
void touch_scan(void)
this function is scanning the screen.
Definition: touch.c:238
touch_write_1byte
void touch_write_1byte(uint8_t cmd)
this function is write command to touch.
Definition: touch.c:206
TCS_HIGH
#define TCS_HIGH
Definition: touch.h:71
READ_TIMES
#define READ_TIMES
this function is processing data that read from touch.
Definition: touch.c:134
touch_read_xy
void touch_read_xy(uint16_t *x, uint16_t *y)
this function is read data from touch.
Definition: touch.c:118
touch_struct
touch_dev_type * touch_struct
Definition: touch.c:49
touch_adjust
error_status touch_adjust(void)
this function is adjust the screen.
Definition: touch.c:261
touch_dev_struct
touch_dev_type touch_dev_struct
Definition: touch.c:36
TCS_LOW
#define TCS_LOW
Definition: touch.h:72
touch_read_1byte
uint8_t touch_read_1byte(void)
this function is read data from touch.
Definition: touch.c:220
touch_read_x_or_y
uint16_t touch_read_x_or_y(uint8_t xy)
Definition: touch.c:136
touch_pin_init
void touch_pin_init(void)
this function is init touch pin.
Definition: touch.c:56
j
uint32_t j
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_GPIOA_PERIPH_CLOCK
@ CRM_GPIOA_PERIPH_CLOCK
Definition: at32f403_crm.h:110
CRM_IOMUX_PERIPH_CLOCK
@ CRM_IOMUX_PERIPH_CLOCK
Definition: at32f403_crm.h:109
CRM_SPI1_PERIPH_CLOCK
@ CRM_SPI1_PERIPH_CLOCK
Definition: at32f403_crm.h:120
error_status
error_status
error status
Definition: at32f403.h:314
SUCCESS
@ SUCCESS
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_bits_set
void gpio_bits_set(gpio_type *gpio_x, uint16_t pins)
set the selected data port bits.
Definition: at32f403_gpio.c:318
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_MODE_OUTPUT
@ GPIO_MODE_OUTPUT
Definition: at32f403_gpio.h:143
GPIO_DRIVE_STRENGTH_STRONGER
@ GPIO_DRIVE_STRENGTH_STRONGER
Definition: at32f403_gpio.h:153
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_PULL_UP
@ GPIO_PULL_UP
Definition: at32f403_gpio.h:173
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOA
#define GPIOA
Definition: at32f403_gpio.h:594
SPI_I2S_TDBE_FLAG
#define SPI_I2S_TDBE_FLAG
Definition: at32f403_spi.h:52
SPI_I2S_RDBF_FLAG
#define SPI_I2S_RDBF_FLAG
Definition: at32f403_spi.h:51
spi_i2s_data_transmit
void spi_i2s_data_transmit(spi_type *spi_x, uint16_t tx_data)
spi/i2s data transmit
Definition: at32f403_spi.c:524
spi_i2s_flag_get
flag_status spi_i2s_flag_get(spi_type *spi_x, uint32_t spi_i2s_flag)
get flag of the specified spi/i2s peripheral.
Definition: at32f403_spi.c:558
spi_init
void spi_init(spi_type *spi_x, spi_init_type *spi_init_struct)
spi init config with its setting value.
Definition: at32f403_spi.c:101
spi_default_para_init
void spi_default_para_init(spi_init_type *spi_init_struct)
spi init config with its default value.
Definition: at32f403_spi.c:81
spi_i2s_data_receive
uint16_t spi_i2s_data_receive(spi_type *spi_x)
spi/i2s data receive
Definition: at32f403_spi.c:536
spi_enable
void spi_enable(spi_type *spi_x, confirm_state new_state)
enable or disable spi.
Definition: at32f403_spi.c:297
SPI_MODE_MASTER
@ SPI_MODE_MASTER
Definition: at32f403_spi.h:97
SPI_CLOCK_PHASE_2EDGE
@ SPI_CLOCK_PHASE_2EDGE
Definition: at32f403_spi.h:115
SPI_CS_SOFTWARE_MODE
@ SPI_CS_SOFTWARE_MODE
Definition: at32f403_spi.h:124
SPI_FIRST_BIT_MSB
@ SPI_FIRST_BIT_MSB
Definition: at32f403_spi.h:149
SPI_CLOCK_POLARITY_HIGH
@ SPI_CLOCK_POLARITY_HIGH
Definition: at32f403_spi.h:106
SPI_TRANSMIT_FULL_DUPLEX
@ SPI_TRANSMIT_FULL_DUPLEX
Definition: at32f403_spi.h:158
SPI_MCLK_DIV_256
@ SPI_MCLK_DIV_256
Definition: at32f403_spi.h:139
SPI_FRAME_8BIT
@ SPI_FRAME_8BIT
Definition: at32f403_spi.h:87
SPI1
#define SPI1
Definition: at32f403_spi.h:446
lcd_draw_point
void lcd_draw_point(uint16_t x, uint16_t y, uint16_t color)
this function is draw point to lcd.
Definition: lcd_8bit/src/xmc_lcd.c:302
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
spi_init_type
spi init type
Definition: at32f403_spi.h:255
spi_init_type::master_slave_mode
spi_master_slave_mode_type master_slave_mode
Definition: at32f403_spi.h:257
spi_init_type::first_bit_transmission
spi_first_bit_type first_bit_transmission
Definition: at32f403_spi.h:259
spi_init_type::frame_bit_num
spi_frame_bit_num_type frame_bit_num
Definition: at32f403_spi.h:260
spi_init_type::clock_polarity
spi_clock_polarity_type clock_polarity
Definition: at32f403_spi.h:261
spi_init_type::cs_mode_selection
spi_cs_mode_type cs_mode_selection
Definition: at32f403_spi.h:263
spi_init_type::mclk_freq_division
spi_mclk_freq_div_type mclk_freq_division
Definition: at32f403_spi.h:258
spi_init_type::transmission_mode
spi_transmission_mode_type transmission_mode
Definition: at32f403_spi.h:256
spi_init_type::clock_phase
spi_clock_phase_type clock_phase
Definition: at32f403_spi.h:262
touch_dev_type
Definition: touch.h:48
touch_dev_type::touch_read_xy
void(* touch_read_xy)(uint16_t *x, uint16_t *y)
Definition: touch.h:50
touch_dev_type::y_p
uint16_t y_p[6]
Definition: touch.h:54
touch_dev_type::x_p
uint16_t x_p[6]
Definition: touch.h:53
touch.h
this file contains all the functions prototypes for the touch firmware driver.


AT32F403 Firmwary Library: touch.h Source File

  • xmc
  • lcd_touch_16bit
  • inc
touch.h
Go to the documentation of this file.
1
26#ifndef __TOUCH_H
27#define __TOUCH_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403_board.h"
34
47typedef struct
48{
49 void (*init)(void);
50 void (*touch_read_xy)(uint16_t *x, uint16_t *y);
51 void (*touch_scan)(void);
52 error_status (*touch_adjust)(void);
53 uint16_t x_p[6];
54 uint16_t y_p[6];
55}touch_dev_type;
56
61#define TCLK_HIGH gpio_bits_set(GPIOB,GPIO_PINS_3)
62#define TCLK_LOW gpio_bits_reset(GPIOB,GPIO_PINS_3)
63
64#define TDOUT gpio_input_data_bit_read(GPIOB,GPIO_PINS_4)
65
66#define TDIN_HIGH gpio_bits_set(GPIOB,GPIO_PINS_5)
67#define TDIN_LOW gpio_bits_reset(GPIOB,GPIO_PINS_5)
68
69#define PEN_HIGH gpio_input_data_bit_read(GPIOB,GPIO_PINS_11)
70
71#define TCS_HIGH gpio_bits_set(GPIOB,GPIO_PINS_6)
72#define TCS_LOW gpio_bits_reset(GPIOB,GPIO_PINS_6)
73
74extern touch_dev_type touch_dev_struct;
75extern touch_dev_type *touch_struct;
76
81void touch_pin_init(void);
82void touch_read_xy(uint16_t *x, uint16_t *y);
83void touch_scan(void);
84uint16_t touch_read_x_or_y(uint8_t xy);
85uint16_t touch_read_ad(uint8_t xy);
86void touch_write_1byte(uint8_t cmd);
87uint8_t touch_read_1byte(void);
88 error_status touch_adjust(void);
89
106#ifdef __cplusplus
107}
108#endif
109
110#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
touch_struct
touch_dev_type * touch_struct
Definition: touch.c:49
touch_dev_struct
touch_dev_type touch_dev_struct
Definition: touch.c:36
error_status
error_status
error status
Definition: at32f403.h:314
touch_read_ad
uint16_t touch_read_ad(uint8_t xy)
this function is read data from touch.
Definition: touch.c:179
touch_scan
void touch_scan(void)
this function is scanning the screen.
Definition: touch.c:238
touch_write_1byte
void touch_write_1byte(uint8_t cmd)
this function is write command to touch.
Definition: touch.c:206
touch_read_xy
void touch_read_xy(uint16_t *x, uint16_t *y)
this function is read data from touch.
Definition: touch.c:118
touch_adjust
error_status touch_adjust(void)
this function is adjust the screen.
Definition: touch.c:261
touch_read_1byte
uint8_t touch_read_1byte(void)
this function is read data from touch.
Definition: touch.c:220
touch_read_x_or_y
uint16_t touch_read_x_or_y(uint8_t xy)
Definition: touch.c:136
touch_pin_init
void touch_pin_init(void)
this function is init touch pin.
Definition: touch.c:56
touch_dev_type
Definition: touch.h:48


AT32F403 Firmwary Library: usb_std.h Source File

  • middlewares
  • usbd_drivers
  • inc
usb_std.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_STD_H
27#define __USB_STD_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "usb_conf.h"
36
52#define USB_REQ_RECIPIENT_DEVICE 0x00
53#define USB_REQ_RECIPIENT_INTERFACE 0x01
54#define USB_REQ_RECIPIENT_ENDPOINT 0x02
55#define USB_REQ_RECIPIENT_OTHER 0x03
56#define USB_REQ_RECIPIENT_MASK 0x1F
61#define USB_REQ_TYPE_STANDARD 0x00
62#define USB_REQ_TYPE_CLASS 0x20
63#define USB_REQ_TYPE_VENDOR 0x40
64#define USB_REQ_TYPE_RESERVED 0x60
69#define USB_REQ_DIR_HTD 0x00
70#define USB_REQ_DIR_DTH 0x80
75#define USB_STD_REQ_GET_STATUS 0
76#define USB_STD_REQ_CLEAR_FEATURE 1
77#define USB_STD_REQ_SET_FEATURE 3
78#define USB_STD_REQ_SET_ADDRESS 5
79#define USB_STD_REQ_GET_DESCRIPTOR 6
80#define USB_STD_REQ_SET_DESCRIPTOR 7
81#define USB_STD_REQ_GET_CONFIGURATION 8
82#define USB_STD_REQ_SET_CONFIGURATION 9
83#define USB_STD_REQ_GET_INTERFACE 10
84#define USB_STD_REQ_SET_INTERFACE 11
85#define USB_STD_REQ_SYNCH_FRAME 12
90#define USB_DESCIPTOR_TYPE_DEVICE 1
91#define USB_DESCIPTOR_TYPE_CONFIGURATION 2
92#define USB_DESCIPTOR_TYPE_STRING 3
93#define USB_DESCIPTOR_TYPE_INTERFACE 4
94#define USB_DESCIPTOR_TYPE_ENDPOINT 5
95#define USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER 6
96#define USB_DESCIPTOR_TYPE_OTHER_SPEED 7
97#define USB_DESCIPTOR_TYPE_INTERFACE_POWER 8
102#define USB_LANGID_STRING 0
103#define USB_MFC_STRING 1
104#define USB_PRODUCT_STRING 2
105#define USB_SERIAL_STRING 3
106#define USB_CONFIG_STRING 4
107#define USB_INTERFACE_STRING 5
112#define USB_CONF_REMOTE_WAKEUP 2
113#define USB_CONF_SELF_POWERED 1
118#define USB_FEATURE_EPT_HALT 0
119#define USB_FEATURE_REMOTE_WAKEUP 1
120#define USB_FEATURE_TEST_MODE 2
125typedef enum
126{
127 USB_CONN_STATE_DEFAULT =1,
128 USB_CONN_STATE_ADDRESSED,
129 USB_CONN_STATE_CONFIGURED,
130 USB_CONN_STATE_SUSPENDED
131}usbd_conn_state;
132
136#define USB_EPT0_IDLE 0
137#define USB_EPT0_SETUP 1
138#define USB_EPT0_DATA_IN 2
139#define USB_EPT0_DATA_OUT 3
140#define USB_EPT0_STATUS_IN 4
141#define USB_EPT0_STATUS_OUT 5
142#define USB_EPT0_STALL 6
147#define USB_DEVICE_QUALIFIER_DESC_LEN 0x0A
148#define USB_DEVICE_DESC_LEN 0x12
149#define USB_DEVICE_CFG_DESC_LEN 0x09
150#define USB_DEVICE_IF_DESC_LEN 0x09
151#define USB_DEVICE_EPT_LEN 0x07
152#define USB_DEVICE_OTG_DESC_LEN 0x03
153#define USB_DEVICE_LANGID_STR_DESC_LEN 0x04
154#define USB_DEVICE_OTHER_SPEED_DESC_SIZ_LEN 0x09
159#define USB_CLASS_CODE_AUDIO 0x01
160#define USB_CLASS_CODE_CDC 0x02
161#define USB_CLASS_CODE_HID 0x03
162#define USB_CLASS_CODE_PRINTER 0x07
163#define USB_CLASS_CODE_MSC 0x08
164#define USB_CLASS_CODE_HUB 0x09
165#define USB_CLASS_CODE_CDCDATA 0x0A
166#define USB_CLASS_CODE_CCID 0x0B
167#define USB_CLASS_CODE_VIDEO 0x0E
168#define USB_CLASS_CODE_VENDOR 0xFF
173#define USB_EPT_DESC_CONTROL 0x00
174#define USB_EPT_DESC_ISO 0x01
175#define USB_EPT_DESC_BULK 0x02
176#define USB_EPT_DESC_INTERRUPT 0x03
178#define USB_EPT_DESC_NSYNC 0x00
179#define USB_ETP_DESC_ASYNC 0x04
180#define USB_ETP_DESC_ADAPTIVE 0x08
181#define USB_ETP_DESC_SYNC 0x0C
183#define USB_EPT_DESC_DATA_EPT 0x00
184#define USB_EPT_DESC_FD_EPT 0x10
185#define USB_EPT_DESC_FDDATA_EPT 0x20
190#define USBD_CDC_CS_INTERFACE 0x24
191#define USBD_CDC_CS_ENDPOINT 0x25
192
196#define USBD_CDC_SUBTYPE_HEADER 0x00
197#define USBD_CDC_SUBTYPE_CMF 0x01
198#define USBD_CDC_SUBTYPE_ACM 0x02
199#define USBD_CDC_SUBTYPE_UFD 0x06
200
204#define SET_LINE_CODING 0x20
205#define GET_LINE_CODING 0x21
206
210typedef struct
211{
212 uint32_t bitrate; /* line coding baud rate */
213 uint8_t format; /* line coding foramt */
214 uint8_t parity; /* line coding parity */
215 uint8_t data; /* line coding data bit */
216}linecoding_type;
217
221#define HID_CLASS_DESC_HID 0x21
222#define HID_CLASS_DESC_REPORT 0x22
223#define HID_CLASS_DESC_PHYSICAL 0x23
224
228#define HID_REQ_SET_PROTOCOL 0x0B
229#define HID_REQ_GET_PROTOCOL 0x03
230#define HID_REQ_SET_IDLE 0x0A
231#define HID_REQ_GET_IDLE 0x02
232#define HID_REQ_SET_REPORT 0x09
233#define HID_REQ_GET_REPORT 0x01
234#define HID_DESCRIPTOR_TYPE 0x21
235#define HID_REPORT_DESC 0x22
236
240#define USB_MAX_EP0_SIZE 64
245#define SWAPBYTE(addr) (uint16_t)(((uint16_t)(*((uint8_t *)(addr)))) + \
246 (((uint16_t)(*(((uint8_t *)(addr)) + 1))) << 8))
251#ifndef MIN
252#define MIN(a, b) (uint16_t)(((a) < (b)) ? (a) : (b))
253#endif
254
255#ifndef MAX
256#define MAX(a, b) (uint16_t)(((a) > (b)) ? (a) : (b))
257#endif
258
262#define LBYTE(x) ((uint8_t)(x & 0x00FF))
263#define HBYTE(x) ((uint8_t)((x & 0xFF00) >>8))
276typedef enum
277{
278 USB_OK,
279 USB_FAIL,
280 USB_WAIT,
281 USB_NOT_SUPPORT,
282 USB_ERROR,
283}usb_sts_type;
284
288typedef struct
289{
290 uint8_t bmRequestType;
291 uint8_t bRequest;
292 uint16_t wValue;
293 uint16_t wIndex;
295 uint16_t wLength;
296}usb_setup_type;
297
301typedef struct
302{
303 uint8_t bLength;
304 uint8_t bDescriptorType;
305 uint16_t bcdUSB;
306 uint8_t bDeviceClass;
307 uint8_t bDeviceSubClass;
308 uint8_t bDeviceProtocol;
309 uint8_t bMaxPacketSize0;
310 uint16_t idVendor;
311 uint16_t idProduct;
312 uint16_t bcdDevice;
313 uint8_t iManufacturer;
314 uint8_t iProduct;
315 uint8_t iSerialNumber;
316 uint8_t bNumConfigurations;
317}usb_device_desc_type;
318
322typedef struct
323{
324 uint8_t bLength;
325 uint8_t bDescriptorType;
326 uint16_t wTotalLength;
327 uint8_t bNumInterfaces;
328 uint8_t bConfigurationValue;
329 uint8_t iConfiguration;
330 uint8_t bmAttributes;
335 uint8_t bMaxPower;
338}usb_configuration_desc_type;
339
343typedef struct
344{
345 uint8_t bLength;
346 uint8_t bDescriptorType;
347 uint8_t bInterfaceNumber;
348 uint8_t bAlternateSetting;
349 uint8_t bNumEndpoints;
350 uint8_t bInterfaceClass;
351 uint8_t bInterfaceSubClass;
352 uint8_t bInterfaceProtocol;
353 uint8_t iInterface;
354}usb_interface_desc_type;
355
359typedef struct
360{
361 uint8_t bLength;
362 uint8_t bDescriptorType;
363 uint8_t bEndpointAddress;
364 uint8_t bmAttributes;
365 uint16_t wMaxPacketSize;
366 uint8_t bInterval;
367}usb_endpoint_desc_type;
368
372typedef struct
373{
374 uint8_t bLength;
375 uint8_t bDescriptorType;
376}usb_header_desc_type;
377
378
390#ifdef __cplusplus
391}
392#endif
393
394#endif
395
usbd_conn_state
usbd_conn_state
usb device connect state
Definition: usb_std.h:126
USB_CONN_STATE_SUSPENDED
@ USB_CONN_STATE_SUSPENDED
Definition: usb_std.h:130
USB_CONN_STATE_DEFAULT
@ USB_CONN_STATE_DEFAULT
Definition: usb_std.h:127
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
USB_CONN_STATE_ADDRESSED
@ USB_CONN_STATE_ADDRESSED
Definition: usb_std.h:128
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
USB_WAIT
@ USB_WAIT
Definition: usb_std.h:281
USB_ERROR
@ USB_ERROR
Definition: usb_std.h:283
USB_NOT_SUPPORT
@ USB_NOT_SUPPORT
Definition: usb_std.h:282
USB_FAIL
@ USB_FAIL
Definition: usb_std.h:280
linecoding_type
usb cdc class set line coding struct
Definition: usb_std.h:211
linecoding_type::bitrate
uint32_t bitrate
Definition: usb_std.h:212
linecoding_type::data
uint8_t data
Definition: usb_std.h:215
linecoding_type::parity
uint8_t parity
Definition: usb_std.h:214
linecoding_type::format
uint8_t format
Definition: usb_std.h:213
usb_configuration_desc_type
format of standard configuration descriptor
Definition: usb_std.h:324
usb_device_desc_type
format of standard device descriptor
Definition: usb_std.h:303
usb_endpoint_desc_type
format of standard endpoint descriptor
Definition: usb_std.h:361
usb_header_desc_type
format of header
Definition: usb_std.h:374
usb_interface_desc_type
format of standard interface descriptor
Definition: usb_std.h:345
usb_setup_type
format of usb setup data
Definition: usb_std.h:290


AT32F403 Firmwary Library: usbd_core.c Source File

  • middlewares
  • usbd_drivers
  • src
usbd_core.c
Go to the documentation of this file.
1
24#include "usbd_core.h"
25#include "usbd_sdr.h"
26
46void usbd_core_in_handler(usbd_core_type *udev, uint8_t ept_addr)
47{
48 /* get endpoint info*/
49 usb_ept_info *ept_info = &udev->ept_in[ept_addr & 0x7F];
50
51 if(ept_addr == 0)
52 {
53 /* endpoint 0 */
54 if(udev->ept0_sts == USB_EPT0_DATA_IN)
55 {
56 if(ept_info->rem0_len > ept_info->maxpacket)
57 {
58 ept_info->rem0_len -= ept_info->maxpacket;
59 usbd_ept_send(udev, 0, ept_info->trans_buf,
60 MIN(ept_info->rem0_len, ept_info->maxpacket));
61 }
62 /* endpoint 0 */
63 else if(ept_info->last_len == ept_info->maxpacket
64 && ept_info->ept0_slen >= ept_info->maxpacket
65 && ept_info->ept0_slen < udev->ept0_wlength)
66 {
67 ept_info->last_len = 0;
68 usbd_ept_send(udev, 0, 0, 0);
69 usbd_ept_recv(udev, ept_addr, 0, 0);
70 }
71 else
72 {
73
74 if(udev->class_handler->ept0_tx_handler != 0 &&
75 udev->conn_state == USB_CONN_STATE_CONFIGURED)
76 {
77 udev->class_handler->ept0_tx_handler(udev);
78 }
79 usbd_ctrl_recv_status(udev);
80
81 }
82 }
83 }
84 else if(udev->class_handler->in_handler != 0 &&
85 udev->conn_state == USB_CONN_STATE_CONFIGURED)
86 {
87 /* other user define endpoint */
88 udev->class_handler->in_handler(udev, ept_addr);
89 }
90}
91
98void usbd_core_out_handler(usbd_core_type *udev, uint8_t ept_addr)
99{
100 /* get endpoint info*/
101 usb_ept_info *ept_info = &udev->ept_out[ept_addr & 0x7F];
102
103 if(ept_addr == 0)
104 {
105 /* endpoint 0 */
106 if(udev->ept0_sts == USB_EPT0_DATA_OUT)
107 {
108 if(ept_info->rem0_len > ept_info->maxpacket)
109 {
110 ept_info->rem0_len -= ept_info->maxpacket;
111 usbd_ept_recv(udev, ept_addr, ept_info->trans_buf,
112 MIN(ept_info->rem0_len, ept_info->maxpacket));
113 }
114 else
115 {
116 if(udev->class_handler->ept0_rx_handler != 0)
117 {
118 udev->class_handler->ept0_rx_handler(udev);
119 }
120 usbd_ctrl_send_status(udev);
121 }
122 }
123 }
124 else if(udev->class_handler->out_handler != 0 &&
125 udev->conn_state == USB_CONN_STATE_CONFIGURED)
126 {
127 /* other user define endpoint */
128 udev->class_handler->out_handler(udev, ept_addr);
129 }
130}
131
138void usbd_core_setup_handler(usbd_core_type *udev, uint8_t ept_num)
139{
140 /* setup parse */
141 usbd_setup_request_parse(&udev->setup, udev->setup_buffer);
142
143 /* set ept0 status */
144 udev->ept0_sts = USB_EPT0_SETUP;
145 udev->ept0_wlength = udev->setup.wLength;
146
147 switch(udev->setup.bmRequestType & USB_REQ_RECIPIENT_MASK)
148 {
149 case USB_REQ_RECIPIENT_DEVICE:
150 /* recipient device request */
151 usbd_device_request(udev);
152 break;
153 case USB_REQ_RECIPIENT_INTERFACE:
154 /* recipient interface request */
155 usbd_interface_request(udev);
156 break;
157 case USB_REQ_RECIPIENT_ENDPOINT:
158 /* recipient endpoint request */
159 usbd_endpoint_request(udev);
160 break;
161 default:
162 break;
163 }
164}
165
174void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
175{
176 usb_ept_info *ept_info = &udev->ept_in[0];
177
178 ept_info->ept0_slen = len;
179 ept_info->rem0_len = len;
180 udev->ept0_sts = USB_EPT0_DATA_IN;
181
182 usbd_ept_send(udev, 0, buffer, len);
183}
184
193void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
194{
195 usb_ept_info *ept_info = &udev->ept_out[0];
196
197 ept_info->ept0_slen = len;
198 ept_info->rem0_len = len;
199 udev->ept0_sts = USB_EPT0_DATA_OUT;
200
201 usbd_ept_recv(udev, 0, buffer, len);
202}
203
209void usbd_ctrl_send_status(usbd_core_type *udev)
210{
211 udev->ept0_sts = USB_EPT0_STATUS_IN;
212
213 usbd_ept_send(udev, 0, 0, 0);
214}
215
221void usbd_ctrl_recv_status(usbd_core_type *udev)
222{
223 udev->ept0_sts = USB_EPT0_STATUS_OUT;
224
225 usbd_ept_recv(udev, 0, 0, 0);
226}
227
234void usbd_clear_stall(usbd_core_type *udev, uint8_t ept_addr)
235{
236 usb_ept_info *ept_info;
237
238 if(ept_addr & 0x80)
239 {
240 /* in endpoint */
241 ept_info = &udev->ept_in[ept_addr & 0x7F];
242 USB_SET_TXSTS(ept_info->eptn, USB_TX_VALID);
243 }
244 else
245 {
246 /* out endpoint */
247 ept_info = &udev->ept_out[ept_addr & 0x7F];
248 USB_SET_RXSTS(ept_info->eptn, USB_RX_VALID);
249 }
250 ept_info->stall = 0;
251}
252
259void usbd_set_stall(usbd_core_type *udev, uint8_t ept_addr)
260{
261 usb_ept_info *ept_info;
262
263 if(ept_addr & 0x80)
264 {
265 /* in endpoint */
266 ept_info = &udev->ept_in[ept_addr & 0x7F];
267 USB_SET_TXSTS(ept_info->eptn, USB_TX_STALL);
268 }
269 else
270 {
271 /* out endpoint */
272 ept_info = &udev->ept_out[ept_addr & 0x7F];
273 USB_SET_RXSTS(ept_info->eptn, USB_RX_STALL)
274 }
275
276 ept_info->stall = 1;
277}
278
284void usbd_ctrl_unsupport(usbd_core_type *udev)
285{
286 /* return stall status */
287 usbd_set_stall(udev, 0x00);
288 usbd_set_stall(udev, 0x80);
289}
290
299void usbd_ept_send(usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
300{
301 /* get endpoint info struct and register */
302 usb_ept_info *ept_info = &udev->ept_in[ept_addr & 0x7F];
303 uint16_t trs_len = 0;
304 usbd_type *usbx = udev->usb_reg;
305
306 /* set send data buffer and length */
307 ept_info->trans_buf = buffer;
308 ept_info->total_len = len;
309 ept_info->trans_len = 0;
310
311 if(ept_info->total_len > ept_info->maxpacket)
312 {
313 trs_len = ept_info->maxpacket;
314 ept_info->total_len -= trs_len;
315 }
316 else
317 {
318 trs_len = len;
319 ept_info->total_len = 0;
320 }
321
322 ept_info->last_len = trs_len;
323
324 if(ept_info->is_double_buffer == 0)
325 {
326 /* write data to endpoint buffer */
327 usb_write_packet(ept_info->trans_buf, ept_info->tx_addr, trs_len);
328
329 /* set send data length */
330 USB_SET_TXLEN((ept_addr & 0x7F), trs_len);
331 }
332 else
333 {
334 if(usbx->ept_bit[ept_addr & 0x7F].txdts)
335 {
336 USB_SET_EPT_DOUBLE_BUF1_LEN((ept_addr & 0x7F), trs_len, DATA_TRANS_IN);
337 usb_write_packet(ept_info->trans_buf, ept_info->rx_addr, trs_len);
338 }
339 else
340 {
341 USB_SET_EPT_DOUBLE_BUF0_LEN((ept_addr & 0x7F), trs_len, DATA_TRANS_IN);
342 usb_write_packet(ept_info->trans_buf, ept_info->tx_addr, trs_len);
343 }
344 USB_FREE_DB_USER_BUFFER((ept_addr & 0x7F), DATA_TRANS_IN);
345 }
346
347 /* set tx status valid */
348 USB_SET_TXSTS((ept_addr & 0x7F), USB_TX_VALID);
349}
350
359void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
360{
361 /* get endpoint info struct and register */
362 usb_ept_info *ept_info = &udev->ept_out[ept_addr & 0x7F];
363 uint32_t trs_len = 0;
364
365 /* set receive data buffer and length */
366 ept_info->trans_buf = buffer;
367 ept_info->total_len = len;
368 ept_info->trans_len = 0;
369
370 if(ept_info->total_len > ept_info->maxpacket)
371 {
372 trs_len = ept_info->maxpacket;
373 ept_info->total_len -= trs_len;
374 }
375 else
376 {
377 trs_len = len;
378 ept_info->total_len = 0;
379 }
380
381 /* set rx status valid */
382 USB_SET_RXSTS((ept_addr & 0x7F), USB_RX_VALID);
383}
384
385
392uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
393{
394 usb_ept_info *ept = &udev->ept_out[ept_addr & 0x7F];
395 return ept->trans_len;
396}
397
404void usbd_ept_dbuffer_enable(usbd_core_type *udev, uint8_t ept_addr)
405{
406 usb_ept_info *ept_info;
407 if((ept_addr & 0x80) == 0)
408 {
409 /* out endpoint info */
410 ept_info = &udev->ept_out[ept_addr & 0x7F];
411 }
412 else
413 {
414 /* in endpoint info */
415 ept_info = &udev->ept_in[ept_addr & 0x7F];
416 }
417 ept_info->is_double_buffer = TRUE;
418}
419
425void usbd_ept_buf_auto_define(usb_ept_info *ept_info)
426{
427 if(ept_info->is_double_buffer == 0)
428 {
429 if( ept_info->inout == DATA_TRANS_IN )
430 {
431 if(ept_info->tx_addr == 0)
432 ept_info->tx_addr = usb_buffer_malloc(ept_info->maxpacket);
433 }
434 else
435 {
436 if(ept_info->rx_addr == 0)
437 ept_info->rx_addr = usb_buffer_malloc(ept_info->maxpacket);
438 }
439 }
440 else
441 {
442 /* double buffer auto define */
443 if(ept_info->tx_addr == 0)
444 ept_info->tx_addr = usb_buffer_malloc(ept_info->maxpacket);
445 if(ept_info->rx_addr == 0)
446 ept_info->rx_addr = usb_buffer_malloc(ept_info->maxpacket);
447 }
448}
449
450
451
459void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr,
460 uint32_t addr)
461{
462 usb_ept_info *ept_info;
463 if((ept_addr & 0x80) == 0)
464 {
465 /* out endpoint info */
466 ept_info = &udev->ept_out[ept_addr & 0x7F];
467 }
468 else
469 {
470 /* in endpoint info */
471 ept_info = &udev->ept_in[ept_addr & 0x7F];
472 }
473
474 if(ept_info->is_double_buffer == 0)
475 {
476 if( ept_info->inout == DATA_TRANS_IN )
477 {
478 ept_info->tx_addr = addr;
479 }
480 else
481 {
482 ept_info->rx_addr = addr;
483 }
484 }
485 else
486 {
487 /* double buffer malloc */
488 ept_info->tx_addr = addr & 0xFFFF;
489 ept_info->rx_addr = (addr >> 16) & 0xFFFF;
490 }
491}
492
501void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
502{
503 usbd_type *usbx = udev->usb_reg;
504 usb_ept_info *ept_info;
505
506 if((ept_addr & 0x80) == 0)
507 {
508 /* out endpoint info */
509 ept_info = &udev->ept_out[ept_addr & 0x7F];
510 ept_info->inout = DATA_TRANS_OUT;
511 }
512 else
513 {
514 /* in endpoint info */
515 ept_info = &udev->ept_in[ept_addr & 0x7F];
516 ept_info->inout = DATA_TRANS_IN;
517 }
518
519 /* set endpoint maxpacket and type */
520 ept_info->maxpacket = (maxpacket + 1) & 0xFFFE;
521 ept_info->trans_type = ept_type;
522
523#ifdef USB_EPT_AUTO_MALLOC_BUFFER
524 usbd_ept_buf_auto_define(ept_info);
525#endif
526 /* open endpoint */
527 usb_ept_open(usbx, ept_info);
528}
529
536void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
537{
538 usb_ept_info *ept_info;
539 if(ept_addr & 0x80)
540 {
541 /* in endpoint */
542 ept_info = &udev->ept_in[ept_addr & 0x7F];
543 }
544 else
545 {
546 /* out endpoint */
547 ept_info = &udev->ept_out[ept_addr & 0x7F];
548 }
549
550 /* close endpoint */
551 usb_ept_close(udev->usb_reg, ept_info);
552}
553
559void usbd_connect(usbd_core_type *udev)
560{
561 usb_connect(udev->usb_reg);
562}
563
569void usbd_disconnect(usbd_core_type *udev)
570{
571 usb_disconnect(udev->usb_reg);
572}
573
580void usbd_set_device_addr(usbd_core_type *udev, uint8_t address)
581{
582 usb_set_address(udev->usb_reg, address);
583}
584
590 usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
591{
592 return udev->conn_state;
593}
594
600void usbd_remote_wakeup(usbd_core_type *udev)
601{
602 /* set connect state */
603 udev->conn_state = udev->old_conn_state;
604
605 usb_exit_suspend(udev->usb_reg);
606
607 usb_remote_wkup_set(udev->usb_reg);
608
609 usb_delay_ms(10);
610
611 usb_remote_wkup_clear(udev->usb_reg);
612
613}
614
620void usbd_enter_suspend(usbd_core_type *udev)
621{
622 usb_enter_suspend(udev->usb_reg);
623}
624
630void usbd_ept_defaut_init(usbd_core_type *udev)
631{
632 uint8_t i_index = 0;
633 /* init in endpoint info structure */
634 for(i_index = 0; i_index < USB_EPT_MAX_NUM; i_index ++)
635 {
636 udev->ept_in[i_index].eptn = i_index;
637 udev->ept_in[i_index].ept_address = i_index;
638 udev->ept_in[i_index].inout = DATA_TRANS_IN;
639 udev->ept_in[i_index].maxpacket = 0;
640 udev->ept_in[i_index].trans_buf = 0;
641 udev->ept_in[i_index].total_len = 0;
642 udev->ept_in[i_index].tx_addr = 0;
643 udev->ept_in[i_index].rx_addr = 0;
644 }
645
646 /* init out endpoint info structure */
647 for(i_index = 0; i_index < USB_EPT_MAX_NUM; i_index ++)
648 {
649 udev->ept_out[i_index].eptn = i_index;
650 udev->ept_out[i_index].ept_address = i_index;
651 udev->ept_out[i_index].inout = DATA_TRANS_OUT;
652 udev->ept_out[i_index].maxpacket = 0;
653 udev->ept_out[i_index].trans_buf = 0;
654 udev->ept_out[i_index].total_len = 0;
655 udev->ept_out[i_index].rx_addr = 0;
656 udev->ept_out[i_index].tx_addr = 0;
657 }
658 return;
659}
660
670void usbd_core_init(usbd_core_type *udev,
671 usb_reg_type *usb_reg,
672 usbd_class_handler *class_handler,
673 usbd_desc_handler *desc_handler,
674 uint8_t core_id)
675{
676 /* usb class handler */
677 udev->class_handler = class_handler;
678
679 /* usb description handler */
680 udev->desc_handler = desc_handler;
681
682 /* set usb register type */
683 udev->usb_reg = usb_reg;
684
685 /* set usb connect state to default */
686 udev->conn_state = USB_CONN_STATE_DEFAULT;
687
688 /* init in endpoint info structure */
689 usbd_ept_defaut_init(udev);
690
691#ifdef USB_BUFFER_SIZE_EX
692 /* usb buffer size extend 768-1280 byte */
693 usb_usbbufs_enable(usb_reg, TRUE);
694#endif
695
696 /*usb register config */
697 usb_dev_init(udev->usb_reg);
698}
699
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
TRUE
@ TRUE
Definition: at32f403.h:309
USB_RX_STALL
#define USB_RX_STALL
Definition: at32f403_usb.h:123
USB_TX_VALID
#define USB_TX_VALID
Definition: at32f403_usb.h:117
USB_TX_STALL
#define USB_TX_STALL
Definition: at32f403_usb.h:115
USB_RX_VALID
#define USB_RX_VALID
Definition: at32f403_usb.h:125
DATA_TRANS_OUT
@ DATA_TRANS_OUT
Definition: at32f403_usb.h:221
DATA_TRANS_IN
@ DATA_TRANS_IN
Definition: at32f403_usb.h:222
usb_exit_suspend
void usb_exit_suspend(usbd_type *usbx)
usb device exit suspend mode
Definition: at32f403_usb.c:440
usb_write_packet
void usb_write_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
write data from user memory to usb buffer
Definition: at32f403_usb.c:314
usb_disconnect
void usb_disconnect(usbd_type *usbx)
disconnect usb device
Definition: at32f403_usb.c:91
usb_enter_suspend
void usb_enter_suspend(usbd_type *usbx)
usb device enter suspend mode
Definition: at32f403_usb.c:428
usb_remote_wkup_clear
void usb_remote_wkup_clear(usbd_type *usbx)
usb remote wakeup clear
Definition: at32f403_usb.c:463
usb_usbbufs_enable
void usb_usbbufs_enable(usbd_type *usbx, confirm_state state)
mapping usb packet buffer area two mapping intervals are available for packet buffer area,...
Definition: at32f403_usb.c:111
usb_set_address
void usb_set_address(usbd_type *usbx, uint8_t address)
set the host assignment address
Definition: at32f403_usb.c:396
usb_buffer_malloc
uint16_t usb_buffer_malloc(uint16_t maxpacket)
usb auto malloc endpoint buffer
Definition: at32f403_usb.c:473
usb_remote_wkup_set
void usb_remote_wkup_set(usbd_type *usbx)
usb remote wakeup set
Definition: at32f403_usb.c:452
usb_connect
void usb_connect(usbd_type *usbx)
connect usb device
Definition: at32f403_usb.c:79
usb_ept_open
void usb_ept_open(usbd_type *usbx, usb_ept_info *ept_info)
open usb endpoint
Definition: at32f403_usb.c:135
usb_dev_init
void usb_dev_init(usbd_type *usbx)
initialize usb peripheral controller register
Definition: at32f403_usb.c:56
usb_ept_close
void usb_ept_close(usbd_type *usbx, usb_ept_info *ept_info)
close usb endpoint
Definition: at32f403_usb.c:255
USB_SET_EPT_DOUBLE_BUF1_LEN
#define USB_SET_EPT_DOUBLE_BUF1_LEN(eptn, len, dir)
double buffer mode set endpoint buf1 length
Definition: at32f403_usb.h:375
USB_SET_RXSTS
#define USB_SET_RXSTS(ept_num, new_sts)
set usb endpoint rx status
Definition: at32f403_usb.h:262
USB_FREE_DB_USER_BUFFER
#define USB_FREE_DB_USER_BUFFER(eptn, inout)
free buffer used by application
Definition: at32f403_usb.h:460
USB_SET_TXLEN
#define USB_SET_TXLEN(eptn, len)
set endpoint tx/rx transfer length
Definition: at32f403_usb.h:333
USB_SET_TXSTS
#define USB_SET_TXSTS(ept_num, new_sts)
set usb endpoint tx status
Definition: at32f403_usb.h:247
USB_SET_EPT_DOUBLE_BUF0_LEN
#define USB_SET_EPT_DOUBLE_BUF0_LEN(eptn, len, dir)
double buffer mode set endpoint buf0 length
Definition: at32f403_usb.h:357
USB_EPT0_STATUS_OUT
#define USB_EPT0_STATUS_OUT
Definition: usb_std.h:141
usbd_conn_state
usbd_conn_state
usb device connect state
Definition: usb_std.h:126
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_EPT0_DATA_IN
#define USB_EPT0_DATA_IN
Definition: usb_std.h:138
USB_REQ_RECIPIENT_DEVICE
#define USB_REQ_RECIPIENT_DEVICE
usb request recipient
Definition: usb_std.h:52
USB_REQ_RECIPIENT_MASK
#define USB_REQ_RECIPIENT_MASK
Definition: usb_std.h:56
USB_EPT0_DATA_OUT
#define USB_EPT0_DATA_OUT
Definition: usb_std.h:139
USB_EPT0_SETUP
#define USB_EPT0_SETUP
Definition: usb_std.h:137
USB_REQ_RECIPIENT_ENDPOINT
#define USB_REQ_RECIPIENT_ENDPOINT
Definition: usb_std.h:54
USB_EPT0_STATUS_IN
#define USB_EPT0_STATUS_IN
Definition: usb_std.h:140
USB_REQ_RECIPIENT_INTERFACE
#define USB_REQ_RECIPIENT_INTERFACE
Definition: usb_std.h:53
USB_CONN_STATE_DEFAULT
@ USB_CONN_STATE_DEFAULT
Definition: usb_std.h:127
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_set_stall
void usbd_set_stall(usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall.
Definition: usbd_core.c:259
usbd_ept_dbuffer_enable
void usbd_ept_dbuffer_enable(usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer.
Definition: usbd_core.c:404
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ctrl_send_status
void usbd_ctrl_send_status(usbd_core_type *udev)
usb control endpoint send in status
Definition: usbd_core.c:209
usbd_set_device_addr
void usbd_set_device_addr(usbd_core_type *udev, uint8_t address)
usb device set device address.
Definition: usbd_core.c:580
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_core_out_handler
void usbd_core_out_handler(usbd_core_type *udev, uint8_t ept_addr)
usb core out transfer complete handler
Definition: usbd_core.c:98
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_ctrl_recv_status
void usbd_ctrl_recv_status(usbd_core_type *udev)
usb control endpoint send out status
Definition: usbd_core.c:221
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_core_in_handler
void usbd_core_in_handler(usbd_core_type *udev, uint8_t ept_addr)
usb core in transfer complete handler
Definition: usbd_core.c:46
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_addr, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_clear_stall
void usbd_clear_stall(usbd_core_type *udev, uint8_t ept_addr)
clear endpoint stall
Definition: usbd_core.c:234
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_remote_wakeup
void usbd_remote_wakeup(usbd_core_type *udev)
usb device remote wakeup
Definition: usbd_core.c:600
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_ept_defaut_init
void usbd_ept_defaut_init(usbd_core_type *udev)
usb endpoint structure initialization
Definition: usbd_core.c:630
usbd_ept_buf_auto_define
void usbd_ept_buf_auto_define(usb_ept_info *ept_info)
usb auto define endpoint buffer
Definition: usbd_core.c:425
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *class_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_enter_suspend
void usbd_enter_suspend(usbd_core_type *udev)
usb device enter suspend mode
Definition: usbd_core.c:620
usbd_disconnect
void usbd_disconnect(usbd_core_type *udev)
usb device disconnect to host
Definition: usbd_core.c:569
usbd_core_setup_handler
void usbd_core_setup_handler(usbd_core_type *udev, uint8_t ept_num)
usb core setup transfer complete handler
Definition: usbd_core.c:138
usbd_endpoint_request
usb_sts_type usbd_endpoint_request(usbd_core_type *udev)
standard usb endpoint requests
Definition: usbd_sdr.c:419
usbd_setup_request_parse
void usbd_setup_request_parse(usb_setup_type *setup, uint8_t *buf)
usb parse standard setup request
Definition: usbd_sdr.c:53
usbd_device_request
usb_sts_type usbd_device_request(usbd_core_type *udev)
standard usb device requests
Definition: usbd_sdr.c:348
usbd_interface_request
usb_sts_type usbd_interface_request(usbd_core_type *udev)
standard usb interface requests
Definition: usbd_sdr.c:392
usb_ept_info
usb endpoint infomation structure definition
Definition: at32f403_usb.h:499
usb_ept_info::total_len
uint16_t total_len
Definition: at32f403_usb.h:513
usb_ept_info::ept_address
uint8_t ept_address
Definition: at32f403_usb.h:501
usb_ept_info::trans_len
uint16_t trans_len
Definition: at32f403_usb.h:514
usb_ept_info::inout
uint8_t inout
Definition: at32f403_usb.h:502
usb_ept_info::maxpacket
uint16_t maxpacket
Definition: at32f403_usb.h:507
usb_ept_info::ept0_slen
uint16_t ept0_slen
Definition: at32f403_usb.h:519
usb_ept_info::rx_addr
uint16_t rx_addr
Definition: at32f403_usb.h:506
usb_ept_info::trans_buf
uint8_t * trans_buf
Definition: at32f403_usb.h:515
usb_ept_info::stall
uint8_t stall
Definition: at32f403_usb.h:509
usb_ept_info::is_double_buffer
uint8_t is_double_buffer
Definition: at32f403_usb.h:508
usb_ept_info::last_len
uint16_t last_len
Definition: at32f403_usb.h:517
usb_ept_info::rem0_len
uint16_t rem0_len
Definition: at32f403_usb.h:518
usb_ept_info::tx_addr
uint16_t tx_addr
Definition: at32f403_usb.h:505
usb_ept_info::eptn
uint8_t eptn
Definition: at32f403_usb.h:500
usb_ept_info::trans_type
uint8_t trans_type
Definition: at32f403_usb.h:503
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::out_handler
usb_sts_type(* out_handler)(void *udev, uint8_t ept_num)
Definition: usbd_core.h:98
usbd_class_handler::ept0_tx_handler
usb_sts_type(* ept0_tx_handler)(void *udev)
Definition: usbd_core.h:95
usbd_class_handler::ept0_rx_handler
usb_sts_type(* ept0_rx_handler)(void *udev)
Definition: usbd_core.h:96
usbd_class_handler::in_handler
usb_sts_type(* in_handler)(void *udev, uint8_t ept_num)
Definition: usbd_core.h:97
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::conn_state
usbd_conn_state conn_state
Definition: usbd_core.h:124
usbd_core_type::setup_buffer
uint8_t setup_buffer[12]
Definition: usbd_core.h:118
usbd_core_type::ept0_wlength
uint16_t ept0_wlength
Definition: usbd_core.h:122
usbd_core_type::ept0_sts
uint8_t ept0_sts
Definition: usbd_core.h:120
usbd_core_type::old_conn_state
usbd_conn_state old_conn_state
Definition: usbd_core.h:125
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core_type::ept_in
usb_ept_info ept_in[USB_EPT_MAX_NUM]
Definition: usbd_core.h:114
usbd_core_type::ept_out
usb_ept_info ept_out[USB_EPT_MAX_NUM]
Definition: usbd_core.h:115
usbd_core_type::setup
usb_setup_type setup
Definition: usbd_core.h:117
usbd_core_type::usb_reg
usb_reg_type * usb_reg
Definition: usbd_core.h:109
usbd_core_type::desc_handler
usbd_desc_handler * desc_handler
Definition: usbd_core.h:112
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_type
type define usb register all
Definition: at32f403_usb.h:526
usbd_type::txdts
__IO uint32_t txdts
Definition: at32f403_usb.h:537
usbd_type::ept_bit
struct usbd_type::@710::@722 ept_bit[8]
usbd_core.h
usb device core header file
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: usbd_core.h Source File

  • middlewares
  • usbd_drivers
  • inc
usbd_core.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USBD_CORE_H
27#define __USBD_CORE_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34#include "usb_conf.h"
35#include "usb_std.h"
36
52typedef enum
53{
54 USBD_NOP_EVENT,
55 USBD_RESET_EVENT,
56 USBD_SUSPEND_EVENT,
57 USBD_WAKEUP_EVENT,
58 USBD_ERR_EVENT
59}usbd_event_type;
60
64typedef struct
65{
66 uint16_t length;
67 uint8_t *descriptor;
68}usbd_desc_t;
69
73typedef struct
74{
75 usbd_desc_t *(*get_device_descriptor)(void);
76 usbd_desc_t *(*get_device_qualifier)(void);
77 usbd_desc_t *(*get_device_configuration)(void);
78 usbd_desc_t *(*get_device_other_speed)(void);
79 usbd_desc_t *(*get_device_lang_id)(void);
80 usbd_desc_t *(*get_device_manufacturer_string)(void);
81 usbd_desc_t *(*get_device_product_string)(void);
82 usbd_desc_t *(*get_device_serial_string)(void);
83 usbd_desc_t *(*get_device_interface_string)(void);
84 usbd_desc_t *(*get_device_config_string)(void);
85}usbd_desc_handler;
86
90typedef struct
91{
92 usb_sts_type (*init_handler)(void *udev);
93 usb_sts_type (*clear_handler)(void *udev);
94 usb_sts_type (*setup_handler)(void *udev, usb_setup_type *setup);
95 usb_sts_type (*ept0_tx_handler)(void *udev);
96 usb_sts_type (*ept0_rx_handler)(void *udev);
97 usb_sts_type (*in_handler)(void *udev, uint8_t ept_num);
98 usb_sts_type (*out_handler)(void *udev, uint8_t ept_num);
99 usb_sts_type (*sof_handler)(void *udev);
100 usb_sts_type (*event_handler)(void *udev, usbd_event_type event);
101 void *pdata;
102}usbd_class_handler;
103
107typedef struct
108{
109 usb_reg_type *usb_reg;
111 usbd_class_handler *class_handler;
112 usbd_desc_handler *desc_handler;
114 usb_ept_info ept_in[USB_EPT_MAX_NUM];
115 usb_ept_info ept_out[USB_EPT_MAX_NUM];
117 usb_setup_type setup;
118 uint8_t setup_buffer[12];
120 uint8_t ept0_sts;
121 uint8_t speed;
122 uint16_t ept0_wlength;
124 usbd_conn_state conn_state;
125 usbd_conn_state old_conn_state;
127 uint8_t device_addr;
128 uint8_t remote_wakup;
129 uint8_t default_config;
130 uint8_t dev_config;
131 uint16_t config_status;
132}usbd_core_type;
133
141void usbd_core_in_handler(usbd_core_type *udev, uint8_t ept_num);
142void usbd_core_out_handler(usbd_core_type *udev, uint8_t ept_num);
143void usbd_core_setup_handler(usbd_core_type *udev, uint8_t ept_num);
144void usbd_ctrl_unsupport(usbd_core_type *udev);
145void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len);
146void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len);
147void usbd_ctrl_send_status(usbd_core_type *udev);
148void usbd_ctrl_recv_status(usbd_core_type *udev);
149void usbd_set_stall(usbd_core_type *udev, uint8_t ept_addr);
150void usbd_clear_stall(usbd_core_type *udev, uint8_t ept_addr);
151void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket);
152void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr);
153void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len);
154void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len);
155void usbd_connect(usbd_core_type *udev);
156void usbd_disconnect(usbd_core_type *udev);
157void usbd_set_device_addr(usbd_core_type *udev, uint8_t address);
158uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr);
159 usbd_conn_state usbd_connect_state_get(usbd_core_type *udev);
160void usbd_ept_dbuffer_enable(usbd_core_type *udev, uint8_t ept_addr);
161void usbd_ept_buf_auto_define(usb_ept_info *ept_info);
162void usbd_ept_buf_custom_define( usbd_core_type *udev, uint8_t ept_addr,
163 uint32_t addr);
164void usbd_ept_defaut_init(usbd_core_type *udev);
165void usbd_remote_wakeup(usbd_core_type *udev);
166void usbd_enter_suspend(usbd_core_type *udev);
167void usbd_core_init(usbd_core_type *udev,
168 usb_reg_type *usb_reg,
169 usbd_class_handler *dev_handler,
170 usbd_desc_handler *desc_handler,
171 uint8_t core_id);
172
173
186#ifdef __cplusplus
187}
188#endif
189
190#endif
191
buffer
uint8_t buffer[((uint16_t) 320) *((uint16_t) 240)]
Definition: project/at_start_f403/examples/cortex_m4/fpu/src/main.c:41
usbd_conn_state
usbd_conn_state
usb device connect state
Definition: usb_std.h:126
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
usbd_connect_state_get
usbd_conn_state usbd_connect_state_get(usbd_core_type *udev)
get usb connect state
Definition: usbd_core.c:590
usbd_set_stall
void usbd_set_stall(usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall.
Definition: usbd_core.c:259
usbd_ept_dbuffer_enable
void usbd_ept_dbuffer_enable(usbd_core_type *udev, uint8_t ept_addr)
enable endpoint double buffer.
Definition: usbd_core.c:404
usbd_ept_close
void usbd_ept_close(usbd_core_type *udev, uint8_t ept_addr)
usb close endpoint
Definition: usbd_core.c:536
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_ctrl_send_status
void usbd_ctrl_send_status(usbd_core_type *udev)
usb control endpoint send in status
Definition: usbd_core.c:209
usbd_set_device_addr
void usbd_set_device_addr(usbd_core_type *udev, uint8_t address)
usb device set device address.
Definition: usbd_core.c:580
usbd_core_in_handler
void usbd_core_in_handler(usbd_core_type *udev, uint8_t ept_num)
usb core in transfer complete handler
Definition: usbd_core.c:46
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_ctrl_recv_status
void usbd_ctrl_recv_status(usbd_core_type *udev)
usb control endpoint send out status
Definition: usbd_core.c:221
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_core_out_handler
void usbd_core_out_handler(usbd_core_type *udev, uint8_t ept_num)
usb core out transfer complete handler
Definition: usbd_core.c:98
usbd_clear_stall
void usbd_clear_stall(usbd_core_type *udev, uint8_t ept_addr)
clear endpoint stall
Definition: usbd_core.c:234
usbd_get_recv_len
uint32_t usbd_get_recv_len(usbd_core_type *udev, uint8_t ept_addr)
usb endpoint get receive data length
Definition: usbd_core.c:392
usbd_remote_wakeup
void usbd_remote_wakeup(usbd_core_type *udev)
usb device remote wakeup
Definition: usbd_core.c:600
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_ept_defaut_init
void usbd_ept_defaut_init(usbd_core_type *udev)
usb endpoint structure initialization
Definition: usbd_core.c:630
usbd_ept_buf_auto_define
void usbd_ept_buf_auto_define(usb_ept_info *ept_info)
usb auto define endpoint buffer
Definition: usbd_core.c:425
usbd_ctrl_recv
void usbd_ctrl_recv(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint receive data
Definition: usbd_core.c:193
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_enter_suspend
void usbd_enter_suspend(usbd_core_type *udev)
usb device enter suspend mode
Definition: usbd_core.c:620
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_disconnect
void usbd_disconnect(usbd_core_type *udev)
usb device disconnect to host
Definition: usbd_core.c:569
usbd_core_setup_handler
void usbd_core_setup_handler(usbd_core_type *udev, uint8_t ept_num)
usb core setup transfer complete handler
Definition: usbd_core.c:138
usbd_event_type
usbd_event_type
usb device event
Definition: usbd_core.h:53
USBD_ERR_EVENT
@ USBD_ERR_EVENT
Definition: usbd_core.h:58
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
USBD_NOP_EVENT
@ USBD_NOP_EVENT
Definition: usbd_core.h:54
usb_ept_info
usb endpoint infomation structure definition
Definition: at32f403_usb.h:499
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usbd_class_handler
usb device class handler
Definition: usbd_core.h:91
usbd_class_handler::pdata
void * pdata
Definition: usbd_core.h:101
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::conn_state
usbd_conn_state conn_state
Definition: usbd_core.h:124
usbd_core_type::default_config
uint8_t default_config
Definition: usbd_core.h:129
usbd_core_type::remote_wakup
uint8_t remote_wakup
Definition: usbd_core.h:128
usbd_core_type::ept0_wlength
uint16_t ept0_wlength
Definition: usbd_core.h:122
usbd_core_type::ept0_sts
uint8_t ept0_sts
Definition: usbd_core.h:120
usbd_core_type::old_conn_state
usbd_conn_state old_conn_state
Definition: usbd_core.h:125
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core_type::config_status
uint16_t config_status
Definition: usbd_core.h:131
usbd_core_type::speed
uint8_t speed
Definition: usbd_core.h:121
usbd_core_type::dev_config
uint8_t dev_config
Definition: usbd_core.h:130
usbd_core_type::device_addr
uint8_t device_addr
Definition: usbd_core.h:127
usbd_core_type::setup
usb_setup_type setup
Definition: usbd_core.h:117
usbd_core_type::usb_reg
usb_reg_type * usb_reg
Definition: usbd_core.h:109
usbd_core_type::desc_handler
usbd_desc_handler * desc_handler
Definition: usbd_core.h:112
usbd_desc_handler
usb device descriptor handler
Definition: usbd_core.h:74
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usbd_type
type define usb register all
Definition: at32f403_usb.h:526
usb_std.h
usb standard header file


AT32F403 Firmwary Library: usbd_int.c Source File

  • middlewares
  • usbd_drivers
  • src
usbd_int.c
Go to the documentation of this file.
1
24#include "usbd_int.h"
25
44void usbd_irq_handler(usbd_core_type *udev)
45{
46 usbd_type *usbx = udev->usb_reg;
47 uint32_t sts_val = usbx->intsts;
48 uint32_t sts_ien = usbx->ctrl;
49
50 if(sts_val & USB_TC_FLAG)
51 {
52 /* endpoint tc interrupt handler */
53 usbd_ept_loop_handler(udev);
54 }
55
56 if(sts_val & USB_RST_FLAG)
57 {
58 /* clear reset flag */
59 usb_flag_clear(usbx, USB_RST_FLAG);
60
61 /* reset interrupt handler */
62 usbd_reset_handler(udev);
63 }
64
65 if((sts_val & USB_SOF_FLAG) &&
66 (sts_ien & USB_SOF_INT))
67 {
68 /* clear sof flag */
69 usb_flag_clear(usbx, USB_SOF_FLAG);
70
71 /* sof interrupt handler */
72 usbd_sof_handler(udev);
73 }
74
75 if((sts_val & USB_LSOF_FLAG) &&
76 (sts_ien & USB_LSOF_INT))
77 {
78 /* clear lsof flag */
79 usb_flag_clear(usbx, USB_LSOF_FLAG);
80 }
81
82 if((sts_val & USB_SP_FLAG) &&
83 (sts_ien & USB_SP_INT))
84 {
85 /* clear suspend flag */
86 usb_flag_clear(usbx, USB_SP_FLAG);
87
88 /* usb suspend interrupt handler */
89 usbd_suspend_handler(udev);
90 }
91
92 if((sts_val & USB_WK_FLAG) &&
93 (sts_ien & USB_WK_INT))
94 {
95 /* usb wakeup interrupt handler */
96 usbd_wakeup_handler(udev);
97
98 /* clear wakeup flag */
99 usb_flag_clear(usbx, USB_WK_FLAG);
100 }
101}
102
109void usbd_eptn_handler(usbd_core_type *udev, usb_ept_number_type ept_num)
110{
111 usbd_type *usbx = udev->usb_reg;
112 usb_ept_info *ept_info;
113 uint32_t ept_val = usbx->ept[ept_num];
114 uint16_t length;
115
116 /* in interrupt request */
117 if(ept_val & USB_TXTC)
118 {
119 /* get endpoint register and in transfer info struct */
120 ept_info = &udev->ept_in[ept_num];
121
122 /* clear endpoint tc flag */
123 USB_CLEAR_TXTC(ept_num);
124
125 /* get endpoint tx length */
126 ept_info->trans_len = USB_GET_TX_LEN(ept_num);
127
128 /* offset the trans buffer */
129 ept_info->trans_buf += ept_info->trans_len;
130
131 if(ept_info->total_len == 0 || ept_num == USB_EPT0)
132 {
133 /* in transfer complete */
134 usbd_core_in_handler(udev, ept_num);
135 }
136 else
137 {
138 /* endpoint continue send data */
139 usbd_ept_send(udev, ept_num, ept_info->trans_buf, ept_info->total_len);
140 }
141 /* set the host assignment address */
142 if(udev->conn_state == USB_CONN_STATE_ADDRESSED && udev->device_addr > 0)
143 {
144 usb_set_address(udev->usb_reg, udev->device_addr);
145 udev->device_addr = 0;
146 }
147 }
148 else
149 {
150 /* setup and out interrupt request */
151
152 /* get endpoint register and out transfer info struct */
153 ept_info = &udev->ept_out[ept_num];
154
155 if((ept_val & USB_SETUPTC) != 0)
156 {
157 /* endpoint setup interrupt request */
158
159 /* get endpoint received data length */
160 ept_info->trans_len = USB_GET_RX_LEN(ept_num);
161
162 /* read endpoint received data */
163 usb_read_packet(udev->setup_buffer, ept_info->rx_addr, ept_info->trans_len);
164
165 /* clear endpoint rx tc flag */
166 USB_CLEAR_RXTC(USB_EPT0);
167
168 /* endpoint setup complete handler */
169 usbd_core_setup_handler(udev, ept_num);
170 }
171 else if(ept_val & USB_RXTC )
172 {
173 /* endpoint out interrupt request */
174 USB_CLEAR_RXTC(ept_num);
175
176 if(ept_info->is_double_buffer == 0)
177 {
178 /* get endpoint received data length */
179 length = USB_GET_RX_LEN(ept_num);
180
181 /* read endpoint received data */
182 usb_read_packet(ept_info->trans_buf, ept_info->rx_addr, length);
183 }
184 else
185 {
186 if( ept_val & USB_RXDTS)
187 {
188 length = USB_DBUF0_GET_LEN(ept_num);
189 usb_read_packet(ept_info->trans_buf, ept_info->tx_addr, length);
190 }
191 else
192 {
193 length = USB_DBUF1_GET_LEN(ept_num);
194 usb_read_packet(ept_info->trans_buf, ept_info->rx_addr, length);
195 }
196 USB_FREE_DB_USER_BUFFER(ept_num, DATA_TRANS_OUT);
197 }
198
199 /* set received data length */
200 ept_info->trans_len += length;
201 ept_info->trans_buf += length;
202
203 if(ept_info->total_len == 0 || length < ept_info->maxpacket || ept_num == USB_EPT0)
204 {
205 /* out transfer complete */
206 usbd_core_out_handler(udev, ept_num);
207 }
208 else
209 {
210 /* endpoint continue receive data */
211 usbd_ept_recv(udev, ept_num, ept_info->trans_buf, ept_info->total_len);
212 }
213 }
214 }
215}
216
222void usbd_ept_loop_handler(usbd_core_type *udev)
223{
224 usbd_type *usbx = udev->usb_reg;
225 usb_ept_number_type ept_num = USB_EPT0;
226 uint32_t sts_val;
227
228 while((sts_val = usbx->intsts) & USB_TC_FLAG)
229 {
230 /* get the interrupt endpoint number */
231 ept_num = (usb_ept_number_type)(sts_val & USB_EPT_NUM_FLAG);
232
233 usbd_eptn_handler(udev, ept_num);
234 }
235}
236
242void usbd_reset_handler(usbd_core_type *udev)
243{
244 /* free usb buffer */
245 usb_buffer_free();
246
247 usbd_ept_defaut_init(udev);
248#ifndef USB_EPT_AUTO_MALLOC_BUFFER
249 usbd_ept_buf_custom_define(udev, 0x80, EPT0_TX_ADDR);
250 usbd_ept_buf_custom_define(udev, 0x00, EPT0_RX_ADDR);
251#endif
252
253 /* open endpoint 0 out */
254 usbd_ept_open(udev, 0x00, EPT_CONTROL_TYPE, 0x40);
255
256 /* open endpoint 0 in */
257 usbd_ept_open(udev, 0x80, EPT_CONTROL_TYPE, 0x40);
258
259 /* set device address to 0 */
260 usb_set_address(udev->usb_reg, 0);
261
262 /* usb connect state set to default */
263 udev->conn_state = USB_CONN_STATE_DEFAULT;
264
265 /* user define reset event */
266 if(udev->class_handler->event_handler)
267 udev->class_handler->event_handler(udev, USBD_RESET_EVENT);
268}
269
275void usbd_sof_handler(usbd_core_type *udev)
276{
277 /* user sof handler in class define*/
278 if(udev->class_handler->sof_handler)
279 udev->class_handler->sof_handler(udev);
280}
281
287void usbd_suspend_handler(usbd_core_type *udev)
288{
289 /* save connect state */
290 udev->old_conn_state = udev->conn_state;
291
292 /* set current state to suspend */
293 udev->conn_state = USB_CONN_STATE_SUSPENDED;
294
295 /* enter suspend mode */
296 usbd_enter_suspend(udev);
297
298 /* user define suspend event */
299 if(udev->class_handler->event_handler)
300 udev->class_handler->event_handler(udev, USBD_SUSPEND_EVENT);
301}
302
308void usbd_wakeup_handler(usbd_core_type *udev)
309{
310 /* exit suspend mode */
311 usb_exit_suspend(udev->usb_reg);
312
313 /* restore connect state */
314 udev->conn_state = udev->old_conn_state;
315
316 /* user define wakeup event */
317 if(udev->class_handler->event_handler)
318 udev->class_handler->event_handler(udev, USBD_WAKEUP_EVENT);
319}
320
EPT0_TX_ADDR
#define EPT0_TX_ADDR
usb endpoint max num define
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:72
EPT0_RX_ADDR
#define EPT0_RX_ADDR
Definition: project/at_start_f403/examples/usb_device/vcp_loopback/inc/usb_conf.h:73
USB_RXTC
#define USB_RXTC
Definition: at32f403_usb.h:99
USB_SETUPTC
#define USB_SETUPTC
Definition: at32f403_usb.h:96
USB_RXDTS
#define USB_RXDTS
Definition: at32f403_usb.h:98
USB_TXTC
#define USB_TXTC
Definition: at32f403_usb.h:93
usb_ept_number_type
usb_ept_number_type
usb endpoint number define
Definition: at32f403_usb.h:179
DATA_TRANS_OUT
@ DATA_TRANS_OUT
Definition: at32f403_usb.h:221
USB_EPT0
@ USB_EPT0
Definition: at32f403_usb.h:180
EPT_CONTROL_TYPE
@ EPT_CONTROL_TYPE
Definition: at32f403_usb.h:201
usb_exit_suspend
void usb_exit_suspend(usbd_type *usbx)
usb device exit suspend mode
Definition: at32f403_usb.c:440
usb_buffer_free
void usb_buffer_free(void)
free usb endpoint buffer
Definition: at32f403_usb.c:485
usb_flag_clear
void usb_flag_clear(usbd_type *usbx, uint16_t flag)
clear flag of usb.
Definition: at32f403_usb.c:571
usb_read_packet
void usb_read_packet(uint8_t *pusr_buf, uint16_t offset_addr, uint16_t nbytes)
read data from usb buffer to user buffer
Definition: at32f403_usb.c:341
usb_set_address
void usb_set_address(usbd_type *usbx, uint8_t address)
set the host assignment address
Definition: at32f403_usb.c:396
USB_EPT_NUM_FLAG
#define USB_EPT_NUM_FLAG
Definition: at32f403_usb.h:70
USB_SOF_FLAG
#define USB_SOF_FLAG
Definition: at32f403_usb.h:73
USB_WK_FLAG
#define USB_WK_FLAG
Definition: at32f403_usb.h:76
USB_TC_FLAG
#define USB_TC_FLAG
Definition: at32f403_usb.h:79
USB_SP_FLAG
#define USB_SP_FLAG
Definition: at32f403_usb.h:75
USB_RST_FLAG
#define USB_RST_FLAG
Definition: at32f403_usb.h:74
USB_LSOF_FLAG
#define USB_LSOF_FLAG
Definition: at32f403_usb.h:72
USB_SP_INT
#define USB_SP_INT
Definition: at32f403_usb.h:55
USB_WK_INT
#define USB_WK_INT
Definition: at32f403_usb.h:56
USB_LSOF_INT
#define USB_LSOF_INT
Definition: at32f403_usb.h:52
USB_SOF_INT
#define USB_SOF_INT
Definition: at32f403_usb.h:53
USB_GET_TX_LEN
#define USB_GET_TX_LEN(eptn)
get usb endpoint tx/rx data length
Definition: at32f403_usb.h:284
USB_FREE_DB_USER_BUFFER
#define USB_FREE_DB_USER_BUFFER(eptn, inout)
free buffer used by application
Definition: at32f403_usb.h:460
USB_DBUF0_GET_LEN
#define USB_DBUF0_GET_LEN(eptn)
double buffer mode get endpoint buf0/buf1 data length
Definition: at32f403_usb.h:292
USB_CLEAR_TXTC
#define USB_CLEAR_TXTC(eptn)
clear tx/rx transfer completed flag
Definition: at32f403_usb.h:476
USB_DBUF1_GET_LEN
#define USB_DBUF1_GET_LEN(eptn)
Definition: at32f403_usb.h:293
USB_CLEAR_RXTC
#define USB_CLEAR_RXTC(eptn)
Definition: at32f403_usb.h:477
USB_GET_RX_LEN
#define USB_GET_RX_LEN(eptn)
Definition: at32f403_usb.h:285
USB_CONN_STATE_SUSPENDED
@ USB_CONN_STATE_SUSPENDED
Definition: usb_std.h:130
USB_CONN_STATE_DEFAULT
@ USB_CONN_STATE_DEFAULT
Definition: usb_std.h:127
USB_CONN_STATE_ADDRESSED
@ USB_CONN_STATE_ADDRESSED
Definition: usb_std.h:128
usbd_ept_recv
void usbd_ept_recv(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint receive data
Definition: usbd_core.c:359
usbd_core_in_handler
void usbd_core_in_handler(usbd_core_type *udev, uint8_t ept_num)
usb core in transfer complete handler
Definition: usbd_core.c:46
usbd_ept_buf_custom_define
void usbd_ept_buf_custom_define(usbd_core_type *udev, uint8_t ept_addr, uint32_t addr)
usb custom define endpoint buffer
Definition: usbd_core.c:459
usbd_ept_open
void usbd_ept_open(usbd_core_type *udev, uint8_t ept_addr, uint8_t ept_type, uint16_t maxpacket)
usb open endpoint
Definition: usbd_core.c:501
usbd_core_out_handler
void usbd_core_out_handler(usbd_core_type *udev, uint8_t ept_num)
usb core out transfer complete handler
Definition: usbd_core.c:98
usbd_ept_defaut_init
void usbd_ept_defaut_init(usbd_core_type *udev)
usb endpoint structure initialization
Definition: usbd_core.c:630
usbd_enter_suspend
void usbd_enter_suspend(usbd_core_type *udev)
usb device enter suspend mode
Definition: usbd_core.c:620
usbd_ept_send
void usbd_ept_send(usbd_core_type *udev, uint8_t ept_num, uint8_t *buffer, uint16_t len)
usb endpoint send data
Definition: usbd_core.c:299
usbd_core_setup_handler
void usbd_core_setup_handler(usbd_core_type *udev, uint8_t ept_num)
usb core setup transfer complete handler
Definition: usbd_core.c:138
USBD_SUSPEND_EVENT
@ USBD_SUSPEND_EVENT
Definition: usbd_core.h:56
USBD_RESET_EVENT
@ USBD_RESET_EVENT
Definition: usbd_core.h:55
USBD_WAKEUP_EVENT
@ USBD_WAKEUP_EVENT
Definition: usbd_core.h:57
usbd_sof_handler
void usbd_sof_handler(usbd_core_type *udev)
usb device sof interrupt request handler.
Definition: usbd_int.c:275
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
usbd_eptn_handler
void usbd_eptn_handler(usbd_core_type *udev, usb_ept_number_type ept_num)
usb device endpoint request handler.
Definition: usbd_int.c:109
usbd_reset_handler
void usbd_reset_handler(usbd_core_type *udev)
usb device reset interrupt request handler.
Definition: usbd_int.c:242
usbd_wakeup_handler
void usbd_wakeup_handler(usbd_core_type *udev)
usb device wakup interrupt request handler.
Definition: usbd_int.c:308
usbd_ept_loop_handler
void usbd_ept_loop_handler(usbd_core_type *udev)
usb device endpoint loop handler.
Definition: usbd_int.c:222
usbd_suspend_handler
void usbd_suspend_handler(usbd_core_type *udev)
usb device suspend interrupt request handler.
Definition: usbd_int.c:287
usb_ept_info
usb endpoint infomation structure definition
Definition: at32f403_usb.h:499
usb_ept_info::total_len
uint16_t total_len
Definition: at32f403_usb.h:513
usb_ept_info::trans_len
uint16_t trans_len
Definition: at32f403_usb.h:514
usb_ept_info::rx_addr
uint16_t rx_addr
Definition: at32f403_usb.h:506
usb_ept_info::trans_buf
uint8_t * trans_buf
Definition: at32f403_usb.h:515
usb_ept_info::is_double_buffer
uint8_t is_double_buffer
Definition: at32f403_usb.h:508
usb_ept_info::tx_addr
uint16_t tx_addr
Definition: at32f403_usb.h:505
usbd_class_handler::event_handler
usb_sts_type(* event_handler)(void *udev, usbd_event_type event)
Definition: usbd_core.h:100
usbd_class_handler::sof_handler
usb_sts_type(* sof_handler)(void *udev)
Definition: usbd_core.h:99
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::conn_state
usbd_conn_state conn_state
Definition: usbd_core.h:124
usbd_core_type::setup_buffer
uint8_t setup_buffer[12]
Definition: usbd_core.h:118
usbd_core_type::old_conn_state
usbd_conn_state old_conn_state
Definition: usbd_core.h:125
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core_type::ept_in
usb_ept_info ept_in[USB_EPT_MAX_NUM]
Definition: usbd_core.h:114
usbd_core_type::device_addr
uint8_t device_addr
Definition: usbd_core.h:127
usbd_core_type::ept_out
usb_ept_info ept_out[USB_EPT_MAX_NUM]
Definition: usbd_core.h:115
usbd_core_type::usb_reg
usb_reg_type * usb_reg
Definition: usbd_core.h:109
usbd_type
type define usb register all
Definition: at32f403_usb.h:526
usbd_type::intsts
__IO uint32_t intsts
Definition: at32f403_usb.h:582
usbd_type::ept
__IO uint32_t ept[8]
Definition: at32f403_usb.h:532
usbd_type::ctrl
__IO uint32_t ctrl
Definition: at32f403_usb.h:556
usbd_int.h


AT32F403 Firmwary Library: usbd_int.h Source File

  • middlewares
  • usbd_drivers
  • inc
usbd_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_INT_H
27#define __USB_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "usbd_core.h"
36
48void usbd_irq_handler(usbd_core_type *udev);
49void usbd_ept_loop_handler(usbd_core_type *udev);
50void usbd_eptn_handler(usbd_core_type *udev, usb_ept_number_type ept_num);
51void usbd_reset_handler(usbd_core_type *udev);
52void usbd_sof_handler(usbd_core_type *udev);
53void usbd_suspend_handler(usbd_core_type *udev);
54void usbd_wakeup_handler(usbd_core_type *udev);
55
68#ifdef __cplusplus
69}
70#endif
71#endif
72
usb_ept_number_type
usb_ept_number_type
usb endpoint number define
Definition: at32f403_usb.h:179
usbd_sof_handler
void usbd_sof_handler(usbd_core_type *udev)
usb device sof interrupt request handler.
Definition: usbd_int.c:275
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
usbd_eptn_handler
void usbd_eptn_handler(usbd_core_type *udev, usb_ept_number_type ept_num)
usb device endpoint request handler.
Definition: usbd_int.c:109
usbd_reset_handler
void usbd_reset_handler(usbd_core_type *udev)
usb device reset interrupt request handler.
Definition: usbd_int.c:242
usbd_wakeup_handler
void usbd_wakeup_handler(usbd_core_type *udev)
usb device wakup interrupt request handler.
Definition: usbd_int.c:308
usbd_ept_loop_handler
void usbd_ept_loop_handler(usbd_core_type *udev)
usb device endpoint loop handler.
Definition: usbd_int.c:222
usbd_suspend_handler
void usbd_suspend_handler(usbd_core_type *udev)
usb device suspend interrupt request handler.
Definition: usbd_int.c:287
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: usbd_sdr.c Source File

  • middlewares
  • usbd_drivers
  • src
usbd_sdr.c
Go to the documentation of this file.
1
24#include "usbd_sdr.h"
25
39static usb_sts_type usbd_get_descriptor(usbd_core_type *udev);
40static usb_sts_type usbd_set_address(usbd_core_type *udev);
41static usb_sts_type usbd_get_status(usbd_core_type *udev);
42static usb_sts_type usbd_clear_feature(usbd_core_type *udev);
43static usb_sts_type usbd_set_feature(usbd_core_type *udev);
44static usb_sts_type usbd_get_configuration(usbd_core_type *udev);
45static usb_sts_type usbd_set_configuration(usbd_core_type *udev);
46
53void usbd_setup_request_parse(usb_setup_type *setup, uint8_t *buf)
54{
55 setup->bmRequestType = *(uint8_t *) buf;
56 setup->bRequest = *(uint8_t *) (buf + 1);
57 setup->wValue = SWAPBYTE(buf + 2);
58 setup->wIndex = SWAPBYTE(buf + 4);
59 setup->wLength = SWAPBYTE(buf + 6);
60}
61
67static usb_sts_type usbd_get_descriptor(usbd_core_type *udev)
68{
69 usb_sts_type ret = USB_OK;
70 uint16_t len = 0;
71 usbd_desc_t *desc = NULL;
72 uint8_t desc_type = udev->setup.wValue >> 8;
73 switch(desc_type)
74 {
75 case USB_DESCIPTOR_TYPE_DEVICE:
76 desc = udev->desc_handler->get_device_descriptor();
77 break;
78 case USB_DESCIPTOR_TYPE_CONFIGURATION:
79 desc = udev->desc_handler->get_device_configuration();
80 break;
81 case USB_DESCIPTOR_TYPE_STRING:
82 {
83 uint8_t str_desc = (uint8_t)udev->setup.wValue;
84 switch(str_desc)
85 {
86 case USB_LANGID_STRING:
87 desc = udev->desc_handler->get_device_lang_id();
88 break;
89 case USB_MFC_STRING:
90 desc = udev->desc_handler->get_device_manufacturer_string();
91 break;
92 case USB_PRODUCT_STRING:
93 desc = udev->desc_handler->get_device_product_string();
94 break;
95 case USB_SERIAL_STRING:
96 desc = udev->desc_handler->get_device_serial_string();
97 break;
98 case USB_CONFIG_STRING:
99 desc = udev->desc_handler->get_device_config_string();
100 break;
101 case USB_INTERFACE_STRING:
102 desc = udev->desc_handler->get_device_interface_string();
103 break;
104 default:
105 udev->class_handler->setup_handler(udev, &udev->setup);
106 return ret;
107 }
108 break;
109 }
110 case USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER:
111 usbd_ctrl_unsupport(udev);
112 break;
113 case USB_DESCIPTOR_TYPE_OTHER_SPEED:
114 usbd_ctrl_unsupport(udev);
115 return ret;
116 default:
117 usbd_ctrl_unsupport(udev);
118 return ret;
119 }
120
121 if(desc != NULL)
122 {
123 if((desc->length != 0) && (udev->setup.wLength != 0))
124 {
125 len = MIN(desc->length , udev->setup.wLength);
126 usbd_ctrl_send(udev, desc->descriptor, len);
127 }
128 }
129 return ret;
130}
131
137static usb_sts_type usbd_set_address(usbd_core_type *udev)
138{
139 usb_sts_type ret = USB_OK;
140 usb_setup_type *setup = &udev->setup;
141 uint8_t dev_addr;
142
143 /* if wIndex or wLength are non-zero, then the behavior of
144 the device is not specified
145 */
146 if(setup->wIndex == 0 && setup->wLength == 0)
147 {
148 dev_addr = (uint8_t)(setup->wValue) & 0x7f;
149
150 /* device behavior when this request is received
151 while the device is in the configured state is not specified.*/
152 if(udev->conn_state == USB_CONN_STATE_CONFIGURED )
153 {
154 usbd_ctrl_unsupport(udev);
155 }
156 else
157 {
158 udev->device_addr = dev_addr;
159
160 if(dev_addr != 0)
161 {
162 udev->conn_state = USB_CONN_STATE_ADDRESSED;
163 }
164 else
165 {
166 udev->conn_state = USB_CONN_STATE_DEFAULT;
167 }
168 usbd_ctrl_send_status(udev);
169 }
170 }
171 else
172 {
173 usbd_ctrl_unsupport(udev);
174 }
175 return ret;
176}
177
183static usb_sts_type usbd_get_status(usbd_core_type *udev)
184{
185 usb_sts_type ret = USB_OK;
186 switch(udev->conn_state)
187 {
188 case USB_CONN_STATE_ADDRESSED:
189 case USB_CONN_STATE_CONFIGURED:
190 if(udev->remote_wakup)
191 {
192 udev->config_status |= USB_CONF_REMOTE_WAKEUP;
193 }
194 usbd_ctrl_send(udev, (uint8_t *)(&udev->config_status), 2);
195 break;
196 default:
197 usbd_ctrl_unsupport(udev);
198 break;
199 }
200 return ret;
201}
202
208static usb_sts_type usbd_clear_feature(usbd_core_type *udev)
209{
210 usb_sts_type ret = USB_OK;
211 usb_setup_type *setup = &udev->setup;
212 switch(udev->conn_state)
213 {
214 case USB_CONN_STATE_ADDRESSED:
215 case USB_CONN_STATE_CONFIGURED:
216 if(setup->wValue == USB_FEATURE_REMOTE_WAKEUP)
217 {
218 udev->remote_wakup = 0;
219 udev->config_status &= ~USB_CONF_REMOTE_WAKEUP;
220 udev->class_handler->setup_handler(udev, &udev->setup);
221 usbd_ctrl_send_status(udev);
222 }
223 break;
224 default:
225 usbd_ctrl_unsupport(udev);
226 break;
227 }
228 return ret;
229}
230
236static usb_sts_type usbd_set_feature(usbd_core_type *udev)
237{
238 usb_sts_type ret = USB_OK;
239 usb_setup_type *setup = &udev->setup;
240 if(setup->wValue == USB_FEATURE_REMOTE_WAKEUP)
241 {
242 udev->remote_wakup = 1;
243 udev->class_handler->setup_handler(udev, &udev->setup);
244 usbd_ctrl_send_status(udev);
245 }
246 return ret;
247}
248
254static usb_sts_type usbd_get_configuration(usbd_core_type *udev)
255{
256 usb_sts_type ret = USB_OK;
257 usb_setup_type *setup = &udev->setup;
258 if(setup->wLength != 1)
259 {
260 usbd_ctrl_unsupport(udev);
261 }
262 else
263 {
264 switch(udev->conn_state)
265 {
266 case USB_CONN_STATE_ADDRESSED:
267 udev->default_config = 0;
268 usbd_ctrl_send(udev, (uint8_t *)(&udev->default_config), 1);
269 break;
270 case USB_CONN_STATE_CONFIGURED:
271 usbd_ctrl_send(udev, (uint8_t *)(&udev->dev_config), 1);
272 break;
273 default:
274 usbd_ctrl_unsupport(udev);
275 break;
276 }
277 }
278 return ret;
279}
280
286static usb_sts_type usbd_set_configuration(usbd_core_type *udev)
287{
288 usb_sts_type ret = USB_OK;
289 static uint8_t config_value;
290 usb_setup_type *setup = &udev->setup;
291 config_value = (uint8_t)setup->wValue;
292
293 if(setup->wIndex == 0 && setup->wLength == 0)
294 {
295 switch(udev->conn_state)
296 {
297 case USB_CONN_STATE_ADDRESSED:
298 if(config_value)
299 {
300 udev->dev_config = config_value;
301 udev->conn_state = USB_CONN_STATE_CONFIGURED;
302 udev->class_handler->init_handler(udev);
303 usbd_ctrl_send_status(udev);
304 }
305 else
306 {
307 usbd_ctrl_send_status(udev);
308 }
309
310 break;
311 case USB_CONN_STATE_CONFIGURED:
312 if(config_value == 0)
313 {
314 udev->conn_state = USB_CONN_STATE_ADDRESSED;
315 udev->dev_config = config_value;
316 udev->class_handler->clear_handler(udev);
317 usbd_ctrl_send_status(udev);
318 }
319 else if(config_value == udev->dev_config)
320 {
321 udev->class_handler->clear_handler(udev);
322 udev->dev_config = config_value;
323 udev->class_handler->init_handler(udev);
324 usbd_ctrl_send_status(udev);
325 }
326 else
327 {
328 usbd_ctrl_send_status(udev);
329 }
330 break;
331 default:
332 usbd_ctrl_unsupport(udev);
333 break;
334 }
335 }
336 else
337 {
338 usbd_ctrl_unsupport(udev);
339 }
340 return ret;
341}
342
348 usb_sts_type usbd_device_request(usbd_core_type *udev)
349{
350 usb_sts_type ret = USB_OK;
351 usb_setup_type *setup = &udev->setup;
352 if((setup->bmRequestType & USB_REQ_TYPE_RESERVED) != USB_REQ_TYPE_STANDARD)
353 {
354 udev->class_handler->setup_handler(udev, &udev->setup);
355 return ret;
356 }
357 switch(udev->setup.bRequest)
358 {
359 case USB_STD_REQ_GET_STATUS:
360 usbd_get_status(udev);
361 break;
362 case USB_STD_REQ_CLEAR_FEATURE:
363 usbd_clear_feature(udev);
364 break;
365 case USB_STD_REQ_SET_FEATURE:
366 usbd_set_feature(udev);
367 break;
368 case USB_STD_REQ_SET_ADDRESS:
369 usbd_set_address(udev);
370 break;
371 case USB_STD_REQ_GET_DESCRIPTOR:
372 usbd_get_descriptor(udev);
373 break;
374 case USB_STD_REQ_GET_CONFIGURATION:
375 usbd_get_configuration(udev);
376 break;
377 case USB_STD_REQ_SET_CONFIGURATION:
378 usbd_set_configuration(udev);
379 break;
380 default:
381 usbd_ctrl_unsupport(udev);
382 break;
383 }
384 return ret;
385}
386
392 usb_sts_type usbd_interface_request(usbd_core_type *udev)
393{
394 usb_sts_type ret = USB_OK;
395 usb_setup_type *setup = &udev->setup;
396 switch(udev->conn_state)
397 {
398 case USB_CONN_STATE_DEFAULT:
399 case USB_CONN_STATE_ADDRESSED:
400 case USB_CONN_STATE_CONFIGURED:
401 ret = udev->class_handler->setup_handler(udev, &udev->setup);
402 if(setup->wLength == 0 && ret == USB_OK)
403 {
404 usbd_ctrl_send_status(udev);
405 }
406 break;
407 default:
408 usbd_ctrl_unsupport(udev);
409 break;
410 }
411 return ret;
412}
413
419 usb_sts_type usbd_endpoint_request(usbd_core_type *udev)
420{
421 usb_sts_type ret = USB_OK;
422 usb_setup_type *setup = &udev->setup;
423 uint8_t ept_addr = LBYTE(setup->wIndex);
424 usb_ept_info *ept_info;
425
426 if((setup->bmRequestType & USB_REQ_TYPE_RESERVED) != USB_REQ_TYPE_STANDARD)
427 {
428 udev->class_handler->setup_handler(udev, &udev->setup);
429 return ret;
430 }
431 switch(setup->bRequest)
432 {
433 case USB_STD_REQ_GET_STATUS:
434 switch(udev->conn_state)
435 {
436 case USB_CONN_STATE_ADDRESSED:
437 if((ept_addr & 0x7F) != 0)
438 {
439 usbd_set_stall(udev, ept_addr);
440 }
441 if((ept_addr & 0x80) != 0)
442 {
443 ept_info = &udev->ept_in[ept_addr & 0x7F];
444 }
445 else
446 {
447 ept_info = &udev->ept_out[ept_addr & 0x7F];
448 }
449 ept_info->status = 0x0000;
450 usbd_ctrl_send(udev, (uint8_t *)(&ept_info->status), 2);
451
452 break;
453 case USB_CONN_STATE_CONFIGURED:
454 {
455 if((ept_addr & 0x80) != 0)
456 {
457 ept_info = &udev->ept_in[ept_addr & 0x7F];
458 }
459 else
460 {
461 ept_info = &udev->ept_out[ept_addr & 0x7F];
462 }
463 if(ept_info->stall == 1)
464 {
465 ept_info->status = 0x0001;
466 }
467 else
468 {
469 ept_info->status = 0x0000;
470 }
471 usbd_ctrl_send(udev, (uint8_t *)(&ept_info->status), 2);
472 }
473 break;
474 default:
475 usbd_ctrl_unsupport(udev);
476 break;
477 }
478 break;
479 case USB_STD_REQ_CLEAR_FEATURE:
480 switch(udev->conn_state)
481 {
482 case USB_CONN_STATE_ADDRESSED:
483 if((ept_addr != 0x00) && (ept_addr != 0x80))
484 {
485 usbd_set_stall(udev, ept_addr);
486 }
487 break;
488 case USB_CONN_STATE_CONFIGURED:
489 if(setup->wValue == USB_FEATURE_EPT_HALT)
490 {
491 if((ept_addr & 0x7F) != 0x00 )
492 {
493 usbd_clear_stall(udev, ept_addr);
494 udev->class_handler->setup_handler(udev, &udev->setup);
495 }
496 usbd_ctrl_send_status(udev);
497 }
498 break;
499 default:
500 usbd_ctrl_unsupport(udev);
501 break;
502 }
503 break;
504 case USB_STD_REQ_SET_FEATURE:
505 switch(udev->conn_state)
506 {
507 case USB_CONN_STATE_ADDRESSED:
508 if((ept_addr != 0x00) && (ept_addr != 0x80))
509 {
510 usbd_set_stall(udev, ept_addr);
511 }
512 break;
513 case USB_CONN_STATE_CONFIGURED:
514 if(setup->wValue == USB_FEATURE_EPT_HALT)
515 {
516 if((ept_addr != 0x00) && (ept_addr != 0x80))
517 {
518 usbd_set_stall(udev, ept_addr);
519 }
520 }
521 udev->class_handler->setup_handler(udev, &udev->setup);
522 usbd_ctrl_send_status(udev);
523 break;
524 default:
525 usbd_ctrl_unsupport(udev);
526 break;
527 }
528 break;
529 default:
530 usbd_ctrl_unsupport(udev);
531 break;
532 }
533 return ret;
534}
535
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
USB_STD_REQ_CLEAR_FEATURE
#define USB_STD_REQ_CLEAR_FEATURE
Definition: usb_std.h:76
USB_DESCIPTOR_TYPE_OTHER_SPEED
#define USB_DESCIPTOR_TYPE_OTHER_SPEED
Definition: usb_std.h:96
USB_INTERFACE_STRING
#define USB_INTERFACE_STRING
Definition: usb_std.h:107
USB_STD_REQ_SET_CONFIGURATION
#define USB_STD_REQ_SET_CONFIGURATION
Definition: usb_std.h:82
USB_FEATURE_REMOTE_WAKEUP
#define USB_FEATURE_REMOTE_WAKEUP
Definition: usb_std.h:119
USB_PRODUCT_STRING
#define USB_PRODUCT_STRING
Definition: usb_std.h:104
MIN
#define MIN(a, b)
min and max define
Definition: usb_std.h:253
USB_REQ_TYPE_STANDARD
#define USB_REQ_TYPE_STANDARD
usb request type
Definition: usb_std.h:61
USB_DESCIPTOR_TYPE_CONFIGURATION
#define USB_DESCIPTOR_TYPE_CONFIGURATION
Definition: usb_std.h:91
USB_STD_REQ_GET_DESCRIPTOR
#define USB_STD_REQ_GET_DESCRIPTOR
Definition: usb_std.h:79
USB_STD_REQ_SET_ADDRESS
#define USB_STD_REQ_SET_ADDRESS
Definition: usb_std.h:78
LBYTE
#define LBYTE(x)
low byte and high byte define
Definition: usb_std.h:263
USB_STD_REQ_SET_FEATURE
#define USB_STD_REQ_SET_FEATURE
Definition: usb_std.h:77
USB_CONF_REMOTE_WAKEUP
#define USB_CONF_REMOTE_WAKEUP
usb configuration attributes
Definition: usb_std.h:112
SWAPBYTE
#define SWAPBYTE(addr)
usb swap address
Definition: usb_std.h:245
USB_MFC_STRING
#define USB_MFC_STRING
Definition: usb_std.h:103
USB_STD_REQ_GET_STATUS
#define USB_STD_REQ_GET_STATUS
usb standard device requests codes
Definition: usb_std.h:75
USB_SERIAL_STRING
#define USB_SERIAL_STRING
Definition: usb_std.h:105
USB_DESCIPTOR_TYPE_DEVICE
#define USB_DESCIPTOR_TYPE_DEVICE
usb standard device type
Definition: usb_std.h:90
USB_FEATURE_EPT_HALT
#define USB_FEATURE_EPT_HALT
usb standard feature selectors
Definition: usb_std.h:118
USB_STD_REQ_GET_CONFIGURATION
#define USB_STD_REQ_GET_CONFIGURATION
Definition: usb_std.h:81
USB_DESCIPTOR_TYPE_STRING
#define USB_DESCIPTOR_TYPE_STRING
Definition: usb_std.h:92
USB_REQ_TYPE_RESERVED
#define USB_REQ_TYPE_RESERVED
Definition: usb_std.h:64
USB_LANGID_STRING
#define USB_LANGID_STRING
usb standard string type
Definition: usb_std.h:102
USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER
#define USB_DESCIPTOR_TYPE_DEVICE_QUALIFIER
Definition: usb_std.h:95
USB_CONFIG_STRING
#define USB_CONFIG_STRING
Definition: usb_std.h:106
USB_CONN_STATE_DEFAULT
@ USB_CONN_STATE_DEFAULT
Definition: usb_std.h:127
USB_CONN_STATE_CONFIGURED
@ USB_CONN_STATE_CONFIGURED
Definition: usb_std.h:129
USB_CONN_STATE_ADDRESSED
@ USB_CONN_STATE_ADDRESSED
Definition: usb_std.h:128
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
usbd_set_stall
void usbd_set_stall(usbd_core_type *udev, uint8_t ept_addr)
usb set endpoint to stall.
Definition: usbd_core.c:259
usbd_ctrl_send_status
void usbd_ctrl_send_status(usbd_core_type *udev)
usb control endpoint send in status
Definition: usbd_core.c:209
usbd_ctrl_send
void usbd_ctrl_send(usbd_core_type *udev, uint8_t *buffer, uint16_t len)
usb control endpoint send data
Definition: usbd_core.c:174
usbd_clear_stall
void usbd_clear_stall(usbd_core_type *udev, uint8_t ept_addr)
clear endpoint stall
Definition: usbd_core.c:234
usbd_ctrl_unsupport
void usbd_ctrl_unsupport(usbd_core_type *udev)
un-support device request
Definition: usbd_core.c:284
usbd_set_feature
static usb_sts_type usbd_set_feature(usbd_core_type *udev)
set usb feature request
Definition: usbd_sdr.c:236
usbd_endpoint_request
usb_sts_type usbd_endpoint_request(usbd_core_type *udev)
standard usb endpoint requests
Definition: usbd_sdr.c:419
usbd_get_status
static usb_sts_type usbd_get_status(usbd_core_type *udev)
get usb status request
Definition: usbd_sdr.c:183
usbd_get_configuration
static usb_sts_type usbd_get_configuration(usbd_core_type *udev)
get usb configuration request
Definition: usbd_sdr.c:254
usbd_get_descriptor
static usb_sts_type usbd_get_descriptor(usbd_core_type *udev)
get usb standard device description request
Definition: usbd_sdr.c:67
usbd_setup_request_parse
void usbd_setup_request_parse(usb_setup_type *setup, uint8_t *buf)
usb parse standard setup request
Definition: usbd_sdr.c:53
usbd_device_request
usb_sts_type usbd_device_request(usbd_core_type *udev)
standard usb device requests
Definition: usbd_sdr.c:348
usbd_set_address
static usb_sts_type usbd_set_address(usbd_core_type *udev)
this request sets the device address
Definition: usbd_sdr.c:137
usbd_interface_request
usb_sts_type usbd_interface_request(usbd_core_type *udev)
standard usb interface requests
Definition: usbd_sdr.c:392
usbd_set_configuration
static usb_sts_type usbd_set_configuration(usbd_core_type *udev)
sets the usb device configuration request
Definition: usbd_sdr.c:286
usbd_clear_feature
static usb_sts_type usbd_clear_feature(usbd_core_type *udev)
clear usb feature request
Definition: usbd_sdr.c:208
usb_ept_info
usb endpoint infomation structure definition
Definition: at32f403_usb.h:499
usb_ept_info::stall
uint8_t stall
Definition: at32f403_usb.h:509
usb_ept_info::status
uint16_t status
Definition: at32f403_usb.h:510
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usb_setup_type::wValue
uint16_t wValue
Definition: usb_std.h:293
usb_setup_type::wLength
uint16_t wLength
Definition: usb_std.h:296
usb_setup_type::bmRequestType
uint8_t bmRequestType
Definition: usb_std.h:291
usb_setup_type::wIndex
uint16_t wIndex
Definition: usb_std.h:294
usb_setup_type::bRequest
uint8_t bRequest
Definition: usb_std.h:292
usbd_class_handler::init_handler
usb_sts_type(* init_handler)(void *udev)
Definition: usbd_core.h:92
usbd_class_handler::clear_handler
usb_sts_type(* clear_handler)(void *udev)
Definition: usbd_core.h:93
usbd_class_handler::setup_handler
usb_sts_type(* setup_handler)(void *udev, usb_setup_type *setup)
Definition: usbd_core.h:94
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core_type::conn_state
usbd_conn_state conn_state
Definition: usbd_core.h:124
usbd_core_type::default_config
uint8_t default_config
Definition: usbd_core.h:129
usbd_core_type::remote_wakup
uint8_t remote_wakup
Definition: usbd_core.h:128
usbd_core_type::class_handler
usbd_class_handler * class_handler
Definition: usbd_core.h:111
usbd_core_type::ept_in
usb_ept_info ept_in[USB_EPT_MAX_NUM]
Definition: usbd_core.h:114
usbd_core_type::config_status
uint16_t config_status
Definition: usbd_core.h:131
usbd_core_type::dev_config
uint8_t dev_config
Definition: usbd_core.h:130
usbd_core_type::device_addr
uint8_t device_addr
Definition: usbd_core.h:127
usbd_core_type::ept_out
usb_ept_info ept_out[USB_EPT_MAX_NUM]
Definition: usbd_core.h:115
usbd_core_type::setup
usb_setup_type setup
Definition: usbd_core.h:117
usbd_core_type::desc_handler
usbd_desc_handler * desc_handler
Definition: usbd_core.h:112
usbd_desc_handler::get_device_config_string
usbd_desc_t *(* get_device_config_string)(void)
Definition: usbd_core.h:84
usbd_desc_handler::get_device_descriptor
usbd_desc_t *(* get_device_descriptor)(void)
Definition: usbd_core.h:75
usbd_desc_handler::get_device_configuration
usbd_desc_t *(* get_device_configuration)(void)
Definition: usbd_core.h:77
usbd_desc_handler::get_device_interface_string
usbd_desc_t *(* get_device_interface_string)(void)
Definition: usbd_core.h:83
usbd_desc_handler::get_device_lang_id
usbd_desc_t *(* get_device_lang_id)(void)
Definition: usbd_core.h:79
usbd_desc_handler::get_device_manufacturer_string
usbd_desc_t *(* get_device_manufacturer_string)(void)
Definition: usbd_core.h:80
usbd_desc_handler::get_device_product_string
usbd_desc_t *(* get_device_product_string)(void)
Definition: usbd_core.h:81
usbd_desc_handler::get_device_serial_string
usbd_desc_t *(* get_device_serial_string)(void)
Definition: usbd_core.h:82
usbd_desc_t
usb device descriptor struct
Definition: usbd_core.h:65
usbd_desc_t::length
uint16_t length
Definition: usbd_core.h:66
usbd_desc_t::descriptor
uint8_t * descriptor
Definition: usbd_core.h:67
usbd_sdr.h
usb standard request header file


AT32F403 Firmwary Library: usbd_sdr.h Source File

  • middlewares
  • usbd_drivers
  • inc
usbd_sdr.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USBD_SDR_H
27#define __USBD_SDR_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33
34/* includes ------------------------------------------------------------------*/
35#include "usbd_core.h"
36
49void usbd_setup_request_parse(usb_setup_type *setup, uint8_t *buf);
50 usb_sts_type usbd_device_request(usbd_core_type *udev);
51 usb_sts_type usbd_interface_request(usbd_core_type *udev);
52 usb_sts_type usbd_endpoint_request(usbd_core_type *udev);
53
54
67#ifdef __cplusplus
68}
69#endif
70
71#endif
72
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
usbd_endpoint_request
usb_sts_type usbd_endpoint_request(usbd_core_type *udev)
standard usb endpoint requests
Definition: usbd_sdr.c:419
usbd_setup_request_parse
void usbd_setup_request_parse(usb_setup_type *setup, uint8_t *buf)
usb parse standard setup request
Definition: usbd_sdr.c:53
usbd_device_request
usb_sts_type usbd_device_request(usbd_core_type *udev)
standard usb device requests
Definition: usbd_sdr.c:348
usbd_interface_request
usb_sts_type usbd_interface_request(usbd_core_type *udev)
standard usb interface requests
Definition: usbd_sdr.c:392
usb_setup_type
format of usb setup data
Definition: usb_std.h:290
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_freertos_demo
  • inc
utilities/at32f403_freertos_demo/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_freertos_demo
  • inc
utilities/at32f403_freertos_demo/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_freertos_demo
  • inc
utilities/at32f403_freertos_demo/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_freertos_demo
  • src
utilities/at32f403_freertos_demo/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_freertos_demo/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_freertos_demo/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_freertos_demo
  • src
utilities/at32f403_freertos_demo/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102//void SVC_Handler(void)
103//{
104//}
105
111void DebugMon_Handler(void)
112{
113}
114
120//void PendSV_Handler(void)
121//{
122//}
123
129//void SysTick_Handler(void)
130//{
131//}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_freertos_demo/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_freertos_demo/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_freertos_demo/src/at32f403_int.c:63
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_freertos_demo/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_freertos_demo/src/at32f403_int.c:76
DebugMon_Handler
void DebugMon_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_freertos_demo/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_freertos_demo
  • src
utilities/at32f403_freertos_demo/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "FreeRTOS.h"
28#include "task.h"
29
37TaskHandle_t led2_handler;
38TaskHandle_t led3_handler;
39
40/* led2 task */
41void led2_task_function(void *pvParameters);
42/* led3 task */
43void led3_task_function(void *pvParameters);
44
50int main(void)
51{
52 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
53
54 system_clock_config();
55
56 /* init led2 and led3 */
57 at32_led_init(LED2);
58 at32_led_init(LED3);
59
60 /* init usart1 */
61 uart_print_init(115200);
62
63 /* enter critical */
64 taskENTER_CRITICAL();
65
66 /* create led2 task */
67 if(xTaskCreate((TaskFunction_t )led2_task_function,
68 (const char* )"LED2_task",
69 (uint16_t )512,
70 (void* )NULL,
71 (UBaseType_t )2,
72 (TaskHandle_t* )&led2_handler) != pdPASS)
73 {
74 printf("LED2 task could not be created as there was insufficient heap memory remaining.\r\n");
75 }
76 else
77 {
78 printf("LED2 task was created successfully.\r\n");
79 }
80 /* create led3 task */
81 if(xTaskCreate((TaskFunction_t )led3_task_function,
82 (const char* )"LED3_task",
83 (uint16_t )512,
84 (void* )NULL,
85 (UBaseType_t )2,
86 (TaskHandle_t* )&led3_handler) != pdPASS)
87 {
88 printf("LED3 task could not be created as there was insufficient heap memory remaining.\r\n");
89 }
90 else
91 {
92 printf("LED3 task was created successfully.\r\n");
93 }
94
95 /* exit critical */
96 taskEXIT_CRITICAL();
97
98 /* start scheduler */
99 vTaskStartScheduler();
100}
101
102/* led2 task function */
103void led2_task_function(void *pvParameters)
104{
105 while(1)
106 {
107 at32_led_toggle(LED2);
108 vTaskDelay(1000);
109 }
110}
111
112/* led3 task function */
113void led3_task_function(void *pvParameters)
114{
115 while(1)
116 {
117 at32_led_toggle(LED3);
118 vTaskDelay(500);
119 }
120}
121
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
LED3
@ LED3
Definition: at32f403_board.h:62
LED2
@ LED2
Definition: at32f403_board.h:61
at32_led_init
void at32_led_init(led_type led)
configure led gpio
Definition: at32f403_board.c:238
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
led2_task_function
void led2_task_function(void *pvParameters)
Definition: utilities/at32f403_freertos_demo/src/main.c:103
main
int main(void)
main function.
Definition: utilities/at32f403_freertos_demo/src/main.c:50
led3_task_function
void led3_task_function(void *pvParameters)
Definition: utilities/at32f403_freertos_demo/src/main.c:113
led3_handler
TaskHandle_t led3_handler
Definition: utilities/at32f403_freertos_demo/src/main.c:38
led2_handler
TaskHandle_t led2_handler
Definition: utilities/at32f403_freertos_demo/src/main.c:37
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_gen_random_number_demo
  • inc
utilities/at32f403_gen_random_number_demo/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_gen_random_number_demo
  • inc
utilities/at32f403_gen_random_number_demo/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_gen_random_number_demo
  • inc
utilities/at32f403_gen_random_number_demo/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_gen_random_number_demo
  • src
utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_gen_random_number_demo
  • src
utilities/at32f403_gen_random_number_demo/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while (1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while (1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while (1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while (1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: utilities/at32f403_gen_random_number_demo/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_gen_random_number_demo
  • src
utilities/at32f403_gen_random_number_demo/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "stdio.h"
28#include "random.h"
29
43int main(void)
44{
45 system_clock_config();
46
47 at32_board_init();
48 uart_print_init(115200);
49 printf("gen random number test\r\n");
50 randnum_test();
51 while(1)
52 {
53 }
54}
55
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
uart_print_init
void uart_print_init(uint32_t baudrate)
initialize uart
Definition: at32f403_board.c:125
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
randnum_test
void randnum_test(void)
enable rtc as seed
Definition: random.c:120
main
int main(void)
main function.
Definition: utilities/at32f403_gen_random_number_demo/src/main.c:43
random.h
at32f403 random header file
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • inc
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while (1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while (1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while (1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while (1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led3_toggle
  • src
utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "tmr.h"
28#include "usart.h"
29#include "iap.h"
30
44int main(void)
45{
46 /* config vector table offset */
47 nvic_vector_table_set(NVIC_VECTTAB_FLASH, 0x4000);
48
49 /* config nvic priority group */
50 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
51
52 system_clock_config();
53 at32_board_init();
54
55 /* check and clear iap_upgrade_flag flag */
56 iap_init();
57
58 /* init usart used for app update */
59 uart_init(115200);
60
61 /* init tmr used for show code running state(led cycle toggle) */
62 tmr_init();
63
64 while(1)
65 {
66 iap_command_handle();
67 }
68}
69
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
nvic_vector_table_set
void nvic_vector_table_set(uint32_t base, uint32_t offset)
set the vector table location and offset.
Definition: at32f403_misc.c:110
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
NVIC_VECTTAB_FLASH
#define NVIC_VECTTAB_FLASH
Definition: at32f403_misc.h:50
main
int main(void)
main function.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led3_toggle/src/main.c:44
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
iap_command_handle
void iap_command_handle(void)
iap command handle handle.
Definition: app_led3_toggle/src/iap.c:42
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led3_toggle/src/tmr.c:42
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • inc
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while (1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while (1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while (1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while (1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • app_led4_toggle
  • src
utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "tmr.h"
28#include "usart.h"
29#include "iap.h"
30
44int main(void)
45{
46 /* config vector table offset */
47 nvic_vector_table_set(NVIC_VECTTAB_FLASH, 0x4000);
48
49 /* config nvic priority group */
50 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
51
52 system_clock_config();
53 at32_board_init();
54
55 /* check and clear iap_upgrade_flag flag */
56 iap_init();
57
58 /* init usart used for app update */
59 uart_init(115200);
60
61 /* init tmr used for show code running state(led cycle toggle) */
62 tmr_init();
63
64 while(1)
65 {
66 iap_command_handle();
67 }
68}
69
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
nvic_vector_table_set
void nvic_vector_table_set(uint32_t base, uint32_t offset)
set the vector table location and offset.
Definition: at32f403_misc.c:110
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
NVIC_VECTTAB_FLASH
#define NVIC_VECTTAB_FLASH
Definition: at32f403_misc.h:50
main
int main(void)
main function.
Definition: utilities/at32f403_usart_iap_demo/source_code/app_led4_toggle/src/main.c:44
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
iap_command_handle
void iap_command_handle(void)
iap command handle handle.
Definition: app_led3_toggle/src/iap.c:42
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led3_toggle/src/tmr.c:42
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: flash.h Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h
Go to the documentation of this file.
1
25#ifndef __FLASH_H__
26#define __FLASH_H__
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46#define FLASH_SIZE (*((uint32_t*)0x1FFFF7E0)) /* read from at32 flash capacity register(unit:kbyte) */
47#define SRAM_SIZE 224 /* sram size, unit:kbyte */
48
57void flash_2kb_write(uint32_t write_addr, uint8_t *pbuffer);
58 flag_status flash_upgrade_flag_read(void);
59
72#ifdef __cplusplus
73}
74#endif
75
76#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
flag_status
flag_status
flag status
Definition: at32f403.h:304
flash_2kb_write
void flash_2kb_write(uint32_t write_addr, uint8_t *pbuffer)
flash erase/program operation.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c:43
flash_upgrade_flag_read
flag_status flash_upgrade_flag_read(void)
check flash upgrade flag.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c:64


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while (1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while (1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while (1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while (1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: flash.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c
Go to the documentation of this file.
1
25#include "flash.h"
26#include "usart.h"
27#include "iap.h"
28
43void flash_2kb_write(uint32_t write_addr, uint8_t *pbuffer)
44{
45 uint16_t index, write_data;
46 flash_unlock();
47 flash_sector_erase(write_addr);
48 if(FLASH_SIZE < 0x100) /* less than 256kb, 1kb/sector */
49 flash_sector_erase(write_addr + 0x400);
50 for(index = 0; index < 2048; index += 2)
51 {
52 write_data = (pbuffer[index+1] << 8) + pbuffer[index];
53 flash_halfword_program(write_addr, write_data);
54 write_addr += sizeof(uint16_t);
55 }
56 flash_lock();
57}
58
64 flag_status flash_upgrade_flag_read(void)
65{
66 if((*(uint32_t*)IAP_UPGRADE_FLAG_ADDR) == IAP_UPGRADE_FLAG)
67 return SET;
68 else
69 return RESET;
70}
71
flag_status
flag_status
flag status
Definition: at32f403.h:304
RESET
@ RESET
Definition: at32f403.h:304
SET
@ SET
Definition: at32f403.h:304
flash_sector_erase
flash_status_type flash_sector_erase(uint32_t sector_address)
erase a specified flash sector.
Definition: at32f403_flash.c:444
flash_halfword_program
flash_status_type flash_halfword_program(uint32_t address, uint16_t data)
program a halfword at a specified address.
Definition: at32f403_flash.c:707
flash_unlock
void flash_unlock(void)
unlock the flash controller.
Definition: at32f403_flash.c:356
flash_lock
void flash_lock(void)
lock the flash controller.
Definition: at32f403_flash.c:402
flash_2kb_write
void flash_2kb_write(uint32_t write_addr, uint8_t *pbuffer)
flash erase/program operation.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c:43
flash_upgrade_flag_read
flag_status flash_upgrade_flag_read(void)
check flash upgrade flag.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c:64
IAP_UPGRADE_FLAG_ADDR
#define IAP_UPGRADE_FLAG_ADDR
Definition: app_led3_toggle/inc/iap.h:50
IAP_UPGRADE_FLAG
#define IAP_UPGRADE_FLAG
Definition: app_led3_toggle/inc/iap.h:54
FLASH_SIZE
#define FLASH_SIZE
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/inc/flash.h:46


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_usart_iap_demo
  • source_code
  • bootloader
  • src
utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "tmr.h"
28#include "usart.h"
29#include "flash.h"
30#include "iap.h"
31
45int main(void)
46{
47 system_clock_config();
48 at32_board_init();
49
50 /* config nvic priority group */
51 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
52
53 /* check iap_upgrade_flag flag */
54 if(flash_upgrade_flag_read() == RESET)
55 {
56 /* check app starting address whether 0x08xxxxxx */
57 if(((*(uint32_t*)(APP_START_ADDR + 4)) & 0xFF000000) == 0x08000000)
58 app_load(APP_START_ADDR);
59 }
60
61 /* init usart used for app update */
62 uart_init(115200);
63
64 /* check whether need to upgrade, if yes, response ok to pc-tool */
65 if(flash_upgrade_flag_read() != RESET)
66 back_ok();
67
68 /* init tmr used for show code running state(led cycle toggle) */
69 tmr_init();
70
71 while(1)
72 {
73 /* upgrade handle */
74 iap_upgrade_app_handle();
75 }
76}
77
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
uart_init
void uart_init(uint32_t baudrate)
init usart.
Definition: app_led3_toggle/src/usart.c:43
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
RESET
@ RESET
Definition: at32f403.h:304
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
main
int main(void)
main function.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/main.c:45
APP_START_ADDR
#define APP_START_ADDR
Definition: app_led3_toggle/inc/iap.h:47
tmr_init
void tmr_init(void)
init tmr.
Definition: app_led3_toggle/src/tmr.c:42
back_ok
void back_ok(void)
command response ok.
Definition: app_led3_toggle/src/usart.c:105
iap_upgrade_app_handle
void iap_upgrade_app_handle(void)
iap upgrade app handle.
Definition: bootloader/src/iap.c:342
app_load
void app_load(uint32_t appxaddr)
app load.
Definition: bootloader/src/iap.c:58
flash_upgrade_flag_read
flag_status flash_upgrade_flag_read(void)
check flash upgrade flag.
Definition: utilities/at32f403_usart_iap_demo/source_code/bootloader/src/flash.c:64
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97void usb_delay_ms(uint32_t ms);
98void usb_delay_us(uint32_t us);
99
108#ifdef __cplusplus
109}
110#endif
111
112#endif
113
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c:110
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c:121


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led3_toggle
  • src
utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "hid_iap_class.h"
29#include "hid_iap_desc.h"
30#include "hid_iap_user.h"
31#include "usbd_int.h"
32
41 usbd_core_type usb_core_dev;
42
43void usb_clock48m_select(usb_clk48_s clk_s);
44
50void usb_clock48m_select(usb_clk48_s clk_s)
51{
52 switch(system_core_clock)
53 {
54 /* 48MHz */
55 case 48000000:
56 crm_usb_clock_div_set(CRM_USB_DIV_1);
57 break;
58
59 /* 72MHz */
60 case 72000000:
61 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
62 break;
63
64 /* 96MHz */
65 case 96000000:
66 crm_usb_clock_div_set(CRM_USB_DIV_2);
67 break;
68
69 /* 120MHz */
70 case 120000000:
71 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
72 break;
73
74 /* 144MHz */
75 case 144000000:
76 crm_usb_clock_div_set(CRM_USB_DIV_3);
77 break;
78
79 /* 168MHz */
80 case 168000000:
81 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
82 break;
83
84 /* 192MHz */
85 case 192000000:
86 crm_usb_clock_div_set(CRM_USB_DIV_4);
87 break;
88
89 default:
90 break;
91
92 }
93}
94
100void USBFS_L_CAN1_RX0_IRQHandler(void)
101{
102 usbd_irq_handler(&usb_core_dev);
103}
104
110void usb_delay_ms(uint32_t ms)
111{
112 /* user can define self delay function */
113 delay_ms(ms);
114}
115
121void usb_delay_us(uint32_t us)
122{
123 delay_us(us);
124}
125
131int main(void)
132{
133 system_clock_config();
134
135 /* config vector table offset */
136 nvic_vector_table_set(NVIC_VECTTAB_FLASH, 0x5000);
137
138 /* config nvic priority group */
139 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
140
141 /* iap init */
142 iap_init();
143
144 at32_board_init();
145
146 /* select usb 48m clcok source */
147 usb_clock48m_select(USB_CLK_HEXT);
148
149 /* enable usb clock */
150 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
151
152 /* enable usb interrupt */
153 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
154
155 /* usb core init */
156 usbd_core_init(&usb_core_dev, USB, &hid_iap_class_handler, &hid_iap_desc_handler, 0);
157
158 /* enable usb pull-up */
159 usbd_connect(&usb_core_dev);
160
161 while(1)
162 {
163 app_loop();
164 at32_led_toggle(LED3);
165 delay_ms(200);
166 }
167}
168
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
LED3
@ LED3
Definition: at32f403_board.h:62
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_vector_table_set
void nvic_vector_table_set(uint32_t base, uint32_t offset)
set the vector table location and offset.
Definition: at32f403_misc.c:110
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
NVIC_VECTTAB_FLASH
#define NVIC_VECTTAB_FLASH
Definition: at32f403_misc.h:50
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
hid_iap_class_handler
usbd_class_handler hid_iap_class_handler
Definition: hid_iap_class.c:55
hid_iap_desc_handler
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure
Definition: hid_iap_desc.c:66
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c:50
main
int main(void)
main function.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c:131
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c:100
usb_core_dev
usbd_core_type usb_core_dev
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led3_toggle/src/main.c:41
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
app_loop
void app_loop(void)
iap loop
Definition: app_led3_toggle/src/hid_iap_user.c:251
hid_iap_class.h
usb hid iap header file
hid_iap_desc.h
usb hid descriptor header file
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • inc
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97void usb_delay_ms(uint32_t ms);
98void usb_delay_us(uint32_t us);
99
108#ifdef __cplusplus
109}
110#endif
111
112#endif
113
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c:110
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c:121


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_clock.c:34
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • app_led4_toggle
  • src
utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "hid_iap_class.h"
29#include "hid_iap_desc.h"
30#include "hid_iap_user.h"
31#include "usbd_int.h"
32
41 usbd_core_type usb_core_dev;
42
43void usb_clock48m_select(usb_clk48_s clk_s);
44
50void usb_clock48m_select(usb_clk48_s clk_s)
51{
52 switch(system_core_clock)
53 {
54 /* 48MHz */
55 case 48000000:
56 crm_usb_clock_div_set(CRM_USB_DIV_1);
57 break;
58
59 /* 72MHz */
60 case 72000000:
61 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
62 break;
63
64 /* 96MHz */
65 case 96000000:
66 crm_usb_clock_div_set(CRM_USB_DIV_2);
67 break;
68
69 /* 120MHz */
70 case 120000000:
71 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
72 break;
73
74 /* 144MHz */
75 case 144000000:
76 crm_usb_clock_div_set(CRM_USB_DIV_3);
77 break;
78
79 /* 168MHz */
80 case 168000000:
81 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
82 break;
83
84 /* 192MHz */
85 case 192000000:
86 crm_usb_clock_div_set(CRM_USB_DIV_4);
87 break;
88
89 default:
90 break;
91
92 }
93}
94
100void USBFS_L_CAN1_RX0_IRQHandler(void)
101{
102 usbd_irq_handler(&usb_core_dev);
103}
104
110void usb_delay_ms(uint32_t ms)
111{
112 /* user can define self delay function */
113 delay_ms(ms);
114}
115
121void usb_delay_us(uint32_t us)
122{
123 delay_us(us);
124}
125
131int main(void)
132{
133 system_clock_config();
134
135 /* config vector table offset */
136 nvic_vector_table_set(NVIC_VECTTAB_FLASH, 0x5000);
137
138 /* config nvic priority group */
139 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
140
141 /* iap init */
142 iap_init();
143
144 at32_board_init();
145
146 /* select usb 48m clcok source */
147 usb_clock48m_select(USB_CLK_HEXT);
148
149 /* enable usb clock */
150 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
151
152 /* enable usb interrupt */
153 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
154
155 /* usb core init */
156 usbd_core_init(&usb_core_dev, USB, &hid_iap_class_handler, &hid_iap_desc_handler, 0);
157
158 /* enable usb pull-up */
159 usbd_connect(&usb_core_dev);
160
161 while(1)
162 {
163 app_loop();
164 at32_led_toggle(LED4);
165 delay_ms(200);
166 }
167}
168
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
LED4
@ LED4
Definition: at32f403_board.h:63
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_led_toggle
void at32_led_toggle(led_type led)
turns selected led toggle.
Definition: at32f403_board.c:300
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_vector_table_set
void nvic_vector_table_set(uint32_t base, uint32_t offset)
set the vector table location and offset.
Definition: at32f403_misc.c:110
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
NVIC_VECTTAB_FLASH
#define NVIC_VECTTAB_FLASH
Definition: at32f403_misc.h:50
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
hid_iap_class_handler
usbd_class_handler hid_iap_class_handler
Definition: hid_iap_class.c:55
hid_iap_desc_handler
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure
Definition: hid_iap_desc.c:66
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c:50
main
int main(void)
main function.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c:131
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c:100
usb_core_dev
usbd_core_type usb_core_dev
Definition: utilities/at32f403_usb_iap_demo/source_code/app_led4_toggle/src/main.c:41
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
app_loop
void app_loop(void)
iap loop
Definition: app_led3_toggle/src/hid_iap_user.c:251
hid_iap_class.h
usb hid iap header file
hid_iap_desc.h
usb hid descriptor header file
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: at32f403_clock.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_clock.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CLOCK_H
27#define __AT32F403_CLOCK_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported functions ------------------------------------------------------- */
37void system_clock_config(void);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif /* __AT32F403_CLOCK_H */
44
at32f403.h
at32f403 header file
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59


AT32F403 Firmwary Library: at32f403_conf.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_CONF_H
27#define __AT32F403_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
41#if !defined HEXT_VALUE
42#define HEXT_VALUE ((uint32_t)8000000)
43#endif
44
49#define HEXT_STARTUP_TIMEOUT ((uint16_t)0x3000)
50#define HICK_VALUE ((uint32_t)8000000)
51#define LEXT_VALUE ((uint32_t)32768)
53/* module define -------------------------------------------------------------*/
54#define CRM_MODULE_ENABLED
55#define TMR_MODULE_ENABLED
56#define RTC_MODULE_ENABLED
57#define BPR_MODULE_ENABLED
58#define GPIO_MODULE_ENABLED
59#define I2C_MODULE_ENABLED
60#define USART_MODULE_ENABLED
61#define PWC_MODULE_ENABLED
62#define CAN_MODULE_ENABLED
63#define ADC_MODULE_ENABLED
64#define DAC_MODULE_ENABLED
65#define SPI_MODULE_ENABLED
66#define DMA_MODULE_ENABLED
67#define DEBUG_MODULE_ENABLED
68#define FLASH_MODULE_ENABLED
69#define CRC_MODULE_ENABLED
70#define WWDT_MODULE_ENABLED
71#define WDT_MODULE_ENABLED
72#define EXINT_MODULE_ENABLED
73#define SDIO_MODULE_ENABLED
74#define XMC_MODULE_ENABLED
75#define USB_MODULE_ENABLED
76#define MISC_MODULE_ENABLED
77
78/* includes ------------------------------------------------------------------*/
79#ifdef CRM_MODULE_ENABLED
80#include "at32f403_crm.h"
81#endif
82#ifdef TMR_MODULE_ENABLED
83#include "at32f403_tmr.h"
84#endif
85#ifdef RTC_MODULE_ENABLED
86#include "at32f403_rtc.h"
87#endif
88#ifdef BPR_MODULE_ENABLED
89#include "at32f403_bpr.h"
90#endif
91#ifdef GPIO_MODULE_ENABLED
92#include "at32f403_gpio.h"
93#endif
94#ifdef I2C_MODULE_ENABLED
95#include "at32f403_i2c.h"
96#endif
97#ifdef USART_MODULE_ENABLED
98#include "at32f403_usart.h"
99#endif
100#ifdef PWC_MODULE_ENABLED
101#include "at32f403_pwc.h"
102#endif
103#ifdef CAN_MODULE_ENABLED
104#include "at32f403_can.h"
105#endif
106#ifdef ADC_MODULE_ENABLED
107#include "at32f403_adc.h"
108#endif
109#ifdef DAC_MODULE_ENABLED
110#include "at32f403_dac.h"
111#endif
112#ifdef SPI_MODULE_ENABLED
113#include "at32f403_spi.h"
114#endif
115#ifdef DMA_MODULE_ENABLED
116#include "at32f403_dma.h"
117#endif
118#ifdef DEBUG_MODULE_ENABLED
119#include "at32f403_debug.h"
120#endif
121#ifdef FLASH_MODULE_ENABLED
122#include "at32f403_flash.h"
123#endif
124#ifdef CRC_MODULE_ENABLED
125#include "at32f403_crc.h"
126#endif
127#ifdef WWDT_MODULE_ENABLED
128#include "at32f403_wwdt.h"
129#endif
130#ifdef WDT_MODULE_ENABLED
131#include "at32f403_wdt.h"
132#endif
133#ifdef EXINT_MODULE_ENABLED
134#include "at32f403_exint.h"
135#endif
136#ifdef SDIO_MODULE_ENABLED
137#include "at32f403_sdio.h"
138#endif
139#ifdef XMC_MODULE_ENABLED
140#include "at32f403_xmc.h"
141#endif
142#ifdef MISC_MODULE_ENABLED
143#include "at32f403_misc.h"
144#endif
145#ifdef USB_MODULE_ENABLED
146#include "at32f403_usb.h"
147#endif
148
149#ifdef __cplusplus
150}
151#endif
152
153#endif
at32f403_adc.h
at32f403 adc header file
at32f403_bpr.h
at32f403 bpr header file
at32f403_can.h
at32f403 can header file
at32f403_crc.h
at32f403 crc header file
at32f403_crm.h
at32f403 crm header file
at32f403_dac.h
at32f403 dac header file
at32f403_debug.h
at32f403 debug header file
at32f403_dma.h
at32f403 dma header file
at32f403_exint.h
at32f403 exint header file
at32f403_flash.h
at32f403 flash header file
at32f403_gpio.h
at32f403 gpio header file
at32f403_i2c.h
at32f403 i2c header file
at32f403_misc.h
at32f403 misc header file
at32f403_pwc.h
at32f403 pwc header file
at32f403_rtc.h
at32f403 rtc header file
at32f403_sdio.h
at32f403 sdio header file
at32f403_spi.h
at32f403 spi header file
at32f403_tmr.h
at32f403 tmr header file
at32f403_usart.h
at32f403 usart header file
at32f403_usb.h
at32f403 usb header file
at32f403_wdt.h
at32f403 wdt header file
at32f403_wwdt.h
at32f403 wwdt header file
at32f403_xmc.h
at32f403 xmc header file


AT32F403 Firmwary Library: at32f403_int.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/at32f403_int.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __AT32F403_INT_H
27#define __AT32F403_INT_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33/* includes ------------------------------------------------------------------*/
34#include "at32f403.h"
35
36/* exported types ------------------------------------------------------------*/
37/* exported constants --------------------------------------------------------*/
38/* exported macro ------------------------------------------------------------*/
39/* exported functions ------------------------------------------------------- */
40
41void NMI_Handler(void);
42void HardFault_Handler(void);
43void MemManage_Handler(void);
44void BusFault_Handler(void);
45void UsageFault_Handler(void);
46void SVC_Handler(void);
47void DebugMon_Handler(void);
48void PendSV_Handler(void);
49void SysTick_Handler(void);
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif
56
at32f403.h
at32f403 header file
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:93
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:54
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:67
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:106
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:124
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:45
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:80
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:133
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_int.c:115


AT32F403 Firmwary Library: usb_conf.h Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • inc
utilities/at32f403_usb_iap_demo/source_code/bootloader/inc/usb_conf.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __USB_CONF_H
27#define __USB_CONF_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403.h"
34#include "at32f403_board.h"
35#include "stdio.h"
36
48#ifndef USB_EPT_MAX_NUM
49#define USB_EPT_MAX_NUM 8
50#endif
51
55//#define USB_BUFFER_SIZE_EX /*!< usb enable extend buffer */
56
57
61#define USB_EPT_AUTO_MALLOC_BUFFER
64#ifndef USB_EPT_AUTO_MALLOC_BUFFER
70/* ept0 tx start address 0x40, size 0x40,
71 so rx start address is 0x40 + 0x40 = 0x80 */
72#define EPT0_TX_ADDR 0x40
73#define EPT0_RX_ADDR 0x80
75#define EPT1_TX_ADDR 0xC0
76#define EPT1_RX_ADDR 0x100
78#define EPT2_TX_ADDR 0x140
79#define EPT2_RX_ADDR 0x180
81#define EPT3_TX_ADDR 0x00
82#define EPT3_RX_ADDR 0x00
84#define EPT4_TX_ADDR 0x00
85#define EPT4_RX_ADDR 0x00
87#define EPT5_TX_ADDR 0x00
88#define EPT5_RX_ADDR 0x00
90#define EPT6_TX_ADDR 0x00
91#define EPT6_RX_ADDR 0x00
93#define EPT7_TX_ADDR 0x00
94#define EPT7_RX_ADDR 0x00
96#endif
97void usb_delay_ms(uint32_t ms);
98void usb_delay_us(uint32_t us);
99
108#ifdef __cplusplus
109}
110#endif
111
112#endif
113
114
at32f403.h
at32f403 header file
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c:111
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c:122


AT32F403 Firmwary Library: at32f403_clock.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_clock.h"
27
34static void wait_stbl(uint32_t delay)
35{
36 volatile uint32_t i;
37
38 for(i = 0; i < delay; i++);
39}
40
59void system_clock_config(void)
60{
61 /* reset crm */
62 crm_reset();
63
64 crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
65
66 /* wait for hext stable */
67 wait_stbl(HEXT_STABLE_DELAY);
68
69 /* wait till hext is ready */
70 while(crm_hext_stable_wait() == ERROR)
71 {
72 }
73
74 /* config pll clock resource */
75 crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_48, CRM_PLL_OUTPUT_RANGE_GT72MHZ);
76
77 /* enable pll */
78 crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);
79
80 /* wait till pll is ready */
81 while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
82 {
83 }
84
85 /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
86 crm_apb2_div_set(CRM_APB2_DIV_2);
87
88 /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
89 crm_apb1_div_set(CRM_APB1_DIV_2);
90
91 /* 1step: config ahbclk div8 */
92 crm_ahb_div_set(CRM_AHB_DIV_8);
93
94 /* select pll as system clock source */
95 crm_sysclk_switch(CRM_SCLK_PLL);
96
97 /* wait till pll is used as system clock source */
98 while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
99 {
100 }
101
102 /* delay */
103 wait_stbl(PLL_STABLE_DELAY);
104
105 /* 2step: config ahbclk div2 */
106 crm_ahb_div_set(CRM_AHB_DIV_2);
107
108 /* delay */
109 wait_stbl(PLL_STABLE_DELAY);
110
111 /* 3step: config ahbclk to target div */
112 crm_ahb_div_set(CRM_AHB_DIV_1);
113
114 /* update system_core_clock global variable */
115 system_core_clock_update();
116}
system_clock_config
void system_clock_config(void)
system clock config program
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c:59
delay
void delay(uint32_t time)
delay function
Definition: project/at_start_f403/examples/tmr/encoder_tmr2/src/main.c:118
PLL_STABLE_DELAY
#define PLL_STABLE_DELAY
Definition: system_at32f403.h:45
HEXT_STABLE_DELAY
#define HEXT_STABLE_DELAY
Definition: system_at32f403.h:44
system_core_clock_update
void system_core_clock_update(void)
update system_core_clock variable according to clock register values. the system_core_clock variable ...
Definition: system_at32f403.c:113
crm_flag_get
flag_status crm_flag_get(uint32_t flag)
get crm flag status
Definition: at32f403_crm.c:123
crm_hext_stable_wait
error_status crm_hext_stable_wait(void)
wait for hext stable
Definition: at32f403_crm.c:200
crm_ahb_div_set
void crm_ahb_div_set(crm_ahb_div_type value)
set crm ahb division
Definition: at32f403_crm.c:474
crm_sysclk_switch_status_get
crm_sclk_type crm_sysclk_switch_status_get(void)
indicate which clock source is used as system clock
Definition: at32f403_crm.c:635
crm_clock_source_enable
void crm_clock_source_enable(crm_clock_source_type source, confirm_state new_state)
enable or disable the crm clock source
Definition: at32f403_crm.c:353
crm_apb2_div_set
void crm_apb2_div_set(crm_apb2_div_type value)
set crm apb2 division
Definition: at32f403_crm.c:508
crm_apb1_div_set
void crm_apb1_div_set(crm_apb1_div_type value)
set crm apb1 division
Definition: at32f403_crm.c:491
crm_pll_config
void crm_pll_config(crm_pll_clock_source_type clock_source, crm_pll_mult_type mult_value, crm_pll_output_range_type pll_range)
config crm pll
Definition: at32f403_crm.c:584
crm_reset
void crm_reset(void)
reset the crm register
Definition: at32f403_crm.c:47
crm_sysclk_switch
void crm_sysclk_switch(crm_sclk_type value)
select system clock source
Definition: at32f403_crm.c:621
CRM_APB1_DIV_2
@ CRM_APB1_DIV_2
Definition: at32f403_crm.h:345
CRM_CLOCK_SOURCE_PLL
@ CRM_CLOCK_SOURCE_PLL
Definition: at32f403_crm.h:318
CRM_CLOCK_SOURCE_HEXT
@ CRM_CLOCK_SOURCE_HEXT
Definition: at32f403_crm.h:317
CRM_PLL_SOURCE_HEXT_DIV
@ CRM_PLL_SOURCE_HEXT_DIV
Definition: at32f403_crm.h:299
CRM_PLL_MULT_48
@ CRM_PLL_MULT_48
Definition: at32f403_crm.h:273
CRM_AHB_DIV_8
@ CRM_AHB_DIV_8
Definition: at32f403_crm.h:331
CRM_AHB_DIV_1
@ CRM_AHB_DIV_1
Definition: at32f403_crm.h:328
CRM_AHB_DIV_2
@ CRM_AHB_DIV_2
Definition: at32f403_crm.h:329
CRM_SCLK_PLL
@ CRM_SCLK_PLL
Definition: at32f403_crm.h:408
CRM_APB2_DIV_2
@ CRM_APB2_DIV_2
Definition: at32f403_crm.h:357
CRM_PLL_OUTPUT_RANGE_GT72MHZ
@ CRM_PLL_OUTPUT_RANGE_GT72MHZ
Definition: at32f403_crm.h:308
CRM_PLL_STABLE_FLAG
#define CRM_PLL_STABLE_FLAG
Definition: at32f403_crm.h:55
ERROR
@ ERROR
Definition: at32f403.h:314
TRUE
@ TRUE
Definition: at32f403.h:309
SET
@ SET
Definition: at32f403.h:304
at32f403_clock.h
header file of clock program
wait_stbl
static void wait_stbl(uint32_t delay)
delay to wait for stable.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_clock.c:34


AT32F403 Firmwary Library: at32f403_int.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c
Go to the documentation of this file.
1
25/* includes ------------------------------------------------------------------*/
26#include "at32f403_int.h"
27
41void NMI_Handler(void)
42{
43}
44
50void HardFault_Handler(void)
51{
52 /* go to infinite loop when hard fault exception occurs */
53 while(1)
54 {
55 }
56}
57
63void MemManage_Handler(void)
64{
65 /* go to infinite loop when memory manage exception occurs */
66 while(1)
67 {
68 }
69}
70
76void BusFault_Handler(void)
77{
78 /* go to infinite loop when bus fault exception occurs */
79 while(1)
80 {
81 }
82}
83
89void UsageFault_Handler(void)
90{
91 /* go to infinite loop when usage fault exception occurs */
92 while(1)
93 {
94 }
95}
96
102void SVC_Handler(void)
103{
104}
105
111void DebugMon_Handler(void)
112{
113}
114
120void PendSV_Handler(void)
121{
122}
123
129void SysTick_Handler(void)
130{
131}
132
UsageFault_Handler
void UsageFault_Handler(void)
this function handles usage fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:89
HardFault_Handler
void HardFault_Handler(void)
this function handles hard fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:50
MemManage_Handler
void MemManage_Handler(void)
this function handles memory manage exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:63
SVC_Handler
void SVC_Handler(void)
this function handles svcall exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:102
PendSV_Handler
void PendSV_Handler(void)
this function handles pendsv_handler exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:120
NMI_Handler
void NMI_Handler(void)
this function handles nmi exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:41
BusFault_Handler
void BusFault_Handler(void)
this function handles bus fault exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:76
SysTick_Handler
void SysTick_Handler(void)
this function handles systick handler.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:129
DebugMon_Handler
void DebugMon_Handler(void)
this function handles debug monitor exception.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/at32f403_int.c:111
at32f403_int.h
header file of main interrupt service routines.


AT32F403 Firmwary Library: main.c Source File

  • utilities
  • at32f403_usb_iap_demo
  • source_code
  • bootloader
  • src
utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c
Go to the documentation of this file.
1
25#include "at32f403_board.h"
26#include "at32f403_clock.h"
27#include "usbd_core.h"
28#include "hid_iap_class.h"
29#include "hid_iap_desc.h"
30#include "hid_iap_user.h"
31#include "usbd_int.h"
32
41 usbd_core_type usb_core_dev;
42
43void usb_clock48m_select(usb_clk48_s clk_s);
44
50void usb_clock48m_select(usb_clk48_s clk_s)
51{
52 switch(system_core_clock)
53 {
54 /* 48MHz */
55 case 48000000:
56 crm_usb_clock_div_set(CRM_USB_DIV_1);
57 break;
58
59 /* 72MHz */
60 case 72000000:
61 crm_usb_clock_div_set(CRM_USB_DIV_1_5);
62 break;
63
64 /* 96MHz */
65 case 96000000:
66 crm_usb_clock_div_set(CRM_USB_DIV_2);
67 break;
68
69 /* 120MHz */
70 case 120000000:
71 crm_usb_clock_div_set(CRM_USB_DIV_2_5);
72 break;
73
74 /* 144MHz */
75 case 144000000:
76 crm_usb_clock_div_set(CRM_USB_DIV_3);
77 break;
78
79 /* 168MHz */
80 case 168000000:
81 crm_usb_clock_div_set(CRM_USB_DIV_3_5);
82 break;
83
84 /* 192MHz */
85 case 192000000:
86 crm_usb_clock_div_set(CRM_USB_DIV_4);
87 break;
88
89 default:
90 break;
91
92 }
93}
94
95
101void USBFS_L_CAN1_RX0_IRQHandler(void)
102{
103 usbd_irq_handler(&usb_core_dev);
104}
105
111void usb_delay_ms(uint32_t ms)
112{
113 /* user can define self delay function */
114 delay_ms(ms);
115}
116
122void usb_delay_us(uint32_t us)
123{
124 delay_us(us);
125}
126
132int main(void)
133{
134 system_clock_config();
135
136 /* config nvic priority group */
137 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
138
139 /* iap init */
140 iap_init();
141
142 if(iap_get_upgrade_flag() == IAP_SUCCESS)
143 {
144 jump_to_app(FLASH_APP_ADDRESS);
145 }
146
147 at32_board_init();
148
149 /* select usb 48m clcok source */
150 usb_clock48m_select(USB_CLK_HEXT);
151
152 /* enable usb clock */
153 crm_periph_clock_enable(CRM_USB_PERIPH_CLOCK, TRUE);
154
155 /* enable usb interrupt */
156 nvic_irq_enable(USBFS_L_CAN1_RX0_IRQn, 0, 0);
157
158 /* usb core init */
159 usbd_core_init(&usb_core_dev, USB, &hid_iap_class_handler, &hid_iap_desc_handler, 0);
160
161 /* enable usb pull-up */
162 usbd_connect(&usb_core_dev);
163
164 while(1)
165 {
166 iap_loop();
167 }
168}
169
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
system_clock_config
void system_clock_config(void)
system clock config program
Definition: project/at_start_f403/examples/adc/combine_mode_ordinary_simult/src/at32f403_clock.c:59
usb_delay_ms
void usb_delay_ms(uint32_t ms)
usb delay millisecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:149
usb_delay_us
void usb_delay_us(uint32_t us)
usb delay microsecond function.
Definition: project/at_start_f403/examples/usb_device/audio/src/main.c:160
jump_to_app
iapfun jump_to_app
jump to app
Definition: bootloader/src/iap.c:44
system_core_clock
unsigned int system_core_clock
Definition: system_at32f403.c:46
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
at32_board_init
void at32_board_init()
board initialize interface init led and button
Definition: at32f403_board.c:158
delay_us
void delay_us(uint32_t nus)
inserts a delay time.
Definition: at32f403_board.c:326
crm_usb_clock_div_set
void crm_usb_clock_div_set(crm_usb_div_type div_value)
set crm usb division
Definition: at32f403_crm.c:544
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_USB_PERIPH_CLOCK
@ CRM_USB_PERIPH_CLOCK
Definition: at32f403_crm.h:148
CRM_USB_DIV_3
@ CRM_USB_DIV_3
Definition: at32f403_crm.h:386
CRM_USB_DIV_1_5
@ CRM_USB_DIV_1_5
Definition: at32f403_crm.h:381
CRM_USB_DIV_4
@ CRM_USB_DIV_4
Definition: at32f403_crm.h:387
CRM_USB_DIV_3_5
@ CRM_USB_DIV_3_5
Definition: at32f403_crm.h:385
CRM_USB_DIV_2
@ CRM_USB_DIV_2
Definition: at32f403_crm.h:384
CRM_USB_DIV_1
@ CRM_USB_DIV_1
Definition: at32f403_crm.h:382
CRM_USB_DIV_2_5
@ CRM_USB_DIV_2_5
Definition: at32f403_crm.h:383
USBFS_L_CAN1_RX0_IRQn
@ USBFS_L_CAN1_RX0_IRQn
Definition: at32f403.h:199
TRUE
@ TRUE
Definition: at32f403.h:309
nvic_irq_enable
void nvic_irq_enable(IRQn_Type irqn, uint32_t preempt_priority, uint32_t sub_priority)
enable nvic irq
Definition: at32f403_misc.c:62
nvic_priority_group_config
void nvic_priority_group_config(nvic_priority_group_type priority_group)
config nvic priority group
Definition: at32f403_misc.c:95
NVIC_PRIORITY_GROUP_4
@ NVIC_PRIORITY_GROUP_4
Definition: at32f403_misc.h:69
usb_clk48_s
usb_clk48_s
usb clock select
Definition: at32f403_usb.h:229
USB_CLK_HEXT
@ USB_CLK_HEXT
Definition: at32f403_usb.h:231
IAP_SUCCESS
@ IAP_SUCCESS
Definition: hid_iap_class.h:85
hid_iap_class_handler
usbd_class_handler hid_iap_class_handler
Definition: hid_iap_class.c:55
hid_iap_desc_handler
usbd_desc_handler hid_iap_desc_handler
hid device descriptor handler structure
Definition: hid_iap_desc.c:66
usb_clock48m_select
void usb_clock48m_select(usb_clk48_s clk_s)
usb 48M clock select
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c:50
main
int main(void)
main function.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c:132
USBFS_L_CAN1_RX0_IRQHandler
void USBFS_L_CAN1_RX0_IRQHandler(void)
this function handles usb interrupt.
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c:101
usb_core_dev
usbd_core_type usb_core_dev
Definition: utilities/at32f403_usb_iap_demo/source_code/bootloader/src/main.c:41
usbd_core_init
void usbd_core_init(usbd_core_type *udev, usb_reg_type *usb_reg, usbd_class_handler *dev_handler, usbd_desc_handler *desc_handler, uint8_t core_id)
initializes the usb core
Definition: usbd_core.c:670
usbd_connect
void usbd_connect(usbd_core_type *udev)
usb device connect to host
Definition: usbd_core.c:559
usbd_irq_handler
void usbd_irq_handler(usbd_core_type *udev)
usb device interrput request handler.
Definition: usbd_int.c:44
USB
#define USB
Definition: at32f403_usb.h:651
iap_init
void iap_init(void)
iap init.
Definition: app_led3_toggle/src/iap.c:59
FLASH_APP_ADDRESS
#define FLASH_APP_ADDRESS
Definition: app_led3_toggle/inc/hid_iap_user.h:47
iap_get_upgrade_flag
iap_result_type iap_get_upgrade_flag(void)
get iap upgrade complete flag
Definition: app_led3_toggle/src/hid_iap_user.c:77
iap_loop
void iap_loop(void)
iap loop
Definition: bootloader/src/hid_iap_user.c:471
hid_iap_class.h
usb hid iap header file
hid_iap_desc.h
usb hid descriptor header file
usbd_core_type
usb device core struct type
Definition: usbd_core.h:108
usbd_core.h
usb device core header file
usbd_int.h
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: msc_diskio.h Source File

  • usb_device
  • virtual_msc_iap
  • inc
virtual_msc_iap/inc/msc_diskio.h
Go to the documentation of this file.
1
24/* Define to prevent recursive inclusion -------------------------------------*/
25#ifndef __MSC_DISKIO_H
26#define __MSC_DISKIO_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32
33#include "usb_conf.h"
34#include "usb_std.h"
35
43#define INTERNAL_FLASH_LUN 0
44#define SPI_FLASH_LUN 1
45#define SD_LUN 2
46
47#define USB_FLASH_ADDR_OFFSET 0x08004000
48
49uint8_t *get_inquiry(uint8_t lun);
50 usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len);
51 usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len);
52 usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size);
53
62#ifdef __cplusplus
63}
64#endif
65
66#endif
67
68
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: virtual_msc_iap/src/msc_diskio.c:115
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: virtual_msc_iap/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: virtual_msc_iap/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: virtual_msc_iap/src/msc_diskio.c:95
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
usb_std.h
usb standard header file
usb_conf.h
usb config header file


AT32F403 Firmwary Library: msc_diskio.c Source File

  • usb_device
  • virtual_msc_iap
  • src
virtual_msc_iap/src/msc_diskio.c
Go to the documentation of this file.
1
24#include "msc_diskio.h"
25#include "msc_bot_scsi.h"
26#include "flash_fat16.h"
27
36uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH] =
37{
38 /* lun = 0 */
39 {
40 0x00, /* peripheral device type (direct-access device) */
41 0x80, /* removable media bit */
42 0x00, /* ansi version, ecma version, iso version */
43 0x01, /* respond data format */
44 SCSI_INQUIRY_DATA_LENGTH - 5, /* additional length */
45 0x00, 0x00, 0x00, /* reserved */
46 'A', 'T', '3', '2', ' ', ' ', ' ', ' ', /* vendor information "AT32" */
47 'M', 's', 'c', ' ', 'i', 'a', 'p', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', /* Product identification "Disk" */
48 '2', '.', '0', '0' /* product revision level */
49 },
50};
51
57uint8_t *get_inquiry(uint8_t lun)
58{
59 if(lun < MSC_SUPPORT_MAX_LUN)
60 return (uint8_t *)scsi_inquiry[lun];
61 else
62 return NULL;
63}
64
73 usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
74{
75
76 switch(lun)
77 {
78 case 0:
79 flash_fat16_read((uint32_t)addr, read_buf, len);
80 break;
81 case 1:
82 break;
83 }
84 return USB_OK;
85}
86
95 usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
96{
97 switch(lun)
98 {
99 case 0:
100 flash_fat16_write((uint32_t)addr, buf, len);
101 break;
102 case 1:
103 break;
104 }
105 return USB_OK;
106}
107
115 usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
116{
117 switch(lun)
118 {
119 case INTERNAL_FLASH_LUN:
120 *blk_nbr = 0x0FFF;
121 *blk_size = FLASH_SECTOR_2K_SIZE;
122 break;
123 case SPI_FLASH_LUN:
124 break;
125 case SD_LUN:
126 break;
127 default:
128 break;
129 }
130 return USB_OK;
131}
132
flash_fat16.h
fat16 file system header file
INTERNAL_FLASH_LUN
#define INTERNAL_FLASH_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:43
msc_disk_capacity
usb_sts_type msc_disk_capacity(uint8_t lun, uint32_t *blk_nbr, uint32_t *blk_size)
disk capacity
Definition: composite_vcp_msc/src/msc_diskio.c:134
SD_LUN
#define SD_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:45
SPI_FLASH_LUN
#define SPI_FLASH_LUN
Definition: composite_vcp_msc/inc/msc_diskio.h:44
get_inquiry
uint8_t * get_inquiry(uint8_t lun)
get disk inquiry
Definition: composite_vcp_msc/src/msc_diskio.c:57
msc_disk_read
usb_sts_type msc_disk_read(uint8_t lun, uint64_t addr, uint8_t *read_buf, uint32_t len)
disk read
Definition: composite_vcp_msc/src/msc_diskio.c:73
msc_disk_write
usb_sts_type msc_disk_write(uint8_t lun, uint64_t addr, uint8_t *buf, uint32_t len)
disk write
Definition: composite_vcp_msc/src/msc_diskio.c:100
scsi_inquiry
uint8_t scsi_inquiry[MSC_SUPPORT_MAX_LUN][SCSI_INQUIRY_DATA_LENGTH]
Definition: virtual_msc_iap/src/msc_diskio.c:36
NULL
#define NULL
Definition: sd_mmc_card/inc/at32_sdio.h:337
FLASH_SECTOR_2K_SIZE
#define FLASH_SECTOR_2K_SIZE
Definition: flash_fat16.h:61
flash_fat16_write
uint32_t flash_fat16_write(uint32_t fat_lbk, uint8_t *data, uint32_t len)
write a logical block address
Definition: flash_fat16.c:329
flash_fat16_read
uint32_t flash_fat16_read(uint32_t fat_lbk, uint8_t *data, uint32_t len)
read a logical block address
Definition: flash_fat16.c:288
SCSI_INQUIRY_DATA_LENGTH
#define SCSI_INQUIRY_DATA_LENGTH
Definition: cdc_msc_class.h:155
MSC_SUPPORT_MAX_LUN
#define MSC_SUPPORT_MAX_LUN
Definition: cdc_msc_class.h:81
usb_sts_type
usb_sts_type
usb return status
Definition: usb_std.h:278
USB_OK
@ USB_OK
Definition: usb_std.h:279
msc_bot_scsi.h
usb mass storage bulk-only transport and scsi command header file


AT32F403 Firmwary Library: xmc_ecc.c Source File

  • xmc
  • nand
  • ecc
  • src
xmc_ecc.c
Go to the documentation of this file.
1
25#include "xmc_ecc.h"
26
42void nand_init(void)
43{
44 gpio_init_type gpio_init_struct;
45 xmc_nand_init_type nand_init_struct;
46 xmc_nand_pccard_timinginit_type xmc_regular_spacetimingstruct;
47
48 /* enable the xmc clock */
49 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
50 /* enable gpiod/gpiob/gpioe clock */
51 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
52 crm_periph_clock_enable(CRM_GPIOE_PERIPH_CLOCK, TRUE);
53
54 /*-- gpio configuration ------------------------------------------------------*/
55 /* cle, ale, d0->d3, noe, nwe and nce2 nand pin configuration */
56 gpio_default_para_init(&gpio_init_struct);
57 gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_14 | GPIO_PINS_15 |
58 GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_4 | GPIO_PINS_5 |
59 GPIO_PINS_7;
60 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
61 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
62 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
63 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
64 gpio_init(GPIOD, &gpio_init_struct);
65
66 /* d4->d7 nand pin configuration */
67 gpio_init_struct.gpio_pins = GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10;
68 gpio_init(GPIOE, &gpio_init_struct);
69
70 /* nwait nand pin configuration */
71 gpio_init_struct.gpio_pins = GPIO_PINS_6;
72 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
73 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
74 gpio_init(GPIOD, &gpio_init_struct);
75
76 /*-- xmc configuration ------------------------------------------------------*/
77 xmc_nand_default_para_init(&nand_init_struct);
78 nand_init_struct.nand_bank = XMC_BANK2_NAND;
79 nand_init_struct.wait_enable = XMC_WAIT_OPERATION_DISABLE;
80 nand_init_struct.bus_type = XMC_BUSTYPE_8_BITS;
81 nand_init_struct.ecc_enable = XMC_ECC_OPERATION_DISABLE;
82#ifdef H27U1G8F2CTR
83 nand_init_struct.ecc_pagesize = XMC_ECC_PAGESIZE_2048_BYTES;
84#elif defined K9GAG08U0E
85 nand_init_struct.ecc_pagesize = XMC_ECC_PAGESIZE_8192_BYTES;
86#endif
87 nand_init_struct.delay_time_cycle = 0x10;
88 nand_init_struct.delay_time_ar = 0x10;
89 xmc_nand_init(&nand_init_struct);
90
91 xmc_nand_timing_default_para_init(&xmc_regular_spacetimingstruct, &xmc_regular_spacetimingstruct);
92 xmc_regular_spacetimingstruct.class_bank = XMC_BANK2_NAND;
93 xmc_regular_spacetimingstruct.mem_setup_time = 254;
94 xmc_regular_spacetimingstruct.mem_hiz_time = 254;
95 xmc_regular_spacetimingstruct.mem_hold_time = 254;
96 xmc_regular_spacetimingstruct.mem_waite_time = 254;
97 xmc_nand_timing_config(&xmc_regular_spacetimingstruct, &xmc_regular_spacetimingstruct);
98
99 /* xmc nand bank cmd test */
100 xmc_nand_enable(XMC_BANK2_NAND, TRUE);
101}
102
109void nand_read_id(nand_id_type* nand_id_struct)
110{
111 uint32_t data = 0;
112
113 /* send command to the command area */
114 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = 0x90;
115 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00;
116
117#ifdef H27U1G8F2CTR
118 /* sequence to read id from nand flash */
119 data = *(__IO uint32_t *)(Bank_NAND_ADDR | DATA_AREA);
120 nand_id_struct->maker_id = addr_1st_cycle (data);
121 nand_id_struct->device_id = addr_2nd_cycle (data);
122 nand_id_struct->third_id = addr_3rd_cycle (data);
123 nand_id_struct->fourth_id = addr_4th_cycle (data);
124#elif defined K9GAG08U0E
125 /* sequence to read id from nand flash */
126 data = *(__IO uint32_t *)(Bank_NAND_ADDR | DATA_AREA);
127 nand_id_struct->maker_id = addr_1st_cycle (data);
128 nand_id_struct->device_id = addr_2nd_cycle (data);
129 nand_id_struct->third_id = addr_3rd_cycle (data);
130 nand_id_struct->fourth_id = addr_4th_cycle (data);
131 data = *(__IO uint16_t *)(Bank_NAND_ADDR | DATA_AREA);
132 nand_id_struct->fifth_id = addr_1st_cycle (data);
133 nand_id_struct->sixth_id = addr_2nd_cycle (data);
134#endif
135}
136
150uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
151{
152 uint32_t index = 0x00, num_page_written = 0x00, address_status = NAND_VALID_ADDRESS;
153 uint32_t status = NAND_READY, size = 0x00;
154
155 while((num_page_to_write != 0x00) && (address_status == NAND_VALID_ADDRESS) && (status == NAND_READY))
156 {
157 /* page write command and address */
158 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE0;
159
160#ifdef H27U1G8F2CTR
161 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
162 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
163 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
164 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
165#elif defined K9GAG08U0E
166 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
167 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
168 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
169 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
170 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
171#endif
172
173 /* calculate the size */
174 size = NAND_PAGE_SIZE + (NAND_PAGE_SIZE * num_page_written);
175
176 /* write data */
177 for(index = 0x00; index < size; index++)
178 {
179 *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA) = pbuffer[index];
180 }
181 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE_TRUE1;
182
183 while(xmc_flag_status_get(XMC_BANK2_NAND,XMC_FEMPT_FLAG) == RESET);
184 ecc_value_write = xmc_ecc_get(XMC_BANK2_NAND);
185 xmc_nand_ecc_enable(XMC_BANK2_NAND, FALSE);
186
187 /* check status for successful operation */
188 status = nand_get_status();
189
190 if(status == NAND_READY)
191 {
192 num_page_written++;
193
194 num_page_to_write--;
195
196 /* calculate next small page address */
197 address_status = nand_address_increment(&address_struct);
198 }
199 }
200
201 return (status | address_status);
202}
203
217uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
218{
219 uint32_t index = 0x00, num_page_read = 0x00, address_status = NAND_VALID_ADDRESS;
220 uint32_t status = NAND_READY, size = 0x00;
221
222 while((num_page_to_read != 0x0) && (address_status == NAND_VALID_ADDRESS))
223 {
224 /* page read command and page address */
225 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_A;
226
227#ifdef H27U1G8F2CTR
228 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
229 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
230 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
231 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
232#elif defined K9GAG08U0E
233 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
234 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
235 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
236 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
237 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
238#endif
239
240 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_TRUE1;
241
242 delay_ms(1);
243
244 /* calculate the size */
245 size = NAND_PAGE_SIZE + (NAND_PAGE_SIZE * num_page_read);
246
247 /* get data into buffer */
248 for(index = 0x00; index < size; index++)
249 {
250 pbuffer[index]= *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA);
251 }
252
253 ecc_value_read = xmc_ecc_get(XMC_BANK2_NAND);
254 xmc_nand_ecc_enable(XMC_BANK2_NAND, FALSE);
255
256 num_page_read++;
257
258 num_page_to_read--;
259
260 /* calculate page address */
261 address_status = nand_address_increment(&address_struct);
262 }
263
264 status = nand_get_status();
265
266 return (status | address_status);
267}
268
283uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
284{
285 uint32_t index = 0x00, num_spare_area_written = 0x00, address_status = NAND_VALID_ADDRESS;
286 uint32_t status = NAND_READY, size = 0x00;
287
288 while((num_spare_area_to_write != 0x00) && (address_status == NAND_VALID_ADDRESS) && (status == NAND_READY))
289 {
290 /* page write spare area command and address */
291 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_C;
292 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE0;
293
294 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00;
295 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
296 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
297 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
298 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_4th_cycle(ROW_ADDRESS);
299
300 /* calculate the size */
301 size = NAND_SPARE_AREA_SIZE + (NAND_SPARE_AREA_SIZE * num_spare_area_written);
302
303 /* write the data */
304 for(index = 0x00; index < size; index++)
305 {
306 *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA) = pbuffer[index];
307 }
308
309 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE_TRUE1;
310
311 /* check status for successful operation */
312 status = nand_get_status();
313
314 if(status == NAND_READY)
315 {
316 num_spare_area_written++;
317
318 num_spare_area_to_write--;
319
320 /* calculate next page address */
321 address_status = nand_address_increment(&address_struct);
322 }
323 }
324
325 return (status | address_status);
326}
327
342uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
343{
344 uint32_t num_spare_area_read = 0x00, index = 0x00, address_status = NAND_VALID_ADDRESS;
345 uint32_t status = NAND_READY, size = 0x00;
346
347 while((num_spare_area_to_read != 0x0) && (address_status == NAND_VALID_ADDRESS))
348 {
349 /* page read command and page address */
350 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_C;
351
352 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00;
353 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
354 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
355 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
356 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_4th_cycle(ROW_ADDRESS);
357
358 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_TRUE1;
359
360 delay_ms(1);
361
362 /* data read */
363 size = NAND_SPARE_AREA_SIZE + (NAND_SPARE_AREA_SIZE * num_spare_area_read);
364
365 /* get data into buffer */
366 for(index = 0x00 ;index < size; index++)
367 {
368 pbuffer[index] = *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA);
369 }
370
371 num_spare_area_read++;
372
373 num_spare_area_to_read--;
374
375 /* calculate page address */
376 address_status = nand_address_increment(&address_struct);
377 }
378
379 status = nand_get_status();
380
381 return (status | address_status);
382}
383
392uint32_t nand_erase_block(nand_address_type address_struct)
393{
394 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_ERASE0;
395
396#ifdef H27U1G8F2CTR
397 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
398 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
399#elif defined K9GAG08U0E
400 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
401 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
402 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
403#endif
404
405 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_ERASE1;
406
407 return (nand_get_status());
408}
409
415uint32_t nand_reset(void)
416{
417 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_RESET;
418
419 return (NAND_READY);
420}
421
430uint32_t nand_get_status(void)
431{
432 uint32_t timeout = 0x1000000, status = NAND_READY;
433
434 status = nand_read_status();
435
436 /* wait for a nand operation to complete or a timeout to occur */
437 while((status != NAND_READY) && ( timeout != 0x00))
438 {
439 status = nand_read_status();
440 timeout --;
441 }
442
443 if(timeout == 0x00)
444 {
445 status = NAND_TIMEOUT_ERROR;
446 }
447
448 /* return the operation status */
449 return (status);
450}
451
460uint32_t nand_read_status(void)
461{
462 uint32_t data = 0x00, status = NAND_BUSY;
463
464 /* read status operation */
465 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_STATUS;
466 data = *(__IO uint8_t *)(Bank_NAND_ADDR);
467
468 if((data & NAND_ERROR) == NAND_ERROR)
469 {
470 status = NAND_ERROR;
471 }
472 else if((data & NAND_READY) == NAND_READY)
473 {
474 status = NAND_READY;
475 }
476 else
477 {
478 status = NAND_BUSY;
479 }
480
481 return (status);
482}
483
491uint32_t nand_address_increment(nand_address_type* address_struct)
492{
493 uint32_t status = NAND_VALID_ADDRESS;
494
495 address_struct->page++;
496
497 if(address_struct->page == NAND_BLOCK_SIZE)
498 {
499 address_struct->page = 0;
500 address_struct->block++;
501
502 if(address_struct->block == NAND_ZONE_SIZE)
503 {
504 address_struct->block = 0;
505 address_struct->zone++;
506
507 if(address_struct->zone == NAND_MAX_ZONE)
508 {
509 status = NAND_INVALID_ADDRESS;
510 }
511 }
512 }
513
514 return (status);
515}
516
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
nand_read_small_page
uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size.
Definition: xmc_ecc.c:217
nand_read_id
void nand_read_id(nand_id_type *nand_id_struct)
reads nand memory's id.
Definition: xmc_ecc.c:109
COL_ADDRESS
#define COL_ADDRESS
Definition: xmc_ecc.h:77
nand_init
void nand_init(void)
configures the xmc and gpios to interface with the nand memory. this function must be called before a...
Definition: xmc_ecc.c:42
nand_read_status
uint32_t nand_read_status(void)
reads the nand memory status using the read status command.
Definition: xmc_ecc.c:460
ecc_value_read
uint32_t ecc_value_read
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
Bank_NAND_ADDR
#define Bank_NAND_ADDR
Definition: xmc_ecc.h:82
nand_address_increment
uint32_t nand_address_increment(nand_address_type *address_struct)
increment the nand memory address.
Definition: xmc_ecc.c:491
nand_reset
uint32_t nand_reset(void)
this routine reset the nand flash.
Definition: xmc_ecc.c:415
nand_id_struct
nand_id_type nand_id_struct
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:38
nand_erase_block
uint32_t nand_erase_block(nand_address_type address_struct)
this routine erase complete block from nand flash
Definition: xmc_ecc.c:392
nand_read_spare_area
uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses.
Definition: xmc_ecc.c:342
nand_write_small_page
uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size.
Definition: xmc_ecc.c:150
ecc_value_write
uint32_t ecc_value_write
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
ROW_ADDRESS
#define ROW_ADDRESS
Definition: xmc_ecc.h:76
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
nand_get_status
uint32_t nand_get_status(void)
get the nand operation status.
Definition: xmc_ecc.c:430
nand_write_spare_area
uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses.
Definition: xmc_ecc.c:283
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
FALSE
@ FALSE
Definition: at32f403.h:309
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
ADDR_AREA
#define ADDR_AREA
Definition: xmc_ecc.h:100
CMD_AREA
#define CMD_AREA
Definition: xmc_ecc.h:98
DATA_AREA
#define DATA_AREA
Definition: xmc_ecc.h:102
xmc_ecc_get
uint32_t xmc_ecc_get(xmc_class_bank_type xmc_bank)
return the error correction code register value.
Definition: at32f403_xmc.c:389
xmc_nand_init
void xmc_nand_init(xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:252
xmc_nand_timing_default_para_init
void xmc_nand_timing_default_para_init(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default ...
Definition: at32f403_xmc.c:333
xmc_nand_ecc_enable
void xmc_nand_ecc_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the xmc nand ecc feature.
Definition: at32f403_xmc.c:373
xmc_nand_default_para_init
void xmc_nand_default_para_init(xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value.
Definition: at32f403_xmc.c:313
xmc_nand_timing_config
void xmc_nand_timing_config(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:283
xmc_nand_enable
void xmc_nand_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank.
Definition: at32f403_xmc.c:356
xmc_flag_status_get
flag_status xmc_flag_status_get(xmc_class_bank_type xmc_bank, xmc_interrupt_flag_type xmc_flag)
check whether the specified xmc flag is set or not.
Definition: at32f403_xmc.c:449
XMC_BANK2_NAND
@ XMC_BANK2_NAND
Definition: at32f403_xmc.h:155
XMC_BUSTYPE_8_BITS
@ XMC_BUSTYPE_8_BITS
Definition: at32f403_xmc.h:175
XMC_FEMPT_FLAG
@ XMC_FEMPT_FLAG
Definition: at32f403_xmc.h:239
XMC_WAIT_OPERATION_DISABLE
@ XMC_WAIT_OPERATION_DISABLE
Definition: at32f403_xmc.h:126
XMC_ECC_PAGESIZE_8192_BYTES
@ XMC_ECC_PAGESIZE_8192_BYTES
Definition: at32f403_xmc.h:218
XMC_ECC_PAGESIZE_2048_BYTES
@ XMC_ECC_PAGESIZE_2048_BYTES
Definition: at32f403_xmc.h:216
XMC_ECC_OPERATION_DISABLE
@ XMC_ECC_OPERATION_DISABLE
Definition: at32f403_xmc.h:135
addr_2nd_cycle
#define addr_2nd_cycle(addr)
Definition: xmc_ecc.h:190
addr_3rd_cycle
#define addr_3rd_cycle(addr)
Definition: xmc_ecc.h:192
addr_4th_cycle
#define addr_4th_cycle(addr)
Definition: xmc_ecc.h:194
addr_1st_cycle
#define addr_1st_cycle(addr)
Definition: xmc_ecc.h:188
NAND_CMD_WRITE_TRUE1
#define NAND_CMD_WRITE_TRUE1
Definition: xmc_ecc.h:119
NAND_CMD_RESET
#define NAND_CMD_RESET
Definition: xmc_ecc.h:127
NAND_CMD_WRITE0
#define NAND_CMD_WRITE0
Definition: xmc_ecc.h:118
NAND_CMD_STATUS
#define NAND_CMD_STATUS
Definition: xmc_ecc.h:125
NAND_CMD_AREA_A
#define NAND_CMD_AREA_A
Definition: xmc_ecc.h:113
NAND_CMD_ERASE1
#define NAND_CMD_ERASE1
Definition: xmc_ecc.h:122
NAND_CMD_ERASE0
#define NAND_CMD_ERASE0
Definition: xmc_ecc.h:121
NAND_CMD_AREA_TRUE1
#define NAND_CMD_AREA_TRUE1
Definition: xmc_ecc.h:116
NAND_CMD_AREA_C
#define NAND_CMD_AREA_C
Definition: xmc_ecc.h:115
NAND_ERROR
#define NAND_ERROR
Definition: xmc_ecc.h:142
NAND_READY
#define NAND_READY
Definition: xmc_ecc.h:143
NAND_VALID_ADDRESS
#define NAND_VALID_ADDRESS
Definition: xmc_ecc.h:138
NAND_INVALID_ADDRESS
#define NAND_INVALID_ADDRESS
Definition: xmc_ecc.h:139
NAND_TIMEOUT_ERROR
#define NAND_TIMEOUT_ERROR
Definition: xmc_ecc.h:140
NAND_BUSY
#define NAND_BUSY
Definition: xmc_ecc.h:141
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
nand_address_type
Definition: xmc_ecc.h:65
nand_address_type::page
uint16_t page
Definition: xmc_ecc.h:68
nand_address_type::block
uint16_t block
Definition: xmc_ecc.h:67
nand_address_type::zone
uint16_t zone
Definition: xmc_ecc.h:66
nand_id_type
Definition: xmc_ecc.h:47
nand_id_type::sixth_id
uint8_t sixth_id
Definition: xmc_ecc.h:53
nand_id_type::device_id
uint8_t device_id
Definition: xmc_ecc.h:49
nand_id_type::fourth_id
uint8_t fourth_id
Definition: xmc_ecc.h:51
nand_id_type::fifth_id
uint8_t fifth_id
Definition: xmc_ecc.h:52
nand_id_type::third_id
uint8_t third_id
Definition: xmc_ecc.h:50
nand_id_type::maker_id
uint8_t maker_id
Definition: xmc_ecc.h:48
xmc_nand_init_type
xmc nand init structure definition
Definition: at32f403_xmc.h:296
xmc_nand_init_type::ecc_enable
xmc_ecc_enable_type ecc_enable
Definition: at32f403_xmc.h:300
xmc_nand_init_type::delay_time_cycle
uint32_t delay_time_cycle
Definition: at32f403_xmc.h:302
xmc_nand_init_type::nand_bank
xmc_class_bank_type nand_bank
Definition: at32f403_xmc.h:297
xmc_nand_init_type::wait_enable
xmc_nand_pccard_wait_type wait_enable
Definition: at32f403_xmc.h:298
xmc_nand_init_type::ecc_pagesize
xmc_ecc_pagesize_type ecc_pagesize
Definition: at32f403_xmc.h:301
xmc_nand_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:303
xmc_nand_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:299
xmc_nand_pccard_timinginit_type
nand timing parameters xmc
Definition: at32f403_xmc.h:283
xmc_nand_pccard_timinginit_type::class_bank
xmc_class_bank_type class_bank
Definition: at32f403_xmc.h:284
xmc_nand_pccard_timinginit_type::mem_waite_time
uint32_t mem_waite_time
Definition: at32f403_xmc.h:286
xmc_nand_pccard_timinginit_type::mem_hold_time
uint32_t mem_hold_time
Definition: at32f403_xmc.h:287
xmc_nand_pccard_timinginit_type::mem_hiz_time
uint32_t mem_hiz_time
Definition: at32f403_xmc.h:288
xmc_nand_pccard_timinginit_type::mem_setup_time
uint32_t mem_setup_time
Definition: at32f403_xmc.h:285
xmc_ecc.h
header file for the nand ecc configuration.


AT32F403 Firmwary Library: xmc_ecc.h Source File

  • xmc
  • nand
  • ecc
  • inc
xmc_ecc.h
Go to the documentation of this file.
1
25#ifndef __XMC_ECC_H
26#define __XMC_ECC_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#include "at32f403_board.h"
33
46typedef struct
47{
48 uint8_t maker_id;
49 uint8_t device_id;
50 uint8_t third_id;
51 uint8_t fourth_id;
52 uint8_t fifth_id;
53 uint8_t sixth_id;
54} nand_id_type;
55
64typedef struct
65{
66 uint16_t zone;
67 uint16_t block;
68 uint16_t page;
69 uint16_t byte;
70} nand_address_type;
71
76#define ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)
77#define COL_ADDRESS address_struct.byte
78
79#define BUFFER_SIZE NAND_PAGE_SIZE
80
81#define XMC_Bank_NAND XMC_Bank2_NAND
82#define Bank_NAND_ADDR Bank2_NAND_ADDR
83#define Bank2_NAND_ADDR ((uint32_t)0x70000000)
84
85#ifdef H27U1G8F2CTR
86#define NAND_AT_MakerID 0xAD
87#define NAND_AT_DeviceID 0xF1
88#elif defined K9GAG08U0E
89#define NAND_AT_MakerID 0xEC
90#define NAND_AT_DeviceID 0xD5
91#endif
92
97/* a16 = cle high */
98#define CMD_AREA (uint32_t)(1<<16)
99/* a17 = ale high */
100#define ADDR_AREA (uint32_t)(1<<17)
101
102#define DATA_AREA ((uint32_t)0x00000000)
103
112/*-- XMC NAND memory command -------------------------------------*/
113#define NAND_CMD_AREA_A ((uint8_t)0x00)
114#define NAND_CMD_AREA_B ((uint8_t)0x01)
115#define NAND_CMD_AREA_C ((uint8_t)0x50)
116#define NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)
117
118#define NAND_CMD_WRITE0 ((uint8_t)0x80)
119#define NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)
120
121#define NAND_CMD_ERASE0 ((uint8_t)0x60)
122#define NAND_CMD_ERASE1 ((uint8_t)0xD0)
123
124#define NAND_CMD_READID ((uint8_t)0x90)
125#define NAND_CMD_STATUS ((uint8_t)0x70)
126#define NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)
127#define NAND_CMD_RESET ((uint8_t)0xFF)
128
137/*-- nand memory status -------------------------------------*/
138#define NAND_VALID_ADDRESS ((uint32_t)0x00000100)
139#define NAND_INVALID_ADDRESS ((uint32_t)0x00000200)
140#define NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)
141#define NAND_BUSY ((uint32_t)0x00000000)
142#define NAND_ERROR ((uint32_t)0x00000001)
143#define NAND_READY ((uint32_t)0x00000040)
144
153/*-- xmc nand memory parameters -------------------------------------*/
154#ifdef H27U1G8F2CTR
155 /* 2k bytes per page w/o Spare Area */
156 #define NAND_PAGE_SIZE ((uint16_t)0x0800)
157 /* 64x2k bytes pages per block */
158 #define NAND_BLOCK_SIZE ((uint16_t)0x0040)
159 /* 1024 block per zone */
160 #define NAND_ZONE_SIZE ((uint16_t)0x0400)
161 /* last 64 bytes as spare area */
162 #define NAND_SPARE_AREA_SIZE ((uint16_t)0x0040)
163 /* 1 zones of 1024 block */
164 #define NAND_MAX_ZONE ((uint16_t)0x0001)
165#elif defined K9GAG08U0E
166 /* 8k bytes per page w/o spare area */
167 #define NAND_PAGE_SIZE ((uint16_t)0x2000)
168 /* 128x8k bytes pages per block */
169 #define NAND_BLOCK_SIZE ((uint16_t)0x0080)
170 /* 2048 block per zone */
171 #define NAND_ZONE_SIZE ((uint16_t)0x0800)
172 /* last 436 bytes as spare area */
173 #define NAND_SPARE_AREA_SIZE ((uint16_t)0x01B4)
174 /* 1 zones of 1024 block */
175 #define NAND_MAX_ZONE ((uint16_t)0x0001)
176#endif
177
186/*-- xmc nand memory address computation -------------------------------------*/
187/* 1st addressing cycle */
188#define addr_1st_cycle(addr) (uint8_t)((addr) & 0xFF)
189/* 2nd addressing cycle */
190#define addr_2nd_cycle(addr) (uint8_t)(((addr) & 0xFF00) >> 8)
191/* 3rd addressing cycle */
192#define addr_3rd_cycle(addr) (uint8_t)(((addr) & 0xFF0000) >> 16)
193/* 4th addressing cycle */
194#define addr_4th_cycle(addr) (uint8_t)(((addr) & 0xFF000000) >> 24)
195
200extern uint32_t ecc_value_write;
201extern uint32_t ecc_value_read;
202
207void nand_init(void);
208void nand_read_id(nand_id_type* nand_id_struct);
209uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write);
210uint32_t nand_read_small_page (uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read);
211uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write);
212uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read);
213uint32_t nand_erase_block(nand_address_type address_struct);
214uint32_t nand_reset(void);
215uint32_t nand_get_status(void);
216uint32_t nand_read_status(void);
217uint32_t nand_address_increment(nand_address_type* address_struct);
218
231#ifdef __cplusplus
232}
233#endif
234
235#endif
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
ecc_value_read
uint32_t ecc_value_read
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
nand_id_struct
nand_id_type nand_id_struct
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:38
ecc_value_write
uint32_t ecc_value_write
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:42
nand_read_small_page
uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size.
Definition: xmc_ecc.c:217
nand_read_id
void nand_read_id(nand_id_type *nand_id_struct)
reads nand memory's id.
Definition: xmc_ecc.c:109
nand_init
void nand_init(void)
configures the xmc and gpios to interface with the nand memory. this function must be called before a...
Definition: xmc_ecc.c:42
nand_read_status
uint32_t nand_read_status(void)
reads the nand memory status using the read status command.
Definition: xmc_ecc.c:460
nand_address_increment
uint32_t nand_address_increment(nand_address_type *address_struct)
increment the nand memory address.
Definition: xmc_ecc.c:491
nand_reset
uint32_t nand_reset(void)
this routine reset the nand flash.
Definition: xmc_ecc.c:415
nand_erase_block
uint32_t nand_erase_block(nand_address_type address_struct)
this routine erase complete block from nand flash
Definition: xmc_ecc.c:392
nand_read_spare_area
uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses.
Definition: xmc_ecc.c:342
nand_write_small_page
uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size.
Definition: xmc_ecc.c:150
nand_get_status
uint32_t nand_get_status(void)
get the nand operation status.
Definition: xmc_ecc.c:430
nand_write_spare_area
uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses.
Definition: xmc_ecc.c:283
nand_address_type
Definition: xmc_ecc.h:65
nand_address_type::byte
uint16_t byte
Definition: xmc_ecc.h:69
nand_address_type::page
uint16_t page
Definition: xmc_ecc.h:68
nand_address_type::block
uint16_t block
Definition: xmc_ecc.h:67
nand_address_type::zone
uint16_t zone
Definition: xmc_ecc.h:66
nand_id_type
Definition: xmc_ecc.h:47
nand_id_type::sixth_id
uint8_t sixth_id
Definition: xmc_ecc.h:53
nand_id_type::device_id
uint8_t device_id
Definition: xmc_ecc.h:49
nand_id_type::fourth_id
uint8_t fourth_id
Definition: xmc_ecc.h:51
nand_id_type::fifth_id
uint8_t fifth_id
Definition: xmc_ecc.h:52
nand_id_type::third_id
uint8_t third_id
Definition: xmc_ecc.h:50
nand_id_type::maker_id
uint8_t maker_id
Definition: xmc_ecc.h:48


AT32F403 Firmwary Library: xmc_nand.c Source File

  • xmc
  • nand
  • nand
  • src
xmc_nand.c
Go to the documentation of this file.
1
24#include "at32f403_board.h"
25#include "xmc_nand.h"
26
42void nand_init(void)
43{
44 gpio_init_type gpio_init_struct;
45 xmc_nand_init_type nand_init_struct;
46 xmc_nand_pccard_timinginit_type regular_spacetiming_struct, special_spacetiming_struct;
47
48 /* enable the xmc clock */
49 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
50
51 /* enable gpiod/gpiob/gpioe clock */
52 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_GPIOE_PERIPH_CLOCK, TRUE);
54
55 /*-- gpio configuration ------------------------------------------------------*/
56 /* cle, ale, d0->d3, noe, nwe and nce2 nand pin configuration */
57 gpio_default_para_init(&gpio_init_struct);
58 gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_14 | GPIO_PINS_15 |
59 GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_4 | GPIO_PINS_5 |
60 GPIO_PINS_7;
61 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
62 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
63 gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
64 gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
65 gpio_init(GPIOD, &gpio_init_struct);
66
67 /* d4->d7 nand pin configuration */
68 gpio_init_struct.gpio_pins = GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9 | GPIO_PINS_10;
69 gpio_init(GPIOE, &gpio_init_struct);
70
71
72 /* nwait nand pin configuration */
73 gpio_init_struct.gpio_pins = GPIO_PINS_6;
74 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
75 gpio_init_struct.gpio_mode = GPIO_MODE_INPUT;
76
77 gpio_init(GPIOD, &gpio_init_struct);
78
79 /*-- xmc configuration ------------------------------------------------------*/
80 xmc_nand_default_para_init(&nand_init_struct);
81 nand_init_struct.nand_bank = XMC_BANK2_NAND;
82 nand_init_struct.wait_enable = XMC_WAIT_OPERATION_DISABLE;
83 nand_init_struct.bus_type = XMC_BUSTYPE_8_BITS;
84 nand_init_struct.ecc_enable = XMC_ECC_OPERATION_DISABLE;
85#ifdef H27U1G8F2CTR
86 nand_init_struct.ecc_pagesize = XMC_ECC_PAGESIZE_2048_BYTES;
87#elif defined K9GAG08U0E
88 nand_init_struct.ecc_pagesize = XMC_ECC_PAGESIZE_8192_BYTES;
89#endif
90 nand_init_struct.delay_time_cycle = 0x00;
91 nand_init_struct.delay_time_ar = 0x00;
92 xmc_nand_init(&nand_init_struct);
93
94 xmc_nand_timing_default_para_init(&regular_spacetiming_struct, &special_spacetiming_struct);
95 regular_spacetiming_struct.class_bank = XMC_BANK2_NAND;
96 regular_spacetiming_struct.mem_setup_time = 254;
97 regular_spacetiming_struct.mem_hiz_time = 254;
98 regular_spacetiming_struct.mem_hold_time = 254;
99 regular_spacetiming_struct.mem_waite_time = 254;
100 special_spacetiming_struct.class_bank = XMC_BANK2_NAND;
101 special_spacetiming_struct.mem_setup_time = 254;
102 special_spacetiming_struct.mem_hiz_time = 254;
103 special_spacetiming_struct.mem_hold_time = 254;
104 special_spacetiming_struct.mem_waite_time = 254;
105 xmc_nand_timing_config(&regular_spacetiming_struct, &special_spacetiming_struct);
106
107 /* xmc nand bank cmd test */
108 xmc_nand_enable(XMC_BANK2_NAND, TRUE);
109}
110
117void nand_read_id(nand_id_type* nand_id_struct)
118{
119 uint32_t data = 0;
120
121 /* send command to the command area */
122 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = 0x90;
123 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00;
124
125#ifdef H27U1G8F2CTR
126 /* sequence to read id from nand flash */
127 data = *(__IO uint32_t *)(Bank_NAND_ADDR | DATA_AREA);
128 nand_id_struct->maker_id = addr_1st_cycle (data);
129 nand_id_struct->device_id = addr_2nd_cycle (data);
130 nand_id_struct->third_id = addr_3rd_cycle (data);
131 nand_id_struct->fourth_id = addr_4th_cycle (data);
132#elif defined K9GAG08U0E
133 /* sequence to read id from nand flash */
134 data = *(__IO uint32_t *)(Bank_NAND_ADDR | DATA_AREA);
135 nand_id_struct->maker_id = addr_1st_cycle (data);
136 nand_id_struct->device_id = addr_2nd_cycle (data);
137 nand_id_struct->third_id = addr_3rd_cycle (data);
138 nand_id_struct->fourth_id = addr_4th_cycle (data);
139 data = *(__IO uint16_t *)(Bank_NAND_ADDR | DATA_AREA);
140 nand_id_struct->fifth_id = addr_1st_cycle (data);
141 nand_id_struct->sixth_id = addr_2nd_cycle (data);
142#endif
143}
144
158uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
159{
160 uint32_t index = 0x00, num_page_written = 0x00, address_status = NAND_VALID_ADDRESS;
161 uint32_t status = NAND_READY, size = 0x00;
162
163 while((num_page_to_write != 0x00) && (address_status == NAND_VALID_ADDRESS) && (status == NAND_READY))
164 {
165 /* page write command and address */
166 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE0;
167#ifdef H27U1G8F2CTR
168 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
169 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
170 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
171 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
172#elif defined K9GAG08U0E
173 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
174 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
175 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
176 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
177 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
178#endif
179
180 /* calculate the size */
181 size = NAND_PAGE_SIZE + (NAND_PAGE_SIZE * num_page_written);
182
183 /* write data */
184 for(index = 0; index < size; index++)
185 {
186 *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA) = pbuffer[index];
187 }
188
189 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE_TRUE1;
190
191 /* check status for successful operation */
192 status = nand_get_status();
193
194 if(status == NAND_READY)
195 {
196 num_page_written++;
197
198 num_page_to_write--;
199
200 /* calculate next small page address */
201 address_status = nand_address_increment(&address_struct);
202 }
203 }
204
205 return (status | address_status);
206}
207
221uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
222{
223 uint32_t index = 0x00, num_page_read = 0x00, address_status = NAND_VALID_ADDRESS;
224 uint32_t status = NAND_READY, size = 0x00;
225
226 while((num_page_to_read != 0x0) && (address_status == NAND_VALID_ADDRESS))
227 {
228 /* page read command and page address */
229 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_A;
230
231#ifdef H27U1G8F2CTR
232 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
233 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
234 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
235 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
236#elif defined K9GAG08U0E
237 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
238 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
239 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
240 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
241 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
242#endif
243 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_TRUE1;
244
245 delay_ms(1);
246
247 /* calculate the size */
248 size = (NAND_PAGE_SIZE + NAND_SPARE_AREA_SIZE) + ((NAND_PAGE_SIZE + NAND_SPARE_AREA_SIZE) * num_page_read);
249
250 /* get data into buffer */
251 for(index = 0x00; index < size; index++)
252 {
253 pbuffer[index]= *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA);
254 }
255
256 num_page_read++;
257
258 num_page_to_read--;
259
260 /* calculate page address */
261 address_status = nand_address_increment(&address_struct);
262 }
263
264 status = nand_get_status();
265
266 return (status | address_status);
267}
268
283uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
284{
285 uint32_t index = 0x00, num_spare_area_written = 0x00, address_status = NAND_VALID_ADDRESS;
286 uint32_t status = NAND_READY, size = 0x00;
287
288 while((num_spare_area_to_write != 0x00) && (address_status == NAND_VALID_ADDRESS) && (status == NAND_READY))
289 {
290 /* page write spare area command and address */
291 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE0;
292
293 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(COL_ADDRESS);
294 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(COL_ADDRESS);
295 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
296 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
297
298 /* calculate the size */
299 size = NAND_SPARE_AREA_SIZE + (NAND_SPARE_AREA_SIZE * num_spare_area_written);
300
301 /* write the data */
302 for(index = 0x00; index < size; index++)
303 {
304 *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA) = pbuffer[index];
305 }
306
307 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_WRITE_TRUE1;
308
309 /* check status for successful operation */
310 status = nand_get_status();
311
312 if(status == NAND_READY)
313 {
314 num_spare_area_written++;
315
316 num_spare_area_to_write--;
317
318 /* calculate next page address */
319 address_status = nand_address_increment(&address_struct);
320 }
321 }
322
323 return (status | address_status);
324}
325
340uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
341{
342 uint32_t num_spare_area_read = 0x00, index = 0x00, address_status = NAND_VALID_ADDRESS;
343 uint32_t status = NAND_READY, size = 0x00;
344
345 while((num_spare_area_to_read != 0x0) && (address_status == NAND_VALID_ADDRESS))
346 {
347 /* page read command and page address */
348 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_C;
349
350 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = 0x00;
351 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
352 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
353 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
354 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_4th_cycle(ROW_ADDRESS);
355
356 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_AREA_TRUE1;
357
358 delay_ms(1);
359
360 /* data read */
361 size = NAND_SPARE_AREA_SIZE + (NAND_SPARE_AREA_SIZE * num_spare_area_read);
362
363 /* get data into buffer */
364 for(index = 0x00 ;index < size; index++)
365 {
366 pbuffer[index] = *(__IO uint8_t *)(Bank_NAND_ADDR | DATA_AREA);
367 }
368
369 num_spare_area_read++;
370
371 num_spare_area_to_read--;
372
373 /* calculate page address */
374 address_status = nand_address_increment(&address_struct);
375 }
376
377 status = nand_get_status();
378
379 return (status | address_status);
380}
381
390uint32_t nand_erase_block(nand_address_type address_struct)
391{
392 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_ERASE0;
393
394#ifdef H27U1G8F2CTR
395 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
396 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
397#elif defined K9GAG08U0E
398 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_1st_cycle(ROW_ADDRESS);
399 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_2nd_cycle(ROW_ADDRESS);
400 *(__IO uint8_t *)(Bank_NAND_ADDR | ADDR_AREA) = addr_3rd_cycle(ROW_ADDRESS);
401#endif
402 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_ERASE1;
403
404 return (nand_get_status());
405}
406
412uint32_t nand_reset(void)
413{
414 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_RESET;
415
416 return (NAND_READY);
417}
418
427uint32_t nand_get_status(void)
428{
429 uint32_t timeout = 0x1000000, status = NAND_READY;
430
431 status = nand_read_status();
432
433 /* wait for a nand operation to complete or a timeout to occur */
434 while((status != NAND_READY) && ( timeout != 0x00))
435 {
436 status = nand_read_status();
437 timeout --;
438 }
439
440 if(timeout == 0x00)
441 {
442 status = NAND_TIMEOUT_ERROR;
443 }
444
445 /* return the operation status */
446 return (status);
447}
448
457uint32_t nand_read_status(void)
458{
459 uint32_t data = 0x00, status = NAND_BUSY;
460
461 /* read status operation ------------------------------------*/
462 *(__IO uint8_t *)(Bank_NAND_ADDR | CMD_AREA) = NAND_CMD_STATUS;
463 data = *(__IO uint8_t *)(Bank_NAND_ADDR);
464
465 if((data & NAND_ERROR) == NAND_ERROR)
466 {
467 status = NAND_ERROR;
468 }
469 else if((data & NAND_READY) == NAND_READY)
470 {
471 status = NAND_READY;
472 }
473 else
474 {
475 status = NAND_BUSY;
476 }
477
478 return (status);
479}
480
488uint32_t nand_address_increment(nand_address_type* address_struct)
489{
490 uint32_t status = NAND_VALID_ADDRESS;
491
492 address_struct->page++;
493
494 if(address_struct->page == NAND_BLOCK_SIZE)
495 {
496 address_struct->page = 0;
497 address_struct->block++;
498
499 if(address_struct->block == NAND_ZONE_SIZE)
500 {
501 address_struct->block = 0;
502 address_struct->zone++;
503
504 if(address_struct->zone == NAND_MAX_ZONE)
505 {
506 status = NAND_INVALID_ADDRESS;
507 }
508 }
509 }
510
511 return (status);
512}
513
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
COL_ADDRESS
#define COL_ADDRESS
Definition: xmc_ecc.h:77
Bank_NAND_ADDR
#define Bank_NAND_ADDR
Definition: xmc_ecc.h:82
nand_id_struct
nand_id_type nand_id_struct
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:38
ROW_ADDRESS
#define ROW_ADDRESS
Definition: xmc_ecc.h:76
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
nand_read_small_page
uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size.
Definition: xmc_nand.c:221
nand_read_id
void nand_read_id(nand_id_type *nand_id_struct)
reads nand memory's id.
Definition: xmc_nand.c:117
nand_init
void nand_init(void)
configures the xmc and gpios to interface with the nand memory. this function must be called before a...
Definition: xmc_nand.c:42
nand_read_status
uint32_t nand_read_status(void)
reads the nand memory status using the read status command.
Definition: xmc_nand.c:457
nand_address_increment
uint32_t nand_address_increment(nand_address_type *address_struct)
increment the nand memory address.
Definition: xmc_nand.c:488
nand_reset
uint32_t nand_reset(void)
this routine reset the nand flash.
Definition: xmc_nand.c:412
nand_erase_block
uint32_t nand_erase_block(nand_address_type address_struct)
this routine erase complete block from nand flash
Definition: xmc_nand.c:390
nand_read_spare_area
uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses.
Definition: xmc_nand.c:340
nand_write_small_page
uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size.
Definition: xmc_nand.c:158
nand_get_status
uint32_t nand_get_status(void)
get the nand operation status.
Definition: xmc_nand.c:427
nand_write_spare_area
uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses.
Definition: xmc_nand.c:283
delay_ms
void delay_ms(uint16_t nms)
inserts a delay time.
Definition: at32f403_board.c:346
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_MODE_INPUT
@ GPIO_MODE_INPUT
Definition: at32f403_gpio.h:142
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PULL_NONE
@ GPIO_PULL_NONE
Definition: at32f403_gpio.h:172
GPIO_OUTPUT_PUSH_PULL
@ GPIO_OUTPUT_PUSH_PULL
Definition: at32f403_gpio.h:163
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
ADDR_AREA
#define ADDR_AREA
Definition: xmc_ecc.h:100
CMD_AREA
#define CMD_AREA
Definition: xmc_ecc.h:98
DATA_AREA
#define DATA_AREA
Definition: xmc_ecc.h:102
xmc_nand_init
void xmc_nand_init(xmc_nand_init_type *xmc_nand_init_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:252
xmc_nand_timing_default_para_init
void xmc_nand_timing_default_para_init(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
fill each xmc_common_spacetiming_struct and xmc_attribute_spacetiming_struct member with its default ...
Definition: at32f403_xmc.c:333
xmc_nand_default_para_init
void xmc_nand_default_para_init(xmc_nand_init_type *xmc_nand_init_struct)
fill each xmc_nand_init_struct member with its default value.
Definition: at32f403_xmc.c:313
xmc_nand_timing_config
void xmc_nand_timing_config(xmc_nand_pccard_timinginit_type *xmc_common_spacetiming_struct, xmc_nand_pccard_timinginit_type *xmc_attribute_spacetiming_struct)
initialize the xmc nand banks according to the specified parameters in the xmc_nandinitstruct.
Definition: at32f403_xmc.c:283
xmc_nand_enable
void xmc_nand_enable(xmc_class_bank_type xmc_bank, confirm_state new_state)
enable or disable the specified nand memory bank.
Definition: at32f403_xmc.c:356
XMC_BANK2_NAND
@ XMC_BANK2_NAND
Definition: at32f403_xmc.h:155
XMC_BUSTYPE_8_BITS
@ XMC_BUSTYPE_8_BITS
Definition: at32f403_xmc.h:175
XMC_WAIT_OPERATION_DISABLE
@ XMC_WAIT_OPERATION_DISABLE
Definition: at32f403_xmc.h:126
XMC_ECC_PAGESIZE_8192_BYTES
@ XMC_ECC_PAGESIZE_8192_BYTES
Definition: at32f403_xmc.h:218
XMC_ECC_PAGESIZE_2048_BYTES
@ XMC_ECC_PAGESIZE_2048_BYTES
Definition: at32f403_xmc.h:216
XMC_ECC_OPERATION_DISABLE
@ XMC_ECC_OPERATION_DISABLE
Definition: at32f403_xmc.h:135
addr_2nd_cycle
#define addr_2nd_cycle(addr)
Definition: xmc_ecc.h:190
addr_3rd_cycle
#define addr_3rd_cycle(addr)
Definition: xmc_ecc.h:192
addr_4th_cycle
#define addr_4th_cycle(addr)
Definition: xmc_ecc.h:194
addr_1st_cycle
#define addr_1st_cycle(addr)
Definition: xmc_ecc.h:188
NAND_CMD_WRITE_TRUE1
#define NAND_CMD_WRITE_TRUE1
Definition: xmc_ecc.h:119
NAND_CMD_RESET
#define NAND_CMD_RESET
Definition: xmc_ecc.h:127
NAND_CMD_WRITE0
#define NAND_CMD_WRITE0
Definition: xmc_ecc.h:118
NAND_CMD_STATUS
#define NAND_CMD_STATUS
Definition: xmc_ecc.h:125
NAND_CMD_AREA_A
#define NAND_CMD_AREA_A
Definition: xmc_ecc.h:113
NAND_CMD_ERASE1
#define NAND_CMD_ERASE1
Definition: xmc_ecc.h:122
NAND_CMD_ERASE0
#define NAND_CMD_ERASE0
Definition: xmc_ecc.h:121
NAND_CMD_AREA_TRUE1
#define NAND_CMD_AREA_TRUE1
Definition: xmc_ecc.h:116
NAND_CMD_AREA_C
#define NAND_CMD_AREA_C
Definition: xmc_ecc.h:115
NAND_ERROR
#define NAND_ERROR
Definition: xmc_ecc.h:142
NAND_READY
#define NAND_READY
Definition: xmc_ecc.h:143
NAND_VALID_ADDRESS
#define NAND_VALID_ADDRESS
Definition: xmc_ecc.h:138
NAND_INVALID_ADDRESS
#define NAND_INVALID_ADDRESS
Definition: xmc_ecc.h:139
NAND_TIMEOUT_ERROR
#define NAND_TIMEOUT_ERROR
Definition: xmc_ecc.h:140
NAND_BUSY
#define NAND_BUSY
Definition: xmc_ecc.h:141
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_out_type
gpio_output_type gpio_out_type
Definition: at32f403_gpio.h:220
gpio_init_type::gpio_pull
gpio_pull_type gpio_pull
Definition: at32f403_gpio.h:221
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
nand_address_type
Definition: xmc_ecc.h:65
nand_address_type::page
uint16_t page
Definition: xmc_ecc.h:68
nand_address_type::block
uint16_t block
Definition: xmc_ecc.h:67
nand_address_type::zone
uint16_t zone
Definition: xmc_ecc.h:66
nand_id_type
Definition: xmc_ecc.h:47
nand_id_type::sixth_id
uint8_t sixth_id
Definition: xmc_ecc.h:53
nand_id_type::device_id
uint8_t device_id
Definition: xmc_ecc.h:49
nand_id_type::fourth_id
uint8_t fourth_id
Definition: xmc_ecc.h:51
nand_id_type::fifth_id
uint8_t fifth_id
Definition: xmc_ecc.h:52
nand_id_type::third_id
uint8_t third_id
Definition: xmc_ecc.h:50
nand_id_type::maker_id
uint8_t maker_id
Definition: xmc_ecc.h:48
xmc_nand_init_type
xmc nand init structure definition
Definition: at32f403_xmc.h:296
xmc_nand_init_type::ecc_enable
xmc_ecc_enable_type ecc_enable
Definition: at32f403_xmc.h:300
xmc_nand_init_type::delay_time_cycle
uint32_t delay_time_cycle
Definition: at32f403_xmc.h:302
xmc_nand_init_type::nand_bank
xmc_class_bank_type nand_bank
Definition: at32f403_xmc.h:297
xmc_nand_init_type::wait_enable
xmc_nand_pccard_wait_type wait_enable
Definition: at32f403_xmc.h:298
xmc_nand_init_type::ecc_pagesize
xmc_ecc_pagesize_type ecc_pagesize
Definition: at32f403_xmc.h:301
xmc_nand_init_type::delay_time_ar
uint32_t delay_time_ar
Definition: at32f403_xmc.h:303
xmc_nand_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:299
xmc_nand_pccard_timinginit_type
nand timing parameters xmc
Definition: at32f403_xmc.h:283
xmc_nand_pccard_timinginit_type::class_bank
xmc_class_bank_type class_bank
Definition: at32f403_xmc.h:284
xmc_nand_pccard_timinginit_type::mem_waite_time
uint32_t mem_waite_time
Definition: at32f403_xmc.h:286
xmc_nand_pccard_timinginit_type::mem_hold_time
uint32_t mem_hold_time
Definition: at32f403_xmc.h:287
xmc_nand_pccard_timinginit_type::mem_hiz_time
uint32_t mem_hiz_time
Definition: at32f403_xmc.h:288
xmc_nand_pccard_timinginit_type::mem_setup_time
uint32_t mem_setup_time
Definition: at32f403_xmc.h:285
xmc_nand.h
header file for the nand configuration.


AT32F403 Firmwary Library: xmc_nand.h Source File

  • xmc
  • nand
  • nand
  • inc
xmc_nand.h
Go to the documentation of this file.
1
25/*-- define to prevent recursive inclusion -------------------------------------*/
26#ifndef __XMC_NAND_H
27#define __XMC_NAND_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403_board.h"
34
47typedef struct
48{
49 uint8_t maker_id;
50 uint8_t device_id;
51 uint8_t third_id;
52 uint8_t fourth_id;
53 uint8_t fifth_id;
54 uint8_t sixth_id;
55} nand_id_type;
56
65typedef struct
66{
67 uint16_t zone;
68 uint16_t block;
69 uint16_t page;
70 uint16_t byte;
71} nand_address_type;
72
78#define ROW_ADDRESS (address_struct.page + (address_struct.block + (address_struct.zone * NAND_ZONE_SIZE)) * NAND_BLOCK_SIZE)
79#define COL_ADDRESS address_struct.byte
80
81#define BUFFER_SIZE NAND_PAGE_SIZE
82
83#define XMC_Bank_NAND XMC_Bank2_NAND
84#define Bank_NAND_ADDR Bank2_NAND_ADDR
85#define Bank2_NAND_ADDR ((uint32_t)0x70000000)
86
87#ifdef H27U1G8F2CTR
88#define NAND_AT_MakerID 0xAD
89#define NAND_AT_DeviceID 0xF1
90#elif defined K9GAG08U0E
91#define NAND_AT_MakerID 0xEC
92#define NAND_AT_DeviceID 0xD5
93#endif
94
98/* a16 = cle high */
99#define CMD_AREA (uint32_t)(1<<16)
100/* a17 = ale high */
101#define ADDR_AREA (uint32_t)(1<<17)
102
103#define DATA_AREA ((uint32_t)0x00000000)
104
113/*-- xmc nand memory command ------------------------------------*/
114#define NAND_CMD_AREA_A ((uint8_t)0x00)
115#define NAND_CMD_AREA_B ((uint8_t)0x01)
116#define NAND_CMD_AREA_C ((uint8_t)0x50)
117#define NAND_CMD_AREA_TRUE1 ((uint8_t)0x30)
118
119#define NAND_CMD_WRITE0 ((uint8_t)0x80)
120#define NAND_CMD_WRITE_TRUE1 ((uint8_t)0x10)
121
122#define NAND_CMD_ERASE0 ((uint8_t)0x60)
123#define NAND_CMD_ERASE1 ((uint8_t)0xD0)
124
125#define NAND_CMD_READID ((uint8_t)0x90)
126#define NAND_CMD_STATUS ((uint8_t)0x70)
127#define NAND_CMD_LOCK_STATUS ((uint8_t)0x7A)
128#define NAND_CMD_RESET ((uint8_t)0xFF)
129
138/*-- nand memory status ----------- -------------------------*/
139#define NAND_VALID_ADDRESS ((uint32_t)0x00000100)
140#define NAND_INVALID_ADDRESS ((uint32_t)0x00000200)
141#define NAND_TIMEOUT_ERROR ((uint32_t)0x00000400)
142#define NAND_BUSY ((uint32_t)0x00000000)
143#define NAND_ERROR ((uint32_t)0x00000001)
144#define NAND_READY ((uint32_t)0x00000040)
145
154/*-- xmc nand memory parameters ------------------------------------*/
155#ifdef H27U1G8F2CTR
156 /* 2k bytes per page w/o Spare Area */
157 #define NAND_PAGE_SIZE ((uint16_t)0x0800)
158 /* 64x2k bytes pages per block */
159 #define NAND_BLOCK_SIZE ((uint16_t)0x0040)
160 /* 1024 Block per zone */
161 #define NAND_ZONE_SIZE ((uint16_t)0x0400)
162 /* last 64 bytes as spare area */
163 #define NAND_SPARE_AREA_SIZE ((uint16_t)0x0040)
164 /* 1 zones of 1024 block */
165 #define NAND_MAX_ZONE ((uint16_t)0x0001)
166#elif defined K9GAG08U0E
167 /* 8k bytes per page w/o Spare Area */
168 #define NAND_PAGE_SIZE ((uint16_t)0x2000)
169 /* 128x8k bytes pages per block */
170 #define NAND_BLOCK_SIZE ((uint16_t)0x0080)
171 /* 2048 Block per zone */
172 #define NAND_ZONE_SIZE ((uint16_t)0x0800)
173 /* last 436 bytes as spare area */
174 #define NAND_SPARE_AREA_SIZE ((uint16_t)0x01B4)
175 /* 1 zones of 1024 block */
176 #define NAND_MAX_ZONE ((uint16_t)0x0001)
177#endif
178
187/*-- xmc nand memory address computation ------------------------------------*/
188/* 1st addressing cycle */
189#define addr_1st_cycle(addr) (uint8_t)((addr) & 0x000000FF)
190/* 2nd addressing cycle */
191#define addr_2nd_cycle(addr) (uint8_t)(((addr) & 0x0000FF00) >> 8)
192/* 3rd addressing cycle */
193#define addr_3rd_cycle(addr) (uint8_t)(((addr) & 0x00FF0000) >> 16)
194/* 4th addressing cycle */
195#define addr_4th_cycle(addr) (uint8_t)(((addr) & 0xFF000000) >> 24)
196
205void nand_init(void);
206void nand_read_id(nand_id_type* nand_id_struct);
207uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write);
208uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read);
209uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write);
210uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read);
211uint32_t nand_erase_block(nand_address_type address_struct);
212uint32_t nand_reset(void);
213uint32_t nand_get_status(void);
214uint32_t nand_read_status(void);
215uint32_t nand_address_increment(nand_address_type* address_struct);
216
229#ifdef __cplusplus
230}
231#endif
232
233#endif
234
235
at32f403_board.h
header file for at-start board. set of firmware functions to manage leds and push-button....
nand_id_struct
nand_id_type nand_id_struct
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:38
nand_read_small_page
uint32_t nand_read_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_read)
this routine is for sequential read from one or several 512 bytes page size.
Definition: xmc_ecc.c:217
nand_read_id
void nand_read_id(nand_id_type *nand_id_struct)
reads nand memory's id.
Definition: xmc_ecc.c:109
nand_init
void nand_init(void)
configures the xmc and gpios to interface with the nand memory. this function must be called before a...
Definition: xmc_ecc.c:42
nand_read_status
uint32_t nand_read_status(void)
reads the nand memory status using the read status command.
Definition: xmc_ecc.c:460
nand_address_increment
uint32_t nand_address_increment(nand_address_type *address_struct)
increment the nand memory address.
Definition: xmc_ecc.c:491
nand_reset
uint32_t nand_reset(void)
this routine reset the nand flash.
Definition: xmc_ecc.c:415
nand_erase_block
uint32_t nand_erase_block(nand_address_type address_struct)
this routine erase complete block from nand flash
Definition: xmc_ecc.c:392
nand_read_spare_area
uint32_t nand_read_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_read)
this routine read the spare area information from the specified pages addresses.
Definition: xmc_ecc.c:342
nand_write_small_page
uint32_t nand_write_small_page(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_page_to_write)
this routine is for writing one or several 512 bytes page size.
Definition: xmc_ecc.c:150
nand_get_status
uint32_t nand_get_status(void)
get the nand operation status.
Definition: xmc_ecc.c:430
nand_write_spare_area
uint32_t nand_write_spare_area(uint8_t *pbuffer, nand_address_type address_struct, uint32_t num_spare_area_to_write)
this routine write the spare area information for the specified pages addresses.
Definition: xmc_ecc.c:283
nand_address_type
Definition: xmc_ecc.h:65
nand_id_type
Definition: xmc_ecc.h:47


AT32F403 Firmwary Library: xmc_nor.c Source File

  • xmc
  • nor
  • src
xmc_nor.c
Go to the documentation of this file.
1
24#include "xmc_nor.h"
25
34#define BANK1_NOR2_ADDR ((uint32_t)0x64000000)
35
36/* delay definition */
37#define BLOCKERASE_TIMEOUT ((uint32_t)0x00A00000)
38#define CHIPERASE_TIMEOUT ((uint32_t)0x30000000)
39#define PROGRAM_TIMEOUT ((uint32_t)0x00001400)
40
41#define ADDR_SHIFT(A) (BANK1_NOR2_ADDR + (2 * (A)))
42#define NOR_WRITE(address, data) (*(__IO uint16_t *)(address) = (data))
43
44
52void nor_init(void)
53{
54 xmc_norsram_init_type xmc_norsram_init_struct;
55 xmc_norsram_timing_init_type rw_timing_struct, w_timing_struct;
56 gpio_init_type gpio_init_struct;
57
58 /* enable the xmc clock */
59 /* enable gpiod/gpiob/gpioe clock */
60 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
61 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
62 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
63 crm_periph_clock_enable(CRM_GPIOE_PERIPH_CLOCK, TRUE);
64 crm_periph_clock_enable(CRM_GPIOF_PERIPH_CLOCK, TRUE);
65 crm_periph_clock_enable(CRM_GPIOG_PERIPH_CLOCK, TRUE);
66
67 /*-- gpio configuration ------------------------------------------------------*/
68 /* sram data lines configuration */
69 gpio_default_para_init(&gpio_init_struct);
70 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_8 | \
71 GPIO_PINS_9 | GPIO_PINS_10 | GPIO_PINS_14 | GPIO_PINS_15;
72 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
73 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
74 gpio_init(GPIOD, &gpio_init_struct);
75
76 gpio_init_struct.gpio_pins = GPIO_PINS_3 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9 | \
77 GPIO_PINS_10 | GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13 | \
78 GPIO_PINS_14 | GPIO_PINS_15;
79 gpio_init(GPIOE, &gpio_init_struct);
80
81 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_2 | GPIO_PINS_3 | \
82 GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_12 | GPIO_PINS_13 | \
83 GPIO_PINS_14 | GPIO_PINS_15;
84 gpio_init(GPIOF, &gpio_init_struct);
85
86 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_2 | GPIO_PINS_3 | \
87 GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_9;
88 gpio_init(GPIOG, &gpio_init_struct);
89
90 /* sram address lines configuration */
91 gpio_init_struct.gpio_pins = GPIO_PINS_7;
92 gpio_init(GPIOB, &gpio_init_struct);
93
94 gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13;
95 gpio_init(GPIOD, &gpio_init_struct);
96
97 /* noe and nwe configuration */
98 gpio_init_struct.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5;
99 gpio_init(GPIOD, &gpio_init_struct);
100
101 /* nbl0, nbl1 configuration */
102 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6;
103 gpio_init(GPIOE, &gpio_init_struct);
104
105 /*-- xmc configuration ------------------------------------------------------*/
106 xmc_norsram_default_para_init(&xmc_norsram_init_struct);
107 xmc_norsram_init_struct.subbank = XMC_BANK1_NOR_SRAM2;
108 xmc_norsram_init_struct.data_addr_multiplex = XMC_DATA_ADDR_MUX_DISABLE;
109 xmc_norsram_init_struct.device = XMC_DEVICE_NOR;
110 xmc_norsram_init_struct.bus_type = XMC_BUSTYPE_16_BITS;
111 xmc_norsram_init_struct.burst_mode_enable = XMC_BURST_MODE_DISABLE;
112 xmc_norsram_init_struct.asynwait_enable = XMC_ASYN_WAIT_DISABLE;
113 xmc_norsram_init_struct.wait_signal_lv = XMC_WAIT_SIGNAL_LEVEL_LOW;
114 xmc_norsram_init_struct.wrapped_mode_enable = XMC_WRAPPED_MODE_DISABLE;
115 xmc_norsram_init_struct.wait_signal_config = XMC_WAIT_SIGNAL_SYN_BEFORE;
116 xmc_norsram_init_struct.write_enable = XMC_WRITE_OPERATION_ENABLE;
117 xmc_norsram_init_struct.wait_signal_enable = XMC_WAIT_SIGNAL_DISABLE;
118 xmc_norsram_init_struct.write_timing_enable = XMC_WRITE_TIMING_DISABLE;
119 xmc_norsram_init_struct.write_burst_syn = XMC_WRITE_BURST_SYN_DISABLE;
120 xmc_nor_sram_init(&xmc_norsram_init_struct);
121
122 /* timing configuration */
123 xmc_norsram_timing_default_para_init(&rw_timing_struct, &w_timing_struct);
124 rw_timing_struct.subbank = XMC_BANK1_NOR_SRAM2;
125 rw_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
126 rw_timing_struct.addr_setup_time = 0x8;
127 rw_timing_struct.addr_hold_time = 0x0;
128 rw_timing_struct.data_setup_time = 0x10;
129 rw_timing_struct.bus_latency_time = 0x0;
130 rw_timing_struct.clk_psc = 0x0;
131 rw_timing_struct.data_latency_time = 0x0;
132 rw_timing_struct.mode = XMC_ACCESS_MODE_B;
133 w_timing_struct.subbank = XMC_BANK1_NOR_SRAM2;
134 w_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
135 w_timing_struct.addr_setup_time = 0x8;
136 w_timing_struct.addr_hold_time = 0x0;
137 w_timing_struct.data_setup_time = 0x10;
138 w_timing_struct.bus_latency_time = 0x0;
139 w_timing_struct.clk_psc = 0x0;
140 w_timing_struct.data_latency_time = 0x0;
141 w_timing_struct.mode = XMC_ACCESS_MODE_B;
142 xmc_nor_sram_timing_config(&rw_timing_struct, &w_timing_struct);
143
144 /* enable xmc_bank1_nor_sram2 */
145 xmc_nor_sram_enable(XMC_BANK1_NOR_SRAM2, TRUE);
146}
147
154void nor_readid(nor_idtype* nor_id)
155{
156 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA);
157 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
158 NOR_WRITE(ADDR_SHIFT(0x0555), 0x0090);
159
160 nor_id->manufacturer_code = *(__IO uint16_t *) ADDR_SHIFT(0x0000);
161 nor_id->device_code1 = *(__IO uint16_t *) ADDR_SHIFT(0x0001);
162 nor_id->device_code2 = *(__IO uint16_t *) ADDR_SHIFT(0x000E);
163 nor_id->device_code3 = *(__IO uint16_t *) ADDR_SHIFT(0x000F);
164}
165
172 nor_status nor_eraseblock(uint32_t blockaddr)
173{
174 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA);
175 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
176 NOR_WRITE(ADDR_SHIFT(0x0555), 0x0080);
177 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA);
178 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
179 NOR_WRITE((BANK1_NOR2_ADDR + blockaddr), 0x30);
180
181 return (nor_getstatus(BLOCKERASE_TIMEOUT));
182}
183
190 nor_status nor_erasechip(void)
191{
192 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA);
193 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
194 NOR_WRITE(ADDR_SHIFT(0x0555), 0x0080);
195 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA);
196 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
197 NOR_WRITE(ADDR_SHIFT(0x0555), 0x0010);
198
199 return (nor_getstatus(CHIPERASE_TIMEOUT));
200}
201
209 nor_status nor_writehalfword(uint32_t writeaddr, uint16_t data)
210{
211 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA);
212 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
213 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00A0);
214 NOR_WRITE((BANK1_NOR2_ADDR + writeaddr), data);
215
216 return (nor_getstatus(PROGRAM_TIMEOUT));
217}
218
228 nor_status nor_writebuffer(uint16_t* pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
229{
230 nor_status status = NOR_ONGOING;
231
232 do
233 {
235 status = nor_writehalfword(writeaddr, *pbuffer++);
236 writeaddr = writeaddr + 2;
237 numhalfwordtowrite--;
238 }
239 while((status == NOR_SUCCESS) && (numhalfwordtowrite != 0));
240
241 return (status);
242}
243
255 nor_status nor_programbuffer(uint16_t* pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
256{
257 uint32_t lastloadedaddress = 0x00;
258 uint32_t currentaddress = 0x00;
259 uint32_t endaddress = 0x00;
260
262 currentaddress = writeaddr;
263 endaddress = writeaddr + numhalfwordtowrite - 1;
264 lastloadedaddress = writeaddr;
265
267 NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA);
268
269 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
270
272 NOR_WRITE(ADDR_SHIFT(writeaddr), 0x0025);
273 NOR_WRITE(ADDR_SHIFT(writeaddr), (numhalfwordtowrite - 1));
274
276 while(currentaddress <= endaddress)
277 {
279 lastloadedaddress = currentaddress;
280
281 NOR_WRITE(ADDR_SHIFT(currentaddress), *pbuffer++);
282 currentaddress += 1;
283 }
284
285 NOR_WRITE(ADDR_SHIFT(lastloadedaddress), 0x29);
286
287 return(nor_getstatus(PROGRAM_TIMEOUT));
288}
289
295uint16_t nor_readhalfword(uint32_t readaddr)
296{
297 NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA);
298 NOR_WRITE(ADDR_SHIFT(0x002AA), 0x0055);
299 NOR_WRITE((BANK1_NOR2_ADDR + readaddr), 0x00F0 );
300
301 return (*(__IO uint16_t *)((BANK1_NOR2_ADDR + readaddr)));
302}
303
312void nor_readbuffer(uint16_t* pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
313{
314 NOR_WRITE(ADDR_SHIFT(0x0555), 0x00AA);
315 NOR_WRITE(ADDR_SHIFT(0x02AA), 0x0055);
316 NOR_WRITE((BANK1_NOR2_ADDR + readaddr), 0x00F0);
317
318 for(; numhalfwordtoread != 0x00; numhalfwordtoread--)
319 {
321 *pbuffer++ = *(__IO uint16_t *)((BANK1_NOR2_ADDR + readaddr));
322 readaddr = readaddr + 2;
323 }
324}
325
331 nor_status nor_returntoreadmode(void)
332{
333 NOR_WRITE(BANK1_NOR2_ADDR, 0x00F0);
334
335 return (NOR_SUCCESS);
336}
337
344 nor_status nor_reset(void)
345{
346 NOR_WRITE(ADDR_SHIFT(0x00555), 0x00AA);
347 NOR_WRITE(ADDR_SHIFT(0x002AA), 0x0055);
348 NOR_WRITE(BANK1_NOR2_ADDR, 0x00F0);
349
350 return (NOR_SUCCESS);
351}
352
359 nor_status nor_getstatus(uint32_t timeout)
360{
361 uint16_t val1 = 0x00, val2 = 0x00;
362 nor_status status = NOR_ONGOING;
363 uint32_t timeout1 = timeout;
364
366 while((gpio_input_data_bit_read(GPIOD, GPIO_PINS_6) != RESET) && (timeout1 > 0))
367 {
368 timeout1--;
369 }
370
371 timeout1 = timeout;
372
373 while((gpio_input_data_bit_read(GPIOD, GPIO_PINS_6) == RESET) && (timeout1 > 0))
374 {
375 timeout1--;
376 }
377
379 while((timeout != 0x00) && (status != NOR_SUCCESS))
380 {
381 timeout--;
382
384 val1 = *(__IO uint16_t *)(BANK1_NOR2_ADDR);
385 val2 = *(__IO uint16_t *)(BANK1_NOR2_ADDR);
386
388 if((val1 & 0x0040) == (val2 & 0x0040))
389 {
390 return NOR_SUCCESS;
391 }
392
393 if((val1 & 0x0020) != 0x0020)
394 {
395 status = NOR_ONGOING;
396 }
397
398 val1 = *(__IO uint16_t *)(BANK1_NOR2_ADDR);
399 val2 = *(__IO uint16_t *)(BANK1_NOR2_ADDR);
400
401 if((val1 & 0x0040) == (val2 & 0x0040))
402 {
403 return NOR_SUCCESS;
404 }
405 else if((val1 & 0x0020) == 0x0020)
406 {
407 return NOR_ERROR;
408 }
409 }
410
411 if(timeout == 0x00)
412 {
413 status = NOR_TIMEOUT;
414 }
415
417 return (status);
418}
419
426void fill_buffer(uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
427{
428 uint16_t indextmp = 0;
429
430 /* put in global buffer same values */
431 for (indextmp = 0; indextmp < bufferlenght; indextmp++ )
432 {
433 pbuffer[indextmp] = indextmp + offset;
434 }
435}
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
status
uint32_t status
Definition: project/at_start_f403/examples/xmc/nand/ecc/src/main.c:41
nor_readhalfword
uint16_t nor_readhalfword(uint32_t readaddr)
reads a half-word from the nor memory.
Definition: xmc_nor.c:295
NOR_WRITE
#define NOR_WRITE(address, data)
Definition: xmc_nor.c:42
nor_eraseblock
nor_status nor_eraseblock(uint32_t blockaddr)
erases the specified nor memory block.
Definition: xmc_nor.c:172
nor_writebuffer
nor_status nor_writebuffer(uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory.
Definition: xmc_nor.c:228
ADDR_SHIFT
#define ADDR_SHIFT(A)
Definition: xmc_nor.c:41
nor_readid
void nor_readid(nor_idtype *nor_id)
reads nor memory's manufacturer and device code.
Definition: xmc_nor.c:154
nor_programbuffer
nor_status nor_programbuffer(uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor m...
Definition: xmc_nor.c:255
nor_init
void nor_init(void)
configures the xmc and gpios to interface with the nor memory. this function must be called before an...
Definition: xmc_nor.c:52
nor_writehalfword
nor_status nor_writehalfword(uint32_t writeaddr, uint16_t data)
writes a half-word to the nor memory.
Definition: xmc_nor.c:209
CHIPERASE_TIMEOUT
#define CHIPERASE_TIMEOUT
Definition: xmc_nor.c:38
fill_buffer
void fill_buffer(uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer
Definition: xmc_nor.c:426
BANK1_NOR2_ADDR
#define BANK1_NOR2_ADDR
Definition: xmc_nor.c:34
PROGRAM_TIMEOUT
#define PROGRAM_TIMEOUT
Definition: xmc_nor.c:39
nor_getstatus
nor_status nor_getstatus(uint32_t timeout)
returns the nor operation status.
Definition: xmc_nor.c:359
nor_returntoreadmode
nor_status nor_returntoreadmode(void)
returns the nor memory to read mode.
Definition: xmc_nor.c:331
nor_readbuffer
void nor_readbuffer(uint16_t *pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
reads a block of data from the xmc nor memory.
Definition: xmc_nor.c:312
BLOCKERASE_TIMEOUT
#define BLOCKERASE_TIMEOUT
Definition: xmc_nor.c:37
nor_reset
nor_status nor_reset(void)
returns the nor memory to read mode and resets the errors in the nor memory status register.
Definition: xmc_nor.c:344
nor_erasechip
nor_status nor_erasechip(void)
erases the entire chip.
Definition: xmc_nor.c:190
nor_id
nor_idtype nor_id
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:43
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOF_PERIPH_CLOCK
@ CRM_GPIOF_PERIPH_CLOCK
Definition: at32f403_crm.h:115
CRM_GPIOG_PERIPH_CLOCK
@ CRM_GPIOG_PERIPH_CLOCK
Definition: at32f403_crm.h:116
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
TRUE
@ TRUE
Definition: at32f403.h:309
RESET
@ RESET
Definition: at32f403.h:304
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_input_data_bit_read
flag_status gpio_input_data_bit_read(gpio_type *gpio_x, uint16_t pins)
read the specified input port pin.
Definition: at32f403_gpio.c:211
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOG
#define GPIOG
Definition: at32f403_gpio.h:600
GPIOF
#define GPIOF
Definition: at32f403_gpio.h:599
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
xmc_nor_sram_init
void xmc_nor_sram_init(xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.
Definition: at32f403_xmc.c:74
xmc_norsram_timing_default_para_init
void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.
Definition: at32f403_xmc.c:172
xmc_nor_sram_timing_config
void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct a...
Definition: at32f403_xmc.c:109
xmc_norsram_default_para_init
void xmc_norsram_default_para_init(xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value.
Definition: at32f403_xmc.c:146
xmc_nor_sram_enable
void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank.
Definition: at32f403_xmc.c:204
XMC_WAIT_SIGNAL_DISABLE
@ XMC_WAIT_SIGNAL_DISABLE
Definition: at32f403_xmc.h:99
XMC_WAIT_SIGNAL_SYN_BEFORE
@ XMC_WAIT_SIGNAL_SYN_BEFORE
Definition: at32f403_xmc.h:193
XMC_WRITE_OPERATION_ENABLE
@ XMC_WRITE_OPERATION_ENABLE
Definition: at32f403_xmc.h:91
XMC_WRITE_BURST_SYN_DISABLE
@ XMC_WRITE_BURST_SYN_DISABLE
Definition: at32f403_xmc.h:108
XMC_BURST_MODE_DISABLE
@ XMC_BURST_MODE_DISABLE
Definition: at32f403_xmc.h:63
XMC_DATA_ADDR_MUX_DISABLE
@ XMC_DATA_ADDR_MUX_DISABLE
Definition: at32f403_xmc.h:54
XMC_BUSTYPE_16_BITS
@ XMC_BUSTYPE_16_BITS
Definition: at32f403_xmc.h:176
XMC_WRITE_TIMING_ENABLE
@ XMC_WRITE_TIMING_ENABLE
Definition: at32f403_xmc.h:118
XMC_WRITE_TIMING_DISABLE
@ XMC_WRITE_TIMING_DISABLE
Definition: at32f403_xmc.h:117
XMC_BANK1_NOR_SRAM2
@ XMC_BANK1_NOR_SRAM2
Definition: at32f403_xmc.h:145
XMC_ASYN_WAIT_DISABLE
@ XMC_ASYN_WAIT_DISABLE
Definition: at32f403_xmc.h:72
XMC_WRAPPED_MODE_DISABLE
@ XMC_WRAPPED_MODE_DISABLE
Definition: at32f403_xmc.h:81
XMC_ACCESS_MODE_B
@ XMC_ACCESS_MODE_B
Definition: at32f403_xmc.h:203
XMC_WAIT_SIGNAL_LEVEL_LOW
@ XMC_WAIT_SIGNAL_LEVEL_LOW
Definition: at32f403_xmc.h:184
XMC_DEVICE_NOR
@ XMC_DEVICE_NOR
Definition: at32f403_xmc.h:167
nor_status
nor_status
Definition: xmc_nor.h:57
NOR_TIMEOUT
@ NOR_TIMEOUT
Definition: xmc_nor.h:61
NOR_SUCCESS
@ NOR_SUCCESS
Definition: xmc_nor.h:58
NOR_ONGOING
@ NOR_ONGOING
Definition: xmc_nor.h:59
NOR_ERROR
@ NOR_ERROR
Definition: xmc_nor.h:60
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
nor_idtype
Definition: xmc_nor.h:48
nor_idtype::manufacturer_code
uint16_t manufacturer_code
Definition: xmc_nor.h:49
nor_idtype::device_code1
uint16_t device_code1
Definition: xmc_nor.h:50
nor_idtype::device_code3
uint16_t device_code3
Definition: xmc_nor.h:52
nor_idtype::device_code2
uint16_t device_code2
Definition: xmc_nor.h:51
xmc_norsram_init_type
xmc nor/sram init structure definition
Definition: at32f403_xmc.h:262
xmc_norsram_init_type::wait_signal_enable
xmc_wait_signal_type wait_signal_enable
Definition: at32f403_xmc.h:273
xmc_norsram_init_type::data_addr_multiplex
xmc_data_addr_mux_type data_addr_multiplex
Definition: at32f403_xmc.h:264
xmc_norsram_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:274
xmc_norsram_init_type::burst_mode_enable
xmc_burst_access_mode_type burst_mode_enable
Definition: at32f403_xmc.h:267
xmc_norsram_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:266
xmc_norsram_init_type::device
xmc_memory_type device
Definition: at32f403_xmc.h:265
xmc_norsram_init_type::wait_signal_lv
xmc_wait_signal_polarity_type wait_signal_lv
Definition: at32f403_xmc.h:269
xmc_norsram_init_type::wrapped_mode_enable
xmc_wrap_mode_type wrapped_mode_enable
Definition: at32f403_xmc.h:270
xmc_norsram_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:263
xmc_norsram_init_type::write_burst_syn
xmc_write_burst_type write_burst_syn
Definition: at32f403_xmc.h:275
xmc_norsram_init_type::asynwait_enable
xmc_asyn_wait_type asynwait_enable
Definition: at32f403_xmc.h:268
xmc_norsram_init_type::wait_signal_config
xmc_wait_timing_type wait_signal_config
Definition: at32f403_xmc.h:271
xmc_norsram_init_type::write_enable
xmc_write_operation_type write_enable
Definition: at32f403_xmc.h:272
xmc_norsram_timing_init_type
nor/sram banks timing parameters
Definition: at32f403_xmc.h:246
xmc_norsram_timing_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:248
xmc_norsram_timing_init_type::data_latency_time
uint32_t data_latency_time
Definition: at32f403_xmc.h:254
xmc_norsram_timing_init_type::addr_hold_time
uint32_t addr_hold_time
Definition: at32f403_xmc.h:250
xmc_norsram_timing_init_type::bus_latency_time
uint32_t bus_latency_time
Definition: at32f403_xmc.h:252
xmc_norsram_timing_init_type::addr_setup_time
uint32_t addr_setup_time
Definition: at32f403_xmc.h:249
xmc_norsram_timing_init_type::mode
xmc_access_mode_type mode
Definition: at32f403_xmc.h:255
xmc_norsram_timing_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:247
xmc_norsram_timing_init_type::clk_psc
uint32_t clk_psc
Definition: at32f403_xmc.h:253
xmc_norsram_timing_init_type::data_setup_time
uint32_t data_setup_time
Definition: at32f403_xmc.h:251
xmc_nor.h


AT32F403 Firmwary Library: xmc_nor.h Source File

  • xmc
  • nor
  • inc
xmc_nor.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __XMC_PSRAM_H
27#define __XMC_PSRAM_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403_clock.h"
34
47typedef struct
48{
49 uint16_t manufacturer_code;
50 uint16_t device_code1;
51 uint16_t device_code2;
52 uint16_t device_code3;
53}nor_idtype;
54
55/* nor status */
56typedef enum
57{
58 NOR_SUCCESS = 0,
59 NOR_ONGOING,
60 NOR_ERROR,
61 NOR_TIMEOUT
62}nor_status;
63
64void nor_init(void);
65void nor_readid(nor_idtype* nor_id);
66 nor_status nor_eraseblock(uint32_t blockaddr);
67 nor_status nor_erasechip(void);
68 nor_status nor_writehalfword(uint32_t writeaddr, uint16_t data);
69 nor_status nor_writebuffer(uint16_t* pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite);
70 nor_status nor_programbuffer(uint16_t* pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite);
71uint16_t nor_readhalfword(uint32_t readaddr);
72void nor_readbuffer(uint16_t* pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread);
73 nor_status nor_returntoreadmode(void);
74 nor_status nor_reset(void);
75 nor_status nor_getstatus(uint32_t timeout);
76void fill_buffer(uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset);
77
90#ifdef __cplusplus
91}
92#endif
93
94#endif
95
nor_id
nor_idtype nor_id
Definition: project/at_start_f403/examples/xmc/nor/src/main.c:43
nor_readhalfword
uint16_t nor_readhalfword(uint32_t readaddr)
reads a half-word from the nor memory.
Definition: xmc_nor.c:295
nor_eraseblock
nor_status nor_eraseblock(uint32_t blockaddr)
erases the specified nor memory block.
Definition: xmc_nor.c:172
nor_writebuffer
nor_status nor_writebuffer(uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory.
Definition: xmc_nor.c:228
nor_readid
void nor_readid(nor_idtype *nor_id)
reads nor memory's manufacturer and device code.
Definition: xmc_nor.c:154
nor_programbuffer
nor_status nor_programbuffer(uint16_t *pbuffer, uint32_t writeaddr, uint32_t numhalfwordtowrite)
writes a half-word buffer to the xmc nor memory. this function must be used only with s29gl128p nor m...
Definition: xmc_nor.c:255
nor_init
void nor_init(void)
configures the xmc and gpios to interface with the nor memory. this function must be called before an...
Definition: xmc_nor.c:52
nor_writehalfword
nor_status nor_writehalfword(uint32_t writeaddr, uint16_t data)
writes a half-word to the nor memory.
Definition: xmc_nor.c:209
nor_status
nor_status
Definition: xmc_nor.h:57
fill_buffer
void fill_buffer(uint16_t *pbuffer, uint16_t bufferlenght, uint32_t offset)
fill the global buffer
Definition: project/at_start_f403/examples/xmc/psram/src/main.c:106
nor_getstatus
nor_status nor_getstatus(uint32_t timeout)
returns the nor operation status.
Definition: xmc_nor.c:359
nor_returntoreadmode
nor_status nor_returntoreadmode(void)
returns the nor memory to read mode.
Definition: xmc_nor.c:331
nor_readbuffer
void nor_readbuffer(uint16_t *pbuffer, uint32_t readaddr, uint32_t numhalfwordtoread)
reads a block of data from the xmc nor memory.
Definition: xmc_nor.c:312
nor_reset
nor_status nor_reset(void)
returns the nor memory to read mode and resets the errors in the nor memory status register.
Definition: xmc_nor.c:344
nor_erasechip
nor_status nor_erasechip(void)
erases the entire chip.
Definition: xmc_nor.c:190
NOR_TIMEOUT
@ NOR_TIMEOUT
Definition: xmc_nor.h:61
NOR_SUCCESS
@ NOR_SUCCESS
Definition: xmc_nor.h:58
NOR_ONGOING
@ NOR_ONGOING
Definition: xmc_nor.h:59
NOR_ERROR
@ NOR_ERROR
Definition: xmc_nor.h:60
nor_idtype
Definition: xmc_nor.h:48
nor_idtype::manufacturer_code
uint16_t manufacturer_code
Definition: xmc_nor.h:49
nor_idtype::device_code1
uint16_t device_code1
Definition: xmc_nor.h:50
nor_idtype::device_code3
uint16_t device_code3
Definition: xmc_nor.h:52
nor_idtype::device_code2
uint16_t device_code2
Definition: xmc_nor.h:51
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: xmc_psram.c Source File

  • xmc
  • psram
  • src
xmc_psram.c
Go to the documentation of this file.
1
24#include "xmc_psram.h"
25
34#define Bank1_SRAM1_ADDR ((uint32_t)0x60000000)
35
36
44void psram_init(void)
45{
46 xmc_norsram_init_type xmc_norsram_init_struct;
47 xmc_norsram_timing_init_type rw_timing_struct, w_timing_struct;
48 gpio_init_type gpio_init_struct;
49
50 /* enable the xmc clock */
51 /* enable gpiod/gpiob/gpioe clock */
52 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
54 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
55 crm_periph_clock_enable(CRM_GPIOE_PERIPH_CLOCK, TRUE);
56
57 /*-- gpio configuration ------------------------------------------------------*/
58 /* sram data lines configuration */
59 gpio_default_para_init(&gpio_init_struct);
60 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_7 | GPIO_PINS_8 | \
61 GPIO_PINS_9 | GPIO_PINS_10 | GPIO_PINS_14 | GPIO_PINS_15;
62 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
63 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
64 gpio_init(GPIOD, &gpio_init_struct);
65
66 gpio_init_struct.gpio_pins = GPIO_PINS_3 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9 | \
67 GPIO_PINS_10 | GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13 | \
68 GPIO_PINS_14 | GPIO_PINS_15;
69 gpio_init(GPIOE, &gpio_init_struct);
70
71 /* sram address lines configuration */
72 gpio_init_struct.gpio_pins = GPIO_PINS_7;
73 gpio_init(GPIOB, &gpio_init_struct);
74
75 gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13;
76 gpio_init(GPIOD, &gpio_init_struct);
77
78 /* noe and nwe configuration */
79 gpio_init_struct.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5;
80 gpio_init(GPIOD, &gpio_init_struct);
81
82 /* nbl0, nbl1 configuration */
83 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1;
84 gpio_init(GPIOE, &gpio_init_struct);
85
86 /*-- xmc configuration ------------------------------------------------------*/
87 xmc_norsram_init_struct.subbank = XMC_BANK1_NOR_SRAM1;
88 xmc_norsram_init_struct.data_addr_multiplex = XMC_DATA_ADDR_MUX_ENABLE;
89 xmc_norsram_init_struct.device = XMC_DEVICE_PSRAM;
90 xmc_norsram_init_struct.bus_type = XMC_BUSTYPE_16_BITS;
91 xmc_norsram_init_struct.burst_mode_enable = XMC_BURST_MODE_DISABLE;
92 xmc_norsram_init_struct.asynwait_enable = XMC_ASYN_WAIT_DISABLE;
93 xmc_norsram_init_struct.wait_signal_lv = XMC_WAIT_SIGNAL_LEVEL_LOW;
94 xmc_norsram_init_struct.wrapped_mode_enable = XMC_WRAPPED_MODE_DISABLE;
95 xmc_norsram_init_struct.wait_signal_config = XMC_WAIT_SIGNAL_SYN_BEFORE;
96 xmc_norsram_init_struct.write_enable = XMC_WRITE_OPERATION_ENABLE;
97 xmc_norsram_init_struct.wait_signal_enable = XMC_WAIT_SIGNAL_DISABLE;
98 xmc_norsram_init_struct.write_burst_syn = XMC_WRITE_BURST_SYN_DISABLE;
99 xmc_norsram_init_struct.write_timing_enable = XMC_WRITE_TIMING_DISABLE;
100 xmc_nor_sram_init(&xmc_norsram_init_struct);
101
102 rw_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
103 rw_timing_struct.mode = XMC_ACCESS_MODE_A;
104 rw_timing_struct.write_timing_enable = XMC_WRITE_TIMING_DISABLE;
105 rw_timing_struct.addr_hold_time = 0x08;
106 rw_timing_struct.addr_setup_time = 0x09;
107 rw_timing_struct.data_setup_time = 0x0F;
108 rw_timing_struct.data_latency_time = 0x0;
109 rw_timing_struct.bus_latency_time = 0x0;
110 rw_timing_struct.clk_psc = 0x0;
111
112 w_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
113 w_timing_struct.mode = XMC_ACCESS_MODE_A;
114 w_timing_struct.write_timing_enable = XMC_WRITE_TIMING_DISABLE;
115 w_timing_struct.addr_hold_time = 0x08;
116 w_timing_struct.addr_setup_time = 0x09;
117 w_timing_struct.data_setup_time = 0x0F;
118 w_timing_struct.data_latency_time = 0x0;
119 w_timing_struct.bus_latency_time = 0x0;
120 w_timing_struct.clk_psc = 0x0;
121
122 xmc_nor_sram_timing_config(&rw_timing_struct, &w_timing_struct);
123
124 /* bus turnaround phase for consecutive read duration and consecutive write duration */
125 xmc_ext_timing_config(XMC_BANK1_NOR_SRAM1, 0x08, 0x08);
126
127 /* enable xmc bank1_sram bank */
128 xmc_nor_sram_enable(XMC_BANK1_NOR_SRAM1, TRUE);
129}
130
139void psram_writebuffer(uint16_t* pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
140{
141 /* while there is data to write */
142 for(; num_halfword_to_write != 0; num_halfword_to_write--)
143 {
144 /* transfer data to the memory */
145 *(__IO uint16_t *) (Bank1_SRAM1_ADDR + write_addr) = *pbuffer++;
146
147 /* increment the address */
148 write_addr += 2;
149 }
150}
151
160void psram_readbuffer(uint16_t* pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
161{
162 /* while there is data to read */
163 for(; num_halfword_to_read != 0; num_halfword_to_read--)
164 {
165 /* read a half-word from the memory */
166 *pbuffer++ = *(__IO uint16_t*) (Bank1_SRAM1_ADDR + read_addr);
167
168 /* increment the address */
169 read_addr += 2;
170 }
171}
172
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
psram_init
void psram_init(void)
configures the xmc and gpios to interface with the sram memory. this function must be called before a...
Definition: xmc_psram.c:44
psram_readbuffer
void psram_readbuffer(uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc psram memory.
Definition: xmc_psram.c:160
Bank1_SRAM1_ADDR
#define Bank1_SRAM1_ADDR
Definition: xmc_psram.c:34
psram_writebuffer
void psram_writebuffer(uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc psram memory.
Definition: xmc_psram.c:139
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
xmc_nor_sram_init
void xmc_nor_sram_init(xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.
Definition: at32f403_xmc.c:74
xmc_ext_timing_config
void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase.
Definition: at32f403_xmc.c:219
xmc_nor_sram_timing_config
void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct a...
Definition: at32f403_xmc.c:109
xmc_nor_sram_enable
void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank.
Definition: at32f403_xmc.c:204
XMC_WAIT_SIGNAL_DISABLE
@ XMC_WAIT_SIGNAL_DISABLE
Definition: at32f403_xmc.h:99
XMC_WAIT_SIGNAL_SYN_BEFORE
@ XMC_WAIT_SIGNAL_SYN_BEFORE
Definition: at32f403_xmc.h:193
XMC_WRITE_OPERATION_ENABLE
@ XMC_WRITE_OPERATION_ENABLE
Definition: at32f403_xmc.h:91
XMC_WRITE_BURST_SYN_DISABLE
@ XMC_WRITE_BURST_SYN_DISABLE
Definition: at32f403_xmc.h:108
XMC_BURST_MODE_DISABLE
@ XMC_BURST_MODE_DISABLE
Definition: at32f403_xmc.h:63
XMC_DATA_ADDR_MUX_ENABLE
@ XMC_DATA_ADDR_MUX_ENABLE
Definition: at32f403_xmc.h:55
XMC_BUSTYPE_16_BITS
@ XMC_BUSTYPE_16_BITS
Definition: at32f403_xmc.h:176
XMC_WRITE_TIMING_DISABLE
@ XMC_WRITE_TIMING_DISABLE
Definition: at32f403_xmc.h:117
XMC_BANK1_NOR_SRAM1
@ XMC_BANK1_NOR_SRAM1
Definition: at32f403_xmc.h:144
XMC_ASYN_WAIT_DISABLE
@ XMC_ASYN_WAIT_DISABLE
Definition: at32f403_xmc.h:72
XMC_WRAPPED_MODE_DISABLE
@ XMC_WRAPPED_MODE_DISABLE
Definition: at32f403_xmc.h:81
XMC_ACCESS_MODE_A
@ XMC_ACCESS_MODE_A
Definition: at32f403_xmc.h:202
XMC_WAIT_SIGNAL_LEVEL_LOW
@ XMC_WAIT_SIGNAL_LEVEL_LOW
Definition: at32f403_xmc.h:184
XMC_DEVICE_PSRAM
@ XMC_DEVICE_PSRAM
Definition: at32f403_xmc.h:166
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
xmc_norsram_init_type
xmc nor/sram init structure definition
Definition: at32f403_xmc.h:262
xmc_norsram_init_type::wait_signal_enable
xmc_wait_signal_type wait_signal_enable
Definition: at32f403_xmc.h:273
xmc_norsram_init_type::data_addr_multiplex
xmc_data_addr_mux_type data_addr_multiplex
Definition: at32f403_xmc.h:264
xmc_norsram_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:274
xmc_norsram_init_type::burst_mode_enable
xmc_burst_access_mode_type burst_mode_enable
Definition: at32f403_xmc.h:267
xmc_norsram_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:266
xmc_norsram_init_type::device
xmc_memory_type device
Definition: at32f403_xmc.h:265
xmc_norsram_init_type::wait_signal_lv
xmc_wait_signal_polarity_type wait_signal_lv
Definition: at32f403_xmc.h:269
xmc_norsram_init_type::wrapped_mode_enable
xmc_wrap_mode_type wrapped_mode_enable
Definition: at32f403_xmc.h:270
xmc_norsram_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:263
xmc_norsram_init_type::write_burst_syn
xmc_write_burst_type write_burst_syn
Definition: at32f403_xmc.h:275
xmc_norsram_init_type::asynwait_enable
xmc_asyn_wait_type asynwait_enable
Definition: at32f403_xmc.h:268
xmc_norsram_init_type::wait_signal_config
xmc_wait_timing_type wait_signal_config
Definition: at32f403_xmc.h:271
xmc_norsram_init_type::write_enable
xmc_write_operation_type write_enable
Definition: at32f403_xmc.h:272
xmc_norsram_timing_init_type
nor/sram banks timing parameters
Definition: at32f403_xmc.h:246
xmc_norsram_timing_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:248
xmc_norsram_timing_init_type::data_latency_time
uint32_t data_latency_time
Definition: at32f403_xmc.h:254
xmc_norsram_timing_init_type::addr_hold_time
uint32_t addr_hold_time
Definition: at32f403_xmc.h:250
xmc_norsram_timing_init_type::bus_latency_time
uint32_t bus_latency_time
Definition: at32f403_xmc.h:252
xmc_norsram_timing_init_type::addr_setup_time
uint32_t addr_setup_time
Definition: at32f403_xmc.h:249
xmc_norsram_timing_init_type::mode
xmc_access_mode_type mode
Definition: at32f403_xmc.h:255
xmc_norsram_timing_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:247
xmc_norsram_timing_init_type::clk_psc
uint32_t clk_psc
Definition: at32f403_xmc.h:253
xmc_norsram_timing_init_type::data_setup_time
uint32_t data_setup_time
Definition: at32f403_xmc.h:251
xmc_psram.h
header file for the psram configuration.


AT32F403 Firmwary Library: xmc_psram.h Source File

  • xmc
  • psram
  • inc
xmc_psram.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __XMC_PSRAM_H
27#define __XMC_PSRAM_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403_clock.h"
34
47void psram_init(void);
48void psram_writebuffer(uint16_t* pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write);
49void psram_readbuffer(uint16_t* pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read);
50
63#ifdef __cplusplus
64}
65#endif
66
67#endif
68
psram_init
void psram_init(void)
configures the xmc and gpios to interface with the sram memory. this function must be called before a...
Definition: xmc_psram.c:44
psram_readbuffer
void psram_readbuffer(uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc psram memory.
Definition: xmc_psram.c:160
psram_writebuffer
void psram_writebuffer(uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc psram memory.
Definition: xmc_psram.c:139
at32f403_clock.h
header file of clock program


AT32F403 Firmwary Library: xmc_sram.c Source File

  • xmc
  • sram
  • src
xmc_sram.c
Go to the documentation of this file.
1
24#include "xmc_sram.h"
25
34#define Bank1_SRAM1_ADDR ((uint32_t)0x60000000)
35
36
44void sram_init(void)
45{
46 xmc_norsram_init_type xmc_norsram_init_struct;
47 xmc_norsram_timing_init_type rw_timing_struct, w_timing_struct;
48 gpio_init_type gpio_init_struct;
49
50 /* enable the xmc clock */
51 /* enable gpiod/gpiob/gpioe clock */
52 crm_periph_clock_enable(CRM_XMC_PERIPH_CLOCK, TRUE);
53 crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE);
54 crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE);
55 crm_periph_clock_enable(CRM_GPIOE_PERIPH_CLOCK, TRUE);
56 crm_periph_clock_enable(CRM_GPIOF_PERIPH_CLOCK, TRUE);
57 crm_periph_clock_enable(CRM_GPIOG_PERIPH_CLOCK, TRUE);
58
59 /*-- gpio configuration ------------------------------------------------------*/
60 /* sram data lines configuration */
61 gpio_default_para_init(&gpio_init_struct);
62 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_7 | GPIO_PINS_8 | \
63 GPIO_PINS_9 | GPIO_PINS_10 | GPIO_PINS_14 | GPIO_PINS_15;
64 gpio_init_struct.gpio_mode = GPIO_MODE_MUX;
65 gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_MODERATE;
66 gpio_init(GPIOD, &gpio_init_struct);
67
68 gpio_init_struct.gpio_pins = GPIO_PINS_3 | GPIO_PINS_7 | GPIO_PINS_8 | GPIO_PINS_9 | \
69 GPIO_PINS_10 | GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13 | \
70 GPIO_PINS_14 | GPIO_PINS_15;
71 gpio_init(GPIOE, &gpio_init_struct);
72
73 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_2 | GPIO_PINS_3 | \
74 GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_12 | GPIO_PINS_13 | \
75 GPIO_PINS_14 | GPIO_PINS_15;
76 gpio_init(GPIOF, &gpio_init_struct);
77
78 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_2 | GPIO_PINS_3 | \
79 GPIO_PINS_4 | GPIO_PINS_5;
80 gpio_init(GPIOG, &gpio_init_struct);
81
82 /* sram address lines configuration */
83 gpio_init_struct.gpio_pins = GPIO_PINS_7;
84 gpio_init(GPIOB, &gpio_init_struct);
85
86 gpio_init_struct.gpio_pins = GPIO_PINS_11 | GPIO_PINS_12 | GPIO_PINS_13;
87 gpio_init(GPIOD, &gpio_init_struct);
88
89 /* noe and nwe configuration */
90 gpio_init_struct.gpio_pins = GPIO_PINS_4 | GPIO_PINS_5;
91 gpio_init(GPIOD, &gpio_init_struct);
92
93 /* nbl0, nbl1 configuration */
94 gpio_init_struct.gpio_pins = GPIO_PINS_0 | GPIO_PINS_1 | GPIO_PINS_4 | GPIO_PINS_5 | GPIO_PINS_6;
95 gpio_init(GPIOE, &gpio_init_struct);
96
97 /*-- xmc configuration ------------------------------------------------------*/
98 xmc_norsram_default_para_init(&xmc_norsram_init_struct);
99 xmc_norsram_init_struct.subbank = XMC_BANK1_NOR_SRAM1;
100 xmc_norsram_init_struct.data_addr_multiplex = XMC_DATA_ADDR_MUX_DISABLE;
101 xmc_norsram_init_struct.device = XMC_DEVICE_SRAM;
102 xmc_norsram_init_struct.bus_type = XMC_BUSTYPE_16_BITS;
103 xmc_norsram_init_struct.burst_mode_enable = XMC_BURST_MODE_DISABLE;
104 xmc_norsram_init_struct.asynwait_enable = XMC_ASYN_WAIT_DISABLE;
105 xmc_norsram_init_struct.wait_signal_lv = XMC_WAIT_SIGNAL_LEVEL_LOW;
106 xmc_norsram_init_struct.wrapped_mode_enable = XMC_WRAPPED_MODE_DISABLE;
107 xmc_norsram_init_struct.wait_signal_config = XMC_WAIT_SIGNAL_SYN_BEFORE;
108 xmc_norsram_init_struct.write_enable = XMC_WRITE_OPERATION_ENABLE;
109 xmc_norsram_init_struct.wait_signal_enable = XMC_WAIT_SIGNAL_DISABLE;
110 xmc_norsram_init_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
111 xmc_norsram_init_struct.write_burst_syn = XMC_WRITE_BURST_SYN_DISABLE;
112 xmc_nor_sram_init(&xmc_norsram_init_struct);
113
114 /* timing configuration */
115 xmc_norsram_timing_default_para_init(&rw_timing_struct, &w_timing_struct);
116 rw_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
117 rw_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
118 rw_timing_struct.addr_setup_time = 0x4;
119 rw_timing_struct.addr_hold_time = 0x0;
120 rw_timing_struct.data_setup_time = 0xc;
121 rw_timing_struct.bus_latency_time = 0x0;
122 rw_timing_struct.clk_psc = 0x0;
123 rw_timing_struct.data_latency_time = 0x0;
124 rw_timing_struct.mode = XMC_ACCESS_MODE_A;
125 w_timing_struct.subbank = XMC_BANK1_NOR_SRAM1;
126 w_timing_struct.write_timing_enable = XMC_WRITE_TIMING_ENABLE;
127 w_timing_struct.addr_setup_time = 0x4;
128 w_timing_struct.addr_hold_time = 0x0;
129 w_timing_struct.data_setup_time = 0xc;
130 w_timing_struct.bus_latency_time = 0x0;
131 w_timing_struct.clk_psc = 0x0;
132 w_timing_struct.data_latency_time = 0x0;
133 w_timing_struct.mode = XMC_ACCESS_MODE_A;
134 xmc_nor_sram_timing_config(&rw_timing_struct, &w_timing_struct);
135
136 /* bus turnaround phase for consecutive read duration and consecutive write duration */
137 xmc_ext_timing_config(XMC_BANK1_NOR_SRAM1, 0x08, 0x08);
138
139 /* enable xmc_bank1_nor_sram1 */
140 xmc_nor_sram_enable(XMC_BANK1_NOR_SRAM1, TRUE);
141}
142
151void sram_writebuffer(uint16_t* pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
152{
153 /* while there is data to write */
154 for(; num_halfword_to_write != 0; num_halfword_to_write--)
155 {
156 /* transfer data to the memory */
157 *(__IO uint16_t *) (Bank1_SRAM1_ADDR + write_addr) = *pbuffer++;
158
159 /* increment the address */
160 write_addr += 2;
161 }
162}
163
172void sram_readbuffer(uint16_t* pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
173{
174 /* while there is data to read */
175 for(; num_halfword_to_read != 0; num_halfword_to_read--)
176 {
177 /* read a half-word from the memory */
178 *pbuffer++ = *(__IO uint16_t*) (Bank1_SRAM1_ADDR + read_addr);
179
180 /* increment the address */
181 read_addr += 2;
182 }
183}
184
gpio_init_struct
gpio_init_type gpio_init_struct
Definition: project/at_start_f403/examples/dac/double_mode_dma_sinewave/src/main.c:36
sram_readbuffer
void sram_readbuffer(uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc sram memory.
Definition: xmc_sram.c:172
sram_init
void sram_init(void)
configures the xmc and gpios to interface with the sram memory. this function must be called before a...
Definition: xmc_sram.c:44
Bank1_SRAM1_ADDR
#define Bank1_SRAM1_ADDR
Definition: xmc_sram.c:34
sram_writebuffer
void sram_writebuffer(uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc sram memory.
Definition: xmc_sram.c:151
crm_periph_clock_enable
void crm_periph_clock_enable(crm_periph_clock_type value, confirm_state new_state)
enable or disable the peripheral clock
Definition: at32f403_crm.c:270
CRM_XMC_PERIPH_CLOCK
@ CRM_XMC_PERIPH_CLOCK
Definition: at32f403_crm.h:105
CRM_GPIOF_PERIPH_CLOCK
@ CRM_GPIOF_PERIPH_CLOCK
Definition: at32f403_crm.h:115
CRM_GPIOG_PERIPH_CLOCK
@ CRM_GPIOG_PERIPH_CLOCK
Definition: at32f403_crm.h:116
CRM_GPIOD_PERIPH_CLOCK
@ CRM_GPIOD_PERIPH_CLOCK
Definition: at32f403_crm.h:113
CRM_GPIOB_PERIPH_CLOCK
@ CRM_GPIOB_PERIPH_CLOCK
Definition: at32f403_crm.h:111
CRM_GPIOE_PERIPH_CLOCK
@ CRM_GPIOE_PERIPH_CLOCK
Definition: at32f403_crm.h:114
TRUE
@ TRUE
Definition: at32f403.h:309
gpio_init
void gpio_init(gpio_type *gpio_x, gpio_init_type *gpio_init_struct)
initialize the gpio peripheral.
Definition: at32f403_gpio.c:108
gpio_default_para_init
void gpio_default_para_init(gpio_init_type *gpio_init_struct)
fill each gpio_init_type member with its default value.
Definition: at32f403_gpio.c:176
GPIO_MODE_MUX
@ GPIO_MODE_MUX
Definition: at32f403_gpio.h:144
GPIO_DRIVE_STRENGTH_MODERATE
@ GPIO_DRIVE_STRENGTH_MODERATE
Definition: at32f403_gpio.h:154
GPIO_PINS_10
#define GPIO_PINS_10
Definition: at32f403_gpio.h:59
GPIO_PINS_6
#define GPIO_PINS_6
Definition: at32f403_gpio.h:55
GPIO_PINS_0
#define GPIO_PINS_0
Definition: at32f403_gpio.h:49
GPIO_PINS_11
#define GPIO_PINS_11
Definition: at32f403_gpio.h:60
GPIO_PINS_2
#define GPIO_PINS_2
Definition: at32f403_gpio.h:51
GPIO_PINS_7
#define GPIO_PINS_7
Definition: at32f403_gpio.h:56
GPIO_PINS_13
#define GPIO_PINS_13
Definition: at32f403_gpio.h:62
GPIO_PINS_3
#define GPIO_PINS_3
Definition: at32f403_gpio.h:52
GPIO_PINS_12
#define GPIO_PINS_12
Definition: at32f403_gpio.h:61
GPIO_PINS_14
#define GPIO_PINS_14
Definition: at32f403_gpio.h:63
GPIO_PINS_9
#define GPIO_PINS_9
Definition: at32f403_gpio.h:58
GPIO_PINS_4
#define GPIO_PINS_4
Definition: at32f403_gpio.h:53
GPIO_PINS_8
#define GPIO_PINS_8
Definition: at32f403_gpio.h:57
GPIO_PINS_1
#define GPIO_PINS_1
Definition: at32f403_gpio.h:50
GPIO_PINS_15
#define GPIO_PINS_15
Definition: at32f403_gpio.h:64
GPIO_PINS_5
#define GPIO_PINS_5
Definition: at32f403_gpio.h:54
GPIOG
#define GPIOG
Definition: at32f403_gpio.h:600
GPIOF
#define GPIOF
Definition: at32f403_gpio.h:599
GPIOB
#define GPIOB
Definition: at32f403_gpio.h:595
GPIOD
#define GPIOD
Definition: at32f403_gpio.h:597
GPIOE
#define GPIOE
Definition: at32f403_gpio.h:598
xmc_nor_sram_init
void xmc_nor_sram_init(xmc_norsram_init_type *xmc_norsram_init_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_norsraminitstruct.
Definition: at32f403_xmc.c:74
xmc_norsram_timing_default_para_init
void xmc_norsram_timing_default_para_init(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
fill each xmc_rw_timing_struct and xmc_w_timing_struct member with its default value.
Definition: at32f403_xmc.c:172
xmc_ext_timing_config
void xmc_ext_timing_config(volatile xmc_nor_sram_subbank_type xmc_sub_bank, uint16_t w2w_timing, uint16_t r2r_timing)
config the bus turnaround phase.
Definition: at32f403_xmc.c:219
xmc_nor_sram_timing_config
void xmc_nor_sram_timing_config(xmc_norsram_timing_init_type *xmc_rw_timing_struct, xmc_norsram_timing_init_type *xmc_w_timing_struct)
initialize the xmc nor/sram banks according to the specified parameters in the xmc_rw_timing_struct a...
Definition: at32f403_xmc.c:109
xmc_norsram_default_para_init
void xmc_norsram_default_para_init(xmc_norsram_init_type *xmc_nor_sram_init_struct)
fill each xmc_nor_sram_init_struct member with its default value.
Definition: at32f403_xmc.c:146
xmc_nor_sram_enable
void xmc_nor_sram_enable(xmc_nor_sram_subbank_type xmc_subbank, confirm_state new_state)
enable or disable the specified nor/sram memory bank.
Definition: at32f403_xmc.c:204
XMC_WAIT_SIGNAL_DISABLE
@ XMC_WAIT_SIGNAL_DISABLE
Definition: at32f403_xmc.h:99
XMC_WAIT_SIGNAL_SYN_BEFORE
@ XMC_WAIT_SIGNAL_SYN_BEFORE
Definition: at32f403_xmc.h:193
XMC_WRITE_OPERATION_ENABLE
@ XMC_WRITE_OPERATION_ENABLE
Definition: at32f403_xmc.h:91
XMC_WRITE_BURST_SYN_DISABLE
@ XMC_WRITE_BURST_SYN_DISABLE
Definition: at32f403_xmc.h:108
XMC_BURST_MODE_DISABLE
@ XMC_BURST_MODE_DISABLE
Definition: at32f403_xmc.h:63
XMC_DATA_ADDR_MUX_DISABLE
@ XMC_DATA_ADDR_MUX_DISABLE
Definition: at32f403_xmc.h:54
XMC_BUSTYPE_16_BITS
@ XMC_BUSTYPE_16_BITS
Definition: at32f403_xmc.h:176
XMC_WRITE_TIMING_ENABLE
@ XMC_WRITE_TIMING_ENABLE
Definition: at32f403_xmc.h:118
XMC_BANK1_NOR_SRAM1
@ XMC_BANK1_NOR_SRAM1
Definition: at32f403_xmc.h:144
XMC_ASYN_WAIT_DISABLE
@ XMC_ASYN_WAIT_DISABLE
Definition: at32f403_xmc.h:72
XMC_WRAPPED_MODE_DISABLE
@ XMC_WRAPPED_MODE_DISABLE
Definition: at32f403_xmc.h:81
XMC_ACCESS_MODE_A
@ XMC_ACCESS_MODE_A
Definition: at32f403_xmc.h:202
XMC_WAIT_SIGNAL_LEVEL_LOW
@ XMC_WAIT_SIGNAL_LEVEL_LOW
Definition: at32f403_xmc.h:184
XMC_DEVICE_SRAM
@ XMC_DEVICE_SRAM
Definition: at32f403_xmc.h:165
gpio_init_type
gpio init type
Definition: at32f403_gpio.h:218
gpio_init_type::gpio_drive_strength
gpio_drive_type gpio_drive_strength
Definition: at32f403_gpio.h:223
gpio_init_type::gpio_mode
gpio_mode_type gpio_mode
Definition: at32f403_gpio.h:222
gpio_init_type::gpio_pins
uint32_t gpio_pins
Definition: at32f403_gpio.h:219
xmc_norsram_init_type
xmc nor/sram init structure definition
Definition: at32f403_xmc.h:262
xmc_norsram_init_type::wait_signal_enable
xmc_wait_signal_type wait_signal_enable
Definition: at32f403_xmc.h:273
xmc_norsram_init_type::data_addr_multiplex
xmc_data_addr_mux_type data_addr_multiplex
Definition: at32f403_xmc.h:264
xmc_norsram_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:274
xmc_norsram_init_type::burst_mode_enable
xmc_burst_access_mode_type burst_mode_enable
Definition: at32f403_xmc.h:267
xmc_norsram_init_type::bus_type
xmc_data_width_type bus_type
Definition: at32f403_xmc.h:266
xmc_norsram_init_type::device
xmc_memory_type device
Definition: at32f403_xmc.h:265
xmc_norsram_init_type::wait_signal_lv
xmc_wait_signal_polarity_type wait_signal_lv
Definition: at32f403_xmc.h:269
xmc_norsram_init_type::wrapped_mode_enable
xmc_wrap_mode_type wrapped_mode_enable
Definition: at32f403_xmc.h:270
xmc_norsram_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:263
xmc_norsram_init_type::write_burst_syn
xmc_write_burst_type write_burst_syn
Definition: at32f403_xmc.h:275
xmc_norsram_init_type::asynwait_enable
xmc_asyn_wait_type asynwait_enable
Definition: at32f403_xmc.h:268
xmc_norsram_init_type::wait_signal_config
xmc_wait_timing_type wait_signal_config
Definition: at32f403_xmc.h:271
xmc_norsram_init_type::write_enable
xmc_write_operation_type write_enable
Definition: at32f403_xmc.h:272
xmc_norsram_timing_init_type
nor/sram banks timing parameters
Definition: at32f403_xmc.h:246
xmc_norsram_timing_init_type::write_timing_enable
xmc_extended_mode_type write_timing_enable
Definition: at32f403_xmc.h:248
xmc_norsram_timing_init_type::data_latency_time
uint32_t data_latency_time
Definition: at32f403_xmc.h:254
xmc_norsram_timing_init_type::addr_hold_time
uint32_t addr_hold_time
Definition: at32f403_xmc.h:250
xmc_norsram_timing_init_type::bus_latency_time
uint32_t bus_latency_time
Definition: at32f403_xmc.h:252
xmc_norsram_timing_init_type::addr_setup_time
uint32_t addr_setup_time
Definition: at32f403_xmc.h:249
xmc_norsram_timing_init_type::mode
xmc_access_mode_type mode
Definition: at32f403_xmc.h:255
xmc_norsram_timing_init_type::subbank
xmc_nor_sram_subbank_type subbank
Definition: at32f403_xmc.h:247
xmc_norsram_timing_init_type::clk_psc
uint32_t clk_psc
Definition: at32f403_xmc.h:253
xmc_norsram_timing_init_type::data_setup_time
uint32_t data_setup_time
Definition: at32f403_xmc.h:251
xmc_sram.h


AT32F403 Firmwary Library: xmc_sram.h Source File

  • xmc
  • sram
  • inc
xmc_sram.h
Go to the documentation of this file.
1
25/* define to prevent recursive inclusion -------------------------------------*/
26#ifndef __XMC_PSRAM_H
27#define __XMC_PSRAM_H
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33#include "at32f403_clock.h"
34
47void sram_init(void);
48void sram_writebuffer(uint16_t* pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write);
49void sram_readbuffer(uint16_t* pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read);
50
63#ifdef __cplusplus
64}
65#endif
66
67#endif
68
sram_readbuffer
void sram_readbuffer(uint16_t *pbuffer, uint32_t read_addr, uint32_t num_halfword_to_read)
reads a block of data from the xmc sram memory.
Definition: xmc_sram.c:172
sram_init
void sram_init(void)
configures the xmc and gpios to interface with the sram memory. this function must be called before a...
Definition: xmc_sram.c:44
sram_writebuffer
void sram_writebuffer(uint16_t *pbuffer, uint32_t write_addr, uint32_t num_halfword_to_write)
writes a half-word buffer to the xmc sram memory.
Definition: xmc_sram.c:151
at32f403_clock.h
header file of clock program